@mx-cartographer/experiences 7.4.17-alpha.mega1 → 7.4.17
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/CHANGELOG.md +2 -2
- package/dist/LineChart-BQRxZF3p.mjs +581 -0
- package/dist/accounts/index.es.js +1 -1
- package/dist/common/components/charts/linechart/CustomTooltip.d.ts +1 -6
- package/dist/common/components/charts/stackedlinechart/CustomPointTooltip.d.ts +2 -5
- package/dist/debts/index.es.js +198 -195
- package/dist/finstrong/components/shared/CustomDoubleBarPlot.d.ts +3 -2
- package/dist/finstrong/index.es.js +664 -671
- package/dist/networth/index.es.js +2 -2
- package/dist/trends/index.es.js +473 -476
- package/package.json +2 -2
- package/dist/LineChart-Ck3RRxi_.mjs +0 -580
|
@@ -1,109 +1,109 @@
|
|
|
1
|
-
import { jsxs as a, Fragment as
|
|
1
|
+
import { jsxs as a, Fragment as G, jsx as e } from "react/jsx-runtime";
|
|
2
2
|
import k from "@mui/material/Box";
|
|
3
3
|
import p from "@mui/material/Stack";
|
|
4
|
-
import { useTheme as
|
|
5
|
-
import { PieChart as
|
|
6
|
-
import { P as M, H3 as K, Text as I, InstitutionLogo as lt, H2 as Le, MerchantLogo as rn, Icon as an } from "@mxenabled/mxui";
|
|
4
|
+
import { useTheme as E, alpha as fe } from "@mui/material/styles";
|
|
5
|
+
import { PieChart as rn, BarPlot as an } from "@mui/x-charts";
|
|
7
6
|
import { TrendingUp as dt, ArrowRightAlt as sn, TrendingDown as cn, AccountBalance as pt, ChevronRight as J, MultilineChart as _t, CreditCard as He, CheckCircle as ln, Cancel as dn, Savings as pn, ContentCopy as _n, Add as ht, Cardiology as hn, Payments as un, CalendarMonth as mn, ExpandMore as gn } from "@mxenabled/mx-icons";
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
7
|
+
import { P as M, H3 as K, Text as I, InstitutionLogo as ut, H2 as Le, MerchantLogo as yn, Icon as bn } from "@mxenabled/mxui";
|
|
8
|
+
import { g as fn, a as xn, r as et, b as Sn, c as Ne, d as mt, C as we, e as ke, f as Cn, h as vn, i as wn, j as gt, k as tt, l as kn, m as nt, n as Mn, o as yt, p as Dn, q as bt, s as Oe, t as ft, u as In, v as xt, w as An, A as ne, x as Tn, P as On } from "../FinstrongStore-BIrX0Xg2.mjs";
|
|
9
|
+
import { y as Si, F as Ci } from "../FinstrongStore-BIrX0Xg2.mjs";
|
|
10
10
|
import * as ot from "d3";
|
|
11
11
|
import { observer as v } from "mobx-react-lite";
|
|
12
|
-
import { u as
|
|
12
|
+
import { u as x, b as q, a as je, o as ee, z as L, p as Rn, d as Se, m as Ke, f as Fn, j as Ve, h as Ln, i as Pn } from "../hooks-ZMp65DFz.mjs";
|
|
13
13
|
import { L as te } from "../Loader-DUaFpDGv.mjs";
|
|
14
14
|
import m from "react";
|
|
15
|
-
import
|
|
15
|
+
import B from "@mui/material/Button";
|
|
16
16
|
import V from "@mui/material/Card";
|
|
17
|
-
import { L as Ye } from "../LineChart-
|
|
18
|
-
import { C as
|
|
19
|
-
import { l as re, g as
|
|
17
|
+
import { L as Ye } from "../LineChart-BQRxZF3p.mjs";
|
|
18
|
+
import { C as St } from "../ConnectionsDrawer-VmuVFHbL.mjs";
|
|
19
|
+
import { l as re, g as Ct, A as Ge } from "../ConnectDrawer-BkvlItWx.mjs";
|
|
20
20
|
import se from "@mui/material/Tab";
|
|
21
21
|
import Xe from "@mui/material/Tabs";
|
|
22
22
|
import Re from "@mui/material/TextField";
|
|
23
23
|
import { u as qe } from "../useScreenSize-B6JyS_Lj.mjs";
|
|
24
|
-
import { D as
|
|
25
|
-
import { u as
|
|
26
|
-
import
|
|
24
|
+
import { D as Bn, f as Wn, a as $n } from "../Dialog-BPTr3qHE.mjs";
|
|
25
|
+
import { u as vt } from "../useDimensions-27p2evRx.mjs";
|
|
26
|
+
import zn from "@mui/material/Chip";
|
|
27
27
|
import { D as oe } from "../Drawer-By9V-B5L.mjs";
|
|
28
28
|
import le from "@mui/material/Divider";
|
|
29
29
|
import ye from "@mui/material/ListItem";
|
|
30
|
-
import
|
|
30
|
+
import wt from "@mui/material/ListItemAvatar";
|
|
31
31
|
import be from "@mui/material/ListItemText";
|
|
32
|
-
import { g as
|
|
33
|
-
import
|
|
34
|
-
import
|
|
35
|
-
import
|
|
32
|
+
import { g as kt } from "../AccountFields-zCMqet85.mjs";
|
|
33
|
+
import Ee from "@mui/material/List";
|
|
34
|
+
import Gn from "@mui/material/ListItemButton";
|
|
35
|
+
import En from "@mui/material/ListSubheader";
|
|
36
36
|
import { f as W } from "../NumberFormatting-DjTD0t3W.mjs";
|
|
37
37
|
import { b as j } from "../Localization-2MODESHW.mjs";
|
|
38
|
-
import { S as rt, F as
|
|
39
|
-
import { S as
|
|
40
|
-
import { h as
|
|
41
|
-
import { T as
|
|
38
|
+
import { S as rt, F as Mt, e as Hn, R as Dt } from "../RecurringTransactions-BqijW_8S.mjs";
|
|
39
|
+
import { S as Nn } from "../StatusBar-BK_uYHAB.mjs";
|
|
40
|
+
import { h as It } from "../DateUtil-CBdcsyuk.mjs";
|
|
41
|
+
import { T as jn, s as Kn, h as Vn, S as Yn, c as Xn } from "../TransactionDetails-m5PddMQn.mjs";
|
|
42
42
|
import { T as ce } from "../TabContentContainer-j01JYR_7.mjs";
|
|
43
43
|
import { E as Fe } from "../EmptyState-DoxNUae-.mjs";
|
|
44
|
-
import
|
|
45
|
-
import { BarPlot as Xn } from "@mui/x-charts/BarChart";
|
|
46
|
-
import { ChartContainer as qn } from "@mui/x-charts/ChartContainer";
|
|
44
|
+
import qn from "@mui/material/useMediaQuery";
|
|
47
45
|
import { ChartsXAxis as Un } from "@mui/x-charts/ChartsXAxis";
|
|
48
46
|
import { ChartsYAxis as Qn } from "@mui/x-charts/ChartsYAxis";
|
|
49
|
-
import {
|
|
50
|
-
import {
|
|
51
|
-
import {
|
|
52
|
-
import {
|
|
53
|
-
import {
|
|
54
|
-
import {
|
|
55
|
-
import {
|
|
56
|
-
import {
|
|
57
|
-
import {
|
|
58
|
-
import {
|
|
59
|
-
import {
|
|
60
|
-
import {
|
|
61
|
-
import {
|
|
62
|
-
import uo from "@mui/
|
|
63
|
-
import
|
|
64
|
-
import
|
|
65
|
-
import bo from "@mui/lab/
|
|
66
|
-
import fo from "@mui/lab/
|
|
67
|
-
import xo from "@mui/lab/
|
|
68
|
-
import So from "@mui/
|
|
69
|
-
import Co from "@mui/
|
|
70
|
-
import vo from "@mui/material/
|
|
71
|
-
import wo from "@mui/material/
|
|
72
|
-
import
|
|
73
|
-
import
|
|
74
|
-
|
|
47
|
+
import { ResponsiveChartContainer as Zn } from "@mui/x-charts/ResponsiveChartContainer";
|
|
48
|
+
import { useSpring as Jn, animated as at } from "@react-spring/web";
|
|
49
|
+
import { startOfMonth as At } from "date-fns/startOfMonth";
|
|
50
|
+
import { endOfMonth as Tt } from "date-fns/endOfMonth";
|
|
51
|
+
import { g as eo, S as to, b as no } from "../SpendingLegend-CDO060GT.mjs";
|
|
52
|
+
import { formatISO as oo } from "date-fns/formatISO";
|
|
53
|
+
import { fromUnixTime as ro } from "date-fns/fromUnixTime";
|
|
54
|
+
import { startOfToday as it } from "date-fns/startOfToday";
|
|
55
|
+
import { subDays as ao } from "date-fns/subDays";
|
|
56
|
+
import { c as io, d as st, S as so, i as co } from "../ManageIncome-CaoQl609.mjs";
|
|
57
|
+
import { LocalizationProvider as lo, DatePicker as po, StaticDatePicker as _o } from "@mui/x-date-pickers";
|
|
58
|
+
import { AdapterDateFns as Ot } from "@mui/x-date-pickers/AdapterDateFnsV3";
|
|
59
|
+
import { R as ho } from "../RecurringSettings-B4ybrS0B.mjs";
|
|
60
|
+
import { LocalizationProvider as uo } from "@mui/x-date-pickers/LocalizationProvider";
|
|
61
|
+
import { format as mo } from "date-fns/format";
|
|
62
|
+
import go from "@mui/lab/Timeline";
|
|
63
|
+
import yo, { timelineItemClasses as bo } from "@mui/lab/TimelineItem";
|
|
64
|
+
import fo from "@mui/lab/TimelineConnector";
|
|
65
|
+
import xo from "@mui/lab/TimelineContent";
|
|
66
|
+
import So from "@mui/lab/TimelineDot";
|
|
67
|
+
import Co from "@mui/lab/TimelineSeparator";
|
|
68
|
+
import vo from "@mui/material/Accordion";
|
|
69
|
+
import wo from "@mui/material/AccordionDetails";
|
|
70
|
+
import ko from "@mui/material/AccordionSummary";
|
|
71
|
+
import Mo from "@mui/material/CardHeader";
|
|
72
|
+
import { u as Do } from "../useWidgetLoadTimer-hIOioiKx.mjs";
|
|
73
|
+
import { W as Io } from "../WidgetContainer-CoFDmQRE.mjs";
|
|
74
|
+
const Ao = ({
|
|
75
75
|
dialScoreData: t,
|
|
76
76
|
dataIndex: o,
|
|
77
77
|
arcColor: n,
|
|
78
78
|
arcStartAngle: r,
|
|
79
79
|
totalAngularSpan: s,
|
|
80
80
|
centerX: i,
|
|
81
|
-
centerY:
|
|
82
|
-
arcRadius:
|
|
81
|
+
centerY: l,
|
|
82
|
+
arcRadius: c,
|
|
83
83
|
innerArcRadius: _,
|
|
84
84
|
outterArcRadius: d,
|
|
85
|
-
progressEndAngle:
|
|
86
|
-
unitsPerSegment:
|
|
85
|
+
progressEndAngle: u,
|
|
86
|
+
unitsPerSegment: h,
|
|
87
87
|
isFinacialStrengthGraph: y
|
|
88
88
|
}) => {
|
|
89
|
-
const f =
|
|
89
|
+
const f = E(), w = [
|
|
90
90
|
{ offset: "13.62%", color: f.palette.chartMono.chartMono2 },
|
|
91
91
|
{ offset: "36.67%", color: f.palette.chartMono.chartMono3 },
|
|
92
92
|
{ offset: "59.72%", color: f.palette.chartMono.chartMono4 },
|
|
93
93
|
{ offset: "83.46%", color: f.palette.chartMono.chartMono5 }
|
|
94
|
-
], [
|
|
94
|
+
], [S, D] = fn(
|
|
95
95
|
t,
|
|
96
96
|
s,
|
|
97
97
|
r,
|
|
98
98
|
o
|
|
99
|
-
), [C, g] =
|
|
100
|
-
|
|
99
|
+
), [C, g] = xn(
|
|
100
|
+
S,
|
|
101
101
|
D,
|
|
102
102
|
o,
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
), b = ot.arc().innerRadius(_).outerRadius(d).startAngle(
|
|
106
|
-
return /* @__PURE__ */ a(
|
|
103
|
+
h,
|
|
104
|
+
u
|
|
105
|
+
), b = ot.arc().innerRadius(_).outerRadius(d).startAngle(S).endAngle(D).padAngle(0.02).cornerRadius(8), P = ot.arc().innerRadius(_).outerRadius(d).startAngle(C).endAngle(g).padAngle(0.02).cornerRadius(8);
|
|
106
|
+
return /* @__PURE__ */ a(G, { children: [
|
|
107
107
|
/* @__PURE__ */ e(
|
|
108
108
|
"path",
|
|
109
109
|
{
|
|
@@ -111,37 +111,37 @@ const Do = ({
|
|
|
111
111
|
fill: y ? f.palette.divider : n
|
|
112
112
|
}
|
|
113
113
|
),
|
|
114
|
-
y && /* @__PURE__ */ e("path", { d:
|
|
114
|
+
y && /* @__PURE__ */ e("path", { d: P({}), fill: "url(#arcGradient)" }),
|
|
115
115
|
/* @__PURE__ */ e("defs", { children: /* @__PURE__ */ e(
|
|
116
116
|
"linearGradient",
|
|
117
117
|
{
|
|
118
|
-
gradientTransform: `rotate(5, ${i}, ${
|
|
118
|
+
gradientTransform: `rotate(5, ${i}, ${l})`,
|
|
119
119
|
gradientUnits: "userSpaceOnUse",
|
|
120
120
|
id: "arcGradient",
|
|
121
|
-
x1: i +
|
|
122
|
-
x2: i -
|
|
123
|
-
y1:
|
|
124
|
-
y2:
|
|
125
|
-
children: w.map((
|
|
121
|
+
x1: i + c * 0.8 * Math.cos(Math.PI / 1.35),
|
|
122
|
+
x2: i - c * 0.8 * Math.cos(Math.PI / 1.35),
|
|
123
|
+
y1: l + c * 0.8 * Math.sin(Math.PI / 1.35),
|
|
124
|
+
y2: l - c * 0.8 * Math.sin(Math.PI / 1.35),
|
|
125
|
+
children: w.map((R, U) => /* @__PURE__ */ e("stop", { offset: R.offset, stopColor: R.color }, U))
|
|
126
126
|
}
|
|
127
127
|
) })
|
|
128
128
|
] });
|
|
129
|
-
},
|
|
129
|
+
}, Rt = ({
|
|
130
130
|
arcRadius: t = 100,
|
|
131
131
|
healthScore: o,
|
|
132
132
|
size: n = "L",
|
|
133
133
|
dialScoreData: r,
|
|
134
134
|
minValue: s = 0,
|
|
135
135
|
maxValue: i = 100,
|
|
136
|
-
margin:
|
|
137
|
-
markerColor:
|
|
136
|
+
margin: l,
|
|
137
|
+
markerColor: c,
|
|
138
138
|
healthScoreStatus: _,
|
|
139
139
|
footerCenterContent: d,
|
|
140
|
-
footerLeftContent:
|
|
141
|
-
footerRightContent:
|
|
140
|
+
footerLeftContent: u,
|
|
141
|
+
footerRightContent: h,
|
|
142
142
|
isFinacialStrengthGraph: y = !1
|
|
143
143
|
}) => {
|
|
144
|
-
const f =
|
|
144
|
+
const f = E(), w = -Math.PI / 1.35, S = Math.PI / 1.35, D = S - w, C = D / (i - s), g = (o - s) * C, b = w + g + 0.02, P = n !== "SM" ? 0.1 : 0.12, R = t, U = t * (1 - P), T = R * 2, $ = T / 2, z = T / 2, pe = (U + R) / 2, ve = o !== 25 && o !== 50 && o !== 75 && o !== 100 ? 0 : 0.12, [Q, Y] = Sn(pe, b, ve), _e = o / 25, H = {
|
|
145
145
|
L: { markerSize: 12, healthScoreFontSize: 64 },
|
|
146
146
|
M: { markerSize: 8, healthScoreFontSize: 48 },
|
|
147
147
|
SM: { markerSize: 3, healthScoreFontSize: 14 }
|
|
@@ -150,7 +150,7 @@ const Do = ({
|
|
|
150
150
|
right: 0,
|
|
151
151
|
bottom: 0,
|
|
152
152
|
left: 0,
|
|
153
|
-
...
|
|
153
|
+
...l
|
|
154
154
|
}, N = d === 0 ? sn : cn, ae = n !== "SM" ? 3 : 1, De = ae * 4, ue = H[n].markerSize * 2 + De;
|
|
155
155
|
return /* @__PURE__ */ a(
|
|
156
156
|
p,
|
|
@@ -164,26 +164,28 @@ const Do = ({
|
|
|
164
164
|
},
|
|
165
165
|
children: [
|
|
166
166
|
/* @__PURE__ */ e(
|
|
167
|
-
|
|
167
|
+
rn,
|
|
168
168
|
{
|
|
169
169
|
height: n === "SM" ? T - 7 : T,
|
|
170
|
-
hideLegend: !0,
|
|
171
170
|
margin: he,
|
|
172
171
|
series: [
|
|
173
172
|
{
|
|
174
173
|
data: r,
|
|
175
174
|
innerRadius: U,
|
|
176
|
-
outerRadius:
|
|
175
|
+
outerRadius: R,
|
|
177
176
|
startAngle: Math.round(et(w)),
|
|
178
177
|
// Use Math.degrees to convert
|
|
179
|
-
endAngle: Math.round(et(
|
|
178
|
+
endAngle: Math.round(et(S))
|
|
180
179
|
// Use Math.degrees to convert
|
|
181
180
|
}
|
|
182
181
|
],
|
|
183
182
|
skipAnimation: !0,
|
|
183
|
+
slotProps: {
|
|
184
|
+
legend: { hidden: !0 }
|
|
185
|
+
},
|
|
184
186
|
slots: {
|
|
185
187
|
pieArc: (X) => /* @__PURE__ */ e(
|
|
186
|
-
|
|
188
|
+
Ao,
|
|
187
189
|
{
|
|
188
190
|
arcColor: X.color,
|
|
189
191
|
arcRadius: t,
|
|
@@ -194,7 +196,7 @@ const Do = ({
|
|
|
194
196
|
dialScoreData: r,
|
|
195
197
|
innerArcRadius: U,
|
|
196
198
|
isFinacialStrengthGraph: y,
|
|
197
|
-
outterArcRadius:
|
|
199
|
+
outterArcRadius: R,
|
|
198
200
|
progressEndAngle: b,
|
|
199
201
|
totalAngularSpan: D,
|
|
200
202
|
unitsPerSegment: _e
|
|
@@ -228,7 +230,7 @@ const Do = ({
|
|
|
228
230
|
cy: z + Y,
|
|
229
231
|
fill: f.palette.common.white,
|
|
230
232
|
r: H[n].markerSize,
|
|
231
|
-
stroke: y ? "url(#arcGradient)" :
|
|
233
|
+
stroke: y ? "url(#arcGradient)" : c,
|
|
232
234
|
strokeWidth: ae
|
|
233
235
|
}
|
|
234
236
|
)
|
|
@@ -296,7 +298,7 @@ const Do = ({
|
|
|
296
298
|
color: d > 0 ? "success.main" : "text.secondary"
|
|
297
299
|
},
|
|
298
300
|
variant: "body1",
|
|
299
|
-
children: d
|
|
301
|
+
children: Math.abs(d)
|
|
300
302
|
}
|
|
301
303
|
)
|
|
302
304
|
]
|
|
@@ -304,7 +306,7 @@ const Do = ({
|
|
|
304
306
|
) : /* @__PURE__ */ e(M, { sx: { color: "text.secondary" }, variant: "subtitle2", children: d })
|
|
305
307
|
}
|
|
306
308
|
),
|
|
307
|
-
|
|
309
|
+
u !== void 0 && /* @__PURE__ */ e(
|
|
308
310
|
k,
|
|
309
311
|
{
|
|
310
312
|
sx: {
|
|
@@ -315,10 +317,10 @@ const Do = ({
|
|
|
315
317
|
transform: "translate(-50%, -50%)",
|
|
316
318
|
textAlign: "left"
|
|
317
319
|
},
|
|
318
|
-
children: /* @__PURE__ */ e(M, { variant: "body1", children:
|
|
320
|
+
children: /* @__PURE__ */ e(M, { variant: "body1", children: u })
|
|
319
321
|
}
|
|
320
322
|
),
|
|
321
|
-
|
|
323
|
+
h !== void 0 && /* @__PURE__ */ e(
|
|
322
324
|
k,
|
|
323
325
|
{
|
|
324
326
|
sx: {
|
|
@@ -328,13 +330,13 @@ const Do = ({
|
|
|
328
330
|
transform: "translate(-50%, -50%)",
|
|
329
331
|
textAlign: "right"
|
|
330
332
|
},
|
|
331
|
-
children: /* @__PURE__ */ e(M, { variant: "body1", children:
|
|
333
|
+
children: /* @__PURE__ */ e(M, { variant: "body1", children: h })
|
|
332
334
|
}
|
|
333
335
|
)
|
|
334
336
|
]
|
|
335
337
|
}
|
|
336
338
|
);
|
|
337
|
-
},
|
|
339
|
+
}, Ft = v(
|
|
338
340
|
({
|
|
339
341
|
arcRadius: t,
|
|
340
342
|
size: o = "L",
|
|
@@ -347,22 +349,22 @@ const Do = ({
|
|
|
347
349
|
{ id: 2, label: "Group B", value: 25 },
|
|
348
350
|
{ id: 3, label: "Group C", value: 25 },
|
|
349
351
|
{ id: 4, label: "Group D", value: 25 }
|
|
350
|
-
], { finstrong:
|
|
352
|
+
], { finstrong: l } = x(), c = Ne(n, l);
|
|
351
353
|
return /* @__PURE__ */ e(
|
|
352
|
-
|
|
354
|
+
Rt,
|
|
353
355
|
{
|
|
354
356
|
arcRadius: t,
|
|
355
357
|
dialScoreData: i,
|
|
356
|
-
footerCenterContent: o === "L" ?
|
|
358
|
+
footerCenterContent: o === "L" ? l.footer_center_content_updated_just_now : r,
|
|
357
359
|
healthScore: n,
|
|
358
|
-
healthScoreStatus:
|
|
360
|
+
healthScoreStatus: c.status,
|
|
359
361
|
isFinacialStrengthGraph: !0,
|
|
360
362
|
margin: s,
|
|
361
363
|
size: o
|
|
362
364
|
}
|
|
363
365
|
);
|
|
364
366
|
}
|
|
365
|
-
),
|
|
367
|
+
), To = v(
|
|
366
368
|
({
|
|
367
369
|
arcRadius: t,
|
|
368
370
|
size: o = "L",
|
|
@@ -371,46 +373,46 @@ const Do = ({
|
|
|
371
373
|
minValue: s = 300,
|
|
372
374
|
footerCenterContent: i
|
|
373
375
|
}) => {
|
|
374
|
-
const
|
|
376
|
+
const c = E().palette.mode === "dark", _ = [
|
|
375
377
|
{
|
|
376
378
|
id: 1,
|
|
377
379
|
label: "Poor",
|
|
378
380
|
value: 29,
|
|
379
|
-
color:
|
|
381
|
+
color: c ? we.POOR : ke.POOR
|
|
380
382
|
},
|
|
381
383
|
{
|
|
382
384
|
id: 2,
|
|
383
385
|
label: "Fair",
|
|
384
386
|
value: 25,
|
|
385
|
-
color:
|
|
387
|
+
color: c ? we.FAIR : ke.FAIR
|
|
386
388
|
},
|
|
387
389
|
{
|
|
388
390
|
id: 3,
|
|
389
391
|
label: "Good",
|
|
390
392
|
value: 17,
|
|
391
|
-
color:
|
|
393
|
+
color: c ? we.GOOD : ke.GOOD
|
|
392
394
|
},
|
|
393
395
|
{
|
|
394
396
|
id: 4,
|
|
395
397
|
label: "Very Good",
|
|
396
398
|
value: 17,
|
|
397
|
-
color:
|
|
399
|
+
color: c ? we.VERY_GOOD : ke.VERY_GOOD
|
|
398
400
|
},
|
|
399
401
|
{
|
|
400
402
|
id: 5,
|
|
401
403
|
label: "Exceptional",
|
|
402
404
|
value: 12,
|
|
403
|
-
color:
|
|
405
|
+
color: c ? we.EXCEPTIONAL : ke.EXCEPTIONAL
|
|
404
406
|
}
|
|
405
|
-
], { finstrong: d } =
|
|
406
|
-
if (!
|
|
407
|
-
const { status:
|
|
407
|
+
], { finstrong: d } = x(), { isCopyLoaded: u } = q();
|
|
408
|
+
if (!u) return /* @__PURE__ */ e(te, {});
|
|
409
|
+
const { status: h, color: y = "none" } = mt(
|
|
408
410
|
n,
|
|
409
|
-
|
|
411
|
+
c,
|
|
410
412
|
d.credit_score_status
|
|
411
413
|
);
|
|
412
414
|
return /* @__PURE__ */ e(
|
|
413
|
-
|
|
415
|
+
Rt,
|
|
414
416
|
{
|
|
415
417
|
arcRadius: t,
|
|
416
418
|
dialScoreData: _,
|
|
@@ -418,7 +420,7 @@ const Do = ({
|
|
|
418
420
|
footerLeftContent: s,
|
|
419
421
|
footerRightContent: r,
|
|
420
422
|
healthScore: n,
|
|
421
|
-
healthScoreStatus:
|
|
423
|
+
healthScoreStatus: h,
|
|
422
424
|
markerColor: y,
|
|
423
425
|
maxValue: r,
|
|
424
426
|
minValue: s,
|
|
@@ -426,17 +428,17 @@ const Do = ({
|
|
|
426
428
|
}
|
|
427
429
|
);
|
|
428
430
|
}
|
|
429
|
-
),
|
|
431
|
+
), Pe = ({
|
|
430
432
|
drawerType: t,
|
|
431
433
|
isDashboard: o = !1,
|
|
432
434
|
hasIcon: n = !0,
|
|
433
435
|
buttonText: r,
|
|
434
436
|
title: s,
|
|
435
437
|
titleDrawer: i,
|
|
436
|
-
description:
|
|
437
|
-
sx:
|
|
438
|
+
description: l,
|
|
439
|
+
sx: c
|
|
438
440
|
}) => {
|
|
439
|
-
const [_, d] = m.useState(!1), { connect:
|
|
441
|
+
const [_, d] = m.useState(!1), { connect: u, finstrong: h } = x(), { config: y } = je();
|
|
440
442
|
return t && y.show_connections_widget_in_master ? /* @__PURE__ */ a(
|
|
441
443
|
V,
|
|
442
444
|
{
|
|
@@ -445,7 +447,7 @@ const Do = ({
|
|
|
445
447
|
pt: 18,
|
|
446
448
|
px: 24,
|
|
447
449
|
width: "100%",
|
|
448
|
-
...
|
|
450
|
+
...c
|
|
449
451
|
},
|
|
450
452
|
children: [
|
|
451
453
|
/* @__PURE__ */ a(
|
|
@@ -457,7 +459,7 @@ const Do = ({
|
|
|
457
459
|
},
|
|
458
460
|
children: [
|
|
459
461
|
n && /* @__PURE__ */ e(pt, { sx: { height: 20, width: 20 } }),
|
|
460
|
-
/* @__PURE__ */ e(K, { className: "connect-more-accounts-title", sx: { ...o && { fontSize: 15 } }, children: s ||
|
|
462
|
+
/* @__PURE__ */ e(K, { className: "connect-more-accounts-title", sx: { ...o && { fontSize: 15 } }, children: s || h.connect_more_accounts_title })
|
|
461
463
|
]
|
|
462
464
|
}
|
|
463
465
|
),
|
|
@@ -467,17 +469,17 @@ const Do = ({
|
|
|
467
469
|
className: "connect-more-accounts-description",
|
|
468
470
|
sx: { color: "text.secondary", mt: 8 },
|
|
469
471
|
variant: "subtitle1",
|
|
470
|
-
children:
|
|
472
|
+
children: l || h.connect_more_accounts_description
|
|
471
473
|
}
|
|
472
474
|
),
|
|
473
475
|
/* @__PURE__ */ e(
|
|
474
|
-
|
|
476
|
+
B,
|
|
475
477
|
{
|
|
476
478
|
endIcon: /* @__PURE__ */ e(J, {}),
|
|
477
479
|
onClick: () => d(!0),
|
|
478
480
|
size: "small",
|
|
479
481
|
sx: { p: 0, mt: 8, "&:hover": { backgroundColor: "transparent" } },
|
|
480
|
-
children: /* @__PURE__ */ e(I, { sx: { fontWeight: 600 }, variant: "body2", children: r ||
|
|
482
|
+
children: /* @__PURE__ */ e(I, { sx: { fontWeight: 600 }, variant: "body2", children: r || h.connect_more_accounts_button })
|
|
481
483
|
}
|
|
482
484
|
),
|
|
483
485
|
t === "connectDrawer" && /* @__PURE__ */ e(
|
|
@@ -485,15 +487,15 @@ const Do = ({
|
|
|
485
487
|
{
|
|
486
488
|
onClose: () => d(!1),
|
|
487
489
|
showConnectWidget: _,
|
|
488
|
-
title: i ||
|
|
490
|
+
title: i || u.mini_title
|
|
489
491
|
}
|
|
490
492
|
),
|
|
491
493
|
t === "connectionsDrawer" && /* @__PURE__ */ e(
|
|
492
|
-
|
|
494
|
+
St,
|
|
493
495
|
{
|
|
494
496
|
onClose: () => d(!1),
|
|
495
497
|
showConnectionsWidget: _,
|
|
496
|
-
title: i ||
|
|
498
|
+
title: i || u.mini_title
|
|
497
499
|
}
|
|
498
500
|
)
|
|
499
501
|
]
|
|
@@ -501,21 +503,21 @@ const Do = ({
|
|
|
501
503
|
) : null;
|
|
502
504
|
};
|
|
503
505
|
var de = /* @__PURE__ */ ((t) => (t.SpendLessThanYouMake = "spendLessThanYouMake", t.PayBillsOnTime = "payBillsOnTime", t.SaveEnoughToLiveOn = "saveEnoughToLiveOn", t.MaintainEmergencySavings = "maintainEmergencySavings", t.HaveManageableDebt = "haveManageableDebt", t.HaveAGoodCreditScore = "haveAGoodCreditScore", t))(de || {});
|
|
504
|
-
const
|
|
505
|
-
const { common: n, finstrong: r } =
|
|
506
|
-
o(), setTimeout(() => _(
|
|
507
|
-
},
|
|
508
|
-
!
|
|
506
|
+
const Oo = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_animation_final.gif", Ro = ({ isOpen: t, onClose: o }) => {
|
|
507
|
+
const { common: n, finstrong: r } = x(), { isMobile: s } = qe(), { updateUser: i, user: l } = ee(), [c, _] = m.useState(l.credit_score || 0), d = !isNaN(c), u = () => {
|
|
508
|
+
o(), setTimeout(() => _(l.credit_score || 0), 300);
|
|
509
|
+
}, h = () => {
|
|
510
|
+
!c || c === l.credit_score || i({ ...l, credit_score: c });
|
|
509
511
|
};
|
|
510
512
|
return /* @__PURE__ */ e(
|
|
511
|
-
|
|
513
|
+
Bn,
|
|
512
514
|
{
|
|
513
515
|
copy: { close_aria: n.close_aria, title: r.edit_credit_score },
|
|
514
|
-
disablePrimaryButton: !
|
|
516
|
+
disablePrimaryButton: !c || !d,
|
|
515
517
|
isOpen: t,
|
|
516
518
|
maxWidth: "xs",
|
|
517
|
-
onClose:
|
|
518
|
-
onPrimaryAction:
|
|
519
|
+
onClose: u,
|
|
520
|
+
onPrimaryAction: h,
|
|
519
521
|
primaryColor: "primary",
|
|
520
522
|
primaryText: n.save_button,
|
|
521
523
|
sx: {
|
|
@@ -527,7 +529,7 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
527
529
|
"form",
|
|
528
530
|
{
|
|
529
531
|
onSubmit: (y) => {
|
|
530
|
-
y.preventDefault(),
|
|
532
|
+
y.preventDefault(), h(), u();
|
|
531
533
|
},
|
|
532
534
|
children: /* @__PURE__ */ e(
|
|
533
535
|
Re,
|
|
@@ -540,18 +542,18 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
540
542
|
pattern: "[0-9]*"
|
|
541
543
|
},
|
|
542
544
|
onChange: (y) => _(Number(y.target.value)),
|
|
543
|
-
value: d ?
|
|
545
|
+
value: d ? c : ""
|
|
544
546
|
}
|
|
545
547
|
)
|
|
546
548
|
}
|
|
547
549
|
)
|
|
548
550
|
}
|
|
549
551
|
);
|
|
550
|
-
},
|
|
552
|
+
}, Lt = v(Ro), ze = {
|
|
551
553
|
credit_over_time_title: "Your Credit Over Time",
|
|
552
554
|
credit_over_time_zero_state_desc: "Add your credit score to start building a full picture of your credit health."
|
|
553
|
-
},
|
|
554
|
-
const o =
|
|
555
|
+
}, Fo = ({ chartFor: t }) => {
|
|
556
|
+
const o = E(), n = o.palette.mode === "dark", { monthlySummaries: r } = L(), { user: s } = ee(), { finstrong: i } = x(), [l, { width: c }] = vt(), _ = {
|
|
555
557
|
savingsOverTime: {
|
|
556
558
|
icon: /* @__PURE__ */ e(dt, { size: 48, sx: { marginBottom: 8 } }),
|
|
557
559
|
title: i.key_indicators_save.zero_state_title,
|
|
@@ -567,7 +569,7 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
567
569
|
title: ze.credit_over_time_title,
|
|
568
570
|
description: ze.credit_over_time_zero_state_desc
|
|
569
571
|
}
|
|
570
|
-
}[t],
|
|
572
|
+
}[t], u = {
|
|
571
573
|
savingsOverTime: {
|
|
572
574
|
title: i.key_indicators_save.savings_over_time,
|
|
573
575
|
valueKey: "available_cash"
|
|
@@ -580,41 +582,41 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
580
582
|
title: ze.credit_over_time_title,
|
|
581
583
|
valueKey: "credit_score"
|
|
582
584
|
}
|
|
583
|
-
}[t],
|
|
584
|
-
let
|
|
585
|
+
}[t], h = Cn(r, u.valueKey), y = r.map((R) => R[u.valueKey]), f = Math.max(...y), w = Math.min(...y), S = () => f >= 1e6 ? { formatter: "0.000a", leftMargin: 55 } : f >= 1e3 ? { formatter: "0a", leftMargin: 35 } : { formatter: "0a", leftMargin: 30 }, { formatter: D, leftMargin: C } = S(), g = u.title, b = t === "creditOverTime";
|
|
586
|
+
let P;
|
|
585
587
|
if (b) {
|
|
586
|
-
const { color:
|
|
588
|
+
const { color: R } = mt(
|
|
587
589
|
s?.credit_score ?? 0,
|
|
588
590
|
n,
|
|
589
591
|
i.credit_score_status
|
|
590
592
|
);
|
|
591
|
-
|
|
593
|
+
P = R;
|
|
592
594
|
}
|
|
593
|
-
return /* @__PURE__ */ e(V, { ref:
|
|
595
|
+
return /* @__PURE__ */ e(V, { ref: l, sx: { backgroundColor: "background.paper" }, children: h.length >= 1 ? /* @__PURE__ */ a(p, { gap: 8, sx: { pl: 18 }, children: [
|
|
594
596
|
/* @__PURE__ */ e(M, { sx: { pb: 8, pt: 16 }, variant: "h3", children: g }),
|
|
595
597
|
/* @__PURE__ */ e(
|
|
596
598
|
Ye,
|
|
597
599
|
{
|
|
598
|
-
areaColor:
|
|
600
|
+
areaColor: P,
|
|
599
601
|
axisColor: o.palette.divider,
|
|
600
602
|
baseline: "min",
|
|
601
603
|
chartFor: t,
|
|
602
604
|
colors: [o.palette.primary.main],
|
|
603
605
|
curveType: b ? "linear" : "natural",
|
|
604
|
-
datasets:
|
|
606
|
+
datasets: h ? [h] : [],
|
|
605
607
|
height: 244,
|
|
606
608
|
labelFontColor: b ? "text.primary" : "",
|
|
607
609
|
labelFontSize: b ? 13 : void 0,
|
|
608
610
|
labels: [i.key_indicators_label],
|
|
609
611
|
margin: { left: C, top: b ? 25 : 15, right: 20 },
|
|
610
|
-
markStyles: (
|
|
612
|
+
markStyles: (R) => b ? {
|
|
611
613
|
markLabelStyles: {
|
|
612
614
|
marginLeft: 16,
|
|
613
|
-
transform:
|
|
615
|
+
transform: R === h.length - 1 ? "translateX(-16px)" : "translateX(16px)",
|
|
614
616
|
fontWeight: 600,
|
|
615
617
|
fill: o.palette.text.primary
|
|
616
618
|
},
|
|
617
|
-
stroke:
|
|
619
|
+
stroke: P
|
|
618
620
|
} : {},
|
|
619
621
|
maxRange: b ? 850 : void 0,
|
|
620
622
|
minRange: (() => {
|
|
@@ -630,7 +632,7 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
630
632
|
showYAxisTicks: b,
|
|
631
633
|
useCustomMark: !0,
|
|
632
634
|
valueFormatterString: b ? void 0 : D,
|
|
633
|
-
width:
|
|
635
|
+
width: c < 342 ? c - 48 : 342
|
|
634
636
|
}
|
|
635
637
|
)
|
|
636
638
|
] }) : /* @__PURE__ */ a(p, { gap: 8, sx: { alignItems: "center", p: 24, pb: 48 }, children: [
|
|
@@ -638,33 +640,33 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
638
640
|
/* @__PURE__ */ e(M, { fontWeight: 600, variant: "body1", children: _.title }),
|
|
639
641
|
/* @__PURE__ */ e(M, { align: "center", variant: "subtitle1", children: _.description })
|
|
640
642
|
] }) });
|
|
641
|
-
}, Ue = v(
|
|
642
|
-
const {
|
|
643
|
+
}, Ue = v(Fo), Lo = () => {
|
|
644
|
+
const { healthScoreChangeReports: t } = L(), { finstrong: o } = x(), { user: n } = ee(), { availableWidth: r } = Rn(), { isSmallMobile: s } = qe(r), [i, l] = m.useState(!1), c = t.at(-1);
|
|
643
645
|
return /* @__PURE__ */ a(k, { children: [
|
|
644
646
|
/* @__PURE__ */ a(p, { sx: { gap: 28 }, children: [
|
|
645
647
|
/* @__PURE__ */ e(
|
|
646
|
-
|
|
648
|
+
To,
|
|
647
649
|
{
|
|
648
650
|
arcRadius: s ? 124 : 154,
|
|
649
|
-
footerCenterContent:
|
|
651
|
+
footerCenterContent: c ? c.newer_credit_score - c.older_credit_score : 0,
|
|
650
652
|
healthScore: n.credit_score ?? 0,
|
|
651
653
|
size: s ? "M" : "L"
|
|
652
654
|
}
|
|
653
655
|
),
|
|
654
|
-
/* @__PURE__ */ e(
|
|
656
|
+
/* @__PURE__ */ e(B, { onClick: () => l(!0), variant: "contained", children: o.credit_score_updated_score }),
|
|
655
657
|
/* @__PURE__ */ e(Ue, { chartFor: "creditOverTime" })
|
|
656
658
|
] }),
|
|
657
|
-
/* @__PURE__ */ e(
|
|
659
|
+
/* @__PURE__ */ e(Lt, { isOpen: i, onClose: () => l(!1) })
|
|
658
660
|
] });
|
|
659
|
-
},
|
|
660
|
-
const { finstrong: o } =
|
|
661
|
+
}, Po = v(Lo), Be = ({ status: t }) => {
|
|
662
|
+
const { finstrong: o } = x(), n = vn(wn[t]), r = {
|
|
661
663
|
GOOD: o.key_indicators_good,
|
|
662
664
|
FAIR: o.key_indicators_fair,
|
|
663
665
|
OFF_TRACK: o.key_indicators_off_track,
|
|
664
666
|
MISSING: o.key_indicators_missing
|
|
665
667
|
}[t];
|
|
666
668
|
return /* @__PURE__ */ e(
|
|
667
|
-
|
|
669
|
+
zn,
|
|
668
670
|
{
|
|
669
671
|
label: /* @__PURE__ */ e(
|
|
670
672
|
M,
|
|
@@ -684,29 +686,29 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
684
686
|
variant: "filled"
|
|
685
687
|
}
|
|
686
688
|
);
|
|
687
|
-
},
|
|
688
|
-
const { finstrong: t } =
|
|
689
|
+
}, Bo = () => {
|
|
690
|
+
const { finstrong: t } = x(), { user: o } = ee(), n = gt(o.credit_score ?? null);
|
|
689
691
|
return /* @__PURE__ */ a(p, { sx: { flexDirection: "row", justifyContent: "space-between" }, children: [
|
|
690
692
|
/* @__PURE__ */ e(K, { children: t.credit_score_keep_strong_credit_score }),
|
|
691
|
-
/* @__PURE__ */ e(
|
|
693
|
+
/* @__PURE__ */ e(Be, { status: n })
|
|
692
694
|
] });
|
|
693
|
-
},
|
|
695
|
+
}, Wo = v(Bo), $o = ({
|
|
694
696
|
additionalContent: t,
|
|
695
697
|
connectTitle: o,
|
|
696
698
|
connectDescription: n,
|
|
697
699
|
children: r,
|
|
698
700
|
description: s,
|
|
699
701
|
drawerTitle: i,
|
|
700
|
-
isOpen:
|
|
701
|
-
loadConnectAccountsCard:
|
|
702
|
+
isOpen: l,
|
|
703
|
+
loadConnectAccountsCard: c = !0,
|
|
702
704
|
onClose: _,
|
|
703
705
|
stickyComponent: d,
|
|
704
|
-
title:
|
|
705
|
-
drawerType:
|
|
706
|
+
title: u,
|
|
707
|
+
drawerType: h
|
|
706
708
|
}) => {
|
|
707
|
-
const { finstrong: y } =
|
|
708
|
-
return f ? /* @__PURE__ */ e(oe, { isOpen:
|
|
709
|
-
(
|
|
709
|
+
const { finstrong: y } = x(), { isCopyLoaded: f } = q();
|
|
710
|
+
return f ? /* @__PURE__ */ e(oe, { isOpen: l, onClose: _, title: i || y.key_indicators, children: /* @__PURE__ */ a(p, { sx: { backgroundColor: "background.default", height: "100%" }, children: [
|
|
711
|
+
(u || s) && /* @__PURE__ */ a(
|
|
710
712
|
p,
|
|
711
713
|
{
|
|
712
714
|
sx: {
|
|
@@ -715,7 +717,7 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
715
717
|
p: 24
|
|
716
718
|
},
|
|
717
719
|
children: [
|
|
718
|
-
|
|
720
|
+
u && typeof u == "string" ? /* @__PURE__ */ e(K, { children: u }) : u,
|
|
719
721
|
s && /* @__PURE__ */ e(M, { sx: { lineHeight: "24px" }, children: s })
|
|
720
722
|
]
|
|
721
723
|
}
|
|
@@ -734,11 +736,11 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
734
736
|
t && /* @__PURE__ */ e(k, { children: t }),
|
|
735
737
|
/* @__PURE__ */ a(p, { sx: { bgcolor: "background.default", gap: 24, p: 24 }, children: [
|
|
736
738
|
r,
|
|
737
|
-
|
|
738
|
-
|
|
739
|
+
c && /* @__PURE__ */ e(
|
|
740
|
+
Pe,
|
|
739
741
|
{
|
|
740
742
|
description: n,
|
|
741
|
-
drawerType:
|
|
743
|
+
drawerType: h,
|
|
742
744
|
isDashboard: !0,
|
|
743
745
|
sx: { backgroundColor: "background.paper" },
|
|
744
746
|
title: o
|
|
@@ -746,54 +748,54 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
746
748
|
)
|
|
747
749
|
] })
|
|
748
750
|
] }) }) : /* @__PURE__ */ e(te, {});
|
|
749
|
-
},
|
|
751
|
+
}, Pt = v($o), zo = ({
|
|
750
752
|
onClick: t,
|
|
751
753
|
shouldShowBalance: o = !0,
|
|
752
754
|
loadAccounts: n
|
|
753
755
|
}) => {
|
|
754
|
-
const { config: r } = je(), { accounts: s } =
|
|
756
|
+
const { config: r } = je(), { accounts: s } = x(), { selectedAccounts: i } = q(), l = m.useCallback(
|
|
755
757
|
(_) => {
|
|
756
758
|
t?.(_);
|
|
757
759
|
},
|
|
758
760
|
[t]
|
|
759
|
-
),
|
|
761
|
+
), c = m.useMemo(
|
|
760
762
|
() => Array.from(new Set(i.map((_) => _.account_type))).filter(
|
|
761
763
|
(_) => n ? n.includes(_) : !0
|
|
762
764
|
),
|
|
763
765
|
[i, n]
|
|
764
766
|
);
|
|
765
|
-
return i.length ? /* @__PURE__ */ e(m.Fragment, { children:
|
|
766
|
-
const { accountsForType: d, totalBalanceForType:
|
|
767
|
-
(
|
|
767
|
+
return i.length ? /* @__PURE__ */ e(m.Fragment, { children: c.map((_) => {
|
|
768
|
+
const { accountsForType: d, totalBalanceForType: u } = i.reduce(
|
|
769
|
+
(h, y) => (y.account_type === _ && (h.accountsForType.push(y), h.totalBalanceForType += y.balance || 0), h),
|
|
768
770
|
{ accountsForType: [], totalBalanceForType: 0 }
|
|
769
771
|
);
|
|
770
772
|
return /* @__PURE__ */ a(
|
|
771
|
-
|
|
773
|
+
Ee,
|
|
772
774
|
{
|
|
773
|
-
subheader: /* @__PURE__ */ e(
|
|
775
|
+
subheader: /* @__PURE__ */ e(En, { sx: { pb: 4, position: "static", pt: 12, px: 24 }, children: /* @__PURE__ */ a(p, { sx: { flexDirection: "row", justifyContent: "space-between" }, children: [
|
|
774
776
|
/* @__PURE__ */ e(I, { bold: !0, variant: "caption", children: s.account_types[_] }),
|
|
775
|
-
o && /* @__PURE__ */ e(I, { bold: !0, variant: "caption", children: W(
|
|
777
|
+
o && /* @__PURE__ */ e(I, { bold: !0, variant: "caption", children: W(u, "0,0.00") })
|
|
776
778
|
] }) }),
|
|
777
779
|
sx: { bgcolor: "background.paper" },
|
|
778
780
|
children: [
|
|
779
|
-
d.map((
|
|
780
|
-
const { firstValue: f } =
|
|
781
|
+
d.map((h, y) => {
|
|
782
|
+
const { firstValue: f } = kt(h, s), w = Ct(h, {
|
|
781
783
|
allowNickname: r?.show_account_nicknames_in_master
|
|
782
|
-
}),
|
|
783
|
-
/* @__PURE__ */ e(
|
|
784
|
+
}), S = /* @__PURE__ */ a(G, { children: [
|
|
785
|
+
/* @__PURE__ */ e(wt, { children: /* @__PURE__ */ e(ut, { alt: "MX", institutionGuid: h.institution_guid ?? "" }) }),
|
|
784
786
|
/* @__PURE__ */ e(
|
|
785
787
|
be,
|
|
786
788
|
{
|
|
787
|
-
primary: `${w}${
|
|
789
|
+
primary: `${w}${h.account_number ? ` *${h.account_number}` : ""}`,
|
|
788
790
|
primaryTypographyProps: { noWrap: !0, pr: 4, variant: "body1" }
|
|
789
791
|
}
|
|
790
792
|
),
|
|
791
793
|
o && /* @__PURE__ */ e(M, { bold: !0, variant: "body2", children: W(f ?? 0, "0,0.00") })
|
|
792
794
|
] });
|
|
793
795
|
return /* @__PURE__ */ a(m.Fragment, { children: [
|
|
794
|
-
/* @__PURE__ */ e(ye, { sx: { px: t ? 0 : 24 }, children: t ? /* @__PURE__ */ e(
|
|
796
|
+
/* @__PURE__ */ e(ye, { sx: { px: t ? 0 : 24 }, children: t ? /* @__PURE__ */ e(Gn, { onClick: () => l(h), children: S }) : S }),
|
|
795
797
|
y !== d.length - 1 && /* @__PURE__ */ e(le, { variant: "inset" })
|
|
796
|
-
] },
|
|
798
|
+
] }, h.guid);
|
|
797
799
|
}),
|
|
798
800
|
/* @__PURE__ */ e(le, {})
|
|
799
801
|
]
|
|
@@ -801,37 +803,37 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
801
803
|
_
|
|
802
804
|
);
|
|
803
805
|
}) }) : null;
|
|
804
|
-
}, Bt = v(
|
|
805
|
-
const n =
|
|
806
|
-
() =>
|
|
807
|
-
(
|
|
806
|
+
}, Bt = v(zo), Go = ({ loadAccounts: t, loadMoreLabel: o }) => {
|
|
807
|
+
const n = E(), { config: r } = je(), { connect: s, finstrong: i } = x(), { accounts: l } = x(), { selectedAccounts: c } = q(), [_, d] = m.useState(!1), [u, h] = m.useState(!1), y = m.useMemo(
|
|
808
|
+
() => c.filter(
|
|
809
|
+
(S) => t ? t.includes(S.account_type) : !0
|
|
808
810
|
),
|
|
809
|
-
[
|
|
810
|
-
), f = m.useMemo(() => y.slice(0, 3), [y]), w = (
|
|
811
|
-
const { firstValue: D } =
|
|
811
|
+
[c, t]
|
|
812
|
+
), f = m.useMemo(() => y.slice(0, 3), [y]), w = (S) => {
|
|
813
|
+
const { firstValue: D } = kt(S, l);
|
|
812
814
|
return D;
|
|
813
815
|
};
|
|
814
|
-
return y.length >= 1 ? /* @__PURE__ */ a(
|
|
815
|
-
/* @__PURE__ */ e(k, { sx: { border: `1px solid ${n.palette.divider}`, borderRadius: 2 }, children: f.map((
|
|
816
|
+
return y.length >= 1 ? /* @__PURE__ */ a(G, { children: [
|
|
817
|
+
/* @__PURE__ */ e(k, { sx: { border: `1px solid ${n.palette.divider}`, borderRadius: 2 }, children: f.map((S, D) => /* @__PURE__ */ a(m.Fragment, { children: [
|
|
816
818
|
/* @__PURE__ */ a(ye, { sx: { px: 24 }, children: [
|
|
817
|
-
/* @__PURE__ */ e(
|
|
819
|
+
/* @__PURE__ */ e(wt, { children: /* @__PURE__ */ e(ut, { alt: "MX", institutionGuid: S.institution_guid ?? "" }) }),
|
|
818
820
|
/* @__PURE__ */ e(
|
|
819
821
|
be,
|
|
820
822
|
{
|
|
821
|
-
primary: `${
|
|
823
|
+
primary: `${Ct(S, {
|
|
822
824
|
allowNickname: r?.show_account_nicknames_in_master
|
|
823
825
|
})}
|
|
824
|
-
${
|
|
826
|
+
${S.account_number ? ` *${S.account_number}` : ""}`,
|
|
825
827
|
primaryTypographyProps: { noWrap: !0, pr: 4, variant: "body1" }
|
|
826
828
|
}
|
|
827
829
|
),
|
|
828
|
-
/* @__PURE__ */ e(M, { bold: !0, variant: "body2", children: W(w(
|
|
830
|
+
/* @__PURE__ */ e(M, { bold: !0, variant: "body2", children: W(w(S), "0,0.00") })
|
|
829
831
|
] }),
|
|
830
832
|
D < f.length - 1 && /* @__PURE__ */ e(le, { variant: "inset" })
|
|
831
|
-
] },
|
|
832
|
-
y.length > 3 && /* @__PURE__ */ a(
|
|
833
|
+
] }, S.guid)) }),
|
|
834
|
+
y.length > 3 && /* @__PURE__ */ a(G, { children: [
|
|
833
835
|
/* @__PURE__ */ e(k, { children: /* @__PURE__ */ e(
|
|
834
|
-
|
|
836
|
+
B,
|
|
835
837
|
{
|
|
836
838
|
endIcon: /* @__PURE__ */ e(J, {}),
|
|
837
839
|
onClick: () => d(!0),
|
|
@@ -846,11 +848,11 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
846
848
|
) }),
|
|
847
849
|
/* @__PURE__ */ e(oe, { isOpen: _, onClose: () => d(!1), title: i.accounts, children: /* @__PURE__ */ e(Bt, { loadAccounts: t }) })
|
|
848
850
|
] })
|
|
849
|
-
] }) : /* @__PURE__ */ a(
|
|
851
|
+
] }) : /* @__PURE__ */ a(G, { children: [
|
|
850
852
|
/* @__PURE__ */ e(k, { children: /* @__PURE__ */ e(
|
|
851
|
-
|
|
853
|
+
B,
|
|
852
854
|
{
|
|
853
|
-
onClick: () =>
|
|
855
|
+
onClick: () => h(!0),
|
|
854
856
|
size: "small",
|
|
855
857
|
sx: { my: 0, px: 16, py: 12, width: "100%" },
|
|
856
858
|
variant: "contained",
|
|
@@ -860,13 +862,13 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
860
862
|
/* @__PURE__ */ e(
|
|
861
863
|
re,
|
|
862
864
|
{
|
|
863
|
-
onClose: () =>
|
|
864
|
-
showConnectWidget:
|
|
865
|
+
onClose: () => h(!1),
|
|
866
|
+
showConnectWidget: u,
|
|
865
867
|
title: s.mini_title
|
|
866
868
|
}
|
|
867
869
|
)
|
|
868
870
|
] });
|
|
869
|
-
},
|
|
871
|
+
}, Wt = v(Go), Ce = ({ balance: t, title: o, sx: n }) => /* @__PURE__ */ a(
|
|
870
872
|
p,
|
|
871
873
|
{
|
|
872
874
|
sx: {
|
|
@@ -885,8 +887,8 @@ const Ao = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
|
|
|
885
887
|
}
|
|
886
888
|
);
|
|
887
889
|
var O = /* @__PURE__ */ ((t) => (t[t.ConnectAccounts = 1] = "ConnectAccounts", t[t.MonthlyIncome = 2] = "MonthlyIncome", t[t.Birthday = 3] = "Birthday", t[t.CreditScore = 4] = "CreditScore", t))(O || {}), Me = /* @__PURE__ */ ((t) => (t[t.Months = 1] = "Months", t[t.Years = 2] = "Years", t[t.Days = 3] = "Days", t))(Me || {}), Z = /* @__PURE__ */ ((t) => (t[t.Monthly = 1] = "Monthly", t[t.BiWeekly = 2] = "BiWeekly", t[t.Weekly = 3] = "Weekly", t[t.Daily = 4] = "Daily", t))(Z || {});
|
|
888
|
-
const
|
|
889
|
-
const { finstrong: o } =
|
|
890
|
+
const Eo = ({ total: t }) => {
|
|
891
|
+
const { finstrong: o } = x(), n = [
|
|
890
892
|
{ id: Z.Monthly, label: o.maintain_emergency_savings_monthly },
|
|
891
893
|
{ id: Z.BiWeekly, label: o.maintain_emergency_savings_bi_weekly },
|
|
892
894
|
{ id: Z.Weekly, label: o.maintain_emergency_savings_weekly },
|
|
@@ -900,37 +902,37 @@ const zo = ({ total: t }) => {
|
|
|
900
902
|
{ id: Me.Months, label: o.maintain_emergency_savings_months },
|
|
901
903
|
{ id: Me.Years, label: o.maintain_emergency_savings_years },
|
|
902
904
|
{ id: Me.Days, label: o.maintain_emergency_savings_days }
|
|
903
|
-
], i = Math.ceil((t + 1) / 1e3) * 1e3, [
|
|
905
|
+
], i = Math.ceil((t + 1) / 1e3) * 1e3, [l, c] = m.useState(0), [_, d] = m.useState(tt(t)), [u, h] = m.useState(
|
|
904
906
|
tt(t)
|
|
905
|
-
), [y, f] = m.useState(i), [w,
|
|
907
|
+
), [y, f] = m.useState(i), [w, S] = m.useState(kn(t)), [D, C] = m.useState(Me.Months);
|
|
906
908
|
m.useEffect(() => {
|
|
907
|
-
|
|
909
|
+
c(
|
|
908
910
|
nt({
|
|
909
|
-
contribution:
|
|
911
|
+
contribution: u,
|
|
910
912
|
goalAmount: y,
|
|
911
913
|
goalPeriod: w,
|
|
912
914
|
targetPeriod: D,
|
|
913
915
|
totalSaved: t
|
|
914
916
|
})
|
|
915
|
-
), d(
|
|
917
|
+
), d(u);
|
|
916
918
|
}, []);
|
|
917
919
|
const g = (b) => {
|
|
918
|
-
b.preventDefault(),
|
|
920
|
+
b.preventDefault(), c(
|
|
919
921
|
nt({
|
|
920
|
-
contribution:
|
|
922
|
+
contribution: u,
|
|
921
923
|
goalAmount: y,
|
|
922
924
|
goalPeriod: w,
|
|
923
925
|
targetPeriod: D,
|
|
924
926
|
totalSaved: t
|
|
925
927
|
})
|
|
926
|
-
), d(
|
|
928
|
+
), d(u);
|
|
927
929
|
};
|
|
928
930
|
return /* @__PURE__ */ e(V, { children: /* @__PURE__ */ e("form", { onSubmit: g, children: /* @__PURE__ */ a(p, { sx: { gap: 24, pb: 24, pt: 16, px: 16 }, children: [
|
|
929
931
|
/* @__PURE__ */ e(
|
|
930
932
|
Ce,
|
|
931
933
|
{
|
|
932
934
|
balance: /* @__PURE__ */ a(p, { sx: { flexDirection: "row", height: 32 }, children: [
|
|
933
|
-
/* @__PURE__ */ e(I, { variant: "h2", children: W(
|
|
935
|
+
/* @__PURE__ */ e(I, { variant: "h2", children: W(l, "0,0") }),
|
|
934
936
|
/* @__PURE__ */ a(I, { sx: { alignSelf: "end", height: 24 }, variant: "subtitle2", children: [
|
|
935
937
|
"/",
|
|
936
938
|
r[_]
|
|
@@ -962,10 +964,10 @@ const zo = ({ total: t }) => {
|
|
|
962
964
|
rt,
|
|
963
965
|
{
|
|
964
966
|
label: o.maintain_emergency_savings_how_often_contribute,
|
|
965
|
-
onChange:
|
|
967
|
+
onChange: h,
|
|
966
968
|
options: n,
|
|
967
969
|
required: !0,
|
|
968
|
-
value:
|
|
970
|
+
value: u
|
|
969
971
|
}
|
|
970
972
|
),
|
|
971
973
|
/* @__PURE__ */ a(p, { sx: { flexDirection: "row" }, children: [
|
|
@@ -980,7 +982,7 @@ const zo = ({ total: t }) => {
|
|
|
980
982
|
},
|
|
981
983
|
label: o.maintain_emergency_savings_meet_your_goal_within,
|
|
982
984
|
onChange: (b) => {
|
|
983
|
-
isNaN(Number(b.target.value)) ||
|
|
985
|
+
isNaN(Number(b.target.value)) || S(Number(b.target.value));
|
|
984
986
|
},
|
|
985
987
|
sx: {
|
|
986
988
|
"& .MuiInputBase-root": {
|
|
@@ -1010,25 +1012,25 @@ const zo = ({ total: t }) => {
|
|
|
1010
1012
|
}
|
|
1011
1013
|
)
|
|
1012
1014
|
] }),
|
|
1013
|
-
/* @__PURE__ */ e(
|
|
1015
|
+
/* @__PURE__ */ e(B, { fullWidth: !0, onClick: g, type: "submit", variant: "contained", children: o.maintain_emergency_savings_calculate })
|
|
1014
1016
|
] }) }) });
|
|
1015
|
-
},
|
|
1016
|
-
const { savingsAccounts: t } = Se(), { finstrong: o } =
|
|
1017
|
-
() => t.reduce((i,
|
|
1017
|
+
}, Ho = v(Eo), No = () => {
|
|
1018
|
+
const { savingsAccounts: t } = Se(), { finstrong: o } = x(), [n, r] = m.useState(!1), s = m.useMemo(
|
|
1019
|
+
() => t.reduce((i, l) => i + (l.balance ?? 0), 0),
|
|
1018
1020
|
[t]
|
|
1019
1021
|
);
|
|
1020
1022
|
return /* @__PURE__ */ a(p, { sx: { gap: 24 }, children: [
|
|
1021
1023
|
/* @__PURE__ */ e(V, { sx: { bgcolor: "background.paper", p: 16 }, children: /* @__PURE__ */ a(p, { sx: { gap: 16 }, children: [
|
|
1022
1024
|
/* @__PURE__ */ e(Ce, { balance: s, title: o.maintain_emergency_savings_your_savings }),
|
|
1023
1025
|
t.length ? /* @__PURE__ */ e(
|
|
1024
|
-
|
|
1026
|
+
Wt,
|
|
1025
1027
|
{
|
|
1026
|
-
loadAccounts: [
|
|
1028
|
+
loadAccounts: [Ge.SAVINGS],
|
|
1027
1029
|
loadMoreLabel: o.connect_more_accounts_button
|
|
1028
1030
|
}
|
|
1029
|
-
) : /* @__PURE__ */ e(
|
|
1031
|
+
) : /* @__PURE__ */ e(B, { onClick: () => r(!0), variant: "contained", children: o.connect_more_accounts_button })
|
|
1030
1032
|
] }) }),
|
|
1031
|
-
/* @__PURE__ */ e(
|
|
1033
|
+
/* @__PURE__ */ e(Ho, { total: s }),
|
|
1032
1034
|
/* @__PURE__ */ e(
|
|
1033
1035
|
re,
|
|
1034
1036
|
{
|
|
@@ -1038,7 +1040,7 @@ const zo = ({ total: t }) => {
|
|
|
1038
1040
|
}
|
|
1039
1041
|
)
|
|
1040
1042
|
] });
|
|
1041
|
-
},
|
|
1043
|
+
}, jo = v(No), We = v(
|
|
1042
1044
|
({ label: t, value: o, status: n, bottomComponent: r, statusBarData: s = [] }) => {
|
|
1043
1045
|
const i = {
|
|
1044
1046
|
GOOD: {
|
|
@@ -1053,12 +1055,12 @@ const zo = ({ total: t }) => {
|
|
|
1053
1055
|
MISSING: {
|
|
1054
1056
|
progressBarColor: "text.secondary"
|
|
1055
1057
|
}
|
|
1056
|
-
}[n],
|
|
1057
|
-
color: _ === 0 ? "primary.main" :
|
|
1058
|
-
percentage:
|
|
1058
|
+
}[n], l = s.map((c, _) => s.length === 2 ? {
|
|
1059
|
+
color: _ === 0 ? "primary.main" : c.color || i?.progressBarColor,
|
|
1060
|
+
percentage: c.percentage
|
|
1059
1061
|
} : {
|
|
1060
|
-
color:
|
|
1061
|
-
percentage:
|
|
1062
|
+
color: c.color || i?.progressBarColor,
|
|
1063
|
+
percentage: c.percentage
|
|
1062
1064
|
});
|
|
1063
1065
|
return /* @__PURE__ */ a(
|
|
1064
1066
|
p,
|
|
@@ -1085,27 +1087,27 @@ const zo = ({ total: t }) => {
|
|
|
1085
1087
|
},
|
|
1086
1088
|
children: [
|
|
1087
1089
|
/* @__PURE__ */ e(Le, { children: o }),
|
|
1088
|
-
/* @__PURE__ */ e(
|
|
1090
|
+
/* @__PURE__ */ e(Be, { status: n })
|
|
1089
1091
|
]
|
|
1090
1092
|
}
|
|
1091
1093
|
)
|
|
1092
1094
|
] }),
|
|
1093
1095
|
/* @__PURE__ */ a(p, { children: [
|
|
1094
|
-
/* @__PURE__ */ e(
|
|
1096
|
+
/* @__PURE__ */ e(Nn, { data: l, height: 16 }),
|
|
1095
1097
|
r
|
|
1096
1098
|
] })
|
|
1097
1099
|
]
|
|
1098
1100
|
}
|
|
1099
1101
|
);
|
|
1100
1102
|
}
|
|
1101
|
-
),
|
|
1103
|
+
), Ko = {
|
|
1102
1104
|
sticky_label: "You have saved"
|
|
1103
|
-
},
|
|
1104
|
-
const { healthScore: t } =
|
|
1105
|
+
}, Vo = ["$0", "$250", "$500", "$750", "$1k"], Yo = () => {
|
|
1106
|
+
const { healthScore: t } = L(), o = Math.round(t.emergency_savings_on_hand ?? NaN) || null, n = Mn(o), r = yt(o);
|
|
1105
1107
|
return /* @__PURE__ */ e(
|
|
1106
1108
|
We,
|
|
1107
1109
|
{
|
|
1108
|
-
bottomComponent: /* @__PURE__ */ e(p, { sx: { flexDirection: "row", justifyContent: "space-between" }, children:
|
|
1110
|
+
bottomComponent: /* @__PURE__ */ e(p, { sx: { flexDirection: "row", justifyContent: "space-between" }, children: Vo.map((s) => /* @__PURE__ */ a(p, { sx: { alignItems: "center", height: 24, width: 30 }, children: [
|
|
1109
1111
|
/* @__PURE__ */ e(
|
|
1110
1112
|
le,
|
|
1111
1113
|
{
|
|
@@ -1119,7 +1121,7 @@ const zo = ({ total: t }) => {
|
|
|
1119
1121
|
),
|
|
1120
1122
|
/* @__PURE__ */ e(I, { variant: "caption", children: s })
|
|
1121
1123
|
] }, s)) }),
|
|
1122
|
-
label:
|
|
1124
|
+
label: Ko.sticky_label,
|
|
1123
1125
|
status: r,
|
|
1124
1126
|
statusBarData: [
|
|
1125
1127
|
{
|
|
@@ -1129,38 +1131,38 @@ const zo = ({ total: t }) => {
|
|
|
1129
1131
|
value: W(o ?? 0, "0,0.00")
|
|
1130
1132
|
}
|
|
1131
1133
|
);
|
|
1132
|
-
},
|
|
1134
|
+
}, Xo = v(Yo), $e = ({
|
|
1133
1135
|
transactions: t = [],
|
|
1134
1136
|
amountColor: o = "success.main",
|
|
1135
1137
|
amountPosition: n = "center",
|
|
1136
|
-
formatDate: r =
|
|
1138
|
+
formatDate: r = It,
|
|
1137
1139
|
secondaryIcon: s
|
|
1138
1140
|
}) => {
|
|
1139
|
-
const i =
|
|
1141
|
+
const i = E(), { connect: l, finstrong: c, categories: _ } = x(), [d, u] = m.useState(!1), [h, y] = m.useState(!1), { getCategoryName: f } = Ke(), w = 3, S = t.length > w, D = t.length - w;
|
|
1140
1142
|
let C = t;
|
|
1141
|
-
return
|
|
1143
|
+
return S && (C = t.map((g) => ({
|
|
1142
1144
|
...g,
|
|
1143
1145
|
category: _.default_categories[g.top_level_category_guid]?.replace(
|
|
1144
1146
|
/&/g,
|
|
1145
1147
|
"&"
|
|
1146
1148
|
) ?? f(g.top_level_category_guid)
|
|
1147
|
-
})).sort((g, b) => b.date - g.date)), !t || t.length === 0 ? /* @__PURE__ */ a(
|
|
1149
|
+
})).sort((g, b) => b.date - g.date)), !t || t.length === 0 ? /* @__PURE__ */ a(G, { children: [
|
|
1148
1150
|
/* @__PURE__ */ e(k, { children: /* @__PURE__ */ e(
|
|
1149
|
-
|
|
1151
|
+
B,
|
|
1150
1152
|
{
|
|
1151
1153
|
onClick: () => y(!0),
|
|
1152
1154
|
size: "small",
|
|
1153
1155
|
sx: { my: 0, px: 16, py: 12, width: "100%" },
|
|
1154
1156
|
variant: "contained",
|
|
1155
|
-
children: /* @__PURE__ */ e(I, { bold: !0, variant: "body1", children:
|
|
1157
|
+
children: /* @__PURE__ */ e(I, { bold: !0, variant: "body1", children: c.connect_more_accounts_button })
|
|
1156
1158
|
}
|
|
1157
1159
|
) }),
|
|
1158
1160
|
/* @__PURE__ */ e(
|
|
1159
1161
|
re,
|
|
1160
1162
|
{
|
|
1161
1163
|
onClose: () => y(!1),
|
|
1162
|
-
showConnectWidget:
|
|
1163
|
-
title:
|
|
1164
|
+
showConnectWidget: h,
|
|
1165
|
+
title: l.mini_title
|
|
1164
1166
|
}
|
|
1165
1167
|
)
|
|
1166
1168
|
] }) : /* @__PURE__ */ a(p, { sx: { gap: 16 }, children: [
|
|
@@ -1176,7 +1178,7 @@ const zo = ({ total: t }) => {
|
|
|
1176
1178
|
},
|
|
1177
1179
|
children: [
|
|
1178
1180
|
/* @__PURE__ */ e(p, { sx: { pb: 14 }, children: /* @__PURE__ */ e(
|
|
1179
|
-
|
|
1181
|
+
yn,
|
|
1180
1182
|
{
|
|
1181
1183
|
categoryGuid: g.top_level_category_guid || "",
|
|
1182
1184
|
merchantGuid: g.merchant_guid || "",
|
|
@@ -1215,18 +1217,18 @@ const zo = ({ total: t }) => {
|
|
|
1215
1217
|
},
|
|
1216
1218
|
b
|
|
1217
1219
|
)) }),
|
|
1218
|
-
|
|
1220
|
+
S && /* @__PURE__ */ a(G, { children: [
|
|
1219
1221
|
/* @__PURE__ */ e(k, { children: /* @__PURE__ */ e(
|
|
1220
|
-
|
|
1222
|
+
B,
|
|
1221
1223
|
{
|
|
1222
1224
|
endIcon: /* @__PURE__ */ e(J, {}),
|
|
1223
|
-
onClick: () =>
|
|
1225
|
+
onClick: () => u(!0),
|
|
1224
1226
|
size: "small",
|
|
1225
1227
|
sx: { my: 0, px: 16, py: 12, width: "100%" },
|
|
1226
1228
|
children: /* @__PURE__ */ a(I, { bold: !0, variant: "body1", children: [
|
|
1227
1229
|
D,
|
|
1228
1230
|
" ",
|
|
1229
|
-
|
|
1231
|
+
c.key_indicators_borrow.have_manageable_debt_drawer.have_manageable_debt_more_transactions
|
|
1230
1232
|
] })
|
|
1231
1233
|
}
|
|
1232
1234
|
) }),
|
|
@@ -1234,22 +1236,22 @@ const zo = ({ total: t }) => {
|
|
|
1234
1236
|
oe,
|
|
1235
1237
|
{
|
|
1236
1238
|
isOpen: d,
|
|
1237
|
-
onClose: () =>
|
|
1238
|
-
title:
|
|
1239
|
-
children: /* @__PURE__ */ e(
|
|
1239
|
+
onClose: () => u(!1),
|
|
1240
|
+
title: c.key_indicators_borrow.have_manageable_debt_drawer.have_manageable_debt_transactions,
|
|
1241
|
+
children: /* @__PURE__ */ e(jn, { transaction: C })
|
|
1240
1242
|
}
|
|
1241
1243
|
)
|
|
1242
1244
|
] })
|
|
1243
1245
|
] });
|
|
1244
|
-
},
|
|
1246
|
+
}, qo = () => {
|
|
1245
1247
|
const {
|
|
1246
1248
|
finstrong: {
|
|
1247
1249
|
key_indicators_spend: { pay_bills_on_time_drawer: t }
|
|
1248
1250
|
}
|
|
1249
|
-
} =
|
|
1251
|
+
} = x(), { getSpendingFeeTransactions: o, allTransactions: n } = L();
|
|
1250
1252
|
return m.useEffect(() => {
|
|
1251
1253
|
o().finally();
|
|
1252
|
-
}, []), /* @__PURE__ */ e(
|
|
1254
|
+
}, []), /* @__PURE__ */ e(G, { children: n.spendingFee.length === 0 ? /* @__PURE__ */ a(
|
|
1253
1255
|
V,
|
|
1254
1256
|
{
|
|
1255
1257
|
sx: {
|
|
@@ -1283,7 +1285,7 @@ const zo = ({ total: t }) => {
|
|
|
1283
1285
|
{
|
|
1284
1286
|
amountColor: "text.primary",
|
|
1285
1287
|
amountPosition: "flex-start",
|
|
1286
|
-
formatDate: (r) =>
|
|
1288
|
+
formatDate: (r) => Wn(new Date(r * 1e3), $n.MONTH_DAY),
|
|
1287
1289
|
secondaryIcon: /* @__PURE__ */ e(dn, { color: "error", filled: !0, size: 12 }),
|
|
1288
1290
|
transactions: n.spendingFee
|
|
1289
1291
|
}
|
|
@@ -1291,8 +1293,8 @@ const zo = ({ total: t }) => {
|
|
|
1291
1293
|
]
|
|
1292
1294
|
}
|
|
1293
1295
|
) });
|
|
1294
|
-
},
|
|
1295
|
-
const { healthScore: t } =
|
|
1296
|
+
}, Uo = v(qo), Qo = () => {
|
|
1297
|
+
const { healthScore: t } = L(), { finstrong: o } = x(), { key_indicators_spend: n } = o, { pay_bills_on_time_drawer: r } = n, s = Dn(t.spending_fee_transaction_count);
|
|
1296
1298
|
return /* @__PURE__ */ a(
|
|
1297
1299
|
p,
|
|
1298
1300
|
{
|
|
@@ -1311,13 +1313,13 @@ const zo = ({ total: t }) => {
|
|
|
1311
1313
|
" ",
|
|
1312
1314
|
r.pay_bills_on_time_sticky_fee_count
|
|
1313
1315
|
] }),
|
|
1314
|
-
/* @__PURE__ */ e(
|
|
1316
|
+
/* @__PURE__ */ e(Be, { status: s })
|
|
1315
1317
|
] })
|
|
1316
1318
|
]
|
|
1317
1319
|
}
|
|
1318
1320
|
);
|
|
1319
|
-
},
|
|
1320
|
-
const { savingsAndCheckingAccountsBalance: t } = Se(), { finstrong: o } =
|
|
1321
|
+
}, Zo = v(Qo), Jo = () => {
|
|
1322
|
+
const { savingsAndCheckingAccountsBalance: t } = Se(), { finstrong: o } = x();
|
|
1321
1323
|
return /* @__PURE__ */ a(p, { gap: 16, sx: { p: 16 }, children: [
|
|
1322
1324
|
/* @__PURE__ */ e(
|
|
1323
1325
|
Ce,
|
|
@@ -1327,27 +1329,27 @@ const zo = ({ total: t }) => {
|
|
|
1327
1329
|
}
|
|
1328
1330
|
),
|
|
1329
1331
|
/* @__PURE__ */ e(
|
|
1330
|
-
|
|
1332
|
+
Wt,
|
|
1331
1333
|
{
|
|
1332
|
-
loadAccounts: [
|
|
1334
|
+
loadAccounts: [Ge.SAVINGS, Ge.CHECKING],
|
|
1333
1335
|
loadMoreLabel: o.more_accounts
|
|
1334
1336
|
}
|
|
1335
1337
|
)
|
|
1336
1338
|
] });
|
|
1337
|
-
},
|
|
1338
|
-
const { finstrong: t } =
|
|
1339
|
+
}, er = v(Jo), tr = () => {
|
|
1340
|
+
const { finstrong: t } = x(), {
|
|
1339
1341
|
isSpendingInitialized: o,
|
|
1340
1342
|
healthScore: n,
|
|
1341
1343
|
allTransactions: r,
|
|
1342
1344
|
loadSpendTransactions: s,
|
|
1343
1345
|
loadDebtSpend: i
|
|
1344
|
-
} =
|
|
1346
|
+
} = L();
|
|
1345
1347
|
m.useEffect(() => {
|
|
1346
1348
|
o || (s().finally(), i().finally());
|
|
1347
1349
|
}, [o]);
|
|
1348
|
-
const
|
|
1349
|
-
const
|
|
1350
|
-
return [...
|
|
1350
|
+
const l = m.useMemo(() => {
|
|
1351
|
+
const c = r.spend.map((d) => d.transaction), _ = r.debtSpend.map((d) => d.transaction);
|
|
1352
|
+
return [...c, ..._];
|
|
1351
1353
|
}, [r.spend, r.debtSpend]);
|
|
1352
1354
|
return o ? /* @__PURE__ */ a(p, { gap: 16, sx: { p: 16 }, children: [
|
|
1353
1355
|
/* @__PURE__ */ e(
|
|
@@ -1357,11 +1359,11 @@ const zo = ({ total: t }) => {
|
|
|
1357
1359
|
title: t.key_indicators_save.drawer_daily_spend
|
|
1358
1360
|
}
|
|
1359
1361
|
),
|
|
1360
|
-
/* @__PURE__ */ e($e, { amountColor: "text.primary", transactions:
|
|
1362
|
+
/* @__PURE__ */ e($e, { amountColor: "text.primary", transactions: l })
|
|
1361
1363
|
] }) : /* @__PURE__ */ e(te, {});
|
|
1362
|
-
},
|
|
1363
|
-
const [t, o] = m.useState(0), { finstrong: n } =
|
|
1364
|
-
return /* @__PURE__ */ a(
|
|
1364
|
+
}, nr = v(tr), or = () => {
|
|
1365
|
+
const [t, o] = m.useState(0), { finstrong: n } = x();
|
|
1366
|
+
return /* @__PURE__ */ a(G, { children: [
|
|
1365
1367
|
/* @__PURE__ */ a(V, { children: [
|
|
1366
1368
|
/* @__PURE__ */ a(
|
|
1367
1369
|
Xe,
|
|
@@ -1393,13 +1395,13 @@ const zo = ({ total: t }) => {
|
|
|
1393
1395
|
]
|
|
1394
1396
|
}
|
|
1395
1397
|
),
|
|
1396
|
-
/* @__PURE__ */ e(ce, { index: 0, name: "available-details", value: t, children: /* @__PURE__ */ e(
|
|
1397
|
-
/* @__PURE__ */ e(ce, { index: 1, name: "spending-details", value: t, children: /* @__PURE__ */ e(
|
|
1398
|
+
/* @__PURE__ */ e(ce, { index: 0, name: "available-details", value: t, children: /* @__PURE__ */ e(er, {}) }),
|
|
1399
|
+
/* @__PURE__ */ e(ce, { index: 1, name: "spending-details", value: t, children: /* @__PURE__ */ e(nr, {}) })
|
|
1398
1400
|
] }),
|
|
1399
1401
|
/* @__PURE__ */ e(Ue, { chartFor: "savingsOverTime" })
|
|
1400
1402
|
] });
|
|
1401
|
-
},
|
|
1402
|
-
const { finstrong: t } =
|
|
1403
|
+
}, rr = v(or), ar = () => {
|
|
1404
|
+
const { finstrong: t } = x(), { healthScore: o } = L(), n = o.months_of_cash_on_hand, r = bt(n ? n * 30 : null), s = 183 / 6, i = Math.floor(n), l = Math.round((n - i) * s), c = n / 6 * 100;
|
|
1403
1405
|
return /* @__PURE__ */ e(
|
|
1404
1406
|
We,
|
|
1405
1407
|
{
|
|
@@ -1442,14 +1444,14 @@ const zo = ({ total: t }) => {
|
|
|
1442
1444
|
status: r,
|
|
1443
1445
|
statusBarData: [
|
|
1444
1446
|
{
|
|
1445
|
-
percentage: `${
|
|
1447
|
+
percentage: `${c}%`
|
|
1446
1448
|
}
|
|
1447
1449
|
],
|
|
1448
|
-
value: j(t.key_indicators_save.drawer_progress_bar_value, i,
|
|
1450
|
+
value: j(t.key_indicators_save.drawer_progress_bar_value, i, l)
|
|
1449
1451
|
}
|
|
1450
1452
|
);
|
|
1451
|
-
},
|
|
1452
|
-
const { healthScore: t } =
|
|
1453
|
+
}, ir = v(ar), sr = () => {
|
|
1454
|
+
const { healthScore: t } = L(), { finstrong: o } = x(), n = Oe(t.debt_to_income_ratio), r = ft(n);
|
|
1453
1455
|
return /* @__PURE__ */ e(
|
|
1454
1456
|
We,
|
|
1455
1457
|
{
|
|
@@ -1528,8 +1530,8 @@ const zo = ({ total: t }) => {
|
|
|
1528
1530
|
value: W(t.ninety_day_debt_spend, "0,0.00")
|
|
1529
1531
|
}
|
|
1530
1532
|
);
|
|
1531
|
-
},
|
|
1532
|
-
const { healthScore: t, allTransactions: o } =
|
|
1533
|
+
}, cr = v(sr), lr = () => {
|
|
1534
|
+
const { healthScore: t, allTransactions: o } = L(), { connect: n, finstrong: r } = x(), [s, i] = m.useState(!1);
|
|
1533
1535
|
return /* @__PURE__ */ a(p, { gap: 16, sx: { p: 16 }, children: [
|
|
1534
1536
|
/* @__PURE__ */ e(
|
|
1535
1537
|
Ce,
|
|
@@ -1541,9 +1543,9 @@ const zo = ({ total: t }) => {
|
|
|
1541
1543
|
),
|
|
1542
1544
|
o.income.length ? (
|
|
1543
1545
|
// TODO: Need to add More Transactions functionality
|
|
1544
|
-
/* @__PURE__ */ e($e, { transactions: o.income.map((
|
|
1546
|
+
/* @__PURE__ */ e($e, { transactions: o.income.map((l) => l.transaction) })
|
|
1545
1547
|
) : /* @__PURE__ */ e(
|
|
1546
|
-
|
|
1548
|
+
B,
|
|
1547
1549
|
{
|
|
1548
1550
|
onClick: () => {
|
|
1549
1551
|
i(!0);
|
|
@@ -1561,8 +1563,8 @@ const zo = ({ total: t }) => {
|
|
|
1561
1563
|
}
|
|
1562
1564
|
)
|
|
1563
1565
|
] });
|
|
1564
|
-
},
|
|
1565
|
-
const { allTransactions: t, healthScore: o } =
|
|
1566
|
+
}, dr = v(lr), pr = () => {
|
|
1567
|
+
const { allTransactions: t, healthScore: o } = L(), { connect: n, finstrong: r } = x(), [s, i] = m.useState(!1);
|
|
1566
1568
|
return /* @__PURE__ */ a(p, { gap: 16, sx: { p: 16 }, children: [
|
|
1567
1569
|
/* @__PURE__ */ e(
|
|
1568
1570
|
Ce,
|
|
@@ -1578,11 +1580,11 @@ const zo = ({ total: t }) => {
|
|
|
1578
1580
|
$e,
|
|
1579
1581
|
{
|
|
1580
1582
|
amountColor: "text.primary",
|
|
1581
|
-
transactions: t.debtSpend.map((
|
|
1583
|
+
transactions: t.debtSpend.map((l) => l.transaction)
|
|
1582
1584
|
}
|
|
1583
1585
|
)
|
|
1584
1586
|
) : /* @__PURE__ */ e(
|
|
1585
|
-
|
|
1587
|
+
B,
|
|
1586
1588
|
{
|
|
1587
1589
|
onClick: () => {
|
|
1588
1590
|
i(!0);
|
|
@@ -1600,68 +1602,63 @@ const zo = ({ total: t }) => {
|
|
|
1600
1602
|
}
|
|
1601
1603
|
)
|
|
1602
1604
|
] });
|
|
1603
|
-
},
|
|
1605
|
+
}, _r = v(pr), hr = ({
|
|
1604
1606
|
color: t,
|
|
1605
1607
|
data: o,
|
|
1606
1608
|
series: n,
|
|
1607
1609
|
style: r,
|
|
1608
1610
|
...s
|
|
1609
1611
|
}) => {
|
|
1610
|
-
const i =
|
|
1612
|
+
const i = E(), l = m.useRef(null), { width: c } = Jn({
|
|
1613
|
+
width: r.width
|
|
1614
|
+
});
|
|
1611
1615
|
m.useLayoutEffect(() => {
|
|
1612
|
-
|
|
1613
|
-
}, [r.width]), m.useLayoutEffect(() => {
|
|
1614
|
-
const x = new ResizeObserver(() => {
|
|
1616
|
+
const h = new ResizeObserver(() => {
|
|
1615
1617
|
window.requestAnimationFrame(() => {
|
|
1616
|
-
if (
|
|
1617
|
-
const { width:
|
|
1618
|
-
|
|
1618
|
+
if (l.current) {
|
|
1619
|
+
const { width: y } = l.current.getBoundingClientRect(), f = y / 2, w = l.current.querySelector("text");
|
|
1620
|
+
w && w.setAttribute("transform", `translate(${f}, -8)`);
|
|
1619
1621
|
}
|
|
1620
1622
|
});
|
|
1621
1623
|
});
|
|
1622
|
-
return
|
|
1623
|
-
|
|
1624
|
+
return l.current && h.observe(l.current), () => {
|
|
1625
|
+
l.current && h.unobserve(l.current);
|
|
1624
1626
|
};
|
|
1625
1627
|
}, []);
|
|
1626
|
-
const { formattedComparison:
|
|
1627
|
-
...r,
|
|
1628
|
-
transition: "all 0.3s ease-in-out"
|
|
1629
|
-
}, w = `translate(${_ / 2}, -5)`;
|
|
1628
|
+
const { formattedComparison: _, formattedMain: d } = o[n.index], u = n.type === 0 ? d : _;
|
|
1630
1629
|
return /* @__PURE__ */ a("g", { children: [
|
|
1631
|
-
/* @__PURE__ */ e(
|
|
1630
|
+
/* @__PURE__ */ e(at.rect, { ...s, fill: t, ref: l, rx: 2, style: r }),
|
|
1632
1631
|
/* @__PURE__ */ e(
|
|
1633
|
-
|
|
1632
|
+
at.text,
|
|
1634
1633
|
{
|
|
1635
1634
|
fill: i.palette.text.secondary,
|
|
1636
1635
|
fontSize: 9,
|
|
1637
1636
|
fontWeight: 400,
|
|
1638
|
-
ref: l,
|
|
1639
|
-
style: { transition: "transform 0.3s ease-in-out" },
|
|
1640
1637
|
textAnchor: "middle",
|
|
1641
|
-
transform:
|
|
1638
|
+
transform: c.to((h) => `translate(${h / 2}, -5)`),
|
|
1642
1639
|
x: r.x,
|
|
1643
1640
|
y: r.y,
|
|
1644
|
-
children:
|
|
1641
|
+
children: u
|
|
1645
1642
|
}
|
|
1646
1643
|
)
|
|
1647
1644
|
] });
|
|
1648
1645
|
}, Te = (t, o = 1e3) => {
|
|
1649
1646
|
const n = Math.abs(t) >= o ? "0.[0]a" : "0";
|
|
1650
1647
|
return W(t, n);
|
|
1651
|
-
},
|
|
1648
|
+
}, $t = ({
|
|
1652
1649
|
chartFor: t,
|
|
1653
1650
|
data: o,
|
|
1654
1651
|
title: n,
|
|
1655
1652
|
buttonLabel: r,
|
|
1656
1653
|
onClick: s,
|
|
1657
1654
|
legendLabelMain: i,
|
|
1658
|
-
legendLabelComparison:
|
|
1659
|
-
totalComparison:
|
|
1655
|
+
legendLabelComparison: l,
|
|
1656
|
+
totalComparison: c,
|
|
1660
1657
|
totalMain: _
|
|
1661
1658
|
}) => {
|
|
1662
|
-
const d =
|
|
1659
|
+
const d = E(), u = qn(d.breakpoints.down("xs")), h = m.useMemo(
|
|
1663
1660
|
() => o.sort((g, b) => g.month - b.month).map((g) => {
|
|
1664
|
-
const b =
|
|
1661
|
+
const b = In(g.month), P = {
|
|
1665
1662
|
spending_vs_income: {
|
|
1666
1663
|
main: g.standard_spend,
|
|
1667
1664
|
comparison: g.income,
|
|
@@ -1677,17 +1674,17 @@ const zo = ({ total: t }) => {
|
|
|
1677
1674
|
};
|
|
1678
1675
|
return {
|
|
1679
1676
|
label: b,
|
|
1680
|
-
...
|
|
1677
|
+
...P[t]
|
|
1681
1678
|
};
|
|
1682
1679
|
}),
|
|
1683
1680
|
[o, t]
|
|
1684
1681
|
), y = {
|
|
1685
1682
|
dataKey: "label",
|
|
1686
1683
|
scaleType: "band"
|
|
1687
|
-
}, f = Math.max(...
|
|
1684
|
+
}, f = Math.max(...h.map((g) => Math.max(g.main, g.comparison))), S = Math.min(...h.map((g) => Math.min(g.main, g.comparison))) === 0 && f === 0 ? 100 : Math.ceil(f * 1.2 / 1e3) * 1e3, D = S / 3, C = {
|
|
1688
1685
|
scaleType: "linear",
|
|
1689
1686
|
min: 0,
|
|
1690
|
-
max:
|
|
1687
|
+
max: S,
|
|
1691
1688
|
tickNumber: 4,
|
|
1692
1689
|
tickMinStep: D,
|
|
1693
1690
|
valueFormatter: (g) => g === 0 ? "$0" : W(g, "0.[0]a")
|
|
@@ -1713,7 +1710,7 @@ const zo = ({ total: t }) => {
|
|
|
1713
1710
|
children: [
|
|
1714
1711
|
/* @__PURE__ */ e(K, { children: n }),
|
|
1715
1712
|
r && /* @__PURE__ */ e(
|
|
1716
|
-
|
|
1713
|
+
B,
|
|
1717
1714
|
{
|
|
1718
1715
|
endIcon: /* @__PURE__ */ e(J, {}),
|
|
1719
1716
|
onClick: s,
|
|
@@ -1747,7 +1744,7 @@ const zo = ({ total: t }) => {
|
|
|
1747
1744
|
i,
|
|
1748
1745
|
" "
|
|
1749
1746
|
] }),
|
|
1750
|
-
!
|
|
1747
|
+
!u && _ && /* @__PURE__ */ e(I, { sx: { fontWeight: 700 }, variant: "subtitle2", children: _ })
|
|
1751
1748
|
] })
|
|
1752
1749
|
] }),
|
|
1753
1750
|
/* @__PURE__ */ a(p, { alignItems: "center", direction: "row", spacing: 8, children: [
|
|
@@ -1764,20 +1761,20 @@ const zo = ({ total: t }) => {
|
|
|
1764
1761
|
),
|
|
1765
1762
|
/* @__PURE__ */ a(p, { sx: { alignItems: "center", flexDirection: "row" }, children: [
|
|
1766
1763
|
/* @__PURE__ */ a(I, { variant: "subtitle2", children: [
|
|
1767
|
-
|
|
1764
|
+
l,
|
|
1768
1765
|
" "
|
|
1769
1766
|
] }),
|
|
1770
|
-
!
|
|
1767
|
+
!u && c && /* @__PURE__ */ e(I, { sx: { fontWeight: 700 }, variant: "subtitle2", children: c })
|
|
1771
1768
|
] })
|
|
1772
1769
|
] })
|
|
1773
1770
|
] }),
|
|
1774
1771
|
/* @__PURE__ */ a(
|
|
1775
|
-
|
|
1772
|
+
Zn,
|
|
1776
1773
|
{
|
|
1777
1774
|
colors: [`${d.palette.chartMono.chartMono3}`, `${d.palette.chartMono.chartMono5}`],
|
|
1778
|
-
dataset:
|
|
1775
|
+
dataset: h,
|
|
1779
1776
|
height: 240,
|
|
1780
|
-
margin: { top:
|
|
1777
|
+
margin: { top: 16, bottom: 34, right: 0, left: 50 },
|
|
1781
1778
|
series: [
|
|
1782
1779
|
{ dataKey: "main", type: "bar" },
|
|
1783
1780
|
{ dataKey: "comparison", type: "bar" }
|
|
@@ -1786,26 +1783,22 @@ const zo = ({ total: t }) => {
|
|
|
1786
1783
|
yAxis: [C],
|
|
1787
1784
|
children: [
|
|
1788
1785
|
/* @__PURE__ */ e(
|
|
1789
|
-
|
|
1786
|
+
an,
|
|
1790
1787
|
{
|
|
1791
1788
|
slots: {
|
|
1792
1789
|
bar: (g) => {
|
|
1793
|
-
const { ownerState: b, ...
|
|
1790
|
+
const { ownerState: b, style: P, ...R } = g;
|
|
1794
1791
|
return /* @__PURE__ */ e(
|
|
1795
|
-
|
|
1792
|
+
hr,
|
|
1796
1793
|
{
|
|
1797
|
-
...
|
|
1794
|
+
...R,
|
|
1798
1795
|
color: b.color,
|
|
1799
|
-
data:
|
|
1796
|
+
data: h,
|
|
1800
1797
|
series: {
|
|
1801
1798
|
index: b.dataIndex,
|
|
1802
1799
|
type: Number(b.id.toString().split("-").pop())
|
|
1803
1800
|
},
|
|
1804
|
-
style:
|
|
1805
|
-
x: g.x,
|
|
1806
|
-
y: g.y,
|
|
1807
|
-
width: g.width
|
|
1808
|
-
}
|
|
1801
|
+
style: P
|
|
1809
1802
|
}
|
|
1810
1803
|
);
|
|
1811
1804
|
}
|
|
@@ -1858,18 +1851,18 @@ const zo = ({ total: t }) => {
|
|
|
1858
1851
|
]
|
|
1859
1852
|
}
|
|
1860
1853
|
);
|
|
1861
|
-
},
|
|
1862
|
-
const { isIncomeInitialized: t, loadDebtSpend: o, loadIncome: n, monthlySummaries: r } =
|
|
1854
|
+
}, ur = () => {
|
|
1855
|
+
const { isIncomeInitialized: t, loadDebtSpend: o, loadIncome: n, monthlySummaries: r } = L(), [s, i] = m.useState(0), { finstrong: l } = x();
|
|
1863
1856
|
return m.useEffect(() => {
|
|
1864
1857
|
t || (o().finally(), n().finally());
|
|
1865
|
-
}, [t]), t ? /* @__PURE__ */ a(
|
|
1858
|
+
}, [t]), t ? /* @__PURE__ */ a(G, { children: [
|
|
1866
1859
|
/* @__PURE__ */ a(V, { children: [
|
|
1867
1860
|
/* @__PURE__ */ a(
|
|
1868
1861
|
Xe,
|
|
1869
1862
|
{
|
|
1870
|
-
"aria-label":
|
|
1863
|
+
"aria-label": l.key_indicators_save.drawer_title,
|
|
1871
1864
|
centered: !0,
|
|
1872
|
-
onChange: (
|
|
1865
|
+
onChange: (c, _) => i(_),
|
|
1873
1866
|
selectionFollowsFocus: !0,
|
|
1874
1867
|
sx: { mb: 0 },
|
|
1875
1868
|
value: s,
|
|
@@ -1880,7 +1873,7 @@ const zo = ({ total: t }) => {
|
|
|
1880
1873
|
{
|
|
1881
1874
|
"aria-controls": "income-details-tabpanel-0",
|
|
1882
1875
|
id: "income-details-tab-0",
|
|
1883
|
-
label:
|
|
1876
|
+
label: l.key_indicators_borrow.have_manageable_debt_drawer.income,
|
|
1884
1877
|
sx: { minHeight: 44 }
|
|
1885
1878
|
}
|
|
1886
1879
|
),
|
|
@@ -1889,7 +1882,7 @@ const zo = ({ total: t }) => {
|
|
|
1889
1882
|
{
|
|
1890
1883
|
"aria-controls": "debt-payment-details-tabpanel-1",
|
|
1891
1884
|
id: "debt-payment-details-tab-1",
|
|
1892
|
-
label:
|
|
1885
|
+
label: l.key_indicators_borrow.have_manageable_debt_drawer.debt_payment,
|
|
1893
1886
|
sx: { minHeight: 44 }
|
|
1894
1887
|
}
|
|
1895
1888
|
)
|
|
@@ -1903,7 +1896,7 @@ const zo = ({ total: t }) => {
|
|
|
1903
1896
|
index: 0,
|
|
1904
1897
|
name: "income-details",
|
|
1905
1898
|
value: s,
|
|
1906
|
-
children: /* @__PURE__ */ e(
|
|
1899
|
+
children: /* @__PURE__ */ e(dr, {})
|
|
1907
1900
|
}
|
|
1908
1901
|
),
|
|
1909
1902
|
/* @__PURE__ */ e(
|
|
@@ -1913,29 +1906,29 @@ const zo = ({ total: t }) => {
|
|
|
1913
1906
|
index: 1,
|
|
1914
1907
|
name: "debt-payment-details",
|
|
1915
1908
|
value: s,
|
|
1916
|
-
children: /* @__PURE__ */ e(
|
|
1909
|
+
children: /* @__PURE__ */ e(_r, {})
|
|
1917
1910
|
}
|
|
1918
1911
|
)
|
|
1919
1912
|
] }),
|
|
1920
|
-
r.length ? /* @__PURE__ */ a(
|
|
1913
|
+
r.length ? /* @__PURE__ */ a(G, { children: [
|
|
1921
1914
|
/* @__PURE__ */ e(
|
|
1922
|
-
|
|
1915
|
+
$t,
|
|
1923
1916
|
{
|
|
1924
1917
|
chartFor: "debt_payment_vs_income",
|
|
1925
1918
|
data: r,
|
|
1926
|
-
legendLabelComparison:
|
|
1927
|
-
legendLabelMain:
|
|
1928
|
-
title:
|
|
1919
|
+
legendLabelComparison: l.key_indicators_borrow.have_manageable_debt_drawer.debt_payment,
|
|
1920
|
+
legendLabelMain: l.key_indicators_borrow.have_manageable_debt_drawer.income,
|
|
1921
|
+
title: l.key_indicators_borrow.have_manageable_debt_drawer.debt_payment
|
|
1929
1922
|
}
|
|
1930
1923
|
),
|
|
1931
1924
|
/* @__PURE__ */ e(Ue, { chartFor: "debtOverTime" })
|
|
1932
|
-
] }) : /* @__PURE__ */ a(
|
|
1925
|
+
] }) : /* @__PURE__ */ a(G, { children: [
|
|
1933
1926
|
/* @__PURE__ */ e(
|
|
1934
1927
|
Fe,
|
|
1935
1928
|
{
|
|
1936
|
-
header:
|
|
1929
|
+
header: l.key_indicators_borrow.have_manageable_debt_drawer.have_manageable_debt_double_bar_chart_empty_state_header,
|
|
1937
1930
|
icon: "multiline_chart",
|
|
1938
|
-
subText:
|
|
1931
|
+
subText: l.key_indicators_borrow.have_manageable_debt_drawer.have_manageable_debt_double_bar_chart_empty_state_description,
|
|
1939
1932
|
sx: {
|
|
1940
1933
|
backgroundColor: "background.paper",
|
|
1941
1934
|
borderRadius: "8px",
|
|
@@ -1949,9 +1942,9 @@ const zo = ({ total: t }) => {
|
|
|
1949
1942
|
/* @__PURE__ */ e(
|
|
1950
1943
|
Fe,
|
|
1951
1944
|
{
|
|
1952
|
-
header:
|
|
1945
|
+
header: l.key_indicators_borrow.have_manageable_debt_drawer.have_manageable_debt_line_chart_empty_state_header,
|
|
1953
1946
|
icon: "multiline_chart",
|
|
1954
|
-
subText:
|
|
1947
|
+
subText: l.key_indicators_borrow.have_manageable_debt_drawer.have_manageable_debt_line_chart_empty_state_description,
|
|
1955
1948
|
sx: {
|
|
1956
1949
|
backgroundColor: "background.paper",
|
|
1957
1950
|
borderRadius: "8px",
|
|
@@ -1964,8 +1957,8 @@ const zo = ({ total: t }) => {
|
|
|
1964
1957
|
)
|
|
1965
1958
|
] })
|
|
1966
1959
|
] }) : /* @__PURE__ */ e(te, {});
|
|
1967
|
-
},
|
|
1968
|
-
const { healthScore: t } =
|
|
1960
|
+
}, mr = v(ur), gr = () => {
|
|
1961
|
+
const { healthScore: t } = L(), { finstrong: o } = x(), n = Oe(t.spend_to_income_ratio), r = n ?? 0, s = Object.keys(t).length === 0, i = xt(n), l = {
|
|
1969
1962
|
GOOD: [{ percentage: `${r}%` }],
|
|
1970
1963
|
FAIR: [{ percentage: "100%" }, { percentage: `${r - 100}%` }],
|
|
1971
1964
|
OFF_TRACK: [{ percentage: "100%" }, { percentage: `${r - 100}%` }],
|
|
@@ -1999,25 +1992,25 @@ const zo = ({ total: t }) => {
|
|
|
1999
1992
|
),
|
|
2000
1993
|
label: o?.key_indicators_spend.spend_less_than_you_make_drawer.spend_less_than_you_make_sticky_description,
|
|
2001
1994
|
status: i,
|
|
2002
|
-
statusBarData:
|
|
1995
|
+
statusBarData: l,
|
|
2003
1996
|
value: s ? "$0" : W(t.ninety_day_spend, "0,0.00")
|
|
2004
1997
|
}
|
|
2005
1998
|
);
|
|
2006
|
-
},
|
|
2007
|
-
const { accounts: t } = Se(), { categories: o, dateRangeCategoryTotals: n, loadDateRangeCategoryTotals: r } = Ke(), { monthlySummaries: s, handleFinstrongWidgetPrimaryCtaClick: i } =
|
|
1999
|
+
}, yr = v(gr), br = () => {
|
|
2000
|
+
const { accounts: t } = Se(), { categories: o, dateRangeCategoryTotals: n, loadDateRangeCategoryTotals: r } = Ke(), { monthlySummaries: s, handleFinstrongWidgetPrimaryCtaClick: i } = L(), { appDataStore: l } = Fn(), { finstrong: c, goals: _, spending: d } = x(), u = E(), [h, y] = m.useState("");
|
|
2008
2001
|
m.useEffect(() => {
|
|
2009
2002
|
r(
|
|
2010
2003
|
t,
|
|
2011
|
-
|
|
2012
|
-
|
|
2004
|
+
At(/* @__PURE__ */ new Date()),
|
|
2005
|
+
Tt(/* @__PURE__ */ new Date())
|
|
2013
2006
|
).finally();
|
|
2014
2007
|
}, [t]);
|
|
2015
2008
|
const f = m.useMemo(
|
|
2016
|
-
() =>
|
|
2009
|
+
() => eo(o, _, u, n),
|
|
2017
2010
|
[o, n]
|
|
2018
2011
|
), w = (C) => {
|
|
2019
|
-
y(
|
|
2020
|
-
}, { totalSpending:
|
|
2012
|
+
y(h === C ? "" : C);
|
|
2013
|
+
}, { totalSpending: S, totalIncome: D } = m.useMemo(() => s?.reduce(
|
|
2021
2014
|
(C, { standard_spend: g = 0, income: b = 0 }) => ({
|
|
2022
2015
|
totalSpending: C.totalSpending + g,
|
|
2023
2016
|
totalIncome: C.totalIncome + b
|
|
@@ -2026,26 +2019,26 @@ const zo = ({ total: t }) => {
|
|
|
2026
2019
|
), [s]);
|
|
2027
2020
|
return /* @__PURE__ */ a(p, { sx: { gap: 24 }, children: [
|
|
2028
2021
|
s.length ? /* @__PURE__ */ e(
|
|
2029
|
-
|
|
2022
|
+
$t,
|
|
2030
2023
|
{
|
|
2031
|
-
...
|
|
2032
|
-
buttonLabel:
|
|
2024
|
+
...l.appData.client_profile?.allow_trends_widget && {
|
|
2025
|
+
buttonLabel: c.key_indicators_spend.spend_less_than_you_make_drawer.view_more
|
|
2033
2026
|
},
|
|
2034
2027
|
chartFor: "spending_vs_income",
|
|
2035
2028
|
data: s,
|
|
2036
|
-
legendLabelComparison:
|
|
2037
|
-
legendLabelMain:
|
|
2029
|
+
legendLabelComparison: c.key_indicators_spend.spend_less_than_you_make_drawer.income,
|
|
2030
|
+
legendLabelMain: c.key_indicators_spend.spend_less_than_you_make_drawer.spending,
|
|
2038
2031
|
onClick: () => i("trends")(),
|
|
2039
|
-
title:
|
|
2032
|
+
title: c.key_indicators_spend.spend_less_than_you_make_drawer.trends,
|
|
2040
2033
|
totalComparison: W(D, "0,0.00"),
|
|
2041
|
-
totalMain: W(
|
|
2034
|
+
totalMain: W(S, "0,0.00")
|
|
2042
2035
|
}
|
|
2043
2036
|
) : /* @__PURE__ */ e(
|
|
2044
2037
|
Fe,
|
|
2045
2038
|
{
|
|
2046
|
-
header:
|
|
2039
|
+
header: c.key_indicators_spend.spend_less_than_you_make_drawer.trends_zero_state_title,
|
|
2047
2040
|
icon: "multiline_chart",
|
|
2048
|
-
subText:
|
|
2041
|
+
subText: c.key_indicators_spend.spend_less_than_you_make_drawer.trends_zero_state_description,
|
|
2049
2042
|
sx: {
|
|
2050
2043
|
backgroundColor: "background.paper",
|
|
2051
2044
|
borderRadius: "8px",
|
|
@@ -2080,9 +2073,9 @@ const zo = ({ total: t }) => {
|
|
|
2080
2073
|
pb: 8
|
|
2081
2074
|
},
|
|
2082
2075
|
children: [
|
|
2083
|
-
/* @__PURE__ */ e(K, { children:
|
|
2084
|
-
|
|
2085
|
-
|
|
2076
|
+
/* @__PURE__ */ e(K, { children: c.key_indicators_spend.spend_less_than_you_make_drawer.spending }),
|
|
2077
|
+
l.appData.client_profile?.allow_spending_widget && /* @__PURE__ */ e(
|
|
2078
|
+
B,
|
|
2086
2079
|
{
|
|
2087
2080
|
endIcon: /* @__PURE__ */ e(J, {}),
|
|
2088
2081
|
onClick: () => i("spending")(),
|
|
@@ -2092,7 +2085,7 @@ const zo = ({ total: t }) => {
|
|
|
2092
2085
|
height: 24
|
|
2093
2086
|
},
|
|
2094
2087
|
variant: "text",
|
|
2095
|
-
children:
|
|
2088
|
+
children: c.key_indicators_spend.spend_less_than_you_make_drawer.view_more
|
|
2096
2089
|
}
|
|
2097
2090
|
)
|
|
2098
2091
|
]
|
|
@@ -2100,20 +2093,20 @@ const zo = ({ total: t }) => {
|
|
|
2100
2093
|
),
|
|
2101
2094
|
/* @__PURE__ */ a(p, { sx: { gap: 12, py: 16, flexDirection: "row", justifyContent: "center" }, children: [
|
|
2102
2095
|
/* @__PURE__ */ e(
|
|
2103
|
-
|
|
2096
|
+
to,
|
|
2104
2097
|
{
|
|
2105
2098
|
data: f,
|
|
2106
2099
|
onSelected: w,
|
|
2107
|
-
selectedId:
|
|
2100
|
+
selectedId: h,
|
|
2108
2101
|
totalLabel: d.total_spending
|
|
2109
2102
|
}
|
|
2110
2103
|
),
|
|
2111
2104
|
/* @__PURE__ */ e(
|
|
2112
|
-
|
|
2105
|
+
no,
|
|
2113
2106
|
{
|
|
2114
2107
|
data: f,
|
|
2115
2108
|
onSelected: w,
|
|
2116
|
-
selectedId:
|
|
2109
|
+
selectedId: h
|
|
2117
2110
|
}
|
|
2118
2111
|
)
|
|
2119
2112
|
] })
|
|
@@ -2122,9 +2115,9 @@ const zo = ({ total: t }) => {
|
|
|
2122
2115
|
) : /* @__PURE__ */ e(
|
|
2123
2116
|
Fe,
|
|
2124
2117
|
{
|
|
2125
|
-
header:
|
|
2118
|
+
header: c.key_indicators_spend.spend_less_than_you_make_drawer.spending_zero_state_title,
|
|
2126
2119
|
icon: "donut_small",
|
|
2127
|
-
subText:
|
|
2120
|
+
subText: c.key_indicators_spend.spend_less_than_you_make_drawer.spending_zero_state_description,
|
|
2128
2121
|
sx: {
|
|
2129
2122
|
backgroundColor: "background.paper",
|
|
2130
2123
|
borderRadius: "8px",
|
|
@@ -2141,17 +2134,17 @@ const zo = ({ total: t }) => {
|
|
|
2141
2134
|
}
|
|
2142
2135
|
)
|
|
2143
2136
|
] });
|
|
2144
|
-
},
|
|
2137
|
+
}, fr = v(br), xr = ({
|
|
2145
2138
|
drawerFor: t,
|
|
2146
2139
|
isOpen: o,
|
|
2147
2140
|
onClose: n
|
|
2148
2141
|
}) => {
|
|
2149
|
-
const { finstrong: r } =
|
|
2142
|
+
const { finstrong: r } = x(), i = {
|
|
2150
2143
|
spendLessThanYouMake: {
|
|
2151
2144
|
title: r.key_indicators_spend.spend_less_than_you_make_drawer.spend_less_than_you_make_title,
|
|
2152
2145
|
description: r.key_indicators_spend.spend_less_than_you_make_drawer.spend_less_than_you_make_description,
|
|
2153
|
-
stickyComponent: /* @__PURE__ */ e(
|
|
2154
|
-
content: /* @__PURE__ */ e(
|
|
2146
|
+
stickyComponent: /* @__PURE__ */ e(yr, {}),
|
|
2147
|
+
content: /* @__PURE__ */ e(fr, {}),
|
|
2155
2148
|
drawerType: "connectDrawer",
|
|
2156
2149
|
connectTitle: r.connect_your_accounts,
|
|
2157
2150
|
connectDescription: r.connect_more_accounts_to_unlock_a_fuller_understanding_of_your_finances
|
|
@@ -2159,16 +2152,16 @@ const zo = ({ total: t }) => {
|
|
|
2159
2152
|
payBillsOnTime: {
|
|
2160
2153
|
title: r.key_indicators_spend.pay_bills_on_time_drawer.pay_bills_on_time_title,
|
|
2161
2154
|
description: r.key_indicators_spend.pay_bills_on_time_drawer.pay_bills_on_time_description,
|
|
2162
|
-
stickyComponent: /* @__PURE__ */ e(
|
|
2163
|
-
content: /* @__PURE__ */ e(
|
|
2155
|
+
stickyComponent: /* @__PURE__ */ e(Zo, {}),
|
|
2156
|
+
content: /* @__PURE__ */ e(Uo, {}),
|
|
2164
2157
|
drawerType: "connectDrawer",
|
|
2165
2158
|
connectTitle: r.connect_your_accounts,
|
|
2166
2159
|
connectDescription: r.connect_more_accounts_to_unlock_a_fuller_understanding_of_your_finances
|
|
2167
2160
|
},
|
|
2168
2161
|
maintainEmergencySavings: {
|
|
2169
|
-
content: /* @__PURE__ */ e(
|
|
2162
|
+
content: /* @__PURE__ */ e(jo, {}),
|
|
2170
2163
|
description: r.maintain_emergency_savings_description,
|
|
2171
|
-
stickyComponent: /* @__PURE__ */ e(
|
|
2164
|
+
stickyComponent: /* @__PURE__ */ e(Xo, {}),
|
|
2172
2165
|
title: r.maintain_emergency_savings_title,
|
|
2173
2166
|
drawerType: "connectDrawer",
|
|
2174
2167
|
connectTitle: r.connect_your_accounts,
|
|
@@ -2177,30 +2170,30 @@ const zo = ({ total: t }) => {
|
|
|
2177
2170
|
haveManageableDebt: {
|
|
2178
2171
|
title: r.key_indicators_borrow.have_manageable_debt_drawer.have_manageable_debt_title,
|
|
2179
2172
|
description: r.key_indicators_borrow.have_manageable_debt_drawer.have_manageable_debt_description,
|
|
2180
|
-
stickyComponent: /* @__PURE__ */ e(
|
|
2181
|
-
content: /* @__PURE__ */ e(
|
|
2173
|
+
stickyComponent: /* @__PURE__ */ e(cr, {}),
|
|
2174
|
+
content: /* @__PURE__ */ e(mr, {}),
|
|
2182
2175
|
drawerType: "connectDrawer",
|
|
2183
2176
|
connectTitle: r.dont_see_all_your_accounts,
|
|
2184
2177
|
connectDescription: r.connect_more_accounts_to_view_more_accurate_financial_picture
|
|
2185
2178
|
},
|
|
2186
2179
|
haveAGoodCreditScore: {
|
|
2187
|
-
title: /* @__PURE__ */ e(
|
|
2180
|
+
title: /* @__PURE__ */ e(Wo, {}),
|
|
2188
2181
|
description: r.credit_score_description,
|
|
2189
2182
|
stickyComponent: null,
|
|
2190
|
-
content: /* @__PURE__ */ e(
|
|
2183
|
+
content: /* @__PURE__ */ e(Po, {})
|
|
2191
2184
|
},
|
|
2192
2185
|
saveEnoughToLiveOn: {
|
|
2193
2186
|
title: r.key_indicators_save.drawer_title,
|
|
2194
2187
|
description: r.key_indicators_save.drawer_description,
|
|
2195
|
-
stickyComponent: /* @__PURE__ */ e(
|
|
2196
|
-
content: /* @__PURE__ */ e(
|
|
2188
|
+
stickyComponent: /* @__PURE__ */ e(ir, {}),
|
|
2189
|
+
content: /* @__PURE__ */ e(rr, {}),
|
|
2197
2190
|
drawerType: "connectDrawer",
|
|
2198
2191
|
connectTitle: r.dont_see_all_your_accounts,
|
|
2199
2192
|
connectDescription: r.connect_more_accounts_to_view_more_accurate_financial_picture
|
|
2200
2193
|
}
|
|
2201
2194
|
}[t];
|
|
2202
2195
|
return /* @__PURE__ */ e(
|
|
2203
|
-
|
|
2196
|
+
Pt,
|
|
2204
2197
|
{
|
|
2205
2198
|
connectDescription: i?.connectDescription,
|
|
2206
2199
|
connectTitle: i?.connectTitle,
|
|
@@ -2215,22 +2208,22 @@ const zo = ({ total: t }) => {
|
|
|
2215
2208
|
children: /* @__PURE__ */ e(p, { sx: { gap: 16 }, children: i.content })
|
|
2216
2209
|
}
|
|
2217
2210
|
);
|
|
2218
|
-
},
|
|
2211
|
+
}, Sr = v(xr), xe = ({
|
|
2219
2212
|
drawerFor: t,
|
|
2220
2213
|
title: o,
|
|
2221
2214
|
description: n,
|
|
2222
2215
|
cardState: r = "MISSING"
|
|
2223
2216
|
}) => {
|
|
2224
|
-
const { finstrong: s } =
|
|
2225
|
-
(_.key === "Enter" || _.key === " ") && (_.preventDefault(),
|
|
2217
|
+
const { finstrong: s } = x(), [i, l] = m.useState(!1), c = (_) => {
|
|
2218
|
+
(_.key === "Enter" || _.key === " ") && (_.preventDefault(), l(!0));
|
|
2226
2219
|
};
|
|
2227
|
-
return /* @__PURE__ */ a(
|
|
2220
|
+
return /* @__PURE__ */ a(G, { children: [
|
|
2228
2221
|
/* @__PURE__ */ a(
|
|
2229
2222
|
p,
|
|
2230
2223
|
{
|
|
2231
2224
|
"aria-label": `${s.key_indicators_open} ${o}`,
|
|
2232
|
-
onClick: () =>
|
|
2233
|
-
onKeyDown:
|
|
2225
|
+
onClick: () => l(!0),
|
|
2226
|
+
onKeyDown: c,
|
|
2234
2227
|
role: "button",
|
|
2235
2228
|
sx: {
|
|
2236
2229
|
alignItems: "center",
|
|
@@ -2248,7 +2241,7 @@ const zo = ({ total: t }) => {
|
|
|
2248
2241
|
/* @__PURE__ */ a(p, { sx: { gap: 8, minWidth: 0 }, children: [
|
|
2249
2242
|
/* @__PURE__ */ a(p, { sx: { alignItems: "center", flexDirection: "row", gap: 8 }, children: [
|
|
2250
2243
|
/* @__PURE__ */ e(I, { sx: { fontWeight: 600 }, variant: "body1", children: o }),
|
|
2251
|
-
/* @__PURE__ */ e(
|
|
2244
|
+
/* @__PURE__ */ e(Be, { status: r })
|
|
2252
2245
|
] }),
|
|
2253
2246
|
/* @__PURE__ */ e(M, { color: "secondary", variant: "subtitle2", children: n })
|
|
2254
2247
|
] }),
|
|
@@ -2257,33 +2250,33 @@ const zo = ({ total: t }) => {
|
|
|
2257
2250
|
}
|
|
2258
2251
|
),
|
|
2259
2252
|
/* @__PURE__ */ e(
|
|
2260
|
-
|
|
2253
|
+
Sr,
|
|
2261
2254
|
{
|
|
2262
2255
|
drawerFor: t,
|
|
2263
2256
|
isOpen: i,
|
|
2264
|
-
onClose: () =>
|
|
2257
|
+
onClose: () => l(!1)
|
|
2265
2258
|
}
|
|
2266
2259
|
)
|
|
2267
2260
|
] });
|
|
2268
|
-
},
|
|
2269
|
-
const { finstrong: t } =
|
|
2270
|
-
const
|
|
2261
|
+
}, Cr = () => {
|
|
2262
|
+
const { finstrong: t } = x(), { key_indicators_spend: o } = t, { healthScore: n } = L(), r = (l) => {
|
|
2263
|
+
const c = xt(l), _ = {
|
|
2271
2264
|
GOOD: o.ratio_good_description,
|
|
2272
2265
|
FAIR: o.ratio_fair_description,
|
|
2273
2266
|
OFF_TRACK: o.ratio_off_track_description,
|
|
2274
2267
|
MISSING: o.ratio_missing_description
|
|
2275
|
-
}, d =
|
|
2268
|
+
}, d = c === "MISSING" ? _[c] : j(_[c], l);
|
|
2276
2269
|
return {
|
|
2277
|
-
cardState:
|
|
2270
|
+
cardState: c,
|
|
2278
2271
|
description: d,
|
|
2279
2272
|
title: o.ratio_card_title
|
|
2280
2273
|
};
|
|
2281
2274
|
}, { spendToIncomeRatio: s, spendFeeCount: i } = m.useMemo(() => {
|
|
2282
|
-
const
|
|
2275
|
+
const l = n.spend_to_income_ratio !== null ? Math.round(n.spend_to_income_ratio * 100) : null, c = r(l), _ = An(
|
|
2283
2276
|
n.spending_fee_transaction_count,
|
|
2284
2277
|
o
|
|
2285
2278
|
);
|
|
2286
|
-
return { spendToIncomeRatio:
|
|
2279
|
+
return { spendToIncomeRatio: c, spendFeeCount: _ };
|
|
2287
2280
|
}, [
|
|
2288
2281
|
n.spend_to_income_ratio,
|
|
2289
2282
|
n.spending_fee_transaction_count,
|
|
@@ -2310,38 +2303,38 @@ const zo = ({ total: t }) => {
|
|
|
2310
2303
|
}
|
|
2311
2304
|
)
|
|
2312
2305
|
] });
|
|
2313
|
-
},
|
|
2314
|
-
const { healthScore: t } =
|
|
2315
|
-
const _ =
|
|
2306
|
+
}, vr = v(Cr), wr = () => {
|
|
2307
|
+
const { healthScore: t } = L(), { finstrong: o } = x(), { key_indicators_save: n } = o, r = (c) => {
|
|
2308
|
+
const _ = bt(c), d = {
|
|
2316
2309
|
GOOD: n.days_of_cash_good_description,
|
|
2317
2310
|
FAIR: n.days_of_cash_fair_description,
|
|
2318
2311
|
OFF_TRACK: n.days_of_cash_off_track_description,
|
|
2319
2312
|
MISSING: n.days_of_cash_missing_description
|
|
2320
|
-
},
|
|
2313
|
+
}, u = _ === "MISSING" ? d[_] : j(d[_], c);
|
|
2321
2314
|
return {
|
|
2322
2315
|
cardState: _,
|
|
2323
|
-
description:
|
|
2316
|
+
description: u,
|
|
2324
2317
|
title: n.days_of_cash_title
|
|
2325
2318
|
};
|
|
2326
|
-
}, s = (
|
|
2327
|
-
const _ =
|
|
2319
|
+
}, s = (c) => {
|
|
2320
|
+
const _ = yt(c), d = {
|
|
2328
2321
|
GOOD: n.emergency_savings_good_description,
|
|
2329
2322
|
FAIR: n.emergency_savings_fair_description,
|
|
2330
2323
|
OFF_TRACK: n.emergency_savings_off_track_description,
|
|
2331
2324
|
MISSING: n.emergency_savings_missing_description
|
|
2332
2325
|
};
|
|
2333
|
-
let
|
|
2334
|
-
return _ === "FAIR" &&
|
|
2326
|
+
let u;
|
|
2327
|
+
return _ === "FAIR" && c !== null ? u = j(
|
|
2335
2328
|
d[_],
|
|
2336
|
-
W(
|
|
2337
|
-
) :
|
|
2329
|
+
W(c, "0,0.00")
|
|
2330
|
+
) : u = d[_], {
|
|
2338
2331
|
cardState: _,
|
|
2339
|
-
description:
|
|
2332
|
+
description: u,
|
|
2340
2333
|
title: n.emergency_savings_title
|
|
2341
2334
|
};
|
|
2342
|
-
}, { daysOfCashOnHand: i, emergencySavings:
|
|
2343
|
-
const
|
|
2344
|
-
return { daysOfCashOnHand: _, emergencySavings:
|
|
2335
|
+
}, { daysOfCashOnHand: i, emergencySavings: l } = m.useMemo(() => {
|
|
2336
|
+
const c = t.months_of_cash_on_hand !== null ? Math.round(t.months_of_cash_on_hand * 30) : null, _ = r(c), d = t.emergency_savings_on_hand !== null ? Math.round(t.emergency_savings_on_hand) : null, u = s(d);
|
|
2337
|
+
return { daysOfCashOnHand: _, emergencySavings: u };
|
|
2345
2338
|
}, [
|
|
2346
2339
|
t.months_of_cash_on_hand,
|
|
2347
2340
|
t.emergency_savings_on_hand,
|
|
@@ -2361,68 +2354,68 @@ const zo = ({ total: t }) => {
|
|
|
2361
2354
|
/* @__PURE__ */ e(
|
|
2362
2355
|
xe,
|
|
2363
2356
|
{
|
|
2364
|
-
cardState:
|
|
2365
|
-
description:
|
|
2357
|
+
cardState: l.cardState,
|
|
2358
|
+
description: l.description,
|
|
2366
2359
|
drawerFor: de.MaintainEmergencySavings,
|
|
2367
|
-
title:
|
|
2360
|
+
title: l.title
|
|
2368
2361
|
}
|
|
2369
2362
|
)
|
|
2370
2363
|
] });
|
|
2371
|
-
},
|
|
2372
|
-
const { healthScore: t } =
|
|
2373
|
-
const d =
|
|
2364
|
+
}, kr = v(wr), Mr = () => {
|
|
2365
|
+
const { healthScore: t } = L(), { finstrong: o } = x(), { key_indicators_borrow: n } = o, { user: r } = ee(), s = (_) => {
|
|
2366
|
+
const d = ft(_), u = {
|
|
2374
2367
|
GOOD: n.manage_debit_good_description,
|
|
2375
2368
|
FAIR: n.manage_debit_fair_description,
|
|
2376
2369
|
OFF_TRACK: n.manage_debit_off_track_description,
|
|
2377
2370
|
MISSING: n.manage_debit_missing_description
|
|
2378
|
-
},
|
|
2371
|
+
}, h = d === "FAIR" || d === "OFF_TRACK" ? j(u[d], _) : u[d];
|
|
2379
2372
|
return {
|
|
2380
2373
|
cardState: d,
|
|
2381
|
-
description:
|
|
2374
|
+
description: h,
|
|
2382
2375
|
title: n.manage_debit_title
|
|
2383
2376
|
};
|
|
2384
2377
|
}, i = (_) => {
|
|
2385
|
-
const d =
|
|
2378
|
+
const d = gt(_), u = {
|
|
2386
2379
|
GOOD: n.credit_score_good_description,
|
|
2387
2380
|
FAIR: n.credit_score_fair_description,
|
|
2388
2381
|
OFF_TRACK: n.credit_score_off_track_description,
|
|
2389
2382
|
MISSING: n.credit_score_missing_description
|
|
2390
|
-
},
|
|
2383
|
+
}, h = d === "MISSING" ? u[d] : j(u[d], _);
|
|
2391
2384
|
return {
|
|
2392
2385
|
cardState: d,
|
|
2393
|
-
description:
|
|
2386
|
+
description: h,
|
|
2394
2387
|
title: n.credit_score_title
|
|
2395
2388
|
};
|
|
2396
|
-
}, { manageDebtStatus:
|
|
2397
|
-
const _ = t.debt_to_income_ratio !== null ? Math.round(t.debt_to_income_ratio * 100) : null, d = s(_),
|
|
2389
|
+
}, { manageDebtStatus: l, creditScoreStatus: c } = m.useMemo(() => {
|
|
2390
|
+
const _ = t.debt_to_income_ratio !== null ? Math.round(t.debt_to_income_ratio * 100) : null, d = s(_), u = i(r.credit_score || null);
|
|
2398
2391
|
return {
|
|
2399
2392
|
manageDebtStatus: d,
|
|
2400
|
-
creditScoreStatus:
|
|
2393
|
+
creditScoreStatus: u
|
|
2401
2394
|
};
|
|
2402
2395
|
}, [t.debt_to_income_ratio, r.credit_score, n, o]);
|
|
2403
2396
|
return /* @__PURE__ */ a(p, { direction: "column", gap: 24, sx: { p: 8, pt: 24 }, children: [
|
|
2404
2397
|
/* @__PURE__ */ e(
|
|
2405
2398
|
xe,
|
|
2406
2399
|
{
|
|
2407
|
-
cardState:
|
|
2408
|
-
description:
|
|
2400
|
+
cardState: l.cardState,
|
|
2401
|
+
description: l.description,
|
|
2409
2402
|
drawerFor: de.HaveManageableDebt,
|
|
2410
|
-
title:
|
|
2403
|
+
title: l.title
|
|
2411
2404
|
}
|
|
2412
2405
|
),
|
|
2413
2406
|
/* @__PURE__ */ e(
|
|
2414
2407
|
xe,
|
|
2415
2408
|
{
|
|
2416
|
-
cardState:
|
|
2417
|
-
description:
|
|
2409
|
+
cardState: c.cardState,
|
|
2410
|
+
description: c.description,
|
|
2418
2411
|
drawerFor: de.HaveAGoodCreditScore,
|
|
2419
|
-
title:
|
|
2412
|
+
title: c.title
|
|
2420
2413
|
}
|
|
2421
2414
|
)
|
|
2422
2415
|
] });
|
|
2423
|
-
},
|
|
2424
|
-
const [t, o] = m.useState(0), { finstrong: n } =
|
|
2425
|
-
return /* @__PURE__ */ a(
|
|
2416
|
+
}, Dr = v(Mr), Ir = () => {
|
|
2417
|
+
const [t, o] = m.useState(0), { finstrong: n } = x();
|
|
2418
|
+
return /* @__PURE__ */ a(G, { children: [
|
|
2426
2419
|
/* @__PURE__ */ a(
|
|
2427
2420
|
Xe,
|
|
2428
2421
|
{
|
|
@@ -2476,12 +2469,12 @@ const zo = ({ total: t }) => {
|
|
|
2476
2469
|
]
|
|
2477
2470
|
}
|
|
2478
2471
|
),
|
|
2479
|
-
/* @__PURE__ */ e(ce, { index: 0, name: "spend-details", value: t, children: /* @__PURE__ */ e(
|
|
2480
|
-
/* @__PURE__ */ e(ce, { index: 1, name: "save-details", value: t, children: /* @__PURE__ */ e(
|
|
2481
|
-
/* @__PURE__ */ e(ce, { index: 2, name: "borrow-details", value: t, children: /* @__PURE__ */ e(
|
|
2472
|
+
/* @__PURE__ */ e(ce, { index: 0, name: "spend-details", value: t, children: /* @__PURE__ */ e(vr, {}) }),
|
|
2473
|
+
/* @__PURE__ */ e(ce, { index: 1, name: "save-details", value: t, children: /* @__PURE__ */ e(kr, {}) }),
|
|
2474
|
+
/* @__PURE__ */ e(ce, { index: 2, name: "borrow-details", value: t, children: /* @__PURE__ */ e(Dr, {}) })
|
|
2482
2475
|
] });
|
|
2483
|
-
},
|
|
2484
|
-
const { finstrong: o } =
|
|
2476
|
+
}, Ar = v(Ir), Tr = ({ onClick: t }) => {
|
|
2477
|
+
const { finstrong: o } = x(), { isCopyLoaded: n } = q();
|
|
2485
2478
|
return n ? /* @__PURE__ */ a(p, { sx: { alignItems: "center", gap: 12, pt: 12, pb: 32 }, children: [
|
|
2486
2479
|
/* @__PURE__ */ e(_t, { size: 48 }),
|
|
2487
2480
|
/* @__PURE__ */ a(p, { sx: { alignItems: "center", gap: 4, textAlign: "center" }, children: [
|
|
@@ -2489,7 +2482,7 @@ const zo = ({ total: t }) => {
|
|
|
2489
2482
|
/* @__PURE__ */ e(M, { sx: { width: { sm: 348 } }, variant: "subtitle1", children: o.missing_data_description })
|
|
2490
2483
|
] }),
|
|
2491
2484
|
/* @__PURE__ */ e(k, { children: /* @__PURE__ */ e(
|
|
2492
|
-
|
|
2485
|
+
B,
|
|
2493
2486
|
{
|
|
2494
2487
|
endIcon: /* @__PURE__ */ e(J, {}),
|
|
2495
2488
|
onClick: t,
|
|
@@ -2505,46 +2498,46 @@ const zo = ({ total: t }) => {
|
|
|
2505
2498
|
}
|
|
2506
2499
|
) })
|
|
2507
2500
|
] }) : /* @__PURE__ */ e(te, {});
|
|
2508
|
-
},
|
|
2501
|
+
}, Or = v(Tr), Rr = ({
|
|
2509
2502
|
firstDay: t,
|
|
2510
2503
|
frequency: o,
|
|
2511
2504
|
secondDay: n,
|
|
2512
2505
|
incomeTransactions: r,
|
|
2513
2506
|
setCurrentStep: s,
|
|
2514
2507
|
setFirstDay: i,
|
|
2515
|
-
setFrequency:
|
|
2516
|
-
setSecondDay:
|
|
2508
|
+
setFrequency: l,
|
|
2509
|
+
setSecondDay: c,
|
|
2517
2510
|
transaction: _
|
|
2518
2511
|
}) => {
|
|
2519
|
-
const { finstrong: d } =
|
|
2512
|
+
const { finstrong: d } = x();
|
|
2520
2513
|
return /* @__PURE__ */ a(m.Fragment, { children: [
|
|
2521
2514
|
/* @__PURE__ */ a(p, { children: [
|
|
2522
|
-
!!r.length && /* @__PURE__ */ e(k, { sx: { pb: 24 }, children: r.reduce((
|
|
2523
|
-
if (
|
|
2524
|
-
const f =
|
|
2525
|
-
return
|
|
2515
|
+
!!r.length && /* @__PURE__ */ e(k, { sx: { pb: 24 }, children: r.reduce((u, h, y) => {
|
|
2516
|
+
if (h.guid === _.guid) return u;
|
|
2517
|
+
const f = Kn(y, r), w = Vn(y, r);
|
|
2518
|
+
return u.push(
|
|
2526
2519
|
/* @__PURE__ */ a(m.Fragment, { children: [
|
|
2527
|
-
f && /* @__PURE__ */ e(
|
|
2528
|
-
/* @__PURE__ */ e(
|
|
2520
|
+
f && /* @__PURE__ */ e(Yn, { children: It(h.date) }),
|
|
2521
|
+
/* @__PURE__ */ e(Xn, { transaction: h }),
|
|
2529
2522
|
/* @__PURE__ */ e(le, { sx: { ml: w ? 44 : 0 } })
|
|
2530
|
-
] },
|
|
2531
|
-
),
|
|
2523
|
+
] }, h.guid)
|
|
2524
|
+
), u;
|
|
2532
2525
|
}, []) }),
|
|
2533
2526
|
/* @__PURE__ */ e(
|
|
2534
|
-
|
|
2527
|
+
io,
|
|
2535
2528
|
{
|
|
2536
2529
|
firstDay: t,
|
|
2537
2530
|
frequency: o,
|
|
2538
2531
|
onFirstDayChange: i,
|
|
2539
|
-
onFrequencyChange:
|
|
2540
|
-
onSecondDayChange:
|
|
2532
|
+
onFrequencyChange: l,
|
|
2533
|
+
onSecondDayChange: c,
|
|
2541
2534
|
secondDay: n,
|
|
2542
2535
|
transaction: _
|
|
2543
2536
|
}
|
|
2544
2537
|
)
|
|
2545
2538
|
] }),
|
|
2546
2539
|
/* @__PURE__ */ e(k, { sx: { px: 24 }, children: /* @__PURE__ */ e(
|
|
2547
|
-
|
|
2540
|
+
B,
|
|
2548
2541
|
{
|
|
2549
2542
|
fullWidth: !0,
|
|
2550
2543
|
onClick: () => s({ step: O.MonthlyIncome, type: "main" }),
|
|
@@ -2553,12 +2546,12 @@ const zo = ({ total: t }) => {
|
|
|
2553
2546
|
}
|
|
2554
2547
|
) })
|
|
2555
2548
|
] });
|
|
2556
|
-
},
|
|
2557
|
-
const { finstrong: n } =
|
|
2549
|
+
}, Fr = v(Rr), Lr = ({ selectedDate: t, setSelectedDate: o }) => {
|
|
2550
|
+
const { finstrong: n } = x(), r = E(), s = (i) => {
|
|
2558
2551
|
o(Math.floor(new Date(i).getTime() / 1e3));
|
|
2559
2552
|
};
|
|
2560
|
-
return /* @__PURE__ */ e(k, { sx: { p: 24 }, children: /* @__PURE__ */ e(
|
|
2561
|
-
|
|
2553
|
+
return /* @__PURE__ */ e(k, { sx: { p: 24 }, children: /* @__PURE__ */ e(lo, { dateAdapter: Ot, children: /* @__PURE__ */ e(
|
|
2554
|
+
po,
|
|
2562
2555
|
{
|
|
2563
2556
|
disableFuture: !0,
|
|
2564
2557
|
label: n.onboarding_select_date,
|
|
@@ -2587,8 +2580,8 @@ const zo = ({ total: t }) => {
|
|
|
2587
2580
|
value: t ? new Date(t * 1e3) : null
|
|
2588
2581
|
}
|
|
2589
2582
|
) }) });
|
|
2590
|
-
},
|
|
2591
|
-
const { finstrong: n } =
|
|
2583
|
+
}, Pr = v(Lr), Br = ({ creditScore: t, setCreditScore: o }) => {
|
|
2584
|
+
const { finstrong: n } = x(), r = !isNaN(t);
|
|
2592
2585
|
return /* @__PURE__ */ e(k, { sx: { p: 24 }, children: /* @__PURE__ */ e(
|
|
2593
2586
|
Re,
|
|
2594
2587
|
{
|
|
@@ -2604,7 +2597,7 @@ const zo = ({ total: t }) => {
|
|
|
2604
2597
|
value: r ? t : ""
|
|
2605
2598
|
}
|
|
2606
2599
|
) });
|
|
2607
|
-
},
|
|
2600
|
+
}, Wr = v(Br), zt = ({ value: t, completeCopy: o }) => /* @__PURE__ */ a(p, { sx: { gap: 8 }, children: [
|
|
2608
2601
|
/* @__PURE__ */ e(p, { sx: { flexDirection: "row", gap: 4 }, children: Array.from({ length: 4 }).map((n, r) => /* @__PURE__ */ e(
|
|
2609
2602
|
k,
|
|
2610
2603
|
{
|
|
@@ -2622,7 +2615,7 @@ const zo = ({ total: t }) => {
|
|
|
2622
2615
|
"% ",
|
|
2623
2616
|
o
|
|
2624
2617
|
] })
|
|
2625
|
-
] }),
|
|
2618
|
+
] }), $r = ({
|
|
2626
2619
|
completeCopy: t,
|
|
2627
2620
|
primaryText: o,
|
|
2628
2621
|
secondaryText: n,
|
|
@@ -2632,44 +2625,44 @@ const zo = ({ total: t }) => {
|
|
|
2632
2625
|
/* @__PURE__ */ e(K, { children: o }),
|
|
2633
2626
|
/* @__PURE__ */ e(M, { variant: "subtitle1", children: n })
|
|
2634
2627
|
] }),
|
|
2635
|
-
/* @__PURE__ */ e(
|
|
2636
|
-
] }),
|
|
2628
|
+
/* @__PURE__ */ e(zt, { completeCopy: t, value: r })
|
|
2629
|
+
] }), ct = {
|
|
2637
2630
|
step: O.ConnectAccounts,
|
|
2638
2631
|
type: "main"
|
|
2639
|
-
},
|
|
2640
|
-
const { visibleAccounts: n } = Se(), { calculateHealthScore: r } =
|
|
2641
|
-
|
|
2642
|
-
), [b,
|
|
2632
|
+
}, zr = ({ isOpen: t, onClose: o }) => {
|
|
2633
|
+
const { visibleAccounts: n } = Se(), { calculateHealthScore: r } = L(), { finstrong: s } = x(), { setSelectedAccounts: i } = q(), { addRepeatingTransaction: l, setDateRange: c } = Ve(), { filter: _, setFilter: d, transactions: u } = Ln(), { user: h, userProfile: y, updateUser: f, updateUserProfile: w } = ee(), [S, D] = m.useState(h.credit_score || 0), [C, g] = m.useState(
|
|
2634
|
+
ct
|
|
2635
|
+
), [b, P] = m.useState(1), [R, U] = m.useState(Mt.EveryMonth), [T, $] = m.useState([]), [z, pe] = m.useState(!1), [ve, Q] = m.useState(!1), [Y, _e] = m.useState(h.birthday), [H, he] = m.useState(15), [N, ae] = m.useState("");
|
|
2643
2636
|
m.useEffect(() => {
|
|
2644
|
-
|
|
2637
|
+
c({ start: At(it()), end: Tt(it()) });
|
|
2645
2638
|
}, []), m.useEffect(() => {
|
|
2646
2639
|
d({
|
|
2647
2640
|
accounts: n.map((A) => A.guid),
|
|
2648
2641
|
dateRange: {
|
|
2649
|
-
start:
|
|
2642
|
+
start: ao(/* @__PURE__ */ new Date(), 90),
|
|
2650
2643
|
end: /* @__PURE__ */ new Date()
|
|
2651
2644
|
},
|
|
2652
|
-
custom:
|
|
2645
|
+
custom: st
|
|
2653
2646
|
}), i(n);
|
|
2654
2647
|
}, [n]);
|
|
2655
2648
|
const De = m.useMemo(
|
|
2656
|
-
() =>
|
|
2657
|
-
[N,
|
|
2649
|
+
() => u.find((A) => A.guid === N),
|
|
2650
|
+
[N, u]
|
|
2658
2651
|
), ue = m.useMemo(() => ({
|
|
2659
2652
|
[O.ConnectAccounts]: !0,
|
|
2660
2653
|
[O.MonthlyIncome]: !!N,
|
|
2661
|
-
[O.Birthday]: !!
|
|
2662
|
-
[O.CreditScore]: !!
|
|
2663
|
-
})[C.step], [
|
|
2654
|
+
[O.Birthday]: !!h.birthday || !!Y,
|
|
2655
|
+
[O.CreditScore]: !!h.credit_score || !!S
|
|
2656
|
+
})[C.step], [S, C, Y, N, h]), X = n.length > 0, Gt = m.useMemo(() => {
|
|
2664
2657
|
const { step: A } = C;
|
|
2665
|
-
let
|
|
2666
|
-
return A >= O.MonthlyIncome && X &&
|
|
2667
|
-
}, [C.step, X, T.length,
|
|
2658
|
+
let F = 0;
|
|
2659
|
+
return A >= O.MonthlyIncome && X && F++, A >= O.Birthday && T.length && F++, A >= O.CreditScore && (h.birthday || h.credit_score) && F++, F;
|
|
2660
|
+
}, [C.step, X, T.length, h.birthday, h.credit_score]), Et = (A) => {
|
|
2668
2661
|
d({
|
|
2669
2662
|
..._,
|
|
2670
|
-
custom: (
|
|
2663
|
+
custom: (F) => A ? co(F, A) : st(F)
|
|
2671
2664
|
});
|
|
2672
|
-
},
|
|
2665
|
+
}, Ht = {
|
|
2673
2666
|
[O.ConnectAccounts]: {
|
|
2674
2667
|
main: X ? /* @__PURE__ */ e(Bt, { shouldShowBalance: !1 }) : null,
|
|
2675
2668
|
mainActionContent: X ? s.onboarding_next : s.onboarding_add_accounts,
|
|
@@ -2678,20 +2671,20 @@ const zo = ({ total: t }) => {
|
|
|
2678
2671
|
},
|
|
2679
2672
|
[O.MonthlyIncome]: {
|
|
2680
2673
|
detail: /* @__PURE__ */ e(
|
|
2681
|
-
|
|
2674
|
+
Fr,
|
|
2682
2675
|
{
|
|
2683
2676
|
firstDay: b,
|
|
2684
|
-
frequency:
|
|
2677
|
+
frequency: R,
|
|
2685
2678
|
incomeTransactions: T,
|
|
2686
2679
|
secondDay: H,
|
|
2687
2680
|
setCurrentStep: (A) => {
|
|
2688
|
-
g(A), $((
|
|
2689
|
-
if (
|
|
2690
|
-
const Ae =
|
|
2691
|
-
return Ae ? [...
|
|
2681
|
+
g(A), $((F) => {
|
|
2682
|
+
if (F.some((ie) => ie.guid === N)) return F.filter((ie) => ie.guid !== N);
|
|
2683
|
+
const Ae = u.find((ie) => ie.guid === N);
|
|
2684
|
+
return Ae ? [...F, { ...Ae, firstDay: b, frequency: R, secondDay: H }] : F;
|
|
2692
2685
|
});
|
|
2693
2686
|
},
|
|
2694
|
-
setFirstDay:
|
|
2687
|
+
setFirstDay: P,
|
|
2695
2688
|
setFrequency: U,
|
|
2696
2689
|
setSecondDay: he,
|
|
2697
2690
|
transaction: De
|
|
@@ -2699,7 +2692,7 @@ const zo = ({ total: t }) => {
|
|
|
2699
2692
|
),
|
|
2700
2693
|
detailActionContent: s.onboarding_confirm_income,
|
|
2701
2694
|
main: /* @__PURE__ */ e(
|
|
2702
|
-
|
|
2695
|
+
so,
|
|
2703
2696
|
{
|
|
2704
2697
|
onSearch: Et,
|
|
2705
2698
|
onSelected: (A) => {
|
|
@@ -2712,40 +2705,40 @@ const zo = ({ total: t }) => {
|
|
|
2712
2705
|
secondaryText: s.onboarding_add_income_secondary
|
|
2713
2706
|
},
|
|
2714
2707
|
[O.Birthday]: {
|
|
2715
|
-
main: /* @__PURE__ */ e(
|
|
2708
|
+
main: /* @__PURE__ */ e(Pr, { selectedDate: Y, setSelectedDate: _e }),
|
|
2716
2709
|
mainActionContent: s.onboarding_next,
|
|
2717
2710
|
primaryText: s.onboarding_birthday_primary,
|
|
2718
2711
|
secondaryText: s.onboarding_birthday_secondary
|
|
2719
2712
|
},
|
|
2720
2713
|
[O.CreditScore]: {
|
|
2721
|
-
main: /* @__PURE__ */ e(
|
|
2714
|
+
main: /* @__PURE__ */ e(Wr, { creditScore: S, setCreditScore: D }),
|
|
2722
2715
|
mainActionContent: s.onboarding_next,
|
|
2723
2716
|
primaryText: s.onboarding_credit_score_primary,
|
|
2724
2717
|
secondaryText: s.onboarding_credit_score_secondary
|
|
2725
2718
|
}
|
|
2726
2719
|
}, Qe = () => {
|
|
2727
|
-
g(
|
|
2720
|
+
g(ct), pe(!1), ae(""), o();
|
|
2728
2721
|
}, Ze = async () => {
|
|
2729
|
-
pe(!0), await
|
|
2730
|
-
},
|
|
2722
|
+
pe(!0), await Vt(T), await r(), await w({ ...y, has_completed_finstrong_onboarding: !0 }), Qe();
|
|
2723
|
+
}, Nt = () => {
|
|
2731
2724
|
if (C.step === O.CreditScore) {
|
|
2732
2725
|
Ze();
|
|
2733
2726
|
return;
|
|
2734
2727
|
}
|
|
2735
2728
|
g({ step: C.step + 1, type: "main" });
|
|
2736
|
-
},
|
|
2737
|
-
const { step: A } = C,
|
|
2729
|
+
}, jt = () => {
|
|
2730
|
+
const { step: A } = C, F = A + 1;
|
|
2738
2731
|
switch (A) {
|
|
2739
2732
|
case O.Birthday:
|
|
2740
|
-
Y && Y !==
|
|
2733
|
+
Y && Y !== h.birthday && f({ ...h, birthday: Y });
|
|
2741
2734
|
break;
|
|
2742
2735
|
case O.CreditScore:
|
|
2743
|
-
|
|
2736
|
+
S && S !== h.credit_score && f({ ...h, credit_score: S }), Ze();
|
|
2744
2737
|
return;
|
|
2745
2738
|
case O.MonthlyIncome:
|
|
2746
2739
|
N && T.findIndex(({ guid: ge }) => ge === N) === -1 && $((ge) => [
|
|
2747
2740
|
...ge,
|
|
2748
|
-
{ ...De, firstDay: b, frequency:
|
|
2741
|
+
{ ...De, firstDay: b, frequency: R, secondDay: H }
|
|
2749
2742
|
]);
|
|
2750
2743
|
break;
|
|
2751
2744
|
case O.ConnectAccounts:
|
|
@@ -2755,10 +2748,10 @@ const zo = ({ total: t }) => {
|
|
|
2755
2748
|
}
|
|
2756
2749
|
break;
|
|
2757
2750
|
}
|
|
2758
|
-
|
|
2759
|
-
},
|
|
2760
|
-
const { step: A, type:
|
|
2761
|
-
if (
|
|
2751
|
+
F in O && g({ step: F, type: "main" });
|
|
2752
|
+
}, Kt = () => {
|
|
2753
|
+
const { step: A, type: F } = C;
|
|
2754
|
+
if (F === "detail") {
|
|
2762
2755
|
g({ step: A, type: "main" });
|
|
2763
2756
|
return;
|
|
2764
2757
|
}
|
|
@@ -2767,40 +2760,40 @@ const zo = ({ total: t }) => {
|
|
|
2767
2760
|
return;
|
|
2768
2761
|
}
|
|
2769
2762
|
A > O.ConnectAccounts && g({ step: A - 1, type: "main" });
|
|
2770
|
-
},
|
|
2771
|
-
for (const
|
|
2763
|
+
}, Vt = async (A) => {
|
|
2764
|
+
for (const F of A) {
|
|
2772
2765
|
const {
|
|
2773
2766
|
account_guid: ge,
|
|
2774
2767
|
amount: Ae,
|
|
2775
2768
|
date: ie,
|
|
2776
|
-
description:
|
|
2777
|
-
feed_description:
|
|
2778
|
-
firstDay:
|
|
2769
|
+
description: qt,
|
|
2770
|
+
feed_description: Ut,
|
|
2771
|
+
firstDay: Qt,
|
|
2779
2772
|
frequency: Je,
|
|
2780
|
-
secondDay:
|
|
2781
|
-
merchant_guid:
|
|
2782
|
-
payee:
|
|
2783
|
-
transaction_type:
|
|
2784
|
-
} =
|
|
2773
|
+
secondDay: Zt,
|
|
2774
|
+
merchant_guid: Jt,
|
|
2775
|
+
payee: en,
|
|
2776
|
+
transaction_type: tn
|
|
2777
|
+
} = F, nn = Hn(Je, ro(ie)), on = {
|
|
2785
2778
|
account_guid: ge,
|
|
2786
2779
|
amount: Ae,
|
|
2787
2780
|
created_by: 0,
|
|
2788
|
-
description:
|
|
2789
|
-
merchant_guid:
|
|
2790
|
-
predicted_occurs_on:
|
|
2791
|
-
recurrence_day:
|
|
2781
|
+
description: en || qt || Ut,
|
|
2782
|
+
merchant_guid: Jt,
|
|
2783
|
+
predicted_occurs_on: oo(nn, { representation: "date" }),
|
|
2784
|
+
recurrence_day: Qt,
|
|
2792
2785
|
recurrence_type: Je,
|
|
2793
|
-
repeating_transaction_type:
|
|
2794
|
-
second_recurrence_day:
|
|
2795
|
-
transaction_type:
|
|
2796
|
-
user_guid:
|
|
2786
|
+
repeating_transaction_type: Dt.Income,
|
|
2787
|
+
second_recurrence_day: Zt,
|
|
2788
|
+
transaction_type: tn,
|
|
2789
|
+
user_guid: h.guid
|
|
2797
2790
|
};
|
|
2798
|
-
await
|
|
2791
|
+
await l(on, F);
|
|
2799
2792
|
}
|
|
2800
|
-
}, me =
|
|
2793
|
+
}, me = Ht[C.step], Ie = C.step === O.ConnectAccounts, Yt = {
|
|
2801
2794
|
fullWidth: !0,
|
|
2802
2795
|
...Ie && !X && { startIcon: /* @__PURE__ */ e(ht, {}) }
|
|
2803
|
-
},
|
|
2796
|
+
}, Xt = !Ie || Ie && !X;
|
|
2804
2797
|
return /* @__PURE__ */ a(m.Fragment, { children: [
|
|
2805
2798
|
/* @__PURE__ */ e(
|
|
2806
2799
|
oe,
|
|
@@ -2810,32 +2803,32 @@ const zo = ({ total: t }) => {
|
|
|
2810
2803
|
isOpen: t,
|
|
2811
2804
|
isPrimaryDisabled: !ue,
|
|
2812
2805
|
onClose: Qe,
|
|
2813
|
-
onSecondaryAction:
|
|
2814
|
-
primaryButtonProps:
|
|
2806
|
+
onSecondaryAction: Kt,
|
|
2807
|
+
primaryButtonProps: Yt,
|
|
2815
2808
|
primaryText: me?.mainActionContent,
|
|
2816
2809
|
secondaryColor: "primary",
|
|
2817
2810
|
secondaryText: s.onboarding_back,
|
|
2818
2811
|
title: s.title,
|
|
2819
|
-
...!z && { onPrimaryAction:
|
|
2812
|
+
...!z && { onPrimaryAction: jt },
|
|
2820
2813
|
children: /* @__PURE__ */ a(p, { sx: { bgcolor: "background.default", height: "100%" }, children: [
|
|
2821
2814
|
z && /* @__PURE__ */ a(p, { sx: { alignItems: "center", gap: 24, position: "relative", px: 16, top: 126 }, children: [
|
|
2822
|
-
/* @__PURE__ */ e("img", { alt: "", src:
|
|
2815
|
+
/* @__PURE__ */ e("img", { alt: "", src: Oo, style: { minHeight: 100, width: 211 } }),
|
|
2823
2816
|
/* @__PURE__ */ e(Le, { children: s.onboarding_calculate_primary }),
|
|
2824
2817
|
/* @__PURE__ */ e(M, { sx: { textAlign: "center" }, variant: "subtitle1", children: s.onboarding_calculate_secondary })
|
|
2825
2818
|
] }),
|
|
2826
2819
|
me && !z && /* @__PURE__ */ a(m.Fragment, { children: [
|
|
2827
2820
|
/* @__PURE__ */ e(
|
|
2828
|
-
|
|
2821
|
+
$r,
|
|
2829
2822
|
{
|
|
2830
2823
|
completeCopy: s.complete,
|
|
2831
2824
|
primaryText: me.primaryText,
|
|
2832
2825
|
secondaryText: me.secondaryText,
|
|
2833
|
-
value:
|
|
2826
|
+
value: Gt
|
|
2834
2827
|
}
|
|
2835
2828
|
),
|
|
2836
2829
|
C.type === "main" && /* @__PURE__ */ a(k, { sx: { bgcolor: "background.default" }, children: [
|
|
2837
2830
|
me.main,
|
|
2838
|
-
|
|
2831
|
+
Xt && /* @__PURE__ */ e(p, { sx: { alignItems: "center", px: 24, py: 12 }, children: /* @__PURE__ */ e(B, { fullWidth: !0, onClick: Nt, children: s.onboarding_do_it_later }) })
|
|
2839
2832
|
] }),
|
|
2840
2833
|
C.type === "detail" && me.detail
|
|
2841
2834
|
] })
|
|
@@ -2851,8 +2844,8 @@ const zo = ({ total: t }) => {
|
|
|
2851
2844
|
}
|
|
2852
2845
|
)
|
|
2853
2846
|
] });
|
|
2854
|
-
},
|
|
2855
|
-
const { finstrong: t } =
|
|
2847
|
+
}, Gr = v(zr), Er = () => {
|
|
2848
|
+
const { finstrong: t } = x(), [o, n] = m.useState(!1);
|
|
2856
2849
|
return /* @__PURE__ */ a(m.Fragment, { children: [
|
|
2857
2850
|
/* @__PURE__ */ a(
|
|
2858
2851
|
p,
|
|
@@ -2872,15 +2865,15 @@ const zo = ({ total: t }) => {
|
|
|
2872
2865
|
/* @__PURE__ */ e(M, { sx: { color: "text.secondary" }, variant: "subtitle1", children: t.onboarding_subtitle })
|
|
2873
2866
|
] })
|
|
2874
2867
|
] }),
|
|
2875
|
-
/* @__PURE__ */ e(
|
|
2868
|
+
/* @__PURE__ */ e(B, { onClick: () => n(!0), variant: "contained", children: t.onboarding_get_started })
|
|
2876
2869
|
]
|
|
2877
2870
|
}
|
|
2878
2871
|
),
|
|
2879
|
-
/* @__PURE__ */ e(
|
|
2872
|
+
/* @__PURE__ */ e(Gr, { isOpen: o, onClose: () => n(!1) })
|
|
2880
2873
|
] });
|
|
2881
|
-
},
|
|
2882
|
-
const { finstrong: n } =
|
|
2883
|
-
|
|
2874
|
+
}, Hr = ({ isOpen: t, onClose: o }) => {
|
|
2875
|
+
const { finstrong: n } = x(), r = E(), { updateUser: s, user: i } = ee(), [l, c] = m.useState(i.birthday), _ = (u) => {
|
|
2876
|
+
c(Math.floor(new Date(u).getTime() / 1e3));
|
|
2884
2877
|
};
|
|
2885
2878
|
return /* @__PURE__ */ e(
|
|
2886
2879
|
oe,
|
|
@@ -2888,12 +2881,12 @@ const zo = ({ total: t }) => {
|
|
|
2888
2881
|
isOpen: t,
|
|
2889
2882
|
onClose: o,
|
|
2890
2883
|
onPrimaryAction: () => {
|
|
2891
|
-
!
|
|
2884
|
+
!l || l === i.birthday || (s({ ...i, birthday: l }), o());
|
|
2892
2885
|
},
|
|
2893
2886
|
onSecondaryAction: o,
|
|
2894
2887
|
title: n.date_of_birth,
|
|
2895
|
-
children: /* @__PURE__ */ e(p, { sx: { bgcolor: "background.default", height: "100%" }, children: /* @__PURE__ */ e(
|
|
2896
|
-
|
|
2888
|
+
children: /* @__PURE__ */ e(p, { sx: { bgcolor: "background.default", height: "100%" }, children: /* @__PURE__ */ e(uo, { dateAdapter: Ot, children: /* @__PURE__ */ e(
|
|
2889
|
+
_o,
|
|
2897
2890
|
{
|
|
2898
2891
|
disableFuture: !0,
|
|
2899
2892
|
onChange: _,
|
|
@@ -2922,20 +2915,20 @@ const zo = ({ total: t }) => {
|
|
|
2922
2915
|
"&:hover": { bgcolor: fe(r.palette.primary.light, 0.1) }
|
|
2923
2916
|
}
|
|
2924
2917
|
},
|
|
2925
|
-
value:
|
|
2918
|
+
value: l ? new Date(l * 1e3) : /* @__PURE__ */ new Date()
|
|
2926
2919
|
}
|
|
2927
2920
|
) }) })
|
|
2928
2921
|
}
|
|
2929
2922
|
);
|
|
2930
|
-
},
|
|
2923
|
+
}, Nr = v(Hr), jr = ({ isOpen: t, onClose: o }) => {
|
|
2931
2924
|
const { visibleFinstrongAccounts: n } = Se(), {
|
|
2932
2925
|
accounts: r,
|
|
2933
2926
|
common: s,
|
|
2934
2927
|
finstrong: i
|
|
2935
|
-
} =
|
|
2936
|
-
const { repeating_transaction_type:
|
|
2937
|
-
return
|
|
2938
|
-
}, 0), [d,
|
|
2928
|
+
} = x(), { repeatingTransactions: l } = Ve(), { user: c } = ee(), _ = l.reduce((f, w) => {
|
|
2929
|
+
const { repeating_transaction_type: S, transactions: D, recurrence_type: C, amount: g } = w;
|
|
2930
|
+
return S === Dt.Income && (D.length > 0 || C === Mt.EveryYear) ? f + g : f;
|
|
2931
|
+
}, 0), [d, u] = m.useState(null), y = [
|
|
2939
2932
|
{
|
|
2940
2933
|
dynamicCopy: i.add_profile_item,
|
|
2941
2934
|
fallbackLabel: i.monthly_income,
|
|
@@ -2950,7 +2943,7 @@ const zo = ({ total: t }) => {
|
|
|
2950
2943
|
icon: /* @__PURE__ */ e(mn, {}),
|
|
2951
2944
|
key: ne.DateOfBirth,
|
|
2952
2945
|
label: i.date_of_birth,
|
|
2953
|
-
value:
|
|
2946
|
+
value: c.birthday
|
|
2954
2947
|
},
|
|
2955
2948
|
{
|
|
2956
2949
|
dynamicCopy: i.add_profile_item,
|
|
@@ -2958,7 +2951,7 @@ const zo = ({ total: t }) => {
|
|
|
2958
2951
|
icon: /* @__PURE__ */ e(He, {}),
|
|
2959
2952
|
key: ne.CreditScore,
|
|
2960
2953
|
label: i.credit_score,
|
|
2961
|
-
value:
|
|
2954
|
+
value: c.credit_score
|
|
2962
2955
|
},
|
|
2963
2956
|
{
|
|
2964
2957
|
fallbackLabel: i.connect_your_accounts,
|
|
@@ -2971,7 +2964,7 @@ const zo = ({ total: t }) => {
|
|
|
2971
2964
|
n.length > 1 ? i.accounts : i.account
|
|
2972
2965
|
) : void 0
|
|
2973
2966
|
}
|
|
2974
|
-
].map((f) =>
|
|
2967
|
+
].map((f) => Tn(f));
|
|
2975
2968
|
return /* @__PURE__ */ a(oe, { isOpen: t, onClose: o, title: i.financial_profile, children: [
|
|
2976
2969
|
/* @__PURE__ */ a(p, { sx: { bgcolor: "background.default", height: "100%" }, children: [
|
|
2977
2970
|
/* @__PURE__ */ a(p, { sx: { gap: 20, p: 24 }, children: [
|
|
@@ -2980,16 +2973,16 @@ const zo = ({ total: t }) => {
|
|
|
2980
2973
|
/* @__PURE__ */ e(M, { children: i.financial_profile_description })
|
|
2981
2974
|
] }),
|
|
2982
2975
|
/* @__PURE__ */ e(
|
|
2983
|
-
|
|
2976
|
+
zt,
|
|
2984
2977
|
{
|
|
2985
2978
|
completeCopy: i.complete,
|
|
2986
2979
|
value: y.reduce((f, w) => f + (w.isComplete ? 1 : 0), 0)
|
|
2987
2980
|
}
|
|
2988
2981
|
)
|
|
2989
2982
|
] }),
|
|
2990
|
-
/* @__PURE__ */ e(
|
|
2983
|
+
/* @__PURE__ */ e(On, { list: y, onClickItem: u }),
|
|
2991
2984
|
/* @__PURE__ */ e(k, { sx: { p: 24 }, children: /* @__PURE__ */ e(
|
|
2992
|
-
|
|
2985
|
+
Pe,
|
|
2993
2986
|
{
|
|
2994
2987
|
description: i.connect_more_accounts_to_view_more_accurate_financial_picture,
|
|
2995
2988
|
drawerType: "connectDrawer",
|
|
@@ -3003,47 +2996,47 @@ const zo = ({ total: t }) => {
|
|
|
3003
2996
|
oe,
|
|
3004
2997
|
{
|
|
3005
2998
|
isOpen: d === ne.MonthlyIncome,
|
|
3006
|
-
onClose: () =>
|
|
2999
|
+
onClose: () => u(null),
|
|
3007
3000
|
title: s.settings,
|
|
3008
|
-
children: /* @__PURE__ */ e(
|
|
3001
|
+
children: /* @__PURE__ */ e(ho, {})
|
|
3009
3002
|
}
|
|
3010
3003
|
),
|
|
3011
|
-
/* @__PURE__ */ e(
|
|
3012
|
-
/* @__PURE__ */ e(
|
|
3004
|
+
/* @__PURE__ */ e(Nr, { isOpen: d === ne.DateOfBirth, onClose: () => u(null) }),
|
|
3005
|
+
/* @__PURE__ */ e(Lt, { isOpen: d === ne.CreditScore, onClose: () => u(null) }),
|
|
3013
3006
|
/* @__PURE__ */ e(
|
|
3014
|
-
|
|
3007
|
+
St,
|
|
3015
3008
|
{
|
|
3016
|
-
onClose: () =>
|
|
3009
|
+
onClose: () => u(null),
|
|
3017
3010
|
showConnectionsWidget: d === ne.Connections,
|
|
3018
3011
|
title: r.manage_connections
|
|
3019
3012
|
}
|
|
3020
3013
|
)
|
|
3021
3014
|
] });
|
|
3022
|
-
},
|
|
3015
|
+
}, Kr = v(jr), lt = ({
|
|
3023
3016
|
content: t,
|
|
3024
3017
|
islast: o = !1
|
|
3025
|
-
}) => /* @__PURE__ */ a(
|
|
3026
|
-
/* @__PURE__ */ a(
|
|
3027
|
-
/* @__PURE__ */ e(
|
|
3028
|
-
!o && /* @__PURE__ */ e(
|
|
3018
|
+
}) => /* @__PURE__ */ a(yo, { sx: { minHeight: 0 }, children: [
|
|
3019
|
+
/* @__PURE__ */ a(Co, { children: [
|
|
3020
|
+
/* @__PURE__ */ e(So, { sx: { bgcolor: "divider", borderWidth: 1, p: 3 } }),
|
|
3021
|
+
!o && /* @__PURE__ */ e(fo, { sx: { bgcolor: "divider", width: 0.1 } })
|
|
3029
3022
|
] }),
|
|
3030
|
-
/* @__PURE__ */ e(
|
|
3031
|
-
] }),
|
|
3032
|
-
const { finstrong: o } =
|
|
3023
|
+
/* @__PURE__ */ e(xo, { sx: { pb: 16, pl: 12, pr: 0, pt: 5 }, children: /* @__PURE__ */ e(M, { fontSize: 13, fontWeight: 400, variant: "subtitle2", children: t }) })
|
|
3024
|
+
] }), Vr = ({ report: t }) => {
|
|
3025
|
+
const { finstrong: o } = x(), { score_history_drawer_timeline: n } = o, {
|
|
3033
3026
|
health_score_point_difference: r,
|
|
3034
3027
|
newer_credit_score: s,
|
|
3035
3028
|
older_credit_score: i,
|
|
3036
|
-
older_spend_to_income_ratio:
|
|
3037
|
-
newer_spend_to_income_ratio:
|
|
3029
|
+
older_spend_to_income_ratio: l,
|
|
3030
|
+
newer_spend_to_income_ratio: c,
|
|
3038
3031
|
older_health_score: _,
|
|
3039
3032
|
newer_health_score: d,
|
|
3040
|
-
newer_score_calculated_at:
|
|
3041
|
-
} = t,
|
|
3033
|
+
newer_score_calculated_at: u
|
|
3034
|
+
} = t, h = mo(new Date(u), "MMM d"), y = () => r === 0 ? "info.lighter" : r > 0 ? "success.lighter" : "error.lighter", f = () => r === 0 ? j(n.stayed_at, _) : r > 0 ? n.less_spending : n.more_spending, w = () => {
|
|
3042
3035
|
if (r === 0) return null;
|
|
3043
|
-
const
|
|
3044
|
-
return /* @__PURE__ */ a(
|
|
3036
|
+
const S = r > 0 ? n.up_from : n.down_from, D = j(S, _, d);
|
|
3037
|
+
return /* @__PURE__ */ a(G, { children: [
|
|
3045
3038
|
/* @__PURE__ */ e(
|
|
3046
|
-
|
|
3039
|
+
bn,
|
|
3047
3040
|
{
|
|
3048
3041
|
fill: !0,
|
|
3049
3042
|
name: "circle",
|
|
@@ -3086,7 +3079,7 @@ const zo = ({ total: t }) => {
|
|
|
3086
3079
|
/* @__PURE__ */ a(p, { sx: { gap: 2, width: "80%" }, children: [
|
|
3087
3080
|
/* @__PURE__ */ e(I, { fontWeight: 600, variant: "Body", children: f() }),
|
|
3088
3081
|
/* @__PURE__ */ a(I, { sx: { color: "text.secondary" }, variant: "subtitle2", children: [
|
|
3089
|
-
|
|
3082
|
+
h,
|
|
3090
3083
|
" ",
|
|
3091
3084
|
w()
|
|
3092
3085
|
] })
|
|
@@ -3097,10 +3090,10 @@ const zo = ({ total: t }) => {
|
|
|
3097
3090
|
}
|
|
3098
3091
|
),
|
|
3099
3092
|
r !== 0 && /* @__PURE__ */ e(k, { sx: { color: "text.secondary", pb: 8, pl: 32, pr: 16, pt: 12 }, children: /* @__PURE__ */ a(
|
|
3100
|
-
|
|
3093
|
+
go,
|
|
3101
3094
|
{
|
|
3102
3095
|
sx: {
|
|
3103
|
-
[`& .${
|
|
3096
|
+
[`& .${bo.root}:before`]: {
|
|
3104
3097
|
flex: 0,
|
|
3105
3098
|
padding: 0
|
|
3106
3099
|
},
|
|
@@ -3109,17 +3102,17 @@ const zo = ({ total: t }) => {
|
|
|
3109
3102
|
},
|
|
3110
3103
|
children: [
|
|
3111
3104
|
/* @__PURE__ */ e(
|
|
3112
|
-
|
|
3105
|
+
lt,
|
|
3113
3106
|
{
|
|
3114
3107
|
content: j(
|
|
3115
3108
|
n.spend_to_income_description,
|
|
3116
|
-
Oe(
|
|
3117
|
-
Oe(
|
|
3109
|
+
Oe(l),
|
|
3110
|
+
Oe(c)
|
|
3118
3111
|
)
|
|
3119
3112
|
}
|
|
3120
3113
|
),
|
|
3121
3114
|
/* @__PURE__ */ e(
|
|
3122
|
-
|
|
3115
|
+
lt,
|
|
3123
3116
|
{
|
|
3124
3117
|
content: j(
|
|
3125
3118
|
n.credit_score_description,
|
|
@@ -3133,12 +3126,12 @@ const zo = ({ total: t }) => {
|
|
|
3133
3126
|
}
|
|
3134
3127
|
) })
|
|
3135
3128
|
] });
|
|
3136
|
-
},
|
|
3137
|
-
const n =
|
|
3129
|
+
}, Yr = v(Vr), Xr = ({ isOpen: t, onClose: o }) => {
|
|
3130
|
+
const n = E(), { finstrong: r } = x(), { isCopyLoaded: s, isInitialized: i } = q(), { augmentedChartData: l, healthScore: c, healthScoreChangeReports: _, peerScore: d } = L();
|
|
3138
3131
|
if (!s || !i) return /* @__PURE__ */ e(te, {});
|
|
3139
|
-
const
|
|
3132
|
+
const u = Ne(c.health_score || 0, r), h = _.slice().reverse();
|
|
3140
3133
|
return /* @__PURE__ */ e(
|
|
3141
|
-
|
|
3134
|
+
Pt,
|
|
3142
3135
|
{
|
|
3143
3136
|
additionalContent: /* @__PURE__ */ e(p, { sx: { backgroundColor: "background.paper" }, children: /* @__PURE__ */ e(
|
|
3144
3137
|
Ye,
|
|
@@ -3147,11 +3140,11 @@ const zo = ({ total: t }) => {
|
|
|
3147
3140
|
baseline: "min",
|
|
3148
3141
|
colors: [n.palette.primary.main],
|
|
3149
3142
|
curveType: "natural",
|
|
3150
|
-
datasets: [
|
|
3143
|
+
datasets: [l],
|
|
3151
3144
|
height: 160,
|
|
3152
3145
|
isGraphClippingXAxis: !0,
|
|
3153
3146
|
labels: [r.key_indicators_label],
|
|
3154
|
-
margin: { top: 24, bottom:
|
|
3147
|
+
margin: { top: 24, bottom: 32, right: 24, left: 45 },
|
|
3155
3148
|
peerAverage: Math.round(d?.average_health_score?.average_health_score || 0),
|
|
3156
3149
|
showArea: !0,
|
|
3157
3150
|
showAverage: !0,
|
|
@@ -3176,26 +3169,26 @@ const zo = ({ total: t }) => {
|
|
|
3176
3169
|
},
|
|
3177
3170
|
children: /* @__PURE__ */ a(p, { sx: { alignItems: "center", flexDirection: "row", gap: 16 }, children: [
|
|
3178
3171
|
/* @__PURE__ */ e(
|
|
3179
|
-
|
|
3172
|
+
Ft,
|
|
3180
3173
|
{
|
|
3181
3174
|
arcRadius: 24,
|
|
3182
|
-
healthScore:
|
|
3175
|
+
healthScore: c?.health_score,
|
|
3183
3176
|
margin: { top: 9 },
|
|
3184
3177
|
size: "SM"
|
|
3185
3178
|
}
|
|
3186
3179
|
),
|
|
3187
3180
|
/* @__PURE__ */ a(p, { sx: { gap: 4 }, children: [
|
|
3188
|
-
/* @__PURE__ */ e(M, { variant: "h3", children:
|
|
3189
|
-
/* @__PURE__ */ e(M, { variant: "XSmall", children:
|
|
3181
|
+
/* @__PURE__ */ e(M, { variant: "h3", children: u.status }),
|
|
3182
|
+
/* @__PURE__ */ e(M, { variant: "XSmall", children: u.description })
|
|
3190
3183
|
] })
|
|
3191
3184
|
] })
|
|
3192
3185
|
}
|
|
3193
3186
|
),
|
|
3194
|
-
children: /* @__PURE__ */ e(p, { sx: { gap: 16 }, children:
|
|
3187
|
+
children: /* @__PURE__ */ e(p, { sx: { gap: 16 }, children: h.map((y, f) => /* @__PURE__ */ e(Yr, { report: y }, f)) })
|
|
3195
3188
|
}
|
|
3196
3189
|
);
|
|
3197
|
-
},
|
|
3198
|
-
const o =
|
|
3190
|
+
}, qr = v(Xr), Ur = ({ copy: t }) => {
|
|
3191
|
+
const o = E(), n = [
|
|
3199
3192
|
o.palette.chartMono.chartMono5,
|
|
3200
3193
|
o.palette.chartMono.chartMono4,
|
|
3201
3194
|
o.palette.chartMono.chartMono3,
|
|
@@ -3254,20 +3247,20 @@ const zo = ({ total: t }) => {
|
|
|
3254
3247
|
)) })
|
|
3255
3248
|
] })
|
|
3256
3249
|
] });
|
|
3257
|
-
},
|
|
3258
|
-
const { finstrong: n } =
|
|
3250
|
+
}, Qr = ({ isOpen: t, onClose: o }) => {
|
|
3251
|
+
const { finstrong: n } = x(), { isCopyLoaded: r } = q();
|
|
3259
3252
|
return r ? /* @__PURE__ */ e(oe, { isOpen: t, onClose: o, title: n.score_rubric, children: /* @__PURE__ */ a(p, { sx: { bgcolor: "background.default", gap: 36, height: "100%", p: 24 }, children: [
|
|
3260
3253
|
/* @__PURE__ */ a(p, { sx: { gap: 20 }, children: [
|
|
3261
3254
|
/* @__PURE__ */ a(p, { sx: { gap: 8 }, children: [
|
|
3262
3255
|
/* @__PURE__ */ e(K, { sx: { textWrap: "wrap" }, children: n.your_path_to_financial_freedom }),
|
|
3263
3256
|
/* @__PURE__ */ e(M, { variant: "subtitle1", children: n.finstrong_freedom_description })
|
|
3264
3257
|
] }),
|
|
3265
|
-
/* @__PURE__ */ e(k, { children: /* @__PURE__ */ e(
|
|
3258
|
+
/* @__PURE__ */ e(k, { children: /* @__PURE__ */ e(Ur, { copy: n }) })
|
|
3266
3259
|
] }),
|
|
3267
3260
|
/* @__PURE__ */ a(p, { sx: { gap: 12 }, children: [
|
|
3268
3261
|
/* @__PURE__ */ e(I, { sx: { fontWeight: 600 }, variant: "body1", children: n.how_do_we_do_this }),
|
|
3269
3262
|
/* @__PURE__ */ a(
|
|
3270
|
-
|
|
3263
|
+
Ee,
|
|
3271
3264
|
{
|
|
3272
3265
|
component: "ol",
|
|
3273
3266
|
sx: {
|
|
@@ -3307,7 +3300,7 @@ const zo = ({ total: t }) => {
|
|
|
3307
3300
|
/* @__PURE__ */ a(p, { sx: { gap: 4 }, children: [
|
|
3308
3301
|
/* @__PURE__ */ e(I, { sx: { fontWeight: 600, pb: 4 }, variant: "body1", children: n.we_ask_questions }),
|
|
3309
3302
|
/* @__PURE__ */ a(
|
|
3310
|
-
|
|
3303
|
+
Ee,
|
|
3311
3304
|
{
|
|
3312
3305
|
component: "ol",
|
|
3313
3306
|
sx: {
|
|
@@ -3334,14 +3327,14 @@ const zo = ({ total: t }) => {
|
|
|
3334
3327
|
)
|
|
3335
3328
|
] })
|
|
3336
3329
|
] }) }) : /* @__PURE__ */ e(te, {});
|
|
3337
|
-
},
|
|
3338
|
-
const [t, o] = m.useState(!1), n =
|
|
3339
|
-
return !
|
|
3330
|
+
}, Zr = v(Qr), Jr = v(() => {
|
|
3331
|
+
const [t, o] = m.useState(!1), n = E(), [r, { width: s }] = vt(), { finstrong: i } = x(), { isCopyLoaded: l, isInitialized: c } = q(), { healthScore: _, healthScoreChange: d } = L(), u = n.palette.mode === "dark", h = Ne(_?.health_score, i);
|
|
3332
|
+
return !l || !c ? /* @__PURE__ */ e(te, {}) : /* @__PURE__ */ a(V, { ref: r, sx: { p: 16, display: "flex", flexDirection: "column", gap: 8 }, children: [
|
|
3340
3333
|
/* @__PURE__ */ e(
|
|
3341
|
-
|
|
3334
|
+
Mo,
|
|
3342
3335
|
{
|
|
3343
3336
|
action: /* @__PURE__ */ e(
|
|
3344
|
-
|
|
3337
|
+
B,
|
|
3345
3338
|
{
|
|
3346
3339
|
endIcon: /* @__PURE__ */ e(J, {}),
|
|
3347
3340
|
onClick: () => o(!0),
|
|
@@ -3365,7 +3358,7 @@ const zo = ({ total: t }) => {
|
|
|
3365
3358
|
}
|
|
3366
3359
|
),
|
|
3367
3360
|
/* @__PURE__ */ e(p, { sx: { justifyContent: "center", alignItems: "center", pb: 4, pt: 20, px: 16 }, children: /* @__PURE__ */ e(
|
|
3368
|
-
|
|
3361
|
+
Ft,
|
|
3369
3362
|
{
|
|
3370
3363
|
arcRadius: s <= 323 ? 72.5 : 154,
|
|
3371
3364
|
footerCenterContent: d,
|
|
@@ -3374,11 +3367,11 @@ const zo = ({ total: t }) => {
|
|
|
3374
3367
|
}
|
|
3375
3368
|
) }),
|
|
3376
3369
|
_?.health_score ? /* @__PURE__ */ a(
|
|
3377
|
-
|
|
3370
|
+
vo,
|
|
3378
3371
|
{
|
|
3379
3372
|
sx: {
|
|
3380
3373
|
px: 16,
|
|
3381
|
-
backgroundColor:
|
|
3374
|
+
backgroundColor: u ? "grey.800" : "grey.50",
|
|
3382
3375
|
//TODO: Need to change the background color to palette (supporting both darkmode and lightmode)
|
|
3383
3376
|
"&.Mui-expanded": {
|
|
3384
3377
|
m: 0
|
|
@@ -3389,7 +3382,7 @@ const zo = ({ total: t }) => {
|
|
|
3389
3382
|
},
|
|
3390
3383
|
children: [
|
|
3391
3384
|
/* @__PURE__ */ e(
|
|
3392
|
-
|
|
3385
|
+
ko,
|
|
3393
3386
|
{
|
|
3394
3387
|
expandIcon: /* @__PURE__ */ e(gn, { size: 20 }),
|
|
3395
3388
|
sx: {
|
|
@@ -3402,11 +3395,11 @@ const zo = ({ total: t }) => {
|
|
|
3402
3395
|
children: /* @__PURE__ */ e(M, { sx: { fontWeight: 600 }, variant: "body1", children: i.accordion_title_text })
|
|
3403
3396
|
}
|
|
3404
3397
|
),
|
|
3405
|
-
/* @__PURE__ */ e(
|
|
3398
|
+
/* @__PURE__ */ e(wo, { sx: { "&.MuiAccordionDetails-root": { padding: 0, pb: 16 } }, children: /* @__PURE__ */ e(M, { variant: "subtitle1", children: h.scoreContent }) })
|
|
3406
3399
|
]
|
|
3407
3400
|
}
|
|
3408
3401
|
) : /* @__PURE__ */ e(
|
|
3409
|
-
|
|
3402
|
+
Pe,
|
|
3410
3403
|
{
|
|
3411
3404
|
buttonText: i.connect_more_accounts_title,
|
|
3412
3405
|
description: i.health_score_zero_description,
|
|
@@ -3414,7 +3407,7 @@ const zo = ({ total: t }) => {
|
|
|
3414
3407
|
hasIcon: !1,
|
|
3415
3408
|
isDashboard: !0,
|
|
3416
3409
|
sx: {
|
|
3417
|
-
backgroundColor:
|
|
3410
|
+
backgroundColor: u ? "grey.800" : "grey.50",
|
|
3418
3411
|
//TODO: Need to change the background color to palette (supporting both darkmode and lightmode)
|
|
3419
3412
|
".connect-more-accounts-title": {
|
|
3420
3413
|
fontWeight: 600,
|
|
@@ -3427,40 +3420,40 @@ const zo = ({ total: t }) => {
|
|
|
3427
3420
|
}
|
|
3428
3421
|
),
|
|
3429
3422
|
/* @__PURE__ */ e(
|
|
3430
|
-
|
|
3423
|
+
Zr,
|
|
3431
3424
|
{
|
|
3432
3425
|
isOpen: t,
|
|
3433
3426
|
onClose: () => o(!1)
|
|
3434
3427
|
}
|
|
3435
3428
|
)
|
|
3436
3429
|
] });
|
|
3437
|
-
}),
|
|
3438
|
-
const { visibleAccounts: r } = Se(), { dateRange: s, isDataLoaded: i, loadBudgetData:
|
|
3439
|
-
augmentedChartData:
|
|
3440
|
-
calculateHealthScore:
|
|
3430
|
+
}), ea = ({ onBackClick: t, sx: o, onPrimaryCtaClick: n }) => {
|
|
3431
|
+
const { visibleAccounts: r } = Se(), { dateRange: s, isDataLoaded: i, loadBudgetData: l, setTheme: c } = Pn(), { reloadCategoryTotals: _ } = Ke(), d = L(), {
|
|
3432
|
+
augmentedChartData: u,
|
|
3433
|
+
calculateHealthScore: h,
|
|
3441
3434
|
healthScore: y,
|
|
3442
3435
|
loadAugmentedChartData: f,
|
|
3443
3436
|
loadMonthlySummaries: w,
|
|
3444
|
-
loadPeerScore:
|
|
3437
|
+
loadPeerScore: S,
|
|
3445
3438
|
peerScore: D
|
|
3446
|
-
} = d, { finstrong: C, connect: g } =
|
|
3447
|
-
if (
|
|
3439
|
+
} = d, { finstrong: C, connect: g } = x(), { isCopyLoaded: b, isInitialized: P } = q(), { loadRepeatingTransactions: R } = Ve(), { isMobile: U } = qe(), T = E(), { userProfile: $ } = ee(), [z, pe] = m.useState(!1), [ve, Q] = m.useState(!1), [Y, _e] = m.useState(!1), [H, he] = m.useState(!1);
|
|
3440
|
+
if (Do({
|
|
3448
3441
|
widgetName: "FinstrongWidget",
|
|
3449
3442
|
isLoaded: z
|
|
3450
3443
|
}), m.useEffect(() => {
|
|
3451
|
-
|
|
3444
|
+
c(T);
|
|
3452
3445
|
}, []), m.useEffect(() => {
|
|
3453
3446
|
n && (d.handleFinstrongWidgetPrimaryCtaClick = n);
|
|
3454
3447
|
}, [n, d]), m.useEffect(() => {
|
|
3455
|
-
|
|
3456
|
-
}, [
|
|
3457
|
-
|
|
3448
|
+
P && (w().finally(), S().finally(), h().finally(), f().finally());
|
|
3449
|
+
}, [P]), m.useEffect(() => {
|
|
3450
|
+
P && (_(r, s.start, s.end).finally(() => {
|
|
3458
3451
|
pe(!0);
|
|
3459
|
-
}), i || (
|
|
3460
|
-
}, [s, i,
|
|
3452
|
+
}), i || (l(), R().finally()));
|
|
3453
|
+
}, [s, i, P, r]), !b || !P || !z) return /* @__PURE__ */ e(te, {});
|
|
3461
3454
|
const N = () => Q(!0), ae = Math.round(D?.average_health_score?.average_health_score || 0);
|
|
3462
3455
|
return /* @__PURE__ */ a(
|
|
3463
|
-
|
|
3456
|
+
Io,
|
|
3464
3457
|
{
|
|
3465
3458
|
actions: [
|
|
3466
3459
|
{
|
|
@@ -3487,9 +3480,9 @@ const zo = ({ total: t }) => {
|
|
|
3487
3480
|
},
|
|
3488
3481
|
children: [
|
|
3489
3482
|
/* @__PURE__ */ a(p, { sx: { gap: 24, width: { md: 432 }, height: "100%" }, children: [
|
|
3490
|
-
/* @__PURE__ */ e(
|
|
3483
|
+
/* @__PURE__ */ e(Jr, {}),
|
|
3491
3484
|
/* @__PURE__ */ e(
|
|
3492
|
-
|
|
3485
|
+
Pe,
|
|
3493
3486
|
{
|
|
3494
3487
|
description: C.connect_more_accounts_description,
|
|
3495
3488
|
drawerType: "connectDrawer",
|
|
@@ -3501,7 +3494,7 @@ const zo = ({ total: t }) => {
|
|
|
3501
3494
|
/* @__PURE__ */ a(p, { direction: "row", sx: { alignItems: "center", justifyContent: "space-between" }, children: [
|
|
3502
3495
|
/* @__PURE__ */ e(K, { children: C.key_indicators }),
|
|
3503
3496
|
/* @__PURE__ */ e(
|
|
3504
|
-
|
|
3497
|
+
B,
|
|
3505
3498
|
{
|
|
3506
3499
|
endIcon: /* @__PURE__ */ e(J, {}),
|
|
3507
3500
|
onClick: () => _e(!0),
|
|
@@ -3513,7 +3506,7 @@ const zo = ({ total: t }) => {
|
|
|
3513
3506
|
}
|
|
3514
3507
|
)
|
|
3515
3508
|
] }),
|
|
3516
|
-
|
|
3509
|
+
u.length ? /* @__PURE__ */ e(
|
|
3517
3510
|
Ye,
|
|
3518
3511
|
{
|
|
3519
3512
|
axisColor: T.palette.divider,
|
|
@@ -3523,14 +3516,14 @@ const zo = ({ total: t }) => {
|
|
|
3523
3516
|
customLegendBoxSx: { borderRadius: "2px" },
|
|
3524
3517
|
customLegendSx: { left: 0 },
|
|
3525
3518
|
customLegendVariant: "XSmall",
|
|
3526
|
-
datasets: [
|
|
3519
|
+
datasets: [u],
|
|
3527
3520
|
height: 300,
|
|
3528
3521
|
isGraphClippingXAxis: !0,
|
|
3529
3522
|
labelBackgroundColor: T.palette.border.dark,
|
|
3530
3523
|
labelFontColor: T.palette.common.white,
|
|
3531
3524
|
labelFontSize: typeof T.typography.XSmall?.fontSize == "string" ? parseFloat(T.typography.XSmall.fontSize) : T.typography.XSmall?.fontSize,
|
|
3532
3525
|
labels: [C.key_indicators_label],
|
|
3533
|
-
margin: { right: 0, left:
|
|
3526
|
+
margin: { right: 0, left: 25 },
|
|
3534
3527
|
peerAverage: ae,
|
|
3535
3528
|
showArea: !0,
|
|
3536
3529
|
showAverage: !0,
|
|
@@ -3541,13 +3534,13 @@ const zo = ({ total: t }) => {
|
|
|
3541
3534
|
useCustomMark: !0,
|
|
3542
3535
|
xAxisScaleType: "band"
|
|
3543
3536
|
}
|
|
3544
|
-
) : /* @__PURE__ */ e(
|
|
3545
|
-
y.health_score !== null && /* @__PURE__ */ e(
|
|
3537
|
+
) : /* @__PURE__ */ e(Or, { onClick: () => he(!0) }),
|
|
3538
|
+
y.health_score !== null && /* @__PURE__ */ e(Ar, {})
|
|
3546
3539
|
] }) })
|
|
3547
3540
|
]
|
|
3548
3541
|
}
|
|
3549
|
-
) : /* @__PURE__ */ e(
|
|
3550
|
-
/* @__PURE__ */ e(
|
|
3542
|
+
) : /* @__PURE__ */ e(Er, {}),
|
|
3543
|
+
/* @__PURE__ */ e(Kr, { isOpen: ve, onClose: () => Q(!1) }),
|
|
3551
3544
|
/* @__PURE__ */ e(
|
|
3552
3545
|
re,
|
|
3553
3546
|
{
|
|
@@ -3557,7 +3550,7 @@ const zo = ({ total: t }) => {
|
|
|
3557
3550
|
}
|
|
3558
3551
|
),
|
|
3559
3552
|
/* @__PURE__ */ e(
|
|
3560
|
-
|
|
3553
|
+
qr,
|
|
3561
3554
|
{
|
|
3562
3555
|
isOpen: Y,
|
|
3563
3556
|
onClose: () => _e(!1)
|
|
@@ -3566,12 +3559,12 @@ const zo = ({ total: t }) => {
|
|
|
3566
3559
|
]
|
|
3567
3560
|
}
|
|
3568
3561
|
);
|
|
3569
|
-
},
|
|
3562
|
+
}, bi = v(ea);
|
|
3570
3563
|
export {
|
|
3571
|
-
|
|
3572
|
-
|
|
3573
|
-
|
|
3574
|
-
|
|
3575
|
-
|
|
3576
|
-
|
|
3564
|
+
To as CreditScoreGraph,
|
|
3565
|
+
Rt as DialScoreCard,
|
|
3566
|
+
Ft as FinancialStrengthGraph,
|
|
3567
|
+
Si as FinstrongApi,
|
|
3568
|
+
Ci as FinstrongStore,
|
|
3569
|
+
bi as FinstrongWidget
|
|
3577
3570
|
};
|