(theme: DesktopTheme, themeId: string)
| 160 | } |
| 161 | |
| 162 | function cacheThemeVariants(theme: DesktopTheme, themeId: string) { |
| 163 | if (themeId === "oc-2") return |
| 164 | for (const mode of ["light", "dark"] as const) { |
| 165 | const isDark = mode === "dark" |
| 166 | const variant = isDark ? theme.dark : theme.light |
| 167 | const tokens = resolveThemeVariant(variant, isDark) |
| 168 | const css = themeToCss(tokens) |
| 169 | const v2 = themeV2ToCss(resolveThemeVariantV2(variant, isDark)) |
| 170 | write(isDark ? STORAGE_KEYS.THEME_CSS_DARK : STORAGE_KEYS.THEME_CSS_LIGHT, `${css}\n ${v2}`) |
| 171 | } |
| 172 | } |
| 173 | |
| 174 | export const { use: useTheme, provider: ThemeProvider } = createSimpleContext({ |
| 175 | name: "Theme", |
no test coverage detected