@burdenoff/microfe-adaptercloud 2026.624.1 → 2026.625.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.
- package/dist/adaptercloud/components/EmptyState.js +17 -21
- package/dist/adaptercloud/components/EmptyState.js.map +1 -1
- package/dist/adaptercloud/components/InvestmentCard.js +25 -23
- package/dist/adaptercloud/components/InvestmentCard.js.map +1 -1
- package/dist/adaptercloud/components/MetricsCard.js +18 -12
- package/dist/adaptercloud/components/MetricsCard.js.map +1 -1
- package/dist/adaptercloud/components/PageLayout.js +45 -19
- package/dist/adaptercloud/components/PageLayout.js.map +1 -1
- package/dist/adaptercloud/components/RatingDisplay.js +3 -3
- package/dist/adaptercloud/components/RatingDisplay.js.map +1 -1
- package/dist/adaptercloud/components/StatusBadge.js +36 -16
- package/dist/adaptercloud/components/StatusBadge.js.map +1 -1
- package/dist/adaptercloud/pages/HomePage.js +244 -231
- package/dist/adaptercloud/pages/HomePage.js.map +1 -1
- package/dist/adaptercloud/pages/admin/AdminAnalyticsPage.js +121 -113
- package/dist/adaptercloud/pages/admin/AdminAnalyticsPage.js.map +1 -1
- package/dist/adaptercloud/pages/admin/AdminDashboard.js +102 -76
- package/dist/adaptercloud/pages/admin/AdminDashboard.js.map +1 -1
- package/dist/adaptercloud/pages/admin/AdminFinancialPage.js +70 -65
- package/dist/adaptercloud/pages/admin/AdminFinancialPage.js.map +1 -1
- package/dist/adaptercloud/pages/admin/AdminOrdersPage.js +108 -103
- package/dist/adaptercloud/pages/admin/AdminOrdersPage.js.map +1 -1
- package/dist/adaptercloud/pages/admin/AdminProfilePage.js +61 -59
- package/dist/adaptercloud/pages/admin/AdminProfilePage.js.map +1 -1
- package/dist/adaptercloud/pages/admin/AdminSettingsPage.js +119 -105
- package/dist/adaptercloud/pages/admin/AdminSettingsPage.js.map +1 -1
- package/dist/adaptercloud/pages/admin/CartManagementPage.js +165 -160
- package/dist/adaptercloud/pages/admin/CartManagementPage.js.map +1 -1
- package/dist/adaptercloud/pages/admin/UserManagementPage.js +174 -169
- package/dist/adaptercloud/pages/admin/UserManagementPage.js.map +1 -1
- package/dist/adaptercloud/pages/cart-owner/AnalyticsDashboard.js +103 -97
- package/dist/adaptercloud/pages/cart-owner/AnalyticsDashboard.js.map +1 -1
- package/dist/adaptercloud/pages/cart-owner/BusinessSettingsPage.js +186 -172
- package/dist/adaptercloud/pages/cart-owner/BusinessSettingsPage.js.map +1 -1
- package/dist/adaptercloud/pages/cart-owner/CartOwnerDashboard.js +109 -81
- package/dist/adaptercloud/pages/cart-owner/CartOwnerDashboard.js.map +1 -1
- package/dist/adaptercloud/pages/cart-owner/CartOwnerProfilePage.js +111 -109
- package/dist/adaptercloud/pages/cart-owner/CartOwnerProfilePage.js.map +1 -1
- package/dist/adaptercloud/pages/cart-owner/CartServiceConfigPage.js +127 -124
- package/dist/adaptercloud/pages/cart-owner/CartServiceConfigPage.js.map +1 -1
- package/dist/adaptercloud/pages/cart-owner/InventoryManagementPage.js +310 -316
- package/dist/adaptercloud/pages/cart-owner/InventoryManagementPage.js.map +1 -1
- package/dist/adaptercloud/pages/cart-owner/OrderManagementPage.js +251 -257
- package/dist/adaptercloud/pages/cart-owner/OrderManagementPage.js.map +1 -1
- package/dist/adaptercloud/pages/cart-owner/StaffManagementPage.js +142 -148
- package/dist/adaptercloud/pages/cart-owner/StaffManagementPage.js.map +1 -1
- package/dist/adaptercloud/pages/common/HelpSupportPage.js +287 -283
- package/dist/adaptercloud/pages/common/HelpSupportPage.js.map +1 -1
- package/dist/adaptercloud/pages/common/NotificationCenterPage.js +120 -114
- package/dist/adaptercloud/pages/common/NotificationCenterPage.js.map +1 -1
- package/dist/adaptercloud/pages/common/SettingsPage.js +754 -736
- package/dist/adaptercloud/pages/common/SettingsPage.js.map +1 -1
- package/dist/adaptercloud/pages/customer/BookingDetailsPage.js +83 -80
- package/dist/adaptercloud/pages/customer/BookingDetailsPage.js.map +1 -1
- package/dist/adaptercloud/pages/customer/CartDetailPage.js +120 -117
- package/dist/adaptercloud/pages/customer/CartDetailPage.js.map +1 -1
- package/dist/adaptercloud/pages/customer/CartDiscoveryPage.js +231 -226
- package/dist/adaptercloud/pages/customer/CartDiscoveryPage.js.map +1 -1
- package/dist/adaptercloud/pages/customer/CheckoutPage.js +97 -95
- package/dist/adaptercloud/pages/customer/CheckoutPage.js.map +1 -1
- package/dist/adaptercloud/pages/customer/CustomerDashboard.js +418 -389
- package/dist/adaptercloud/pages/customer/CustomerDashboard.js.map +1 -1
- package/dist/adaptercloud/pages/customer/CustomerProfilePage.js +134 -132
- package/dist/adaptercloud/pages/customer/CustomerProfilePage.js.map +1 -1
- package/dist/adaptercloud/pages/customer/DirectServiceBookingPage.js +108 -102
- package/dist/adaptercloud/pages/customer/DirectServiceBookingPage.js.map +1 -1
- package/dist/adaptercloud/pages/customer/FavoritesPage.js +62 -59
- package/dist/adaptercloud/pages/customer/FavoritesPage.js.map +1 -1
- package/dist/adaptercloud/pages/customer/OrderHistoryPage.js +117 -111
- package/dist/adaptercloud/pages/customer/OrderHistoryPage.js.map +1 -1
- package/dist/adaptercloud/pages/customer/OrderTrackingPage.js +71 -68
- package/dist/adaptercloud/pages/customer/OrderTrackingPage.js.map +1 -1
- package/dist/adaptercloud/pages/customer/PaymentMethodsPage.js +97 -81
- package/dist/adaptercloud/pages/customer/PaymentMethodsPage.js.map +1 -1
- package/dist/adaptercloud/pages/customer/ReviewsPage.js +83 -80
- package/dist/adaptercloud/pages/customer/ReviewsPage.js.map +1 -1
- package/dist/adaptercloud/pages/customer/SavedAddressesPage.js +82 -66
- package/dist/adaptercloud/pages/customer/SavedAddressesPage.js.map +1 -1
- package/dist/adaptercloud/pages/investor/InvestmentDetailsPage.js +93 -91
- package/dist/adaptercloud/pages/investor/InvestmentDetailsPage.js.map +1 -1
- package/dist/adaptercloud/pages/investor/InvestmentOpportunitiesPage.js +100 -97
- package/dist/adaptercloud/pages/investor/InvestmentOpportunitiesPage.js.map +1 -1
- package/dist/adaptercloud/pages/investor/InvestorAnalyticsPage.js +83 -81
- package/dist/adaptercloud/pages/investor/InvestorAnalyticsPage.js.map +1 -1
- package/dist/adaptercloud/pages/investor/InvestorDashboard.js +344 -311
- package/dist/adaptercloud/pages/investor/InvestorDashboard.js.map +1 -1
- package/dist/adaptercloud/pages/investor/InvestorInvestmentsPage.js +43 -40
- package/dist/adaptercloud/pages/investor/InvestorInvestmentsPage.js.map +1 -1
- package/dist/adaptercloud/pages/investor/InvestorPortfolioPage.js +59 -57
- package/dist/adaptercloud/pages/investor/InvestorPortfolioPage.js.map +1 -1
- package/dist/adaptercloud/pages/investor/InvestorProfilePage.js +394 -392
- package/dist/adaptercloud/pages/investor/InvestorProfilePage.js.map +1 -1
- package/dist/adaptercloud/pages/worker/TaskDetailsPage.js +354 -324
- package/dist/adaptercloud/pages/worker/TaskDetailsPage.js.map +1 -1
- package/dist/adaptercloud/pages/worker/WorkerDashboard.js +122 -97
- package/dist/adaptercloud/pages/worker/WorkerDashboard.js.map +1 -1
- package/dist/adaptercloud/pages/worker/WorkerOrdersPage.js +107 -104
- package/dist/adaptercloud/pages/worker/WorkerOrdersPage.js.map +1 -1
- package/dist/adaptercloud/pages/worker/WorkerProfilePage.js +109 -107
- package/dist/adaptercloud/pages/worker/WorkerProfilePage.js.map +1 -1
- package/dist/adaptercloud/pages/worker/WorkerSchedulePage.js +94 -90
- package/dist/adaptercloud/pages/worker/WorkerSchedulePage.js.map +1 -1
- package/package.json +3 -3
|
@@ -8,8 +8,9 @@ import { useCallback as s, useEffect as c, useMemo as l, useState as u } from "r
|
|
|
8
8
|
import { AlertTriangle as d, ArrowLeft as f, Boxes as p, Camera as m, CheckCircle2 as h, ChefHat as g, Circle as _, Clock as v, FileText as y, IndianRupee as b, Loader2 as x, MapPin as S, Navigation as C, Package as w, Phone as T, PlayCircle as E, Save as D, ShoppingBag as O, Sparkles as k, StickyNote as A, Timer as j, Truck as M, User as N } from "lucide-react";
|
|
9
9
|
import { useParams as P } from "react-router-dom";
|
|
10
10
|
import { jsx as F, jsxs as I } from "react/jsx-runtime";
|
|
11
|
+
import { EmphasisPanel as L, NextSteps as R } from "@burdenoff/fe-libs/ui";
|
|
11
12
|
//#region src/adaptercloud/pages/worker/TaskDetailsPage.tsx
|
|
12
|
-
function
|
|
13
|
+
function z(e) {
|
|
13
14
|
switch (e) {
|
|
14
15
|
case "delivery": return M;
|
|
15
16
|
case "preparation": return g;
|
|
@@ -20,16 +21,16 @@ function L(e) {
|
|
|
20
21
|
default: return y;
|
|
21
22
|
}
|
|
22
23
|
}
|
|
23
|
-
function
|
|
24
|
+
function B(e) {
|
|
24
25
|
switch (e) {
|
|
25
|
-
case "urgent": return "bg-
|
|
26
|
-
case "high": return "bg-orange-
|
|
27
|
-
case "medium": return "bg-
|
|
28
|
-
case "low": return "bg-
|
|
26
|
+
case "urgent": return "bg-status-error-bg-subtle/20 text-status-error-text";
|
|
27
|
+
case "high": return "bg-accent-orange-subtle/20 text-accent-orange";
|
|
28
|
+
case "medium": return "bg-status-warning-bg-subtle/20 text-status-warning-text";
|
|
29
|
+
case "low": return "bg-status-success-bg-subtle/20 text-status-success-text";
|
|
29
30
|
default: return "bg-secondary text-secondary-foreground";
|
|
30
31
|
}
|
|
31
32
|
}
|
|
32
|
-
function
|
|
33
|
+
function V(e) {
|
|
33
34
|
let t = e.assignedTime, n = e.status === "in_progress" || e.status === "completed" ? new Date(new Date(t).getTime() + 15 * 6e4).toISOString() : null, r = e.status === "completed" ? (/* @__PURE__ */ new Date()).toISOString() : null;
|
|
34
35
|
return [
|
|
35
36
|
{
|
|
@@ -52,16 +53,16 @@ function z(e) {
|
|
|
52
53
|
}
|
|
53
54
|
];
|
|
54
55
|
}
|
|
55
|
-
function
|
|
56
|
+
function H(e) {
|
|
56
57
|
return new Date(e).toLocaleTimeString("en-IN", {
|
|
57
58
|
hour: "numeric",
|
|
58
59
|
minute: "2-digit",
|
|
59
60
|
hour12: !0
|
|
60
61
|
});
|
|
61
62
|
}
|
|
62
|
-
function
|
|
63
|
-
let { taskId: p } = P(), { navigateTo: g } = e(), [w, k] = u(null), [M,
|
|
64
|
-
|
|
63
|
+
function U() {
|
|
64
|
+
let { taskId: p } = P(), { navigateTo: g } = e(), [w, k] = u(null), [M, U] = u(!0), [W, G] = u(""), K = s(() => {
|
|
65
|
+
U(!0), setTimeout(() => {
|
|
65
66
|
let e = {
|
|
66
67
|
id: p || "TASK-001",
|
|
67
68
|
orderId: "ORD-123",
|
|
@@ -97,35 +98,35 @@ function V() {
|
|
|
97
98
|
photos: ["https://images.unsplash.com/photo-1630384060421-cb20d0e0649d?w=400", "https://images.unsplash.com/photo-1572802419224-296b0aeee0d9?w=400"],
|
|
98
99
|
notes: ""
|
|
99
100
|
};
|
|
100
|
-
k(e),
|
|
101
|
+
k(e), G(e.notes || ""), U(!1);
|
|
101
102
|
}, 600);
|
|
102
103
|
}, [p]);
|
|
103
104
|
c(() => {
|
|
104
|
-
|
|
105
|
-
}, [
|
|
106
|
-
let
|
|
105
|
+
K();
|
|
106
|
+
}, [K]);
|
|
107
|
+
let q = () => {
|
|
107
108
|
w && (k({
|
|
108
109
|
...w,
|
|
109
110
|
status: "in_progress"
|
|
110
111
|
}), alert("Task started successfully"));
|
|
111
|
-
},
|
|
112
|
+
}, J = () => {
|
|
112
113
|
w && (k({
|
|
113
114
|
...w,
|
|
114
115
|
status: "completed"
|
|
115
116
|
}), alert("Task completed successfully"));
|
|
116
|
-
},
|
|
117
|
+
}, Y = () => {
|
|
117
118
|
w?.customerInfo?.phone && (window.location.href = `tel:${w.customerInfo.phone.replace(/\s/g, "")}`);
|
|
118
|
-
},
|
|
119
|
+
}, X = () => {
|
|
119
120
|
if (w?.customerInfo?.address) {
|
|
120
121
|
let e = encodeURIComponent(w.customerInfo.address);
|
|
121
122
|
window.open(`https://maps.google.com?q=${e}`, "_blank");
|
|
122
123
|
}
|
|
123
|
-
},
|
|
124
|
+
}, Z = () => {
|
|
124
125
|
w && (k({
|
|
125
126
|
...w,
|
|
126
|
-
notes:
|
|
127
|
+
notes: W
|
|
127
128
|
}), alert("Notes saved successfully"));
|
|
128
|
-
},
|
|
129
|
+
}, Q = l(() => w ? V(w) : [], [w]);
|
|
129
130
|
if (M) return /* @__PURE__ */ F(n, {
|
|
130
131
|
title: "Task Details",
|
|
131
132
|
children: /* @__PURE__ */ F("div", {
|
|
@@ -142,9 +143,10 @@ function V() {
|
|
|
142
143
|
if (!w) return /* @__PURE__ */ F(n, {
|
|
143
144
|
title: "Task Not Found",
|
|
144
145
|
children: /* @__PURE__ */ F(i, {
|
|
146
|
+
illustration: "empty-generic",
|
|
145
147
|
icon: /* @__PURE__ */ F(y, { className: "h-12 w-12" }),
|
|
146
148
|
title: "Task not found",
|
|
147
|
-
description: `No task found with ID
|
|
149
|
+
description: `No task found with ID"${p}".`,
|
|
148
150
|
action: /* @__PURE__ */ F("button", {
|
|
149
151
|
type: "button",
|
|
150
152
|
onClick: () => g("/worker/orders"),
|
|
@@ -153,7 +155,7 @@ function V() {
|
|
|
153
155
|
})
|
|
154
156
|
})
|
|
155
157
|
});
|
|
156
|
-
let
|
|
158
|
+
let $ = z(w.type);
|
|
157
159
|
return /* @__PURE__ */ F(n, {
|
|
158
160
|
title: /* @__PURE__ */ I("div", {
|
|
159
161
|
className: "flex items-center gap-3",
|
|
@@ -165,332 +167,360 @@ function V() {
|
|
|
165
167
|
}), /* @__PURE__ */ F("span", { children: "Task Details" })]
|
|
166
168
|
}),
|
|
167
169
|
description: "Manage and track your assigned task",
|
|
170
|
+
purpose: "Everything you need to complete this job — the task itself, the customer and delivery address, and the buttons to call, navigate, and update its status. Work through it top to bottom and mark it done when finished.",
|
|
168
171
|
children: /* @__PURE__ */ I("div", {
|
|
169
172
|
className: "space-y-6",
|
|
170
|
-
children: [
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
173
|
+
children: [
|
|
174
|
+
/* @__PURE__ */ I(L, {
|
|
175
|
+
className: "p-6",
|
|
176
|
+
children: [/* @__PURE__ */ I("div", {
|
|
177
|
+
className: "flex items-start justify-between mb-4",
|
|
178
|
+
children: [/* @__PURE__ */ I("div", {
|
|
179
|
+
className: "flex items-start gap-3",
|
|
180
|
+
children: [/* @__PURE__ */ F("div", {
|
|
181
|
+
className: "flex h-10 w-10 items-center justify-center rounded-lg bg-bg-sunken",
|
|
182
|
+
children: /* @__PURE__ */ F($, { className: "h-5 w-5 text-text-secondary" })
|
|
183
|
+
}), /* @__PURE__ */ I("div", { children: [
|
|
184
|
+
/* @__PURE__ */ F("h2", {
|
|
185
|
+
className: "text-xl font-bold text-text-primary",
|
|
186
|
+
children: w.title
|
|
187
|
+
}),
|
|
188
|
+
/* @__PURE__ */ F("p", {
|
|
189
|
+
className: "text-sm text-text-secondary mt-1",
|
|
190
|
+
children: w.description
|
|
191
|
+
}),
|
|
192
|
+
/* @__PURE__ */ I("div", {
|
|
193
|
+
className: "flex flex-wrap items-center gap-2 mt-3",
|
|
194
|
+
children: [
|
|
195
|
+
/* @__PURE__ */ F("span", {
|
|
196
|
+
className: t("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium uppercase", B(w.priority)),
|
|
197
|
+
children: w.priority
|
|
198
|
+
}),
|
|
199
|
+
/* @__PURE__ */ F(r, { status: w.status }),
|
|
200
|
+
/* @__PURE__ */ I("span", {
|
|
201
|
+
className: "text-xs text-text-secondary flex items-center gap-1",
|
|
202
|
+
children: [
|
|
203
|
+
/* @__PURE__ */ F(v, { className: "h-3 w-3" }),
|
|
204
|
+
w.estimatedTime,
|
|
205
|
+
" min"
|
|
206
|
+
]
|
|
207
|
+
})
|
|
208
|
+
]
|
|
209
|
+
})
|
|
210
|
+
] })]
|
|
211
|
+
}), /* @__PURE__ */ I("div", {
|
|
212
|
+
className: "text-right shrink-0",
|
|
213
|
+
children: [
|
|
214
|
+
/* @__PURE__ */ F("p", {
|
|
215
|
+
className: "text-xs text-text-secondary",
|
|
216
|
+
children: "Assigned by"
|
|
217
|
+
}),
|
|
218
|
+
/* @__PURE__ */ F("p", {
|
|
219
|
+
className: "text-sm font-medium text-text-primary",
|
|
220
|
+
children: w.assignedBy
|
|
221
|
+
}),
|
|
222
|
+
/* @__PURE__ */ F("p", {
|
|
223
|
+
className: "text-xs text-text-secondary mt-1",
|
|
224
|
+
children: H(w.assignedTime)
|
|
225
|
+
})
|
|
226
|
+
]
|
|
227
|
+
})]
|
|
228
|
+
}), w.dueTime && w.status !== "completed" && /* @__PURE__ */ F("div", {
|
|
229
|
+
className: "rounded-md bg-status-warning-bg-subtle/10 border border-status-warning-border/20 p-3",
|
|
230
|
+
children: /* @__PURE__ */ I("div", {
|
|
231
|
+
className: "flex items-center gap-2",
|
|
232
|
+
children: [/* @__PURE__ */ F(j, { className: "h-4 w-4 text-status-warning-text shrink-0" }), /* @__PURE__ */ I("span", {
|
|
233
|
+
className: "text-xs font-medium text-status-warning-text",
|
|
234
|
+
children: ["Due by ", H(w.dueTime)]
|
|
235
|
+
})]
|
|
236
|
+
})
|
|
237
|
+
})]
|
|
238
|
+
}),
|
|
239
|
+
/* @__PURE__ */ F(R, {
|
|
240
|
+
storageKey: "adaptercloud-worker-task",
|
|
241
|
+
steps: [
|
|
242
|
+
{
|
|
243
|
+
id: "navigate",
|
|
244
|
+
label: "Navigate to the customer",
|
|
245
|
+
description: "Open directions to the delivery or service address.",
|
|
246
|
+
onClick: X
|
|
247
|
+
},
|
|
248
|
+
{
|
|
249
|
+
id: "call",
|
|
250
|
+
label: "Call the customer",
|
|
251
|
+
description: "Confirm details or let them know you are on the way.",
|
|
252
|
+
onClick: Y
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
id: "complete",
|
|
256
|
+
label: "Mark the task complete",
|
|
257
|
+
description: "Update the status once the job is done.",
|
|
258
|
+
onClick: J,
|
|
259
|
+
done: w.status === "completed"
|
|
260
|
+
}
|
|
261
|
+
]
|
|
262
|
+
}),
|
|
263
|
+
/* @__PURE__ */ I("div", {
|
|
264
|
+
className: "grid grid-cols-1 lg:grid-cols-3 gap-6",
|
|
174
265
|
children: [/* @__PURE__ */ I("div", {
|
|
175
|
-
className: "
|
|
176
|
-
children: [
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
266
|
+
className: "lg:col-span-2 space-y-6",
|
|
267
|
+
children: [
|
|
268
|
+
/* @__PURE__ */ I("div", {
|
|
269
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-6 bg-gloss-card shadow-pop",
|
|
270
|
+
children: [/* @__PURE__ */ F("h3", {
|
|
271
|
+
className: "text-base font-semibold text-text-primary mb-4",
|
|
272
|
+
children: "Customer Information"
|
|
273
|
+
}), /* @__PURE__ */ I("div", {
|
|
274
|
+
className: "grid grid-cols-1 md:grid-cols-2 gap-5",
|
|
275
|
+
children: [/* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("div", {
|
|
276
|
+
className: "space-y-3",
|
|
277
|
+
children: /* @__PURE__ */ I("div", {
|
|
278
|
+
className: "flex items-center gap-3",
|
|
279
|
+
children: [/* @__PURE__ */ F("div", {
|
|
280
|
+
className: "flex h-10 w-10 items-center justify-center rounded-full bg-bg-sunken text-text-secondary",
|
|
281
|
+
children: /* @__PURE__ */ F(N, { className: "h-5 w-5" })
|
|
282
|
+
}), /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("p", {
|
|
283
|
+
className: "text-sm font-medium text-text-primary",
|
|
284
|
+
children: w.customerInfo.name
|
|
285
|
+
}), /* @__PURE__ */ F("p", {
|
|
286
|
+
className: "text-xs text-text-secondary",
|
|
287
|
+
children: w.customerInfo.phone
|
|
288
|
+
})] })]
|
|
289
|
+
})
|
|
290
|
+
}), /* @__PURE__ */ I("div", {
|
|
291
|
+
className: "flex gap-2 mt-4",
|
|
292
|
+
children: [/* @__PURE__ */ I("button", {
|
|
293
|
+
type: "button",
|
|
294
|
+
onClick: Y,
|
|
295
|
+
className: "inline-flex items-center gap-1.5 rounded-md bg-accent px-3 py-2 text-xs font-medium text-text-primary hover:bg-accent/80 transition-colors",
|
|
296
|
+
children: [/* @__PURE__ */ F(T, { className: "h-3.5 w-3.5" }), "Call Customer"]
|
|
297
|
+
}), /* @__PURE__ */ I("button", {
|
|
298
|
+
type: "button",
|
|
299
|
+
onClick: X,
|
|
300
|
+
className: "inline-flex items-center gap-1.5 rounded-md bg-accent px-3 py-2 text-xs font-medium text-text-primary hover:bg-accent/80 transition-colors",
|
|
301
|
+
children: [/* @__PURE__ */ F(C, { className: "h-3.5 w-3.5" }), "Navigate"]
|
|
302
|
+
})]
|
|
303
|
+
})] }), /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("p", {
|
|
304
|
+
className: "text-xs text-text-secondary mb-2",
|
|
305
|
+
children: "Delivery Address"
|
|
306
|
+
}), /* @__PURE__ */ F("div", {
|
|
307
|
+
className: "rounded-md bg-bg-sunken/50 p-3",
|
|
308
|
+
children: /* @__PURE__ */ I("p", {
|
|
309
|
+
className: "text-xs text-text-primary flex items-start gap-2",
|
|
310
|
+
children: [/* @__PURE__ */ F(S, { className: "h-3.5 w-3.5 shrink-0 mt-0.5 text-text-secondary" }), w.customerInfo.address]
|
|
311
|
+
})
|
|
312
|
+
})] })]
|
|
313
|
+
})]
|
|
314
|
+
}),
|
|
315
|
+
w.orderItems.length > 0 && /* @__PURE__ */ I("div", {
|
|
316
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-6 bg-gloss-card shadow-pop",
|
|
317
|
+
children: [/* @__PURE__ */ F("h3", {
|
|
318
|
+
className: "text-base font-semibold text-text-primary mb-3",
|
|
319
|
+
children: "Order Items"
|
|
320
|
+
}), /* @__PURE__ */ F("div", {
|
|
321
|
+
className: "space-y-2",
|
|
322
|
+
children: w.orderItems.map((e, t) => /* @__PURE__ */ F("div", {
|
|
323
|
+
className: "flex items-start justify-between p-3 rounded-md bg-bg-sunken/50",
|
|
324
|
+
children: /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ I("p", {
|
|
325
|
+
className: "text-sm font-medium text-text-primary",
|
|
326
|
+
children: [
|
|
327
|
+
e.quantity,
|
|
328
|
+
"x ",
|
|
329
|
+
e.name
|
|
330
|
+
]
|
|
331
|
+
}), e.specialInstructions && /* @__PURE__ */ I("p", {
|
|
332
|
+
className: "text-xs text-text-secondary mt-0.5",
|
|
333
|
+
children: ["Note: ", e.specialInstructions]
|
|
334
|
+
})] })
|
|
335
|
+
}, t))
|
|
336
|
+
})]
|
|
337
|
+
}),
|
|
338
|
+
w.specialInstructions && /* @__PURE__ */ I("div", {
|
|
339
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-6 bg-gloss-card shadow-pop",
|
|
340
|
+
children: [/* @__PURE__ */ F("h3", {
|
|
341
|
+
className: "text-base font-semibold text-text-primary mb-3",
|
|
342
|
+
children: "Special Instructions"
|
|
343
|
+
}), /* @__PURE__ */ F("div", {
|
|
344
|
+
className: "rounded-md bg-status-warning-bg-subtle/10 border border-status-warning-border/20 p-4",
|
|
345
|
+
children: /* @__PURE__ */ I("p", {
|
|
346
|
+
className: "text-sm text-status-warning-text flex items-start gap-2",
|
|
347
|
+
children: [/* @__PURE__ */ F(d, { className: "h-4 w-4 shrink-0 mt-0.5 text-status-warning-text" }), w.specialInstructions]
|
|
348
|
+
})
|
|
349
|
+
})]
|
|
183
350
|
}),
|
|
184
|
-
/* @__PURE__ */
|
|
185
|
-
className: "
|
|
186
|
-
children:
|
|
351
|
+
w.photos && w.photos.length > 0 && /* @__PURE__ */ I("div", {
|
|
352
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-6 bg-gloss-card shadow-pop",
|
|
353
|
+
children: [/* @__PURE__ */ I("h3", {
|
|
354
|
+
className: "text-base font-semibold text-text-primary flex items-center gap-2 mb-3",
|
|
355
|
+
children: [/* @__PURE__ */ F(m, { className: "h-4 w-4 text-text-secondary" }), "Reference Photos"]
|
|
356
|
+
}), /* @__PURE__ */ F("div", {
|
|
357
|
+
className: "grid grid-cols-2 md:grid-cols-3 gap-3",
|
|
358
|
+
children: w.photos.map((e, t) => /* @__PURE__ */ F("img", {
|
|
359
|
+
src: e,
|
|
360
|
+
alt: `Reference ${t + 1}`,
|
|
361
|
+
className: "w-full h-32 object-cover rounded-lg border border-border-subtle"
|
|
362
|
+
}, t))
|
|
363
|
+
})]
|
|
187
364
|
}),
|
|
188
365
|
/* @__PURE__ */ I("div", {
|
|
189
|
-
className: "
|
|
366
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-6 bg-gloss-card shadow-pop",
|
|
190
367
|
children: [
|
|
191
|
-
/* @__PURE__ */
|
|
192
|
-
className:
|
|
193
|
-
children: w
|
|
368
|
+
/* @__PURE__ */ I("h3", {
|
|
369
|
+
className: "text-base font-semibold text-text-primary flex items-center gap-2 mb-3",
|
|
370
|
+
children: [/* @__PURE__ */ F(A, { className: "h-4 w-4 text-text-secondary" }), "Task Notes"]
|
|
371
|
+
}),
|
|
372
|
+
/* @__PURE__ */ F("textarea", {
|
|
373
|
+
value: W,
|
|
374
|
+
onChange: (e) => G(e.target.value),
|
|
375
|
+
placeholder: "Add your notes about this task...",
|
|
376
|
+
rows: 4,
|
|
377
|
+
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-accent-blue-subtle/40 resize-none"
|
|
194
378
|
}),
|
|
195
|
-
/* @__PURE__ */
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
w.estimatedTime,
|
|
201
|
-
" min"
|
|
202
|
-
]
|
|
379
|
+
/* @__PURE__ */ I("button", {
|
|
380
|
+
type: "button",
|
|
381
|
+
onClick: Z,
|
|
382
|
+
className: "mt-3 inline-flex items-center gap-1.5 rounded-md bg-accent px-3 py-1.5 text-xs font-medium text-text-primary hover:bg-accent/80 transition-colors",
|
|
383
|
+
children: [/* @__PURE__ */ F(D, { className: "h-3.5 w-3.5" }), "Save Notes"]
|
|
203
384
|
})
|
|
204
385
|
]
|
|
205
386
|
})
|
|
206
|
-
]
|
|
387
|
+
]
|
|
207
388
|
}), /* @__PURE__ */ I("div", {
|
|
208
|
-
className: "
|
|
389
|
+
className: "space-y-6",
|
|
209
390
|
children: [
|
|
210
|
-
/* @__PURE__ */
|
|
211
|
-
className: "
|
|
212
|
-
children: "
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
className: "text-sm font-medium text-text-primary",
|
|
216
|
-
children: w.assignedBy
|
|
217
|
-
}),
|
|
218
|
-
/* @__PURE__ */ F("p", {
|
|
219
|
-
className: "text-xs text-text-secondary mt-1",
|
|
220
|
-
children: B(w.assignedTime)
|
|
221
|
-
})
|
|
222
|
-
]
|
|
223
|
-
})]
|
|
224
|
-
}), w.dueTime && w.status !== "completed" && /* @__PURE__ */ F("div", {
|
|
225
|
-
className: "rounded-md bg-yellow-500/10 border border-yellow-500/20 p-3",
|
|
226
|
-
children: /* @__PURE__ */ I("div", {
|
|
227
|
-
className: "flex items-center gap-2",
|
|
228
|
-
children: [/* @__PURE__ */ F(j, { className: "h-4 w-4 text-yellow-600 dark:text-yellow-400 shrink-0" }), /* @__PURE__ */ I("span", {
|
|
229
|
-
className: "text-xs font-medium text-yellow-600 dark:text-yellow-400",
|
|
230
|
-
children: ["Due by ", B(w.dueTime)]
|
|
231
|
-
})]
|
|
232
|
-
})
|
|
233
|
-
})]
|
|
234
|
-
}), /* @__PURE__ */ I("div", {
|
|
235
|
-
className: "grid grid-cols-1 lg:grid-cols-3 gap-6",
|
|
236
|
-
children: [/* @__PURE__ */ I("div", {
|
|
237
|
-
className: "lg:col-span-2 space-y-6",
|
|
238
|
-
children: [
|
|
239
|
-
/* @__PURE__ */ I("div", {
|
|
240
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface p-6",
|
|
241
|
-
children: [/* @__PURE__ */ F("h3", {
|
|
242
|
-
className: "text-base font-semibold text-text-primary mb-4",
|
|
243
|
-
children: "Customer Information"
|
|
244
|
-
}), /* @__PURE__ */ I("div", {
|
|
245
|
-
className: "grid grid-cols-1 md:grid-cols-2 gap-5",
|
|
246
|
-
children: [/* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("div", {
|
|
247
|
-
className: "space-y-3",
|
|
248
|
-
children: /* @__PURE__ */ I("div", {
|
|
249
|
-
className: "flex items-center gap-3",
|
|
250
|
-
children: [/* @__PURE__ */ F("div", {
|
|
251
|
-
className: "flex h-10 w-10 items-center justify-center rounded-full bg-bg-sunken text-text-secondary",
|
|
252
|
-
children: /* @__PURE__ */ F(N, { className: "h-5 w-5" })
|
|
253
|
-
}), /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("p", {
|
|
254
|
-
className: "text-sm font-medium text-text-primary",
|
|
255
|
-
children: w.customerInfo.name
|
|
256
|
-
}), /* @__PURE__ */ F("p", {
|
|
257
|
-
className: "text-xs text-text-secondary",
|
|
258
|
-
children: w.customerInfo.phone
|
|
259
|
-
})] })]
|
|
260
|
-
})
|
|
391
|
+
/* @__PURE__ */ I("div", {
|
|
392
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-5 bg-gloss-card shadow-pop",
|
|
393
|
+
children: [/* @__PURE__ */ F("h3", {
|
|
394
|
+
className: "text-base font-semibold text-text-primary mb-3",
|
|
395
|
+
children: "Task Details"
|
|
261
396
|
}), /* @__PURE__ */ I("div", {
|
|
262
|
-
className: "
|
|
263
|
-
children: [
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
397
|
+
className: "space-y-3",
|
|
398
|
+
children: [
|
|
399
|
+
/* @__PURE__ */ I("div", {
|
|
400
|
+
className: "flex items-center gap-2",
|
|
401
|
+
children: [/* @__PURE__ */ F(y, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("p", {
|
|
402
|
+
className: "text-xs text-text-secondary",
|
|
403
|
+
children: "Order ID"
|
|
404
|
+
}), /* @__PURE__ */ F("p", {
|
|
405
|
+
className: "text-sm font-medium font-mono text-text-primary",
|
|
406
|
+
children: w.orderId
|
|
407
|
+
})] })]
|
|
408
|
+
}),
|
|
409
|
+
/* @__PURE__ */ I("div", {
|
|
410
|
+
className: "flex items-center gap-2",
|
|
411
|
+
children: [/* @__PURE__ */ F(O, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("p", {
|
|
412
|
+
className: "text-xs text-text-secondary",
|
|
413
|
+
children: "Cart"
|
|
414
|
+
}), /* @__PURE__ */ F("p", {
|
|
415
|
+
className: "text-sm font-medium text-text-primary",
|
|
416
|
+
children: w.cartName
|
|
417
|
+
})] })]
|
|
418
|
+
}),
|
|
419
|
+
/* @__PURE__ */ I("div", {
|
|
420
|
+
className: "flex items-center gap-2",
|
|
421
|
+
children: [/* @__PURE__ */ F(v, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("p", {
|
|
422
|
+
className: "text-xs text-text-secondary",
|
|
423
|
+
children: "Due At"
|
|
424
|
+
}), /* @__PURE__ */ F("p", {
|
|
425
|
+
className: "text-sm text-text-primary",
|
|
426
|
+
children: o(w.dueTime)
|
|
427
|
+
})] })]
|
|
428
|
+
}),
|
|
429
|
+
/* @__PURE__ */ I("div", {
|
|
430
|
+
className: "flex items-center gap-2",
|
|
431
|
+
children: [/* @__PURE__ */ F(b, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("p", {
|
|
432
|
+
className: "text-xs text-text-secondary",
|
|
433
|
+
children: "Earnings"
|
|
434
|
+
}), /* @__PURE__ */ F("p", {
|
|
435
|
+
className: "text-sm font-medium text-status-success-text",
|
|
436
|
+
children: a(w.earnings, { minimumFractionDigits: 0 })
|
|
437
|
+
})] })]
|
|
438
|
+
}),
|
|
439
|
+
w.distance != null && /* @__PURE__ */ I("div", {
|
|
440
|
+
className: "flex items-center gap-2",
|
|
441
|
+
children: [/* @__PURE__ */ F(C, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("p", {
|
|
442
|
+
className: "text-xs text-text-secondary",
|
|
443
|
+
children: "Distance"
|
|
444
|
+
}), /* @__PURE__ */ I("p", {
|
|
445
|
+
className: "text-sm text-text-primary",
|
|
446
|
+
children: [w.distance, " km"]
|
|
447
|
+
})] })]
|
|
448
|
+
}),
|
|
449
|
+
/* @__PURE__ */ I("div", {
|
|
450
|
+
className: "flex items-center gap-2",
|
|
451
|
+
children: [/* @__PURE__ */ F(v, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("p", {
|
|
452
|
+
className: "text-xs text-text-secondary",
|
|
453
|
+
children: "Assigned At"
|
|
454
|
+
}), /* @__PURE__ */ F("p", {
|
|
455
|
+
className: "text-sm text-text-primary",
|
|
456
|
+
children: o(w.assignedTime)
|
|
457
|
+
})] })]
|
|
458
|
+
})
|
|
459
|
+
]
|
|
460
|
+
})]
|
|
461
|
+
}),
|
|
462
|
+
/* @__PURE__ */ I("div", {
|
|
463
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-5 bg-gloss-card shadow-pop",
|
|
464
|
+
children: [/* @__PURE__ */ F("h3", {
|
|
465
|
+
className: "text-base font-semibold text-text-primary mb-4",
|
|
466
|
+
children: "Status Timeline"
|
|
277
467
|
}), /* @__PURE__ */ F("div", {
|
|
278
|
-
className: "
|
|
279
|
-
children:
|
|
280
|
-
|
|
281
|
-
|
|
468
|
+
className: "relative",
|
|
469
|
+
children: Q.map((e, n) => {
|
|
470
|
+
let r = n === Q.length - 1, i = e.completed ? h : _;
|
|
471
|
+
return /* @__PURE__ */ I("div", {
|
|
472
|
+
className: "flex gap-3",
|
|
473
|
+
children: [/* @__PURE__ */ I("div", {
|
|
474
|
+
className: "flex flex-col items-center",
|
|
475
|
+
children: [/* @__PURE__ */ F("div", {
|
|
476
|
+
className: t("flex h-7 w-7 shrink-0 items-center justify-center rounded-full", e.completed ? "bg-status-success-bg-subtle/10 text-status-success-text" : "bg-bg-sunken text-text-secondary"),
|
|
477
|
+
children: /* @__PURE__ */ F(i, { className: "h-3.5 w-3.5" })
|
|
478
|
+
}), !r && /* @__PURE__ */ F("div", { className: t("w-0.5 flex-1 my-1", e.completed ? "bg-status-success-bg-subtle/30" : "bg-border") })]
|
|
479
|
+
}), /* @__PURE__ */ I("div", {
|
|
480
|
+
className: t("pb-5", r && "pb-0"),
|
|
481
|
+
children: [/* @__PURE__ */ F("p", {
|
|
482
|
+
className: "text-sm font-medium text-text-primary",
|
|
483
|
+
children: e.label
|
|
484
|
+
}), /* @__PURE__ */ F("p", {
|
|
485
|
+
className: "mt-0.5 text-xs text-text-secondary",
|
|
486
|
+
children: e.timestamp ? o(e.timestamp) : "Pending"
|
|
487
|
+
})]
|
|
488
|
+
})]
|
|
489
|
+
}, e.status);
|
|
282
490
|
})
|
|
283
|
-
})]
|
|
284
|
-
})
|
|
285
|
-
|
|
286
|
-
w.orderItems.length > 0 && /* @__PURE__ */ I("div", {
|
|
287
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface p-6",
|
|
288
|
-
children: [/* @__PURE__ */ F("h3", {
|
|
289
|
-
className: "text-base font-semibold text-text-primary mb-3",
|
|
290
|
-
children: "Order Items"
|
|
291
|
-
}), /* @__PURE__ */ F("div", {
|
|
292
|
-
className: "space-y-2",
|
|
293
|
-
children: w.orderItems.map((e, t) => /* @__PURE__ */ F("div", {
|
|
294
|
-
className: "flex items-start justify-between p-3 rounded-md bg-bg-sunken/50",
|
|
295
|
-
children: /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ I("p", {
|
|
296
|
-
className: "text-sm font-medium text-text-primary",
|
|
297
|
-
children: [
|
|
298
|
-
e.quantity,
|
|
299
|
-
"x ",
|
|
300
|
-
e.name
|
|
301
|
-
]
|
|
302
|
-
}), e.specialInstructions && /* @__PURE__ */ I("p", {
|
|
303
|
-
className: "text-xs text-text-secondary mt-0.5",
|
|
304
|
-
children: ["Note: ", e.specialInstructions]
|
|
305
|
-
})] })
|
|
306
|
-
}, t))
|
|
307
|
-
})]
|
|
308
|
-
}),
|
|
309
|
-
w.specialInstructions && /* @__PURE__ */ I("div", {
|
|
310
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface p-6",
|
|
311
|
-
children: [/* @__PURE__ */ F("h3", {
|
|
312
|
-
className: "text-base font-semibold text-text-primary mb-3",
|
|
313
|
-
children: "Special Instructions"
|
|
314
|
-
}), /* @__PURE__ */ F("div", {
|
|
315
|
-
className: "rounded-md bg-yellow-500/10 border border-yellow-500/20 p-4",
|
|
316
|
-
children: /* @__PURE__ */ I("p", {
|
|
317
|
-
className: "text-sm text-yellow-700 dark:text-yellow-300 flex items-start gap-2",
|
|
318
|
-
children: [/* @__PURE__ */ F(d, { className: "h-4 w-4 shrink-0 mt-0.5 text-yellow-600 dark:text-yellow-400" }), w.specialInstructions]
|
|
319
|
-
})
|
|
320
|
-
})]
|
|
321
|
-
}),
|
|
322
|
-
w.photos && w.photos.length > 0 && /* @__PURE__ */ I("div", {
|
|
323
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface p-6",
|
|
324
|
-
children: [/* @__PURE__ */ I("h3", {
|
|
325
|
-
className: "text-base font-semibold text-text-primary flex items-center gap-2 mb-3",
|
|
326
|
-
children: [/* @__PURE__ */ F(m, { className: "h-4 w-4 text-text-secondary" }), "Reference Photos"]
|
|
327
|
-
}), /* @__PURE__ */ F("div", {
|
|
328
|
-
className: "grid grid-cols-2 md:grid-cols-3 gap-3",
|
|
329
|
-
children: w.photos.map((e, t) => /* @__PURE__ */ F("img", {
|
|
330
|
-
src: e,
|
|
331
|
-
alt: `Reference ${t + 1}`,
|
|
332
|
-
className: "w-full h-32 object-cover rounded-lg border border-border-subtle"
|
|
333
|
-
}, t))
|
|
334
|
-
})]
|
|
335
|
-
}),
|
|
336
|
-
/* @__PURE__ */ I("div", {
|
|
337
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface p-6",
|
|
338
|
-
children: [
|
|
339
|
-
/* @__PURE__ */ I("h3", {
|
|
340
|
-
className: "text-base font-semibold text-text-primary flex items-center gap-2 mb-3",
|
|
341
|
-
children: [/* @__PURE__ */ F(A, { className: "h-4 w-4 text-text-secondary" }), "Task Notes"]
|
|
342
|
-
}),
|
|
343
|
-
/* @__PURE__ */ F("textarea", {
|
|
344
|
-
value: H,
|
|
345
|
-
onChange: (e) => U(e.target.value),
|
|
346
|
-
placeholder: "Add your notes about this task...",
|
|
347
|
-
rows: 4,
|
|
348
|
-
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-blue-500/40 resize-none"
|
|
349
|
-
}),
|
|
350
|
-
/* @__PURE__ */ I("button", {
|
|
351
|
-
type: "button",
|
|
352
|
-
onClick: Y,
|
|
353
|
-
className: "mt-3 inline-flex items-center gap-1.5 rounded-md bg-accent px-3 py-1.5 text-xs font-medium text-text-primary hover:bg-accent/80 transition-colors",
|
|
354
|
-
children: [/* @__PURE__ */ F(D, { className: "h-3.5 w-3.5" }), "Save Notes"]
|
|
355
|
-
})
|
|
356
|
-
]
|
|
357
|
-
})
|
|
358
|
-
]
|
|
359
|
-
}), /* @__PURE__ */ I("div", {
|
|
360
|
-
className: "space-y-6",
|
|
361
|
-
children: [
|
|
362
|
-
/* @__PURE__ */ I("div", {
|
|
363
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface p-5",
|
|
364
|
-
children: [/* @__PURE__ */ F("h3", {
|
|
365
|
-
className: "text-base font-semibold text-text-primary mb-3",
|
|
366
|
-
children: "Task Details"
|
|
367
|
-
}), /* @__PURE__ */ I("div", {
|
|
491
|
+
})]
|
|
492
|
+
}),
|
|
493
|
+
/* @__PURE__ */ I("div", {
|
|
368
494
|
className: "space-y-3",
|
|
369
495
|
children: [
|
|
370
|
-
/* @__PURE__ */ I("
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
}), /* @__PURE__ */ F("p", {
|
|
376
|
-
className: "text-sm font-medium font-mono text-text-primary",
|
|
377
|
-
children: w.orderId
|
|
378
|
-
})] })]
|
|
379
|
-
}),
|
|
380
|
-
/* @__PURE__ */ I("div", {
|
|
381
|
-
className: "flex items-center gap-2",
|
|
382
|
-
children: [/* @__PURE__ */ F(O, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("p", {
|
|
383
|
-
className: "text-xs text-text-secondary",
|
|
384
|
-
children: "Cart"
|
|
385
|
-
}), /* @__PURE__ */ F("p", {
|
|
386
|
-
className: "text-sm font-medium text-text-primary",
|
|
387
|
-
children: w.cartName
|
|
388
|
-
})] })]
|
|
389
|
-
}),
|
|
390
|
-
/* @__PURE__ */ I("div", {
|
|
391
|
-
className: "flex items-center gap-2",
|
|
392
|
-
children: [/* @__PURE__ */ F(v, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("p", {
|
|
393
|
-
className: "text-xs text-text-secondary",
|
|
394
|
-
children: "Due At"
|
|
395
|
-
}), /* @__PURE__ */ F("p", {
|
|
396
|
-
className: "text-sm text-text-primary",
|
|
397
|
-
children: o(w.dueTime)
|
|
398
|
-
})] })]
|
|
399
|
-
}),
|
|
400
|
-
/* @__PURE__ */ I("div", {
|
|
401
|
-
className: "flex items-center gap-2",
|
|
402
|
-
children: [/* @__PURE__ */ F(b, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ I("div", { children: [/* @__PURE__ */ F("p", {
|
|
403
|
-
className: "text-xs text-text-secondary",
|
|
404
|
-
children: "Earnings"
|
|
405
|
-
}), /* @__PURE__ */ F("p", {
|
|
406
|
-
className: "text-sm font-medium text-green-600 dark:text-green-400",
|
|
407
|
-
children: a(w.earnings, { minimumFractionDigits: 0 })
|
|
408
|
-
})] })]
|
|
496
|
+
w.status === "pending" && /* @__PURE__ */ I("button", {
|
|
497
|
+
type: "button",
|
|
498
|
+
onClick: q,
|
|
499
|
+
className: "w-full inline-flex items-center justify-center gap-2 rounded-lg bg-accent-blue-subtle/10 px-4 py-3 text-sm font-medium text-accent-blue hover:bg-accent-blue-subtle/20 transition-colors",
|
|
500
|
+
children: [/* @__PURE__ */ F(E, { className: "h-4 w-4" }), "Start Task"]
|
|
409
501
|
}),
|
|
410
|
-
w.
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
}), /* @__PURE__ */ I("p", {
|
|
416
|
-
className: "text-sm text-text-primary",
|
|
417
|
-
children: [w.distance, " km"]
|
|
418
|
-
})] })]
|
|
502
|
+
w.status === "in_progress" && /* @__PURE__ */ I("button", {
|
|
503
|
+
type: "button",
|
|
504
|
+
onClick: J,
|
|
505
|
+
className: "w-full inline-flex items-center justify-center gap-2 rounded-lg bg-status-success-bg-subtle/10 px-4 py-3 text-sm font-medium text-status-success-text hover:bg-status-success-bg-subtle/20 transition-colors",
|
|
506
|
+
children: [/* @__PURE__ */ F(h, { className: "h-4 w-4" }), "Complete Task"]
|
|
419
507
|
}),
|
|
420
|
-
/* @__PURE__ */ I("
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
}), /* @__PURE__ */ F("p", {
|
|
426
|
-
className: "text-sm text-text-primary",
|
|
427
|
-
children: o(w.assignedTime)
|
|
428
|
-
})] })]
|
|
508
|
+
/* @__PURE__ */ I("button", {
|
|
509
|
+
type: "button",
|
|
510
|
+
onClick: () => g("/worker/orders"),
|
|
511
|
+
className: "w-full inline-flex items-center justify-center gap-2 rounded-lg bg-accent px-4 py-3 text-sm font-medium text-text-primary hover:bg-accent/80 transition-colors",
|
|
512
|
+
children: [/* @__PURE__ */ F(f, { className: "h-4 w-4" }), "Back to Tasks"]
|
|
429
513
|
})
|
|
430
514
|
]
|
|
431
|
-
})
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
className: "text-base font-semibold text-text-primary mb-4",
|
|
437
|
-
children: "Status Timeline"
|
|
438
|
-
}), /* @__PURE__ */ F("div", {
|
|
439
|
-
className: "relative",
|
|
440
|
-
children: X.map((e, n) => {
|
|
441
|
-
let r = n === X.length - 1, i = e.completed ? h : _;
|
|
442
|
-
return /* @__PURE__ */ I("div", {
|
|
443
|
-
className: "flex gap-3",
|
|
444
|
-
children: [/* @__PURE__ */ I("div", {
|
|
445
|
-
className: "flex flex-col items-center",
|
|
446
|
-
children: [/* @__PURE__ */ F("div", {
|
|
447
|
-
className: t("flex h-7 w-7 shrink-0 items-center justify-center rounded-full", e.completed ? "bg-green-500/10 text-green-600 dark:text-green-400" : "bg-bg-sunken text-text-secondary"),
|
|
448
|
-
children: /* @__PURE__ */ F(i, { className: "h-3.5 w-3.5" })
|
|
449
|
-
}), !r && /* @__PURE__ */ F("div", { className: t("w-0.5 flex-1 my-1", e.completed ? "bg-green-500/30" : "bg-border") })]
|
|
450
|
-
}), /* @__PURE__ */ I("div", {
|
|
451
|
-
className: t("pb-5", r && "pb-0"),
|
|
452
|
-
children: [/* @__PURE__ */ F("p", {
|
|
453
|
-
className: "text-sm font-medium text-text-primary",
|
|
454
|
-
children: e.label
|
|
455
|
-
}), /* @__PURE__ */ F("p", {
|
|
456
|
-
className: "mt-0.5 text-xs text-text-secondary",
|
|
457
|
-
children: e.timestamp ? o(e.timestamp) : "Pending"
|
|
458
|
-
})]
|
|
459
|
-
})]
|
|
460
|
-
}, e.status);
|
|
461
|
-
})
|
|
462
|
-
})]
|
|
463
|
-
}),
|
|
464
|
-
/* @__PURE__ */ I("div", {
|
|
465
|
-
className: "space-y-3",
|
|
466
|
-
children: [
|
|
467
|
-
w.status === "pending" && /* @__PURE__ */ I("button", {
|
|
468
|
-
type: "button",
|
|
469
|
-
onClick: G,
|
|
470
|
-
className: "w-full inline-flex items-center justify-center gap-2 rounded-lg bg-blue-500/10 px-4 py-3 text-sm font-medium text-blue-600 dark:text-blue-400 hover:bg-blue-500/20 transition-colors",
|
|
471
|
-
children: [/* @__PURE__ */ F(E, { className: "h-4 w-4" }), "Start Task"]
|
|
472
|
-
}),
|
|
473
|
-
w.status === "in_progress" && /* @__PURE__ */ I("button", {
|
|
474
|
-
type: "button",
|
|
475
|
-
onClick: K,
|
|
476
|
-
className: "w-full inline-flex items-center justify-center gap-2 rounded-lg bg-green-500/10 px-4 py-3 text-sm font-medium text-green-600 dark:text-green-400 hover:bg-green-500/20 transition-colors",
|
|
477
|
-
children: [/* @__PURE__ */ F(h, { className: "h-4 w-4" }), "Complete Task"]
|
|
478
|
-
}),
|
|
479
|
-
/* @__PURE__ */ I("button", {
|
|
480
|
-
type: "button",
|
|
481
|
-
onClick: () => g("/worker/orders"),
|
|
482
|
-
className: "w-full inline-flex items-center justify-center gap-2 rounded-lg bg-accent px-4 py-3 text-sm font-medium text-text-primary hover:bg-accent/80 transition-colors",
|
|
483
|
-
children: [/* @__PURE__ */ F(f, { className: "h-4 w-4" }), "Back to Tasks"]
|
|
484
|
-
})
|
|
485
|
-
]
|
|
486
|
-
})
|
|
487
|
-
]
|
|
488
|
-
})]
|
|
489
|
-
})]
|
|
515
|
+
})
|
|
516
|
+
]
|
|
517
|
+
})]
|
|
518
|
+
})
|
|
519
|
+
]
|
|
490
520
|
})
|
|
491
521
|
});
|
|
492
522
|
}
|
|
493
523
|
//#endregion
|
|
494
|
-
export {
|
|
524
|
+
export { U as TaskDetailsPage };
|
|
495
525
|
|
|
496
526
|
//# sourceMappingURL=TaskDetailsPage.js.map
|