summaryrefslogtreecommitdiffhomepage
path: root/packages/app/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'packages/app/index.html')
-rw-r--r--packages/app/index.html31
1 files changed, 29 insertions, 2 deletions
diff --git a/packages/app/index.html b/packages/app/index.html
index 4f003c05b..ea4237804 100644
--- a/packages/app/index.html
+++ b/packages/app/index.html
@@ -13,9 +13,36 @@
<meta name="theme-color" content="#131010" media="(prefers-color-scheme: dark)" />
<meta property="og:image" content="/social-share.png" />
<meta property="twitter:image" content="/social-share.png" />
- <!-- Theme preload script - injected by Vite plugin to avoid FOUC -->
+ <!-- Theme preload script - applies cached theme to avoid FOUC -->
<script id="oc-theme-preload-script">
- /* THEME_PRELOAD_SCRIPT */
+ ;(function () {
+ var themeId = localStorage.getItem("opencode-theme-id")
+ if (!themeId) return
+
+ var scheme = localStorage.getItem("opencode-color-scheme") || "system"
+ var isDark = scheme === "dark" || (scheme === "system" && matchMedia("(prefers-color-scheme: dark)").matches)
+ var mode = isDark ? "dark" : "light"
+
+ document.documentElement.dataset.theme = themeId
+ document.documentElement.dataset.colorScheme = mode
+
+ if (themeId === "oc-1") return
+
+ var css = localStorage.getItem("opencode-theme-css-" + themeId + "-" + mode)
+ if (css) {
+ var style = document.createElement("style")
+ style.id = "oc-theme-preload"
+ style.textContent =
+ ":root{color-scheme:" +
+ mode +
+ ";--text-mix-blend-mode:" +
+ (isDark ? "plus-lighter" : "multiply") +
+ ";" +
+ css +
+ "}"
+ document.head.appendChild(style)
+ }
+ })()
</script>
</head>
<body class="antialiased overscroll-none text-12-regular overflow-hidden">