mirror of https://github.com/tooot-app/app
Fix when userTheme is undefined
This commit is contained in:
parent
adddae9d72
commit
9f6e7738bf
|
@ -43,6 +43,11 @@ const useColorSchemeDelay = (delay = 250) => {
|
||||||
return colorScheme
|
return colorScheme
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const determineMode = (
|
||||||
|
osTheme: 'light' | 'dark' | null | undefined,
|
||||||
|
userTheme: StorageGlobal['app.theme']
|
||||||
|
): 'light' | 'dark' =>
|
||||||
|
!userTheme || userTheme === 'auto' ? osTheme || 'light' : userTheme || 'light'
|
||||||
const determineTheme = (
|
const determineTheme = (
|
||||||
osTheme: 'light' | 'dark' | null | undefined,
|
osTheme: 'light' | 'dark' | null | undefined,
|
||||||
userTheme: StorageGlobal['app.theme'],
|
userTheme: StorageGlobal['app.theme'],
|
||||||
|
@ -75,13 +80,11 @@ const ThemeManager: React.FC<PropsWithChildren> = ({ children }) => {
|
||||||
const [userTheme] = useGlobalStorage.string('app.theme')
|
const [userTheme] = useGlobalStorage.string('app.theme')
|
||||||
const [darkTheme] = useGlobalStorage.string('app.theme.dark')
|
const [darkTheme] = useGlobalStorage.string('app.theme.dark')
|
||||||
|
|
||||||
const [mode, setMode] = useState<'light' | 'dark'>(
|
const [mode, setMode] = useState<'light' | 'dark'>(determineMode(osTheme, userTheme))
|
||||||
userTheme === 'auto' ? osTheme || 'light' : userTheme || 'light'
|
|
||||||
)
|
|
||||||
const [theme, setTheme] = useState<Theme>(determineTheme(osTheme, userTheme, darkTheme))
|
const [theme, setTheme] = useState<Theme>(determineTheme(osTheme, userTheme, darkTheme))
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setMode(userTheme === 'auto' ? osTheme || 'light' : userTheme || 'light')
|
setMode(determineMode(osTheme, userTheme))
|
||||||
}, [osTheme, userTheme])
|
}, [osTheme, userTheme])
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setTheme(determineTheme(osTheme, userTheme, darkTheme))
|
setTheme(determineTheme(osTheme, userTheme, darkTheme))
|
||||||
|
|
Loading…
Reference in New Issue