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