| quartz/components/renderPage.tsx | ●●●●● patch | view | raw | blame | history | |
| quartz/components/scripts/spa.inline.ts | ●●●●● patch | view | raw | blame | history | |
| quartz/util/resources.tsx | ●●●●● patch | view | raw | blame | history |
quartz/components/renderPage.tsx
@@ -294,7 +294,7 @@ </body> {pageResources.js .filter((resource) => resource.loadTime === "afterDOMReady") .map((res) => JSResourceToScriptElement(res))} .map((res) => JSResourceToScriptElement(res, true))} </html> ) quartz/components/scripts/spa.inline.ts
@@ -115,9 +115,9 @@ } // now, patch head, re-executing scripts const elementsToRemove = document.head.querySelectorAll(":not([spa-preserve])") const elementsToRemove = document.head.querySelectorAll(":not([data-persist])") elementsToRemove.forEach((el) => el.remove()) const elementsToAdd = html.head.querySelectorAll(":not([spa-preserve])") const elementsToAdd = html.head.querySelectorAll(":not([data-persist])") elementsToAdd.forEach((el) => document.head.appendChild(el)) // delay setting the url until now quartz/util/resources.tsx
@@ -26,9 +26,10 @@ export function JSResourceToScriptElement(resource: JSResource, preserve?: boolean): JSX.Element { const scriptType = resource.moduleType ?? "application/javascript" const spaPreserve = preserve ?? resource.spaPreserve if (resource.contentType === "external") { return ( <script key={resource.src} src={resource.src} type={scriptType} spa-preserve={spaPreserve} /> <script key={resource.src} src={resource.src} type={scriptType} data-persist={spaPreserve} /> ) } else { const content = resource.script @@ -36,7 +37,7 @@ <script key={randomUUID()} type={scriptType} spa-preserve={spaPreserve} data-persist={spaPreserve} dangerouslySetInnerHTML={{ __html: content }} ></script> ) @@ -54,7 +55,7 @@ href={resource.content} rel="stylesheet" type="text/css" spa-preserve={spaPreserve} data-persist={spaPreserve} /> ) }