|
@@ -911,7 +911,7 @@ this.singlefile.lib.core = this.singlefile.lib.core || (() => {
|
|
|
if (this.options.shadowRoots && this.options.shadowRoots.length) {
|
|
if (this.options.shadowRoots && this.options.shadowRoots.length) {
|
|
|
processElement(this.doc);
|
|
processElement(this.doc);
|
|
|
const scriptElement = doc.createElement("script");
|
|
const scriptElement = doc.createElement("script");
|
|
|
- scriptElement.textContent = `(()=>{document.currentScript.remove();processNode(document);function processNode(node){node.querySelectorAll("template[${SHADOW_MODE_ATTRIBUTE_NAME}]").forEach(element=>{if (!element.parentElement.shadowRoot) {const shadowRoot=element.parentElement.attachShadow({mode:element.getAttribute("${SHADOW_MODE_ATTRIBUTE_NAME}"),delegatesFocus:element.getAttribute("${SHADOW_DELEGATE_FOCUS_ATTRIBUTE_NAME}") == "true"});shadowRoot.innerHTML=element.innerHTML;element.remove();processNode(shadowRoot)}})}})()`;
|
|
|
|
|
|
|
+ scriptElement.textContent = `(()=>{document.currentScript.remove();processNode(document);function processNode(node){node.querySelectorAll("template[${SHADOW_MODE_ATTRIBUTE_NAME}]").forEach(element=>{if (!element.parentElement.shadowRoot) {const shadowRoot=element.parentElement.attachShadow({mode:element.getAttribute("${SHADOW_MODE_ATTRIBUTE_NAME}"),delegatesFocus:Boolean(element.getAttribute("${SHADOW_DELEGATE_FOCUS_ATTRIBUTE_NAME}"))});shadowRoot.innerHTML=element.innerHTML;element.remove();processNode(shadowRoot)}})}})()`;
|
|
|
doc.body.appendChild(scriptElement);
|
|
doc.body.appendChild(scriptElement);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -924,7 +924,9 @@ this.singlefile.lib.core = this.singlefile.lib.core || (() => {
|
|
|
if (shadowRootData) {
|
|
if (shadowRootData) {
|
|
|
const templateElement = doc.createElement("template");
|
|
const templateElement = doc.createElement("template");
|
|
|
templateElement.setAttribute(SHADOW_MODE_ATTRIBUTE_NAME, shadowRootData.mode);
|
|
templateElement.setAttribute(SHADOW_MODE_ATTRIBUTE_NAME, shadowRootData.mode);
|
|
|
- templateElement.setAttribute(SHADOW_DELEGATE_FOCUS_ATTRIBUTE_NAME, Boolean(shadowRootData.delegatesFocus));
|
|
|
|
|
|
|
+ if (shadowRootData.delegatesFocus) {
|
|
|
|
|
+ templateElement.setAttribute(SHADOW_DELEGATE_FOCUS_ATTRIBUTE_NAME);
|
|
|
|
|
+ }
|
|
|
const shadowDoc = util.parseDocContent(shadowRootData.content);
|
|
const shadowDoc = util.parseDocContent(shadowRootData.content);
|
|
|
if (shadowDoc.head) {
|
|
if (shadowDoc.head) {
|
|
|
const metaCharset = shadowDoc.head.querySelector("meta[charset]");
|
|
const metaCharset = shadowDoc.head.querySelector("meta[charset]");
|