@burdenoff/microfe-subscriberbot 2026.624.1 → 2026.626.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/subscriberbot/components/EmptyState.js +17 -10
- package/dist/subscriberbot/components/EmptyState.js.map +1 -1
- package/dist/subscriberbot/components/InvestmentCard.js +23 -22
- package/dist/subscriberbot/components/InvestmentCard.js.map +1 -1
- package/dist/subscriberbot/components/MetricsCard.js +15 -12
- package/dist/subscriberbot/components/MetricsCard.js.map +1 -1
- package/dist/subscriberbot/components/PageLayout.js +27 -15
- package/dist/subscriberbot/components/PageLayout.js.map +1 -1
- package/dist/subscriberbot/components/RatingDisplay.js +3 -3
- package/dist/subscriberbot/components/RatingDisplay.js.map +1 -1
- package/dist/subscriberbot/components/StatusBadge.js +25 -13
- package/dist/subscriberbot/components/StatusBadge.js.map +1 -1
- package/dist/subscriberbot/context/SubscriberBotContext.js.map +1 -1
- package/dist/subscriberbot/pages/HomePage.js +72 -63
- package/dist/subscriberbot/pages/HomePage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminAnalyticsPage.js +106 -100
- package/dist/subscriberbot/pages/admin/AdminAnalyticsPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminDashboard.js +125 -85
- package/dist/subscriberbot/pages/admin/AdminDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminFinancialPage.js +51 -45
- package/dist/subscriberbot/pages/admin/AdminFinancialPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminOrdersPage.js +246 -241
- package/dist/subscriberbot/pages/admin/AdminOrdersPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminProfilePage.js +131 -129
- package/dist/subscriberbot/pages/admin/AdminProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminSettingsPage.js +247 -242
- package/dist/subscriberbot/pages/admin/AdminSettingsPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/CartManagementPage.js +307 -302
- package/dist/subscriberbot/pages/admin/CartManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/UserManagementPage.js +308 -303
- package/dist/subscriberbot/pages/admin/UserManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/AnalyticsDashboard.js +89 -84
- package/dist/subscriberbot/pages/cart-owner/AnalyticsDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/BusinessSettingsPage.js +269 -264
- package/dist/subscriberbot/pages/cart-owner/BusinessSettingsPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/CartOwnerDashboard.js +269 -227
- package/dist/subscriberbot/pages/cart-owner/CartOwnerDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/CartOwnerProfilePage.js +191 -186
- package/dist/subscriberbot/pages/cart-owner/CartOwnerProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/CartServiceConfigPage.js +168 -166
- package/dist/subscriberbot/pages/cart-owner/CartServiceConfigPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/InventoryManagementPage.js +344 -347
- package/dist/subscriberbot/pages/cart-owner/InventoryManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/OrderManagementPage.js +270 -272
- package/dist/subscriberbot/pages/cart-owner/OrderManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/StaffManagementPage.js +294 -289
- package/dist/subscriberbot/pages/cart-owner/StaffManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/common/HelpSupportPage.js +156 -158
- package/dist/subscriberbot/pages/common/HelpSupportPage.js.map +1 -1
- package/dist/subscriberbot/pages/common/NotificationCenterPage.js +94 -87
- package/dist/subscriberbot/pages/common/NotificationCenterPage.js.map +1 -1
- package/dist/subscriberbot/pages/common/SettingsPage.js +749 -740
- package/dist/subscriberbot/pages/common/SettingsPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/BookingDetailsPage.js +357 -324
- package/dist/subscriberbot/pages/customer/BookingDetailsPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CartDetailPage.js +281 -247
- package/dist/subscriberbot/pages/customer/CartDetailPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CartDiscoveryPage.js +106 -98
- package/dist/subscriberbot/pages/customer/CartDiscoveryPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CheckoutPage.js +235 -238
- package/dist/subscriberbot/pages/customer/CheckoutPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CustomerDashboard.js +426 -390
- package/dist/subscriberbot/pages/customer/CustomerDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CustomerProfilePage.js +488 -479
- package/dist/subscriberbot/pages/customer/CustomerProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/DirectServiceBookingPage.js +522 -512
- package/dist/subscriberbot/pages/customer/DirectServiceBookingPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/FavoritesPage.js +73 -66
- package/dist/subscriberbot/pages/customer/FavoritesPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/OrderHistoryPage.js +75 -67
- package/dist/subscriberbot/pages/customer/OrderHistoryPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/OrderTrackingPage.js +82 -76
- package/dist/subscriberbot/pages/customer/OrderTrackingPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/PaymentMethodsPage.js +100 -93
- package/dist/subscriberbot/pages/customer/PaymentMethodsPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/ReviewsPage.js +97 -90
- package/dist/subscriberbot/pages/customer/ReviewsPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/SavedAddressesPage.js +86 -79
- package/dist/subscriberbot/pages/customer/SavedAddressesPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestmentDetailsPage.js +330 -293
- package/dist/subscriberbot/pages/investor/InvestmentDetailsPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestmentOpportunitiesPage.js +269 -261
- package/dist/subscriberbot/pages/investor/InvestmentOpportunitiesPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorAnalyticsPage.js +97 -91
- package/dist/subscriberbot/pages/investor/InvestorAnalyticsPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorDashboard.js +354 -322
- package/dist/subscriberbot/pages/investor/InvestorDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorInvestmentsPage.js +118 -111
- package/dist/subscriberbot/pages/investor/InvestorInvestmentsPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorPortfolioPage.js +75 -69
- package/dist/subscriberbot/pages/investor/InvestorPortfolioPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorProfilePage.js +435 -430
- package/dist/subscriberbot/pages/investor/InvestorProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/worker/TaskDetailsPage.js +328 -289
- package/dist/subscriberbot/pages/worker/TaskDetailsPage.js.map +1 -1
- package/dist/subscriberbot/pages/worker/WorkerDashboard.js +135 -103
- package/dist/subscriberbot/pages/worker/WorkerDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/worker/WorkerOrdersPage.js +120 -114
- package/dist/subscriberbot/pages/worker/WorkerOrdersPage.js.map +1 -1
- package/dist/subscriberbot/pages/worker/WorkerProfilePage.js +125 -120
- package/dist/subscriberbot/pages/worker/WorkerProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/worker/WorkerSchedulePage.js +354 -344
- package/dist/subscriberbot/pages/worker/WorkerSchedulePage.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import { useSubscriberBot as e } from "../../context/SubscriberBotContext.js";
|
|
2
2
|
import { cn as t } from "../../utils/cn.js";
|
|
3
3
|
import { PageLayout as n } from "../../components/PageLayout.js";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
4
|
+
import { EmptyState as r } from "../../components/EmptyState.js";
|
|
5
|
+
import { formatCurrency as i } from "../../utils/formatters.js";
|
|
6
|
+
import { mockOrders as a } from "../../mocks/data.js";
|
|
7
|
+
import { useMemo as o, useState as s } from "react";
|
|
8
|
+
import { AlertCircle as c, CheckCircle2 as l, ChefHat as u, MapPin as d, PackageCheck as f, Phone as p, RefreshCw as m, Search as h, ShoppingBag as g, Truck as _, X as v, XCircle as y } from "lucide-react";
|
|
9
|
+
import { Fragment as b, jsx as x, jsxs as S } from "react/jsx-runtime";
|
|
10
|
+
import { EmphasisPanel as C, PagePurpose as w } from "@burdenoff/fe-libs/ui";
|
|
9
11
|
//#region src/subscriberbot/pages/cart-owner/OrderManagementPage.tsx
|
|
10
|
-
var
|
|
11
|
-
...
|
|
12
|
+
var T = [
|
|
13
|
+
...a,
|
|
12
14
|
{
|
|
13
15
|
id: "ORD-010",
|
|
14
16
|
cartId: "FOOD-001",
|
|
@@ -240,83 +242,83 @@ var S = [
|
|
|
240
242
|
customerPhone: "+91-9876543224",
|
|
241
243
|
fulfillmentType: "delivery"
|
|
242
244
|
}
|
|
243
|
-
],
|
|
245
|
+
], E = {
|
|
244
246
|
pending: {
|
|
245
|
-
color: "bg-
|
|
247
|
+
color: "bg-status-warning-bg/20 text-status-warning-text",
|
|
246
248
|
label: "New Order"
|
|
247
249
|
},
|
|
248
250
|
confirmed: {
|
|
249
|
-
color: "bg-
|
|
251
|
+
color: "bg-status-info-bg/20 text-status-info-text",
|
|
250
252
|
label: "Confirmed"
|
|
251
253
|
},
|
|
252
254
|
preparing: {
|
|
253
|
-
color: "bg-
|
|
255
|
+
color: "bg-status-warning-bg/20 text-status-warning-text",
|
|
254
256
|
label: "Preparing"
|
|
255
257
|
},
|
|
256
258
|
ready: {
|
|
257
|
-
color: "bg-
|
|
259
|
+
color: "bg-status-success-bg/20 text-status-success-text",
|
|
258
260
|
label: "Ready"
|
|
259
261
|
},
|
|
260
262
|
out_for_delivery: {
|
|
261
|
-
color: "bg-
|
|
263
|
+
color: "bg-status-info-bg/20 text-status-info-text",
|
|
262
264
|
label: "Out for Delivery"
|
|
263
265
|
},
|
|
264
266
|
delivered: {
|
|
265
|
-
color: "bg-
|
|
267
|
+
color: "bg-status-success-bg/20 text-status-success-text",
|
|
266
268
|
label: "Completed"
|
|
267
269
|
},
|
|
268
270
|
cancelled: {
|
|
269
|
-
color: "bg-
|
|
271
|
+
color: "bg-status-error-bg/20 text-status-error-text",
|
|
270
272
|
label: "Cancelled"
|
|
271
273
|
}
|
|
272
|
-
},
|
|
274
|
+
}, D = {
|
|
273
275
|
delivery: {
|
|
274
|
-
icon:
|
|
276
|
+
icon: _,
|
|
275
277
|
label: "Delivery",
|
|
276
|
-
color: "bg-purple-
|
|
278
|
+
color: "bg-accent-purple-subtle text-accent-purple"
|
|
277
279
|
},
|
|
278
280
|
pickup: {
|
|
279
|
-
icon:
|
|
281
|
+
icon: g,
|
|
280
282
|
label: "Pickup",
|
|
281
|
-
color: "bg-
|
|
283
|
+
color: "bg-status-info-bg/20 text-status-info-text"
|
|
282
284
|
},
|
|
283
285
|
cart_dispatch: {
|
|
284
|
-
icon:
|
|
286
|
+
icon: d,
|
|
285
287
|
label: "Cart Dispatch",
|
|
286
288
|
color: "bg-bg-sunken text-text-secondary"
|
|
287
289
|
}
|
|
288
|
-
},
|
|
290
|
+
}, O = (e) => {
|
|
289
291
|
let t = new Date(e), n = Math.floor(((/* @__PURE__ */ new Date()).getTime() - t.getTime()) / (1e3 * 60));
|
|
290
292
|
return n < 1 ? "Just now" : n < 60 ? `${n} min ago` : n < 1440 ? `${Math.floor(n / 60)} hours ago` : t.toLocaleDateString("en-IN", {
|
|
291
293
|
day: "2-digit",
|
|
292
294
|
month: "short"
|
|
293
295
|
});
|
|
294
|
-
},
|
|
296
|
+
}, k = (e) => new Date(e).toLocaleTimeString("en-IN", {
|
|
295
297
|
hour: "numeric",
|
|
296
298
|
minute: "2-digit",
|
|
297
299
|
hour12: !0
|
|
298
|
-
}),
|
|
300
|
+
}), A = (e) => {
|
|
299
301
|
let t = ((/* @__PURE__ */ new Date()).getTime() - new Date(e.orderDate).getTime()) / (1e3 * 60);
|
|
300
|
-
return e.status === "pending" && t > 10 ? "border-
|
|
301
|
-
},
|
|
302
|
-
let { navigateTo:
|
|
302
|
+
return e.status === "pending" && t > 10 ? "border-status-error-border/50 bg-status-error-bg/5" : e.status === "preparing" && t > 30 ? "border-status-warning-border/50 bg-status-warning-bg/5" : "border-border-seam";
|
|
303
|
+
}, j = () => {
|
|
304
|
+
let { navigateTo: a } = e(), [_, j] = s(T), [M, N] = s({
|
|
303
305
|
status: "",
|
|
304
306
|
dateRange: "all",
|
|
305
307
|
searchQuery: "",
|
|
306
308
|
sortBy: "recent",
|
|
307
309
|
fulfillmentType: ""
|
|
308
|
-
}), [
|
|
309
|
-
|
|
310
|
+
}), [P, F] = s(null), [I, L] = s(!1), [R, z] = s(null), B = (e, t) => {
|
|
311
|
+
z({
|
|
310
312
|
text: e,
|
|
311
313
|
type: t
|
|
312
|
-
}), setTimeout(() =>
|
|
313
|
-
},
|
|
314
|
-
let e =
|
|
314
|
+
}), setTimeout(() => z(null), 3e3);
|
|
315
|
+
}, V = o(() => {
|
|
316
|
+
let e = _.length, t = _.filter((e) => e.status === "pending").length, n = _.filter((e) => [
|
|
315
317
|
"confirmed",
|
|
316
318
|
"preparing",
|
|
317
319
|
"ready",
|
|
318
320
|
"out_for_delivery"
|
|
319
|
-
].includes(e.status)).length, r =
|
|
321
|
+
].includes(e.status)).length, r = _.filter((e) => e.status === "delivered").length, i = _.filter((e) => e.status === "delivered").reduce((e, t) => e + t.total, 0);
|
|
320
322
|
return {
|
|
321
323
|
total: e,
|
|
322
324
|
pending: t,
|
|
@@ -325,17 +327,17 @@ var S = [
|
|
|
325
327
|
totalRevenue: i,
|
|
326
328
|
avgOrder: r > 0 ? Math.round(i / r) : 0
|
|
327
329
|
};
|
|
328
|
-
}, [
|
|
329
|
-
let e = [...
|
|
330
|
-
if (
|
|
331
|
-
let t =
|
|
330
|
+
}, [_]), H = o(() => {
|
|
331
|
+
let e = [..._];
|
|
332
|
+
if (M.status && (e = e.filter((e) => e.status === M.status)), M.fulfillmentType && (e = e.filter((e) => e.fulfillmentType === M.fulfillmentType)), M.searchQuery) {
|
|
333
|
+
let t = M.searchQuery.toLowerCase();
|
|
332
334
|
e = e.filter((e) => e.id.toLowerCase().includes(t) || (e.customerName || "").toLowerCase().includes(t) || e.items.some((e) => e.name.toLowerCase().includes(t)));
|
|
333
335
|
}
|
|
334
|
-
if (
|
|
336
|
+
if (M.dateRange !== "all") {
|
|
335
337
|
let t = /* @__PURE__ */ new Date(), n = /* @__PURE__ */ new Date();
|
|
336
|
-
|
|
338
|
+
M.dateRange === "today" ? n.setHours(0, 0, 0, 0) : M.dateRange === "7days" ? n.setDate(t.getDate() - 7) : M.dateRange === "30days" && n.setDate(t.getDate() - 30), e = e.filter((e) => new Date(e.orderDate) >= n);
|
|
337
339
|
}
|
|
338
|
-
switch (
|
|
340
|
+
switch (M.sortBy) {
|
|
339
341
|
case "recent":
|
|
340
342
|
e.sort((e, t) => new Date(t.orderDate).getTime() - new Date(e.orderDate).getTime());
|
|
341
343
|
break;
|
|
@@ -350,236 +352,241 @@ var S = [
|
|
|
350
352
|
break;
|
|
351
353
|
}
|
|
352
354
|
return e;
|
|
353
|
-
}, [
|
|
355
|
+
}, [_, M]), U = (e, t) => {
|
|
354
356
|
let n = {
|
|
355
357
|
accept: "confirmed",
|
|
356
358
|
reject: "cancelled",
|
|
357
359
|
ready: "ready",
|
|
358
360
|
complete: "delivered"
|
|
359
361
|
};
|
|
360
|
-
|
|
362
|
+
j((r) => r.map((r) => r.id === e ? {
|
|
361
363
|
...r,
|
|
362
364
|
status: n[t]
|
|
363
|
-
} : r)),
|
|
365
|
+
} : r)), B({
|
|
364
366
|
accept: "Order accepted",
|
|
365
367
|
reject: "Order rejected",
|
|
366
368
|
ready: "Order marked as ready",
|
|
367
369
|
complete: "Order completed"
|
|
368
|
-
}[t], "success"),
|
|
370
|
+
}[t], "success"), I && P?.id === e && L(!1);
|
|
369
371
|
};
|
|
370
|
-
return /* @__PURE__ */
|
|
372
|
+
return /* @__PURE__ */ S(n, {
|
|
371
373
|
title: "Order Management",
|
|
372
374
|
description: "Manage incoming and active orders",
|
|
373
|
-
|
|
375
|
+
titleGradient: !0,
|
|
376
|
+
actions: /* @__PURE__ */ S("button", {
|
|
374
377
|
type: "button",
|
|
375
|
-
onClick: () =>
|
|
376
|
-
className: "inline-flex items-center gap-2 rounded-md border border-border-
|
|
377
|
-
children: [/* @__PURE__ */
|
|
378
|
+
onClick: () => B("Orders refreshed", "success"),
|
|
379
|
+
className: "inline-flex items-center gap-2 rounded-md border border-border-seam px-4 py-2 text-sm font-medium text-text-primary hover:bg-bg-sunken transition-colors",
|
|
380
|
+
children: [/* @__PURE__ */ x(m, { className: "h-4 w-4" }), "Refresh"]
|
|
378
381
|
}),
|
|
379
|
-
children: [/* @__PURE__ */
|
|
382
|
+
children: [/* @__PURE__ */ S("div", {
|
|
380
383
|
className: "space-y-4",
|
|
381
384
|
children: [
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
children:
|
|
385
|
-
|
|
386
|
-
|
|
385
|
+
/* @__PURE__ */ x(w, {
|
|
386
|
+
icon: /* @__PURE__ */ x(g, { className: "h-4 w-4" }),
|
|
387
|
+
children: "The live queue for every order hitting your cart. Triage new orders the moment they arrive — accept, move them through preparing and ready, and mark them delivered so customers get accurate status updates. Filter by status to focus on what's pending right now, and watch revenue add up through the day."
|
|
388
|
+
}),
|
|
389
|
+
R && /* @__PURE__ */ S("div", {
|
|
390
|
+
className: t("flex items-center gap-2 rounded-lg border p-3", R.type === "success" ? "border-status-success-border/30 bg-status-success-bg/10" : "border-status-error-border/30 bg-status-error-bg/10"),
|
|
391
|
+
children: [R.type === "success" ? /* @__PURE__ */ x(l, { className: "h-4 w-4 text-status-success-text" }) : /* @__PURE__ */ x(c, { className: "h-4 w-4 text-status-error-text" }), /* @__PURE__ */ x("span", {
|
|
392
|
+
className: t("text-sm font-medium", R.type === "success" ? "text-status-success-text" : "text-status-error-text"),
|
|
393
|
+
children: R.text
|
|
387
394
|
})]
|
|
388
395
|
}),
|
|
389
|
-
/* @__PURE__ */
|
|
396
|
+
/* @__PURE__ */ S(C, {
|
|
390
397
|
className: "grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-6 gap-3",
|
|
391
398
|
children: [
|
|
392
|
-
/* @__PURE__ */
|
|
393
|
-
className: "rounded-lg border border-border-
|
|
394
|
-
children: [/* @__PURE__ */
|
|
399
|
+
/* @__PURE__ */ S("div", {
|
|
400
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-4 shadow-sm",
|
|
401
|
+
children: [/* @__PURE__ */ x("p", {
|
|
395
402
|
className: "text-xs text-text-secondary",
|
|
396
403
|
children: "Total Orders"
|
|
397
|
-
}), /* @__PURE__ */
|
|
404
|
+
}), /* @__PURE__ */ x("p", {
|
|
398
405
|
className: "text-2xl font-bold text-text-primary",
|
|
399
|
-
children:
|
|
406
|
+
children: V.total
|
|
400
407
|
})]
|
|
401
408
|
}),
|
|
402
|
-
/* @__PURE__ */
|
|
403
|
-
className: "rounded-lg border border-
|
|
404
|
-
children: [/* @__PURE__ */
|
|
405
|
-
className: "text-xs text-
|
|
409
|
+
/* @__PURE__ */ S("div", {
|
|
410
|
+
className: "rounded-lg border border-status-warning-border/30 bg-status-warning-bg/5 p-4 shadow-sm",
|
|
411
|
+
children: [/* @__PURE__ */ x("p", {
|
|
412
|
+
className: "text-xs text-status-warning-text",
|
|
406
413
|
children: "Pending"
|
|
407
|
-
}), /* @__PURE__ */
|
|
408
|
-
className: "text-2xl font-bold text-
|
|
409
|
-
children:
|
|
414
|
+
}), /* @__PURE__ */ x("p", {
|
|
415
|
+
className: "text-2xl font-bold text-status-warning-text",
|
|
416
|
+
children: V.pending
|
|
410
417
|
})]
|
|
411
418
|
}),
|
|
412
|
-
/* @__PURE__ */
|
|
413
|
-
className: "rounded-lg border border-
|
|
414
|
-
children: [/* @__PURE__ */
|
|
415
|
-
className: "text-xs text-
|
|
419
|
+
/* @__PURE__ */ S("div", {
|
|
420
|
+
className: "rounded-lg border border-status-info-border/30 bg-status-info-bg/5 p-4 shadow-sm",
|
|
421
|
+
children: [/* @__PURE__ */ x("p", {
|
|
422
|
+
className: "text-xs text-status-info-text",
|
|
416
423
|
children: "Active"
|
|
417
|
-
}), /* @__PURE__ */
|
|
418
|
-
className: "text-2xl font-bold text-
|
|
419
|
-
children:
|
|
424
|
+
}), /* @__PURE__ */ x("p", {
|
|
425
|
+
className: "text-2xl font-bold text-status-info-text",
|
|
426
|
+
children: V.active
|
|
420
427
|
})]
|
|
421
428
|
}),
|
|
422
|
-
/* @__PURE__ */
|
|
423
|
-
className: "rounded-lg border border-
|
|
424
|
-
children: [/* @__PURE__ */
|
|
425
|
-
className: "text-xs text-
|
|
429
|
+
/* @__PURE__ */ S("div", {
|
|
430
|
+
className: "rounded-lg border border-status-success-border/30 bg-status-success-bg/5 p-4 shadow-sm",
|
|
431
|
+
children: [/* @__PURE__ */ x("p", {
|
|
432
|
+
className: "text-xs text-status-success-text",
|
|
426
433
|
children: "Completed"
|
|
427
|
-
}), /* @__PURE__ */
|
|
428
|
-
className: "text-2xl font-bold text-
|
|
429
|
-
children:
|
|
434
|
+
}), /* @__PURE__ */ x("p", {
|
|
435
|
+
className: "text-2xl font-bold text-status-success-text",
|
|
436
|
+
children: V.completed
|
|
430
437
|
})]
|
|
431
438
|
}),
|
|
432
|
-
/* @__PURE__ */
|
|
433
|
-
className: "rounded-lg border border-border-
|
|
434
|
-
children: [/* @__PURE__ */
|
|
439
|
+
/* @__PURE__ */ S("div", {
|
|
440
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-4 shadow-sm",
|
|
441
|
+
children: [/* @__PURE__ */ x("p", {
|
|
435
442
|
className: "text-xs text-text-secondary",
|
|
436
443
|
children: "Total Revenue"
|
|
437
|
-
}), /* @__PURE__ */
|
|
444
|
+
}), /* @__PURE__ */ x("p", {
|
|
438
445
|
className: "text-2xl font-bold text-text-primary",
|
|
439
|
-
children:
|
|
446
|
+
children: i(V.totalRevenue, { minimumFractionDigits: 0 })
|
|
440
447
|
})]
|
|
441
448
|
}),
|
|
442
|
-
/* @__PURE__ */
|
|
443
|
-
className: "rounded-lg border border-border-
|
|
444
|
-
children: [/* @__PURE__ */
|
|
449
|
+
/* @__PURE__ */ S("div", {
|
|
450
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-4 shadow-sm",
|
|
451
|
+
children: [/* @__PURE__ */ x("p", {
|
|
445
452
|
className: "text-xs text-text-secondary",
|
|
446
453
|
children: "Avg Order"
|
|
447
|
-
}), /* @__PURE__ */
|
|
454
|
+
}), /* @__PURE__ */ x("p", {
|
|
448
455
|
className: "text-2xl font-bold text-text-primary",
|
|
449
|
-
children:
|
|
456
|
+
children: i(V.avgOrder, { minimumFractionDigits: 0 })
|
|
450
457
|
})]
|
|
451
458
|
})
|
|
452
459
|
]
|
|
453
460
|
}),
|
|
454
|
-
/* @__PURE__ */
|
|
455
|
-
className: "rounded-lg border border-border-
|
|
456
|
-
children: /* @__PURE__ */
|
|
461
|
+
/* @__PURE__ */ x("div", {
|
|
462
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-4 shadow-sm",
|
|
463
|
+
children: /* @__PURE__ */ S("div", {
|
|
457
464
|
className: "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-5 gap-3",
|
|
458
465
|
children: [
|
|
459
|
-
/* @__PURE__ */
|
|
466
|
+
/* @__PURE__ */ S("div", {
|
|
460
467
|
className: "relative sm:col-span-2 lg:col-span-1",
|
|
461
|
-
children: [/* @__PURE__ */
|
|
468
|
+
children: [/* @__PURE__ */ x(h, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }), /* @__PURE__ */ x("input", {
|
|
462
469
|
type: "text",
|
|
463
470
|
placeholder: "Search orders...",
|
|
464
|
-
value:
|
|
465
|
-
onChange: (e) =>
|
|
471
|
+
value: M.searchQuery,
|
|
472
|
+
onChange: (e) => N((t) => ({
|
|
466
473
|
...t,
|
|
467
474
|
searchQuery: e.target.value
|
|
468
475
|
})),
|
|
469
|
-
className: "w-full rounded-md border border-border-
|
|
476
|
+
className: "w-full rounded-md border border-border-seam bg-bg-surface pl-10 pr-4 py-2 text-sm text-text-primary placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
|
|
470
477
|
})]
|
|
471
478
|
}),
|
|
472
|
-
/* @__PURE__ */
|
|
473
|
-
value:
|
|
474
|
-
onChange: (e) =>
|
|
479
|
+
/* @__PURE__ */ S("select", {
|
|
480
|
+
value: M.status,
|
|
481
|
+
onChange: (e) => N((t) => ({
|
|
475
482
|
...t,
|
|
476
483
|
status: e.target.value
|
|
477
484
|
})),
|
|
478
|
-
className: "rounded-md border border-border-
|
|
485
|
+
className: "rounded-md border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary",
|
|
479
486
|
children: [
|
|
480
|
-
/* @__PURE__ */
|
|
487
|
+
/* @__PURE__ */ x("option", {
|
|
481
488
|
value: "",
|
|
482
489
|
children: "All Orders"
|
|
483
490
|
}),
|
|
484
|
-
/* @__PURE__ */
|
|
491
|
+
/* @__PURE__ */ x("option", {
|
|
485
492
|
value: "pending",
|
|
486
493
|
children: "New Orders"
|
|
487
494
|
}),
|
|
488
|
-
/* @__PURE__ */
|
|
495
|
+
/* @__PURE__ */ x("option", {
|
|
489
496
|
value: "confirmed",
|
|
490
497
|
children: "Confirmed"
|
|
491
498
|
}),
|
|
492
|
-
/* @__PURE__ */
|
|
499
|
+
/* @__PURE__ */ x("option", {
|
|
493
500
|
value: "preparing",
|
|
494
501
|
children: "Preparing"
|
|
495
502
|
}),
|
|
496
|
-
/* @__PURE__ */
|
|
503
|
+
/* @__PURE__ */ x("option", {
|
|
497
504
|
value: "ready",
|
|
498
505
|
children: "Ready"
|
|
499
506
|
}),
|
|
500
|
-
/* @__PURE__ */
|
|
507
|
+
/* @__PURE__ */ x("option", {
|
|
501
508
|
value: "delivered",
|
|
502
509
|
children: "Completed"
|
|
503
510
|
}),
|
|
504
|
-
/* @__PURE__ */
|
|
511
|
+
/* @__PURE__ */ x("option", {
|
|
505
512
|
value: "cancelled",
|
|
506
513
|
children: "Cancelled"
|
|
507
514
|
})
|
|
508
515
|
]
|
|
509
516
|
}),
|
|
510
|
-
/* @__PURE__ */
|
|
511
|
-
value:
|
|
512
|
-
onChange: (e) =>
|
|
517
|
+
/* @__PURE__ */ S("select", {
|
|
518
|
+
value: M.fulfillmentType,
|
|
519
|
+
onChange: (e) => N((t) => ({
|
|
513
520
|
...t,
|
|
514
521
|
fulfillmentType: e.target.value
|
|
515
522
|
})),
|
|
516
|
-
className: "rounded-md border border-border-
|
|
523
|
+
className: "rounded-md border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary",
|
|
517
524
|
children: [
|
|
518
|
-
/* @__PURE__ */
|
|
525
|
+
/* @__PURE__ */ x("option", {
|
|
519
526
|
value: "",
|
|
520
527
|
children: "All Types"
|
|
521
528
|
}),
|
|
522
|
-
/* @__PURE__ */
|
|
529
|
+
/* @__PURE__ */ x("option", {
|
|
523
530
|
value: "pickup",
|
|
524
531
|
children: "Pickup"
|
|
525
532
|
}),
|
|
526
|
-
/* @__PURE__ */
|
|
533
|
+
/* @__PURE__ */ x("option", {
|
|
527
534
|
value: "delivery",
|
|
528
535
|
children: "Delivery"
|
|
529
536
|
}),
|
|
530
|
-
/* @__PURE__ */
|
|
537
|
+
/* @__PURE__ */ x("option", {
|
|
531
538
|
value: "cart_dispatch",
|
|
532
539
|
children: "Cart Dispatch"
|
|
533
540
|
})
|
|
534
541
|
]
|
|
535
542
|
}),
|
|
536
|
-
/* @__PURE__ */
|
|
537
|
-
value:
|
|
538
|
-
onChange: (e) =>
|
|
543
|
+
/* @__PURE__ */ S("select", {
|
|
544
|
+
value: M.dateRange,
|
|
545
|
+
onChange: (e) => N((t) => ({
|
|
539
546
|
...t,
|
|
540
547
|
dateRange: e.target.value
|
|
541
548
|
})),
|
|
542
|
-
className: "rounded-md border border-border-
|
|
549
|
+
className: "rounded-md border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary",
|
|
543
550
|
children: [
|
|
544
|
-
/* @__PURE__ */
|
|
551
|
+
/* @__PURE__ */ x("option", {
|
|
545
552
|
value: "today",
|
|
546
553
|
children: "Today"
|
|
547
554
|
}),
|
|
548
|
-
/* @__PURE__ */
|
|
555
|
+
/* @__PURE__ */ x("option", {
|
|
549
556
|
value: "7days",
|
|
550
557
|
children: "Last 7 Days"
|
|
551
558
|
}),
|
|
552
|
-
/* @__PURE__ */
|
|
559
|
+
/* @__PURE__ */ x("option", {
|
|
553
560
|
value: "30days",
|
|
554
561
|
children: "Last 30 Days"
|
|
555
562
|
}),
|
|
556
|
-
/* @__PURE__ */
|
|
563
|
+
/* @__PURE__ */ x("option", {
|
|
557
564
|
value: "all",
|
|
558
565
|
children: "All Time"
|
|
559
566
|
})
|
|
560
567
|
]
|
|
561
568
|
}),
|
|
562
|
-
/* @__PURE__ */
|
|
563
|
-
value:
|
|
564
|
-
onChange: (e) =>
|
|
569
|
+
/* @__PURE__ */ S("select", {
|
|
570
|
+
value: M.sortBy,
|
|
571
|
+
onChange: (e) => N((t) => ({
|
|
565
572
|
...t,
|
|
566
573
|
sortBy: e.target.value
|
|
567
574
|
})),
|
|
568
|
-
className: "rounded-md border border-border-
|
|
575
|
+
className: "rounded-md border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary",
|
|
569
576
|
children: [
|
|
570
|
-
/* @__PURE__ */
|
|
577
|
+
/* @__PURE__ */ x("option", {
|
|
571
578
|
value: "recent",
|
|
572
579
|
children: "Most Recent"
|
|
573
580
|
}),
|
|
574
|
-
/* @__PURE__ */
|
|
581
|
+
/* @__PURE__ */ x("option", {
|
|
575
582
|
value: "oldest",
|
|
576
583
|
children: "Oldest First"
|
|
577
584
|
}),
|
|
578
|
-
/* @__PURE__ */
|
|
585
|
+
/* @__PURE__ */ x("option", {
|
|
579
586
|
value: "amount_high",
|
|
580
587
|
children: "Amount: High to Low"
|
|
581
588
|
}),
|
|
582
|
-
/* @__PURE__ */
|
|
589
|
+
/* @__PURE__ */ x("option", {
|
|
583
590
|
value: "amount_low",
|
|
584
591
|
children: "Amount: Low to High"
|
|
585
592
|
})
|
|
@@ -588,79 +595,70 @@ var S = [
|
|
|
588
595
|
]
|
|
589
596
|
})
|
|
590
597
|
}),
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
className: "text-lg font-semibold text-text-primary mb-1",
|
|
597
|
-
children: "No orders found"
|
|
598
|
-
}),
|
|
599
|
-
/* @__PURE__ */ b("p", {
|
|
600
|
-
className: "text-sm text-text-secondary",
|
|
601
|
-
children: O.searchQuery || O.status ? "Try adjusting your filters" : "No orders to display"
|
|
602
|
-
})
|
|
603
|
-
]
|
|
604
|
-
}) : /* @__PURE__ */ b("div", {
|
|
598
|
+
H.length === 0 ? /* @__PURE__ */ x(r, {
|
|
599
|
+
illustration: M.searchQuery || M.status ? "empty-search" : "empty-sessions",
|
|
600
|
+
title: "No orders found",
|
|
601
|
+
description: M.searchQuery || M.status ? "Try adjusting your filters to see more orders." : "No orders to display yet. New orders will appear here the moment customers place them."
|
|
602
|
+
}) : /* @__PURE__ */ x("div", {
|
|
605
603
|
className: "space-y-4",
|
|
606
|
-
children:
|
|
607
|
-
let n =
|
|
604
|
+
children: H.map((e) => {
|
|
605
|
+
let n = E[e.status] || {
|
|
608
606
|
color: "bg-bg-sunken text-text-secondary",
|
|
609
607
|
label: e.status
|
|
610
|
-
},
|
|
611
|
-
return /* @__PURE__ */
|
|
612
|
-
className: t("rounded-lg border bg-bg-surface shadow-sm transition-shadow hover:shadow-md",
|
|
613
|
-
children: /* @__PURE__ */
|
|
608
|
+
}, r = D[e.fulfillmentType || "delivery"] || D.delivery, a = r.icon;
|
|
609
|
+
return /* @__PURE__ */ x("div", {
|
|
610
|
+
className: t("rounded-lg border bg-bg-surface shadow-sm transition-shadow hover:shadow-md", A(e)),
|
|
611
|
+
children: /* @__PURE__ */ S("div", {
|
|
614
612
|
className: "p-4 sm:p-5",
|
|
615
613
|
children: [
|
|
616
|
-
/* @__PURE__ */
|
|
614
|
+
/* @__PURE__ */ S("div", {
|
|
617
615
|
className: "flex flex-col lg:flex-row lg:items-center lg:justify-between gap-3 mb-3",
|
|
618
|
-
children: [/* @__PURE__ */
|
|
616
|
+
children: [/* @__PURE__ */ S("div", {
|
|
619
617
|
className: "min-w-0 flex-1",
|
|
620
|
-
children: [/* @__PURE__ */
|
|
618
|
+
children: [/* @__PURE__ */ S("div", {
|
|
621
619
|
className: "flex flex-wrap items-center gap-2 mb-1",
|
|
622
620
|
children: [
|
|
623
|
-
/* @__PURE__ */
|
|
621
|
+
/* @__PURE__ */ S("h3", {
|
|
624
622
|
className: "text-sm sm:text-base font-semibold text-text-primary",
|
|
625
623
|
children: ["Order #", e.id]
|
|
626
624
|
}),
|
|
627
|
-
/* @__PURE__ */
|
|
625
|
+
/* @__PURE__ */ x("span", {
|
|
628
626
|
className: t("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium", n.color),
|
|
629
627
|
children: n.label
|
|
630
628
|
}),
|
|
631
|
-
/* @__PURE__ */
|
|
632
|
-
className: t("inline-flex items-center gap-1 rounded-full px-2.5 py-0.5 text-xs font-medium",
|
|
633
|
-
children: [/* @__PURE__ */
|
|
629
|
+
/* @__PURE__ */ S("span", {
|
|
630
|
+
className: t("inline-flex items-center gap-1 rounded-full px-2.5 py-0.5 text-xs font-medium", r.color),
|
|
631
|
+
children: [/* @__PURE__ */ x(a, { className: "h-3 w-3" }), r.label]
|
|
634
632
|
})
|
|
635
633
|
]
|
|
636
|
-
}), /* @__PURE__ */
|
|
634
|
+
}), /* @__PURE__ */ S("p", {
|
|
637
635
|
className: "text-xs text-text-secondary",
|
|
638
636
|
children: [
|
|
639
637
|
e.customerName || "Customer",
|
|
640
638
|
" | ",
|
|
641
|
-
|
|
639
|
+
O(e.orderDate)
|
|
642
640
|
]
|
|
643
641
|
})]
|
|
644
|
-
}), /* @__PURE__ */
|
|
642
|
+
}), /* @__PURE__ */ S("div", {
|
|
645
643
|
className: "flex items-center gap-3",
|
|
646
|
-
children: [/* @__PURE__ */
|
|
644
|
+
children: [/* @__PURE__ */ x("p", {
|
|
647
645
|
className: "text-lg font-bold text-text-primary",
|
|
648
|
-
children:
|
|
649
|
-
}), /* @__PURE__ */
|
|
646
|
+
children: i(e.total, { minimumFractionDigits: 0 })
|
|
647
|
+
}), /* @__PURE__ */ x("button", {
|
|
650
648
|
type: "button",
|
|
651
649
|
onClick: () => {
|
|
652
|
-
|
|
650
|
+
F(e), L(!0);
|
|
653
651
|
},
|
|
654
|
-
className: "rounded-md border border-border-
|
|
652
|
+
className: "rounded-md border border-border-seam px-3 py-1.5 text-xs font-medium text-text-primary hover:bg-bg-sunken transition-colors",
|
|
655
653
|
children: "View Details"
|
|
656
654
|
})]
|
|
657
655
|
})]
|
|
658
656
|
}),
|
|
659
|
-
/* @__PURE__ */
|
|
660
|
-
className: "border-t border-border-
|
|
661
|
-
children: /* @__PURE__ */
|
|
657
|
+
/* @__PURE__ */ x("div", {
|
|
658
|
+
className: "border-t border-border-seam pt-3 mb-3",
|
|
659
|
+
children: /* @__PURE__ */ x("div", {
|
|
662
660
|
className: "flex flex-wrap gap-2",
|
|
663
|
-
children: e.items.map((e, t) => /* @__PURE__ */
|
|
661
|
+
children: e.items.map((e, t) => /* @__PURE__ */ S("span", {
|
|
664
662
|
className: "inline-flex items-center rounded bg-bg-sunken px-2 py-1 text-xs text-text-primary",
|
|
665
663
|
children: [
|
|
666
664
|
e.quantity,
|
|
@@ -670,57 +668,57 @@ var S = [
|
|
|
670
668
|
}, t))
|
|
671
669
|
})
|
|
672
670
|
}),
|
|
673
|
-
/* @__PURE__ */
|
|
671
|
+
/* @__PURE__ */ S("div", {
|
|
674
672
|
className: "flex flex-wrap gap-2",
|
|
675
673
|
children: [
|
|
676
|
-
e.status === "pending" && /* @__PURE__ */
|
|
674
|
+
e.status === "pending" && /* @__PURE__ */ S(b, { children: [/* @__PURE__ */ S("button", {
|
|
677
675
|
type: "button",
|
|
678
|
-
onClick: () =>
|
|
679
|
-
className: "inline-flex items-center gap-1.5 rounded-md bg-
|
|
680
|
-
children: [/* @__PURE__ */
|
|
681
|
-
}), /* @__PURE__ */
|
|
676
|
+
onClick: () => U(e.id, "accept"),
|
|
677
|
+
className: "inline-flex items-center gap-1.5 rounded-md bg-status-success-bg/10 px-3 py-2 text-xs font-medium text-status-success-text hover:bg-status-success-bg/20 transition-colors",
|
|
678
|
+
children: [/* @__PURE__ */ x(l, { className: "h-3.5 w-3.5" }), "Accept Order"]
|
|
679
|
+
}), /* @__PURE__ */ S("button", {
|
|
682
680
|
type: "button",
|
|
683
|
-
onClick: () =>
|
|
684
|
-
className: "inline-flex items-center gap-1.5 rounded-md bg-
|
|
685
|
-
children: [/* @__PURE__ */
|
|
681
|
+
onClick: () => U(e.id, "reject"),
|
|
682
|
+
className: "inline-flex items-center gap-1.5 rounded-md bg-status-error-bg/10 px-3 py-2 text-xs font-medium text-status-error-text hover:bg-status-error-bg/20 transition-colors",
|
|
683
|
+
children: [/* @__PURE__ */ x(y, { className: "h-3.5 w-3.5" }), "Reject"]
|
|
686
684
|
})] }),
|
|
687
|
-
e.status === "confirmed" && /* @__PURE__ */
|
|
685
|
+
e.status === "confirmed" && /* @__PURE__ */ S("button", {
|
|
688
686
|
type: "button",
|
|
689
|
-
onClick: () =>
|
|
690
|
-
className: "inline-flex items-center gap-1.5 rounded-md bg-
|
|
691
|
-
children: [/* @__PURE__ */
|
|
687
|
+
onClick: () => U(e.id, "ready"),
|
|
688
|
+
className: "inline-flex items-center gap-1.5 rounded-md bg-status-warning-bg/10 px-3 py-2 text-xs font-medium text-status-warning-text hover:bg-status-warning-bg/20 transition-colors",
|
|
689
|
+
children: [/* @__PURE__ */ x(u, { className: "h-3.5 w-3.5" }), "Start Preparing"]
|
|
692
690
|
}),
|
|
693
|
-
e.status === "preparing" && /* @__PURE__ */
|
|
691
|
+
e.status === "preparing" && /* @__PURE__ */ S("button", {
|
|
694
692
|
type: "button",
|
|
695
|
-
onClick: () =>
|
|
696
|
-
className: "inline-flex items-center gap-1.5 rounded-md bg-
|
|
697
|
-
children: [/* @__PURE__ */
|
|
693
|
+
onClick: () => U(e.id, "ready"),
|
|
694
|
+
className: "inline-flex items-center gap-1.5 rounded-md bg-status-success-bg/10 px-3 py-2 text-xs font-medium text-status-success-text hover:bg-status-success-bg/20 transition-colors",
|
|
695
|
+
children: [/* @__PURE__ */ x(f, { className: "h-3.5 w-3.5" }), "Mark as Ready"]
|
|
698
696
|
}),
|
|
699
|
-
e.status === "ready" && e.fulfillmentType === "pickup" && /* @__PURE__ */
|
|
697
|
+
e.status === "ready" && e.fulfillmentType === "pickup" && /* @__PURE__ */ S("button", {
|
|
700
698
|
type: "button",
|
|
701
|
-
onClick: () =>
|
|
702
|
-
className: "inline-flex items-center gap-1.5 rounded-md bg-
|
|
703
|
-
children: [/* @__PURE__ */
|
|
699
|
+
onClick: () => U(e.id, "complete"),
|
|
700
|
+
className: "inline-flex items-center gap-1.5 rounded-md bg-status-success-bg/10 px-3 py-2 text-xs font-medium text-status-success-text hover:bg-status-success-bg/20 transition-colors",
|
|
701
|
+
children: [/* @__PURE__ */ x(l, { className: "h-3.5 w-3.5" }), "Complete Order"]
|
|
704
702
|
}),
|
|
705
703
|
[
|
|
706
704
|
"confirmed",
|
|
707
705
|
"preparing",
|
|
708
706
|
"ready"
|
|
709
|
-
].includes(e.status) && /* @__PURE__ */
|
|
707
|
+
].includes(e.status) && /* @__PURE__ */ S("button", {
|
|
710
708
|
type: "button",
|
|
711
709
|
onClick: () => alert("Contact feature coming soon!"),
|
|
712
|
-
className: "inline-flex items-center gap-1.5 rounded-md border border-border-
|
|
713
|
-
children: [/* @__PURE__ */
|
|
710
|
+
className: "inline-flex items-center gap-1.5 rounded-md border border-border-seam px-3 py-2 text-xs font-medium text-text-primary hover:bg-bg-sunken transition-colors",
|
|
711
|
+
children: [/* @__PURE__ */ x(p, { className: "h-3.5 w-3.5" }), "Contact Customer"]
|
|
714
712
|
})
|
|
715
713
|
]
|
|
716
714
|
}),
|
|
717
|
-
e.specialInstructions && /* @__PURE__ */
|
|
718
|
-
className: "mt-3 rounded-md border border-
|
|
719
|
-
children: [/* @__PURE__ */
|
|
720
|
-
className: "text-xs font-medium text-
|
|
715
|
+
e.specialInstructions && /* @__PURE__ */ S("div", {
|
|
716
|
+
className: "mt-3 rounded-md border border-status-warning-border/30 bg-status-warning-bg/10 p-3",
|
|
717
|
+
children: [/* @__PURE__ */ x("p", {
|
|
718
|
+
className: "text-xs font-medium text-status-warning-text",
|
|
721
719
|
children: "Special Instructions:"
|
|
722
|
-
}), /* @__PURE__ */
|
|
723
|
-
className: "text-xs text-
|
|
720
|
+
}), /* @__PURE__ */ x("p", {
|
|
721
|
+
className: "text-xs text-status-warning-text mt-0.5",
|
|
724
722
|
children: e.specialInstructions
|
|
725
723
|
})]
|
|
726
724
|
})
|
|
@@ -730,141 +728,141 @@ var S = [
|
|
|
730
728
|
})
|
|
731
729
|
})
|
|
732
730
|
]
|
|
733
|
-
}),
|
|
734
|
-
className: "fixed inset-0 z-50 flex items-center justify-center bg-
|
|
735
|
-
children: /* @__PURE__ */
|
|
736
|
-
className: "w-full max-w-2xl max-h-[90vh] overflow-y-auto rounded-lg border border-border-
|
|
737
|
-
children: /* @__PURE__ */
|
|
731
|
+
}), I && P && /* @__PURE__ */ x("div", {
|
|
732
|
+
className: "fixed inset-0 z-50 flex items-center justify-center bg-bg-canvas/50 p-4",
|
|
733
|
+
children: /* @__PURE__ */ x("div", {
|
|
734
|
+
className: "w-full max-w-2xl max-h-[90vh] overflow-y-auto rounded-lg border border-border-seam bg-bg-surface shadow-xl",
|
|
735
|
+
children: /* @__PURE__ */ S("div", {
|
|
738
736
|
className: "p-6",
|
|
739
|
-
children: [/* @__PURE__ */
|
|
737
|
+
children: [/* @__PURE__ */ S("div", {
|
|
740
738
|
className: "flex items-center justify-between mb-4",
|
|
741
|
-
children: [/* @__PURE__ */
|
|
739
|
+
children: [/* @__PURE__ */ x("h3", {
|
|
742
740
|
className: "text-lg font-semibold text-text-primary",
|
|
743
741
|
children: "Order Details"
|
|
744
|
-
}), /* @__PURE__ */
|
|
742
|
+
}), /* @__PURE__ */ x("button", {
|
|
745
743
|
type: "button",
|
|
746
|
-
onClick: () =>
|
|
744
|
+
onClick: () => L(!1),
|
|
747
745
|
className: "rounded p-1.5 text-text-secondary hover:text-text-primary hover:bg-bg-sunken transition-colors",
|
|
748
|
-
children: /* @__PURE__ */
|
|
746
|
+
children: /* @__PURE__ */ x(v, { className: "h-5 w-5" })
|
|
749
747
|
})]
|
|
750
|
-
}), /* @__PURE__ */
|
|
748
|
+
}), /* @__PURE__ */ S("div", {
|
|
751
749
|
className: "space-y-4",
|
|
752
750
|
children: [
|
|
753
|
-
/* @__PURE__ */
|
|
751
|
+
/* @__PURE__ */ S("div", {
|
|
754
752
|
className: "grid grid-cols-2 gap-4",
|
|
755
753
|
children: [
|
|
756
|
-
/* @__PURE__ */
|
|
754
|
+
/* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
|
|
757
755
|
className: "text-xs text-text-secondary",
|
|
758
756
|
children: "Order ID"
|
|
759
|
-
}), /* @__PURE__ */
|
|
757
|
+
}), /* @__PURE__ */ S("p", {
|
|
760
758
|
className: "text-sm font-medium text-text-primary",
|
|
761
|
-
children: ["#",
|
|
759
|
+
children: ["#", P.id]
|
|
762
760
|
})] }),
|
|
763
|
-
/* @__PURE__ */
|
|
761
|
+
/* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
|
|
764
762
|
className: "text-xs text-text-secondary",
|
|
765
763
|
children: "Status"
|
|
766
|
-
}), /* @__PURE__ */
|
|
767
|
-
className: t("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium mt-0.5", (
|
|
768
|
-
children: (
|
|
764
|
+
}), /* @__PURE__ */ x("span", {
|
|
765
|
+
className: t("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium mt-0.5", (E[P.status] || E.pending).color),
|
|
766
|
+
children: (E[P.status] || E.pending).label
|
|
769
767
|
})] }),
|
|
770
|
-
/* @__PURE__ */
|
|
768
|
+
/* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
|
|
771
769
|
className: "text-xs text-text-secondary",
|
|
772
770
|
children: "Customer"
|
|
773
|
-
}), /* @__PURE__ */
|
|
771
|
+
}), /* @__PURE__ */ x("p", {
|
|
774
772
|
className: "text-sm font-medium text-text-primary",
|
|
775
|
-
children:
|
|
773
|
+
children: P.customerName || "N/A"
|
|
776
774
|
})] }),
|
|
777
|
-
/* @__PURE__ */
|
|
775
|
+
/* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
|
|
778
776
|
className: "text-xs text-text-secondary",
|
|
779
777
|
children: "Order Time"
|
|
780
|
-
}), /* @__PURE__ */
|
|
778
|
+
}), /* @__PURE__ */ x("p", {
|
|
781
779
|
className: "text-sm font-medium text-text-primary",
|
|
782
|
-
children:
|
|
780
|
+
children: k(P.orderDate)
|
|
783
781
|
})] })
|
|
784
782
|
]
|
|
785
783
|
}),
|
|
786
|
-
/* @__PURE__ */
|
|
787
|
-
className: "border-t border-border-
|
|
788
|
-
children: [/* @__PURE__ */
|
|
784
|
+
/* @__PURE__ */ S("div", {
|
|
785
|
+
className: "border-t border-border-seam pt-4",
|
|
786
|
+
children: [/* @__PURE__ */ x("h4", {
|
|
789
787
|
className: "text-sm font-medium text-text-primary mb-3",
|
|
790
788
|
children: "Order Items"
|
|
791
|
-
}), /* @__PURE__ */
|
|
789
|
+
}), /* @__PURE__ */ x("div", {
|
|
792
790
|
className: "space-y-2",
|
|
793
|
-
children:
|
|
791
|
+
children: P.items.map((e, t) => /* @__PURE__ */ S("div", {
|
|
794
792
|
className: "flex justify-between items-start",
|
|
795
|
-
children: [/* @__PURE__ */
|
|
793
|
+
children: [/* @__PURE__ */ S("div", { children: [/* @__PURE__ */ x("p", {
|
|
796
794
|
className: "text-sm font-medium text-text-primary",
|
|
797
795
|
children: e.name
|
|
798
|
-
}), /* @__PURE__ */
|
|
796
|
+
}), /* @__PURE__ */ S("p", {
|
|
799
797
|
className: "text-xs text-text-secondary",
|
|
800
798
|
children: [
|
|
801
|
-
|
|
799
|
+
i(e.price, { minimumFractionDigits: 0 }),
|
|
802
800
|
" x",
|
|
803
801
|
" ",
|
|
804
802
|
e.quantity
|
|
805
803
|
]
|
|
806
|
-
})] }), /* @__PURE__ */
|
|
804
|
+
})] }), /* @__PURE__ */ x("p", {
|
|
807
805
|
className: "text-sm font-medium text-text-primary",
|
|
808
|
-
children:
|
|
806
|
+
children: i(e.price * e.quantity, { minimumFractionDigits: 0 })
|
|
809
807
|
})]
|
|
810
808
|
}, t))
|
|
811
809
|
})]
|
|
812
810
|
}),
|
|
813
|
-
/* @__PURE__ */
|
|
814
|
-
className: "border-t border-border-
|
|
811
|
+
/* @__PURE__ */ S("div", {
|
|
812
|
+
className: "border-t border-border-seam pt-4 space-y-2",
|
|
815
813
|
children: [
|
|
816
|
-
/* @__PURE__ */
|
|
814
|
+
/* @__PURE__ */ S("div", {
|
|
817
815
|
className: "flex justify-between text-sm text-text-secondary",
|
|
818
|
-
children: [/* @__PURE__ */
|
|
816
|
+
children: [/* @__PURE__ */ x("span", { children: "Subtotal" }), /* @__PURE__ */ x("span", { children: i(P.subtotal, { minimumFractionDigits: 0 }) })]
|
|
819
817
|
}),
|
|
820
|
-
/* @__PURE__ */
|
|
818
|
+
/* @__PURE__ */ S("div", {
|
|
821
819
|
className: "flex justify-between text-sm text-text-secondary",
|
|
822
|
-
children: [/* @__PURE__ */
|
|
820
|
+
children: [/* @__PURE__ */ x("span", { children: "Delivery Fee" }), /* @__PURE__ */ x("span", { children: i(P.deliveryFee, { minimumFractionDigits: 0 }) })]
|
|
823
821
|
}),
|
|
824
|
-
/* @__PURE__ */
|
|
822
|
+
/* @__PURE__ */ S("div", {
|
|
825
823
|
className: "flex justify-between text-sm text-text-secondary",
|
|
826
|
-
children: [/* @__PURE__ */
|
|
824
|
+
children: [/* @__PURE__ */ x("span", { children: "Tax" }), /* @__PURE__ */ x("span", { children: i(P.taxes, { minimumFractionDigits: 0 }) })]
|
|
827
825
|
}),
|
|
828
|
-
/* @__PURE__ */
|
|
829
|
-
className: "flex justify-between font-semibold text-text-primary pt-2 border-t border-border-
|
|
830
|
-
children: [/* @__PURE__ */
|
|
826
|
+
/* @__PURE__ */ S("div", {
|
|
827
|
+
className: "flex justify-between font-semibold text-text-primary pt-2 border-t border-border-seam",
|
|
828
|
+
children: [/* @__PURE__ */ x("span", { children: "Total" }), /* @__PURE__ */ x("span", { children: i(P.total, { minimumFractionDigits: 0 }) })]
|
|
831
829
|
})
|
|
832
830
|
]
|
|
833
831
|
}),
|
|
834
|
-
|
|
835
|
-
className: "border-t border-border-
|
|
836
|
-
children: [/* @__PURE__ */
|
|
832
|
+
P.fulfillmentType === "delivery" && P.deliveryAddress && /* @__PURE__ */ S("div", {
|
|
833
|
+
className: "border-t border-border-seam pt-4",
|
|
834
|
+
children: [/* @__PURE__ */ S("h4", {
|
|
837
835
|
className: "text-sm font-medium text-text-primary mb-2 flex items-center gap-1.5",
|
|
838
|
-
children: [/* @__PURE__ */
|
|
839
|
-
}), /* @__PURE__ */
|
|
836
|
+
children: [/* @__PURE__ */ x(d, { className: "h-4 w-4 text-text-secondary" }), "Delivery Address"]
|
|
837
|
+
}), /* @__PURE__ */ S("p", {
|
|
840
838
|
className: "text-sm text-text-secondary",
|
|
841
839
|
children: [
|
|
842
|
-
|
|
840
|
+
P.deliveryAddress.street,
|
|
843
841
|
", ",
|
|
844
|
-
|
|
845
|
-
/* @__PURE__ */
|
|
846
|
-
|
|
842
|
+
P.deliveryAddress.area,
|
|
843
|
+
/* @__PURE__ */ x("br", {}),
|
|
844
|
+
P.deliveryAddress.city,
|
|
847
845
|
" - ",
|
|
848
|
-
|
|
846
|
+
P.deliveryAddress.pincode
|
|
849
847
|
]
|
|
850
848
|
})]
|
|
851
849
|
}),
|
|
852
|
-
/* @__PURE__ */
|
|
850
|
+
/* @__PURE__ */ S("div", {
|
|
853
851
|
className: "flex gap-3 mt-6",
|
|
854
|
-
children: [/* @__PURE__ */
|
|
852
|
+
children: [/* @__PURE__ */ x("button", {
|
|
855
853
|
type: "button",
|
|
856
|
-
onClick: () =>
|
|
857
|
-
className: "flex-1 rounded-md border border-border-
|
|
854
|
+
onClick: () => L(!1),
|
|
855
|
+
className: "flex-1 rounded-md border border-border-seam px-4 py-2 text-sm font-medium text-text-primary hover:bg-bg-sunken transition-colors",
|
|
858
856
|
children: "Close"
|
|
859
|
-
}),
|
|
857
|
+
}), P.status === "pending" && /* @__PURE__ */ S(b, { children: [/* @__PURE__ */ x("button", {
|
|
860
858
|
type: "button",
|
|
861
|
-
onClick: () =>
|
|
862
|
-
className: "flex-1 rounded-md bg-
|
|
859
|
+
onClick: () => U(P.id, "accept"),
|
|
860
|
+
className: "flex-1 rounded-md bg-status-success-bg/10 px-4 py-2 text-sm font-medium text-status-success-text hover:bg-status-success-bg/20 transition-colors",
|
|
863
861
|
children: "Accept Order"
|
|
864
|
-
}), /* @__PURE__ */
|
|
862
|
+
}), /* @__PURE__ */ x("button", {
|
|
865
863
|
type: "button",
|
|
866
|
-
onClick: () =>
|
|
867
|
-
className: "flex-1 rounded-md bg-
|
|
864
|
+
onClick: () => U(P.id, "reject"),
|
|
865
|
+
className: "flex-1 rounded-md bg-status-error-bg/10 px-4 py-2 text-sm font-medium text-status-error-text hover:bg-status-error-bg/20 transition-colors",
|
|
868
866
|
children: "Reject Order"
|
|
869
867
|
})] })]
|
|
870
868
|
})
|
|
@@ -876,6 +874,6 @@ var S = [
|
|
|
876
874
|
});
|
|
877
875
|
};
|
|
878
876
|
//#endregion
|
|
879
|
-
export {
|
|
877
|
+
export { j as OrderManagementPage };
|
|
880
878
|
|
|
881
879
|
//# sourceMappingURL=OrderManagementPage.js.map
|