@burdenoff/microfe-kadaikodi 2026.625.1 → 2026.626.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/kadaikodi/pages/HomePage.js +19 -14
- package/dist/kadaikodi/pages/HomePage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.js +118 -83
- package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminDashboard.js +75 -46
- package/dist/kadaikodi/pages/admin/AdminDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminFinancialPage.js +144 -128
- package/dist/kadaikodi/pages/admin/AdminFinancialPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminOrdersPage.js +255 -237
- package/dist/kadaikodi/pages/admin/AdminOrdersPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminProfilePage.js +129 -128
- package/dist/kadaikodi/pages/admin/AdminProfilePage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminSettingsPage.js +178 -150
- package/dist/kadaikodi/pages/admin/AdminSettingsPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/CartManagementPage.js +182 -159
- package/dist/kadaikodi/pages/admin/CartManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/UserManagementPage.js +325 -303
- package/dist/kadaikodi/pages/admin/UserManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/AnalyticsDashboard.js +500 -469
- package/dist/kadaikodi/pages/cart-owner/AnalyticsDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/BusinessSettingsPage.js +534 -503
- package/dist/kadaikodi/pages/cart-owner/BusinessSettingsPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/CartOwnerDashboard.js +73 -48
- package/dist/kadaikodi/pages/cart-owner/CartOwnerDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/CartOwnerProfilePage.js +103 -96
- package/dist/kadaikodi/pages/cart-owner/CartOwnerProfilePage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/CartServiceConfigPage.js +130 -129
- package/dist/kadaikodi/pages/cart-owner/CartServiceConfigPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/InventoryManagementPage.js +673 -670
- package/dist/kadaikodi/pages/cart-owner/InventoryManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/OrderManagementPage.js +517 -514
- package/dist/kadaikodi/pages/cart-owner/OrderManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.js +140 -125
- package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/common/HelpSupportPage.js +302 -311
- package/dist/kadaikodi/pages/common/HelpSupportPage.js.map +1 -1
- package/dist/kadaikodi/pages/common/NotificationCenterPage.js +102 -91
- package/dist/kadaikodi/pages/common/NotificationCenterPage.js.map +1 -1
- package/dist/kadaikodi/pages/common/SettingsPage.js +766 -734
- package/dist/kadaikodi/pages/common/SettingsPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/BookingDetailsPage.js +366 -356
- package/dist/kadaikodi/pages/customer/BookingDetailsPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CartDetailPage.js +243 -213
- package/dist/kadaikodi/pages/customer/CartDetailPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CartDiscoveryPage.js +200 -195
- package/dist/kadaikodi/pages/customer/CartDiscoveryPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CheckoutPage.js +95 -89
- package/dist/kadaikodi/pages/customer/CheckoutPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CustomerDashboard.js +430 -387
- package/dist/kadaikodi/pages/customer/CustomerDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CustomerProfilePage.js +488 -478
- package/dist/kadaikodi/pages/customer/CustomerProfilePage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/DirectServiceBookingPage.js +523 -512
- package/dist/kadaikodi/pages/customer/DirectServiceBookingPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/FavoritesPage.js +83 -75
- package/dist/kadaikodi/pages/customer/FavoritesPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/OrderHistoryPage.js +116 -108
- package/dist/kadaikodi/pages/customer/OrderHistoryPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/OrderTrackingPage.js +67 -61
- package/dist/kadaikodi/pages/customer/OrderTrackingPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/PaymentMethodsPage.js +90 -73
- package/dist/kadaikodi/pages/customer/PaymentMethodsPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/ReviewsPage.js +80 -72
- package/dist/kadaikodi/pages/customer/ReviewsPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/SavedAddressesPage.js +70 -53
- package/dist/kadaikodi/pages/customer/SavedAddressesPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestmentDetailsPage.js +289 -255
- package/dist/kadaikodi/pages/investor/InvestmentDetailsPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestmentOpportunitiesPage.js +92 -84
- package/dist/kadaikodi/pages/investor/InvestmentOpportunitiesPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorAnalyticsPage.js +63 -55
- package/dist/kadaikodi/pages/investor/InvestorAnalyticsPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorDashboard.js +339 -311
- package/dist/kadaikodi/pages/investor/InvestorDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorInvestmentsPage.js +40 -32
- package/dist/kadaikodi/pages/investor/InvestorInvestmentsPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorPortfolioPage.js +174 -150
- package/dist/kadaikodi/pages/investor/InvestorPortfolioPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorProfilePage.js +385 -381
- package/dist/kadaikodi/pages/investor/InvestorProfilePage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/TaskDetailsPage.js +302 -273
- package/dist/kadaikodi/pages/worker/TaskDetailsPage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/WorkerDashboard.js +87 -59
- package/dist/kadaikodi/pages/worker/WorkerDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/worker/WorkerOrdersPage.js +82 -75
- package/dist/kadaikodi/pages/worker/WorkerOrdersPage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/WorkerProfilePage.js +81 -77
- package/dist/kadaikodi/pages/worker/WorkerProfilePage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/WorkerSchedulePage.js +78 -71
- package/dist/kadaikodi/pages/worker/WorkerSchedulePage.js.map +1 -1
- package/package.json +2 -2
|
@@ -7,10 +7,11 @@ import { formatCurrency as s, formatDistance as c, formatDuration as l } from ".
|
|
|
7
7
|
import { useMemo as u, useState as d } from "react";
|
|
8
8
|
import { ArrowLeft as f, Calendar as p, CheckCircle2 as m, Clock as h, Flame as g, Home as _, Leaf as v, MapPin as y, Minus as b, Plus as x, Search as S, ShoppingCart as C, Star as w, TrendingUp as ee, X as T } from "lucide-react";
|
|
9
9
|
import { useParams as E } from "react-router-dom";
|
|
10
|
-
import { Fragment as
|
|
10
|
+
import { Fragment as te, jsx as D, jsxs as O } from "react/jsx-runtime";
|
|
11
|
+
import { GlassCard as k, NextSteps as A, PagePurpose as j } from "@burdenoff/fe-libs/ui";
|
|
11
12
|
//#region src/kadaikodi/pages/customer/CartDetailPage.tsx
|
|
12
|
-
function
|
|
13
|
-
let { cartId:
|
|
13
|
+
function M() {
|
|
14
|
+
let { cartId: M } = E(), { navigateTo: N } = e(), { data: P = [], isLoading: ne } = o(), { data: F = [], isLoading: re } = a(M), { data: I = [], isLoading: ie } = i(), L = u(() => P.find((e) => e.id === M), [P, M]), R = u(() => I.find((e) => e.cartId === M), [I, M]), [z, B] = d(""), [V, H] = d(""), [U, W] = d([]), [G, K] = d(!1), [q, J] = d(null), Y = u(() => F.map((e) => ({
|
|
14
15
|
id: e.id,
|
|
15
16
|
name: e.name,
|
|
16
17
|
price: e.price,
|
|
@@ -20,24 +21,24 @@ function A() {
|
|
|
20
21
|
isVeg: !0,
|
|
21
22
|
duration: e.durationMinutes,
|
|
22
23
|
serviceType: e.serviceType
|
|
23
|
-
})), [
|
|
24
|
-
let e =
|
|
25
|
-
if (
|
|
26
|
-
let t =
|
|
24
|
+
})), [F]), X = u(() => [...new Set(Y.map((e) => e.category))], [Y]), Z = u(() => {
|
|
25
|
+
let e = Y;
|
|
26
|
+
if (V && (e = e.filter((e) => e.category === V)), z.trim()) {
|
|
27
|
+
let t = z.toLowerCase();
|
|
27
28
|
e = e.filter((e) => e.name.toLowerCase().includes(t) || e.description.toLowerCase().includes(t));
|
|
28
29
|
}
|
|
29
30
|
return e;
|
|
30
31
|
}, [
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
]),
|
|
32
|
+
Y,
|
|
33
|
+
V,
|
|
34
|
+
z
|
|
35
|
+
]), ae = u(() => {
|
|
35
36
|
let e = {};
|
|
36
|
-
return
|
|
37
|
+
return Z.forEach((t) => {
|
|
37
38
|
e[t.category] || (e[t.category] = []), e[t.category].push(t);
|
|
38
39
|
}), e;
|
|
39
|
-
}, [
|
|
40
|
-
|
|
40
|
+
}, [Z]), oe = (e, t = 1, n) => {
|
|
41
|
+
W((r) => r.find((t) => t.productId === e.id) ? r.map((n) => n.productId === e.id ? {
|
|
41
42
|
...n,
|
|
42
43
|
quantity: n.quantity + t
|
|
43
44
|
} : n) : [...r, {
|
|
@@ -49,64 +50,93 @@ function A() {
|
|
|
49
50
|
specialInstructions: n
|
|
50
51
|
}]);
|
|
51
52
|
}, Q = (e, t) => {
|
|
52
|
-
|
|
53
|
+
W((n) => n.map((n) => n.productId === e ? {
|
|
53
54
|
...n,
|
|
54
55
|
quantity: Math.max(0, n.quantity + t)
|
|
55
56
|
} : n).filter((e) => e.quantity > 0));
|
|
56
57
|
}, $ = (e) => {
|
|
57
|
-
|
|
58
|
-
},
|
|
59
|
-
|
|
58
|
+
W((t) => t.filter((t) => t.productId !== e));
|
|
59
|
+
}, se = (e) => U.find((t) => t.productId === e)?.quantity ?? 0, ce = U.reduce((e, t) => e + t.price * t.quantity, 0), le = U.reduce((e, t) => e + t.quantity, 0), ue = (e) => {
|
|
60
|
+
J({
|
|
60
61
|
product: e,
|
|
61
62
|
quantity: 1,
|
|
62
63
|
specialInstructions: ""
|
|
63
|
-
}),
|
|
64
|
+
}), K(!0);
|
|
64
65
|
};
|
|
65
|
-
return
|
|
66
|
-
title: /* @__PURE__ */
|
|
66
|
+
return L ? /* @__PURE__ */ O(n, {
|
|
67
|
+
title: /* @__PURE__ */ O("div", {
|
|
67
68
|
className: "flex items-center gap-3",
|
|
68
69
|
children: [
|
|
69
|
-
/* @__PURE__ */
|
|
70
|
+
/* @__PURE__ */ D("button", {
|
|
70
71
|
type: "button",
|
|
71
|
-
onClick: () =>
|
|
72
|
+
onClick: () => N("/customer/carts"),
|
|
72
73
|
className: "rounded-md p-1 text-text-secondary hover:bg-accent hover:text-text-primary transition-colors",
|
|
73
|
-
children: /* @__PURE__ */
|
|
74
|
+
children: /* @__PURE__ */ D(f, { className: "h-5 w-5" })
|
|
74
75
|
}),
|
|
75
|
-
/* @__PURE__ */
|
|
76
|
+
/* @__PURE__ */ D("span", {
|
|
76
77
|
className: "truncate",
|
|
77
|
-
children:
|
|
78
|
+
children: L.name
|
|
78
79
|
}),
|
|
79
|
-
|
|
80
|
+
L.isVerified && /* @__PURE__ */ D(m, { className: "h-5 w-5 text-text-primary shrink-0" })
|
|
80
81
|
]
|
|
81
82
|
}),
|
|
82
|
-
description:
|
|
83
|
+
description: L.category,
|
|
83
84
|
children: [
|
|
84
|
-
/* @__PURE__ */
|
|
85
|
-
className: "
|
|
86
|
-
children:
|
|
87
|
-
|
|
88
|
-
|
|
85
|
+
/* @__PURE__ */ D(j, {
|
|
86
|
+
className: "mb-4",
|
|
87
|
+
children: "Everything about this cart in one place — browse its menu, check ratings, location and opening hours, then add items to your order. When you're ready, head to checkout to confirm and pay."
|
|
88
|
+
}),
|
|
89
|
+
/* @__PURE__ */ D(A, {
|
|
90
|
+
storageKey: "kadaikodi-cart-detail",
|
|
91
|
+
className: "mb-4",
|
|
92
|
+
steps: [
|
|
93
|
+
{
|
|
94
|
+
id: "menu",
|
|
95
|
+
label: "Browse the menu and add items",
|
|
96
|
+
description: "Tap items below to build your order."
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
id: "reviews",
|
|
100
|
+
label: "Read what others say",
|
|
101
|
+
description: "Check ratings and reviews before you order.",
|
|
102
|
+
onClick: () => N("/customer/reviews")
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
id: "checkout",
|
|
106
|
+
label: "Proceed to checkout",
|
|
107
|
+
description: "Review your order, choose payment and confirm.",
|
|
108
|
+
onClick: () => N("/customer/checkout")
|
|
109
|
+
}
|
|
110
|
+
]
|
|
111
|
+
}),
|
|
112
|
+
/* @__PURE__ */ O(k, {
|
|
113
|
+
treatment: "glass",
|
|
114
|
+
glow: !0,
|
|
115
|
+
className: "relative h-48 overflow-hidden p-0",
|
|
116
|
+
children: [/* @__PURE__ */ D("img", {
|
|
117
|
+
src: L.image,
|
|
118
|
+
alt: L.name,
|
|
89
119
|
className: "h-full w-full object-cover"
|
|
90
|
-
}), /* @__PURE__ */
|
|
120
|
+
}), /* @__PURE__ */ D("div", {
|
|
91
121
|
className: "absolute bottom-0 inset-x-0 bg-gradient-to-t from-black/60 to-transparent p-4",
|
|
92
|
-
children: /* @__PURE__ */
|
|
122
|
+
children: /* @__PURE__ */ O("div", {
|
|
93
123
|
className: "flex items-center gap-3",
|
|
94
|
-
children: [/* @__PURE__ */
|
|
95
|
-
className: t("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium",
|
|
96
|
-
children:
|
|
97
|
-
}), /* @__PURE__ */
|
|
124
|
+
children: [/* @__PURE__ */ D("span", {
|
|
125
|
+
className: t("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium", L.isOpen ? "bg-status-success-bg-subtle text-status-success-text" : "bg-status-error-bg-subtle text-status-error-text"),
|
|
126
|
+
children: L.isOpen ? "Open Now" : "Closed"
|
|
127
|
+
}), /* @__PURE__ */ O("div", {
|
|
98
128
|
className: "flex items-center gap-1 text-white text-sm",
|
|
99
129
|
children: [
|
|
100
|
-
/* @__PURE__ */
|
|
101
|
-
/* @__PURE__ */
|
|
130
|
+
/* @__PURE__ */ D(w, { className: "h-3.5 w-3.5 fill-status-warning-text text-status-warning-text" }),
|
|
131
|
+
/* @__PURE__ */ D("span", {
|
|
102
132
|
className: "font-medium",
|
|
103
|
-
children:
|
|
133
|
+
children: L.rating
|
|
104
134
|
}),
|
|
105
|
-
/* @__PURE__ */
|
|
135
|
+
/* @__PURE__ */ O("span", {
|
|
106
136
|
className: "text-white/70",
|
|
107
137
|
children: [
|
|
108
138
|
"(",
|
|
109
|
-
|
|
139
|
+
L.totalRatings,
|
|
110
140
|
")"
|
|
111
141
|
]
|
|
112
142
|
})
|
|
@@ -115,238 +145,238 @@ function A() {
|
|
|
115
145
|
})
|
|
116
146
|
})]
|
|
117
147
|
}),
|
|
118
|
-
!
|
|
148
|
+
!L.isOpen && /* @__PURE__ */ D("div", {
|
|
119
149
|
className: "mt-4 rounded-lg border border-status-warning-text/30 bg-status-warning-bg-subtle p-3",
|
|
120
|
-
children: /* @__PURE__ */
|
|
150
|
+
children: /* @__PURE__ */ O("p", {
|
|
121
151
|
className: "text-sm text-status-warning-text",
|
|
122
|
-
children: [/* @__PURE__ */
|
|
152
|
+
children: [/* @__PURE__ */ D("strong", { children: "This cart is currently closed." }), " You can browse the offerings but orders are not being accepted."]
|
|
123
153
|
})
|
|
124
154
|
}),
|
|
125
|
-
/* @__PURE__ */
|
|
155
|
+
/* @__PURE__ */ O("div", {
|
|
126
156
|
className: "mt-4 grid grid-cols-1 gap-3 sm:grid-cols-3",
|
|
127
157
|
children: [
|
|
128
|
-
/* @__PURE__ */
|
|
158
|
+
/* @__PURE__ */ O("div", {
|
|
129
159
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-3",
|
|
130
160
|
children: [
|
|
131
|
-
/* @__PURE__ */
|
|
161
|
+
/* @__PURE__ */ O("div", {
|
|
132
162
|
className: "flex items-center gap-2 text-text-secondary text-xs mb-1",
|
|
133
|
-
children: [/* @__PURE__ */
|
|
163
|
+
children: [/* @__PURE__ */ D(y, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ D("span", {
|
|
134
164
|
className: "font-medium uppercase tracking-wider",
|
|
135
165
|
children: "Location"
|
|
136
166
|
})]
|
|
137
167
|
}),
|
|
138
|
-
/* @__PURE__ */
|
|
168
|
+
/* @__PURE__ */ D("p", {
|
|
139
169
|
className: "text-sm text-text-primary",
|
|
140
|
-
children:
|
|
170
|
+
children: L.location.address
|
|
141
171
|
}),
|
|
142
|
-
/* @__PURE__ */
|
|
172
|
+
/* @__PURE__ */ O("p", {
|
|
143
173
|
className: "text-xs text-text-secondary",
|
|
144
|
-
children: [c(
|
|
174
|
+
children: [c(L.distance), " away"]
|
|
145
175
|
})
|
|
146
176
|
]
|
|
147
177
|
}),
|
|
148
|
-
/* @__PURE__ */
|
|
178
|
+
/* @__PURE__ */ O("div", {
|
|
149
179
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-3",
|
|
150
180
|
children: [
|
|
151
|
-
/* @__PURE__ */
|
|
181
|
+
/* @__PURE__ */ O("div", {
|
|
152
182
|
className: "flex items-center gap-2 text-text-secondary text-xs mb-1",
|
|
153
|
-
children: [/* @__PURE__ */
|
|
183
|
+
children: [/* @__PURE__ */ D(h, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ D("span", {
|
|
154
184
|
className: "font-medium uppercase tracking-wider",
|
|
155
185
|
children: "Estimated Time"
|
|
156
186
|
})]
|
|
157
187
|
}),
|
|
158
|
-
/* @__PURE__ */
|
|
188
|
+
/* @__PURE__ */ D("p", {
|
|
159
189
|
className: "text-sm text-text-primary",
|
|
160
|
-
children: l(
|
|
190
|
+
children: l(L.estimatedTime)
|
|
161
191
|
}),
|
|
162
|
-
|
|
192
|
+
L.averageOrderValue && /* @__PURE__ */ O("p", {
|
|
163
193
|
className: "text-xs text-text-secondary",
|
|
164
|
-
children: ["Avg ", s(
|
|
194
|
+
children: ["Avg ", s(L.averageOrderValue, { minimumFractionDigits: 0 })]
|
|
165
195
|
})
|
|
166
196
|
]
|
|
167
197
|
}),
|
|
168
|
-
/* @__PURE__ */
|
|
198
|
+
/* @__PURE__ */ O("div", {
|
|
169
199
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-3",
|
|
170
200
|
children: [
|
|
171
|
-
/* @__PURE__ */
|
|
201
|
+
/* @__PURE__ */ O("div", {
|
|
172
202
|
className: "flex items-center gap-2 text-text-secondary text-xs mb-1",
|
|
173
|
-
children: [/* @__PURE__ */
|
|
203
|
+
children: [/* @__PURE__ */ D(w, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ D("span", {
|
|
174
204
|
className: "font-medium uppercase tracking-wider",
|
|
175
205
|
children: "Rating"
|
|
176
206
|
})]
|
|
177
207
|
}),
|
|
178
|
-
/* @__PURE__ */
|
|
208
|
+
/* @__PURE__ */ O("p", {
|
|
179
209
|
className: "text-sm text-text-primary",
|
|
180
|
-
children: [
|
|
210
|
+
children: [L.rating, " / 5.0"]
|
|
181
211
|
}),
|
|
182
|
-
/* @__PURE__ */
|
|
212
|
+
/* @__PURE__ */ O("p", {
|
|
183
213
|
className: "text-xs text-text-secondary",
|
|
184
|
-
children: [
|
|
214
|
+
children: [L.totalRatings, " reviews"]
|
|
185
215
|
})
|
|
186
216
|
]
|
|
187
217
|
})
|
|
188
218
|
]
|
|
189
219
|
}),
|
|
190
|
-
|
|
220
|
+
L.businessHours && Object.keys(L.businessHours).length > 0 && /* @__PURE__ */ O("section", {
|
|
191
221
|
className: "mt-6",
|
|
192
|
-
children: [/* @__PURE__ */
|
|
222
|
+
children: [/* @__PURE__ */ D("h2", {
|
|
193
223
|
className: "text-base font-semibold text-text-primary mb-2",
|
|
194
224
|
children: "Operating Hours"
|
|
195
|
-
}), /* @__PURE__ */
|
|
225
|
+
}), /* @__PURE__ */ D("div", {
|
|
196
226
|
className: "rounded-lg border border-border-subtle bg-bg-surface overflow-hidden",
|
|
197
|
-
children: Object.entries(
|
|
227
|
+
children: Object.entries(L.businessHours).map(([e, t]) => /* @__PURE__ */ O("div", {
|
|
198
228
|
className: "flex items-center justify-between px-4 py-2 border-b border-border-subtle last:border-b-0",
|
|
199
|
-
children: [/* @__PURE__ */
|
|
229
|
+
children: [/* @__PURE__ */ D("span", {
|
|
200
230
|
className: "text-sm font-medium text-text-primary capitalize",
|
|
201
231
|
children: e
|
|
202
|
-
}), t.isOpen ? /* @__PURE__ */
|
|
232
|
+
}), t.isOpen ? /* @__PURE__ */ O("span", {
|
|
203
233
|
className: "text-sm text-text-secondary",
|
|
204
234
|
children: [
|
|
205
235
|
t.open,
|
|
206
236
|
" - ",
|
|
207
237
|
t.close
|
|
208
238
|
]
|
|
209
|
-
}) : /* @__PURE__ */
|
|
239
|
+
}) : /* @__PURE__ */ D("span", {
|
|
210
240
|
className: "text-sm text-status-error-text",
|
|
211
241
|
children: "Closed"
|
|
212
242
|
})]
|
|
213
243
|
}, e))
|
|
214
244
|
})]
|
|
215
245
|
}),
|
|
216
|
-
/* @__PURE__ */
|
|
246
|
+
/* @__PURE__ */ O("div", {
|
|
217
247
|
className: "mt-6 grid grid-cols-1 gap-6 lg:grid-cols-3",
|
|
218
|
-
children: [/* @__PURE__ */
|
|
248
|
+
children: [/* @__PURE__ */ O("div", {
|
|
219
249
|
className: "lg:col-span-2",
|
|
220
250
|
children: [
|
|
221
|
-
/* @__PURE__ */
|
|
251
|
+
/* @__PURE__ */ O("div", {
|
|
222
252
|
className: "flex flex-col gap-3 sm:flex-row mb-4",
|
|
223
|
-
children: [/* @__PURE__ */
|
|
253
|
+
children: [/* @__PURE__ */ O("div", {
|
|
224
254
|
className: "relative flex-1",
|
|
225
|
-
children: [/* @__PURE__ */
|
|
255
|
+
children: [/* @__PURE__ */ D(S, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }), /* @__PURE__ */ D("input", {
|
|
226
256
|
type: "text",
|
|
227
257
|
placeholder: "Search offerings...",
|
|
228
|
-
value:
|
|
229
|
-
onChange: (e) =>
|
|
258
|
+
value: z,
|
|
259
|
+
onChange: (e) => B(e.target.value),
|
|
230
260
|
className: "w-full rounded-lg border border-border-subtle bg-bg-surface py-2 pl-10 pr-3 text-sm text-text-primary placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
|
|
231
261
|
})]
|
|
232
|
-
}), /* @__PURE__ */
|
|
233
|
-
value:
|
|
234
|
-
onChange: (e) =>
|
|
262
|
+
}), /* @__PURE__ */ O("select", {
|
|
263
|
+
value: V,
|
|
264
|
+
onChange: (e) => H(e.target.value),
|
|
235
265
|
className: "rounded-lg border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
|
|
236
|
-
children: [/* @__PURE__ */
|
|
266
|
+
children: [/* @__PURE__ */ D("option", {
|
|
237
267
|
value: "",
|
|
238
268
|
children: "All Categories"
|
|
239
|
-
}),
|
|
269
|
+
}), X.map((e) => /* @__PURE__ */ D("option", {
|
|
240
270
|
value: e,
|
|
241
271
|
children: e
|
|
242
272
|
}, e))]
|
|
243
273
|
})]
|
|
244
274
|
}),
|
|
245
|
-
/* @__PURE__ */
|
|
275
|
+
/* @__PURE__ */ O("h2", {
|
|
246
276
|
className: "text-lg font-semibold text-text-primary mb-3",
|
|
247
277
|
children: [
|
|
248
278
|
"Menu & Services (",
|
|
249
|
-
|
|
279
|
+
Z.length,
|
|
250
280
|
")"
|
|
251
281
|
]
|
|
252
282
|
}),
|
|
253
|
-
|
|
283
|
+
Z.length === 0 ? /* @__PURE__ */ O("div", {
|
|
254
284
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-8 text-center",
|
|
255
|
-
children: [/* @__PURE__ */
|
|
285
|
+
children: [/* @__PURE__ */ D(S, { className: "mx-auto h-10 w-10 text-text-secondary/50" }), /* @__PURE__ */ D("p", {
|
|
256
286
|
className: "mt-3 text-sm text-text-secondary",
|
|
257
287
|
children: "No offerings found"
|
|
258
288
|
})]
|
|
259
|
-
}) : /* @__PURE__ */
|
|
289
|
+
}) : /* @__PURE__ */ D("div", {
|
|
260
290
|
className: "space-y-6",
|
|
261
|
-
children: Object.entries(
|
|
291
|
+
children: Object.entries(ae).map(([e, n]) => /* @__PURE__ */ O("div", { children: [/* @__PURE__ */ D("h3", {
|
|
262
292
|
className: "text-sm font-semibold text-text-primary mb-2 px-1",
|
|
263
293
|
children: e
|
|
264
|
-
}), /* @__PURE__ */
|
|
294
|
+
}), /* @__PURE__ */ D("div", {
|
|
265
295
|
className: "space-y-2",
|
|
266
296
|
children: n.map((e) => {
|
|
267
|
-
let n =
|
|
268
|
-
return /* @__PURE__ */
|
|
297
|
+
let n = se(e.id);
|
|
298
|
+
return /* @__PURE__ */ O("div", {
|
|
269
299
|
className: "flex gap-4 rounded-lg border border-border-subtle bg-bg-surface p-4",
|
|
270
|
-
children: [/* @__PURE__ */
|
|
300
|
+
children: [/* @__PURE__ */ D("div", {
|
|
271
301
|
className: "h-20 w-20 shrink-0 rounded-md bg-bg-sunken overflow-hidden",
|
|
272
|
-
children: /* @__PURE__ */
|
|
302
|
+
children: /* @__PURE__ */ D("img", {
|
|
273
303
|
src: e.image,
|
|
274
304
|
alt: e.name,
|
|
275
305
|
className: "h-full w-full object-cover"
|
|
276
306
|
})
|
|
277
|
-
}), /* @__PURE__ */
|
|
307
|
+
}), /* @__PURE__ */ O("div", {
|
|
278
308
|
className: "flex-1 min-w-0",
|
|
279
309
|
children: [
|
|
280
|
-
/* @__PURE__ */
|
|
310
|
+
/* @__PURE__ */ O("div", {
|
|
281
311
|
className: "flex items-start justify-between gap-2",
|
|
282
|
-
children: [/* @__PURE__ */
|
|
312
|
+
children: [/* @__PURE__ */ O("div", { children: [/* @__PURE__ */ O("div", {
|
|
283
313
|
className: "flex items-center gap-2",
|
|
284
|
-
children: [/* @__PURE__ */
|
|
314
|
+
children: [/* @__PURE__ */ D("h4", {
|
|
285
315
|
className: "text-sm font-semibold text-text-primary",
|
|
286
316
|
children: e.name
|
|
287
|
-
}), e.isVeg && /* @__PURE__ */
|
|
288
|
-
}), /* @__PURE__ */
|
|
317
|
+
}), e.isVeg && /* @__PURE__ */ D(v, { className: "h-3.5 w-3.5 text-status-success-text" })]
|
|
318
|
+
}), /* @__PURE__ */ D("p", {
|
|
289
319
|
className: "text-xs text-text-secondary mt-0.5",
|
|
290
320
|
children: e.category
|
|
291
|
-
})] }), /* @__PURE__ */
|
|
321
|
+
})] }), /* @__PURE__ */ D("span", {
|
|
292
322
|
className: "text-sm font-bold text-text-primary whitespace-nowrap",
|
|
293
323
|
children: s(e.price, { minimumFractionDigits: 0 })
|
|
294
324
|
})]
|
|
295
325
|
}),
|
|
296
|
-
/* @__PURE__ */
|
|
326
|
+
/* @__PURE__ */ D("p", {
|
|
297
327
|
className: "mt-1 text-xs text-text-secondary line-clamp-2",
|
|
298
328
|
children: e.description
|
|
299
329
|
}),
|
|
300
|
-
/* @__PURE__ */
|
|
330
|
+
/* @__PURE__ */ O("div", {
|
|
301
331
|
className: "mt-2 flex flex-wrap items-center gap-2 text-[10px] text-text-secondary",
|
|
302
332
|
children: [
|
|
303
|
-
e.duration != null && e.duration > 0 && /* @__PURE__ */
|
|
333
|
+
e.duration != null && e.duration > 0 && /* @__PURE__ */ O("span", {
|
|
304
334
|
className: "flex items-center gap-0.5",
|
|
305
|
-
children: [/* @__PURE__ */
|
|
335
|
+
children: [/* @__PURE__ */ D(h, { className: "h-3 w-3" }), l(e.duration)]
|
|
306
336
|
}),
|
|
307
|
-
e.serviceType && /* @__PURE__ */
|
|
337
|
+
e.serviceType && /* @__PURE__ */ D("span", {
|
|
308
338
|
className: "rounded bg-bg-sunken px-1.5 py-0.5 capitalize",
|
|
309
339
|
children: e.serviceType
|
|
310
340
|
}),
|
|
311
|
-
e.spiceLevel && /* @__PURE__ */
|
|
341
|
+
e.spiceLevel && /* @__PURE__ */ O("span", {
|
|
312
342
|
className: "flex items-center gap-0.5 rounded bg-bg-sunken px-1.5 py-0.5 capitalize",
|
|
313
|
-
children: [/* @__PURE__ */
|
|
343
|
+
children: [/* @__PURE__ */ D(g, { className: "h-3 w-3" }), e.spiceLevel]
|
|
314
344
|
})
|
|
315
345
|
]
|
|
316
346
|
}),
|
|
317
|
-
/* @__PURE__ */
|
|
347
|
+
/* @__PURE__ */ D("div", {
|
|
318
348
|
className: "mt-2 flex justify-end",
|
|
319
|
-
children: n > 0 ? /* @__PURE__ */
|
|
349
|
+
children: n > 0 ? /* @__PURE__ */ O("div", {
|
|
320
350
|
className: "flex items-center gap-2",
|
|
321
351
|
children: [
|
|
322
|
-
/* @__PURE__ */
|
|
352
|
+
/* @__PURE__ */ D("button", {
|
|
323
353
|
type: "button",
|
|
324
354
|
onClick: () => Q(e.id, -1),
|
|
325
355
|
className: "flex h-7 w-7 items-center justify-center rounded-full bg-bg-sunken text-text-primary hover:bg-accent",
|
|
326
|
-
children: /* @__PURE__ */
|
|
356
|
+
children: /* @__PURE__ */ D(b, { className: "h-3.5 w-3.5" })
|
|
327
357
|
}),
|
|
328
|
-
/* @__PURE__ */
|
|
358
|
+
/* @__PURE__ */ D("span", {
|
|
329
359
|
className: "min-w-[2ch] text-center text-sm font-medium text-text-primary",
|
|
330
360
|
children: n
|
|
331
361
|
}),
|
|
332
|
-
/* @__PURE__ */
|
|
362
|
+
/* @__PURE__ */ D("button", {
|
|
333
363
|
type: "button",
|
|
334
364
|
onClick: () => Q(e.id, 1),
|
|
335
365
|
className: "flex h-7 w-7 items-center justify-center rounded-full bg-foreground text-background hover:opacity-90",
|
|
336
|
-
children: /* @__PURE__ */
|
|
366
|
+
children: /* @__PURE__ */ D(x, { className: "h-3.5 w-3.5" })
|
|
337
367
|
}),
|
|
338
|
-
/* @__PURE__ */
|
|
368
|
+
/* @__PURE__ */ D("button", {
|
|
339
369
|
type: "button",
|
|
340
370
|
onClick: () => $(e.id),
|
|
341
371
|
className: "ml-1 flex h-7 w-7 items-center justify-center rounded-full text-status-error-text hover:bg-status-error-bg/10",
|
|
342
|
-
children: /* @__PURE__ */
|
|
372
|
+
children: /* @__PURE__ */ D(T, { className: "h-3.5 w-3.5" })
|
|
343
373
|
})
|
|
344
374
|
]
|
|
345
|
-
}) : /* @__PURE__ */
|
|
375
|
+
}) : /* @__PURE__ */ D("button", {
|
|
346
376
|
type: "button",
|
|
347
|
-
disabled: !
|
|
348
|
-
onClick: () =>
|
|
349
|
-
className: t("rounded-lg px-4 py-1.5 text-xs font-medium transition-opacity",
|
|
377
|
+
disabled: !L.isOpen,
|
|
378
|
+
onClick: () => ue(e),
|
|
379
|
+
className: t("rounded-lg px-4 py-1.5 text-xs font-medium transition-opacity", L.isOpen ? "bg-foreground text-background hover:opacity-90" : "bg-bg-sunken text-text-secondary cursor-not-allowed"),
|
|
350
380
|
children: "Add"
|
|
351
381
|
})
|
|
352
382
|
})
|
|
@@ -357,30 +387,30 @@ function A() {
|
|
|
357
387
|
})] }, e))
|
|
358
388
|
})
|
|
359
389
|
]
|
|
360
|
-
}), /* @__PURE__ */
|
|
390
|
+
}), /* @__PURE__ */ O("div", {
|
|
361
391
|
className: "space-y-4",
|
|
362
392
|
children: [
|
|
363
|
-
/* @__PURE__ */
|
|
393
|
+
/* @__PURE__ */ O("div", {
|
|
364
394
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-4 lg:sticky lg:top-6",
|
|
365
|
-
children: [/* @__PURE__ */
|
|
395
|
+
children: [/* @__PURE__ */ O("h3", {
|
|
366
396
|
className: "text-base font-semibold text-text-primary mb-3 flex items-center gap-2",
|
|
367
|
-
children: [/* @__PURE__ */
|
|
368
|
-
}),
|
|
397
|
+
children: [/* @__PURE__ */ D(C, { className: "h-4 w-4" }), "Your Order"]
|
|
398
|
+
}), U.length === 0 ? /* @__PURE__ */ O("div", {
|
|
369
399
|
className: "py-6 text-center",
|
|
370
|
-
children: [/* @__PURE__ */
|
|
400
|
+
children: [/* @__PURE__ */ D(C, { className: "mx-auto h-8 w-8 text-text-secondary/40" }), /* @__PURE__ */ D("p", {
|
|
371
401
|
className: "mt-2 text-sm text-text-secondary",
|
|
372
402
|
children: "Your cart is empty"
|
|
373
403
|
})]
|
|
374
|
-
}) : /* @__PURE__ */
|
|
404
|
+
}) : /* @__PURE__ */ O(te, { children: [/* @__PURE__ */ D("div", {
|
|
375
405
|
className: "space-y-2 max-h-64 overflow-y-auto mb-3",
|
|
376
|
-
children:
|
|
406
|
+
children: U.map((e) => /* @__PURE__ */ O("div", {
|
|
377
407
|
className: "flex items-center justify-between gap-2",
|
|
378
|
-
children: [/* @__PURE__ */
|
|
408
|
+
children: [/* @__PURE__ */ O("div", {
|
|
379
409
|
className: "flex-1 min-w-0",
|
|
380
|
-
children: [/* @__PURE__ */
|
|
410
|
+
children: [/* @__PURE__ */ D("p", {
|
|
381
411
|
className: "text-sm font-medium text-text-primary truncate",
|
|
382
412
|
children: e.name
|
|
383
|
-
}), /* @__PURE__ */
|
|
413
|
+
}), /* @__PURE__ */ O("p", {
|
|
384
414
|
className: "text-xs text-text-secondary",
|
|
385
415
|
children: [
|
|
386
416
|
s(e.price, { minimumFractionDigits: 0 }),
|
|
@@ -389,111 +419,111 @@ function A() {
|
|
|
389
419
|
e.quantity
|
|
390
420
|
]
|
|
391
421
|
})]
|
|
392
|
-
}), /* @__PURE__ */
|
|
422
|
+
}), /* @__PURE__ */ O("div", {
|
|
393
423
|
className: "flex items-center gap-1",
|
|
394
424
|
children: [
|
|
395
|
-
/* @__PURE__ */
|
|
425
|
+
/* @__PURE__ */ D("button", {
|
|
396
426
|
type: "button",
|
|
397
427
|
onClick: () => Q(e.productId, -1),
|
|
398
428
|
className: "flex h-6 w-6 items-center justify-center rounded bg-bg-sunken text-text-primary text-xs",
|
|
399
429
|
children: "-"
|
|
400
430
|
}),
|
|
401
|
-
/* @__PURE__ */
|
|
431
|
+
/* @__PURE__ */ D("span", {
|
|
402
432
|
className: "min-w-[2ch] text-center text-xs font-medium",
|
|
403
433
|
children: e.quantity
|
|
404
434
|
}),
|
|
405
|
-
/* @__PURE__ */
|
|
435
|
+
/* @__PURE__ */ D("button", {
|
|
406
436
|
type: "button",
|
|
407
437
|
onClick: () => Q(e.productId, 1),
|
|
408
438
|
className: "flex h-6 w-6 items-center justify-center rounded bg-bg-sunken text-text-primary text-xs",
|
|
409
439
|
children: "+"
|
|
410
440
|
}),
|
|
411
|
-
/* @__PURE__ */
|
|
441
|
+
/* @__PURE__ */ D("button", {
|
|
412
442
|
type: "button",
|
|
413
443
|
onClick: () => $(e.productId),
|
|
414
444
|
className: "ml-1 text-status-error-text hover:text-status-error-text/80",
|
|
415
|
-
children: /* @__PURE__ */
|
|
445
|
+
children: /* @__PURE__ */ D(T, { className: "h-3.5 w-3.5" })
|
|
416
446
|
})
|
|
417
447
|
]
|
|
418
448
|
})]
|
|
419
449
|
}, e.id))
|
|
420
|
-
}), /* @__PURE__ */
|
|
450
|
+
}), /* @__PURE__ */ O("div", {
|
|
421
451
|
className: "border-t border-border-subtle pt-3",
|
|
422
|
-
children: [/* @__PURE__ */
|
|
452
|
+
children: [/* @__PURE__ */ O("div", {
|
|
423
453
|
className: "flex justify-between items-center mb-3",
|
|
424
|
-
children: [/* @__PURE__ */
|
|
454
|
+
children: [/* @__PURE__ */ O("span", {
|
|
425
455
|
className: "text-sm font-semibold text-text-primary",
|
|
426
|
-
children: ["Total: ", s(
|
|
427
|
-
}), /* @__PURE__ */
|
|
456
|
+
children: ["Total: ", s(ce, { minimumFractionDigits: 0 })]
|
|
457
|
+
}), /* @__PURE__ */ O("span", {
|
|
428
458
|
className: "text-xs text-text-secondary",
|
|
429
|
-
children: [
|
|
459
|
+
children: [le, " items"]
|
|
430
460
|
})]
|
|
431
|
-
}), /* @__PURE__ */
|
|
461
|
+
}), /* @__PURE__ */ D("button", {
|
|
432
462
|
type: "button",
|
|
433
|
-
onClick: () =>
|
|
463
|
+
onClick: () => N("/customer/checkout"),
|
|
434
464
|
className: "w-full rounded-lg bg-foreground py-2.5 text-sm font-medium text-background hover:opacity-90 transition-opacity",
|
|
435
465
|
children: "Proceed to Checkout"
|
|
436
466
|
})]
|
|
437
467
|
})] })]
|
|
438
468
|
}),
|
|
439
|
-
|
|
469
|
+
L.serviceTypes?.includes("direct_service") && /* @__PURE__ */ O("div", {
|
|
440
470
|
className: "rounded-lg border border-accent-purple/30 bg-accent-purple-subtle p-4",
|
|
441
471
|
children: [
|
|
442
|
-
/* @__PURE__ */
|
|
472
|
+
/* @__PURE__ */ O("h3", {
|
|
443
473
|
className: "text-sm font-semibold text-text-primary flex items-center gap-2 mb-2",
|
|
444
|
-
children: [/* @__PURE__ */
|
|
474
|
+
children: [/* @__PURE__ */ D(_, { className: "h-4 w-4 text-text-primary" }), "Direct Service"]
|
|
445
475
|
}),
|
|
446
|
-
/* @__PURE__ */
|
|
476
|
+
/* @__PURE__ */ D("p", {
|
|
447
477
|
className: "text-xs text-text-secondary mb-3",
|
|
448
478
|
children: "Cart comes to your location!"
|
|
449
479
|
}),
|
|
450
|
-
/* @__PURE__ */
|
|
480
|
+
/* @__PURE__ */ D("button", {
|
|
451
481
|
type: "button",
|
|
452
|
-
onClick: () =>
|
|
482
|
+
onClick: () => N(`/customer/carts/${L.id}`),
|
|
453
483
|
className: "w-full rounded-lg bg-accent-purple py-2 text-xs font-medium text-white hover:bg-accent-purple transition-colors",
|
|
454
484
|
children: "Book Direct Service"
|
|
455
485
|
})
|
|
456
486
|
]
|
|
457
487
|
}),
|
|
458
|
-
|
|
488
|
+
L.serviceTypes?.includes("appointment") && /* @__PURE__ */ O("div", {
|
|
459
489
|
className: "rounded-lg border border-border-focus/30 bg-[var(--color-accent-soft)] p-4",
|
|
460
|
-
children: [/* @__PURE__ */
|
|
490
|
+
children: [/* @__PURE__ */ O("h3", {
|
|
461
491
|
className: "text-sm font-semibold text-text-primary flex items-center gap-2 mb-2",
|
|
462
|
-
children: [/* @__PURE__ */
|
|
463
|
-
}), /* @__PURE__ */
|
|
492
|
+
children: [/* @__PURE__ */ D(p, { className: "h-4 w-4 text-text-primary" }), "Appointments Available"]
|
|
493
|
+
}), /* @__PURE__ */ D("p", {
|
|
464
494
|
className: "text-xs text-text-secondary",
|
|
465
495
|
children: "This service provider accepts appointments. Contact them to schedule."
|
|
466
496
|
})]
|
|
467
497
|
}),
|
|
468
|
-
|
|
498
|
+
R && /* @__PURE__ */ O("div", {
|
|
469
499
|
className: "rounded-lg border border-status-success-text/30 bg-status-success-bg-subtle p-4",
|
|
470
500
|
children: [
|
|
471
|
-
/* @__PURE__ */
|
|
501
|
+
/* @__PURE__ */ O("h3", {
|
|
472
502
|
className: "text-sm font-semibold text-text-primary flex items-center gap-2 mb-2",
|
|
473
|
-
children: [/* @__PURE__ */
|
|
503
|
+
children: [/* @__PURE__ */ D(ee, { className: "h-4 w-4 text-status-success-text" }), "Investment Opportunity"]
|
|
474
504
|
}),
|
|
475
|
-
/* @__PURE__ */
|
|
505
|
+
/* @__PURE__ */ D("p", {
|
|
476
506
|
className: "text-xs text-text-secondary mb-2",
|
|
477
|
-
children:
|
|
507
|
+
children: R.description
|
|
478
508
|
}),
|
|
479
|
-
/* @__PURE__ */
|
|
509
|
+
/* @__PURE__ */ O("div", {
|
|
480
510
|
className: "space-y-1 text-xs text-text-secondary mb-3",
|
|
481
511
|
children: [
|
|
482
|
-
/* @__PURE__ */
|
|
483
|
-
/* @__PURE__ */
|
|
484
|
-
/* @__PURE__ */
|
|
512
|
+
/* @__PURE__ */ O("p", { children: ["Target: ", s(R.targetAmount, { minimumFractionDigits: 0 })] }),
|
|
513
|
+
/* @__PURE__ */ O("p", { children: ["Raised: ", s(R.raisedAmount, { minimumFractionDigits: 0 })] }),
|
|
514
|
+
/* @__PURE__ */ O("p", { children: [
|
|
485
515
|
"Expected Returns: ",
|
|
486
|
-
|
|
516
|
+
R.expectedReturns,
|
|
487
517
|
"%"
|
|
488
518
|
] }),
|
|
489
|
-
/* @__PURE__ */
|
|
519
|
+
/* @__PURE__ */ O("p", { children: [
|
|
490
520
|
"Min Investment:",
|
|
491
521
|
" ",
|
|
492
|
-
s(
|
|
522
|
+
s(R.minimumInvestment, { minimumFractionDigits: 0 })
|
|
493
523
|
] })
|
|
494
524
|
]
|
|
495
525
|
}),
|
|
496
|
-
/* @__PURE__ */
|
|
526
|
+
/* @__PURE__ */ D("button", {
|
|
497
527
|
type: "button",
|
|
498
528
|
onClick: () => alert("Navigate to investor section to fund this business."),
|
|
499
529
|
className: "w-full rounded-lg bg-status-success-text py-2 text-xs font-medium text-white hover:bg-status-success-text transition-colors",
|
|
@@ -504,76 +534,76 @@ function A() {
|
|
|
504
534
|
]
|
|
505
535
|
})]
|
|
506
536
|
}),
|
|
507
|
-
|
|
537
|
+
G && q && /* @__PURE__ */ D("div", {
|
|
508
538
|
className: "fixed inset-0 z-50 flex items-center justify-center bg-black/50 p-4",
|
|
509
|
-
children: /* @__PURE__ */
|
|
539
|
+
children: /* @__PURE__ */ D("div", {
|
|
510
540
|
className: "w-full max-w-md max-h-[90vh] overflow-y-auto rounded-lg border border-border-subtle bg-bg-surface",
|
|
511
|
-
children: /* @__PURE__ */
|
|
541
|
+
children: /* @__PURE__ */ O("div", {
|
|
512
542
|
className: "p-5",
|
|
513
543
|
children: [
|
|
514
|
-
/* @__PURE__ */
|
|
544
|
+
/* @__PURE__ */ O("div", {
|
|
515
545
|
className: "flex items-center justify-between mb-4",
|
|
516
|
-
children: [/* @__PURE__ */
|
|
546
|
+
children: [/* @__PURE__ */ D("h3", {
|
|
517
547
|
className: "text-lg font-semibold text-text-primary",
|
|
518
|
-
children:
|
|
519
|
-
}), /* @__PURE__ */
|
|
548
|
+
children: q.product.name
|
|
549
|
+
}), /* @__PURE__ */ D("button", {
|
|
520
550
|
type: "button",
|
|
521
551
|
onClick: () => {
|
|
522
|
-
|
|
552
|
+
K(!1), J(null);
|
|
523
553
|
},
|
|
524
554
|
className: "rounded-md p-1 text-text-secondary hover:text-text-primary",
|
|
525
|
-
children: /* @__PURE__ */
|
|
555
|
+
children: /* @__PURE__ */ D(T, { className: "h-5 w-5" })
|
|
526
556
|
})]
|
|
527
557
|
}),
|
|
528
|
-
/* @__PURE__ */
|
|
558
|
+
/* @__PURE__ */ D("p", {
|
|
529
559
|
className: "text-sm text-text-secondary mb-4",
|
|
530
|
-
children:
|
|
560
|
+
children: q.product.description
|
|
531
561
|
}),
|
|
532
|
-
/* @__PURE__ */
|
|
562
|
+
/* @__PURE__ */ D("p", {
|
|
533
563
|
className: "text-lg font-bold text-text-primary mb-4",
|
|
534
|
-
children: s(
|
|
564
|
+
children: s(q.product.price, { minimumFractionDigits: 0 })
|
|
535
565
|
}),
|
|
536
|
-
/* @__PURE__ */
|
|
566
|
+
/* @__PURE__ */ O("div", {
|
|
537
567
|
className: "mb-4",
|
|
538
|
-
children: [/* @__PURE__ */
|
|
568
|
+
children: [/* @__PURE__ */ D("label", {
|
|
539
569
|
className: "block text-sm font-medium text-text-primary mb-2",
|
|
540
570
|
children: "Quantity"
|
|
541
|
-
}), /* @__PURE__ */
|
|
571
|
+
}), /* @__PURE__ */ O("div", {
|
|
542
572
|
className: "flex items-center gap-3",
|
|
543
573
|
children: [
|
|
544
|
-
/* @__PURE__ */
|
|
574
|
+
/* @__PURE__ */ D("button", {
|
|
545
575
|
type: "button",
|
|
546
|
-
onClick: () =>
|
|
576
|
+
onClick: () => J((e) => e && {
|
|
547
577
|
...e,
|
|
548
578
|
quantity: Math.max(1, e.quantity - 1)
|
|
549
579
|
}),
|
|
550
580
|
className: "flex h-8 w-8 items-center justify-center rounded-full bg-bg-sunken text-text-primary",
|
|
551
|
-
children: /* @__PURE__ */
|
|
581
|
+
children: /* @__PURE__ */ D(b, { className: "h-4 w-4" })
|
|
552
582
|
}),
|
|
553
|
-
/* @__PURE__ */
|
|
583
|
+
/* @__PURE__ */ D("span", {
|
|
554
584
|
className: "min-w-[2ch] text-center font-medium text-text-primary",
|
|
555
|
-
children:
|
|
585
|
+
children: q.quantity
|
|
556
586
|
}),
|
|
557
|
-
/* @__PURE__ */
|
|
587
|
+
/* @__PURE__ */ D("button", {
|
|
558
588
|
type: "button",
|
|
559
|
-
onClick: () =>
|
|
589
|
+
onClick: () => J((e) => e && {
|
|
560
590
|
...e,
|
|
561
591
|
quantity: e.quantity + 1
|
|
562
592
|
}),
|
|
563
593
|
className: "flex h-8 w-8 items-center justify-center rounded-full bg-bg-sunken text-text-primary",
|
|
564
|
-
children: /* @__PURE__ */
|
|
594
|
+
children: /* @__PURE__ */ D(x, { className: "h-4 w-4" })
|
|
565
595
|
})
|
|
566
596
|
]
|
|
567
597
|
})]
|
|
568
598
|
}),
|
|
569
|
-
/* @__PURE__ */
|
|
599
|
+
/* @__PURE__ */ O("div", {
|
|
570
600
|
className: "mb-4",
|
|
571
|
-
children: [/* @__PURE__ */
|
|
601
|
+
children: [/* @__PURE__ */ D("label", {
|
|
572
602
|
className: "block text-sm font-medium text-text-primary mb-2",
|
|
573
603
|
children: "Special Instructions"
|
|
574
|
-
}), /* @__PURE__ */
|
|
575
|
-
value:
|
|
576
|
-
onChange: (e) =>
|
|
604
|
+
}), /* @__PURE__ */ D("textarea", {
|
|
605
|
+
value: q.specialInstructions,
|
|
606
|
+
onChange: (e) => J((t) => t && {
|
|
577
607
|
...t,
|
|
578
608
|
specialInstructions: e.target.value
|
|
579
609
|
}),
|
|
@@ -582,16 +612,16 @@ function A() {
|
|
|
582
612
|
rows: 3
|
|
583
613
|
})]
|
|
584
614
|
}),
|
|
585
|
-
/* @__PURE__ */
|
|
615
|
+
/* @__PURE__ */ O("button", {
|
|
586
616
|
type: "button",
|
|
587
617
|
onClick: () => {
|
|
588
|
-
|
|
618
|
+
q && (oe(q.product, q.quantity, q.specialInstructions), K(!1), J(null), alert(`${q.product.name} added to cart`));
|
|
589
619
|
},
|
|
590
620
|
className: "w-full rounded-lg bg-foreground py-2.5 text-sm font-medium text-background hover:opacity-90 transition-opacity",
|
|
591
621
|
children: [
|
|
592
622
|
"Add to Cart -",
|
|
593
623
|
" ",
|
|
594
|
-
s(
|
|
624
|
+
s(q.product.price * q.quantity, { minimumFractionDigits: 0 })
|
|
595
625
|
]
|
|
596
626
|
})
|
|
597
627
|
]
|
|
@@ -599,15 +629,15 @@ function A() {
|
|
|
599
629
|
})
|
|
600
630
|
})
|
|
601
631
|
]
|
|
602
|
-
}) : /* @__PURE__ */
|
|
632
|
+
}) : /* @__PURE__ */ D(n, {
|
|
603
633
|
title: "Cart Not Found",
|
|
604
|
-
children: /* @__PURE__ */
|
|
605
|
-
icon: /* @__PURE__ */
|
|
634
|
+
children: /* @__PURE__ */ D(r, {
|
|
635
|
+
icon: /* @__PURE__ */ D(C, { className: "h-12 w-12" }),
|
|
606
636
|
title: "Cart not found",
|
|
607
|
-
description: `No cart found with ID "${
|
|
608
|
-
action: /* @__PURE__ */
|
|
637
|
+
description: `No cart found with ID "${M}".`,
|
|
638
|
+
action: /* @__PURE__ */ D("button", {
|
|
609
639
|
type: "button",
|
|
610
|
-
onClick: () =>
|
|
640
|
+
onClick: () => N("/customer/carts"),
|
|
611
641
|
className: "rounded-lg bg-foreground px-4 py-2 text-sm font-medium text-background hover:opacity-90 transition-opacity",
|
|
612
642
|
children: "Browse Carts"
|
|
613
643
|
})
|
|
@@ -615,6 +645,6 @@ function A() {
|
|
|
615
645
|
});
|
|
616
646
|
}
|
|
617
647
|
//#endregion
|
|
618
|
-
export {
|
|
648
|
+
export { M as CartDetailPage };
|
|
619
649
|
|
|
620
650
|
//# sourceMappingURL=CartDetailPage.js.map
|