From 75a111a3342be413783c240da0fca0405f0014a1 Mon Sep 17 00:00:00 2001 From: SJCoetz Date: Sat, 11 Jul 2026 00:01:25 +0200 Subject: [PATCH] feat(collection-pool): wire bulk-assign dialog mount --- src/app/(app)/collection-pool/page.tsx | 28 ++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/app/(app)/collection-pool/page.tsx b/src/app/(app)/collection-pool/page.tsx index 2e68089..5561469 100644 --- a/src/app/(app)/collection-pool/page.tsx +++ b/src/app/(app)/collection-pool/page.tsx @@ -352,6 +352,15 @@ export default function CollectionPoolPage() { [assignDialog, closeAssignDialog, updateItemStatus], ); + const [bulkBusy, setBulkBusy] = useState(false); + + const handleBulkAssignSubmit = useCallback( + async (_payload: AssignDriverSubmitPayload) => { + // Full implementation in Task 9. + }, + [], + ); + const handleToggleReady = useCallback( async (row: CollectionPoolVisibleRow, ready: boolean) => { // Unmarking is a single PATCH with no note. The modal only opens @@ -589,6 +598,25 @@ export default function CollectionPoolPage() { ) : undefined } /> + { + if (!open) closeBulkAssign(); + }} + onSubmit={handleBulkAssignSubmit} + bulkCount={bulkAssignDialog?.rowIds.length ?? 1} + eyebrow={ + bulkAssignDialog ? ( + + + {bulkAssignDialog.supplierName || "Unknown supplier"} + ยท + {bulkAssignDialog.rowIds.length} stops + + ) : undefined + } + busy={bulkBusy} + /> {readyDialogRow && (