wulf-pulse/components/mobile
lorentz 586c04ad2a feat(09-05): ThemeSessionBridge + ThemeToggle write-through to /api/me/theme
- Create ThemeSessionBridge.tsx: useEffect compares session.user.theme to
  next-themes value; calls setTheme(serverTheme) on mismatch; validates
  against 3-string allowlist ('light'|'dark'|'system'); renders null
- Mount <ThemeSessionBridge /> as first child of <AuthProvider> in app/layout.tsx
- Modify ThemeToggle: writeTheme() calls setTheme() then fire-and-forget
  PUT /api/me/theme; silent catch for network errors (best-effort desktop UX)
2026-05-10 07:48:57 -04:00
..
profile feat(09-05): ThemeSessionBridge + ThemeToggle write-through to /api/me/theme 2026-05-10 07:48:57 -04:00
AnalyzerFeedRow.tsx feat(06-02): add AnalyzerStagePips, ConfidenceBadge, AnalyzerRowSkeleton, AnalyzerFeedRow components 2026-05-03 21:30:17 -04:00
AnalyzerRowSkeleton.tsx feat(06-02): add AnalyzerStagePips, ConfidenceBadge, AnalyzerRowSkeleton, AnalyzerFeedRow components 2026-05-03 21:30:17 -04:00
AnalyzerStagePips.tsx feat(06-02): add AnalyzerStagePips, ConfidenceBadge, AnalyzerRowSkeleton, AnalyzerFeedRow components 2026-05-03 21:30:17 -04:00
BottomNav.tsx fix(04-01): restore phase 2/3 work lost by worktree soft-reset 2026-05-03 18:01:14 -04:00
ConfidenceBadge.tsx feat(06-02): add AnalyzerStagePips, ConfidenceBadge, AnalyzerRowSkeleton, AnalyzerFeedRow components 2026-05-03 21:30:17 -04:00
EngagementHoursSparkline.tsx feat(07-02): add 7 engagement components (chips, summary card, sparkline, sort, search, user row + skeleton) 2026-05-03 22:53:33 -04:00
EngagementPeriodChips.tsx feat(07-02): add 7 engagement components (chips, summary card, sparkline, sort, search, user row + skeleton) 2026-05-03 22:53:33 -04:00
EngagementProfileBreakdown.tsx feat(08-02): activity breakdown + recent entries + meetings + page wiring (Task 2) 2026-05-07 20:50:56 -04:00
EngagementProfileHeader.tsx feat(08-02): identity header + 2x2 metric grid + page wiring (Task 1b) 2026-05-07 20:48:24 -04:00
EngagementProfileMetricGrid.tsx feat(08-02): identity header + 2x2 metric grid + page wiring (Task 1b) 2026-05-07 20:48:24 -04:00
EngagementProfileSkeleton.tsx feat(08-02): page shell + skeleton + period/fetch wiring (Task 1a) 2026-05-07 20:46:28 -04:00
EngagementRecentEntries.tsx fix(08-02): coerce Postgres numeric hours_worked to Number before toFixed 2026-05-07 22:02:52 -04:00
EngagementRecentMeetings.tsx fix(08-02): coerce Postgres numeric hours_worked to Number before toFixed 2026-05-07 22:02:52 -04:00
EngagementSearchInput.tsx feat(07-02): add 7 engagement components (chips, summary card, sparkline, sort, search, user row + skeleton) 2026-05-03 22:53:33 -04:00
EngagementSortChips.tsx feat(07-02): add 7 engagement components (chips, summary card, sparkline, sort, search, user row + skeleton) 2026-05-03 22:53:33 -04:00
EngagementSummaryCard.tsx feat(07-02): add 7 engagement components (chips, summary card, sparkline, sort, search, user row + skeleton) 2026-05-03 22:53:33 -04:00
EngagementUserRow.tsx feat(07-02): add 7 engagement components (chips, summary card, sparkline, sort, search, user row + skeleton) 2026-05-03 22:53:33 -04:00
EngagementUserRowSkeleton.tsx feat(07-02): add 7 engagement components (chips, summary card, sparkline, sort, search, user row + skeleton) 2026-05-03 22:53:33 -04:00
FinanceRow.tsx feat(05-01): create FinanceRow component 2026-05-03 19:52:02 -04:00
FinanceSkeleton.tsx feat(05-01): create FinanceSkeleton component 2026-05-03 19:52:25 -04:00
HeaderBar.tsx fix(04-01): restore phase 2/3 work lost by worktree soft-reset 2026-05-03 18:01:14 -04:00
KpiCardMobile.tsx fix(04-01): restore phase 2/3 work lost by worktree soft-reset 2026-05-03 18:01:14 -04:00
MoreDrawer.tsx feat(09-04): page shell, drawer wiring, skeleton helper, channels placeholder 2026-05-10 07:40:40 -04:00
NeedsAttentionStrip.tsx fix(04-01): restore phase 2/3 work lost by worktree soft-reset 2026-05-03 18:01:14 -04:00
TicketFilterStrip.tsx feat(04-01): add TicketRowSkeleton and TicketFilterStrip presentational components 2026-05-03 18:02:13 -04:00
TicketRowSkeleton.tsx feat(04-01): add TicketRowSkeleton and TicketFilterStrip presentational components 2026-05-03 18:02:13 -04:00
WorkerStatusRow.tsx fix(04-01): restore phase 2/3 work lost by worktree soft-reset 2026-05-03 18:01:14 -04:00