export function focusHoverbar() { const hoverbar = document.querySelector("viewer-hoverbar"); hoverbar?.focus(); } export function blurHoverbar() { const hoverbar = document.querySelector("viewer-hoverbar"); hoverbar?.blur(); } export function overwriteInHoverbar(value) { const hoverbar = document.querySelector("viewer-hoverbar"); hoverbar?.overwrite(value); } export function clearSelectedAttrs() { document.querySelectorAll( "table.viewer > tbody > tr > td > [selected='true']", ) .forEach((element) => element.setAttribute("selected", "")); } export function setCellAttr(row, column, key, value) { const cell = queryCell(row, column); if (cell) { cell.setAttribute(key, value); } } export function syncCellValueToHoverbar(row, column, fieldType) { const cell = queryCell(row, column); if (cell) { const value = cell.getAttribute("value") ?? "null"; const hoverbar = document.querySelector("viewer-hoverbar"); if (hoverbar) { hoverbar.setAttribute("value", value); hoverbar.setAttribute("field-type", fieldType); } } } function queryCell(row, column) { const tr = document.querySelectorAll("table.viewer > tbody > tr")[row]; if (tr) { return [...tr.querySelectorAll(":scope > td > *")][column]; } return undefined; }