feat(dashboard): Enhance dashboard with PageHeader, StatCard, and auth fixes
- Create PageHeader component with title, description, and action slots - Create StatCard component with trend indicators and icons - Update dashboard with KPI cards, Quick Actions, and Allocation Preview - Polish login page with branding and centered layout - Fix auth redirect: authenticated users accessing /login go to dashboard - Fix page refresh: auth state persists, no blank page - Fix sidebar: visible after login, toggle works, state persists - Fix CSS import: add app.css to layout, fix DaisyUI import path - Fix breadcrumbs: home icon links to /dashboard - Add comprehensive E2E and unit tests Refs: openspec/changes/p03-dashboard-enhancement Closes: p03-dashboard-enhancement
This commit is contained in:
@@ -23,7 +23,7 @@ describe('layout store', () => {
|
||||
expect(getStoreValue(store.theme)).toBe('light');
|
||||
});
|
||||
|
||||
it('toggleSidebar cycles through states', async () => {
|
||||
it('toggleSidebar toggles expanded/collapsed and recovers from hidden', async () => {
|
||||
const store = await import('../../src/lib/stores/layout');
|
||||
|
||||
store.setSidebarState('expanded');
|
||||
@@ -32,8 +32,9 @@ describe('layout store', () => {
|
||||
expect(localStorage.setItem).toHaveBeenCalledWith('headroom_sidebar_state', 'collapsed');
|
||||
|
||||
store.toggleSidebar();
|
||||
expect(getStoreValue(store.sidebarState)).toBe('hidden');
|
||||
expect(getStoreValue(store.sidebarState)).toBe('expanded');
|
||||
|
||||
store.setSidebarState('hidden');
|
||||
store.toggleSidebar();
|
||||
expect(getStoreValue(store.sidebarState)).toBe('expanded');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user