feat: redesign shipment request cart as inventory-integrated flow
Some checks failed
Build and Deploy / build (push) Successful in 12m2s
Build and Deploy / deploy (push) Failing after 3s

Replace the wizard-style 4-step shipment cart with an inventory-page-
integrated flow matching the legacy portal UX. Users now add items
directly from inventory detail rows via "+" buttons, with a persistent
cart bar showing status. The "Complete Release" page is a flat form
instead of a multi-step wizard.

Key changes:
- Add ShipmentCartProvider context for cross-page cart state
- Add CartBar component (start/cancel release, view status)
- Integrate cart column into inventory detail table with per-row
  add buttons, plant mismatch indicators, and "Add All" support
- Rewrite /shipment-requests/new as flat Complete Release page
- Add check_only param to cart API (avoid auto-creating on mount)
- Add server-side plant constraint validation on cart items
- Add batch add API endpoint for "Add All" functionality
- Delete deprecated wizard cart and inventory browser dialog

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Lorentz Hinrichsen 2026-02-17 17:01:53 -05:00
parent e60e07c9a5
commit 500811f3e3
16 changed files with 1423 additions and 537 deletions

2
package-lock.json generated
View file

@ -12,7 +12,7 @@
"@hookform/resolvers": "^3.9.1",
"@prisma/client": "^6.1.0",
"@radix-ui/react-accordion": "^1.2.2",
"@radix-ui/react-alert-dialog": "^1.1.4",
"@radix-ui/react-alert-dialog": "^1.1.15",
"@radix-ui/react-avatar": "^1.1.2",
"@radix-ui/react-checkbox": "^1.1.3",
"@radix-ui/react-dialog": "^1.1.15",