@burdenoff/microfe-movethewheels 2026.920.3 → 2026.923.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 (79) 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 +2719 -8
  6. package/dist/hooks/index.js +1 -1
  7. package/dist/hooks/useAnalytics.js +21 -1
  8. package/dist/hooks/useCustomers.js +94 -78
  9. package/dist/hooks/useDebouncedValue.js +11 -0
  10. package/dist/hooks/useEntityDocuments.js +28 -18
  11. package/dist/hooks/useEpod.js +24 -17
  12. package/dist/hooks/useFleet.js +148 -125
  13. package/dist/hooks/useInventory.js +255 -186
  14. package/dist/hooks/useMultiModalShipments.js +35 -27
  15. package/dist/hooks/useOrders.js +139 -134
  16. package/dist/hooks/useRoutes.js +97 -75
  17. package/dist/hooks/useTracking.js +100 -88
  18. package/dist/index.js +6 -6
  19. package/dist/movethewheels/components/CustomerPicker.d.ts +3 -1
  20. package/dist/movethewheels/components/DataTable.d.ts +5 -1
  21. package/dist/movethewheels/hooks/useCustomers.d.ts +0 -1
  22. package/dist/movethewheels/hooks/useDebouncedValue.d.ts +1 -0
  23. package/dist/movethewheels/hooks/useEntityDocuments.d.ts +2 -0
  24. package/dist/movethewheels/hooks/useEpod.d.ts +6 -1
  25. package/dist/movethewheels/hooks/useFleet.d.ts +49 -5
  26. package/dist/movethewheels/hooks/useInventory.d.ts +24 -17
  27. package/dist/movethewheels/hooks/useMultiModalShipments.d.ts +6 -1
  28. package/dist/movethewheels/hooks/useOrders.d.ts +48 -5
  29. package/dist/movethewheels/hooks/useRoutes.d.ts +18 -1
  30. package/dist/movethewheels/hooks/useTracking.d.ts +12 -11
  31. package/dist/movethewheels/types/index.d.ts +12 -5
  32. package/dist/pages/CreateOrderPage.js +191 -129
  33. package/dist/pages/CustomersPage.js +61 -54
  34. package/dist/pages/DeliveryCapturePage.js +131 -109
  35. package/dist/pages/DriversPage.js +100 -92
  36. package/dist/pages/InventoryPage.js +239 -236
  37. package/dist/pages/MultiModalShipmentPage.js +163 -130
  38. package/dist/pages/OrderDetailsPage.js +190 -106
  39. package/dist/pages/OrdersListPage.js +66 -60
  40. package/dist/pages/ProductDetailsPage.js +241 -200
  41. package/dist/pages/ProductsPage.js +59 -52
  42. package/dist/pages/RouteDetailsPage.js +324 -293
  43. package/dist/pages/RoutesPage.js +55 -48
  44. package/dist/pages/VehiclesPage.js +63 -56
  45. package/dist/pages/WarehousesPage.js +60 -53
  46. package/package.json +1 -1
  47. package/src/generated/wspace-types.ts +3136 -8
  48. package/src/movethewheels/components/CarbonFootprintPanel.tsx +0 -1
  49. package/src/movethewheels/components/CustomerPicker.tsx +14 -0
  50. package/src/movethewheels/components/DataTable.tsx +34 -18
  51. package/src/movethewheels/components/DocumentsCard.tsx +6 -1
  52. package/src/movethewheels/components/maps/leaflet-setup.ts +1 -8
  53. package/src/movethewheels/hooks/useAnalytics.ts +27 -0
  54. package/src/movethewheels/hooks/useCustomers.ts +64 -24
  55. package/src/movethewheels/hooks/useDebouncedValue.ts +12 -0
  56. package/src/movethewheels/hooks/useEntityDocuments.ts +43 -25
  57. package/src/movethewheels/hooks/useEpod.ts +14 -7
  58. package/src/movethewheels/hooks/useFleet.ts +66 -38
  59. package/src/movethewheels/hooks/useFleetIntelligence.ts +1 -4
  60. package/src/movethewheels/hooks/useInventory.ts +211 -90
  61. package/src/movethewheels/hooks/useMultiModalShipments.ts +15 -11
  62. package/src/movethewheels/hooks/useOrders.ts +48 -14
  63. package/src/movethewheels/hooks/useRoutes.ts +81 -24
  64. package/src/movethewheels/hooks/useTracking.ts +130 -98
  65. package/src/movethewheels/pages/CreateOrderPage.tsx +93 -2
  66. package/src/movethewheels/pages/CustomersPage.tsx +11 -1
  67. package/src/movethewheels/pages/DeliveryCapturePage.tsx +31 -1
  68. package/src/movethewheels/pages/DriversPage.tsx +24 -12
  69. package/src/movethewheels/pages/InventoryPage.tsx +57 -32
  70. package/src/movethewheels/pages/MultiModalShipmentPage.tsx +52 -3
  71. package/src/movethewheels/pages/OrderDetailsPage.tsx +91 -6
  72. package/src/movethewheels/pages/OrdersListPage.tsx +20 -3
  73. package/src/movethewheels/pages/ProductDetailsPage.tsx +52 -3
  74. package/src/movethewheels/pages/ProductsPage.tsx +11 -1
  75. package/src/movethewheels/pages/RouteDetailsPage.tsx +45 -5
  76. package/src/movethewheels/pages/RoutesPage.tsx +11 -1
  77. package/src/movethewheels/pages/VehiclesPage.tsx +19 -2
  78. package/src/movethewheels/pages/WarehousesPage.tsx +11 -1
  79. package/src/movethewheels/types/index.ts +12 -5
@@ -1,9 +1,9 @@
1
1
  import "../shared/hooks/useTr.js";
2
+ import "./useRoutes.js";
2
3
  import "./useOrders.js";
3
4
  import "./useFleet.js";
4
5
  import "./useInventory.js";
5
6
  import "./useCustomers.js";
6
- import "./useRoutes.js";
7
7
  import "./useAnalytics.js";
8
8
  import "./useTracking.js";
9
9
  import "./useReports.js";
@@ -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/useAnalytics.ts
5
- var o = "\n query GetMovethewheelsAnalytics {\n analytics {\n orderTrend {\n label\n value\n }\n deliveryTrend {\n label\n value\n }\n revenueTrend {\n label\n value\n }\n }\n dashboardMetrics {\n totalDeliveryJobs\n activeDeliveries\n availableDrivers\n activeVehicles\n lowStockItems\n totalRevenue\n onTimeDeliveryRate\n customerSatisfaction\n }\n fleetStats {\n totalVehicles\n activeVehicles\n maintenanceVehicles\n avgDriverRating\n }\n }\n", s = "\n query GetDashboardMetrics {\n dashboardMetrics {\n totalDeliveryJobs\n activeDeliveries\n availableDrivers\n activeVehicles\n lowStockItems\n totalRevenue\n onTimeDeliveryRate\n customerSatisfaction\n }\n deliveryJobStats {\n total\n pending\n inTransit\n delivered\n cancelled\n failed\n }\n fleetStats {\n totalVehicles\n activeVehicles\n maintenanceVehicles\n totalDrivers\n availableDrivers\n onDeliveryDrivers\n avgDriverRating\n }\n financeMetrics {\n revenue {\n totalRevenue\n averageOrderValue\n }\n }\n }\n", c = "\n query GetOrderAnalytics {\n deliveryJobStats {\n pending\n inTransit\n delivered\n cancelled\n failed\n }\n analytics {\n orderTrend {\n label\n value\n }\n }\n }\n";
5
+ var o = "\n query GetMovethewheelsAnalytics {\n analytics {\n orderTrend {\n label\n value\n }\n deliveryTrend {\n label\n value\n }\n revenueTrend {\n label\n value\n }\n }\n dashboardMetrics {\n totalDeliveryJobs\n activeDeliveries\n availableDrivers\n activeVehicles\n lowStockItems\n totalRevenue\n onTimeDeliveryRate\n customerSatisfaction\n }\n fleetStats {\n totalVehicles\n activeVehicles\n maintenanceVehicles\n avgDriverRating\n }\n }\n", s = "\n query GetDashboardMetrics {\n dashboardMetrics {\n totalDeliveryJobs\n activeDeliveries\n availableDrivers\n activeVehicles\n lowStockItems\n totalRevenue\n onTimeDeliveryRate\n customerSatisfaction\n }\n deliveryJobStats {\n total\n pending\n confirmed\n assigned\n pickedUp\n inTransit\n outForDelivery\n delivered\n cancelled\n failed\n returned\n }\n fleetStats {\n totalVehicles\n activeVehicles\n maintenanceVehicles\n totalDrivers\n availableDrivers\n onDeliveryDrivers\n avgDriverRating\n }\n financeMetrics {\n revenue {\n totalRevenue\n averageOrderValue\n }\n }\n }\n", c = "\n query GetOrderAnalytics {\n deliveryJobStats {\n pending\n confirmed\n assigned\n pickedUp\n inTransit\n outForDelivery\n delivered\n cancelled\n failed\n returned\n }\n analytics {\n orderTrend {\n label\n value\n }\n }\n }\n";
6
6
  function l() {
7
7
  return {
8
8
  overview: {
@@ -237,10 +237,26 @@ function p() {
237
237
  status: "pending",
238
238
  count: e.deliveryJobStats.pending
239
239
  },
240
+ {
241
+ status: "confirmed",
242
+ count: e.deliveryJobStats.confirmed
243
+ },
244
+ {
245
+ status: "assigned",
246
+ count: e.deliveryJobStats.assigned
247
+ },
248
+ {
249
+ status: "picked_up",
250
+ count: e.deliveryJobStats.pickedUp
251
+ },
240
252
  {
241
253
  status: "in_transit",
242
254
  count: e.deliveryJobStats.inTransit
243
255
  },
256
+ {
257
+ status: "out_for_delivery",
258
+ count: e.deliveryJobStats.outForDelivery
259
+ },
244
260
  {
245
261
  status: "delivered",
246
262
  count: e.deliveryJobStats.delivered
@@ -252,6 +268,10 @@ function p() {
252
268
  {
253
269
  status: "failed",
254
270
  count: e.deliveryJobStats.failed
271
+ },
272
+ {
273
+ status: "returned",
274
+ count: e.deliveryJobStats.returned
255
275
  }
256
276
  ],
257
277
  byType: [],
@@ -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/useCustomers.ts
5
- var o = "\n query ListCustomers($filter: CustomerFilterInput, $pagination: PaginationInput) {\n customers(filter: $filter, pagination: $pagination) {\n id\n name\n email\n phone\n type\n company\n address\n businessLicense\n taxId\n rating\n createdAt\n updatedAt\n deletedAt\n }\n }\n", s = "\n query GetCustomer($id: ID!) {\n customer(id: $id) {\n id\n name\n email\n phone\n type\n company\n address\n businessLicense\n taxId\n rating\n createdAt\n updatedAt\n deletedAt\n }\n }\n", c = "\n mutation CreateCustomer($input: CreateCustomerInput!) {\n createCustomer(input: $input) {\n id\n name\n email\n phone\n type\n company\n address\n businessLicense\n taxId\n rating\n createdAt\n updatedAt\n deletedAt\n }\n }\n", l = "\n mutation UpdateCustomer($id: ID!, $input: UpdateCustomerInput!) {\n updateCustomer(id: $id, input: $input) {\n id\n name\n email\n phone\n type\n company\n address\n businessLicense\n taxId\n rating\n createdAt\n updatedAt\n deletedAt\n }\n }\n", u = "\n mutation DeleteCustomer($id: ID!) {\n deleteCustomer(id: $id)\n }\n";
5
+ var o = "\n query ListCustomers($filter: CustomerFilterInput, $pagination: PaginationInput) {\n customers(filter: $filter, pagination: $pagination) {\n id\n name\n email\n phone\n type\n company\n address\n businessLicense\n taxId\n rating\n createdAt\n updatedAt\n deletedAt\n }\n customersCount(filter: $filter)\n }\n", s = "\n query GetCustomer($id: ID!) {\n customer(id: $id) {\n id\n name\n email\n phone\n type\n company\n address\n businessLicense\n taxId\n rating\n createdAt\n updatedAt\n deletedAt\n }\n }\n", c = "\n mutation CreateCustomer($input: CreateCustomerInput!) {\n createCustomer(input: $input) {\n id\n name\n email\n phone\n type\n company\n address\n businessLicense\n taxId\n rating\n createdAt\n updatedAt\n deletedAt\n }\n }\n", l = "\n mutation UpdateCustomer($id: ID!, $input: UpdateCustomerInput!) {\n updateCustomer(id: $id, input: $input) {\n id\n name\n email\n phone\n type\n company\n address\n businessLicense\n taxId\n rating\n createdAt\n updatedAt\n deletedAt\n }\n }\n", u = "\n mutation DeleteCustomer($id: ID!) {\n deleteCustomer(id: $id)\n }\n";
6
6
  function d(e) {
7
7
  return {
8
8
  id: e.id,
@@ -34,7 +34,7 @@ function f(s = {}) {
34
34
  f?.isActive,
35
35
  f?.search,
36
36
  f?.type
37
- ]), { apiGatewayUrl: g, authToken: _, workspaceToken: v, workspaceId: y, tenantId: b, currentUser: x } = e(), [S, C] = a([]), [w, T] = a(!1), [E, D] = a(!1), [O, k] = a(null), A = i(() => ({
37
+ ]), { apiGatewayUrl: g, authToken: _, workspaceToken: v, workspaceId: y, tenantId: b, currentUser: x } = e(), [S, C] = a([]), [w, T] = a(0), [E, D] = a(!1), [O, k] = a(!1), [A, j] = a(null), M = i(() => ({
38
38
  apiGatewayUrl: g,
39
39
  authToken: _,
40
40
  workspaceToken: v,
@@ -48,10 +48,10 @@ function f(s = {}) {
48
48
  y,
49
49
  b,
50
50
  x?.id
51
- ]), j = n(async () => {
52
- D(!0), k(null);
51
+ ]), N = n(async () => {
52
+ k(!0), j(null);
53
53
  try {
54
- let e = (await t(A, o, {
54
+ let e = await t(M, o, {
55
55
  filter: {
56
56
  type: h?.type,
57
57
  search: h?.search
@@ -60,68 +60,64 @@ function f(s = {}) {
60
60
  limit: p,
61
61
  offset: m
62
62
  }
63
- })).customers;
64
- T(e.length === p);
65
- let n = e.map(d);
66
- h?.isActive !== void 0 && (n = n.filter((e) => e.isActive === h.isActive)), C(n);
63
+ }), n = e.customers;
64
+ T(e.customersCount), D(m + n.length < e.customersCount), C(n.map(d));
67
65
  } catch (e) {
68
- k(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load customers"));
66
+ j(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load customers"));
69
67
  } finally {
70
- D(!1);
68
+ k(!1);
71
69
  }
72
70
  }, [
73
71
  h,
74
- A,
72
+ M,
75
73
  p,
76
74
  m
77
75
  ]);
78
- r(() => {
79
- j();
80
- }, [j]);
81
- let M = n(() => {
82
- j();
83
- }, [j]), N = n(async (e) => {
84
- let n = d((await t(A, c, { input: {
85
- name: e.name,
86
- email: e.email,
87
- phone: e.phone,
88
- type: e.type ?? "b2c",
89
- company: e.company,
90
- address: e.address,
91
- businessLicense: e.businessLicense,
92
- taxId: e.taxId,
93
- rating: e.rating
94
- } })).createCustomer);
95
- return C((e) => [n, ...e]), n;
96
- }, [A]), P = n(async (e, n) => {
97
- let r = d((await t(A, l, {
98
- id: e,
99
- input: {
100
- name: n.name,
101
- email: n.email,
102
- phone: n.phone,
103
- type: n.type,
104
- company: n.company,
105
- address: n.address,
106
- businessLicense: n.businessLicense,
107
- taxId: n.taxId,
108
- rating: n.rating
109
- }
110
- })).updateCustomer);
111
- return C((t) => t.map((t) => t.id === e ? r : t)), r;
112
- }, [A]), F = n(async (e) => {
113
- await t(A, u, { id: e }), C((t) => t.filter((t) => t.id !== e));
114
- }, [A]);
115
- return {
76
+ return r(() => {
77
+ N();
78
+ }, [N]), {
116
79
  customers: S,
117
- totalCustomers: S.length,
118
- hasMore: w,
119
- isLoading: E,
120
- error: O,
121
- refetch: M,
122
- createCustomer: N,
123
- updateCustomer: P,
124
- deleteCustomer: F
80
+ totalCustomers: w,
81
+ hasMore: E,
82
+ isLoading: O,
83
+ error: A,
84
+ refetch: n(() => {
85
+ N();
86
+ }, [N]),
87
+ createCustomer: n(async (e) => {
88
+ let n = d((await t(M, c, { input: {
89
+ name: e.name,
90
+ email: e.email,
91
+ phone: e.phone,
92
+ type: e.type ?? "b2c",
93
+ company: e.company,
94
+ address: e.address,
95
+ businessLicense: e.businessLicense,
96
+ taxId: e.taxId,
97
+ rating: e.rating
98
+ } })).createCustomer);
99
+ return C((e) => [n, ...e]), n;
100
+ }, [M]),
101
+ updateCustomer: n(async (e, n) => {
102
+ let r = d((await t(M, l, {
103
+ id: e,
104
+ input: {
105
+ name: n.name,
106
+ email: n.email,
107
+ phone: n.phone,
108
+ type: n.type,
109
+ company: n.company,
110
+ address: n.address,
111
+ businessLicense: n.businessLicense,
112
+ taxId: n.taxId,
113
+ rating: n.rating
114
+ }
115
+ })).updateCustomer);
116
+ return C((t) => t.map((t) => t.id === e ? r : t)), r;
117
+ }, [M]),
118
+ deleteCustomer: n(async (e) => {
119
+ await t(M, u, { id: e }), C((t) => t.filter((t) => t.id !== e));
120
+ }, [M])
125
121
  };
126
122
  }
127
123
  function p(o) {
@@ -165,26 +161,46 @@ function p(o) {
165
161
  }, [S])
166
162
  };
167
163
  }
168
- function m() {
169
- let { customers: e, isLoading: t, error: n } = f({
170
- limit: 500,
171
- offset: 0
172
- });
173
- return {
174
- stats: i(() => {
175
- let t = e.length, n = e.filter((e) => e.type === "b2b").length, r = t - n, i = e.filter((e) => e.isActive).length, a = e.reduce((e, t) => e + t.rating, 0);
176
- return {
177
- total: t,
178
- b2b: n,
179
- b2c: r,
180
- active: i,
181
- inactive: t - i,
182
- avgRating: t > 0 ? a / t : 0
183
- };
184
- }, [e]),
185
- isLoading: t,
186
- error: n
164
+ var m = "\n query CustomerStats {\n customerStats {\n total\n b2b\n b2c\n active\n inactive\n avgRating\n }\n }\n";
165
+ function h() {
166
+ let { apiGatewayUrl: n, authToken: o, workspaceToken: s, workspaceId: c, tenantId: l, currentUser: u } = e(), d = i(() => ({
167
+ apiGatewayUrl: n,
168
+ authToken: o,
169
+ workspaceToken: s,
170
+ workspaceId: c,
171
+ tenantId: l,
172
+ actorId: u?.id
173
+ }), [
174
+ n,
175
+ o,
176
+ s,
177
+ c,
178
+ l,
179
+ u?.id
180
+ ]), [f, p] = a({
181
+ total: 0,
182
+ b2b: 0,
183
+ b2c: 0,
184
+ active: 0,
185
+ inactive: 0,
186
+ avgRating: 0
187
+ }), [h, g] = a(!1), [_, v] = a(null);
188
+ return r(() => {
189
+ (async () => {
190
+ g(!0), v(null);
191
+ try {
192
+ p((await t(d, m)).customerStats);
193
+ } catch (e) {
194
+ v(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load customer stats"));
195
+ } finally {
196
+ g(!1);
197
+ }
198
+ })();
199
+ }, [d]), {
200
+ stats: f,
201
+ isLoading: h,
202
+ error: _
187
203
  };
188
204
  }
189
205
  //#endregion
190
- export { p as useCustomer, m as useCustomerStats, f as useCustomers };
206
+ export { p as useCustomer, h as useCustomerStats, f as useCustomers };
@@ -0,0 +1,11 @@
1
+ import { useEffect as e, useState as t } from "react";
2
+ //#region src/movethewheels/hooks/useDebouncedValue.ts
3
+ function n(n, r = 300) {
4
+ let [i, a] = t(n);
5
+ return e(() => {
6
+ let e = window.setTimeout(() => a(n), r);
7
+ return () => window.clearTimeout(e);
8
+ }, [n, r]), i;
9
+ }
10
+ //#endregion
11
+ export { n as useDebouncedValue };
@@ -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/useEntityDocuments.ts
5
- var o = "\n query ListEntityDocuments($filter: FileFilterInput, $pagination: PaginationInput) {\n getFiles(filter: $filter, pagination: $pagination) {\n files {\n id\n name\n size\n mimeType\n createdAt\n downloadUrl\n }\n }\n }\n";
5
+ var o = "\n query ListEntityDocuments($filter: FileFilterInput, $pagination: PaginationInput) {\n getFiles(filter: $filter, pagination: $pagination) {\n files {\n id\n name\n size\n mimeType\n createdAt\n downloadUrl\n }\n hasMore\n }\n }\n";
6
6
  function s(e) {
7
7
  return {
8
8
  id: e.id,
@@ -14,7 +14,7 @@ function s(e) {
14
14
  };
15
15
  }
16
16
  function c(c, l) {
17
- let { apiGatewayUrl: u, authToken: d, workspaceToken: f, workspaceId: p, tenantId: m, currentUser: h } = e(), [g, _] = a([]), [v, y] = a(!1), [b, x] = a(null), S = i(() => ({
17
+ let { apiGatewayUrl: u, authToken: d, workspaceToken: f, workspaceId: p, tenantId: m, currentUser: h } = e(), [g, _] = a([]), [v, y] = a(!1), [b, x] = a(0), [S, C] = a(!1), [w, T] = a(null), E = i(() => ({
18
18
  apiGatewayUrl: u,
19
19
  authToken: d,
20
20
  workspaceToken: f,
@@ -28,14 +28,14 @@ function c(c, l) {
28
28
  p,
29
29
  m,
30
30
  h?.id
31
- ]), C = n(async () => {
31
+ ]), D = n(async (e = 0, n = !1) => {
32
32
  if (!l) {
33
- _([]);
33
+ _([]), y(!1), x(0);
34
34
  return;
35
35
  }
36
- y(!0), x(null);
36
+ C(!0), T(null);
37
37
  try {
38
- _(((await t(S, o, {
38
+ let r = await t(E, o, {
39
39
  filter: { tags: [{
40
40
  key: "mtwEntityType",
41
41
  label: c
@@ -44,29 +44,39 @@ function c(c, l) {
44
44
  label: l
45
45
  }] },
46
46
  pagination: {
47
- limit: 50,
48
- offset: 0
47
+ limit: 20,
48
+ offset: e
49
49
  }
50
- })).getFiles?.files ?? []).map(s));
50
+ }), i = (r.getFiles?.files ?? []).map(s);
51
+ _((e) => n ? [...e, ...i] : i), y(r.getFiles?.hasMore ?? i.length === 20), x(e);
51
52
  } catch (e) {
52
- x(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load documents")), _([]);
53
+ T(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load documents")), n || _([]);
53
54
  } finally {
54
- y(!1);
55
+ C(!1);
55
56
  }
56
57
  }, [
57
58
  l,
58
59
  c,
59
- S
60
+ E
60
61
  ]);
61
62
  return r(() => {
62
- C();
63
- }, [C]), {
63
+ D();
64
+ }, [D]), {
64
65
  documents: g,
65
- isLoading: v,
66
- error: b,
66
+ hasMore: v,
67
+ isLoading: S,
68
+ error: w,
67
69
  refetch: n(() => {
68
- C();
69
- }, [C])
70
+ D(0, !1);
71
+ }, [D]),
72
+ loadMore: n(() => {
73
+ !v || S || D(b + 20, !0);
74
+ }, [
75
+ v,
76
+ S,
77
+ D,
78
+ b
79
+ ])
70
80
  };
71
81
  }
72
82
  //#endregion
@@ -8,7 +8,7 @@ var o = "\n id\n deliveryJobId\n shipmentId\n recipientName\n signatureType
8
8
  ${o}
9
9
  }
10
10
  }
11
- `, c = "\n query MyPendingEpodDeliveryJobs($pagination: PaginationInput) {\n myPendingEpodDeliveryJobs(pagination: $pagination) {\n id\n deliveryJobNumber\n status\n priority\n deliveryAddress\n scheduledDelivery\n customer {\n name\n phone\n }\n }\n }\n", l = `
11
+ `, c = "\n query MyPendingEpodDeliveryJobs($pagination: PaginationInput) {\n myPendingEpodDeliveryJobs(pagination: $pagination) {\n id\n deliveryJobNumber\n status\n priority\n deliveryAddress\n scheduledDelivery\n customer {\n name\n phone\n }\n }\n myPendingEpodDeliveryJobsCount\n }\n", l = `
12
12
  mutation CaptureEpod($input: CaptureEpodInput!) {
13
13
  captureEpod(input: $input) {
14
14
  ${o}
@@ -78,14 +78,15 @@ function _(e) {
78
78
  refetch: p
79
79
  };
80
80
  }
81
- function v() {
82
- let e = g(), [i, o] = a([]), [s, l] = a(!1), [u, d] = a(null), f = n(async () => {
83
- l(!0), d(null);
81
+ function v(e = {}) {
82
+ let { limit: i = 20, offset: o = 0 } = e, s = g(), [l, u] = a([]), [d, f] = a(0), [p, m] = a(!1), [h, _] = a(!1), [v, y] = a(null), b = n(async () => {
83
+ _(!0), y(null);
84
84
  try {
85
- o((await t(e, c, { pagination: {
86
- limit: 50,
87
- offset: 0
88
- } })).myPendingEpodDeliveryJobs.map((e) => ({
85
+ let e = await t(s, c, { pagination: {
86
+ limit: i,
87
+ offset: o
88
+ } });
89
+ f(e.myPendingEpodDeliveryJobsCount ?? 0), m(o + e.myPendingEpodDeliveryJobs.length < e.myPendingEpodDeliveryJobsCount), u(e.myPendingEpodDeliveryJobs.map((e) => ({
89
90
  id: e.id,
90
91
  deliveryJobNumber: e.deliveryJobNumber,
91
92
  status: e.status,
@@ -96,18 +97,24 @@ function v() {
96
97
  customerPhone: e.customer?.phone ?? void 0
97
98
  })));
98
99
  } catch (e) {
99
- d(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load pending deliveries")), o([]);
100
+ y(e instanceof Error ? e : /* @__PURE__ */ Error("Failed to load pending deliveries")), u([]);
100
101
  } finally {
101
- l(!1);
102
+ _(!1);
102
103
  }
103
- }, [e]);
104
+ }, [
105
+ s,
106
+ i,
107
+ o
108
+ ]);
104
109
  return r(() => {
105
- f();
106
- }, [f]), {
107
- jobs: i,
108
- isLoading: s,
109
- error: u,
110
- refetch: f
110
+ b();
111
+ }, [b]), {
112
+ jobs: l,
113
+ totalJobs: d,
114
+ hasMore: p,
115
+ isLoading: h,
116
+ error: v,
117
+ refetch: b
111
118
  };
112
119
  }
113
120
  function y() {