fix: unify theme system - fix theme switching persistence

- Unified localStorage key to 'theme-preference' across all components
- Fixed header.tsx using wrong localStorage key ('theme' instead of 'theme-preference')
- Added localStorage hybrid persistence for instant theme changes
- Removed router.refresh() which was causing stale data revert
- Replaced Blue theme with Sepia
- Consolidated auth() calls to prevent race conditions
- Updated UserSettingsData types to include all themes
This commit is contained in:
2026-01-18 22:33:41 +01:00
parent ef60dafd73
commit ddb67ba9e5
306 changed files with 59580 additions and 6063 deletions

View File

@@ -10,7 +10,12 @@
"db:generate": "prisma generate",
"test": "playwright test",
"test:ui": "playwright test --ui",
"test:headed": "playwright test --headed"
"test:headed": "playwright test --headed",
"test:unit": "vitest run",
"test:unit:watch": "vitest watch",
"test:unit:coverage": "vitest run --coverage",
"test:migration": "vitest run tests/migration",
"test:migration:watch": "vitest watch tests/migration"
},
"dependencies": {
"@ai-sdk/openai": "^3.0.7",
@@ -75,10 +80,12 @@
"@types/nodemailer": "^7.0.4",
"@types/react": "^19",
"@types/react-dom": "^19",
"@vitest/coverage-v8": "^2.1.9",
"prisma": "^5.22.0",
"tailwindcss": "^4.0.0",
"tsx": "^4.21.0",
"tw-animate-css": "^1.4.0",
"typescript": "^5"
"typescript": "^5",
"vitest": "^2.1.9"
}
}