content-ui-editor-init-web.js 651 B

1234567891011121314151617181920212223242526272829
  1. /* global document */
  2. (() => {
  3. document.currentScript.remove();
  4. processNode(document);
  5. function processNode(node) {
  6. node.querySelectorAll("template[shadowmode]").forEach(element => {
  7. let shadowRoot = element.parentElement.shadowRoot;
  8. if (!shadowRoot) {
  9. try {
  10. shadowRoot = element.parentElement.attachShadow({
  11. mode: element.getAttribute("shadowmode"),
  12. delegatesFocus: Boolean(element.getAttribute("delegatesfocus"))
  13. });
  14. shadowRoot.innerHTML = element.innerHTML;
  15. element.remove();
  16. } catch (error) {
  17. // ignored
  18. }
  19. if (shadowRoot) {
  20. processNode(shadowRoot);
  21. }
  22. }
  23. });
  24. }
  25. })();