default color_mode is now system color (#3457)

This commit is contained in:
Thomas Brandého 2024-06-07 18:56:07 +02:00 committed by GitHub
parent e42d4ed9ef
commit c04ed58d2e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 22 additions and 22 deletions

View File

@ -1,22 +1,21 @@
import { useTheme } from "next-themes" import { useTheme } from "next-themes";
import { useEffect, useState } from "react" import { useEffect, useState } from "react";
import { ColorModeContext, defaultColorMode } from "/utils/context.js" import { ColorModeContext, defaultColorMode } from "/utils/context.js";
export default function RadixThemesColorModeProvider({ children }) { export default function RadixThemesColorModeProvider({ children }) {
const {theme, setTheme} = useTheme() const { resolvedTheme, setTheme } = useTheme();
const [colorMode, setColorMode] = useState(defaultColorMode) const [colorMode, setColorMode] = useState(defaultColorMode);
useEffect(() => { useEffect(() => {
setColorMode(theme) setColorMode(resolvedTheme);
}, [theme]) }, [resolvedTheme]);
const toggleColorMode = () => { const toggleColorMode = () => {
setTheme(theme === "light" ? "dark" : "light") setTheme(resolvedTheme === "light" ? "dark" : "light");
} };
return ( return (
<ColorModeContext.Provider value={[ colorMode, toggleColorMode ]}> <ColorModeContext.Provider value={[colorMode, toggleColorMode]}>
{children} {children}
</ColorModeContext.Provider> </ColorModeContext.Provider>
) );
} }

View File

@ -17,7 +17,7 @@ from reflex.components.component import (
) )
from reflex.config import get_config from reflex.config import get_config
from reflex.state import BaseState from reflex.state import BaseState
from reflex.style import LIGHT_COLOR_MODE from reflex.style import SYSTEM_COLOR_MODE
from reflex.utils.exec import is_prod_mode from reflex.utils.exec import is_prod_mode
from reflex.utils.imports import ImportVar from reflex.utils.imports import ImportVar
from reflex.vars import Var from reflex.vars import Var
@ -79,7 +79,7 @@ def _compile_contexts(state: Optional[Type[BaseState]], theme: Component | None)
""" """
appearance = getattr(theme, "appearance", None) appearance = getattr(theme, "appearance", None)
if appearance is None: if appearance is None:
appearance = LIGHT_COLOR_MODE appearance = SYSTEM_COLOR_MODE
return ( return (
templates.CONTEXT.render( templates.CONTEXT.render(
initial_state=utils.compile_state(state), initial_state=utils.compile_state(state),

View File

@ -12,6 +12,7 @@ from reflex.vars import BaseVar, Var, VarData
VarData.update_forward_refs() # Ensure all type definitions are resolved VarData.update_forward_refs() # Ensure all type definitions are resolved
SYSTEM_COLOR_MODE: str = "system"
LIGHT_COLOR_MODE: str = "light" LIGHT_COLOR_MODE: str = "light"
DARK_COLOR_MODE: str = "dark" DARK_COLOR_MODE: str = "dark"