@burdenoff/microfe-movethewheels 2026.703.2 → 2026.703.4

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 (126) hide show
  1. package/dist/{AIAssistantPage-C3cPsWt-.js → AIAssistantPage-3YOnHO9Y.js} +3 -3
  2. package/dist/{AnalyticsPage-Dz6g2MvK.js → AnalyticsPage-CMpI1070.js} +11 -11
  3. package/dist/CreateOrderPage-DRAgGo9i.js +490 -0
  4. package/dist/CustomerDetailsPage-BCeMmOFe.js +615 -0
  5. package/dist/{CustomersPage-2Y05LVyh.js → CustomersPage-CaNBMXmM.js} +64 -53
  6. package/dist/{DashboardPage-BVjQi0EB.js → DashboardPage-DIKlXde3.js} +16 -16
  7. package/dist/DataTable-XvUcTjwi.js +340 -0
  8. package/dist/DocumentsCard-U2lSe-cn.js +169 -0
  9. package/dist/{DriverDetailsPage-CN3WQ0B9.js → DriverDetailsPage-BQrYd_Lp.js} +178 -195
  10. package/dist/{DriversPage-B0Zpx8OQ.js → DriversPage-PYmdFiby.js} +65 -54
  11. package/dist/FinancePage-Cwh9Bw4M.js +136 -0
  12. package/dist/{FleetPage-DqkFi3s3.js → FleetPage-3ZHsB-TN.js} +23 -22
  13. package/dist/{FormError-BlOjnXOq.js → FormError-cuLV2jVD.js} +1 -1
  14. package/dist/{ImportExportPage-DKJRCezl.js → ImportExportPage-C6f7DqhM.js} +50 -70
  15. package/dist/{InventoryPage-DwfgCUQq.js → InventoryPage-DpiqVu1v.js} +9 -9
  16. package/dist/{LiveTrackingPage-DCX-K-LR.js → LiveTrackingPage-FAzzlVnX.js} +9 -9
  17. package/dist/MarketplacePage-Bh_2ns4v.js +426 -0
  18. package/dist/Notice-CSoDYKw9.js +46 -0
  19. package/dist/OrderDetailsPage-zCj0lW0j.js +584 -0
  20. package/dist/{OrdersListPage-BjDlCKJd.js → OrdersListPage-CAMsuUck.js} +166 -89
  21. package/dist/{ProductDetailsPage-C9uOiYLp.js → ProductDetailsPage-wsxAQkA0.js} +12 -12
  22. package/dist/{ProductsPage-C1G9h7Xd.js → ProductsPage-DC5qDLfz.js} +60 -49
  23. package/dist/ReportsPage-BwUJ37eO.js +356 -0
  24. package/dist/RouteDetailsPage-DyMJE9AS.js +583 -0
  25. package/dist/{RoutesPage-DMfoicM1.js → RoutesPage-Dtc669yc.js} +57 -46
  26. package/dist/{SettingsPage-Bn-v0mbQ.js → SettingsPage-CpH9xhQg.js} +5 -27
  27. package/dist/{TrackingPage-W-jtdM3Y.js → TrackingPage-DaNEFG_h.js} +10 -10
  28. package/dist/{VehicleDetailsPage-Bceo5oz3.js → VehicleDetailsPage-DldYNsYV.js} +125 -142
  29. package/dist/{VehiclesPage-VBtOep91.js → VehiclesPage-BFw13iMt.js} +61 -50
  30. package/dist/{WarehouseDetailsPage-L_6sWigM.js → WarehouseDetailsPage-CMG7or6G.js} +17 -17
  31. package/dist/{WarehousesPage-DCbXXXWE.js → WarehousesPage-Wkytnt86.js} +58 -47
  32. package/dist/arrow-right-Q3XQpTPR.js +11 -0
  33. package/dist/arrow-up-xNF1zJUG.js +17 -0
  34. package/dist/chevron-left-B2_r0Elx.js +8 -0
  35. package/dist/{wrench-CANXWxF-.js → fuel-B6_lnKDs.js} +2 -5
  36. package/dist/index.js +163 -174
  37. package/dist/upload-CHZofOqb.js +21 -0
  38. package/dist/{useAnalytics-DS8n0xgg.js → useAnalytics-D7HW2XRb.js} +52 -2
  39. package/dist/{useCustomers-BmTNGxiI.js → useCustomers-BPW4__PR.js} +29 -26
  40. package/dist/{useFleet-DKqXZ16m.js → useFleet-ChBkxAd6.js} +81 -69
  41. package/dist/{useInventory-DkyiVY_A.js → useInventory-CAAVMRp6.js} +83 -38
  42. package/dist/{useOrders-Cfk1GLiq.js → useOrders-B465S2nt.js} +58 -47
  43. package/dist/{useReports-CTqZr-AB.js → useReports-jQ3GpNOm.js} +40 -34
  44. package/dist/{useRoutes-BQWO607N.js → useRoutes-hS3d5-xr.js} +49 -41
  45. package/dist/{useTracking-B-va1kO3.js → useTracking-RjGz9PZG.js} +2 -2
  46. package/dist/user-check-BEKRCi7v.js +20 -0
  47. package/dist/wrench-q_rgJfaP.js +8 -0
  48. package/dist/x-tMeDMcCw.js +11 -0
  49. package/package.json +1 -1
  50. package/src/movethewheels/components/DataTable.tsx +252 -84
  51. package/src/movethewheels/components/DocumentsCard.tsx +102 -0
  52. package/src/movethewheels/components/Notice.tsx +61 -0
  53. package/src/movethewheels/components/index.ts +7 -0
  54. package/src/movethewheels/hooks/index.ts +9 -0
  55. package/src/movethewheels/hooks/useAnalytics.ts +95 -0
  56. package/src/movethewheels/hooks/useCustomers.ts +11 -4
  57. package/src/movethewheels/hooks/useEntityDocuments.ts +132 -0
  58. package/src/movethewheels/hooks/useFleet.ts +26 -7
  59. package/src/movethewheels/hooks/useInventory.ts +70 -7
  60. package/src/movethewheels/hooks/useOrders.ts +32 -2
  61. package/src/movethewheels/hooks/useReports.ts +14 -4
  62. package/src/movethewheels/hooks/useRoutes.ts +20 -3
  63. package/src/movethewheels/pages/AnalyticsPage.tsx +2 -2
  64. package/src/movethewheels/pages/CreateOrderPage.tsx +44 -16
  65. package/src/movethewheels/pages/CustomerDetailsPage.tsx +239 -33
  66. package/src/movethewheels/pages/CustomersPage.tsx +27 -11
  67. package/src/movethewheels/pages/DriverDetailsPage.tsx +16 -30
  68. package/src/movethewheels/pages/DriversPage.tsx +26 -9
  69. package/src/movethewheels/pages/FinancePage.tsx +67 -84
  70. package/src/movethewheels/pages/InventoryPage.tsx +1 -1
  71. package/src/movethewheels/pages/MarketplacePage.tsx +265 -50
  72. package/src/movethewheels/pages/OrderDetailsPage.tsx +214 -10
  73. package/src/movethewheels/pages/OrdersListPage.tsx +77 -14
  74. package/src/movethewheels/pages/ProductsPage.tsx +27 -7
  75. package/src/movethewheels/pages/ReportsPage.tsx +65 -4
  76. package/src/movethewheels/pages/RouteDetailsPage.tsx +74 -13
  77. package/src/movethewheels/pages/RoutesPage.tsx +22 -6
  78. package/src/movethewheels/pages/SettingsPage.tsx +3 -19
  79. package/src/movethewheels/pages/VehicleDetailsPage.tsx +3 -33
  80. package/src/movethewheels/pages/VehiclesPage.tsx +26 -5
  81. package/src/movethewheels/pages/WarehousesPage.tsx +22 -17
  82. package/src/movethewheels/types/index.ts +8 -0
  83. package/src/movethewheels/utils/download.ts +62 -0
  84. package/dist/CreateOrderPage-C5iwnjp4.js +0 -479
  85. package/dist/CustomerDetailsPage-B6nwFyLO.js +0 -406
  86. package/dist/DataTable-DmciIKKM.js +0 -249
  87. package/dist/FinancePage-DEDykSOP.js +0 -158
  88. package/dist/MarketplacePage-CIQ97_zp.js +0 -247
  89. package/dist/OrderDetailsPage-DYiZ-9UK.js +0 -429
  90. package/dist/ReportsPage-Zp53q3_8.js +0 -284
  91. package/dist/RouteDetailsPage-DUStXSf9.js +0 -531
  92. /package/dist/{MetricCard-BY0QrMD4.js → MetricCard-CVBVpu7o.js} +0 -0
  93. /package/dist/{StatusBadge-BZurYHMy.js → StatusBadge-C87mDpDP.js} +0 -0
  94. /package/dist/{box-D9Pal4HM.js → box-Eu05PXDh.js} +0 -0
  95. /package/dist/{chart-column-BFIJysDR.js → chart-column-ouzgxIv_.js} +0 -0
  96. /package/dist/{chevron-right-EMIIyyJ1.js → chevron-right-eV4LjaSi.js} +0 -0
  97. /package/dist/{circle-alert-iY24lSlp.js → circle-alert-Bzh2DBSF.js} +0 -0
  98. /package/dist/{circle-check-big-w0TrLKMF.js → circle-check-big-CGMSpQmD.js} +0 -0
  99. /package/dist/{clock-DJZtdl8u.js → clock-Bl3ptexL.js} +0 -0
  100. /package/dist/{dollar-sign-CgKQRz_e.js → dollar-sign-CAVU95SO.js} +0 -0
  101. /package/dist/{download-DRXxoiQR.js → download-C5NbvVDc.js} +0 -0
  102. /package/dist/{file-text-DWWY6_f5.js → file-text-D-1uvLZG.js} +0 -0
  103. /package/dist/{filter-DloLC2eE.js → filter-DUfUg6BO.js} +0 -0
  104. /package/dist/{formatters-CF2S2l1m.js → formatters-BQr-aR5W.js} +0 -0
  105. /package/dist/{map-CkJaULb2.js → map-C-M-FQLR.js} +0 -0
  106. /package/dist/{map-pin-BGiCvyCs.js → map-pin-Dznl5l40.js} +0 -0
  107. /package/dist/{navigation-D36prnAn.js → navigation-BJSJl-VG.js} +0 -0
  108. /package/dist/{package-BChUzpJS.js → package-CcRttV2N.js} +0 -0
  109. /package/dist/{phone-Ac9s3mo_.js → phone-DVSZHt_j.js} +0 -0
  110. /package/dist/{plus-Z76q-FZm.js → plus-C_XZDwBz.js} +0 -0
  111. /package/dist/{refresh-cw-DKt6f5T6.js → refresh-cw-CfgN67l3.js} +0 -0
  112. /package/dist/{save-CojywNhG.js → save-DJE8Fpdv.js} +0 -0
  113. /package/dist/{search-CDGefqb3.js → search-D_VyGcZT.js} +0 -0
  114. /package/dist/{square-pen-CopE9GmB.js → square-pen-D-6JYrVQ.js} +0 -0
  115. /package/dist/{star-nHlLjDKR.js → star-BpRlUZuU.js} +0 -0
  116. /package/dist/{store-BR9Voi5E.js → store-B-8HMuyZ.js} +0 -0
  117. /package/dist/{trash-2-BKhar6Hs.js → trash-2-8vmv-XV_.js} +0 -0
  118. /package/dist/{trending-up-Dohgd4t_.js → trending-up-Dz6PqPRj.js} +0 -0
  119. /package/dist/{triangle-alert-i-XQL9Rd.js → triangle-alert-D7Y3J_4z.js} +0 -0
  120. /package/dist/{truck-C0v_hbLR.js → truck-D-y2IDzv.js} +0 -0
  121. /package/dist/{useAssistant-D4v3oxD3.js → useAssistant-DVW4QgQb.js} +0 -0
  122. /package/dist/{useImportExport-DHr-SWSw.js → useImportExport-DrPDHEDK.js} +0 -0
  123. /package/dist/{useSettings-CkDH_-gM.js → useSettings-BB8X2RLh.js} +0 -0
  124. /package/dist/{user-jyFU3lXk.js → user-DzfTn4dE.js} +0 -0
  125. /package/dist/{users-DZ-ilS6B.js → users-CCrq-w0C.js} +0 -0
  126. /package/dist/{warehouse-6m5kXMLu.js → warehouse-CaqfmMKh.js} +0 -0
@@ -1,284 +0,0 @@
1
- import { B as e, F as t, I as n, L as r, P as i, R as a, d as o, f as s, g as c, h as l, i as u, l as d, lt as f, u as p } from "./PageLayout-D4LDHJJq.js";
2
- import { t as m } from "./clock-DJZtdl8u.js";
3
- import { t as h } from "./download-DRXxoiQR.js";
4
- import { t as g } from "./filter-DloLC2eE.js";
5
- import { t as _ } from "./plus-Z76q-FZm.js";
6
- import { t as v } from "./useReports-CTqZr-AB.js";
7
- import { r as y } from "./formatters-CF2S2l1m.js";
8
- import { useState as b } from "react";
9
- import { jsx as x, jsxs as S } from "react/jsx-runtime";
10
- import { EmphasisPanel as C, IllustratedEmptyState as w, PagePurpose as T } from "@burdenoff/fe-libs/ui";
11
- //#region node_modules/lucide-react/dist/esm/icons/calendar.js
12
- var E = f("Calendar", [
13
- ["path", {
14
- d: "M8 2v4",
15
- key: "1cmpym"
16
- }],
17
- ["path", {
18
- d: "M16 2v4",
19
- key: "4m81vk"
20
- }],
21
- ["rect", {
22
- width: "18",
23
- height: "18",
24
- x: "3",
25
- y: "4",
26
- rx: "2",
27
- key: "1hopcy"
28
- }],
29
- ["path", {
30
- d: "M3 10h18",
31
- key: "8toen8"
32
- }]
33
- ]), D = f("FileChartColumnIncreasing", [
34
- ["path", {
35
- d: "M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",
36
- key: "1rqfz7"
37
- }],
38
- ["path", {
39
- d: "M14 2v4a2 2 0 0 0 2 2h4",
40
- key: "tnqrlb"
41
- }],
42
- ["path", {
43
- d: "M8 18v-2",
44
- key: "qcmpov"
45
- }],
46
- ["path", {
47
- d: "M12 18v-4",
48
- key: "q1q25u"
49
- }],
50
- ["path", {
51
- d: "M16 18v-6",
52
- key: "15y0np"
53
- }]
54
- ]), O = [
55
- {
56
- value: "operations",
57
- label: "Operations Summary"
58
- },
59
- {
60
- value: "finance",
61
- label: "Financial Report"
62
- },
63
- {
64
- value: "fleet",
65
- label: "Fleet Utilization"
66
- },
67
- {
68
- value: "customers",
69
- label: "Customer Analytics"
70
- },
71
- {
72
- value: "inventory",
73
- label: "Inventory Status"
74
- }
75
- ];
76
- function k() {
77
- let { reports: f, isLoading: k, error: A, refetch: j, createReport: M, generateReport: N } = v(), [P, F] = b("operations"), [I, L] = b(null), [R, z] = b(!1), [B, V] = b(null), H = (e) => O.find((t) => t.value === e)?.label ?? e, U = async (e) => {
78
- z(!0), V(null);
79
- let t = {
80
- name: `${H(P)}${e ? " (Scheduled)" : ""}`,
81
- type: P,
82
- description: `${H(P)} generated from live operational data`,
83
- ...e ? { schedule: e } : {}
84
- };
85
- try {
86
- await M(t), V({
87
- tone: "success",
88
- text: e ? "Scheduled report created." : "Report created."
89
- });
90
- } catch (e) {
91
- V({
92
- tone: "error",
93
- text: e instanceof Error ? e.message : "Could not create report."
94
- });
95
- } finally {
96
- z(!1);
97
- }
98
- }, W = async (e) => {
99
- L(e), V(null);
100
- try {
101
- await N(e), V({
102
- tone: "success",
103
- text: "Report generated."
104
- });
105
- } catch (e) {
106
- V({
107
- tone: "error",
108
- text: e instanceof Error ? e.message : "Could not generate report."
109
- });
110
- } finally {
111
- L(null);
112
- }
113
- }, G = f.filter((e) => e.schedule);
114
- return /* @__PURE__ */ S(u, {
115
- title: "Reports",
116
- subtitle: "Generate and schedule reports",
117
- icon: /* @__PURE__ */ x(D, { size: 24 }),
118
- headerActions: /* @__PURE__ */ S("div", {
119
- className: "flex gap-2",
120
- children: [/* @__PURE__ */ S(i, {
121
- value: P,
122
- onValueChange: F,
123
- children: [/* @__PURE__ */ x(r, {
124
- className: "w-[190px]",
125
- children: /* @__PURE__ */ x(a, {})
126
- }), /* @__PURE__ */ x(t, { children: O.map((e) => /* @__PURE__ */ x(n, {
127
- value: e.value,
128
- children: e.label
129
- }, e.value)) })]
130
- }), /* @__PURE__ */ S(p, {
131
- onClick: () => void U(),
132
- disabled: R,
133
- children: [/* @__PURE__ */ x(_, { size: 16 }), " Create Report"]
134
- })]
135
- }),
136
- children: [
137
- /* @__PURE__ */ x(T, {
138
- icon: /* @__PURE__ */ x(D, { size: 18 }),
139
- children: "Turn your operational data into shareable summaries. Generate one-off reports on orders, finance, fleet, customers or inventory, or schedule them to land in inboxes automatically — so stakeholders always have the latest numbers without logging in."
140
- }),
141
- B && /* @__PURE__ */ x("div", {
142
- role: "status",
143
- className: `rounded-lg p-3 text-sm ${B.tone === "success" ? "bg-status-success-bg-subtle text-status-success-text" : "bg-status-error-bg-subtle text-status-error-text"}`,
144
- children: B.text
145
- }),
146
- /* @__PURE__ */ S("div", {
147
- className: "grid grid-cols-1 lg:grid-cols-3 gap-6",
148
- children: [/* @__PURE__ */ S("div", {
149
- className: "lg:col-span-2 space-y-4",
150
- children: [/* @__PURE__ */ x("h3", {
151
- className: "font-semibold",
152
- children: "Available Reports"
153
- }), k ? /* @__PURE__ */ x("div", {
154
- className: "space-y-3",
155
- children: Array.from({ length: 3 }).map((t, n) => /* @__PURE__ */ x(e, { className: "h-20 w-full rounded-lg" }, n))
156
- }) : A ? /* @__PURE__ */ x(o, {
157
- className: "border-status-error-border",
158
- children: /* @__PURE__ */ S(s, {
159
- className: "p-6 text-center space-y-3",
160
- children: [
161
- /* @__PURE__ */ x("p", {
162
- className: "text-status-error-text font-medium",
163
- children: "Couldn't load reports"
164
- }),
165
- /* @__PURE__ */ x("p", {
166
- className: "text-sm text-text-secondary",
167
- children: A.message
168
- }),
169
- /* @__PURE__ */ x(p, {
170
- variant: "outline",
171
- onClick: j,
172
- children: "Retry"
173
- })
174
- ]
175
- })
176
- }) : f.length === 0 ? /* @__PURE__ */ x(o, { children: /* @__PURE__ */ x(s, {
177
- className: "p-0",
178
- children: /* @__PURE__ */ x(w, {
179
- illustration: "empty-data",
180
- title: "No reports yet",
181
- description: "Create your first report to turn live operational data into a shareable summary.",
182
- action: /* @__PURE__ */ S(p, {
183
- onClick: () => void U(),
184
- disabled: R,
185
- children: [/* @__PURE__ */ x(_, {
186
- size: 16,
187
- className: "mr-1.5"
188
- }), " Create Report"]
189
- })
190
- })
191
- }) }) : f.map((e) => /* @__PURE__ */ x(o, { children: /* @__PURE__ */ x(s, {
192
- className: "p-4",
193
- children: /* @__PURE__ */ S("div", {
194
- className: "flex items-center justify-between",
195
- children: [/* @__PURE__ */ S("div", {
196
- className: "flex items-center gap-3",
197
- children: [/* @__PURE__ */ x("div", {
198
- className: "w-10 h-10 rounded-lg bg-action-primary-bg/10 flex items-center justify-center",
199
- children: /* @__PURE__ */ x(D, {
200
- size: 20,
201
- className: "text-primary"
202
- })
203
- }), /* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
204
- className: "font-medium",
205
- children: e.name
206
- }), /* @__PURE__ */ x("p", {
207
- className: "text-sm text-text-secondary",
208
- children: e.description ?? H(e.type)
209
- })] })]
210
- }), /* @__PURE__ */ S("div", {
211
- className: "flex items-center gap-3",
212
- children: [/* @__PURE__ */ S("div", {
213
- className: "text-right",
214
- children: [/* @__PURE__ */ x(d, {
215
- variant: "outline",
216
- children: e.schedule ?? "On demand"
217
- }), e.lastGenerated && /* @__PURE__ */ S("p", {
218
- className: "text-xs text-text-secondary mt-1",
219
- children: ["Last: ", y(new Date(e.lastGenerated), "short")]
220
- })]
221
- }), /* @__PURE__ */ x(p, {
222
- variant: "outline",
223
- size: "sm",
224
- "aria-label": `Generate ${e.name}`,
225
- disabled: I === e.id,
226
- onClick: () => void W(e.id),
227
- children: /* @__PURE__ */ x(h, { size: 14 })
228
- })]
229
- })]
230
- })
231
- }) }, e.id))]
232
- }), /* @__PURE__ */ S("div", {
233
- className: "space-y-6",
234
- children: [/* @__PURE__ */ S(C, {
235
- className: "space-y-3",
236
- children: [
237
- /* @__PURE__ */ S("h2", {
238
- className: "flex items-center gap-2 text-base font-semibold text-text-primary",
239
- children: [/* @__PURE__ */ x(m, { size: 18 }), " Scheduled Reports"]
240
- }),
241
- G.length === 0 ? /* @__PURE__ */ x("p", {
242
- className: "text-sm text-text-secondary",
243
- children: "No scheduled reports yet. Schedule one to have it generated automatically."
244
- }) : G.map((e) => /* @__PURE__ */ S("div", {
245
- className: "p-3 border border-border-seam rounded-lg",
246
- children: [/* @__PURE__ */ x("p", {
247
- className: "font-medium",
248
- children: e.name
249
- }), /* @__PURE__ */ S("p", {
250
- className: "text-sm text-text-secondary",
251
- children: ["Schedule: ", e.schedule]
252
- })]
253
- }, e.id)),
254
- /* @__PURE__ */ x(p, {
255
- variant: "outline",
256
- className: "w-full",
257
- disabled: R,
258
- onClick: () => void U("daily"),
259
- children: "Schedule New Report"
260
- })
261
- ]
262
- }), /* @__PURE__ */ S(o, { children: [/* @__PURE__ */ x(l, { children: /* @__PURE__ */ x(c, { children: "Quick Actions" }) }), /* @__PURE__ */ S(s, {
263
- className: "space-y-2",
264
- children: [/* @__PURE__ */ S(p, {
265
- variant: "outline",
266
- className: "w-full justify-start",
267
- disabled: R,
268
- onClick: () => void U("weekly"),
269
- children: [/* @__PURE__ */ x(E, { size: 16 }), " Schedule Report"]
270
- }), /* @__PURE__ */ S(p, {
271
- variant: "outline",
272
- className: "w-full justify-start",
273
- disabled: R,
274
- onClick: () => void U(),
275
- children: [/* @__PURE__ */ x(g, { size: 16 }), " Custom Report"]
276
- })]
277
- })] })]
278
- })]
279
- })
280
- ]
281
- });
282
- }
283
- //#endregion
284
- export { k as default };