@burdenoff/microfe-subscriberbot 2026.626.1 → 2026.628.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.
- package/dist/index.js +4 -4
- package/dist/subscriberbot/SubscriberBotRoot.js +61 -133
- package/dist/subscriberbot/SubscriberBotRoot.js.map +1 -1
- package/dist/subscriberbot/SubscriberBotRoutes.js +56 -187
- package/dist/subscriberbot/SubscriberBotRoutes.js.map +1 -1
- package/dist/subscriberbot/components/StateViews.js +49 -0
- package/dist/subscriberbot/components/StateViews.js.map +1 -0
- package/dist/subscriberbot/components/StatusBadge.js +45 -47
- package/dist/subscriberbot/components/StatusBadge.js.map +1 -1
- package/dist/subscriberbot/context/SubscriberBotContext.js +22 -30
- package/dist/subscriberbot/context/SubscriberBotContext.js.map +1 -1
- package/dist/subscriberbot/hooks/useSubscriberBotApi.js +342 -195
- package/dist/subscriberbot/hooks/useSubscriberBotApi.js.map +1 -1
- package/dist/subscriberbot/index.js +1 -1
- package/dist/subscriberbot/pages/DashboardPage.js +269 -0
- package/dist/subscriberbot/pages/DashboardPage.js.map +1 -0
- package/dist/subscriberbot/pages/InboxPage.js +186 -0
- package/dist/subscriberbot/pages/InboxPage.js.map +1 -0
- package/dist/subscriberbot/pages/InvoicesPage.js +211 -0
- package/dist/subscriberbot/pages/InvoicesPage.js.map +1 -0
- package/dist/subscriberbot/pages/WorkflowsPage.js +236 -0
- package/dist/subscriberbot/pages/WorkflowsPage.js.map +1 -0
- package/dist/subscriberbot/pages/agents/AgentDetailPage.js +160 -0
- package/dist/subscriberbot/pages/agents/AgentDetailPage.js.map +1 -0
- package/dist/subscriberbot/pages/agents/AgentNewPage.js +140 -0
- package/dist/subscriberbot/pages/agents/AgentNewPage.js.map +1 -0
- package/dist/subscriberbot/pages/agents/AgentsListPage.js +178 -0
- package/dist/subscriberbot/pages/agents/AgentsListPage.js.map +1 -0
- package/dist/subscriberbot/pages/providers/ProviderDetailPage.js +179 -0
- package/dist/subscriberbot/pages/providers/ProviderDetailPage.js.map +1 -0
- package/dist/subscriberbot/pages/providers/ProviderNewPage.js +185 -0
- package/dist/subscriberbot/pages/providers/ProviderNewPage.js.map +1 -0
- package/dist/subscriberbot/pages/providers/ProvidersListPage.js +254 -0
- package/dist/subscriberbot/pages/providers/ProvidersListPage.js.map +1 -0
- package/dist/subscriberbot/pages/relationships/RelationshipDetailPage.js +306 -0
- package/dist/subscriberbot/pages/relationships/RelationshipDetailPage.js.map +1 -0
- package/dist/subscriberbot/pages/relationships/RelationshipNewPage.js +253 -0
- package/dist/subscriberbot/pages/relationships/RelationshipNewPage.js.map +1 -0
- package/dist/subscriberbot/pages/relationships/RelationshipsListPage.js +248 -0
- package/dist/subscriberbot/pages/relationships/RelationshipsListPage.js.map +1 -0
- package/dist/subscriberbot/utils/formatters.js +50 -32
- package/dist/subscriberbot/utils/formatters.js.map +1 -1
- package/package.json +1 -1
- package/dist/subscriberbot/components/InvestmentCard.js +0 -97
- package/dist/subscriberbot/components/InvestmentCard.js.map +0 -1
- package/dist/subscriberbot/components/RatingDisplay.js +0 -35
- package/dist/subscriberbot/components/RatingDisplay.js.map +0 -1
- package/dist/subscriberbot/mocks/data.js +0 -1517
- package/dist/subscriberbot/mocks/data.js.map +0 -1
- package/dist/subscriberbot/mocks/users.js +0 -34
- package/dist/subscriberbot/mocks/users.js.map +0 -1
- package/dist/subscriberbot/pages/HomePage.js +0 -930
- package/dist/subscriberbot/pages/HomePage.js.map +0 -1
- package/dist/subscriberbot/pages/admin/AdminAnalyticsPage.js +0 -651
- package/dist/subscriberbot/pages/admin/AdminAnalyticsPage.js.map +0 -1
- package/dist/subscriberbot/pages/admin/AdminDashboard.js +0 -679
- package/dist/subscriberbot/pages/admin/AdminDashboard.js.map +0 -1
- package/dist/subscriberbot/pages/admin/AdminFinancialPage.js +0 -427
- package/dist/subscriberbot/pages/admin/AdminFinancialPage.js.map +0 -1
- package/dist/subscriberbot/pages/admin/AdminOrdersPage.js +0 -665
- package/dist/subscriberbot/pages/admin/AdminOrdersPage.js.map +0 -1
- package/dist/subscriberbot/pages/admin/AdminProfilePage.js +0 -261
- package/dist/subscriberbot/pages/admin/AdminProfilePage.js.map +0 -1
- package/dist/subscriberbot/pages/admin/AdminSettingsPage.js +0 -654
- package/dist/subscriberbot/pages/admin/AdminSettingsPage.js.map +0 -1
- package/dist/subscriberbot/pages/admin/CartManagementPage.js +0 -874
- package/dist/subscriberbot/pages/admin/CartManagementPage.js.map +0 -1
- package/dist/subscriberbot/pages/admin/UserManagementPage.js +0 -898
- package/dist/subscriberbot/pages/admin/UserManagementPage.js.map +0 -1
- package/dist/subscriberbot/pages/cart-owner/AnalyticsDashboard.js +0 -839
- package/dist/subscriberbot/pages/cart-owner/AnalyticsDashboard.js.map +0 -1
- package/dist/subscriberbot/pages/cart-owner/BusinessSettingsPage.js +0 -705
- package/dist/subscriberbot/pages/cart-owner/BusinessSettingsPage.js.map +0 -1
- package/dist/subscriberbot/pages/cart-owner/CartOwnerDashboard.js +0 -802
- package/dist/subscriberbot/pages/cart-owner/CartOwnerDashboard.js.map +0 -1
- package/dist/subscriberbot/pages/cart-owner/CartOwnerProfilePage.js +0 -891
- package/dist/subscriberbot/pages/cart-owner/CartOwnerProfilePage.js.map +0 -1
- package/dist/subscriberbot/pages/cart-owner/CartServiceConfigPage.js +0 -633
- package/dist/subscriberbot/pages/cart-owner/CartServiceConfigPage.js.map +0 -1
- package/dist/subscriberbot/pages/cart-owner/InventoryManagementPage.js +0 -910
- package/dist/subscriberbot/pages/cart-owner/InventoryManagementPage.js.map +0 -1
- package/dist/subscriberbot/pages/cart-owner/OrderManagementPage.js +0 -879
- package/dist/subscriberbot/pages/cart-owner/OrderManagementPage.js.map +0 -1
- package/dist/subscriberbot/pages/cart-owner/StaffManagementPage.js +0 -838
- package/dist/subscriberbot/pages/cart-owner/StaffManagementPage.js.map +0 -1
- package/dist/subscriberbot/pages/common/HelpSupportPage.js +0 -1323
- package/dist/subscriberbot/pages/common/HelpSupportPage.js.map +0 -1
- package/dist/subscriberbot/pages/common/NotificationCenterPage.js +0 -672
- package/dist/subscriberbot/pages/common/NotificationCenterPage.js.map +0 -1
- package/dist/subscriberbot/pages/common/SettingsPage.js +0 -973
- package/dist/subscriberbot/pages/common/SettingsPage.js.map +0 -1
- package/dist/subscriberbot/pages/customer/BookingDetailsPage.js +0 -626
- package/dist/subscriberbot/pages/customer/BookingDetailsPage.js.map +0 -1
- package/dist/subscriberbot/pages/customer/CartDetailPage.js +0 -654
- package/dist/subscriberbot/pages/customer/CartDetailPage.js.map +0 -1
- package/dist/subscriberbot/pages/customer/CartDiscoveryPage.js +0 -555
- package/dist/subscriberbot/pages/customer/CartDiscoveryPage.js.map +0 -1
- package/dist/subscriberbot/pages/customer/CheckoutPage.js +0 -529
- package/dist/subscriberbot/pages/customer/CheckoutPage.js.map +0 -1
- package/dist/subscriberbot/pages/customer/CustomerDashboard.js +0 -532
- package/dist/subscriberbot/pages/customer/CustomerDashboard.js.map +0 -1
- package/dist/subscriberbot/pages/customer/CustomerProfilePage.js +0 -630
- package/dist/subscriberbot/pages/customer/CustomerProfilePage.js.map +0 -1
- package/dist/subscriberbot/pages/customer/DirectServiceBookingPage.js +0 -633
- package/dist/subscriberbot/pages/customer/DirectServiceBookingPage.js.map +0 -1
- package/dist/subscriberbot/pages/customer/FavoritesPage.js +0 -484
- package/dist/subscriberbot/pages/customer/FavoritesPage.js.map +0 -1
- package/dist/subscriberbot/pages/customer/OrderHistoryPage.js +0 -446
- package/dist/subscriberbot/pages/customer/OrderHistoryPage.js.map +0 -1
- package/dist/subscriberbot/pages/customer/OrderTrackingPage.js +0 -394
- package/dist/subscriberbot/pages/customer/OrderTrackingPage.js.map +0 -1
- package/dist/subscriberbot/pages/customer/PaymentMethodsPage.js +0 -495
- package/dist/subscriberbot/pages/customer/PaymentMethodsPage.js.map +0 -1
- package/dist/subscriberbot/pages/customer/ReviewsPage.js +0 -613
- package/dist/subscriberbot/pages/customer/ReviewsPage.js.map +0 -1
- package/dist/subscriberbot/pages/customer/SavedAddressesPage.js +0 -450
- package/dist/subscriberbot/pages/customer/SavedAddressesPage.js.map +0 -1
- package/dist/subscriberbot/pages/investor/InvestmentDetailsPage.js +0 -886
- package/dist/subscriberbot/pages/investor/InvestmentDetailsPage.js.map +0 -1
- package/dist/subscriberbot/pages/investor/InvestmentOpportunitiesPage.js +0 -947
- package/dist/subscriberbot/pages/investor/InvestmentOpportunitiesPage.js.map +0 -1
- package/dist/subscriberbot/pages/investor/InvestorAnalyticsPage.js +0 -687
- package/dist/subscriberbot/pages/investor/InvestorAnalyticsPage.js.map +0 -1
- package/dist/subscriberbot/pages/investor/InvestorDashboard.js +0 -451
- package/dist/subscriberbot/pages/investor/InvestorDashboard.js.map +0 -1
- package/dist/subscriberbot/pages/investor/InvestorInvestmentsPage.js +0 -406
- package/dist/subscriberbot/pages/investor/InvestorInvestmentsPage.js.map +0 -1
- package/dist/subscriberbot/pages/investor/InvestorPortfolioPage.js +0 -575
- package/dist/subscriberbot/pages/investor/InvestorPortfolioPage.js.map +0 -1
- package/dist/subscriberbot/pages/investor/InvestorProfilePage.js +0 -1070
- package/dist/subscriberbot/pages/investor/InvestorProfilePage.js.map +0 -1
- package/dist/subscriberbot/pages/worker/TaskDetailsPage.js +0 -535
- package/dist/subscriberbot/pages/worker/TaskDetailsPage.js.map +0 -1
- package/dist/subscriberbot/pages/worker/WorkerDashboard.js +0 -666
- package/dist/subscriberbot/pages/worker/WorkerDashboard.js.map +0 -1
- package/dist/subscriberbot/pages/worker/WorkerOrdersPage.js +0 -681
- package/dist/subscriberbot/pages/worker/WorkerOrdersPage.js.map +0 -1
- package/dist/subscriberbot/pages/worker/WorkerProfilePage.js +0 -692
- package/dist/subscriberbot/pages/worker/WorkerProfilePage.js.map +0 -1
- package/dist/subscriberbot/pages/worker/WorkerSchedulePage.js +0 -588
- package/dist/subscriberbot/pages/worker/WorkerSchedulePage.js.map +0 -1
|
@@ -1,886 +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 { EmptyState as r } from "../../components/EmptyState.js";
|
|
5
|
-
import { formatCurrency as i, formatDate as a } from "../../utils/formatters.js";
|
|
6
|
-
import { useEffect as o, useState as s } from "react";
|
|
7
|
-
import { Activity as c, AlertCircle as l, ArrowLeft as u, BarChart3 as d, Briefcase as f, Building2 as p, CheckCircle2 as m, Clock as h, Download as g, FileText as _, IndianRupee as v, Package as y, PieChart as b, Star as x, Target as S, TrendingUp as C, Users as w, X as T } from "lucide-react";
|
|
8
|
-
import { jsx as E, jsxs as D } from "react/jsx-runtime";
|
|
9
|
-
import { EmphasisPanel as O, NextSteps as k, PagePurpose as A } from "@burdenoff/fe-libs/ui";
|
|
10
|
-
//#region src/subscriberbot/pages/investor/InvestmentDetailsPage.tsx
|
|
11
|
-
var j = {
|
|
12
|
-
id: "INV-001",
|
|
13
|
-
cartName: "Dosa Express - Koramangala",
|
|
14
|
-
cartOwner: "Suresh Rao",
|
|
15
|
-
location: "Koramangala 6th Block, Bangalore",
|
|
16
|
-
businessType: "South Indian Cuisine",
|
|
17
|
-
establishedDate: "2022-06-15",
|
|
18
|
-
investmentAmount: 5e5,
|
|
19
|
-
investmentDate: "2023-03-10",
|
|
20
|
-
equityPercentage: 15,
|
|
21
|
-
valuationAtInvestment: 3333333,
|
|
22
|
-
currentValuation: 4333333,
|
|
23
|
-
investmentType: "Equity Investment",
|
|
24
|
-
monthlyRevenue: 28e4,
|
|
25
|
-
monthlyOrders: 1850,
|
|
26
|
-
averageOrderValue: 151,
|
|
27
|
-
customerRating: 4.6,
|
|
28
|
-
activeCustomers: 450,
|
|
29
|
-
revenueGrowth: 18.5,
|
|
30
|
-
profitMargin: 22,
|
|
31
|
-
returnOnInvestment: 30,
|
|
32
|
-
paybackPeriod: "2.5 years",
|
|
33
|
-
documents: [
|
|
34
|
-
{
|
|
35
|
-
type: "Investment Agreement",
|
|
36
|
-
name: "investment_agreement_dosa_express.pdf",
|
|
37
|
-
uploadDate: "2023-03-10",
|
|
38
|
-
status: "verified"
|
|
39
|
-
},
|
|
40
|
-
{
|
|
41
|
-
type: "Financial Statement",
|
|
42
|
-
name: "financial_statement_q4_2023.pdf",
|
|
43
|
-
uploadDate: "2024-01-05",
|
|
44
|
-
status: "verified"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
type: "Tax Returns",
|
|
48
|
-
name: "tax_returns_2023.pdf",
|
|
49
|
-
uploadDate: "2024-01-10",
|
|
50
|
-
status: "pending"
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
type: "Business License",
|
|
54
|
-
name: "fssai_license.pdf",
|
|
55
|
-
uploadDate: "2023-03-08",
|
|
56
|
-
status: "verified"
|
|
57
|
-
}
|
|
58
|
-
],
|
|
59
|
-
recentUpdates: [
|
|
60
|
-
{
|
|
61
|
-
date: "2024-01-12",
|
|
62
|
-
type: "Performance",
|
|
63
|
-
description: "Monthly revenue exceeded target by 15%"
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
date: "2024-01-08",
|
|
67
|
-
type: "Operations",
|
|
68
|
-
description: "Expanded menu with 5 new items"
|
|
69
|
-
},
|
|
70
|
-
{
|
|
71
|
-
date: "2024-01-01",
|
|
72
|
-
type: "Financial",
|
|
73
|
-
description: "Q4 2023 profit distribution completed"
|
|
74
|
-
},
|
|
75
|
-
{
|
|
76
|
-
date: "2023-12-20",
|
|
77
|
-
type: "Growth",
|
|
78
|
-
description: "Opened second location in BTM Layout"
|
|
79
|
-
}
|
|
80
|
-
]
|
|
81
|
-
};
|
|
82
|
-
function M(e) {
|
|
83
|
-
switch (e) {
|
|
84
|
-
case "verified": return {
|
|
85
|
-
color: "text-status-success-text",
|
|
86
|
-
Icon: m,
|
|
87
|
-
label: "Verified"
|
|
88
|
-
};
|
|
89
|
-
case "pending": return {
|
|
90
|
-
color: "text-status-warning-text",
|
|
91
|
-
Icon: h,
|
|
92
|
-
label: "Pending"
|
|
93
|
-
};
|
|
94
|
-
case "rejected": return {
|
|
95
|
-
color: "text-status-error-text",
|
|
96
|
-
Icon: l,
|
|
97
|
-
label: "Rejected"
|
|
98
|
-
};
|
|
99
|
-
default: return {
|
|
100
|
-
color: "text-text-secondary",
|
|
101
|
-
Icon: l,
|
|
102
|
-
label: e
|
|
103
|
-
};
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
function N() {
|
|
107
|
-
let { navigateTo: l } = e(), [m, h] = s("overview"), [N, P] = s(!0), [F, I] = s(!1), [L, R] = s(null);
|
|
108
|
-
o(() => {
|
|
109
|
-
let e = setTimeout(() => {
|
|
110
|
-
R(j), P(!1);
|
|
111
|
-
}, 600);
|
|
112
|
-
return () => clearTimeout(e);
|
|
113
|
-
}, []);
|
|
114
|
-
let z = [
|
|
115
|
-
{
|
|
116
|
-
id: "overview",
|
|
117
|
-
label: "Overview",
|
|
118
|
-
Icon: d
|
|
119
|
-
},
|
|
120
|
-
{
|
|
121
|
-
id: "financials",
|
|
122
|
-
label: "Financials",
|
|
123
|
-
Icon: v
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
id: "documents",
|
|
127
|
-
label: "Documents",
|
|
128
|
-
Icon: _
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
id: "updates",
|
|
132
|
-
label: "Updates",
|
|
133
|
-
Icon: c
|
|
134
|
-
}
|
|
135
|
-
];
|
|
136
|
-
if (N) return /* @__PURE__ */ E(n, {
|
|
137
|
-
title: "Investment Details",
|
|
138
|
-
description: "Loading...",
|
|
139
|
-
children: /* @__PURE__ */ E("div", {
|
|
140
|
-
className: "flex items-center justify-center py-20",
|
|
141
|
-
children: /* @__PURE__ */ D("div", {
|
|
142
|
-
className: "text-center",
|
|
143
|
-
children: [/* @__PURE__ */ E("div", { className: "mx-auto mb-4 h-12 w-12 animate-spin rounded-full border-b-2 border-primary" }), /* @__PURE__ */ E("p", {
|
|
144
|
-
className: "text-sm text-text-secondary",
|
|
145
|
-
children: "Loading investment details..."
|
|
146
|
-
})]
|
|
147
|
-
})
|
|
148
|
-
})
|
|
149
|
-
});
|
|
150
|
-
if (!L) return /* @__PURE__ */ E(n, {
|
|
151
|
-
title: "Investment Not Found",
|
|
152
|
-
children: /* @__PURE__ */ E(r, {
|
|
153
|
-
illustration: "empty-generic",
|
|
154
|
-
title: "Investment not found",
|
|
155
|
-
description: "We couldn't find this investment. It may have been removed, or the link may be out of date.",
|
|
156
|
-
action: /* @__PURE__ */ D("button", {
|
|
157
|
-
type: "button",
|
|
158
|
-
onClick: () => l("/investor/portfolio"),
|
|
159
|
-
className: "inline-flex items-center gap-2 rounded-md bg-accent px-4 py-2 text-sm font-medium text-text-primary hover:bg-accent/80 transition-colors",
|
|
160
|
-
children: [/* @__PURE__ */ E(u, { className: "h-4 w-4" }), "Back to Portfolio"]
|
|
161
|
-
})
|
|
162
|
-
})
|
|
163
|
-
});
|
|
164
|
-
let B = L.currentValuation * (L.equityPercentage / 100) - L.investmentAmount, V = B / L.investmentAmount * 100;
|
|
165
|
-
return /* @__PURE__ */ D(n, {
|
|
166
|
-
title: L.cartName,
|
|
167
|
-
description: "Investment Details & Performance",
|
|
168
|
-
actions: /* @__PURE__ */ D("div", {
|
|
169
|
-
className: "flex items-center gap-2",
|
|
170
|
-
children: [
|
|
171
|
-
/* @__PURE__ */ D("button", {
|
|
172
|
-
type: "button",
|
|
173
|
-
onClick: () => l("/investor/portfolio"),
|
|
174
|
-
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",
|
|
175
|
-
children: [
|
|
176
|
-
/* @__PURE__ */ E(u, { className: "h-4 w-4" }),
|
|
177
|
-
/* @__PURE__ */ E("span", {
|
|
178
|
-
className: "hidden sm:inline",
|
|
179
|
-
children: "Back to Portfolio"
|
|
180
|
-
}),
|
|
181
|
-
/* @__PURE__ */ E("span", {
|
|
182
|
-
className: "sm:hidden",
|
|
183
|
-
children: "Back"
|
|
184
|
-
})
|
|
185
|
-
]
|
|
186
|
-
}),
|
|
187
|
-
/* @__PURE__ */ D("button", {
|
|
188
|
-
type: "button",
|
|
189
|
-
onClick: () => alert("Report export initiated"),
|
|
190
|
-
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",
|
|
191
|
-
children: [
|
|
192
|
-
/* @__PURE__ */ E(g, { className: "h-4 w-4" }),
|
|
193
|
-
/* @__PURE__ */ E("span", {
|
|
194
|
-
className: "hidden sm:inline",
|
|
195
|
-
children: "Export Report"
|
|
196
|
-
}),
|
|
197
|
-
/* @__PURE__ */ E("span", {
|
|
198
|
-
className: "sm:hidden",
|
|
199
|
-
children: "Export"
|
|
200
|
-
})
|
|
201
|
-
]
|
|
202
|
-
}),
|
|
203
|
-
/* @__PURE__ */ D("button", {
|
|
204
|
-
type: "button",
|
|
205
|
-
onClick: () => I(!0),
|
|
206
|
-
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",
|
|
207
|
-
children: [/* @__PURE__ */ E("span", {
|
|
208
|
-
className: "hidden sm:inline",
|
|
209
|
-
children: "Manage Investment"
|
|
210
|
-
}), /* @__PURE__ */ E("span", {
|
|
211
|
-
className: "sm:hidden",
|
|
212
|
-
children: "Manage"
|
|
213
|
-
})]
|
|
214
|
-
})
|
|
215
|
-
]
|
|
216
|
-
}),
|
|
217
|
-
children: [
|
|
218
|
-
/* @__PURE__ */ E(A, {
|
|
219
|
-
icon: /* @__PURE__ */ E(C, { className: "h-4 w-4" }),
|
|
220
|
-
className: "mb-6",
|
|
221
|
-
children: "A deep dive into one of your holdings. See exactly how much you put in, your equity stake, current value and returns, then switch tabs for performance history, business updates and documents. Use Manage Investment when you want to top up, withdraw dividends or adjust your position."
|
|
222
|
-
}),
|
|
223
|
-
/* @__PURE__ */ E(k, {
|
|
224
|
-
storageKey: "subscriberbot-investment-details",
|
|
225
|
-
steps: [
|
|
226
|
-
{
|
|
227
|
-
id: "manage-investment",
|
|
228
|
-
label: "Manage this investment",
|
|
229
|
-
description: "Top up, withdraw dividends or adjust your position.",
|
|
230
|
-
icon: /* @__PURE__ */ E(f, { className: "h-4 w-4" }),
|
|
231
|
-
onClick: () => I(!0)
|
|
232
|
-
},
|
|
233
|
-
{
|
|
234
|
-
id: "back-portfolio",
|
|
235
|
-
label: "Back to your portfolio",
|
|
236
|
-
description: "Compare this holding against the rest of your investments.",
|
|
237
|
-
icon: /* @__PURE__ */ E(b, { className: "h-4 w-4" }),
|
|
238
|
-
onClick: () => l("/investor/portfolio")
|
|
239
|
-
},
|
|
240
|
-
{
|
|
241
|
-
id: "more-opps",
|
|
242
|
-
label: "Find more opportunities",
|
|
243
|
-
description: "Diversify by backing other promising local carts.",
|
|
244
|
-
icon: /* @__PURE__ */ E(S, { className: "h-4 w-4" }),
|
|
245
|
-
onClick: () => l("/investor/opportunities")
|
|
246
|
-
}
|
|
247
|
-
]
|
|
248
|
-
}),
|
|
249
|
-
/* @__PURE__ */ D(O, {
|
|
250
|
-
className: "grid grid-cols-2 gap-4 lg:grid-cols-4",
|
|
251
|
-
children: [
|
|
252
|
-
/* @__PURE__ */ D("div", {
|
|
253
|
-
className: "rounded-lg border border-border-seam bg-bg-surface p-4 text-center",
|
|
254
|
-
children: [
|
|
255
|
-
/* @__PURE__ */ E(v, { className: "mx-auto mb-2 h-6 w-6 text-primary sm:h-8 sm:w-8" }),
|
|
256
|
-
/* @__PURE__ */ E("div", {
|
|
257
|
-
className: "text-lg font-bold text-text-primary sm:text-2xl",
|
|
258
|
-
children: i(L.investmentAmount, { minimumFractionDigits: 0 })
|
|
259
|
-
}),
|
|
260
|
-
/* @__PURE__ */ E("div", {
|
|
261
|
-
className: "text-xs text-text-secondary sm:text-sm",
|
|
262
|
-
children: "Your Investment"
|
|
263
|
-
})
|
|
264
|
-
]
|
|
265
|
-
}),
|
|
266
|
-
/* @__PURE__ */ D("div", {
|
|
267
|
-
className: "rounded-lg border border-border-seam bg-bg-surface p-4 text-center",
|
|
268
|
-
children: [
|
|
269
|
-
/* @__PURE__ */ E(C, { className: "mx-auto mb-2 h-6 w-6 text-status-success-text sm:h-8 sm:w-8" }),
|
|
270
|
-
/* @__PURE__ */ D("div", {
|
|
271
|
-
className: "text-lg font-bold text-status-success-text sm:text-2xl",
|
|
272
|
-
children: [
|
|
273
|
-
V > 0 ? "+" : "",
|
|
274
|
-
V.toFixed(1),
|
|
275
|
-
"%"
|
|
276
|
-
]
|
|
277
|
-
}),
|
|
278
|
-
/* @__PURE__ */ E("div", {
|
|
279
|
-
className: "text-xs text-text-secondary sm:text-sm",
|
|
280
|
-
children: "Returns"
|
|
281
|
-
})
|
|
282
|
-
]
|
|
283
|
-
}),
|
|
284
|
-
/* @__PURE__ */ D("div", {
|
|
285
|
-
className: "rounded-lg border border-border-seam bg-bg-surface p-4 text-center",
|
|
286
|
-
children: [
|
|
287
|
-
/* @__PURE__ */ E(b, { className: "mx-auto mb-2 h-6 w-6 text-status-info-text sm:h-8 sm:w-8" }),
|
|
288
|
-
/* @__PURE__ */ D("div", {
|
|
289
|
-
className: "text-lg font-bold text-text-primary sm:text-2xl",
|
|
290
|
-
children: [L.equityPercentage, "%"]
|
|
291
|
-
}),
|
|
292
|
-
/* @__PURE__ */ E("div", {
|
|
293
|
-
className: "text-xs text-text-secondary sm:text-sm",
|
|
294
|
-
children: "Equity Stake"
|
|
295
|
-
})
|
|
296
|
-
]
|
|
297
|
-
}),
|
|
298
|
-
/* @__PURE__ */ D("div", {
|
|
299
|
-
className: "rounded-lg border border-border-seam bg-bg-surface p-4 text-center",
|
|
300
|
-
children: [
|
|
301
|
-
/* @__PURE__ */ E(p, { className: "mx-auto mb-2 h-6 w-6 text-accent-purple sm:h-8 sm:w-8" }),
|
|
302
|
-
/* @__PURE__ */ E("div", {
|
|
303
|
-
className: "text-lg font-bold text-text-primary sm:text-2xl",
|
|
304
|
-
children: i(L.currentValuation * (L.equityPercentage / 100), { minimumFractionDigits: 0 })
|
|
305
|
-
}),
|
|
306
|
-
/* @__PURE__ */ E("div", {
|
|
307
|
-
className: "text-xs text-text-secondary sm:text-sm",
|
|
308
|
-
children: "Current Value"
|
|
309
|
-
})
|
|
310
|
-
]
|
|
311
|
-
})
|
|
312
|
-
]
|
|
313
|
-
}),
|
|
314
|
-
/* @__PURE__ */ E("div", {
|
|
315
|
-
className: "mt-6 flex gap-2 overflow-x-auto pb-2",
|
|
316
|
-
children: z.map((e) => /* @__PURE__ */ D("button", {
|
|
317
|
-
type: "button",
|
|
318
|
-
onClick: () => h(e.id),
|
|
319
|
-
className: t("flex items-center gap-2 whitespace-nowrap rounded-lg px-3 py-2 text-sm font-medium transition-colors sm:px-4 sm:py-3", m === e.id ? "bg-action-primary-bg text-action-primary-text" : "bg-bg-surface text-text-primary hover:bg-bg-sunken"),
|
|
320
|
-
children: [
|
|
321
|
-
/* @__PURE__ */ E(e.Icon, { className: "h-4 w-4 flex-shrink-0" }),
|
|
322
|
-
/* @__PURE__ */ E("span", {
|
|
323
|
-
className: "hidden sm:inline",
|
|
324
|
-
children: e.label
|
|
325
|
-
}),
|
|
326
|
-
/* @__PURE__ */ E("span", {
|
|
327
|
-
className: "sm:hidden",
|
|
328
|
-
children: e.label.split(" ")[0]
|
|
329
|
-
})
|
|
330
|
-
]
|
|
331
|
-
}, e.id))
|
|
332
|
-
}),
|
|
333
|
-
/* @__PURE__ */ D("div", {
|
|
334
|
-
className: "mt-6",
|
|
335
|
-
children: [
|
|
336
|
-
m === "overview" && /* @__PURE__ */ D("div", {
|
|
337
|
-
className: "grid gap-6 lg:grid-cols-3",
|
|
338
|
-
children: [/* @__PURE__ */ D("div", {
|
|
339
|
-
className: "space-y-6 lg:col-span-2",
|
|
340
|
-
children: [/* @__PURE__ */ D("div", {
|
|
341
|
-
className: "rounded-lg border border-border-seam bg-bg-surface p-4 sm:p-6",
|
|
342
|
-
children: [/* @__PURE__ */ E("h2", {
|
|
343
|
-
className: "mb-4 text-lg font-semibold text-text-primary sm:mb-6",
|
|
344
|
-
children: "Business Information"
|
|
345
|
-
}), /* @__PURE__ */ D("div", {
|
|
346
|
-
className: "grid gap-4 sm:grid-cols-2 sm:gap-6",
|
|
347
|
-
children: [
|
|
348
|
-
/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("p", {
|
|
349
|
-
className: "text-sm text-text-secondary",
|
|
350
|
-
children: "Owner"
|
|
351
|
-
}), /* @__PURE__ */ E("p", {
|
|
352
|
-
className: "font-medium text-text-primary",
|
|
353
|
-
children: L.cartOwner
|
|
354
|
-
})] }),
|
|
355
|
-
/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("p", {
|
|
356
|
-
className: "text-sm text-text-secondary",
|
|
357
|
-
children: "Business Type"
|
|
358
|
-
}), /* @__PURE__ */ E("p", {
|
|
359
|
-
className: "font-medium text-text-primary",
|
|
360
|
-
children: L.businessType
|
|
361
|
-
})] }),
|
|
362
|
-
/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("p", {
|
|
363
|
-
className: "text-sm text-text-secondary",
|
|
364
|
-
children: "Location"
|
|
365
|
-
}), /* @__PURE__ */ E("p", {
|
|
366
|
-
className: "font-medium text-text-primary",
|
|
367
|
-
children: L.location
|
|
368
|
-
})] }),
|
|
369
|
-
/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("p", {
|
|
370
|
-
className: "text-sm text-text-secondary",
|
|
371
|
-
children: "Established"
|
|
372
|
-
}), /* @__PURE__ */ E("p", {
|
|
373
|
-
className: "font-medium text-text-primary",
|
|
374
|
-
children: a(L.establishedDate, {
|
|
375
|
-
hour: void 0,
|
|
376
|
-
minute: void 0
|
|
377
|
-
})
|
|
378
|
-
})] })
|
|
379
|
-
]
|
|
380
|
-
})]
|
|
381
|
-
}), /* @__PURE__ */ D("div", {
|
|
382
|
-
className: "rounded-lg border border-border-seam bg-bg-surface p-4 sm:p-6",
|
|
383
|
-
children: [
|
|
384
|
-
/* @__PURE__ */ E("h2", {
|
|
385
|
-
className: "mb-4 text-lg font-semibold text-text-primary sm:mb-6",
|
|
386
|
-
children: "Performance Metrics"
|
|
387
|
-
}),
|
|
388
|
-
/* @__PURE__ */ D("div", {
|
|
389
|
-
className: "grid grid-cols-1 gap-4 text-center sm:grid-cols-3 sm:gap-6",
|
|
390
|
-
children: [
|
|
391
|
-
/* @__PURE__ */ D("div", { children: [
|
|
392
|
-
/* @__PURE__ */ E(y, { className: "mx-auto mb-2 h-6 w-6 text-primary sm:h-8 sm:w-8" }),
|
|
393
|
-
/* @__PURE__ */ E("div", {
|
|
394
|
-
className: "text-xl font-bold text-text-primary sm:text-2xl",
|
|
395
|
-
children: L.monthlyOrders
|
|
396
|
-
}),
|
|
397
|
-
/* @__PURE__ */ E("div", {
|
|
398
|
-
className: "text-xs text-text-secondary sm:text-sm",
|
|
399
|
-
children: "Monthly Orders"
|
|
400
|
-
})
|
|
401
|
-
] }),
|
|
402
|
-
/* @__PURE__ */ D("div", { children: [
|
|
403
|
-
/* @__PURE__ */ E(v, { className: "mx-auto mb-2 h-6 w-6 text-status-success-text sm:h-8 sm:w-8" }),
|
|
404
|
-
/* @__PURE__ */ E("div", {
|
|
405
|
-
className: "text-xl font-bold text-text-primary sm:text-2xl",
|
|
406
|
-
children: i(L.monthlyRevenue, { minimumFractionDigits: 0 })
|
|
407
|
-
}),
|
|
408
|
-
/* @__PURE__ */ E("div", {
|
|
409
|
-
className: "text-xs text-text-secondary sm:text-sm",
|
|
410
|
-
children: "Monthly Revenue"
|
|
411
|
-
})
|
|
412
|
-
] }),
|
|
413
|
-
/* @__PURE__ */ D("div", { children: [
|
|
414
|
-
/* @__PURE__ */ E(w, { className: "mx-auto mb-2 h-6 w-6 text-status-info-text sm:h-8 sm:w-8" }),
|
|
415
|
-
/* @__PURE__ */ E("div", {
|
|
416
|
-
className: "text-xl font-bold text-text-primary sm:text-2xl",
|
|
417
|
-
children: L.activeCustomers
|
|
418
|
-
}),
|
|
419
|
-
/* @__PURE__ */ E("div", {
|
|
420
|
-
className: "text-xs text-text-secondary sm:text-sm",
|
|
421
|
-
children: "Active Customers"
|
|
422
|
-
})
|
|
423
|
-
] })
|
|
424
|
-
]
|
|
425
|
-
}),
|
|
426
|
-
/* @__PURE__ */ D("div", {
|
|
427
|
-
className: "mt-4 flex flex-col items-start justify-between gap-4 border-t border-border-seam pt-4 sm:mt-6 sm:flex-row sm:items-center sm:pt-6",
|
|
428
|
-
children: [/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("p", {
|
|
429
|
-
className: "text-sm text-text-secondary",
|
|
430
|
-
children: "Customer Rating"
|
|
431
|
-
}), /* @__PURE__ */ D("div", {
|
|
432
|
-
className: "mt-1 flex items-center gap-1",
|
|
433
|
-
children: [Array.from({ length: 5 }, (e, n) => /* @__PURE__ */ E(x, { className: t("h-4 w-4", n < Math.floor(L.customerRating) ? "fill-status-warning-text text-status-warning-text" : "fill-none text-text-secondary/40") }, n)), /* @__PURE__ */ E("span", {
|
|
434
|
-
className: "ml-1 text-sm font-medium text-text-primary",
|
|
435
|
-
children: L.customerRating
|
|
436
|
-
})]
|
|
437
|
-
})] }), /* @__PURE__ */ D("div", {
|
|
438
|
-
className: "text-left sm:text-right",
|
|
439
|
-
children: [/* @__PURE__ */ E("p", {
|
|
440
|
-
className: "text-sm text-text-secondary",
|
|
441
|
-
children: "Avg Order Value"
|
|
442
|
-
}), /* @__PURE__ */ E("p", {
|
|
443
|
-
className: "text-lg font-semibold text-text-primary",
|
|
444
|
-
children: i(L.averageOrderValue, { minimumFractionDigits: 0 })
|
|
445
|
-
})]
|
|
446
|
-
})]
|
|
447
|
-
})
|
|
448
|
-
]
|
|
449
|
-
})]
|
|
450
|
-
}), /* @__PURE__ */ D("div", {
|
|
451
|
-
className: "space-y-6",
|
|
452
|
-
children: [/* @__PURE__ */ D("div", {
|
|
453
|
-
className: "rounded-lg border border-border-seam bg-bg-surface p-4 sm:p-6",
|
|
454
|
-
children: [/* @__PURE__ */ E("h2", {
|
|
455
|
-
className: "mb-4 text-lg font-semibold text-text-primary sm:mb-6",
|
|
456
|
-
children: "Investment Summary"
|
|
457
|
-
}), /* @__PURE__ */ D("div", {
|
|
458
|
-
className: "space-y-4",
|
|
459
|
-
children: [
|
|
460
|
-
/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("p", {
|
|
461
|
-
className: "text-sm text-text-secondary",
|
|
462
|
-
children: "Investment Date"
|
|
463
|
-
}), /* @__PURE__ */ E("p", {
|
|
464
|
-
className: "font-medium text-text-primary",
|
|
465
|
-
children: a(L.investmentDate, {
|
|
466
|
-
hour: void 0,
|
|
467
|
-
minute: void 0
|
|
468
|
-
})
|
|
469
|
-
})] }),
|
|
470
|
-
/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("p", {
|
|
471
|
-
className: "text-sm text-text-secondary",
|
|
472
|
-
children: "Investment Type"
|
|
473
|
-
}), /* @__PURE__ */ E("p", {
|
|
474
|
-
className: "font-medium text-text-primary",
|
|
475
|
-
children: L.investmentType
|
|
476
|
-
})] }),
|
|
477
|
-
/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("p", {
|
|
478
|
-
className: "text-sm text-text-secondary",
|
|
479
|
-
children: "Initial Valuation"
|
|
480
|
-
}), /* @__PURE__ */ E("p", {
|
|
481
|
-
className: "font-medium text-text-primary",
|
|
482
|
-
children: i(L.valuationAtInvestment, { minimumFractionDigits: 0 })
|
|
483
|
-
})] }),
|
|
484
|
-
/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("p", {
|
|
485
|
-
className: "text-sm text-text-secondary",
|
|
486
|
-
children: "Current Valuation"
|
|
487
|
-
}), /* @__PURE__ */ E("p", {
|
|
488
|
-
className: "text-lg font-medium text-text-primary",
|
|
489
|
-
children: i(L.currentValuation, { minimumFractionDigits: 0 })
|
|
490
|
-
})] }),
|
|
491
|
-
/* @__PURE__ */ E("div", {
|
|
492
|
-
className: "border-t border-border-seam pt-4",
|
|
493
|
-
children: /* @__PURE__ */ D("div", {
|
|
494
|
-
className: "flex items-center justify-between",
|
|
495
|
-
children: [/* @__PURE__ */ E("span", {
|
|
496
|
-
className: "text-sm text-text-secondary",
|
|
497
|
-
children: "Your Returns"
|
|
498
|
-
}), /* @__PURE__ */ D("span", {
|
|
499
|
-
className: t("text-lg font-semibold", B > 0 ? "text-status-success-text" : "text-status-error-text"),
|
|
500
|
-
children: [B > 0 ? "+" : "", i(B, { minimumFractionDigits: 0 })]
|
|
501
|
-
})]
|
|
502
|
-
})
|
|
503
|
-
})
|
|
504
|
-
]
|
|
505
|
-
})]
|
|
506
|
-
}), /* @__PURE__ */ D("div", {
|
|
507
|
-
className: "rounded-lg border border-border-seam bg-bg-surface p-4 sm:p-6",
|
|
508
|
-
children: [/* @__PURE__ */ E("h2", {
|
|
509
|
-
className: "mb-4 text-lg font-semibold text-text-primary sm:mb-6",
|
|
510
|
-
children: "Growth Indicators"
|
|
511
|
-
}), /* @__PURE__ */ D("div", {
|
|
512
|
-
className: "space-y-4",
|
|
513
|
-
children: [
|
|
514
|
-
/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ D("div", {
|
|
515
|
-
className: "mb-2 flex items-center justify-between",
|
|
516
|
-
children: [/* @__PURE__ */ E("span", {
|
|
517
|
-
className: "text-sm text-text-secondary",
|
|
518
|
-
children: "Revenue Growth"
|
|
519
|
-
}), /* @__PURE__ */ D("span", {
|
|
520
|
-
className: "text-sm font-medium text-status-success-text",
|
|
521
|
-
children: [
|
|
522
|
-
"+",
|
|
523
|
-
L.revenueGrowth,
|
|
524
|
-
"%"
|
|
525
|
-
]
|
|
526
|
-
})]
|
|
527
|
-
}), /* @__PURE__ */ E("div", {
|
|
528
|
-
className: "h-2 w-full overflow-hidden rounded-full bg-bg-sunken",
|
|
529
|
-
children: /* @__PURE__ */ E("div", {
|
|
530
|
-
className: "h-full rounded-full bg-status-success-text",
|
|
531
|
-
style: { width: `${Math.min(L.revenueGrowth, 100)}%` }
|
|
532
|
-
})
|
|
533
|
-
})] }),
|
|
534
|
-
/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ D("div", {
|
|
535
|
-
className: "mb-2 flex items-center justify-between",
|
|
536
|
-
children: [/* @__PURE__ */ E("span", {
|
|
537
|
-
className: "text-sm text-text-secondary",
|
|
538
|
-
children: "Profit Margin"
|
|
539
|
-
}), /* @__PURE__ */ D("span", {
|
|
540
|
-
className: "text-sm font-medium text-text-primary",
|
|
541
|
-
children: [L.profitMargin, "%"]
|
|
542
|
-
})]
|
|
543
|
-
}), /* @__PURE__ */ E("div", {
|
|
544
|
-
className: "h-2 w-full overflow-hidden rounded-full bg-bg-sunken",
|
|
545
|
-
children: /* @__PURE__ */ E("div", {
|
|
546
|
-
className: "h-full rounded-full bg-status-info-text",
|
|
547
|
-
style: { width: `${L.profitMargin}%` }
|
|
548
|
-
})
|
|
549
|
-
})] }),
|
|
550
|
-
/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ D("div", {
|
|
551
|
-
className: "mb-2 flex items-center justify-between",
|
|
552
|
-
children: [/* @__PURE__ */ E("span", {
|
|
553
|
-
className: "text-sm text-text-secondary",
|
|
554
|
-
children: "ROI"
|
|
555
|
-
}), /* @__PURE__ */ D("span", {
|
|
556
|
-
className: "text-sm font-medium text-status-success-text",
|
|
557
|
-
children: [
|
|
558
|
-
"+",
|
|
559
|
-
L.returnOnInvestment,
|
|
560
|
-
"%"
|
|
561
|
-
]
|
|
562
|
-
})]
|
|
563
|
-
}), /* @__PURE__ */ E("div", {
|
|
564
|
-
className: "h-2 w-full overflow-hidden rounded-full bg-bg-sunken",
|
|
565
|
-
children: /* @__PURE__ */ E("div", {
|
|
566
|
-
className: "h-full rounded-full bg-status-success-text",
|
|
567
|
-
style: { width: `${Math.min(L.returnOnInvestment, 100)}%` }
|
|
568
|
-
})
|
|
569
|
-
})] }),
|
|
570
|
-
/* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("p", {
|
|
571
|
-
className: "text-sm text-text-secondary",
|
|
572
|
-
children: "Expected Payback"
|
|
573
|
-
}), /* @__PURE__ */ E("p", {
|
|
574
|
-
className: "font-medium text-text-primary",
|
|
575
|
-
children: L.paybackPeriod
|
|
576
|
-
})] })
|
|
577
|
-
]
|
|
578
|
-
})]
|
|
579
|
-
})]
|
|
580
|
-
})]
|
|
581
|
-
}),
|
|
582
|
-
m === "financials" && /* @__PURE__ */ D("div", {
|
|
583
|
-
className: "rounded-lg border border-border-seam bg-bg-surface p-4 sm:p-6",
|
|
584
|
-
children: [
|
|
585
|
-
/* @__PURE__ */ E("h2", {
|
|
586
|
-
className: "mb-4 text-lg font-semibold text-text-primary sm:mb-6",
|
|
587
|
-
children: "Financial Performance"
|
|
588
|
-
}),
|
|
589
|
-
/* @__PURE__ */ D("div", {
|
|
590
|
-
className: "mb-6 grid grid-cols-2 gap-4 lg:grid-cols-4",
|
|
591
|
-
children: [
|
|
592
|
-
/* @__PURE__ */ D("div", {
|
|
593
|
-
className: "rounded-lg bg-bg-sunken/50 p-3",
|
|
594
|
-
children: [/* @__PURE__ */ E("p", {
|
|
595
|
-
className: "text-xs text-text-secondary",
|
|
596
|
-
children: "Monthly Revenue"
|
|
597
|
-
}), /* @__PURE__ */ E("p", {
|
|
598
|
-
className: "mt-1 text-lg font-bold text-text-primary",
|
|
599
|
-
children: i(L.monthlyRevenue, { minimumFractionDigits: 0 })
|
|
600
|
-
})]
|
|
601
|
-
}),
|
|
602
|
-
/* @__PURE__ */ D("div", {
|
|
603
|
-
className: "rounded-lg bg-bg-sunken/50 p-3",
|
|
604
|
-
children: [/* @__PURE__ */ E("p", {
|
|
605
|
-
className: "text-xs text-text-secondary",
|
|
606
|
-
children: "Revenue Growth"
|
|
607
|
-
}), /* @__PURE__ */ D("p", {
|
|
608
|
-
className: "mt-1 text-lg font-bold text-status-success-text",
|
|
609
|
-
children: [
|
|
610
|
-
"+",
|
|
611
|
-
L.revenueGrowth,
|
|
612
|
-
"%"
|
|
613
|
-
]
|
|
614
|
-
})]
|
|
615
|
-
}),
|
|
616
|
-
/* @__PURE__ */ D("div", {
|
|
617
|
-
className: "rounded-lg bg-bg-sunken/50 p-3",
|
|
618
|
-
children: [/* @__PURE__ */ E("p", {
|
|
619
|
-
className: "text-xs text-text-secondary",
|
|
620
|
-
children: "Profit Margin"
|
|
621
|
-
}), /* @__PURE__ */ D("p", {
|
|
622
|
-
className: "mt-1 text-lg font-bold text-text-primary",
|
|
623
|
-
children: [L.profitMargin, "%"]
|
|
624
|
-
})]
|
|
625
|
-
}),
|
|
626
|
-
/* @__PURE__ */ D("div", {
|
|
627
|
-
className: "rounded-lg bg-bg-sunken/50 p-3",
|
|
628
|
-
children: [/* @__PURE__ */ E("p", {
|
|
629
|
-
className: "text-xs text-text-secondary",
|
|
630
|
-
children: "Avg Order Value"
|
|
631
|
-
}), /* @__PURE__ */ E("p", {
|
|
632
|
-
className: "mt-1 text-lg font-bold text-text-primary",
|
|
633
|
-
children: i(L.averageOrderValue, { minimumFractionDigits: 0 })
|
|
634
|
-
})]
|
|
635
|
-
})
|
|
636
|
-
]
|
|
637
|
-
}),
|
|
638
|
-
/* @__PURE__ */ E("div", {
|
|
639
|
-
className: "overflow-hidden rounded-lg border border-border-seam",
|
|
640
|
-
children: /* @__PURE__ */ D("table", {
|
|
641
|
-
className: "w-full",
|
|
642
|
-
children: [/* @__PURE__ */ E("thead", { children: /* @__PURE__ */ D("tr", {
|
|
643
|
-
className: "bg-bg-sunken/50",
|
|
644
|
-
children: [
|
|
645
|
-
/* @__PURE__ */ E("th", {
|
|
646
|
-
className: "px-4 py-3 text-left text-xs font-medium uppercase tracking-wider text-text-secondary",
|
|
647
|
-
children: "Metric"
|
|
648
|
-
}),
|
|
649
|
-
/* @__PURE__ */ E("th", {
|
|
650
|
-
className: "px-4 py-3 text-right text-xs font-medium uppercase tracking-wider text-text-secondary",
|
|
651
|
-
children: "Value"
|
|
652
|
-
}),
|
|
653
|
-
/* @__PURE__ */ E("th", {
|
|
654
|
-
className: "px-4 py-3 text-right text-xs font-medium uppercase tracking-wider text-text-secondary",
|
|
655
|
-
children: "Trend"
|
|
656
|
-
})
|
|
657
|
-
]
|
|
658
|
-
}) }), /* @__PURE__ */ E("tbody", {
|
|
659
|
-
className: "divide-y divide-border",
|
|
660
|
-
children: [
|
|
661
|
-
{
|
|
662
|
-
metric: "Monthly Revenue",
|
|
663
|
-
value: i(L.monthlyRevenue, { minimumFractionDigits: 0 }),
|
|
664
|
-
trend: "+18.5%"
|
|
665
|
-
},
|
|
666
|
-
{
|
|
667
|
-
metric: "Monthly Orders",
|
|
668
|
-
value: String(L.monthlyOrders),
|
|
669
|
-
trend: "+12%"
|
|
670
|
-
},
|
|
671
|
-
{
|
|
672
|
-
metric: "Average Order Value",
|
|
673
|
-
value: i(L.averageOrderValue, { minimumFractionDigits: 0 }),
|
|
674
|
-
trend: "+5.8%"
|
|
675
|
-
},
|
|
676
|
-
{
|
|
677
|
-
metric: "Active Customers",
|
|
678
|
-
value: String(L.activeCustomers),
|
|
679
|
-
trend: "+22%"
|
|
680
|
-
},
|
|
681
|
-
{
|
|
682
|
-
metric: "Profit Margin",
|
|
683
|
-
value: `${L.profitMargin}%`,
|
|
684
|
-
trend: "+2.1%"
|
|
685
|
-
},
|
|
686
|
-
{
|
|
687
|
-
metric: "Return on Investment",
|
|
688
|
-
value: `${L.returnOnInvestment}%`,
|
|
689
|
-
trend: "+8.5%"
|
|
690
|
-
}
|
|
691
|
-
].map((e) => /* @__PURE__ */ D("tr", {
|
|
692
|
-
className: "hover:bg-accent/50 transition-colors",
|
|
693
|
-
children: [
|
|
694
|
-
/* @__PURE__ */ E("td", {
|
|
695
|
-
className: "px-4 py-3 text-sm font-medium text-text-primary",
|
|
696
|
-
children: e.metric
|
|
697
|
-
}),
|
|
698
|
-
/* @__PURE__ */ E("td", {
|
|
699
|
-
className: "px-4 py-3 text-right text-sm text-text-primary",
|
|
700
|
-
children: e.value
|
|
701
|
-
}),
|
|
702
|
-
/* @__PURE__ */ E("td", {
|
|
703
|
-
className: "px-4 py-3 text-right text-sm font-medium text-status-success-text",
|
|
704
|
-
children: e.trend
|
|
705
|
-
})
|
|
706
|
-
]
|
|
707
|
-
}, e.metric))
|
|
708
|
-
})]
|
|
709
|
-
})
|
|
710
|
-
})
|
|
711
|
-
]
|
|
712
|
-
}),
|
|
713
|
-
m === "documents" && /* @__PURE__ */ D("div", {
|
|
714
|
-
className: "rounded-lg border border-border-seam bg-bg-surface p-4 sm:p-6",
|
|
715
|
-
children: [/* @__PURE__ */ E("h2", {
|
|
716
|
-
className: "mb-4 text-lg font-semibold text-text-primary sm:mb-6",
|
|
717
|
-
children: "Investment Documents"
|
|
718
|
-
}), /* @__PURE__ */ E("div", {
|
|
719
|
-
className: "space-y-4",
|
|
720
|
-
children: L.documents.map((e, n) => {
|
|
721
|
-
let r = M(e.status), i = r.Icon;
|
|
722
|
-
return /* @__PURE__ */ D("div", {
|
|
723
|
-
className: "flex flex-col gap-4 rounded-lg bg-bg-sunken/50 p-4 sm:flex-row sm:items-center sm:justify-between",
|
|
724
|
-
children: [/* @__PURE__ */ D("div", {
|
|
725
|
-
className: "flex items-start gap-3 flex-1 min-w-0 sm:items-center sm:gap-4",
|
|
726
|
-
children: [/* @__PURE__ */ E(_, { className: "mt-1 h-6 w-6 flex-shrink-0 text-primary sm:mt-0 sm:h-8 sm:w-8" }), /* @__PURE__ */ D("div", {
|
|
727
|
-
className: "min-w-0 flex-1",
|
|
728
|
-
children: [
|
|
729
|
-
/* @__PURE__ */ E("h4", {
|
|
730
|
-
className: "text-sm font-medium text-text-primary sm:text-base",
|
|
731
|
-
children: e.type
|
|
732
|
-
}),
|
|
733
|
-
/* @__PURE__ */ E("p", {
|
|
734
|
-
className: "truncate text-xs text-text-secondary sm:text-sm",
|
|
735
|
-
children: e.name
|
|
736
|
-
}),
|
|
737
|
-
/* @__PURE__ */ D("p", {
|
|
738
|
-
className: "text-xs text-text-secondary",
|
|
739
|
-
children: [
|
|
740
|
-
"Uploaded",
|
|
741
|
-
" ",
|
|
742
|
-
a(e.uploadDate, {
|
|
743
|
-
hour: void 0,
|
|
744
|
-
minute: void 0
|
|
745
|
-
})
|
|
746
|
-
]
|
|
747
|
-
})
|
|
748
|
-
]
|
|
749
|
-
})]
|
|
750
|
-
}), /* @__PURE__ */ D("div", {
|
|
751
|
-
className: "flex w-full items-center justify-between gap-3 sm:w-auto sm:justify-end",
|
|
752
|
-
children: [/* @__PURE__ */ D("span", {
|
|
753
|
-
className: t("flex items-center gap-1 text-xs sm:text-sm", r.color),
|
|
754
|
-
children: [/* @__PURE__ */ E(i, { className: "h-3 w-3 sm:h-4 sm:w-4" }), /* @__PURE__ */ E("span", {
|
|
755
|
-
className: "capitalize",
|
|
756
|
-
children: r.label
|
|
757
|
-
})]
|
|
758
|
-
}), /* @__PURE__ */ D("button", {
|
|
759
|
-
type: "button",
|
|
760
|
-
onClick: () => alert(`Downloading ${e.name}`),
|
|
761
|
-
className: "flex items-center gap-1 rounded-lg border border-border-seam px-3 py-1.5 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
|
|
762
|
-
children: [/* @__PURE__ */ E(g, { className: "h-3 w-3 sm:h-4 sm:w-4" }), /* @__PURE__ */ E("span", {
|
|
763
|
-
className: "hidden sm:inline",
|
|
764
|
-
children: "Download"
|
|
765
|
-
})]
|
|
766
|
-
})]
|
|
767
|
-
})]
|
|
768
|
-
}, n);
|
|
769
|
-
})
|
|
770
|
-
})]
|
|
771
|
-
}),
|
|
772
|
-
m === "updates" && /* @__PURE__ */ D("div", {
|
|
773
|
-
className: "rounded-lg border border-border-seam bg-bg-surface p-4 sm:p-6",
|
|
774
|
-
children: [/* @__PURE__ */ E("h2", {
|
|
775
|
-
className: "mb-4 text-lg font-semibold text-text-primary sm:mb-6",
|
|
776
|
-
children: "Recent Updates"
|
|
777
|
-
}), /* @__PURE__ */ E("div", {
|
|
778
|
-
className: "space-y-4",
|
|
779
|
-
children: L.recentUpdates.map((e, t) => /* @__PURE__ */ D("div", {
|
|
780
|
-
className: "flex gap-3 rounded-lg bg-bg-sunken/50 p-4 sm:gap-4",
|
|
781
|
-
children: [/* @__PURE__ */ E("div", {
|
|
782
|
-
className: "flex-shrink-0",
|
|
783
|
-
children: /* @__PURE__ */ E(c, { className: "mt-1 h-4 w-4 text-primary sm:h-5 sm:w-5" })
|
|
784
|
-
}), /* @__PURE__ */ D("div", {
|
|
785
|
-
className: "min-w-0 flex-1",
|
|
786
|
-
children: [/* @__PURE__ */ D("div", {
|
|
787
|
-
className: "mb-1 flex flex-col gap-1 sm:flex-row sm:items-center sm:justify-between",
|
|
788
|
-
children: [/* @__PURE__ */ E("h4", {
|
|
789
|
-
className: "text-sm font-medium text-text-primary sm:text-base",
|
|
790
|
-
children: e.type
|
|
791
|
-
}), /* @__PURE__ */ E("span", {
|
|
792
|
-
className: "text-xs text-text-secondary sm:text-sm",
|
|
793
|
-
children: a(e.date, {
|
|
794
|
-
hour: void 0,
|
|
795
|
-
minute: void 0
|
|
796
|
-
})
|
|
797
|
-
})]
|
|
798
|
-
}), /* @__PURE__ */ E("p", {
|
|
799
|
-
className: "text-xs text-text-secondary sm:text-sm",
|
|
800
|
-
children: e.description
|
|
801
|
-
})]
|
|
802
|
-
})]
|
|
803
|
-
}, t))
|
|
804
|
-
})]
|
|
805
|
-
})
|
|
806
|
-
]
|
|
807
|
-
}),
|
|
808
|
-
F && /* @__PURE__ */ E("div", {
|
|
809
|
-
className: "fixed inset-0 z-50 flex items-center justify-center bg-bg-canvas/50 p-4",
|
|
810
|
-
children: /* @__PURE__ */ D("div", {
|
|
811
|
-
className: "relative max-h-[90vh] w-full max-w-md overflow-y-auto rounded-lg border border-border-seam bg-bg-surface",
|
|
812
|
-
children: [
|
|
813
|
-
/* @__PURE__ */ D("div", {
|
|
814
|
-
className: "border-b border-border-seam p-4 sm:p-6",
|
|
815
|
-
children: [/* @__PURE__ */ E("button", {
|
|
816
|
-
type: "button",
|
|
817
|
-
onClick: () => I(!1),
|
|
818
|
-
className: "absolute right-3 top-3 rounded-lg p-1 text-text-secondary hover:bg-accent transition-colors",
|
|
819
|
-
children: /* @__PURE__ */ E(T, { className: "h-5 w-5" })
|
|
820
|
-
}), /* @__PURE__ */ E("h2", {
|
|
821
|
-
className: "text-lg font-semibold text-text-primary sm:text-xl",
|
|
822
|
-
children: "Manage Investment"
|
|
823
|
-
})]
|
|
824
|
-
}),
|
|
825
|
-
/* @__PURE__ */ D("div", {
|
|
826
|
-
className: "space-y-4 p-4 sm:p-6",
|
|
827
|
-
children: [
|
|
828
|
-
/* @__PURE__ */ D("p", {
|
|
829
|
-
className: "text-sm text-text-secondary sm:text-base",
|
|
830
|
-
children: [
|
|
831
|
-
"Choose an action for your investment in ",
|
|
832
|
-
L.cartName,
|
|
833
|
-
":"
|
|
834
|
-
]
|
|
835
|
-
}),
|
|
836
|
-
/* @__PURE__ */ D("div", {
|
|
837
|
-
className: "space-y-3",
|
|
838
|
-
children: [
|
|
839
|
-
/* @__PURE__ */ E("button", {
|
|
840
|
-
type: "button",
|
|
841
|
-
onClick: () => alert("Partial withdrawal request submitted"),
|
|
842
|
-
className: "w-full rounded-lg border border-border-seam px-4 py-2.5 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
|
|
843
|
-
children: "Request Partial Withdrawal"
|
|
844
|
-
}),
|
|
845
|
-
/* @__PURE__ */ E("button", {
|
|
846
|
-
type: "button",
|
|
847
|
-
onClick: () => alert("Transfer ownership feature coming soon"),
|
|
848
|
-
className: "w-full rounded-lg border border-border-seam px-4 py-2.5 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
|
|
849
|
-
children: "Transfer Ownership"
|
|
850
|
-
}),
|
|
851
|
-
/* @__PURE__ */ E("button", {
|
|
852
|
-
type: "button",
|
|
853
|
-
onClick: () => alert("Exit options will be displayed"),
|
|
854
|
-
className: "w-full rounded-lg border border-border-seam px-4 py-2.5 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
|
|
855
|
-
children: "View Exit Options"
|
|
856
|
-
})
|
|
857
|
-
]
|
|
858
|
-
}),
|
|
859
|
-
/* @__PURE__ */ E("div", {
|
|
860
|
-
className: "rounded-lg border border-status-warning-border/30 bg-status-warning-bg/10 p-3 sm:p-4",
|
|
861
|
-
children: /* @__PURE__ */ E("p", {
|
|
862
|
-
className: "text-xs text-status-warning-text sm:text-sm",
|
|
863
|
-
children: "Any changes to your investment require approval from the business owner and may be subject to terms in your investment agreement."
|
|
864
|
-
})
|
|
865
|
-
})
|
|
866
|
-
]
|
|
867
|
-
}),
|
|
868
|
-
/* @__PURE__ */ E("div", {
|
|
869
|
-
className: "flex justify-end gap-3 border-t border-border-seam p-4 sm:p-6",
|
|
870
|
-
children: /* @__PURE__ */ E("button", {
|
|
871
|
-
type: "button",
|
|
872
|
-
onClick: () => I(!1),
|
|
873
|
-
className: "rounded-lg border border-border-seam px-4 py-2 text-sm font-medium text-text-primary hover:bg-accent transition-colors",
|
|
874
|
-
children: "Cancel"
|
|
875
|
-
})
|
|
876
|
-
})
|
|
877
|
-
]
|
|
878
|
-
})
|
|
879
|
-
})
|
|
880
|
-
]
|
|
881
|
-
});
|
|
882
|
-
}
|
|
883
|
-
//#endregion
|
|
884
|
-
export { N as InvestmentDetailsPage };
|
|
885
|
-
|
|
886
|
-
//# sourceMappingURL=InvestmentDetailsPage.js.map
|