@burdenoff/microfe-kadaikodi 2026.802.1 → 2026.830.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/kadaikodi/KadaikodiRoot.d.ts.map +1 -1
- package/dist/kadaikodi/KadaikodiRoot.js +69 -72
- package/dist/kadaikodi/KadaikodiRoot.js.map +1 -1
- package/dist/kadaikodi/components/InvestmentCard.d.ts.map +1 -1
- package/dist/kadaikodi/components/InvestmentCard.js +58 -54
- package/dist/kadaikodi/components/InvestmentCard.js.map +1 -1
- package/dist/kadaikodi/components/OrderCard.d.ts.map +1 -1
- package/dist/kadaikodi/components/StatusBadge.d.ts.map +1 -1
- package/dist/kadaikodi/components/StatusBadge.js +25 -14
- package/dist/kadaikodi/components/StatusBadge.js.map +1 -1
- package/dist/kadaikodi/hooks/useKadaikodiApi.d.ts +24 -0
- package/dist/kadaikodi/hooks/useKadaikodiApi.d.ts.map +1 -1
- package/dist/kadaikodi/hooks/useKadaikodiApi.js +177 -132
- package/dist/kadaikodi/hooks/useKadaikodiApi.js.map +1 -1
- package/dist/kadaikodi/pages/HomePage.d.ts.map +1 -1
- package/dist/kadaikodi/pages/HomePage.js +284 -282
- package/dist/kadaikodi/pages/HomePage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.d.ts +7 -2
- package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.d.ts.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.js +319 -228
- package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminOrdersPage.js +1 -1
- package/dist/kadaikodi/pages/admin/AdminOrdersPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/CartManagementPage.d.ts +10 -4
- package/dist/kadaikodi/pages/admin/CartManagementPage.d.ts.map +1 -1
- package/dist/kadaikodi/pages/admin/CartManagementPage.js +320 -279
- package/dist/kadaikodi/pages/admin/CartManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/MerchantOnboardingPage.d.ts.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/MerchantOnboardingPage.js +365 -292
- package/dist/kadaikodi/pages/cart-owner/MerchantOnboardingPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.d.ts +7 -2
- package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.d.ts.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.js +300 -158
- package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/common/SettingsPage.js +286 -286
- package/dist/kadaikodi/pages/common/SettingsPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CartDetailPage.d.ts.map +1 -1
- package/dist/kadaikodi/pages/customer/CartDetailPage.js +3 -3
- package/dist/kadaikodi/pages/customer/CartDetailPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CartDiscoveryPage.d.ts +13 -3
- package/dist/kadaikodi/pages/customer/CartDiscoveryPage.d.ts.map +1 -1
- package/dist/kadaikodi/pages/customer/CartDiscoveryPage.js +270 -220
- package/dist/kadaikodi/pages/customer/CartDiscoveryPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CustomerDashboard.js +97 -97
- package/dist/kadaikodi/pages/customer/OrderTrackingPage.d.ts.map +1 -1
- package/dist/kadaikodi/pages/customer/OrderTrackingPage.js +1 -1
- package/dist/kadaikodi/pages/customer/OrderTrackingPage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/TaskDetailsPage.d.ts +5 -3
- package/dist/kadaikodi/pages/worker/TaskDetailsPage.d.ts.map +1 -1
- package/dist/kadaikodi/pages/worker/TaskDetailsPage.js +286 -199
- package/dist/kadaikodi/pages/worker/TaskDetailsPage.js.map +1 -1
- package/dist/kadaikodi/types/index.d.ts +46 -2
- package/dist/kadaikodi/types/index.d.ts.map +1 -1
- package/dist/shared/hooks/useTr.d.ts +2 -0
- package/dist/shared/hooks/useTr.d.ts.map +1 -0
- package/dist/shared/hooks/useTr.js +14 -0
- package/dist/shared/hooks/useTr.js.map +1 -0
- package/package.json +2 -2
|
@@ -2,43 +2,47 @@ import { useKadaikodi as e } from "../../context/KadaikodiContext.js";
|
|
|
2
2
|
import { cn as t } from "../../utils/cn.js";
|
|
3
3
|
import { PageLayout as n } from "../../components/PageLayout.js";
|
|
4
4
|
import { EmptyState as r } from "../../components/EmptyState.js";
|
|
5
|
-
import { useInvestmentOpportunities as
|
|
6
|
-
import { formatCurrency as
|
|
7
|
-
import { RatingStars as
|
|
8
|
-
import { SegmentedTabs as
|
|
5
|
+
import { useInvestmentOpportunities as ee, useProviders as i } from "../../hooks/useKadaikodiApi.js";
|
|
6
|
+
import { formatCurrency as a, formatDistance as o } from "../../utils/formatters.js";
|
|
7
|
+
import { RatingStars as te } from "../../components/viz/RatingStars.js";
|
|
8
|
+
import { SegmentedTabs as ne } from "../../components/viz/SegmentedTabs.js";
|
|
9
9
|
import "../../components/viz/index.js";
|
|
10
|
-
import { ProviderImage as
|
|
11
|
-
import { useMemo as
|
|
12
|
-
import { AlertCircle as
|
|
13
|
-
import { Fragment as
|
|
14
|
-
import { EmphasisPanel as
|
|
10
|
+
import { ProviderImage as s, useFavorites as c } from "./shared.js";
|
|
11
|
+
import { useMemo as l, useState as u } from "react";
|
|
12
|
+
import { AlertCircle as d, Calendar as f, CheckCircle2 as p, Clock as m, Heart as re, Home as h, Info as ie, Loader2 as g, MapPin as _, Search as v, Star as y, Tag as b, TrendingUp as x, X as S } from "lucide-react";
|
|
13
|
+
import { Fragment as ae, jsx as C, jsxs as w } from "react/jsx-runtime";
|
|
14
|
+
import { EmphasisPanel as T, PagePurpose as E } from "@burdenoff/fe-libs/ui";
|
|
15
15
|
//#region src/kadaikodi/pages/customer/CartDiscoveryPage.tsx
|
|
16
|
-
var
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
var D = "All", O = {
|
|
17
|
+
low: "Under ₹300",
|
|
18
|
+
medium: "₹300 – ₹800",
|
|
19
|
+
high: "₹800+"
|
|
20
|
+
};
|
|
21
|
+
function k() {
|
|
22
|
+
let { navigateTo: k } = e(), [A, j] = u(""), [M, N] = u(D), [P, F] = u(""), [I, L] = u(""), [R, z] = u(!1), [B, V] = u("rating"), [H, U] = u(9), [W, G] = u(!1), [K, q] = u(null), { data: J = [], isLoading: oe, isError: se } = i(), { data: ce = [] } = ee(), Y = c(), le = l(() => {
|
|
19
23
|
let e = /* @__PURE__ */ new Set();
|
|
20
|
-
return
|
|
24
|
+
return J.forEach((t) => {
|
|
21
25
|
t.category && e.add(t.category);
|
|
22
|
-
}), [
|
|
23
|
-
}, [
|
|
24
|
-
let e = [...
|
|
25
|
-
if (
|
|
26
|
-
let t =
|
|
26
|
+
}), [D, ...Array.from(e)];
|
|
27
|
+
}, [J]), X = l(() => {
|
|
28
|
+
let e = [...J];
|
|
29
|
+
if (A.trim()) {
|
|
30
|
+
let t = A.toLowerCase();
|
|
27
31
|
e = e.filter((e) => e.name.toLowerCase().includes(t) || e.category.toLowerCase().includes(t));
|
|
28
32
|
}
|
|
29
|
-
if (
|
|
30
|
-
let t = parseFloat(
|
|
33
|
+
if (M !== D && (e = e.filter((e) => e.category === M)), P) {
|
|
34
|
+
let t = parseFloat(P);
|
|
31
35
|
e = e.filter((e) => e.rating >= t);
|
|
32
36
|
}
|
|
33
|
-
switch (
|
|
37
|
+
switch (I && (e = e.filter((e) => {
|
|
34
38
|
let t = e.averageOrderValue ?? 0;
|
|
35
|
-
switch (
|
|
39
|
+
switch (I) {
|
|
36
40
|
case "low": return t <= 300;
|
|
37
41
|
case "medium": return t > 300 && t <= 800;
|
|
38
42
|
case "high": return t > 800;
|
|
39
43
|
default: return !0;
|
|
40
44
|
}
|
|
41
|
-
})),
|
|
45
|
+
})), R && (e = e.filter((e) => e.isOpen)), B) {
|
|
42
46
|
case "rating":
|
|
43
47
|
e.sort((e, t) => t.rating - e.rating);
|
|
44
48
|
break;
|
|
@@ -54,34 +58,64 @@ function A() {
|
|
|
54
58
|
}
|
|
55
59
|
return e;
|
|
56
60
|
}, [
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
61
|
+
J,
|
|
62
|
+
A,
|
|
63
|
+
M,
|
|
64
|
+
P,
|
|
65
|
+
I,
|
|
66
|
+
R,
|
|
67
|
+
B
|
|
68
|
+
]), Z = X.slice(0, H), ue = H < X.length, Q = l(() => {
|
|
69
|
+
let e = [];
|
|
70
|
+
return A.trim() && e.push({
|
|
71
|
+
id: "search",
|
|
72
|
+
label: `"${A.trim()}"`,
|
|
73
|
+
clear: () => j("")
|
|
74
|
+
}), M !== D && e.push({
|
|
75
|
+
id: "category",
|
|
76
|
+
label: M,
|
|
77
|
+
clear: () => N(D)
|
|
78
|
+
}), P && e.push({
|
|
79
|
+
id: "rating",
|
|
80
|
+
label: `${P}+ stars`,
|
|
81
|
+
clear: () => F("")
|
|
82
|
+
}), I && e.push({
|
|
83
|
+
id: "price",
|
|
84
|
+
label: O[I],
|
|
85
|
+
clear: () => L("")
|
|
86
|
+
}), R && e.push({
|
|
87
|
+
id: "open",
|
|
88
|
+
label: "Open now",
|
|
89
|
+
clear: () => z(!1)
|
|
90
|
+
}), e;
|
|
91
|
+
}, [
|
|
92
|
+
A,
|
|
93
|
+
M,
|
|
94
|
+
P,
|
|
95
|
+
I,
|
|
96
|
+
R
|
|
97
|
+
]), de = Q.length > 0, $ = () => {
|
|
98
|
+
j(""), N(D), F(""), L(""), z(!1), V("rating"), U(9);
|
|
65
99
|
};
|
|
66
|
-
return
|
|
100
|
+
return oe ? /* @__PURE__ */ C(n, {
|
|
67
101
|
title: "Discover Carts",
|
|
68
102
|
description: "Finding services and shops near you...",
|
|
69
|
-
children: /* @__PURE__ */
|
|
103
|
+
children: /* @__PURE__ */ C("div", {
|
|
70
104
|
className: "flex h-[60vh] items-center justify-center",
|
|
71
|
-
children: /* @__PURE__ */
|
|
105
|
+
children: /* @__PURE__ */ C(g, { className: "h-8 w-8 animate-spin text-primary" })
|
|
72
106
|
})
|
|
73
|
-
}) :
|
|
107
|
+
}) : se ? /* @__PURE__ */ C(n, {
|
|
74
108
|
title: "Discover Carts",
|
|
75
109
|
description: "Error loading carts",
|
|
76
|
-
children: /* @__PURE__ */
|
|
110
|
+
children: /* @__PURE__ */ w("div", {
|
|
77
111
|
className: "flex h-[60vh] flex-col items-center justify-center gap-4",
|
|
78
112
|
children: [
|
|
79
|
-
/* @__PURE__ */
|
|
80
|
-
/* @__PURE__ */
|
|
113
|
+
/* @__PURE__ */ C(d, { className: "h-12 w-12 text-status-error-text" }),
|
|
114
|
+
/* @__PURE__ */ C("h2", {
|
|
81
115
|
className: "text-xl font-semibold",
|
|
82
116
|
children: "Error loading service providers"
|
|
83
117
|
}),
|
|
84
|
-
/* @__PURE__ */
|
|
118
|
+
/* @__PURE__ */ C("button", {
|
|
85
119
|
type: "button",
|
|
86
120
|
onClick: () => window.location.reload(),
|
|
87
121
|
className: "rounded-lg bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text",
|
|
@@ -89,202 +123,218 @@ function A() {
|
|
|
89
123
|
})
|
|
90
124
|
]
|
|
91
125
|
})
|
|
92
|
-
}) : /* @__PURE__ */
|
|
126
|
+
}) : /* @__PURE__ */ w(n, {
|
|
93
127
|
title: "Discover Carts",
|
|
94
128
|
description: "Find services and shops near you",
|
|
95
|
-
actions: /* @__PURE__ */
|
|
129
|
+
actions: /* @__PURE__ */ w("span", {
|
|
96
130
|
className: "text-sm text-text-secondary",
|
|
97
|
-
children: [
|
|
131
|
+
children: [X.length, " carts found"]
|
|
98
132
|
}),
|
|
99
133
|
children: [
|
|
100
|
-
/* @__PURE__ */
|
|
134
|
+
/* @__PURE__ */ C(E, {
|
|
101
135
|
className: "mb-4",
|
|
102
136
|
children: "Find mobile food carts and shops near you. Search by name, dish or category, then filter by rating and price to land on exactly what you're craving — tap any cart to see its menu and order."
|
|
103
137
|
}),
|
|
104
|
-
/* @__PURE__ */ T
|
|
138
|
+
/* @__PURE__ */ C(T, { children: /* @__PURE__ */ w("div", {
|
|
105
139
|
className: "relative",
|
|
106
140
|
children: [
|
|
107
|
-
/* @__PURE__ */
|
|
108
|
-
/* @__PURE__ */
|
|
141
|
+
/* @__PURE__ */ C(v, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }),
|
|
142
|
+
/* @__PURE__ */ C("input", {
|
|
109
143
|
type: "text",
|
|
110
144
|
placeholder: "Search carts, services, or items...",
|
|
111
|
-
value:
|
|
112
|
-
onChange: (e) =>
|
|
145
|
+
value: A,
|
|
146
|
+
onChange: (e) => j(e.target.value),
|
|
113
147
|
className: t("w-full rounded-lg border border-border-subtle bg-bg-surface py-2.5 pl-10 pr-10 text-sm text-text-primary", "placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]")
|
|
114
148
|
}),
|
|
115
|
-
|
|
149
|
+
A && /* @__PURE__ */ C("button", {
|
|
116
150
|
type: "button",
|
|
117
|
-
onClick: () =>
|
|
151
|
+
onClick: () => j(""),
|
|
118
152
|
className: "absolute right-3 top-1/2 -translate-y-1/2 text-text-secondary hover:text-text-primary",
|
|
119
|
-
children: /* @__PURE__ */
|
|
153
|
+
children: /* @__PURE__ */ C(S, { className: "h-4 w-4" })
|
|
120
154
|
})
|
|
121
155
|
]
|
|
122
156
|
}) }),
|
|
123
|
-
/* @__PURE__ */
|
|
157
|
+
/* @__PURE__ */ C("div", {
|
|
124
158
|
className: "mt-4 -mx-1 overflow-x-auto px-1 pb-1",
|
|
125
|
-
children: /* @__PURE__ */
|
|
159
|
+
children: /* @__PURE__ */ C(ne, {
|
|
126
160
|
"aria-label": "Filter carts by category",
|
|
127
161
|
className: "w-max",
|
|
128
|
-
tabs:
|
|
162
|
+
tabs: le.map((e) => ({
|
|
129
163
|
id: e,
|
|
130
164
|
label: e
|
|
131
165
|
})),
|
|
132
|
-
value:
|
|
133
|
-
onChange:
|
|
166
|
+
value: M,
|
|
167
|
+
onChange: N
|
|
134
168
|
})
|
|
135
169
|
}),
|
|
136
|
-
/* @__PURE__ */
|
|
170
|
+
/* @__PURE__ */ w("div", {
|
|
137
171
|
className: "mt-4 flex flex-wrap items-center gap-3",
|
|
138
172
|
children: [
|
|
139
|
-
/* @__PURE__ */
|
|
140
|
-
value:
|
|
141
|
-
onChange: (e) =>
|
|
173
|
+
/* @__PURE__ */ w("select", {
|
|
174
|
+
value: P,
|
|
175
|
+
onChange: (e) => F(e.target.value),
|
|
142
176
|
className: "rounded-lg border border-border-subtle bg-bg-surface px-3 py-2 text-xs text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
143
177
|
children: [
|
|
144
|
-
/* @__PURE__ */
|
|
178
|
+
/* @__PURE__ */ C("option", {
|
|
145
179
|
value: "",
|
|
146
180
|
children: "Any Rating"
|
|
147
181
|
}),
|
|
148
|
-
/* @__PURE__ */
|
|
182
|
+
/* @__PURE__ */ C("option", {
|
|
149
183
|
value: "4.5",
|
|
150
184
|
children: "4.5+ Stars"
|
|
151
185
|
}),
|
|
152
|
-
/* @__PURE__ */
|
|
186
|
+
/* @__PURE__ */ C("option", {
|
|
153
187
|
value: "4.0",
|
|
154
188
|
children: "4.0+ Stars"
|
|
155
189
|
}),
|
|
156
|
-
/* @__PURE__ */
|
|
190
|
+
/* @__PURE__ */ C("option", {
|
|
157
191
|
value: "3.5",
|
|
158
192
|
children: "3.5+ Stars"
|
|
159
193
|
})
|
|
160
194
|
]
|
|
161
195
|
}),
|
|
162
|
-
/* @__PURE__ */
|
|
163
|
-
value:
|
|
164
|
-
onChange: (e) =>
|
|
196
|
+
/* @__PURE__ */ w("select", {
|
|
197
|
+
value: I,
|
|
198
|
+
onChange: (e) => L(e.target.value),
|
|
165
199
|
className: "rounded-lg border border-border-subtle bg-bg-surface px-3 py-2 text-xs text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
166
200
|
children: [
|
|
167
|
-
/* @__PURE__ */
|
|
201
|
+
/* @__PURE__ */ C("option", {
|
|
168
202
|
value: "",
|
|
169
203
|
children: "Any Price"
|
|
170
204
|
}),
|
|
171
|
-
/* @__PURE__ */
|
|
205
|
+
/* @__PURE__ */ C("option", {
|
|
172
206
|
value: "low",
|
|
173
|
-
children:
|
|
207
|
+
children: O.low
|
|
174
208
|
}),
|
|
175
|
-
/* @__PURE__ */
|
|
209
|
+
/* @__PURE__ */ C("option", {
|
|
176
210
|
value: "medium",
|
|
177
|
-
children:
|
|
211
|
+
children: O.medium
|
|
178
212
|
}),
|
|
179
|
-
/* @__PURE__ */
|
|
213
|
+
/* @__PURE__ */ C("option", {
|
|
180
214
|
value: "high",
|
|
181
|
-
children:
|
|
215
|
+
children: O.high
|
|
182
216
|
})
|
|
183
217
|
]
|
|
184
218
|
}),
|
|
185
|
-
/* @__PURE__ */
|
|
186
|
-
|
|
187
|
-
|
|
219
|
+
/* @__PURE__ */ w("button", {
|
|
220
|
+
type: "button",
|
|
221
|
+
onClick: () => z((e) => !e),
|
|
222
|
+
"aria-pressed": R,
|
|
223
|
+
className: t("inline-flex items-center gap-1.5 rounded-lg border px-3 py-2 text-xs font-medium transition-colors", R ? "border-status-success-text/40 bg-status-success-bg-subtle text-status-success-text" : "border-border-subtle bg-bg-surface text-text-primary hover:bg-accent"),
|
|
224
|
+
children: [/* @__PURE__ */ C(m, { className: "h-3.5 w-3.5" }), "Open now"]
|
|
225
|
+
}),
|
|
226
|
+
/* @__PURE__ */ w("select", {
|
|
227
|
+
value: B,
|
|
228
|
+
onChange: (e) => V(e.target.value),
|
|
188
229
|
className: "rounded-lg border border-border-subtle bg-bg-surface px-3 py-2 text-xs text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
189
230
|
children: [
|
|
190
|
-
/* @__PURE__ */
|
|
231
|
+
/* @__PURE__ */ C("option", {
|
|
191
232
|
value: "rating",
|
|
192
233
|
children: "Highest Rated"
|
|
193
234
|
}),
|
|
194
|
-
/* @__PURE__ */
|
|
235
|
+
/* @__PURE__ */ C("option", {
|
|
195
236
|
value: "popularity",
|
|
196
237
|
children: "Most Popular"
|
|
197
238
|
}),
|
|
198
|
-
/* @__PURE__ */
|
|
239
|
+
/* @__PURE__ */ C("option", {
|
|
199
240
|
value: "distance",
|
|
200
241
|
children: "Nearest"
|
|
201
242
|
}),
|
|
202
|
-
/* @__PURE__ */
|
|
243
|
+
/* @__PURE__ */ C("option", {
|
|
203
244
|
value: "newest",
|
|
204
245
|
children: "Newest"
|
|
205
246
|
})
|
|
206
247
|
]
|
|
207
|
-
}),
|
|
208
|
-
se && /* @__PURE__ */ T("button", {
|
|
209
|
-
type: "button",
|
|
210
|
-
onClick: $,
|
|
211
|
-
className: "rounded-lg border border-border-subtle px-3 py-2 text-xs font-medium text-text-secondary hover:text-text-primary transition-colors",
|
|
212
|
-
children: "Clear All Filters"
|
|
213
248
|
})
|
|
214
249
|
]
|
|
215
250
|
}),
|
|
216
|
-
/* @__PURE__ */
|
|
251
|
+
de && /* @__PURE__ */ w("div", {
|
|
252
|
+
className: "mt-3 flex flex-wrap items-center gap-2",
|
|
253
|
+
children: [Q.map((e) => /* @__PURE__ */ w("button", {
|
|
254
|
+
type: "button",
|
|
255
|
+
onClick: e.clear,
|
|
256
|
+
"aria-label": `Remove filter ${e.label}`,
|
|
257
|
+
className: "inline-flex items-center gap-1.5 rounded-full border border-border-subtle bg-bg-surface px-3 py-1 text-xs font-medium text-text-primary transition-colors hover:bg-accent",
|
|
258
|
+
children: [e.label, /* @__PURE__ */ C(S, { className: "h-3 w-3 text-text-secondary" })]
|
|
259
|
+
}, e.id)), /* @__PURE__ */ C("button", {
|
|
260
|
+
type: "button",
|
|
261
|
+
onClick: $,
|
|
262
|
+
className: "rounded-full px-2 py-1 text-xs font-medium text-text-secondary underline-offset-2 transition-colors hover:text-text-primary hover:underline",
|
|
263
|
+
children: "Clear all"
|
|
264
|
+
})]
|
|
265
|
+
}),
|
|
266
|
+
/* @__PURE__ */ w("h2", {
|
|
217
267
|
className: "mt-6 mb-3 text-lg font-semibold text-text-primary",
|
|
218
268
|
children: [
|
|
219
|
-
|
|
269
|
+
X.length,
|
|
220
270
|
" ",
|
|
221
|
-
|
|
271
|
+
X.length === 1 ? "cart" : "carts",
|
|
222
272
|
" near you"
|
|
223
273
|
]
|
|
224
274
|
}),
|
|
225
|
-
|
|
275
|
+
Z.length > 0 ? /* @__PURE__ */ w(ae, { children: [/* @__PURE__ */ C("div", {
|
|
226
276
|
className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",
|
|
227
|
-
children:
|
|
228
|
-
let n =
|
|
229
|
-
return /* @__PURE__ */
|
|
277
|
+
children: Z.map((e) => {
|
|
278
|
+
let n = ce.find((t) => t.cartId === e.id), r = Y.has(e.id);
|
|
279
|
+
return /* @__PURE__ */ w("div", {
|
|
230
280
|
className: "group rounded-xl border border-border-subtle bg-bg-surface shadow-elevation-1 overflow-hidden hover:shadow-elevation-2 hover:-translate-y-0.5 transition-all duration-200 flex flex-col",
|
|
231
|
-
children: [/* @__PURE__ */
|
|
281
|
+
children: [/* @__PURE__ */ w("div", {
|
|
232
282
|
className: "relative h-40 bg-bg-sunken",
|
|
233
283
|
children: [
|
|
234
|
-
/* @__PURE__ */
|
|
284
|
+
/* @__PURE__ */ C(s, {
|
|
235
285
|
src: e.image,
|
|
236
286
|
alt: e.name,
|
|
237
287
|
seed: e.name
|
|
238
288
|
}),
|
|
239
|
-
/* @__PURE__ */
|
|
289
|
+
/* @__PURE__ */ w("div", {
|
|
240
290
|
className: "absolute top-2 left-2 flex gap-1.5",
|
|
241
|
-
children: [/* @__PURE__ */
|
|
291
|
+
children: [/* @__PURE__ */ w("span", {
|
|
242
292
|
className: t("inline-flex items-center gap-1 rounded-full px-2 py-0.5 text-xs font-medium backdrop-blur-sm", e.isOpen ? "bg-status-success-bg-subtle text-status-success-text" : "bg-status-error-bg-subtle text-status-error-text"),
|
|
243
|
-
children: [/* @__PURE__ */
|
|
244
|
-
}), e.isVerified && /* @__PURE__ */
|
|
293
|
+
children: [/* @__PURE__ */ C(m, { className: "h-3 w-3" }), e.isOpen ? "Open now" : "Closed"]
|
|
294
|
+
}), e.isVerified && /* @__PURE__ */ w("span", {
|
|
245
295
|
className: "inline-flex items-center gap-0.5 rounded-full bg-[var(--color-accent-soft)] px-2 py-0.5 text-xs font-medium text-text-primary backdrop-blur-sm",
|
|
246
|
-
children: [/* @__PURE__ */
|
|
296
|
+
children: [/* @__PURE__ */ C(p, { className: "h-3 w-3" }), "Verified"]
|
|
247
297
|
})]
|
|
248
298
|
}),
|
|
249
|
-
/* @__PURE__ */
|
|
299
|
+
/* @__PURE__ */ C("button", {
|
|
250
300
|
type: "button",
|
|
251
|
-
onClick: () =>
|
|
301
|
+
onClick: () => Y.toggle(e.id),
|
|
252
302
|
"aria-pressed": r,
|
|
253
303
|
"aria-label": r ? "Remove from favorites" : "Save to favorites",
|
|
254
304
|
className: "absolute top-2 right-2 flex h-8 w-8 items-center justify-center rounded-full bg-bg-surface/80 backdrop-blur-sm text-text-secondary hover:text-status-error-text transition-colors",
|
|
255
|
-
children: /* @__PURE__ */
|
|
305
|
+
children: /* @__PURE__ */ C(re, { className: t("h-4 w-4 transition-colors", r && "fill-status-error-text text-status-error-text") })
|
|
256
306
|
}),
|
|
257
|
-
e.estimatedTime != null && /* @__PURE__ */
|
|
307
|
+
e.estimatedTime != null && /* @__PURE__ */ w("span", {
|
|
258
308
|
className: "absolute bottom-2 right-2 rounded-full bg-black/50 px-2 py-0.5 text-xs text-white backdrop-blur-sm",
|
|
259
309
|
children: [e.estimatedTime, " min"]
|
|
260
310
|
})
|
|
261
311
|
]
|
|
262
|
-
}), /* @__PURE__ */
|
|
312
|
+
}), /* @__PURE__ */ w("div", {
|
|
263
313
|
className: "flex flex-col flex-1 p-4",
|
|
264
314
|
children: [
|
|
265
|
-
/* @__PURE__ */
|
|
315
|
+
/* @__PURE__ */ C("div", {
|
|
266
316
|
className: "flex items-start justify-between gap-2 mb-1",
|
|
267
|
-
children: /* @__PURE__ */
|
|
317
|
+
children: /* @__PURE__ */ C("h3", {
|
|
268
318
|
className: "text-sm font-semibold text-text-primary truncate flex-1",
|
|
269
319
|
children: e.name
|
|
270
320
|
})
|
|
271
321
|
}),
|
|
272
|
-
/* @__PURE__ */
|
|
322
|
+
/* @__PURE__ */ C("span", {
|
|
273
323
|
className: "mb-2 inline-flex w-fit items-center rounded-full bg-bg-sunken px-2 py-0.5 text-[11px] font-medium text-text-secondary",
|
|
274
324
|
children: e.category
|
|
275
325
|
}),
|
|
276
|
-
/* @__PURE__ */
|
|
326
|
+
/* @__PURE__ */ w("div", {
|
|
277
327
|
className: "mb-2 flex items-center gap-2",
|
|
278
328
|
children: [
|
|
279
|
-
/* @__PURE__ */
|
|
329
|
+
/* @__PURE__ */ C(te, {
|
|
280
330
|
value: e.rating,
|
|
281
331
|
size: 14
|
|
282
332
|
}),
|
|
283
|
-
/* @__PURE__ */
|
|
333
|
+
/* @__PURE__ */ C("span", {
|
|
284
334
|
className: "text-xs font-medium text-text-primary",
|
|
285
335
|
children: e.rating
|
|
286
336
|
}),
|
|
287
|
-
/* @__PURE__ */
|
|
337
|
+
/* @__PURE__ */ w("span", {
|
|
288
338
|
className: "text-xs text-text-secondary",
|
|
289
339
|
children: [
|
|
290
340
|
"(",
|
|
@@ -294,79 +344,79 @@ function A() {
|
|
|
294
344
|
})
|
|
295
345
|
]
|
|
296
346
|
}),
|
|
297
|
-
/* @__PURE__ */
|
|
347
|
+
/* @__PURE__ */ w("div", {
|
|
298
348
|
className: "flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-text-secondary mb-3",
|
|
299
349
|
children: [
|
|
300
|
-
/* @__PURE__ */
|
|
350
|
+
/* @__PURE__ */ w("span", {
|
|
301
351
|
className: "flex items-center gap-1",
|
|
302
|
-
children: [/* @__PURE__ */
|
|
352
|
+
children: [/* @__PURE__ */ C(_, { className: "h-3 w-3" }), e.location?.address?.split(",")[0] || "Chennai"]
|
|
303
353
|
}),
|
|
304
|
-
e.distance != null && /* @__PURE__ */
|
|
354
|
+
e.distance != null && /* @__PURE__ */ w("span", {
|
|
305
355
|
className: "flex items-center gap-1",
|
|
306
|
-
children: [/* @__PURE__ */
|
|
356
|
+
children: [/* @__PURE__ */ C(_, { className: "h-3 w-3" }), o(e.distance)]
|
|
307
357
|
}),
|
|
308
|
-
e.averageOrderValue != null && /* @__PURE__ */
|
|
358
|
+
e.averageOrderValue != null && /* @__PURE__ */ w("span", { children: ["Avg ", a(e.averageOrderValue, { minimumFractionDigits: 0 })] })
|
|
309
359
|
]
|
|
310
360
|
}),
|
|
311
|
-
e.serviceTypes?.includes("
|
|
361
|
+
e.serviceTypes?.includes("scheduled_stop") && /* @__PURE__ */ C("div", {
|
|
312
362
|
className: "mb-3 rounded-md bg-[var(--color-accent-soft)] border border-border-focus/20 p-2",
|
|
313
|
-
children: /* @__PURE__ */
|
|
363
|
+
children: /* @__PURE__ */ w("div", {
|
|
314
364
|
className: "flex items-center gap-1 text-xs text-text-primary",
|
|
315
|
-
children: [/* @__PURE__ */
|
|
365
|
+
children: [/* @__PURE__ */ C(f, { className: "h-3 w-3" }), /* @__PURE__ */ C("span", {
|
|
316
366
|
className: "font-medium",
|
|
317
|
-
children: "
|
|
367
|
+
children: "Scheduled stops"
|
|
318
368
|
})]
|
|
319
369
|
})
|
|
320
370
|
}),
|
|
321
|
-
e.serviceTypes?.includes("direct_service") && /* @__PURE__ */
|
|
371
|
+
e.serviceTypes?.includes("direct_service") && /* @__PURE__ */ C("div", {
|
|
322
372
|
className: "mb-3 rounded-md bg-accent-purple-subtle border border-accent-purple/20 p-2",
|
|
323
|
-
children: /* @__PURE__ */
|
|
373
|
+
children: /* @__PURE__ */ w("div", {
|
|
324
374
|
className: "flex items-center gap-1 text-xs text-text-primary",
|
|
325
|
-
children: [/* @__PURE__ */
|
|
375
|
+
children: [/* @__PURE__ */ C(h, { className: "h-3 w-3" }), /* @__PURE__ */ C("span", {
|
|
326
376
|
className: "font-medium",
|
|
327
377
|
children: "Direct Service Available"
|
|
328
378
|
})]
|
|
329
379
|
})
|
|
330
380
|
}),
|
|
331
|
-
e.serviceTypes && e.serviceTypes.length > 0 && /* @__PURE__ */
|
|
381
|
+
e.serviceTypes && e.serviceTypes.length > 0 && /* @__PURE__ */ C("div", {
|
|
332
382
|
className: "flex flex-wrap gap-1 mb-3",
|
|
333
|
-
children: e.serviceTypes.slice(0, 3).map((e) => /* @__PURE__ */
|
|
383
|
+
children: e.serviceTypes.slice(0, 3).map((e) => /* @__PURE__ */ C("span", {
|
|
334
384
|
className: "rounded-full bg-bg-sunken px-2 py-0.5 text-[10px] text-text-secondary",
|
|
335
385
|
children: e.replace(/_/g, " ")
|
|
336
386
|
}, e))
|
|
337
387
|
}),
|
|
338
|
-
/* @__PURE__ */
|
|
388
|
+
/* @__PURE__ */ w("div", {
|
|
339
389
|
className: "mt-auto flex gap-2",
|
|
340
390
|
children: [
|
|
341
|
-
/* @__PURE__ */
|
|
391
|
+
/* @__PURE__ */ C("button", {
|
|
342
392
|
type: "button",
|
|
343
|
-
onClick: () =>
|
|
393
|
+
onClick: () => k(`/customer/cart/${e.id}`),
|
|
344
394
|
disabled: !e.isOpen,
|
|
345
395
|
className: t("flex-1 rounded-lg py-2 text-xs font-semibold transition-colors", e.isOpen ? "bg-action-primary-bg text-action-primary-text hover:bg-action-primary-bg-hover" : "bg-bg-sunken text-text-secondary cursor-not-allowed"),
|
|
346
396
|
children: e.isOpen ? "View" : "Closed"
|
|
347
397
|
}),
|
|
348
|
-
e.serviceTypes?.includes("direct_service") && /* @__PURE__ */
|
|
398
|
+
e.serviceTypes?.includes("direct_service") && /* @__PURE__ */ C("button", {
|
|
349
399
|
type: "button",
|
|
350
|
-
onClick: () =>
|
|
400
|
+
onClick: () => k(`/customer/cart/${e.id}`),
|
|
351
401
|
className: "rounded-lg border border-border-subtle px-2 py-2 text-xs text-text-primary hover:bg-accent transition-colors",
|
|
352
402
|
title: "Book Direct Service",
|
|
353
|
-
children: /* @__PURE__ */
|
|
403
|
+
children: /* @__PURE__ */ C(h, { className: "h-3.5 w-3.5" })
|
|
354
404
|
}),
|
|
355
|
-
n && /* @__PURE__ */
|
|
405
|
+
n && /* @__PURE__ */ C("button", {
|
|
356
406
|
type: "button",
|
|
357
|
-
onClick: () =>
|
|
407
|
+
onClick: () => k(`/investor/opportunity/${n.id}`),
|
|
358
408
|
className: "rounded-lg border border-status-success-text/30 bg-status-success-bg-subtle px-2 py-2 text-xs text-status-success-text hover:bg-status-success-bg-subtle transition-colors",
|
|
359
409
|
title: "Investment Opportunity",
|
|
360
|
-
children: /* @__PURE__ */
|
|
410
|
+
children: /* @__PURE__ */ C(x, { className: "h-3.5 w-3.5" })
|
|
361
411
|
}),
|
|
362
|
-
/* @__PURE__ */
|
|
412
|
+
/* @__PURE__ */ C("button", {
|
|
363
413
|
type: "button",
|
|
364
414
|
onClick: () => {
|
|
365
|
-
|
|
415
|
+
q(e), G(!0);
|
|
366
416
|
},
|
|
367
417
|
className: "rounded-lg border border-border-subtle px-2 py-2 text-xs text-text-primary hover:bg-accent transition-colors",
|
|
368
418
|
title: "Cart Info",
|
|
369
|
-
children: /* @__PURE__ */
|
|
419
|
+
children: /* @__PURE__ */ C(ie, { className: "h-3.5 w-3.5" })
|
|
370
420
|
})
|
|
371
421
|
]
|
|
372
422
|
})
|
|
@@ -374,22 +424,22 @@ function A() {
|
|
|
374
424
|
})]
|
|
375
425
|
}, e.id);
|
|
376
426
|
})
|
|
377
|
-
}),
|
|
427
|
+
}), ue && /* @__PURE__ */ C("div", {
|
|
378
428
|
className: "mt-8 text-center",
|
|
379
|
-
children: /* @__PURE__ */
|
|
429
|
+
children: /* @__PURE__ */ C("button", {
|
|
380
430
|
type: "button",
|
|
381
|
-
onClick: () =>
|
|
431
|
+
onClick: () => U((e) => e + 9),
|
|
382
432
|
className: "rounded-lg border border-border-subtle px-6 py-2.5 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
|
|
383
433
|
children: "Load More Carts"
|
|
384
434
|
})
|
|
385
|
-
})] }) : /* @__PURE__ */
|
|
435
|
+
})] }) : /* @__PURE__ */ C("div", {
|
|
386
436
|
className: "mt-6",
|
|
387
|
-
children: /* @__PURE__ */
|
|
437
|
+
children: /* @__PURE__ */ C(r, {
|
|
388
438
|
illustration: "empty-search",
|
|
389
|
-
icon: /* @__PURE__ */
|
|
439
|
+
icon: /* @__PURE__ */ C(v, { className: "h-12 w-12" }),
|
|
390
440
|
title: "No carts found",
|
|
391
|
-
description:
|
|
392
|
-
action: /* @__PURE__ */
|
|
441
|
+
description: A ? `No results for "${A}". Try a different search term.` : "No carts available with these filters.",
|
|
442
|
+
action: /* @__PURE__ */ C("button", {
|
|
393
443
|
type: "button",
|
|
394
444
|
onClick: $,
|
|
395
445
|
className: "rounded-lg bg-foreground px-4 py-2 text-sm font-medium text-background hover:opacity-90 transition-opacity",
|
|
@@ -397,171 +447,171 @@ function A() {
|
|
|
397
447
|
})
|
|
398
448
|
})
|
|
399
449
|
}),
|
|
400
|
-
|
|
450
|
+
W && K && /* @__PURE__ */ C("div", {
|
|
401
451
|
className: "fixed inset-0 z-50 flex items-center justify-center bg-black/50 p-4",
|
|
402
|
-
children: /* @__PURE__ */
|
|
452
|
+
children: /* @__PURE__ */ C("div", {
|
|
403
453
|
className: "w-full max-w-2xl max-h-[90vh] overflow-y-auto rounded-lg border border-border-subtle bg-bg-surface",
|
|
404
|
-
children: /* @__PURE__ */
|
|
454
|
+
children: /* @__PURE__ */ w("div", {
|
|
405
455
|
className: "p-5",
|
|
406
456
|
children: [
|
|
407
|
-
/* @__PURE__ */
|
|
457
|
+
/* @__PURE__ */ w("div", {
|
|
408
458
|
className: "flex items-center justify-between mb-4",
|
|
409
|
-
children: [/* @__PURE__ */
|
|
459
|
+
children: [/* @__PURE__ */ C("h3", {
|
|
410
460
|
className: "text-lg font-semibold text-text-primary",
|
|
411
461
|
children: "Cart Information"
|
|
412
|
-
}), /* @__PURE__ */
|
|
462
|
+
}), /* @__PURE__ */ C("button", {
|
|
413
463
|
type: "button",
|
|
414
|
-
onClick: () =>
|
|
464
|
+
onClick: () => G(!1),
|
|
415
465
|
className: "rounded-md p-1 text-text-secondary hover:text-text-primary transition-colors",
|
|
416
|
-
children: /* @__PURE__ */
|
|
466
|
+
children: /* @__PURE__ */ C(S, { className: "h-5 w-5" })
|
|
417
467
|
})]
|
|
418
468
|
}),
|
|
419
|
-
/* @__PURE__ */
|
|
469
|
+
/* @__PURE__ */ C("div", {
|
|
420
470
|
className: "h-48 rounded-lg overflow-hidden mb-4",
|
|
421
|
-
children: /* @__PURE__ */
|
|
422
|
-
src:
|
|
423
|
-
alt:
|
|
424
|
-
seed:
|
|
471
|
+
children: /* @__PURE__ */ C(s, {
|
|
472
|
+
src: K.image,
|
|
473
|
+
alt: K.name,
|
|
474
|
+
seed: K.name
|
|
425
475
|
})
|
|
426
476
|
}),
|
|
427
|
-
/* @__PURE__ */
|
|
477
|
+
/* @__PURE__ */ C("h4", {
|
|
428
478
|
className: "text-xl font-semibold text-text-primary mb-1",
|
|
429
|
-
children:
|
|
479
|
+
children: K.name
|
|
430
480
|
}),
|
|
431
|
-
/* @__PURE__ */
|
|
481
|
+
/* @__PURE__ */ w("div", {
|
|
432
482
|
className: "flex flex-wrap items-center gap-3 mb-4",
|
|
433
|
-
children: [/* @__PURE__ */
|
|
483
|
+
children: [/* @__PURE__ */ w("div", {
|
|
434
484
|
className: "flex items-center gap-1",
|
|
435
485
|
children: [
|
|
436
|
-
/* @__PURE__ */
|
|
437
|
-
/* @__PURE__ */
|
|
486
|
+
/* @__PURE__ */ C(y, { className: "h-3.5 w-3.5 fill-status-warning-text text-status-warning-text" }),
|
|
487
|
+
/* @__PURE__ */ C("span", {
|
|
438
488
|
className: "text-sm font-medium",
|
|
439
|
-
children:
|
|
489
|
+
children: K.rating
|
|
440
490
|
}),
|
|
441
|
-
/* @__PURE__ */
|
|
491
|
+
/* @__PURE__ */ w("span", {
|
|
442
492
|
className: "text-xs text-text-secondary",
|
|
443
493
|
children: [
|
|
444
494
|
"(",
|
|
445
|
-
|
|
495
|
+
K.totalRatings,
|
|
446
496
|
" reviews)"
|
|
447
497
|
]
|
|
448
498
|
})
|
|
449
499
|
]
|
|
450
|
-
}), /* @__PURE__ */
|
|
451
|
-
className: t("inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium",
|
|
452
|
-
children:
|
|
500
|
+
}), /* @__PURE__ */ C("span", {
|
|
501
|
+
className: t("inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium", K.isOpen ? "bg-status-success-bg-subtle text-status-success-text" : "bg-status-error-bg-subtle text-status-error-text"),
|
|
502
|
+
children: K.isOpen ? "Open" : "Closed"
|
|
453
503
|
})]
|
|
454
504
|
}),
|
|
455
|
-
/* @__PURE__ */
|
|
505
|
+
/* @__PURE__ */ w("div", {
|
|
456
506
|
className: "grid grid-cols-1 gap-3 sm:grid-cols-2 mb-4",
|
|
457
507
|
children: [
|
|
458
|
-
/* @__PURE__ */
|
|
508
|
+
/* @__PURE__ */ w("div", {
|
|
459
509
|
className: "rounded-md bg-bg-sunken p-3",
|
|
460
|
-
children: [/* @__PURE__ */
|
|
510
|
+
children: [/* @__PURE__ */ w("p", {
|
|
461
511
|
className: "text-xs font-medium text-text-secondary flex items-center gap-1",
|
|
462
|
-
children: [/* @__PURE__ */
|
|
463
|
-
}), /* @__PURE__ */
|
|
512
|
+
children: [/* @__PURE__ */ C(_, { className: "h-3 w-3" }), " Location"]
|
|
513
|
+
}), /* @__PURE__ */ C("p", {
|
|
464
514
|
className: "mt-1 text-sm text-text-primary",
|
|
465
|
-
children:
|
|
515
|
+
children: K.location.address
|
|
466
516
|
})]
|
|
467
517
|
}),
|
|
468
|
-
/* @__PURE__ */
|
|
518
|
+
/* @__PURE__ */ w("div", {
|
|
469
519
|
className: "rounded-md bg-bg-sunken p-3",
|
|
470
|
-
children: [/* @__PURE__ */
|
|
520
|
+
children: [/* @__PURE__ */ w("p", {
|
|
471
521
|
className: "text-xs font-medium text-text-secondary flex items-center gap-1",
|
|
472
|
-
children: [/* @__PURE__ */
|
|
473
|
-
}), /* @__PURE__ */
|
|
522
|
+
children: [/* @__PURE__ */ C(b, { className: "h-3 w-3" }), " Category"]
|
|
523
|
+
}), /* @__PURE__ */ C("p", {
|
|
474
524
|
className: "mt-1 text-sm text-text-primary",
|
|
475
|
-
children:
|
|
525
|
+
children: K.category
|
|
476
526
|
})]
|
|
477
527
|
}),
|
|
478
|
-
|
|
528
|
+
K.averageOrderValue && /* @__PURE__ */ w("div", {
|
|
479
529
|
className: "rounded-md bg-bg-sunken p-3",
|
|
480
|
-
children: [/* @__PURE__ */
|
|
530
|
+
children: [/* @__PURE__ */ C("p", {
|
|
481
531
|
className: "text-xs font-medium text-text-secondary",
|
|
482
532
|
children: "Average Order"
|
|
483
|
-
}), /* @__PURE__ */
|
|
533
|
+
}), /* @__PURE__ */ C("p", {
|
|
484
534
|
className: "mt-1 text-sm text-text-primary",
|
|
485
|
-
children:
|
|
535
|
+
children: a(K.averageOrderValue, { minimumFractionDigits: 0 })
|
|
486
536
|
})]
|
|
487
537
|
}),
|
|
488
|
-
/* @__PURE__ */
|
|
538
|
+
/* @__PURE__ */ w("div", {
|
|
489
539
|
className: "rounded-md bg-bg-sunken p-3",
|
|
490
|
-
children: [/* @__PURE__ */
|
|
540
|
+
children: [/* @__PURE__ */ w("p", {
|
|
491
541
|
className: "text-xs font-medium text-text-secondary flex items-center gap-1",
|
|
492
|
-
children: [/* @__PURE__ */
|
|
493
|
-
}), /* @__PURE__ */
|
|
542
|
+
children: [/* @__PURE__ */ C(m, { className: "h-3 w-3" }), " Estimated Time"]
|
|
543
|
+
}), /* @__PURE__ */ w("p", {
|
|
494
544
|
className: "mt-1 text-sm text-text-primary",
|
|
495
|
-
children: [
|
|
545
|
+
children: [K.estimatedTime, " minutes"]
|
|
496
546
|
})]
|
|
497
547
|
}),
|
|
498
|
-
/* @__PURE__ */
|
|
548
|
+
/* @__PURE__ */ w("div", {
|
|
499
549
|
className: "rounded-md bg-bg-sunken p-3",
|
|
500
|
-
children: [/* @__PURE__ */
|
|
550
|
+
children: [/* @__PURE__ */ C("p", {
|
|
501
551
|
className: "text-xs font-medium text-text-secondary",
|
|
502
552
|
children: "Distance"
|
|
503
|
-
}), /* @__PURE__ */
|
|
553
|
+
}), /* @__PURE__ */ C("p", {
|
|
504
554
|
className: "mt-1 text-sm text-text-primary",
|
|
505
|
-
children:
|
|
555
|
+
children: K.distance == null ? "—" : o(K.distance)
|
|
506
556
|
})]
|
|
507
557
|
}),
|
|
508
|
-
|
|
558
|
+
K.isVerified && /* @__PURE__ */ w("div", {
|
|
509
559
|
className: "rounded-md bg-bg-sunken p-3",
|
|
510
|
-
children: [/* @__PURE__ */
|
|
560
|
+
children: [/* @__PURE__ */ w("p", {
|
|
511
561
|
className: "text-xs font-medium text-text-secondary flex items-center gap-1",
|
|
512
|
-
children: [/* @__PURE__ */
|
|
513
|
-
}), /* @__PURE__ */
|
|
562
|
+
children: [/* @__PURE__ */ C(p, { className: "h-3 w-3" }), " Verification"]
|
|
563
|
+
}), /* @__PURE__ */ C("p", {
|
|
514
564
|
className: "mt-1 text-sm text-text-primary",
|
|
515
565
|
children: "Verified cart"
|
|
516
566
|
})]
|
|
517
567
|
})
|
|
518
568
|
]
|
|
519
569
|
}),
|
|
520
|
-
|
|
570
|
+
K.serviceTypes && K.serviceTypes.length > 0 && /* @__PURE__ */ w("div", {
|
|
521
571
|
className: "mb-4",
|
|
522
|
-
children: [/* @__PURE__ */
|
|
572
|
+
children: [/* @__PURE__ */ C("p", {
|
|
523
573
|
className: "text-xs font-medium text-text-secondary mb-2",
|
|
524
574
|
children: "Service Types"
|
|
525
|
-
}), /* @__PURE__ */
|
|
575
|
+
}), /* @__PURE__ */ C("div", {
|
|
526
576
|
className: "flex flex-wrap gap-2",
|
|
527
|
-
children:
|
|
577
|
+
children: K.serviceTypes.map((e) => /* @__PURE__ */ C("span", {
|
|
528
578
|
className: "rounded-full bg-bg-sunken px-2.5 py-1 text-xs text-text-secondary capitalize",
|
|
529
579
|
children: e.replace(/_/g, " ")
|
|
530
580
|
}, e))
|
|
531
581
|
})]
|
|
532
582
|
}),
|
|
533
|
-
|
|
583
|
+
K.businessHours && Object.keys(K.businessHours).length > 0 && /* @__PURE__ */ w("div", {
|
|
534
584
|
className: "mb-4",
|
|
535
|
-
children: [/* @__PURE__ */
|
|
585
|
+
children: [/* @__PURE__ */ C("p", {
|
|
536
586
|
className: "text-xs font-medium text-text-secondary mb-2",
|
|
537
587
|
children: "Operating Hours"
|
|
538
|
-
}), /* @__PURE__ */
|
|
588
|
+
}), /* @__PURE__ */ C("div", {
|
|
539
589
|
className: "space-y-1",
|
|
540
|
-
children: Object.entries(
|
|
590
|
+
children: Object.entries(K.businessHours).map(([e, t]) => /* @__PURE__ */ w("div", {
|
|
541
591
|
className: "flex justify-between text-xs",
|
|
542
|
-
children: [/* @__PURE__ */
|
|
592
|
+
children: [/* @__PURE__ */ C("span", {
|
|
543
593
|
className: "capitalize text-text-primary",
|
|
544
594
|
children: e
|
|
545
|
-
}), /* @__PURE__ */
|
|
595
|
+
}), /* @__PURE__ */ C("span", {
|
|
546
596
|
className: "text-text-secondary",
|
|
547
597
|
children: t.isOpen ? `${t.open} - ${t.close}` : "Closed"
|
|
548
598
|
})]
|
|
549
599
|
}, e))
|
|
550
600
|
})]
|
|
551
601
|
}),
|
|
552
|
-
/* @__PURE__ */
|
|
602
|
+
/* @__PURE__ */ w("div", {
|
|
553
603
|
className: "flex gap-3 mt-6",
|
|
554
|
-
children: [/* @__PURE__ */
|
|
604
|
+
children: [/* @__PURE__ */ C("button", {
|
|
555
605
|
type: "button",
|
|
556
606
|
onClick: () => {
|
|
557
|
-
|
|
607
|
+
G(!1), k(`/customer/cart/${K.id}`);
|
|
558
608
|
},
|
|
559
|
-
disabled: !
|
|
560
|
-
className: t("flex-1 rounded-lg py-2.5 text-sm font-medium transition-opacity",
|
|
561
|
-
children:
|
|
562
|
-
}), /* @__PURE__ */
|
|
609
|
+
disabled: !K.isOpen,
|
|
610
|
+
className: t("flex-1 rounded-lg py-2.5 text-sm font-medium transition-opacity", K.isOpen ? "bg-foreground text-background hover:opacity-90" : "bg-bg-sunken text-text-secondary cursor-not-allowed"),
|
|
611
|
+
children: K.isOpen ? "View Menu" : "Currently Closed"
|
|
612
|
+
}), /* @__PURE__ */ C("button", {
|
|
563
613
|
type: "button",
|
|
564
|
-
onClick: () =>
|
|
614
|
+
onClick: () => G(!1),
|
|
565
615
|
className: "rounded-lg border border-border-subtle px-4 py-2.5 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
|
|
566
616
|
children: "Close"
|
|
567
617
|
})]
|
|
@@ -574,6 +624,6 @@ function A() {
|
|
|
574
624
|
});
|
|
575
625
|
}
|
|
576
626
|
//#endregion
|
|
577
|
-
export {
|
|
627
|
+
export { k as CartDiscoveryPage };
|
|
578
628
|
|
|
579
629
|
//# sourceMappingURL=CartDiscoveryPage.js.map
|