@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
@@ -0,0 +1,510 @@
1
+ import { A as e, F as t, I as n, L as r, P as i, Q as a, R as o, d as s, f as c, g as l, h as u, i as d, it as f, j as p, t as m, u as h, z as g } from "./PageLayout-D3N8MCTm.js";
2
+ import { t as _ } from "./arrow-left-CBpZKkpq.js";
3
+ import { t as v } from "./map-pin-BSaf5IDL.js";
4
+ import { t as y } from "./package-BE7U0wQE.js";
5
+ import { t as b } from "./plus-Dl1rLeJR.js";
6
+ import { t as x } from "./save-XH8vydOn.js";
7
+ import { t as S } from "./users-g2N0eL-Z.js";
8
+ import { r as C } from "./graphqlClient-CdJyR_ed.js";
9
+ import { r as w, t as T } from "./useOrders-D_3_hGMp.js";
10
+ import { r as E } from "./useCustomers-bS3a4ytk.js";
11
+ import { t as D } from "./navigation-BgnOfsVd.js";
12
+ import { useState as O } from "react";
13
+ import { useParams as k } from "react-router-dom";
14
+ import { jsx as A, jsxs as j } from "react/jsx-runtime";
15
+ import { EmphasisPanel as M, NextSteps as N, PagePurpose as P } from "@burdenoff/fe-libs/ui";
16
+ //#region node_modules/lucide-react/dist/esm/icons/trash-2.js
17
+ var F = f("Trash2", [
18
+ ["path", {
19
+ d: "M3 6h18",
20
+ key: "d0wm0j"
21
+ }],
22
+ ["path", {
23
+ d: "M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",
24
+ key: "4alrt4"
25
+ }],
26
+ ["path", {
27
+ d: "M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",
28
+ key: "v07s0e"
29
+ }],
30
+ ["line", {
31
+ x1: "10",
32
+ x2: "10",
33
+ y1: "11",
34
+ y2: "17",
35
+ key: "1uufr5"
36
+ }],
37
+ ["line", {
38
+ x1: "14",
39
+ x2: "14",
40
+ y1: "11",
41
+ y2: "17",
42
+ key: "xtxkd"
43
+ }]
44
+ ]);
45
+ //#endregion
46
+ //#region src/movethewheels/pages/CreateOrderPage.tsx
47
+ function I() {
48
+ let { orderId: f } = k(), { basePath: I, navigate: L } = C(), { order: R } = T(f), { createOrder: z } = w(), { customers: B } = E({ limit: 100 }), V = !!f && !!R, [H, U] = O({
49
+ customerId: R?.customerId || "",
50
+ orderType: R?.orderType || "b2c",
51
+ priority: R?.priority || "normal",
52
+ pickupAddress: {
53
+ street: R?.pickupAddress.street || "",
54
+ city: R?.pickupAddress.city || "",
55
+ state: R?.pickupAddress.state || "",
56
+ postalCode: R?.pickupAddress.postalCode || "",
57
+ country: R?.pickupAddress.country || "USA"
58
+ },
59
+ deliveryAddress: {
60
+ street: R?.deliveryAddress.street || "",
61
+ city: R?.deliveryAddress.city || "",
62
+ state: R?.deliveryAddress.state || "",
63
+ postalCode: R?.deliveryAddress.postalCode || "",
64
+ country: R?.deliveryAddress.country || "USA"
65
+ },
66
+ items: R?.items || [],
67
+ specialInstructions: R?.specialInstructions || ""
68
+ }), [W, G] = O(!1), K = () => {
69
+ L && L(D(I, "orders"));
70
+ }, q = async (e) => {
71
+ e.preventDefault(), G(!0);
72
+ try {
73
+ let e = B.find((e) => e.id === H.customerId);
74
+ await z({
75
+ customerId: H.customerId,
76
+ customerInfo: e ? {
77
+ name: e.name,
78
+ email: e.email,
79
+ phone: e.phone,
80
+ company: e.company
81
+ } : {
82
+ name: "New Customer",
83
+ email: "customer@example.com",
84
+ phone: "+1-555-0000"
85
+ },
86
+ orderType: H.orderType,
87
+ priority: H.priority,
88
+ pickupAddress: H.pickupAddress,
89
+ deliveryAddress: H.deliveryAddress,
90
+ items: H.items,
91
+ specialInstructions: H.specialInstructions
92
+ }), K();
93
+ } catch (e) {
94
+ console.error("Failed to create order:", e);
95
+ } finally {
96
+ G(!1);
97
+ }
98
+ }, J = (e, t) => {
99
+ U((n) => ({
100
+ ...n,
101
+ [e]: t
102
+ }));
103
+ }, Y = (e, t, n) => {
104
+ U((r) => ({
105
+ ...r,
106
+ [e]: {
107
+ ...r[e],
108
+ [t]: n
109
+ }
110
+ }));
111
+ }, X = () => {
112
+ U((e) => ({
113
+ ...e,
114
+ items: [...e.items, {
115
+ id: `item-${Date.now()}`,
116
+ productId: "",
117
+ name: "",
118
+ quantity: 1,
119
+ weight: 0,
120
+ dimensions: {
121
+ length: 0,
122
+ width: 0,
123
+ height: 0,
124
+ unit: "cm"
125
+ },
126
+ value: 0,
127
+ sku: ""
128
+ }]
129
+ }));
130
+ }, Z = (e) => {
131
+ U((t) => ({
132
+ ...t,
133
+ items: t.items.filter((t, n) => n !== e)
134
+ }));
135
+ }, Q = (e, t, n) => {
136
+ U((r) => ({
137
+ ...r,
138
+ items: r.items.map((r, i) => i === e ? {
139
+ ...r,
140
+ [t]: n
141
+ } : r)
142
+ }));
143
+ };
144
+ return /* @__PURE__ */ j(d, {
145
+ title: V ? "Edit Order" : "Create Order",
146
+ subtitle: V ? `Editing ${R?.orderNumber}` : "Create a new delivery order",
147
+ icon: /* @__PURE__ */ A(y, { size: 24 }),
148
+ headerActions: /* @__PURE__ */ j("div", {
149
+ className: "flex gap-2",
150
+ children: [/* @__PURE__ */ j(h, {
151
+ variant: "outline",
152
+ onClick: K,
153
+ children: [/* @__PURE__ */ A(_, { size: 16 }), "Cancel"]
154
+ }), /* @__PURE__ */ j(h, {
155
+ onClick: q,
156
+ disabled: W,
157
+ children: [/* @__PURE__ */ A(x, { size: 16 }), W ? "Saving..." : V ? "Save Changes" : "Create Order"]
158
+ })]
159
+ }),
160
+ children: [
161
+ /* @__PURE__ */ A(P, {
162
+ icon: /* @__PURE__ */ A(y, { size: 18 }),
163
+ children: V ? "Update this delivery before it goes out — change the customer, addresses, items or handling notes, then save." : "Book a new delivery in a few steps: choose who it’s for, set pickup and drop-off addresses, list what’s being shipped, and add any handling notes. Once created it joins the orders pipeline ready to assign and track."
164
+ }),
165
+ /* @__PURE__ */ A(N, {
166
+ storageKey: "movethewheels-create-order",
167
+ steps: [
168
+ {
169
+ id: "customer",
170
+ label: "Pick the customer first",
171
+ description: "Their saved contact details auto-fill the order.",
172
+ icon: /* @__PURE__ */ A(S, { size: 16 }),
173
+ done: !!H.customerId,
174
+ onClick: () => document.getElementById("customer")?.focus()
175
+ },
176
+ {
177
+ id: "addresses",
178
+ label: "Set pickup & delivery addresses",
179
+ description: "Where the shipment is collected and dropped off.",
180
+ icon: /* @__PURE__ */ A(v, { size: 16 }),
181
+ done: !!H.pickupAddress.street && !!H.deliveryAddress.street,
182
+ onClick: () => document.getElementById("pickupStreet")?.focus()
183
+ },
184
+ {
185
+ id: "items",
186
+ label: "Add the items to ship",
187
+ description: "List each product with its quantity and value.",
188
+ icon: /* @__PURE__ */ A(y, { size: 16 }),
189
+ done: H.items.length > 0,
190
+ onClick: X
191
+ }
192
+ ]
193
+ }),
194
+ /* @__PURE__ */ j("form", {
195
+ onSubmit: q,
196
+ className: "space-y-6",
197
+ children: [
198
+ /* @__PURE__ */ j(M, { children: [/* @__PURE__ */ A("h2", {
199
+ className: "text-base font-semibold text-text-primary mb-4",
200
+ children: "Order Details"
201
+ }), /* @__PURE__ */ A("div", {
202
+ className: "space-y-4",
203
+ children: /* @__PURE__ */ j("div", {
204
+ className: "grid grid-cols-1 md:grid-cols-3 gap-4",
205
+ children: [
206
+ /* @__PURE__ */ j("div", {
207
+ className: "space-y-2",
208
+ children: [/* @__PURE__ */ A(p, {
209
+ htmlFor: "customer",
210
+ children: "Customer"
211
+ }), /* @__PURE__ */ j(i, {
212
+ value: H.customerId,
213
+ onValueChange: (e) => J("customerId", e),
214
+ children: [/* @__PURE__ */ A(r, {
215
+ id: "customer",
216
+ children: /* @__PURE__ */ A(o, { placeholder: "Select customer" })
217
+ }), /* @__PURE__ */ A(t, { children: B.map((e) => /* @__PURE__ */ j(n, {
218
+ value: e.id,
219
+ children: [
220
+ e.name,
221
+ " (",
222
+ e.email,
223
+ ")"
224
+ ]
225
+ }, e.id)) })]
226
+ })]
227
+ }),
228
+ /* @__PURE__ */ j("div", {
229
+ className: "space-y-2",
230
+ children: [/* @__PURE__ */ A(p, {
231
+ htmlFor: "orderType",
232
+ children: "Order Type"
233
+ }), /* @__PURE__ */ j(i, {
234
+ value: H.orderType,
235
+ onValueChange: (e) => J("orderType", e),
236
+ children: [/* @__PURE__ */ A(r, {
237
+ id: "orderType",
238
+ children: /* @__PURE__ */ A(o, {})
239
+ }), /* @__PURE__ */ j(t, { children: [/* @__PURE__ */ A(n, {
240
+ value: "b2c",
241
+ children: "B2C (Individual)"
242
+ }), /* @__PURE__ */ A(n, {
243
+ value: "b2b",
244
+ children: "B2B (Business)"
245
+ })] })]
246
+ })]
247
+ }),
248
+ /* @__PURE__ */ j("div", {
249
+ className: "space-y-2",
250
+ children: [/* @__PURE__ */ A(p, {
251
+ htmlFor: "priority",
252
+ children: "Priority"
253
+ }), /* @__PURE__ */ j(i, {
254
+ value: H.priority,
255
+ onValueChange: (e) => J("priority", e),
256
+ children: [/* @__PURE__ */ A(r, {
257
+ id: "priority",
258
+ children: /* @__PURE__ */ A(o, {})
259
+ }), /* @__PURE__ */ j(t, { children: [
260
+ /* @__PURE__ */ A(n, {
261
+ value: "low",
262
+ children: "Low"
263
+ }),
264
+ /* @__PURE__ */ A(n, {
265
+ value: "normal",
266
+ children: "Normal"
267
+ }),
268
+ /* @__PURE__ */ A(n, {
269
+ value: "high",
270
+ children: "High"
271
+ }),
272
+ /* @__PURE__ */ A(n, {
273
+ value: "urgent",
274
+ children: "Urgent"
275
+ })
276
+ ] })]
277
+ })]
278
+ })
279
+ ]
280
+ })
281
+ })] }),
282
+ /* @__PURE__ */ j("div", {
283
+ className: "grid grid-cols-1 md:grid-cols-2 gap-6",
284
+ children: [/* @__PURE__ */ j(s, { children: [/* @__PURE__ */ A(u, { children: /* @__PURE__ */ A(l, { children: "Pickup Address" }) }), /* @__PURE__ */ j(c, {
285
+ className: "space-y-4",
286
+ children: [
287
+ /* @__PURE__ */ j("div", {
288
+ className: "space-y-2",
289
+ children: [/* @__PURE__ */ A(p, {
290
+ htmlFor: "pickupStreet",
291
+ children: "Street Address"
292
+ }), /* @__PURE__ */ A(e, {
293
+ id: "pickupStreet",
294
+ value: H.pickupAddress.street,
295
+ onChange: (e) => Y("pickupAddress", "street", e.target.value),
296
+ placeholder: "123 Main St"
297
+ })]
298
+ }),
299
+ /* @__PURE__ */ j("div", {
300
+ className: "grid grid-cols-2 gap-4",
301
+ children: [/* @__PURE__ */ j("div", {
302
+ className: "space-y-2",
303
+ children: [/* @__PURE__ */ A(p, {
304
+ htmlFor: "pickupCity",
305
+ children: "City"
306
+ }), /* @__PURE__ */ A(e, {
307
+ id: "pickupCity",
308
+ value: H.pickupAddress.city,
309
+ onChange: (e) => Y("pickupAddress", "city", e.target.value),
310
+ placeholder: "San Francisco"
311
+ })]
312
+ }), /* @__PURE__ */ j("div", {
313
+ className: "space-y-2",
314
+ children: [/* @__PURE__ */ A(p, {
315
+ htmlFor: "pickupState",
316
+ children: "State"
317
+ }), /* @__PURE__ */ A(e, {
318
+ id: "pickupState",
319
+ value: H.pickupAddress.state,
320
+ onChange: (e) => Y("pickupAddress", "state", e.target.value),
321
+ placeholder: "CA"
322
+ })]
323
+ })]
324
+ }),
325
+ /* @__PURE__ */ j("div", {
326
+ className: "grid grid-cols-2 gap-4",
327
+ children: [/* @__PURE__ */ j("div", {
328
+ className: "space-y-2",
329
+ children: [/* @__PURE__ */ A(p, {
330
+ htmlFor: "pickupPostal",
331
+ children: "Postal Code"
332
+ }), /* @__PURE__ */ A(e, {
333
+ id: "pickupPostal",
334
+ value: H.pickupAddress.postalCode,
335
+ onChange: (e) => Y("pickupAddress", "postalCode", e.target.value),
336
+ placeholder: "94103"
337
+ })]
338
+ }), /* @__PURE__ */ j("div", {
339
+ className: "space-y-2",
340
+ children: [/* @__PURE__ */ A(p, {
341
+ htmlFor: "pickupCountry",
342
+ children: "Country"
343
+ }), /* @__PURE__ */ A(e, {
344
+ id: "pickupCountry",
345
+ value: H.pickupAddress.country,
346
+ onChange: (e) => Y("pickupAddress", "country", e.target.value),
347
+ placeholder: "USA"
348
+ })]
349
+ })]
350
+ })
351
+ ]
352
+ })] }), /* @__PURE__ */ j(s, { children: [/* @__PURE__ */ A(u, { children: /* @__PURE__ */ A(l, { children: "Delivery Address" }) }), /* @__PURE__ */ j(c, {
353
+ className: "space-y-4",
354
+ children: [
355
+ /* @__PURE__ */ j("div", {
356
+ className: "space-y-2",
357
+ children: [/* @__PURE__ */ A(p, {
358
+ htmlFor: "deliveryStreet",
359
+ children: "Street Address"
360
+ }), /* @__PURE__ */ A(e, {
361
+ id: "deliveryStreet",
362
+ value: H.deliveryAddress.street,
363
+ onChange: (e) => Y("deliveryAddress", "street", e.target.value),
364
+ placeholder: "456 Oak Ave"
365
+ })]
366
+ }),
367
+ /* @__PURE__ */ j("div", {
368
+ className: "grid grid-cols-2 gap-4",
369
+ children: [/* @__PURE__ */ j("div", {
370
+ className: "space-y-2",
371
+ children: [/* @__PURE__ */ A(p, {
372
+ htmlFor: "deliveryCity",
373
+ children: "City"
374
+ }), /* @__PURE__ */ A(e, {
375
+ id: "deliveryCity",
376
+ value: H.deliveryAddress.city,
377
+ onChange: (e) => Y("deliveryAddress", "city", e.target.value),
378
+ placeholder: "Los Angeles"
379
+ })]
380
+ }), /* @__PURE__ */ j("div", {
381
+ className: "space-y-2",
382
+ children: [/* @__PURE__ */ A(p, {
383
+ htmlFor: "deliveryState",
384
+ children: "State"
385
+ }), /* @__PURE__ */ A(e, {
386
+ id: "deliveryState",
387
+ value: H.deliveryAddress.state,
388
+ onChange: (e) => Y("deliveryAddress", "state", e.target.value),
389
+ placeholder: "CA"
390
+ })]
391
+ })]
392
+ }),
393
+ /* @__PURE__ */ j("div", {
394
+ className: "grid grid-cols-2 gap-4",
395
+ children: [/* @__PURE__ */ j("div", {
396
+ className: "space-y-2",
397
+ children: [/* @__PURE__ */ A(p, {
398
+ htmlFor: "deliveryPostal",
399
+ children: "Postal Code"
400
+ }), /* @__PURE__ */ A(e, {
401
+ id: "deliveryPostal",
402
+ value: H.deliveryAddress.postalCode,
403
+ onChange: (e) => Y("deliveryAddress", "postalCode", e.target.value),
404
+ placeholder: "90210"
405
+ })]
406
+ }), /* @__PURE__ */ j("div", {
407
+ className: "space-y-2",
408
+ children: [/* @__PURE__ */ A(p, {
409
+ htmlFor: "deliveryCountry",
410
+ children: "Country"
411
+ }), /* @__PURE__ */ A(e, {
412
+ id: "deliveryCountry",
413
+ value: H.deliveryAddress.country,
414
+ onChange: (e) => Y("deliveryAddress", "country", e.target.value),
415
+ placeholder: "USA"
416
+ })]
417
+ })]
418
+ })
419
+ ]
420
+ })] })]
421
+ }),
422
+ /* @__PURE__ */ j(s, { children: [/* @__PURE__ */ j(u, {
423
+ className: "flex flex-row items-center justify-between",
424
+ children: [/* @__PURE__ */ A(l, { children: "Order Items" }), /* @__PURE__ */ j(h, {
425
+ type: "button",
426
+ variant: "outline",
427
+ size: "sm",
428
+ onClick: X,
429
+ children: [/* @__PURE__ */ A(b, { size: 16 }), "Add Item"]
430
+ })]
431
+ }), /* @__PURE__ */ A(c, { children: H.items.length === 0 ? /* @__PURE__ */ A(m, {
432
+ illustration: "empty-files",
433
+ title: "No items added yet",
434
+ description: "Add the products this order will ship — each with a name, SKU, quantity and value.",
435
+ action: /* @__PURE__ */ j(h, {
436
+ type: "button",
437
+ variant: "outline",
438
+ onClick: X,
439
+ children: [/* @__PURE__ */ A(b, {
440
+ size: 16,
441
+ className: "mr-1.5"
442
+ }), "Add your first item"]
443
+ })
444
+ }) : /* @__PURE__ */ A("div", {
445
+ className: "space-y-4",
446
+ children: H.items.map((t, n) => /* @__PURE__ */ j("div", { children: [n > 0 && /* @__PURE__ */ A(g, { className: "my-4" }), /* @__PURE__ */ j("div", {
447
+ className: "grid grid-cols-1 md:grid-cols-6 gap-4",
448
+ children: [
449
+ /* @__PURE__ */ j("div", {
450
+ className: "md:col-span-2 space-y-2",
451
+ children: [/* @__PURE__ */ A(p, { children: "Item Name" }), /* @__PURE__ */ A(e, {
452
+ value: t.name,
453
+ onChange: (e) => Q(n, "name", e.target.value),
454
+ placeholder: "Product name"
455
+ })]
456
+ }),
457
+ /* @__PURE__ */ j("div", {
458
+ className: "space-y-2",
459
+ children: [/* @__PURE__ */ A(p, { children: "SKU" }), /* @__PURE__ */ A(e, {
460
+ value: t.sku,
461
+ onChange: (e) => Q(n, "sku", e.target.value),
462
+ placeholder: "SKU-001"
463
+ })]
464
+ }),
465
+ /* @__PURE__ */ j("div", {
466
+ className: "space-y-2",
467
+ children: [/* @__PURE__ */ A(p, { children: "Quantity" }), /* @__PURE__ */ A(e, {
468
+ type: "number",
469
+ min: "1",
470
+ value: t.quantity,
471
+ onChange: (e) => Q(n, "quantity", parseInt(e.target.value) || 1)
472
+ })]
473
+ }),
474
+ /* @__PURE__ */ j("div", {
475
+ className: "space-y-2",
476
+ children: [/* @__PURE__ */ A(p, { children: "Value ($)" }), /* @__PURE__ */ A(e, {
477
+ type: "number",
478
+ min: "0",
479
+ step: "0.01",
480
+ value: t.value,
481
+ onChange: (e) => Q(n, "value", parseFloat(e.target.value) || 0)
482
+ })]
483
+ }),
484
+ /* @__PURE__ */ A("div", {
485
+ className: "flex items-end",
486
+ children: /* @__PURE__ */ A(h, {
487
+ type: "button",
488
+ variant: "ghost",
489
+ size: "icon",
490
+ className: "text-status-error-text",
491
+ onClick: () => Z(n),
492
+ children: /* @__PURE__ */ A(F, { size: 16 })
493
+ })
494
+ })
495
+ ]
496
+ })] }, t.id))
497
+ }) })] }),
498
+ /* @__PURE__ */ j(s, { children: [/* @__PURE__ */ A(u, { children: /* @__PURE__ */ A(l, { children: "Special Instructions" }) }), /* @__PURE__ */ A(c, { children: /* @__PURE__ */ A(a, {
499
+ value: H.specialInstructions,
500
+ onChange: (e) => J("specialInstructions", e.target.value),
501
+ placeholder: "Any special handling or delivery instructions...",
502
+ rows: 4
503
+ }) })] })
504
+ ]
505
+ })
506
+ ]
507
+ });
508
+ }
509
+ //#endregion
510
+ export { I as default };