feat(web): Schedule-First redesign

- Top header bar + narrow sidebar layout
- Dashboard: calendar-style schedule with timeline cards
- Clients: card-based layout with avatar initials and pet count
- Services: grid cards with emoji indicators and pricing
- Bookings: timeline cards with time slots, status chips, inline actions
- Invoices: cards with status badges, action buttons
- All pages: search bars, empty states, modal forms
- Consistent color system: indigo primary, amber alerts, gray hierarchy
This commit is contained in:
Robert Perez
2026-07-14 05:13:04 +00:00
parent cdaf5780e5
commit d8a4e43bcc
31 changed files with 1801 additions and 400 deletions
+2 -2
View File
@@ -98,7 +98,7 @@ model Booking {
priceOverride Float?
petId String?
pet Pet? @relation("PetBookings", fields: [petId], references: [id])
invoice Invoice? @relation(references: [id])
invoice Invoice? @relation()
recurringRule Json?
@@map("bookings")
@@ -128,7 +128,7 @@ model Invoice {
clientId String
client Client @relation(fields: [clientId], references: [id])
bookingId String? @unique
booking Booking? @relation(references: [id])
booking Booking? @relation(fields: [bookingId], references: [id])
invoiceItems InvoiceItem[]
@@map("invoices")