@burdenoff/microfe-atheletebridge 2026.625.1 → 2026.625.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/atheletebridge/pages/HomePage.js +272 -268
- package/dist/atheletebridge/pages/HomePage.js.map +1 -1
- package/dist/atheletebridge/pages/admin/AdminAnalyticsPage.js +90 -82
- package/dist/atheletebridge/pages/admin/AdminAnalyticsPage.js.map +1 -1
- package/dist/atheletebridge/pages/admin/AdminDashboard.js +76 -44
- package/dist/atheletebridge/pages/admin/AdminDashboard.js.map +1 -1
- package/dist/atheletebridge/pages/admin/AdminFinancialPage.js +63 -55
- package/dist/atheletebridge/pages/admin/AdminFinancialPage.js.map +1 -1
- package/dist/atheletebridge/pages/admin/AdminOrdersPage.js +244 -237
- package/dist/atheletebridge/pages/admin/AdminOrdersPage.js.map +1 -1
- package/dist/atheletebridge/pages/admin/AdminProfilePage.js +59 -57
- package/dist/atheletebridge/pages/admin/AdminProfilePage.js.map +1 -1
- package/dist/atheletebridge/pages/admin/AdminSettingsPage.js +110 -106
- package/dist/atheletebridge/pages/admin/AdminSettingsPage.js.map +1 -1
- package/dist/atheletebridge/pages/admin/CartManagementPage.js +166 -159
- package/dist/atheletebridge/pages/admin/CartManagementPage.js.map +1 -1
- package/dist/atheletebridge/pages/admin/UserManagementPage.js +310 -303
- package/dist/atheletebridge/pages/admin/UserManagementPage.js.map +1 -1
- package/dist/atheletebridge/pages/cart-owner/AnalyticsDashboard.js +86 -81
- package/dist/atheletebridge/pages/cart-owner/AnalyticsDashboard.js.map +1 -1
- package/dist/atheletebridge/pages/cart-owner/BusinessSettingsPage.js +170 -166
- package/dist/atheletebridge/pages/cart-owner/BusinessSettingsPage.js.map +1 -1
- package/dist/atheletebridge/pages/cart-owner/CartOwnerDashboard.js +141 -109
- package/dist/atheletebridge/pages/cart-owner/CartOwnerDashboard.js.map +1 -1
- package/dist/atheletebridge/pages/cart-owner/CartOwnerProfilePage.js +139 -134
- package/dist/atheletebridge/pages/cart-owner/CartOwnerProfilePage.js.map +1 -1
- package/dist/atheletebridge/pages/cart-owner/CartServiceConfigPage.js +109 -107
- package/dist/atheletebridge/pages/cart-owner/CartServiceConfigPage.js.map +1 -1
- package/dist/atheletebridge/pages/cart-owner/InventoryManagementPage.js +318 -318
- package/dist/atheletebridge/pages/cart-owner/InventoryManagementPage.js.map +1 -1
- package/dist/atheletebridge/pages/cart-owner/OrderManagementPage.js +262 -262
- package/dist/atheletebridge/pages/cart-owner/OrderManagementPage.js.map +1 -1
- package/dist/atheletebridge/pages/cart-owner/StaffManagementPage.js +170 -162
- package/dist/atheletebridge/pages/cart-owner/StaffManagementPage.js.map +1 -1
- package/dist/atheletebridge/pages/common/HelpSupportPage.js +292 -298
- package/dist/atheletebridge/pages/common/HelpSupportPage.js.map +1 -1
- package/dist/atheletebridge/pages/common/NotificationCenterPage.js +99 -91
- package/dist/atheletebridge/pages/common/NotificationCenterPage.js.map +1 -1
- package/dist/atheletebridge/pages/common/SettingsPage.js +742 -734
- package/dist/atheletebridge/pages/common/SettingsPage.js.map +1 -1
- package/dist/atheletebridge/pages/customer/BookingDetailsPage.js +364 -356
- package/dist/atheletebridge/pages/customer/BookingDetailsPage.js.map +1 -1
- package/dist/atheletebridge/pages/customer/CartDetailPage.js +276 -241
- package/dist/atheletebridge/pages/customer/CartDetailPage.js.map +1 -1
- package/dist/atheletebridge/pages/customer/CartDiscoveryPage.js +260 -250
- package/dist/atheletebridge/pages/customer/CartDiscoveryPage.js.map +1 -1
- package/dist/atheletebridge/pages/customer/CheckoutPage.js +93 -89
- package/dist/atheletebridge/pages/customer/CheckoutPage.js.map +1 -1
- package/dist/atheletebridge/pages/customer/CustomerDashboard.js +430 -387
- package/dist/atheletebridge/pages/customer/CustomerDashboard.js.map +1 -1
- package/dist/atheletebridge/pages/customer/CustomerProfilePage.js +526 -490
- package/dist/atheletebridge/pages/customer/CustomerProfilePage.js.map +1 -1
- package/dist/atheletebridge/pages/customer/DirectServiceBookingPage.js +523 -512
- package/dist/atheletebridge/pages/customer/DirectServiceBookingPage.js.map +1 -1
- package/dist/atheletebridge/pages/customer/FavoritesPage.js +83 -75
- package/dist/atheletebridge/pages/customer/FavoritesPage.js.map +1 -1
- package/dist/atheletebridge/pages/customer/OrderHistoryPage.js +116 -108
- package/dist/atheletebridge/pages/customer/OrderHistoryPage.js.map +1 -1
- package/dist/atheletebridge/pages/customer/OrderTrackingPage.js +65 -61
- package/dist/atheletebridge/pages/customer/OrderTrackingPage.js.map +1 -1
- package/dist/atheletebridge/pages/customer/PaymentMethodsPage.js +80 -75
- package/dist/atheletebridge/pages/customer/PaymentMethodsPage.js.map +1 -1
- package/dist/atheletebridge/pages/customer/ReviewsPage.js +80 -72
- package/dist/atheletebridge/pages/customer/ReviewsPage.js.map +1 -1
- package/dist/atheletebridge/pages/customer/SavedAddressesPage.js +62 -55
- package/dist/atheletebridge/pages/customer/SavedAddressesPage.js.map +1 -1
- package/dist/atheletebridge/pages/investor/InvestmentDetailsPage.js +93 -61
- package/dist/atheletebridge/pages/investor/InvestmentDetailsPage.js.map +1 -1
- package/dist/atheletebridge/pages/investor/InvestmentOpportunitiesPage.js +89 -84
- package/dist/atheletebridge/pages/investor/InvestmentOpportunitiesPage.js.map +1 -1
- package/dist/atheletebridge/pages/investor/InvestorAnalyticsPage.js +60 -55
- package/dist/atheletebridge/pages/investor/InvestorAnalyticsPage.js.map +1 -1
- package/dist/atheletebridge/pages/investor/InvestorDashboard.js +345 -311
- package/dist/atheletebridge/pages/investor/InvestorDashboard.js.map +1 -1
- package/dist/atheletebridge/pages/investor/InvestorInvestmentsPage.js +37 -32
- package/dist/atheletebridge/pages/investor/InvestorInvestmentsPage.js.map +1 -1
- package/dist/atheletebridge/pages/investor/InvestorPortfolioPage.js +75 -67
- package/dist/atheletebridge/pages/investor/InvestorPortfolioPage.js.map +1 -1
- package/dist/atheletebridge/pages/investor/InvestorProfilePage.js +385 -381
- package/dist/atheletebridge/pages/investor/InvestorProfilePage.js.map +1 -1
- package/dist/atheletebridge/pages/worker/TaskDetailsPage.js +352 -319
- package/dist/atheletebridge/pages/worker/TaskDetailsPage.js.map +1 -1
- package/dist/atheletebridge/pages/worker/WorkerDashboard.js +353 -318
- package/dist/atheletebridge/pages/worker/WorkerDashboard.js.map +1 -1
- package/dist/atheletebridge/pages/worker/WorkerOrdersPage.js +133 -128
- package/dist/atheletebridge/pages/worker/WorkerOrdersPage.js.map +1 -1
- package/dist/atheletebridge/pages/worker/WorkerProfilePage.js +81 -77
- package/dist/atheletebridge/pages/worker/WorkerProfilePage.js.map +1 -1
- package/dist/atheletebridge/pages/worker/WorkerSchedulePage.js +352 -344
- package/dist/atheletebridge/pages/worker/WorkerSchedulePage.js.map +1 -1
- package/package.json +3 -3
|
@@ -5,35 +5,36 @@ import { EmptyState as r } from "../../components/EmptyState.js";
|
|
|
5
5
|
import { useInvestmentOpportunities as i, useProviders as a } from "../../hooks/useAthleteBridgeApi.js";
|
|
6
6
|
import { formatCurrency as o, formatDistance as s } from "../../utils/formatters.js";
|
|
7
7
|
import { useMemo as c, useState as l } from "react";
|
|
8
|
-
import { AlertCircle as u, Calendar as d, CheckCircle2 as f, Clock as p, Home as m, Info as h, Loader2 as g, MapPin as _, Search as v, Star as y, Tag as
|
|
9
|
-
import { Fragment as
|
|
8
|
+
import { AlertCircle as u, Calendar as d, CheckCircle2 as f, Clock as p, Home as m, Info as h, Loader2 as g, MapPin as _, Search as v, Star as y, Tag as ee, TrendingUp as b, X as x } from "lucide-react";
|
|
9
|
+
import { Fragment as S, jsx as C, jsxs as w } from "react/jsx-runtime";
|
|
10
|
+
import { EmphasisPanel as T, PagePurpose as E } from "@burdenoff/fe-libs/ui";
|
|
10
11
|
//#region src/atheletebridge/pages/customer/CartDiscoveryPage.tsx
|
|
11
|
-
var
|
|
12
|
-
function
|
|
13
|
-
let { navigateTo:
|
|
12
|
+
var D = "All";
|
|
13
|
+
function O() {
|
|
14
|
+
let { navigateTo: O } = e(), [k, A] = l(""), [j, M] = l(D), [N, P] = l(""), [F, I] = l(""), [L, R] = l("rating"), [z, B] = l(9), [V, H] = l(!1), [U, W] = l(null), { data: G = [], isLoading: K, isError: q } = a(), { data: J = [] } = i(), Y = c(() => {
|
|
14
15
|
let e = /* @__PURE__ */ new Set();
|
|
15
|
-
return
|
|
16
|
+
return G.forEach((t) => {
|
|
16
17
|
t.category && e.add(t.category);
|
|
17
|
-
}), [
|
|
18
|
-
}, [
|
|
19
|
-
let e = [...
|
|
20
|
-
if (
|
|
21
|
-
let t =
|
|
18
|
+
}), [D, ...Array.from(e)];
|
|
19
|
+
}, [G]), X = c(() => {
|
|
20
|
+
let e = [...G];
|
|
21
|
+
if (k.trim()) {
|
|
22
|
+
let t = k.toLowerCase();
|
|
22
23
|
e = e.filter((e) => e.name.toLowerCase().includes(t) || e.category.toLowerCase().includes(t));
|
|
23
24
|
}
|
|
24
|
-
if (
|
|
25
|
-
let t = parseFloat(
|
|
25
|
+
if (j !== D && (e = e.filter((e) => e.category === j)), N) {
|
|
26
|
+
let t = parseFloat(N);
|
|
26
27
|
e = e.filter((e) => e.rating >= t);
|
|
27
28
|
}
|
|
28
|
-
switch (
|
|
29
|
+
switch (F && (e = e.filter((e) => {
|
|
29
30
|
let t = e.averageOrderValue ?? 0;
|
|
30
|
-
switch (
|
|
31
|
+
switch (F) {
|
|
31
32
|
case "low": return t <= 300;
|
|
32
33
|
case "medium": return t > 300 && t <= 800;
|
|
33
34
|
case "high": return t > 800;
|
|
34
35
|
default: return !0;
|
|
35
36
|
}
|
|
36
|
-
})),
|
|
37
|
+
})), L) {
|
|
37
38
|
case "rating":
|
|
38
39
|
e.sort((e, t) => t.rating - e.rating);
|
|
39
40
|
break;
|
|
@@ -49,34 +50,34 @@ function D() {
|
|
|
49
50
|
}
|
|
50
51
|
return e;
|
|
51
52
|
}, [
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
]),
|
|
59
|
-
|
|
53
|
+
G,
|
|
54
|
+
k,
|
|
55
|
+
j,
|
|
56
|
+
N,
|
|
57
|
+
F,
|
|
58
|
+
L
|
|
59
|
+
]), Z = X.slice(0, z), Q = z < X.length, te = j !== D || N !== "" || F !== "" || k.trim() !== "", $ = () => {
|
|
60
|
+
A(""), M(D), P(""), I(""), R("rating"), B(9);
|
|
60
61
|
};
|
|
61
|
-
return
|
|
62
|
+
return K ? /* @__PURE__ */ C(n, {
|
|
62
63
|
title: "Discover Carts",
|
|
63
64
|
description: "Finding services and shops near you...",
|
|
64
|
-
children: /* @__PURE__ */
|
|
65
|
+
children: /* @__PURE__ */ C("div", {
|
|
65
66
|
className: "flex h-[60vh] items-center justify-center",
|
|
66
|
-
children: /* @__PURE__ */
|
|
67
|
+
children: /* @__PURE__ */ C(g, { className: "h-8 w-8 animate-spin text-primary" })
|
|
67
68
|
})
|
|
68
|
-
}) :
|
|
69
|
+
}) : q ? /* @__PURE__ */ C(n, {
|
|
69
70
|
title: "Discover Carts",
|
|
70
71
|
description: "Error loading carts",
|
|
71
|
-
children: /* @__PURE__ */
|
|
72
|
+
children: /* @__PURE__ */ w("div", {
|
|
72
73
|
className: "flex h-[60vh] flex-col items-center justify-center gap-4",
|
|
73
74
|
children: [
|
|
74
|
-
/* @__PURE__ */
|
|
75
|
-
/* @__PURE__ */
|
|
75
|
+
/* @__PURE__ */ C(u, { className: "h-12 w-12 text-status-error-text" }),
|
|
76
|
+
/* @__PURE__ */ C("h2", {
|
|
76
77
|
className: "text-xl font-semibold",
|
|
77
78
|
children: "Error loading service providers"
|
|
78
79
|
}),
|
|
79
|
-
/* @__PURE__ */
|
|
80
|
+
/* @__PURE__ */ C("button", {
|
|
80
81
|
type: "button",
|
|
81
82
|
onClick: () => window.location.reload(),
|
|
82
83
|
className: "rounded-lg bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text",
|
|
@@ -84,171 +85,180 @@ function D() {
|
|
|
84
85
|
})
|
|
85
86
|
]
|
|
86
87
|
})
|
|
87
|
-
}) : /* @__PURE__ */
|
|
88
|
+
}) : /* @__PURE__ */ w(n, {
|
|
88
89
|
title: "Discover Carts",
|
|
89
90
|
description: "Find services and shops near you",
|
|
90
|
-
actions: /* @__PURE__ */
|
|
91
|
+
actions: /* @__PURE__ */ w("span", {
|
|
91
92
|
className: "text-sm text-text-secondary",
|
|
92
|
-
children: [
|
|
93
|
+
children: [X.length, " carts found"]
|
|
93
94
|
}),
|
|
94
95
|
children: [
|
|
95
|
-
/* @__PURE__ */
|
|
96
|
-
className: "
|
|
97
|
-
children:
|
|
98
|
-
/* @__PURE__ */ w(v, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }),
|
|
99
|
-
/* @__PURE__ */ w("input", {
|
|
100
|
-
type: "text",
|
|
101
|
-
placeholder: "Search carts, services, or items...",
|
|
102
|
-
value: O,
|
|
103
|
-
onChange: (e) => k(e.target.value),
|
|
104
|
-
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)]")
|
|
105
|
-
}),
|
|
106
|
-
O && /* @__PURE__ */ w("button", {
|
|
107
|
-
type: "button",
|
|
108
|
-
onClick: () => k(""),
|
|
109
|
-
className: "absolute right-3 top-1/2 -translate-y-1/2 text-text-secondary hover:text-text-primary",
|
|
110
|
-
children: /* @__PURE__ */ w(S, { className: "h-4 w-4" })
|
|
111
|
-
})
|
|
112
|
-
]
|
|
113
|
-
}),
|
|
114
|
-
/* @__PURE__ */ w("div", {
|
|
115
|
-
className: "mt-4 flex flex-wrap gap-2",
|
|
116
|
-
children: J.map((e) => /* @__PURE__ */ w("button", {
|
|
117
|
-
type: "button",
|
|
118
|
-
onClick: () => j(e),
|
|
119
|
-
className: t("rounded-full px-3 py-1.5 text-xs font-medium transition-colors", A === e ? "bg-foreground text-background" : "bg-bg-sunken text-text-secondary hover:bg-accent hover:text-text-primary"),
|
|
120
|
-
children: e
|
|
121
|
-
}, e))
|
|
96
|
+
/* @__PURE__ */ C(E, {
|
|
97
|
+
className: "mb-6",
|
|
98
|
+
children: "Find the right service provider near you. Search by name, filter by category, rating and price, then sort to surface the best match. Tap any cart to see its offerings and place an order — this is your starting point for discovering local services."
|
|
122
99
|
}),
|
|
123
|
-
/* @__PURE__ */ T
|
|
124
|
-
className: "
|
|
100
|
+
/* @__PURE__ */ w(T, {
|
|
101
|
+
className: "p-4",
|
|
125
102
|
children: [
|
|
126
|
-
/* @__PURE__ */
|
|
127
|
-
|
|
128
|
-
onChange: (e) => N(e.target.value),
|
|
129
|
-
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)]",
|
|
103
|
+
/* @__PURE__ */ w("div", {
|
|
104
|
+
className: "relative",
|
|
130
105
|
children: [
|
|
131
|
-
/* @__PURE__ */
|
|
132
|
-
|
|
133
|
-
|
|
106
|
+
/* @__PURE__ */ C(v, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }),
|
|
107
|
+
/* @__PURE__ */ C("input", {
|
|
108
|
+
type: "text",
|
|
109
|
+
placeholder: "Search carts, services, or items...",
|
|
110
|
+
value: k,
|
|
111
|
+
onChange: (e) => A(e.target.value),
|
|
112
|
+
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)]")
|
|
134
113
|
}),
|
|
135
|
-
/* @__PURE__ */
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
value: "4.0",
|
|
141
|
-
children: "4.0+ Stars"
|
|
142
|
-
}),
|
|
143
|
-
/* @__PURE__ */ w("option", {
|
|
144
|
-
value: "3.5",
|
|
145
|
-
children: "3.5+ Stars"
|
|
114
|
+
k && /* @__PURE__ */ C("button", {
|
|
115
|
+
type: "button",
|
|
116
|
+
onClick: () => A(""),
|
|
117
|
+
className: "absolute right-3 top-1/2 -translate-y-1/2 text-text-secondary hover:text-text-primary",
|
|
118
|
+
children: /* @__PURE__ */ C(x, { className: "h-4 w-4" })
|
|
146
119
|
})
|
|
147
120
|
]
|
|
148
121
|
}),
|
|
149
|
-
/* @__PURE__ */
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
}),
|
|
158
|
-
/* @__PURE__ */ w("option", {
|
|
159
|
-
value: "low",
|
|
160
|
-
children: "Under ₹300"
|
|
161
|
-
}),
|
|
162
|
-
/* @__PURE__ */ w("option", {
|
|
163
|
-
value: "medium",
|
|
164
|
-
children: "₹300 - ₹800"
|
|
165
|
-
}),
|
|
166
|
-
/* @__PURE__ */ w("option", {
|
|
167
|
-
value: "high",
|
|
168
|
-
children: "₹800+"
|
|
169
|
-
})
|
|
170
|
-
]
|
|
122
|
+
/* @__PURE__ */ C("div", {
|
|
123
|
+
className: "mt-4 flex flex-wrap gap-2",
|
|
124
|
+
children: Y.map((e) => /* @__PURE__ */ C("button", {
|
|
125
|
+
type: "button",
|
|
126
|
+
onClick: () => M(e),
|
|
127
|
+
className: t("rounded-full px-3 py-1.5 text-xs font-medium transition-colors", j === e ? "bg-foreground text-background" : "bg-bg-sunken text-text-secondary hover:bg-accent hover:text-text-primary"),
|
|
128
|
+
children: e
|
|
129
|
+
}, e))
|
|
171
130
|
}),
|
|
172
|
-
/* @__PURE__ */
|
|
173
|
-
|
|
174
|
-
onChange: (e) => L(e.target.value),
|
|
175
|
-
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)]",
|
|
131
|
+
/* @__PURE__ */ w("div", {
|
|
132
|
+
className: "mt-4 flex flex-wrap items-center gap-3",
|
|
176
133
|
children: [
|
|
177
|
-
/* @__PURE__ */ w("
|
|
178
|
-
value:
|
|
179
|
-
|
|
134
|
+
/* @__PURE__ */ w("select", {
|
|
135
|
+
value: N,
|
|
136
|
+
onChange: (e) => P(e.target.value),
|
|
137
|
+
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)]",
|
|
138
|
+
children: [
|
|
139
|
+
/* @__PURE__ */ C("option", {
|
|
140
|
+
value: "",
|
|
141
|
+
children: "Any Rating"
|
|
142
|
+
}),
|
|
143
|
+
/* @__PURE__ */ C("option", {
|
|
144
|
+
value: "4.5",
|
|
145
|
+
children: "4.5+ Stars"
|
|
146
|
+
}),
|
|
147
|
+
/* @__PURE__ */ C("option", {
|
|
148
|
+
value: "4.0",
|
|
149
|
+
children: "4.0+ Stars"
|
|
150
|
+
}),
|
|
151
|
+
/* @__PURE__ */ C("option", {
|
|
152
|
+
value: "3.5",
|
|
153
|
+
children: "3.5+ Stars"
|
|
154
|
+
})
|
|
155
|
+
]
|
|
180
156
|
}),
|
|
181
|
-
/* @__PURE__ */ w("
|
|
182
|
-
value:
|
|
183
|
-
|
|
157
|
+
/* @__PURE__ */ w("select", {
|
|
158
|
+
value: F,
|
|
159
|
+
onChange: (e) => I(e.target.value),
|
|
160
|
+
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)]",
|
|
161
|
+
children: [
|
|
162
|
+
/* @__PURE__ */ C("option", {
|
|
163
|
+
value: "",
|
|
164
|
+
children: "Any Price"
|
|
165
|
+
}),
|
|
166
|
+
/* @__PURE__ */ C("option", {
|
|
167
|
+
value: "low",
|
|
168
|
+
children: "Under ₹300"
|
|
169
|
+
}),
|
|
170
|
+
/* @__PURE__ */ C("option", {
|
|
171
|
+
value: "medium",
|
|
172
|
+
children: "₹300 - ₹800"
|
|
173
|
+
}),
|
|
174
|
+
/* @__PURE__ */ C("option", {
|
|
175
|
+
value: "high",
|
|
176
|
+
children: "₹800+"
|
|
177
|
+
})
|
|
178
|
+
]
|
|
184
179
|
}),
|
|
185
|
-
/* @__PURE__ */ w("
|
|
186
|
-
value:
|
|
187
|
-
|
|
180
|
+
/* @__PURE__ */ w("select", {
|
|
181
|
+
value: L,
|
|
182
|
+
onChange: (e) => R(e.target.value),
|
|
183
|
+
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)]",
|
|
184
|
+
children: [
|
|
185
|
+
/* @__PURE__ */ C("option", {
|
|
186
|
+
value: "rating",
|
|
187
|
+
children: "Highest Rated"
|
|
188
|
+
}),
|
|
189
|
+
/* @__PURE__ */ C("option", {
|
|
190
|
+
value: "popularity",
|
|
191
|
+
children: "Most Popular"
|
|
192
|
+
}),
|
|
193
|
+
/* @__PURE__ */ C("option", {
|
|
194
|
+
value: "distance",
|
|
195
|
+
children: "Nearest"
|
|
196
|
+
}),
|
|
197
|
+
/* @__PURE__ */ C("option", {
|
|
198
|
+
value: "newest",
|
|
199
|
+
children: "Newest"
|
|
200
|
+
})
|
|
201
|
+
]
|
|
188
202
|
}),
|
|
189
|
-
/* @__PURE__ */
|
|
190
|
-
|
|
191
|
-
|
|
203
|
+
te && /* @__PURE__ */ C("button", {
|
|
204
|
+
type: "button",
|
|
205
|
+
onClick: $,
|
|
206
|
+
className: "rounded-lg border border-border-subtle px-3 py-2 text-xs font-medium text-text-secondary hover:text-text-primary transition-colors",
|
|
207
|
+
children: "Clear All Filters"
|
|
192
208
|
})
|
|
193
209
|
]
|
|
194
|
-
}),
|
|
195
|
-
Q && /* @__PURE__ */ w("button", {
|
|
196
|
-
type: "button",
|
|
197
|
-
onClick: $,
|
|
198
|
-
className: "rounded-lg border border-border-subtle px-3 py-2 text-xs font-medium text-text-secondary hover:text-text-primary transition-colors",
|
|
199
|
-
children: "Clear All Filters"
|
|
200
210
|
})
|
|
201
211
|
]
|
|
202
212
|
}),
|
|
203
|
-
|
|
213
|
+
Z.length > 0 ? /* @__PURE__ */ w(S, { children: [/* @__PURE__ */ C("div", {
|
|
204
214
|
className: "mt-6 grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3",
|
|
205
|
-
children:
|
|
206
|
-
let n =
|
|
207
|
-
return /* @__PURE__ */
|
|
215
|
+
children: Z.map((e) => {
|
|
216
|
+
let n = J.find((t) => t.cartId === e.id);
|
|
217
|
+
return /* @__PURE__ */ w("div", {
|
|
208
218
|
className: "rounded-lg border border-border-subtle bg-bg-surface shadow-sm overflow-hidden hover:shadow-md transition-shadow flex flex-col",
|
|
209
|
-
children: [/* @__PURE__ */
|
|
219
|
+
children: [/* @__PURE__ */ w("div", {
|
|
210
220
|
className: "relative h-40 bg-bg-sunken",
|
|
211
221
|
children: [
|
|
212
|
-
/* @__PURE__ */
|
|
222
|
+
/* @__PURE__ */ C("img", {
|
|
213
223
|
src: e.image,
|
|
214
224
|
alt: e.name,
|
|
215
225
|
className: "h-full w-full object-cover"
|
|
216
226
|
}),
|
|
217
|
-
/* @__PURE__ */
|
|
227
|
+
/* @__PURE__ */ w("div", {
|
|
218
228
|
className: "absolute top-2 left-2 flex gap-1.5",
|
|
219
|
-
children: [/* @__PURE__ */
|
|
229
|
+
children: [/* @__PURE__ */ C("span", {
|
|
220
230
|
className: t("inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium backdrop-blur-sm", e.isOpen ? "bg-green-500/20 text-green-600 dark:text-green-400" : "bg-red-500/20 text-red-600 dark:text-red-400"),
|
|
221
231
|
children: e.isOpen ? "Open" : "Closed"
|
|
222
|
-
}), e.isVerified && /* @__PURE__ */
|
|
232
|
+
}), e.isVerified && /* @__PURE__ */ w("span", {
|
|
223
233
|
className: "inline-flex items-center gap-0.5 rounded-full bg-blue-500/20 px-2 py-0.5 text-xs font-medium text-blue-600 dark:text-blue-400 backdrop-blur-sm",
|
|
224
|
-
children: [/* @__PURE__ */
|
|
234
|
+
children: [/* @__PURE__ */ C(f, { className: "h-3 w-3" }), "Verified"]
|
|
225
235
|
})]
|
|
226
236
|
}),
|
|
227
|
-
/* @__PURE__ */
|
|
237
|
+
/* @__PURE__ */ C("div", {
|
|
228
238
|
className: "absolute top-2 right-2",
|
|
229
|
-
children: /* @__PURE__ */
|
|
239
|
+
children: /* @__PURE__ */ w("span", {
|
|
230
240
|
className: "rounded-full bg-black/50 px-2 py-0.5 text-xs text-white backdrop-blur-sm",
|
|
231
241
|
children: [e.estimatedTime, " min"]
|
|
232
242
|
})
|
|
233
243
|
})
|
|
234
244
|
]
|
|
235
|
-
}), /* @__PURE__ */
|
|
245
|
+
}), /* @__PURE__ */ w("div", {
|
|
236
246
|
className: "flex flex-col flex-1 p-4",
|
|
237
247
|
children: [
|
|
238
|
-
/* @__PURE__ */
|
|
248
|
+
/* @__PURE__ */ w("div", {
|
|
239
249
|
className: "flex items-start justify-between gap-2 mb-1",
|
|
240
|
-
children: [/* @__PURE__ */
|
|
250
|
+
children: [/* @__PURE__ */ C("h3", {
|
|
241
251
|
className: "text-sm font-semibold text-text-primary truncate flex-1",
|
|
242
252
|
children: e.name
|
|
243
|
-
}), /* @__PURE__ */
|
|
253
|
+
}), /* @__PURE__ */ w("div", {
|
|
244
254
|
className: "flex items-center gap-1 shrink-0",
|
|
245
255
|
children: [
|
|
246
|
-
/* @__PURE__ */
|
|
247
|
-
/* @__PURE__ */
|
|
256
|
+
/* @__PURE__ */ C(y, { className: "h-3.5 w-3.5 fill-yellow-400 text-yellow-400" }),
|
|
257
|
+
/* @__PURE__ */ C("span", {
|
|
248
258
|
className: "text-xs font-medium text-text-primary",
|
|
249
259
|
children: e.rating
|
|
250
260
|
}),
|
|
251
|
-
/* @__PURE__ */
|
|
261
|
+
/* @__PURE__ */ w("span", {
|
|
252
262
|
className: "text-xs text-text-secondary",
|
|
253
263
|
children: [
|
|
254
264
|
"(",
|
|
@@ -259,83 +269,83 @@ function D() {
|
|
|
259
269
|
]
|
|
260
270
|
})]
|
|
261
271
|
}),
|
|
262
|
-
/* @__PURE__ */
|
|
272
|
+
/* @__PURE__ */ C("p", {
|
|
263
273
|
className: "text-xs text-text-secondary mb-2",
|
|
264
274
|
children: e.category
|
|
265
275
|
}),
|
|
266
|
-
/* @__PURE__ */
|
|
276
|
+
/* @__PURE__ */ C("div", {
|
|
267
277
|
className: "flex items-center gap-3 text-xs text-text-secondary mb-2",
|
|
268
|
-
children: /* @__PURE__ */
|
|
278
|
+
children: /* @__PURE__ */ w("span", {
|
|
269
279
|
className: "flex items-center gap-1",
|
|
270
|
-
children: [/* @__PURE__ */
|
|
280
|
+
children: [/* @__PURE__ */ C(_, { className: "h-3 w-3" }), e.location?.address?.split(",")[0] || "Unknown"]
|
|
271
281
|
})
|
|
272
282
|
}),
|
|
273
|
-
/* @__PURE__ */
|
|
283
|
+
/* @__PURE__ */ w("div", {
|
|
274
284
|
className: "flex items-center gap-3 text-xs text-text-secondary mb-3",
|
|
275
|
-
children: [e.averageOrderValue && /* @__PURE__ */
|
|
285
|
+
children: [e.averageOrderValue && /* @__PURE__ */ w("span", { children: ["Avg ", o(e.averageOrderValue, { minimumFractionDigits: 0 })] }), /* @__PURE__ */ w("span", {
|
|
276
286
|
className: "flex items-center gap-1",
|
|
277
|
-
children: [/* @__PURE__ */
|
|
287
|
+
children: [/* @__PURE__ */ C(_, { className: "h-3 w-3" }), s(e.distance)]
|
|
278
288
|
})]
|
|
279
289
|
}),
|
|
280
|
-
e.serviceTypes?.includes("appointment") && /* @__PURE__ */
|
|
290
|
+
e.serviceTypes?.includes("appointment") && /* @__PURE__ */ C("div", {
|
|
281
291
|
className: "mb-3 rounded-md bg-blue-500/10 border border-blue-500/20 p-2",
|
|
282
|
-
children: /* @__PURE__ */
|
|
292
|
+
children: /* @__PURE__ */ w("div", {
|
|
283
293
|
className: "flex items-center gap-1 text-xs text-blue-600 dark:text-blue-400",
|
|
284
|
-
children: [/* @__PURE__ */
|
|
294
|
+
children: [/* @__PURE__ */ C(d, { className: "h-3 w-3" }), /* @__PURE__ */ C("span", {
|
|
285
295
|
className: "font-medium",
|
|
286
296
|
children: "Appointment available"
|
|
287
297
|
})]
|
|
288
298
|
})
|
|
289
299
|
}),
|
|
290
|
-
e.serviceTypes?.includes("direct_service") && /* @__PURE__ */
|
|
300
|
+
e.serviceTypes?.includes("direct_service") && /* @__PURE__ */ C("div", {
|
|
291
301
|
className: "mb-3 rounded-md bg-purple-500/10 border border-purple-500/20 p-2",
|
|
292
|
-
children: /* @__PURE__ */
|
|
302
|
+
children: /* @__PURE__ */ w("div", {
|
|
293
303
|
className: "flex items-center gap-1 text-xs text-purple-600 dark:text-purple-400",
|
|
294
|
-
children: [/* @__PURE__ */
|
|
304
|
+
children: [/* @__PURE__ */ C(m, { className: "h-3 w-3" }), /* @__PURE__ */ C("span", {
|
|
295
305
|
className: "font-medium",
|
|
296
306
|
children: "Direct Service Available"
|
|
297
307
|
})]
|
|
298
308
|
})
|
|
299
309
|
}),
|
|
300
|
-
e.serviceTypes && e.serviceTypes.length > 0 && /* @__PURE__ */
|
|
310
|
+
e.serviceTypes && e.serviceTypes.length > 0 && /* @__PURE__ */ C("div", {
|
|
301
311
|
className: "flex flex-wrap gap-1 mb-3",
|
|
302
|
-
children: e.serviceTypes.slice(0, 3).map((e) => /* @__PURE__ */
|
|
312
|
+
children: e.serviceTypes.slice(0, 3).map((e) => /* @__PURE__ */ C("span", {
|
|
303
313
|
className: "rounded-full bg-bg-sunken px-2 py-0.5 text-[10px] text-text-secondary",
|
|
304
314
|
children: e.replace(/_/g, " ")
|
|
305
315
|
}, e))
|
|
306
316
|
}),
|
|
307
|
-
/* @__PURE__ */
|
|
317
|
+
/* @__PURE__ */ w("div", {
|
|
308
318
|
className: "mt-auto flex gap-2",
|
|
309
319
|
children: [
|
|
310
|
-
/* @__PURE__ */
|
|
320
|
+
/* @__PURE__ */ C("button", {
|
|
311
321
|
type: "button",
|
|
312
|
-
onClick: () =>
|
|
322
|
+
onClick: () => O(`/customer/cart/${e.id}`),
|
|
313
323
|
disabled: !e.isOpen,
|
|
314
324
|
className: t("flex-1 rounded-lg py-2 text-xs font-medium transition-opacity", e.isOpen ? "bg-foreground text-background hover:opacity-90" : "bg-bg-sunken text-text-secondary cursor-not-allowed"),
|
|
315
325
|
children: e.isOpen ? "View Services" : "Closed"
|
|
316
326
|
}),
|
|
317
|
-
e.serviceTypes?.includes("direct_service") && /* @__PURE__ */
|
|
327
|
+
e.serviceTypes?.includes("direct_service") && /* @__PURE__ */ C("button", {
|
|
318
328
|
type: "button",
|
|
319
|
-
onClick: () =>
|
|
329
|
+
onClick: () => O(`/customer/cart/${e.id}`),
|
|
320
330
|
className: "rounded-lg border border-border-subtle px-2 py-2 text-xs text-text-primary hover:bg-accent transition-colors",
|
|
321
331
|
title: "Book Direct Service",
|
|
322
|
-
children: /* @__PURE__ */
|
|
332
|
+
children: /* @__PURE__ */ C(m, { className: "h-3.5 w-3.5" })
|
|
323
333
|
}),
|
|
324
|
-
n && /* @__PURE__ */
|
|
334
|
+
n && /* @__PURE__ */ C("button", {
|
|
325
335
|
type: "button",
|
|
326
336
|
onClick: () => alert("Investment opportunity available! View in Investor section."),
|
|
327
337
|
className: "rounded-lg border border-green-500/30 bg-green-500/10 px-2 py-2 text-xs text-green-600 dark:text-green-400 hover:bg-green-500/20 transition-colors",
|
|
328
338
|
title: "Investment Opportunity",
|
|
329
|
-
children: /* @__PURE__ */
|
|
339
|
+
children: /* @__PURE__ */ C(b, { className: "h-3.5 w-3.5" })
|
|
330
340
|
}),
|
|
331
|
-
/* @__PURE__ */
|
|
341
|
+
/* @__PURE__ */ C("button", {
|
|
332
342
|
type: "button",
|
|
333
343
|
onClick: () => {
|
|
334
|
-
|
|
344
|
+
W(e), H(!0);
|
|
335
345
|
},
|
|
336
346
|
className: "rounded-lg border border-border-subtle px-2 py-2 text-xs text-text-primary hover:bg-accent transition-colors",
|
|
337
347
|
title: "Cart Info",
|
|
338
|
-
children: /* @__PURE__ */
|
|
348
|
+
children: /* @__PURE__ */ C(h, { className: "h-3.5 w-3.5" })
|
|
339
349
|
})
|
|
340
350
|
]
|
|
341
351
|
})
|
|
@@ -343,22 +353,22 @@ function D() {
|
|
|
343
353
|
})]
|
|
344
354
|
}, e.id);
|
|
345
355
|
})
|
|
346
|
-
}),
|
|
356
|
+
}), Q && /* @__PURE__ */ C("div", {
|
|
347
357
|
className: "mt-8 text-center",
|
|
348
|
-
children: /* @__PURE__ */
|
|
358
|
+
children: /* @__PURE__ */ C("button", {
|
|
349
359
|
type: "button",
|
|
350
|
-
onClick: () =>
|
|
360
|
+
onClick: () => B((e) => e + 9),
|
|
351
361
|
className: "rounded-lg border border-border-subtle px-6 py-2.5 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
|
|
352
362
|
children: "Load More Carts"
|
|
353
363
|
})
|
|
354
|
-
})] }) : /* @__PURE__ */
|
|
364
|
+
})] }) : /* @__PURE__ */ C("div", {
|
|
355
365
|
className: "mt-6",
|
|
356
|
-
children: /* @__PURE__ */
|
|
366
|
+
children: /* @__PURE__ */ C(r, {
|
|
357
367
|
illustration: "empty-search",
|
|
358
|
-
icon: /* @__PURE__ */
|
|
368
|
+
icon: /* @__PURE__ */ C(v, { className: "h-12 w-12" }),
|
|
359
369
|
title: "No carts found",
|
|
360
|
-
description:
|
|
361
|
-
action: /* @__PURE__ */
|
|
370
|
+
description: k ? `No results for "${k}". Try a different search term.` : "No carts available with these filters.",
|
|
371
|
+
action: /* @__PURE__ */ C("button", {
|
|
362
372
|
type: "button",
|
|
363
373
|
onClick: $,
|
|
364
374
|
className: "rounded-lg bg-foreground px-4 py-2 text-sm font-medium text-background hover:opacity-90 transition-opacity",
|
|
@@ -366,171 +376,171 @@ function D() {
|
|
|
366
376
|
})
|
|
367
377
|
})
|
|
368
378
|
}),
|
|
369
|
-
|
|
379
|
+
V && U && /* @__PURE__ */ C("div", {
|
|
370
380
|
className: "fixed inset-0 z-50 flex items-center justify-center bg-black/50 p-4",
|
|
371
|
-
children: /* @__PURE__ */
|
|
381
|
+
children: /* @__PURE__ */ C("div", {
|
|
372
382
|
className: "w-full max-w-2xl max-h-[90vh] overflow-y-auto rounded-lg border border-border-subtle bg-bg-surface",
|
|
373
|
-
children: /* @__PURE__ */
|
|
383
|
+
children: /* @__PURE__ */ w("div", {
|
|
374
384
|
className: "p-5",
|
|
375
385
|
children: [
|
|
376
|
-
/* @__PURE__ */
|
|
386
|
+
/* @__PURE__ */ w("div", {
|
|
377
387
|
className: "flex items-center justify-between mb-4",
|
|
378
|
-
children: [/* @__PURE__ */
|
|
388
|
+
children: [/* @__PURE__ */ C("h3", {
|
|
379
389
|
className: "text-lg font-semibold text-text-primary",
|
|
380
390
|
children: "Cart Information"
|
|
381
|
-
}), /* @__PURE__ */
|
|
391
|
+
}), /* @__PURE__ */ C("button", {
|
|
382
392
|
type: "button",
|
|
383
|
-
onClick: () =>
|
|
393
|
+
onClick: () => H(!1),
|
|
384
394
|
className: "rounded-md p-1 text-text-secondary hover:text-text-primary transition-colors",
|
|
385
|
-
children: /* @__PURE__ */
|
|
395
|
+
children: /* @__PURE__ */ C(x, { className: "h-5 w-5" })
|
|
386
396
|
})]
|
|
387
397
|
}),
|
|
388
|
-
/* @__PURE__ */
|
|
398
|
+
/* @__PURE__ */ C("div", {
|
|
389
399
|
className: "h-48 rounded-lg overflow-hidden mb-4",
|
|
390
|
-
children: /* @__PURE__ */
|
|
391
|
-
src:
|
|
392
|
-
alt:
|
|
400
|
+
children: /* @__PURE__ */ C("img", {
|
|
401
|
+
src: U.image,
|
|
402
|
+
alt: U.name,
|
|
393
403
|
className: "h-full w-full object-cover"
|
|
394
404
|
})
|
|
395
405
|
}),
|
|
396
|
-
/* @__PURE__ */
|
|
406
|
+
/* @__PURE__ */ C("h4", {
|
|
397
407
|
className: "text-xl font-semibold text-text-primary mb-1",
|
|
398
|
-
children:
|
|
408
|
+
children: U.name
|
|
399
409
|
}),
|
|
400
|
-
/* @__PURE__ */
|
|
410
|
+
/* @__PURE__ */ w("div", {
|
|
401
411
|
className: "flex flex-wrap items-center gap-3 mb-4",
|
|
402
|
-
children: [/* @__PURE__ */
|
|
412
|
+
children: [/* @__PURE__ */ w("div", {
|
|
403
413
|
className: "flex items-center gap-1",
|
|
404
414
|
children: [
|
|
405
|
-
/* @__PURE__ */
|
|
406
|
-
/* @__PURE__ */
|
|
415
|
+
/* @__PURE__ */ C(y, { className: "h-3.5 w-3.5 fill-yellow-400 text-yellow-400" }),
|
|
416
|
+
/* @__PURE__ */ C("span", {
|
|
407
417
|
className: "text-sm font-medium",
|
|
408
|
-
children:
|
|
418
|
+
children: U.rating
|
|
409
419
|
}),
|
|
410
|
-
/* @__PURE__ */
|
|
420
|
+
/* @__PURE__ */ w("span", {
|
|
411
421
|
className: "text-xs text-text-secondary",
|
|
412
422
|
children: [
|
|
413
423
|
"(",
|
|
414
|
-
|
|
424
|
+
U.totalRatings,
|
|
415
425
|
" reviews)"
|
|
416
426
|
]
|
|
417
427
|
})
|
|
418
428
|
]
|
|
419
|
-
}), /* @__PURE__ */
|
|
420
|
-
className: t("inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium",
|
|
421
|
-
children:
|
|
429
|
+
}), /* @__PURE__ */ C("span", {
|
|
430
|
+
className: t("inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium", U.isOpen ? "bg-green-500/20 text-green-600 dark:text-green-400" : "bg-red-500/20 text-red-600 dark:text-red-400"),
|
|
431
|
+
children: U.isOpen ? "Open" : "Closed"
|
|
422
432
|
})]
|
|
423
433
|
}),
|
|
424
|
-
/* @__PURE__ */
|
|
434
|
+
/* @__PURE__ */ w("div", {
|
|
425
435
|
className: "grid grid-cols-1 gap-3 sm:grid-cols-2 mb-4",
|
|
426
436
|
children: [
|
|
427
|
-
/* @__PURE__ */
|
|
437
|
+
/* @__PURE__ */ w("div", {
|
|
428
438
|
className: "rounded-md bg-bg-sunken p-3",
|
|
429
|
-
children: [/* @__PURE__ */
|
|
439
|
+
children: [/* @__PURE__ */ w("p", {
|
|
430
440
|
className: "text-xs font-medium text-text-secondary flex items-center gap-1",
|
|
431
|
-
children: [/* @__PURE__ */
|
|
432
|
-
}), /* @__PURE__ */
|
|
441
|
+
children: [/* @__PURE__ */ C(_, { className: "h-3 w-3" }), " Location"]
|
|
442
|
+
}), /* @__PURE__ */ C("p", {
|
|
433
443
|
className: "mt-1 text-sm text-text-primary",
|
|
434
|
-
children:
|
|
444
|
+
children: U.location.address
|
|
435
445
|
})]
|
|
436
446
|
}),
|
|
437
|
-
/* @__PURE__ */
|
|
447
|
+
/* @__PURE__ */ w("div", {
|
|
438
448
|
className: "rounded-md bg-bg-sunken p-3",
|
|
439
|
-
children: [/* @__PURE__ */
|
|
449
|
+
children: [/* @__PURE__ */ w("p", {
|
|
440
450
|
className: "text-xs font-medium text-text-secondary flex items-center gap-1",
|
|
441
|
-
children: [/* @__PURE__ */
|
|
442
|
-
}), /* @__PURE__ */
|
|
451
|
+
children: [/* @__PURE__ */ C(ee, { className: "h-3 w-3" }), " Category"]
|
|
452
|
+
}), /* @__PURE__ */ C("p", {
|
|
443
453
|
className: "mt-1 text-sm text-text-primary",
|
|
444
|
-
children:
|
|
454
|
+
children: U.category
|
|
445
455
|
})]
|
|
446
456
|
}),
|
|
447
|
-
|
|
457
|
+
U.averageOrderValue && /* @__PURE__ */ w("div", {
|
|
448
458
|
className: "rounded-md bg-bg-sunken p-3",
|
|
449
|
-
children: [/* @__PURE__ */
|
|
459
|
+
children: [/* @__PURE__ */ C("p", {
|
|
450
460
|
className: "text-xs font-medium text-text-secondary",
|
|
451
461
|
children: "Average Order"
|
|
452
|
-
}), /* @__PURE__ */
|
|
462
|
+
}), /* @__PURE__ */ C("p", {
|
|
453
463
|
className: "mt-1 text-sm text-text-primary",
|
|
454
|
-
children: o(
|
|
464
|
+
children: o(U.averageOrderValue, { minimumFractionDigits: 0 })
|
|
455
465
|
})]
|
|
456
466
|
}),
|
|
457
|
-
/* @__PURE__ */
|
|
467
|
+
/* @__PURE__ */ w("div", {
|
|
458
468
|
className: "rounded-md bg-bg-sunken p-3",
|
|
459
|
-
children: [/* @__PURE__ */
|
|
469
|
+
children: [/* @__PURE__ */ w("p", {
|
|
460
470
|
className: "text-xs font-medium text-text-secondary flex items-center gap-1",
|
|
461
|
-
children: [/* @__PURE__ */
|
|
462
|
-
}), /* @__PURE__ */
|
|
471
|
+
children: [/* @__PURE__ */ C(p, { className: "h-3 w-3" }), " Estimated Time"]
|
|
472
|
+
}), /* @__PURE__ */ w("p", {
|
|
463
473
|
className: "mt-1 text-sm text-text-primary",
|
|
464
|
-
children: [
|
|
474
|
+
children: [U.estimatedTime, " minutes"]
|
|
465
475
|
})]
|
|
466
476
|
}),
|
|
467
|
-
/* @__PURE__ */
|
|
477
|
+
/* @__PURE__ */ w("div", {
|
|
468
478
|
className: "rounded-md bg-bg-sunken p-3",
|
|
469
|
-
children: [/* @__PURE__ */
|
|
479
|
+
children: [/* @__PURE__ */ C("p", {
|
|
470
480
|
className: "text-xs font-medium text-text-secondary",
|
|
471
481
|
children: "Distance"
|
|
472
|
-
}), /* @__PURE__ */
|
|
482
|
+
}), /* @__PURE__ */ C("p", {
|
|
473
483
|
className: "mt-1 text-sm text-text-primary",
|
|
474
|
-
children: s(
|
|
484
|
+
children: s(U.distance)
|
|
475
485
|
})]
|
|
476
486
|
}),
|
|
477
|
-
|
|
487
|
+
U.isVerified && /* @__PURE__ */ w("div", {
|
|
478
488
|
className: "rounded-md bg-bg-sunken p-3",
|
|
479
|
-
children: [/* @__PURE__ */
|
|
489
|
+
children: [/* @__PURE__ */ w("p", {
|
|
480
490
|
className: "text-xs font-medium text-text-secondary flex items-center gap-1",
|
|
481
|
-
children: [/* @__PURE__ */
|
|
482
|
-
}), /* @__PURE__ */
|
|
491
|
+
children: [/* @__PURE__ */ C(f, { className: "h-3 w-3" }), " Verification"]
|
|
492
|
+
}), /* @__PURE__ */ C("p", {
|
|
483
493
|
className: "mt-1 text-sm text-text-primary",
|
|
484
494
|
children: "Verified cart"
|
|
485
495
|
})]
|
|
486
496
|
})
|
|
487
497
|
]
|
|
488
498
|
}),
|
|
489
|
-
|
|
499
|
+
U.serviceTypes && U.serviceTypes.length > 0 && /* @__PURE__ */ w("div", {
|
|
490
500
|
className: "mb-4",
|
|
491
|
-
children: [/* @__PURE__ */
|
|
501
|
+
children: [/* @__PURE__ */ C("p", {
|
|
492
502
|
className: "text-xs font-medium text-text-secondary mb-2",
|
|
493
503
|
children: "Service Types"
|
|
494
|
-
}), /* @__PURE__ */
|
|
504
|
+
}), /* @__PURE__ */ C("div", {
|
|
495
505
|
className: "flex flex-wrap gap-2",
|
|
496
|
-
children:
|
|
506
|
+
children: U.serviceTypes.map((e) => /* @__PURE__ */ C("span", {
|
|
497
507
|
className: "rounded-full bg-bg-sunken px-2.5 py-1 text-xs text-text-secondary capitalize",
|
|
498
508
|
children: e.replace(/_/g, " ")
|
|
499
509
|
}, e))
|
|
500
510
|
})]
|
|
501
511
|
}),
|
|
502
|
-
|
|
512
|
+
U.businessHours && Object.keys(U.businessHours).length > 0 && /* @__PURE__ */ w("div", {
|
|
503
513
|
className: "mb-4",
|
|
504
|
-
children: [/* @__PURE__ */
|
|
514
|
+
children: [/* @__PURE__ */ C("p", {
|
|
505
515
|
className: "text-xs font-medium text-text-secondary mb-2",
|
|
506
516
|
children: "Operating Hours"
|
|
507
|
-
}), /* @__PURE__ */
|
|
517
|
+
}), /* @__PURE__ */ C("div", {
|
|
508
518
|
className: "space-y-1",
|
|
509
|
-
children: Object.entries(
|
|
519
|
+
children: Object.entries(U.businessHours).map(([e, t]) => /* @__PURE__ */ w("div", {
|
|
510
520
|
className: "flex justify-between text-xs",
|
|
511
|
-
children: [/* @__PURE__ */
|
|
521
|
+
children: [/* @__PURE__ */ C("span", {
|
|
512
522
|
className: "capitalize text-text-primary",
|
|
513
523
|
children: e
|
|
514
|
-
}), /* @__PURE__ */
|
|
524
|
+
}), /* @__PURE__ */ C("span", {
|
|
515
525
|
className: "text-text-secondary",
|
|
516
526
|
children: t.isOpen ? `${t.open} - ${t.close}` : "Closed"
|
|
517
527
|
})]
|
|
518
528
|
}, e))
|
|
519
529
|
})]
|
|
520
530
|
}),
|
|
521
|
-
/* @__PURE__ */
|
|
531
|
+
/* @__PURE__ */ w("div", {
|
|
522
532
|
className: "flex gap-3 mt-6",
|
|
523
|
-
children: [/* @__PURE__ */
|
|
533
|
+
children: [/* @__PURE__ */ C("button", {
|
|
524
534
|
type: "button",
|
|
525
535
|
onClick: () => {
|
|
526
|
-
|
|
536
|
+
H(!1), O(`/customer/carts/${U.id}`);
|
|
527
537
|
},
|
|
528
|
-
disabled: !
|
|
529
|
-
className: t("flex-1 rounded-lg py-2.5 text-sm font-medium transition-opacity",
|
|
530
|
-
children:
|
|
531
|
-
}), /* @__PURE__ */
|
|
538
|
+
disabled: !U.isOpen,
|
|
539
|
+
className: t("flex-1 rounded-lg py-2.5 text-sm font-medium transition-opacity", U.isOpen ? "bg-foreground text-background hover:opacity-90" : "bg-bg-sunken text-text-secondary cursor-not-allowed"),
|
|
540
|
+
children: U.isOpen ? "View Menu" : "Currently Closed"
|
|
541
|
+
}), /* @__PURE__ */ C("button", {
|
|
532
542
|
type: "button",
|
|
533
|
-
onClick: () =>
|
|
543
|
+
onClick: () => H(!1),
|
|
534
544
|
className: "rounded-lg border border-border-subtle px-4 py-2.5 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
|
|
535
545
|
children: "Close"
|
|
536
546
|
})]
|
|
@@ -543,6 +553,6 @@ function D() {
|
|
|
543
553
|
});
|
|
544
554
|
}
|
|
545
555
|
//#endregion
|
|
546
|
-
export {
|
|
556
|
+
export { O as CartDiscoveryPage };
|
|
547
557
|
|
|
548
558
|
//# sourceMappingURL=CartDiscoveryPage.js.map
|