Skip to content
Snippets Groups Projects
Unverified Commit 9b18bd0b authored by GyDi's avatar GyDi
Browse files

fix: create theme error, close #294

parent f95ddd59
No related branches found
No related tags found
No related merge requests found
import { useEffect, useMemo } from "react"; import { useEffect, useMemo } from "react";
import { useRecoilState } from "recoil"; import { useRecoilState } from "recoil";
import { createTheme } from "@mui/material"; import { createTheme, Theme } from "@mui/material";
import { appWindow } from "@tauri-apps/api/window"; import { appWindow } from "@tauri-apps/api/window";
import { atomThemeMode } from "@/services/states"; import { atomThemeMode } from "@/services/states";
import { defaultTheme, defaultDarkTheme } from "@/pages/_theme"; import { defaultTheme, defaultDarkTheme } from "@/pages/_theme";
...@@ -36,30 +36,52 @@ export default function useCustomTheme() { ...@@ -36,30 +36,52 @@ export default function useCustomTheme() {
const setting = theme_setting || {}; const setting = theme_setting || {};
const dt = mode === "light" ? defaultTheme : defaultDarkTheme; const dt = mode === "light" ? defaultTheme : defaultDarkTheme;
const theme = createTheme({ let theme: Theme;
breakpoints: {
values: { xs: 0, sm: 650, md: 900, lg: 1200, xl: 1536 }, try {
}, theme = createTheme({
palette: { breakpoints: {
mode, values: { xs: 0, sm: 650, md: 900, lg: 1200, xl: 1536 },
primary: { main: setting.primary_color || dt.primary_color }, },
secondary: { main: setting.secondary_color || dt.secondary_color }, palette: {
info: { main: setting.info_color || dt.info_color }, mode,
error: { main: setting.error_color || dt.error_color }, primary: { main: setting.primary_color || dt.primary_color },
warning: { main: setting.warning_color || dt.warning_color }, secondary: { main: setting.secondary_color || dt.secondary_color },
success: { main: setting.success_color || dt.success_color }, info: { main: setting.info_color || dt.info_color },
text: { error: { main: setting.error_color || dt.error_color },
primary: setting.primary_text || dt.primary_text, warning: { main: setting.warning_color || dt.warning_color },
secondary: setting.secondary_text || dt.secondary_text, success: { main: setting.success_color || dt.success_color },
text: {
primary: setting.primary_text || dt.primary_text,
secondary: setting.secondary_text || dt.secondary_text,
},
},
typography: {
// todo
fontFamily: setting.font_family
? `${setting.font_family}, ${dt.font_family}`
: dt.font_family,
}, },
}, });
typography: { } catch {
// todo // fix #294
fontFamily: setting.font_family theme = createTheme({
? `${setting.font_family}, ${dt.font_family}` breakpoints: {
: dt.font_family, values: { xs: 0, sm: 650, md: 900, lg: 1200, xl: 1536 },
}, },
}); palette: {
mode,
primary: { main: dt.primary_color },
secondary: { main: dt.secondary_color },
info: { main: dt.info_color },
error: { main: dt.error_color },
warning: { main: dt.warning_color },
success: { main: dt.success_color },
text: { primary: dt.primary_text, secondary: dt.secondary_text },
},
typography: { fontFamily: dt.font_family },
});
}
// css // css
const selectColor = mode === "light" ? "#f5f5f5" : "#d5d5d5"; const selectColor = mode === "light" ? "#f5f5f5" : "#d5d5d5";
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment