@burdenoff/microfe-movethewheels 2026.626.2 → 2026.703.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-AvsMbunM.js → AIAssistantPage-C3ovZ0Fh.js} +100 -73
- package/dist/AnalyticsPage-O8SpY-V4.js +215 -0
- package/dist/{CreateOrderPage-CjlnEtk3.js → CreateOrderPage-CB1_-_mN.js} +33 -35
- package/dist/{CustomerDetailsPage-I6cdDHUi.js → CustomerDetailsPage-BaeKEI1D.js} +42 -44
- package/dist/{CustomersPage-CGGfD4ki.js → CustomersPage-DRaLuHMC.js} +26 -28
- package/dist/{DashboardPage-D2HRqwg9.js → DashboardPage-DPjhNfKB.js} +85 -83
- package/dist/{DataTable-CD9ZhpLB.js → DataTable-DmciIKKM.js} +3 -3
- package/dist/{DriverDetailsPage-rg_pGNuP.js → DriverDetailsPage-CSSQTOzn.js} +52 -54
- package/dist/{DriversPage-DKiynISH.js → DriversPage-C2Bk0w4Q.js} +24 -26
- package/dist/{FinancePage-Vg8WPs38.js → FinancePage-lmp0Sdsw.js} +9 -9
- package/dist/FleetPage-DZn5pIqd.js +365 -0
- package/dist/ImportExportPage-BIUJZc7O.js +290 -0
- package/dist/InventoryPage-Cxh1zYJd.js +253 -0
- package/dist/{LiveTrackingPage-DQ1q4Id3.js → LiveTrackingPage-BY1yAkIt.js} +60 -56
- package/dist/MarketplacePage-RMuL17EA.js +247 -0
- package/dist/{MetricCard-B7yMyvMX.js → MetricCard-7aYgzZHK.js} +1 -1
- package/dist/{OrderDetailsPage-CFASgsYX.js → OrderDetailsPage-C2Mf4KSy.js} +83 -85
- package/dist/{OrdersListPage-BHeT8S5o.js → OrdersListPage-BrPBtnhp.js} +31 -33
- package/dist/{PageLayout-D3N8MCTm.js → PageLayout-D4LDHJJq.js} +483 -422
- package/dist/{ProductDetailsPage-CFGcbaHo.js → ProductDetailsPage-CezzzZcj.js} +27 -29
- package/dist/{ProductsPage--xEpbQ8A.js → ProductsPage-I5DilIoY.js} +21 -23
- package/dist/ReportsPage-BDXNmUng.js +284 -0
- package/dist/RouteDetailsPage-BcomL20M.js +263 -0
- package/dist/RoutesPage-lqX9ylHP.js +144 -0
- package/dist/SettingsPage-CQVIOaNs.js +421 -0
- package/dist/StatusBadge-NpTeHVlw.js +152 -0
- package/dist/{TrackingPage-CcRc_dva.js → TrackingPage-BXrjz7V8.js} +59 -61
- package/dist/{VehicleDetailsPage-3YDMPsPs.js → VehicleDetailsPage-DZjLcJgr.js} +40 -42
- package/dist/{VehiclesPage-UlxPWP9K.js → VehiclesPage-6W39XT5W.js} +19 -21
- package/dist/{WarehouseDetailsPage-Db7KeN-d.js → WarehouseDetailsPage-C10pgRGW.js} +38 -40
- package/dist/{WarehousesPage-CuTO-OPp.js → WarehousesPage-CHvBqNaQ.js} +15 -17
- package/dist/{arrow-left-CBpZKkpq.js → arrow-left-n48Y-Wis.js} +1 -1
- package/dist/{box-CAaiElsb.js → box-D9Pal4HM.js} +1 -1
- package/dist/{chart-column-D1Ym15-S.js → chart-column-BFIJysDR.js} +1 -1
- package/dist/{chevron-right-BIFGi0UA.js → chevron-right-EMIIyyJ1.js} +1 -1
- package/dist/{circle-alert-DjmNo5_L.js → circle-alert-iY24lSlp.js} +1 -1
- package/dist/{circle-check-big-CjuPVo3_.js → circle-check-big-w0TrLKMF.js} +1 -1
- package/dist/{clock-BjkdnddD.js → clock-DJZtdl8u.js} +1 -1
- package/dist/{dollar-sign-IB4O0wuQ.js → dollar-sign-CgKQRz_e.js} +1 -1
- package/dist/{download-Dpa9vqoG.js → download-DRXxoiQR.js} +1 -1
- package/dist/{file-text-C8Uioy11.js → file-text-DWWY6_f5.js} +1 -1
- package/dist/{filter-Da5OZaHI.js → filter-DloLC2eE.js} +1 -1
- package/dist/index.js +119 -111
- package/dist/{map-_Per4sT9.js → map-CkJaULb2.js} +1 -1
- package/dist/{map-pin-BSaf5IDL.js → map-pin-BGiCvyCs.js} +1 -1
- package/dist/{navigation-DaTbrhw2.js → navigation-D36prnAn.js} +1 -1
- package/dist/{package-BE7U0wQE.js → package-BChUzpJS.js} +1 -1
- package/dist/{phone-DV4StZiA.js → phone-Ac9s3mo_.js} +1 -1
- package/dist/{plus-Dl1rLeJR.js → plus-Z76q-FZm.js} +1 -1
- package/dist/{refresh-cw-CWfERAit.js → refresh-cw-DKt6f5T6.js} +1 -1
- package/dist/{save-XH8vydOn.js → save-CojywNhG.js} +1 -1
- package/dist/{search-OxoIiL_C.js → search-CDGefqb3.js} +1 -1
- package/dist/{square-pen-hLIbFQFV.js → square-pen-CopE9GmB.js} +1 -1
- package/dist/{star-YsVV3MNQ.js → star-nHlLjDKR.js} +1 -1
- package/dist/{store-RCBl7HB-.js → store-BR9Voi5E.js} +1 -1
- package/dist/{trending-up-C-85AwGT.js → trending-up-B7W-GL6P.js} +1 -1
- package/dist/{triangle-alert-BOhfGgmh.js → triangle-alert-BonHFFNz.js} +1 -1
- package/dist/{truck-CtDjNFbi.js → truck-DrlfSpRC.js} +1 -1
- package/dist/{useAnalytics-ph7eTIK6.js → useAnalytics-CgdzUfY_.js} +40 -40
- package/dist/useAssistant-D4v3oxD3.js +84 -0
- package/dist/{useCustomers-bS3a4ytk.js → useCustomers-QrlozybF.js} +24 -24
- package/dist/{useFleet-BdETplNE.js → useFleet-DiAC-IiH.js} +70 -67
- package/dist/useImportExport-BLMnAKCC.js +55 -0
- package/dist/{useInventory-Dwn18FPz.js → useInventory-DKoks37x.js} +33 -33
- package/dist/{useOrders-D_3_hGMp.js → useOrders-D3UZVy8Y.js} +42 -42
- package/dist/useReports-Puq4DCH9.js +78 -0
- package/dist/{useRoutes-v4aBaS-E.js → useRoutes-Do57LvRb.js} +31 -31
- package/dist/useSettings-CkDH_-gM.js +81 -0
- package/dist/{useTracking-De2KIUNu.js → useTracking-GJify4HN.js} +22 -22
- package/dist/{user-Dz5TJZFs.js → user-CjSoudeu.js} +1 -1
- package/dist/{users-g2N0eL-Z.js → users-BAM4gHTn.js} +1 -1
- package/dist/{warehouse-D3WWDeTX.js → warehouse-C7MSr47B.js} +1 -1
- package/dist/{wrench-CmxY1n4I.js → wrench-CANXWxF-.js} +1 -1
- package/package.json +1 -1
- package/src/movethewheels/MoveTheWheelsRoutes.tsx +27 -3
- package/src/movethewheels/components/StatusBadge.tsx +18 -37
- package/src/movethewheels/constants/index.ts +67 -26
- package/src/movethewheels/hooks/index.ts +12 -0
- package/src/movethewheels/hooks/useAnalytics.ts +20 -6
- package/src/movethewheels/hooks/useAssistant.ts +74 -0
- package/src/movethewheels/hooks/useFleet.ts +63 -59
- package/src/movethewheels/hooks/useImportExport.ts +101 -0
- package/src/movethewheels/hooks/useReports.ts +158 -0
- package/src/movethewheels/hooks/useSettings.ts +120 -0
- package/src/movethewheels/pages/AIAssistantPage.tsx +53 -15
- package/src/movethewheels/pages/AnalyticsPage.tsx +67 -64
- package/src/movethewheels/pages/CustomerDetailsPage.tsx +1 -1
- package/src/movethewheels/pages/CustomersPage.tsx +1 -1
- package/src/movethewheels/pages/DashboardPage.tsx +42 -22
- package/src/movethewheels/pages/DriverDetailsPage.tsx +1 -1
- package/src/movethewheels/pages/DriversPage.tsx +1 -1
- package/src/movethewheels/pages/FleetPage.tsx +96 -38
- package/src/movethewheels/pages/ImportExportPage.tsx +174 -68
- package/src/movethewheels/pages/InventoryPage.tsx +66 -28
- package/src/movethewheels/pages/LiveTrackingPage.tsx +12 -3
- package/src/movethewheels/pages/MarketplacePage.tsx +87 -45
- package/src/movethewheels/pages/OrderDetailsPage.tsx +2 -2
- package/src/movethewheels/pages/ReportsPage.tsx +194 -90
- package/src/movethewheels/pages/RouteDetailsPage.tsx +5 -11
- package/src/movethewheels/pages/RoutesPage.tsx +4 -9
- package/src/movethewheels/pages/SettingsPage.tsx +234 -56
- package/src/movethewheels/pages/TrackingPage.tsx +6 -6
- package/src/movethewheels/providers/MoveTheWheelsProvider.tsx +7 -6
- package/src/movethewheels/store/movethewheelsStore.ts +1 -1
- package/dist/AnalyticsPage-CCLfHgQZ.js +0 -212
- package/dist/FleetPage-DddXt8r8.js +0 -332
- package/dist/ImportExportPage-BW6qO3kc.js +0 -248
- package/dist/InventoryPage-rMGuaJN-.js +0 -222
- package/dist/MarketplacePage-DKrXAv62.js +0 -219
- package/dist/ReportsPage-Bb7_90rK.js +0 -235
- package/dist/RouteDetailsPage-CVtDVb1N.js +0 -282
- package/dist/RoutesPage-s57PtgcQ.js +0 -163
- package/dist/SettingsPage-BYNCBOpN.js +0 -298
- package/dist/StatusBadge-CijYQXtb.js +0 -209
- package/dist/graphqlClient-CdJyR_ed.js +0 -55
- package/dist/navigation-BgnOfsVd.js +0 -6
- package/dist/route-Dp9JiN_E.js +0 -51
- package/dist/settings-3Rw5NwFF.js +0 -28
- package/src/movethewheels/constants/mockData.ts +0 -1342
- /package/dist/{formatters-_vJlC-47.js → formatters-DhKZ-eA1.js} +0 -0
|
@@ -0,0 +1,421 @@
|
|
|
1
|
+
import { A as e, F as t, I as n, J as r, L as i, P as a, R as o, V as s, X as c, Y as l, Z as u, d, f, g as p, h as m, i as h, j as g, lt as _, p as v, u as y } from "./PageLayout-D4LDHJJq.js";
|
|
2
|
+
import { n as b, r as x, t as S } from "./useSettings-CkDH_-gM.js";
|
|
3
|
+
import { t as C } from "./save-CojywNhG.js";
|
|
4
|
+
import { t as w } from "./user-CjSoudeu.js";
|
|
5
|
+
import { useEffect as T, useMemo as E, useState as D } from "react";
|
|
6
|
+
import { jsx as O, jsxs as k } from "react/jsx-runtime";
|
|
7
|
+
import { EmphasisPanel as A, NextSteps as j, PagePurpose as M } from "@burdenoff/fe-libs/ui";
|
|
8
|
+
//#region node_modules/lucide-react/dist/esm/icons/bell.js
|
|
9
|
+
var N = _("Bell", [["path", {
|
|
10
|
+
d: "M10.268 21a2 2 0 0 0 3.464 0",
|
|
11
|
+
key: "vwvbt9"
|
|
12
|
+
}], ["path", {
|
|
13
|
+
d: "M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",
|
|
14
|
+
key: "11g9vi"
|
|
15
|
+
}]]), P = _("Shield", [["path", {
|
|
16
|
+
d: "M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",
|
|
17
|
+
key: "oel41y"
|
|
18
|
+
}]]), F = _("Webhook", [
|
|
19
|
+
["path", {
|
|
20
|
+
d: "M18 16.98h-5.99c-1.1 0-1.95.94-2.48 1.9A4 4 0 0 1 2 17c.01-.7.2-1.4.57-2",
|
|
21
|
+
key: "q3hayz"
|
|
22
|
+
}],
|
|
23
|
+
["path", {
|
|
24
|
+
d: "m6 17 3.13-5.78c.53-.97.1-2.18-.5-3.1a4 4 0 1 1 6.89-4.06",
|
|
25
|
+
key: "1go1hn"
|
|
26
|
+
}],
|
|
27
|
+
["path", {
|
|
28
|
+
d: "m12 6 3.13 5.73C15.66 12.7 16.9 13 18 13a4 4 0 0 1 0 8",
|
|
29
|
+
key: "qlwsc0"
|
|
30
|
+
}]
|
|
31
|
+
]), I = [
|
|
32
|
+
{
|
|
33
|
+
key: "googleMaps",
|
|
34
|
+
name: "Google Maps"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
key: "stripe",
|
|
38
|
+
name: "Stripe"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
key: "twilio",
|
|
42
|
+
name: "Twilio"
|
|
43
|
+
}
|
|
44
|
+
], L = [
|
|
45
|
+
{
|
|
46
|
+
key: "orderUpdates",
|
|
47
|
+
label: "Order updates",
|
|
48
|
+
desc: "Receive notifications for order status changes"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
key: "deliveryAlerts",
|
|
52
|
+
label: "Delivery alerts",
|
|
53
|
+
desc: "Get notified about delivery issues"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
key: "systemNotifications",
|
|
57
|
+
label: "System notifications",
|
|
58
|
+
desc: "Important system updates and maintenance"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
key: "weeklyReports",
|
|
62
|
+
label: "Weekly reports",
|
|
63
|
+
desc: "Receive weekly performance summary"
|
|
64
|
+
}
|
|
65
|
+
];
|
|
66
|
+
function R(e) {
|
|
67
|
+
let t = e.company ?? {}, n = e.localization ?? {}, r = e.notifications ?? {}, i = e.security ?? {}, a = e.integrations ?? {};
|
|
68
|
+
return {
|
|
69
|
+
company: {
|
|
70
|
+
name: t.name ?? "",
|
|
71
|
+
email: t.email ?? "",
|
|
72
|
+
phone: t.phone ?? "",
|
|
73
|
+
website: t.website ?? ""
|
|
74
|
+
},
|
|
75
|
+
localization: {
|
|
76
|
+
timezone: n.timezone ?? "utc",
|
|
77
|
+
currency: n.currency ?? "usd",
|
|
78
|
+
language: n.language ?? "en"
|
|
79
|
+
},
|
|
80
|
+
notifications: {
|
|
81
|
+
orderUpdates: r.orderUpdates ?? !0,
|
|
82
|
+
deliveryAlerts: r.deliveryAlerts ?? !0,
|
|
83
|
+
systemNotifications: r.systemNotifications ?? !0,
|
|
84
|
+
weeklyReports: r.weeklyReports ?? !1
|
|
85
|
+
},
|
|
86
|
+
twoFactorEnabled: i.twoFactorEnabled ?? !1,
|
|
87
|
+
integrations: a
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
function z() {
|
|
91
|
+
let { preferences: _, isLoading: z, isSaving: B, error: V, savePreferences: H } = S(), [U, W] = D("general"), [G, K] = D(() => R({})), [q, J] = D(!1), Y = E(() => R(_), [_]);
|
|
92
|
+
T(() => {
|
|
93
|
+
K(Y);
|
|
94
|
+
}, [Y]);
|
|
95
|
+
let X = (e) => K((t) => ({
|
|
96
|
+
...t,
|
|
97
|
+
company: {
|
|
98
|
+
...t.company,
|
|
99
|
+
...e
|
|
100
|
+
}
|
|
101
|
+
})), Z = (e) => K((t) => ({
|
|
102
|
+
...t,
|
|
103
|
+
localization: {
|
|
104
|
+
...t.localization,
|
|
105
|
+
...e
|
|
106
|
+
}
|
|
107
|
+
})), Q = (e, t) => K((n) => ({
|
|
108
|
+
...n,
|
|
109
|
+
notifications: {
|
|
110
|
+
...n.notifications,
|
|
111
|
+
[e]: t
|
|
112
|
+
}
|
|
113
|
+
})), $ = async () => {
|
|
114
|
+
J(!1);
|
|
115
|
+
try {
|
|
116
|
+
await H({
|
|
117
|
+
company: G.company,
|
|
118
|
+
localization: G.localization,
|
|
119
|
+
notifications: G.notifications,
|
|
120
|
+
security: { twoFactorEnabled: G.twoFactorEnabled },
|
|
121
|
+
integrations: G.integrations
|
|
122
|
+
}), J(!0);
|
|
123
|
+
} catch {}
|
|
124
|
+
};
|
|
125
|
+
return /* @__PURE__ */ k(h, {
|
|
126
|
+
title: "Settings",
|
|
127
|
+
subtitle: "Manage your account and preferences",
|
|
128
|
+
icon: /* @__PURE__ */ O(b, { size: 24 }),
|
|
129
|
+
children: [
|
|
130
|
+
/* @__PURE__ */ O(M, {
|
|
131
|
+
icon: /* @__PURE__ */ O(b, { size: 18 }),
|
|
132
|
+
children: "Configure how MoveTheWheels works for your business — company details and localization, which notifications you receive, account security, and the integrations (maps, payments, messaging) that power deliveries. Set these once so the rest of the app behaves the way you expect."
|
|
133
|
+
}),
|
|
134
|
+
(q || V) && /* @__PURE__ */ O("div", {
|
|
135
|
+
role: "status",
|
|
136
|
+
className: `rounded-lg p-3 text-sm ${V ? "bg-status-error-bg-subtle text-status-error-text" : "bg-status-success-bg-subtle text-status-success-text"}`,
|
|
137
|
+
children: V ? V.message : "Settings saved."
|
|
138
|
+
}),
|
|
139
|
+
/* @__PURE__ */ O(j, {
|
|
140
|
+
storageKey: "movethewheels-settings",
|
|
141
|
+
steps: [
|
|
142
|
+
{
|
|
143
|
+
id: "company",
|
|
144
|
+
label: "Confirm company details & localization",
|
|
145
|
+
description: "Set your name, contact info, timezone, currency and language.",
|
|
146
|
+
icon: /* @__PURE__ */ O(w, { size: 16 }),
|
|
147
|
+
onClick: () => W("general")
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
id: "notifications",
|
|
151
|
+
label: "Choose your notifications",
|
|
152
|
+
description: "Decide which order, delivery and report emails you receive.",
|
|
153
|
+
icon: /* @__PURE__ */ O(N, { size: 16 }),
|
|
154
|
+
onClick: () => W("notifications")
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
id: "security",
|
|
158
|
+
label: "Secure your account",
|
|
159
|
+
description: "Update your password and enable two-factor authentication.",
|
|
160
|
+
icon: /* @__PURE__ */ O(P, { size: 16 }),
|
|
161
|
+
onClick: () => W("security")
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
id: "integrations",
|
|
165
|
+
label: "Connect your tools",
|
|
166
|
+
description: "Link maps, payments and messaging providers.",
|
|
167
|
+
icon: /* @__PURE__ */ O(F, { size: 16 }),
|
|
168
|
+
onClick: () => W("integrations")
|
|
169
|
+
}
|
|
170
|
+
]
|
|
171
|
+
}),
|
|
172
|
+
/* @__PURE__ */ k(r, {
|
|
173
|
+
value: U,
|
|
174
|
+
onValueChange: W,
|
|
175
|
+
children: [
|
|
176
|
+
/* @__PURE__ */ k(c, {
|
|
177
|
+
className: "mb-6",
|
|
178
|
+
children: [
|
|
179
|
+
/* @__PURE__ */ k(u, {
|
|
180
|
+
value: "general",
|
|
181
|
+
children: [/* @__PURE__ */ O(w, { size: 16 }), " General"]
|
|
182
|
+
}),
|
|
183
|
+
/* @__PURE__ */ k(u, {
|
|
184
|
+
value: "notifications",
|
|
185
|
+
children: [/* @__PURE__ */ O(N, { size: 16 }), " Notifications"]
|
|
186
|
+
}),
|
|
187
|
+
/* @__PURE__ */ k(u, {
|
|
188
|
+
value: "security",
|
|
189
|
+
children: [/* @__PURE__ */ O(P, { size: 16 }), " Security"]
|
|
190
|
+
}),
|
|
191
|
+
/* @__PURE__ */ k(u, {
|
|
192
|
+
value: "integrations",
|
|
193
|
+
children: [/* @__PURE__ */ O(F, { size: 16 }), " Integrations"]
|
|
194
|
+
})
|
|
195
|
+
]
|
|
196
|
+
}),
|
|
197
|
+
/* @__PURE__ */ k(l, {
|
|
198
|
+
value: "general",
|
|
199
|
+
className: "space-y-6",
|
|
200
|
+
children: [/* @__PURE__ */ k(A, { children: [
|
|
201
|
+
/* @__PURE__ */ O("h2", {
|
|
202
|
+
className: "text-base font-semibold text-text-primary",
|
|
203
|
+
children: "Company Information"
|
|
204
|
+
}),
|
|
205
|
+
/* @__PURE__ */ O("p", {
|
|
206
|
+
className: "text-sm text-text-secondary mb-4",
|
|
207
|
+
children: "Basic company details"
|
|
208
|
+
}),
|
|
209
|
+
/* @__PURE__ */ k("div", {
|
|
210
|
+
className: "grid grid-cols-2 gap-4",
|
|
211
|
+
children: [
|
|
212
|
+
/* @__PURE__ */ k("div", { children: [/* @__PURE__ */ O(g, { children: "Company Name" }), /* @__PURE__ */ O(e, {
|
|
213
|
+
value: G.company.name,
|
|
214
|
+
placeholder: "Your company name",
|
|
215
|
+
disabled: z,
|
|
216
|
+
onChange: (e) => X({ name: e.target.value })
|
|
217
|
+
})] }),
|
|
218
|
+
/* @__PURE__ */ k("div", { children: [/* @__PURE__ */ O(g, { children: "Contact Email" }), /* @__PURE__ */ O(e, {
|
|
219
|
+
type: "email",
|
|
220
|
+
value: G.company.email,
|
|
221
|
+
placeholder: "contact@example.com",
|
|
222
|
+
disabled: z,
|
|
223
|
+
onChange: (e) => X({ email: e.target.value })
|
|
224
|
+
})] }),
|
|
225
|
+
/* @__PURE__ */ k("div", { children: [/* @__PURE__ */ O(g, { children: "Phone" }), /* @__PURE__ */ O(e, {
|
|
226
|
+
value: G.company.phone,
|
|
227
|
+
placeholder: "+1-555-0100",
|
|
228
|
+
disabled: z,
|
|
229
|
+
onChange: (e) => X({ phone: e.target.value })
|
|
230
|
+
})] }),
|
|
231
|
+
/* @__PURE__ */ k("div", { children: [/* @__PURE__ */ O(g, { children: "Website" }), /* @__PURE__ */ O(e, {
|
|
232
|
+
value: G.company.website,
|
|
233
|
+
placeholder: "https://example.com",
|
|
234
|
+
disabled: z,
|
|
235
|
+
onChange: (e) => X({ website: e.target.value })
|
|
236
|
+
})] })
|
|
237
|
+
]
|
|
238
|
+
})
|
|
239
|
+
] }), /* @__PURE__ */ k(d, { children: [/* @__PURE__ */ O(m, { children: /* @__PURE__ */ k(p, {
|
|
240
|
+
className: "flex items-center gap-2",
|
|
241
|
+
children: [/* @__PURE__ */ O(x, { size: 18 }), " Localization"]
|
|
242
|
+
}) }), /* @__PURE__ */ O(f, {
|
|
243
|
+
className: "space-y-4",
|
|
244
|
+
children: /* @__PURE__ */ k("div", {
|
|
245
|
+
className: "grid grid-cols-3 gap-4",
|
|
246
|
+
children: [
|
|
247
|
+
/* @__PURE__ */ k("div", { children: [/* @__PURE__ */ O(g, { children: "Timezone" }), /* @__PURE__ */ k(a, {
|
|
248
|
+
value: G.localization.timezone,
|
|
249
|
+
onValueChange: (e) => Z({ timezone: e }),
|
|
250
|
+
children: [/* @__PURE__ */ O(i, { children: /* @__PURE__ */ O(o, {}) }), /* @__PURE__ */ k(t, { children: [
|
|
251
|
+
/* @__PURE__ */ O(n, {
|
|
252
|
+
value: "pst",
|
|
253
|
+
children: "Pacific Time (PST)"
|
|
254
|
+
}),
|
|
255
|
+
/* @__PURE__ */ O(n, {
|
|
256
|
+
value: "est",
|
|
257
|
+
children: "Eastern Time (EST)"
|
|
258
|
+
}),
|
|
259
|
+
/* @__PURE__ */ O(n, {
|
|
260
|
+
value: "utc",
|
|
261
|
+
children: "UTC"
|
|
262
|
+
})
|
|
263
|
+
] })]
|
|
264
|
+
})] }),
|
|
265
|
+
/* @__PURE__ */ k("div", { children: [/* @__PURE__ */ O(g, { children: "Currency" }), /* @__PURE__ */ k(a, {
|
|
266
|
+
value: G.localization.currency,
|
|
267
|
+
onValueChange: (e) => Z({ currency: e }),
|
|
268
|
+
children: [/* @__PURE__ */ O(i, { children: /* @__PURE__ */ O(o, {}) }), /* @__PURE__ */ k(t, { children: [
|
|
269
|
+
/* @__PURE__ */ O(n, {
|
|
270
|
+
value: "usd",
|
|
271
|
+
children: "USD ($)"
|
|
272
|
+
}),
|
|
273
|
+
/* @__PURE__ */ O(n, {
|
|
274
|
+
value: "eur",
|
|
275
|
+
children: "EUR (€)"
|
|
276
|
+
}),
|
|
277
|
+
/* @__PURE__ */ O(n, {
|
|
278
|
+
value: "gbp",
|
|
279
|
+
children: "GBP (£)"
|
|
280
|
+
})
|
|
281
|
+
] })]
|
|
282
|
+
})] }),
|
|
283
|
+
/* @__PURE__ */ k("div", { children: [/* @__PURE__ */ O(g, { children: "Language" }), /* @__PURE__ */ k(a, {
|
|
284
|
+
value: G.localization.language,
|
|
285
|
+
onValueChange: (e) => Z({ language: e }),
|
|
286
|
+
children: [/* @__PURE__ */ O(i, { children: /* @__PURE__ */ O(o, {}) }), /* @__PURE__ */ k(t, { children: [
|
|
287
|
+
/* @__PURE__ */ O(n, {
|
|
288
|
+
value: "en",
|
|
289
|
+
children: "English"
|
|
290
|
+
}),
|
|
291
|
+
/* @__PURE__ */ O(n, {
|
|
292
|
+
value: "es",
|
|
293
|
+
children: "Spanish"
|
|
294
|
+
}),
|
|
295
|
+
/* @__PURE__ */ O(n, {
|
|
296
|
+
value: "fr",
|
|
297
|
+
children: "French"
|
|
298
|
+
})
|
|
299
|
+
] })]
|
|
300
|
+
})] })
|
|
301
|
+
]
|
|
302
|
+
})
|
|
303
|
+
})] })]
|
|
304
|
+
}),
|
|
305
|
+
/* @__PURE__ */ O(l, {
|
|
306
|
+
value: "notifications",
|
|
307
|
+
className: "space-y-6",
|
|
308
|
+
children: /* @__PURE__ */ k(d, { children: [/* @__PURE__ */ O(m, { children: /* @__PURE__ */ O(p, { children: "Email Notifications" }) }), /* @__PURE__ */ O(f, {
|
|
309
|
+
className: "space-y-4",
|
|
310
|
+
children: L.map((e) => /* @__PURE__ */ k("div", {
|
|
311
|
+
className: "flex items-center justify-between",
|
|
312
|
+
children: [/* @__PURE__ */ k("div", { children: [/* @__PURE__ */ O("p", {
|
|
313
|
+
className: "font-medium",
|
|
314
|
+
children: e.label
|
|
315
|
+
}), /* @__PURE__ */ O("p", {
|
|
316
|
+
className: "text-sm text-text-secondary",
|
|
317
|
+
children: e.desc
|
|
318
|
+
})] }), /* @__PURE__ */ O(s, {
|
|
319
|
+
checked: G.notifications[e.key],
|
|
320
|
+
disabled: z,
|
|
321
|
+
onCheckedChange: (t) => Q(e.key, t)
|
|
322
|
+
})]
|
|
323
|
+
}, e.key))
|
|
324
|
+
})] })
|
|
325
|
+
}),
|
|
326
|
+
/* @__PURE__ */ k(l, {
|
|
327
|
+
value: "security",
|
|
328
|
+
className: "space-y-6",
|
|
329
|
+
children: [/* @__PURE__ */ k(d, { children: [/* @__PURE__ */ k(m, { children: [/* @__PURE__ */ O(p, { children: "Password" }), /* @__PURE__ */ O(v, { children: "Passwords are managed by your workspace identity provider." })] }), /* @__PURE__ */ k(f, {
|
|
330
|
+
className: "space-y-4",
|
|
331
|
+
children: [
|
|
332
|
+
/* @__PURE__ */ k("div", { children: [/* @__PURE__ */ O(g, { children: "Current Password" }), /* @__PURE__ */ O(e, {
|
|
333
|
+
type: "password",
|
|
334
|
+
autoComplete: "current-password"
|
|
335
|
+
})] }),
|
|
336
|
+
/* @__PURE__ */ k("div", {
|
|
337
|
+
className: "grid grid-cols-2 gap-4",
|
|
338
|
+
children: [/* @__PURE__ */ k("div", { children: [/* @__PURE__ */ O(g, { children: "New Password" }), /* @__PURE__ */ O(e, {
|
|
339
|
+
type: "password",
|
|
340
|
+
autoComplete: "new-password"
|
|
341
|
+
})] }), /* @__PURE__ */ k("div", { children: [/* @__PURE__ */ O(g, { children: "Confirm Password" }), /* @__PURE__ */ O(e, {
|
|
342
|
+
type: "password",
|
|
343
|
+
autoComplete: "new-password"
|
|
344
|
+
})] })]
|
|
345
|
+
}),
|
|
346
|
+
/* @__PURE__ */ O(y, {
|
|
347
|
+
variant: "outline",
|
|
348
|
+
children: "Update Password"
|
|
349
|
+
})
|
|
350
|
+
]
|
|
351
|
+
})] }), /* @__PURE__ */ k(d, { children: [/* @__PURE__ */ k(m, { children: [/* @__PURE__ */ O(p, { children: "Two-Factor Authentication" }), /* @__PURE__ */ O(v, { children: "Add an extra layer of security" })] }), /* @__PURE__ */ O(f, { children: /* @__PURE__ */ k("div", {
|
|
352
|
+
className: "flex items-center justify-between",
|
|
353
|
+
children: [/* @__PURE__ */ k("p", { children: [
|
|
354
|
+
"Status:",
|
|
355
|
+
" ",
|
|
356
|
+
/* @__PURE__ */ O("span", {
|
|
357
|
+
className: `font-medium ${G.twoFactorEnabled ? "text-status-success-text" : "text-status-warning-text"}`,
|
|
358
|
+
children: G.twoFactorEnabled ? "Enabled" : "Disabled"
|
|
359
|
+
})
|
|
360
|
+
] }), /* @__PURE__ */ O(y, {
|
|
361
|
+
variant: "outline",
|
|
362
|
+
disabled: B,
|
|
363
|
+
onClick: () => K((e) => ({
|
|
364
|
+
...e,
|
|
365
|
+
twoFactorEnabled: !e.twoFactorEnabled
|
|
366
|
+
})),
|
|
367
|
+
children: G.twoFactorEnabled ? "Disable 2FA" : "Enable 2FA"
|
|
368
|
+
})]
|
|
369
|
+
}) })] })]
|
|
370
|
+
}),
|
|
371
|
+
/* @__PURE__ */ O(l, {
|
|
372
|
+
value: "integrations",
|
|
373
|
+
className: "space-y-6",
|
|
374
|
+
children: /* @__PURE__ */ k(d, { children: [/* @__PURE__ */ k(m, { children: [/* @__PURE__ */ O(p, { children: "Connected Services" }), /* @__PURE__ */ O(v, { children: "Connect the providers that power maps, payments and messaging." })] }), /* @__PURE__ */ O(f, {
|
|
375
|
+
className: "space-y-3",
|
|
376
|
+
children: I.map((e) => {
|
|
377
|
+
let t = G.integrations[e.key] === !0;
|
|
378
|
+
return /* @__PURE__ */ k("div", {
|
|
379
|
+
className: "flex items-center justify-between p-3 border rounded-lg",
|
|
380
|
+
children: [/* @__PURE__ */ k("div", { children: [/* @__PURE__ */ O("span", {
|
|
381
|
+
className: "font-medium",
|
|
382
|
+
children: e.name
|
|
383
|
+
}), /* @__PURE__ */ O("p", {
|
|
384
|
+
className: "text-sm text-text-secondary",
|
|
385
|
+
children: t ? "Connected" : "Not configured"
|
|
386
|
+
})] }), /* @__PURE__ */ O(y, {
|
|
387
|
+
variant: t ? "outline" : "default",
|
|
388
|
+
size: "sm",
|
|
389
|
+
disabled: B,
|
|
390
|
+
onClick: () => K((n) => ({
|
|
391
|
+
...n,
|
|
392
|
+
integrations: {
|
|
393
|
+
...n.integrations,
|
|
394
|
+
[e.key]: !t
|
|
395
|
+
}
|
|
396
|
+
})),
|
|
397
|
+
children: t ? "Disconnect" : "Connect"
|
|
398
|
+
})]
|
|
399
|
+
}, e.key);
|
|
400
|
+
})
|
|
401
|
+
})] })
|
|
402
|
+
})
|
|
403
|
+
]
|
|
404
|
+
}),
|
|
405
|
+
/* @__PURE__ */ O("div", {
|
|
406
|
+
className: "flex justify-end",
|
|
407
|
+
children: /* @__PURE__ */ k(y, {
|
|
408
|
+
onClick: () => void $(),
|
|
409
|
+
disabled: B || z,
|
|
410
|
+
children: [
|
|
411
|
+
/* @__PURE__ */ O(C, { size: 16 }),
|
|
412
|
+
" ",
|
|
413
|
+
B ? "Saving…" : "Save Changes"
|
|
414
|
+
]
|
|
415
|
+
})
|
|
416
|
+
})
|
|
417
|
+
]
|
|
418
|
+
});
|
|
419
|
+
}
|
|
420
|
+
//#endregion
|
|
421
|
+
export { z as default };
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { l as e, rt as t } from "./PageLayout-D4LDHJJq.js";
|
|
2
|
+
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
3
|
+
//#region src/movethewheels/constants/index.ts
|
|
4
|
+
var i = {
|
|
5
|
+
bg: "bg-status-success-bg-subtle",
|
|
6
|
+
text: "text-status-success-text",
|
|
7
|
+
border: "border-status-success-border"
|
|
8
|
+
}, a = {
|
|
9
|
+
bg: "bg-status-warning-bg-subtle",
|
|
10
|
+
text: "text-status-warning-text",
|
|
11
|
+
border: "border-status-warning-border"
|
|
12
|
+
}, o = {
|
|
13
|
+
bg: "bg-status-error-bg-subtle",
|
|
14
|
+
text: "text-status-error-text",
|
|
15
|
+
border: "border-status-error-border"
|
|
16
|
+
}, s = {
|
|
17
|
+
bg: "bg-status-info-bg-subtle",
|
|
18
|
+
text: "text-status-info-text",
|
|
19
|
+
border: "border-status-info-border"
|
|
20
|
+
}, c = {
|
|
21
|
+
bg: "bg-bg-sunken",
|
|
22
|
+
text: "text-text-secondary"
|
|
23
|
+
}, l = {
|
|
24
|
+
pending: a,
|
|
25
|
+
confirmed: s,
|
|
26
|
+
assigned: s,
|
|
27
|
+
picked_up: s,
|
|
28
|
+
in_transit: s,
|
|
29
|
+
out_for_delivery: a,
|
|
30
|
+
delivered: i,
|
|
31
|
+
cancelled: o,
|
|
32
|
+
failed: o
|
|
33
|
+
}, u = {
|
|
34
|
+
available: i,
|
|
35
|
+
assigned: s,
|
|
36
|
+
maintenance: a,
|
|
37
|
+
out_of_service: o
|
|
38
|
+
}, d = {
|
|
39
|
+
available: i,
|
|
40
|
+
busy: s,
|
|
41
|
+
offline: c,
|
|
42
|
+
on_break: a
|
|
43
|
+
}, f = {
|
|
44
|
+
low: c,
|
|
45
|
+
normal: s,
|
|
46
|
+
high: a,
|
|
47
|
+
urgent: o
|
|
48
|
+
}, p = {
|
|
49
|
+
planned: s,
|
|
50
|
+
in_progress: a,
|
|
51
|
+
completed: i,
|
|
52
|
+
cancelled: o
|
|
53
|
+
}, m = {
|
|
54
|
+
sm: "text-xs px-2 py-0.5",
|
|
55
|
+
md: "text-sm px-2.5 py-1",
|
|
56
|
+
lg: "text-base px-3 py-1.5"
|
|
57
|
+
};
|
|
58
|
+
function h({ status: i, type: a = "custom", customColors: o, size: s = "md", showDot: c = !0, className: f }) {
|
|
59
|
+
let p = o, h = {
|
|
60
|
+
bg: "bg-bg-sunken",
|
|
61
|
+
text: "text-text-secondary"
|
|
62
|
+
};
|
|
63
|
+
if (!p) switch (a) {
|
|
64
|
+
case "order":
|
|
65
|
+
p = l[i] || h;
|
|
66
|
+
break;
|
|
67
|
+
case "vehicle":
|
|
68
|
+
p = u[i] || h;
|
|
69
|
+
break;
|
|
70
|
+
case "driver":
|
|
71
|
+
p = d[i] || h;
|
|
72
|
+
break;
|
|
73
|
+
default: p = h;
|
|
74
|
+
}
|
|
75
|
+
let g = i.replace(/_/g, " ").replace(/\b\w/g, (e) => e.toUpperCase());
|
|
76
|
+
return /* @__PURE__ */ r(e, {
|
|
77
|
+
variant: "outline",
|
|
78
|
+
className: t("font-medium capitalize border-0 whitespace-nowrap inline-flex items-center", p.bg, p.text, m[s], f),
|
|
79
|
+
children: [c && /* @__PURE__ */ n("span", {
|
|
80
|
+
"aria-hidden": "true",
|
|
81
|
+
className: t("w-1.5 h-1.5 rounded-full mr-1.5 flex-shrink-0 motion-safe:animate-vc-glow-pulse", p.text.replace("text-", "bg-"))
|
|
82
|
+
}), g]
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
function g({ priority: r, size: i = "md", className: a }) {
|
|
86
|
+
let o = f[r];
|
|
87
|
+
return /* @__PURE__ */ n(e, {
|
|
88
|
+
variant: "outline",
|
|
89
|
+
className: t("font-medium capitalize border-0 whitespace-nowrap", o.bg, o.text, m[i], a),
|
|
90
|
+
children: r
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
function _({ type: r, size: i = "md", className: a }) {
|
|
94
|
+
let o = {
|
|
95
|
+
b2b: {
|
|
96
|
+
bg: "bg-status-info-bg-subtle",
|
|
97
|
+
text: "text-status-info-text"
|
|
98
|
+
},
|
|
99
|
+
b2c: {
|
|
100
|
+
bg: "bg-status-success-bg-subtle",
|
|
101
|
+
text: "text-status-success-text"
|
|
102
|
+
}
|
|
103
|
+
}[r];
|
|
104
|
+
return /* @__PURE__ */ n(e, {
|
|
105
|
+
variant: "outline",
|
|
106
|
+
className: t("font-medium uppercase border-0 whitespace-nowrap", o.bg, o.text, m[i], a),
|
|
107
|
+
children: r
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
function v({ status: r, size: i = "md", className: a }) {
|
|
111
|
+
let o = {
|
|
112
|
+
pending: {
|
|
113
|
+
bg: "bg-status-warning-bg-subtle",
|
|
114
|
+
text: "text-status-warning-text"
|
|
115
|
+
},
|
|
116
|
+
paid: {
|
|
117
|
+
bg: "bg-status-success-bg-subtle",
|
|
118
|
+
text: "text-status-success-text"
|
|
119
|
+
},
|
|
120
|
+
failed: {
|
|
121
|
+
bg: "bg-status-error-bg-subtle",
|
|
122
|
+
text: "text-status-error-text"
|
|
123
|
+
},
|
|
124
|
+
refunded: {
|
|
125
|
+
bg: "bg-bg-sunken",
|
|
126
|
+
text: "text-text-secondary"
|
|
127
|
+
}
|
|
128
|
+
}[r];
|
|
129
|
+
return /* @__PURE__ */ n(e, {
|
|
130
|
+
variant: "outline",
|
|
131
|
+
className: t("font-medium capitalize border-0 whitespace-nowrap", o.bg, o.text, m[i], a),
|
|
132
|
+
children: r
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
function y({ type: i, size: a = "md", className: o }) {
|
|
136
|
+
return /* @__PURE__ */ r(e, {
|
|
137
|
+
variant: "outline",
|
|
138
|
+
className: t("font-medium capitalize whitespace-nowrap inline-flex items-center", m[a], o),
|
|
139
|
+
children: [/* @__PURE__ */ n("span", {
|
|
140
|
+
className: "mr-1",
|
|
141
|
+
children: {
|
|
142
|
+
van: "🚐",
|
|
143
|
+
truck: "🚚",
|
|
144
|
+
motorcycle: "🏍️",
|
|
145
|
+
bicycle: "🚲",
|
|
146
|
+
car: "🚗"
|
|
147
|
+
}[i]
|
|
148
|
+
}), i]
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
//#endregion
|
|
152
|
+
export { y as a, _ as i, g as n, p as o, h as r, v as t };
|