@burdenoff/microfe-movethewheels 2026.703.4 → 2026.703.5

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 (149) hide show
  1. package/dist/{AIAssistantPage-3YOnHO9Y.js → AIAssistantPage-D2gaEL1U.js} +16 -15
  2. package/dist/AnalyticsPage-DZMlEoBi.js +194 -0
  3. package/dist/{CreateOrderPage-DRAgGo9i.js → CreateOrderPage-CWHx8yys.js} +40 -40
  4. package/dist/{CustomerDetailsPage-BCeMmOFe.js → CustomerDetailsPage-nR4oZ_ju.js} +71 -71
  5. package/dist/CustomersPage-Bbvwvn8k.js +205 -0
  6. package/dist/DashboardPage-DrEhNf7N.js +542 -0
  7. package/dist/{DataTable-XvUcTjwi.js → DataTable-CqMUD4er.js} +31 -31
  8. package/dist/{DocumentsCard-U2lSe-cn.js → DocumentsCard-edDkgnJj.js} +25 -25
  9. package/dist/{DriverDetailsPage-BQrYd_Lp.js → DriverDetailsPage-whEMOWs9.js} +64 -64
  10. package/dist/DriversPage-CHF2ZEzd.js +221 -0
  11. package/dist/FinancePage-Dn9GrW-1.js +175 -0
  12. package/dist/{FleetPage-3ZHsB-TN.js → FleetPage-CrtGPy-p.js} +22 -22
  13. package/dist/{FormError-cuLV2jVD.js → FormError-BKcb_wT-.js} +1 -1
  14. package/dist/{ImportExportPage-C6f7DqhM.js → ImportExportPage-WYdwZomZ.js} +12 -12
  15. package/dist/InventoryPage-l5A1f753.js +259 -0
  16. package/dist/LiveTrackingPage-DhEaNKZ4.js +429 -0
  17. package/dist/{MarketplacePage-Bh_2ns4v.js → MarketplacePage-B9RYOb1Y.js} +116 -116
  18. package/dist/MetricCard-y3bWHKUQ.js +191 -0
  19. package/dist/{Notice-CSoDYKw9.js → Notice-DOO-tjpV.js} +2 -2
  20. package/dist/{OrderDetailsPage-zCj0lW0j.js → OrderDetailsPage-CwYHwk1K.js} +58 -58
  21. package/dist/OrdersListPage-DhZJoQeI.js +386 -0
  22. package/dist/{PageLayout-D4LDHJJq.js → PageLayout-BniRJaQ6.js} +1 -1
  23. package/dist/{ProductDetailsPage-wsxAQkA0.js → ProductDetailsPage-1Gm9JKy0.js} +55 -55
  24. package/dist/ProductsPage-C8sn-1tN.js +186 -0
  25. package/dist/ReportsPage-D1tb0dcz.js +377 -0
  26. package/dist/{RouteDetailsPage-DyMJE9AS.js → RouteDetailsPage-CkMyR9b_.js} +208 -181
  27. package/dist/{RoutesPage-Dtc669yc.js → RoutesPage-QkENzsE5.js} +12 -12
  28. package/dist/{SettingsPage-CpH9xhQg.js → SettingsPage-DV3_tU_X.js} +15 -15
  29. package/dist/Sparkline-K2RMJ58u.js +16729 -0
  30. package/dist/{StatusBadge-C87mDpDP.js → StatusBadge-BNHXYvZx.js} +7 -7
  31. package/dist/TrackingPage-BZrg4RCu.js +368 -0
  32. package/dist/{VehicleDetailsPage-DldYNsYV.js → VehicleDetailsPage-D-8XPZ2G.js} +53 -53
  33. package/dist/VehiclesPage-D5BELbtM.js +184 -0
  34. package/dist/{WarehouseDetailsPage-CMG7or6G.js → WarehouseDetailsPage-Cmg-8Frn.js} +64 -64
  35. package/dist/WarehousesPage-C1Y1M867.js +182 -0
  36. package/dist/{arrow-left-n48Y-Wis.js → arrow-left-ClW4Isj7.js} +1 -1
  37. package/dist/{arrow-right-Q3XQpTPR.js → arrow-right-CmKOmIkh.js} +1 -1
  38. package/dist/{arrow-up-xNF1zJUG.js → arrow-up-BJijRLAZ.js} +1 -1
  39. package/dist/{box-Eu05PXDh.js → box-BT3NsRQP.js} +1 -1
  40. package/dist/boxes-B_OGvQiW.js +54 -0
  41. package/dist/{chart-column-ouzgxIv_.js → chart-column-DQTTdUPk.js} +1 -1
  42. package/dist/charts-Tj_PPTfA.js +2018 -0
  43. package/dist/{chevron-left-B2_r0Elx.js → chevron-left-B1rZyWWb.js} +1 -1
  44. package/dist/{chevron-right-eV4LjaSi.js → chevron-right-BIcwUJZq.js} +1 -1
  45. package/dist/chunk-BdsCSvBP.js +20 -0
  46. package/dist/{circle-alert-Bzh2DBSF.js → circle-alert-CNkuDNc6.js} +1 -1
  47. package/dist/circle-check-Cs1OVjtV.js +13 -0
  48. package/dist/{circle-check-big-CGMSpQmD.js → circle-check-big-C-p4eNwn.js} +1 -1
  49. package/dist/{clock-Bl3ptexL.js → clock-dRGG4rkF.js} +1 -1
  50. package/dist/{dollar-sign-CAVU95SO.js → dollar-sign-B6RoYHHz.js} +1 -1
  51. package/dist/{download-C5NbvVDc.js → download-DP04iWTd.js} +1 -1
  52. package/dist/{file-text-D-1uvLZG.js → file-text-BuDx4hZp.js} +1 -1
  53. package/dist/{filter-DUfUg6BO.js → filter-BD483_8g.js} +1 -1
  54. package/dist/{fuel-B6_lnKDs.js → fuel-DLH1ag04.js} +1 -1
  55. package/dist/index.css +2 -0
  56. package/dist/index.js +214 -225
  57. package/dist/{map-C-M-FQLR.js → map-DNQn9fyY.js} +1 -1
  58. package/dist/{map-pin-Dznl5l40.js → map-pin-CqN1bbT1.js} +1 -1
  59. package/dist/mapMarkers-NCV9MRKR.js +28 -0
  60. package/dist/maps-yzLqiK_C.js +5070 -0
  61. package/dist/{navigation-BJSJl-VG.js → navigation-CgGUt2tR.js} +1 -1
  62. package/dist/{package-CcRttV2N.js → package-DmRF7iQD.js} +1 -1
  63. package/dist/{phone-DVSZHt_j.js → phone-Cl32EXKW.js} +1 -1
  64. package/dist/{plus-C_XZDwBz.js → plus-DlANgOFx.js} +1 -1
  65. package/dist/{refresh-cw-CfgN67l3.js → refresh-cw-rW59D4b7.js} +1 -1
  66. package/dist/route-CWjPrtAN.js +22 -0
  67. package/dist/{save-DJE8Fpdv.js → save-UDlog7hg.js} +1 -1
  68. package/dist/{search-D_VyGcZT.js → search-DNIG5Ck7.js} +1 -1
  69. package/dist/{square-pen-D-6JYrVQ.js → square-pen-BcfB3Grd.js} +1 -1
  70. package/dist/{star-BpRlUZuU.js → star-CVZHFwDx.js} +1 -1
  71. package/dist/{store-B-8HMuyZ.js → store-bwnmCK9f.js} +1 -1
  72. package/dist/{trash-2-8vmv-XV_.js → trash-2-B80G12d4.js} +1 -1
  73. package/dist/{trending-up-Dz6PqPRj.js → trending-up-CH4R4KOa.js} +1 -1
  74. package/dist/{triangle-alert-D7Y3J_4z.js → triangle-alert-CmS8AUU6.js} +1 -1
  75. package/dist/{truck-D-y2IDzv.js → truck-9rLDncav.js} +1 -1
  76. package/dist/{upload-CHZofOqb.js → upload-DanJY1Vo.js} +1 -1
  77. package/dist/{useAssistant-DVW4QgQb.js → useAssistant-CnEwkTLm.js} +11 -28
  78. package/dist/{useCustomers-BPW4__PR.js → useCustomers-ChJao1ET.js} +1 -1
  79. package/dist/{useFleet-ChBkxAd6.js → useFleet-g5Yri0G8.js} +1 -1
  80. package/dist/{useImportExport-DrPDHEDK.js → useImportExport-MYwIT3rE.js} +1 -1
  81. package/dist/{useInventory-CAAVMRp6.js → useInventory-BSOn-R1c.js} +1 -1
  82. package/dist/{useOrders-B465S2nt.js → useOrders-BSiqo61w.js} +1 -1
  83. package/dist/{useReports-jQ3GpNOm.js → useReports-fWESfsF9.js} +1 -1
  84. package/dist/{useRoutes-hS3d5-xr.js → useRoutes-zD8Yp323.js} +1 -1
  85. package/dist/{useSettings-BB8X2RLh.js → useSettings-B1lsWeZ1.js} +6 -6
  86. package/dist/{useTracking-RjGz9PZG.js → useTracking-BKG0I2ln.js} +3 -3
  87. package/dist/{user-DzfTn4dE.js → user-DU51el3m.js} +1 -1
  88. package/dist/{user-check-BEKRCi7v.js → user-check-IMhk-qkX.js} +1 -1
  89. package/dist/{users-CCrq-w0C.js → users-B8KhJBGg.js} +1 -1
  90. package/dist/{warehouse-CaqfmMKh.js → warehouse-CcMMioeY.js} +1 -1
  91. package/dist/{wrench-q_rgJfaP.js → wrench-Dg-sgH2e.js} +1 -1
  92. package/dist/{x-tMeDMcCw.js → x-C4ObLVEa.js} +1 -1
  93. package/package.json +5 -1
  94. package/src/movethewheels/components/GlassPanel.tsx +71 -0
  95. package/src/movethewheels/components/MetricCard.tsx +171 -73
  96. package/src/movethewheels/components/StatusBadge.tsx +7 -6
  97. package/src/movethewheels/components/charts/ChartShell.tsx +78 -0
  98. package/src/movethewheels/components/charts/Sparkline.tsx +85 -0
  99. package/src/movethewheels/components/charts/StatusDonut.tsx +115 -0
  100. package/src/movethewheels/components/charts/TrendChart.tsx +179 -0
  101. package/src/movethewheels/components/charts/VolumeBar.tsx +97 -0
  102. package/src/movethewheels/components/charts/chartTokens.ts +43 -0
  103. package/src/movethewheels/components/charts/index.ts +9 -0
  104. package/src/movethewheels/components/index.ts +44 -1
  105. package/src/movethewheels/components/maps/LogisticsMap.tsx +94 -0
  106. package/src/movethewheels/components/maps/MapCanvas.tsx +118 -0
  107. package/src/movethewheels/components/maps/RouteMap.tsx +71 -0
  108. package/src/movethewheels/components/maps/TrackingMap.tsx +102 -0
  109. package/src/movethewheels/components/maps/index.ts +16 -0
  110. package/src/movethewheels/components/maps/leaflet-setup.ts +124 -0
  111. package/src/movethewheels/components/maps/map-markers.css +121 -0
  112. package/src/movethewheels/hooks/useAnalytics.ts +14 -4
  113. package/src/movethewheels/pages/AnalyticsPage.tsx +93 -73
  114. package/src/movethewheels/pages/CreateOrderPage.tsx +4 -4
  115. package/src/movethewheels/pages/CustomersPage.tsx +29 -20
  116. package/src/movethewheels/pages/DashboardPage.tsx +238 -12
  117. package/src/movethewheels/pages/DriverDetailsPage.tsx +1 -1
  118. package/src/movethewheels/pages/DriversPage.tsx +35 -24
  119. package/src/movethewheels/pages/FinancePage.tsx +68 -30
  120. package/src/movethewheels/pages/InventoryPage.tsx +15 -3
  121. package/src/movethewheels/pages/LiveTrackingPage.tsx +124 -16
  122. package/src/movethewheels/pages/OrdersListPage.tsx +46 -38
  123. package/src/movethewheels/pages/ProductsPage.tsx +28 -24
  124. package/src/movethewheels/pages/ReportsPage.tsx +23 -0
  125. package/src/movethewheels/pages/RouteDetailsPage.tsx +46 -7
  126. package/src/movethewheels/pages/SettingsPage.tsx +2 -2
  127. package/src/movethewheels/pages/TrackingPage.tsx +76 -6
  128. package/src/movethewheels/pages/VehicleDetailsPage.tsx +1 -1
  129. package/src/movethewheels/pages/VehiclesPage.tsx +34 -24
  130. package/src/movethewheels/pages/WarehouseDetailsPage.tsx +1 -1
  131. package/src/movethewheels/pages/WarehousesPage.tsx +28 -22
  132. package/src/movethewheels/types/index.ts +1 -1
  133. package/src/movethewheels/utils/mapMarkers.ts +58 -0
  134. package/dist/AnalyticsPage-CMpI1070.js +0 -215
  135. package/dist/CustomersPage-CaNBMXmM.js +0 -172
  136. package/dist/DashboardPage-DIKlXde3.js +0 -387
  137. package/dist/DriversPage-PYmdFiby.js +0 -176
  138. package/dist/FinancePage-Cwh9Bw4M.js +0 -136
  139. package/dist/InventoryPage-DpiqVu1v.js +0 -253
  140. package/dist/LiveTrackingPage-FAzzlVnX.js +0 -379
  141. package/dist/MetricCard-CVBVpu7o.js +0 -146
  142. package/dist/OrdersListPage-CAMsuUck.js +0 -384
  143. package/dist/ProductsPage-DC5qDLfz.js +0 -180
  144. package/dist/ReportsPage-BwUJ37eO.js +0 -356
  145. package/dist/TrackingPage-DaNEFG_h.js +0 -325
  146. package/dist/VehiclesPage-BFw13iMt.js +0 -176
  147. package/dist/WarehousesPage-Wkytnt86.js +0 -173
  148. package/dist/useAnalytics-D7HW2XRb.js +0 -347
  149. /package/dist/{formatters-BQr-aR5W.js → formatters-FWJDwTFv.js} +0 -0
@@ -1,27 +1,29 @@
1
- import { A as e, F as t, I as n, L as r, P as i, R as a, ct as o, d as s, f as c, g as l, h as u, i as d, j as f, l as p, lt as m, n as h, ot as g, r as _, u as v } from "./PageLayout-D4LDHJJq.js";
2
- import { n as y, t as b } from "./arrow-up-xNF1zJUG.js";
3
- import { t as x } from "./arrow-left-n48Y-Wis.js";
4
- import { t as S } from "./circle-check-big-CGMSpQmD.js";
5
- import { t as C } from "./clock-Bl3ptexL.js";
6
- import { t as w } from "./fuel-B6_lnKDs.js";
7
- import { n as T, t as E } from "./Notice-CSoDYKw9.js";
8
- import { t as D } from "./map-pin-Dznl5l40.js";
9
- import { t as O } from "./navigation-BJSJl-VG.js";
10
- import { t as k } from "./plus-C_XZDwBz.js";
11
- import { t as A } from "./save-DJE8Fpdv.js";
12
- import { t as j } from "./square-pen-D-6JYrVQ.js";
13
- import { t as M } from "./trash-2-8vmv-XV_.js";
14
- import { r as N } from "./useFleet-ChBkxAd6.js";
15
- import { r as P, t as F } from "./useRoutes-hS3d5-xr.js";
16
- import { o as I, r as L } from "./StatusBadge-C87mDpDP.js";
17
- import { t as R } from "./FormError-cuLV2jVD.js";
18
- import { n as z, r as B, t as V } from "./formatters-BQr-aR5W.js";
19
- import { useState as H } from "react";
20
- import { useParams as U } from "react-router-dom";
21
- import { jsx as W, jsxs as G } from "react/jsx-runtime";
22
- import { EmphasisPanel as K, NextSteps as q, PagePurpose as J } from "@burdenoff/fe-libs/ui";
1
+ import { A as e, F as t, I as n, L as r, P as i, R as a, d as o, f as s, g as c, h as l, i as u, j as d, l as f, lt as p, n as m, r as h, st as g, u as _, ut as v } from "./PageLayout-BniRJaQ6.js";
2
+ import { n as y, t as b } from "./arrow-up-BJijRLAZ.js";
3
+ import { t as x } from "./arrow-left-ClW4Isj7.js";
4
+ import { t as S } from "./circle-check-big-C-p4eNwn.js";
5
+ import { t as C } from "./clock-dRGG4rkF.js";
6
+ import { t as w } from "./fuel-DLH1ag04.js";
7
+ import { n as T, t as E } from "./Notice-DOO-tjpV.js";
8
+ import { t as D } from "./map-pin-CqN1bbT1.js";
9
+ import { t as O } from "./navigation-CgGUt2tR.js";
10
+ import { t as k } from "./plus-DlANgOFx.js";
11
+ import { t as A } from "./save-UDlog7hg.js";
12
+ import { t as j } from "./square-pen-BcfB3Grd.js";
13
+ import { t as M } from "./trash-2-B80G12d4.js";
14
+ import { r as N } from "./useFleet-g5Yri0G8.js";
15
+ import { r as P, t as F } from "./useRoutes-zD8Yp323.js";
16
+ import { n as I } from "./maps-yzLqiK_C.js";
17
+ import { o as L, r as R } from "./StatusBadge-BNHXYvZx.js";
18
+ import { t as z } from "./FormError-BKcb_wT-.js";
19
+ import { n as B, r as V, t as H } from "./formatters-FWJDwTFv.js";
20
+ import { n as U } from "./mapMarkers-NCV9MRKR.js";
21
+ import { useState as W } from "react";
22
+ import { useParams as ee } from "react-router-dom";
23
+ import { jsx as G, jsxs as K } from "react/jsx-runtime";
24
+ import { EmphasisPanel as q, NextSteps as te, PagePurpose as J } from "@burdenoff/fe-libs/ui";
23
25
  //#region node_modules/lucide-react/dist/esm/icons/zap.js
24
- var Y = m("Zap", [["path", {
26
+ var Y = v("Zap", [["path", {
25
27
  d: "M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",
26
28
  key: "1xq2db"
27
29
  }]]), X = [
@@ -42,8 +44,8 @@ var Y = m("Zap", [["path", {
42
44
  label: "Cancelled"
43
45
  }
44
46
  ];
45
- function Z() {
46
- let { basePath: p, navigate: m } = g(), { createRoute: h } = P(), { vehicles: _, drivers: S } = N(), [C, w] = H({
47
+ function ne() {
48
+ let { basePath: f, navigate: m } = g(), { createRoute: h } = P(), { vehicles: v, drivers: S } = N(), [C, w] = W({
47
49
  name: "",
48
50
  status: "planned",
49
51
  vehicleId: "",
@@ -52,7 +54,7 @@ function Z() {
52
54
  address: "",
53
55
  type: "delivery"
54
56
  }]
55
- }), [T, E] = H(!1), [D, j] = H(null), F = () => m?.(o(p, "routes")), I = () => w((e) => ({
57
+ }), [T, E] = W(!1), [D, j] = W(null), F = () => m?.(p(f, "routes")), I = () => w((e) => ({
56
58
  ...e,
57
59
  stops: [...e.stops, {
58
60
  address: "",
@@ -61,7 +63,7 @@ function Z() {
61
63
  })), L = (e) => w((t) => ({
62
64
  ...t,
63
65
  stops: t.stops.filter((t, n) => n !== e)
64
- })), z = (e, t, n) => w((r) => ({
66
+ })), R = (e, t, n) => w((r) => ({
65
67
  ...r,
66
68
  stops: r.stops.map((r, i) => i === e ? {
67
69
  ...r,
@@ -109,56 +111,56 @@ function Z() {
109
111
  driverId: C.driverId || void 0,
110
112
  stops: e
111
113
  });
112
- m?.(o(p, `routes/${n.id}`));
114
+ m?.(p(f, `routes/${n.id}`));
113
115
  } catch (e) {
114
116
  console.error("Failed to create route:", e), j(e instanceof Error ? e.message : "Failed to create route. Please try again."), E(!1);
115
117
  }
116
118
  };
117
- return /* @__PURE__ */ G(d, {
119
+ return /* @__PURE__ */ K(u, {
118
120
  title: "Create Route",
119
121
  subtitle: "Plan a new delivery route",
120
- icon: /* @__PURE__ */ W(O, { size: 24 }),
121
- headerActions: /* @__PURE__ */ G("div", {
122
+ icon: /* @__PURE__ */ G(O, { size: 24 }),
123
+ headerActions: /* @__PURE__ */ K("div", {
122
124
  className: "flex gap-2",
123
- children: [/* @__PURE__ */ G(v, {
125
+ children: [/* @__PURE__ */ K(_, {
124
126
  variant: "outline",
125
127
  onClick: F,
126
128
  disabled: T,
127
- children: [/* @__PURE__ */ W(x, { size: 16 }), " Cancel"]
128
- }), /* @__PURE__ */ G(v, {
129
+ children: [/* @__PURE__ */ G(x, { size: 16 }), " Cancel"]
130
+ }), /* @__PURE__ */ K(_, {
129
131
  onClick: V,
130
132
  disabled: T,
131
133
  children: [
132
- /* @__PURE__ */ W(A, { size: 16 }),
134
+ /* @__PURE__ */ G(A, { size: 16 }),
133
135
  " ",
134
136
  T ? "Saving..." : "Create Route"
135
137
  ]
136
138
  })]
137
139
  }),
138
- children: [/* @__PURE__ */ W(J, {
139
- icon: /* @__PURE__ */ W(O, { size: 18 }),
140
+ children: [/* @__PURE__ */ G(J, {
141
+ icon: /* @__PURE__ */ G(O, { size: 18 }),
140
142
  children: "Plan a new delivery route — name it, list the stops to visit, and optionally assign a vehicle and driver. Once created you can optimize it to sequence the stops into the shortest run."
141
- }), /* @__PURE__ */ G("form", {
143
+ }), /* @__PURE__ */ K("form", {
142
144
  onSubmit: V,
143
145
  className: "max-w-3xl space-y-6",
144
146
  children: [
145
- /* @__PURE__ */ W(R, { message: D }),
146
- /* @__PURE__ */ G(K, { children: [/* @__PURE__ */ W("h2", {
147
+ /* @__PURE__ */ G(z, { message: D }),
148
+ /* @__PURE__ */ K(q, { children: [/* @__PURE__ */ G("h2", {
147
149
  className: "text-base font-semibold text-text-primary mb-4",
148
150
  children: "Route Details"
149
- }), /* @__PURE__ */ G("div", {
151
+ }), /* @__PURE__ */ K("div", {
150
152
  className: "space-y-4",
151
- children: [/* @__PURE__ */ G("div", {
153
+ children: [/* @__PURE__ */ K("div", {
152
154
  className: "grid grid-cols-1 md:grid-cols-2 gap-4",
153
- children: [/* @__PURE__ */ G("div", {
155
+ children: [/* @__PURE__ */ K("div", {
154
156
  className: "space-y-2",
155
- children: [/* @__PURE__ */ G(f, {
157
+ children: [/* @__PURE__ */ K(d, {
156
158
  htmlFor: "name",
157
- children: ["Route Name ", /* @__PURE__ */ W("span", {
159
+ children: ["Route Name ", /* @__PURE__ */ G("span", {
158
160
  className: "text-status-error-text",
159
161
  children: "*"
160
162
  })]
161
- }), /* @__PURE__ */ W(e, {
163
+ }), /* @__PURE__ */ G(e, {
162
164
  id: "name",
163
165
  value: C.name,
164
166
  onChange: (e) => w((t) => ({
@@ -168,43 +170,43 @@ function Z() {
168
170
  placeholder: "Downtown morning run",
169
171
  required: !0
170
172
  })]
171
- }), /* @__PURE__ */ G("div", {
173
+ }), /* @__PURE__ */ K("div", {
172
174
  className: "space-y-2",
173
- children: [/* @__PURE__ */ W(f, {
175
+ children: [/* @__PURE__ */ G(d, {
174
176
  htmlFor: "status",
175
177
  children: "Status"
176
- }), /* @__PURE__ */ G(i, {
178
+ }), /* @__PURE__ */ K(i, {
177
179
  value: C.status,
178
180
  onValueChange: (e) => w((t) => ({
179
181
  ...t,
180
182
  status: e
181
183
  })),
182
- children: [/* @__PURE__ */ W(r, {
184
+ children: [/* @__PURE__ */ G(r, {
183
185
  id: "status",
184
- children: /* @__PURE__ */ W(a, {})
185
- }), /* @__PURE__ */ W(t, { children: X.map((e) => /* @__PURE__ */ W(n, {
186
+ children: /* @__PURE__ */ G(a, {})
187
+ }), /* @__PURE__ */ G(t, { children: X.map((e) => /* @__PURE__ */ G(n, {
186
188
  value: e.value,
187
189
  children: e.label
188
190
  }, e.value)) })]
189
191
  })]
190
192
  })]
191
- }), /* @__PURE__ */ G("div", {
193
+ }), /* @__PURE__ */ K("div", {
192
194
  className: "grid grid-cols-1 md:grid-cols-2 gap-4",
193
- children: [/* @__PURE__ */ G("div", {
195
+ children: [/* @__PURE__ */ K("div", {
194
196
  className: "space-y-2",
195
- children: [/* @__PURE__ */ W(f, {
197
+ children: [/* @__PURE__ */ G(d, {
196
198
  htmlFor: "vehicle",
197
199
  children: "Vehicle (optional)"
198
- }), /* @__PURE__ */ G(i, {
200
+ }), /* @__PURE__ */ K(i, {
199
201
  value: C.vehicleId,
200
202
  onValueChange: (e) => w((t) => ({
201
203
  ...t,
202
204
  vehicleId: e
203
205
  })),
204
- children: [/* @__PURE__ */ W(r, {
206
+ children: [/* @__PURE__ */ G(r, {
205
207
  id: "vehicle",
206
- children: /* @__PURE__ */ W(a, { placeholder: "Assign later" })
207
- }), /* @__PURE__ */ W(t, { children: _.map((e) => /* @__PURE__ */ G(n, {
208
+ children: /* @__PURE__ */ G(a, { placeholder: "Assign later" })
209
+ }), /* @__PURE__ */ G(t, { children: v.map((e) => /* @__PURE__ */ K(n, {
208
210
  value: e.id,
209
211
  children: [
210
212
  e.vehicleNumber,
@@ -214,21 +216,21 @@ function Z() {
214
216
  ]
215
217
  }, e.id)) })]
216
218
  })]
217
- }), /* @__PURE__ */ G("div", {
219
+ }), /* @__PURE__ */ K("div", {
218
220
  className: "space-y-2",
219
- children: [/* @__PURE__ */ W(f, {
221
+ children: [/* @__PURE__ */ G(d, {
220
222
  htmlFor: "driver",
221
223
  children: "Driver (optional)"
222
- }), /* @__PURE__ */ G(i, {
224
+ }), /* @__PURE__ */ K(i, {
223
225
  value: C.driverId,
224
226
  onValueChange: (e) => w((t) => ({
225
227
  ...t,
226
228
  driverId: e
227
229
  })),
228
- children: [/* @__PURE__ */ W(r, {
230
+ children: [/* @__PURE__ */ G(r, {
229
231
  id: "driver",
230
- children: /* @__PURE__ */ W(a, { placeholder: "Assign later" })
231
- }), /* @__PURE__ */ W(t, { children: S.map((e) => /* @__PURE__ */ G(n, {
232
+ children: /* @__PURE__ */ G(a, { placeholder: "Assign later" })
233
+ }), /* @__PURE__ */ G(t, { children: S.map((e) => /* @__PURE__ */ K(n, {
232
234
  value: e.id,
233
235
  children: [
234
236
  e.fullName,
@@ -241,81 +243,81 @@ function Z() {
241
243
  })]
242
244
  })]
243
245
  })] }),
244
- /* @__PURE__ */ G(s, { children: [/* @__PURE__ */ G(u, {
246
+ /* @__PURE__ */ K(o, { children: [/* @__PURE__ */ K(l, {
245
247
  className: "flex flex-row items-center justify-between",
246
- children: [/* @__PURE__ */ G(l, { children: ["Stops ", /* @__PURE__ */ W("span", {
248
+ children: [/* @__PURE__ */ K(c, { children: ["Stops ", /* @__PURE__ */ G("span", {
247
249
  className: "text-status-error-text",
248
250
  children: "*"
249
- })] }), /* @__PURE__ */ G(v, {
251
+ })] }), /* @__PURE__ */ K(_, {
250
252
  type: "button",
251
253
  variant: "outline",
252
254
  size: "sm",
253
255
  onClick: I,
254
- children: [/* @__PURE__ */ W(k, { size: 16 }), " Add Stop"]
256
+ children: [/* @__PURE__ */ G(k, { size: 16 }), " Add Stop"]
255
257
  })]
256
- }), /* @__PURE__ */ W(c, {
258
+ }), /* @__PURE__ */ G(s, {
257
259
  className: "space-y-4",
258
- children: C.stops.map((o, s) => /* @__PURE__ */ G("div", {
260
+ children: C.stops.map((o, s) => /* @__PURE__ */ K("div", {
259
261
  className: "grid grid-cols-1 md:grid-cols-12 gap-3 items-end",
260
262
  children: [
261
- /* @__PURE__ */ G("div", {
263
+ /* @__PURE__ */ K("div", {
262
264
  className: "md:col-span-7 space-y-2",
263
- children: [/* @__PURE__ */ G(f, {
265
+ children: [/* @__PURE__ */ K(d, {
264
266
  htmlFor: `stop-address-${s}`,
265
267
  children: [
266
268
  "Stop ",
267
269
  s + 1,
268
270
  " address"
269
271
  ]
270
- }), /* @__PURE__ */ W(e, {
272
+ }), /* @__PURE__ */ G(e, {
271
273
  id: `stop-address-${s}`,
272
274
  value: o.address,
273
- onChange: (e) => z(s, "address", e.target.value),
275
+ onChange: (e) => R(s, "address", e.target.value),
274
276
  placeholder: "123 Main St, San Francisco, CA"
275
277
  })]
276
278
  }),
277
- /* @__PURE__ */ G("div", {
279
+ /* @__PURE__ */ K("div", {
278
280
  className: "md:col-span-4 space-y-2",
279
- children: [/* @__PURE__ */ W(f, {
281
+ children: [/* @__PURE__ */ G(d, {
280
282
  htmlFor: `stop-type-${s}`,
281
283
  children: "Type"
282
- }), /* @__PURE__ */ G(i, {
284
+ }), /* @__PURE__ */ K(i, {
283
285
  value: o.type,
284
- onValueChange: (e) => z(s, "type", e),
285
- children: [/* @__PURE__ */ W(r, {
286
+ onValueChange: (e) => R(s, "type", e),
287
+ children: [/* @__PURE__ */ G(r, {
286
288
  id: `stop-type-${s}`,
287
- children: /* @__PURE__ */ W(a, {})
288
- }), /* @__PURE__ */ G(t, { children: [/* @__PURE__ */ W(n, {
289
+ children: /* @__PURE__ */ G(a, {})
290
+ }), /* @__PURE__ */ K(t, { children: [/* @__PURE__ */ G(n, {
289
291
  value: "pickup",
290
292
  children: "Pickup"
291
- }), /* @__PURE__ */ W(n, {
293
+ }), /* @__PURE__ */ G(n, {
292
294
  value: "delivery",
293
295
  children: "Delivery"
294
296
  })] })]
295
297
  })]
296
298
  }),
297
- /* @__PURE__ */ G("div", {
299
+ /* @__PURE__ */ K("div", {
298
300
  className: "md:col-span-1 flex justify-end gap-1",
299
301
  children: [
300
- /* @__PURE__ */ W(v, {
302
+ /* @__PURE__ */ G(_, {
301
303
  type: "button",
302
304
  variant: "ghost",
303
305
  size: "icon",
304
306
  onClick: () => B(s, -1),
305
307
  disabled: s === 0,
306
308
  "aria-label": `Move stop ${s + 1} up`,
307
- children: /* @__PURE__ */ W(b, { size: 16 })
309
+ children: /* @__PURE__ */ G(b, { size: 16 })
308
310
  }),
309
- /* @__PURE__ */ W(v, {
311
+ /* @__PURE__ */ G(_, {
310
312
  type: "button",
311
313
  variant: "ghost",
312
314
  size: "icon",
313
315
  onClick: () => B(s, 1),
314
316
  disabled: s === C.stops.length - 1,
315
317
  "aria-label": `Move stop ${s + 1} down`,
316
- children: /* @__PURE__ */ W(y, { size: 16 })
318
+ children: /* @__PURE__ */ G(y, { size: 16 })
317
319
  }),
318
- /* @__PURE__ */ W(v, {
320
+ /* @__PURE__ */ G(_, {
319
321
  type: "button",
320
322
  variant: "ghost",
321
323
  size: "icon",
@@ -323,7 +325,7 @@ function Z() {
323
325
  onClick: () => L(s),
324
326
  disabled: C.stops.length === 1,
325
327
  "aria-label": `Remove stop ${s + 1}`,
326
- children: /* @__PURE__ */ W(M, { size: 16 })
328
+ children: /* @__PURE__ */ G(M, { size: 16 })
327
329
  })
328
330
  ]
329
331
  })
@@ -334,12 +336,12 @@ function Z() {
334
336
  })]
335
337
  });
336
338
  }
337
- function Q() {
338
- let { routeId: e } = U(), { basePath: t, navigate: n } = g(), { route: r, isLoading: i, error: a, refetch: f } = F(e), { optimizeRoute: m } = P(), { message: y, notify: b } = T(), [k, A] = H(null), [M, N] = H(!1), X = () => n?.(o(t, "routes")), Q = (e) => n?.(o(t, e)), $ = async () => {
339
+ function Z() {
340
+ let { routeId: e } = ee(), { basePath: t, navigate: n } = g(), { route: r, isLoading: i, error: a, refetch: d } = F(e), { optimizeRoute: v } = P(), { message: y, notify: b } = T(), [k, A] = W(null), [M, N] = W(!1), X = () => n?.(p(t, "routes")), Z = (e) => n?.(p(t, e)), Q = async () => {
339
341
  if (e) {
340
342
  N(!0), A(null);
341
343
  try {
342
- await m(e), b("Route optimized — stops resequenced for the shortest run."), f();
344
+ await v(e), b("Route optimized — stops resequenced for the shortest run."), d();
343
345
  } catch (e) {
344
346
  A(e instanceof Error ? e.message : "Failed to optimize route.");
345
347
  } finally {
@@ -347,139 +349,164 @@ function Q() {
347
349
  }
348
350
  }
349
351
  };
350
- return e ? i ? /* @__PURE__ */ W(_, { message: "Loading route details..." }) : a || !r ? /* @__PURE__ */ W(h, {
352
+ if (!e) return /* @__PURE__ */ G(ne, {});
353
+ if (i) return /* @__PURE__ */ G(h, { message: "Loading route details..." });
354
+ if (a || !r) return /* @__PURE__ */ G(m, {
351
355
  title: "Route not found",
352
- onRetry: f
353
- }) : /* @__PURE__ */ G(d, {
356
+ onRetry: d
357
+ });
358
+ let $ = r.stops.map((e) => {
359
+ let t = U(e.address);
360
+ return t ? {
361
+ lat: t.lat,
362
+ lng: t.lng,
363
+ sequence: e.sequence,
364
+ label: H(e.address) || `Order #${e.orderId || e.sequence}`
365
+ } : null;
366
+ }).filter((e) => e !== null);
367
+ return /* @__PURE__ */ K(u, {
354
368
  title: r.name,
355
369
  subtitle: `${r.stops.length} stops - ${r.distance.toFixed(1)} km`,
356
- icon: /* @__PURE__ */ W(O, { size: 24 }),
357
- headerActions: /* @__PURE__ */ G("div", {
370
+ icon: /* @__PURE__ */ G(O, { size: 24 }),
371
+ headerActions: /* @__PURE__ */ K("div", {
358
372
  className: "flex gap-2",
359
373
  children: [
360
- /* @__PURE__ */ G(v, {
374
+ /* @__PURE__ */ K(_, {
361
375
  variant: "outline",
362
376
  onClick: X,
363
- children: [/* @__PURE__ */ W(x, { size: 16 }), " Back"]
377
+ children: [/* @__PURE__ */ G(x, { size: 16 }), " Back"]
364
378
  }),
365
- !r.optimized && /* @__PURE__ */ G(v, {
379
+ !r.optimized && /* @__PURE__ */ K(_, {
366
380
  variant: "outline",
367
- onClick: $,
381
+ onClick: Q,
368
382
  disabled: M,
369
383
  children: [
370
- /* @__PURE__ */ W(Y, { size: 16 }),
384
+ /* @__PURE__ */ G(Y, { size: 16 }),
371
385
  " ",
372
386
  M ? "Optimizing…" : "Optimize"
373
387
  ]
374
388
  }),
375
- /* @__PURE__ */ G(v, { children: [/* @__PURE__ */ W(j, { size: 16 }), " Edit"] })
389
+ /* @__PURE__ */ K(_, { children: [/* @__PURE__ */ G(j, { size: 16 }), " Edit"] })
376
390
  ]
377
391
  }),
378
- headerContent: /* @__PURE__ */ G("div", {
392
+ headerContent: /* @__PURE__ */ K("div", {
379
393
  className: "flex gap-2",
380
- children: [/* @__PURE__ */ W(L, {
394
+ children: [/* @__PURE__ */ G(R, {
381
395
  status: r.status,
382
- customColors: I[r.status]
383
- }), /* @__PURE__ */ W(p, {
396
+ customColors: L[r.status]
397
+ }), /* @__PURE__ */ G(f, {
384
398
  variant: r.optimized ? "default" : "secondary",
385
399
  children: r.optimized ? "Optimized" : "Not Optimized"
386
400
  })]
387
401
  }),
388
402
  children: [
389
- /* @__PURE__ */ W(J, {
390
- icon: /* @__PURE__ */ W(O, { size: 18 }),
403
+ /* @__PURE__ */ G(J, {
404
+ icon: /* @__PURE__ */ G(O, { size: 18 }),
391
405
  children: "A single optimized driving plan that chains together this route's stops. Review the sequence, distance and timing here, re-optimize if traffic or stops change, then hand the itinerary to a driver."
392
406
  }),
393
- /* @__PURE__ */ W(q, {
407
+ /* @__PURE__ */ G(te, {
394
408
  storageKey: "movethewheels-route-details",
395
409
  steps: [
396
410
  ...r.optimized ? [] : [{
397
411
  id: "optimize",
398
412
  label: "Optimize this route",
399
413
  description: "Reorder stops to cut distance and driving time.",
400
- icon: /* @__PURE__ */ W(Y, { size: 16 }),
401
- onClick: $
414
+ icon: /* @__PURE__ */ G(Y, { size: 16 }),
415
+ onClick: Q
402
416
  }],
403
417
  {
404
418
  id: "edit",
405
419
  label: "Adjust stops",
406
420
  description: "Add, remove or reorder the delivery stops.",
407
- icon: /* @__PURE__ */ W(j, { size: 16 }),
421
+ icon: /* @__PURE__ */ G(j, { size: 16 }),
408
422
  onClick: () => {}
409
423
  },
410
424
  {
411
425
  id: "orders",
412
426
  label: "Review the orders on this route",
413
427
  description: "Check the deliveries bundled into this run.",
414
- icon: /* @__PURE__ */ W(D, { size: 16 }),
415
- onClick: () => Q("orders")
428
+ icon: /* @__PURE__ */ G(D, { size: 16 }),
429
+ onClick: () => Z("orders")
416
430
  }
417
431
  ]
418
432
  }),
419
- k && /* @__PURE__ */ W("div", {
433
+ k && /* @__PURE__ */ G("div", {
420
434
  className: "mb-2",
421
- children: /* @__PURE__ */ W(R, { message: k })
435
+ children: /* @__PURE__ */ G(z, { message: k })
422
436
  }),
423
- y && /* @__PURE__ */ W("div", {
437
+ y && /* @__PURE__ */ G("div", {
424
438
  className: "mb-2",
425
- children: /* @__PURE__ */ W(E, { message: y })
439
+ children: /* @__PURE__ */ G(E, { message: y })
426
440
  }),
427
- /* @__PURE__ */ G("div", {
441
+ /* @__PURE__ */ K("div", {
428
442
  className: "grid grid-cols-1 lg:grid-cols-3 gap-6",
429
- children: [/* @__PURE__ */ G("div", {
443
+ children: [/* @__PURE__ */ K("div", {
430
444
  className: "lg:col-span-2 space-y-6",
431
- children: [/* @__PURE__ */ G(s, { children: [/* @__PURE__ */ W(u, { children: /* @__PURE__ */ W(l, { children: "Route Map" }) }), /* @__PURE__ */ W(c, { children: /* @__PURE__ */ W("div", {
432
- className: "aspect-video bg-bg-sunken rounded-lg flex items-center justify-center",
433
- children: /* @__PURE__ */ G("div", {
434
- className: "text-center text-text-secondary",
435
- children: [/* @__PURE__ */ W(D, {
436
- size: 48,
437
- className: "mx-auto mb-2 opacity-50"
438
- }), /* @__PURE__ */ W("p", { children: "Route map visualization" })]
439
- })
440
- }) })] }), /* @__PURE__ */ G(s, { children: [/* @__PURE__ */ W(u, { children: /* @__PURE__ */ G(l, { children: [
445
+ children: [/* @__PURE__ */ K(o, { children: [/* @__PURE__ */ G(l, { children: /* @__PURE__ */ G(c, { children: "Route Map" }) }), /* @__PURE__ */ G(s, { children: $.length > 0 ? /* @__PURE__ */ G(I, {
446
+ className: "overflow-hidden rounded-lg border border-border-seam",
447
+ height: 360,
448
+ stops: $
449
+ }) : /* @__PURE__ */ K("div", {
450
+ className: "rounded-lg border border-border-seam bg-bg-sunken/40 p-4",
451
+ children: [/* @__PURE__ */ G("p", {
452
+ className: "mb-3 text-sm text-text-secondary",
453
+ children: "These stops don't have map coordinates yet — showing the planned sequence instead."
454
+ }), /* @__PURE__ */ G("ol", {
455
+ className: "space-y-2",
456
+ children: r.stops.map((e) => /* @__PURE__ */ K("li", {
457
+ className: "flex items-start gap-3",
458
+ children: [/* @__PURE__ */ G("span", {
459
+ className: "flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-action-primary-bg/10 text-xs font-semibold text-primary",
460
+ children: e.sequence
461
+ }), /* @__PURE__ */ G("span", {
462
+ className: "text-sm",
463
+ children: H(e.address) || `Order #${e.orderId || e.sequence}`
464
+ })]
465
+ }, e.id))
466
+ })]
467
+ }) })] }), /* @__PURE__ */ K(o, { children: [/* @__PURE__ */ G(l, { children: /* @__PURE__ */ K(c, { children: [
441
468
  "Stops (",
442
469
  r.stops.length,
443
470
  ")"
444
- ] }) }), /* @__PURE__ */ W(c, { children: /* @__PURE__ */ W("div", {
471
+ ] }) }), /* @__PURE__ */ G(s, { children: /* @__PURE__ */ G("div", {
445
472
  className: "space-y-4",
446
- children: r.stops.map((e, t) => /* @__PURE__ */ G("div", {
473
+ children: r.stops.map((e, t) => /* @__PURE__ */ K("div", {
447
474
  className: "flex gap-4",
448
- children: [/* @__PURE__ */ G("div", {
475
+ children: [/* @__PURE__ */ K("div", {
449
476
  className: "relative",
450
- children: [/* @__PURE__ */ W("div", {
477
+ children: [/* @__PURE__ */ G("div", {
451
478
  className: `w-8 h-8 rounded-full flex items-center justify-center ${e.status === "completed" ? "bg-status-success-text text-text-inverse" : "bg-bg-sunken"}`,
452
- children: e.status === "completed" ? /* @__PURE__ */ W(S, { size: 16 }) : e.sequence
453
- }), t < r.stops.length - 1 && /* @__PURE__ */ W("div", { className: "absolute top-8 left-4 w-px h-12 bg-border" })]
454
- }), /* @__PURE__ */ W("div", {
479
+ children: e.status === "completed" ? /* @__PURE__ */ G(S, { size: 16 }) : e.sequence
480
+ }), t < r.stops.length - 1 && /* @__PURE__ */ G("div", { className: "absolute top-8 left-4 w-px h-12 bg-border" })]
481
+ }), /* @__PURE__ */ G("div", {
455
482
  className: "flex-1 pb-4",
456
- children: /* @__PURE__ */ G("div", {
483
+ children: /* @__PURE__ */ K("div", {
457
484
  className: "flex items-center justify-between",
458
- children: [/* @__PURE__ */ G("div", { children: [/* @__PURE__ */ G("div", {
485
+ children: [/* @__PURE__ */ K("div", { children: [/* @__PURE__ */ K("div", {
459
486
  className: "flex items-center gap-2",
460
- children: [/* @__PURE__ */ W(p, {
487
+ children: [/* @__PURE__ */ G(f, {
461
488
  variant: e.type === "pickup" ? "secondary" : "default",
462
489
  className: "capitalize",
463
490
  children: e.type
464
- }), /* @__PURE__ */ G("span", {
491
+ }), /* @__PURE__ */ K("span", {
465
492
  className: "font-medium",
466
493
  children: ["Order #", e.orderId]
467
494
  })]
468
- }), /* @__PURE__ */ W("p", {
495
+ }), /* @__PURE__ */ G("p", {
469
496
  className: "text-sm text-text-secondary mt-1",
470
- children: V(e.address)
471
- })] }), /* @__PURE__ */ G("div", {
497
+ children: H(e.address)
498
+ })] }), /* @__PURE__ */ K("div", {
472
499
  className: "text-right",
473
500
  children: [
474
- /* @__PURE__ */ G("p", {
501
+ /* @__PURE__ */ K("p", {
475
502
  className: "text-sm",
476
- children: ["Scheduled: ", B(e.scheduledTime, "time")]
503
+ children: ["Scheduled: ", V(e.scheduledTime, "time")]
477
504
  }),
478
- e.actualTime && /* @__PURE__ */ G("p", {
505
+ e.actualTime && /* @__PURE__ */ K("p", {
479
506
  className: "text-sm text-status-success-text",
480
- children: ["Actual: ", B(e.actualTime, "time")]
507
+ children: ["Actual: ", V(e.actualTime, "time")]
481
508
  }),
482
- /* @__PURE__ */ G("p", {
509
+ /* @__PURE__ */ K("p", {
483
510
  className: "text-xs text-text-secondary",
484
511
  children: [e.duration, " min stop"]
485
512
  })
@@ -489,81 +516,81 @@ function Q() {
489
516
  })]
490
517
  }, e.id))
491
518
  }) })] })]
492
- }), /* @__PURE__ */ G("div", {
519
+ }), /* @__PURE__ */ K("div", {
493
520
  className: "space-y-6",
494
521
  children: [
495
- /* @__PURE__ */ G(K, {
522
+ /* @__PURE__ */ K(q, {
496
523
  className: "space-y-4",
497
524
  children: [
498
- /* @__PURE__ */ W("h2", {
525
+ /* @__PURE__ */ G("h2", {
499
526
  className: "text-base font-semibold text-text-primary",
500
527
  children: "Route Info"
501
528
  }),
502
- /* @__PURE__ */ G("div", { children: [/* @__PURE__ */ W("p", {
529
+ /* @__PURE__ */ K("div", { children: [/* @__PURE__ */ G("p", {
503
530
  className: "text-sm text-text-secondary",
504
531
  children: "Total Distance"
505
- }), /* @__PURE__ */ G("p", {
532
+ }), /* @__PURE__ */ K("p", {
506
533
  className: "text-2xl font-bold",
507
- children: [r.distance.toFixed(1), /* @__PURE__ */ W("span", {
534
+ children: [r.distance.toFixed(1), /* @__PURE__ */ G("span", {
508
535
  className: "text-sm font-normal",
509
536
  children: " km"
510
537
  })]
511
538
  })] }),
512
- /* @__PURE__ */ G("div", { children: [/* @__PURE__ */ W("p", {
539
+ /* @__PURE__ */ K("div", { children: [/* @__PURE__ */ G("p", {
513
540
  className: "text-sm text-text-secondary",
514
541
  children: "Est. Duration"
515
- }), /* @__PURE__ */ G("p", {
542
+ }), /* @__PURE__ */ K("p", {
516
543
  className: "text-2xl font-bold",
517
- children: [r.estimatedDuration, /* @__PURE__ */ W("span", {
544
+ children: [r.estimatedDuration, /* @__PURE__ */ G("span", {
518
545
  className: "text-sm font-normal",
519
546
  children: " min"
520
547
  })]
521
548
  })] }),
522
- r.fuelCost !== void 0 && /* @__PURE__ */ G("div", { children: [/* @__PURE__ */ G("p", {
549
+ r.fuelCost !== void 0 && /* @__PURE__ */ K("div", { children: [/* @__PURE__ */ K("p", {
523
550
  className: "text-sm text-text-secondary flex items-center gap-1",
524
- children: [/* @__PURE__ */ W(w, { size: 14 }), " Est. Fuel Cost"]
525
- }), /* @__PURE__ */ W("p", {
551
+ children: [/* @__PURE__ */ G(w, { size: 14 }), " Est. Fuel Cost"]
552
+ }), /* @__PURE__ */ G("p", {
526
553
  className: "text-2xl font-bold",
527
- children: z(r.fuelCost)
554
+ children: B(r.fuelCost)
528
555
  })] }),
529
- r.actualDuration && /* @__PURE__ */ G("div", { children: [/* @__PURE__ */ W("p", {
556
+ r.actualDuration && /* @__PURE__ */ K("div", { children: [/* @__PURE__ */ G("p", {
530
557
  className: "text-sm text-text-secondary",
531
558
  children: "Actual Duration"
532
- }), /* @__PURE__ */ G("p", {
559
+ }), /* @__PURE__ */ K("p", {
533
560
  className: "text-2xl font-bold",
534
- children: [r.actualDuration, /* @__PURE__ */ W("span", {
561
+ children: [r.actualDuration, /* @__PURE__ */ G("span", {
535
562
  className: "text-sm font-normal",
536
563
  children: " min"
537
564
  })]
538
565
  })] })
539
566
  ]
540
567
  }),
541
- /* @__PURE__ */ G(s, { children: [/* @__PURE__ */ W(u, { children: /* @__PURE__ */ G(l, {
568
+ /* @__PURE__ */ K(o, { children: [/* @__PURE__ */ G(l, { children: /* @__PURE__ */ K(c, {
542
569
  className: "flex items-center gap-2",
543
- children: [/* @__PURE__ */ W(C, { size: 18 }), " Timeline"]
544
- }) }), /* @__PURE__ */ G(c, {
570
+ children: [/* @__PURE__ */ G(C, { size: 18 }), " Timeline"]
571
+ }) }), /* @__PURE__ */ K(s, {
545
572
  className: "space-y-3",
546
573
  children: [
547
- r.startTime && /* @__PURE__ */ G("div", { children: [/* @__PURE__ */ W("p", {
574
+ r.startTime && /* @__PURE__ */ K("div", { children: [/* @__PURE__ */ G("p", {
548
575
  className: "text-sm text-text-secondary",
549
576
  children: "Started"
550
- }), /* @__PURE__ */ W("p", { children: B(r.startTime, "full") })] }),
551
- r.endTime && /* @__PURE__ */ G("div", { children: [/* @__PURE__ */ W("p", {
577
+ }), /* @__PURE__ */ G("p", { children: V(r.startTime, "full") })] }),
578
+ r.endTime && /* @__PURE__ */ K("div", { children: [/* @__PURE__ */ G("p", {
552
579
  className: "text-sm text-text-secondary",
553
580
  children: "Completed"
554
- }), /* @__PURE__ */ W("p", { children: B(r.endTime, "full") })] }),
555
- /* @__PURE__ */ G("div", { children: [/* @__PURE__ */ W("p", {
581
+ }), /* @__PURE__ */ G("p", { children: V(r.endTime, "full") })] }),
582
+ /* @__PURE__ */ K("div", { children: [/* @__PURE__ */ G("p", {
556
583
  className: "text-sm text-text-secondary",
557
584
  children: "Created"
558
- }), /* @__PURE__ */ W("p", { children: B(r.createdAt, "full") })] })
585
+ }), /* @__PURE__ */ G("p", { children: V(r.createdAt, "full") })] })
559
586
  ]
560
587
  })] }),
561
- r.trafficConditions.length > 0 && /* @__PURE__ */ G(s, { children: [/* @__PURE__ */ W(u, { children: /* @__PURE__ */ W(l, { children: "Traffic Conditions" }) }), /* @__PURE__ */ W(c, { children: r.trafficConditions.map((e, t) => /* @__PURE__ */ G("div", {
588
+ r.trafficConditions.length > 0 && /* @__PURE__ */ K(o, { children: [/* @__PURE__ */ G(l, { children: /* @__PURE__ */ G(c, { children: "Traffic Conditions" }) }), /* @__PURE__ */ G(s, { children: r.trafficConditions.map((e, t) => /* @__PURE__ */ K("div", {
562
589
  className: `p-2 rounded mb-2 ${e.condition === "severe" ? "bg-status-error-bg-subtle" : (e.condition, "bg-status-warning-bg-subtle")}`,
563
- children: [/* @__PURE__ */ G("p", {
590
+ children: [/* @__PURE__ */ K("p", {
564
591
  className: "text-sm font-medium capitalize",
565
592
  children: [e.condition, " traffic"]
566
- }), /* @__PURE__ */ G("p", {
593
+ }), /* @__PURE__ */ K("p", {
567
594
  className: "text-xs text-text-secondary",
568
595
  children: [
569
596
  e.location,
@@ -577,7 +604,7 @@ function Q() {
577
604
  })]
578
605
  })
579
606
  ]
580
- }) : /* @__PURE__ */ W(Z, {});
607
+ });
581
608
  }
582
609
  //#endregion
583
- export { Q as default };
610
+ export { Z as default };