@burdenoff/microfe-movethewheels 2026.703.4 → 2026.703.6
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.
- package/dist/{AIAssistantPage-3YOnHO9Y.js → AIAssistantPage-BmILdHgO.js} +16 -15
- package/dist/AnalyticsPage-BSlsiSDE.js +194 -0
- package/dist/{CreateOrderPage-DRAgGo9i.js → CreateOrderPage-DaCgVaO3.js} +40 -40
- package/dist/{CustomerDetailsPage-BCeMmOFe.js → CustomerDetailsPage-DErpbafW.js} +71 -71
- package/dist/CustomersPage-C1lRU6xs.js +205 -0
- package/dist/DashboardPage-Q5-5EKAU.js +542 -0
- package/dist/{DataTable-XvUcTjwi.js → DataTable-KjzbwnRL.js} +31 -31
- package/dist/{DocumentsCard-U2lSe-cn.js → DocumentsCard-T9y6cv4-.js} +25 -25
- package/dist/{DriverDetailsPage-BQrYd_Lp.js → DriverDetailsPage-DnHGkDC7.js} +64 -64
- package/dist/DriversPage-C0ujWVOn.js +221 -0
- package/dist/FinancePage-CA2XEgsQ.js +175 -0
- package/dist/{FleetPage-3ZHsB-TN.js → FleetPage-DrvXW7wK.js} +22 -22
- package/dist/{FormError-cuLV2jVD.js → FormError-CRsMP7TQ.js} +1 -1
- package/dist/{ImportExportPage-C6f7DqhM.js → ImportExportPage-Cac9HjFx.js} +12 -12
- package/dist/InventoryPage-Ezf4gqKI.js +259 -0
- package/dist/LiveTrackingPage-CzbVwDqK.js +429 -0
- package/dist/{MarketplacePage-Bh_2ns4v.js → MarketplacePage-BHDmSQmo.js} +116 -116
- package/dist/MetricCard-DQlDNqmK.js +191 -0
- package/dist/{Notice-CSoDYKw9.js → Notice-GmA7JDR3.js} +2 -2
- package/dist/{OrderDetailsPage-zCj0lW0j.js → OrderDetailsPage-CR0Wc1aN.js} +58 -58
- package/dist/OrdersListPage-C8Bu6wXM.js +386 -0
- package/dist/{PageLayout-D4LDHJJq.js → PageLayout-DX1Ou6V6.js} +164 -134
- package/dist/{ProductDetailsPage-wsxAQkA0.js → ProductDetailsPage-B_ns2MOe.js} +55 -55
- package/dist/ProductsPage-c92BsEoA.js +186 -0
- package/dist/ReportsPage-CPLXtLT2.js +377 -0
- package/dist/{RouteDetailsPage-DyMJE9AS.js → RouteDetailsPage-DOfcRiFv.js} +208 -181
- package/dist/{RoutesPage-Dtc669yc.js → RoutesPage-BZGublby.js} +12 -12
- package/dist/{SettingsPage-CpH9xhQg.js → SettingsPage-5cweX_xh.js} +15 -15
- package/dist/Sparkline-zSXvG6vA.js +16729 -0
- package/dist/{StatusBadge-C87mDpDP.js → StatusBadge-oZjownr1.js} +7 -7
- package/dist/TrackingPage-Ln9qVflK.js +368 -0
- package/dist/{VehicleDetailsPage-DldYNsYV.js → VehicleDetailsPage-CrkzE0dN.js} +53 -53
- package/dist/VehiclesPage-CTQWH7af.js +184 -0
- package/dist/{WarehouseDetailsPage-CMG7or6G.js → WarehouseDetailsPage-CwDLaG65.js} +64 -64
- package/dist/WarehousesPage-KW02DvZg.js +182 -0
- package/dist/{arrow-left-n48Y-Wis.js → arrow-left-DJDw_Yqv.js} +1 -1
- package/dist/{arrow-right-Q3XQpTPR.js → arrow-right-Cb2fLTPJ.js} +1 -1
- package/dist/{arrow-up-xNF1zJUG.js → arrow-up-PxaOIyiT.js} +1 -1
- package/dist/{box-Eu05PXDh.js → box-hSJVtvGf.js} +1 -1
- package/dist/boxes-DDnxEkT5.js +54 -0
- package/dist/{chart-column-ouzgxIv_.js → chart-column-xXgAZvRl.js} +1 -1
- package/dist/charts-CfCwQg6o.js +2018 -0
- package/dist/{chevron-left-B2_r0Elx.js → chevron-left-dhEGJYdh.js} +1 -1
- package/dist/{chevron-right-eV4LjaSi.js → chevron-right-Cud2NDvm.js} +1 -1
- package/dist/chunk-BdsCSvBP.js +20 -0
- package/dist/{circle-alert-Bzh2DBSF.js → circle-alert-Rx0p3D5w.js} +1 -1
- package/dist/circle-check-BCxRFdFo.js +13 -0
- package/dist/{circle-check-big-CGMSpQmD.js → circle-check-big-BcIJ8xjx.js} +1 -1
- package/dist/{clock-Bl3ptexL.js → clock-B2_YxJgB.js} +1 -1
- package/dist/{dollar-sign-CAVU95SO.js → dollar-sign-CQmAICv4.js} +1 -1
- package/dist/{download-C5NbvVDc.js → download-CG4Tponq.js} +1 -1
- package/dist/{file-text-D-1uvLZG.js → file-text-CzH-zMub.js} +1 -1
- package/dist/{filter-DUfUg6BO.js → filter-C0u2Lwfn.js} +1 -1
- package/dist/{fuel-B6_lnKDs.js → fuel-C2KELcM-.js} +1 -1
- package/dist/index.css +2 -0
- package/dist/index.js +214 -225
- package/dist/{map-C-M-FQLR.js → map-FuPu5aTw.js} +1 -1
- package/dist/{map-pin-Dznl5l40.js → map-pin-czpLv9uy.js} +1 -1
- package/dist/mapMarkers-NCV9MRKR.js +28 -0
- package/dist/maps-D9m7PKrs.js +5070 -0
- package/dist/{navigation-BJSJl-VG.js → navigation-D5_pdCSS.js} +1 -1
- package/dist/{package-CcRttV2N.js → package-B0sdi6lU.js} +1 -1
- package/dist/{phone-DVSZHt_j.js → phone-V2nuzPu9.js} +1 -1
- package/dist/{plus-C_XZDwBz.js → plus-BqQxkfoU.js} +1 -1
- package/dist/{refresh-cw-CfgN67l3.js → refresh-cw-CEOAPEcV.js} +1 -1
- package/dist/route-CZWcW-Dw.js +22 -0
- package/dist/{save-DJE8Fpdv.js → save-DDFvrxWl.js} +1 -1
- package/dist/{search-D_VyGcZT.js → search-D7Ya6jxj.js} +1 -1
- package/dist/{square-pen-D-6JYrVQ.js → square-pen-DoZZS4Lw.js} +1 -1
- package/dist/{star-BpRlUZuU.js → star-B7PgVu5j.js} +1 -1
- package/dist/{store-B-8HMuyZ.js → store-YVzcIG4A.js} +1 -1
- package/dist/{trash-2-8vmv-XV_.js → trash-2-BegnBzwI.js} +1 -1
- package/dist/{trending-up-Dz6PqPRj.js → trending-up-DBd3XNdb.js} +1 -1
- package/dist/{triangle-alert-D7Y3J_4z.js → triangle-alert-Bxk3Kgs6.js} +1 -1
- package/dist/{truck-D-y2IDzv.js → truck-Clrn0oHp.js} +1 -1
- package/dist/{upload-CHZofOqb.js → upload-Df5JmMwH.js} +1 -1
- package/dist/{useAssistant-DVW4QgQb.js → useAssistant-Cb8nnIVC.js} +11 -28
- package/dist/{useCustomers-BPW4__PR.js → useCustomers-Dq2IR2HQ.js} +1 -1
- package/dist/{useFleet-ChBkxAd6.js → useFleet-CapnWBcA.js} +1 -1
- package/dist/{useImportExport-DrPDHEDK.js → useImportExport-BoGzrlJy.js} +1 -1
- package/dist/{useInventory-CAAVMRp6.js → useInventory-Ci6M2d9f.js} +1 -1
- package/dist/{useOrders-B465S2nt.js → useOrders-BuQU1OHX.js} +1 -1
- package/dist/{useReports-jQ3GpNOm.js → useReports-DIx8W7CO.js} +1 -1
- package/dist/{useRoutes-hS3d5-xr.js → useRoutes-D7EvI_pm.js} +1 -1
- package/dist/{useSettings-BB8X2RLh.js → useSettings-BhX251UQ.js} +6 -6
- package/dist/{useTracking-RjGz9PZG.js → useTracking-C40jmZ6W.js} +3 -3
- package/dist/{user-DzfTn4dE.js → user-BlcJrbtE.js} +1 -1
- package/dist/{user-check-BEKRCi7v.js → user-check-DtnQmimP.js} +1 -1
- package/dist/{users-CCrq-w0C.js → users-Cvwko-Dx.js} +1 -1
- package/dist/{warehouse-CaqfmMKh.js → warehouse-LWLVTk6G.js} +1 -1
- package/dist/{wrench-q_rgJfaP.js → wrench-Cme0RbyR.js} +1 -1
- package/dist/{x-tMeDMcCw.js → x-D8C9Pg5V.js} +1 -1
- package/package.json +5 -1
- package/src/movethewheels/components/GlassPanel.tsx +71 -0
- package/src/movethewheels/components/MetricCard.tsx +171 -73
- package/src/movethewheels/components/StatusBadge.tsx +7 -6
- package/src/movethewheels/components/charts/ChartShell.tsx +78 -0
- package/src/movethewheels/components/charts/Sparkline.tsx +85 -0
- package/src/movethewheels/components/charts/StatusDonut.tsx +115 -0
- package/src/movethewheels/components/charts/TrendChart.tsx +179 -0
- package/src/movethewheels/components/charts/VolumeBar.tsx +97 -0
- package/src/movethewheels/components/charts/chartTokens.ts +43 -0
- package/src/movethewheels/components/charts/index.ts +9 -0
- package/src/movethewheels/components/index.ts +44 -1
- package/src/movethewheels/components/maps/LogisticsMap.tsx +94 -0
- package/src/movethewheels/components/maps/MapCanvas.tsx +118 -0
- package/src/movethewheels/components/maps/RouteMap.tsx +71 -0
- package/src/movethewheels/components/maps/TrackingMap.tsx +102 -0
- package/src/movethewheels/components/maps/index.ts +16 -0
- package/src/movethewheels/components/maps/leaflet-setup.ts +124 -0
- package/src/movethewheels/components/maps/map-markers.css +121 -0
- package/src/movethewheels/hooks/useAnalytics.ts +14 -4
- package/src/movethewheels/pages/AnalyticsPage.tsx +93 -73
- package/src/movethewheels/pages/CreateOrderPage.tsx +4 -4
- package/src/movethewheels/pages/CustomersPage.tsx +29 -20
- package/src/movethewheels/pages/DashboardPage.tsx +238 -12
- package/src/movethewheels/pages/DriverDetailsPage.tsx +1 -1
- package/src/movethewheels/pages/DriversPage.tsx +35 -24
- package/src/movethewheels/pages/FinancePage.tsx +68 -30
- package/src/movethewheels/pages/InventoryPage.tsx +15 -3
- package/src/movethewheels/pages/LiveTrackingPage.tsx +124 -16
- package/src/movethewheels/pages/OrdersListPage.tsx +46 -38
- package/src/movethewheels/pages/ProductsPage.tsx +28 -24
- package/src/movethewheels/pages/ReportsPage.tsx +23 -0
- package/src/movethewheels/pages/RouteDetailsPage.tsx +46 -7
- package/src/movethewheels/pages/SettingsPage.tsx +2 -2
- package/src/movethewheels/pages/TrackingPage.tsx +76 -6
- package/src/movethewheels/pages/VehicleDetailsPage.tsx +1 -1
- package/src/movethewheels/pages/VehiclesPage.tsx +34 -24
- package/src/movethewheels/pages/WarehouseDetailsPage.tsx +1 -1
- package/src/movethewheels/pages/WarehousesPage.tsx +28 -22
- package/src/movethewheels/types/index.ts +1 -1
- package/src/movethewheels/utils/graphqlClient.ts +81 -31
- package/src/movethewheels/utils/mapMarkers.ts +58 -0
- package/dist/AnalyticsPage-CMpI1070.js +0 -215
- package/dist/CustomersPage-CaNBMXmM.js +0 -172
- package/dist/DashboardPage-DIKlXde3.js +0 -387
- package/dist/DriversPage-PYmdFiby.js +0 -176
- package/dist/FinancePage-Cwh9Bw4M.js +0 -136
- package/dist/InventoryPage-DpiqVu1v.js +0 -253
- package/dist/LiveTrackingPage-FAzzlVnX.js +0 -379
- package/dist/MetricCard-CVBVpu7o.js +0 -146
- package/dist/OrdersListPage-CAMsuUck.js +0 -384
- package/dist/ProductsPage-DC5qDLfz.js +0 -180
- package/dist/ReportsPage-BwUJ37eO.js +0 -356
- package/dist/TrackingPage-DaNEFG_h.js +0 -325
- package/dist/VehiclesPage-BFw13iMt.js +0 -176
- package/dist/WarehousesPage-Wkytnt86.js +0 -173
- package/dist/useAnalytics-D7HW2XRb.js +0 -347
- /package/dist/{formatters-BQr-aR5W.js → formatters-FWJDwTFv.js} +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { A as e, B as t, F as n, G as r, H as i, I as a, K as o, L as ee, P as te, R as ne, U as s, W as c,
|
|
2
|
-
import { n as re, t as ie } from "./arrow-up-
|
|
3
|
-
import { t as p } from "./chevron-left-
|
|
4
|
-
import { t as m } from "./chevron-right-
|
|
5
|
-
import { t as ae } from "./search-
|
|
1
|
+
import { A as e, B as t, F as n, G as r, H as i, I as a, K as o, L as ee, P as te, R as ne, U as s, W as c, q as l, rt as u, u as d, ut as f } from "./PageLayout-DX1Ou6V6.js";
|
|
2
|
+
import { n as re, t as ie } from "./arrow-up-PxaOIyiT.js";
|
|
3
|
+
import { t as p } from "./chevron-left-dhEGJYdh.js";
|
|
4
|
+
import { t as m } from "./chevron-right-Cud2NDvm.js";
|
|
5
|
+
import { t as ae } from "./search-D7Ya6jxj.js";
|
|
6
6
|
import { useMemo as h, useState as g } from "react";
|
|
7
7
|
import { jsx as _, jsxs as v } from "react/jsx-runtime";
|
|
8
8
|
import { IllustratedEmptyState as y } from "@burdenoff/fe-libs/ui";
|
|
9
9
|
//#region node_modules/lucide-react/dist/esm/icons/arrow-up-down.js
|
|
10
|
-
var oe =
|
|
10
|
+
var oe = f("ArrowUpDown", [
|
|
11
11
|
["path", {
|
|
12
12
|
d: "m21 16-4 4-4-4",
|
|
13
13
|
key: "f6ql7i"
|
|
@@ -24,13 +24,13 @@ var oe = l("ArrowUpDown", [
|
|
|
24
24
|
d: "M7 4v16",
|
|
25
25
|
key: "1glfcx"
|
|
26
26
|
}]
|
|
27
|
-
]), b =
|
|
27
|
+
]), b = f("ChevronsLeft", [["path", {
|
|
28
28
|
d: "m11 17-5-5 5-5",
|
|
29
29
|
key: "13zhaf"
|
|
30
30
|
}], ["path", {
|
|
31
31
|
d: "m18 17-5-5 5-5",
|
|
32
32
|
key: "h8a8et"
|
|
33
|
-
}]]), se =
|
|
33
|
+
}]]), se = f("ChevronsRight", [["path", {
|
|
34
34
|
d: "m6 17 5-5-5-5",
|
|
35
35
|
key: "xnjwq"
|
|
36
36
|
}], ["path", {
|
|
@@ -39,7 +39,7 @@ var oe = l("ArrowUpDown", [
|
|
|
39
39
|
}]]);
|
|
40
40
|
//#endregion
|
|
41
41
|
//#region src/movethewheels/components/DataTable.tsx
|
|
42
|
-
function x({ columns:
|
|
42
|
+
function x({ columns: f, data: x, isLoading: ce = !1, searchable: S = !1, searchPlaceholder: le = "Search...", searchFields: C, pagination: w = !0, pageSize: T = 10, pageSizeOptions: ue = [
|
|
43
43
|
10,
|
|
44
44
|
25,
|
|
45
45
|
50,
|
|
@@ -58,7 +58,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
58
58
|
C
|
|
59
59
|
]), K = h(() => {
|
|
60
60
|
if (!L || !z) return G;
|
|
61
|
-
let e =
|
|
61
|
+
let e = f.find((e) => e.id === L);
|
|
62
62
|
return e?.accessorKey ? [...G].sort((t, n) => {
|
|
63
63
|
let r = t[e.accessorKey], i = n[e.accessorKey];
|
|
64
64
|
if (r == null) return 1;
|
|
@@ -70,7 +70,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
70
70
|
G,
|
|
71
71
|
L,
|
|
72
72
|
z,
|
|
73
|
-
|
|
73
|
+
f
|
|
74
74
|
]), q = h(() => {
|
|
75
75
|
if (!w || P) return K;
|
|
76
76
|
let e = (V - 1) * U;
|
|
@@ -92,7 +92,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
92
92
|
return "-";
|
|
93
93
|
};
|
|
94
94
|
if (ce) return /* @__PURE__ */ v("div", {
|
|
95
|
-
className:
|
|
95
|
+
className: u("space-y-4", A),
|
|
96
96
|
children: [
|
|
97
97
|
S && /* @__PURE__ */ _("div", {
|
|
98
98
|
className: "flex items-center gap-4",
|
|
@@ -100,7 +100,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
100
100
|
}),
|
|
101
101
|
/* @__PURE__ */ _("div", {
|
|
102
102
|
className: "hidden md:block rounded-card border border-border-seam bg-bg-surface shadow-elevation-1",
|
|
103
|
-
children: /* @__PURE__ */ v(i, { children: [/* @__PURE__ */ _(o, { children: /* @__PURE__ */ _(
|
|
103
|
+
children: /* @__PURE__ */ v(i, { children: [/* @__PURE__ */ _(o, { children: /* @__PURE__ */ _(l, { children: f.map((e) => /* @__PURE__ */ _(r, { children: /* @__PURE__ */ _(t, { className: "h-4 w-20 motion-safe:animate-vc-shimmer" }) }, e.id)) }) }), /* @__PURE__ */ _(s, { children: Array.from({ length: 5 }).map((e, n) => /* @__PURE__ */ _(l, { children: f.map((e) => /* @__PURE__ */ _(c, { children: /* @__PURE__ */ _(t, { className: "h-4 w-full max-w-[100px] motion-safe:animate-vc-shimmer" }) }, e.id)) }, n)) })] })
|
|
104
104
|
}),
|
|
105
105
|
/* @__PURE__ */ _("div", {
|
|
106
106
|
className: "md:hidden space-y-3",
|
|
@@ -125,7 +125,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
125
125
|
children: O
|
|
126
126
|
}), xe = w && (P ? K.length > 0 || F > 0 : K.length > 0);
|
|
127
127
|
return /* @__PURE__ */ v("div", {
|
|
128
|
-
className:
|
|
128
|
+
className: u("space-y-4", A),
|
|
129
129
|
children: [
|
|
130
130
|
S && /* @__PURE__ */ _("div", {
|
|
131
131
|
className: "flex items-center gap-4",
|
|
@@ -143,23 +143,23 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
143
143
|
}),
|
|
144
144
|
/* @__PURE__ */ _("div", {
|
|
145
145
|
className: "hidden md:block overflow-x-auto rounded-card border border-border-seam bg-bg-surface shadow-elevation-1",
|
|
146
|
-
children: /* @__PURE__ */ v(i, { children: [/* @__PURE__ */ _(o, { children: /* @__PURE__ */ _(
|
|
147
|
-
className:
|
|
146
|
+
children: /* @__PURE__ */ v(i, { children: [/* @__PURE__ */ _(o, { children: /* @__PURE__ */ _(l, { children: f.map((e) => /* @__PURE__ */ _(r, {
|
|
147
|
+
className: u(e.sortable && "cursor-pointer select-none hover:bg-bg-sunken/50", e.headerClassName),
|
|
148
148
|
onClick: () => e.sortable && ye(e.id),
|
|
149
149
|
children: /* @__PURE__ */ v("div", {
|
|
150
150
|
className: "flex items-center gap-2",
|
|
151
151
|
children: [e.header, e.sortable && be(e.id)]
|
|
152
152
|
})
|
|
153
|
-
}, e.id)) }) }), /* @__PURE__ */ _(s, { children: Q ? /* @__PURE__ */ _(
|
|
154
|
-
colSpan:
|
|
153
|
+
}, e.id)) }) }), /* @__PURE__ */ _(s, { children: Q ? /* @__PURE__ */ _(l, { children: /* @__PURE__ */ _(c, {
|
|
154
|
+
colSpan: f.length,
|
|
155
155
|
className: "py-8 text-center",
|
|
156
156
|
children: $()
|
|
157
157
|
}) }) : q.map((e, t) => {
|
|
158
158
|
let n = j ? j(e) : t, r = typeof D == "function" ? D(e) : D;
|
|
159
|
-
return /* @__PURE__ */ _(
|
|
160
|
-
className:
|
|
159
|
+
return /* @__PURE__ */ _(l, {
|
|
160
|
+
className: u(E && "cursor-pointer hover:bg-bg-sunken/50", r),
|
|
161
161
|
onClick: () => E?.(e),
|
|
162
|
-
children:
|
|
162
|
+
children: f.map((t) => /* @__PURE__ */ _(c, {
|
|
163
163
|
className: t.className,
|
|
164
164
|
children: Z(e, t)
|
|
165
165
|
}, t.id))
|
|
@@ -176,14 +176,14 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
176
176
|
return /* @__PURE__ */ _("div", {
|
|
177
177
|
role: E ? "button" : void 0,
|
|
178
178
|
tabIndex: E ? 0 : void 0,
|
|
179
|
-
className:
|
|
179
|
+
className: u("rounded-card border border-border-seam bg-bg-surface p-4 shadow-elevation-1", E && "cursor-pointer hover:bg-bg-sunken/50", r),
|
|
180
180
|
onClick: () => E?.(e),
|
|
181
181
|
onKeyDown: (t) => {
|
|
182
182
|
E && (t.key === "Enter" || t.key === " ") && (t.preventDefault(), E(e));
|
|
183
183
|
},
|
|
184
184
|
children: /* @__PURE__ */ _("dl", {
|
|
185
185
|
className: "space-y-2",
|
|
186
|
-
children:
|
|
186
|
+
children: f.map((t) => /* @__PURE__ */ v("div", {
|
|
187
187
|
className: "flex items-start justify-between gap-3",
|
|
188
188
|
children: [/* @__PURE__ */ _("dt", {
|
|
189
189
|
className: "text-xs font-medium text-text-secondary shrink-0",
|
|
@@ -237,7 +237,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
237
237
|
}), P ? /* @__PURE__ */ v("div", {
|
|
238
238
|
className: "flex items-center gap-1",
|
|
239
239
|
children: [
|
|
240
|
-
/* @__PURE__ */ _(
|
|
240
|
+
/* @__PURE__ */ _(d, {
|
|
241
241
|
variant: "outline",
|
|
242
242
|
size: "icon",
|
|
243
243
|
className: "h-8 w-8",
|
|
@@ -246,7 +246,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
246
246
|
disabled: F === 0,
|
|
247
247
|
children: /* @__PURE__ */ _(b, { className: "h-4 w-4" })
|
|
248
248
|
}),
|
|
249
|
-
/* @__PURE__ */ _(
|
|
249
|
+
/* @__PURE__ */ _(d, {
|
|
250
250
|
variant: "outline",
|
|
251
251
|
size: "icon",
|
|
252
252
|
className: "h-8 w-8",
|
|
@@ -263,7 +263,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
263
263
|
Y ? ` of ${X}` : ""
|
|
264
264
|
]
|
|
265
265
|
}),
|
|
266
|
-
/* @__PURE__ */ _(
|
|
266
|
+
/* @__PURE__ */ _(d, {
|
|
267
267
|
variant: "outline",
|
|
268
268
|
size: "icon",
|
|
269
269
|
className: "h-8 w-8",
|
|
@@ -272,7 +272,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
272
272
|
disabled: Y ? F + 1 >= (X ?? 1) : !ge,
|
|
273
273
|
children: /* @__PURE__ */ _(m, { className: "h-4 w-4" })
|
|
274
274
|
}),
|
|
275
|
-
Y && /* @__PURE__ */ _(
|
|
275
|
+
Y && /* @__PURE__ */ _(d, {
|
|
276
276
|
variant: "outline",
|
|
277
277
|
size: "icon",
|
|
278
278
|
className: "h-8 w-8",
|
|
@@ -285,7 +285,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
285
285
|
}) : /* @__PURE__ */ v("div", {
|
|
286
286
|
className: "flex items-center gap-1",
|
|
287
287
|
children: [
|
|
288
|
-
/* @__PURE__ */ _(
|
|
288
|
+
/* @__PURE__ */ _(d, {
|
|
289
289
|
variant: "outline",
|
|
290
290
|
size: "icon",
|
|
291
291
|
className: "h-8 w-8",
|
|
@@ -294,7 +294,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
294
294
|
disabled: V === 1,
|
|
295
295
|
children: /* @__PURE__ */ _(b, { className: "h-4 w-4" })
|
|
296
296
|
}),
|
|
297
|
-
/* @__PURE__ */ _(
|
|
297
|
+
/* @__PURE__ */ _(d, {
|
|
298
298
|
variant: "outline",
|
|
299
299
|
size: "icon",
|
|
300
300
|
className: "h-8 w-8",
|
|
@@ -312,7 +312,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
312
312
|
J
|
|
313
313
|
]
|
|
314
314
|
}),
|
|
315
|
-
/* @__PURE__ */ _(
|
|
315
|
+
/* @__PURE__ */ _(d, {
|
|
316
316
|
variant: "outline",
|
|
317
317
|
size: "icon",
|
|
318
318
|
className: "h-8 w-8",
|
|
@@ -321,7 +321,7 @@ function x({ columns: l, data: x, isLoading: ce = !1, searchable: S = !1, search
|
|
|
321
321
|
disabled: V === J,
|
|
322
322
|
children: /* @__PURE__ */ _(m, { className: "h-4 w-4" })
|
|
323
323
|
}),
|
|
324
|
-
/* @__PURE__ */ _(
|
|
324
|
+
/* @__PURE__ */ _(d, {
|
|
325
325
|
variant: "outline",
|
|
326
326
|
size: "icon",
|
|
327
327
|
className: "h-8 w-8",
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as c } from "./download-
|
|
3
|
-
import { t as l } from "./file-text-
|
|
4
|
-
import { t as u } from "./upload-
|
|
5
|
-
import { r as d } from "./formatters-
|
|
1
|
+
import { at as e, d as t, f as n, g as r, h as i, st as a, u as o, ut as s } from "./PageLayout-DX1Ou6V6.js";
|
|
2
|
+
import { t as c } from "./download-CG4Tponq.js";
|
|
3
|
+
import { t as l } from "./file-text-CzH-zMub.js";
|
|
4
|
+
import { t as u } from "./upload-Df5JmMwH.js";
|
|
5
|
+
import { r as d } from "./formatters-FWJDwTFv.js";
|
|
6
6
|
import { useCallback as f, useEffect as p, useMemo as m, useState as h } from "react";
|
|
7
7
|
import { jsx as g, jsxs as _ } from "react/jsx-runtime";
|
|
8
8
|
//#region node_modules/lucide-react/dist/esm/icons/external-link.js
|
|
9
|
-
var v =
|
|
9
|
+
var v = s("ExternalLink", [
|
|
10
10
|
["path", {
|
|
11
11
|
d: "M15 3h6v6",
|
|
12
12
|
key: "1q9fwt"
|
|
@@ -30,35 +30,35 @@ function b(e) {
|
|
|
30
30
|
downloadUrl: e.downloadUrl ?? void 0
|
|
31
31
|
};
|
|
32
32
|
}
|
|
33
|
-
function x(
|
|
34
|
-
let { apiGatewayUrl:
|
|
35
|
-
apiGatewayUrl:
|
|
36
|
-
authToken:
|
|
37
|
-
workspaceToken:
|
|
33
|
+
function x(t, n) {
|
|
34
|
+
let { apiGatewayUrl: r, authToken: i, workspaceToken: o, workspaceId: s, tenantId: c, currentUser: l } = a(), [u, d] = h([]), [g, _] = h(!1), [v, x] = h(null), S = m(() => ({
|
|
35
|
+
apiGatewayUrl: r,
|
|
36
|
+
authToken: i,
|
|
37
|
+
workspaceToken: o,
|
|
38
38
|
workspaceId: s,
|
|
39
39
|
tenantId: c,
|
|
40
40
|
actorId: l?.id
|
|
41
41
|
}), [
|
|
42
|
-
n,
|
|
43
42
|
r,
|
|
44
|
-
|
|
43
|
+
i,
|
|
44
|
+
o,
|
|
45
45
|
s,
|
|
46
46
|
c,
|
|
47
47
|
l?.id
|
|
48
48
|
]), C = f(async () => {
|
|
49
|
-
if (!
|
|
49
|
+
if (!n) {
|
|
50
50
|
d([]);
|
|
51
51
|
return;
|
|
52
52
|
}
|
|
53
53
|
_(!0), x(null);
|
|
54
54
|
try {
|
|
55
|
-
d(((await
|
|
55
|
+
d(((await e(S, y, {
|
|
56
56
|
filter: { tags: [{
|
|
57
57
|
key: "mtwEntityType",
|
|
58
|
-
value:
|
|
58
|
+
value: t
|
|
59
59
|
}, {
|
|
60
60
|
key: "mtwEntityId",
|
|
61
|
-
value:
|
|
61
|
+
value: n
|
|
62
62
|
}] },
|
|
63
63
|
pagination: {
|
|
64
64
|
limit: 50,
|
|
@@ -71,8 +71,8 @@ function x(e, t) {
|
|
|
71
71
|
_(!1);
|
|
72
72
|
}
|
|
73
73
|
}, [
|
|
74
|
+
n,
|
|
74
75
|
t,
|
|
75
|
-
e,
|
|
76
76
|
S
|
|
77
77
|
]);
|
|
78
78
|
return p(() => {
|
|
@@ -99,20 +99,20 @@ function S(e) {
|
|
|
99
99
|
for (; n >= 1024 && r < t.length - 1;) n /= 1024, r += 1;
|
|
100
100
|
return `${n.toFixed(n >= 10 || r === 0 ? 0 : 1)} ${t[r]}`;
|
|
101
101
|
}
|
|
102
|
-
function C({ entityType:
|
|
103
|
-
let { navigate: f } =
|
|
104
|
-
return /* @__PURE__ */ _(
|
|
102
|
+
function C({ entityType: e, entityId: s }) {
|
|
103
|
+
let { navigate: f } = a(), { documents: p, isLoading: m } = x(e, s), h = () => f("/files/browse");
|
|
104
|
+
return /* @__PURE__ */ _(t, { children: [/* @__PURE__ */ _(i, {
|
|
105
105
|
className: "flex flex-row items-center justify-between",
|
|
106
|
-
children: [/* @__PURE__ */ _(
|
|
106
|
+
children: [/* @__PURE__ */ _(r, {
|
|
107
107
|
className: "flex items-center gap-2",
|
|
108
108
|
children: [/* @__PURE__ */ g(l, { size: 18 }), " Documents"]
|
|
109
|
-
}), /* @__PURE__ */ _(
|
|
109
|
+
}), /* @__PURE__ */ _(o, {
|
|
110
110
|
variant: "outline",
|
|
111
111
|
size: "sm",
|
|
112
112
|
onClick: h,
|
|
113
113
|
children: [/* @__PURE__ */ g(u, { size: 14 }), " Add / Manage"]
|
|
114
114
|
})]
|
|
115
|
-
}), /* @__PURE__ */ g(
|
|
115
|
+
}), /* @__PURE__ */ g(n, { children: m ? /* @__PURE__ */ g("p", {
|
|
116
116
|
className: "text-text-secondary text-center py-4",
|
|
117
117
|
children: "Loading documents…"
|
|
118
118
|
}) : p.length > 0 ? /* @__PURE__ */ g("div", {
|
|
@@ -138,7 +138,7 @@ function C({ entityType: i, entityId: a }) {
|
|
|
138
138
|
rel: "noopener noreferrer",
|
|
139
139
|
className: "shrink-0 inline-flex items-center gap-1 text-sm text-primary hover:underline",
|
|
140
140
|
children: [/* @__PURE__ */ g(c, { size: 14 }), " Open"]
|
|
141
|
-
}) : /* @__PURE__ */ _(
|
|
141
|
+
}) : /* @__PURE__ */ _(o, {
|
|
142
142
|
variant: "ghost",
|
|
143
143
|
size: "sm",
|
|
144
144
|
onClick: h,
|
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
import { A as e, M as t,
|
|
2
|
-
import { t as m } from "./arrow-left-
|
|
3
|
-
import { t as h } from "./clock-
|
|
4
|
-
import { t as g } from "./dollar-sign-
|
|
5
|
-
import { t as _ } from "./DocumentsCard-
|
|
6
|
-
import { t as v } from "./file-text-
|
|
7
|
-
import { t as y } from "./map-pin-
|
|
8
|
-
import { t as b } from "./save-
|
|
9
|
-
import { t as x } from "./square-pen-
|
|
10
|
-
import { t as S } from "./star-
|
|
11
|
-
import { t as C } from "./users-
|
|
12
|
-
import { r as w, t as T } from "./useFleet-
|
|
13
|
-
import { r as E } from "./StatusBadge-
|
|
14
|
-
import { t as D } from "./FormError-
|
|
15
|
-
import { n as O, r as k } from "./formatters-
|
|
1
|
+
import { A as e, M as t, d as n, f as r, g as i, h as a, i as o, j as s, l as c, lt as l, n as u, r as d, st as f, u as p } from "./PageLayout-DX1Ou6V6.js";
|
|
2
|
+
import { t as m } from "./arrow-left-DJDw_Yqv.js";
|
|
3
|
+
import { t as h } from "./clock-B2_YxJgB.js";
|
|
4
|
+
import { t as g } from "./dollar-sign-CQmAICv4.js";
|
|
5
|
+
import { t as _ } from "./DocumentsCard-T9y6cv4-.js";
|
|
6
|
+
import { t as v } from "./file-text-CzH-zMub.js";
|
|
7
|
+
import { t as y } from "./map-pin-czpLv9uy.js";
|
|
8
|
+
import { t as b } from "./save-DDFvrxWl.js";
|
|
9
|
+
import { t as x } from "./square-pen-DoZZS4Lw.js";
|
|
10
|
+
import { t as S } from "./star-B7PgVu5j.js";
|
|
11
|
+
import { t as C } from "./users-Cvwko-Dx.js";
|
|
12
|
+
import { r as w, t as T } from "./useFleet-CapnWBcA.js";
|
|
13
|
+
import { r as E } from "./StatusBadge-oZjownr1.js";
|
|
14
|
+
import { t as D } from "./FormError-CRsMP7TQ.js";
|
|
15
|
+
import { n as O, r as k } from "./formatters-FWJDwTFv.js";
|
|
16
16
|
import { useState as A } from "react";
|
|
17
17
|
import { useParams as j } from "react-router-dom";
|
|
18
18
|
import { jsx as M, jsxs as N } from "react/jsx-runtime";
|
|
19
19
|
import { EmphasisPanel as P, NextSteps as F, PagePurpose as I } from "@burdenoff/fe-libs/ui";
|
|
20
20
|
//#region src/movethewheels/pages/DriverDetailsPage.tsx
|
|
21
21
|
function L() {
|
|
22
|
-
let { basePath: t, navigate:
|
|
22
|
+
let { basePath: t, navigate: n } = f(), { createDriver: r } = w(), [i, a] = A({
|
|
23
23
|
employeeId: "",
|
|
24
24
|
firstName: "",
|
|
25
25
|
lastName: "",
|
|
26
26
|
email: "",
|
|
27
27
|
phone: "",
|
|
28
28
|
licenseNumber: ""
|
|
29
|
-
}), [
|
|
30
|
-
if (e.preventDefault(), !
|
|
29
|
+
}), [c, u] = A(!1), [d, h] = A(null), g = () => n?.(l(t, "fleet/drivers")), _ = async (e) => {
|
|
30
|
+
if (e.preventDefault(), !i.employeeId.trim() || !i.firstName.trim() || !i.lastName.trim()) {
|
|
31
31
|
h("Employee ID, first name and last name are required.");
|
|
32
32
|
return;
|
|
33
33
|
}
|
|
34
34
|
u(!0), h(null);
|
|
35
35
|
try {
|
|
36
|
-
let e = await
|
|
37
|
-
employeeId:
|
|
38
|
-
firstName:
|
|
39
|
-
lastName:
|
|
40
|
-
email:
|
|
41
|
-
phone:
|
|
42
|
-
licenseNumber:
|
|
36
|
+
let e = await r({
|
|
37
|
+
employeeId: i.employeeId.trim(),
|
|
38
|
+
firstName: i.firstName.trim(),
|
|
39
|
+
lastName: i.lastName.trim(),
|
|
40
|
+
email: i.email.trim() || void 0,
|
|
41
|
+
phone: i.phone.trim() || void 0,
|
|
42
|
+
licenseNumber: i.licenseNumber.trim() || void 0
|
|
43
43
|
});
|
|
44
|
-
|
|
44
|
+
n?.(l(t, `fleet/drivers/${e.id}`));
|
|
45
45
|
} catch (e) {
|
|
46
46
|
console.error("Failed to create driver:", e), h(e instanceof Error ? e.message : "Failed to create driver. Please try again."), u(!1);
|
|
47
47
|
}
|
|
48
48
|
};
|
|
49
|
-
return /* @__PURE__ */ N(
|
|
49
|
+
return /* @__PURE__ */ N(o, {
|
|
50
50
|
title: "Add Driver",
|
|
51
51
|
subtitle: "Add a driver to your workforce",
|
|
52
52
|
icon: /* @__PURE__ */ M(C, { size: 24 }),
|
|
@@ -55,15 +55,15 @@ function L() {
|
|
|
55
55
|
children: [/* @__PURE__ */ N(p, {
|
|
56
56
|
variant: "outline",
|
|
57
57
|
onClick: g,
|
|
58
|
-
disabled:
|
|
58
|
+
disabled: c,
|
|
59
59
|
children: [/* @__PURE__ */ M(m, { size: 16 }), " Cancel"]
|
|
60
60
|
}), /* @__PURE__ */ N(p, {
|
|
61
61
|
onClick: _,
|
|
62
|
-
disabled:
|
|
62
|
+
disabled: c,
|
|
63
63
|
children: [
|
|
64
64
|
/* @__PURE__ */ M(b, { size: 16 }),
|
|
65
65
|
" ",
|
|
66
|
-
|
|
66
|
+
c ? "Saving..." : "Add Driver"
|
|
67
67
|
]
|
|
68
68
|
})]
|
|
69
69
|
}),
|
|
@@ -73,7 +73,7 @@ function L() {
|
|
|
73
73
|
}), /* @__PURE__ */ N("form", {
|
|
74
74
|
onSubmit: _,
|
|
75
75
|
className: "max-w-2xl space-y-6",
|
|
76
|
-
children: [/* @__PURE__ */ M(D, { message:
|
|
76
|
+
children: [/* @__PURE__ */ M(D, { message: d }), /* @__PURE__ */ N(P, { children: [/* @__PURE__ */ M("h2", {
|
|
77
77
|
className: "text-base font-semibold text-text-primary mb-4",
|
|
78
78
|
children: "Driver Details"
|
|
79
79
|
}), /* @__PURE__ */ N("div", {
|
|
@@ -83,7 +83,7 @@ function L() {
|
|
|
83
83
|
children: [
|
|
84
84
|
/* @__PURE__ */ N("div", {
|
|
85
85
|
className: "space-y-2",
|
|
86
|
-
children: [/* @__PURE__ */ N(
|
|
86
|
+
children: [/* @__PURE__ */ N(s, {
|
|
87
87
|
htmlFor: "employeeId",
|
|
88
88
|
children: ["Employee ID ", /* @__PURE__ */ M("span", {
|
|
89
89
|
className: "text-status-error-text",
|
|
@@ -91,8 +91,8 @@ function L() {
|
|
|
91
91
|
})]
|
|
92
92
|
}), /* @__PURE__ */ M(e, {
|
|
93
93
|
id: "employeeId",
|
|
94
|
-
value:
|
|
95
|
-
onChange: (e) =>
|
|
94
|
+
value: i.employeeId,
|
|
95
|
+
onChange: (e) => a((t) => ({
|
|
96
96
|
...t,
|
|
97
97
|
employeeId: e.target.value
|
|
98
98
|
})),
|
|
@@ -102,7 +102,7 @@ function L() {
|
|
|
102
102
|
}),
|
|
103
103
|
/* @__PURE__ */ N("div", {
|
|
104
104
|
className: "space-y-2",
|
|
105
|
-
children: [/* @__PURE__ */ N(
|
|
105
|
+
children: [/* @__PURE__ */ N(s, {
|
|
106
106
|
htmlFor: "firstName",
|
|
107
107
|
children: ["First Name ", /* @__PURE__ */ M("span", {
|
|
108
108
|
className: "text-status-error-text",
|
|
@@ -110,8 +110,8 @@ function L() {
|
|
|
110
110
|
})]
|
|
111
111
|
}), /* @__PURE__ */ M(e, {
|
|
112
112
|
id: "firstName",
|
|
113
|
-
value:
|
|
114
|
-
onChange: (e) =>
|
|
113
|
+
value: i.firstName,
|
|
114
|
+
onChange: (e) => a((t) => ({
|
|
115
115
|
...t,
|
|
116
116
|
firstName: e.target.value
|
|
117
117
|
})),
|
|
@@ -121,7 +121,7 @@ function L() {
|
|
|
121
121
|
}),
|
|
122
122
|
/* @__PURE__ */ N("div", {
|
|
123
123
|
className: "space-y-2",
|
|
124
|
-
children: [/* @__PURE__ */ N(
|
|
124
|
+
children: [/* @__PURE__ */ N(s, {
|
|
125
125
|
htmlFor: "lastName",
|
|
126
126
|
children: ["Last Name ", /* @__PURE__ */ M("span", {
|
|
127
127
|
className: "text-status-error-text",
|
|
@@ -129,8 +129,8 @@ function L() {
|
|
|
129
129
|
})]
|
|
130
130
|
}), /* @__PURE__ */ M(e, {
|
|
131
131
|
id: "lastName",
|
|
132
|
-
value:
|
|
133
|
-
onChange: (e) =>
|
|
132
|
+
value: i.lastName,
|
|
133
|
+
onChange: (e) => a((t) => ({
|
|
134
134
|
...t,
|
|
135
135
|
lastName: e.target.value
|
|
136
136
|
})),
|
|
@@ -144,14 +144,14 @@ function L() {
|
|
|
144
144
|
children: [
|
|
145
145
|
/* @__PURE__ */ N("div", {
|
|
146
146
|
className: "space-y-2",
|
|
147
|
-
children: [/* @__PURE__ */ M(
|
|
147
|
+
children: [/* @__PURE__ */ M(s, {
|
|
148
148
|
htmlFor: "email",
|
|
149
149
|
children: "Email"
|
|
150
150
|
}), /* @__PURE__ */ M(e, {
|
|
151
151
|
id: "email",
|
|
152
152
|
type: "email",
|
|
153
|
-
value:
|
|
154
|
-
onChange: (e) =>
|
|
153
|
+
value: i.email,
|
|
154
|
+
onChange: (e) => a((t) => ({
|
|
155
155
|
...t,
|
|
156
156
|
email: e.target.value
|
|
157
157
|
})),
|
|
@@ -160,13 +160,13 @@ function L() {
|
|
|
160
160
|
}),
|
|
161
161
|
/* @__PURE__ */ N("div", {
|
|
162
162
|
className: "space-y-2",
|
|
163
|
-
children: [/* @__PURE__ */ M(
|
|
163
|
+
children: [/* @__PURE__ */ M(s, {
|
|
164
164
|
htmlFor: "phone",
|
|
165
165
|
children: "Phone"
|
|
166
166
|
}), /* @__PURE__ */ M(e, {
|
|
167
167
|
id: "phone",
|
|
168
|
-
value:
|
|
169
|
-
onChange: (e) =>
|
|
168
|
+
value: i.phone,
|
|
169
|
+
onChange: (e) => a((t) => ({
|
|
170
170
|
...t,
|
|
171
171
|
phone: e.target.value
|
|
172
172
|
})),
|
|
@@ -175,13 +175,13 @@ function L() {
|
|
|
175
175
|
}),
|
|
176
176
|
/* @__PURE__ */ N("div", {
|
|
177
177
|
className: "space-y-2",
|
|
178
|
-
children: [/* @__PURE__ */ M(
|
|
178
|
+
children: [/* @__PURE__ */ M(s, {
|
|
179
179
|
htmlFor: "licenseNumber",
|
|
180
180
|
children: "License Number"
|
|
181
181
|
}), /* @__PURE__ */ M(e, {
|
|
182
182
|
id: "licenseNumber",
|
|
183
|
-
value:
|
|
184
|
-
onChange: (e) =>
|
|
183
|
+
value: i.licenseNumber,
|
|
184
|
+
onChange: (e) => a((t) => ({
|
|
185
185
|
...t,
|
|
186
186
|
licenseNumber: e.target.value
|
|
187
187
|
})),
|
|
@@ -195,11 +195,11 @@ function L() {
|
|
|
195
195
|
});
|
|
196
196
|
}
|
|
197
197
|
function R() {
|
|
198
|
-
let { driverId: e } = j(), { basePath:
|
|
199
|
-
return e ? D ? /* @__PURE__ */ M(
|
|
198
|
+
let { driverId: e } = j(), { basePath: s, navigate: b } = f(), { driver: w, isLoading: D, error: A, refetch: R } = T(e), z = () => b?.(l(s, "fleet/drivers")), B = (e) => b?.(l(s, e));
|
|
199
|
+
return e ? D ? /* @__PURE__ */ M(d, { message: "Loading driver details..." }) : A || !w ? /* @__PURE__ */ M(u, {
|
|
200
200
|
title: "Driver not found",
|
|
201
201
|
onRetry: R
|
|
202
|
-
}) : /* @__PURE__ */ N(
|
|
202
|
+
}) : /* @__PURE__ */ N(o, {
|
|
203
203
|
title: w.fullName,
|
|
204
204
|
subtitle: `Employee ID: ${w.employeeId}`,
|
|
205
205
|
icon: /* @__PURE__ */ M(C, { size: 24 }),
|
|
@@ -314,10 +314,10 @@ function R() {
|
|
|
314
314
|
})]
|
|
315
315
|
})] }, e.label))
|
|
316
316
|
})] }),
|
|
317
|
-
/* @__PURE__ */ N(
|
|
317
|
+
/* @__PURE__ */ N(n, { children: [/* @__PURE__ */ M(a, { children: /* @__PURE__ */ N(i, {
|
|
318
318
|
className: "flex items-center gap-2",
|
|
319
319
|
children: [/* @__PURE__ */ M(h, { size: 18 }), " Working Hours"]
|
|
320
|
-
}) }), /* @__PURE__ */ M(
|
|
320
|
+
}) }), /* @__PURE__ */ M(r, { children: /* @__PURE__ */ N("div", {
|
|
321
321
|
className: "grid grid-cols-2 md:grid-cols-4 gap-4",
|
|
322
322
|
children: [
|
|
323
323
|
/* @__PURE__ */ N("div", { children: [/* @__PURE__ */ M("p", {
|
|
@@ -365,10 +365,10 @@ function R() {
|
|
|
365
365
|
})] })
|
|
366
366
|
]
|
|
367
367
|
}) })] }),
|
|
368
|
-
/* @__PURE__ */ N(
|
|
368
|
+
/* @__PURE__ */ N(n, { children: [/* @__PURE__ */ M(a, { children: /* @__PURE__ */ N(i, {
|
|
369
369
|
className: "flex items-center gap-2",
|
|
370
370
|
children: [/* @__PURE__ */ M(v, { size: 18 }), " License"]
|
|
371
|
-
}) }), /* @__PURE__ */ M(
|
|
371
|
+
}) }), /* @__PURE__ */ M(r, { children: /* @__PURE__ */ M("div", {
|
|
372
372
|
className: "flex items-center justify-between p-3 border rounded-lg",
|
|
373
373
|
children: /* @__PURE__ */ N("div", { children: [
|
|
374
374
|
/* @__PURE__ */ M("p", {
|
|
@@ -393,7 +393,7 @@ function R() {
|
|
|
393
393
|
}), /* @__PURE__ */ N("div", {
|
|
394
394
|
className: "space-y-6",
|
|
395
395
|
children: [
|
|
396
|
-
/* @__PURE__ */ N(
|
|
396
|
+
/* @__PURE__ */ N(n, { children: [/* @__PURE__ */ M(a, { children: /* @__PURE__ */ M(i, { children: "Statistics" }) }), /* @__PURE__ */ N(r, {
|
|
397
397
|
className: "space-y-4",
|
|
398
398
|
children: [
|
|
399
399
|
/* @__PURE__ */ N("div", { children: [/* @__PURE__ */ M("p", {
|
|
@@ -419,10 +419,10 @@ function R() {
|
|
|
419
419
|
})] })
|
|
420
420
|
]
|
|
421
421
|
})] }),
|
|
422
|
-
/* @__PURE__ */ N(
|
|
422
|
+
/* @__PURE__ */ N(n, { children: [/* @__PURE__ */ M(a, { children: /* @__PURE__ */ N(i, {
|
|
423
423
|
className: "flex items-center gap-2",
|
|
424
424
|
children: [/* @__PURE__ */ M(g, { size: 18 }), " Earnings"]
|
|
425
|
-
}) }), /* @__PURE__ */ N(
|
|
425
|
+
}) }), /* @__PURE__ */ N(r, {
|
|
426
426
|
className: "space-y-3",
|
|
427
427
|
children: [
|
|
428
428
|
/* @__PURE__ */ N("div", { children: [/* @__PURE__ */ M("p", {
|
|
@@ -433,7 +433,7 @@ function R() {
|
|
|
433
433
|
children: O(w.earnings.totalEarnings)
|
|
434
434
|
})] }),
|
|
435
435
|
/* @__PURE__ */ N("div", {
|
|
436
|
-
className: "grid grid-cols-2 gap-3",
|
|
436
|
+
className: "grid grid-cols-1 sm:grid-cols-2 gap-3",
|
|
437
437
|
children: [/* @__PURE__ */ N("div", { children: [/* @__PURE__ */ M("p", {
|
|
438
438
|
className: "text-sm text-text-secondary",
|
|
439
439
|
children: "This Week"
|
|
@@ -457,24 +457,24 @@ function R() {
|
|
|
457
457
|
})] })
|
|
458
458
|
]
|
|
459
459
|
})] }),
|
|
460
|
-
w.currentLocation && /* @__PURE__ */ N(
|
|
460
|
+
w.currentLocation && /* @__PURE__ */ N(n, { children: [/* @__PURE__ */ M(a, { children: /* @__PURE__ */ N(i, {
|
|
461
461
|
className: "flex items-center gap-2",
|
|
462
462
|
children: [/* @__PURE__ */ M(y, { size: 18 }), " Current Location"]
|
|
463
|
-
}) }), /* @__PURE__ */ N(
|
|
463
|
+
}) }), /* @__PURE__ */ N(r, { children: [/* @__PURE__ */ M("p", {
|
|
464
464
|
className: "text-sm",
|
|
465
465
|
children: w.currentLocation.address || "Location updating..."
|
|
466
466
|
}), /* @__PURE__ */ N("p", {
|
|
467
467
|
className: "text-xs text-text-secondary mt-1",
|
|
468
468
|
children: ["Updated ", k(w.currentLocation.timestamp || /* @__PURE__ */ new Date(), "relative")]
|
|
469
469
|
})] })] }),
|
|
470
|
-
/* @__PURE__ */ N(
|
|
470
|
+
/* @__PURE__ */ N(n, { children: [/* @__PURE__ */ M(a, { children: /* @__PURE__ */ M(i, { children: "Compliance Status" }) }), /* @__PURE__ */ M(r, {
|
|
471
471
|
className: "space-y-2",
|
|
472
472
|
children: Object.entries(w.compliance).filter(([e]) => e !== "lastUpdate").map(([e, t]) => /* @__PURE__ */ N("div", {
|
|
473
473
|
className: "flex items-center justify-between",
|
|
474
474
|
children: [/* @__PURE__ */ M("span", {
|
|
475
475
|
className: "text-sm capitalize",
|
|
476
476
|
children: e.replace(/([A-Z])/g, " $1")
|
|
477
|
-
}), /* @__PURE__ */ M(
|
|
477
|
+
}), /* @__PURE__ */ M(c, {
|
|
478
478
|
variant: t ? "default" : "destructive",
|
|
479
479
|
children: t ? "Compliant" : "Non-compliant"
|
|
480
480
|
})]
|