@burdenoff/microfe-movethewheels 2026.614.1 → 2026.624.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.
- package/dist/{AIAssistantPage-FGGTN-DA.js → AIAssistantPage-BrHX2lQn.js} +8 -8
- package/dist/{AnalyticsPage-DSLYCnln.js → AnalyticsPage-DI6Wcaw5.js} +21 -21
- package/dist/{CreateOrderPage-BgjA_QFT.js → CreateOrderPage-DfkSi6JF.js} +8 -8
- package/dist/{CustomerDetailsPage-Cfvfw12U.js → CustomerDetailsPage-DzAIu_tH.js} +24 -24
- package/dist/{CustomersPage-DXnx04Au.js → CustomersPage-d21ixOYa.js} +9 -9
- package/dist/{DashboardPage-BeyvN3Mr.js → DashboardPage-3ZOnwg1a.js} +28 -28
- package/dist/{DataTable-oNjXEcUO.js → DataTable-CZGz3SJu.js} +10 -10
- package/dist/{DriverDetailsPage-DGTUZG5S.js → DriverDetailsPage-YuZSlPSV.js} +27 -27
- package/dist/{DriversPage-CRursDRZ.js → DriversPage-BOhqEBTv.js} +11 -11
- package/dist/{FinancePage-Cyi75iWa.js → FinancePage-CnjUNXOb.js} +11 -11
- package/dist/{FleetPage-Dlupg1NZ.js → FleetPage-CPS7r4J3.js} +16 -16
- package/dist/{ImportExportPage-D81vnXbH.js → ImportExportPage-zNjs7xsV.js} +9 -9
- package/dist/{InventoryPage-D0u2nxRd.js → InventoryPage-C9g5d3SW.js} +14 -14
- package/dist/{LiveTrackingPage-CKIlbMBA.js → LiveTrackingPage-DoBvtdBG.js} +26 -26
- package/dist/{MarketplacePage-3NpZ0_SK.js → MarketplacePage-BEj5hcBF.js} +13 -13
- package/dist/{MetricCard-BDcT-7Ei.js → MetricCard-DeHVeVwl.js} +10 -10
- package/dist/{OrderDetailsPage-BeGWzAws.js → OrderDetailsPage-D-9lDZYU.js} +34 -34
- package/dist/{OrdersListPage-DczM6NXa.js → OrdersListPage-CJzHbgY3.js} +10 -10
- package/dist/{PageLayout-3DR4pMQ9.js → PageLayout-xDTiBTDS.js} +550 -508
- package/dist/{ProductDetailsPage-Czcrqe2F.js → ProductDetailsPage-3rKtzXpy.js} +15 -15
- package/dist/{ProductsPage-DJhdrfox.js → ProductsPage-B0P_wjBJ.js} +7 -7
- package/dist/{ReportsPage-DPqE4Q3D.js → ReportsPage-B8OyWGzl.js} +10 -10
- package/dist/{RouteDetailsPage-j6ZczLRT.js → RouteDetailsPage-DGjKTUMj.js} +22 -22
- package/dist/{RoutesPage-OZM7lJDi.js → RoutesPage-CpopY8xN.js} +6 -6
- package/dist/{SettingsPage-v6vRyIAp.js → SettingsPage-BvXSa3gi.js} +7 -7
- package/dist/{StatusBadge-elLZA4Wl.js → StatusBadge-C--7NhoW.js} +1 -1
- package/dist/{TrackingPage-CBmGvTW_.js → TrackingPage-BldUm_g7.js} +29 -29
- package/dist/{VehicleDetailsPage-DJXYkTN2.js → VehicleDetailsPage-Dqv--MVW.js} +21 -21
- package/dist/{VehiclesPage-r_snhuEj.js → VehiclesPage-CCBHRDHu.js} +9 -9
- package/dist/{WarehouseDetailsPage-nMZvp56W.js → WarehouseDetailsPage-ZObC_c7W.js} +19 -19
- package/dist/{WarehousesPage-BcJ_QrK3.js → WarehousesPage-CpgZEVW9.js} +8 -8
- package/dist/arrow-left-Bk5GsGNk.js +11 -0
- package/dist/{box-CnErOGkD.js → box-BAMv2-7M.js} +2 -2
- package/dist/{chart-column-CFT0jC9N.js → chart-column-CAfkf4o6.js} +2 -2
- package/dist/chevron-right-Czrt_Qew.js +8 -0
- package/dist/{circle-alert-B2pZQFzu.js → circle-alert-CEuV9Pij.js} +2 -2
- package/dist/circle-check-big-Cx8aO6B-.js +11 -0
- package/dist/{clock-DP-76dyQ.js → clock-Be95bq7_.js} +2 -2
- package/dist/{dollar-sign-CrwqdoEC.js → dollar-sign-kJqItPli.js} +2 -2
- package/dist/{download-CQqBpPk5.js → download-caab0D3V.js} +2 -2
- package/dist/{file-text-CnHcsdsc.js → file-text-b1qhrJn1.js} +2 -2
- package/dist/filter-BWmLTZB-.js +8 -0
- package/dist/index.js +52 -50
- package/dist/{map-qljBUQ1N.js → map-CS2aFgyO.js} +2 -2
- package/dist/{map-pin-4a-IA2NP.js → map-pin-96FeqL7H.js} +2 -2
- package/dist/navigation-i6UXEjTC.js +8 -0
- package/dist/{package-CPePjBwW.js → package-KhSi3xaT.js} +2 -2
- package/dist/{phone-2rkA8w_3.js → phone-B-h3tbsr.js} +2 -2
- package/dist/plus-D2BYAzMn.js +11 -0
- package/dist/{refresh-cw-oWEqfHnS.js → refresh-cw-D5Sy01s-.js} +2 -2
- package/dist/{route-DBljW-z4.js → route-CBDXuwH9.js} +2 -2
- package/dist/{save-Cjsx5R5Y.js → save-CMc7h-Vi.js} +2 -2
- package/dist/search-DVrUQbOg.js +13 -0
- package/dist/{settings-CX94mtOc.js → settings-BwzIRYv3.js} +2 -2
- package/dist/{square-pen-BIgbw83U.js → square-pen-DmW36Bau.js} +2 -2
- package/dist/{star-BW23nRLp.js → star-Cv2MzxZL.js} +2 -2
- package/dist/{store-Cdk0UEPT.js → store-CLH957vl.js} +2 -2
- package/dist/{trending-up-DYQ3Xns5.js → trending-up-l8M0BO_w.js} +2 -2
- package/dist/{triangle-alert-Ck_oBZ7n.js → triangle-alert-BI45s6bH.js} +2 -2
- package/dist/{truck-Cd54agV-.js → truck-DX3lNQkz.js} +2 -2
- package/dist/{user-CUEmQUkJ.js → user-D8EY1uvt.js} +2 -2
- package/dist/{users-e-wRlQnX.js → users-CfG0J8wP.js} +2 -2
- package/dist/{warehouse-DXnNb4kf.js → warehouse-Dt_bAr82.js} +2 -2
- package/dist/{wrench-DYJo0U8_.js → wrench-C50eI_Iy.js} +2 -2
- package/package.json +2 -2
- package/src/dev/main.tsx +4 -4
- package/src/movethewheels/MoveTheWheelsRoutes.tsx +1 -1
- package/src/movethewheels/components/DataTable.tsx +6 -6
- package/src/movethewheels/components/MetricCard.tsx +9 -9
- package/src/movethewheels/components/PageLayout.tsx +12 -12
- package/src/movethewheels/components/ui.tsx +3 -3
- package/src/movethewheels/pages/AIAssistantPage.tsx +3 -3
- package/src/movethewheels/pages/AnalyticsPage.tsx +13 -13
- package/src/movethewheels/pages/CreateOrderPage.tsx +2 -2
- package/src/movethewheels/pages/CustomerDetailsPage.tsx +14 -14
- package/src/movethewheels/pages/CustomersPage.tsx +1 -1
- package/src/movethewheels/pages/DashboardPage.tsx +16 -16
- package/src/movethewheels/pages/DriverDetailsPage.tsx +17 -17
- package/src/movethewheels/pages/DriversPage.tsx +3 -3
- package/src/movethewheels/pages/FinancePage.tsx +4 -4
- package/src/movethewheels/pages/FleetPage.tsx +8 -8
- package/src/movethewheels/pages/ImportExportPage.tsx +5 -5
- package/src/movethewheels/pages/InventoryPage.tsx +7 -7
- package/src/movethewheels/pages/LiveTrackingPage.tsx +18 -18
- package/src/movethewheels/pages/MarketplacePage.tsx +6 -6
- package/src/movethewheels/pages/OrderDetailsPage.tsx +20 -20
- package/src/movethewheels/pages/OrdersListPage.tsx +2 -2
- package/src/movethewheels/pages/ProductDetailsPage.tsx +8 -8
- package/src/movethewheels/pages/ProductsPage.tsx +1 -1
- package/src/movethewheels/pages/ReportsPage.tsx +5 -5
- package/src/movethewheels/pages/RouteDetailsPage.tsx +13 -13
- package/src/movethewheels/pages/SettingsPage.tsx +2 -2
- package/src/movethewheels/pages/TrackingPage.tsx +21 -21
- package/src/movethewheels/pages/VehicleDetailsPage.tsx +13 -13
- package/src/movethewheels/pages/VehiclesPage.tsx +2 -2
- package/src/movethewheels/pages/WarehouseDetailsPage.tsx +11 -11
- package/src/movethewheels/pages/WarehousesPage.tsx +3 -3
- package/dist/arrow-left-Crb7WKr1.js +0 -11
- package/dist/chevron-right-Bzo6Rr8_.js +0 -8
- package/dist/circle-check-big-R_fjEgxM.js +0 -11
- package/dist/filter-CgTF21j9.js +0 -8
- package/dist/navigation-CqRTj3vI.js +0 -8
- package/dist/plus-Dew5yoQK.js +0 -11
- package/dist/search-FWYzDbBx.js +0 -13
package/dist/index.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { $ as e, A as t, B as n, C as r, D as i, E as a, F as o, G as s, H as c, I as l, J as u, K as d, L as f, M as p, N as m, O as h, P as g, Q as ee, R as te, S as ne, T as re, U as ie, V as ae, W as oe, X as se, Y as ce, Z as le, _ as ue, a as de, b as fe, c as pe, d as me, et as he, f as ge, g as _e, h as ve, i as _, it as v, j as y, k as b, l as x, m as S, n as C, nt as w, o as T, p as E, q as D, r as O, s as k, t as A, tt as j, u as M, v as N, w as P, x as F, y as ye, z as be } from "./PageLayout-
|
|
2
|
-
import { t as xe } from "./DataTable-
|
|
3
|
-
import { n as Se, t as Ce } from "./route-
|
|
4
|
-
import { t as we } from "./chart-column-
|
|
5
|
-
import { t as Te } from "./dollar-sign-
|
|
6
|
-
import { t as Ee } from "./file-text-
|
|
7
|
-
import { n as De, t as Oe } from "./settings-
|
|
8
|
-
import { t as ke } from "./map-
|
|
9
|
-
import { t as Ae } from "./package-
|
|
10
|
-
import { t as je } from "./store-
|
|
11
|
-
import { t as I } from "./truck-
|
|
12
|
-
import { t as Me } from "./users-
|
|
13
|
-
import { t as L } from "./warehouse-
|
|
1
|
+
import { $ as e, A as t, B as n, C as r, D as i, E as a, F as o, G as s, H as c, I as l, J as u, K as d, L as f, M as p, N as m, O as h, P as g, Q as ee, R as te, S as ne, T as re, U as ie, V as ae, W as oe, X as se, Y as ce, Z as le, _ as ue, a as de, b as fe, c as pe, d as me, et as he, f as ge, g as _e, h as ve, i as _, it as v, j as y, k as b, l as x, m as S, n as C, nt as w, o as T, p as E, q as D, r as O, s as k, t as A, tt as j, u as M, v as N, w as P, x as F, y as ye, z as be } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
import { t as xe } from "./DataTable-CZGz3SJu.js";
|
|
3
|
+
import { n as Se, t as Ce } from "./route-CBDXuwH9.js";
|
|
4
|
+
import { t as we } from "./chart-column-CAfkf4o6.js";
|
|
5
|
+
import { t as Te } from "./dollar-sign-kJqItPli.js";
|
|
6
|
+
import { t as Ee } from "./file-text-b1qhrJn1.js";
|
|
7
|
+
import { n as De, t as Oe } from "./settings-BwzIRYv3.js";
|
|
8
|
+
import { t as ke } from "./map-CS2aFgyO.js";
|
|
9
|
+
import { t as Ae } from "./package-KhSi3xaT.js";
|
|
10
|
+
import { t as je } from "./store-CLH957vl.js";
|
|
11
|
+
import { t as I } from "./truck-DX3lNQkz.js";
|
|
12
|
+
import { t as Me } from "./users-CfG0J8wP.js";
|
|
13
|
+
import { t as L } from "./warehouse-Dt_bAr82.js";
|
|
14
14
|
import { i as Ne, n as Pe, r as Fe } from "./graphqlClient-CdJyR_ed.js";
|
|
15
15
|
import { n as Ie, r as Le, t as Re } from "./useOrders-D_3_hGMp.js";
|
|
16
16
|
import { a as ze, i as Be, n as Ve, o as He, r as Ue, t as We } from "./useFleet-BdETplNE.js";
|
|
@@ -19,15 +19,15 @@ import { n as Ze, r as Qe, t as $e } from "./useCustomers-bS3a4ytk.js";
|
|
|
19
19
|
import { n as et, r as tt, t as nt } from "./useRoutes-v4aBaS-E.js";
|
|
20
20
|
import { a as rt, i as it, n as at, o as ot, r as st, t as ct } from "./useAnalytics-ph7eTIK6.js";
|
|
21
21
|
import { a as lt, i as ut, n as dt, o as ft, r as pt, s as mt, t as ht } from "./useTracking-De2KIUNu.js";
|
|
22
|
-
import { n as gt, r as _t, t as vt } from "./MetricCard-
|
|
23
|
-
import { a as yt, i as bt, n as xt, r as St, t as Ct } from "./StatusBadge-
|
|
22
|
+
import { n as gt, r as _t, t as vt } from "./MetricCard-DeHVeVwl.js";
|
|
23
|
+
import { a as yt, i as bt, n as xt, r as St, t as Ct } from "./StatusBadge-C--7NhoW.js";
|
|
24
24
|
import { Suspense as wt, lazy as R, useEffect as z } from "react";
|
|
25
25
|
import { Navigate as Tt, Route as B, Routes as Et } from "react-router-dom";
|
|
26
26
|
import { jsx as V, jsxs as H } from "react/jsx-runtime";
|
|
27
27
|
import { FeatureFlagProvider as Dt } from "@burdenoff/fe-libs/shared/feature-flags";
|
|
28
28
|
import { create as Ot } from "zustand";
|
|
29
29
|
import { createProfileScopedStorage as kt } from "@burdenoff/fe-libs/shared/utils";
|
|
30
|
-
//#region
|
|
30
|
+
//#region node_modules/lucide-react/dist/esm/icons/boxes.js
|
|
31
31
|
var At = v("Boxes", [
|
|
32
32
|
["path", {
|
|
33
33
|
d: "M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z",
|
|
@@ -155,14 +155,14 @@ function Nt() {
|
|
|
155
155
|
children: /* @__PURE__ */ H("div", {
|
|
156
156
|
className: "flex flex-col items-center gap-3",
|
|
157
157
|
children: [/* @__PURE__ */ V("div", { className: "animate-spin rounded-full h-8 w-8 border-b-2 border-primary" }), /* @__PURE__ */ V("p", {
|
|
158
|
-
className: "text-sm text-
|
|
158
|
+
className: "text-sm text-text-secondary",
|
|
159
159
|
children: "Loading..."
|
|
160
160
|
})]
|
|
161
161
|
})
|
|
162
162
|
});
|
|
163
163
|
}
|
|
164
|
-
var Pt = R(() => import("./DashboardPage-
|
|
165
|
-
function
|
|
164
|
+
var Pt = R(() => import("./DashboardPage-3ZOnwg1a.js")), Ft = R(() => import("./OrdersListPage-CJzHbgY3.js")), It = R(() => import("./OrderDetailsPage-D-9lDZYU.js")), W = R(() => import("./CreateOrderPage-DfkSi6JF.js")), Lt = R(() => import("./TrackingPage-BldUm_g7.js")), Rt = R(() => import("./LiveTrackingPage-DoBvtdBG.js")), zt = R(() => import("./FleetPage-CPS7r4J3.js")), Bt = R(() => import("./VehiclesPage-CCBHRDHu.js")), Vt = R(() => import("./VehicleDetailsPage-Dqv--MVW.js")), Ht = R(() => import("./DriversPage-BOhqEBTv.js")), Ut = R(() => import("./DriverDetailsPage-YuZSlPSV.js")), Wt = R(() => import("./InventoryPage-C9g5d3SW.js")), Gt = R(() => import("./ProductsPage-B0P_wjBJ.js")), Kt = R(() => import("./ProductDetailsPage-3rKtzXpy.js")), qt = R(() => import("./WarehousesPage-CpgZEVW9.js")), Jt = R(() => import("./WarehouseDetailsPage-ZObC_c7W.js")), Yt = R(() => import("./CustomersPage-d21ixOYa.js")), G = R(() => import("./CustomerDetailsPage-DzAIu_tH.js")), Xt = R(() => import("./RoutesPage-CpopY8xN.js")), K = R(() => import("./RouteDetailsPage-DGjKTUMj.js")), Zt = R(() => import("./AnalyticsPage-DI6Wcaw5.js")), Qt = R(() => import("./FinancePage-CnjUNXOb.js")), $t = R(() => import("./MarketplacePage-BEj5hcBF.js")), en = R(() => import("./ImportExportPage-zNjs7xsV.js")), tn = R(() => import("./ReportsPage-B8OyWGzl.js")), nn = R(() => import("./SettingsPage-BvXSa3gi.js")), rn = R(() => import("./AIAssistantPage-BrHX2lQn.js"));
|
|
165
|
+
function an() {
|
|
166
166
|
return /* @__PURE__ */ V(wt, {
|
|
167
167
|
fallback: /* @__PURE__ */ V(Nt, {}),
|
|
168
168
|
children: /* @__PURE__ */ H(Et, { children: [
|
|
@@ -272,19 +272,19 @@ function rn() {
|
|
|
272
272
|
}),
|
|
273
273
|
/* @__PURE__ */ V(B, {
|
|
274
274
|
path: "import-export",
|
|
275
|
-
element: /* @__PURE__ */ V(
|
|
275
|
+
element: /* @__PURE__ */ V(en, {})
|
|
276
276
|
}),
|
|
277
277
|
/* @__PURE__ */ V(B, {
|
|
278
278
|
path: "reports",
|
|
279
|
-
element: /* @__PURE__ */ V(
|
|
279
|
+
element: /* @__PURE__ */ V(tn, {})
|
|
280
280
|
}),
|
|
281
281
|
/* @__PURE__ */ V(B, {
|
|
282
282
|
path: "ai-assistant",
|
|
283
|
-
element: /* @__PURE__ */ V(
|
|
283
|
+
element: /* @__PURE__ */ V(rn, {})
|
|
284
284
|
}),
|
|
285
285
|
/* @__PURE__ */ V(B, {
|
|
286
286
|
path: "settings",
|
|
287
|
-
element: /* @__PURE__ */ V(
|
|
287
|
+
element: /* @__PURE__ */ V(nn, {})
|
|
288
288
|
}),
|
|
289
289
|
/* @__PURE__ */ V(B, {
|
|
290
290
|
path: "*",
|
|
@@ -298,7 +298,7 @@ function rn() {
|
|
|
298
298
|
}
|
|
299
299
|
//#endregion
|
|
300
300
|
//#region src/movethewheels/MoveTheWheelsRoot.tsx
|
|
301
|
-
var
|
|
301
|
+
var on = (e) => {
|
|
302
302
|
let { registerNavItems: t, registerFooterItems: n, basePath: r = "/" } = e, i = (e, t) => (e.endsWith("/") ? e.slice(0, -1) : e) + (t.startsWith("/") ? t : `/${t}`);
|
|
303
303
|
return z(() => {
|
|
304
304
|
if (t) return t({
|
|
@@ -471,19 +471,19 @@ var an = (e) => {
|
|
|
471
471
|
...e,
|
|
472
472
|
children: /* @__PURE__ */ V("div", {
|
|
473
473
|
className: "movethewheels-root h-full",
|
|
474
|
-
children: /* @__PURE__ */ V(
|
|
474
|
+
children: /* @__PURE__ */ V(an, {})
|
|
475
475
|
})
|
|
476
476
|
})
|
|
477
477
|
});
|
|
478
|
-
},
|
|
479
|
-
let t =
|
|
478
|
+
}, q = (e) => !!e.dispatchFromDevtools && typeof e.dispatch == "function", J = /* @__PURE__ */ new Map(), Y = (e) => {
|
|
479
|
+
let t = J.get(e);
|
|
480
480
|
return t ? Object.fromEntries(Object.entries(t.stores).map(([e, t]) => [e, t.getState()])) : {};
|
|
481
|
-
},
|
|
481
|
+
}, sn = (e, t, n) => {
|
|
482
482
|
if (e === void 0) return {
|
|
483
483
|
type: "untracked",
|
|
484
484
|
connection: t.connect(n)
|
|
485
485
|
};
|
|
486
|
-
let r =
|
|
486
|
+
let r = J.get(n.name);
|
|
487
487
|
if (r) return {
|
|
488
488
|
type: "tracked",
|
|
489
489
|
store: e,
|
|
@@ -493,47 +493,49 @@ var an = (e) => {
|
|
|
493
493
|
connection: t.connect(n),
|
|
494
494
|
stores: {}
|
|
495
495
|
};
|
|
496
|
-
return
|
|
496
|
+
return J.set(n.name, i), {
|
|
497
497
|
type: "tracked",
|
|
498
498
|
store: e,
|
|
499
499
|
...i
|
|
500
500
|
};
|
|
501
|
-
},
|
|
501
|
+
}, cn = (e, t) => {
|
|
502
502
|
if (t === void 0) return;
|
|
503
|
-
let n =
|
|
504
|
-
n && (delete n.stores[t], Object.keys(n.stores).length === 0 &&
|
|
505
|
-
},
|
|
503
|
+
let n = J.get(e);
|
|
504
|
+
n && (delete n.stores[t], Object.keys(n.stores).length === 0 && J.delete(e));
|
|
505
|
+
}, ln = /.+ (.+) .+/, un = /^([^@]+)@/;
|
|
506
|
+
function X(e) {
|
|
506
507
|
if (!e) return;
|
|
507
508
|
let t = e.split("\n"), n = t.findIndex((e) => e.includes("api.setState"));
|
|
508
509
|
if (n < 0) return;
|
|
509
510
|
let r = t[n + 1]?.trim() || "";
|
|
510
|
-
return
|
|
511
|
-
}
|
|
511
|
+
return ln.exec(r)?.[1] || un.exec(r)?.[1];
|
|
512
|
+
}
|
|
513
|
+
var dn = (e, t = {}) => (n, r, i) => {
|
|
512
514
|
let { enabled: a, anonymousActionType: o, store: s, ...c } = t, l;
|
|
513
515
|
try {
|
|
514
516
|
l = (a ?? !1) && window.__REDUX_DEVTOOLS_EXTENSION__;
|
|
515
517
|
} catch {}
|
|
516
518
|
if (!l) return e(n, r, i);
|
|
517
|
-
let { connection: u, ...d } =
|
|
519
|
+
let { connection: u, ...d } = sn(s, l, c), f = !0;
|
|
518
520
|
i.setState = ((e, t, a) => {
|
|
519
521
|
let l = n(e, t);
|
|
520
522
|
if (!f) return l;
|
|
521
|
-
let d = a === void 0 ? { type: o ||
|
|
523
|
+
let d = a === void 0 ? { type: o || X((/* @__PURE__ */ Error()).stack) || "anonymous" } : typeof a == "string" ? { type: a } : a;
|
|
522
524
|
return s === void 0 ? (u?.send(d, r()), l) : (u?.send({
|
|
523
525
|
...d,
|
|
524
526
|
type: `${s}/${d.type}`
|
|
525
527
|
}, {
|
|
526
|
-
...
|
|
528
|
+
...Y(c.name),
|
|
527
529
|
[s]: i.getState()
|
|
528
530
|
}), l);
|
|
529
531
|
}), i.devtools = { cleanup: () => {
|
|
530
|
-
u && typeof u.unsubscribe == "function" && u.unsubscribe(),
|
|
532
|
+
u && typeof u.unsubscribe == "function" && u.unsubscribe(), cn(c.name, s);
|
|
531
533
|
} };
|
|
532
534
|
let p = (...e) => {
|
|
533
535
|
let t = f;
|
|
534
536
|
f = !1, n(...e), f = t;
|
|
535
537
|
}, m = e(i.setState, r, i);
|
|
536
|
-
if (d.type === "untracked" ? u?.init(m) : (d.stores[d.store] = i, u?.init(Object.fromEntries(Object.entries(d.stores).map(([e, t]) => [e, e === d.store ? m : t.getState()])))),
|
|
538
|
+
if (d.type === "untracked" ? u?.init(m) : (d.stores[d.store] = i, u?.init(Object.fromEntries(Object.entries(d.stores).map(([e, t]) => [e, e === d.store ? m : t.getState()])))), q(i)) {
|
|
537
539
|
let e = i.dispatch;
|
|
538
540
|
i.dispatch = (...t) => {
|
|
539
541
|
e(...t);
|
|
@@ -558,23 +560,23 @@ var an = (e) => {
|
|
|
558
560
|
JSON.stringify(i.getState()) !== JSON.stringify(t) && p(t);
|
|
559
561
|
return;
|
|
560
562
|
}
|
|
561
|
-
|
|
563
|
+
q(i) && i.dispatch(e);
|
|
562
564
|
});
|
|
563
565
|
case "DISPATCH":
|
|
564
566
|
switch (e.payload.type) {
|
|
565
|
-
case "RESET": return p(m), s === void 0 ? u?.init(i.getState()) : u?.init(
|
|
567
|
+
case "RESET": return p(m), s === void 0 ? u?.init(i.getState()) : u?.init(Y(c.name));
|
|
566
568
|
case "COMMIT":
|
|
567
569
|
if (s === void 0) {
|
|
568
570
|
u?.init(i.getState());
|
|
569
571
|
return;
|
|
570
572
|
}
|
|
571
|
-
return u?.init(
|
|
573
|
+
return u?.init(Y(c.name));
|
|
572
574
|
case "ROLLBACK": return Z(e.state, (e) => {
|
|
573
575
|
if (s === void 0) {
|
|
574
576
|
p(e), u?.init(i.getState());
|
|
575
577
|
return;
|
|
576
578
|
}
|
|
577
|
-
p(e[s]), u?.init(
|
|
579
|
+
p(e[s]), u?.init(Y(c.name));
|
|
578
580
|
});
|
|
579
581
|
case "JUMP_TO_STATE":
|
|
580
582
|
case "JUMP_TO_ACTION": return Z(e.state, (e) => {
|
|
@@ -604,7 +606,7 @@ var an = (e) => {
|
|
|
604
606
|
}
|
|
605
607
|
n !== void 0 && t(n);
|
|
606
608
|
};
|
|
607
|
-
function
|
|
609
|
+
function fn(e, t) {
|
|
608
610
|
let n;
|
|
609
611
|
try {
|
|
610
612
|
n = e();
|
|
@@ -641,9 +643,9 @@ var Q = (e) => (t) => {
|
|
|
641
643
|
}
|
|
642
644
|
};
|
|
643
645
|
}
|
|
644
|
-
},
|
|
646
|
+
}, pn = (e, t) => (n, r, i) => {
|
|
645
647
|
let a = {
|
|
646
|
-
storage:
|
|
648
|
+
storage: fn(() => window.localStorage),
|
|
647
649
|
partialize: (e) => e,
|
|
648
650
|
version: 0,
|
|
649
651
|
merge: (e, t) => ({
|
|
@@ -723,7 +725,7 @@ var Q = (e) => (t) => {
|
|
|
723
725
|
inventoryFilters: {},
|
|
724
726
|
customerFilters: {},
|
|
725
727
|
globalSearch: ""
|
|
726
|
-
},
|
|
728
|
+
}, mn = Ot()(dn(pn((e) => ({
|
|
727
729
|
...$,
|
|
728
730
|
setViewMode: (t) => e({ viewMode: t }),
|
|
729
731
|
setSidebarCollapsed: (t) => e({ sidebarCollapsed: t }),
|
|
@@ -767,4 +769,4 @@ var Q = (e) => (t) => {
|
|
|
767
769
|
})
|
|
768
770
|
}), { name: "MoveTheWheelsStore" }));
|
|
769
771
|
//#endregion
|
|
770
|
-
export { T as Avatar, k as AvatarFallback, pe as AvatarImage, x as Badge, M as Button, me as Card, ge as CardContent, E as CardDescription, S as CardFooter, ve as CardHeader, _e as CardTitle, ue as Checkbox, xe as DataTable, N as Dialog, ye as DialogContent, fe as DialogDescription, F as DialogFooter, ne as DialogHeader, r as DialogTitle, P as DialogTrigger, re as DropdownMenu, a as DropdownMenuContent, i as DropdownMenuItem, h as DropdownMenuSeparator, b as DropdownMenuTrigger, A as EmptyState, C as ErrorState, t as Input, y as Label, O as LoadingState, vt as MetricCard, gt as MetricCardSkeleton, _t as MetricGrid,
|
|
772
|
+
export { T as Avatar, k as AvatarFallback, pe as AvatarImage, x as Badge, M as Button, me as Card, ge as CardContent, E as CardDescription, S as CardFooter, ve as CardHeader, _e as CardTitle, ue as Checkbox, xe as DataTable, N as Dialog, ye as DialogContent, fe as DialogDescription, F as DialogFooter, ne as DialogHeader, r as DialogTitle, P as DialogTrigger, re as DropdownMenu, a as DropdownMenuContent, i as DropdownMenuItem, h as DropdownMenuSeparator, b as DropdownMenuTrigger, A as EmptyState, C as ErrorState, t as Input, y as Label, O as LoadingState, vt as MetricCard, gt as MetricCardSkeleton, _t as MetricGrid, on as MoveTheWheelsRoot, _ as PageLayout, de as PageSection, Ct as PaymentStatusBadge, xt as PriorityBadge, p as Progress, m as ScrollArea, g as Select, o as SelectContent, l as SelectItem, f as SelectTrigger, te as SelectValue, be as Separator, n as Skeleton, St as StatusBadge, ae as Switch, c as Table, ie as TableBody, oe as TableCell, s as TableHead, d as TableHeader, D as TableRow, u as Tabs, ce as TabsContent, se as TabsList, le as TabsTrigger, ee as Textarea, e as Tooltip, he as TooltipContent, j as TooltipProvider, w as TooltipTrigger, bt as TypeBadge, yt as VehicleTypeBadge, ct as useAnalytics, $e as useCustomer, Ze as useCustomerStats, Qe as useCustomers, at as useDashboardMetrics, We as useDriver, ht as useDriverTracking, Ve as useDrivers, Ue as useFleet, st as useFleetAnalytics, Be as useFleetStats, dt as useGeofence, Xe as useInventory, qe as useInventoryStats, pt as useLiveTracking, Fe as useMoveTheWheels, Ne as useMoveTheWheelsNavigate, mn as useMoveTheWheelsStore, Re as useOrder, it as useOrderAnalytics, Ie as useOrderStats, ut as useOrderTracking, Le as useOrders, rt as usePerformanceAnalytics, Ye as useProduct, Ke as useProducts, ot as useRevenueAnalytics, nt as useRoute, et as useRouteStats, tt as useRoutes, lt as useTracking, ft as useTrackingAlerts, ze as useVehicle, mt as useVehicleTracking, He as useVehicles, Ge as useWarehouse, Je as useWarehouses };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/map.js
|
|
3
3
|
var t = e("Map", [
|
|
4
4
|
["path", {
|
|
5
5
|
d: "M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619v12.764a1 1 0 0 1-.553.894l-4.553 2.277a2 2 0 0 1-1.788 0l-4.212-2.106a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0z",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/map-pin.js
|
|
3
3
|
var t = e("MapPin", [["path", {
|
|
4
4
|
d: "M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",
|
|
5
5
|
key: "1r0f0z"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/package.js
|
|
3
3
|
var t = e("Package", [
|
|
4
4
|
["path", {
|
|
5
5
|
d: "M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/mail.js
|
|
3
3
|
var t = e("Mail", [["rect", {
|
|
4
4
|
width: "20",
|
|
5
5
|
height: "16",
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/plus.js
|
|
3
|
+
var t = e("Plus", [["path", {
|
|
4
|
+
d: "M5 12h14",
|
|
5
|
+
key: "1ays0h"
|
|
6
|
+
}], ["path", {
|
|
7
|
+
d: "M12 5v14",
|
|
8
|
+
key: "s699le"
|
|
9
|
+
}]]);
|
|
10
|
+
//#endregion
|
|
11
|
+
export { t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/refresh-cw.js
|
|
3
3
|
var t = e("RefreshCw", [
|
|
4
4
|
["path", {
|
|
5
5
|
d: "M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/bot.js
|
|
3
3
|
var t = e("Bot", [
|
|
4
4
|
["path", {
|
|
5
5
|
d: "M12 8V4H8",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/save.js
|
|
3
3
|
var t = e("Save", [
|
|
4
4
|
["path", {
|
|
5
5
|
d: "M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/search.js
|
|
3
|
+
var t = e("Search", [["circle", {
|
|
4
|
+
cx: "11",
|
|
5
|
+
cy: "11",
|
|
6
|
+
r: "8",
|
|
7
|
+
key: "4ej97u"
|
|
8
|
+
}], ["path", {
|
|
9
|
+
d: "m21 21-4.3-4.3",
|
|
10
|
+
key: "1qie3q"
|
|
11
|
+
}]]);
|
|
12
|
+
//#endregion
|
|
13
|
+
export { t };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/globe.js
|
|
3
3
|
var t = e("Globe", [
|
|
4
4
|
["circle", {
|
|
5
5
|
cx: "12",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/square-pen.js
|
|
3
3
|
var t = e("SquarePen", [["path", {
|
|
4
4
|
d: "M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",
|
|
5
5
|
key: "1m0v6g"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/star.js
|
|
3
3
|
var t = e("Star", [["path", {
|
|
4
4
|
d: "M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",
|
|
5
5
|
key: "r04s7s"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/store.js
|
|
3
3
|
var t = e("Store", [
|
|
4
4
|
["path", {
|
|
5
5
|
d: "m2 7 4.41-4.41A2 2 0 0 1 7.83 2h8.34a2 2 0 0 1 1.42.59L22 7",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/trending-up.js
|
|
3
3
|
var t = e("TrendingUp", [["polyline", {
|
|
4
4
|
points: "22 7 13.5 15.5 8.5 10.5 2 17",
|
|
5
5
|
key: "126l90"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/triangle-alert.js
|
|
3
3
|
var t = e("TriangleAlert", [
|
|
4
4
|
["path", {
|
|
5
5
|
d: "m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/truck.js
|
|
3
3
|
var t = e("Truck", [
|
|
4
4
|
["path", {
|
|
5
5
|
d: "M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/user.js
|
|
3
3
|
var t = e("User", [["path", {
|
|
4
4
|
d: "M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",
|
|
5
5
|
key: "975kel"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/users.js
|
|
3
3
|
var t = e("Users", [
|
|
4
4
|
["path", {
|
|
5
5
|
d: "M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/warehouse.js
|
|
3
3
|
var t = e("Warehouse", [
|
|
4
4
|
["path", {
|
|
5
5
|
d: "M22 8.35V20a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V8.35A2 2 0 0 1 3.26 6.5l8-3.2a2 2 0 0 1 1.48 0l8 3.2A2 2 0 0 1 22 8.35Z",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { it as e } from "./PageLayout-
|
|
2
|
-
//#region
|
|
1
|
+
import { it as e } from "./PageLayout-xDTiBTDS.js";
|
|
2
|
+
//#region node_modules/lucide-react/dist/esm/icons/fuel.js
|
|
3
3
|
var t = e("Fuel", [
|
|
4
4
|
["line", {
|
|
5
5
|
x1: "3",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@burdenoff/microfe-movethewheels",
|
|
3
|
-
"version": "2026.
|
|
3
|
+
"version": "2026.624.1",
|
|
4
4
|
"description": "Burdenoff MoveTheWheels Microfrontend - Logistics & Supply Chain Management Platform",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"@apollo/client": "^4.0.11",
|
|
43
|
-
"@burdenoff/fe-libs": "
|
|
43
|
+
"@burdenoff/fe-libs": "2026.518.7",
|
|
44
44
|
"@tanstack/react-query": "^5.90.16",
|
|
45
45
|
"clsx": "^2.1.1",
|
|
46
46
|
"graphql": "^16.12.0",
|
package/src/dev/main.tsx
CHANGED
|
@@ -65,13 +65,13 @@ function MoveTheWheelsApp() {
|
|
|
65
65
|
function Dashboard() {
|
|
66
66
|
const navigate = useNavigate();
|
|
67
67
|
return (
|
|
68
|
-
<div className="min-h-screen flex items-center justify-center bg-
|
|
69
|
-
<div className="bg-
|
|
68
|
+
<div className="min-h-screen flex items-center justify-center bg-bg-sunken/50">
|
|
69
|
+
<div className="bg-bg-surface p-8 rounded-xl shadow-lg text-center border">
|
|
70
70
|
<h1 className="text-2xl font-bold mb-4">Dashboard</h1>
|
|
71
|
-
<p className="text-
|
|
71
|
+
<p className="text-text-secondary mb-6">Welcome to MoveTheWheels!</p>
|
|
72
72
|
<button
|
|
73
73
|
onClick={() => navigate('/movethewheels')}
|
|
74
|
-
className="px-4 py-2 bg-primary text-primary-
|
|
74
|
+
className="px-4 py-2 bg-action-primary-bg text-action-primary-text rounded-lg hover:bg-action-primary-bg/90 transition-colors"
|
|
75
75
|
>
|
|
76
76
|
Go to MoveTheWheels
|
|
77
77
|
</button>
|
|
@@ -14,7 +14,7 @@ function PageLoader() {
|
|
|
14
14
|
<div className="flex items-center justify-center min-h-[400px]">
|
|
15
15
|
<div className="flex flex-col items-center gap-3">
|
|
16
16
|
<div className="animate-spin rounded-full h-8 w-8 border-b-2 border-primary"></div>
|
|
17
|
-
<p className="text-sm text-
|
|
17
|
+
<p className="text-sm text-text-secondary">Loading...</p>
|
|
18
18
|
</div>
|
|
19
19
|
</div>
|
|
20
20
|
);
|
|
@@ -157,7 +157,7 @@ export function DataTable<T extends object>({
|
|
|
157
157
|
// Get sort icon
|
|
158
158
|
const getSortIcon = (columnId: string) => {
|
|
159
159
|
if (sortColumn !== columnId) {
|
|
160
|
-
return <ArrowUpDown className="w-4 h-4 text-
|
|
160
|
+
return <ArrowUpDown className="w-4 h-4 text-text-secondary/50" />;
|
|
161
161
|
}
|
|
162
162
|
if (sortDirection === 'asc') {
|
|
163
163
|
return <ArrowUp className="w-4 h-4 text-primary" />;
|
|
@@ -222,7 +222,7 @@ export function DataTable<T extends object>({
|
|
|
222
222
|
{searchable && (
|
|
223
223
|
<div className="flex items-center gap-4">
|
|
224
224
|
<div className="relative flex-1 max-w-sm">
|
|
225
|
-
<Search className="absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-
|
|
225
|
+
<Search className="absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-text-secondary" />
|
|
226
226
|
<Input
|
|
227
227
|
placeholder={searchPlaceholder}
|
|
228
228
|
value={searchQuery}
|
|
@@ -245,7 +245,7 @@ export function DataTable<T extends object>({
|
|
|
245
245
|
<TableHead
|
|
246
246
|
key={column.id}
|
|
247
247
|
className={cn(
|
|
248
|
-
column.sortable && 'cursor-pointer select-none hover:bg-
|
|
248
|
+
column.sortable && 'cursor-pointer select-none hover:bg-bg-sunken/50',
|
|
249
249
|
column.headerClassName
|
|
250
250
|
)}
|
|
251
251
|
onClick={() => column.sortable && handleSort(column.id)}
|
|
@@ -262,7 +262,7 @@ export function DataTable<T extends object>({
|
|
|
262
262
|
{paginatedData.length === 0 ? (
|
|
263
263
|
<TableRow>
|
|
264
264
|
<TableCell colSpan={columns.length} className="h-24 text-center">
|
|
265
|
-
<p className="text-
|
|
265
|
+
<p className="text-text-secondary">{emptyMessage}</p>
|
|
266
266
|
</TableCell>
|
|
267
267
|
</TableRow>
|
|
268
268
|
) : (
|
|
@@ -274,7 +274,7 @@ export function DataTable<T extends object>({
|
|
|
274
274
|
return (
|
|
275
275
|
<TableRow
|
|
276
276
|
key={rowId}
|
|
277
|
-
className={cn(onRowClick && 'cursor-pointer hover:bg-
|
|
277
|
+
className={cn(onRowClick && 'cursor-pointer hover:bg-bg-sunken/50', rowClasses)}
|
|
278
278
|
onClick={() => onRowClick?.(row)}
|
|
279
279
|
>
|
|
280
280
|
{columns.map((column) => (
|
|
@@ -293,7 +293,7 @@ export function DataTable<T extends object>({
|
|
|
293
293
|
{/* Pagination */}
|
|
294
294
|
{pagination && sortedData.length > 0 && (
|
|
295
295
|
<div className="flex items-center justify-between">
|
|
296
|
-
<div className="flex items-center gap-2 text-sm text-
|
|
296
|
+
<div className="flex items-center gap-2 text-sm text-text-secondary">
|
|
297
297
|
<span>
|
|
298
298
|
Showing {(currentPage - 1) * pageSize + 1} to{' '}
|
|
299
299
|
{Math.min(currentPage * pageSize, sortedData.length)} of {sortedData.length}
|
|
@@ -66,7 +66,7 @@ export function MetricCard({
|
|
|
66
66
|
const changeColors = {
|
|
67
67
|
positive: 'text-green-600 dark:text-green-400',
|
|
68
68
|
negative: 'text-red-600 dark:text-red-400',
|
|
69
|
-
neutral: 'text-
|
|
69
|
+
neutral: 'text-text-secondary',
|
|
70
70
|
};
|
|
71
71
|
|
|
72
72
|
const trendIcons = {
|
|
@@ -109,11 +109,11 @@ export function MetricCard({
|
|
|
109
109
|
<CardContent className={styles.card}>
|
|
110
110
|
<div className="flex items-start justify-between">
|
|
111
111
|
<div className="space-y-1">
|
|
112
|
-
<p className={cn('text-
|
|
113
|
-
<p className={cn('text-
|
|
112
|
+
<p className={cn('text-text-secondary', styles.label)}>{label}</p>
|
|
113
|
+
<p className={cn('text-text-primary tracking-tight', styles.value)}>
|
|
114
114
|
{typeof value === 'number' ? value.toLocaleString() : value}
|
|
115
115
|
</p>
|
|
116
|
-
{subtitle && <p className="text-xs text-
|
|
116
|
+
{subtitle && <p className="text-xs text-text-secondary">{subtitle}</p>}
|
|
117
117
|
{change && (
|
|
118
118
|
<div className={cn('flex items-center gap-1 text-sm', changeColors[changeType])}>
|
|
119
119
|
{trend && trendIcons[trend]}
|
|
@@ -123,7 +123,7 @@ export function MetricCard({
|
|
|
123
123
|
</div>
|
|
124
124
|
{icon && (
|
|
125
125
|
<div
|
|
126
|
-
className={cn('flex-shrink-0 p-2 rounded-lg bg-primary/10 text-primary', styles.icon)}
|
|
126
|
+
className={cn('flex-shrink-0 p-2 rounded-lg bg-action-primary-bg/10 text-primary', styles.icon)}
|
|
127
127
|
>
|
|
128
128
|
{icon}
|
|
129
129
|
</div>
|
|
@@ -145,11 +145,11 @@ export function MetricCardSkeleton({ size = 'md' }: { size?: 'sm' | 'md' | 'lg'
|
|
|
145
145
|
<CardContent className={styles.card}>
|
|
146
146
|
<div className="flex items-start justify-between">
|
|
147
147
|
<div className="space-y-2 flex-1">
|
|
148
|
-
<div className="h-4 w-24 bg-
|
|
149
|
-
<div className="h-8 w-32 bg-
|
|
150
|
-
<div className="h-3 w-20 bg-
|
|
148
|
+
<div className="h-4 w-24 bg-bg-sunken animate-pulse rounded" />
|
|
149
|
+
<div className="h-8 w-32 bg-bg-sunken animate-pulse rounded" />
|
|
150
|
+
<div className="h-3 w-20 bg-bg-sunken animate-pulse rounded" />
|
|
151
151
|
</div>
|
|
152
|
-
<div className={cn('bg-
|
|
152
|
+
<div className={cn('bg-bg-sunken animate-pulse rounded-lg', styles.icon)} />
|
|
153
153
|
</div>
|
|
154
154
|
</CardContent>
|
|
155
155
|
</Card>
|