fix(theme): default to light when no preference is saved

This commit is contained in:
2026-09-07 22:07:12 +03:30
parent c4e8426db5
commit e635e201a0
2 changed files with 2 additions and 6 deletions

View File

@@ -19,8 +19,7 @@ const themeScript = `
document.documentElement.dataset.siteLoading = 'true';
try {
const savedTheme = localStorage.getItem('portfolio-theme');
const systemTheme = matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
document.documentElement.dataset.theme = savedTheme || systemTheme;
document.documentElement.dataset.theme = savedTheme === 'dark' ? 'dark' : 'light';
} catch {}
`;

View File

@@ -21,10 +21,7 @@ export const ThemeProvider: React.FC<{ children: React.ReactNode }> = ({ childre
useEffect(() => {
const savedTheme = localStorage.getItem('portfolio-theme') as Theme | null;
const systemTheme: Theme = window.matchMedia('(prefers-color-scheme: dark)').matches
? 'dark'
: 'light';
const initialTheme = savedTheme || systemTheme;
const initialTheme: Theme = savedTheme === 'dark' ? 'dark' : 'light';
setThemeState(initialTheme);
document.documentElement.setAttribute('data-theme', initialTheme);
}, []);