@burdenoff/microfe-movethewheels 2026.925.2 → 2026.925.3

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 (38) hide show
  1. package/dist/components/StatusBadge.js +30 -30
  2. package/dist/constants/index.js +12 -5
  3. package/dist/hooks/useCustomers.js +0 -3
  4. package/dist/hooks/useFleet.js +144 -131
  5. package/dist/hooks/useInventory.js +144 -145
  6. package/dist/hooks/useRoutes.js +5 -14
  7. package/dist/movethewheels/constants/index.d.ts +1 -0
  8. package/dist/movethewheels/hooks/useFleet.d.ts +13 -1
  9. package/dist/movethewheels/hooks/useInventory.d.ts +10 -0
  10. package/dist/movethewheels/types/index.d.ts +13 -70
  11. package/dist/pages/CustomerDetailsPage.js +666 -344
  12. package/dist/pages/CustomersPage.js +71 -80
  13. package/dist/pages/FleetPage.js +1 -3
  14. package/dist/pages/InventoryPage.js +4 -4
  15. package/dist/pages/RouteDetailsPage.js +273 -248
  16. package/dist/pages/RoutesPage.js +130 -67
  17. package/dist/pages/VehicleDetailsPage.js +506 -391
  18. package/dist/pages/VehiclesPage.js +119 -70
  19. package/dist/pages/WarehouseDetailsPage.js +410 -370
  20. package/dist/pages/WarehousesPage.js +131 -82
  21. package/package.json +1 -1
  22. package/src/movethewheels/components/StatusBadge.tsx +8 -3
  23. package/src/movethewheels/constants/index.ts +9 -0
  24. package/src/movethewheels/hooks/useCustomers.ts +0 -3
  25. package/src/movethewheels/hooks/useFleet.ts +74 -19
  26. package/src/movethewheels/hooks/useInventory.ts +76 -32
  27. package/src/movethewheels/hooks/useRoutes.ts +17 -12
  28. package/src/movethewheels/pages/CustomerDetailsPage.tsx +376 -109
  29. package/src/movethewheels/pages/CustomersPage.tsx +6 -15
  30. package/src/movethewheels/pages/FleetPage.tsx +2 -1
  31. package/src/movethewheels/pages/InventoryPage.tsx +14 -5
  32. package/src/movethewheels/pages/RouteDetailsPage.tsx +74 -34
  33. package/src/movethewheels/pages/RoutesPage.tsx +66 -2
  34. package/src/movethewheels/pages/VehicleDetailsPage.tsx +151 -11
  35. package/src/movethewheels/pages/VehiclesPage.tsx +68 -3
  36. package/src/movethewheels/pages/WarehouseDetailsPage.tsx +213 -135
  37. package/src/movethewheels/pages/WarehousesPage.tsx +77 -16
  38. package/src/movethewheels/types/index.ts +14 -70
@@ -171,11 +171,6 @@ export interface Customer {
171
171
  address: Address;
172
172
  businessLicense?: string;
173
173
  taxId?: string;
174
- website?: string;
175
- preferredContactMethod: 'email' | 'phone' | 'both';
176
- marketingOptIn: boolean;
177
- notes?: string;
178
- isActive: boolean;
179
174
  rating: number;
180
175
  createdAt: Date;
181
176
  updatedAt: Date;
@@ -314,7 +309,8 @@ export interface ProofOfDelivery {
314
309
 
315
310
  // Vehicle type
316
311
  export type VehicleType = 'van' | 'truck' | 'motorcycle' | 'bicycle' | 'car';
317
- export type VehicleStatus = 'available' | 'assigned' | 'maintenance' | 'out_of_service';
312
+ export type VehicleStatus =
313
+ 'available' | 'assigned' | 'maintenance' | 'out_of_service' | 'decommissioned';
318
314
 
319
315
  export interface VehicleDocument {
320
316
  id: string;
@@ -333,7 +329,7 @@ export interface Vehicle {
333
329
  licensePlate: string;
334
330
  /** MtwVehicle.ownershipType — free-text, e.g. "owned", "leased". */
335
331
  ownershipType?: string;
336
- year: number;
332
+ year?: number;
337
333
  capacity: {
338
334
  weight: number;
339
335
  volume: number;
@@ -396,44 +392,18 @@ export interface Driver {
396
392
  createdAt: Date;
397
393
  }
398
394
 
399
- // Warehouse zone type
400
- export interface WarehouseZone {
401
- id: string;
402
- name: string;
403
- type: 'receiving' | 'storage' | 'picking' | 'packing' | 'shipping';
404
- location: string;
405
- capacity: number;
406
- currentOccupancy: number;
407
- }
408
-
409
- // Warehouse equipment type
410
- export interface WarehouseEquipment {
411
- id: string;
412
- type: string;
413
- model: string;
414
- status: 'operational' | 'maintenance' | 'out_of_service';
415
- lastMaintenance: Date;
416
- nextMaintenance: Date;
417
- }
418
-
419
395
  // Warehouse type
420
396
  export interface Warehouse {
421
397
  id: string;
422
398
  name: string;
423
399
  code: string;
424
400
  address: Address;
425
- type: 'distribution' | 'fulfillment' | 'cold_storage' | 'cross_dock';
401
+ type: 'distribution' | 'fulfillment' | 'cold_storage' | 'cross_dock' | 'retail';
402
+ /** Raw backend value (free-text, e.g. "ACTIVE"/"INACTIVE" — defaults to ACTIVE). */
403
+ status: string;
426
404
  capacity: {
427
405
  totalSpace: number;
428
406
  usedSpace: number;
429
- totalPallets: number;
430
- usedPallets: number;
431
- specialAreas: Array<{
432
- type: string;
433
- capacity: number;
434
- currentUsage: number;
435
- temperature?: { min: number; max: number; unit: string };
436
- }>;
437
407
  };
438
408
  operatingHours: Record<
439
409
  string,
@@ -442,28 +412,12 @@ export interface Warehouse {
442
412
  close: string;
443
413
  } | null
444
414
  >;
445
- contacts: Array<{
446
- primaryEmail: string;
447
- primaryPhone: string;
448
- }>;
449
- zones: WarehouseZone[];
450
- equipment: WarehouseEquipment[];
451
- staff: Array<{
452
- userId: string;
453
- role: string;
454
- shift: string;
455
- permissions: string[];
456
- }>;
457
- metrics: {
458
- throughput: number;
459
- accuracy: number;
460
- productivity: number;
461
- utilization: number;
462
- ordersFulfilled: number;
463
- averageProcessingTime: number;
464
- lastUpdated: Date;
415
+ contactInfo?: {
416
+ email?: string;
417
+ phone?: string;
465
418
  };
466
- isActive: boolean;
419
+ /** Real computed value: usedSpace / totalSpace. No other backend metrics exist for a warehouse. */
420
+ utilization: number;
467
421
  createdAt: Date;
468
422
  }
469
423
 
@@ -487,20 +441,13 @@ export interface Inventory {
487
441
  productSku?: string;
488
442
  warehouseId: string;
489
443
  warehouseName?: string;
490
- zoneId: string;
491
444
  quantity: number;
492
445
  reservedQuantity: number;
493
446
  availableQuantity: number;
494
- reorderLevel: number;
495
- maxLevel: number;
447
+ damagedQuantity: number;
448
+ /** Undefined means no reorder point is configured — never treat as 0 (matches the backend's low-stock rule, which requires one to be set). */
449
+ reorderLevel?: number;
496
450
  lastRestocked: Date;
497
- location: {
498
- aisle: string;
499
- shelf: string;
500
- position: string;
501
- level: number;
502
- };
503
- movements: InventoryMovement[];
504
451
  createdAt: Date;
505
452
  updatedAt: Date;
506
453
  }
@@ -540,10 +487,7 @@ export interface Route {
540
487
  /** Estimated fuel cost for the route (svc MtwRoute.fuelCost). */
541
488
  fuelCost?: number;
542
489
  actualDuration?: number;
543
- startTime?: Date;
544
- endTime?: Date;
545
490
  optimized: boolean;
546
- trafficConditions: TrafficCondition[];
547
491
  createdAt: Date;
548
492
  }
549
493