summaryrefslogtreecommitdiffhomepage
path: root/cloud/web/src/components/context-theme.tsx
diff options
context:
space:
mode:
authorFrank <[email protected]>2025-08-29 23:32:17 -0400
committerFrank <[email protected]>2025-08-29 23:32:17 -0400
commit37f284f9a97d3354143d64fc76c2eb9f7d9ccf9e (patch)
tree053db9abcb2178c71b22ebeadd07f920750ef5d2 /cloud/web/src/components/context-theme.tsx
parent0178eab29bda2f1b37a29543cd313ede48ad3977 (diff)
downloadopencode-37f284f9a97d3354143d64fc76c2eb9f7d9ccf9e.tar.gz
opencode-37f284f9a97d3354143d64fc76c2eb9f7d9ccf9e.zip
wip: cloud
Diffstat (limited to 'cloud/web/src/components/context-theme.tsx')
-rw-r--r--cloud/web/src/components/context-theme.tsx39
1 files changed, 0 insertions, 39 deletions
diff --git a/cloud/web/src/components/context-theme.tsx b/cloud/web/src/components/context-theme.tsx
deleted file mode 100644
index 7800aeca0..000000000
--- a/cloud/web/src/components/context-theme.tsx
+++ /dev/null
@@ -1,39 +0,0 @@
-import { createStore } from "solid-js/store"
-import { makePersisted } from "@solid-primitives/storage"
-import { createEffect } from "solid-js"
-import { createInitializedContext } from "../util/context"
-import { isServer } from "solid-js/web"
-
-interface Storage {
- mode: "light" | "dark"
-}
-
-export const { provider: ThemeProvider, use: useTheme } =
- createInitializedContext("ThemeContext", () => {
- const [store, setStore] = makePersisted(
- createStore<Storage>({
- mode:
- !isServer &&
- window.matchMedia &&
- window.matchMedia("(prefers-color-scheme: dark)").matches
- ? "dark"
- : "light",
- }),
- {
- name: "theme",
- },
- )
- createEffect(() => {
- document.documentElement.setAttribute("data-color-mode", store.mode)
- })
-
- return {
- setMode(mode: Storage["mode"]) {
- setStore("mode", mode)
- },
- get mode() {
- return store.mode
- },
- ready: true,
- }
- })