feat: enforce custom Theme colors app-wide, add debug sample trips and poll

Replace all system colors (.secondary, Color(.secondarySystemBackground),
etc.) with Theme.textPrimary/textSecondary/textMuted/cardBackground/
surfaceGlow across 13 views. Remove PostHog debug logging. Add debug
settings for sample trips and hardcoded group poll preview.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Trey t
2026-02-13 08:54:19 -06:00
parent ff6f4b6c2c
commit 1c97f35754
16 changed files with 580 additions and 73 deletions

View File

@@ -19,6 +19,8 @@ struct SettingsView: View {
@State private var selectedSyncStatus: EntitySyncStatus?
@State private var exporter = DebugShareExporter()
@State private var showExportProgress = false
@State private var showSamplePoll = false
@State private var sampleTripsMessage: String?
#endif
var body: some View {
@@ -570,6 +572,19 @@ struct SettingsView: View {
} label: {
Label("Add All Stadium Visits", systemImage: "mappin.and.ellipse")
}
Button {
exporter.saveSampleTrips(modelContext: modelContext)
sampleTripsMessage = "Saved 4 sample trips!"
} label: {
Label("Save 4 Sample Trips", systemImage: "suitcase.fill")
}
Button {
showSamplePoll = true
} label: {
Label("View Sample Poll", systemImage: "chart.bar.doc.horizontal.fill")
}
} header: {
Text("Debug")
} footer: {
@@ -579,6 +594,19 @@ struct SettingsView: View {
.sheet(isPresented: $showExportProgress) {
DebugExportProgressView(exporter: exporter)
}
.sheet(isPresented: $showSamplePoll) {
NavigationStack {
DebugPollPreviewView()
}
}
.alert("Sample Trips", isPresented: Binding(
get: { sampleTripsMessage != nil },
set: { if !$0 { sampleTripsMessage = nil } }
)) {
Button("OK", role: .cancel) { sampleTripsMessage = nil }
} message: {
Text(sampleTripsMessage ?? "")
}
}
private var syncStatusSection: some View {