Commit Graph

51 Commits

Author SHA1 Message Date
gsxdsm
9ae51273f3 refactor(dashboard): extract Settings, Memory, Auth, and Model Presets from styles.css
Sweep 3 of the styles.css split. Five settings-related blocks moved out of
the monolith into a single co-located SettingsModal.css. styles.css 3304 →
2509 (–795 lines).

Blocks moved:
- /* === Settings Layout === */          (194 lines)
- /* === Notifications Settings === */    (28 lines)
- /* === Memory Settings === */           (112 lines)
- /* === Auth Provider Cards === */ +
  /* === Provider Connection Status === */ (165 lines combined)
- /* === Settings: Model Presets === */   (93 lines)
- Settings lane badges + descriptions     (~27 lines)

Mobile @media rules whose selectors matched the moved blocks were also
migrated into SettingsModal.css's mobile block.

Kept global with documented reasons:
- .auth-status-badge (and color modifiers) — consumed outside settings by
  ModelOnboardingModal and ClaudeCliProviderCard.
- .settings-empty-state, .settings-muted, .settings-loading — broad reuse
  across BackendConnectionErrorPage, PluginManager, MemoryView etc.

Cross-component imports added: MemoryView.tsx and ModelOnboardingModal.tsx
now import SettingsModal.css to reach memory-* / auth-provider-card classes
they consume.

Test: settings-mobile.test.tsx had two assertions that incorrectly matched
literal pixel values; updated to the actual var(--space-*) token values
present in the rules. Verified live in browser (settings + memory tabs
render cleanly).

styles.css total reduction across the three sweeps: 4551 → 2509 (–45%).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 09:09:34 -07:00