@burdenoff/microfe-kadaikodi 2026.704.3 → 2026.704.5

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