Vanessa 2025-12-24 12:18:06 +08:00
parent 74195b70eb
commit c03eed5049

View file

@ -79,14 +79,29 @@ export const getNoContainerElement = (element: Element) => {
};
export const getContenteditableElement = (element: Element) => {
if (!element || (element.getAttribute("contenteditable") === "true") && !element.classList.contains("protyle-wysiwyg")) {
if (!element) {
return element;
}
const editableElement = element.querySelector('[contenteditable="true"]');
if (editableElement && !hasClosestByAttribute(editableElement, "data-type", "NodeBlockQueryEmbed")) {
return editableElement;
let blockElement = element;
if (!blockElement.getAttribute("data-node-id")) {
blockElement = element.querySelector("[data-node-id]");
if (!blockElement) {
blockElement = hasClosestBlock(blockElement) as Element;
}
}
if (!blockElement) {
return element;
}
const type = element.getAttribute("data-type");
if (["NodeParagraph", "NodeHeading"].includes(type)) {
return element.firstElementChild;
} else if ("NodeTable" === type) {
return element.querySelector("table");
} else if ("NodeCodeBlock" === type) {
return element.querySelector(".hljs").lastElementChild;
} else {
return element;
}
return undefined;
};
export const isNotEditBlock = (element: Element) => {