fix: address code review comments

- Use DEFAULT_THEME constant for theme reset
- Type user selector properly
- Include LOCALE_CONFIG in preferences cleanup
- Add newline to migration file
This commit is contained in:
Clemens 2025-11-13 10:35:05 +01:00
parent 60ac63604f
commit 8e91edd9d8
4 changed files with 6 additions and 3 deletions

View file

@ -2,4 +2,4 @@
ALTER TABLE "user" ADD COLUMN "date_range" VARCHAR(50),
ADD COLUMN "timezone" VARCHAR(100),
ADD COLUMN "language" VARCHAR(10),
ADD COLUMN "theme" VARCHAR(20);
ADD COLUMN "theme" VARCHAR(20);

View file

@ -1,6 +1,7 @@
import { Row, Button, Icon, useTheme } from '@umami/react-zen';
import { useMessages, usePreferences } from '@/components/hooks';
import { Sun, Moon } from '@/components/icons';
import { DEFAULT_THEME } from '@/lib/constants';
export function ThemeSetting() {
const { theme, setTheme } = useTheme();
@ -13,7 +14,7 @@ export function ThemeSetting() {
};
const handleReset = () => {
setTheme('light');
setTheme(DEFAULT_THEME);
updatePreferences({ theme: null });
};

View file

@ -1,7 +1,8 @@
import { User } from '@/generated/prisma/client';
import { useApi } from './useApi';
import { useApp } from '@/store/app';
const userSelector = (state: { user: any }) => state.user;
const userSelector = (state: { user: User }) => state.user;
export function usePreferences() {
const { post } = useApi();

View file

@ -67,5 +67,6 @@ export function setClientPreferences(preferences: {
export function removeClientPreferences() {
removeItem(DATE_RANGE_CONFIG);
removeItem(TIMEZONE_CONFIG);
removeItem(LOCALE_CONFIG);
removeItem(THEME_CONFIG);
}