20 lines
754 B
JavaScript
20 lines
754 B
JavaScript
/** Find elements by ID - first try data-source-location, fallback to data-visual-selector-id */
|
|
export function findElementsById(id) {
|
|
if (!id)
|
|
return [];
|
|
const sourceElements = Array.from(document.querySelectorAll(`[data-source-location="${id}"]`));
|
|
if (sourceElements.length > 0) {
|
|
return sourceElements;
|
|
}
|
|
return Array.from(document.querySelectorAll(`[data-visual-selector-id="${id}"]`));
|
|
}
|
|
/**
|
|
* Update element classes by visual selector ID.
|
|
* Uses setAttribute instead of className to support both HTML and SVG elements.
|
|
*/
|
|
export function updateElementClasses(elements, classes) {
|
|
elements.forEach((element) => {
|
|
element.setAttribute("class", classes);
|
|
});
|
|
}
|
|
//# sourceMappingURL=utils.js.map
|