import {fetchPost} from "../../../util/fetch"; export const getIconByType = (type: TAVCol) => { switch (type) { case "text": return "iconAlignLeft"; case "block": return "iconParagraph"; } }; export const avRender = (element: Element) => { let avElements: Element[] = []; if (element.getAttribute("data-type") === "NodeAttributeView") { // 编辑器内代码块编辑渲染 avElements = [element]; } else { avElements = Array.from(element.querySelectorAll('[data-type="NodeAttributeView"]')); } if (avElements.length === 0) { return; } if (avElements.length > 0) { avElements.forEach((e: HTMLElement) => { if (e.getAttribute("data-render") === "true") { return; } fetchPost("/api/av/renderAttributeView", {id: e.getAttribute("data-av-id")}, (response) => { const data = response.data.av; // header let tableHTML = '
'; data.columns.forEach((column: IAVColumn) => { if (column.hidden) { return; } tableHTML += `
${column.name}
`; }); tableHTML += `
`; // body data.rows.forEach((row: IAVRow) => { tableHTML += `
`; row.cells.forEach((cell, index) => { tableHTML += `
${cell.value}
`; }); tableHTML += "
"; }); const paddingLeft = e.parentElement.style.paddingLeft; const paddingRight = e.parentElement.style.paddingRight; // 10: ::-webkit-scrollbar width e.style.width = (e.parentElement.clientWidth - 10) + "px"; e.style.alignSelf = "center"; e.firstElementChild.outerHTML = `
tab1
${data.title}
${tableHTML}
${window.siyuan.languages.addAttr}
`; e.setAttribute("data-render", "true"); }); }); } };