project-nomad/admin/inertia/components
Chris Sherwood e8d775dfe4 feat(UI): add Night Ops dark mode with theme toggle
Add a warm charcoal dark mode ("Night Ops") using CSS variable swapping
under [data-theme="dark"]. All 23 desert palette variables are overridden
with dark-mode counterparts, and ~313 generic Tailwind classes (bg-white,
text-gray-*, border-gray-*) are replaced with semantic tokens.

Infrastructure:
- CSS variable overrides in app.css for both themes
- ThemeProvider + useTheme hook (localStorage + KV store sync)
- ThemeToggle component (moon/sun icons, "Night Ops"/"Day Ops" labels)
- FOUC prevention script in inertia_layout.edge
- Toggle placed in StyledSidebar and Footer for access on every page

Color replacements across 50 files:
- bg-white → bg-surface-primary
- bg-gray-50/100 → bg-surface-secondary
- text-gray-900/800 → text-text-primary
- text-gray-600/500 → text-text-secondary/text-text-muted
- border-gray-200/300 → border-border-subtle/border-border-default
- text-desert-white → text-white (fixes invisible text on colored bg)
- Button hover/active states use dedicated btn-green-hover/active vars

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 09:17:05 -07:00
..
chat feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
file-uploader feat: [wip] native AI chat interface 2026-01-31 20:39:49 -08:00
inputs feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
layout feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
maps feat(Maps): maps use full page by default 2026-02-04 21:54:36 -08:00
markdoc feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
systeminfo feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
ActiveDownloads.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
ActiveEmbedJobs.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
ActiveModelDownloads.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
Alert.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
BouncingDots.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
BouncingLogo.tsx feat: initial commit 2025-06-29 15:51:08 -07:00
BuilderTagSelector.tsx fix(UI): switch to tabler icons only for consistency 2026-01-31 20:39:49 -08:00
CategoryCard.tsx feat: curated content system overhaul 2026-02-11 15:44:46 -08:00
CuratedCollectionCard.tsx feat: curated content system overhaul 2026-02-11 15:44:46 -08:00
DownloadURLModal.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
DynamicIcon.tsx feat: curated zim collections 2025-12-05 15:47:22 -08:00
Footer.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
HorizontalBarChart.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
InfoTooltip.tsx fix(UI): switch to tabler icons only for consistency 2026-01-31 20:39:49 -08:00
InstallActivityFeed.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
LoadingSpinner.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
MarkdocRenderer.tsx feat(docs): polish docs rendering with desert-themed components 2026-02-06 14:41:30 -08:00
ProgressBar.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
StorageProjectionBar.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
StyledButton.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
StyledModal.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
StyledSectionHeader.tsx feat: curated zim collections 2025-12-05 15:47:22 -08:00
StyledSidebar.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
StyledTable.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
ThemeToggle.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
TierSelectionModal.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
UpdateServiceModal.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00
WikipediaSelector.tsx feat(UI): add Night Ops dark mode with theme toggle 2026-03-16 09:17:05 -07:00