@burdenoff/microfe-brainyrich 2026.509.101
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/README.md +12 -0
- package/dist/brainyrich/BrainyRichRoot.d.ts +5 -0
- package/dist/brainyrich/BrainyRichRoot.d.ts.map +1 -0
- package/dist/brainyrich/BrainyRichRoot.js +161 -0
- package/dist/brainyrich/BrainyRichRoot.js.map +1 -0
- package/dist/brainyrich/BrainyRichRoutes.d.ts +2 -0
- package/dist/brainyrich/BrainyRichRoutes.d.ts.map +1 -0
- package/dist/brainyrich/BrainyRichRoutes.js +95 -0
- package/dist/brainyrich/BrainyRichRoutes.js.map +1 -0
- package/dist/brainyrich/index.d.ts +5 -0
- package/dist/brainyrich/index.d.ts.map +1 -0
- package/dist/brainyrich/index.js +3 -0
- package/dist/brainyrich/pages/AccountsPage.d.ts +2 -0
- package/dist/brainyrich/pages/AccountsPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/AccountsPage.js +184 -0
- package/dist/brainyrich/pages/AccountsPage.js.map +1 -0
- package/dist/brainyrich/pages/AdvisorsPage.d.ts +2 -0
- package/dist/brainyrich/pages/AdvisorsPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/AdvisorsPage.js +375 -0
- package/dist/brainyrich/pages/AdvisorsPage.js.map +1 -0
- package/dist/brainyrich/pages/AiAssistantPage.d.ts +2 -0
- package/dist/brainyrich/pages/AiAssistantPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/AiAssistantPage.js +389 -0
- package/dist/brainyrich/pages/AiAssistantPage.js.map +1 -0
- package/dist/brainyrich/pages/AnalyticsPage.d.ts +2 -0
- package/dist/brainyrich/pages/AnalyticsPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/AnalyticsPage.js +316 -0
- package/dist/brainyrich/pages/AnalyticsPage.js.map +1 -0
- package/dist/brainyrich/pages/AssistantPage.d.ts +2 -0
- package/dist/brainyrich/pages/AssistantPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/AssistantPage.js +332 -0
- package/dist/brainyrich/pages/AssistantPage.js.map +1 -0
- package/dist/brainyrich/pages/DashboardPage.d.ts +2 -0
- package/dist/brainyrich/pages/DashboardPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/DashboardPage.js +258 -0
- package/dist/brainyrich/pages/DashboardPage.js.map +1 -0
- package/dist/brainyrich/pages/EstatePage.d.ts +2 -0
- package/dist/brainyrich/pages/EstatePage.d.ts.map +1 -0
- package/dist/brainyrich/pages/EstatePage.js +269 -0
- package/dist/brainyrich/pages/EstatePage.js.map +1 -0
- package/dist/brainyrich/pages/FamilyPage.d.ts +2 -0
- package/dist/brainyrich/pages/FamilyPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/FamilyPage.js +358 -0
- package/dist/brainyrich/pages/FamilyPage.js.map +1 -0
- package/dist/brainyrich/pages/GoalsPage.d.ts +2 -0
- package/dist/brainyrich/pages/GoalsPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/GoalsPage.js +160 -0
- package/dist/brainyrich/pages/GoalsPage.js.map +1 -0
- package/dist/brainyrich/pages/InsurancePage.d.ts +2 -0
- package/dist/brainyrich/pages/InsurancePage.d.ts.map +1 -0
- package/dist/brainyrich/pages/InsurancePage.js +181 -0
- package/dist/brainyrich/pages/InsurancePage.js.map +1 -0
- package/dist/brainyrich/pages/InvestmentsPage.d.ts +2 -0
- package/dist/brainyrich/pages/InvestmentsPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/InvestmentsPage.js +330 -0
- package/dist/brainyrich/pages/InvestmentsPage.js.map +1 -0
- package/dist/brainyrich/pages/MarketplacePage.d.ts +2 -0
- package/dist/brainyrich/pages/MarketplacePage.d.ts.map +1 -0
- package/dist/brainyrich/pages/MarketplacePage.js +450 -0
- package/dist/brainyrich/pages/MarketplacePage.js.map +1 -0
- package/dist/brainyrich/pages/PortfoliosPage.d.ts +2 -0
- package/dist/brainyrich/pages/PortfoliosPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/PortfoliosPage.js +175 -0
- package/dist/brainyrich/pages/PortfoliosPage.js.map +1 -0
- package/dist/brainyrich/pages/ReportsPage.d.ts +2 -0
- package/dist/brainyrich/pages/ReportsPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/ReportsPage.js +261 -0
- package/dist/brainyrich/pages/ReportsPage.js.map +1 -0
- package/dist/brainyrich/pages/RiskPage.d.ts +2 -0
- package/dist/brainyrich/pages/RiskPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/RiskPage.js +222 -0
- package/dist/brainyrich/pages/RiskPage.js.map +1 -0
- package/dist/brainyrich/pages/TaxPage.d.ts +2 -0
- package/dist/brainyrich/pages/TaxPage.d.ts.map +1 -0
- package/dist/brainyrich/pages/TaxPage.js +246 -0
- package/dist/brainyrich/pages/TaxPage.js.map +1 -0
- package/dist/brainyrich/pages/_shared.d.ts +21 -0
- package/dist/brainyrich/pages/_shared.d.ts.map +1 -0
- package/dist/brainyrich/pages/_shared.js +63 -0
- package/dist/brainyrich/pages/_shared.js.map +1 -0
- package/dist/brainyrich/providers/BrainyRichProvider.d.ts +6 -0
- package/dist/brainyrich/providers/BrainyRichProvider.d.ts.map +1 -0
- package/dist/brainyrich/providers/BrainyRichProvider.js +27 -0
- package/dist/brainyrich/providers/BrainyRichProvider.js.map +1 -0
- package/dist/brainyrich/store/brainyrichStore.d.ts +19 -0
- package/dist/brainyrich/store/brainyrichStore.d.ts.map +1 -0
- package/dist/brainyrich/store/brainyrichStore.js +272 -0
- package/dist/brainyrich/store/brainyrichStore.js.map +1 -0
- package/dist/brainyrich/types/index.d.ts +116 -0
- package/dist/brainyrich/types/index.d.ts.map +1 -0
- package/dist/brainyrich/utils/cn.d.ts +4 -0
- package/dist/brainyrich/utils/cn.d.ts.map +1 -0
- package/dist/brainyrich/utils/i18n.d.ts +6 -0
- package/dist/brainyrich/utils/i18n.d.ts.map +1 -0
- package/dist/brainyrich/utils/i18n.js +15 -0
- package/dist/brainyrich/utils/i18n.js.map +1 -0
- package/dist/brainyrich/utils/navigation.d.ts +2 -0
- package/dist/brainyrich/utils/navigation.d.ts.map +1 -0
- package/dist/brainyrich/utils/navigation.js +8 -0
- package/dist/brainyrich/utils/navigation.js.map +1 -0
- package/dist/dev/main.d.ts +2 -0
- package/dist/dev/main.d.ts.map +1 -0
- package/dist/generated/global-operations.d.ts +2 -0
- package/dist/generated/global-operations.d.ts.map +1 -0
- package/dist/generated/global-types.d.ts +18199 -0
- package/dist/generated/global-types.d.ts.map +1 -0
- package/dist/generated/wspace-operations.d.ts +2 -0
- package/dist/generated/wspace-operations.d.ts.map +1 -0
- package/dist/generated/wspace-types.d.ts +43046 -0
- package/dist/generated/wspace-types.d.ts.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/package.json +107 -0
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { createContext as e, useContext as t, useMemo as n } from "react";
|
|
2
|
+
import { MemoryRouter as r } from "react-router-dom";
|
|
3
|
+
import { QueryClient as i, QueryClientProvider as a } from "@tanstack/react-query";
|
|
4
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
5
|
+
//#region src/brainyrich/providers/BrainyRichProvider.tsx
|
|
6
|
+
var s = e(null), c = () => {
|
|
7
|
+
let e = t(s);
|
|
8
|
+
if (!e) throw Error("useBrainyRich must be used within BrainyRichProvider");
|
|
9
|
+
return e;
|
|
10
|
+
}, l = ({ children: e, ...t }) => {
|
|
11
|
+
let c = /* @__PURE__ */ o(a, {
|
|
12
|
+
client: n(() => new i({ defaultOptions: { queries: {
|
|
13
|
+
retry: 1,
|
|
14
|
+
refetchOnWindowFocus: !1,
|
|
15
|
+
staleTime: 300 * 1e3
|
|
16
|
+
} } }), []),
|
|
17
|
+
children: /* @__PURE__ */ o(s.Provider, {
|
|
18
|
+
value: t,
|
|
19
|
+
children: e
|
|
20
|
+
})
|
|
21
|
+
});
|
|
22
|
+
return t.basePath ? c : /* @__PURE__ */ o(r, { children: c });
|
|
23
|
+
};
|
|
24
|
+
//#endregion
|
|
25
|
+
export { l as BrainyRichProvider, c as useBrainyRich };
|
|
26
|
+
|
|
27
|
+
//# sourceMappingURL=BrainyRichProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrainyRichProvider.js","names":[],"sources":["../../../src/brainyrich/providers/BrainyRichProvider.tsx"],"sourcesContent":["import type { FC, PropsWithChildren } from 'react';\nimport { createContext, useContext, useMemo } from 'react';\nimport { MemoryRouter } from 'react-router-dom';\nimport { QueryClient, QueryClientProvider } from '@tanstack/react-query';\nimport type { BrainyRichRootProps } from '../types';\n\ntype BrainyRichContextValue = BrainyRichRootProps;\n\nconst BrainyRichContext = createContext<BrainyRichContextValue | null>(null);\n\nexport const useBrainyRich = () => {\n const context = useContext(BrainyRichContext);\n if (!context) throw new Error('useBrainyRich must be used within BrainyRichProvider');\n return context;\n};\n\nexport const BrainyRichProvider: FC<PropsWithChildren<BrainyRichRootProps>> = ({\n children,\n ...props\n}) => {\n const queryClient = useMemo(\n () =>\n new QueryClient({\n defaultOptions: {\n queries: { retry: 1, refetchOnWindowFocus: false, staleTime: 5 * 60 * 1000 },\n },\n }),\n []\n );\n\n const content = (\n <QueryClientProvider client={queryClient}>\n <BrainyRichContext.Provider value={props}>{children}</BrainyRichContext.Provider>\n </QueryClientProvider>\n );\n\n if (props.basePath) return content;\n return <MemoryRouter>{content}</MemoryRouter>;\n};\n"],"mappings":";;;;;AAQA,IAAM,IAAoB,EAA6C,KAAK,EAE/D,UAAsB;CACjC,IAAM,IAAU,EAAW,EAAkB;AAC7C,KAAI,CAAC,EAAS,OAAU,MAAM,uDAAuD;AACrF,QAAO;GAGI,KAAkE,EAC7E,aACA,GAAG,QACC;CAWJ,IAAM,IACJ,kBAAC,GAAD;EAAqB,QAXH,QAEhB,IAAI,EAAY,EACd,gBAAgB,EACd,SAAS;GAAE,OAAO;GAAG,sBAAsB;GAAO,WAAW,MAAS;GAAM,EAC7E,EACF,CAAC,EACJ,EAAE,CACH;YAIG,kBAAC,EAAkB,UAAnB;GAA4B,OAAO;GAAQ;GAAsC,CAAA;EAC7D,CAAA;AAIxB,QADI,EAAM,WAAiB,IACpB,kBAAC,GAAD,EAAA,UAAe,GAAuB,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Advisor, FinancialGoal, Holding, InsurancePolicy, LinkedAccount, MarketplaceItem, OverviewMetric, Portfolio, ReportItem, RiskAlert, TaxDocument, WorkItem } from '../types';
|
|
2
|
+
|
|
3
|
+
interface BrainyRichState {
|
|
4
|
+
metrics: OverviewMetric[];
|
|
5
|
+
workItems: WorkItem[];
|
|
6
|
+
portfolios: Portfolio[];
|
|
7
|
+
holdings: Holding[];
|
|
8
|
+
goals: FinancialGoal[];
|
|
9
|
+
accounts: LinkedAccount[];
|
|
10
|
+
policies: InsurancePolicy[];
|
|
11
|
+
taxDocs: TaxDocument[];
|
|
12
|
+
advisors: Advisor[];
|
|
13
|
+
marketplace: MarketplaceItem[];
|
|
14
|
+
risks: RiskAlert[];
|
|
15
|
+
reports: ReportItem[];
|
|
16
|
+
}
|
|
17
|
+
export declare const useBrainyRichStore: import('zustand').UseBoundStore<import('zustand').StoreApi<BrainyRichState>>;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=brainyrichStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brainyrichStore.d.ts","sourceRoot":"","sources":["../../../src/brainyrich/store/brainyrichStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EACb,OAAO,EACP,eAAe,EACf,aAAa,EACb,eAAe,EACf,cAAc,EACd,SAAS,EACT,UAAU,EACV,SAAS,EACT,WAAW,EACX,QAAQ,EACT,MAAM,UAAU,CAAC;AAElB,UAAU,eAAe;IACvB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,WAAW,EAAE,eAAe,EAAE,CAAC;IAC/B,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,eAAO,MAAM,kBAAkB,8EAuK5B,CAAC"}
|
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
import { create as e } from "zustand";
|
|
2
|
+
//#region src/brainyrich/store/brainyrichStore.ts
|
|
3
|
+
var t = e(() => ({
|
|
4
|
+
metrics: [
|
|
5
|
+
{
|
|
6
|
+
label: "Net Worth",
|
|
7
|
+
value: "$1.28M",
|
|
8
|
+
trend: "+6.2%"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
label: "Invested Assets",
|
|
12
|
+
value: "$948K",
|
|
13
|
+
trend: "+3.9%"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
label: "Liquidity",
|
|
17
|
+
value: "$142K",
|
|
18
|
+
trend: "+1.1%"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
label: "Goal Completion",
|
|
22
|
+
value: "68%",
|
|
23
|
+
trend: "+7.4%"
|
|
24
|
+
}
|
|
25
|
+
],
|
|
26
|
+
workItems: [
|
|
27
|
+
{
|
|
28
|
+
id: "w1",
|
|
29
|
+
title: "Rebalance growth portfolio for Q2 volatility",
|
|
30
|
+
status: "active",
|
|
31
|
+
owner: "Investment Desk",
|
|
32
|
+
updatedAt: "2h ago"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
id: "w2",
|
|
36
|
+
title: "Finalize estate nominee update workflow",
|
|
37
|
+
status: "planned",
|
|
38
|
+
owner: "Wealth Operations",
|
|
39
|
+
updatedAt: "5h ago"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
id: "w3",
|
|
43
|
+
title: "Validate tax-loss harvesting opportunities",
|
|
44
|
+
status: "at_risk",
|
|
45
|
+
owner: "Tax Advisory",
|
|
46
|
+
updatedAt: "1d ago"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
id: "w4",
|
|
50
|
+
title: "Publish annual risk posture summary",
|
|
51
|
+
status: "completed",
|
|
52
|
+
owner: "Risk Team",
|
|
53
|
+
updatedAt: "2d ago"
|
|
54
|
+
}
|
|
55
|
+
],
|
|
56
|
+
portfolios: [
|
|
57
|
+
{
|
|
58
|
+
id: "p1",
|
|
59
|
+
name: "Growth Portfolio",
|
|
60
|
+
value: 485e3,
|
|
61
|
+
ytdReturnPct: 12.4,
|
|
62
|
+
risk: "High"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
id: "p2",
|
|
66
|
+
name: "Balanced Income",
|
|
67
|
+
value: 322e3,
|
|
68
|
+
ytdReturnPct: 8.1,
|
|
69
|
+
risk: "Moderate"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
id: "p3",
|
|
73
|
+
name: "Capital Preservation",
|
|
74
|
+
value: 141e3,
|
|
75
|
+
ytdReturnPct: 5.2,
|
|
76
|
+
risk: "Low"
|
|
77
|
+
}
|
|
78
|
+
],
|
|
79
|
+
holdings: [
|
|
80
|
+
{
|
|
81
|
+
symbol: "AAPL",
|
|
82
|
+
name: "Apple Inc.",
|
|
83
|
+
sector: "Technology",
|
|
84
|
+
marketValue: 74250,
|
|
85
|
+
changePct: 2.3
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
symbol: "MSFT",
|
|
89
|
+
name: "Microsoft Corp.",
|
|
90
|
+
sector: "Technology",
|
|
91
|
+
marketValue: 68510,
|
|
92
|
+
changePct: 1.1
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
symbol: "VTI",
|
|
96
|
+
name: "Vanguard Total Market ETF",
|
|
97
|
+
sector: "Index",
|
|
98
|
+
marketValue: 113400,
|
|
99
|
+
changePct: .6
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
symbol: "HDFC",
|
|
103
|
+
name: "HDFC Bank",
|
|
104
|
+
sector: "Financial",
|
|
105
|
+
marketValue: 42900,
|
|
106
|
+
changePct: -.8
|
|
107
|
+
}
|
|
108
|
+
],
|
|
109
|
+
goals: [
|
|
110
|
+
{
|
|
111
|
+
id: "g1",
|
|
112
|
+
title: "Retirement Corpus",
|
|
113
|
+
targetAmount: 25e5,
|
|
114
|
+
currentAmount: 154e4,
|
|
115
|
+
deadline: "2035-12-31"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
id: "g2",
|
|
119
|
+
title: "Child Education Fund",
|
|
120
|
+
targetAmount: 8e5,
|
|
121
|
+
currentAmount: 364e3,
|
|
122
|
+
deadline: "2030-06-30"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
id: "g3",
|
|
126
|
+
title: "Second Home Downpayment",
|
|
127
|
+
targetAmount: 45e4,
|
|
128
|
+
currentAmount: 198e3,
|
|
129
|
+
deadline: "2028-03-31"
|
|
130
|
+
}
|
|
131
|
+
],
|
|
132
|
+
accounts: [
|
|
133
|
+
{
|
|
134
|
+
id: "a1",
|
|
135
|
+
institution: "HDFC Securities",
|
|
136
|
+
type: "Brokerage",
|
|
137
|
+
balance: 526300,
|
|
138
|
+
status: "Connected"
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
id: "a2",
|
|
142
|
+
institution: "ICICI Bank",
|
|
143
|
+
type: "Savings",
|
|
144
|
+
balance: 94200,
|
|
145
|
+
status: "Connected"
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
id: "a3",
|
|
149
|
+
institution: "EPF Trust",
|
|
150
|
+
type: "Retirement",
|
|
151
|
+
balance: 317500,
|
|
152
|
+
status: "Sync Needed"
|
|
153
|
+
}
|
|
154
|
+
],
|
|
155
|
+
policies: [{
|
|
156
|
+
id: "i1",
|
|
157
|
+
name: "Term Life 2Cr",
|
|
158
|
+
provider: "HDFC Life",
|
|
159
|
+
coverage: 2e7,
|
|
160
|
+
annualPremium: 18200
|
|
161
|
+
}, {
|
|
162
|
+
id: "i2",
|
|
163
|
+
name: "Family Health Floater",
|
|
164
|
+
provider: "Star Health",
|
|
165
|
+
coverage: 15e5,
|
|
166
|
+
annualPremium: 26300
|
|
167
|
+
}],
|
|
168
|
+
taxDocs: [
|
|
169
|
+
{
|
|
170
|
+
id: "t1",
|
|
171
|
+
name: "Form 16 - FY 24-25",
|
|
172
|
+
taxYear: "2024-25",
|
|
173
|
+
status: "Uploaded"
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
id: "t2",
|
|
177
|
+
name: "Capital Gains Statement",
|
|
178
|
+
taxYear: "2024-25",
|
|
179
|
+
status: "Uploaded"
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
id: "t3",
|
|
183
|
+
name: "Rental Income Proof",
|
|
184
|
+
taxYear: "2024-25",
|
|
185
|
+
status: "Pending"
|
|
186
|
+
}
|
|
187
|
+
],
|
|
188
|
+
advisors: [
|
|
189
|
+
{
|
|
190
|
+
id: "d1",
|
|
191
|
+
name: "Riya Narayanan",
|
|
192
|
+
specialization: "Retirement Planning",
|
|
193
|
+
rating: 4.8
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
id: "d2",
|
|
197
|
+
name: "Arjun Mehta",
|
|
198
|
+
specialization: "Tax Optimization",
|
|
199
|
+
rating: 4.7
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
id: "d3",
|
|
203
|
+
name: "Naina Kapoor",
|
|
204
|
+
specialization: "Estate Planning",
|
|
205
|
+
rating: 4.9
|
|
206
|
+
}
|
|
207
|
+
],
|
|
208
|
+
marketplace: [
|
|
209
|
+
{
|
|
210
|
+
id: "m1",
|
|
211
|
+
name: "Aggressive SIP Pack",
|
|
212
|
+
category: "Mutual Funds",
|
|
213
|
+
price: "Starts $300/mo"
|
|
214
|
+
},
|
|
215
|
+
{
|
|
216
|
+
id: "m2",
|
|
217
|
+
name: "Retirement Readiness Bundle",
|
|
218
|
+
category: "Advisory",
|
|
219
|
+
price: "$899 annual"
|
|
220
|
+
},
|
|
221
|
+
{
|
|
222
|
+
id: "m3",
|
|
223
|
+
name: "Tax Filing Concierge",
|
|
224
|
+
category: "Tax",
|
|
225
|
+
price: "$149 per filing"
|
|
226
|
+
}
|
|
227
|
+
],
|
|
228
|
+
risks: [
|
|
229
|
+
{
|
|
230
|
+
id: "r1",
|
|
231
|
+
title: "Equity concentration above policy band",
|
|
232
|
+
severity: "High",
|
|
233
|
+
description: "Technology exposure exceeded 34% threshold."
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
id: "r2",
|
|
237
|
+
title: "Insurance under-coverage for dependents",
|
|
238
|
+
severity: "Medium",
|
|
239
|
+
description: "Life cover recommended to increase by 25%."
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
id: "r3",
|
|
243
|
+
title: "Emergency corpus runway",
|
|
244
|
+
severity: "Low",
|
|
245
|
+
description: "Current liquid reserve covers 5.6 months."
|
|
246
|
+
}
|
|
247
|
+
],
|
|
248
|
+
reports: [
|
|
249
|
+
{
|
|
250
|
+
id: "rp1",
|
|
251
|
+
title: "Monthly Wealth Snapshot",
|
|
252
|
+
period: "May 2026",
|
|
253
|
+
generatedAt: "2026-06-01"
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
id: "rp2",
|
|
257
|
+
title: "Tax Planning Projection",
|
|
258
|
+
period: "FY 2026-27",
|
|
259
|
+
generatedAt: "2026-05-20"
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
id: "rp3",
|
|
263
|
+
title: "Family Goal Progress",
|
|
264
|
+
period: "Q2 2026",
|
|
265
|
+
generatedAt: "2026-05-15"
|
|
266
|
+
}
|
|
267
|
+
]
|
|
268
|
+
}));
|
|
269
|
+
//#endregion
|
|
270
|
+
export { t as useBrainyRichStore };
|
|
271
|
+
|
|
272
|
+
//# sourceMappingURL=brainyrichStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brainyrichStore.js","names":[],"sources":["../../../src/brainyrich/store/brainyrichStore.ts"],"sourcesContent":["import { create } from 'zustand';\nimport type {\n Advisor,\n FinancialGoal,\n Holding,\n InsurancePolicy,\n LinkedAccount,\n MarketplaceItem,\n OverviewMetric,\n Portfolio,\n ReportItem,\n RiskAlert,\n TaxDocument,\n WorkItem,\n} from '../types';\n\ninterface BrainyRichState {\n metrics: OverviewMetric[];\n workItems: WorkItem[];\n portfolios: Portfolio[];\n holdings: Holding[];\n goals: FinancialGoal[];\n accounts: LinkedAccount[];\n policies: InsurancePolicy[];\n taxDocs: TaxDocument[];\n advisors: Advisor[];\n marketplace: MarketplaceItem[];\n risks: RiskAlert[];\n reports: ReportItem[];\n}\n\nexport const useBrainyRichStore = create<BrainyRichState>(() => ({\n metrics: [\n { label: 'Net Worth', value: '$1.28M', trend: '+6.2%' },\n { label: 'Invested Assets', value: '$948K', trend: '+3.9%' },\n { label: 'Liquidity', value: '$142K', trend: '+1.1%' },\n { label: 'Goal Completion', value: '68%', trend: '+7.4%' },\n ],\n workItems: [\n {\n id: 'w1',\n title: 'Rebalance growth portfolio for Q2 volatility',\n status: 'active',\n owner: 'Investment Desk',\n updatedAt: '2h ago',\n },\n {\n id: 'w2',\n title: 'Finalize estate nominee update workflow',\n status: 'planned',\n owner: 'Wealth Operations',\n updatedAt: '5h ago',\n },\n {\n id: 'w3',\n title: 'Validate tax-loss harvesting opportunities',\n status: 'at_risk',\n owner: 'Tax Advisory',\n updatedAt: '1d ago',\n },\n {\n id: 'w4',\n title: 'Publish annual risk posture summary',\n status: 'completed',\n owner: 'Risk Team',\n updatedAt: '2d ago',\n },\n ],\n portfolios: [\n { id: 'p1', name: 'Growth Portfolio', value: 485000, ytdReturnPct: 12.4, risk: 'High' },\n { id: 'p2', name: 'Balanced Income', value: 322000, ytdReturnPct: 8.1, risk: 'Moderate' },\n { id: 'p3', name: 'Capital Preservation', value: 141000, ytdReturnPct: 5.2, risk: 'Low' },\n ],\n holdings: [\n {\n symbol: 'AAPL',\n name: 'Apple Inc.',\n sector: 'Technology',\n marketValue: 74250,\n changePct: 2.3,\n },\n {\n symbol: 'MSFT',\n name: 'Microsoft Corp.',\n sector: 'Technology',\n marketValue: 68510,\n changePct: 1.1,\n },\n {\n symbol: 'VTI',\n name: 'Vanguard Total Market ETF',\n sector: 'Index',\n marketValue: 113400,\n changePct: 0.6,\n },\n { symbol: 'HDFC', name: 'HDFC Bank', sector: 'Financial', marketValue: 42900, changePct: -0.8 },\n ],\n goals: [\n {\n id: 'g1',\n title: 'Retirement Corpus',\n targetAmount: 2500000,\n currentAmount: 1540000,\n deadline: '2035-12-31',\n },\n {\n id: 'g2',\n title: 'Child Education Fund',\n targetAmount: 800000,\n currentAmount: 364000,\n deadline: '2030-06-30',\n },\n {\n id: 'g3',\n title: 'Second Home Downpayment',\n targetAmount: 450000,\n currentAmount: 198000,\n deadline: '2028-03-31',\n },\n ],\n accounts: [\n {\n id: 'a1',\n institution: 'HDFC Securities',\n type: 'Brokerage',\n balance: 526300,\n status: 'Connected',\n },\n { id: 'a2', institution: 'ICICI Bank', type: 'Savings', balance: 94200, status: 'Connected' },\n {\n id: 'a3',\n institution: 'EPF Trust',\n type: 'Retirement',\n balance: 317500,\n status: 'Sync Needed',\n },\n ],\n policies: [\n {\n id: 'i1',\n name: 'Term Life 2Cr',\n provider: 'HDFC Life',\n coverage: 20000000,\n annualPremium: 18200,\n },\n {\n id: 'i2',\n name: 'Family Health Floater',\n provider: 'Star Health',\n coverage: 1500000,\n annualPremium: 26300,\n },\n ],\n taxDocs: [\n { id: 't1', name: 'Form 16 - FY 24-25', taxYear: '2024-25', status: 'Uploaded' },\n { id: 't2', name: 'Capital Gains Statement', taxYear: '2024-25', status: 'Uploaded' },\n { id: 't3', name: 'Rental Income Proof', taxYear: '2024-25', status: 'Pending' },\n ],\n advisors: [\n { id: 'd1', name: 'Riya Narayanan', specialization: 'Retirement Planning', rating: 4.8 },\n { id: 'd2', name: 'Arjun Mehta', specialization: 'Tax Optimization', rating: 4.7 },\n { id: 'd3', name: 'Naina Kapoor', specialization: 'Estate Planning', rating: 4.9 },\n ],\n marketplace: [\n { id: 'm1', name: 'Aggressive SIP Pack', category: 'Mutual Funds', price: 'Starts $300/mo' },\n { id: 'm2', name: 'Retirement Readiness Bundle', category: 'Advisory', price: '$899 annual' },\n { id: 'm3', name: 'Tax Filing Concierge', category: 'Tax', price: '$149 per filing' },\n ],\n risks: [\n {\n id: 'r1',\n title: 'Equity concentration above policy band',\n severity: 'High',\n description: 'Technology exposure exceeded 34% threshold.',\n },\n {\n id: 'r2',\n title: 'Insurance under-coverage for dependents',\n severity: 'Medium',\n description: 'Life cover recommended to increase by 25%.',\n },\n {\n id: 'r3',\n title: 'Emergency corpus runway',\n severity: 'Low',\n description: 'Current liquid reserve covers 5.6 months.',\n },\n ],\n reports: [\n { id: 'rp1', title: 'Monthly Wealth Snapshot', period: 'May 2026', generatedAt: '2026-06-01' },\n {\n id: 'rp2',\n title: 'Tax Planning Projection',\n period: 'FY 2026-27',\n generatedAt: '2026-05-20',\n },\n { id: 'rp3', title: 'Family Goal Progress', period: 'Q2 2026', generatedAt: '2026-05-15' },\n ],\n}));\n"],"mappings":"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"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface NavItem {
|
|
4
|
+
id: string;
|
|
5
|
+
label: string;
|
|
6
|
+
path: string;
|
|
7
|
+
icon?: React.ReactNode;
|
|
8
|
+
order?: number;
|
|
9
|
+
group?: string;
|
|
10
|
+
children?: NavItem[];
|
|
11
|
+
}
|
|
12
|
+
export interface FooterItem {
|
|
13
|
+
id: string;
|
|
14
|
+
label: string;
|
|
15
|
+
type: 'status' | 'action';
|
|
16
|
+
order?: number;
|
|
17
|
+
section: 'left' | 'center' | 'right';
|
|
18
|
+
}
|
|
19
|
+
export interface BrainyRichRootProps {
|
|
20
|
+
basePath?: string;
|
|
21
|
+
workspaceId?: string;
|
|
22
|
+
tenantId?: string;
|
|
23
|
+
apiGatewayUrl?: string;
|
|
24
|
+
authToken?: string;
|
|
25
|
+
navigate?: (path: string) => void;
|
|
26
|
+
currentUser?: {
|
|
27
|
+
id: string;
|
|
28
|
+
email: string;
|
|
29
|
+
firstName?: string;
|
|
30
|
+
lastName?: string;
|
|
31
|
+
avatar?: string;
|
|
32
|
+
username?: string;
|
|
33
|
+
name?: string;
|
|
34
|
+
role?: string;
|
|
35
|
+
} | null;
|
|
36
|
+
registerNavItems?: (items: NavItem | NavItem[]) => () => void;
|
|
37
|
+
registerFooterItems?: (items: FooterItem | FooterItem[]) => () => void;
|
|
38
|
+
}
|
|
39
|
+
export interface OverviewMetric {
|
|
40
|
+
label: string;
|
|
41
|
+
value: string;
|
|
42
|
+
trend: string;
|
|
43
|
+
}
|
|
44
|
+
export interface WorkItem {
|
|
45
|
+
id: string;
|
|
46
|
+
title: string;
|
|
47
|
+
status: 'active' | 'planned' | 'at_risk' | 'completed';
|
|
48
|
+
owner: string;
|
|
49
|
+
updatedAt: string;
|
|
50
|
+
}
|
|
51
|
+
export interface Portfolio {
|
|
52
|
+
id: string;
|
|
53
|
+
name: string;
|
|
54
|
+
value: number;
|
|
55
|
+
ytdReturnPct: number;
|
|
56
|
+
risk: 'Low' | 'Moderate' | 'High';
|
|
57
|
+
}
|
|
58
|
+
export interface Holding {
|
|
59
|
+
symbol: string;
|
|
60
|
+
name: string;
|
|
61
|
+
sector: string;
|
|
62
|
+
marketValue: number;
|
|
63
|
+
changePct: number;
|
|
64
|
+
}
|
|
65
|
+
export interface FinancialGoal {
|
|
66
|
+
id: string;
|
|
67
|
+
title: string;
|
|
68
|
+
targetAmount: number;
|
|
69
|
+
currentAmount: number;
|
|
70
|
+
deadline: string;
|
|
71
|
+
}
|
|
72
|
+
export interface LinkedAccount {
|
|
73
|
+
id: string;
|
|
74
|
+
institution: string;
|
|
75
|
+
type: string;
|
|
76
|
+
balance: number;
|
|
77
|
+
status: 'Connected' | 'Sync Needed';
|
|
78
|
+
}
|
|
79
|
+
export interface InsurancePolicy {
|
|
80
|
+
id: string;
|
|
81
|
+
name: string;
|
|
82
|
+
provider: string;
|
|
83
|
+
coverage: number;
|
|
84
|
+
annualPremium: number;
|
|
85
|
+
}
|
|
86
|
+
export interface TaxDocument {
|
|
87
|
+
id: string;
|
|
88
|
+
name: string;
|
|
89
|
+
taxYear: string;
|
|
90
|
+
status: 'Uploaded' | 'Pending';
|
|
91
|
+
}
|
|
92
|
+
export interface Advisor {
|
|
93
|
+
id: string;
|
|
94
|
+
name: string;
|
|
95
|
+
specialization: string;
|
|
96
|
+
rating: number;
|
|
97
|
+
}
|
|
98
|
+
export interface MarketplaceItem {
|
|
99
|
+
id: string;
|
|
100
|
+
name: string;
|
|
101
|
+
category: string;
|
|
102
|
+
price: string;
|
|
103
|
+
}
|
|
104
|
+
export interface RiskAlert {
|
|
105
|
+
id: string;
|
|
106
|
+
title: string;
|
|
107
|
+
severity: 'Low' | 'Medium' | 'High';
|
|
108
|
+
description: string;
|
|
109
|
+
}
|
|
110
|
+
export interface ReportItem {
|
|
111
|
+
id: string;
|
|
112
|
+
title: string;
|
|
113
|
+
period: string;
|
|
114
|
+
generatedAt: string;
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/brainyrich/types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cn.d.ts","sourceRoot":"","sources":["../../../src/brainyrich/utils/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAG7C,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { I18nContextValue } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';
|
|
2
|
+
|
|
3
|
+
type TranslationParams = Record<string, string | number>;
|
|
4
|
+
export declare function tWithFallback(t: I18nContextValue['t'], key: string, fallback: string, params?: TranslationParams): string;
|
|
5
|
+
export {};
|
|
6
|
+
//# sourceMappingURL=i18n.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../src/brainyrich/utils/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wDAAwD,CAAC;AAE/F,KAAK,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;AAazD,wBAAgB,aAAa,CAC3B,CAAC,EAAE,gBAAgB,CAAC,GAAG,CAAC,EACxB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,iBAAiB,GACzB,MAAM,CAGR"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
//#region src/brainyrich/utils/i18n.ts
|
|
2
|
+
function e(e, t) {
|
|
3
|
+
return t ? e.replace(/\{(\w+)\}/g, (e, n) => {
|
|
4
|
+
let r = t[n];
|
|
5
|
+
return r == null ? e : String(r);
|
|
6
|
+
}) : e;
|
|
7
|
+
}
|
|
8
|
+
function t(t, n, r, i) {
|
|
9
|
+
let a = t(n, i);
|
|
10
|
+
return a === n ? e(r, i) : a;
|
|
11
|
+
}
|
|
12
|
+
//#endregion
|
|
13
|
+
export { t as tWithFallback };
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=i18n.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.js","names":[],"sources":["../../../src/brainyrich/utils/i18n.ts"],"sourcesContent":["import type { I18nContextValue } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';\n\ntype TranslationParams = Record<string, string | number>;\n\nfunction interpolateFallback(fallback: string, params?: TranslationParams): string {\n if (!params) {\n return fallback;\n }\n\n return fallback.replace(/\\{(\\w+)\\}/g, (match, key: string) => {\n const value = params[key];\n return value == null ? match : String(value);\n });\n}\n\nexport function tWithFallback(\n t: I18nContextValue['t'],\n key: string,\n fallback: string,\n params?: TranslationParams\n): string {\n const translated = t(key, params);\n return translated === key ? interpolateFallback(fallback, params) : translated;\n}\n"],"mappings":";AAIA,SAAS,EAAoB,GAAkB,GAAoC;AAKjF,QAJK,IAIE,EAAS,QAAQ,eAAe,GAAO,MAAgB;EAC5D,IAAM,IAAQ,EAAO;AACrB,SAAO,KAAS,OAAO,IAAQ,OAAO,EAAM;GAC5C,GANO;;AASX,SAAgB,EACd,GACA,GACA,GACA,GACQ;CACR,IAAM,IAAa,EAAE,GAAK,EAAO;AACjC,QAAO,MAAe,IAAM,EAAoB,GAAU,EAAO,GAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../../src/brainyrich/utils/navigation.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAIvE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.js","names":[],"sources":["../../../src/brainyrich/utils/navigation.ts"],"sourcesContent":["export function joinPath(basePath: string, relativePath: string): string {\n const cleanBase = basePath.endsWith('/') ? basePath.slice(0, -1) : basePath;\n const cleanPath = relativePath.startsWith('/') ? relativePath : `/${relativePath}`;\n return cleanBase + cleanPath;\n}\n"],"mappings":";AAAA,SAAgB,EAAS,GAAkB,GAA8B;AAGvE,SAFkB,EAAS,SAAS,IAAI,GAAG,EAAS,MAAM,GAAG,GAAG,GAAG,MACjD,EAAa,WAAW,IAAI,GAAG,IAAe,IAAI"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/dev/main.tsx"],"names":[],"mappings":"AAIA,OAAO,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-operations.d.ts","sourceRoot":"","sources":["../../src/generated/global-operations.ts"],"names":[],"mappings":""}
|