aboutsummaryrefslogtreecommitdiffstats
path: root/src/routes/+layout.svelte
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2025-09-09 15:15:24 -0700
committerAdam Soltys <[email protected]>2025-09-09 15:15:24 -0700
commit19769c1eafbcb97dbea37cf210497acb7aad56e8 (patch)
tree8a600477bbafee07b21f90b4eba07495fc8d5881 /src/routes/+layout.svelte
parent0db1b61f6f3393feb45558618859fe824769ed4b (diff)
downloadcoinos-ui-19769c1eafbcb97dbea37cf210497acb7aad56e8.tar.gz
coinos-ui-19769c1eafbcb97dbea37cf210497acb7aad56e8.zip
dark mode fix
Diffstat (limited to 'src/routes/+layout.svelte')
-rw-r--r--src/routes/+layout.svelte14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte
index 8ae31608..7653e05a 100644
--- a/src/routes/+layout.svelte
+++ b/src/routes/+layout.svelte
@@ -7,13 +7,21 @@
import { onMount } from "svelte";
import { installPrompt, theme as themeStore } from "$lib/store";
+
+const map = { light: 'lofi', dark: 'black', system: 'system' };
+
let { data, children } = $props();
let { pathname, theme } = $state(data);
$effect(() => ($themeStore = data.theme));
$effect(() => (theme = $themeStore));
- $effect(() => {
- document.documentElement.setAttribute("data-theme", theme);
- });
+$effect(() => {
+ const v = map[theme] ?? theme;
+ if (!v || v === 'system') {
+ document.documentElement.removeAttribute('data-theme');
+ } else {
+ document.documentElement.setAttribute('data-theme', v);
+ }
+});
let host = PUBLIC_DOMAIN.includes("localhost")
? `http://${PUBLIC_DOMAIN}`