@burdenoff/microfe-subscriberbot 2026.626.2 → 2026.629.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/dist/index.js +4 -4
  2. package/dist/subscriberbot/SubscriberBotRoot.js +61 -133
  3. package/dist/subscriberbot/SubscriberBotRoot.js.map +1 -1
  4. package/dist/subscriberbot/SubscriberBotRoutes.js +56 -187
  5. package/dist/subscriberbot/SubscriberBotRoutes.js.map +1 -1
  6. package/dist/subscriberbot/components/StateViews.js +49 -0
  7. package/dist/subscriberbot/components/StateViews.js.map +1 -0
  8. package/dist/subscriberbot/components/StatusBadge.js +45 -47
  9. package/dist/subscriberbot/components/StatusBadge.js.map +1 -1
  10. package/dist/subscriberbot/context/SubscriberBotContext.js +22 -30
  11. package/dist/subscriberbot/context/SubscriberBotContext.js.map +1 -1
  12. package/dist/subscriberbot/hooks/useSubscriberBotApi.js +342 -195
  13. package/dist/subscriberbot/hooks/useSubscriberBotApi.js.map +1 -1
  14. package/dist/subscriberbot/index.js +1 -1
  15. package/dist/subscriberbot/pages/DashboardPage.js +269 -0
  16. package/dist/subscriberbot/pages/DashboardPage.js.map +1 -0
  17. package/dist/subscriberbot/pages/InboxPage.js +186 -0
  18. package/dist/subscriberbot/pages/InboxPage.js.map +1 -0
  19. package/dist/subscriberbot/pages/InvoicesPage.js +211 -0
  20. package/dist/subscriberbot/pages/InvoicesPage.js.map +1 -0
  21. package/dist/subscriberbot/pages/WorkflowsPage.js +236 -0
  22. package/dist/subscriberbot/pages/WorkflowsPage.js.map +1 -0
  23. package/dist/subscriberbot/pages/agents/AgentDetailPage.js +160 -0
  24. package/dist/subscriberbot/pages/agents/AgentDetailPage.js.map +1 -0
  25. package/dist/subscriberbot/pages/agents/AgentNewPage.js +140 -0
  26. package/dist/subscriberbot/pages/agents/AgentNewPage.js.map +1 -0
  27. package/dist/subscriberbot/pages/agents/AgentsListPage.js +178 -0
  28. package/dist/subscriberbot/pages/agents/AgentsListPage.js.map +1 -0
  29. package/dist/subscriberbot/pages/providers/ProviderDetailPage.js +179 -0
  30. package/dist/subscriberbot/pages/providers/ProviderDetailPage.js.map +1 -0
  31. package/dist/subscriberbot/pages/providers/ProviderNewPage.js +185 -0
  32. package/dist/subscriberbot/pages/providers/ProviderNewPage.js.map +1 -0
  33. package/dist/subscriberbot/pages/providers/ProvidersListPage.js +254 -0
  34. package/dist/subscriberbot/pages/providers/ProvidersListPage.js.map +1 -0
  35. package/dist/subscriberbot/pages/relationships/RelationshipDetailPage.js +306 -0
  36. package/dist/subscriberbot/pages/relationships/RelationshipDetailPage.js.map +1 -0
  37. package/dist/subscriberbot/pages/relationships/RelationshipNewPage.js +253 -0
  38. package/dist/subscriberbot/pages/relationships/RelationshipNewPage.js.map +1 -0
  39. package/dist/subscriberbot/pages/relationships/RelationshipsListPage.js +248 -0
  40. package/dist/subscriberbot/pages/relationships/RelationshipsListPage.js.map +1 -0
  41. package/dist/subscriberbot/utils/formatters.js +50 -32
  42. package/dist/subscriberbot/utils/formatters.js.map +1 -1
  43. package/package.json +1 -1
  44. package/dist/subscriberbot/components/InvestmentCard.js +0 -97
  45. package/dist/subscriberbot/components/InvestmentCard.js.map +0 -1
  46. package/dist/subscriberbot/components/RatingDisplay.js +0 -35
  47. package/dist/subscriberbot/components/RatingDisplay.js.map +0 -1
  48. package/dist/subscriberbot/mocks/data.js +0 -1517
  49. package/dist/subscriberbot/mocks/data.js.map +0 -1
  50. package/dist/subscriberbot/mocks/users.js +0 -34
  51. package/dist/subscriberbot/mocks/users.js.map +0 -1
  52. package/dist/subscriberbot/pages/HomePage.js +0 -930
  53. package/dist/subscriberbot/pages/HomePage.js.map +0 -1
  54. package/dist/subscriberbot/pages/admin/AdminAnalyticsPage.js +0 -651
  55. package/dist/subscriberbot/pages/admin/AdminAnalyticsPage.js.map +0 -1
  56. package/dist/subscriberbot/pages/admin/AdminDashboard.js +0 -679
  57. package/dist/subscriberbot/pages/admin/AdminDashboard.js.map +0 -1
  58. package/dist/subscriberbot/pages/admin/AdminFinancialPage.js +0 -427
  59. package/dist/subscriberbot/pages/admin/AdminFinancialPage.js.map +0 -1
  60. package/dist/subscriberbot/pages/admin/AdminOrdersPage.js +0 -665
  61. package/dist/subscriberbot/pages/admin/AdminOrdersPage.js.map +0 -1
  62. package/dist/subscriberbot/pages/admin/AdminProfilePage.js +0 -261
  63. package/dist/subscriberbot/pages/admin/AdminProfilePage.js.map +0 -1
  64. package/dist/subscriberbot/pages/admin/AdminSettingsPage.js +0 -654
  65. package/dist/subscriberbot/pages/admin/AdminSettingsPage.js.map +0 -1
  66. package/dist/subscriberbot/pages/admin/CartManagementPage.js +0 -874
  67. package/dist/subscriberbot/pages/admin/CartManagementPage.js.map +0 -1
  68. package/dist/subscriberbot/pages/admin/UserManagementPage.js +0 -898
  69. package/dist/subscriberbot/pages/admin/UserManagementPage.js.map +0 -1
  70. package/dist/subscriberbot/pages/cart-owner/AnalyticsDashboard.js +0 -839
  71. package/dist/subscriberbot/pages/cart-owner/AnalyticsDashboard.js.map +0 -1
  72. package/dist/subscriberbot/pages/cart-owner/BusinessSettingsPage.js +0 -705
  73. package/dist/subscriberbot/pages/cart-owner/BusinessSettingsPage.js.map +0 -1
  74. package/dist/subscriberbot/pages/cart-owner/CartOwnerDashboard.js +0 -802
  75. package/dist/subscriberbot/pages/cart-owner/CartOwnerDashboard.js.map +0 -1
  76. package/dist/subscriberbot/pages/cart-owner/CartOwnerProfilePage.js +0 -891
  77. package/dist/subscriberbot/pages/cart-owner/CartOwnerProfilePage.js.map +0 -1
  78. package/dist/subscriberbot/pages/cart-owner/CartServiceConfigPage.js +0 -633
  79. package/dist/subscriberbot/pages/cart-owner/CartServiceConfigPage.js.map +0 -1
  80. package/dist/subscriberbot/pages/cart-owner/InventoryManagementPage.js +0 -910
  81. package/dist/subscriberbot/pages/cart-owner/InventoryManagementPage.js.map +0 -1
  82. package/dist/subscriberbot/pages/cart-owner/OrderManagementPage.js +0 -879
  83. package/dist/subscriberbot/pages/cart-owner/OrderManagementPage.js.map +0 -1
  84. package/dist/subscriberbot/pages/cart-owner/StaffManagementPage.js +0 -838
  85. package/dist/subscriberbot/pages/cart-owner/StaffManagementPage.js.map +0 -1
  86. package/dist/subscriberbot/pages/common/HelpSupportPage.js +0 -1323
  87. package/dist/subscriberbot/pages/common/HelpSupportPage.js.map +0 -1
  88. package/dist/subscriberbot/pages/common/NotificationCenterPage.js +0 -672
  89. package/dist/subscriberbot/pages/common/NotificationCenterPage.js.map +0 -1
  90. package/dist/subscriberbot/pages/common/SettingsPage.js +0 -973
  91. package/dist/subscriberbot/pages/common/SettingsPage.js.map +0 -1
  92. package/dist/subscriberbot/pages/customer/BookingDetailsPage.js +0 -626
  93. package/dist/subscriberbot/pages/customer/BookingDetailsPage.js.map +0 -1
  94. package/dist/subscriberbot/pages/customer/CartDetailPage.js +0 -654
  95. package/dist/subscriberbot/pages/customer/CartDetailPage.js.map +0 -1
  96. package/dist/subscriberbot/pages/customer/CartDiscoveryPage.js +0 -555
  97. package/dist/subscriberbot/pages/customer/CartDiscoveryPage.js.map +0 -1
  98. package/dist/subscriberbot/pages/customer/CheckoutPage.js +0 -529
  99. package/dist/subscriberbot/pages/customer/CheckoutPage.js.map +0 -1
  100. package/dist/subscriberbot/pages/customer/CustomerDashboard.js +0 -532
  101. package/dist/subscriberbot/pages/customer/CustomerDashboard.js.map +0 -1
  102. package/dist/subscriberbot/pages/customer/CustomerProfilePage.js +0 -630
  103. package/dist/subscriberbot/pages/customer/CustomerProfilePage.js.map +0 -1
  104. package/dist/subscriberbot/pages/customer/DirectServiceBookingPage.js +0 -633
  105. package/dist/subscriberbot/pages/customer/DirectServiceBookingPage.js.map +0 -1
  106. package/dist/subscriberbot/pages/customer/FavoritesPage.js +0 -484
  107. package/dist/subscriberbot/pages/customer/FavoritesPage.js.map +0 -1
  108. package/dist/subscriberbot/pages/customer/OrderHistoryPage.js +0 -446
  109. package/dist/subscriberbot/pages/customer/OrderHistoryPage.js.map +0 -1
  110. package/dist/subscriberbot/pages/customer/OrderTrackingPage.js +0 -394
  111. package/dist/subscriberbot/pages/customer/OrderTrackingPage.js.map +0 -1
  112. package/dist/subscriberbot/pages/customer/PaymentMethodsPage.js +0 -495
  113. package/dist/subscriberbot/pages/customer/PaymentMethodsPage.js.map +0 -1
  114. package/dist/subscriberbot/pages/customer/ReviewsPage.js +0 -613
  115. package/dist/subscriberbot/pages/customer/ReviewsPage.js.map +0 -1
  116. package/dist/subscriberbot/pages/customer/SavedAddressesPage.js +0 -450
  117. package/dist/subscriberbot/pages/customer/SavedAddressesPage.js.map +0 -1
  118. package/dist/subscriberbot/pages/investor/InvestmentDetailsPage.js +0 -886
  119. package/dist/subscriberbot/pages/investor/InvestmentDetailsPage.js.map +0 -1
  120. package/dist/subscriberbot/pages/investor/InvestmentOpportunitiesPage.js +0 -947
  121. package/dist/subscriberbot/pages/investor/InvestmentOpportunitiesPage.js.map +0 -1
  122. package/dist/subscriberbot/pages/investor/InvestorAnalyticsPage.js +0 -687
  123. package/dist/subscriberbot/pages/investor/InvestorAnalyticsPage.js.map +0 -1
  124. package/dist/subscriberbot/pages/investor/InvestorDashboard.js +0 -451
  125. package/dist/subscriberbot/pages/investor/InvestorDashboard.js.map +0 -1
  126. package/dist/subscriberbot/pages/investor/InvestorInvestmentsPage.js +0 -406
  127. package/dist/subscriberbot/pages/investor/InvestorInvestmentsPage.js.map +0 -1
  128. package/dist/subscriberbot/pages/investor/InvestorPortfolioPage.js +0 -575
  129. package/dist/subscriberbot/pages/investor/InvestorPortfolioPage.js.map +0 -1
  130. package/dist/subscriberbot/pages/investor/InvestorProfilePage.js +0 -1070
  131. package/dist/subscriberbot/pages/investor/InvestorProfilePage.js.map +0 -1
  132. package/dist/subscriberbot/pages/worker/TaskDetailsPage.js +0 -535
  133. package/dist/subscriberbot/pages/worker/TaskDetailsPage.js.map +0 -1
  134. package/dist/subscriberbot/pages/worker/WorkerDashboard.js +0 -666
  135. package/dist/subscriberbot/pages/worker/WorkerDashboard.js.map +0 -1
  136. package/dist/subscriberbot/pages/worker/WorkerOrdersPage.js +0 -681
  137. package/dist/subscriberbot/pages/worker/WorkerOrdersPage.js.map +0 -1
  138. package/dist/subscriberbot/pages/worker/WorkerProfilePage.js +0 -692
  139. package/dist/subscriberbot/pages/worker/WorkerProfilePage.js.map +0 -1
  140. package/dist/subscriberbot/pages/worker/WorkerSchedulePage.js +0 -588
  141. package/dist/subscriberbot/pages/worker/WorkerSchedulePage.js.map +0 -1
@@ -1,654 +0,0 @@
1
- import { useSubscriberBot as e } from "../../context/SubscriberBotContext.js";
2
- import { cn as t } from "../../utils/cn.js";
3
- import { PageLayout as n } from "../../components/PageLayout.js";
4
- import { useState as r } from "react";
5
- import { ArrowLeft as i, Bell as a, Database as o, Globe as s, HardDrive as c, Lock as l, Mail as u, Plug as d, Save as f, Server as p, Settings as m, Shield as h, Smartphone as g } from "lucide-react";
6
- import { jsx as _, jsxs as v } from "react/jsx-runtime";
7
- import { EmphasisPanel as y, PagePurpose as b } from "@burdenoff/fe-libs/ui";
8
- //#region src/subscriberbot/pages/admin/AdminSettingsPage.tsx
9
- function x() {
10
- let { navigateTo: x } = e(), [S, C] = r(!1), [w, T] = r("general"), [E, D] = r({
11
- general: {
12
- siteName: "SubscriberBot",
13
- siteUrl: "https://subscriberbot.com",
14
- timezone: "Asia/Kolkata",
15
- language: "en",
16
- currency: "INR",
17
- dateFormat: "DD/MM/YYYY",
18
- maintenanceMode: !1
19
- },
20
- security: {
21
- passwordPolicy: {
22
- minLength: 8,
23
- requireUppercase: !0,
24
- requireNumbers: !0,
25
- requireSymbols: !1
26
- },
27
- sessionTimeout: 60,
28
- twoFactorAuth: !1,
29
- maxLoginAttempts: 5
30
- },
31
- notifications: {
32
- emailNotifications: !0,
33
- smsNotifications: !0,
34
- adminAlerts: !0,
35
- systemAlerts: !0
36
- },
37
- database: {
38
- backupFrequency: "daily",
39
- retentionPeriod: 30,
40
- autoBackup: !0,
41
- lastBackup: (/* @__PURE__ */ new Date()).toISOString()
42
- },
43
- integrations: {
44
- emailService: "sendgrid",
45
- smsService: "twilio",
46
- paymentGateway: "razorpay",
47
- analyticsService: "google"
48
- }
49
- }), O = async () => {
50
- C(!0), await new Promise((e) => setTimeout(e, 1e3)), alert("Settings saved successfully"), C(!1);
51
- }, k = (e, t, n) => {
52
- D((r) => ({
53
- ...r,
54
- [e]: {
55
- ...r[e],
56
- [t]: n
57
- }
58
- }));
59
- }, A = (e, t, n, r) => {
60
- D((i) => ({
61
- ...i,
62
- [e]: {
63
- ...i[e],
64
- [t]: {
65
- ...i[e][t],
66
- [n]: r
67
- }
68
- }
69
- }));
70
- }, j = [
71
- {
72
- id: "general",
73
- label: "General",
74
- icon: p
75
- },
76
- {
77
- id: "security",
78
- label: "Security",
79
- icon: h
80
- },
81
- {
82
- id: "notifications",
83
- label: "Notifications",
84
- icon: a
85
- },
86
- {
87
- id: "database",
88
- label: "Database",
89
- icon: o
90
- },
91
- {
92
- id: "integrations",
93
- label: "Integrations",
94
- icon: d
95
- }
96
- ], M = "w-full rounded-lg border border-border-seam bg-bg-surface py-2 px-3 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]", N = "block text-sm font-medium text-text-secondary mb-2";
97
- return /* @__PURE__ */ v(n, {
98
- title: "System Settings",
99
- description: "Configure platform-wide settings and policies",
100
- actions: /* @__PURE__ */ v("div", {
101
- className: "flex items-center gap-2",
102
- children: [/* @__PURE__ */ v("button", {
103
- type: "button",
104
- onClick: () => x("/admin"),
105
- className: "flex items-center gap-1.5 rounded-lg border border-border-seam px-3 py-2 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
106
- children: [/* @__PURE__ */ _(i, { className: "h-4 w-4" }), " Back"]
107
- }), /* @__PURE__ */ v("button", {
108
- type: "button",
109
- onClick: O,
110
- disabled: S,
111
- className: "flex items-center gap-1.5 rounded-lg bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:bg-action-primary-bg/90 transition-colors disabled:opacity-50",
112
- children: [
113
- /* @__PURE__ */ _(f, { className: "h-4 w-4" }),
114
- " ",
115
- S ? "Saving..." : "Save Settings"
116
- ]
117
- })]
118
- }),
119
- children: [/* @__PURE__ */ _(b, {
120
- icon: /* @__PURE__ */ _(m, { className: "h-4 w-4" }),
121
- className: "mb-6",
122
- children: "Platform-wide controls that shape how SubscriberBot behaves for everyone. Tune general settings, security policies, notification defaults, database options and third-party integrations from these tabs. Changes here affect every user, so review carefully and remember to save before switching tabs."
123
- }), /* @__PURE__ */ v("div", {
124
- className: "flex flex-col lg:flex-row gap-6",
125
- children: [
126
- /* @__PURE__ */ _("div", {
127
- className: "lg:hidden",
128
- children: /* @__PURE__ */ _("div", {
129
- className: "rounded-lg border border-border-seam bg-bg-surface p-3 mb-4",
130
- children: /* @__PURE__ */ _("div", {
131
- className: "grid grid-cols-2 sm:grid-cols-3 gap-2",
132
- children: j.map((e) => {
133
- let n = e.icon;
134
- return /* @__PURE__ */ v("button", {
135
- type: "button",
136
- onClick: () => T(e.id),
137
- className: t("flex items-center justify-center gap-2 rounded-lg px-3 py-2 text-sm font-medium transition-colors", w === e.id ? "bg-action-primary-bg text-action-primary-text" : "bg-bg-sunken text-text-primary hover:bg-bg-sunken/80"),
138
- children: [/* @__PURE__ */ _(n, { className: "h-4 w-4" }), /* @__PURE__ */ _("span", { children: e.label })]
139
- }, e.id);
140
- })
141
- })
142
- })
143
- }),
144
- /* @__PURE__ */ _("div", {
145
- className: "hidden lg:block lg:w-64 lg:shrink-0",
146
- children: /* @__PURE__ */ v("div", {
147
- className: "rounded-lg border border-border-seam bg-bg-surface sticky top-24",
148
- children: [/* @__PURE__ */ _("div", {
149
- className: "p-4 border-b border-border-seam",
150
- children: /* @__PURE__ */ _("h2", {
151
- className: "font-semibold text-text-primary",
152
- children: "Settings"
153
- })
154
- }), /* @__PURE__ */ _("nav", {
155
- className: "p-2",
156
- children: j.map((e) => {
157
- let n = e.icon;
158
- return /* @__PURE__ */ v("button", {
159
- type: "button",
160
- onClick: () => T(e.id),
161
- className: t("w-full text-left px-3 py-2 rounded-lg mb-1 flex items-center gap-3 transition-colors", w === e.id ? "bg-action-primary-bg/10 text-primary font-medium" : "text-text-primary hover:bg-bg-sunken"),
162
- children: [/* @__PURE__ */ _(n, { className: "h-4 w-4" }), /* @__PURE__ */ _("span", {
163
- className: "text-sm",
164
- children: e.label
165
- })]
166
- }, e.id);
167
- })
168
- })]
169
- })
170
- }),
171
- /* @__PURE__ */ _("div", {
172
- className: "flex-1 min-w-0",
173
- children: /* @__PURE__ */ v(y, {
174
- className: "p-6",
175
- children: [
176
- w === "general" && /* @__PURE__ */ v("div", {
177
- className: "space-y-6",
178
- children: [
179
- /* @__PURE__ */ v("div", {
180
- className: "flex items-center gap-2 mb-2",
181
- children: [/* @__PURE__ */ _(s, { className: "h-5 w-5 text-text-secondary" }), /* @__PURE__ */ _("h3", {
182
- className: "text-lg font-semibold text-text-primary",
183
- children: "General Settings"
184
- })]
185
- }),
186
- /* @__PURE__ */ v("div", {
187
- className: "grid grid-cols-1 md:grid-cols-2 gap-6",
188
- children: [
189
- /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
190
- className: N,
191
- children: "Site Name"
192
- }), /* @__PURE__ */ _("input", {
193
- type: "text",
194
- value: E.general.siteName,
195
- onChange: (e) => k("general", "siteName", e.target.value),
196
- className: M
197
- })] }),
198
- /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
199
- className: N,
200
- children: "Site URL"
201
- }), /* @__PURE__ */ _("input", {
202
- type: "text",
203
- value: E.general.siteUrl,
204
- onChange: (e) => k("general", "siteUrl", e.target.value),
205
- className: M
206
- })] }),
207
- /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
208
- className: N,
209
- children: "Timezone"
210
- }), /* @__PURE__ */ v("select", {
211
- value: E.general.timezone,
212
- onChange: (e) => k("general", "timezone", e.target.value),
213
- className: M,
214
- children: [
215
- /* @__PURE__ */ _("option", {
216
- value: "Asia/Kolkata",
217
- children: "Asia/Kolkata (IST)"
218
- }),
219
- /* @__PURE__ */ _("option", {
220
- value: "UTC",
221
- children: "UTC"
222
- }),
223
- /* @__PURE__ */ _("option", {
224
- value: "America/New_York",
225
- children: "America/New_York (EST)"
226
- })
227
- ]
228
- })] }),
229
- /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
230
- className: N,
231
- children: "Currency"
232
- }), /* @__PURE__ */ v("select", {
233
- value: E.general.currency,
234
- onChange: (e) => k("general", "currency", e.target.value),
235
- className: M,
236
- children: [
237
- /* @__PURE__ */ _("option", {
238
- value: "INR",
239
- children: "Indian Rupee (INR)"
240
- }),
241
- /* @__PURE__ */ _("option", {
242
- value: "USD",
243
- children: "US Dollar (USD)"
244
- }),
245
- /* @__PURE__ */ _("option", {
246
- value: "EUR",
247
- children: "Euro (EUR)"
248
- })
249
- ]
250
- })] }),
251
- /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
252
- className: N,
253
- children: "Language"
254
- }), /* @__PURE__ */ v("select", {
255
- value: E.general.language,
256
- onChange: (e) => k("general", "language", e.target.value),
257
- className: M,
258
- children: [
259
- /* @__PURE__ */ _("option", {
260
- value: "en",
261
- children: "English"
262
- }),
263
- /* @__PURE__ */ _("option", {
264
- value: "hi",
265
- children: "Hindi"
266
- }),
267
- /* @__PURE__ */ _("option", {
268
- value: "ta",
269
- children: "Tamil"
270
- })
271
- ]
272
- })] }),
273
- /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
274
- className: N,
275
- children: "Date Format"
276
- }), /* @__PURE__ */ v("select", {
277
- value: E.general.dateFormat,
278
- onChange: (e) => k("general", "dateFormat", e.target.value),
279
- className: M,
280
- children: [
281
- /* @__PURE__ */ _("option", {
282
- value: "DD/MM/YYYY",
283
- children: "DD/MM/YYYY"
284
- }),
285
- /* @__PURE__ */ _("option", {
286
- value: "MM/DD/YYYY",
287
- children: "MM/DD/YYYY"
288
- }),
289
- /* @__PURE__ */ _("option", {
290
- value: "YYYY-MM-DD",
291
- children: "YYYY-MM-DD"
292
- })
293
- ]
294
- })] })
295
- ]
296
- }),
297
- /* @__PURE__ */ v("label", {
298
- className: "flex items-center gap-2 mt-4",
299
- children: [/* @__PURE__ */ _("input", {
300
- type: "checkbox",
301
- checked: E.general.maintenanceMode,
302
- onChange: (e) => k("general", "maintenanceMode", e.target.checked),
303
- className: "rounded border-border-seam text-primary focus:ring-primary"
304
- }), /* @__PURE__ */ _("span", {
305
- className: "text-sm text-text-primary",
306
- children: "Enable Maintenance Mode"
307
- })]
308
- })
309
- ]
310
- }),
311
- w === "security" && /* @__PURE__ */ v("div", {
312
- className: "space-y-6",
313
- children: [
314
- /* @__PURE__ */ v("div", {
315
- className: "flex items-center gap-2 mb-2",
316
- children: [/* @__PURE__ */ _(l, { className: "h-5 w-5 text-text-secondary" }), /* @__PURE__ */ _("h3", {
317
- className: "text-lg font-semibold text-text-primary",
318
- children: "Security Settings"
319
- })]
320
- }),
321
- /* @__PURE__ */ v("div", { children: [
322
- /* @__PURE__ */ _("h4", {
323
- className: "font-medium text-text-primary mb-4",
324
- children: "Password Policy"
325
- }),
326
- /* @__PURE__ */ v("div", {
327
- className: "grid grid-cols-1 md:grid-cols-2 gap-6",
328
- children: [/* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
329
- className: N,
330
- children: "Minimum Length"
331
- }), /* @__PURE__ */ _("input", {
332
- type: "number",
333
- value: E.security.passwordPolicy.minLength,
334
- onChange: (e) => A("security", "passwordPolicy", "minLength", parseInt(e.target.value)),
335
- min: 6,
336
- max: 50,
337
- className: M
338
- })] }), /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
339
- className: N,
340
- children: "Session Timeout (minutes)"
341
- }), /* @__PURE__ */ _("input", {
342
- type: "number",
343
- value: E.security.sessionTimeout,
344
- onChange: (e) => k("security", "sessionTimeout", parseInt(e.target.value)),
345
- min: 15,
346
- max: 480,
347
- className: M
348
- })] })]
349
- }),
350
- /* @__PURE__ */ v("div", {
351
- className: "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4 mt-4",
352
- children: [
353
- /* @__PURE__ */ v("label", {
354
- className: "flex items-center gap-2",
355
- children: [/* @__PURE__ */ _("input", {
356
- type: "checkbox",
357
- checked: E.security.passwordPolicy.requireUppercase,
358
- onChange: (e) => A("security", "passwordPolicy", "requireUppercase", e.target.checked),
359
- className: "rounded border-border-seam text-primary focus:ring-primary"
360
- }), /* @__PURE__ */ _("span", {
361
- className: "text-sm text-text-primary",
362
- children: "Require Uppercase"
363
- })]
364
- }),
365
- /* @__PURE__ */ v("label", {
366
- className: "flex items-center gap-2",
367
- children: [/* @__PURE__ */ _("input", {
368
- type: "checkbox",
369
- checked: E.security.passwordPolicy.requireNumbers,
370
- onChange: (e) => A("security", "passwordPolicy", "requireNumbers", e.target.checked),
371
- className: "rounded border-border-seam text-primary focus:ring-primary"
372
- }), /* @__PURE__ */ _("span", {
373
- className: "text-sm text-text-primary",
374
- children: "Require Numbers"
375
- })]
376
- }),
377
- /* @__PURE__ */ v("label", {
378
- className: "flex items-center gap-2",
379
- children: [/* @__PURE__ */ _("input", {
380
- type: "checkbox",
381
- checked: E.security.passwordPolicy.requireSymbols,
382
- onChange: (e) => A("security", "passwordPolicy", "requireSymbols", e.target.checked),
383
- className: "rounded border-border-seam text-primary focus:ring-primary"
384
- }), /* @__PURE__ */ _("span", {
385
- className: "text-sm text-text-primary",
386
- children: "Require Symbols"
387
- })]
388
- }),
389
- /* @__PURE__ */ v("label", {
390
- className: "flex items-center gap-2",
391
- children: [/* @__PURE__ */ _("input", {
392
- type: "checkbox",
393
- checked: E.security.twoFactorAuth,
394
- onChange: (e) => k("security", "twoFactorAuth", e.target.checked),
395
- className: "rounded border-border-seam text-primary focus:ring-primary"
396
- }), /* @__PURE__ */ _("span", {
397
- className: "text-sm text-text-primary",
398
- children: "Two-Factor Auth"
399
- })]
400
- })
401
- ]
402
- })
403
- ] }),
404
- /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
405
- className: N,
406
- children: "Max Login Attempts"
407
- }), /* @__PURE__ */ _("input", {
408
- type: "number",
409
- value: E.security.maxLoginAttempts,
410
- onChange: (e) => k("security", "maxLoginAttempts", parseInt(e.target.value)),
411
- min: 1,
412
- max: 20,
413
- className: t(M, "max-w-xs")
414
- })] })
415
- ]
416
- }),
417
- w === "notifications" && /* @__PURE__ */ v("div", {
418
- className: "space-y-6",
419
- children: [/* @__PURE__ */ v("div", {
420
- className: "flex items-center gap-2 mb-2",
421
- children: [/* @__PURE__ */ _(a, { className: "h-5 w-5 text-text-secondary" }), /* @__PURE__ */ _("h3", {
422
- className: "text-lg font-semibold text-text-primary",
423
- children: "Notification Settings"
424
- })]
425
- }), /* @__PURE__ */ _("div", {
426
- className: "grid grid-cols-1 sm:grid-cols-2 gap-4",
427
- children: [
428
- {
429
- key: "emailNotifications",
430
- label: "Email Notifications",
431
- icon: u
432
- },
433
- {
434
- key: "smsNotifications",
435
- label: "SMS Notifications",
436
- icon: g
437
- },
438
- {
439
- key: "adminAlerts",
440
- label: "Admin Alerts",
441
- icon: h
442
- },
443
- {
444
- key: "systemAlerts",
445
- label: "System Alerts",
446
- icon: a
447
- }
448
- ].map((e) => {
449
- let t = e.icon;
450
- return /* @__PURE__ */ v("label", {
451
- className: "flex items-center gap-3 rounded-lg border border-border-seam p-4 cursor-pointer hover:bg-accent/50 transition-colors",
452
- children: [
453
- /* @__PURE__ */ _("input", {
454
- type: "checkbox",
455
- checked: E.notifications[e.key],
456
- onChange: (t) => k("notifications", e.key, t.target.checked),
457
- className: "rounded border-border-seam text-primary focus:ring-primary"
458
- }),
459
- /* @__PURE__ */ _(t, { className: "h-5 w-5 text-text-secondary" }),
460
- /* @__PURE__ */ _("span", {
461
- className: "text-sm font-medium text-text-primary",
462
- children: e.label
463
- })
464
- ]
465
- }, e.key);
466
- })
467
- })]
468
- }),
469
- w === "database" && /* @__PURE__ */ v("div", {
470
- className: "space-y-6",
471
- children: [
472
- /* @__PURE__ */ v("div", {
473
- className: "flex items-center gap-2 mb-2",
474
- children: [/* @__PURE__ */ _(c, { className: "h-5 w-5 text-text-secondary" }), /* @__PURE__ */ _("h3", {
475
- className: "text-lg font-semibold text-text-primary",
476
- children: "Database Settings"
477
- })]
478
- }),
479
- /* @__PURE__ */ v("div", {
480
- className: "grid grid-cols-1 md:grid-cols-2 gap-6",
481
- children: [/* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
482
- className: N,
483
- children: "Backup Frequency"
484
- }), /* @__PURE__ */ v("select", {
485
- value: E.database.backupFrequency,
486
- onChange: (e) => k("database", "backupFrequency", e.target.value),
487
- className: M,
488
- children: [
489
- /* @__PURE__ */ _("option", {
490
- value: "hourly",
491
- children: "Hourly"
492
- }),
493
- /* @__PURE__ */ _("option", {
494
- value: "daily",
495
- children: "Daily"
496
- }),
497
- /* @__PURE__ */ _("option", {
498
- value: "weekly",
499
- children: "Weekly"
500
- }),
501
- /* @__PURE__ */ _("option", {
502
- value: "monthly",
503
- children: "Monthly"
504
- })
505
- ]
506
- })] }), /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
507
- className: N,
508
- children: "Retention Period (days)"
509
- }), /* @__PURE__ */ _("input", {
510
- type: "number",
511
- value: E.database.retentionPeriod,
512
- onChange: (e) => k("database", "retentionPeriod", parseInt(e.target.value)),
513
- min: 7,
514
- max: 365,
515
- className: M
516
- })] })]
517
- }),
518
- /* @__PURE__ */ v("label", {
519
- className: "flex items-center gap-2",
520
- children: [/* @__PURE__ */ _("input", {
521
- type: "checkbox",
522
- checked: E.database.autoBackup,
523
- onChange: (e) => k("database", "autoBackup", e.target.checked),
524
- className: "rounded border-border-seam text-primary focus:ring-primary"
525
- }), /* @__PURE__ */ _("span", {
526
- className: "text-sm text-text-primary",
527
- children: "Enable Auto Backup"
528
- })]
529
- }),
530
- /* @__PURE__ */ v("div", {
531
- className: "rounded-lg bg-bg-sunken p-4",
532
- children: [/* @__PURE__ */ _("p", {
533
- className: "text-sm text-text-secondary",
534
- children: "Last Backup"
535
- }), /* @__PURE__ */ _("p", {
536
- className: "text-sm font-medium text-text-primary",
537
- children: new Date(E.database.lastBackup).toLocaleString("en-IN")
538
- })]
539
- })
540
- ]
541
- }),
542
- w === "integrations" && /* @__PURE__ */ v("div", {
543
- className: "space-y-6",
544
- children: [/* @__PURE__ */ v("div", {
545
- className: "flex items-center gap-2 mb-2",
546
- children: [/* @__PURE__ */ _(d, { className: "h-5 w-5 text-text-secondary" }), /* @__PURE__ */ _("h3", {
547
- className: "text-lg font-semibold text-text-primary",
548
- children: "Integrations"
549
- })]
550
- }), /* @__PURE__ */ v("div", {
551
- className: "grid grid-cols-1 md:grid-cols-2 gap-6",
552
- children: [
553
- /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
554
- className: N,
555
- children: "Email Service"
556
- }), /* @__PURE__ */ v("select", {
557
- value: E.integrations.emailService,
558
- onChange: (e) => k("integrations", "emailService", e.target.value),
559
- className: M,
560
- children: [
561
- /* @__PURE__ */ _("option", {
562
- value: "sendgrid",
563
- children: "SendGrid"
564
- }),
565
- /* @__PURE__ */ _("option", {
566
- value: "ses",
567
- children: "AWS SES"
568
- }),
569
- /* @__PURE__ */ _("option", {
570
- value: "mailgun",
571
- children: "Mailgun"
572
- })
573
- ]
574
- })] }),
575
- /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
576
- className: N,
577
- children: "SMS Service"
578
- }), /* @__PURE__ */ v("select", {
579
- value: E.integrations.smsService,
580
- onChange: (e) => k("integrations", "smsService", e.target.value),
581
- className: M,
582
- children: [
583
- /* @__PURE__ */ _("option", {
584
- value: "twilio",
585
- children: "Twilio"
586
- }),
587
- /* @__PURE__ */ _("option", {
588
- value: "msg91",
589
- children: "MSG91"
590
- }),
591
- /* @__PURE__ */ _("option", {
592
- value: "sns",
593
- children: "AWS SNS"
594
- })
595
- ]
596
- })] }),
597
- /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
598
- className: N,
599
- children: "Payment Gateway"
600
- }), /* @__PURE__ */ v("select", {
601
- value: E.integrations.paymentGateway,
602
- onChange: (e) => k("integrations", "paymentGateway", e.target.value),
603
- className: M,
604
- children: [
605
- /* @__PURE__ */ _("option", {
606
- value: "razorpay",
607
- children: "Razorpay"
608
- }),
609
- /* @__PURE__ */ _("option", {
610
- value: "stripe",
611
- children: "Stripe"
612
- }),
613
- /* @__PURE__ */ _("option", {
614
- value: "paytm",
615
- children: "Paytm"
616
- })
617
- ]
618
- })] }),
619
- /* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("label", {
620
- className: N,
621
- children: "Analytics Service"
622
- }), /* @__PURE__ */ v("select", {
623
- value: E.integrations.analyticsService,
624
- onChange: (e) => k("integrations", "analyticsService", e.target.value),
625
- className: M,
626
- children: [
627
- /* @__PURE__ */ _("option", {
628
- value: "google",
629
- children: "Google Analytics"
630
- }),
631
- /* @__PURE__ */ _("option", {
632
- value: "mixpanel",
633
- children: "Mixpanel"
634
- }),
635
- /* @__PURE__ */ _("option", {
636
- value: "amplitude",
637
- children: "Amplitude"
638
- })
639
- ]
640
- })] })
641
- ]
642
- })]
643
- })
644
- ]
645
- })
646
- })
647
- ]
648
- })]
649
- });
650
- }
651
- //#endregion
652
- export { x as AdminSettingsPage };
653
-
654
- //# sourceMappingURL=AdminSettingsPage.js.map