diff --git a/packages/theme/src/index.ts b/packages/theme/src/index.ts index cfdb333ae..53fe3cabe 100644 --- a/packages/theme/src/index.ts +++ b/packages/theme/src/index.ts @@ -18,7 +18,8 @@ along with this program. If not, see . */ import { SchemeColors, - SchemeColorsAsCSSVariables + SchemeColorsAsCSSVariables, + ThemeDefinition } from "./theme-engine/types.js"; export * from "./theme/index.js"; @@ -26,6 +27,11 @@ export * from "./theme-engine/index.js"; export * from "./theme-engine/types.js"; export * from "./emotion/index.js"; +declare global { + // eslint-disable-next-line no-var + var DEFAULT_THEME: ThemeDefinition | undefined; +} + declare module "csstype" { interface Properties { backgroundColor?: diff --git a/packages/theme/src/theme-engine/index.ts b/packages/theme/src/theme-engine/index.ts index c7c13cc8b..4e8892847 100644 --- a/packages/theme/src/theme-engine/index.ts +++ b/packages/theme/src/theme-engine/index.ts @@ -43,7 +43,7 @@ type ThemeEngineState = { setTheme: (theme: ThemeDefinition) => void; }; const useThemeEngineStore = create((set) => ({ - theme: ThemeLight, + theme: globalThis.DEFAULT_THEME || ThemeLight, setTheme: (theme) => set({ theme }) }));