21 lines
1.1 KiB
JavaScript
21 lines
1.1 KiB
JavaScript
import { flattenFiles } from './render.js';
|
|
|
|
/**
|
|
* Legacy helper: заменяет HTML статуса у найденного leaf-файла.
|
|
*
|
|
* @param {string} path Полный логический путь файла в текущем дереве.
|
|
* @param {string} html Готовая HTML-строка статуса; вызывающая сторона отвечает
|
|
* за её безопасность.
|
|
* @param {{nodes: Array}} state Состояние дерева, из которого ищется файл.
|
|
* @param {{tableBodyEl: HTMLElement}} elements DOM-элементы старого renderer.
|
|
* @returns {void} Ничего не возвращает; при отсутствии файла или ячейки ничего
|
|
* не изменяет.
|
|
*/
|
|
export function setStatus(path, html, state, elements) {
|
|
const file = flattenFiles(state.nodes).find((item) => item.path === path);
|
|
if (!file) return;
|
|
const cell = Array.from(elements.tableBodyEl.querySelectorAll('.tree-row.tree-file'))
|
|
.find((row) => row.dataset.path === file.path)
|
|
?.querySelector('td:nth-child(3)');
|
|
if (cell) cell.innerHTML = html;
|
|
} |