@burdenoff/microfe-subscriberbot 2026.624.1 → 2026.626.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/subscriberbot/components/EmptyState.js +17 -10
- package/dist/subscriberbot/components/EmptyState.js.map +1 -1
- package/dist/subscriberbot/components/InvestmentCard.js +23 -22
- package/dist/subscriberbot/components/InvestmentCard.js.map +1 -1
- package/dist/subscriberbot/components/MetricsCard.js +15 -12
- package/dist/subscriberbot/components/MetricsCard.js.map +1 -1
- package/dist/subscriberbot/components/PageLayout.js +27 -15
- package/dist/subscriberbot/components/PageLayout.js.map +1 -1
- package/dist/subscriberbot/components/RatingDisplay.js +3 -3
- package/dist/subscriberbot/components/RatingDisplay.js.map +1 -1
- package/dist/subscriberbot/components/StatusBadge.js +25 -13
- package/dist/subscriberbot/components/StatusBadge.js.map +1 -1
- package/dist/subscriberbot/context/SubscriberBotContext.js.map +1 -1
- package/dist/subscriberbot/pages/HomePage.js +72 -63
- package/dist/subscriberbot/pages/HomePage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminAnalyticsPage.js +106 -100
- package/dist/subscriberbot/pages/admin/AdminAnalyticsPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminDashboard.js +125 -85
- package/dist/subscriberbot/pages/admin/AdminDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminFinancialPage.js +51 -45
- package/dist/subscriberbot/pages/admin/AdminFinancialPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminOrdersPage.js +246 -241
- package/dist/subscriberbot/pages/admin/AdminOrdersPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminProfilePage.js +131 -129
- package/dist/subscriberbot/pages/admin/AdminProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/AdminSettingsPage.js +247 -242
- package/dist/subscriberbot/pages/admin/AdminSettingsPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/CartManagementPage.js +307 -302
- package/dist/subscriberbot/pages/admin/CartManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/admin/UserManagementPage.js +308 -303
- package/dist/subscriberbot/pages/admin/UserManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/AnalyticsDashboard.js +89 -84
- package/dist/subscriberbot/pages/cart-owner/AnalyticsDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/BusinessSettingsPage.js +269 -264
- package/dist/subscriberbot/pages/cart-owner/BusinessSettingsPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/CartOwnerDashboard.js +269 -227
- package/dist/subscriberbot/pages/cart-owner/CartOwnerDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/CartOwnerProfilePage.js +191 -186
- package/dist/subscriberbot/pages/cart-owner/CartOwnerProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/CartServiceConfigPage.js +168 -166
- package/dist/subscriberbot/pages/cart-owner/CartServiceConfigPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/InventoryManagementPage.js +344 -347
- package/dist/subscriberbot/pages/cart-owner/InventoryManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/OrderManagementPage.js +270 -272
- package/dist/subscriberbot/pages/cart-owner/OrderManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/cart-owner/StaffManagementPage.js +294 -289
- package/dist/subscriberbot/pages/cart-owner/StaffManagementPage.js.map +1 -1
- package/dist/subscriberbot/pages/common/HelpSupportPage.js +156 -158
- package/dist/subscriberbot/pages/common/HelpSupportPage.js.map +1 -1
- package/dist/subscriberbot/pages/common/NotificationCenterPage.js +94 -87
- package/dist/subscriberbot/pages/common/NotificationCenterPage.js.map +1 -1
- package/dist/subscriberbot/pages/common/SettingsPage.js +749 -740
- package/dist/subscriberbot/pages/common/SettingsPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/BookingDetailsPage.js +357 -324
- package/dist/subscriberbot/pages/customer/BookingDetailsPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CartDetailPage.js +281 -247
- package/dist/subscriberbot/pages/customer/CartDetailPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CartDiscoveryPage.js +106 -98
- package/dist/subscriberbot/pages/customer/CartDiscoveryPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CheckoutPage.js +235 -238
- package/dist/subscriberbot/pages/customer/CheckoutPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CustomerDashboard.js +426 -390
- package/dist/subscriberbot/pages/customer/CustomerDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/customer/CustomerProfilePage.js +488 -479
- package/dist/subscriberbot/pages/customer/CustomerProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/DirectServiceBookingPage.js +522 -512
- package/dist/subscriberbot/pages/customer/DirectServiceBookingPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/FavoritesPage.js +73 -66
- package/dist/subscriberbot/pages/customer/FavoritesPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/OrderHistoryPage.js +75 -67
- package/dist/subscriberbot/pages/customer/OrderHistoryPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/OrderTrackingPage.js +82 -76
- package/dist/subscriberbot/pages/customer/OrderTrackingPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/PaymentMethodsPage.js +100 -93
- package/dist/subscriberbot/pages/customer/PaymentMethodsPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/ReviewsPage.js +97 -90
- package/dist/subscriberbot/pages/customer/ReviewsPage.js.map +1 -1
- package/dist/subscriberbot/pages/customer/SavedAddressesPage.js +86 -79
- package/dist/subscriberbot/pages/customer/SavedAddressesPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestmentDetailsPage.js +330 -293
- package/dist/subscriberbot/pages/investor/InvestmentDetailsPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestmentOpportunitiesPage.js +269 -261
- package/dist/subscriberbot/pages/investor/InvestmentOpportunitiesPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorAnalyticsPage.js +97 -91
- package/dist/subscriberbot/pages/investor/InvestorAnalyticsPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorDashboard.js +354 -322
- package/dist/subscriberbot/pages/investor/InvestorDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorInvestmentsPage.js +118 -111
- package/dist/subscriberbot/pages/investor/InvestorInvestmentsPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorPortfolioPage.js +75 -69
- package/dist/subscriberbot/pages/investor/InvestorPortfolioPage.js.map +1 -1
- package/dist/subscriberbot/pages/investor/InvestorProfilePage.js +435 -430
- package/dist/subscriberbot/pages/investor/InvestorProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/worker/TaskDetailsPage.js +328 -289
- package/dist/subscriberbot/pages/worker/TaskDetailsPage.js.map +1 -1
- package/dist/subscriberbot/pages/worker/WorkerDashboard.js +135 -103
- package/dist/subscriberbot/pages/worker/WorkerDashboard.js.map +1 -1
- package/dist/subscriberbot/pages/worker/WorkerOrdersPage.js +120 -114
- package/dist/subscriberbot/pages/worker/WorkerOrdersPage.js.map +1 -1
- package/dist/subscriberbot/pages/worker/WorkerProfilePage.js +125 -120
- package/dist/subscriberbot/pages/worker/WorkerProfilePage.js.map +1 -1
- package/dist/subscriberbot/pages/worker/WorkerSchedulePage.js +354 -344
- package/dist/subscriberbot/pages/worker/WorkerSchedulePage.js.map +1 -1
- package/package.json +3 -3
|
@@ -7,16 +7,17 @@ import { useCallback as s } from "react";
|
|
|
7
7
|
import { useI18n as c } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
|
|
8
8
|
import { ArrowRight as l, Clock as u, CreditCard as d, Heart as f, Lightbulb as p, MapPin as m, Navigation as h, Package as g, Search as _, ShoppingBag as v, Star as y, TrendingUp as b, User as x, Zap as S } from "lucide-react";
|
|
9
9
|
import { jsx as C, jsxs as w } from "react/jsx-runtime";
|
|
10
|
+
import { EmphasisPanel as T, NextSteps as E, PagePurpose as D } from "@burdenoff/fe-libs/ui";
|
|
10
11
|
//#region src/subscriberbot/pages/customer/CustomerDashboard.tsx
|
|
11
|
-
function
|
|
12
|
+
function O() {
|
|
12
13
|
let e = (/* @__PURE__ */ new Date()).getHours();
|
|
13
14
|
return e < 12 ? "Good morning" : e < 17 ? "Good afternoon" : "Good evening";
|
|
14
15
|
}
|
|
15
|
-
function
|
|
16
|
-
let { navigateTo:
|
|
17
|
-
let n =
|
|
16
|
+
function k() {
|
|
17
|
+
let { navigateTo: k, currentUser: A } = e(), { t: j } = c(), { data: M = [], isLoading: N } = i({ customerId: A?.id }), { data: P = [], isLoading: F } = a(), { data: I, isLoading: L } = r(), R = N || F || L, z = s((e, t) => {
|
|
18
|
+
let n = j(e);
|
|
18
19
|
return n === e ? t : n;
|
|
19
|
-
}, [
|
|
20
|
+
}, [j]), B = A?.firstName ?? A?.name ?? "Customer", V = [
|
|
20
21
|
{
|
|
21
22
|
id: "1",
|
|
22
23
|
type: "suggestion",
|
|
@@ -41,456 +42,491 @@ function E() {
|
|
|
41
42
|
confidence: 88,
|
|
42
43
|
action: "View Carts"
|
|
43
44
|
}
|
|
44
|
-
],
|
|
45
|
-
totalOrders:
|
|
46
|
-
totalSpent:
|
|
45
|
+
], H = M.slice(0, 3), U = P.slice(0, 3), W = {
|
|
46
|
+
totalOrders: M.length,
|
|
47
|
+
totalSpent: M.reduce((e, t) => e + t.total, 0),
|
|
47
48
|
favoriteCount: 6,
|
|
48
49
|
avgRating: 4.5
|
|
49
|
-
},
|
|
50
|
+
}, G = (e) => {
|
|
50
51
|
switch (e) {
|
|
51
|
-
case "delivered": return "bg-
|
|
52
|
-
case "preparing": return "bg-
|
|
53
|
-
case "out_for_delivery": return "bg-
|
|
54
|
-
case "confirmed": return "bg-
|
|
55
|
-
case "cancelled": return "bg-
|
|
52
|
+
case "delivered": return "bg-status-success-bg/20 text-status-success-text";
|
|
53
|
+
case "preparing": return "bg-status-warning-bg/20 text-status-warning-text";
|
|
54
|
+
case "out_for_delivery": return "bg-status-info-bg/20 text-status-info-text";
|
|
55
|
+
case "confirmed": return "bg-status-info-bg/20 text-status-info-text";
|
|
56
|
+
case "cancelled": return "bg-status-error-bg/20 text-status-error-text";
|
|
56
57
|
default: return "bg-bg-sunken text-text-secondary";
|
|
57
58
|
}
|
|
58
|
-
},
|
|
59
|
+
}, K = (e) => {
|
|
59
60
|
switch (e) {
|
|
60
61
|
case "suggestion": return /* @__PURE__ */ C(p, { className: "h-4 w-4" });
|
|
61
62
|
case "opportunity": return /* @__PURE__ */ C(b, { className: "h-4 w-4" });
|
|
62
63
|
case "trend": return /* @__PURE__ */ C(S, { className: "h-4 w-4" });
|
|
63
64
|
default: return /* @__PURE__ */ C(p, { className: "h-4 w-4" });
|
|
64
65
|
}
|
|
65
|
-
},
|
|
66
|
+
}, q = (e) => {
|
|
66
67
|
switch (e) {
|
|
67
|
-
case "suggestion": return "bg-
|
|
68
|
-
case "opportunity": return "bg-
|
|
69
|
-
case "trend": return "bg-
|
|
70
|
-
default: return "bg-bg-sunken text-text-secondary border-border-
|
|
68
|
+
case "suggestion": return "bg-status-info-bg/10 text-status-info-text border-status-info-border/20";
|
|
69
|
+
case "opportunity": return "bg-status-success-bg/10 text-status-success-text border-status-success-border/20";
|
|
70
|
+
case "trend": return "bg-status-warning-bg/10 text-status-warning-text border-status-warning-border/20";
|
|
71
|
+
default: return "bg-bg-sunken text-text-secondary border-border-seam";
|
|
71
72
|
}
|
|
72
73
|
};
|
|
73
|
-
return
|
|
74
|
-
title:
|
|
74
|
+
return R ? /* @__PURE__ */ C(n, {
|
|
75
|
+
title: z("subscriberbot.customerDashboard.title", "Dashboard"),
|
|
75
76
|
children: /* @__PURE__ */ C("div", {
|
|
76
77
|
className: "flex items-center justify-center py-20",
|
|
77
78
|
children: /* @__PURE__ */ w("div", {
|
|
78
79
|
className: "text-center",
|
|
79
80
|
children: [/* @__PURE__ */ C("div", { className: "mx-auto mb-4 h-12 w-12 animate-spin rounded-full border-b-2 border-foreground" }), /* @__PURE__ */ C("p", {
|
|
80
81
|
className: "text-sm text-text-secondary",
|
|
81
|
-
children:
|
|
82
|
+
children: z("subscriberbot.customerDashboard.loading", "Loading your dashboard...")
|
|
82
83
|
})]
|
|
83
84
|
})
|
|
84
85
|
})
|
|
85
86
|
}) : /* @__PURE__ */ w(n, {
|
|
86
|
-
title:
|
|
87
|
-
description: `${
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
/* @__PURE__ */ C("
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
/* @__PURE__ */ C("div", {
|
|
124
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface p-4",
|
|
125
|
-
children: /* @__PURE__ */ w("div", {
|
|
126
|
-
className: "flex items-center gap-3",
|
|
127
|
-
children: [/* @__PURE__ */ C("div", {
|
|
128
|
-
className: "flex h-10 w-10 items-center justify-center rounded-lg bg-bg-sunken",
|
|
129
|
-
children: /* @__PURE__ */ C(f, { className: "h-5 w-5 text-text-secondary" })
|
|
130
|
-
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
131
|
-
className: "text-2xl font-bold text-text-primary",
|
|
132
|
-
children: V.favoriteCount
|
|
133
|
-
}), /* @__PURE__ */ C("p", {
|
|
134
|
-
className: "text-xs text-text-secondary",
|
|
135
|
-
children: I("subscriberbot.customerDashboard.favoriteCarts", "Favorite Carts")
|
|
136
|
-
})] })]
|
|
137
|
-
})
|
|
138
|
-
}),
|
|
139
|
-
/* @__PURE__ */ C("div", {
|
|
140
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface p-4",
|
|
141
|
-
children: /* @__PURE__ */ w("div", {
|
|
142
|
-
className: "flex items-center gap-3",
|
|
143
|
-
children: [/* @__PURE__ */ C("div", {
|
|
144
|
-
className: "flex h-10 w-10 items-center justify-center rounded-lg bg-bg-sunken",
|
|
145
|
-
children: /* @__PURE__ */ C(y, { className: "h-5 w-5 text-text-secondary" })
|
|
146
|
-
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
147
|
-
className: "text-2xl font-bold text-text-primary",
|
|
148
|
-
children: V.avgRating.toFixed(1)
|
|
149
|
-
}), /* @__PURE__ */ C("p", {
|
|
150
|
-
className: "text-xs text-text-secondary",
|
|
151
|
-
children: I("subscriberbot.customerDashboard.avgRatingGiven", "Avg Rating Given")
|
|
152
|
-
})] })]
|
|
153
|
-
})
|
|
154
|
-
})
|
|
155
|
-
]
|
|
156
|
-
}), /* @__PURE__ */ w("div", {
|
|
157
|
-
className: "mt-8 grid grid-cols-1 gap-8 lg:grid-cols-3",
|
|
158
|
-
children: [/* @__PURE__ */ w("div", {
|
|
159
|
-
className: "lg:col-span-2 space-y-8",
|
|
87
|
+
title: z("subscriberbot.customerDashboard.welcomeBack", "Welcome Back!"),
|
|
88
|
+
description: `${O()}, ${B}`,
|
|
89
|
+
titleGradient: !0,
|
|
90
|
+
children: [
|
|
91
|
+
/* @__PURE__ */ C(D, {
|
|
92
|
+
icon: /* @__PURE__ */ C(v, { className: "h-4 w-4" }),
|
|
93
|
+
className: "mb-6",
|
|
94
|
+
children: "Your personal hub as a customer. Reorder from carts you love, pick up where your last order left off, and keep tabs on what you've spent and the carts you've favourited. From here you can discover new services nearby, track active orders and leave reviews — everything you need in one place."
|
|
95
|
+
}),
|
|
96
|
+
/* @__PURE__ */ C(E, {
|
|
97
|
+
storageKey: "subscriberbot-customer-dashboard",
|
|
98
|
+
steps: [
|
|
99
|
+
{
|
|
100
|
+
id: "discover",
|
|
101
|
+
label: "Discover services near you",
|
|
102
|
+
description: "Browse local carts and find something new to try.",
|
|
103
|
+
icon: /* @__PURE__ */ C(_, { className: "h-4 w-4" }),
|
|
104
|
+
onClick: () => k("/customer/discover")
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
id: "track-orders",
|
|
108
|
+
label: "Track your orders",
|
|
109
|
+
description: "See the status of anything you have on the way.",
|
|
110
|
+
icon: /* @__PURE__ */ C(g, { className: "h-4 w-4" }),
|
|
111
|
+
onClick: () => k("/customer/orders")
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
id: "favorites",
|
|
115
|
+
label: "Revisit your favourites",
|
|
116
|
+
description: "Quickly reorder from carts you have saved.",
|
|
117
|
+
icon: /* @__PURE__ */ C(f, { className: "h-4 w-4" }),
|
|
118
|
+
onClick: () => k("/customer/favorites")
|
|
119
|
+
}
|
|
120
|
+
]
|
|
121
|
+
}),
|
|
122
|
+
W && /* @__PURE__ */ w(T, {
|
|
123
|
+
className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-4",
|
|
160
124
|
children: [
|
|
161
|
-
/* @__PURE__ */
|
|
162
|
-
className: "
|
|
163
|
-
children:
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
125
|
+
/* @__PURE__ */ C("div", {
|
|
126
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-4",
|
|
127
|
+
children: /* @__PURE__ */ w("div", {
|
|
128
|
+
className: "flex items-center gap-3",
|
|
129
|
+
children: [/* @__PURE__ */ C("div", {
|
|
130
|
+
className: "flex h-10 w-10 items-center justify-center rounded-lg bg-bg-sunken",
|
|
131
|
+
children: /* @__PURE__ */ C(g, { className: "h-5 w-5 text-text-secondary" })
|
|
132
|
+
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
133
|
+
className: "text-2xl font-bold text-text-primary",
|
|
134
|
+
children: W.totalOrders
|
|
135
|
+
}), /* @__PURE__ */ C("p", {
|
|
136
|
+
className: "text-xs text-text-secondary",
|
|
137
|
+
children: z("subscriberbot.customerDashboard.totalOrders", "Total Orders")
|
|
138
|
+
})] })]
|
|
139
|
+
})
|
|
140
|
+
}),
|
|
141
|
+
/* @__PURE__ */ C("div", {
|
|
142
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-4",
|
|
143
|
+
children: /* @__PURE__ */ w("div", {
|
|
144
|
+
className: "flex items-center gap-3",
|
|
145
|
+
children: [/* @__PURE__ */ C("div", {
|
|
146
|
+
className: "flex h-10 w-10 items-center justify-center rounded-lg bg-bg-sunken",
|
|
147
|
+
children: /* @__PURE__ */ C(d, { className: "h-5 w-5 text-text-secondary" })
|
|
148
|
+
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
149
|
+
className: "text-2xl font-bold text-text-primary",
|
|
150
|
+
children: o(W.totalSpent, { minimumFractionDigits: 0 })
|
|
151
|
+
}), /* @__PURE__ */ C("p", {
|
|
152
|
+
className: "text-xs text-text-secondary",
|
|
153
|
+
children: z("subscriberbot.customerDashboard.totalSpent", "Total Spent")
|
|
154
|
+
})] })]
|
|
155
|
+
})
|
|
156
|
+
}),
|
|
157
|
+
/* @__PURE__ */ C("div", {
|
|
158
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-4",
|
|
159
|
+
children: /* @__PURE__ */ w("div", {
|
|
160
|
+
className: "flex items-center gap-3",
|
|
161
|
+
children: [/* @__PURE__ */ C("div", {
|
|
162
|
+
className: "flex h-10 w-10 items-center justify-center rounded-lg bg-bg-sunken",
|
|
163
|
+
children: /* @__PURE__ */ C(f, { className: "h-5 w-5 text-text-secondary" })
|
|
164
|
+
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
165
|
+
className: "text-2xl font-bold text-text-primary",
|
|
166
|
+
children: W.favoriteCount
|
|
167
|
+
}), /* @__PURE__ */ C("p", {
|
|
168
|
+
className: "text-xs text-text-secondary",
|
|
169
|
+
children: z("subscriberbot.customerDashboard.favoriteCarts", "Favorite Carts")
|
|
170
|
+
})] })]
|
|
171
|
+
})
|
|
172
|
+
}),
|
|
173
|
+
/* @__PURE__ */ C("div", {
|
|
174
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-4",
|
|
175
|
+
children: /* @__PURE__ */ w("div", {
|
|
176
|
+
className: "flex items-center gap-3",
|
|
177
|
+
children: [/* @__PURE__ */ C("div", {
|
|
178
|
+
className: "flex h-10 w-10 items-center justify-center rounded-lg bg-bg-sunken",
|
|
179
|
+
children: /* @__PURE__ */ C(y, { className: "h-5 w-5 text-text-secondary" })
|
|
180
|
+
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
181
|
+
className: "text-2xl font-bold text-text-primary",
|
|
182
|
+
children: W.avgRating.toFixed(1)
|
|
183
|
+
}), /* @__PURE__ */ C("p", {
|
|
184
|
+
className: "text-xs text-text-secondary",
|
|
185
|
+
children: z("subscriberbot.customerDashboard.avgRatingGiven", "Avg Rating Given")
|
|
186
|
+
})] })]
|
|
187
|
+
})
|
|
188
|
+
})
|
|
189
|
+
]
|
|
190
|
+
}),
|
|
191
|
+
/* @__PURE__ */ w("div", {
|
|
192
|
+
className: "mt-8 grid grid-cols-1 gap-8 lg:grid-cols-3",
|
|
193
|
+
children: [/* @__PURE__ */ w("div", {
|
|
194
|
+
className: "lg:col-span-2 space-y-8",
|
|
195
|
+
children: [
|
|
196
|
+
/* @__PURE__ */ w("section", { children: [/* @__PURE__ */ C("h2", {
|
|
197
|
+
className: "text-lg font-semibold text-text-primary mb-4",
|
|
198
|
+
children: z("subscriberbot.customerDashboard.quickActions", "Quick Actions")
|
|
199
|
+
}), /* @__PURE__ */ w("div", {
|
|
200
|
+
className: "grid grid-cols-1 gap-3 sm:grid-cols-3",
|
|
201
|
+
children: [
|
|
202
|
+
/* @__PURE__ */ w("button", {
|
|
203
|
+
type: "button",
|
|
204
|
+
onClick: () => k("/customer/carts"),
|
|
205
|
+
className: t("flex items-center gap-3 rounded-lg border border-border-seam bg-bg-surface p-4 shadow-sm transition-colors text-left", "hover:bg-accent hover:shadow-md"),
|
|
206
|
+
children: [/* @__PURE__ */ C("div", {
|
|
207
|
+
className: "flex h-10 w-10 shrink-0 items-center justify-center rounded-lg bg-status-info-bg/10",
|
|
208
|
+
children: /* @__PURE__ */ C(_, { className: "h-5 w-5 text-status-info-text" })
|
|
209
|
+
}), /* @__PURE__ */ w("div", {
|
|
210
|
+
className: "min-w-0",
|
|
211
|
+
children: [/* @__PURE__ */ C("p", {
|
|
212
|
+
className: "text-sm font-semibold text-text-primary",
|
|
213
|
+
children: z("subscriberbot.customerDashboard.discoverCarts", "Discover Carts")
|
|
214
|
+
}), /* @__PURE__ */ C("p", {
|
|
215
|
+
className: "text-xs text-text-secondary",
|
|
216
|
+
children: z("subscriberbot.customerDashboard.findNearbyCarts", "Find nearby carts")
|
|
217
|
+
})]
|
|
182
218
|
})]
|
|
183
|
-
})
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
219
|
+
}),
|
|
220
|
+
/* @__PURE__ */ w("button", {
|
|
221
|
+
type: "button",
|
|
222
|
+
onClick: () => k("/customer/orders"),
|
|
223
|
+
className: t("flex items-center gap-3 rounded-lg border border-border-seam bg-bg-surface p-4 shadow-sm transition-colors text-left", "hover:bg-accent hover:shadow-md"),
|
|
224
|
+
children: [/* @__PURE__ */ C("div", {
|
|
225
|
+
className: "flex h-10 w-10 shrink-0 items-center justify-center rounded-lg bg-status-success-bg/10",
|
|
226
|
+
children: /* @__PURE__ */ C(u, { className: "h-5 w-5 text-status-success-text" })
|
|
227
|
+
}), /* @__PURE__ */ w("div", {
|
|
228
|
+
className: "min-w-0",
|
|
229
|
+
children: [/* @__PURE__ */ C("p", {
|
|
230
|
+
className: "text-sm font-semibold text-text-primary",
|
|
231
|
+
children: z("subscriberbot.customerDashboard.orderHistory", "Order History")
|
|
232
|
+
}), /* @__PURE__ */ C("p", {
|
|
233
|
+
className: "text-xs text-text-secondary",
|
|
234
|
+
children: z("subscriberbot.customerDashboard.viewPastOrders", "View past orders")
|
|
235
|
+
})]
|
|
200
236
|
})]
|
|
201
|
-
})
|
|
202
|
-
|
|
203
|
-
|
|
237
|
+
}),
|
|
238
|
+
/* @__PURE__ */ w("button", {
|
|
239
|
+
type: "button",
|
|
240
|
+
onClick: () => k("/customer/favorites"),
|
|
241
|
+
className: t("flex items-center gap-3 rounded-lg border border-border-seam bg-bg-surface p-4 shadow-sm transition-colors text-left", "hover:bg-accent hover:shadow-md"),
|
|
242
|
+
children: [/* @__PURE__ */ C("div", {
|
|
243
|
+
className: "flex h-10 w-10 shrink-0 items-center justify-center rounded-lg bg-status-error-bg/10",
|
|
244
|
+
children: /* @__PURE__ */ C(f, { className: "h-5 w-5 text-status-error-text" })
|
|
245
|
+
}), /* @__PURE__ */ w("div", {
|
|
246
|
+
className: "min-w-0",
|
|
247
|
+
children: [/* @__PURE__ */ C("p", {
|
|
248
|
+
className: "text-sm font-semibold text-text-primary",
|
|
249
|
+
children: z("subscriberbot.customerDashboard.favorites", "Favorites")
|
|
250
|
+
}), /* @__PURE__ */ C("p", {
|
|
251
|
+
className: "text-xs text-text-secondary",
|
|
252
|
+
children: z("subscriberbot.customerDashboard.savedCarts", "Saved carts")
|
|
253
|
+
})]
|
|
254
|
+
})]
|
|
255
|
+
})
|
|
256
|
+
]
|
|
257
|
+
})] }),
|
|
258
|
+
/* @__PURE__ */ w("section", { children: [/* @__PURE__ */ w("div", {
|
|
259
|
+
className: "flex items-center justify-between mb-4",
|
|
260
|
+
children: [/* @__PURE__ */ C("h2", {
|
|
261
|
+
className: "text-lg font-semibold text-text-primary",
|
|
262
|
+
children: z("subscriberbot.customerDashboard.recentOrders", "Recent Orders")
|
|
263
|
+
}), /* @__PURE__ */ w("button", {
|
|
204
264
|
type: "button",
|
|
205
|
-
onClick: () =>
|
|
206
|
-
className:
|
|
207
|
-
children: [/* @__PURE__ */ C("
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
className: "
|
|
217
|
-
children:
|
|
265
|
+
onClick: () => k("/customer/orders"),
|
|
266
|
+
className: "flex items-center gap-1 text-sm font-medium text-text-secondary hover:text-text-primary transition-colors",
|
|
267
|
+
children: [z("subscriberbot.common.viewAll", "View All"), /* @__PURE__ */ C(l, { className: "h-4 w-4" })]
|
|
268
|
+
})]
|
|
269
|
+
}), H.length > 0 ? /* @__PURE__ */ C("div", {
|
|
270
|
+
className: "space-y-3",
|
|
271
|
+
children: H.map((e) => /* @__PURE__ */ C("div", {
|
|
272
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-4",
|
|
273
|
+
children: /* @__PURE__ */ w("div", {
|
|
274
|
+
className: "flex flex-col sm:flex-row sm:items-start sm:justify-between gap-3",
|
|
275
|
+
children: [/* @__PURE__ */ w("div", {
|
|
276
|
+
className: "flex-1 min-w-0",
|
|
277
|
+
children: [
|
|
278
|
+
/* @__PURE__ */ w("div", {
|
|
279
|
+
className: "flex flex-wrap items-center gap-2 mb-1",
|
|
280
|
+
children: [/* @__PURE__ */ C("h3", {
|
|
281
|
+
className: "text-sm font-semibold text-text-primary",
|
|
282
|
+
children: e.cartName
|
|
283
|
+
}), /* @__PURE__ */ C("span", {
|
|
284
|
+
className: t("inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium capitalize", G(e.status)),
|
|
285
|
+
children: e.status.replace(/_/g, " ")
|
|
286
|
+
})]
|
|
287
|
+
}),
|
|
288
|
+
/* @__PURE__ */ C("p", {
|
|
289
|
+
className: "text-xs text-text-secondary mb-2 leading-relaxed",
|
|
290
|
+
children: e.items.map((e) => `${e.name} (${e.quantity})`).join(", ")
|
|
291
|
+
}),
|
|
292
|
+
/* @__PURE__ */ w("div", {
|
|
293
|
+
className: "flex flex-wrap items-center gap-3 text-xs text-text-secondary",
|
|
294
|
+
children: [
|
|
295
|
+
/* @__PURE__ */ C("span", {
|
|
296
|
+
className: "font-medium text-text-primary",
|
|
297
|
+
children: o(e.total, { minimumFractionDigits: 0 })
|
|
298
|
+
}),
|
|
299
|
+
/* @__PURE__ */ C("span", { children: new Date(e.orderDate).toLocaleDateString() }),
|
|
300
|
+
e.rating && /* @__PURE__ */ w("span", {
|
|
301
|
+
className: "flex items-center gap-1",
|
|
302
|
+
children: [/* @__PURE__ */ C(y, { className: "h-3 w-3 fill-status-warning-text text-status-warning-text" }), e.rating]
|
|
303
|
+
})
|
|
304
|
+
]
|
|
305
|
+
})
|
|
306
|
+
]
|
|
307
|
+
}), /* @__PURE__ */ C("button", {
|
|
308
|
+
type: "button",
|
|
309
|
+
onClick: () => k(`/customer/orders/${e.id}`),
|
|
310
|
+
className: "rounded-lg border border-border-seam px-3 py-1.5 text-xs font-medium text-text-primary hover:bg-accent transition-colors",
|
|
311
|
+
children: z("subscriberbot.customerDashboard.viewDetails", "View Details")
|
|
218
312
|
})]
|
|
219
|
-
})
|
|
220
|
-
})
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
className: "space-y-3",
|
|
236
|
-
children: z.map((e) => /* @__PURE__ */ C("div", {
|
|
237
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface p-4",
|
|
238
|
-
children: /* @__PURE__ */ w("div", {
|
|
239
|
-
className: "flex flex-col sm:flex-row sm:items-start sm:justify-between gap-3",
|
|
313
|
+
})
|
|
314
|
+
}, e.id))
|
|
315
|
+
}) : /* @__PURE__ */ w("div", {
|
|
316
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-8 text-center",
|
|
317
|
+
children: [/* @__PURE__ */ C(v, { className: "mx-auto h-10 w-10 text-text-secondary/50" }), /* @__PURE__ */ C("p", {
|
|
318
|
+
className: "mt-3 text-sm text-text-secondary",
|
|
319
|
+
children: z("subscriberbot.customerDashboard.noRecentOrders", "No recent orders")
|
|
320
|
+
})]
|
|
321
|
+
})] }),
|
|
322
|
+
/* @__PURE__ */ w("section", { children: [/* @__PURE__ */ C("h2", {
|
|
323
|
+
className: "text-lg font-semibold text-text-primary mb-4",
|
|
324
|
+
children: z("subscriberbot.customerDashboard.recommendedForYou", "Recommended for You")
|
|
325
|
+
}), /* @__PURE__ */ C("div", {
|
|
326
|
+
className: "grid grid-cols-1 gap-4 sm:grid-cols-2",
|
|
327
|
+
children: U.map((e) => /* @__PURE__ */ w("div", {
|
|
328
|
+
className: "rounded-lg border border-border-seam bg-bg-surface overflow-hidden shadow-sm hover:shadow-md transition-shadow",
|
|
240
329
|
children: [/* @__PURE__ */ w("div", {
|
|
241
|
-
className: "
|
|
330
|
+
className: "relative h-40",
|
|
331
|
+
children: [/* @__PURE__ */ C("img", {
|
|
332
|
+
src: e.image,
|
|
333
|
+
alt: e.name,
|
|
334
|
+
className: "h-full w-full object-cover"
|
|
335
|
+
}), /* @__PURE__ */ C("div", {
|
|
336
|
+
className: "absolute top-2 right-2",
|
|
337
|
+
children: /* @__PURE__ */ C("span", {
|
|
338
|
+
className: t("inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium", e.isOpen ? "bg-status-success-bg/20 text-status-success-text" : "bg-status-error-bg/20 text-status-error-text"),
|
|
339
|
+
children: e.isOpen ? z("subscriberbot.customerDashboard.open", "Open") : z("subscriberbot.customerDashboard.closed", "Closed")
|
|
340
|
+
})
|
|
341
|
+
})]
|
|
342
|
+
}), /* @__PURE__ */ w("div", {
|
|
343
|
+
className: "p-4",
|
|
242
344
|
children: [
|
|
243
345
|
/* @__PURE__ */ w("div", {
|
|
244
|
-
className: "flex
|
|
245
|
-
children: [/* @__PURE__ */
|
|
246
|
-
className: "
|
|
247
|
-
children:
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
346
|
+
className: "flex items-start justify-between mb-2",
|
|
347
|
+
children: [/* @__PURE__ */ w("div", {
|
|
348
|
+
className: "min-w-0 flex-1",
|
|
349
|
+
children: [/* @__PURE__ */ C("h3", {
|
|
350
|
+
className: "text-sm font-semibold text-text-primary",
|
|
351
|
+
children: e.name
|
|
352
|
+
}), /* @__PURE__ */ C("p", {
|
|
353
|
+
className: "text-xs text-text-secondary",
|
|
354
|
+
children: e.category
|
|
355
|
+
})]
|
|
356
|
+
}), /* @__PURE__ */ w("div", {
|
|
357
|
+
className: "flex items-center gap-1 text-xs",
|
|
358
|
+
children: [/* @__PURE__ */ C(y, { className: "h-3 w-3 fill-status-warning-text text-status-warning-text" }), /* @__PURE__ */ C("span", {
|
|
359
|
+
className: "font-medium text-text-primary",
|
|
360
|
+
children: e.rating
|
|
361
|
+
})]
|
|
251
362
|
})]
|
|
252
363
|
}),
|
|
253
|
-
/* @__PURE__ */ C("p", {
|
|
254
|
-
className: "text-xs text-text-secondary mb-2 leading-relaxed",
|
|
255
|
-
children: e.items.map((e) => `${e.name} (${e.quantity})`).join(", ")
|
|
256
|
-
}),
|
|
257
364
|
/* @__PURE__ */ w("div", {
|
|
258
|
-
className: "flex
|
|
365
|
+
className: "flex items-center gap-3 text-xs text-text-secondary mb-3",
|
|
366
|
+
children: [/* @__PURE__ */ w("span", {
|
|
367
|
+
className: "flex items-center gap-1",
|
|
368
|
+
children: [
|
|
369
|
+
/* @__PURE__ */ C(m, { className: "h-3 w-3" }),
|
|
370
|
+
e.distance,
|
|
371
|
+
"km away"
|
|
372
|
+
]
|
|
373
|
+
}), /* @__PURE__ */ w("span", {
|
|
374
|
+
className: "flex items-center gap-1",
|
|
375
|
+
children: [
|
|
376
|
+
/* @__PURE__ */ C(u, { className: "h-3 w-3" }),
|
|
377
|
+
e.estimatedTime,
|
|
378
|
+
" mins"
|
|
379
|
+
]
|
|
380
|
+
})]
|
|
381
|
+
}),
|
|
382
|
+
/* @__PURE__ */ C("button", {
|
|
383
|
+
type: "button",
|
|
384
|
+
disabled: !e.isOpen,
|
|
385
|
+
onClick: () => e.isOpen && k(`/customer/carts/${e.id}`),
|
|
386
|
+
className: t("w-full rounded-lg py-2 text-sm font-medium transition-opacity", e.isOpen ? "bg-foreground text-background hover:opacity-90" : "bg-bg-sunken text-text-secondary cursor-not-allowed"),
|
|
387
|
+
children: e.isOpen ? z("subscriberbot.customerDashboard.viewMenu", "View Menu") : z("subscriberbot.customerDashboard.currentlyClosed", "Currently Closed")
|
|
388
|
+
})
|
|
389
|
+
]
|
|
390
|
+
})]
|
|
391
|
+
}, e.id))
|
|
392
|
+
})] })
|
|
393
|
+
]
|
|
394
|
+
}), /* @__PURE__ */ w("div", {
|
|
395
|
+
className: "space-y-6",
|
|
396
|
+
children: [
|
|
397
|
+
/* @__PURE__ */ w("div", {
|
|
398
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-5",
|
|
399
|
+
children: [/* @__PURE__ */ C("h3", {
|
|
400
|
+
className: "text-base font-semibold text-text-primary mb-4",
|
|
401
|
+
children: z("subscriberbot.customerDashboard.personalizedRecommendations", "Personalized Recommendations")
|
|
402
|
+
}), /* @__PURE__ */ C("div", {
|
|
403
|
+
className: "space-y-3",
|
|
404
|
+
children: V.map((e) => /* @__PURE__ */ C("div", {
|
|
405
|
+
className: t("rounded-lg border p-3", q(e.type)),
|
|
406
|
+
children: /* @__PURE__ */ w("div", {
|
|
407
|
+
className: "flex items-start gap-2",
|
|
408
|
+
children: [/* @__PURE__ */ C("div", {
|
|
409
|
+
className: "mt-0.5 shrink-0",
|
|
410
|
+
children: K(e.type)
|
|
411
|
+
}), /* @__PURE__ */ w("div", {
|
|
412
|
+
className: "flex-1 min-w-0",
|
|
259
413
|
children: [
|
|
260
|
-
/* @__PURE__ */
|
|
261
|
-
className: "
|
|
262
|
-
children:
|
|
414
|
+
/* @__PURE__ */ w("div", {
|
|
415
|
+
className: "flex items-center justify-between gap-2",
|
|
416
|
+
children: [/* @__PURE__ */ C("p", {
|
|
417
|
+
className: "text-xs font-semibold",
|
|
418
|
+
children: e.title
|
|
419
|
+
}), /* @__PURE__ */ w("span", {
|
|
420
|
+
className: "text-[10px] opacity-70",
|
|
421
|
+
children: [e.confidence, "%"]
|
|
422
|
+
})]
|
|
423
|
+
}),
|
|
424
|
+
/* @__PURE__ */ C("p", {
|
|
425
|
+
className: "mt-1 text-xs opacity-80 leading-relaxed",
|
|
426
|
+
children: e.description
|
|
263
427
|
}),
|
|
264
|
-
/* @__PURE__ */ C("
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
428
|
+
/* @__PURE__ */ C("button", {
|
|
429
|
+
type: "button",
|
|
430
|
+
onClick: () => k("/customer/carts"),
|
|
431
|
+
className: "mt-2 text-[10px] font-semibold underline underline-offset-2",
|
|
432
|
+
children: e.action
|
|
268
433
|
})
|
|
269
434
|
]
|
|
270
|
-
})
|
|
271
|
-
]
|
|
272
|
-
}), /* @__PURE__ */ C("button", {
|
|
273
|
-
type: "button",
|
|
274
|
-
onClick: () => E(`/customer/orders/${e.id}`),
|
|
275
|
-
className: "rounded-lg border border-border-subtle px-3 py-1.5 text-xs font-medium text-text-primary hover:bg-accent transition-colors",
|
|
276
|
-
children: I("subscriberbot.customerDashboard.viewDetails", "View Details")
|
|
277
|
-
})]
|
|
278
|
-
})
|
|
279
|
-
}, e.id))
|
|
280
|
-
}) : /* @__PURE__ */ w("div", {
|
|
281
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface p-8 text-center",
|
|
282
|
-
children: [/* @__PURE__ */ C(v, { className: "mx-auto h-10 w-10 text-text-secondary/50" }), /* @__PURE__ */ C("p", {
|
|
283
|
-
className: "mt-3 text-sm text-text-secondary",
|
|
284
|
-
children: I("subscriberbot.customerDashboard.noRecentOrders", "No recent orders")
|
|
285
|
-
})]
|
|
286
|
-
})] }),
|
|
287
|
-
/* @__PURE__ */ w("section", { children: [/* @__PURE__ */ C("h2", {
|
|
288
|
-
className: "text-lg font-semibold text-text-primary mb-4",
|
|
289
|
-
children: I("subscriberbot.customerDashboard.recommendedForYou", "Recommended for You")
|
|
290
|
-
}), /* @__PURE__ */ C("div", {
|
|
291
|
-
className: "grid grid-cols-1 gap-4 sm:grid-cols-2",
|
|
292
|
-
children: B.map((e) => /* @__PURE__ */ w("div", {
|
|
293
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface overflow-hidden shadow-sm hover:shadow-md transition-shadow",
|
|
294
|
-
children: [/* @__PURE__ */ w("div", {
|
|
295
|
-
className: "relative h-40",
|
|
296
|
-
children: [/* @__PURE__ */ C("img", {
|
|
297
|
-
src: e.image,
|
|
298
|
-
alt: e.name,
|
|
299
|
-
className: "h-full w-full object-cover"
|
|
300
|
-
}), /* @__PURE__ */ C("div", {
|
|
301
|
-
className: "absolute top-2 right-2",
|
|
302
|
-
children: /* @__PURE__ */ C("span", {
|
|
303
|
-
className: t("inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium", e.isOpen ? "bg-green-500/20 text-green-600 dark:text-green-400" : "bg-red-500/20 text-red-600 dark:text-red-400"),
|
|
304
|
-
children: e.isOpen ? I("subscriberbot.customerDashboard.open", "Open") : I("subscriberbot.customerDashboard.closed", "Closed")
|
|
435
|
+
})]
|
|
305
436
|
})
|
|
306
|
-
})
|
|
437
|
+
}, e.id))
|
|
438
|
+
})]
|
|
439
|
+
}),
|
|
440
|
+
/* @__PURE__ */ w("div", {
|
|
441
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-5",
|
|
442
|
+
children: [/* @__PURE__ */ C("h3", {
|
|
443
|
+
className: "text-base font-semibold text-text-primary mb-3",
|
|
444
|
+
children: z("subscriberbot.customerDashboard.quickLinks", "Quick Links")
|
|
307
445
|
}), /* @__PURE__ */ w("div", {
|
|
308
|
-
className: "
|
|
446
|
+
className: "space-y-2",
|
|
309
447
|
children: [
|
|
310
|
-
/* @__PURE__ */ w("
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
className: "text-sm font-semibold text-text-primary",
|
|
316
|
-
children: e.name
|
|
317
|
-
}), /* @__PURE__ */ C("p", {
|
|
318
|
-
className: "text-xs text-text-secondary",
|
|
319
|
-
children: e.category
|
|
320
|
-
})]
|
|
321
|
-
}), /* @__PURE__ */ w("div", {
|
|
322
|
-
className: "flex items-center gap-1 text-xs",
|
|
323
|
-
children: [/* @__PURE__ */ C(y, { className: "h-3 w-3 fill-yellow-400 text-yellow-400" }), /* @__PURE__ */ C("span", {
|
|
324
|
-
className: "font-medium text-text-primary",
|
|
325
|
-
children: e.rating
|
|
326
|
-
})]
|
|
327
|
-
})]
|
|
448
|
+
/* @__PURE__ */ w("button", {
|
|
449
|
+
type: "button",
|
|
450
|
+
onClick: () => k("/customer/profile"),
|
|
451
|
+
className: "flex w-full items-center gap-2 rounded-lg border border-border-seam px-3 py-2.5 text-sm text-text-primary hover:bg-accent transition-colors text-left",
|
|
452
|
+
children: [/* @__PURE__ */ C(x, { className: "h-4 w-4 text-text-secondary" }), z("subscriberbot.customerDashboard.profileSettings", "Profile Settings")]
|
|
328
453
|
}),
|
|
329
|
-
/* @__PURE__ */ w("
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
/* @__PURE__ */ C(m, { className: "h-3 w-3" }),
|
|
335
|
-
e.distance,
|
|
336
|
-
"km away"
|
|
337
|
-
]
|
|
338
|
-
}), /* @__PURE__ */ w("span", {
|
|
339
|
-
className: "flex items-center gap-1",
|
|
340
|
-
children: [
|
|
341
|
-
/* @__PURE__ */ C(u, { className: "h-3 w-3" }),
|
|
342
|
-
e.estimatedTime,
|
|
343
|
-
" mins"
|
|
344
|
-
]
|
|
345
|
-
})]
|
|
454
|
+
/* @__PURE__ */ w("button", {
|
|
455
|
+
type: "button",
|
|
456
|
+
onClick: () => k("/customer/addresses"),
|
|
457
|
+
className: "flex w-full items-center gap-2 rounded-lg border border-border-seam px-3 py-2.5 text-sm text-text-primary hover:bg-accent transition-colors text-left",
|
|
458
|
+
children: [/* @__PURE__ */ C(m, { className: "h-4 w-4 text-text-secondary" }), z("subscriberbot.customerDashboard.savedAddresses", "Saved Addresses")]
|
|
346
459
|
}),
|
|
347
|
-
/* @__PURE__ */
|
|
460
|
+
/* @__PURE__ */ w("button", {
|
|
348
461
|
type: "button",
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
children: e.isOpen ? I("subscriberbot.customerDashboard.viewMenu", "View Menu") : I("subscriberbot.customerDashboard.currentlyClosed", "Currently Closed")
|
|
462
|
+
onClick: () => k("/customer/payment-methods"),
|
|
463
|
+
className: "flex w-full items-center gap-2 rounded-lg border border-border-seam px-3 py-2.5 text-sm text-text-primary hover:bg-accent transition-colors text-left",
|
|
464
|
+
children: [/* @__PURE__ */ C(d, { className: "h-4 w-4 text-text-secondary" }), z("subscriberbot.customerDashboard.paymentMethods", "Payment Methods")]
|
|
353
465
|
})
|
|
354
466
|
]
|
|
355
467
|
})]
|
|
356
|
-
},
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
}), /* @__PURE__ */ C("div", {
|
|
368
|
-
className: "space-y-3",
|
|
369
|
-
children: R.map((e) => /* @__PURE__ */ C("div", {
|
|
370
|
-
className: t("rounded-lg border p-3", W(e.type)),
|
|
371
|
-
children: /* @__PURE__ */ w("div", {
|
|
372
|
-
className: "flex items-start gap-2",
|
|
373
|
-
children: [/* @__PURE__ */ C("div", {
|
|
374
|
-
className: "mt-0.5 shrink-0",
|
|
375
|
-
children: U(e.type)
|
|
376
|
-
}), /* @__PURE__ */ w("div", {
|
|
468
|
+
}),
|
|
469
|
+
/* @__PURE__ */ w("div", {
|
|
470
|
+
className: "rounded-lg border border-border-seam bg-bg-surface p-5",
|
|
471
|
+
children: [
|
|
472
|
+
/* @__PURE__ */ C("h3", {
|
|
473
|
+
className: "text-base font-semibold text-text-primary mb-3",
|
|
474
|
+
children: z("subscriberbot.customerDashboard.currentLocation", "Current Location")
|
|
475
|
+
}),
|
|
476
|
+
/* @__PURE__ */ w("div", {
|
|
477
|
+
className: "flex items-start gap-3",
|
|
478
|
+
children: [/* @__PURE__ */ C(h, { className: "h-4 w-4 text-status-info-text mt-0.5 shrink-0" }), /* @__PURE__ */ w("div", {
|
|
377
479
|
className: "flex-1 min-w-0",
|
|
378
480
|
children: [
|
|
379
|
-
/* @__PURE__ */
|
|
380
|
-
className: "
|
|
381
|
-
children:
|
|
382
|
-
className: "text-xs font-semibold",
|
|
383
|
-
children: e.title
|
|
384
|
-
}), /* @__PURE__ */ w("span", {
|
|
385
|
-
className: "text-[10px] opacity-70",
|
|
386
|
-
children: [e.confidence, "%"]
|
|
387
|
-
})]
|
|
481
|
+
/* @__PURE__ */ C("p", {
|
|
482
|
+
className: "text-sm font-medium text-text-primary",
|
|
483
|
+
children: "Koramangala"
|
|
388
484
|
}),
|
|
389
485
|
/* @__PURE__ */ C("p", {
|
|
390
|
-
className: "
|
|
391
|
-
children:
|
|
486
|
+
className: "text-xs text-text-secondary",
|
|
487
|
+
children: "80 Feet Road, 6th Block"
|
|
392
488
|
}),
|
|
393
|
-
/* @__PURE__ */ C("
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
className: "mt-2 text-[10px] font-semibold underline underline-offset-2",
|
|
397
|
-
children: e.action
|
|
489
|
+
/* @__PURE__ */ C("p", {
|
|
490
|
+
className: "text-xs text-text-secondary",
|
|
491
|
+
children: "Bangalore, Karnataka"
|
|
398
492
|
})
|
|
399
493
|
]
|
|
400
494
|
})]
|
|
495
|
+
}),
|
|
496
|
+
/* @__PURE__ */ C("button", {
|
|
497
|
+
type: "button",
|
|
498
|
+
onClick: () => k("/customer/addresses"),
|
|
499
|
+
className: "mt-3 w-full rounded-lg border border-border-seam px-3 py-2 text-xs font-medium text-text-primary hover:bg-accent transition-colors",
|
|
500
|
+
children: z("subscriberbot.customerDashboard.updateLocation", "Update Location")
|
|
401
501
|
})
|
|
402
|
-
|
|
403
|
-
})
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface p-5",
|
|
407
|
-
children: [/* @__PURE__ */ C("h3", {
|
|
408
|
-
className: "text-base font-semibold text-text-primary mb-3",
|
|
409
|
-
children: I("subscriberbot.customerDashboard.quickLinks", "Quick Links")
|
|
410
|
-
}), /* @__PURE__ */ w("div", {
|
|
411
|
-
className: "space-y-2",
|
|
502
|
+
]
|
|
503
|
+
}),
|
|
504
|
+
/* @__PURE__ */ w("div", {
|
|
505
|
+
className: "rounded-lg bg-gradient-to-r from-status-info-text/10 to-accent-purple/10 border border-status-info-border/20 p-5",
|
|
412
506
|
children: [
|
|
413
|
-
/* @__PURE__ */
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
className: "flex w-full items-center gap-2 rounded-lg border border-border-subtle px-3 py-2.5 text-sm text-text-primary hover:bg-accent transition-colors text-left",
|
|
417
|
-
children: [/* @__PURE__ */ C(x, { className: "h-4 w-4 text-text-secondary" }), I("subscriberbot.customerDashboard.profileSettings", "Profile Settings")]
|
|
507
|
+
/* @__PURE__ */ C("h3", {
|
|
508
|
+
className: "text-base font-semibold text-text-primary mb-2",
|
|
509
|
+
children: z("subscriberbot.customerDashboard.specialOffers", "Special Offers")
|
|
418
510
|
}),
|
|
419
|
-
/* @__PURE__ */
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
className: "flex w-full items-center gap-2 rounded-lg border border-border-subtle px-3 py-2.5 text-sm text-text-primary hover:bg-accent transition-colors text-left",
|
|
423
|
-
children: [/* @__PURE__ */ C(m, { className: "h-4 w-4 text-text-secondary" }), I("subscriberbot.customerDashboard.savedAddresses", "Saved Addresses")]
|
|
511
|
+
/* @__PURE__ */ C("p", {
|
|
512
|
+
className: "text-xs text-text-secondary mb-3 leading-relaxed",
|
|
513
|
+
children: z("subscriberbot.customerDashboard.specialOffersDescription", "Get 25% off on your next order from featured carts")
|
|
424
514
|
}),
|
|
425
|
-
/* @__PURE__ */
|
|
515
|
+
/* @__PURE__ */ C("button", {
|
|
426
516
|
type: "button",
|
|
427
|
-
onClick: () =>
|
|
428
|
-
className: "
|
|
429
|
-
children:
|
|
517
|
+
onClick: () => k("/customer/carts"),
|
|
518
|
+
className: "w-full rounded-lg bg-foreground px-3 py-2 text-sm font-medium text-background hover:opacity-90 transition-opacity",
|
|
519
|
+
children: z("subscriberbot.customerDashboard.viewOffers", "View Offers")
|
|
430
520
|
})
|
|
431
521
|
]
|
|
432
|
-
})
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
/* @__PURE__ */ C("h3", {
|
|
438
|
-
className: "text-base font-semibold text-text-primary mb-3",
|
|
439
|
-
children: I("subscriberbot.customerDashboard.currentLocation", "Current Location")
|
|
440
|
-
}),
|
|
441
|
-
/* @__PURE__ */ w("div", {
|
|
442
|
-
className: "flex items-start gap-3",
|
|
443
|
-
children: [/* @__PURE__ */ C(h, { className: "h-4 w-4 text-blue-500 mt-0.5 shrink-0" }), /* @__PURE__ */ w("div", {
|
|
444
|
-
className: "flex-1 min-w-0",
|
|
445
|
-
children: [
|
|
446
|
-
/* @__PURE__ */ C("p", {
|
|
447
|
-
className: "text-sm font-medium text-text-primary",
|
|
448
|
-
children: "Koramangala"
|
|
449
|
-
}),
|
|
450
|
-
/* @__PURE__ */ C("p", {
|
|
451
|
-
className: "text-xs text-text-secondary",
|
|
452
|
-
children: "80 Feet Road, 6th Block"
|
|
453
|
-
}),
|
|
454
|
-
/* @__PURE__ */ C("p", {
|
|
455
|
-
className: "text-xs text-text-secondary",
|
|
456
|
-
children: "Bangalore, Karnataka"
|
|
457
|
-
})
|
|
458
|
-
]
|
|
459
|
-
})]
|
|
460
|
-
}),
|
|
461
|
-
/* @__PURE__ */ C("button", {
|
|
462
|
-
type: "button",
|
|
463
|
-
onClick: () => E("/customer/addresses"),
|
|
464
|
-
className: "mt-3 w-full rounded-lg border border-border-subtle px-3 py-2 text-xs font-medium text-text-primary hover:bg-accent transition-colors",
|
|
465
|
-
children: I("subscriberbot.customerDashboard.updateLocation", "Update Location")
|
|
466
|
-
})
|
|
467
|
-
]
|
|
468
|
-
}),
|
|
469
|
-
/* @__PURE__ */ w("div", {
|
|
470
|
-
className: "rounded-lg bg-gradient-to-r from-blue-500/10 to-purple-500/10 border border-blue-500/20 p-5",
|
|
471
|
-
children: [
|
|
472
|
-
/* @__PURE__ */ C("h3", {
|
|
473
|
-
className: "text-base font-semibold text-text-primary mb-2",
|
|
474
|
-
children: I("subscriberbot.customerDashboard.specialOffers", "Special Offers")
|
|
475
|
-
}),
|
|
476
|
-
/* @__PURE__ */ C("p", {
|
|
477
|
-
className: "text-xs text-text-secondary mb-3 leading-relaxed",
|
|
478
|
-
children: I("subscriberbot.customerDashboard.specialOffersDescription", "Get 25% off on your next order from featured carts")
|
|
479
|
-
}),
|
|
480
|
-
/* @__PURE__ */ C("button", {
|
|
481
|
-
type: "button",
|
|
482
|
-
onClick: () => E("/customer/carts"),
|
|
483
|
-
className: "w-full rounded-lg bg-foreground px-3 py-2 text-sm font-medium text-background hover:opacity-90 transition-opacity",
|
|
484
|
-
children: I("subscriberbot.customerDashboard.viewOffers", "View Offers")
|
|
485
|
-
})
|
|
486
|
-
]
|
|
487
|
-
})
|
|
488
|
-
]
|
|
489
|
-
})]
|
|
490
|
-
})]
|
|
522
|
+
})
|
|
523
|
+
]
|
|
524
|
+
})]
|
|
525
|
+
})
|
|
526
|
+
]
|
|
491
527
|
});
|
|
492
528
|
}
|
|
493
529
|
//#endregion
|
|
494
|
-
export {
|
|
530
|
+
export { k as CustomerDashboard };
|
|
495
531
|
|
|
496
532
|
//# sourceMappingURL=CustomerDashboard.js.map
|