use @mui/material/locale for ThemeProvider

This commit is contained in:
maxim 2025-02-19 16:13:15 +03:00
parent 5aee851f58
commit 56660a3123

View File

@ -1,5 +1,6 @@
import React, {PropsWithChildren, createContext, useEffect, useState} from 'react' import React, {PropsWithChildren, createContext, useEffect, useState} from 'react'
import {ThemeProvider} from '@mui/material/styles' import {ThemeProvider, createTheme} from '@mui/material/styles'
import {ruRU} from '@mui/material/locale'
import {CustomTheme} from './theme' import {CustomTheme} from './theme'
type ColorModeContextType = { type ColorModeContextType = {
@ -21,13 +22,11 @@ export const ColorModeContextProvider: React.FC<PropsWithChildren> = ({children}
}, [mode]) }, [mode])
const setColorMode = () => { const setColorMode = () => {
if (mode === 'light') { setMode((prevMode) => (prevMode === 'light' ? 'dark' : 'light'))
setMode('dark')
} else {
setMode('light')
}
} }
const appliedTheme = createTheme(mode === 'light' ? CustomTheme.Light : CustomTheme.Dark, ruRU)
return ( return (
<ColorModeContext.Provider <ColorModeContext.Provider
value={{ value={{
@ -35,7 +34,7 @@ export const ColorModeContextProvider: React.FC<PropsWithChildren> = ({children}
mode, mode,
}} }}
> >
<ThemeProvider theme={mode === 'light' ? CustomTheme.Light : CustomTheme.Dark}>{children}</ThemeProvider> <ThemeProvider theme={appliedTheme}>{children}</ThemeProvider>
</ColorModeContext.Provider> </ColorModeContext.Provider>
) )
} }