mirror of
https://github.com/ClovertaTheTrilobita/SanYeCao-blog.git
synced 2026-07-03 15:41:26 +00:00
Merge remote-tracking branch 'origin/master' into blog-content
This commit is contained in:
commit
6f3ca0e90f
1 changed files with 35 additions and 9 deletions
|
|
@ -6,7 +6,6 @@ const siteId = import.meta.env.PUBLIC_REMARK42_SITE_ID;
|
||||||
---
|
---
|
||||||
|
|
||||||
<div id="remark42"></div>
|
<div id="remark42"></div>
|
||||||
|
|
||||||
<script define:vars={{ pagePath, host, siteId }} is:inline data-astro-rerun>
|
<script define:vars={{ pagePath, host, siteId }} is:inline data-astro-rerun>
|
||||||
function getTheme() {
|
function getTheme() {
|
||||||
return document.documentElement.classList.contains("dark")
|
return document.documentElement.classList.contains("dark")
|
||||||
|
|
@ -35,6 +34,7 @@ const siteId = import.meta.env.PUBLIC_REMARK42_SITE_ID;
|
||||||
resolve(true);
|
resolve(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
existing.addEventListener("load", () => resolve(true), {
|
existing.addEventListener("load", () => resolve(true), {
|
||||||
once: true,
|
once: true,
|
||||||
});
|
});
|
||||||
|
|
@ -67,16 +67,42 @@ const siteId = import.meta.env.PUBLIC_REMARK42_SITE_ID;
|
||||||
setRemarkConfig();
|
setRemarkConfig();
|
||||||
await ensureScript();
|
await ensureScript();
|
||||||
|
|
||||||
if (window.REMARK42) {
|
if (!window.REMARK42) return;
|
||||||
if (typeof window.REMARK42.destroy === "function") {
|
|
||||||
window.REMARK42.destroy();
|
if (typeof window.REMARK42.destroy === "function") {
|
||||||
}
|
window.REMARK42.destroy();
|
||||||
if (typeof window.REMARK42.createInstance === "function") {
|
}
|
||||||
node.innerHTML = "";
|
|
||||||
window.REMARK42.createInstance(window.remark_config);
|
if (typeof window.REMARK42.createInstance === "function") {
|
||||||
}
|
node.innerHTML = "";
|
||||||
|
window.REMARK42.createInstance(window.remark_config);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function setupRemark42ThemeObserver() {
|
||||||
|
if (window.__remark42ThemeObserver) {
|
||||||
|
window.__remark42ThemeObserver.disconnect();
|
||||||
|
}
|
||||||
|
|
||||||
|
let lastTheme = getTheme();
|
||||||
|
|
||||||
|
const observer = new MutationObserver(() => {
|
||||||
|
const currentTheme = getTheme();
|
||||||
|
|
||||||
|
if (currentTheme === lastTheme) return;
|
||||||
|
|
||||||
|
lastTheme = currentTheme;
|
||||||
|
mountRemark42();
|
||||||
|
});
|
||||||
|
|
||||||
|
observer.observe(document.documentElement, {
|
||||||
|
attributes: true,
|
||||||
|
attributeFilter: ["class"],
|
||||||
|
});
|
||||||
|
|
||||||
|
window.__remark42ThemeObserver = observer;
|
||||||
|
}
|
||||||
|
|
||||||
mountRemark42();
|
mountRemark42();
|
||||||
|
setupRemark42ThemeObserver();
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue