function editableSVG(node, selector = "text") {
node.addEventListener("mousemove", () => {
node.parentElement.classList.add("editablesvg");
for (const t of node.querySelectorAll(selector + ":not(.editableset)")) {
t.classList.add("editableset");
t.addEventListener("mouseenter", () => {
node.parentElement.setAttribute("contentEditable", true);
node.classList.add('editable');
});
t.addEventListener("mouseout", () => {
node.parentElement.setAttribute("contentEditable", null);
node.classList.remove('editable');
});
}
});
}