Revize 41a11178
Přidáno uživatelem Václav Honzík před asi 2 roky(ů)
frontend/src/features/Theme/ThemeWrapper.tsx | ||
---|---|---|
1 |
import { PaletteMode } from "@mui/material"
|
|
1 |
import { PaletteMode } from '@mui/material'
|
|
2 | 2 |
import { createTheme, Theme, ThemeProvider } from '@mui/material/styles' |
3 |
import { FunctionComponent, ReactNode, useEffect, useState } from "react"
|
|
4 |
import { useSelector } from "react-redux"
|
|
5 |
import { RootState } from "../redux/store"
|
|
3 |
import { FunctionComponent, ReactNode, useEffect, useState } from 'react'
|
|
4 |
import { useSelector } from 'react-redux'
|
|
5 |
import { RootState } from '../redux/store'
|
|
6 | 6 |
|
7 | 7 |
export interface ThemeWrapperProps { |
8 | 8 |
children: ReactNode |
9 | 9 |
} |
10 | 10 |
|
11 | 11 |
const ThemeWrapper: FunctionComponent<ThemeWrapperProps> = ({ children }) => { |
12 |
|
|
12 |
const lightThemePalette = { |
|
13 |
primary: { |
|
14 |
main: '#A28253', |
|
15 |
}, |
|
16 |
secondary: { |
|
17 |
main: '#E3DBCF', |
|
18 |
}, |
|
19 |
} |
|
20 |
|
|
21 |
const darkThemePalette = { |
|
22 |
primary: { |
|
23 |
main: '#e0bb84', |
|
24 |
}, |
|
25 |
secondary: { |
|
26 |
main: '#E3DBCF', |
|
27 |
}, |
|
28 |
} |
|
29 |
|
|
30 |
const getPalette = (paletteMode: PaletteMode) => { |
|
31 |
switch (paletteMode) { |
|
32 |
case 'light': |
|
33 |
return lightThemePalette |
|
34 |
case 'dark': |
|
35 |
return darkThemePalette |
|
36 |
default: |
|
37 |
return lightThemePalette |
|
38 |
} |
|
39 |
} |
|
40 |
|
|
13 | 41 |
const buildTheme = (paletteMode: PaletteMode) => |
14 | 42 |
createTheme({ |
15 | 43 |
palette: { |
16 | 44 |
mode: paletteMode, |
45 |
...getPalette(paletteMode), |
|
17 | 46 |
}, |
18 | 47 |
shape: { |
19 |
borderRadius: 16
|
|
48 |
borderRadius: 8,
|
|
20 | 49 |
}, |
21 | 50 |
typography: { |
22 | 51 |
fontFamily: [ |
... | ... | |
45 | 74 |
}) |
46 | 75 |
}, [paletteMode]) |
47 | 76 |
|
48 |
return ( |
|
49 |
<ThemeProvider theme={theme}> |
|
50 |
{children} |
|
51 |
</ThemeProvider> |
|
52 |
) |
|
77 |
return <ThemeProvider theme={theme}>{children}</ThemeProvider> |
|
53 | 78 |
} |
54 | 79 |
|
55 |
export default ThemeWrapper |
|
80 |
export default ThemeWrapper |
Také k dispozici: Unified diff
map adjustments
re #9547