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:
@@ -52,6 +52,7 @@ struct CompleteTaskView: View {
|
||||
} header: {
|
||||
Text("Task Details")
|
||||
}
|
||||
.listRowBackground(Color.appBackgroundSecondary)
|
||||
|
||||
// Contractor Selection Section
|
||||
Section {
|
||||
@@ -89,6 +90,7 @@ struct CompleteTaskView: View {
|
||||
} footer: {
|
||||
Text("Select a contractor if they completed this work, or leave blank for manual entry.")
|
||||
}
|
||||
.listRowBackground(Color.appBackgroundSecondary)
|
||||
|
||||
// Completion Details Section
|
||||
Section {
|
||||
@@ -117,6 +119,7 @@ struct CompleteTaskView: View {
|
||||
} footer: {
|
||||
Text("Add any additional details about completing this task.")
|
||||
}
|
||||
.listRowBackground(Color.appBackgroundSecondary)
|
||||
|
||||
// Notes Section
|
||||
Section {
|
||||
@@ -132,6 +135,7 @@ struct CompleteTaskView: View {
|
||||
} footer: {
|
||||
Text("Optional notes about the work completed.")
|
||||
}
|
||||
.listRowBackground(Color.appBackgroundSecondary)
|
||||
|
||||
// Rating Section
|
||||
Section {
|
||||
@@ -165,6 +169,7 @@ struct CompleteTaskView: View {
|
||||
} footer: {
|
||||
Text("Rate the quality of work from 1 to 5 stars.")
|
||||
}
|
||||
.listRowBackground(Color.appBackgroundSecondary)
|
||||
|
||||
// Images Section
|
||||
Section {
|
||||
@@ -175,7 +180,7 @@ struct CompleteTaskView: View {
|
||||
}) {
|
||||
Label("Take Photo", systemImage: "camera")
|
||||
.frame(maxWidth: .infinity)
|
||||
.foregroundStyle(.blue)
|
||||
.foregroundStyle(Color.appPrimary)
|
||||
}
|
||||
.buttonStyle(.bordered)
|
||||
|
||||
@@ -187,7 +192,7 @@ struct CompleteTaskView: View {
|
||||
) {
|
||||
Label("Library", systemImage: "photo.on.rectangle.angled")
|
||||
.frame(maxWidth: .infinity)
|
||||
.foregroundStyle(.blue)
|
||||
.foregroundStyle(Color.appPrimary)
|
||||
}
|
||||
.buttonStyle(.bordered)
|
||||
}
|
||||
@@ -228,6 +233,7 @@ struct CompleteTaskView: View {
|
||||
} footer: {
|
||||
Text("Add up to 5 photos documenting the completed work.")
|
||||
}
|
||||
.listRowBackground(Color.appBackgroundSecondary)
|
||||
|
||||
// Complete Button Section
|
||||
Section {
|
||||
@@ -243,11 +249,14 @@ struct CompleteTaskView: View {
|
||||
.frame(maxWidth: .infinity)
|
||||
.fontWeight(.semibold)
|
||||
}
|
||||
.listRowBackground(isSubmitting ? Color.gray : Color.green)
|
||||
.foregroundStyle(.white)
|
||||
.listRowBackground(isSubmitting ? Color.gray : Color.appPrimary)
|
||||
.foregroundStyle(Color.appTextOnPrimary)
|
||||
.disabled(isSubmitting)
|
||||
}
|
||||
}
|
||||
.listStyle(.plain)
|
||||
.scrollContentBackground(.hidden)
|
||||
.background(Color.appBackgroundPrimary)
|
||||
.navigationTitle("Complete Task")
|
||||
.navigationBarTitleDisplayMode(.inline)
|
||||
.toolbar {
|
||||
@@ -397,7 +406,7 @@ struct ContractorPickerView: View {
|
||||
Spacer()
|
||||
if selectedContractor == nil {
|
||||
Image(systemName: "checkmark")
|
||||
.foregroundStyle(.blue)
|
||||
.foregroundStyle(Color.appPrimary)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -411,7 +420,7 @@ struct ContractorPickerView: View {
|
||||
}
|
||||
} else if let errorMessage = contractorViewModel.errorMessage {
|
||||
Text(errorMessage)
|
||||
.foregroundStyle(.red)
|
||||
.foregroundStyle(Color.appError)
|
||||
.font(.caption)
|
||||
} else {
|
||||
ForEach(contractorViewModel.contractors, id: \.id) { contractor in
|
||||
@@ -445,7 +454,7 @@ struct ContractorPickerView: View {
|
||||
|
||||
if selectedContractor?.id == contractor.id {
|
||||
Image(systemName: "checkmark")
|
||||
.foregroundStyle(.blue)
|
||||
.foregroundStyle(Color.appPrimary)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user