@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,1070 +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 { useInvestments as r } from "../../hooks/useSubscriberBotApi.js";
5
- import { formatCurrency as i, formatDate as ee } from "../../utils/formatters.js";
6
- import { mockActiveInvestments as te } from "../../mocks/data.js";
7
- import { useCallback as a, useMemo as o, useState as s } from "react";
8
- import { Bell as c, Briefcase as l, Building2 as ne, Camera as u, CheckCircle2 as d, DollarSign as f, Edit3 as p, Eye as m, EyeOff as h, FileText as g, Globe as _, Linkedin as re, Lock as ie, Mail as ae, MapPin as oe, Monitor as se, Phone as v, PieChart as y, Save as b, Shield as x, Smartphone as S, TrendingUp as C, User as w, X as ce } from "lucide-react";
9
- import { Fragment as T, jsx as E, jsxs as D } from "react/jsx-runtime";
10
- import { EmphasisPanel as le, PagePurpose as ue } from "@burdenoff/fe-libs/ui";
11
- //#region src/subscriberbot/pages/investor/InvestorProfilePage.tsx
12
- var O = [
13
- {
14
- id: "personal",
15
- label: "Personal Info",
16
- Icon: w
17
- },
18
- {
19
- id: "investment",
20
- label: "Investment Profile",
21
- Icon: C
22
- },
23
- {
24
- id: "portfolio",
25
- label: "Portfolio",
26
- Icon: y
27
- },
28
- {
29
- id: "documents",
30
- label: "Documents",
31
- Icon: g
32
- },
33
- {
34
- id: "security",
35
- label: "Security",
36
- Icon: x
37
- },
38
- {
39
- id: "notifications",
40
- label: "Notifications",
41
- Icon: c
42
- }
43
- ], de = [
44
- {
45
- name: "PAN Card",
46
- verifiedOn: "15 Dec 2023",
47
- status: "verified"
48
- },
49
- {
50
- name: "Aadhar Card",
51
- verifiedOn: "15 Dec 2023",
52
- status: "verified"
53
- },
54
- {
55
- name: "Bank Statement",
56
- verifiedOn: "20 Dec 2023",
57
- status: "uploaded"
58
- },
59
- {
60
- name: "Investment Agreement",
61
- verifiedOn: "",
62
- status: "template"
63
- }
64
- ], fe = [
65
- {
66
- device: "Chrome on macOS",
67
- location: "Bangalore, India",
68
- date: "2024-01-16T08:30:00Z",
69
- current: !0
70
- },
71
- {
72
- device: "Safari on iPhone",
73
- location: "Bangalore, India",
74
- date: "2024-01-15T19:45:00Z",
75
- current: !1
76
- },
77
- {
78
- device: "Chrome on Windows",
79
- location: "Mumbai, India",
80
- date: "2024-01-14T10:20:00Z",
81
- current: !1
82
- }
83
- ], pe = [
84
- "Food & Beverage",
85
- "Quick Commerce",
86
- "Cloud Kitchen",
87
- "Retail",
88
- "Technology",
89
- "Healthcare",
90
- "Education",
91
- "Logistics",
92
- "FinTech"
93
- ];
94
- function k() {
95
- let { currentUser: c, navigateTo: x } = e(), { data: k = [] } = r(c?.id || ""), [A, j] = s("personal"), [M, N] = s(!1), [P, F] = s(!1), [I, L] = s(""), R = o(() => ({
96
- firstName: c?.firstName ?? c?.name?.split(" ")[0] ?? "Rajesh",
97
- lastName: c?.lastName ?? c?.name?.split(" ")[1] ?? "Mehta",
98
- email: c?.email ?? "investor@burdenoff.com",
99
- phone: "+91 98765 43230",
100
- profileImage: c?.avatar ?? "",
101
- investorType: "Angel Investor",
102
- investmentRange: "5L - 25L",
103
- preferredSectors: [
104
- "Food & Beverage",
105
- "Quick Commerce",
106
- "Cloud Kitchen"
107
- ],
108
- investmentHorizon: "3-5 years",
109
- riskProfile: "Moderate",
110
- companyName: "Mehta Ventures",
111
- designation: "Managing Partner",
112
- companyWebsite: "www.mehtaventures.com",
113
- linkedinProfile: "linkedin.com/in/rajeshmehta",
114
- address: "456, MG Road",
115
- city: "Bangalore",
116
- state: "Karnataka",
117
- country: "India",
118
- pincode: "560001"
119
- }), [c]), [z, B] = s(R);
120
- o(() => ({
121
- totalInvested: k.reduce((e, t) => e + t.investedAmount, 0),
122
- portfolioValue: k.reduce((e, t) => e + t.currentValue, 0),
123
- totalReturns: k.reduce((e, t) => e + t.returns, 0),
124
- activeInvestments: k.length
125
- }), [k]);
126
- let [V, me] = s([
127
- {
128
- id: "opportunities",
129
- label: "New Investment Opportunities",
130
- description: "Get notified about new investment opportunities matching your profile",
131
- enabled: !0
132
- },
133
- {
134
- id: "updates",
135
- label: "Portfolio Updates",
136
- description: "Regular updates on your portfolio performance",
137
- enabled: !0
138
- },
139
- {
140
- id: "reports",
141
- label: "Monthly Reports",
142
- description: "Detailed monthly investment reports",
143
- enabled: !0
144
- },
145
- {
146
- id: "events",
147
- label: "Investor Events",
148
- description: "Invitations to investor meetups and events",
149
- enabled: !1
150
- },
151
- {
152
- id: "news",
153
- label: "Market News",
154
- description: "Important market news and updates",
155
- enabled: !0
156
- },
157
- {
158
- id: "dividends",
159
- label: "Dividend Alerts",
160
- description: "Notifications when dividends are credited to your account",
161
- enabled: !0
162
- }
163
- ]), [he, H] = s(!1), [U, W] = s(""), [G, K] = s(""), [q, J] = s(""), [Y, ge] = s(!1), [X, _e] = s(!1), [Z, ve] = s(!1), Q = a((e, t) => {
164
- B((n) => ({
165
- ...n,
166
- [e]: t
167
- }));
168
- }, []), $ = a(() => {
169
- F(!0), setTimeout(() => {
170
- F(!1), N(!1), L("Profile updated successfully!"), setTimeout(() => L(""), 3e3);
171
- }, 1200);
172
- }, []), ye = a((e) => {
173
- let t = e.target.files?.[0];
174
- if (t) {
175
- let e = new FileReader();
176
- e.onloadend = () => {
177
- B((t) => ({
178
- ...t,
179
- profileImage: e.result
180
- }));
181
- }, e.readAsDataURL(t);
182
- }
183
- }, []), be = a((e) => {
184
- me((t) => t.map((t) => t.id === e ? {
185
- ...t,
186
- enabled: !t.enabled
187
- } : t));
188
- }, []), xe = a(() => {
189
- if (!(!U || !G || !q)) {
190
- if (G !== q) {
191
- alert("Passwords do not match");
192
- return;
193
- }
194
- if (G.length < 8) {
195
- alert("Password must be at least 8 characters");
196
- return;
197
- }
198
- alert("Password changed successfully!"), H(!1), W(""), K(""), J("");
199
- }
200
- }, [
201
- U,
202
- G,
203
- q
204
- ]), Se = a(() => {
205
- ve((e) => {
206
- let t = !e;
207
- return alert(t ? "2FA has been enabled" : "2FA has been disabled"), t;
208
- });
209
- }, []);
210
- return /* @__PURE__ */ D(n, {
211
- title: "Investor Profile",
212
- description: "Manage your investment profile and preferences",
213
- actions: /* @__PURE__ */ D("div", {
214
- className: "flex items-center gap-2",
215
- children: [I && /* @__PURE__ */ E("span", {
216
- className: "text-sm font-medium text-status-success-text",
217
- children: I
218
- }), M ? /* @__PURE__ */ D(T, { children: [/* @__PURE__ */ D("button", {
219
- type: "button",
220
- onClick: () => {
221
- N(!1), B(R);
222
- },
223
- className: "flex items-center gap-2 rounded-lg border border-border-seam px-4 py-2 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
224
- children: [/* @__PURE__ */ E(ce, { className: "h-4 w-4" }), "Cancel"]
225
- }), /* @__PURE__ */ E("button", {
226
- type: "button",
227
- onClick: $,
228
- disabled: P,
229
- className: t("flex items-center gap-2 rounded-lg px-4 py-2 text-sm font-medium transition-colors", P ? "cursor-not-allowed bg-bg-sunken text-text-secondary" : "bg-action-primary-bg text-action-primary-text hover:bg-action-primary-bg/90"),
230
- children: P ? /* @__PURE__ */ D(T, { children: [/* @__PURE__ */ E("div", { className: "h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent" }), "Saving..."] }) : /* @__PURE__ */ D(T, { children: [/* @__PURE__ */ E(b, { className: "h-4 w-4" }), "Save Changes"] })
231
- })] }) : /* @__PURE__ */ D("button", {
232
- type: "button",
233
- onClick: () => N(!0),
234
- className: "flex items-center gap-2 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",
235
- children: [/* @__PURE__ */ E(p, { className: "h-4 w-4" }), "Edit Profile"]
236
- })]
237
- }),
238
- children: [/* @__PURE__ */ E(ue, {
239
- icon: /* @__PURE__ */ E(l, { className: "h-4 w-4" }),
240
- className: "mb-6",
241
- children: "Your investor identity and preferences. Keep your contact details current and set your investment profile — risk appetite, preferred categories and goals — so the platform can surface opportunities that actually fit you. Your portfolio snapshot lives here too, so you always know where you stand at a glance."
242
- }), /* @__PURE__ */ D("div", {
243
- className: "grid grid-cols-1 gap-6 lg:grid-cols-4",
244
- children: [/* @__PURE__ */ D("div", {
245
- className: "lg:col-span-1",
246
- children: [
247
- /* @__PURE__ */ D(le, {
248
- className: "p-4 sm:p-6",
249
- children: [/* @__PURE__ */ D("div", {
250
- className: "text-center",
251
- children: [
252
- /* @__PURE__ */ D("div", {
253
- className: "relative mx-auto inline-block",
254
- children: [/* @__PURE__ */ E("div", {
255
- className: "h-20 w-20 overflow-hidden rounded-full bg-bg-sunken sm:h-24 sm:w-24",
256
- children: z.profileImage ? /* @__PURE__ */ E("img", {
257
- src: z.profileImage,
258
- alt: "Profile",
259
- className: "h-full w-full object-cover"
260
- }) : /* @__PURE__ */ E("div", {
261
- className: "flex h-full w-full items-center justify-center",
262
- children: /* @__PURE__ */ E(w, { className: "h-10 w-10 text-text-secondary" })
263
- })
264
- }), M && /* @__PURE__ */ D("label", {
265
- className: "absolute bottom-0 right-0 flex h-8 w-8 cursor-pointer items-center justify-center rounded-full bg-action-primary-bg text-action-primary-text hover:bg-action-primary-bg/90 transition-colors",
266
- children: [/* @__PURE__ */ E(u, { className: "h-4 w-4" }), /* @__PURE__ */ E("input", {
267
- type: "file",
268
- accept: "image/*",
269
- onChange: ye,
270
- className: "hidden"
271
- })]
272
- })]
273
- }),
274
- /* @__PURE__ */ D("h3", {
275
- className: "mt-3 text-base font-semibold text-text-primary sm:text-lg",
276
- children: [
277
- z.firstName,
278
- " ",
279
- z.lastName
280
- ]
281
- }),
282
- /* @__PURE__ */ E("p", {
283
- className: "text-sm text-text-secondary",
284
- children: z.investorType
285
- }),
286
- /* @__PURE__ */ E("p", {
287
- className: "mt-1 truncate text-xs text-text-secondary",
288
- children: z.companyName
289
- })
290
- ]
291
- }), /* @__PURE__ */ D("div", {
292
- className: "mt-5 space-y-3 border-t border-border-seam pt-4",
293
- children: [
294
- /* @__PURE__ */ D("div", {
295
- className: "flex items-center justify-between",
296
- children: [/* @__PURE__ */ E("span", {
297
- className: "text-xs text-text-secondary sm:text-sm",
298
- children: "Portfolio Value"
299
- }), /* @__PURE__ */ E("span", {
300
- className: "text-xs font-semibold text-primary sm:text-sm",
301
- children: i(z.portfolioValue ?? 0, { minimumFractionDigits: 0 })
302
- })]
303
- }),
304
- /* @__PURE__ */ D("div", {
305
- className: "flex items-center justify-between",
306
- children: [/* @__PURE__ */ E("span", {
307
- className: "text-xs text-text-secondary sm:text-sm",
308
- children: "Active Investments"
309
- }), /* @__PURE__ */ E("span", {
310
- className: "text-xs font-semibold text-text-primary sm:text-sm",
311
- children: z.activeInvestments
312
- })]
313
- }),
314
- /* @__PURE__ */ D("div", {
315
- className: "flex items-center justify-between",
316
- children: [/* @__PURE__ */ E("span", {
317
- className: "text-xs text-text-secondary sm:text-sm",
318
- children: "Total Returns"
319
- }), /* @__PURE__ */ D("span", {
320
- className: "text-xs font-semibold text-status-success-text sm:text-sm",
321
- children: ["+", i(z.totalReturns ?? 0, { minimumFractionDigits: 0 })]
322
- })]
323
- }),
324
- /* @__PURE__ */ D("div", {
325
- className: "flex items-center justify-between",
326
- children: [/* @__PURE__ */ E("span", {
327
- className: "text-xs text-text-secondary sm:text-sm",
328
- children: "Total Invested"
329
- }), /* @__PURE__ */ E("span", {
330
- className: "text-xs font-semibold text-text-primary sm:text-sm",
331
- children: i(z.totalInvested ?? 0, { minimumFractionDigits: 0 })
332
- })]
333
- })
334
- ]
335
- })]
336
- }),
337
- /* @__PURE__ */ E("div", {
338
- className: "mt-4 flex gap-2 overflow-x-auto pb-2 lg:hidden",
339
- children: O.map((e) => /* @__PURE__ */ D("button", {
340
- type: "button",
341
- onClick: () => j(e.id),
342
- className: t("flex shrink-0 items-center gap-2 rounded-lg px-3 py-2 text-sm font-medium transition-colors", A === e.id ? "bg-action-primary-bg text-action-primary-text shadow-sm" : "bg-bg-surface text-text-primary hover:bg-accent"),
343
- children: [/* @__PURE__ */ E(e.Icon, { className: "h-4 w-4 shrink-0" }), e.label]
344
- }, e.id))
345
- }),
346
- /* @__PURE__ */ E("div", {
347
- className: "mt-4 hidden space-y-2 lg:block",
348
- children: O.map((e) => /* @__PURE__ */ D("button", {
349
- type: "button",
350
- onClick: () => j(e.id),
351
- className: t("flex w-full items-center gap-3 rounded-lg px-4 py-3 text-sm font-medium transition-colors", A === e.id ? "bg-action-primary-bg text-action-primary-text" : "bg-bg-surface text-text-primary hover:bg-accent"),
352
- children: [/* @__PURE__ */ E(e.Icon, { className: "h-4 w-4" }), e.label]
353
- }, e.id))
354
- })
355
- ]
356
- }), /* @__PURE__ */ E("div", {
357
- className: "lg:col-span-3",
358
- children: /* @__PURE__ */ D("div", {
359
- className: "rounded-lg border border-border-seam bg-bg-surface p-4 sm:p-6 lg:p-8",
360
- children: [
361
- A === "personal" && /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("h2", {
362
- className: "mb-6 text-lg font-semibold text-text-primary sm:text-xl",
363
- children: "Personal Information"
364
- }), /* @__PURE__ */ D("div", {
365
- className: "space-y-6",
366
- children: [
367
- /* @__PURE__ */ D("div", {
368
- className: "grid grid-cols-1 gap-4 sm:grid-cols-2 sm:gap-6",
369
- children: [
370
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
371
- className: "mb-1 block text-sm font-medium text-text-primary",
372
- children: "First Name"
373
- }), /* @__PURE__ */ E("input", {
374
- type: "text",
375
- value: z.firstName,
376
- onChange: (e) => Q("firstName", e.target.value),
377
- disabled: !M,
378
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
379
- })] }),
380
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
381
- className: "mb-1 block text-sm font-medium text-text-primary",
382
- children: "Last Name"
383
- }), /* @__PURE__ */ E("input", {
384
- type: "text",
385
- value: z.lastName,
386
- onChange: (e) => Q("lastName", e.target.value),
387
- disabled: !M,
388
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
389
- })] }),
390
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
391
- className: "mb-1 block text-sm font-medium text-text-primary",
392
- children: "Email Address"
393
- }), /* @__PURE__ */ D("div", {
394
- className: "relative",
395
- children: [/* @__PURE__ */ E(ae, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }), /* @__PURE__ */ E("input", {
396
- type: "email",
397
- value: z.email,
398
- onChange: (e) => Q("email", e.target.value),
399
- disabled: !M,
400
- className: "w-full rounded-lg border border-border-seam bg-bg-surface py-2 pl-10 pr-3 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
401
- })]
402
- })] }),
403
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
404
- className: "mb-1 block text-sm font-medium text-text-primary",
405
- children: "Phone Number"
406
- }), /* @__PURE__ */ D("div", {
407
- className: "relative",
408
- children: [/* @__PURE__ */ E(v, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }), /* @__PURE__ */ E("input", {
409
- type: "tel",
410
- value: z.phone,
411
- onChange: (e) => Q("phone", e.target.value),
412
- disabled: !M,
413
- className: "w-full rounded-lg border border-border-seam bg-bg-surface py-2 pl-10 pr-3 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
414
- })]
415
- })] })
416
- ]
417
- }),
418
- /* @__PURE__ */ D("div", {
419
- className: "border-t border-border-seam pt-6",
420
- children: [/* @__PURE__ */ E("h3", {
421
- className: "mb-4 text-sm font-semibold text-text-primary sm:text-base",
422
- children: "Professional Details"
423
- }), /* @__PURE__ */ D("div", {
424
- className: "grid grid-cols-1 gap-4 sm:grid-cols-2 sm:gap-6",
425
- children: [
426
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
427
- className: "mb-1 block text-sm font-medium text-text-primary",
428
- children: "Company/Organization"
429
- }), /* @__PURE__ */ D("div", {
430
- className: "relative",
431
- children: [/* @__PURE__ */ E(ne, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }), /* @__PURE__ */ E("input", {
432
- type: "text",
433
- value: z.companyName,
434
- onChange: (e) => Q("companyName", e.target.value),
435
- disabled: !M,
436
- className: "w-full rounded-lg border border-border-seam bg-bg-surface py-2 pl-10 pr-3 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
437
- })]
438
- })] }),
439
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
440
- className: "mb-1 block text-sm font-medium text-text-primary",
441
- children: "Designation"
442
- }), /* @__PURE__ */ E("input", {
443
- type: "text",
444
- value: z.designation,
445
- onChange: (e) => Q("designation", e.target.value),
446
- disabled: !M,
447
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
448
- })] }),
449
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
450
- className: "mb-1 block text-sm font-medium text-text-primary",
451
- children: "Company Website"
452
- }), /* @__PURE__ */ D("div", {
453
- className: "relative",
454
- children: [/* @__PURE__ */ E(_, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }), /* @__PURE__ */ E("input", {
455
- type: "text",
456
- value: z.companyWebsite,
457
- onChange: (e) => Q("companyWebsite", e.target.value),
458
- disabled: !M,
459
- className: "w-full rounded-lg border border-border-seam bg-bg-surface py-2 pl-10 pr-3 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
460
- })]
461
- })] }),
462
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
463
- className: "mb-1 block text-sm font-medium text-text-primary",
464
- children: "LinkedIn Profile"
465
- }), /* @__PURE__ */ D("div", {
466
- className: "relative",
467
- children: [/* @__PURE__ */ E(re, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }), /* @__PURE__ */ E("input", {
468
- type: "text",
469
- value: z.linkedinProfile,
470
- onChange: (e) => Q("linkedinProfile", e.target.value),
471
- disabled: !M,
472
- className: "w-full rounded-lg border border-border-seam bg-bg-surface py-2 pl-10 pr-3 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
473
- })]
474
- })] })
475
- ]
476
- })]
477
- }),
478
- /* @__PURE__ */ D("div", {
479
- className: "border-t border-border-seam pt-6",
480
- children: [/* @__PURE__ */ E("h3", {
481
- className: "mb-4 text-sm font-semibold text-text-primary sm:text-base",
482
- children: "Address"
483
- }), /* @__PURE__ */ D("div", {
484
- className: "space-y-4",
485
- children: [/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
486
- className: "mb-1 block text-sm font-medium text-text-primary",
487
- children: "Street Address"
488
- }), /* @__PURE__ */ E("textarea", {
489
- rows: 2,
490
- value: z.address,
491
- onChange: (e) => Q("address", e.target.value),
492
- disabled: !M,
493
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
494
- })] }), /* @__PURE__ */ D("div", {
495
- className: "grid grid-cols-1 gap-4 sm:grid-cols-2 sm:gap-6",
496
- children: [
497
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
498
- className: "mb-1 block text-sm font-medium text-text-primary",
499
- children: "City"
500
- }), /* @__PURE__ */ E("input", {
501
- type: "text",
502
- value: z.city,
503
- onChange: (e) => Q("city", e.target.value),
504
- disabled: !M,
505
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
506
- })] }),
507
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
508
- className: "mb-1 block text-sm font-medium text-text-primary",
509
- children: "State"
510
- }), /* @__PURE__ */ E("input", {
511
- type: "text",
512
- value: z.state,
513
- onChange: (e) => Q("state", e.target.value),
514
- disabled: !M,
515
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
516
- })] }),
517
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
518
- className: "mb-1 block text-sm font-medium text-text-primary",
519
- children: "Country"
520
- }), /* @__PURE__ */ E("input", {
521
- type: "text",
522
- value: z.country,
523
- onChange: (e) => Q("country", e.target.value),
524
- disabled: !M,
525
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
526
- })] }),
527
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
528
- className: "mb-1 block text-sm font-medium text-text-primary",
529
- children: "Pincode"
530
- }), /* @__PURE__ */ E("input", {
531
- type: "text",
532
- value: z.pincode,
533
- onChange: (e) => Q("pincode", e.target.value),
534
- disabled: !M,
535
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
536
- })] })
537
- ]
538
- })]
539
- })]
540
- })
541
- ]
542
- })] }),
543
- A === "investment" && /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("h2", {
544
- className: "mb-6 text-lg font-semibold text-text-primary sm:text-xl",
545
- children: "Investment Profile"
546
- }), /* @__PURE__ */ D("div", {
547
- className: "space-y-6",
548
- children: [
549
- /* @__PURE__ */ D("div", {
550
- className: "grid grid-cols-1 gap-4 sm:grid-cols-2 sm:gap-6",
551
- children: [
552
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
553
- className: "mb-1 block text-sm font-medium text-text-primary",
554
- children: "Investor Type"
555
- }), /* @__PURE__ */ D("select", {
556
- value: z.investorType,
557
- onChange: (e) => Q("investorType", e.target.value),
558
- disabled: !M,
559
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
560
- children: [
561
- /* @__PURE__ */ E("option", { children: "Angel Investor" }),
562
- /* @__PURE__ */ E("option", { children: "Venture Capitalist" }),
563
- /* @__PURE__ */ E("option", { children: "Private Equity" }),
564
- /* @__PURE__ */ E("option", { children: "Strategic Investor" })
565
- ]
566
- })] }),
567
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
568
- className: "mb-1 block text-sm font-medium text-text-primary",
569
- children: "Investment Range"
570
- }), /* @__PURE__ */ D("select", {
571
- value: z.investmentRange,
572
- onChange: (e) => Q("investmentRange", e.target.value),
573
- disabled: !M,
574
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
575
- children: [
576
- /* @__PURE__ */ E("option", { children: "1L - 5L" }),
577
- /* @__PURE__ */ E("option", { children: "5L - 25L" }),
578
- /* @__PURE__ */ E("option", { children: "25L - 1Cr" }),
579
- /* @__PURE__ */ E("option", { children: "1Cr+" })
580
- ]
581
- })] }),
582
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
583
- className: "mb-1 block text-sm font-medium text-text-primary",
584
- children: "Investment Horizon"
585
- }), /* @__PURE__ */ D("select", {
586
- value: z.investmentHorizon,
587
- onChange: (e) => Q("investmentHorizon", e.target.value),
588
- disabled: !M,
589
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
590
- children: [
591
- /* @__PURE__ */ E("option", { children: "1-2 years" }),
592
- /* @__PURE__ */ E("option", { children: "3-5 years" }),
593
- /* @__PURE__ */ E("option", { children: "5-7 years" }),
594
- /* @__PURE__ */ E("option", { children: "7+ years" })
595
- ]
596
- })] }),
597
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
598
- className: "mb-1 block text-sm font-medium text-text-primary",
599
- children: "Risk Profile"
600
- }), /* @__PURE__ */ D("select", {
601
- value: z.riskProfile,
602
- onChange: (e) => Q("riskProfile", e.target.value),
603
- disabled: !M,
604
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary disabled:bg-bg-sunken disabled:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]",
605
- children: [
606
- /* @__PURE__ */ E("option", { children: "Conservative" }),
607
- /* @__PURE__ */ E("option", { children: "Moderate" }),
608
- /* @__PURE__ */ E("option", { children: "Aggressive" })
609
- ]
610
- })] })
611
- ]
612
- }),
613
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
614
- className: "mb-3 block text-sm font-medium text-text-primary",
615
- children: "Preferred Sectors"
616
- }), /* @__PURE__ */ E("div", {
617
- className: "grid grid-cols-2 gap-3 sm:grid-cols-3",
618
- children: pe.map((e) => /* @__PURE__ */ D("label", {
619
- className: "flex items-center gap-2",
620
- children: [/* @__PURE__ */ E("input", {
621
- type: "checkbox",
622
- checked: z.preferredSectors.includes(e),
623
- onChange: (t) => {
624
- t.target.checked ? Q("preferredSectors", [...z.preferredSectors, e]) : Q("preferredSectors", z.preferredSectors.filter((t) => t !== e));
625
- },
626
- disabled: !M,
627
- className: "h-4 w-4 rounded border-border-seam text-primary focus:ring-[var(--color-focus-ring)]"
628
- }), /* @__PURE__ */ E("span", {
629
- className: "text-sm text-text-primary",
630
- children: e
631
- })]
632
- }, e))
633
- })] }),
634
- /* @__PURE__ */ D("div", {
635
- className: "rounded-lg border border-border-seam p-4",
636
- children: [/* @__PURE__ */ D("div", {
637
- className: "mb-2 flex items-center justify-between",
638
- children: [/* @__PURE__ */ E("p", {
639
- className: "text-sm font-medium text-text-primary",
640
- children: "Risk Tolerance"
641
- }), /* @__PURE__ */ E("span", {
642
- className: t("text-sm font-semibold", z.riskProfile === "Conservative" ? "text-status-success-text" : z.riskProfile === "Moderate" ? "text-status-warning-text" : "text-status-error-text"),
643
- children: z.riskProfile
644
- })]
645
- }), /* @__PURE__ */ E("div", {
646
- className: "flex gap-1",
647
- children: [
648
- "Conservative",
649
- "Moderate",
650
- "Aggressive"
651
- ].map((e) => /* @__PURE__ */ E("div", { className: t("h-2.5 flex-1 rounded-full", e === "Conservative" && "bg-status-success-bg/30", e === "Moderate" && "bg-status-warning-bg/30", e === "Aggressive" && "bg-status-error-bg/30", e === z.riskProfile && e === "Conservative" && "bg-status-success-text", e === z.riskProfile && e === "Moderate" && "bg-status-warning-text", e === z.riskProfile && e === "Aggressive" && "bg-status-error-text") }, e))
652
- })]
653
- })
654
- ]
655
- })] }),
656
- A === "portfolio" && /* @__PURE__ */ D("div", { children: [
657
- /* @__PURE__ */ E("h2", {
658
- className: "mb-6 text-lg font-semibold text-text-primary sm:text-xl",
659
- children: "Investment Portfolio"
660
- }),
661
- /* @__PURE__ */ D("div", {
662
- className: "mb-8 grid grid-cols-2 gap-4 sm:grid-cols-4 sm:gap-6",
663
- children: [
664
- /* @__PURE__ */ D("div", {
665
- className: "rounded-lg bg-bg-sunken/50 p-4",
666
- children: [
667
- /* @__PURE__ */ E(f, { className: "mb-2 h-7 w-7 text-primary sm:h-8 sm:w-8" }),
668
- /* @__PURE__ */ E("div", {
669
- className: "text-lg font-bold text-text-primary sm:text-2xl",
670
- children: i(z.totalInvested ?? 0, {
671
- minimumFractionDigits: 0,
672
- notation: "compact"
673
- })
674
- }),
675
- /* @__PURE__ */ E("div", {
676
- className: "text-xs text-text-secondary sm:text-sm",
677
- children: "Total Invested"
678
- })
679
- ]
680
- }),
681
- /* @__PURE__ */ D("div", {
682
- className: "rounded-lg bg-bg-sunken/50 p-4",
683
- children: [
684
- /* @__PURE__ */ E(l, { className: "mb-2 h-7 w-7 text-status-info-text sm:h-8 sm:w-8" }),
685
- /* @__PURE__ */ E("div", {
686
- className: "text-lg font-bold text-text-primary sm:text-2xl",
687
- children: z.activeInvestments
688
- }),
689
- /* @__PURE__ */ E("div", {
690
- className: "text-xs text-text-secondary sm:text-sm",
691
- children: "Active Investments"
692
- })
693
- ]
694
- }),
695
- /* @__PURE__ */ D("div", {
696
- className: "rounded-lg bg-bg-sunken/50 p-4",
697
- children: [
698
- /* @__PURE__ */ E(C, { className: "mb-2 h-7 w-7 text-status-success-text sm:h-8 sm:w-8" }),
699
- /* @__PURE__ */ E("div", {
700
- className: "text-lg font-bold text-text-primary sm:text-2xl",
701
- children: i(z.totalReturns ?? 0, {
702
- minimumFractionDigits: 0,
703
- notation: "compact"
704
- })
705
- }),
706
- /* @__PURE__ */ E("div", {
707
- className: "text-xs text-text-secondary sm:text-sm",
708
- children: "Total Returns"
709
- })
710
- ]
711
- }),
712
- /* @__PURE__ */ D("div", {
713
- className: "rounded-lg bg-bg-sunken/50 p-4",
714
- children: [
715
- /* @__PURE__ */ E(y, { className: "mb-2 h-7 w-7 text-accent-purple sm:h-8 sm:w-8" }),
716
- /* @__PURE__ */ E("div", {
717
- className: "text-lg font-bold text-text-primary sm:text-2xl",
718
- children: i(z.portfolioValue ?? 0, {
719
- minimumFractionDigits: 0,
720
- notation: "compact"
721
- })
722
- }),
723
- /* @__PURE__ */ E("div", {
724
- className: "text-xs text-text-secondary sm:text-sm",
725
- children: "Portfolio Value"
726
- })
727
- ]
728
- })
729
- ]
730
- }),
731
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("h3", {
732
- className: "mb-4 text-base font-semibold text-text-primary",
733
- children: "Active Investments"
734
- }), /* @__PURE__ */ E("div", {
735
- className: "space-y-3",
736
- children: te.map((e, n) => /* @__PURE__ */ D("div", {
737
- className: "rounded-lg border border-border-seam bg-bg-sunken/30 p-4",
738
- children: [/* @__PURE__ */ D("div", {
739
- className: "mb-3 flex items-start justify-between",
740
- children: [/* @__PURE__ */ E("h4", {
741
- className: "text-sm font-medium text-text-primary sm:text-base",
742
- children: e.cartName
743
- }), /* @__PURE__ */ D("span", {
744
- className: t("text-sm font-semibold", e.returns > 0 ? "text-status-success-text" : "text-status-error-text"),
745
- children: [
746
- e.returns > 0 ? "+" : "",
747
- e.returns,
748
- "%"
749
- ]
750
- })]
751
- }), /* @__PURE__ */ D("div", {
752
- className: "grid grid-cols-1 gap-3 text-sm sm:grid-cols-3",
753
- children: [
754
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("span", {
755
- className: "text-text-secondary",
756
- children: "Invested: "
757
- }), /* @__PURE__ */ E("span", {
758
- className: "font-medium text-text-primary",
759
- children: i(e.investedAmount, { minimumFractionDigits: 0 })
760
- })] }),
761
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("span", {
762
- className: "text-text-secondary",
763
- children: "Current Value: "
764
- }), /* @__PURE__ */ E("span", {
765
- className: "font-medium text-text-primary",
766
- children: i(e.currentValue, { minimumFractionDigits: 0 })
767
- })] }),
768
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("span", {
769
- className: "text-text-secondary",
770
- children: "Returns: "
771
- }), /* @__PURE__ */ E("span", {
772
- className: "font-medium text-status-success-text",
773
- children: i(e.currentValue - e.investedAmount, { minimumFractionDigits: 0 })
774
- })] })
775
- ]
776
- })]
777
- }, n))
778
- })] })
779
- ] }),
780
- A === "documents" && /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("h2", {
781
- className: "mb-6 text-lg font-semibold text-text-primary sm:text-xl",
782
- children: "Documents & KYC"
783
- }), /* @__PURE__ */ D("div", {
784
- className: "space-y-6",
785
- children: [
786
- /* @__PURE__ */ D("div", {
787
- className: "flex items-center gap-2 rounded-lg bg-status-success-bg/10 px-4 py-3",
788
- children: [/* @__PURE__ */ E(d, { className: "h-5 w-5 text-status-success-text" }), /* @__PURE__ */ E("p", {
789
- className: "text-sm font-medium text-status-success-text",
790
- children: "Your KYC is complete and verified"
791
- })]
792
- }),
793
- /* @__PURE__ */ E("div", {
794
- className: "grid grid-cols-1 gap-4 sm:grid-cols-2 sm:gap-6",
795
- children: de.map((e) => /* @__PURE__ */ D("div", {
796
- className: "rounded-lg border border-border-seam bg-bg-surface p-4 sm:p-6",
797
- children: [
798
- /* @__PURE__ */ E(g, { className: "mb-3 h-8 w-8 text-primary" }),
799
- /* @__PURE__ */ E("h3", {
800
- className: "text-base font-semibold text-text-primary",
801
- children: e.name
802
- }),
803
- /* @__PURE__ */ E("p", {
804
- className: "mt-1 text-sm text-text-secondary",
805
- children: e.status === "verified" ? `Verified on ${e.verifiedOn}` : e.status === "uploaded" ? `Uploaded on ${e.verifiedOn}` : "Template available"
806
- }),
807
- /* @__PURE__ */ D("div", {
808
- className: "mt-3 flex items-center gap-2",
809
- children: [
810
- e.status === "verified" && /* @__PURE__ */ D("span", {
811
- className: "flex items-center gap-1 rounded-full bg-status-success-bg/20 px-2 py-0.5 text-xs font-medium text-status-success-text",
812
- children: [/* @__PURE__ */ E(d, { className: "h-3 w-3" }), "Verified"]
813
- }),
814
- e.status === "uploaded" && /* @__PURE__ */ D("span", {
815
- className: "flex items-center gap-1 rounded-full bg-status-info-bg/20 px-2 py-0.5 text-xs font-medium text-status-info-text",
816
- children: [/* @__PURE__ */ E(g, { className: "h-3 w-3" }), "Uploaded"]
817
- }),
818
- /* @__PURE__ */ E("button", {
819
- type: "button",
820
- onClick: () => alert(e.status === "template" ? `Downloading ${e.name} template...` : `Viewing ${e.name}...`),
821
- className: "rounded-lg border border-border-seam px-3 py-1.5 text-xs font-medium text-text-primary hover:bg-accent transition-colors",
822
- children: e.status === "template" ? "Download Template" : "View Document"
823
- })
824
- ]
825
- })
826
- ]
827
- }, e.name))
828
- }),
829
- M && /* @__PURE__ */ D("div", {
830
- className: "rounded-lg border-2 border-dashed border-border-seam p-6 text-center",
831
- children: [
832
- /* @__PURE__ */ E(g, { className: "mx-auto mb-2 h-8 w-8 text-text-secondary" }),
833
- /* @__PURE__ */ E("p", {
834
- className: "text-sm font-medium text-text-primary",
835
- children: "Upload New Document"
836
- }),
837
- /* @__PURE__ */ E("p", {
838
- className: "mt-1 text-xs text-text-secondary",
839
- children: "PDF, JPG, or PNG up to 10MB"
840
- }),
841
- /* @__PURE__ */ D("label", {
842
- className: "mt-3 inline-block cursor-pointer 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",
843
- children: ["Choose File", /* @__PURE__ */ E("input", {
844
- type: "file",
845
- accept: ".pdf,.jpg,.png",
846
- className: "hidden"
847
- })]
848
- })
849
- ]
850
- })
851
- ]
852
- })] }),
853
- A === "security" && /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("h2", {
854
- className: "mb-6 text-lg font-semibold text-text-primary sm:text-xl",
855
- children: "Security Settings"
856
- }), /* @__PURE__ */ D("div", {
857
- className: "space-y-6",
858
- children: [
859
- /* @__PURE__ */ D("div", {
860
- className: "rounded-lg border border-border-seam p-4 sm:p-6",
861
- children: [
862
- /* @__PURE__ */ D("div", {
863
- className: "flex items-center gap-3 mb-3",
864
- children: [/* @__PURE__ */ E(ie, { className: "h-5 w-5 text-text-secondary" }), /* @__PURE__ */ E("h3", {
865
- className: "text-base font-semibold text-text-primary",
866
- children: "Change Password"
867
- })]
868
- }),
869
- /* @__PURE__ */ E("p", {
870
- className: "mb-4 text-sm text-text-secondary",
871
- children: "Update your password regularly to keep your account secure"
872
- }),
873
- he ? /* @__PURE__ */ D("div", {
874
- className: "space-y-4",
875
- children: [
876
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
877
- className: "mb-1 block text-sm font-medium text-text-primary",
878
- children: "Current Password"
879
- }), /* @__PURE__ */ D("div", {
880
- className: "relative",
881
- children: [/* @__PURE__ */ E("input", {
882
- type: Y ? "text" : "password",
883
- value: U,
884
- onChange: (e) => W(e.target.value),
885
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 pr-10 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
886
- }), /* @__PURE__ */ E("button", {
887
- type: "button",
888
- onClick: () => ge(!Y),
889
- className: "absolute right-3 top-1/2 -translate-y-1/2 text-text-secondary hover:text-text-primary",
890
- children: E(Y ? h : m, { className: "h-4 w-4" })
891
- })]
892
- })] }),
893
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
894
- className: "mb-1 block text-sm font-medium text-text-primary",
895
- children: "New Password"
896
- }), /* @__PURE__ */ D("div", {
897
- className: "relative",
898
- children: [/* @__PURE__ */ E("input", {
899
- type: X ? "text" : "password",
900
- value: G,
901
- onChange: (e) => K(e.target.value),
902
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 pr-10 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
903
- }), /* @__PURE__ */ E("button", {
904
- type: "button",
905
- onClick: () => _e(!X),
906
- className: "absolute right-3 top-1/2 -translate-y-1/2 text-text-secondary hover:text-text-primary",
907
- children: E(X ? h : m, { className: "h-4 w-4" })
908
- })]
909
- })] }),
910
- /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("label", {
911
- className: "mb-1 block text-sm font-medium text-text-primary",
912
- children: "Confirm New Password"
913
- }), /* @__PURE__ */ E("input", {
914
- type: "password",
915
- value: q,
916
- onChange: (e) => J(e.target.value),
917
- className: "w-full rounded-lg border border-border-seam bg-bg-surface px-3 py-2 text-sm text-text-primary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
918
- })] }),
919
- /* @__PURE__ */ D("div", {
920
- className: "flex gap-3",
921
- children: [/* @__PURE__ */ E("button", {
922
- type: "button",
923
- onClick: xe,
924
- className: "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",
925
- children: "Update Password"
926
- }), /* @__PURE__ */ E("button", {
927
- type: "button",
928
- onClick: () => {
929
- H(!1), W(""), K(""), J("");
930
- },
931
- className: "rounded-lg border border-border-seam px-4 py-2 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
932
- children: "Cancel"
933
- })]
934
- })
935
- ]
936
- }) : /* @__PURE__ */ E("button", {
937
- type: "button",
938
- onClick: () => H(!0),
939
- className: "rounded-lg border border-border-seam px-4 py-2 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
940
- children: "Change Password"
941
- })
942
- ]
943
- }),
944
- /* @__PURE__ */ D("div", {
945
- className: "rounded-lg border border-border-seam p-4 sm:p-6",
946
- children: [
947
- /* @__PURE__ */ D("div", {
948
- className: "flex items-center gap-3 mb-3",
949
- children: [/* @__PURE__ */ E(S, { className: "h-5 w-5 text-text-secondary" }), /* @__PURE__ */ E("h3", {
950
- className: "text-base font-semibold text-text-primary",
951
- children: "Two-Factor Authentication"
952
- })]
953
- }),
954
- /* @__PURE__ */ E("p", {
955
- className: "mb-4 text-sm text-text-secondary",
956
- children: "Add an extra layer of security to your investment account"
957
- }),
958
- /* @__PURE__ */ D("div", {
959
- className: "flex items-center justify-between rounded-lg bg-bg-sunken/50 p-3",
960
- children: [/* @__PURE__ */ E("div", {
961
- className: "flex items-center gap-2",
962
- children: /* @__PURE__ */ E("span", {
963
- className: t("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium", Z ? "bg-status-success-bg/20 text-status-success-text" : "bg-bg-sunken text-text-secondary"),
964
- children: Z ? "Enabled" : "Disabled"
965
- })
966
- }), /* @__PURE__ */ E("button", {
967
- type: "button",
968
- onClick: Se,
969
- className: t("rounded-lg px-4 py-2 text-sm font-medium transition-colors", Z ? "border border-border-seam text-text-primary hover:bg-accent" : "bg-action-primary-bg text-action-primary-text hover:bg-action-primary-bg/90"),
970
- children: Z ? "Disable 2FA" : "Enable 2FA"
971
- })]
972
- })
973
- ]
974
- }),
975
- /* @__PURE__ */ D("div", {
976
- className: "rounded-lg border border-border-seam p-4 sm:p-6",
977
- children: [/* @__PURE__ */ D("div", {
978
- className: "flex items-center gap-3 mb-4",
979
- children: [/* @__PURE__ */ E(se, { className: "h-5 w-5 text-text-secondary" }), /* @__PURE__ */ E("h3", {
980
- className: "text-base font-semibold text-text-primary",
981
- children: "Login Activity"
982
- })]
983
- }), /* @__PURE__ */ E("div", {
984
- className: "space-y-3",
985
- children: fe.map((e, t) => /* @__PURE__ */ D("div", {
986
- className: "flex items-center justify-between rounded-lg bg-bg-sunken/30 p-3",
987
- children: [/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ D("div", {
988
- className: "flex items-center gap-2",
989
- children: [/* @__PURE__ */ E("p", {
990
- className: "text-sm font-medium text-text-primary",
991
- children: e.device
992
- }), e.current && /* @__PURE__ */ E("span", {
993
- className: "rounded-full bg-status-success-bg/20 px-2 py-0.5 text-xs font-medium text-status-success-text",
994
- children: "Current"
995
- })]
996
- }), /* @__PURE__ */ D("div", {
997
- className: "mt-1 flex items-center gap-2 text-xs text-text-secondary",
998
- children: [
999
- /* @__PURE__ */ E(oe, { className: "h-3 w-3" }),
1000
- /* @__PURE__ */ E("span", { children: e.location }),
1001
- /* @__PURE__ */ E("span", { children: "•" }),
1002
- /* @__PURE__ */ E("span", { children: ee(e.date, {
1003
- hour: "numeric",
1004
- minute: "2-digit"
1005
- }) })
1006
- ]
1007
- })] }), !e.current && /* @__PURE__ */ E("button", {
1008
- type: "button",
1009
- onClick: () => alert("Session revoked"),
1010
- className: "rounded-lg border border-border-seam px-3 py-1.5 text-xs font-medium text-text-primary hover:bg-accent transition-colors",
1011
- children: "Revoke"
1012
- })]
1013
- }, t))
1014
- })]
1015
- })
1016
- ]
1017
- })] }),
1018
- A === "notifications" && /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("h2", {
1019
- className: "mb-6 text-lg font-semibold text-text-primary sm:text-xl",
1020
- children: "Notification Preferences"
1021
- }), /* @__PURE__ */ D("div", {
1022
- className: "space-y-4",
1023
- children: [V.map((e) => /* @__PURE__ */ D("div", {
1024
- className: "flex items-center justify-between rounded-lg border border-border-seam bg-bg-sunken/30 p-4",
1025
- children: [/* @__PURE__ */ D("div", {
1026
- className: "flex-1 pr-4",
1027
- children: [/* @__PURE__ */ E("h4", {
1028
- className: "text-sm font-medium text-text-primary",
1029
- children: e.label
1030
- }), /* @__PURE__ */ E("p", {
1031
- className: "mt-0.5 text-xs text-text-secondary sm:text-sm",
1032
- children: e.description
1033
- })]
1034
- }), /* @__PURE__ */ E("button", {
1035
- type: "button",
1036
- onClick: () => {
1037
- M && be(e.id);
1038
- },
1039
- disabled: !M,
1040
- className: t("relative inline-flex h-6 w-11 shrink-0 cursor-pointer rounded-full transition-colors duration-200", e.enabled ? "bg-action-primary-bg" : "bg-bg-sunken", !M && "cursor-not-allowed opacity-60"),
1041
- children: /* @__PURE__ */ E("span", { className: t("pointer-events-none inline-block h-5 w-5 translate-y-0.5 rounded-full bg-bg-surface shadow ring-0 transition-transform duration-200", e.enabled ? "translate-x-5" : "translate-x-0.5") })
1042
- })]
1043
- }, e.id)), /* @__PURE__ */ E("div", {
1044
- className: "mt-4 rounded-lg border border-border-seam bg-bg-sunken/50 p-4",
1045
- children: /* @__PURE__ */ D("p", {
1046
- className: "text-sm text-text-secondary",
1047
- children: [
1048
- V.filter((e) => e.enabled).length,
1049
- " of ",
1050
- V.length,
1051
- " ",
1052
- "notification types enabled.",
1053
- !M && /* @__PURE__ */ E("span", {
1054
- className: "ml-1",
1055
- children: "Click \"Edit Profile\" to modify preferences."
1056
- })
1057
- ]
1058
- })
1059
- })]
1060
- })] })
1061
- ]
1062
- })
1063
- })]
1064
- })]
1065
- });
1066
- }
1067
- //#endregion
1068
- export { k as InvestorProfilePage };
1069
-
1070
- //# sourceMappingURL=InvestorProfilePage.js.map