@burdenoff/microfe-kadaikodi 2026.704.4 → 2026.704.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/kadaikodi/KadaikodiRoutes.js +30 -26
- package/dist/kadaikodi/KadaikodiRoutes.js.map +1 -1
- package/dist/kadaikodi/components/viz/AllocationBar.js +68 -0
- package/dist/kadaikodi/components/viz/AllocationBar.js.map +1 -0
- package/dist/kadaikodi/components/viz/AreaChart.js +102 -0
- package/dist/kadaikodi/components/viz/AreaChart.js.map +1 -0
- package/dist/kadaikodi/components/viz/AvatarStack.js +36 -0
- package/dist/kadaikodi/components/viz/AvatarStack.js.map +1 -0
- package/dist/kadaikodi/components/viz/BarChart.js +83 -0
- package/dist/kadaikodi/components/viz/BarChart.js.map +1 -0
- package/dist/kadaikodi/components/viz/CertificateCard.js +4 -0
- package/dist/kadaikodi/components/viz/DonutChart.js +109 -0
- package/dist/kadaikodi/components/viz/DonutChart.js.map +1 -0
- package/dist/kadaikodi/components/viz/HBarFunnel.js +54 -0
- package/dist/kadaikodi/components/viz/HBarFunnel.js.map +1 -0
- package/dist/kadaikodi/components/viz/Heatmap.js +3 -0
- package/dist/kadaikodi/components/viz/KanbanBoard.js +50 -0
- package/dist/kadaikodi/components/viz/KanbanBoard.js.map +1 -0
- package/dist/kadaikodi/components/viz/LineChart.js +4 -0
- package/dist/kadaikodi/components/viz/OrgTree.js +2 -0
- package/dist/kadaikodi/components/viz/PathSteps.js +3 -0
- package/dist/kadaikodi/components/viz/ProgressRing.js +68 -0
- package/dist/kadaikodi/components/viz/ProgressRing.js.map +1 -0
- package/dist/kadaikodi/components/viz/RatingStars.js +51 -0
- package/dist/kadaikodi/components/viz/RatingStars.js.map +1 -0
- package/dist/kadaikodi/components/viz/SegmentedTabs.js +69 -0
- package/dist/kadaikodi/components/viz/SegmentedTabs.js.map +1 -0
- package/dist/kadaikodi/components/viz/SkillBar.js +3 -0
- package/dist/kadaikodi/components/viz/Sparkline.js +74 -0
- package/dist/kadaikodi/components/viz/Sparkline.js.map +1 -0
- package/dist/kadaikodi/components/viz/StatCard.js +60 -0
- package/dist/kadaikodi/components/viz/StatCard.js.map +1 -0
- package/dist/kadaikodi/components/viz/StepProgress.js +64 -0
- package/dist/kadaikodi/components/viz/StepProgress.js.map +1 -0
- package/dist/kadaikodi/components/viz/Timeline.js +66 -0
- package/dist/kadaikodi/components/viz/Timeline.js.map +1 -0
- package/dist/kadaikodi/components/viz/index.js +23 -0
- package/dist/kadaikodi/components/viz/lib/Avatar.js +30 -0
- package/dist/kadaikodi/components/viz/lib/Avatar.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/CartesianFrame.js +119 -0
- package/dist/kadaikodi/components/viz/lib/CartesianFrame.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/ResponsiveSvg.js +35 -0
- package/dist/kadaikodi/components/viz/lib/ResponsiveSvg.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/format.js +21 -0
- package/dist/kadaikodi/components/viz/lib/format.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/geometry.js +61 -0
- package/dist/kadaikodi/components/viz/lib/geometry.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/hooks.js +39 -0
- package/dist/kadaikodi/components/viz/lib/hooks.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/palette.js +27 -0
- package/dist/kadaikodi/components/viz/lib/palette.js.map +1 -0
- package/dist/kadaikodi/hooks/useKadaikodiApi.js +18 -10
- package/dist/kadaikodi/hooks/useKadaikodiApi.js.map +1 -1
- package/dist/kadaikodi/pages/HomePage.js +373 -631
- package/dist/kadaikodi/pages/HomePage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.js +304 -169
- package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminDashboard.js +255 -271
- package/dist/kadaikodi/pages/admin/AdminDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminFinancialPage.js +185 -125
- package/dist/kadaikodi/pages/admin/AdminFinancialPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminOrdersPage.js +141 -102
- package/dist/kadaikodi/pages/admin/AdminOrdersPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/CartManagementPage.js +558 -718
- package/dist/kadaikodi/pages/admin/CartManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/UserManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/AnalyticsDashboard.js +142 -55
- package/dist/kadaikodi/pages/cart-owner/AnalyticsDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/CartOwnerDashboard.js +129 -164
- package/dist/kadaikodi/pages/cart-owner/CartOwnerDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/InventoryManagementPage.js +379 -361
- package/dist/kadaikodi/pages/cart-owner/InventoryManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/InvestmentListingPage.js +266 -166
- package/dist/kadaikodi/pages/cart-owner/InvestmentListingPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/MerchantOnboardingPage.js +373 -0
- package/dist/kadaikodi/pages/cart-owner/MerchantOnboardingPage.js.map +1 -0
- package/dist/kadaikodi/pages/cart-owner/OrderManagementPage.js +288 -161
- package/dist/kadaikodi/pages/cart-owner/OrderManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.js +180 -181
- package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/common/HelpSupportPage.js.map +1 -1
- package/dist/kadaikodi/pages/common/SettingsPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/BookingDetailsPage.js +17 -34
- package/dist/kadaikodi/pages/customer/BookingDetailsPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CartDetailPage.js +405 -248
- package/dist/kadaikodi/pages/customer/CartDetailPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CartDiscoveryPage.js +258 -232
- package/dist/kadaikodi/pages/customer/CartDiscoveryPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CheckoutPage.js +254 -205
- package/dist/kadaikodi/pages/customer/CheckoutPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/DirectServiceBookingPage.js +270 -230
- package/dist/kadaikodi/pages/customer/DirectServiceBookingPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/FavoritesPage.js +149 -412
- package/dist/kadaikodi/pages/customer/FavoritesPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/OrderHistoryPage.js +173 -134
- package/dist/kadaikodi/pages/customer/OrderHistoryPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/OrderTrackingPage.js +176 -175
- package/dist/kadaikodi/pages/customer/OrderTrackingPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/ReviewsPage.js +295 -438
- package/dist/kadaikodi/pages/customer/ReviewsPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/shared.js +181 -0
- package/dist/kadaikodi/pages/customer/shared.js.map +1 -0
- package/dist/kadaikodi/pages/investor/InvestmentDetailsPage.js +438 -311
- package/dist/kadaikodi/pages/investor/InvestmentDetailsPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestmentOpportunitiesPage.js +320 -293
- package/dist/kadaikodi/pages/investor/InvestmentOpportunitiesPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorAnalyticsPage.js +159 -91
- package/dist/kadaikodi/pages/investor/InvestorAnalyticsPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorDashboard.js +137 -107
- package/dist/kadaikodi/pages/investor/InvestorDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorInvestmentsPage.js +157 -135
- package/dist/kadaikodi/pages/investor/InvestorInvestmentsPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorPortfolioPage.js +280 -206
- package/dist/kadaikodi/pages/investor/InvestorPortfolioPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorProfilePage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/TaskDetailsPage.js +424 -448
- package/dist/kadaikodi/pages/worker/TaskDetailsPage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/WorkerDashboard.js +328 -445
- package/dist/kadaikodi/pages/worker/WorkerDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/worker/WorkerOrdersPage.js +141 -164
- package/dist/kadaikodi/pages/worker/WorkerOrdersPage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/WorkerProfilePage.js +300 -296
- package/dist/kadaikodi/pages/worker/WorkerProfilePage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/WorkerSchedulePage.js +284 -309
- package/dist/kadaikodi/pages/worker/WorkerSchedulePage.js.map +1 -1
- package/package.json +1 -1
|
@@ -4,13 +4,15 @@ import { StatusBadge as n } from "../../components/StatusBadge.js";
|
|
|
4
4
|
import { EmptyState as r } from "../../components/EmptyState.js";
|
|
5
5
|
import { useOrders as i } from "../../hooks/useKadaikodiApi.js";
|
|
6
6
|
import { formatCurrency as a, formatDate as o } from "../../utils/formatters.js";
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
7
|
+
import { SegmentedTabs as s } from "../../components/viz/SegmentedTabs.js";
|
|
8
|
+
import "../../components/viz/index.js";
|
|
9
|
+
import { RatingDisplay as c } from "../../components/RatingDisplay.js";
|
|
10
|
+
import { useMemo as l, useState as u } from "react";
|
|
11
|
+
import { AlertCircle as d, CheckCircle2 as f, ChevronDown as p, Clock as m, Eye as h, Heart as g, IndianRupee as _, Loader2 as v, Package as y, RotateCcw as b, Search as x, ShoppingBag as S, Star as C, TrendingUp as w, Truck as T, XCircle as E } from "lucide-react";
|
|
12
|
+
import { jsx as D, jsxs as O } from "react/jsx-runtime";
|
|
13
|
+
import { EmphasisPanel as k, PagePurpose as A } from "@burdenoff/fe-libs/ui";
|
|
12
14
|
//#region src/kadaikodi/pages/customer/OrderHistoryPage.tsx
|
|
13
|
-
var
|
|
15
|
+
var j = new Set(["delivered", "cancelled"]), M = 10, N = [
|
|
14
16
|
{
|
|
15
17
|
value: "",
|
|
16
18
|
label: "All Status"
|
|
@@ -43,7 +45,7 @@ var A = 10, j = [
|
|
|
43
45
|
value: "cancelled",
|
|
44
46
|
label: "Cancelled"
|
|
45
47
|
}
|
|
46
|
-
],
|
|
48
|
+
], P = [
|
|
47
49
|
{
|
|
48
50
|
value: "7days",
|
|
49
51
|
label: "Last 7 Days"
|
|
@@ -60,7 +62,7 @@ var A = 10, j = [
|
|
|
60
62
|
value: "all",
|
|
61
63
|
label: "All Time"
|
|
62
64
|
}
|
|
63
|
-
],
|
|
65
|
+
], F = [
|
|
64
66
|
{
|
|
65
67
|
value: "recent",
|
|
66
68
|
label: "Most Recent"
|
|
@@ -78,15 +80,15 @@ var A = 10, j = [
|
|
|
78
80
|
label: "Amount: Low to High"
|
|
79
81
|
}
|
|
80
82
|
];
|
|
81
|
-
function
|
|
82
|
-
let { navigateTo:
|
|
83
|
+
function I() {
|
|
84
|
+
let { navigateTo: I, currentUser: L } = e(), [R, z] = u(M), [B, V] = u("active"), [H, U] = u({
|
|
83
85
|
status: "",
|
|
84
86
|
dateRange: "30days",
|
|
85
87
|
searchQuery: "",
|
|
86
88
|
sortBy: "recent"
|
|
87
|
-
}), { data:
|
|
88
|
-
let e =
|
|
89
|
-
for (let e of
|
|
89
|
+
}), { data: W = [], isLoading: G, isError: K } = i({ customerId: L?.id }), q = l(() => {
|
|
90
|
+
let e = W.length, t = W.reduce((e, t) => e + t.total, 0), n = e > 0 ? Math.round(t / e) : 0, r = W.filter((e) => new Date(e.orderDate) > /* @__PURE__ */ new Date(Date.now() - 10080 * 60 * 1e3)).length, i = {};
|
|
91
|
+
for (let e of W) i[e.cartName] = (i[e.cartName] || 0) + 1;
|
|
90
92
|
return {
|
|
91
93
|
totalOrders: e,
|
|
92
94
|
totalSpent: t,
|
|
@@ -94,11 +96,11 @@ function P() {
|
|
|
94
96
|
recentOrdersCount: r,
|
|
95
97
|
favoriteCart: Object.entries(i).sort((e, t) => t[1] - e[1])[0]?.[0] || "No orders yet"
|
|
96
98
|
};
|
|
97
|
-
}, [
|
|
98
|
-
let e = [...
|
|
99
|
-
if (
|
|
99
|
+
}, [W]), J = l(() => W.filter((e) => !j.has(e.status)).length, [W]), Y = l(() => W.filter((e) => j.has(e.status)).length, [W]), X = l(() => {
|
|
100
|
+
let e = [...W];
|
|
101
|
+
if (e = e.filter((e) => B === "past" ? j.has(e.status) : !j.has(e.status)), H.status && (e = e.filter((e) => e.status === H.status)), H.dateRange !== "all") {
|
|
100
102
|
let t = /* @__PURE__ */ new Date(), n = /* @__PURE__ */ new Date();
|
|
101
|
-
switch (
|
|
103
|
+
switch (H.dateRange) {
|
|
102
104
|
case "7days":
|
|
103
105
|
n.setDate(t.getDate() - 7);
|
|
104
106
|
break;
|
|
@@ -111,11 +113,11 @@ function P() {
|
|
|
111
113
|
}
|
|
112
114
|
e = e.filter((e) => new Date(e.orderDate) >= n);
|
|
113
115
|
}
|
|
114
|
-
if (
|
|
115
|
-
let t =
|
|
116
|
+
if (H.searchQuery) {
|
|
117
|
+
let t = H.searchQuery.toLowerCase();
|
|
116
118
|
e = e.filter((e) => e.id.toLowerCase().includes(t) || e.cartName.toLowerCase().includes(t) || e.items.some((e) => e.name.toLowerCase().includes(t)));
|
|
117
119
|
}
|
|
118
|
-
switch (
|
|
120
|
+
switch (H.sortBy) {
|
|
119
121
|
case "recent":
|
|
120
122
|
e.sort((e, t) => new Date(t.orderDate).getTime() - new Date(e.orderDate).getTime());
|
|
121
123
|
break;
|
|
@@ -130,33 +132,37 @@ function P() {
|
|
|
130
132
|
break;
|
|
131
133
|
}
|
|
132
134
|
return e;
|
|
133
|
-
}, [
|
|
134
|
-
|
|
135
|
+
}, [
|
|
136
|
+
W,
|
|
137
|
+
H,
|
|
138
|
+
B
|
|
139
|
+
]), Z = l(() => X.slice(0, R), [X, R]), Q = R < X.length, $ = (e, t) => {
|
|
140
|
+
U((n) => ({
|
|
135
141
|
...n,
|
|
136
142
|
[e]: t
|
|
137
|
-
})),
|
|
138
|
-
},
|
|
139
|
-
|
|
143
|
+
})), z(M);
|
|
144
|
+
}, ee = (e) => {
|
|
145
|
+
I(`/customer/cart/${e.cartId}`);
|
|
140
146
|
};
|
|
141
|
-
return
|
|
147
|
+
return G ? /* @__PURE__ */ D(t, {
|
|
142
148
|
title: "Order History",
|
|
143
149
|
description: "Loading your orders...",
|
|
144
|
-
children: /* @__PURE__ */
|
|
150
|
+
children: /* @__PURE__ */ D("div", {
|
|
145
151
|
className: "flex h-[60vh] items-center justify-center",
|
|
146
|
-
children: /* @__PURE__ */
|
|
152
|
+
children: /* @__PURE__ */ D(v, { className: "h-8 w-8 animate-spin text-primary" })
|
|
147
153
|
})
|
|
148
|
-
}) :
|
|
154
|
+
}) : K ? /* @__PURE__ */ D(t, {
|
|
149
155
|
title: "Order History",
|
|
150
156
|
description: "Error loading orders",
|
|
151
|
-
children: /* @__PURE__ */
|
|
157
|
+
children: /* @__PURE__ */ O("div", {
|
|
152
158
|
className: "flex h-[60vh] flex-col items-center justify-center gap-4",
|
|
153
159
|
children: [
|
|
154
|
-
/* @__PURE__ */
|
|
155
|
-
/* @__PURE__ */
|
|
160
|
+
/* @__PURE__ */ D(d, { className: "h-12 w-12 text-status-error-text" }),
|
|
161
|
+
/* @__PURE__ */ D("h2", {
|
|
156
162
|
className: "text-xl font-semibold",
|
|
157
163
|
children: "Error loading your orders"
|
|
158
164
|
}),
|
|
159
|
-
/* @__PURE__ */
|
|
165
|
+
/* @__PURE__ */ D("button", {
|
|
160
166
|
type: "button",
|
|
161
167
|
onClick: () => window.location.reload(),
|
|
162
168
|
className: "rounded-lg bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text",
|
|
@@ -164,125 +170,146 @@ function P() {
|
|
|
164
170
|
})
|
|
165
171
|
]
|
|
166
172
|
})
|
|
167
|
-
}) : /* @__PURE__ */
|
|
173
|
+
}) : /* @__PURE__ */ O(t, {
|
|
168
174
|
title: "Order History",
|
|
169
175
|
description: "View all your past and current orders",
|
|
170
176
|
children: [
|
|
171
|
-
/* @__PURE__ */
|
|
177
|
+
/* @__PURE__ */ D(A, {
|
|
172
178
|
className: "mb-6",
|
|
173
179
|
children: "A complete record of everything you've ordered — search and filter past orders, reorder a favourite in one tap, track what's still on the way, and see how much you've spent over time."
|
|
174
180
|
}),
|
|
175
|
-
/* @__PURE__ */
|
|
181
|
+
/* @__PURE__ */ D("div", {
|
|
182
|
+
className: "mb-6",
|
|
183
|
+
children: /* @__PURE__ */ D(s, {
|
|
184
|
+
fill: !0,
|
|
185
|
+
"aria-label": "Order view",
|
|
186
|
+
className: "max-w-sm",
|
|
187
|
+
tabs: [{
|
|
188
|
+
id: "active",
|
|
189
|
+
label: "Active",
|
|
190
|
+
count: J || void 0
|
|
191
|
+
}, {
|
|
192
|
+
id: "past",
|
|
193
|
+
label: "Past",
|
|
194
|
+
count: Y || void 0
|
|
195
|
+
}],
|
|
196
|
+
value: B,
|
|
197
|
+
onChange: (e) => {
|
|
198
|
+
V(e), z(M);
|
|
199
|
+
}
|
|
200
|
+
})
|
|
201
|
+
}),
|
|
202
|
+
/* @__PURE__ */ D(k, {
|
|
176
203
|
className: "mb-6",
|
|
177
|
-
children: /* @__PURE__ */
|
|
204
|
+
children: /* @__PURE__ */ O("div", {
|
|
178
205
|
className: "grid grid-cols-2 md:grid-cols-3 lg:grid-cols-5 gap-3",
|
|
179
206
|
children: [
|
|
180
|
-
/* @__PURE__ */
|
|
207
|
+
/* @__PURE__ */ O("div", {
|
|
181
208
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-3.5",
|
|
182
|
-
children: [/* @__PURE__ */
|
|
209
|
+
children: [/* @__PURE__ */ O("div", {
|
|
183
210
|
className: "flex items-center gap-2 mb-1",
|
|
184
|
-
children: [/* @__PURE__ */
|
|
211
|
+
children: [/* @__PURE__ */ D(y, { className: "h-3.5 w-3.5 text-text-secondary" }), /* @__PURE__ */ D("p", {
|
|
185
212
|
className: "text-xs text-text-secondary",
|
|
186
213
|
children: "Total Orders"
|
|
187
214
|
})]
|
|
188
|
-
}), /* @__PURE__ */
|
|
215
|
+
}), /* @__PURE__ */ D("p", {
|
|
189
216
|
className: "text-xl font-bold text-text-primary",
|
|
190
|
-
children:
|
|
217
|
+
children: q.totalOrders
|
|
191
218
|
})]
|
|
192
219
|
}),
|
|
193
|
-
/* @__PURE__ */
|
|
220
|
+
/* @__PURE__ */ O("div", {
|
|
194
221
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-3.5",
|
|
195
|
-
children: [/* @__PURE__ */
|
|
222
|
+
children: [/* @__PURE__ */ O("div", {
|
|
196
223
|
className: "flex items-center gap-2 mb-1",
|
|
197
|
-
children: [/* @__PURE__ */
|
|
224
|
+
children: [/* @__PURE__ */ D(_, { className: "h-3.5 w-3.5 text-text-secondary" }), /* @__PURE__ */ D("p", {
|
|
198
225
|
className: "text-xs text-text-secondary",
|
|
199
226
|
children: "Total Spent"
|
|
200
227
|
})]
|
|
201
|
-
}), /* @__PURE__ */
|
|
228
|
+
}), /* @__PURE__ */ D("p", {
|
|
202
229
|
className: "text-xl font-bold text-text-primary",
|
|
203
|
-
children: a(
|
|
230
|
+
children: a(q.totalSpent, { minimumFractionDigits: 0 })
|
|
204
231
|
})]
|
|
205
232
|
}),
|
|
206
|
-
/* @__PURE__ */
|
|
233
|
+
/* @__PURE__ */ O("div", {
|
|
207
234
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-3.5",
|
|
208
|
-
children: [/* @__PURE__ */
|
|
235
|
+
children: [/* @__PURE__ */ O("div", {
|
|
209
236
|
className: "flex items-center gap-2 mb-1",
|
|
210
|
-
children: [/* @__PURE__ */
|
|
237
|
+
children: [/* @__PURE__ */ D(w, { className: "h-3.5 w-3.5 text-text-secondary" }), /* @__PURE__ */ D("p", {
|
|
211
238
|
className: "text-xs text-text-secondary",
|
|
212
239
|
children: "Average Order"
|
|
213
240
|
})]
|
|
214
|
-
}), /* @__PURE__ */
|
|
241
|
+
}), /* @__PURE__ */ D("p", {
|
|
215
242
|
className: "text-xl font-bold text-text-primary",
|
|
216
|
-
children: a(
|
|
243
|
+
children: a(q.averageOrderValue, { minimumFractionDigits: 0 })
|
|
217
244
|
})]
|
|
218
245
|
}),
|
|
219
|
-
/* @__PURE__ */
|
|
246
|
+
/* @__PURE__ */ O("div", {
|
|
220
247
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-3.5",
|
|
221
|
-
children: [/* @__PURE__ */
|
|
248
|
+
children: [/* @__PURE__ */ O("div", {
|
|
222
249
|
className: "flex items-center gap-2 mb-1",
|
|
223
|
-
children: [/* @__PURE__ */
|
|
250
|
+
children: [/* @__PURE__ */ D(m, { className: "h-3.5 w-3.5 text-text-secondary" }), /* @__PURE__ */ D("p", {
|
|
224
251
|
className: "text-xs text-text-secondary",
|
|
225
252
|
children: "Recent Orders"
|
|
226
253
|
})]
|
|
227
|
-
}), /* @__PURE__ */
|
|
254
|
+
}), /* @__PURE__ */ D("p", {
|
|
228
255
|
className: "text-xl font-bold text-text-primary",
|
|
229
|
-
children:
|
|
256
|
+
children: q.recentOrdersCount
|
|
230
257
|
})]
|
|
231
258
|
}),
|
|
232
|
-
/* @__PURE__ */
|
|
259
|
+
/* @__PURE__ */ O("div", {
|
|
233
260
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-3.5 col-span-2 md:col-span-1",
|
|
234
|
-
children: [/* @__PURE__ */
|
|
261
|
+
children: [/* @__PURE__ */ O("div", {
|
|
235
262
|
className: "flex items-center gap-2 mb-1",
|
|
236
|
-
children: [/* @__PURE__ */
|
|
263
|
+
children: [/* @__PURE__ */ D(g, { className: "h-3.5 w-3.5 text-text-secondary" }), /* @__PURE__ */ D("p", {
|
|
237
264
|
className: "text-xs text-text-secondary",
|
|
238
265
|
children: "Favorite Cart"
|
|
239
266
|
})]
|
|
240
|
-
}), /* @__PURE__ */
|
|
267
|
+
}), /* @__PURE__ */ D("p", {
|
|
241
268
|
className: "text-sm font-bold text-text-primary truncate",
|
|
242
|
-
children:
|
|
269
|
+
children: q.favoriteCart
|
|
243
270
|
})]
|
|
244
271
|
})
|
|
245
272
|
]
|
|
246
273
|
})
|
|
247
274
|
}),
|
|
248
|
-
/* @__PURE__ */
|
|
275
|
+
/* @__PURE__ */ D("div", {
|
|
249
276
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-4 mb-6",
|
|
250
|
-
children: /* @__PURE__ */
|
|
277
|
+
children: /* @__PURE__ */ O("div", {
|
|
251
278
|
className: "grid grid-cols-1 md:grid-cols-4 gap-3",
|
|
252
279
|
children: [
|
|
253
|
-
/* @__PURE__ */
|
|
280
|
+
/* @__PURE__ */ O("div", {
|
|
254
281
|
className: "relative",
|
|
255
|
-
children: [/* @__PURE__ */
|
|
282
|
+
children: [/* @__PURE__ */ D(x, { className: "absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-text-secondary" }), /* @__PURE__ */ D("input", {
|
|
256
283
|
type: "text",
|
|
257
284
|
placeholder: "Search orders...",
|
|
258
|
-
value:
|
|
259
|
-
onChange: (e) =>
|
|
285
|
+
value: H.searchQuery,
|
|
286
|
+
onChange: (e) => $("searchQuery", e.target.value),
|
|
260
287
|
className: "w-full rounded-lg border border-border-subtle bg-bg-surface pl-9 pr-3 py-2.5 text-sm text-text-primary placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
|
|
261
288
|
})]
|
|
262
289
|
}),
|
|
263
|
-
/* @__PURE__ */
|
|
264
|
-
value:
|
|
265
|
-
onChange: (e) =>
|
|
290
|
+
/* @__PURE__ */ D("select", {
|
|
291
|
+
value: H.status,
|
|
292
|
+
onChange: (e) => $("status", e.target.value),
|
|
266
293
|
className: "w-full rounded-lg border border-border-subtle bg-bg-surface px-3 py-2.5 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
267
|
-
children:
|
|
294
|
+
children: N.map((e) => /* @__PURE__ */ D("option", {
|
|
268
295
|
value: e.value,
|
|
269
296
|
children: e.label
|
|
270
297
|
}, e.value))
|
|
271
298
|
}),
|
|
272
|
-
/* @__PURE__ */
|
|
273
|
-
value:
|
|
274
|
-
onChange: (e) =>
|
|
299
|
+
/* @__PURE__ */ D("select", {
|
|
300
|
+
value: H.dateRange,
|
|
301
|
+
onChange: (e) => $("dateRange", e.target.value),
|
|
275
302
|
className: "w-full rounded-lg border border-border-subtle bg-bg-surface px-3 py-2.5 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
276
|
-
children:
|
|
303
|
+
children: P.map((e) => /* @__PURE__ */ D("option", {
|
|
277
304
|
value: e.value,
|
|
278
305
|
children: e.label
|
|
279
306
|
}, e.value))
|
|
280
307
|
}),
|
|
281
|
-
/* @__PURE__ */
|
|
282
|
-
value:
|
|
283
|
-
onChange: (e) =>
|
|
308
|
+
/* @__PURE__ */ D("select", {
|
|
309
|
+
value: H.sortBy,
|
|
310
|
+
onChange: (e) => $("sortBy", e.target.value),
|
|
284
311
|
className: "w-full rounded-lg border border-border-subtle bg-bg-surface px-3 py-2.5 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
285
|
-
children:
|
|
312
|
+
children: F.map((e) => /* @__PURE__ */ D("option", {
|
|
286
313
|
value: e.value,
|
|
287
314
|
children: e.label
|
|
288
315
|
}, e.value))
|
|
@@ -290,40 +317,43 @@ function P() {
|
|
|
290
317
|
]
|
|
291
318
|
})
|
|
292
319
|
}),
|
|
293
|
-
|
|
320
|
+
G ? /* @__PURE__ */ O("div", {
|
|
294
321
|
className: "flex flex-col items-center justify-center py-12 text-center",
|
|
295
|
-
children: [/* @__PURE__ */
|
|
322
|
+
children: [/* @__PURE__ */ D("div", { className: "animate-spin rounded-full h-12 w-12 border-b-2 border-foreground mx-auto mb-4" }), /* @__PURE__ */ D("p", {
|
|
296
323
|
className: "text-sm text-text-secondary",
|
|
297
324
|
children: "Loading orders..."
|
|
298
325
|
})]
|
|
299
|
-
}) :
|
|
300
|
-
icon: /* @__PURE__ */
|
|
326
|
+
}) : Z.length === 0 ? /* @__PURE__ */ D(r, {
|
|
327
|
+
icon: /* @__PURE__ */ D(S, { className: "h-12 w-12" }),
|
|
301
328
|
title: "No orders found",
|
|
302
|
-
description:
|
|
303
|
-
action: /* @__PURE__ */
|
|
329
|
+
description: H.searchQuery || H.status ? "Try adjusting your filters" : "You haven't placed any orders yet",
|
|
330
|
+
action: /* @__PURE__ */ D("button", {
|
|
304
331
|
type: "button",
|
|
305
|
-
onClick: () =>
|
|
332
|
+
onClick: () => I("/customer/discover"),
|
|
306
333
|
className: "rounded-lg bg-foreground px-4 py-2 text-sm font-medium text-background hover:opacity-90 transition-opacity",
|
|
307
334
|
children: "Start Ordering"
|
|
308
335
|
})
|
|
309
|
-
}) : /* @__PURE__ */
|
|
336
|
+
}) : /* @__PURE__ */ D("div", {
|
|
310
337
|
className: "space-y-4",
|
|
311
|
-
children:
|
|
338
|
+
children: Z.map((e) => /* @__PURE__ */ D("div", {
|
|
312
339
|
className: "rounded-lg border border-border-subtle bg-bg-surface hover:shadow-md transition-shadow",
|
|
313
|
-
children: /* @__PURE__ */
|
|
340
|
+
children: /* @__PURE__ */ O("div", {
|
|
314
341
|
className: "p-4 md:p-5",
|
|
315
342
|
children: [
|
|
316
|
-
/* @__PURE__ */
|
|
343
|
+
/* @__PURE__ */ O("div", {
|
|
317
344
|
className: "flex flex-col md:flex-row md:items-center justify-between mb-3",
|
|
318
|
-
children: [/* @__PURE__ */
|
|
319
|
-
className: "mb-3 md:mb-0",
|
|
345
|
+
children: [/* @__PURE__ */ O("div", {
|
|
346
|
+
className: "mb-3 md:mb-0 flex items-start gap-3",
|
|
320
347
|
children: [/* @__PURE__ */ D("div", {
|
|
348
|
+
className: "flex h-11 w-11 shrink-0 items-center justify-center rounded-xl bg-[var(--color-accent-soft)] text-accent-primary",
|
|
349
|
+
children: /* @__PURE__ */ D(S, { className: "h-5 w-5" })
|
|
350
|
+
}), /* @__PURE__ */ O("div", { children: [/* @__PURE__ */ O("div", {
|
|
321
351
|
className: "flex flex-col sm:flex-row sm:items-center gap-2",
|
|
322
|
-
children: [/* @__PURE__ */
|
|
352
|
+
children: [/* @__PURE__ */ D("h3", {
|
|
323
353
|
className: "text-base font-semibold text-text-primary",
|
|
324
354
|
children: e.cartName
|
|
325
|
-
}), /* @__PURE__ */
|
|
326
|
-
}), /* @__PURE__ */
|
|
355
|
+
}), /* @__PURE__ */ D(n, { status: e.status })]
|
|
356
|
+
}), /* @__PURE__ */ O("p", {
|
|
327
357
|
className: "text-xs text-text-secondary mt-1",
|
|
328
358
|
children: [
|
|
329
359
|
"Order #",
|
|
@@ -331,33 +361,42 @@ function P() {
|
|
|
331
361
|
" · ",
|
|
332
362
|
o(e.orderDate)
|
|
333
363
|
]
|
|
334
|
-
})]
|
|
335
|
-
}), /* @__PURE__ */
|
|
364
|
+
})] })]
|
|
365
|
+
}), /* @__PURE__ */ O("div", {
|
|
336
366
|
className: "flex flex-col sm:flex-row sm:items-center gap-2",
|
|
337
|
-
children: [/* @__PURE__ */
|
|
367
|
+
children: [/* @__PURE__ */ D("p", {
|
|
338
368
|
className: "text-lg font-bold text-text-primary",
|
|
339
369
|
children: a(e.total, { minimumFractionDigits: 0 })
|
|
340
|
-
}), /* @__PURE__ */
|
|
341
|
-
className: "flex gap-2",
|
|
342
|
-
children: [
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
370
|
+
}), /* @__PURE__ */ O("div", {
|
|
371
|
+
className: "flex flex-wrap gap-2",
|
|
372
|
+
children: [
|
|
373
|
+
!j.has(e.status) && /* @__PURE__ */ O("button", {
|
|
374
|
+
type: "button",
|
|
375
|
+
onClick: () => I(`/customer/orders/${e.id}/track`),
|
|
376
|
+
className: "flex items-center gap-1.5 rounded-lg border border-border-subtle px-3 py-1.5 text-xs font-medium text-text-primary hover:bg-accent transition-colors",
|
|
377
|
+
children: [/* @__PURE__ */ D(h, { className: "h-3 w-3" }), "Track Order"]
|
|
378
|
+
}),
|
|
379
|
+
j.has(e.status) && /* @__PURE__ */ O("button", {
|
|
380
|
+
type: "button",
|
|
381
|
+
onClick: () => ee(e),
|
|
382
|
+
className: "flex items-center gap-1.5 rounded-lg bg-action-primary-bg px-3 py-1.5 text-xs font-semibold text-action-primary-text hover:bg-action-primary-bg-hover transition-colors",
|
|
383
|
+
children: [/* @__PURE__ */ D(b, { className: "h-3 w-3" }), "Reorder"]
|
|
384
|
+
}),
|
|
385
|
+
e.status === "delivered" && !e.rating && /* @__PURE__ */ O("button", {
|
|
386
|
+
type: "button",
|
|
387
|
+
onClick: () => I(`/customer/orders/${e.id}/track`),
|
|
388
|
+
className: "flex items-center gap-1.5 rounded-lg border border-action-primary-bg px-3 py-1.5 text-xs font-semibold text-accent-primary hover:bg-[var(--color-accent-soft)] transition-colors",
|
|
389
|
+
children: [/* @__PURE__ */ D(C, { className: "h-3 w-3" }), "Rate"]
|
|
390
|
+
})
|
|
391
|
+
]
|
|
353
392
|
})]
|
|
354
393
|
})]
|
|
355
394
|
}),
|
|
356
|
-
/* @__PURE__ */
|
|
395
|
+
/* @__PURE__ */ D("div", {
|
|
357
396
|
className: "border-t border-border-subtle pt-3",
|
|
358
|
-
children: /* @__PURE__ */
|
|
397
|
+
children: /* @__PURE__ */ O("div", {
|
|
359
398
|
className: "flex flex-wrap gap-1",
|
|
360
|
-
children: [e.items.slice(0, 3).map((t, n) => /* @__PURE__ */
|
|
399
|
+
children: [e.items.slice(0, 3).map((t, n) => /* @__PURE__ */ O("span", {
|
|
361
400
|
className: "text-xs text-text-secondary",
|
|
362
401
|
children: [
|
|
363
402
|
t.name,
|
|
@@ -366,7 +405,7 @@ function P() {
|
|
|
366
405
|
")",
|
|
367
406
|
n < Math.min(2, e.items.length - 1) && ", "
|
|
368
407
|
]
|
|
369
|
-
}, n)), e.items.length > 3 && /* @__PURE__ */
|
|
408
|
+
}, n)), e.items.length > 3 && /* @__PURE__ */ O("span", {
|
|
370
409
|
className: "text-xs text-text-secondary",
|
|
371
410
|
children: [
|
|
372
411
|
"+",
|
|
@@ -376,16 +415,16 @@ function P() {
|
|
|
376
415
|
})]
|
|
377
416
|
})
|
|
378
417
|
}),
|
|
379
|
-
/* @__PURE__ */
|
|
418
|
+
/* @__PURE__ */ O("div", {
|
|
380
419
|
className: "mt-3",
|
|
381
420
|
children: [
|
|
382
|
-
e.status === "delivered" && /* @__PURE__ */
|
|
421
|
+
e.status === "delivered" && /* @__PURE__ */ O("div", {
|
|
383
422
|
className: "flex items-center gap-1.5 text-xs text-status-success-text",
|
|
384
|
-
children: [/* @__PURE__ */
|
|
423
|
+
children: [/* @__PURE__ */ D(f, { className: "h-3 w-3" }), /* @__PURE__ */ D("span", { children: "Order delivered successfully" })]
|
|
385
424
|
}),
|
|
386
|
-
e.status === "cancelled" && /* @__PURE__ */
|
|
425
|
+
e.status === "cancelled" && /* @__PURE__ */ O("div", {
|
|
387
426
|
className: "flex items-center gap-1.5 text-xs text-status-error-text",
|
|
388
|
-
children: [/* @__PURE__ */ E
|
|
427
|
+
children: [/* @__PURE__ */ D(E, { className: "h-3 w-3" }), /* @__PURE__ */ O("span", { children: ["Cancelled", e.cancellationReason && ` - ${e.cancellationReason}`] })]
|
|
389
428
|
}),
|
|
390
429
|
[
|
|
391
430
|
"pending",
|
|
@@ -393,9 +432,9 @@ function P() {
|
|
|
393
432
|
"preparing",
|
|
394
433
|
"ready",
|
|
395
434
|
"out_for_delivery"
|
|
396
|
-
].includes(e.status) && /* @__PURE__ */
|
|
435
|
+
].includes(e.status) && /* @__PURE__ */ O("div", {
|
|
397
436
|
className: "flex items-center gap-1.5 text-xs text-text-primary",
|
|
398
|
-
children: [/* @__PURE__ */
|
|
437
|
+
children: [/* @__PURE__ */ D(T, { className: "h-3 w-3" }), /* @__PURE__ */ O("span", { children: [
|
|
399
438
|
"Estimated delivery by",
|
|
400
439
|
" ",
|
|
401
440
|
e.estimatedDeliveryTime ? o(e.estimatedDeliveryTime) : "TBD"
|
|
@@ -403,11 +442,11 @@ function P() {
|
|
|
403
442
|
})
|
|
404
443
|
]
|
|
405
444
|
}),
|
|
406
|
-
e.status === "delivered" && /* @__PURE__ */
|
|
445
|
+
e.status === "delivered" && /* @__PURE__ */ D("div", {
|
|
407
446
|
className: "mt-3 flex flex-col sm:flex-row sm:items-center justify-between gap-2",
|
|
408
|
-
children: e.rating ? /* @__PURE__ */
|
|
447
|
+
children: e.rating ? /* @__PURE__ */ O("div", {
|
|
409
448
|
className: "flex flex-col sm:flex-row sm:items-center gap-2",
|
|
410
|
-
children: [/* @__PURE__ */
|
|
449
|
+
children: [/* @__PURE__ */ D(c, { value: e.rating }), e.review && /* @__PURE__ */ O("p", {
|
|
411
450
|
className: "text-xs text-text-secondary italic",
|
|
412
451
|
children: [
|
|
413
452
|
"“",
|
|
@@ -415,32 +454,32 @@ function P() {
|
|
|
415
454
|
"”"
|
|
416
455
|
]
|
|
417
456
|
})]
|
|
418
|
-
}) : /* @__PURE__ */
|
|
457
|
+
}) : /* @__PURE__ */ O("button", {
|
|
419
458
|
type: "button",
|
|
420
|
-
onClick: () =>
|
|
459
|
+
onClick: () => I(`/customer/orders/${e.id}/track`),
|
|
421
460
|
className: "flex items-center gap-1.5 rounded-lg border border-border-subtle px-3 py-1.5 text-xs font-medium text-text-primary hover:bg-accent transition-colors",
|
|
422
|
-
children: [/* @__PURE__ */
|
|
461
|
+
children: [/* @__PURE__ */ D(C, { className: "h-3 w-3" }), "Rate Order"]
|
|
423
462
|
})
|
|
424
463
|
})
|
|
425
464
|
]
|
|
426
465
|
})
|
|
427
466
|
}, e.id))
|
|
428
467
|
}),
|
|
429
|
-
|
|
468
|
+
Q && !G && /* @__PURE__ */ D("div", {
|
|
430
469
|
className: "text-center mt-8",
|
|
431
|
-
children: /* @__PURE__ */
|
|
470
|
+
children: /* @__PURE__ */ O("button", {
|
|
432
471
|
type: "button",
|
|
433
472
|
onClick: () => {
|
|
434
|
-
|
|
473
|
+
z((e) => e + M);
|
|
435
474
|
},
|
|
436
475
|
className: "inline-flex items-center gap-2 rounded-lg border border-border-subtle px-6 py-2.5 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
|
|
437
|
-
children: [/* @__PURE__ */
|
|
476
|
+
children: [/* @__PURE__ */ D(p, { className: "h-4 w-4" }), "Load More Orders"]
|
|
438
477
|
})
|
|
439
478
|
})
|
|
440
479
|
]
|
|
441
480
|
});
|
|
442
481
|
}
|
|
443
482
|
//#endregion
|
|
444
|
-
export {
|
|
483
|
+
export { I as OrderHistoryPage };
|
|
445
484
|
|
|
446
485
|
//# sourceMappingURL=OrderHistoryPage.js.map
|