aboutsummaryrefslogtreecommitdiffstats
path: root/subprojects/frontend/src/theme
diff options
context:
space:
mode:
Diffstat (limited to 'subprojects/frontend/src/theme')
-rw-r--r--subprojects/frontend/src/theme/ThemeProvider.tsx10
-rw-r--r--subprojects/frontend/src/theme/ThemeStore.ts9
2 files changed, 9 insertions, 10 deletions
diff --git a/subprojects/frontend/src/theme/ThemeProvider.tsx b/subprojects/frontend/src/theme/ThemeProvider.tsx
index 5aaf3ad1..6f9a712e 100644
--- a/subprojects/frontend/src/theme/ThemeProvider.tsx
+++ b/subprojects/frontend/src/theme/ThemeProvider.tsx
@@ -313,7 +313,11 @@ ContrastThemeProvider.defaultProps = {
313 children: undefined, 313 children: undefined,
314}; 314};
315 315
316function ThemeProvider({ children }: { children?: ReactNode }): JSX.Element { 316const ThemeProvider = observer(function ThemeProvider({
317 children,
318}: {
319 children?: ReactNode;
320}): JSX.Element {
317 const { 321 const {
318 themeStore: { darkMode }, 322 themeStore: { darkMode },
319 } = useRootStore(); 323 } = useRootStore();
@@ -326,10 +330,10 @@ function ThemeProvider({ children }: { children?: ReactNode }): JSX.Element {
326 {children} 330 {children}
327 </ThemeAndContrastThemeProvider> 331 </ThemeAndContrastThemeProvider>
328 ); 332 );
329} 333});
330 334
331ThemeProvider.defaultProps = { 335ThemeProvider.defaultProps = {
332 children: undefined, 336 children: undefined,
333}; 337};
334 338
335export default observer(ThemeProvider); 339export default ThemeProvider;
diff --git a/subprojects/frontend/src/theme/ThemeStore.ts b/subprojects/frontend/src/theme/ThemeStore.ts
index 6fbd9f90..e09d8d99 100644
--- a/subprojects/frontend/src/theme/ThemeStore.ts
+++ b/subprojects/frontend/src/theme/ThemeStore.ts
@@ -1,4 +1,4 @@
1import { action, computed, makeObservable, observable } from 'mobx'; 1import { makeAutoObservable } from 'mobx';
2 2
3export enum ThemePreference { 3export enum ThemePreference {
4 System, 4 System,
@@ -17,12 +17,7 @@ export default class ThemeStore {
17 mediaQuery.addEventListener('change', (event) => { 17 mediaQuery.addEventListener('change', (event) => {
18 this.systemDarkMode = event.matches; 18 this.systemDarkMode = event.matches;
19 }); 19 });
20 makeObservable(this, { 20 makeAutoObservable(this);
21 preference: observable,
22 systemDarkMode: observable,
23 darkMode: computed,
24 toggleDarkMode: action,
25 });
26 } 21 }
27 22
28 get darkMode(): boolean { 23 get darkMode(): boolean {