You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(vendors): add Vendors as first-class browsable tab
Vendors were previously only accessible through quote and service log forms.
Now they have their own tab with full CRUD, inline editing, and aggregate
counts (quotes + service log entries per vendor).
Data layer:
- GetVendor, CreateVendor, UpdateVendor store methods
- CountQuotesByVendor, CountServiceLogsByVendor batch-count helpers
App layer:
- tabVendors TabKind, formVendor FormKind
- vendorHandler implementing TabHandler (no delete -- vendors are referenced by FKs)
- vendorColumnSpecs: ID, Name, Contact, Email, Phone, Website, Quotes, Jobs
- Vendor add/edit/inline forms with vendorFormData
- Quotes tab Vendor column now links to Vendors tab (m:1 FK with enter-to-jump)
Tests:
- 11 new app tests (tab existence, index, kind string, column specs, rows,
handler, delete/restore errors, navigation, column kinds, FK link, form data)
- 3 new data tests (vendor CRUD, count quotes by vendor, count service logs by vendor)
Docs:
- New vendors.md guide page
- Updated concepts.md, quotes.md, README, website with vendor tab references
[VENDORS-TAB]
Co-authored-by: Cursor <cursoragent@cursor.com>
0 commit comments