@burdenoff/microfe-movethewheels 2026.625.1 → 2026.626.2

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 (80) hide show
  1. package/dist/{AIAssistantPage-CNyoKtID.js → AIAssistantPage-AvsMbunM.js} +35 -29
  2. package/dist/{AnalyticsPage-Ck615ox7.js → AnalyticsPage-CCLfHgQZ.js} +36 -25
  3. package/dist/CreateOrderPage-CjlnEtk3.js +510 -0
  4. package/dist/CustomerDetailsPage-I6cdDHUi.js +265 -0
  5. package/dist/CustomersPage-CGGfD4ki.js +163 -0
  6. package/dist/{DashboardPage-DTmyuC11.js → DashboardPage-D2HRqwg9.js} +93 -89
  7. package/dist/DataTable-CD9ZhpLB.js +249 -0
  8. package/dist/DriverDetailsPage-rg_pGNuP.js +330 -0
  9. package/dist/DriversPage-DKiynISH.js +167 -0
  10. package/dist/FinancePage-Vg8WPs38.js +158 -0
  11. package/dist/{FleetPage-DCfOmBa2.js → FleetPage-DddXt8r8.js} +109 -71
  12. package/dist/ImportExportPage-BW6qO3kc.js +248 -0
  13. package/dist/{InventoryPage-BW0QXWuf.js → InventoryPage-rMGuaJN-.js} +74 -70
  14. package/dist/LiveTrackingPage-DQ1q4Id3.js +375 -0
  15. package/dist/MarketplacePage-DKrXAv62.js +219 -0
  16. package/dist/OrderDetailsPage-CFASgsYX.js +431 -0
  17. package/dist/OrdersListPage-BHeT8S5o.js +309 -0
  18. package/dist/ProductDetailsPage-CFGcbaHo.js +195 -0
  19. package/dist/ProductsPage--xEpbQ8A.js +171 -0
  20. package/dist/{ReportsPage-Df3hciPy.js → ReportsPage-Bb7_90rK.js} +53 -45
  21. package/dist/RouteDetailsPage-CVtDVb1N.js +282 -0
  22. package/dist/RoutesPage-s57PtgcQ.js +163 -0
  23. package/dist/SettingsPage-BYNCBOpN.js +298 -0
  24. package/dist/{TrackingPage-CU0Vk4mx.js → TrackingPage-CcRc_dva.js} +77 -72
  25. package/dist/VehicleDetailsPage-3YDMPsPs.js +220 -0
  26. package/dist/VehiclesPage-UlxPWP9K.js +167 -0
  27. package/dist/WarehouseDetailsPage-Db7KeN-d.js +238 -0
  28. package/dist/WarehousesPage-CuTO-OPp.js +164 -0
  29. package/dist/index.js +2 -2
  30. package/package.json +2 -2
  31. package/src/movethewheels/components/DataTable.tsx +37 -2
  32. package/src/movethewheels/components/MetricCard.tsx +3 -1
  33. package/src/movethewheels/pages/AIAssistantPage.tsx +11 -3
  34. package/src/movethewheels/pages/AnalyticsPage.tsx +31 -25
  35. package/src/movethewheels/pages/CreateOrderPage.tsx +56 -17
  36. package/src/movethewheels/pages/CustomerDetailsPage.tsx +63 -38
  37. package/src/movethewheels/pages/CustomersPage.tsx +40 -2
  38. package/src/movethewheels/pages/DashboardPage.tsx +8 -1
  39. package/src/movethewheels/pages/DriverDetailsPage.tsx +57 -26
  40. package/src/movethewheels/pages/DriversPage.tsx +37 -1
  41. package/src/movethewheels/pages/FinancePage.tsx +45 -41
  42. package/src/movethewheels/pages/FleetPage.tsx +68 -25
  43. package/src/movethewheels/pages/ImportExportPage.tsx +46 -29
  44. package/src/movethewheels/pages/InventoryPage.tsx +20 -23
  45. package/src/movethewheels/pages/LiveTrackingPage.tsx +58 -20
  46. package/src/movethewheels/pages/MarketplacePage.tsx +37 -3
  47. package/src/movethewheels/pages/OrderDetailsPage.tsx +74 -46
  48. package/src/movethewheels/pages/OrdersListPage.tsx +62 -1
  49. package/src/movethewheels/pages/ProductDetailsPage.tsx +36 -11
  50. package/src/movethewheels/pages/ProductsPage.tsx +33 -1
  51. package/src/movethewheels/pages/ReportsPage.tsx +23 -19
  52. package/src/movethewheels/pages/RouteDetailsPage.tsx +71 -31
  53. package/src/movethewheels/pages/RoutesPage.tsx +41 -5
  54. package/src/movethewheels/pages/SettingsPage.tsx +68 -26
  55. package/src/movethewheels/pages/TrackingPage.tsx +50 -47
  56. package/src/movethewheels/pages/VehicleDetailsPage.tsx +49 -24
  57. package/src/movethewheels/pages/VehiclesPage.tsx +33 -1
  58. package/src/movethewheels/pages/WarehouseDetailsPage.tsx +55 -30
  59. package/src/movethewheels/pages/WarehousesPage.tsx +42 -4
  60. package/dist/CreateOrderPage-C9Vb57Yn.js +0 -471
  61. package/dist/CustomerDetailsPage-BVkHRZvi.js +0 -239
  62. package/dist/CustomersPage-DhQg-6h_.js +0 -118
  63. package/dist/DataTable-CfWvFw5B.js +0 -239
  64. package/dist/DriverDetailsPage-DaaCQ-2O.js +0 -297
  65. package/dist/DriversPage-D0RMBB_t.js +0 -129
  66. package/dist/FinancePage-BUXqW1IM.js +0 -154
  67. package/dist/ImportExportPage-BM1BoRcE.js +0 -232
  68. package/dist/LiveTrackingPage-DqcGXdkw.js +0 -332
  69. package/dist/MarketplacePage-DFqsxNYU.js +0 -192
  70. package/dist/OrderDetailsPage-Dx1m3cVA.js +0 -398
  71. package/dist/OrdersListPage-DHYBGrWf.js +0 -256
  72. package/dist/ProductDetailsPage-DOXO90kb.js +0 -168
  73. package/dist/ProductsPage-RLMTwWN0.js +0 -133
  74. package/dist/RouteDetailsPage-xzFDeR-X.js +0 -240
  75. package/dist/RoutesPage-DDFy1QVi.js +0 -118
  76. package/dist/SettingsPage-JH_-UPbf.js +0 -247
  77. package/dist/VehicleDetailsPage-P4xDttKw.js +0 -194
  78. package/dist/VehiclesPage-tJZ64QKV.js +0 -129
  79. package/dist/WarehouseDetailsPage-Bt_w2Yf7.js +0 -215
  80. package/dist/WarehousesPage-HsPpEFeG.js +0 -126
@@ -1,256 +0,0 @@
1
- import { F as e, I as t, L as n, P as r, R as i, d as a, f as o, i as s, l as c, u as l } from "./PageLayout-D3N8MCTm.js";
2
- import { t as u } from "./DataTable-CfWvFw5B.js";
3
- import { t as d } from "./download-Dpa9vqoG.js";
4
- import { t as f } from "./filter-Da5OZaHI.js";
5
- import { t as p } from "./package-BE7U0wQE.js";
6
- import { t as m } from "./plus-Dl1rLeJR.js";
7
- import { t as h } from "./refresh-cw-CWfERAit.js";
8
- import { r as g } from "./graphqlClient-CdJyR_ed.js";
9
- import { r as _ } from "./useOrders-D_3_hGMp.js";
10
- import { i as v, n as y, r as b } from "./StatusBadge-CijYQXtb.js";
11
- import { n as x, r as S } from "./formatters-_vJlC-47.js";
12
- import { t as C } from "./navigation-BgnOfsVd.js";
13
- import { useState as w } from "react";
14
- import { jsx as T, jsxs as E } from "react/jsx-runtime";
15
- import { CTAOverflowMenu as D } from "@burdenoff/fe-libs/ui";
16
- import { useI18n as O } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
17
- //#region src/movethewheels/pages/OrdersListPage.tsx
18
- function k() {
19
- let { t: k } = O(), A = (e, t) => {
20
- let n = k(e);
21
- return n === e ? t : n;
22
- }, { basePath: j, navigate: M } = g(), [N, P] = w("all"), [F, I] = w("all"), { orders: L, totalOrders: R, isLoading: z, refetch: B } = _({
23
- filters: {
24
- status: N === "all" ? void 0 : N,
25
- orderType: F === "all" ? void 0 : F
26
- },
27
- limit: 50
28
- }), V = (e) => {
29
- M && M(C(j, e));
30
- }, H = [
31
- {
32
- id: "orderNumber",
33
- header: A("movethewheels.orders.table.orderNumber", "Order #"),
34
- accessorKey: "orderNumber",
35
- sortable: !0,
36
- className: "min-w-[100px] whitespace-nowrap",
37
- cell: (e) => /* @__PURE__ */ T("span", {
38
- className: "font-medium text-primary",
39
- children: e.orderNumber
40
- })
41
- },
42
- {
43
- id: "customer",
44
- header: A("movethewheels.orders.table.customer", "Customer"),
45
- className: "min-w-[180px] max-w-[220px]",
46
- cell: (e) => /* @__PURE__ */ E("div", {
47
- className: "min-w-0",
48
- children: [/* @__PURE__ */ T("p", {
49
- className: "font-medium truncate",
50
- children: e.customerInfo.name
51
- }), /* @__PURE__ */ T("p", {
52
- className: "text-sm text-text-secondary truncate",
53
- children: e.customerInfo.email
54
- })]
55
- })
56
- },
57
- {
58
- id: "status",
59
- header: A("movethewheels.orders.table.status", "Status"),
60
- accessorKey: "status",
61
- sortable: !0,
62
- className: "min-w-[130px] whitespace-nowrap",
63
- cell: (e) => /* @__PURE__ */ T(b, {
64
- status: e.status,
65
- type: "order"
66
- })
67
- },
68
- {
69
- id: "type",
70
- header: A("movethewheels.orders.table.type", "Type"),
71
- accessorKey: "orderType",
72
- className: "min-w-[70px] whitespace-nowrap",
73
- cell: (e) => /* @__PURE__ */ T(v, { type: e.orderType })
74
- },
75
- {
76
- id: "priority",
77
- header: A("movethewheels.orders.table.priority", "Priority"),
78
- accessorKey: "priority",
79
- sortable: !0,
80
- className: "min-w-[90px] whitespace-nowrap",
81
- cell: (e) => /* @__PURE__ */ T(y, { priority: e.priority })
82
- },
83
- {
84
- id: "items",
85
- header: A("movethewheels.orders.table.items", "Items"),
86
- className: "min-w-[80px] whitespace-nowrap",
87
- cell: (e) => /* @__PURE__ */ E(c, {
88
- variant: "secondary",
89
- children: [
90
- e.items.length,
91
- " ",
92
- A("movethewheels.orders.table.itemsSuffix", "items")
93
- ]
94
- })
95
- },
96
- {
97
- id: "total",
98
- header: A("movethewheels.orders.table.total", "Total"),
99
- accessorKey: "pricing",
100
- sortable: !0,
101
- className: "min-w-[100px] whitespace-nowrap text-right",
102
- cell: (e) => /* @__PURE__ */ T("span", {
103
- className: "font-medium",
104
- children: x(e.pricing.total)
105
- })
106
- },
107
- {
108
- id: "scheduledDelivery",
109
- header: A("movethewheels.orders.table.deliveryDate", "Delivery Date"),
110
- accessorKey: "scheduledDelivery",
111
- sortable: !0,
112
- className: "min-w-[110px] whitespace-nowrap",
113
- cell: (e) => e.scheduledDelivery ? S(e.scheduledDelivery) : "-"
114
- },
115
- {
116
- id: "createdAt",
117
- header: A("movethewheels.orders.table.created", "Created"),
118
- accessorKey: "createdAt",
119
- sortable: !0,
120
- className: "min-w-[100px] whitespace-nowrap",
121
- cell: (e) => S(e.createdAt, "relative")
122
- }
123
- ], U = [
124
- {
125
- value: "all",
126
- label: A("movethewheels.orders.filters.allStatuses", "All Statuses")
127
- },
128
- {
129
- value: "pending",
130
- label: A("movethewheels.orders.status.pending", "Pending")
131
- },
132
- {
133
- value: "confirmed",
134
- label: A("movethewheels.orders.status.confirmed", "Confirmed")
135
- },
136
- {
137
- value: "assigned",
138
- label: A("movethewheels.orders.status.assigned", "Assigned")
139
- },
140
- {
141
- value: "picked_up",
142
- label: A("movethewheels.orders.status.pickedUp", "Picked Up")
143
- },
144
- {
145
- value: "in_transit",
146
- label: A("movethewheels.orders.status.inTransit", "In Transit")
147
- },
148
- {
149
- value: "out_for_delivery",
150
- label: A("movethewheels.orders.status.outForDelivery", "Out for Delivery")
151
- },
152
- {
153
- value: "delivered",
154
- label: A("movethewheels.orders.status.delivered", "Delivered")
155
- },
156
- {
157
- value: "cancelled",
158
- label: A("movethewheels.orders.status.cancelled", "Cancelled")
159
- },
160
- {
161
- value: "failed",
162
- label: A("movethewheels.orders.status.failed", "Failed")
163
- }
164
- ];
165
- return /* @__PURE__ */ E(s, {
166
- title: A("movethewheels.orders.title", "Orders"),
167
- subtitle: `${R} ${A("movethewheels.orders.subtitle", "total orders")}`,
168
- icon: /* @__PURE__ */ T(p, { size: 24 }),
169
- headerActions: /* @__PURE__ */ T(D, {
170
- primary: {
171
- label: A("movethewheels.orders.actions.newOrder", "New Order"),
172
- icon: /* @__PURE__ */ T(m, { size: 16 }),
173
- onSelect: () => V("orders/new")
174
- },
175
- actions: [{
176
- label: A("movethewheels.orders.actions.refresh", "Refresh"),
177
- icon: /* @__PURE__ */ T(h, { size: 16 }),
178
- onSelect: () => B()
179
- }, {
180
- label: A("movethewheels.orders.actions.export", "Export"),
181
- icon: /* @__PURE__ */ T(d, { size: 16 }),
182
- onSelect: () => {}
183
- }]
184
- }),
185
- children: [/* @__PURE__ */ T(a, { children: /* @__PURE__ */ T(o, {
186
- className: "p-4",
187
- children: /* @__PURE__ */ E("div", {
188
- className: "flex flex-wrap items-center gap-4",
189
- children: [
190
- /* @__PURE__ */ E("div", {
191
- className: "flex items-center gap-2",
192
- children: [/* @__PURE__ */ T(f, {
193
- size: 16,
194
- className: "text-text-secondary"
195
- }), /* @__PURE__ */ T("span", {
196
- className: "text-sm font-medium",
197
- children: A("movethewheels.orders.filters.label", "Filters:")
198
- })]
199
- }),
200
- /* @__PURE__ */ E(r, {
201
- value: N,
202
- onValueChange: (e) => P(e),
203
- children: [/* @__PURE__ */ T(n, {
204
- className: "w-[180px]",
205
- children: /* @__PURE__ */ T(i, { placeholder: A("movethewheels.orders.filters.status", "Status") })
206
- }), /* @__PURE__ */ T(e, { children: U.map((e) => /* @__PURE__ */ T(t, {
207
- value: e.value,
208
- children: e.label
209
- }, e.value)) })]
210
- }),
211
- /* @__PURE__ */ E(r, {
212
- value: F,
213
- onValueChange: (e) => I(e),
214
- children: [/* @__PURE__ */ T(n, {
215
- className: "w-[150px]",
216
- children: /* @__PURE__ */ T(i, { placeholder: A("movethewheels.orders.filters.type", "Type") })
217
- }), /* @__PURE__ */ E(e, { children: [
218
- /* @__PURE__ */ T(t, {
219
- value: "all",
220
- children: A("movethewheels.orders.filters.allTypes", "All Types")
221
- }),
222
- /* @__PURE__ */ T(t, {
223
- value: "b2b",
224
- children: "B2B"
225
- }),
226
- /* @__PURE__ */ T(t, {
227
- value: "b2c",
228
- children: "B2C"
229
- })
230
- ] })]
231
- }),
232
- (N !== "all" || F !== "all") && /* @__PURE__ */ T(l, {
233
- variant: "ghost",
234
- size: "sm",
235
- onClick: () => {
236
- P("all"), I("all");
237
- },
238
- children: A("movethewheels.orders.filters.clear", "Clear filters")
239
- })
240
- ]
241
- })
242
- }) }), /* @__PURE__ */ T(u, {
243
- columns: H,
244
- data: L,
245
- isLoading: z,
246
- searchable: !0,
247
- searchPlaceholder: A("movethewheels.orders.searchPlaceholder", "Search orders..."),
248
- searchFields: ["orderNumber", "customerInfo"],
249
- onRowClick: (e) => V(`orders/${e.id}`),
250
- getRowId: (e) => e.id,
251
- emptyMessage: A("movethewheels.orders.empty", "No orders found")
252
- })]
253
- });
254
- }
255
- //#endregion
256
- export { k as default };
@@ -1,168 +0,0 @@
1
- import { d as e, f as t, g as n, h as r, i, it as a, l as o, n as s, r as c, u as l } from "./PageLayout-D3N8MCTm.js";
2
- import { t as u } from "./arrow-left-CBpZKkpq.js";
3
- import { t as d } from "./box-CAaiElsb.js";
4
- import { t as f } from "./dollar-sign-IB4O0wuQ.js";
5
- import { t as p } from "./package-BE7U0wQE.js";
6
- import { t as m } from "./square-pen-hLIbFQFV.js";
7
- import { r as h } from "./graphqlClient-CdJyR_ed.js";
8
- import { r as g } from "./useInventory-Dwn18FPz.js";
9
- import { n as _ } from "./formatters-_vJlC-47.js";
10
- import { t as v } from "./navigation-BgnOfsVd.js";
11
- import { useParams as y } from "react-router-dom";
12
- import { jsx as b, jsxs as x } from "react/jsx-runtime";
13
- //#region node_modules/lucide-react/dist/esm/icons/tag.js
14
- var S = a("Tag", [["path", {
15
- d: "M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",
16
- key: "vktsd0"
17
- }], ["circle", {
18
- cx: "7.5",
19
- cy: "7.5",
20
- r: ".5",
21
- fill: "currentColor",
22
- key: "kqv944"
23
- }]]);
24
- //#endregion
25
- //#region src/movethewheels/pages/ProductDetailsPage.tsx
26
- function C() {
27
- let { productId: a } = y(), { basePath: C, navigate: w } = h(), { product: T, isLoading: E, error: D, refetch: O } = g(a);
28
- return E ? /* @__PURE__ */ b(c, { message: "Loading product details..." }) : D || !T ? /* @__PURE__ */ b(s, {
29
- title: "Product not found",
30
- onRetry: O
31
- }) : /* @__PURE__ */ b(i, {
32
- title: T.name,
33
- subtitle: `SKU: ${T.sku}`,
34
- icon: /* @__PURE__ */ b(p, { size: 24 }),
35
- headerActions: /* @__PURE__ */ x("div", {
36
- className: "flex gap-2",
37
- children: [/* @__PURE__ */ x(l, {
38
- variant: "outline",
39
- onClick: () => w?.(v(C, "inventory/products")),
40
- children: [/* @__PURE__ */ b(u, { size: 16 }), " Back"]
41
- }), /* @__PURE__ */ x(l, { children: [/* @__PURE__ */ b(m, { size: 16 }), " Edit"] })]
42
- }),
43
- headerContent: /* @__PURE__ */ x("div", {
44
- className: "flex gap-2",
45
- children: [
46
- /* @__PURE__ */ b(o, {
47
- variant: "outline",
48
- children: T.category
49
- }),
50
- T.brand && /* @__PURE__ */ b(o, {
51
- variant: "secondary",
52
- children: T.brand
53
- }),
54
- T.fragile && /* @__PURE__ */ b(o, {
55
- variant: "destructive",
56
- children: "Fragile"
57
- }),
58
- T.hazardous && /* @__PURE__ */ b(o, {
59
- variant: "destructive",
60
- children: "Hazardous"
61
- }),
62
- T.temperatureControlled && /* @__PURE__ */ b(o, {
63
- variant: "secondary",
64
- children: "Temp Controlled"
65
- })
66
- ]
67
- }),
68
- children: /* @__PURE__ */ x("div", {
69
- className: "grid grid-cols-1 lg:grid-cols-3 gap-6",
70
- children: [/* @__PURE__ */ x("div", {
71
- className: "lg:col-span-2 space-y-6",
72
- children: [
73
- /* @__PURE__ */ x(e, { children: [/* @__PURE__ */ b(r, { children: /* @__PURE__ */ b(n, { children: "Description" }) }), /* @__PURE__ */ b(t, { children: /* @__PURE__ */ b("p", { children: T.description }) })] }),
74
- /* @__PURE__ */ x(e, { children: [/* @__PURE__ */ b(r, { children: /* @__PURE__ */ x(n, {
75
- className: "flex items-center gap-2",
76
- children: [/* @__PURE__ */ b(d, { size: 18 }), " Dimensions & Weight"]
77
- }) }), /* @__PURE__ */ b(t, { children: /* @__PURE__ */ x("div", {
78
- className: "grid grid-cols-2 md:grid-cols-4 gap-4",
79
- children: [
80
- /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
81
- className: "text-sm text-text-secondary",
82
- children: "Length"
83
- }), /* @__PURE__ */ x("p", {
84
- className: "text-2xl font-bold",
85
- children: [T.dimensions.length, /* @__PURE__ */ x("span", {
86
- className: "text-sm font-normal",
87
- children: [" ", T.dimensions.unit]
88
- })]
89
- })] }),
90
- /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
91
- className: "text-sm text-text-secondary",
92
- children: "Width"
93
- }), /* @__PURE__ */ x("p", {
94
- className: "text-2xl font-bold",
95
- children: [T.dimensions.width, /* @__PURE__ */ x("span", {
96
- className: "text-sm font-normal",
97
- children: [" ", T.dimensions.unit]
98
- })]
99
- })] }),
100
- /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
101
- className: "text-sm text-text-secondary",
102
- children: "Height"
103
- }), /* @__PURE__ */ x("p", {
104
- className: "text-2xl font-bold",
105
- children: [T.dimensions.height, /* @__PURE__ */ x("span", {
106
- className: "text-sm font-normal",
107
- children: [" ", T.dimensions.unit]
108
- })]
109
- })] }),
110
- /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
111
- className: "text-sm text-text-secondary",
112
- children: "Weight"
113
- }), /* @__PURE__ */ x("p", {
114
- className: "text-2xl font-bold",
115
- children: [T.weight, /* @__PURE__ */ b("span", {
116
- className: "text-sm font-normal",
117
- children: " kg"
118
- })]
119
- })] })
120
- ]
121
- }) })] }),
122
- T.attributes.length > 0 && /* @__PURE__ */ x(e, { children: [/* @__PURE__ */ b(r, { children: /* @__PURE__ */ x(n, {
123
- className: "flex items-center gap-2",
124
- children: [/* @__PURE__ */ b(S, { size: 18 }), " Attributes"]
125
- }) }), /* @__PURE__ */ b(t, { children: /* @__PURE__ */ b("div", {
126
- className: "grid grid-cols-2 md:grid-cols-3 gap-4",
127
- children: T.attributes.map((e, t) => /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
128
- className: "text-sm text-text-secondary",
129
- children: e.name
130
- }), /* @__PURE__ */ b("p", {
131
- className: "font-medium",
132
- children: e.value
133
- })] }, t))
134
- }) })] })
135
- ]
136
- }), /* @__PURE__ */ x("div", {
137
- className: "space-y-6",
138
- children: [/* @__PURE__ */ x(e, { children: [/* @__PURE__ */ b(r, { children: /* @__PURE__ */ x(n, {
139
- className: "flex items-center gap-2",
140
- children: [/* @__PURE__ */ b(f, { size: 18 }), " Pricing"]
141
- }) }), /* @__PURE__ */ x(t, { children: [/* @__PURE__ */ b("p", {
142
- className: "text-3xl font-bold",
143
- children: _(T.value)
144
- }), /* @__PURE__ */ b("p", {
145
- className: "text-sm text-text-secondary",
146
- children: "Unit price"
147
- })] })] }), /* @__PURE__ */ x(e, { children: [/* @__PURE__ */ b(r, { children: /* @__PURE__ */ b(n, { children: "Identifiers" }) }), /* @__PURE__ */ x(t, {
148
- className: "space-y-3",
149
- children: [/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
150
- className: "text-sm text-text-secondary",
151
- children: "SKU"
152
- }), /* @__PURE__ */ b("p", {
153
- className: "font-mono",
154
- children: T.sku
155
- })] }), T.barcode && /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
156
- className: "text-sm text-text-secondary",
157
- children: "Barcode"
158
- }), /* @__PURE__ */ b("p", {
159
- className: "font-mono",
160
- children: T.barcode
161
- })] })]
162
- })] })]
163
- })]
164
- })
165
- });
166
- }
167
- //#endregion
168
- export { C as default };
@@ -1,133 +0,0 @@
1
- import { i as e, l as t } from "./PageLayout-D3N8MCTm.js";
2
- import { t as n } from "./DataTable-CfWvFw5B.js";
3
- import { t as r } from "./download-Dpa9vqoG.js";
4
- import { t as i } from "./package-BE7U0wQE.js";
5
- import { t as a } from "./plus-Dl1rLeJR.js";
6
- import { t as o } from "./refresh-cw-CWfERAit.js";
7
- import { r as s } from "./graphqlClient-CdJyR_ed.js";
8
- import { i as c } from "./useInventory-Dwn18FPz.js";
9
- import { n as l } from "./formatters-_vJlC-47.js";
10
- import { t as u } from "./navigation-BgnOfsVd.js";
11
- import { jsx as d, jsxs as f } from "react/jsx-runtime";
12
- import { CTAOverflowMenu as p } from "@burdenoff/fe-libs/ui";
13
- //#region src/movethewheels/pages/ProductsPage.tsx
14
- function m() {
15
- let { basePath: m, navigate: h } = s(), { products: g, totalProducts: _, isLoading: v, refetch: y } = c(), b = (e) => h?.(u(m, e));
16
- return /* @__PURE__ */ d(e, {
17
- title: "Products",
18
- subtitle: `${_} products`,
19
- icon: /* @__PURE__ */ d(i, { size: 24 }),
20
- headerActions: /* @__PURE__ */ d(p, {
21
- primary: {
22
- label: "Add Product",
23
- icon: /* @__PURE__ */ d(a, { size: 16 }),
24
- onSelect: () => {}
25
- },
26
- actions: [{
27
- label: "Refresh",
28
- icon: /* @__PURE__ */ d(o, { size: 16 }),
29
- onSelect: () => y()
30
- }, {
31
- label: "Export",
32
- icon: /* @__PURE__ */ d(r, { size: 16 }),
33
- onSelect: () => {}
34
- }]
35
- }),
36
- children: /* @__PURE__ */ d(n, {
37
- columns: [
38
- {
39
- id: "sku",
40
- header: "SKU",
41
- accessorKey: "sku",
42
- sortable: !0,
43
- cell: (e) => /* @__PURE__ */ d("span", {
44
- className: "font-mono",
45
- children: e.sku
46
- })
47
- },
48
- {
49
- id: "name",
50
- header: "Product Name",
51
- accessorKey: "name",
52
- sortable: !0,
53
- cell: (e) => /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
54
- className: "font-medium",
55
- children: e.name
56
- }), /* @__PURE__ */ d("p", {
57
- className: "text-sm text-text-secondary line-clamp-1",
58
- children: e.description
59
- })] })
60
- },
61
- {
62
- id: "category",
63
- header: "Category",
64
- accessorKey: "category",
65
- sortable: !0,
66
- cell: (e) => /* @__PURE__ */ d(t, {
67
- variant: "outline",
68
- children: e.category
69
- })
70
- },
71
- {
72
- id: "dimensions",
73
- header: "Dimensions",
74
- cell: (e) => `${e.dimensions.length}x${e.dimensions.width}x${e.dimensions.height} ${e.dimensions.unit}`
75
- },
76
- {
77
- id: "weight",
78
- header: "Weight",
79
- accessorKey: "weight",
80
- sortable: !0,
81
- cell: (e) => `${e.weight} kg`
82
- },
83
- {
84
- id: "value",
85
- header: "Value",
86
- accessorKey: "value",
87
- sortable: !0,
88
- cell: (e) => /* @__PURE__ */ d("span", {
89
- className: "font-medium",
90
- children: l(e.value)
91
- })
92
- },
93
- {
94
- id: "flags",
95
- header: "Flags",
96
- cell: (e) => /* @__PURE__ */ f("div", {
97
- className: "flex gap-1",
98
- children: [
99
- e.fragile && /* @__PURE__ */ d(t, {
100
- variant: "destructive",
101
- className: "text-xs",
102
- children: "Fragile"
103
- }),
104
- e.hazardous && /* @__PURE__ */ d(t, {
105
- variant: "destructive",
106
- className: "text-xs",
107
- children: "Hazardous"
108
- }),
109
- e.temperatureControlled && /* @__PURE__ */ d(t, {
110
- variant: "secondary",
111
- className: "text-xs",
112
- children: "Temp Control"
113
- })
114
- ]
115
- })
116
- }
117
- ],
118
- data: g,
119
- isLoading: v,
120
- searchable: !0,
121
- searchPlaceholder: "Search products...",
122
- searchFields: [
123
- "name",
124
- "sku",
125
- "category"
126
- ],
127
- onRowClick: (e) => b(`inventory/products/${e.id}`),
128
- getRowId: (e) => e.id
129
- })
130
- });
131
- }
132
- //#endregion
133
- export { m as default };