@burdenoff/microfe-movethewheels 2026.1014.1 → 2026.1016.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/README.md +7 -0
  2. package/dist/components/EntityCombobox.js +80 -74
  3. package/dist/components/pending-pick/PendingPickHistory.js +47 -38
  4. package/dist/components/pending-pick/PickReviewPanel.js +317 -0
  5. package/dist/dev/main.d.ts +0 -1
  6. package/dist/generated/pending-pick-operations.d.ts +356 -0
  7. package/dist/index.d.ts +2 -4
  8. package/dist/movethewheels/MoveTheWheelsRoot.d.ts +0 -1
  9. package/dist/movethewheels/MoveTheWheelsRoutes.d.ts +1 -1
  10. package/dist/movethewheels/components/AssignmentSuggestions.d.ts +1 -2
  11. package/dist/movethewheels/components/CarbonFootprintPanel.d.ts +1 -1
  12. package/dist/movethewheels/components/ContainerEvidencePicker.d.ts +1 -2
  13. package/dist/movethewheels/components/CustomerPicker.d.ts +1 -2
  14. package/dist/movethewheels/components/DataTable.d.ts +1 -2
  15. package/dist/movethewheels/components/DocumentsCard.d.ts +1 -2
  16. package/dist/movethewheels/components/EntityCombobox.d.ts +1 -1
  17. package/dist/movethewheels/components/FleetAlertsPanel.d.ts +1 -2
  18. package/dist/movethewheels/components/FormError.d.ts +1 -1
  19. package/dist/movethewheels/components/FreeTimeAgreementForm.d.ts +1 -2
  20. package/dist/movethewheels/components/GlassPanel.d.ts +1 -2
  21. package/dist/movethewheels/components/MetricCard.d.ts +3 -4
  22. package/dist/movethewheels/components/Notice.d.ts +1 -1
  23. package/dist/movethewheels/components/OrderItemRow.d.ts +1 -2
  24. package/dist/movethewheels/components/PageLayout.d.ts +5 -6
  25. package/dist/movethewheels/components/ProofOfDeliveryCard.d.ts +1 -1
  26. package/dist/movethewheels/components/ReturnInstructionForm.d.ts +1 -2
  27. package/dist/movethewheels/components/ReuseControls.d.ts +4 -5
  28. package/dist/movethewheels/components/ReusePermissionForm.d.ts +1 -2
  29. package/dist/movethewheels/components/ReuseProposalForm.d.ts +1 -2
  30. package/dist/movethewheels/components/ReuseSourceFields.d.ts +1 -2
  31. package/dist/movethewheels/components/ShippingQuoteResults.d.ts +1 -2
  32. package/dist/movethewheels/components/StatusBadge.d.ts +5 -6
  33. package/dist/movethewheels/components/StockActionDialogs.d.ts +3 -3
  34. package/dist/movethewheels/components/UpcomingDemandPanel.d.ts +1 -2
  35. package/dist/movethewheels/components/VehicleServiceCard.d.ts +1 -2
  36. package/dist/movethewheels/components/charts/ChartShell.d.ts +2 -3
  37. package/dist/movethewheels/components/charts/Sparkline.d.ts +1 -1
  38. package/dist/movethewheels/components/charts/StatusDonut.d.ts +1 -1
  39. package/dist/movethewheels/components/charts/TrendChart.d.ts +1 -1
  40. package/dist/movethewheels/components/charts/VolumeBar.d.ts +1 -1
  41. package/dist/movethewheels/components/consolidation/ConsolidationHistory.d.ts +3 -4
  42. package/dist/movethewheels/components/consolidation/ConsolidationLotEditor.d.ts +1 -2
  43. package/dist/movethewheels/components/consolidation/ConsolidationManifestWorkbench.d.ts +1 -2
  44. package/dist/movethewheels/components/consolidation/ConsolidationPlanForm.d.ts +1 -2
  45. package/dist/movethewheels/components/consolidation/ConsolidationPlanWorkbench.d.ts +1 -2
  46. package/dist/movethewheels/components/consolidation/ConsolidationReportForm.d.ts +1 -2
  47. package/dist/movethewheels/components/consolidation/ConsolidationReportsWorkbench.d.ts +1 -2
  48. package/dist/movethewheels/components/consolidation/ConsolidationSummary.d.ts +1 -2
  49. package/dist/movethewheels/components/consolidation/OriginalConsolidationHistory.d.ts +1 -2
  50. package/dist/movethewheels/components/freight-cost/FreightDraftForm.d.ts +1 -2
  51. package/dist/movethewheels/components/freight-cost/FreightFields.d.ts +3 -4
  52. package/dist/movethewheels/components/freight-cost/FreightFxEditor.d.ts +1 -2
  53. package/dist/movethewheels/components/freight-cost/FreightHistory.d.ts +1 -2
  54. package/dist/movethewheels/components/freight-cost/FreightLineEditor.d.ts +1 -2
  55. package/dist/movethewheels/components/freight-cost/FreightScopeEditor.d.ts +1 -2
  56. package/dist/movethewheels/components/freight-cost/FreightTotals.d.ts +1 -2
  57. package/dist/movethewheels/components/logistics-procedure/ProcedureDecisionForm.d.ts +2 -3
  58. package/dist/movethewheels/components/logistics-procedure/ProcedureFields.d.ts +3 -4
  59. package/dist/movethewheels/components/logistics-procedure/ProcedureHistory.d.ts +1 -2
  60. package/dist/movethewheels/components/logistics-procedure/ProcedurePolicyForm.d.ts +1 -2
  61. package/dist/movethewheels/components/logistics-procedure/ProcedurePolicyWorkbench.d.ts +1 -2
  62. package/dist/movethewheels/components/logistics-procedure/ProcedureReviewWorkbench.d.ts +1 -2
  63. package/dist/movethewheels/components/logistics-procedure/ProcedureRunWorkbench.d.ts +1 -2
  64. package/dist/movethewheels/components/logistics-procedure/ProcedureSubjectPicker.d.ts +1 -2
  65. package/dist/movethewheels/components/maps/LogisticsMap.d.ts +1 -2
  66. package/dist/movethewheels/components/maps/MapCanvas.d.ts +1 -2
  67. package/dist/movethewheels/components/maps/RouteMap.d.ts +1 -1
  68. package/dist/movethewheels/components/maps/TrackingMap.d.ts +1 -1
  69. package/dist/movethewheels/components/maps/leaflet-setup.d.ts +0 -1
  70. package/dist/movethewheels/components/pending-pick/PendingPickDraft.d.ts +1 -2
  71. package/dist/movethewheels/components/pending-pick/PendingPickHistory.d.ts +1 -1
  72. package/dist/movethewheels/components/pending-pick/PickCapture.d.ts +1 -2
  73. package/dist/movethewheels/components/pending-pick/PickLineSelection.d.ts +1 -2
  74. package/dist/movethewheels/components/pending-pick/PickReviewPanel.d.ts +4 -0
  75. package/dist/movethewheels/components/stock-binding/StockAssessmentDraft.d.ts +1 -2
  76. package/dist/movethewheels/components/stock-binding/StockAssessmentHistory.d.ts +1 -2
  77. package/dist/movethewheels/components/stock-binding/StockAssessmentSummary.d.ts +1 -2
  78. package/dist/movethewheels/components/stock-binding/StockFactForm.d.ts +1 -2
  79. package/dist/movethewheels/components/stock-observation/StockIssueForm.d.ts +1 -2
  80. package/dist/movethewheels/components/stock-observation/StockIssueHistory.d.ts +1 -2
  81. package/dist/movethewheels/components/stock-observation/StockIssueReadPanel.d.ts +1 -1
  82. package/dist/movethewheels/components/trip-utilization/TripReportForm.d.ts +1 -2
  83. package/dist/movethewheels/components/trip-utilization/TripReportHistory.d.ts +1 -2
  84. package/dist/movethewheels/components/trip-utilization/TripReportSummary.d.ts +1 -2
  85. package/dist/movethewheels/components/trip-utilization/TripSegmentFields.d.ts +1 -2
  86. package/dist/movethewheels/hooks/useAnalytics.d.ts +0 -1
  87. package/dist/movethewheels/hooks/useConsolidationAction.d.ts +0 -1
  88. package/dist/movethewheels/hooks/useContainerCondition.d.ts +0 -1
  89. package/dist/movethewheels/hooks/useContainerLifecycle.d.ts +0 -1
  90. package/dist/movethewheels/hooks/useCustomers.d.ts +0 -1
  91. package/dist/movethewheels/hooks/useEmptyReuseAction.d.ts +0 -1
  92. package/dist/movethewheels/hooks/useEpod.d.ts +0 -1
  93. package/dist/movethewheels/hooks/useFleet.d.ts +0 -1
  94. package/dist/movethewheels/hooks/useFreightRecoveryAction.d.ts +0 -1
  95. package/dist/movethewheels/hooks/useInventory.d.ts +0 -1
  96. package/dist/movethewheels/hooks/useOrders.d.ts +0 -1
  97. package/dist/movethewheels/hooks/useProcedureAction.d.ts +0 -1
  98. package/dist/movethewheels/hooks/useProcedureSelection.d.ts +0 -1
  99. package/dist/movethewheels/hooks/useReuseRecoveryAction.d.ts +0 -1
  100. package/dist/movethewheels/hooks/useRoutes.d.ts +0 -1
  101. package/dist/movethewheels/hooks/useShipmentStatusAuthority.d.ts +0 -1
  102. package/dist/movethewheels/hooks/useTracking.d.ts +0 -1
  103. package/dist/movethewheels/hooks/useTrackingEventQuality.d.ts +0 -1
  104. package/dist/movethewheels/pages/AIAssistantPage.d.ts +1 -1
  105. package/dist/movethewheels/pages/AnalyticsPage.d.ts +1 -1
  106. package/dist/movethewheels/pages/ConsolidationPage.d.ts +1 -1
  107. package/dist/movethewheels/pages/ContainerConditionPage.d.ts +1 -1
  108. package/dist/movethewheels/pages/ContainersPage.d.ts +1 -1
  109. package/dist/movethewheels/pages/CreateOrderPage.d.ts +1 -1
  110. package/dist/movethewheels/pages/CustomerDetailsPage.d.ts +1 -1
  111. package/dist/movethewheels/pages/CustomersPage.d.ts +1 -1
  112. package/dist/movethewheels/pages/DashboardPage.d.ts +1 -1
  113. package/dist/movethewheels/pages/DeliveryCapturePage.d.ts +1 -1
  114. package/dist/movethewheels/pages/DriverDetailsPage.d.ts +1 -1
  115. package/dist/movethewheels/pages/DriversPage.d.ts +1 -1
  116. package/dist/movethewheels/pages/EmptyReusePage.d.ts +1 -1
  117. package/dist/movethewheels/pages/FinancePage.d.ts +1 -1
  118. package/dist/movethewheels/pages/FleetPage.d.ts +1 -1
  119. package/dist/movethewheels/pages/FreeTimePage.d.ts +1 -1
  120. package/dist/movethewheels/pages/FreightEstimatePage.d.ts +1 -1
  121. package/dist/movethewheels/pages/ImportExportPage.d.ts +1 -1
  122. package/dist/movethewheels/pages/InventoryPage.d.ts +1 -1
  123. package/dist/movethewheels/pages/LiveTrackingPage.d.ts +1 -1
  124. package/dist/movethewheels/pages/LogisticsProceduresPage.d.ts +1 -1
  125. package/dist/movethewheels/pages/MarketplacePage.d.ts +1 -1
  126. package/dist/movethewheels/pages/MultiModalShipmentPage.d.ts +1 -1
  127. package/dist/movethewheels/pages/OrderDetailsPage.d.ts +1 -1
  128. package/dist/movethewheels/pages/OrdersListPage.d.ts +1 -1
  129. package/dist/movethewheels/pages/PendingPickPage.d.ts +1 -1
  130. package/dist/movethewheels/pages/ProductDetailsPage.d.ts +1 -1
  131. package/dist/movethewheels/pages/ProductsPage.d.ts +1 -1
  132. package/dist/movethewheels/pages/ReportsPage.d.ts +1 -1
  133. package/dist/movethewheels/pages/RouteDetailsPage.d.ts +1 -1
  134. package/dist/movethewheels/pages/RoutesPage.d.ts +1 -1
  135. package/dist/movethewheels/pages/SettingsPage.d.ts +1 -1
  136. package/dist/movethewheels/pages/ShipmentStatusAuthorityPage.d.ts +1 -1
  137. package/dist/movethewheels/pages/ShippingRatesPage.d.ts +1 -1
  138. package/dist/movethewheels/pages/StockBindingPage.d.ts +1 -1
  139. package/dist/movethewheels/pages/StockObservationsPage.d.ts +1 -1
  140. package/dist/movethewheels/pages/TrackingEventQualityPage.d.ts +1 -1
  141. package/dist/movethewheels/pages/TrackingPage.d.ts +1 -1
  142. package/dist/movethewheels/pages/TripUtilizationPage.d.ts +1 -1
  143. package/dist/movethewheels/pages/VehicleDetailsPage.d.ts +1 -1
  144. package/dist/movethewheels/pages/VehiclesPage.d.ts +1 -1
  145. package/dist/movethewheels/pages/WarehouseDetailsPage.d.ts +1 -1
  146. package/dist/movethewheels/pages/WarehousesPage.d.ts +1 -1
  147. package/dist/movethewheels/providers/MoveTheWheelsProvider.d.ts +0 -1
  148. package/dist/movethewheels/store/movethewheelsStore.d.ts +0 -1
  149. package/dist/movethewheels/types/index.d.ts +0 -1
  150. package/dist/movethewheels/utils/cn.d.ts +0 -1
  151. package/dist/movethewheels/utils/consolidationHistoryTarget.d.ts +0 -1
  152. package/dist/movethewheels/utils/consolidationInput.d.ts +0 -1
  153. package/dist/movethewheels/utils/consolidationLot.d.ts +0 -1
  154. package/dist/movethewheels/utils/consolidationPins.d.ts +0 -1
  155. package/dist/movethewheels/utils/consolidationRecovery.d.ts +0 -1
  156. package/dist/movethewheels/utils/consolidationReportHead.d.ts +0 -1
  157. package/dist/movethewheels/utils/formatters.d.ts +0 -1
  158. package/dist/movethewheels/utils/freightDraft.d.ts +0 -1
  159. package/dist/movethewheels/utils/freightRecovery.d.ts +0 -1
  160. package/dist/movethewheels/utils/mapMarkers.d.ts +0 -1
  161. package/dist/movethewheels/utils/orderValidation.d.ts +0 -1
  162. package/dist/movethewheels/utils/pendingPickDraft.d.ts +0 -1
  163. package/dist/movethewheels/utils/pickReviewAcknowledgement.d.ts +3 -0
  164. package/dist/movethewheels/utils/procedureInput.d.ts +0 -1
  165. package/dist/movethewheels/utils/procedureRecovery.d.ts +0 -1
  166. package/dist/movethewheels/utils/reuseForm.d.ts +0 -1
  167. package/dist/movethewheels/utils/reuseRecovery.d.ts +0 -1
  168. package/dist/movethewheels/utils/stockBindingForm.d.ts +0 -1
  169. package/dist/movethewheels/utils/stockObservationForm.d.ts +0 -1
  170. package/dist/movethewheels/utils/tripDraftContext.d.ts +0 -1
  171. package/dist/movethewheels/utils/tripUtilizationForm.d.ts +0 -1
  172. package/dist/services/createSandboxAssistantTransport.d.ts +2 -1
  173. package/dist/src/generated/pending-pick-operations.js +75 -6
  174. package/dist/stories/EntityCombobox.stories.d.ts +6 -0
  175. package/dist/stories/MetricCard.stories.d.ts +0 -1
  176. package/dist/stories/Notice.stories.d.ts +0 -1
  177. package/dist/stories/StatusBadge.stories.d.ts +0 -1
  178. package/dist/utils/pickReviewAcknowledgement.js +10 -0
  179. package/package.json +7 -5
  180. package/src/generated/pending-pick-operations.ts +239 -1
  181. package/src/movethewheels/components/EntityCombobox.tsx +8 -2
  182. package/src/movethewheels/components/pending-pick/PendingPickHistory.tsx +6 -0
  183. package/src/movethewheels/components/pending-pick/PickReviewPanel.tsx +326 -0
  184. package/src/movethewheels/utils/pickReviewAcknowledgement.ts +51 -0
  185. package/src/operations/pending-pick/pick-review.graphql +14 -0
  186. package/src/stories/EntityCombobox.stories.tsx +58 -0
@@ -1,5 +1,4 @@
1
1
  import { OrderFilter, FleetFilter, InventoryFilter, CustomerFilter } from '../types';
2
-
3
2
  interface MoveTheWheelsState {
4
3
  viewMode: 'grid' | 'list' | 'table';
5
4
  sidebarCollapsed: boolean;
@@ -1,5 +1,4 @@
1
1
  import { ReactNode } from 'react';
2
-
3
2
  export interface NavItem {
4
3
  id: string;
5
4
  label: string;
@@ -1,5 +1,4 @@
1
1
  import { ClassValue } from 'clsx';
2
-
3
2
  /**
4
3
  * Utility for merging Tailwind CSS classes with proper conflict resolution.
5
4
  */
@@ -1,5 +1,4 @@
1
1
  import { ReuseRecovery, ReuseRecoveryScope } from './reuseRecovery';
2
-
3
2
  export type OriginalConsolidationHistoryTarget = {
4
3
  kind: 'plan';
5
4
  shipmentId: string;
@@ -1,5 +1,4 @@
1
1
  import { localProcedureInstant } from './procedureInput';
2
-
3
2
  export declare const consolidationInstant: typeof localProcedureInstant;
4
3
  export declare function nullableText(value: string): string | null;
5
4
  /** Keep decimal source text exact. Blank facts are unknown, and explicit zero remains zero. */
@@ -1,3 +1,2 @@
1
1
  import { MtwConsolidationLotInput } from '../../generated/consolidation-operations';
2
-
3
2
  export declare function emptyConsolidationLot(): MtwConsolidationLotInput;
@@ -1,5 +1,4 @@
1
1
  import { ConsolidationContainersQuery, ConsolidationCyclesQuery, ConsolidationShipmentQuery } from '../../generated/consolidation-operations';
2
-
3
2
  export type ConsolidationContextPin = {
4
3
  shipmentId: string;
5
4
  shipmentUpdatedAt: string;
@@ -1,5 +1,4 @@
1
1
  import { ReuseRecovery } from './reuseRecovery';
2
-
3
2
  export declare const CONSOLIDATION_RECOVERY_STORAGE = "movethewheels.consolidation.unresolved.v1";
4
3
  export declare function decodeConsolidationRecovery(raw: string | null): ReuseRecovery | null;
5
4
  export declare function encodeConsolidationRecovery(attempt: ReuseRecovery): string;
@@ -1,5 +1,4 @@
1
1
  import { ConsolidationObservationsDocument, ConsolidationObservationsQuery, MtwConsolidationReportKind } from '../../generated/consolidation-operations';
2
-
3
2
  type Report = ConsolidationObservationsQuery['mtwConsolidationObservationPage']['items'][number];
4
3
  export declare function findConsolidationReportHead(request: <T>(document: typeof ConsolidationObservationsDocument, variables: Record<string, unknown>) => Promise<T>, planId: string, lotId: string, kind: MtwConsolidationReportKind): Promise<Report | null>;
5
4
  export {};
@@ -1,5 +1,4 @@
1
1
  import { Address } from '../types';
2
-
3
2
  /**
4
3
  * Format an address object into a readable string.
5
4
  */
@@ -1,5 +1,4 @@
1
1
  import { MtwFreightFactsInput, MtwFreightLineInput, MtwFreightFxInput, SaveMtwFreightEstimateInput } from '../../generated/freight-cost-operations';
2
-
3
2
  export declare const freightCategories: readonly ["BASE_FREIGHT", "FUEL", "PRE_CARRIAGE", "ON_CARRIAGE", "ORIGIN_HANDLING", "DESTINATION_HANDLING", "INSURANCE", "ACCESSORIAL", "TAX_ESTIMATE", "DUTY_ESTIMATE", "BROKER", "FREE_TIME_EXPOSURE", "OTHER"];
4
3
  export declare const freightLabel: (value: string) => string;
5
4
  export declare const freightNullable: (value: string) => string | null;
@@ -1,5 +1,4 @@
1
1
  import { ReuseRecovery } from './reuseRecovery';
2
-
3
2
  export declare const FREIGHT_RECOVERY_STORAGE = "movethewheels.freight.unresolved.v1";
4
3
  export declare function decodeFreightRecovery(raw: string | null): ReuseRecovery | null;
5
4
  export declare function encodeFreightRecovery(attempt: ReuseRecovery): string;
@@ -1,6 +1,5 @@
1
1
  import { MapMarkerStatus } from '../components/maps';
2
2
  import { Address, Location } from '../types';
3
-
4
3
  /**
5
4
  * Map an order/shipment status onto the marker's visual status (drives pin color
6
5
  * and glyph). Anything unrecognised falls back to a neutral pin.
@@ -1,5 +1,4 @@
1
1
  import { OrderItem } from '../types';
2
-
3
2
  export type OrderItemField = 'name' | 'sku' | 'quantity' | 'weight' | 'value' | 'length' | 'width' | 'height';
4
3
  export type OrderItemFieldErrors = Partial<Record<OrderItemField, string>>;
5
4
  /**
@@ -1,5 +1,4 @@
1
1
  import { CreateMtwPickTaskIntentInput, PickPreparationQuery } from '../../generated/pending-pick-operations';
2
-
3
2
  type Context = PickPreparationQuery['mtwPickPreparation'];
4
3
  export type PendingPickInput = Omit<CreateMtwPickTaskIntentInput, 'idempotencyKey'>;
5
4
  export declare function pendingContextSignature(context: Context): string;
@@ -0,0 +1,3 @@
1
+ import { PickReviewReceiptFragment, RecordMtwPickReviewInput } from '../../generated/pending-pick-operations';
2
+ /** A truthy GraphQL data object is not an acknowledgment of the intended write. */
3
+ export declare function confirmPickReviewAcknowledgement(result: unknown, input: RecordMtwPickReviewInput, kind: PickReviewReceiptFragment['kind'], reviewerActorId: string): void;
@@ -1,5 +1,4 @@
1
1
  import { MtwProcedureScopeInput, MtwProcedureStep } from '../../generated/logistics-procedure-operations';
2
-
3
2
  export declare const procedureSteps: readonly MtwProcedureStep[];
4
3
  export declare const stepLabel: Record<MtwProcedureStep, string>;
5
4
  export declare function object(value: unknown): value is Record<string, unknown>;
@@ -1,5 +1,4 @@
1
1
  import { ReuseRecovery } from './reuseRecovery';
2
-
3
2
  export declare const PROCEDURE_RECOVERY_STORAGE = "movethewheels.procedure.unresolved.v1";
4
3
  export declare function decodeProcedureRecovery(raw: string | null): ReuseRecovery | null;
5
4
  export declare function encodeProcedureRecovery(attempt: ReuseRecovery): string;
@@ -1,6 +1,5 @@
1
1
  import { MtwReuseSourceAttestationInput } from '../../generated/empty-reuse-operations';
2
2
  import { SelectedEvidence } from '../components/ContainerEvidencePicker';
3
-
4
3
  export declare function reuseText(values: FormData, name: string): string;
5
4
  export declare function reuseInteger(values: FormData, name: string): number;
6
5
  export declare function readReuseSource(values: FormData, name: string, evidence: SelectedEvidence[]): MtwReuseSourceAttestationInput | undefined;
@@ -1,5 +1,4 @@
1
1
  import { DocumentNode } from 'graphql';
2
-
3
2
  export declare const REUSE_RECOVERY_STORAGE = "movethewheels.empty-reuse.unresolved.v1";
4
3
  export interface ReuseRecoveryScope {
5
4
  actorId: string;
@@ -1,6 +1,5 @@
1
1
  import { RecordMtwStockBindingAssessmentInput, StockSourceContextFragment, StockAssessmentFragment } from '../../generated/stock-binding-operations';
2
2
  import { SelectedEvidence } from '../components/ContainerEvidencePicker';
3
-
4
3
  export interface StockDraftPin {
5
4
  inventoryItemId: string;
6
5
  expectedCargoItemId: string;
@@ -1,5 +1,4 @@
1
1
  import { RecordMtwStockObservationInput } from '../../generated/stock-observation-operations';
2
-
3
2
  /** Blank remains unknown, explicit zero remains zero; no inferred stock adjustment. */
4
3
  export declare function reportedCount(value: string): number | null;
5
4
  export declare function stockObservationInput(inventoryItemId: string, form: FormData): Omit<RecordMtwStockObservationInput, 'idempotencyKey'>;
@@ -1,6 +1,5 @@
1
1
  import { RecordMtwTripUtilizationReportInput } from '../../generated/trip-utilization-operations';
2
2
  import { TripReportDraft } from './tripUtilizationForm';
3
-
4
3
  export interface TripDraftContext {
5
4
  routeId: string;
6
5
  routeUpdatedAt: string;
@@ -1,6 +1,5 @@
1
1
  import { RecordMtwTripUtilizationReportInput, MtwTripUtilizationBasis, MtwTripUtilizationCoverage } from '../../generated/trip-utilization-operations';
2
2
  import { SelectedEvidence } from '../components/ContainerEvidencePicker';
3
-
4
3
  export type TripReportDraft = Omit<RecordMtwTripUtilizationReportInput, 'routeId' | 'vehicleId' | 'expectedRouteUpdatedAt' | 'expectedVehicleUpdatedAt' | 'idempotencyKey'>;
5
4
  export declare function tripQuantity(text: string, maximum: number, positive?: boolean): number | null;
6
5
  export declare function readTripDraft(values: FormData, ids: string[], basis: MtwTripUtilizationBasis, coverage: MtwTripUtilizationCoverage, evidence: SelectedEvidence[]): TripReportDraft;
@@ -1 +1,2 @@
1
- export * from '../movethewheels/services/createSandboxAssistantTransport'
1
+ export * from '../movethewheels/services/createSandboxAssistantTransport.js'
2
+ export {}
@@ -101,6 +101,39 @@ e`
101
101
  }
102
102
  `}`}`;
103
103
  var t = e`
104
+ fragment PickReviewReceipt on MtwPickReview {
105
+ id
106
+ taskId
107
+ version
108
+ previousDecisionId
109
+ intentHash
110
+ subjectActorId
111
+ kind
112
+ actions
113
+ quantityCeiling
114
+ validFrom
115
+ validUntil
116
+ handlingPolicy {
117
+ reference
118
+ revision
119
+ }
120
+ sop {
121
+ reference
122
+ revision
123
+ }
124
+ evidence {
125
+ fileId
126
+ versionId
127
+ sha256Hash
128
+ checkedAt
129
+ }
130
+ note
131
+ idempotencyKey
132
+ reviewerActorId
133
+ recordedAt
134
+ classification
135
+ }
136
+ `, n = e`
104
137
  query PickInventory($pagination: PaginationInput) {
105
138
  inventoryItems(pagination: $pagination) {
106
139
  id
@@ -121,7 +154,7 @@ var t = e`
121
154
  }
122
155
  inventoryItemsCount
123
156
  }
124
- `, n = e`
157
+ `, r = e`
125
158
  query PickPreparation($sourceInventoryItemId: ID!, $destinationInventoryItemId: ID!) {
126
159
  mtwPickPreparation(
127
160
  sourceInventoryItemId: $sourceInventoryItemId
@@ -362,7 +395,7 @@ var t = e`
362
395
  }
363
396
  }
364
397
  }
365
- `, r = e`
398
+ `, i = e`
366
399
  query PendingPickHistory($pagination: MtwContainerPagination, $sourceInventoryItemId: ID, $destinationInventoryItemId: ID) {
367
400
  mtwPickTaskPage(
368
401
  pagination: $pagination
@@ -623,7 +656,7 @@ var t = e`
623
656
  nextOffset
624
657
  }
625
658
  }
626
- `, i = e`
659
+ `, a = e`
627
660
  query ExactPendingPick($id: ID!) {
628
661
  mtwPickTask(id: $id) {
629
662
  id
@@ -873,7 +906,7 @@ var t = e`
873
906
  recordedAt
874
907
  }
875
908
  }
876
- `, a = e`
909
+ `, o = e`
877
910
  mutation RecordPendingPick($input: CreateMtwPickTaskIntentInput!) {
878
911
  createMtwPickTaskIntent(input: $input) {
879
912
  id
@@ -1123,6 +1156,42 @@ var t = e`
1123
1156
  recordedAt
1124
1157
  }
1125
1158
  }
1126
- `;
1159
+ `, s = e`
1160
+ query PickReviewHistory($taskId: ID!, $limit: Int!, $offset: Int!) {
1161
+ mtwPickReviewPage(taskId: $taskId, limit: $limit, offset: $offset) {
1162
+ items {
1163
+ ...PickReviewReceipt
1164
+ }
1165
+ total
1166
+ limit
1167
+ offset
1168
+ hasMore
1169
+ nextOffset
1170
+ latestDecision {
1171
+ ...PickReviewReceipt
1172
+ }
1173
+ reviewState
1174
+ evaluatedAt
1175
+ }
1176
+ }
1177
+ ${t}`, c = e`
1178
+ mutation ApprovePickReview($input: RecordMtwPickReviewInput!) {
1179
+ approveMtwPickTask(input: $input) {
1180
+ ...PickReviewReceipt
1181
+ }
1182
+ }
1183
+ ${t}`, l = e`
1184
+ mutation RejectPickReview($input: RecordMtwPickReviewInput!) {
1185
+ rejectMtwPickTask(input: $input) {
1186
+ ...PickReviewReceipt
1187
+ }
1188
+ }
1189
+ ${t}`, u = e`
1190
+ mutation RevokePickReview($input: RecordMtwPickReviewInput!) {
1191
+ revokeMtwPickTaskReview(input: $input) {
1192
+ ...PickReviewReceipt
1193
+ }
1194
+ }
1195
+ ${t}`;
1127
1196
  //#endregion
1128
- export { i as ExactPendingPickDocument, r as PendingPickHistoryDocument, t as PickInventoryDocument, n as PickPreparationDocument, a as RecordPendingPickDocument };
1197
+ export { c as ApprovePickReviewDocument, a as ExactPendingPickDocument, i as PendingPickHistoryDocument, n as PickInventoryDocument, r as PickPreparationDocument, s as PickReviewHistoryDocument, o as RecordPendingPickDocument, l as RejectPickReviewDocument, u as RevokePickReviewDocument };
@@ -0,0 +1,6 @@
1
+ import { Meta, StoryObj } from '@storybook/react';
2
+ declare function PairedPickers(): import('react').JSX.Element;
3
+ declare const meta: Meta<typeof PairedPickers>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const TwoInstances: Story;
@@ -1,6 +1,5 @@
1
1
  import { Meta, StoryObj } from '@storybook/react';
2
2
  import { MetricCard } from '../movethewheels/components/MetricCard';
3
-
4
3
  declare const meta: Meta<typeof MetricCard>;
5
4
  export default meta;
6
5
  type Story = StoryObj<typeof meta>;
@@ -1,6 +1,5 @@
1
1
  import { Meta, StoryObj } from '@storybook/react';
2
2
  import { Notice } from '../movethewheels/components/Notice';
3
-
4
3
  declare const meta: Meta<typeof Notice>;
5
4
  export default meta;
6
5
  type Story = StoryObj<typeof meta>;
@@ -1,6 +1,5 @@
1
1
  import { Meta, StoryObj } from '@storybook/react';
2
2
  import { StatusBadge } from '../movethewheels/components/StatusBadge';
3
-
4
3
  declare const meta: Meta<typeof StatusBadge>;
5
4
  export default meta;
6
5
  type Story = StoryObj<typeof meta>;
@@ -0,0 +1,10 @@
1
+ //#region src/movethewheels/utils/pickReviewAcknowledgement.ts
2
+ function e(e) {
3
+ return typeof e == "object" && !!e && !Array.isArray(e);
4
+ }
5
+ function t(t, n, r, i) {
6
+ let a = r === "APPROVE" ? "approveMtwPickTask" : r === "REJECT" ? "rejectMtwPickTask" : "revokeMtwPickTaskReview", o = e(t) ? t[a] : null;
7
+ if (!e(o) || typeof o.id != "string" || !/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/.test(o.id) || o.kind !== r || o.taskId !== n.taskId || o.intentHash !== n.intentHash || o.subjectActorId !== n.subjectActorId || o.idempotencyKey !== n.idempotencyKey || !i || o.reviewerActorId !== i || o.version !== n.expectedVersion + 1 || o.previousDecisionId !== (n.expectedPreviousDecisionId ?? null) || o.classification !== "REVIEW_ONLY_NO_STOCK_EFFECT" || o.note !== n.note || o.quantityCeiling !== (n.quantityCeiling ?? null) || o.validFrom !== (n.validFrom ?? null) || o.validUntil !== (n.validUntil ?? null) || !Array.isArray(o.actions) || o.actions.length !== n.actions.length || new Set(o.actions).size !== o.actions.length || !o.actions.every((e) => typeof e == "string" && n.actions.some((t) => t === e))) throw Error("The intended move-review receipt is not confirmed.");
8
+ }
9
+ //#endregion
10
+ export { t as confirmPickReviewAcknowledgement };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@burdenoff/microfe-movethewheels",
3
- "version": "2026.1014.1",
3
+ "version": "2026.1016.2",
4
4
  "description": "Burdenoff MoveTheWheels Microfrontend - Logistics & Supply Chain Management Platform",
5
5
  "type": "module",
6
6
  "files": [
@@ -36,7 +36,7 @@
36
36
  "format": "prettier --write \"src/**/*.{ts,tsx}\"",
37
37
  "type:check": "bash scripts/build-limits.sh tsc --noEmit",
38
38
  "validate:schema-drift": "graphql-schema-drift",
39
- "sanity": "bash scripts/build-limits.sh --gate bash -c 'bun run codegen && bun run validate:schema-drift && bun run lint:sanity && bun run format && bun run type:check && bun run verify:live-logistics-contract && bun run verify:empty-reuse-retry && bun run verify:empty-reuse-recovery && bun run verify:trip-utilization-input && bun run verify:trip-draft-context && bun run verify:stock-binding-input && bun run verify:stock-observation-input && bun run verify:pending-pick-input && bun run verify:freight-input && bun run verify:freight-recovery && bun run verify:procedure-input && bun run verify:consolidation && bun run verify:multimodal-single-attempt && bun run verify:workspace-predispatch && bun run verify:tracking-quality-outcomes && bun run verify:shipment-status-authority && bun run verify:free-time-permissions && bun run verify:braces-depth && bun run build && bun run build-storybook'",
39
+ "sanity": "bash scripts/build-limits.sh --gate bash -c 'bun run codegen && bun run validate:schema-drift && bun run lint:sanity && bun run format && bun run type:check && bun run verify:live-logistics-contract && bun run verify:empty-reuse-retry && bun run verify:empty-reuse-recovery && bun run verify:trip-utilization-input && bun run verify:trip-draft-context && bun run verify:stock-binding-input && bun run verify:stock-observation-input && bun run verify:pending-pick-input && bun run verify:pick-review-ack && bun run verify:freight-input && bun run verify:freight-recovery && bun run verify:procedure-input && bun run verify:consolidation && bun run verify:multimodal-single-attempt && bun run verify:workspace-predispatch && bun run verify:tracking-quality-outcomes && bun run verify:shipment-status-authority && bun run verify:free-time-permissions && bun run verify:braces-depth && bun run build && bun run build-storybook'",
40
40
  "storybook": "storybook dev -p 6006",
41
41
  "build-storybook": "storybook build",
42
42
  "test:storybook": "test-storybook",
@@ -57,6 +57,7 @@
57
57
  "verify:trip-draft-context": "bun scripts/verify-trip-draft-context.mjs",
58
58
  "verify:stock-observation-input": "bun scripts/verify-stock-observation-input.mjs",
59
59
  "verify:pending-pick-input": "bun scripts/verify-pending-pick-input.mjs",
60
+ "verify:pick-review-ack": "bun test scripts/check-pick-review-ack.test.ts",
60
61
  "verify:empty-reuse-recovery": "bun scripts/verify-empty-reuse-recovery.mjs && bun scripts/verify-empty-reuse-recovery-hook.mjs",
61
62
  "verify:freight-input": "bun scripts/verify-freight-input.mjs",
62
63
  "verify:freight-recovery": "bun scripts/verify-freight-recovery-hook.mjs",
@@ -106,6 +107,7 @@
106
107
  "@types/react-dom": "^19.0.2",
107
108
  "@vitejs/plugin-react": "^4.3.4",
108
109
  "autoprefixer": "^10.4.20",
110
+ "braces": "3.0.3",
109
111
  "eslint": "^9.18.0",
110
112
  "eslint-plugin-react": "^7.37.5",
111
113
  "eslint-plugin-react-hooks": "^7.0.1",
@@ -120,8 +122,7 @@
120
122
  "typescript": "^5.9.0",
121
123
  "typescript-eslint": "^8.54.0",
122
124
  "vite": "8.0.16",
123
- "vite-plugin-dts": "3.9.1",
124
- "braces": "3.0.3"
125
+ "vite-plugin-dts": "5.1.2"
125
126
  },
126
127
  "peerDependencies": {
127
128
  "@apollo/client": "^4.0.11",
@@ -148,7 +149,8 @@
148
149
  "picomatch": ">=2.3.2",
149
150
  "immutable": ">=3.8.3",
150
151
  "minimatch": ">=3.1.3",
151
- "@graphql-tools/utils": "12.0.3"
152
+ "@graphql-tools/utils": "12.0.3",
153
+ "ajv": "6.15.0"
152
154
  },
153
155
  "patchedDependencies": {
154
156
  "braces@3.0.3": "patches/braces@3.0.3.patch"