diff --git a/src/pages/settings/components/Theming/Themes/ThemeModal/ThemeModal.tsx b/src/pages/settings/components/Theming/Themes/ThemeModal/ThemeModal.tsx index f206d63..5639604 100644 --- a/src/pages/settings/components/Theming/Themes/ThemeModal/ThemeModal.tsx +++ b/src/pages/settings/components/Theming/Themes/ThemeModal/ThemeModal.tsx @@ -68,14 +68,15 @@ export function ThemeModal({ randomEnabled: 1, textShadowsEnabled: 0, appShadowsEnabled: 0, + themeFont: null, }); }; const handleSaveTheme = () => { mutateAsync({ - method: selectedTheme?.id === undefined ? 'POST' : 'PATCH', + method: designerTheme?.id === undefined ? 'POST' : 'PATCH', endpoint: themesEndpoint, - body: selectedTheme, + body: designerTheme, }); handleClose(); }; @@ -86,6 +87,7 @@ export function ThemeModal({ setDefaultTheme(selectedTheme); } }, [selectedTheme]); + return ( - setSelectedTheme({ ...selectedTheme, name: e.target.value }) + setDesignerTheme({ ...designerTheme, name: e.target.value }) } styles={{ label: { color: 'var(--mantine-color-primary-0)', }, input: { - color: selectedTheme.primaryColor, - backgroundColor: selectedTheme.backgroundColor, + color: designerTheme.primaryColor, + backgroundColor: designerTheme.backgroundColor, border: 'none', borderBottom: '1px solid var(--mantine-color-primary-0)', }, @@ -217,22 +219,23 @@ export function ThemeModal({ setIsNew={setIsNew} duplicate={duplicate} setDuplicate={setDuplicate} - selectedTheme={selectedTheme} + designerTheme={designerTheme} + setDesignerTheme={setDesignerTheme} setSelectedTheme={setSelectedTheme} + setDefaultTheme={setDefaultTheme} /> ) : ( diff --git a/src/pages/settings/components/Theming/Themes/ThemeModal/components/NewThemeStarter.tsx b/src/pages/settings/components/Theming/Themes/ThemeModal/components/NewThemeStarter.tsx index 96eb848..1aa436b 100644 --- a/src/pages/settings/components/Theming/Themes/ThemeModal/components/NewThemeStarter.tsx +++ b/src/pages/settings/components/Theming/Themes/ThemeModal/components/NewThemeStarter.tsx @@ -13,15 +13,19 @@ export function NewThemeStarter({ setIsNew, duplicate, setDuplicate, - selectedTheme, + designerTheme, + setDesignerTheme, setSelectedTheme, + setDefaultTheme, }: { allThemes: Theme[]; setIsNew: (isNew: boolean) => void; duplicate: boolean; setDuplicate: (duplicate: boolean) => void; - selectedTheme: Theme; + designerTheme: Theme; + setDesignerTheme: (selectedTheme: Theme) => void; setSelectedTheme: (selectedTheme: Theme) => void; + setDefaultTheme: (selectedTheme: Theme) => void; }) { const [pressed, setPressed] = useState(false); const handlers = useLongPress(() => { @@ -55,7 +59,8 @@ export function NewThemeStarter({ {...handlers} key={miniTheme.id} onClick={() => { - !pressed && setSelectedTheme(miniTheme); + !pressed && setDesignerTheme(miniTheme); + !pressed && setDefaultTheme(miniTheme); setPressed(false); }} > @@ -79,13 +84,14 @@ export function NewThemeStarter({ borderRadius: '8px', }} > - +