@burdenoff/microfe-movethewheels 2026.920.3 → 2026.921.1

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 (77) hide show
  1. package/dist/components/CarbonFootprintPanel.js +1 -1
  2. package/dist/components/CustomerPicker.js +76 -65
  3. package/dist/components/DataTable.js +140 -139
  4. package/dist/components/DocumentsCard.js +14 -8
  5. package/dist/generated/wspace-types.d.ts +1043 -5
  6. package/dist/hooks/useAnalytics.js +21 -1
  7. package/dist/hooks/useCustomers.js +94 -78
  8. package/dist/hooks/useDebouncedValue.js +11 -0
  9. package/dist/hooks/useEntityDocuments.js +28 -18
  10. package/dist/hooks/useEpod.js +24 -17
  11. package/dist/hooks/useFleet.js +146 -125
  12. package/dist/hooks/useInventory.js +255 -186
  13. package/dist/hooks/useMultiModalShipments.js +35 -27
  14. package/dist/hooks/useOrders.js +73 -73
  15. package/dist/hooks/useRoutes.js +97 -75
  16. package/dist/hooks/useTracking.js +100 -88
  17. package/dist/movethewheels/components/CustomerPicker.d.ts +3 -1
  18. package/dist/movethewheels/components/DataTable.d.ts +5 -1
  19. package/dist/movethewheels/hooks/useCustomers.d.ts +0 -1
  20. package/dist/movethewheels/hooks/useDebouncedValue.d.ts +1 -0
  21. package/dist/movethewheels/hooks/useEntityDocuments.d.ts +2 -0
  22. package/dist/movethewheels/hooks/useEpod.d.ts +6 -1
  23. package/dist/movethewheels/hooks/useFleet.d.ts +49 -5
  24. package/dist/movethewheels/hooks/useInventory.d.ts +24 -17
  25. package/dist/movethewheels/hooks/useMultiModalShipments.d.ts +6 -1
  26. package/dist/movethewheels/hooks/useOrders.d.ts +33 -5
  27. package/dist/movethewheels/hooks/useRoutes.d.ts +2 -1
  28. package/dist/movethewheels/hooks/useTracking.d.ts +12 -11
  29. package/dist/movethewheels/types/index.d.ts +7 -5
  30. package/dist/pages/CreateOrderPage.js +207 -201
  31. package/dist/pages/CustomersPage.js +61 -54
  32. package/dist/pages/DeliveryCapturePage.js +131 -109
  33. package/dist/pages/DriversPage.js +100 -92
  34. package/dist/pages/InventoryPage.js +239 -236
  35. package/dist/pages/MultiModalShipmentPage.js +163 -130
  36. package/dist/pages/OrderDetailsPage.js +224 -208
  37. package/dist/pages/OrdersListPage.js +66 -60
  38. package/dist/pages/ProductDetailsPage.js +241 -200
  39. package/dist/pages/ProductsPage.js +59 -52
  40. package/dist/pages/RouteDetailsPage.js +343 -321
  41. package/dist/pages/RoutesPage.js +55 -48
  42. package/dist/pages/VehiclesPage.js +63 -56
  43. package/dist/pages/WarehousesPage.js +60 -53
  44. package/package.json +1 -1
  45. package/src/generated/wspace-types.ts +1188 -5
  46. package/src/movethewheels/components/CarbonFootprintPanel.tsx +0 -1
  47. package/src/movethewheels/components/CustomerPicker.tsx +14 -0
  48. package/src/movethewheels/components/DataTable.tsx +34 -18
  49. package/src/movethewheels/components/DocumentsCard.tsx +6 -1
  50. package/src/movethewheels/components/maps/leaflet-setup.ts +1 -8
  51. package/src/movethewheels/hooks/useAnalytics.ts +27 -0
  52. package/src/movethewheels/hooks/useCustomers.ts +64 -24
  53. package/src/movethewheels/hooks/useDebouncedValue.ts +12 -0
  54. package/src/movethewheels/hooks/useEntityDocuments.ts +43 -25
  55. package/src/movethewheels/hooks/useEpod.ts +14 -7
  56. package/src/movethewheels/hooks/useFleet.ts +58 -37
  57. package/src/movethewheels/hooks/useFleetIntelligence.ts +1 -4
  58. package/src/movethewheels/hooks/useInventory.ts +211 -90
  59. package/src/movethewheels/hooks/useMultiModalShipments.ts +15 -11
  60. package/src/movethewheels/hooks/useOrders.ts +13 -14
  61. package/src/movethewheels/hooks/useRoutes.ts +80 -23
  62. package/src/movethewheels/hooks/useTracking.ts +130 -98
  63. package/src/movethewheels/pages/CreateOrderPage.tsx +9 -1
  64. package/src/movethewheels/pages/CustomersPage.tsx +11 -1
  65. package/src/movethewheels/pages/DeliveryCapturePage.tsx +31 -1
  66. package/src/movethewheels/pages/DriversPage.tsx +24 -12
  67. package/src/movethewheels/pages/InventoryPage.tsx +57 -32
  68. package/src/movethewheels/pages/MultiModalShipmentPage.tsx +52 -3
  69. package/src/movethewheels/pages/OrderDetailsPage.tsx +17 -1
  70. package/src/movethewheels/pages/OrdersListPage.tsx +20 -3
  71. package/src/movethewheels/pages/ProductDetailsPage.tsx +52 -3
  72. package/src/movethewheels/pages/ProductsPage.tsx +11 -1
  73. package/src/movethewheels/pages/RouteDetailsPage.tsx +35 -5
  74. package/src/movethewheels/pages/RoutesPage.tsx +11 -1
  75. package/src/movethewheels/pages/VehiclesPage.tsx +19 -2
  76. package/src/movethewheels/pages/WarehousesPage.tsx +11 -1
  77. package/src/movethewheels/types/index.ts +7 -5
@@ -2,7 +2,7 @@ import { useMoveTheWheels as e } from "../providers/MoveTheWheelsProvider.js";
2
2
  import { executeGraphQL as t } from "../utils/graphqlClient.js";
3
3
  import { useCallback as n, useEffect as r, useMemo as i, useState as a } from "react";
4
4
  //#region src/movethewheels/hooks/useFleet.ts
5
- var o = "\n query ListVehicles($filter: VehicleFilterInput, $pagination: PaginationInput) {\n vehicles(filter: $filter, pagination: $pagination) {\n id\n vehicleNumber\n type\n make\n model\n licensePlate\n ownershipType\n year\n capacity\n status\n currentLocation\n fuelLevel\n mileage\n lastServiceDate\n nextServiceDueDate\n nextServiceDueMileage\n createdAt\n updatedAt\n }\n }\n", s = "\n query ListDrivers($filter: DriverFilterInput, $pagination: PaginationInput) {\n drivers(filter: $filter, pagination: $pagination) {\n id\n userId\n firstName\n lastName\n email\n phone\n employeeId\n licenseNumber\n licenseClass\n licenseExpiry\n status\n currentLocation\n rating\n vehicleId\n createdAt\n }\n }\n", c = "\n query GetVehicle($id: ID!) {\n vehicle(id: $id) {\n id\n vehicleNumber\n type\n make\n model\n licensePlate\n ownershipType\n year\n capacity\n status\n currentLocation\n fuelLevel\n mileage\n lastServiceDate\n nextServiceDueDate\n nextServiceDueMileage\n createdAt\n updatedAt\n }\n }\n", l = "\n query GetDriver($id: ID!) {\n driver(id: $id) {\n id\n userId\n firstName\n lastName\n email\n phone\n employeeId\n licenseNumber\n licenseClass\n licenseExpiry\n status\n currentLocation\n rating\n vehicleId\n createdAt\n }\n }\n", u = "\n mutation UpdateVehicleStatus($id: ID!, $status: VehicleStatus!) {\n updateVehicleStatus(id: $id, status: $status) {\n id\n vehicleNumber\n type\n make\n model\n licensePlate\n ownershipType\n year\n capacity\n status\n currentLocation\n fuelLevel\n mileage\n createdAt\n updatedAt\n }\n }\n", d = "\n mutation AssignDriverVehicle($id: ID!, $vehicleId: ID) {\n assignDriverVehicle(id: $id, vehicleId: $vehicleId) {\n id\n userId\n firstName\n lastName\n email\n phone\n employeeId\n licenseNumber\n licenseClass\n licenseExpiry\n status\n currentLocation\n rating\n vehicleId\n createdAt\n }\n }\n", f = "\n mutation UpdateDriverStatus($id: ID!, $status: DriverStatus!) {\n updateDriverStatus(id: $id, status: $status) {\n id\n userId\n firstName\n lastName\n email\n phone\n employeeId\n licenseNumber\n licenseClass\n licenseExpiry\n status\n currentLocation\n rating\n vehicleId\n createdAt\n }\n }\n", p = "\n mutation CreateVehicle($input: CreateVehicleInput!) {\n createVehicle(input: $input) {\n id\n vehicleNumber\n type\n make\n model\n licensePlate\n ownershipType\n year\n capacity\n status\n currentLocation\n fuelLevel\n mileage\n createdAt\n updatedAt\n }\n }\n", m = "\n mutation CreateDriver($input: CreateDriverInput!) {\n createDriver(input: $input) {\n id\n userId\n firstName\n lastName\n email\n phone\n employeeId\n licenseNumber\n licenseClass\n licenseExpiry\n status\n currentLocation\n rating\n vehicleId\n createdAt\n }\n }\n", h = "\n mutation UpdateVehicle($id: ID!, $input: UpdateVehicleInput!) {\n updateVehicle(id: $id, input: $input) {\n id\n vehicleNumber\n type\n make\n model\n licensePlate\n ownershipType\n year\n capacity\n status\n currentLocation\n fuelLevel\n mileage\n createdAt\n updatedAt\n }\n }\n", g = "\n mutation UpdateDriver($id: ID!, $input: UpdateDriverInput!) {\n updateDriver(id: $id, input: $input) {\n id\n userId\n firstName\n lastName\n email\n phone\n employeeId\n licenseNumber\n licenseClass\n licenseExpiry\n status\n currentLocation\n rating\n vehicleId\n createdAt\n }\n }\n", _ = "\n query GetDriverStatusCounts {\n onBreak: driversCount(filter: { status: ON_BREAK })\n offDuty: driversCount(filter: { status: OFF_DUTY })\n inactive: driversCount(filter: { status: INACTIVE })\n }\n", v = "\n query GetFleetStats {\n fleetStats {\n totalVehicles\n activeVehicles\n inTransitVehicles\n maintenanceVehicles\n totalDrivers\n availableDrivers\n onDeliveryDrivers\n avgDriverRating\n }\n }\n";
5
+ var o = "\n query ListVehicles($filter: VehicleFilterInput, $pagination: PaginationInput) {\n vehicles(filter: $filter, pagination: $pagination) {\n id\n vehicleNumber\n type\n make\n model\n licensePlate\n ownershipType\n year\n capacity\n status\n currentLocation\n fuelLevel\n mileage\n lastServiceDate\n nextServiceDueDate\n nextServiceDueMileage\n createdAt\n updatedAt\n }\n vehiclesCount(filter: $filter)\n }\n", s = "\n query ListDrivers($filter: DriverFilterInput, $pagination: PaginationInput) {\n drivers(filter: $filter, pagination: $pagination) {\n id\n userId\n firstName\n lastName\n email\n phone\n employeeId\n licenseNumber\n licenseClass\n licenseExpiry\n status\n currentLocation\n rating\n vehicleId\n createdAt\n }\n driversCount(filter: $filter)\n }\n", c = "\n query GetVehicle($id: ID!) {\n vehicle(id: $id) {\n id\n vehicleNumber\n type\n make\n model\n licensePlate\n ownershipType\n year\n capacity\n status\n currentLocation\n fuelLevel\n mileage\n lastServiceDate\n nextServiceDueDate\n nextServiceDueMileage\n createdAt\n updatedAt\n }\n }\n", l = "\n query GetDriver($id: ID!) {\n driver(id: $id) {\n id\n userId\n firstName\n lastName\n email\n phone\n employeeId\n licenseNumber\n licenseClass\n licenseExpiry\n status\n currentLocation\n rating\n vehicleId\n createdAt\n }\n }\n", u = "\n mutation UpdateVehicleStatus($id: ID!, $status: VehicleStatus!) {\n updateVehicleStatus(id: $id, status: $status) {\n id\n vehicleNumber\n type\n make\n model\n licensePlate\n ownershipType\n year\n capacity\n status\n currentLocation\n fuelLevel\n mileage\n createdAt\n updatedAt\n }\n }\n", d = "\n mutation AssignDriverVehicle($id: ID!, $vehicleId: ID) {\n assignDriverVehicle(id: $id, vehicleId: $vehicleId) {\n id\n userId\n firstName\n lastName\n email\n phone\n employeeId\n licenseNumber\n licenseClass\n licenseExpiry\n status\n currentLocation\n rating\n vehicleId\n createdAt\n }\n }\n", f = "\n mutation UpdateDriverStatus($id: ID!, $status: DriverStatus!) {\n updateDriverStatus(id: $id, status: $status) {\n id\n userId\n firstName\n lastName\n email\n phone\n employeeId\n licenseNumber\n licenseClass\n licenseExpiry\n status\n currentLocation\n rating\n vehicleId\n createdAt\n }\n }\n", p = "\n mutation CreateVehicle($input: CreateVehicleInput!) {\n createVehicle(input: $input) {\n id\n vehicleNumber\n type\n make\n model\n licensePlate\n ownershipType\n year\n capacity\n status\n currentLocation\n fuelLevel\n mileage\n createdAt\n updatedAt\n }\n }\n", m = "\n mutation CreateDriver($input: CreateDriverInput!) {\n createDriver(input: $input) {\n id\n userId\n firstName\n lastName\n email\n phone\n employeeId\n licenseNumber\n licenseClass\n licenseExpiry\n status\n currentLocation\n rating\n vehicleId\n createdAt\n }\n }\n", h = "\n mutation UpdateVehicle($id: ID!, $input: UpdateVehicleInput!) {\n updateVehicle(id: $id, input: $input) {\n id\n vehicleNumber\n type\n make\n model\n licensePlate\n ownershipType\n year\n capacity\n status\n currentLocation\n fuelLevel\n mileage\n createdAt\n updatedAt\n }\n }\n", g = "\n mutation UpdateDriver($id: ID!, $input: UpdateDriverInput!) {\n updateDriver(id: $id, input: $input) {\n id\n userId\n firstName\n lastName\n email\n phone\n employeeId\n licenseNumber\n licenseClass\n licenseExpiry\n status\n currentLocation\n rating\n vehicleId\n createdAt\n }\n }\n", _ = "\n query GetDriverStatusCounts {\n onBreak: driversCount(filter: { status: ON_BREAK })\n offDuty: driversCount(filter: { status: OFF_DUTY })\n inactive: driversCount(filter: { status: INACTIVE })\n }\n", v = "\n query GetFleetStats {\n fleetStats {\n totalVehicles\n activeVehicles\n inTransitVehicles\n maintenanceVehicles\n totalDrivers\n availableDrivers\n onDeliveryDrivers\n avgDriverRating\n }\n }\n";
6
6
  function y(e) {
7
7
  switch (e) {
8
8
  case "ACTIVE": return "available";
@@ -153,52 +153,61 @@ function T() {
153
153
  ]);
154
154
  }
155
155
  function E(e = {}) {
156
- let { filters: c } = e, l = i(() => c, [
156
+ let { filters: c, limit: l = 20 } = e, u = i(() => c, [
157
157
  c?.driverId,
158
+ c?.search,
158
159
  c?.status,
159
160
  c?.vehicleType
160
- ]), u = T(), [d, f] = a([]), [_, v] = a([]), [y, x] = a(!1), [S, E] = a(null), D = n(async () => {
161
- x(!0), E(null);
161
+ ]), d = T(), [f, _] = a([]), [v, y] = a([]), [x, S] = a(!1), [E, D] = a(null), O = n(async () => {
162
+ S(!0), D(null);
162
163
  try {
163
- let [e, n] = await Promise.all([t(u, o, {
164
+ let [e, n] = await Promise.all([t(d, o, {
164
165
  filter: {
165
- type: l?.vehicleType?.toUpperCase(),
166
- status: l?.status ? b(l.status) : void 0
166
+ search: u?.search,
167
+ type: u?.vehicleType?.toUpperCase(),
168
+ status: u?.status ? b(u.status) : void 0
167
169
  },
168
170
  pagination: {
169
- limit: 200,
171
+ limit: l,
170
172
  offset: 0
171
173
  }
172
- }), t(u, s, {
173
- filter: { vehicleId: l?.driverId },
174
+ }), t(d, s, {
175
+ filter: {
176
+ search: u?.search,
177
+ vehicleId: u?.driverId
178
+ },
174
179
  pagination: {
175
- limit: 200,
180
+ limit: l,
176
181
  offset: 0
177
182
  }
178
183
  })]);
179
- f(e.vehicles.map(C)), v(n.drivers.map(w));
184
+ _(e.vehicles.map(C)), y(n.drivers.map(w));
180
185
  } catch (e) {
181
- E(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load fleet data"));
186
+ D(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load fleet data"));
182
187
  } finally {
183
- x(!1);
188
+ S(!1);
184
189
  }
185
- }, [l, u]);
190
+ }, [
191
+ u,
192
+ d,
193
+ l
194
+ ]);
186
195
  r(() => {
187
- D();
188
- }, [D]);
189
- let O = n(() => {
190
- D();
191
- }, [D]), k = n(async (e) => {
192
- let n = C((await t(u, p, { input: {
196
+ O();
197
+ }, [O]);
198
+ let k = n(() => {
199
+ O();
200
+ }, [O]), A = n(async (e) => {
201
+ let n = C((await t(d, p, { input: {
193
202
  vehicleNumber: e.vehicleNumber,
194
203
  type: e.type,
195
204
  make: e.make,
196
205
  model: e.model,
197
206
  licensePlate: e.licensePlate
198
207
  } })).createVehicle);
199
- return f((e) => [n, ...e]), n;
200
- }, [u]), A = n(async (e) => {
201
- let n = w((await t(u, m, { input: {
208
+ return _((e) => [n, ...e]), n;
209
+ }, [d]), j = n(async (e) => {
210
+ let n = w((await t(d, m, { input: {
202
211
  employeeId: e.employeeId,
203
212
  firstName: e.firstName,
204
213
  lastName: e.lastName,
@@ -206,9 +215,9 @@ function E(e = {}) {
206
215
  phone: e.phone,
207
216
  licenseNumber: e.licenseNumber
208
217
  } })).createDriver);
209
- return v((e) => [n, ...e]), n;
210
- }, [u]), j = n(async (e, n) => {
211
- let r = C((await t(u, h, {
218
+ return y((e) => [n, ...e]), n;
219
+ }, [d]), M = n(async (e, n) => {
220
+ let r = C((await t(d, h, {
212
221
  id: e,
213
222
  input: {
214
223
  vehicleNumber: n.vehicleNumber,
@@ -218,9 +227,9 @@ function E(e = {}) {
218
227
  licensePlate: n.licensePlate
219
228
  }
220
229
  })).updateVehicle);
221
- return f((t) => t.map((t) => t.id === e ? r : t)), r;
222
- }, [u]), M = n(async (e, n) => {
223
- let r = w((await t(u, g, {
230
+ return _((t) => t.map((t) => t.id === e ? r : t)), r;
231
+ }, [d]), N = n(async (e, n) => {
232
+ let r = w((await t(d, g, {
224
233
  id: e,
225
234
  input: {
226
235
  firstName: n.firstName,
@@ -230,75 +239,83 @@ function E(e = {}) {
230
239
  licenseNumber: n.licenseNumber
231
240
  }
232
241
  })).updateDriver);
233
- return v((t) => t.map((t) => t.id === e ? r : t)), r;
234
- }, [u]);
242
+ return y((t) => t.map((t) => t.id === e ? r : t)), r;
243
+ }, [d]);
235
244
  return {
236
- vehicles: d,
237
- drivers: _,
238
- totalVehicles: d.length,
239
- totalDrivers: _.length,
240
- isLoading: y,
241
- error: S,
242
- refetch: O,
243
- createVehicle: k,
244
- createDriver: A,
245
- updateVehicle: j,
246
- updateDriver: M
245
+ vehicles: f,
246
+ drivers: v,
247
+ totalVehicles: f.length,
248
+ totalDrivers: v.length,
249
+ isLoading: x,
250
+ error: E,
251
+ refetch: k,
252
+ createVehicle: A,
253
+ createDriver: j,
254
+ updateVehicle: M,
255
+ updateDriver: N
247
256
  };
248
257
  }
249
258
  function D(e = {}) {
250
- let { limit: i = 200, offset: s = 0 } = e, c = T(), [l, f] = a([]), [p, m] = a(!1), [h, g] = a(!1), [_, v] = a(null), y = n(async () => {
251
- g(!0), v(null);
259
+ let { limit: i = 20, offset: s = 0, search: c, status: l, vehicleType: f } = e, p = T(), [m, h] = a([]), [g, _] = a(0), [v, y] = a(!1), [x, S] = a(!1), [w, E] = a(null), D = n(async () => {
260
+ S(!0), E(null);
252
261
  try {
253
- let e = await t(c, o, { pagination: {
254
- limit: i,
255
- offset: s
256
- } });
257
- m(e.vehicles.length === i), f(e.vehicles.map(C));
262
+ let e = await t(p, o, {
263
+ filter: {
264
+ search: c || void 0,
265
+ status: l ? b(l) : void 0,
266
+ type: f?.toUpperCase()
267
+ },
268
+ pagination: {
269
+ limit: i,
270
+ offset: s
271
+ }
272
+ });
273
+ y(s + e.vehicles.length < e.vehiclesCount), _(e.vehiclesCount), h(e.vehicles.map(C));
258
274
  } catch (e) {
259
- v(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load vehicles"));
275
+ E(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load vehicles"));
260
276
  } finally {
261
- g(!1);
277
+ S(!1);
262
278
  }
263
279
  }, [
264
- c,
280
+ p,
265
281
  i,
266
- s
282
+ s,
283
+ c,
284
+ l,
285
+ f
267
286
  ]);
268
- r(() => {
269
- y();
270
- }, [y]);
271
- let x = n(() => {
272
- y();
273
- }, [y]), S = n(async (e, n) => {
274
- let r = C((await t(c, u, {
275
- id: e,
276
- status: b(n)
277
- })).updateVehicleStatus);
278
- return f((t) => t.map((t) => t.id === e ? r : t)), r;
279
- }, [c]), w = n(async (e, n) => {
280
- await t(c, d, {
281
- id: n,
282
- vehicleId: e
283
- });
284
- let r = l.find((t) => t.id === e);
285
- if (!r) throw Error("Vehicle not found");
286
- let i = {
287
- ...r,
288
- driverId: n,
289
- status: "assigned"
290
- };
291
- return f((t) => t.map((t) => t.id === e ? i : t)), i;
292
- }, [c, l]);
293
- return {
294
- vehicles: l,
295
- totalVehicles: l.length,
296
- hasMore: p,
297
- isLoading: h,
298
- error: _,
299
- refetch: x,
300
- updateVehicleStatus: S,
301
- assignDriver: w
287
+ return r(() => {
288
+ D();
289
+ }, [D]), {
290
+ vehicles: m,
291
+ totalVehicles: g,
292
+ hasMore: v,
293
+ isLoading: x,
294
+ error: w,
295
+ refetch: n(() => {
296
+ D();
297
+ }, [D]),
298
+ updateVehicleStatus: n(async (e, n) => {
299
+ let r = C((await t(p, u, {
300
+ id: e,
301
+ status: b(n)
302
+ })).updateVehicleStatus);
303
+ return h((t) => t.map((t) => t.id === e ? r : t)), r;
304
+ }, [p]),
305
+ assignDriver: n(async (e, n) => {
306
+ await t(p, d, {
307
+ id: n,
308
+ vehicleId: e
309
+ });
310
+ let r = m.find((t) => t.id === e);
311
+ if (!r) throw Error("Vehicle not found");
312
+ let i = {
313
+ ...r,
314
+ driverId: n,
315
+ status: "assigned"
316
+ };
317
+ return h((t) => t.map((t) => t.id === e ? i : t)), i;
318
+ }, [p, m])
302
319
  };
303
320
  }
304
321
  function O(e) {
@@ -329,55 +346,59 @@ function O(e) {
329
346
  };
330
347
  }
331
348
  function k(e = {}) {
332
- let { limit: i = 200, offset: o = 0, status: c } = e, l = T(), [u, p] = a([]), [m, h] = a(!1), [g, _] = a(!1), [v, y] = a(null), b = n(async () => {
333
- _(!0), y(null);
349
+ let { limit: i = 20, offset: o = 0, status: c, search: l, licenseClass: u } = e, p = T(), [m, h] = a([]), [g, _] = a(0), [v, y] = a(!1), [b, x] = a(!1), [C, E] = a(null), D = n(async () => {
350
+ x(!0), E(null);
334
351
  try {
335
- let e = await t(l, s, {
336
- filter: c ? { status: S(c) } : void 0,
352
+ let e = await t(p, s, {
353
+ filter: {
354
+ status: c ? S(c) : void 0,
355
+ search: l || void 0,
356
+ licenseClass: u || void 0
357
+ },
337
358
  pagination: {
338
359
  limit: i,
339
360
  offset: o
340
361
  }
341
362
  });
342
- h(e.drivers.length === i), p(e.drivers.map(w));
363
+ y(o + e.drivers.length < e.driversCount), _(e.driversCount), h(e.drivers.map(w));
343
364
  } catch (e) {
344
- y(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load drivers"));
365
+ E(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load drivers"));
345
366
  } finally {
346
- _(!1);
367
+ x(!1);
347
368
  }
348
369
  }, [
349
- l,
370
+ p,
350
371
  i,
351
372
  o,
352
- c
373
+ c,
374
+ l,
375
+ u
353
376
  ]);
354
- r(() => {
355
- b();
356
- }, [b]);
357
- let x = n(() => {
358
- b();
359
- }, [b]), C = n(async (e, n) => {
360
- let r = w((await t(l, f, {
361
- id: e,
362
- status: S(n)
363
- })).updateDriverStatus);
364
- return p((t) => t.map((t) => t.id === e ? r : t)), r;
365
- }, [l]), E = n(async (e, n) => {
366
- let r = w((await t(l, d, {
367
- id: e,
368
- vehicleId: n
369
- })).assignDriverVehicle);
370
- return p((t) => t.map((t) => t.id === e ? r : t)), r;
371
- }, [l]);
372
- return {
373
- drivers: u,
374
- totalDrivers: u.length,
375
- hasMore: m,
376
- isLoading: g,
377
- error: v,
378
- refetch: x,
379
- updateDriverStatus: C,
380
- assignVehicle: E
377
+ return r(() => {
378
+ D();
379
+ }, [D]), {
380
+ drivers: m,
381
+ totalDrivers: g,
382
+ hasMore: v,
383
+ isLoading: b,
384
+ error: C,
385
+ refetch: n(() => {
386
+ D();
387
+ }, [D]),
388
+ updateDriverStatus: n(async (e, n) => {
389
+ let r = w((await t(p, f, {
390
+ id: e,
391
+ status: S(n)
392
+ })).updateDriverStatus);
393
+ return h((t) => t.map((t) => t.id === e ? r : t)), r;
394
+ }, [p]),
395
+ assignVehicle: n(async (e, n) => {
396
+ let r = w((await t(p, d, {
397
+ id: e,
398
+ vehicleId: n
399
+ })).assignDriverVehicle);
400
+ return h((t) => t.map((t) => t.id === e ? r : t)), r;
401
+ }, [p])
381
402
  };
382
403
  }
383
404
  function A(e) {
@@ -530,4 +551,4 @@ function N() {
530
551
  };
531
552
  }
532
553
  //#endregion
533
- export { A as useDriver, j as useDriverStatusCounts, k as useDrivers, E as useFleet, N as useFleetStats, O as useVehicle, M as useVehicleDrivers, D as useVehicles };
554
+ export { w as mapDriver, C as mapVehicle, A as useDriver, j as useDriverStatusCounts, k as useDrivers, E as useFleet, N as useFleetStats, O as useVehicle, M as useVehicleDrivers, D as useVehicles };