-
2111bb8b60
feat(ui): add reservation-list table component
Matt Ciaccio
2026-04-24 14:18:11 +02:00
-
64d7b5c765
feat(ui): company list page with columns, filters, and sidebar entry
Matt Ciaccio
2026-04-24 14:05:24 +02:00
-
4e448dd06e
feat(ui): add-membership dialog for company members
Matt Ciaccio
2026-04-24 14:02:47 +02:00
-
29a7fc8857
feat(ui): add shared client-picker autocomplete
Matt Ciaccio
2026-04-24 14:02:00 +02:00
-
5d76a8a1cf
feat(ui): company detail page with header, tabs, members, owned yachts
Matt Ciaccio
2026-04-24 13:59:21 +02:00
-
d6743ed52c
feat(ui): add company-form for create/edit with 409 handling
Matt Ciaccio
2026-04-24 13:53:35 +02:00
-
ba86b7a897
feat(ui): add company-picker autocomplete component
Matt Ciaccio
2026-04-24 13:52:52 +02:00
-
4f56c2bdfd
feat(ui): add Yachts entry to sidebar navigation
Matt Ciaccio
2026-04-24 13:48:37 +02:00
-
508518b6c8
feat(ui): yacht transfer dialog with atomic ownership change
Matt Ciaccio
2026-04-24 13:47:26 +02:00
-
f64a52b995
feat(ui): yacht list page with columns and filters
Matt Ciaccio
2026-04-24 13:44:15 +02:00
-
76d2348873
feat(ui): yacht detail page with header, tabs, ownership history
Matt Ciaccio
2026-04-24 13:40:41 +02:00
-
a604223c17
feat(ui): add yacht-form for create/edit
Matt Ciaccio
2026-04-24 13:34:55 +02:00
-
d4f58abb9c
feat(ui): add owner-picker and yacht-picker components
Matt Ciaccio
2026-04-24 13:32:28 +02:00
-
727e323288
feat(seed): rewrite seed for multi-cardinality refactor
Matt Ciaccio
2026-04-24 13:26:37 +02:00
-
7abbdd4913
feat(factories): add makeMembership, makeReservation, makeOwnershipTransfer
Matt Ciaccio
2026-04-24 13:19:54 +02:00
-
94f8b76a03
feat(events): register yacht, company, membership, reservation webhook events
Matt Ciaccio
2026-04-24 12:56:47 +02:00
-
a78f653f5a
feat(api): berth reservations (create pending + lifecycle PATCH)
Matt Ciaccio
2026-04-24 12:55:12 +02:00
-
aca45fb1b2
feat(api): company memberships (add/update/end/set-primary)
Matt Ciaccio
2026-04-24 12:49:10 +02:00
-
183ff1ff9e
feat(api): company list/create/detail/patch/archive/autocomplete
Matt Ciaccio
2026-04-24 12:45:10 +02:00
-
90463269ce
feat(api): yacht detail, patch, archive, transfer, history, autocomplete
Matt Ciaccio
2026-04-24 12:40:51 +02:00
-
a5036c6358
feat(api): GET/POST /api/v1/yachts
Matt Ciaccio
2026-04-24 12:35:25 +02:00
-
f743169354
feat(permissions): add yacht, company, membership, reservation keys
Matt Ciaccio
2026-04-24 12:30:06 +02:00
-
b053a6388e
feat(eoi): shared context builder + tests
Matt Ciaccio
2026-04-24 12:20:40 +02:00
-
b1133c4e87
feat(reservations): service + validators + exclusivity tests
Matt Ciaccio
2026-04-24 12:15:22 +02:00
-
15a79e7990
feat(company-memberships): service + validators + tests
Matt Ciaccio
2026-04-24 12:07:58 +02:00
-
037f2544e8
feat(companies): service + validators + unit tests
Matt Ciaccio
2026-04-24 12:02:08 +02:00
-
7c408cf975
feat(yachts): list + owner-scoped list + autocomplete
Matt Ciaccio
2026-04-24 00:03:36 +02:00
-
8a5cd1ef0e
feat(yachts): atomic transferOwnership with partial-unique guard
Matt Ciaccio
2026-04-23 23:58:20 +02:00
-
d0ab4b8102
feat(yachts): updateYacht + archiveYacht
Matt Ciaccio
2026-04-23 23:52:24 +02:00
-
aaf4847fc2
refactor(yachts): use withTransaction helper per project convention
Matt Ciaccio
2026-04-23 23:47:12 +02:00
-
feacb8c7ac
fix(yachts): run owner existence check inside transaction
Matt Ciaccio
2026-04-23 23:46:03 +02:00
-
2f2ad4452f
feat(yachts): createYacht + getYachtById services with tests
Matt Ciaccio
2026-04-23 23:40:56 +02:00
-
27d438929b
refactor(yachts): rename schema + consolidate tests per project conventions
Matt Ciaccio
2026-04-23 23:35:30 +02:00
-
899e588a0c
feat(yachts): add zod validators + tests
Matt Ciaccio
2026-04-23 23:31:29 +02:00
-
7a6e95c87a
test(schema): verify partial unique indexes and case-insensitive company uniqueness
Matt Ciaccio
2026-04-23 18:06:37 +02:00
-
077ba5bf6b
feat(schema): wire yacht, company, reservation relations in Drizzle
Matt Ciaccio
2026-04-23 18:02:22 +02:00
-
14dac2f3e1
feat(documents): add yachtId/companyId to files and documents
Matt Ciaccio
2026-04-23 18:00:12 +02:00
-
117cfae52e
feat(invoices): add billingEntityType/Id for polymorphic billing
Matt Ciaccio
2026-04-23 17:58:52 +02:00
-
d43298a74e
feat(schema): add yachtId to interests and berth_waiting_list
Matt Ciaccio
2026-04-23 17:57:29 +02:00
-
88a87afa77
feat(reservations): add berth_reservations schema with partial unique exclusivity
Matt Ciaccio
2026-04-23 17:55:53 +02:00
-
299e893e2b
feat(companies): add companies, memberships, addresses, notes, tags schema
Matt Ciaccio
2026-04-23 17:54:02 +02:00
-
51523e6768
feat(yachts): add yachts, ownership history, notes, tags schema
Matt Ciaccio
2026-04-23 17:51:19 +02:00
-
-
11969c0d8a
docs(plan): add data-model refactor implementation plan (Spec 1)
Matt Ciaccio
2026-04-23 17:17:02 +02:00
-
1c0a16fd59
docs(spec): add data-model refactor design (Spec 1 of 3)
Matt Ciaccio
2026-04-23 17:04:41 +02:00
-
b6996f9a31
test(e2e): repair 26 Playwright smoke-test failures
Matt Ciaccio
2026-04-22 17:24:52 +02:00
-
46bd8aaef1
fix: allow /portal and /api/portal paths without CRM session
Matt Ciaccio
2026-04-22 17:22:53 +02:00
-
b5d8e1ecb8
docs: update PROGRESS.md with 2026-03-26 → 2026-04-22 changelog
Matt Ciaccio
2026-04-22 02:37:43 +02:00
-
ed40662b99
chore: gitignore docker-compose.override.yml and .remember/
Matt Ciaccio
2026-04-22 02:36:11 +02:00
-
9d815c4dcc
fix: wrap useSearchParams pages in Suspense for prerender
Matt Ciaccio
2026-04-22 02:06:39 +02:00
-
b9b3f942a6
chore: add .gitattributes to normalize line endings to LF
Matt Ciaccio
2026-04-22 02:02:46 +02:00
-
-
4552187b9f
feat: add inquiry notification settings to admin settings UI
Matt
2026-04-14 13:16:20 -04:00
-
d0c12d74e4
feat: wire inquiry notifications into public interest endpoint
Matt
2026-04-14 13:04:26 -04:00
-
7313d8b3d0
feat: add email worker handlers for inquiry confirmation and sales notification
Matt
2026-04-14 13:00:14 -04:00
-
c5c45accfc
feat: add inquiry notification service for sales team targeting
Matt
2026-04-14 12:58:55 -04:00
-
9a0c28020d
feat: add inquiry email templates for client confirmation and sales notification
Matt
2026-04-14 12:56:30 -04:00
-
44982a2878
feat: add optional plain-text fallback to sendEmail
Matt
2026-04-14 12:54:25 -04:00
-
ae19170da8
feat: expand public interest schema with name split, address, berth
Matt
2026-04-14 12:53:13 -04:00
-
f90dba036f
feat: add partial unique index for single primary address per client
Matt
2026-04-14 12:51:45 -04:00
-
59dd418542
feat: add client_addresses table for multi-address storage
Matt
2026-04-14 12:44:11 -04:00
-
f659073b8f
Add inquiry notifications implementation plan
Matt
2026-04-14 12:38:25 -04:00
-
a8b93fd862
Add inquiry notifications system design spec
Matt
2026-04-14 12:21:45 -04:00
-
8df8ded46c
Add user settings, audit log, berth CRUD, and missing endpoints
Matt
2026-04-08 19:45:56 -04:00
-
4fdd9e3207
Implement reminders system with full CRUD and background processors
Matt
2026-04-08 16:27:34 -04:00
-
c8320023cc
Implement admin ports and system settings management
Matt
2026-04-08 15:53:33 -04:00
-
f60159e91a
Implement admin users and roles management
Matt
2026-04-08 15:47:11 -04:00
-
a13d7503cc
Fix Docker build and production server infrastructure
Matt
2026-04-08 15:31:33 -04:00
-
082d4f20e3
Fix all TypeScript errors: restore proper types and typed route casts
Matt
2026-03-26 12:29:55 +01:00
-
e847fd0261
Remove deploy job from CI - build and push only
Matt
2026-03-26 12:19:36 +01:00
-
4c20bcffcd
Fix all ESLint errors: remove unused imports, replace any types
Matt
2026-03-26 12:06:18 +01:00
-
b4221b918e
Fix: restore pre-commit hook filename
Matt
2026-03-26 11:53:36 +01:00
-
67d7e6e3d5
Initial commit: Port Nimara CRM (Layers 0-4)
Matt
2026-03-26 11:52:51 +01:00