@burdenoff/microfe-kadaikodi 2026.625.1 → 2026.626.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/dist/kadaikodi/pages/HomePage.js +19 -14
  2. package/dist/kadaikodi/pages/HomePage.js.map +1 -1
  3. package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.js +118 -83
  4. package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.js.map +1 -1
  5. package/dist/kadaikodi/pages/admin/AdminDashboard.js +75 -46
  6. package/dist/kadaikodi/pages/admin/AdminDashboard.js.map +1 -1
  7. package/dist/kadaikodi/pages/admin/AdminFinancialPage.js +144 -128
  8. package/dist/kadaikodi/pages/admin/AdminFinancialPage.js.map +1 -1
  9. package/dist/kadaikodi/pages/admin/AdminOrdersPage.js +255 -237
  10. package/dist/kadaikodi/pages/admin/AdminOrdersPage.js.map +1 -1
  11. package/dist/kadaikodi/pages/admin/AdminProfilePage.js +129 -128
  12. package/dist/kadaikodi/pages/admin/AdminProfilePage.js.map +1 -1
  13. package/dist/kadaikodi/pages/admin/AdminSettingsPage.js +178 -150
  14. package/dist/kadaikodi/pages/admin/AdminSettingsPage.js.map +1 -1
  15. package/dist/kadaikodi/pages/admin/CartManagementPage.js +182 -159
  16. package/dist/kadaikodi/pages/admin/CartManagementPage.js.map +1 -1
  17. package/dist/kadaikodi/pages/admin/UserManagementPage.js +325 -303
  18. package/dist/kadaikodi/pages/admin/UserManagementPage.js.map +1 -1
  19. package/dist/kadaikodi/pages/cart-owner/AnalyticsDashboard.js +500 -469
  20. package/dist/kadaikodi/pages/cart-owner/AnalyticsDashboard.js.map +1 -1
  21. package/dist/kadaikodi/pages/cart-owner/BusinessSettingsPage.js +534 -503
  22. package/dist/kadaikodi/pages/cart-owner/BusinessSettingsPage.js.map +1 -1
  23. package/dist/kadaikodi/pages/cart-owner/CartOwnerDashboard.js +73 -48
  24. package/dist/kadaikodi/pages/cart-owner/CartOwnerDashboard.js.map +1 -1
  25. package/dist/kadaikodi/pages/cart-owner/CartOwnerProfilePage.js +103 -96
  26. package/dist/kadaikodi/pages/cart-owner/CartOwnerProfilePage.js.map +1 -1
  27. package/dist/kadaikodi/pages/cart-owner/CartServiceConfigPage.js +130 -129
  28. package/dist/kadaikodi/pages/cart-owner/CartServiceConfigPage.js.map +1 -1
  29. package/dist/kadaikodi/pages/cart-owner/InventoryManagementPage.js +673 -670
  30. package/dist/kadaikodi/pages/cart-owner/InventoryManagementPage.js.map +1 -1
  31. package/dist/kadaikodi/pages/cart-owner/OrderManagementPage.js +517 -514
  32. package/dist/kadaikodi/pages/cart-owner/OrderManagementPage.js.map +1 -1
  33. package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.js +140 -125
  34. package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.js.map +1 -1
  35. package/dist/kadaikodi/pages/common/HelpSupportPage.js +302 -311
  36. package/dist/kadaikodi/pages/common/HelpSupportPage.js.map +1 -1
  37. package/dist/kadaikodi/pages/common/NotificationCenterPage.js +102 -91
  38. package/dist/kadaikodi/pages/common/NotificationCenterPage.js.map +1 -1
  39. package/dist/kadaikodi/pages/common/SettingsPage.js +766 -734
  40. package/dist/kadaikodi/pages/common/SettingsPage.js.map +1 -1
  41. package/dist/kadaikodi/pages/customer/BookingDetailsPage.js +366 -356
  42. package/dist/kadaikodi/pages/customer/BookingDetailsPage.js.map +1 -1
  43. package/dist/kadaikodi/pages/customer/CartDetailPage.js +243 -213
  44. package/dist/kadaikodi/pages/customer/CartDetailPage.js.map +1 -1
  45. package/dist/kadaikodi/pages/customer/CartDiscoveryPage.js +200 -195
  46. package/dist/kadaikodi/pages/customer/CartDiscoveryPage.js.map +1 -1
  47. package/dist/kadaikodi/pages/customer/CheckoutPage.js +95 -89
  48. package/dist/kadaikodi/pages/customer/CheckoutPage.js.map +1 -1
  49. package/dist/kadaikodi/pages/customer/CustomerDashboard.js +430 -387
  50. package/dist/kadaikodi/pages/customer/CustomerDashboard.js.map +1 -1
  51. package/dist/kadaikodi/pages/customer/CustomerProfilePage.js +488 -478
  52. package/dist/kadaikodi/pages/customer/CustomerProfilePage.js.map +1 -1
  53. package/dist/kadaikodi/pages/customer/DirectServiceBookingPage.js +523 -512
  54. package/dist/kadaikodi/pages/customer/DirectServiceBookingPage.js.map +1 -1
  55. package/dist/kadaikodi/pages/customer/FavoritesPage.js +83 -75
  56. package/dist/kadaikodi/pages/customer/FavoritesPage.js.map +1 -1
  57. package/dist/kadaikodi/pages/customer/OrderHistoryPage.js +116 -108
  58. package/dist/kadaikodi/pages/customer/OrderHistoryPage.js.map +1 -1
  59. package/dist/kadaikodi/pages/customer/OrderTrackingPage.js +67 -61
  60. package/dist/kadaikodi/pages/customer/OrderTrackingPage.js.map +1 -1
  61. package/dist/kadaikodi/pages/customer/PaymentMethodsPage.js +90 -73
  62. package/dist/kadaikodi/pages/customer/PaymentMethodsPage.js.map +1 -1
  63. package/dist/kadaikodi/pages/customer/ReviewsPage.js +80 -72
  64. package/dist/kadaikodi/pages/customer/ReviewsPage.js.map +1 -1
  65. package/dist/kadaikodi/pages/customer/SavedAddressesPage.js +70 -53
  66. package/dist/kadaikodi/pages/customer/SavedAddressesPage.js.map +1 -1
  67. package/dist/kadaikodi/pages/investor/InvestmentDetailsPage.js +289 -255
  68. package/dist/kadaikodi/pages/investor/InvestmentDetailsPage.js.map +1 -1
  69. package/dist/kadaikodi/pages/investor/InvestmentOpportunitiesPage.js +92 -84
  70. package/dist/kadaikodi/pages/investor/InvestmentOpportunitiesPage.js.map +1 -1
  71. package/dist/kadaikodi/pages/investor/InvestorAnalyticsPage.js +63 -55
  72. package/dist/kadaikodi/pages/investor/InvestorAnalyticsPage.js.map +1 -1
  73. package/dist/kadaikodi/pages/investor/InvestorDashboard.js +339 -311
  74. package/dist/kadaikodi/pages/investor/InvestorDashboard.js.map +1 -1
  75. package/dist/kadaikodi/pages/investor/InvestorInvestmentsPage.js +40 -32
  76. package/dist/kadaikodi/pages/investor/InvestorInvestmentsPage.js.map +1 -1
  77. package/dist/kadaikodi/pages/investor/InvestorPortfolioPage.js +174 -150
  78. package/dist/kadaikodi/pages/investor/InvestorPortfolioPage.js.map +1 -1
  79. package/dist/kadaikodi/pages/investor/InvestorProfilePage.js +385 -381
  80. package/dist/kadaikodi/pages/investor/InvestorProfilePage.js.map +1 -1
  81. package/dist/kadaikodi/pages/worker/TaskDetailsPage.js +302 -273
  82. package/dist/kadaikodi/pages/worker/TaskDetailsPage.js.map +1 -1
  83. package/dist/kadaikodi/pages/worker/WorkerDashboard.js +87 -59
  84. package/dist/kadaikodi/pages/worker/WorkerDashboard.js.map +1 -1
  85. package/dist/kadaikodi/pages/worker/WorkerOrdersPage.js +82 -75
  86. package/dist/kadaikodi/pages/worker/WorkerOrdersPage.js.map +1 -1
  87. package/dist/kadaikodi/pages/worker/WorkerProfilePage.js +81 -77
  88. package/dist/kadaikodi/pages/worker/WorkerProfilePage.js.map +1 -1
  89. package/dist/kadaikodi/pages/worker/WorkerSchedulePage.js +78 -71
  90. package/dist/kadaikodi/pages/worker/WorkerSchedulePage.js.map +1 -1
  91. package/package.json +2 -2
@@ -4,8 +4,9 @@ import { PageLayout as n } from "../../components/PageLayout.js";
4
4
  import { useState as r } from "react";
5
5
  import { AlertCircle as i, Bell as a, CheckCircle2 as o, Clock as s, Link2 as c, MapPin as l, Phone as u, Save as d, Shield as f, Store as p } from "lucide-react";
6
6
  import { Fragment as m, jsx as h, jsxs as g } from "react/jsx-runtime";
7
+ import { EmphasisPanel as _, NextSteps as v, PagePurpose as y } from "@burdenoff/fe-libs/ui";
7
8
  //#region src/kadaikodi/pages/cart-owner/BusinessSettingsPage.tsx
8
- var _ = [
9
+ var b = [
9
10
  {
10
11
  id: "general",
11
12
  label: "General",
@@ -41,7 +42,7 @@ var _ = [
41
42
  label: "Integrations",
42
43
  icon: c
43
44
  }
44
- ], v = [
45
+ ], x = [
45
46
  "Food & Beverage",
46
47
  "Personal Care & Beauty",
47
48
  "Repair & Maintenance",
@@ -51,7 +52,7 @@ var _ = [
51
52
  "Education & Skills",
52
53
  "Retail & Merchandise",
53
54
  "Grocery & Essentials"
54
- ], y = ({ label: e, value: t, onChange: n, type: r = "text", options: i, placeholder: a, hint: o, rows: s = 3 }) => {
55
+ ], S = ({ label: e, value: t, onChange: n, type: r = "text", options: i, placeholder: a, hint: o, rows: s = 3 }) => {
55
56
  let c = e.toLowerCase().replace(/\s+/g, "-");
56
57
  return /* @__PURE__ */ g("div", { children: [
57
58
  /* @__PURE__ */ h("label", {
@@ -88,7 +89,7 @@ var _ = [
88
89
  children: o
89
90
  })
90
91
  ] });
91
- }, b = ({ label: e, description: n, checked: r, onChange: i }) => /* @__PURE__ */ g("div", {
92
+ }, C = ({ label: e, description: n, checked: r, onChange: i }) => /* @__PURE__ */ g("div", {
92
93
  className: "flex items-center justify-between py-3",
93
94
  children: [/* @__PURE__ */ g("div", { children: [/* @__PURE__ */ h("p", {
94
95
  className: "text-sm font-medium text-text-primary",
@@ -102,8 +103,8 @@ var _ = [
102
103
  className: t("h-6 w-11 rounded-full transition-colors relative", r ? "bg-action-primary-bg" : "bg-muted-foreground/30"),
103
104
  children: /* @__PURE__ */ h("div", { className: t("absolute top-0.5 h-5 w-5 rounded-full bg-white transition-transform", r ? "translate-x-5" : "translate-x-0.5") })
104
105
  })]
105
- }), x = () => {
106
- let { navigateTo: a } = e(), [s, c] = r("general"), [l, u] = r(!1), [f, p] = r(!1), [x, S] = r({
106
+ }), w = () => {
107
+ let { navigateTo: a } = e(), [s, c] = r("general"), [l, u] = r(!1), [f, p] = r(!1), [w, T] = r({
107
108
  businessName: "Dosa Express",
108
109
  description: "Authentic South Indian street food with a modern twist. Serving crispy dosas, filter coffee, and more since 2020.",
109
110
  category: "Food & Beverage",
@@ -111,7 +112,7 @@ var _ = [
111
112
  panNumber: "ABCDE1234F",
112
113
  fssaiLicense: "12345678",
113
114
  establishedYear: "2020"
114
- }), [C, w] = r({
115
+ }), [E, D] = r({
115
116
  phone: "+91-9876543210",
116
117
  email: "ravi@dosaexpress.in",
117
118
  website: "https://dosaexpress.in",
@@ -119,7 +120,7 @@ var _ = [
119
120
  instagram: "@dosaexpress",
120
121
  twitter: "@dosaexpress",
121
122
  facebook: "dosaexpress"
122
- }), [T, E] = r({
123
+ }), [O, k] = r({
123
124
  address: "Koramangala 5th Block",
124
125
  city: "Bangalore",
125
126
  state: "Karnataka",
@@ -129,17 +130,17 @@ var _ = [
129
130
  deliveryRadius: 5,
130
131
  deliveryCharge: 30,
131
132
  freeDeliveryAbove: 300
132
- }), [D, O] = r({
133
+ }), [A, j] = r({
133
134
  autoAcceptOrders: !0,
134
135
  preparationTime: 15,
135
136
  maxConcurrentOrders: 10,
136
137
  advanceBookingDays: 3
137
- }), [k, A] = r({
138
+ }), [M, N] = r({
138
139
  returnPolicy: "Items can be returned within 30 minutes of delivery if there are quality issues. Refund will be processed within 2-3 business days.",
139
140
  cancellationPolicy: "Orders can be cancelled within 2 minutes of placing. After preparation starts, cancellation is not allowed.",
140
141
  privacyPolicy: "We collect and process your data in accordance with applicable privacy laws. Your data is never shared with third parties without consent.",
141
142
  termsOfService: "By using our services, you agree to our terms. All prices are inclusive of taxes unless stated otherwise."
142
- }), [j, M] = r({
143
+ }), [P, F] = r({
143
144
  newOrderEmail: !0,
144
145
  newOrderSms: !0,
145
146
  newOrderPush: !0,
@@ -150,551 +151,581 @@ var _ = [
150
151
  lowStockAlert: !0,
151
152
  reviewNotification: !0,
152
153
  marketingEmails: !1
153
- }), [N, P] = r({
154
+ }), [I, L] = r({
154
155
  paymentGateway: "razorpay",
155
156
  paymentGatewayKey: "rzp_live_xxxxxxxx",
156
157
  smsProvider: "twilio",
157
158
  smsApiKey: "",
158
159
  analyticsId: ""
159
- }), F = () => {
160
+ }), R = () => {
160
161
  u(!0), setTimeout(() => {
161
162
  u(!1), p(!0), setTimeout(() => p(!1), 3e3);
162
163
  }, 1e3);
163
- }, I = (e) => (t) => S((n) => ({
164
+ }, z = (e) => (t) => T((n) => ({
164
165
  ...n,
165
166
  [e]: t
166
- })), L = (e) => (t) => w((n) => ({
167
+ })), B = (e) => (t) => D((n) => ({
167
168
  ...n,
168
169
  [e]: t
169
- })), R = (e) => (t) => E((n) => ({
170
+ })), V = (e) => (t) => k((n) => ({
170
171
  ...n,
171
172
  [e]: e === "deliveryRadius" || e === "deliveryCharge" || e === "freeDeliveryAbove" ? parseInt(t) || 0 : t
172
- })), z = (e) => (t) => A((n) => ({
173
+ })), H = (e) => (t) => N((n) => ({
173
174
  ...n,
174
175
  [e]: t
175
- })), B = (e) => (t) => M((n) => ({
176
+ })), U = (e) => (t) => F((n) => ({
176
177
  ...n,
177
178
  [e]: t
178
- })), V = (e) => (t) => P((n) => ({
179
+ })), W = (e) => (t) => L((n) => ({
179
180
  ...n,
180
181
  [e]: t
181
182
  }));
182
- return _.find((e) => e.id === s)?.icon, /* @__PURE__ */ h(n, {
183
+ return b.find((e) => e.id === s)?.icon, /* @__PURE__ */ g(n, {
183
184
  title: "Business Settings",
184
185
  description: "Manage your business profile and configuration",
185
186
  actions: /* @__PURE__ */ h("button", {
186
187
  type: "button",
187
- onClick: F,
188
+ onClick: R,
188
189
  disabled: l,
189
190
  className: t("inline-flex items-center gap-2 rounded-md px-4 py-2 text-sm font-medium transition-colors", f ? "bg-status-success-bg-subtle text-status-success-text" : l ? "bg-bg-sunken text-text-secondary cursor-not-allowed" : "bg-accent text-text-primary hover:bg-accent/80"),
190
191
  children: l ? /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h("div", { className: "h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent" }), "Saving..."] }) : f ? /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h(o, { className: "h-4 w-4" }), "Saved!"] }) : /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h(d, { className: "h-4 w-4" }), "Save Settings"] })
191
192
  }),
192
- children: /* @__PURE__ */ g("div", {
193
- className: "flex flex-col lg:flex-row gap-6",
194
- children: [
195
- /* @__PURE__ */ h("div", {
196
- className: "lg:hidden",
197
- children: /* @__PURE__ */ h("div", {
198
- className: "rounded-lg border border-border-subtle bg-bg-surface p-3 shadow-sm",
193
+ children: [
194
+ /* @__PURE__ */ h(y, {
195
+ className: "mb-6",
196
+ children: "Your business's public identity and ground rules. Use this page to set your business name and branding, contact details and location, operating hours, and the policies (refunds, delivery radius, taxes) customers agree to — plus the alerts you receive and any integrations you connect. These details shape how customers find and trust your cart."
197
+ }),
198
+ /* @__PURE__ */ h(v, {
199
+ storageKey: "kadaikodi-owner-business-settings",
200
+ className: "mb-6",
201
+ steps: [
202
+ {
203
+ id: "location",
204
+ label: "Confirm your location & hours",
205
+ description: "So customers know where and when to find you.",
206
+ onClick: () => c("location")
207
+ },
208
+ {
209
+ id: "policies",
210
+ label: "Set your policies",
211
+ description: "Refunds, delivery radius and taxes.",
212
+ onClick: () => c("policies")
213
+ },
214
+ {
215
+ id: "config",
216
+ label: "Configure your service types",
217
+ description: "Pickup, delivery and scheduled stops.",
218
+ onClick: () => a("/cart-owner/service-config")
219
+ }
220
+ ]
221
+ }),
222
+ /* @__PURE__ */ g("div", {
223
+ className: "flex flex-col lg:flex-row gap-6",
224
+ children: [
225
+ /* @__PURE__ */ h("div", {
226
+ className: "lg:hidden",
199
227
  children: /* @__PURE__ */ h("div", {
200
- className: "grid grid-cols-4 gap-2",
201
- children: _.map((e) => {
202
- let n = e.icon;
203
- return /* @__PURE__ */ g("button", {
204
- type: "button",
205
- onClick: () => c(e.id),
206
- className: t("flex flex-col items-center gap-1 rounded-md px-2 py-2 text-xs font-medium transition-colors", s === e.id ? "bg-accent text-text-primary" : "text-text-secondary hover:bg-bg-sunken"),
207
- children: [/* @__PURE__ */ h(n, { className: "h-4 w-4" }), /* @__PURE__ */ h("span", {
208
- className: "hidden sm:inline",
209
- children: e.label
210
- })]
211
- }, e.id);
228
+ className: "rounded-lg border border-border-subtle bg-bg-surface p-3 shadow-sm",
229
+ children: /* @__PURE__ */ h("div", {
230
+ className: "grid grid-cols-4 gap-2",
231
+ children: b.map((e) => {
232
+ let n = e.icon;
233
+ return /* @__PURE__ */ g("button", {
234
+ type: "button",
235
+ onClick: () => c(e.id),
236
+ className: t("flex flex-col items-center gap-1 rounded-md px-2 py-2 text-xs font-medium transition-colors", s === e.id ? "bg-accent text-text-primary" : "text-text-secondary hover:bg-bg-sunken"),
237
+ children: [/* @__PURE__ */ h(n, { className: "h-4 w-4" }), /* @__PURE__ */ h("span", {
238
+ className: "hidden sm:inline",
239
+ children: e.label
240
+ })]
241
+ }, e.id);
242
+ })
212
243
  })
213
244
  })
214
- })
215
- }),
216
- /* @__PURE__ */ h("div", {
217
- className: "hidden lg:block lg:w-56 shrink-0",
218
- children: /* @__PURE__ */ g("div", {
219
- className: "rounded-lg border border-border-subtle bg-bg-surface shadow-sm sticky top-24",
220
- children: [/* @__PURE__ */ h("div", {
221
- className: "p-4 border-b border-border-subtle",
222
- children: /* @__PURE__ */ h("h2", {
223
- className: "font-semibold text-text-primary text-sm",
224
- children: "Settings"
225
- })
226
- }), /* @__PURE__ */ h("nav", {
227
- className: "p-2",
228
- children: _.map((e) => {
229
- let n = e.icon;
230
- return /* @__PURE__ */ g("button", {
231
- type: "button",
232
- onClick: () => c(e.id),
233
- className: t("w-full text-left px-3 py-2 rounded-md mb-1 flex items-center gap-3 text-sm transition-colors", s === e.id ? "bg-accent text-text-primary font-medium" : "text-text-secondary hover:bg-bg-sunken hover:text-text-primary"),
234
- children: [/* @__PURE__ */ h(n, { className: "h-4 w-4" }), e.label]
235
- }, e.id);
236
- })
237
- })]
238
- })
239
- }),
240
- /* @__PURE__ */ h("div", {
241
- className: "flex-1 min-w-0",
242
- children: /* @__PURE__ */ g("div", {
243
- className: "rounded-lg border border-border-subtle bg-bg-surface p-5 sm:p-6 shadow-sm",
244
- children: [
245
- s === "general" && /* @__PURE__ */ g("div", {
246
- className: "space-y-5",
247
- children: [
248
- /* @__PURE__ */ h(y, {
249
- label: "Business Name",
250
- value: x.businessName,
251
- onChange: I("businessName")
252
- }),
253
- /* @__PURE__ */ h(y, {
254
- label: "Description",
255
- value: x.description,
256
- onChange: I("description"),
257
- type: "textarea"
258
- }),
259
- /* @__PURE__ */ g("div", {
260
- className: "grid grid-cols-1 sm:grid-cols-2 gap-5",
261
- children: [/* @__PURE__ */ h(y, {
262
- label: "Category",
263
- value: x.category,
264
- onChange: I("category"),
265
- type: "select",
266
- options: v
267
- }), /* @__PURE__ */ h(y, {
268
- label: "Established Year",
269
- value: x.establishedYear,
270
- onChange: I("establishedYear")
271
- })]
272
- }),
273
- /* @__PURE__ */ g("div", {
274
- className: "flex items-start gap-3 rounded-md bg-[var(--color-accent-soft)] border border-border-focus/20 p-3",
275
- children: [/* @__PURE__ */ h(i, { className: "h-4 w-4 text-text-primary shrink-0 mt-0.5" }), /* @__PURE__ */ h("p", {
276
- className: "text-xs text-text-primary",
277
- children: "GST, PAN, and FSSAI details are used for invoicing and compliance. Changes require verification."
278
- })]
279
- }),
280
- /* @__PURE__ */ g("div", {
281
- className: "grid grid-cols-1 sm:grid-cols-3 gap-5",
282
- children: [
283
- /* @__PURE__ */ h(y, {
284
- label: "GST Number",
285
- value: x.gstNumber,
286
- onChange: I("gstNumber"),
287
- hint: "15-digit GST ID"
288
- }),
289
- /* @__PURE__ */ h(y, {
290
- label: "PAN Number",
291
- value: x.panNumber,
292
- onChange: I("panNumber"),
293
- hint: "10-digit PAN"
294
- }),
295
- /* @__PURE__ */ h(y, {
296
- label: "FSSAI License",
297
- value: x.fssaiLicense,
298
- onChange: I("fssaiLicense"),
299
- hint: "FSSAI license number"
300
- })
301
- ]
302
- })
303
- ]
304
- }),
305
- s === "contact" && /* @__PURE__ */ g("div", {
306
- className: "space-y-5",
307
- children: [
308
- /* @__PURE__ */ g("div", {
309
- className: "grid grid-cols-1 sm:grid-cols-2 gap-5",
310
- children: [/* @__PURE__ */ h(y, {
311
- label: "Phone",
312
- value: C.phone,
313
- onChange: L("phone"),
314
- type: "tel"
315
- }), /* @__PURE__ */ h(y, {
316
- label: "Email",
317
- value: C.email,
318
- onChange: L("email"),
319
- type: "email"
320
- })]
321
- }),
322
- /* @__PURE__ */ g("div", {
323
- className: "grid grid-cols-1 sm:grid-cols-2 gap-5",
324
- children: [/* @__PURE__ */ h(y, {
325
- label: "Website",
326
- value: C.website,
327
- onChange: L("website"),
328
- type: "url",
329
- placeholder: "https://"
330
- }), /* @__PURE__ */ h(y, {
331
- label: "WhatsApp",
332
- value: C.whatsapp,
333
- onChange: L("whatsapp"),
334
- type: "tel"
335
- })]
336
- }),
337
- /* @__PURE__ */ h("h3", {
338
- className: "text-sm font-semibold text-text-primary pt-2",
339
- children: "Social Media"
340
- }),
341
- /* @__PURE__ */ g("div", {
342
- className: "grid grid-cols-1 sm:grid-cols-3 gap-5",
343
- children: [
344
- /* @__PURE__ */ h(y, {
345
- label: "Instagram",
346
- value: C.instagram,
347
- onChange: L("instagram"),
348
- placeholder: "@handle"
349
- }),
350
- /* @__PURE__ */ h(y, {
351
- label: "Twitter / X",
352
- value: C.twitter,
353
- onChange: L("twitter"),
354
- placeholder: "@handle"
355
- }),
356
- /* @__PURE__ */ h(y, {
357
- label: "Facebook",
358
- value: C.facebook,
359
- onChange: L("facebook"),
360
- placeholder: "Page name"
361
- })
362
- ]
363
- })
364
- ]
365
- }),
366
- s === "location" && /* @__PURE__ */ g("div", {
367
- className: "space-y-5",
368
- children: [
369
- /* @__PURE__ */ h(y, {
370
- label: "Address",
371
- value: T.address,
372
- onChange: R("address"),
373
- type: "textarea",
374
- rows: 2
375
- }),
376
- /* @__PURE__ */ g("div", {
377
- className: "grid grid-cols-1 sm:grid-cols-3 gap-5",
378
- children: [
379
- /* @__PURE__ */ h(y, {
380
- label: "City",
381
- value: T.city,
382
- onChange: R("city")
383
- }),
384
- /* @__PURE__ */ h(y, {
385
- label: "State",
386
- value: T.state,
387
- onChange: R("state")
388
- }),
389
- /* @__PURE__ */ h(y, {
390
- label: "Pincode",
391
- value: T.pincode,
392
- onChange: R("pincode")
393
- })
394
- ]
395
- }),
396
- /* @__PURE__ */ g("div", {
397
- className: "grid grid-cols-1 sm:grid-cols-2 gap-5",
398
- children: [/* @__PURE__ */ h(y, {
399
- label: "Latitude",
400
- value: T.latitude,
401
- onChange: R("latitude"),
402
- hint: "e.g., 12.9352"
403
- }), /* @__PURE__ */ h(y, {
404
- label: "Longitude",
405
- value: T.longitude,
406
- onChange: R("longitude"),
407
- hint: "e.g., 77.6245"
408
- })]
409
- }),
410
- /* @__PURE__ */ h("h3", {
411
- className: "text-sm font-semibold text-text-primary pt-2",
412
- children: "Delivery Settings"
413
- }),
414
- /* @__PURE__ */ g("div", {
415
- className: "grid grid-cols-1 sm:grid-cols-3 gap-5",
416
- children: [
417
- /* @__PURE__ */ h(y, {
418
- label: "Delivery Radius (km)",
419
- value: T.deliveryRadius,
420
- onChange: R("deliveryRadius"),
421
- type: "number"
422
- }),
423
- /* @__PURE__ */ h(y, {
424
- label: "Delivery Charge (₹)",
425
- value: T.deliveryCharge,
426
- onChange: R("deliveryCharge"),
427
- type: "number"
428
- }),
429
- /* @__PURE__ */ h(y, {
430
- label: "Free Delivery Above (₹)",
431
- value: T.freeDeliveryAbove,
432
- onChange: R("freeDeliveryAbove"),
433
- type: "number"
434
- })
435
- ]
436
- })
437
- ]
438
- }),
439
- s === "operating" && /* @__PURE__ */ g("div", {
440
- className: "space-y-5",
441
- children: [/* @__PURE__ */ h(b, {
442
- label: "Auto-Accept Orders",
443
- description: "Automatically accept incoming orders without manual confirmation",
444
- checked: D.autoAcceptOrders,
445
- onChange: (e) => O((t) => ({
446
- ...t,
447
- autoAcceptOrders: e
448
- }))
449
- }), /* @__PURE__ */ g("div", {
450
- className: "grid grid-cols-1 sm:grid-cols-3 gap-5",
245
+ }),
246
+ /* @__PURE__ */ h("div", {
247
+ className: "hidden lg:block lg:w-56 shrink-0",
248
+ children: /* @__PURE__ */ g("div", {
249
+ className: "rounded-lg border border-border-subtle bg-bg-surface shadow-sm sticky top-24",
250
+ children: [/* @__PURE__ */ h("div", {
251
+ className: "p-4 border-b border-border-subtle",
252
+ children: /* @__PURE__ */ h("h2", {
253
+ className: "font-semibold text-text-primary text-sm",
254
+ children: "Settings"
255
+ })
256
+ }), /* @__PURE__ */ h("nav", {
257
+ className: "p-2",
258
+ children: b.map((e) => {
259
+ let n = e.icon;
260
+ return /* @__PURE__ */ g("button", {
261
+ type: "button",
262
+ onClick: () => c(e.id),
263
+ className: t("w-full text-left px-3 py-2 rounded-md mb-1 flex items-center gap-3 text-sm transition-colors", s === e.id ? "bg-accent text-text-primary font-medium" : "text-text-secondary hover:bg-bg-sunken hover:text-text-primary"),
264
+ children: [/* @__PURE__ */ h(n, { className: "h-4 w-4" }), e.label]
265
+ }, e.id);
266
+ })
267
+ })]
268
+ })
269
+ }),
270
+ /* @__PURE__ */ h("div", {
271
+ className: "flex-1 min-w-0",
272
+ children: /* @__PURE__ */ g(_, {
273
+ className: "p-5 sm:p-6",
274
+ children: [
275
+ s === "general" && /* @__PURE__ */ g("div", {
276
+ className: "space-y-5",
451
277
  children: [
452
- /* @__PURE__ */ h(y, {
453
- label: "Default Preparation Time (min)",
454
- value: D.preparationTime,
455
- onChange: (e) => O((t) => ({
456
- ...t,
457
- preparationTime: parseInt(e) || 0
458
- })),
459
- type: "number"
278
+ /* @__PURE__ */ h(S, {
279
+ label: "Business Name",
280
+ value: w.businessName,
281
+ onChange: z("businessName")
282
+ }),
283
+ /* @__PURE__ */ h(S, {
284
+ label: "Description",
285
+ value: w.description,
286
+ onChange: z("description"),
287
+ type: "textarea"
460
288
  }),
461
- /* @__PURE__ */ h(y, {
462
- label: "Max Concurrent Orders",
463
- value: D.maxConcurrentOrders,
464
- onChange: (e) => O((t) => ({
465
- ...t,
466
- maxConcurrentOrders: parseInt(e) || 0
467
- })),
468
- type: "number"
289
+ /* @__PURE__ */ g("div", {
290
+ className: "grid grid-cols-1 sm:grid-cols-2 gap-5",
291
+ children: [/* @__PURE__ */ h(S, {
292
+ label: "Category",
293
+ value: w.category,
294
+ onChange: z("category"),
295
+ type: "select",
296
+ options: x
297
+ }), /* @__PURE__ */ h(S, {
298
+ label: "Established Year",
299
+ value: w.establishedYear,
300
+ onChange: z("establishedYear")
301
+ })]
469
302
  }),
470
- /* @__PURE__ */ h(y, {
471
- label: "Advance Booking (days)",
472
- value: D.advanceBookingDays,
473
- onChange: (e) => O((t) => ({
474
- ...t,
475
- advanceBookingDays: parseInt(e) || 0
476
- })),
477
- type: "number"
303
+ /* @__PURE__ */ g("div", {
304
+ className: "flex items-start gap-3 rounded-md bg-[var(--color-accent-soft)] border border-border-focus/20 p-3",
305
+ children: [/* @__PURE__ */ h(i, { className: "h-4 w-4 text-text-primary shrink-0 mt-0.5" }), /* @__PURE__ */ h("p", {
306
+ className: "text-xs text-text-primary",
307
+ children: "GST, PAN, and FSSAI details are used for invoicing and compliance. Changes require verification."
308
+ })]
309
+ }),
310
+ /* @__PURE__ */ g("div", {
311
+ className: "grid grid-cols-1 sm:grid-cols-3 gap-5",
312
+ children: [
313
+ /* @__PURE__ */ h(S, {
314
+ label: "GST Number",
315
+ value: w.gstNumber,
316
+ onChange: z("gstNumber"),
317
+ hint: "15-digit GST ID"
318
+ }),
319
+ /* @__PURE__ */ h(S, {
320
+ label: "PAN Number",
321
+ value: w.panNumber,
322
+ onChange: z("panNumber"),
323
+ hint: "10-digit PAN"
324
+ }),
325
+ /* @__PURE__ */ h(S, {
326
+ label: "FSSAI License",
327
+ value: w.fssaiLicense,
328
+ onChange: z("fssaiLicense"),
329
+ hint: "FSSAI license number"
330
+ })
331
+ ]
478
332
  })
479
333
  ]
480
- })]
481
- }),
482
- s === "policies" && /* @__PURE__ */ g("div", {
483
- className: "space-y-5",
484
- children: [
485
- /* @__PURE__ */ h(y, {
486
- label: "Return Policy",
487
- value: k.returnPolicy,
488
- onChange: z("returnPolicy"),
489
- type: "textarea",
490
- rows: 4
491
- }),
492
- /* @__PURE__ */ h(y, {
493
- label: "Cancellation Policy",
494
- value: k.cancellationPolicy,
495
- onChange: z("cancellationPolicy"),
496
- type: "textarea",
497
- rows: 4
498
- }),
499
- /* @__PURE__ */ h(y, {
500
- label: "Privacy Policy",
501
- value: k.privacyPolicy,
502
- onChange: z("privacyPolicy"),
503
- type: "textarea",
504
- rows: 4
505
- }),
506
- /* @__PURE__ */ h(y, {
507
- label: "Terms of Service",
508
- value: k.termsOfService,
509
- onChange: z("termsOfService"),
510
- type: "textarea",
511
- rows: 4
512
- })
513
- ]
514
- }),
515
- s === "notifications" && /* @__PURE__ */ g("div", {
516
- className: "space-y-1 divide-y divide-border",
517
- children: [
518
- /* @__PURE__ */ h("h3", {
519
- className: "text-sm font-semibold text-text-primary pb-2",
520
- children: "New Orders"
521
- }),
522
- /* @__PURE__ */ h(b, {
523
- label: "Email Notification",
524
- description: "Receive email for new orders",
525
- checked: j.newOrderEmail,
526
- onChange: B("newOrderEmail")
527
- }),
528
- /* @__PURE__ */ h(b, {
529
- label: "SMS Notification",
530
- description: "Receive SMS for new orders",
531
- checked: j.newOrderSms,
532
- onChange: B("newOrderSms")
533
- }),
534
- /* @__PURE__ */ h(b, {
535
- label: "Push Notification",
536
- description: "Receive push notifications for new orders",
537
- checked: j.newOrderPush,
538
- onChange: B("newOrderPush")
539
- }),
540
- /* @__PURE__ */ h("h3", {
541
- className: "text-sm font-semibold text-text-primary pt-4 pb-2",
542
- children: "Order Updates"
543
- }),
544
- /* @__PURE__ */ h(b, {
545
- label: "Email Updates",
546
- description: "Get email when order status changes",
547
- checked: j.orderUpdateEmail,
548
- onChange: B("orderUpdateEmail")
549
- }),
550
- /* @__PURE__ */ h(b, {
551
- label: "Push Updates",
552
- description: "Get push notifications for order updates",
553
- checked: j.orderUpdatePush,
554
- onChange: B("orderUpdatePush")
555
- }),
556
- /* @__PURE__ */ h("h3", {
557
- className: "text-sm font-semibold text-text-primary pt-4 pb-2",
558
- children: "Reports & Alerts"
559
- }),
560
- /* @__PURE__ */ h(b, {
561
- label: "Daily Summary",
562
- description: "Receive daily business summary email",
563
- checked: j.dailySummaryEmail,
564
- onChange: B("dailySummaryEmail")
565
- }),
566
- /* @__PURE__ */ h(b, {
567
- label: "Weekly Summary",
568
- description: "Receive weekly performance report",
569
- checked: j.weeklySummaryEmail,
570
- onChange: B("weeklySummaryEmail")
571
- }),
572
- /* @__PURE__ */ h(b, {
573
- label: "Low Stock Alert",
574
- description: "Get alerted when items are low on stock",
575
- checked: j.lowStockAlert,
576
- onChange: B("lowStockAlert")
577
- }),
578
- /* @__PURE__ */ h(b, {
579
- label: "Review Notifications",
580
- description: "Get notified for new customer reviews",
581
- checked: j.reviewNotification,
582
- onChange: B("reviewNotification")
583
- }),
584
- /* @__PURE__ */ h(b, {
585
- label: "Marketing Emails",
586
- description: "Receive tips and promotional content",
587
- checked: j.marketingEmails,
588
- onChange: B("marketingEmails")
589
- })
590
- ]
591
- }),
592
- s === "integration" && /* @__PURE__ */ g("div", {
593
- className: "space-y-5",
594
- children: [
595
- /* @__PURE__ */ h("h3", {
596
- className: "text-sm font-semibold text-text-primary",
597
- children: "Payment Gateway"
598
- }),
599
- /* @__PURE__ */ g("div", {
600
- className: "grid grid-cols-1 sm:grid-cols-2 gap-5",
601
- children: [/* @__PURE__ */ g("div", { children: [/* @__PURE__ */ h("label", {
602
- className: "block text-sm font-medium text-text-primary mb-1.5",
603
- children: "Provider"
604
- }), /* @__PURE__ */ g("select", {
605
- value: N.paymentGateway,
606
- onChange: (e) => V("paymentGateway")(e.target.value),
607
- className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary",
334
+ }),
335
+ s === "contact" && /* @__PURE__ */ g("div", {
336
+ className: "space-y-5",
337
+ children: [
338
+ /* @__PURE__ */ g("div", {
339
+ className: "grid grid-cols-1 sm:grid-cols-2 gap-5",
340
+ children: [/* @__PURE__ */ h(S, {
341
+ label: "Phone",
342
+ value: E.phone,
343
+ onChange: B("phone"),
344
+ type: "tel"
345
+ }), /* @__PURE__ */ h(S, {
346
+ label: "Email",
347
+ value: E.email,
348
+ onChange: B("email"),
349
+ type: "email"
350
+ })]
351
+ }),
352
+ /* @__PURE__ */ g("div", {
353
+ className: "grid grid-cols-1 sm:grid-cols-2 gap-5",
354
+ children: [/* @__PURE__ */ h(S, {
355
+ label: "Website",
356
+ value: E.website,
357
+ onChange: B("website"),
358
+ type: "url",
359
+ placeholder: "https://"
360
+ }), /* @__PURE__ */ h(S, {
361
+ label: "WhatsApp",
362
+ value: E.whatsapp,
363
+ onChange: B("whatsapp"),
364
+ type: "tel"
365
+ })]
366
+ }),
367
+ /* @__PURE__ */ h("h3", {
368
+ className: "text-sm font-semibold text-text-primary pt-2",
369
+ children: "Social Media"
370
+ }),
371
+ /* @__PURE__ */ g("div", {
372
+ className: "grid grid-cols-1 sm:grid-cols-3 gap-5",
608
373
  children: [
609
- /* @__PURE__ */ h("option", {
610
- value: "razorpay",
611
- children: "Razorpay"
374
+ /* @__PURE__ */ h(S, {
375
+ label: "Instagram",
376
+ value: E.instagram,
377
+ onChange: B("instagram"),
378
+ placeholder: "@handle"
612
379
  }),
613
- /* @__PURE__ */ h("option", {
614
- value: "paytm",
615
- children: "Paytm"
380
+ /* @__PURE__ */ h(S, {
381
+ label: "Twitter / X",
382
+ value: E.twitter,
383
+ onChange: B("twitter"),
384
+ placeholder: "@handle"
616
385
  }),
617
- /* @__PURE__ */ h("option", {
618
- value: "stripe",
619
- children: "Stripe"
386
+ /* @__PURE__ */ h(S, {
387
+ label: "Facebook",
388
+ value: E.facebook,
389
+ onChange: B("facebook"),
390
+ placeholder: "Page name"
391
+ })
392
+ ]
393
+ })
394
+ ]
395
+ }),
396
+ s === "location" && /* @__PURE__ */ g("div", {
397
+ className: "space-y-5",
398
+ children: [
399
+ /* @__PURE__ */ h(S, {
400
+ label: "Address",
401
+ value: O.address,
402
+ onChange: V("address"),
403
+ type: "textarea",
404
+ rows: 2
405
+ }),
406
+ /* @__PURE__ */ g("div", {
407
+ className: "grid grid-cols-1 sm:grid-cols-3 gap-5",
408
+ children: [
409
+ /* @__PURE__ */ h(S, {
410
+ label: "City",
411
+ value: O.city,
412
+ onChange: V("city")
413
+ }),
414
+ /* @__PURE__ */ h(S, {
415
+ label: "State",
416
+ value: O.state,
417
+ onChange: V("state")
620
418
  }),
621
- /* @__PURE__ */ h("option", {
622
- value: "phonepe",
623
- children: "PhonePe"
419
+ /* @__PURE__ */ h(S, {
420
+ label: "Pincode",
421
+ value: O.pincode,
422
+ onChange: V("pincode")
624
423
  })
625
424
  ]
626
- })] }), /* @__PURE__ */ h(y, {
627
- label: "API Key",
628
- value: N.paymentGatewayKey,
629
- onChange: V("paymentGatewayKey"),
630
- placeholder: "Enter API key",
631
- hint: "Keep this secret"
632
- })]
633
- }),
634
- /* @__PURE__ */ h("h3", {
635
- className: "text-sm font-semibold text-text-primary pt-2",
636
- children: "SMS Provider"
637
- }),
638
- /* @__PURE__ */ g("div", {
639
- className: "grid grid-cols-1 sm:grid-cols-2 gap-5",
640
- children: [/* @__PURE__ */ g("div", { children: [/* @__PURE__ */ h("label", {
641
- className: "block text-sm font-medium text-text-primary mb-1.5",
642
- children: "Provider"
643
- }), /* @__PURE__ */ g("select", {
644
- value: N.smsProvider,
645
- onChange: (e) => V("smsProvider")(e.target.value),
646
- className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary",
425
+ }),
426
+ /* @__PURE__ */ g("div", {
427
+ className: "grid grid-cols-1 sm:grid-cols-2 gap-5",
428
+ children: [/* @__PURE__ */ h(S, {
429
+ label: "Latitude",
430
+ value: O.latitude,
431
+ onChange: V("latitude"),
432
+ hint: "e.g., 12.9352"
433
+ }), /* @__PURE__ */ h(S, {
434
+ label: "Longitude",
435
+ value: O.longitude,
436
+ onChange: V("longitude"),
437
+ hint: "e.g., 77.6245"
438
+ })]
439
+ }),
440
+ /* @__PURE__ */ h("h3", {
441
+ className: "text-sm font-semibold text-text-primary pt-2",
442
+ children: "Delivery Settings"
443
+ }),
444
+ /* @__PURE__ */ g("div", {
445
+ className: "grid grid-cols-1 sm:grid-cols-3 gap-5",
647
446
  children: [
648
- /* @__PURE__ */ h("option", {
649
- value: "twilio",
650
- children: "Twilio"
447
+ /* @__PURE__ */ h(S, {
448
+ label: "Delivery Radius (km)",
449
+ value: O.deliveryRadius,
450
+ onChange: V("deliveryRadius"),
451
+ type: "number"
651
452
  }),
652
- /* @__PURE__ */ h("option", {
653
- value: "msg91",
654
- children: "MSG91"
453
+ /* @__PURE__ */ h(S, {
454
+ label: "Delivery Charge (₹)",
455
+ value: O.deliveryCharge,
456
+ onChange: V("deliveryCharge"),
457
+ type: "number"
655
458
  }),
656
- /* @__PURE__ */ h("option", {
657
- value: "textlocal",
658
- children: "Textlocal"
459
+ /* @__PURE__ */ h(S, {
460
+ label: "Free Delivery Above (₹)",
461
+ value: O.freeDeliveryAbove,
462
+ onChange: V("freeDeliveryAbove"),
463
+ type: "number"
659
464
  })
660
465
  ]
661
- })] }), /* @__PURE__ */ h(y, {
662
- label: "SMS API Key",
663
- value: N.smsApiKey,
664
- onChange: V("smsApiKey"),
665
- placeholder: "Enter SMS API key"
666
- })]
667
- }),
668
- /* @__PURE__ */ h("h3", {
669
- className: "text-sm font-semibold text-text-primary pt-2",
670
- children: "Analytics"
671
- }),
672
- /* @__PURE__ */ h(y, {
673
- label: "Google Analytics ID",
674
- value: N.analyticsId,
675
- onChange: V("analyticsId"),
676
- placeholder: "GA-XXXXXXXXX"
466
+ })
467
+ ]
468
+ }),
469
+ s === "operating" && /* @__PURE__ */ g("div", {
470
+ className: "space-y-5",
471
+ children: [/* @__PURE__ */ h(C, {
472
+ label: "Auto-Accept Orders",
473
+ description: "Automatically accept incoming orders without manual confirmation",
474
+ checked: A.autoAcceptOrders,
475
+ onChange: (e) => j((t) => ({
476
+ ...t,
477
+ autoAcceptOrders: e
478
+ }))
479
+ }), /* @__PURE__ */ g("div", {
480
+ className: "grid grid-cols-1 sm:grid-cols-3 gap-5",
481
+ children: [
482
+ /* @__PURE__ */ h(S, {
483
+ label: "Default Preparation Time (min)",
484
+ value: A.preparationTime,
485
+ onChange: (e) => j((t) => ({
486
+ ...t,
487
+ preparationTime: parseInt(e) || 0
488
+ })),
489
+ type: "number"
490
+ }),
491
+ /* @__PURE__ */ h(S, {
492
+ label: "Max Concurrent Orders",
493
+ value: A.maxConcurrentOrders,
494
+ onChange: (e) => j((t) => ({
495
+ ...t,
496
+ maxConcurrentOrders: parseInt(e) || 0
497
+ })),
498
+ type: "number"
499
+ }),
500
+ /* @__PURE__ */ h(S, {
501
+ label: "Advance Booking (days)",
502
+ value: A.advanceBookingDays,
503
+ onChange: (e) => j((t) => ({
504
+ ...t,
505
+ advanceBookingDays: parseInt(e) || 0
506
+ })),
507
+ type: "number"
508
+ })
509
+ ]
510
+ })]
511
+ }),
512
+ s === "policies" && /* @__PURE__ */ g("div", {
513
+ className: "space-y-5",
514
+ children: [
515
+ /* @__PURE__ */ h(S, {
516
+ label: "Return Policy",
517
+ value: M.returnPolicy,
518
+ onChange: H("returnPolicy"),
519
+ type: "textarea",
520
+ rows: 4
521
+ }),
522
+ /* @__PURE__ */ h(S, {
523
+ label: "Cancellation Policy",
524
+ value: M.cancellationPolicy,
525
+ onChange: H("cancellationPolicy"),
526
+ type: "textarea",
527
+ rows: 4
528
+ }),
529
+ /* @__PURE__ */ h(S, {
530
+ label: "Privacy Policy",
531
+ value: M.privacyPolicy,
532
+ onChange: H("privacyPolicy"),
533
+ type: "textarea",
534
+ rows: 4
535
+ }),
536
+ /* @__PURE__ */ h(S, {
537
+ label: "Terms of Service",
538
+ value: M.termsOfService,
539
+ onChange: H("termsOfService"),
540
+ type: "textarea",
541
+ rows: 4
542
+ })
543
+ ]
544
+ }),
545
+ s === "notifications" && /* @__PURE__ */ g("div", {
546
+ className: "space-y-1 divide-y divide-border",
547
+ children: [
548
+ /* @__PURE__ */ h("h3", {
549
+ className: "text-sm font-semibold text-text-primary pb-2",
550
+ children: "New Orders"
551
+ }),
552
+ /* @__PURE__ */ h(C, {
553
+ label: "Email Notification",
554
+ description: "Receive email for new orders",
555
+ checked: P.newOrderEmail,
556
+ onChange: U("newOrderEmail")
557
+ }),
558
+ /* @__PURE__ */ h(C, {
559
+ label: "SMS Notification",
560
+ description: "Receive SMS for new orders",
561
+ checked: P.newOrderSms,
562
+ onChange: U("newOrderSms")
563
+ }),
564
+ /* @__PURE__ */ h(C, {
565
+ label: "Push Notification",
566
+ description: "Receive push notifications for new orders",
567
+ checked: P.newOrderPush,
568
+ onChange: U("newOrderPush")
569
+ }),
570
+ /* @__PURE__ */ h("h3", {
571
+ className: "text-sm font-semibold text-text-primary pt-4 pb-2",
572
+ children: "Order Updates"
573
+ }),
574
+ /* @__PURE__ */ h(C, {
575
+ label: "Email Updates",
576
+ description: "Get email when order status changes",
577
+ checked: P.orderUpdateEmail,
578
+ onChange: U("orderUpdateEmail")
579
+ }),
580
+ /* @__PURE__ */ h(C, {
581
+ label: "Push Updates",
582
+ description: "Get push notifications for order updates",
583
+ checked: P.orderUpdatePush,
584
+ onChange: U("orderUpdatePush")
585
+ }),
586
+ /* @__PURE__ */ h("h3", {
587
+ className: "text-sm font-semibold text-text-primary pt-4 pb-2",
588
+ children: "Reports & Alerts"
589
+ }),
590
+ /* @__PURE__ */ h(C, {
591
+ label: "Daily Summary",
592
+ description: "Receive daily business summary email",
593
+ checked: P.dailySummaryEmail,
594
+ onChange: U("dailySummaryEmail")
595
+ }),
596
+ /* @__PURE__ */ h(C, {
597
+ label: "Weekly Summary",
598
+ description: "Receive weekly performance report",
599
+ checked: P.weeklySummaryEmail,
600
+ onChange: U("weeklySummaryEmail")
601
+ }),
602
+ /* @__PURE__ */ h(C, {
603
+ label: "Low Stock Alert",
604
+ description: "Get alerted when items are low on stock",
605
+ checked: P.lowStockAlert,
606
+ onChange: U("lowStockAlert")
607
+ }),
608
+ /* @__PURE__ */ h(C, {
609
+ label: "Review Notifications",
610
+ description: "Get notified for new customer reviews",
611
+ checked: P.reviewNotification,
612
+ onChange: U("reviewNotification")
613
+ }),
614
+ /* @__PURE__ */ h(C, {
615
+ label: "Marketing Emails",
616
+ description: "Receive tips and promotional content",
617
+ checked: P.marketingEmails,
618
+ onChange: U("marketingEmails")
619
+ })
620
+ ]
621
+ }),
622
+ s === "integration" && /* @__PURE__ */ g("div", {
623
+ className: "space-y-5",
624
+ children: [
625
+ /* @__PURE__ */ h("h3", {
626
+ className: "text-sm font-semibold text-text-primary",
627
+ children: "Payment Gateway"
628
+ }),
629
+ /* @__PURE__ */ g("div", {
630
+ className: "grid grid-cols-1 sm:grid-cols-2 gap-5",
631
+ children: [/* @__PURE__ */ g("div", { children: [/* @__PURE__ */ h("label", {
632
+ className: "block text-sm font-medium text-text-primary mb-1.5",
633
+ children: "Provider"
634
+ }), /* @__PURE__ */ g("select", {
635
+ value: I.paymentGateway,
636
+ onChange: (e) => W("paymentGateway")(e.target.value),
637
+ className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary",
638
+ children: [
639
+ /* @__PURE__ */ h("option", {
640
+ value: "razorpay",
641
+ children: "Razorpay"
642
+ }),
643
+ /* @__PURE__ */ h("option", {
644
+ value: "paytm",
645
+ children: "Paytm"
646
+ }),
647
+ /* @__PURE__ */ h("option", {
648
+ value: "stripe",
649
+ children: "Stripe"
650
+ }),
651
+ /* @__PURE__ */ h("option", {
652
+ value: "phonepe",
653
+ children: "PhonePe"
654
+ })
655
+ ]
656
+ })] }), /* @__PURE__ */ h(S, {
657
+ label: "API Key",
658
+ value: I.paymentGatewayKey,
659
+ onChange: W("paymentGatewayKey"),
660
+ placeholder: "Enter API key",
661
+ hint: "Keep this secret"
662
+ })]
663
+ }),
664
+ /* @__PURE__ */ h("h3", {
665
+ className: "text-sm font-semibold text-text-primary pt-2",
666
+ children: "SMS Provider"
667
+ }),
668
+ /* @__PURE__ */ g("div", {
669
+ className: "grid grid-cols-1 sm:grid-cols-2 gap-5",
670
+ children: [/* @__PURE__ */ g("div", { children: [/* @__PURE__ */ h("label", {
671
+ className: "block text-sm font-medium text-text-primary mb-1.5",
672
+ children: "Provider"
673
+ }), /* @__PURE__ */ g("select", {
674
+ value: I.smsProvider,
675
+ onChange: (e) => W("smsProvider")(e.target.value),
676
+ className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary",
677
+ children: [
678
+ /* @__PURE__ */ h("option", {
679
+ value: "twilio",
680
+ children: "Twilio"
681
+ }),
682
+ /* @__PURE__ */ h("option", {
683
+ value: "msg91",
684
+ children: "MSG91"
685
+ }),
686
+ /* @__PURE__ */ h("option", {
687
+ value: "textlocal",
688
+ children: "Textlocal"
689
+ })
690
+ ]
691
+ })] }), /* @__PURE__ */ h(S, {
692
+ label: "SMS API Key",
693
+ value: I.smsApiKey,
694
+ onChange: W("smsApiKey"),
695
+ placeholder: "Enter SMS API key"
696
+ })]
697
+ }),
698
+ /* @__PURE__ */ h("h3", {
699
+ className: "text-sm font-semibold text-text-primary pt-2",
700
+ children: "Analytics"
701
+ }),
702
+ /* @__PURE__ */ h(S, {
703
+ label: "Google Analytics ID",
704
+ value: I.analyticsId,
705
+ onChange: W("analyticsId"),
706
+ placeholder: "GA-XXXXXXXXX"
707
+ })
708
+ ]
709
+ }),
710
+ /* @__PURE__ */ h("div", {
711
+ className: "flex justify-end mt-8 pt-6 border-t border-border-subtle",
712
+ children: /* @__PURE__ */ h("button", {
713
+ type: "button",
714
+ onClick: R,
715
+ disabled: l,
716
+ className: t("inline-flex items-center gap-2 rounded-md px-6 py-2 text-sm font-medium transition-colors", f ? "bg-status-success-bg-subtle text-status-success-text" : l ? "bg-bg-sunken text-text-secondary cursor-not-allowed" : "bg-accent text-text-primary hover:bg-accent/80"),
717
+ children: l ? /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h("div", { className: "h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent" }), "Saving..."] }) : f ? /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h(o, { className: "h-4 w-4" }), "Saved!"] }) : /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h(d, { className: "h-4 w-4" }), "Save Settings"] })
677
718
  })
678
- ]
679
- }),
680
- /* @__PURE__ */ h("div", {
681
- className: "flex justify-end mt-8 pt-6 border-t border-border-subtle",
682
- children: /* @__PURE__ */ h("button", {
683
- type: "button",
684
- onClick: F,
685
- disabled: l,
686
- className: t("inline-flex items-center gap-2 rounded-md px-6 py-2 text-sm font-medium transition-colors", f ? "bg-status-success-bg-subtle text-status-success-text" : l ? "bg-bg-sunken text-text-secondary cursor-not-allowed" : "bg-accent text-text-primary hover:bg-accent/80"),
687
- children: l ? /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h("div", { className: "h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent" }), "Saving..."] }) : f ? /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h(o, { className: "h-4 w-4" }), "Saved!"] }) : /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h(d, { className: "h-4 w-4" }), "Save Settings"] })
688
719
  })
689
- })
690
- ]
720
+ ]
721
+ })
691
722
  })
692
- })
693
- ]
694
- })
723
+ ]
724
+ })
725
+ ]
695
726
  });
696
727
  };
697
728
  //#endregion
698
- export { x as BusinessSettingsPage };
729
+ export { w as BusinessSettingsPage };
699
730
 
700
731
  //# sourceMappingURL=BusinessSettingsPage.js.map