Replace StyledEngin by Emotion

This commit is contained in:
Cédric FAMIBELLE-PRONZOLA
2022-01-22 18:13:47 +04:00
parent e8a9536b31
commit 90d5d323a9
2 changed files with 32 additions and 12 deletions
+10 -5
View File
@@ -1,11 +1,13 @@
import {useEffect, useMemo, useState} from 'react'
import {useRouter} from 'next/router'
import PropTypes from 'prop-types'
import {createTheme, ThemeProvider, StyledEngineProvider} from '@mui/material/styles'
import {createTheme, ThemeProvider} from '@mui/material/styles'
import CssBaseline from '@mui/material/CssBaseline'
import {Provider, useSession} from 'next-auth/client'
import {CacheProvider} from '@emotion/react'
import {grey, green, red} from '@mui/material/colors'
import createEmotionCache from '../lib/create-emotion-cache'
import SwitchTheme from '../components/switch-theme'
const getDesignTokens = mode => ({
@@ -39,8 +41,10 @@ const getDesignTokens = mode => ({
},
})
const clientSideEmotionCache = createEmotionCache()
export default function MyApp(props) {
const {Component, pageProps} = props
const {Component, emotionCache = clientSideEmotionCache, pageProps} = props
const [mode, setMode] = useState('light')
const [switchFixed, setSwitchFixed] = useState(false)
const theme = useMemo(() => createTheme(getDesignTokens(mode)), [mode])
@@ -75,7 +79,7 @@ export default function MyApp(props) {
}, [])
return (
<StyledEngineProvider injectFirst>
<CacheProvider value={emotionCache}>
<ThemeProvider theme={theme}>
<CssBaseline />
<Provider session={pageProps.session}>
@@ -87,7 +91,7 @@ export default function MyApp(props) {
)}
</Provider>
</ThemeProvider>
</StyledEngineProvider>
</CacheProvider>
)
}
@@ -117,6 +121,7 @@ function Auth({children}) {
MyApp.propTypes = {
Component: PropTypes.elementType.isRequired,
pageProps: PropTypes.object.isRequired,
emotionCache: PropTypes.object,
router: PropTypes.object.isRequired
}