import { createContext, useContext, useState, useMemo } from 'react'; import { createTheme, ThemeProvider as MuiThemeProvider } from '@mui/material/styles'; const darkTheme = createTheme({ palette: { mode: 'dark', }, }); const lightTheme = createTheme({ palette: { mode: 'light', }, }); const ThemeContext = createContext({ themeMode: 'light', toggleTheme: () => {} }); export const ThemeProvider = ({ children }: { children: React.ReactNode }) => { const [themeMode, setThemeMode] = useState('light'); const theme = useMemo(() => (themeMode === 'light' ? lightTheme : darkTheme), [themeMode]); const toggleTheme = () => { setThemeMode((prevMode) => (prevMode === 'light' ? 'dark' : 'light')); }; return ( {children} ); }; export const useThemeContext = () => useContext(ThemeContext);