Implement custom 5-color design system across entire iOS app

Apply consistent branding colors (BlueGreen, Cerulean, BrightAmber, PrimaryScarlet,
cream backgrounds) to all screens, components, buttons, icons, and text throughout
the app. Update all Form/List views with proper list row backgrounds to ensure
visual consistency with card-based layouts.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Trey t
2025-11-21 07:58:01 -06:00
parent a4ba6794d5
commit a2b81a244b
70 changed files with 920 additions and 417 deletions

View File

@@ -107,15 +107,16 @@ struct TaskFormView: View {
if !residenceError.isEmpty {
Text(residenceError)
.font(.caption)
.foregroundColor(.red)
.foregroundColor(Color.appError)
}
} header: {
Text("Property")
} footer: {
Text("Required")
.font(.caption)
.foregroundColor(.red)
.foregroundColor(Color.appError)
}
.listRowBackground(Color.appBackgroundSecondary)
}
Section {
@@ -125,7 +126,7 @@ struct TaskFormView: View {
if !titleError.isEmpty {
Text(titleError)
.font(.caption)
.foregroundColor(.red)
.foregroundColor(Color.appError)
}
TextField("Description (optional)", text: $description, axis: .vertical)
@@ -136,8 +137,9 @@ struct TaskFormView: View {
} footer: {
Text("Required: Title")
.font(.caption)
.foregroundColor(.red)
.foregroundColor(Color.appError)
}
.listRowBackground(Color.appBackgroundSecondary)
Section {
Picker("Category", selection: $selectedCategory) {
@@ -151,8 +153,9 @@ struct TaskFormView: View {
} footer: {
Text("Required")
.font(.caption)
.foregroundColor(.red)
.foregroundColor(Color.appError)
}
.listRowBackground(Color.appBackgroundSecondary)
Section {
Picker("Frequency", selection: $selectedFrequency) {
@@ -174,8 +177,9 @@ struct TaskFormView: View {
} footer: {
Text("Required: Frequency")
.font(.caption)
.foregroundColor(.red)
.foregroundColor(Color.appError)
}
.listRowBackground(Color.appBackgroundSecondary)
Section {
Picker("Priority", selection: $selectedPriority) {
@@ -196,21 +200,24 @@ struct TaskFormView: View {
} footer: {
Text("Required: Both Priority and Status")
.font(.caption)
.foregroundColor(.red)
.foregroundColor(Color.appError)
}
.listRowBackground(Color.appBackgroundSecondary)
Section(header: Text("Cost")) {
TextField("Estimated Cost (optional)", text: $estimatedCost)
.keyboardType(.decimalPad)
.focused($focusedField, equals: .estimatedCost)
}
.listRowBackground(Color.appBackgroundSecondary)
if let errorMessage = viewModel.errorMessage {
Section {
Text(errorMessage)
.foregroundColor(.red)
.foregroundColor(Color.appError)
.font(.caption)
}
.listRowBackground(Color.appBackgroundSecondary)
}
}
.disabled(isLoadingLookups)
@@ -221,12 +228,15 @@ struct TaskFormView: View {
ProgressView()
.scaleEffect(1.5)
Text("Loading...")
.foregroundColor(.secondary)
.foregroundColor(Color.appTextSecondary)
}
.frame(maxWidth: .infinity, maxHeight: .infinity)
.background(Color(uiColor: .systemBackground).opacity(0.8))
.background(Color.appBackgroundPrimary.opacity(0.8))
}
}
.listStyle(.plain)
.scrollContentBackground(.hidden)
.background(Color.appBackgroundPrimary)
.navigationTitle(isEditMode ? "Edit Task" : "Add Task")
.navigationBarTitleDisplayMode(.inline)
.toolbar {