@mx-cartographer/experiences 6.26.13 → 6.26.14
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 +4 -0
- package/dist/index.es.js +209 -208
- package/dist/index.es.js.map +1 -1
- package/package.json +1 -1
package/dist/index.es.js
CHANGED
|
@@ -18,7 +18,7 @@ import { getDay as Yl } from "date-fns/getDay";
|
|
|
18
18
|
import { isBefore as nt } from "date-fns/isBefore";
|
|
19
19
|
import { nextDay as ea } from "date-fns/nextDay";
|
|
20
20
|
import { setDate as ta } from "date-fns/setDate";
|
|
21
|
-
import { startOfToday as
|
|
21
|
+
import { startOfToday as ve } from "date-fns/startOfToday";
|
|
22
22
|
import { fromUnixTime as Ue } from "date-fns/fromUnixTime";
|
|
23
23
|
import Ya from "numeral";
|
|
24
24
|
import te from "@mui/material/Button";
|
|
@@ -41,10 +41,10 @@ import { eachWeekOfInterval as Jl } from "date-fns/eachWeekOfInterval";
|
|
|
41
41
|
import { endOfMonth as qe } from "date-fns/endOfMonth";
|
|
42
42
|
import { format as Ln } from "date-fns/format";
|
|
43
43
|
import { isSameMonth as ed } from "date-fns/isSameMonth";
|
|
44
|
-
import { startOfMonth as
|
|
44
|
+
import { startOfMonth as Ye } from "date-fns/startOfMonth";
|
|
45
45
|
import { subMonths as Ht } from "date-fns/subMonths";
|
|
46
46
|
import Nt from "@mui/material/Paper";
|
|
47
|
-
import { ChevronLeft as Gs, ChevronRight as
|
|
47
|
+
import { ChevronLeft as Gs, ChevronRight as ze, ArrowBack as td, Icon as pt, AccountBalance as so, ExpandMore as _i, CheckCircle as ma, Edit as nd, Delete as Bs, Schedule as id, MonetizationOn as ad, Cancel as Hs, CurrencyExchange as od, Check as rd, TrendingUp as Ps, ArrowRightAlt as sd, TrendingDown as Fs, Payments as co, CalendarMonth as cd, CreditCard as Ws, Savings as ld, ContentCopy as dd, MultilineChart as $s, NoteStack as Us, Person as Vs, ExpandLess as Ks, AddBox as zs, Trophy as _d, Star as ud, Settings as hd } from "@mxenabled/mx-icons";
|
|
48
48
|
import { isSameDay as Dt } from "date-fns/isSameDay";
|
|
49
49
|
import { isWithinInterval as lo } from "date-fns/isWithinInterval";
|
|
50
50
|
import * as Rt from "d3";
|
|
@@ -860,15 +860,15 @@ const xi = 44, fr = (e, n) => e.find((i) => i.guid === n), k_ = (e, n) => e.find
|
|
|
860
860
|
}, Ao = (e) => {
|
|
861
861
|
const n = Yl(e);
|
|
862
862
|
let i = ea(e, n);
|
|
863
|
-
for (; nt(i,
|
|
863
|
+
for (; nt(i, ve()); )
|
|
864
864
|
i = Ms(i, 1);
|
|
865
865
|
return i;
|
|
866
866
|
}, B_ = (e) => {
|
|
867
867
|
const n = Ao(e);
|
|
868
868
|
return Ms(n, 1);
|
|
869
869
|
}, H_ = (e) => {
|
|
870
|
-
let n = ta(
|
|
871
|
-
for (; nt(n,
|
|
870
|
+
let n = ta(ve(), e.getDate());
|
|
871
|
+
for (; nt(n, ve()); )
|
|
872
872
|
n = qt(n, 1);
|
|
873
873
|
return n;
|
|
874
874
|
}, P_ = (e) => {
|
|
@@ -876,7 +876,7 @@ const xi = 44, fr = (e, n) => e.find((i) => i.guid === n), k_ = (e, n) => e.find
|
|
|
876
876
|
return qt(n, 1);
|
|
877
877
|
}, uc = (e) => {
|
|
878
878
|
let n = Li(e, 1);
|
|
879
|
-
for (; nt(n,
|
|
879
|
+
for (; nt(n, ve()); )
|
|
880
880
|
n = Li(n, 1);
|
|
881
881
|
return n;
|
|
882
882
|
}, F_ = (e) => {
|
|
@@ -1911,7 +1911,7 @@ const Z_ = (e, n) => {
|
|
|
1911
1911
|
/* @__PURE__ */ t(mn, { className: "mx-cmn-calendar-header-title", variant: "H3", children: le(n, ae.MONTH_YEAR) }),
|
|
1912
1912
|
/* @__PURE__ */ d("div", { className: "mx-cmn-calendar-header-button-container", children: [
|
|
1913
1913
|
/* @__PURE__ */ t(te, { "aria-label": e.prevAria, onClick: a, children: /* @__PURE__ */ t(Gs, { size: 24 }) }),
|
|
1914
|
-
/* @__PURE__ */ t(te, { "aria-label": e.nextAria, onClick: i, children: /* @__PURE__ */ t(
|
|
1914
|
+
/* @__PURE__ */ t(te, { "aria-label": e.nextAria, onClick: i, children: /* @__PURE__ */ t(ze, { size: 24 }) })
|
|
1915
1915
|
] })
|
|
1916
1916
|
] });
|
|
1917
1917
|
}, lu = (e) => pn({
|
|
@@ -1928,7 +1928,7 @@ const Z_ = (e, n) => {
|
|
|
1928
1928
|
gap: 4
|
|
1929
1929
|
}
|
|
1930
1930
|
}), du = ({ beginDate: e, date: n, endDate: i, isInMonth: a, onClick: o }) => {
|
|
1931
|
-
const r = Te(), s = _u(r), c = e && i && lo(n, { start: e, end: i }) && !Dt(n, e) && !Dt(n, i), l = e && i && Dt(e, n) && !Dt(e, i), u = i && e && Dt(i, n) && !Dt(e, i), _ = e && Dt(e, n) || i && Dt(i, n), h = Dt(n,
|
|
1931
|
+
const r = Te(), s = _u(r), c = e && i && lo(n, { start: e, end: i }) && !Dt(n, e) && !Dt(n, i), l = e && i && Dt(e, n) && !Dt(e, i), u = i && e && Dt(i, n) && !Dt(e, i), _ = e && Dt(e, n) || i && Dt(i, n), h = Dt(n, ve());
|
|
1932
1932
|
return /* @__PURE__ */ t(
|
|
1933
1933
|
"div",
|
|
1934
1934
|
{
|
|
@@ -2020,12 +2020,12 @@ const hu = ({
|
|
|
2020
2020
|
selectionType: r = "Single"
|
|
2021
2021
|
/* Single */
|
|
2022
2022
|
}) => {
|
|
2023
|
-
const s = Et(), c = gu(s), [l, u] = g.useState(
|
|
2023
|
+
const s = Et(), c = gu(s), [l, u] = g.useState(ve), [_, h] = g.useState(n), [m, p] = g.useState(i);
|
|
2024
2024
|
g.useEffect(() => {
|
|
2025
2025
|
h(n), p(i), n && u(n);
|
|
2026
2026
|
}, [n, i]);
|
|
2027
2027
|
const C = g.useMemo(() => {
|
|
2028
|
-
const v = Jl({ start:
|
|
2028
|
+
const v = Jl({ start: Ye(l), end: qe(l) }), w = [];
|
|
2029
2029
|
for (let N = 0; N < v.length; N++) {
|
|
2030
2030
|
const R = v[N], M = Ql({ start: R, end: Fn(R, 6) }), k = [];
|
|
2031
2031
|
for (let G = 0; G < M.length; G++)
|
|
@@ -2042,7 +2042,7 @@ const hu = ({
|
|
|
2042
2042
|
!_ || m ? (h(v), p(void 0)) : nt(v, _) ? (p(_), h(v), o?.(v, _)) : (p(v), o?.(_, v));
|
|
2043
2043
|
}
|
|
2044
2044
|
}, y = () => {
|
|
2045
|
-
const v =
|
|
2045
|
+
const v = ve();
|
|
2046
2046
|
u(v), r !== "None" && (h(v), r === "Single" ? a?.(v) : (p(v), o?.(v, v)));
|
|
2047
2047
|
}, E = () => {
|
|
2048
2048
|
u(qt(l, 1));
|
|
@@ -2388,7 +2388,7 @@ const yi = ({
|
|
|
2388
2388
|
valueFormatterString: K,
|
|
2389
2389
|
width: re
|
|
2390
2390
|
}) => {
|
|
2391
|
-
const ne = je(), fe = r.flat().map((Q) => Q.x),
|
|
2391
|
+
const ne = je(), fe = r.flat().map((Q) => Q.x), Ie = r.flat().map((Q) => Q.y), Me = Math.round(Ie.reduce((Q, ke) => ke + Q, 0) / Ie.length), he = Math.floor(Math.min(...Ie) / 100) * 100, me = Math.ceil(Math.max(...Ie) / 100) * 100, Xe = r.map((Q, ke) => ({
|
|
2392
2392
|
type: I ? "bar" : "line",
|
|
2393
2393
|
curve: a,
|
|
2394
2394
|
color: I ? ne.palette.chart?.chart6 : i[ke] ?? ne.palette.primary.main,
|
|
@@ -2482,7 +2482,7 @@ const yi = ({
|
|
|
2482
2482
|
showLabel: w,
|
|
2483
2483
|
style: C?.(Q.dataIndex) ?? {},
|
|
2484
2484
|
valueFormatterString: K,
|
|
2485
|
-
yData:
|
|
2485
|
+
yData: Ie,
|
|
2486
2486
|
...Q
|
|
2487
2487
|
}
|
|
2488
2488
|
)
|
|
@@ -2758,7 +2758,7 @@ const Ec = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
|
2758
2758
|
(Y, Be) => o.reduce((ct, Sn) => ct + Sn.dataset[Be]?.y || 0, 0)
|
|
2759
2759
|
) ?? [0], ne = Math.max(...re), fe = Math.max(
|
|
2760
2760
|
...r.flatMap((Y) => Y.dataset.map((Be) => Be.y))
|
|
2761
|
-
),
|
|
2761
|
+
), Ie = Math.floor(Math.min(...K) / 100) * 100, Me = Math.ceil(Math.max(ne, fe) / 100) * 100, he = o.map((Y, Be) => ({
|
|
2762
2762
|
id: `stacked-${Be}`,
|
|
2763
2763
|
guid: Y.category_guid,
|
|
2764
2764
|
top_level_guid: Y.top_level_category_guid,
|
|
@@ -2802,7 +2802,7 @@ const Ec = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
|
2802
2802
|
}, Ce = () => {
|
|
2803
2803
|
const Y = pe(String(v)).guid;
|
|
2804
2804
|
Y && a?.(Y);
|
|
2805
|
-
},
|
|
2805
|
+
}, Ve = (Y) => {
|
|
2806
2806
|
const Be = String(Y?.seriesId), ct = pe(Be).guid, Sn = Xe.find((Ai) => Ai.id === Be), Oa = Sn && Y?.dataIndex !== void 0, La = Sn && Y?.dataIndex === void 0;
|
|
2807
2807
|
if (Oa)
|
|
2808
2808
|
I({
|
|
@@ -2874,7 +2874,7 @@ const Ec = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
|
2874
2874
|
height: p,
|
|
2875
2875
|
margin: { bottom: 50 },
|
|
2876
2876
|
onAreaClick: Ce,
|
|
2877
|
-
onHighlightChange:
|
|
2877
|
+
onHighlightChange: Ve,
|
|
2878
2878
|
series: Xe,
|
|
2879
2879
|
skipAnimation: !0,
|
|
2880
2880
|
slotProps: {
|
|
@@ -2907,7 +2907,7 @@ const Ec = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
|
2907
2907
|
],
|
|
2908
2908
|
yAxis: [
|
|
2909
2909
|
{
|
|
2910
|
-
min:
|
|
2910
|
+
min: Ie,
|
|
2911
2911
|
max: Me || 100
|
|
2912
2912
|
}
|
|
2913
2913
|
]
|
|
@@ -3122,7 +3122,7 @@ const Ec = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
|
3122
3122
|
calendarActions: e,
|
|
3123
3123
|
color: n = "primary",
|
|
3124
3124
|
copy: i,
|
|
3125
|
-
range: a = [
|
|
3125
|
+
range: a = [Ye(ve()), qe(gn())],
|
|
3126
3126
|
shouldShrinkToIcon: o = !0,
|
|
3127
3127
|
variant: r = "outlined"
|
|
3128
3128
|
}) => {
|
|
@@ -3485,7 +3485,7 @@ const Ea = ({
|
|
|
3485
3485
|
action: /* @__PURE__ */ t(
|
|
3486
3486
|
te,
|
|
3487
3487
|
{
|
|
3488
|
-
endIcon: /* @__PURE__ */ t(
|
|
3488
|
+
endIcon: /* @__PURE__ */ t(ze, { size: 20 }),
|
|
3489
3489
|
onClick: a,
|
|
3490
3490
|
size: "small",
|
|
3491
3491
|
variant: "text",
|
|
@@ -3516,7 +3516,7 @@ const Ea = ({
|
|
|
3516
3516
|
/* @__PURE__ */ t(
|
|
3517
3517
|
dn,
|
|
3518
3518
|
{
|
|
3519
|
-
action: a ? /* @__PURE__ */ t(We, { "aria-label": n, onClick: a, children: /* @__PURE__ */ t(pt, { name: "close", size: 24 }) }) : o && /* @__PURE__ */ t(te, { endIcon: /* @__PURE__ */ t(
|
|
3519
|
+
action: a ? /* @__PURE__ */ t(We, { "aria-label": n, onClick: a, children: /* @__PURE__ */ t(pt, { name: "close", size: 24 }) }) : o && /* @__PURE__ */ t(te, { endIcon: /* @__PURE__ */ t(ze, {}), onClick: o, children: /* @__PURE__ */ t(f, { bold: !0, variant: "Small", children: r }) }),
|
|
3520
3520
|
subheader: s || null,
|
|
3521
3521
|
subheaderTypographyProps: { variant: "Small" },
|
|
3522
3522
|
sx: { pb: 4 },
|
|
@@ -3583,7 +3583,7 @@ const Ea = ({
|
|
|
3583
3583
|
dateRangeEditTitle: L.date_range_picker.edit_title,
|
|
3584
3584
|
dateRangeNextAria: L.date_range_picker.next_aria,
|
|
3585
3585
|
dateRangePreviousAria: L.date_range_picker.previous_aria
|
|
3586
|
-
}, fe = o ? o.start : R.start,
|
|
3586
|
+
}, fe = o ? o.start : R.start, Ie = o ? o.end : R.end, Me = n?.length > 1;
|
|
3587
3587
|
return /* @__PURE__ */ d(
|
|
3588
3588
|
Tt,
|
|
3589
3589
|
{
|
|
@@ -3605,7 +3605,7 @@ const Ea = ({
|
|
|
3605
3605
|
{
|
|
3606
3606
|
calendarActions: i,
|
|
3607
3607
|
copy: ne,
|
|
3608
|
-
range: [fe,
|
|
3608
|
+
range: [fe, Ie],
|
|
3609
3609
|
shouldShrinkToIcon: !1,
|
|
3610
3610
|
variant: r
|
|
3611
3611
|
}
|
|
@@ -3683,7 +3683,7 @@ const Ea = ({
|
|
|
3683
3683
|
{
|
|
3684
3684
|
calendarActions: i,
|
|
3685
3685
|
copy: ne,
|
|
3686
|
-
range: [fe,
|
|
3686
|
+
range: [fe, Ie],
|
|
3687
3687
|
shouldShrinkToIcon: !1,
|
|
3688
3688
|
variant: r
|
|
3689
3689
|
}
|
|
@@ -4063,7 +4063,7 @@ const vr = "connect_widget", wr = "connections_widget", Gu = ({
|
|
|
4063
4063
|
/* @__PURE__ */ t(
|
|
4064
4064
|
te,
|
|
4065
4065
|
{
|
|
4066
|
-
endIcon: /* @__PURE__ */ t(
|
|
4066
|
+
endIcon: /* @__PURE__ */ t(ze, {}),
|
|
4067
4067
|
onClick: () => r(!0),
|
|
4068
4068
|
sx: {
|
|
4069
4069
|
pl: 0,
|
|
@@ -4170,7 +4170,7 @@ const vr = "connect_widget", wr = "connections_widget", Gu = ({
|
|
|
4170
4170
|
primaryTypographyProps: { variant: "body1" }
|
|
4171
4171
|
}
|
|
4172
4172
|
),
|
|
4173
|
-
!n && !l && /* @__PURE__ */ t(
|
|
4173
|
+
!n && !l && /* @__PURE__ */ t(ze, {})
|
|
4174
4174
|
] }),
|
|
4175
4175
|
/* @__PURE__ */ t(
|
|
4176
4176
|
Ge,
|
|
@@ -4525,7 +4525,7 @@ class Yu {
|
|
|
4525
4525
|
api = new Nr("/", "");
|
|
4526
4526
|
globalStore;
|
|
4527
4527
|
alert = "";
|
|
4528
|
-
dateRange = { start:
|
|
4528
|
+
dateRange = { start: Ye(ve()), end: qe(ve()) };
|
|
4529
4529
|
budgets = [];
|
|
4530
4530
|
selectedBudget;
|
|
4531
4531
|
selectedSubBudget;
|
|
@@ -4868,7 +4868,7 @@ const Si = () => {
|
|
|
4868
4868
|
const u = e.transactions.find(
|
|
4869
4869
|
(_) => _.repeating_transaction_guid === e.guid && _.date > Fe(Ot(l.expectedDate, 5)) && _.date < Fe(Fn(l.expectedDate, 5))
|
|
4870
4870
|
);
|
|
4871
|
-
u ? (l.transaction = u, l.status = et.Paid, l.occurredOnDate = Ue(u.date)) : nt(l.expectedDate, Ot(
|
|
4871
|
+
u ? (l.transaction = u, l.status = et.Paid, l.occurredOnDate = Ue(u.date)) : nt(l.expectedDate, Ot(ve(), 3)) && (l.status = et.Missed);
|
|
4872
4872
|
}
|
|
4873
4873
|
return i;
|
|
4874
4874
|
}, eh = (e, n, i) => {
|
|
@@ -4949,7 +4949,7 @@ const Si = () => {
|
|
|
4949
4949
|
recurrences: [i]
|
|
4950
4950
|
}), n;
|
|
4951
4951
|
}, []), sa = (e, n, i) => {
|
|
4952
|
-
const a = ea(
|
|
4952
|
+
const a = ea(ve(), n.recurrence_day), o = Qs(ve(), n.recurrence_day), r = Mi(n.recurrence_day), s = n.second_recurrence_day ? Mi(n.second_recurrence_day) : "";
|
|
4953
4953
|
let c = i ? T(e.monthly_ordinal, r) : e.monthly;
|
|
4954
4954
|
switch (n.recurrence_type) {
|
|
4955
4955
|
case Ee.EveryQuarter:
|
|
@@ -5496,7 +5496,7 @@ const xc = (e, n) => {
|
|
|
5496
5496
|
}, Th = (e, n, i) => {
|
|
5497
5497
|
const {
|
|
5498
5498
|
accounts: a = [],
|
|
5499
|
-
dateRange: o = { start:
|
|
5499
|
+
dateRange: o = { start: Ye(ve()), end: gn() },
|
|
5500
5500
|
custom: r = () => !0,
|
|
5501
5501
|
searchTerm: s = "",
|
|
5502
5502
|
showSplits: c = !1
|
|
@@ -5550,7 +5550,7 @@ const Ic = {
|
|
|
5550
5550
|
tags: []
|
|
5551
5551
|
};
|
|
5552
5552
|
let Dh = class {
|
|
5553
|
-
beginDate =
|
|
5553
|
+
beginDate = Ye(/* @__PURE__ */ new Date());
|
|
5554
5554
|
endDate = qe(/* @__PURE__ */ new Date());
|
|
5555
5555
|
expandedSplits = [];
|
|
5556
5556
|
isInitialized = !1;
|
|
@@ -5596,7 +5596,7 @@ class Nh {
|
|
|
5596
5596
|
api = new ca("/", "");
|
|
5597
5597
|
beatApi = new ci("/", "");
|
|
5598
5598
|
associatedBeats = [];
|
|
5599
|
-
cachedStartDate = Ot(
|
|
5599
|
+
cachedStartDate = Ot(ve(), 90);
|
|
5600
5600
|
filter = {};
|
|
5601
5601
|
isLoading = !0;
|
|
5602
5602
|
rawTransactions = [];
|
|
@@ -5615,7 +5615,7 @@ class Nh {
|
|
|
5615
5615
|
transactions: a
|
|
5616
5616
|
} = {}) => {
|
|
5617
5617
|
await Promise.all([
|
|
5618
|
-
this.loadAssociatedBeats(
|
|
5618
|
+
this.loadAssociatedBeats(Ye(/* @__PURE__ */ new Date()), n),
|
|
5619
5619
|
this.loadTags(),
|
|
5620
5620
|
this.loadTaggings(),
|
|
5621
5621
|
this.loadTransactionRules(i),
|
|
@@ -6533,9 +6533,9 @@ const Xh = ({
|
|
|
6533
6533
|
)
|
|
6534
6534
|
);
|
|
6535
6535
|
}, Fr = (e) => {
|
|
6536
|
-
const n = [], i =
|
|
6536
|
+
const n = [], i = ve();
|
|
6537
6537
|
for (let a = 0; a <= Hr; a++) {
|
|
6538
|
-
const o =
|
|
6538
|
+
const o = Ye(Ht(i, Hr - a)), s = e.filter(
|
|
6539
6539
|
(c) => c.year_month === Number(Ln(o, "yyyyMM"))
|
|
6540
6540
|
).reduce((c, l) => c + l.total, 0);
|
|
6541
6541
|
n.push({
|
|
@@ -6643,7 +6643,7 @@ class pg {
|
|
|
6643
6643
|
}
|
|
6644
6644
|
};
|
|
6645
6645
|
loadMonthlyCategoryTotals = async (n = this.globalStore.globalUiStore.selectedAccounts, i, a) => {
|
|
6646
|
-
const o = Fe(
|
|
6646
|
+
const o = Fe(Ye(i ?? Ht(/* @__PURE__ */ new Date(), 11))), r = Fe(qe(a ?? /* @__PURE__ */ new Date()));
|
|
6647
6647
|
try {
|
|
6648
6648
|
const s = await this.api.getMonthlyCategoryTotals(o, r, n);
|
|
6649
6649
|
J(() => {
|
|
@@ -6661,7 +6661,7 @@ class pg {
|
|
|
6661
6661
|
Fe(a),
|
|
6662
6662
|
n
|
|
6663
6663
|
), r = await this.api.getMonthlyCategoryTotals(
|
|
6664
|
-
Fe(
|
|
6664
|
+
Fe(Ye(Ht(a, 11))),
|
|
6665
6665
|
Fe(qe(a)),
|
|
6666
6666
|
n
|
|
6667
6667
|
);
|
|
@@ -7928,22 +7928,22 @@ const Dc = ({ transaction: e }) => {
|
|
|
7928
7928
|
searchValue: re,
|
|
7929
7929
|
setSearchValue: ne,
|
|
7930
7930
|
setShowInsights: fe,
|
|
7931
|
-
updateManualTransaction:
|
|
7932
|
-
} = It(), { userProfile: Me } = Ct(), [he, me] = g.useState(""), [Xe, V] = g.useState(""), [pe, Q] = g.useState(!1), [ke, Ce] = g.useState(!1), [
|
|
7931
|
+
updateManualTransaction: Ie
|
|
7932
|
+
} = It(), { userProfile: Me } = Ct(), [he, me] = g.useState(""), [Xe, V] = g.useState(""), [pe, Q] = g.useState(!1), [ke, Ce] = g.useState(!1), [Ve, wt] = g.useState(!1);
|
|
7933
7933
|
g.useEffect(() => {
|
|
7934
|
-
const ht = o.filter((ii) => !ii.is_hidden), ir =
|
|
7934
|
+
const ht = o.filter((ii) => !ii.is_hidden), ir = Ye(ve()), ar = qe(ve());
|
|
7935
7935
|
y(ht), S(ir, ar), R({
|
|
7936
7936
|
accounts: ht.map((ii) => ii.guid),
|
|
7937
7937
|
custom: (ii) => !ii.accountIsClosed && !ii.accountIsHidden,
|
|
7938
7938
|
dateRange: { start: ir, end: ar }
|
|
7939
7939
|
}), wt(!0), l(F.TRANSACTIONS_VIEW);
|
|
7940
7940
|
}, [o]), g.useEffect(() => {
|
|
7941
|
-
|
|
7941
|
+
Ve && (R({
|
|
7942
7942
|
...w,
|
|
7943
7943
|
accounts: C,
|
|
7944
7944
|
dateRange: { start: h.start, end: h.end }
|
|
7945
7945
|
}), N(h.start).finally());
|
|
7946
|
-
}, [
|
|
7946
|
+
}, [Ve, h, C]), g.useEffect(() => {
|
|
7947
7947
|
fe(i);
|
|
7948
7948
|
}, [i]);
|
|
7949
7949
|
const yn = g.useMemo(
|
|
@@ -7959,9 +7959,9 @@ const Dc = ({ transaction: e }) => {
|
|
|
7959
7959
|
}, Oa = () => {
|
|
7960
7960
|
xc(M, k), l(F.TRANSACTIONS_CLICK_EXPORT);
|
|
7961
7961
|
}, La = () => {
|
|
7962
|
-
yn.length > 0 ? (
|
|
7962
|
+
yn.length > 0 ? (Ie({
|
|
7963
7963
|
...Ic,
|
|
7964
|
-
date: Fe(
|
|
7964
|
+
date: Fe(ve()),
|
|
7965
7965
|
user_guid: Me?.user_guid || ""
|
|
7966
7966
|
}), me(
|
|
7967
7967
|
"addTransaction"
|
|
@@ -7976,7 +7976,7 @@ const Dc = ({ transaction: e }) => {
|
|
|
7976
7976
|
}, Bl = async () => {
|
|
7977
7977
|
Y && !Y.has_been_viewed && await L({ ...Y, has_been_viewed: !0 }), me("");
|
|
7978
7978
|
};
|
|
7979
|
-
if (!m || !p || !
|
|
7979
|
+
if (!m || !p || !Ve)
|
|
7980
7980
|
return /* @__PURE__ */ t(ue, {});
|
|
7981
7981
|
const Ga = [];
|
|
7982
7982
|
return !s && E && Ga.push({
|
|
@@ -8144,7 +8144,7 @@ const Dc = ({ transaction: e }) => {
|
|
|
8144
8144
|
label: Mi(y + 1)
|
|
8145
8145
|
}));
|
|
8146
8146
|
u[30].label += ` (${s.last_day_of_month})`;
|
|
8147
|
-
const _ = u.slice(0, 15), h = u.slice(14), m = e === Ee.EveryWeek || e === Ee.EveryOtherWeek, p = e === Ee.TwiceAMonth || e === Ee.EveryMonth || e === Ee.EveryOtherMonth || e === Ee.EveryQuarter || e === Ee.EveryOtherQuarter, C = Qs(
|
|
8147
|
+
const _ = u.slice(0, 15), h = u.slice(14), m = e === Ee.EveryWeek || e === Ee.EveryOtherWeek, p = e === Ee.TwiceAMonth || e === Ee.EveryMonth || e === Ee.EveryOtherMonth || e === Ee.EveryQuarter || e === Ee.EveryOtherQuarter, C = Qs(ve(), n), S = (y) => {
|
|
8148
8148
|
y && o(n_(y));
|
|
8149
8149
|
};
|
|
8150
8150
|
return /* @__PURE__ */ d(b, { gap: 24, sx: { m: 24 }, children: [
|
|
@@ -8243,7 +8243,7 @@ const Dc = ({ transaction: e }) => {
|
|
|
8243
8243
|
g.useEffect(() => {
|
|
8244
8244
|
s({
|
|
8245
8245
|
accounts: a,
|
|
8246
|
-
dateRange: { start: Ot(
|
|
8246
|
+
dateRange: { start: Ot(ve(), 90), end: qe(ve()) },
|
|
8247
8247
|
custom: (v) => v.repeating_transaction_guid === n.guid
|
|
8248
8248
|
});
|
|
8249
8249
|
}, [n]);
|
|
@@ -8732,13 +8732,13 @@ const Dc = ({ transaction: e }) => {
|
|
|
8732
8732
|
mr(/* @__PURE__ */ new Date()) * xi + $r
|
|
8733
8733
|
), s = (l) => {
|
|
8734
8734
|
r(mr(l) * xi + $r), a({
|
|
8735
|
-
start:
|
|
8735
|
+
start: Ye(l),
|
|
8736
8736
|
end: qe(l)
|
|
8737
8737
|
}), n(F.RECURRING_TRANSACTIONS_CLICK_CALENDAR_RIGHT);
|
|
8738
8738
|
}, c = /* @__PURE__ */ t(
|
|
8739
8739
|
Co,
|
|
8740
8740
|
{
|
|
8741
|
-
minDate:
|
|
8741
|
+
minDate: Ye(/* @__PURE__ */ new Date()),
|
|
8742
8742
|
onMonthChange: s,
|
|
8743
8743
|
showDaysOutsideCurrentMonth: !0,
|
|
8744
8744
|
slots: {
|
|
@@ -9026,13 +9026,13 @@ const Dc = ({ transaction: e }) => {
|
|
|
9026
9026
|
}, G = () => {
|
|
9027
9027
|
const W = qt(s.start, 1);
|
|
9028
9028
|
S({
|
|
9029
|
-
start:
|
|
9029
|
+
start: Ye(W),
|
|
9030
9030
|
end: qe(W)
|
|
9031
9031
|
});
|
|
9032
9032
|
}, L = () => {
|
|
9033
9033
|
const W = Ht(s.start, 1);
|
|
9034
9034
|
S({
|
|
9035
|
-
start:
|
|
9035
|
+
start: Ye(W),
|
|
9036
9036
|
end: qe(W)
|
|
9037
9037
|
});
|
|
9038
9038
|
};
|
|
@@ -9053,7 +9053,7 @@ const Dc = ({ transaction: e }) => {
|
|
|
9053
9053
|
children: /* @__PURE__ */ t(Gs, {})
|
|
9054
9054
|
}
|
|
9055
9055
|
),
|
|
9056
|
-
/* @__PURE__ */ t(We, { color: "primary", onClick: G, children: /* @__PURE__ */ t(
|
|
9056
|
+
/* @__PURE__ */ t(We, { color: "primary", onClick: G, children: /* @__PURE__ */ t(ze, {}) })
|
|
9057
9057
|
] })
|
|
9058
9058
|
] }),
|
|
9059
9059
|
/* @__PURE__ */ t(
|
|
@@ -9138,9 +9138,9 @@ const Dc = ({ transaction: e }) => {
|
|
|
9138
9138
|
c(i);
|
|
9139
9139
|
}, [i]), g.useEffect(() => {
|
|
9140
9140
|
r && (h({
|
|
9141
|
-
dateRange: { start: Ot(
|
|
9141
|
+
dateRange: { start: Ot(ve(), 90), end: gn() },
|
|
9142
9142
|
accounts: s
|
|
9143
|
-
}), _({ start:
|
|
9143
|
+
}), _({ start: Ye(/* @__PURE__ */ new Date()), end: qe(/* @__PURE__ */ new Date()) }), u().finally());
|
|
9144
9144
|
}, [r]), o ? /* @__PURE__ */ d(
|
|
9145
9145
|
ft,
|
|
9146
9146
|
{
|
|
@@ -9204,7 +9204,7 @@ const Dc = ({ transaction: e }) => {
|
|
|
9204
9204
|
l && u(i);
|
|
9205
9205
|
}, [l]), g.useEffect(() => {
|
|
9206
9206
|
_.length > 0 && (o({
|
|
9207
|
-
dateRange: { start: Ot(
|
|
9207
|
+
dateRange: { start: Ot(ve(), 90), end: gn() },
|
|
9208
9208
|
accounts: _
|
|
9209
9209
|
}), s().finally());
|
|
9210
9210
|
}, [_]), !c || !l ? /* @__PURE__ */ t(ue, {}) : /* @__PURE__ */ t(
|
|
@@ -9315,9 +9315,9 @@ const Dc = ({ transaction: e }) => {
|
|
|
9315
9315
|
h(r);
|
|
9316
9316
|
}, [r]), g.useEffect(() => {
|
|
9317
9317
|
u && (N({
|
|
9318
|
-
dateRange: { start: Ot(
|
|
9318
|
+
dateRange: { start: Ot(ve(), 90), end: gn() },
|
|
9319
9319
|
accounts: _
|
|
9320
|
-
}), I({ start:
|
|
9320
|
+
}), I({ start: Ye(/* @__PURE__ */ new Date()), end: qe(/* @__PURE__ */ new Date()) }), m().finally(), i(!0));
|
|
9321
9321
|
}, [u]), g.useEffect(() => {
|
|
9322
9322
|
n && a(F.RECURRING_TRANSACTIONS_LOAD_WIDGET, {
|
|
9323
9323
|
state: p.length > 0 ? "default" : "zeroState"
|
|
@@ -9350,7 +9350,7 @@ const Dc = ({ transaction: e }) => {
|
|
|
9350
9350
|
maxLogos: 3,
|
|
9351
9351
|
upcomingRecurrences: p.slice(0, 3)
|
|
9352
9352
|
}
|
|
9353
|
-
) : /* @__PURE__ */ t(rm, { maxLogos: 3, upcomingRecurrences: p.slice(0, 3) }) : /* @__PURE__ */ t(b, { sx: { width: k ? 64 : 104 } }),
|
|
9353
|
+
) : /* @__PURE__ */ t(rm, { maxLogos: 3, upcomingRecurrences: p.slice(0, 3) }) : /* @__PURE__ */ t(b, { sx: { width: k ? 64 : 104 } }), Ie = [
|
|
9354
9354
|
{
|
|
9355
9355
|
amount: y,
|
|
9356
9356
|
bgColor: "success.main",
|
|
@@ -9433,7 +9433,7 @@ const Dc = ({ transaction: e }) => {
|
|
|
9433
9433
|
gap: 16,
|
|
9434
9434
|
mt: 4
|
|
9435
9435
|
},
|
|
9436
|
-
children:
|
|
9436
|
+
children: Ie.map((he, me) => /* @__PURE__ */ t(
|
|
9437
9437
|
cm,
|
|
9438
9438
|
{
|
|
9439
9439
|
amount: he.amount,
|
|
@@ -9465,17 +9465,14 @@ class Kr {
|
|
|
9465
9465
|
).then((i) => i.repeating_transaction);
|
|
9466
9466
|
deleteRepeatingTransaction = async (n) => this.fetchInstance.delete(`${B.REPEATING_TRANSACTIONS}/${n}`).then((i) => i);
|
|
9467
9467
|
}
|
|
9468
|
-
const zr = (e) => lo(
|
|
9469
|
-
start: Ve(xe()),
|
|
9470
|
-
end: qe(xe())
|
|
9471
|
-
}), zn = (e, n) => e + n.amount;
|
|
9468
|
+
const zr = (e, n) => lo(n.expectedDate, e), zn = (e, n) => e + n.amount;
|
|
9472
9469
|
class dm {
|
|
9473
9470
|
globalStore;
|
|
9474
9471
|
api = new Kr("/", "");
|
|
9475
9472
|
transactions = [];
|
|
9476
9473
|
repeatingTransactions = [];
|
|
9477
9474
|
selectedDay;
|
|
9478
|
-
dateRange = { start:
|
|
9475
|
+
dateRange = { start: Ye(ve()), end: qe(ve()) };
|
|
9479
9476
|
isDataLoaded = !1;
|
|
9480
9477
|
constructor(n) {
|
|
9481
9478
|
this.globalStore = n, this.api = new Kr(n.endpoint, n.sessionToken), Pe(this);
|
|
@@ -9501,7 +9498,7 @@ class dm {
|
|
|
9501
9498
|
*/
|
|
9502
9499
|
get upcomingRecurrences() {
|
|
9503
9500
|
return this.recurrences.filter(
|
|
9504
|
-
(n) => rn(n.expectedDate, Ot(
|
|
9501
|
+
(n) => rn(n.expectedDate, Ot(ve(), 3)) && nt(n.expectedDate, this.dateRange.end) && n.status === et.Upcoming
|
|
9505
9502
|
);
|
|
9506
9503
|
}
|
|
9507
9504
|
/**
|
|
@@ -9537,19 +9534,23 @@ class dm {
|
|
|
9537
9534
|
);
|
|
9538
9535
|
}
|
|
9539
9536
|
get nextIncomeRecurrence() {
|
|
9540
|
-
return this.upcomingIncome.find((n) => rn(n.expectedDate,
|
|
9537
|
+
return this.upcomingIncome.find((n) => rn(n.expectedDate, ve()));
|
|
9541
9538
|
}
|
|
9542
9539
|
/**
|
|
9543
9540
|
* Returns the expense recurrences for the current month.
|
|
9544
9541
|
*/
|
|
9545
9542
|
get currentMonthExpenses() {
|
|
9546
|
-
return this.expenses.filter(
|
|
9543
|
+
return this.expenses.filter(
|
|
9544
|
+
(n) => zr(this.dateRange, n)
|
|
9545
|
+
);
|
|
9547
9546
|
}
|
|
9548
9547
|
/**
|
|
9549
9548
|
* Returns the income recurrences for the current month.
|
|
9550
9549
|
*/
|
|
9551
9550
|
get currentMonthIncome() {
|
|
9552
|
-
return this.income.filter(
|
|
9551
|
+
return this.income.filter(
|
|
9552
|
+
(n) => zr(this.dateRange, n)
|
|
9553
|
+
);
|
|
9553
9554
|
}
|
|
9554
9555
|
/**
|
|
9555
9556
|
* Calculates the total amount of all expenses for the current month.
|
|
@@ -10081,9 +10082,9 @@ const ym = ({ recurrence: e }) => /* @__PURE__ */ d(q, { children: [
|
|
|
10081
10082
|
}
|
|
10082
10083
|
], l = g.useMemo(() => s.map((u) => {
|
|
10083
10084
|
const _ = a.filter(
|
|
10084
|
-
da(u, { start:
|
|
10085
|
+
da(u, { start: ve(), end: Fn(ve(), 30) })
|
|
10085
10086
|
).reduce((p, C) => p + C.amount, 0), h = o.filter(
|
|
10086
|
-
da(u, { start:
|
|
10087
|
+
da(u, { start: ve(), end: Fn(ve(), 30) })
|
|
10087
10088
|
).reduce((p, C) => p + C.amount, 0), m = (u.balance || 0) + h - _;
|
|
10088
10089
|
return {
|
|
10089
10090
|
account: u,
|
|
@@ -10511,10 +10512,10 @@ const ym = ({ recurrence: e }) => /* @__PURE__ */ d(q, { children: [
|
|
|
10511
10512
|
).length, fe = async () => {
|
|
10512
10513
|
k(2), l(
|
|
10513
10514
|
// Beginning of the month, 90 days before today
|
|
10514
|
-
|
|
10515
|
-
|
|
10515
|
+
Ye(Ot(ve(), 90)),
|
|
10516
|
+
ve()
|
|
10516
10517
|
), _({ ...u, custom: ki }), k(3);
|
|
10517
|
-
},
|
|
10518
|
+
}, Ie = async () => {
|
|
10518
10519
|
if (!(G.length < 1)) {
|
|
10519
10520
|
R(!0);
|
|
10520
10521
|
for (let he = 0; he < G.length; he++) {
|
|
@@ -10657,7 +10658,7 @@ const ym = ({ recurrence: e }) => /* @__PURE__ */ d(q, { children: [
|
|
|
10657
10658
|
te,
|
|
10658
10659
|
{
|
|
10659
10660
|
"aria-disabled": G.length < 1 || N,
|
|
10660
|
-
onClick:
|
|
10661
|
+
onClick: Ie,
|
|
10661
10662
|
startIcon: N ? /* @__PURE__ */ t(
|
|
10662
10663
|
U,
|
|
10663
10664
|
{
|
|
@@ -10696,7 +10697,7 @@ const ym = ({ recurrence: e }) => /* @__PURE__ */ d(q, { children: [
|
|
|
10696
10697
|
(R) => a.includes(R.guid) && w.includes(R.guid)
|
|
10697
10698
|
);
|
|
10698
10699
|
m(N), u({
|
|
10699
|
-
dateRange: { start: Ot(
|
|
10700
|
+
dateRange: { start: Ot(ve(), 90), end: gn() },
|
|
10700
10701
|
accounts: N.map((R) => R.guid)
|
|
10701
10702
|
});
|
|
10702
10703
|
}, [l, i]), !y || !E ? /* @__PURE__ */ t(ue, {}) : _?.has_completed_cash_flow_onboarding ? /* @__PURE__ */ d(
|
|
@@ -10772,7 +10773,7 @@ class j2 {
|
|
|
10772
10773
|
}
|
|
10773
10774
|
let Hm = class {
|
|
10774
10775
|
// Cashflow is hard-coded to display 30 days starting from today
|
|
10775
|
-
dateRange = { start:
|
|
10776
|
+
dateRange = { start: ve(), end: Fn(ve(), 30) };
|
|
10776
10777
|
isDirty = !1;
|
|
10777
10778
|
nextIncome = void 0;
|
|
10778
10779
|
upcomingExpenses = [];
|
|
@@ -10782,7 +10783,7 @@ let Hm = class {
|
|
|
10782
10783
|
}
|
|
10783
10784
|
// Returns the number of days until the next income activity or 0 if there is no income activity
|
|
10784
10785
|
get daysUntilNextIncome() {
|
|
10785
|
-
return this.nextIncome ? Math.abs(Fd(
|
|
10786
|
+
return this.nextIncome ? Math.abs(Fd(ve(), this.nextIncome.expectedDate)) : 0;
|
|
10786
10787
|
}
|
|
10787
10788
|
// Returns the expenses (Activities) until the next income activity or the end of the month
|
|
10788
10789
|
// if there is no income activity
|
|
@@ -11289,7 +11290,7 @@ const bn = () => {
|
|
|
11289
11290
|
return isNaN(i) ? 0 : i;
|
|
11290
11291
|
}, Uo = (e, n) => {
|
|
11291
11292
|
const i = [];
|
|
11292
|
-
let a =
|
|
11293
|
+
let a = Ye(n?.start ?? Ht(/* @__PURE__ */ new Date(), 5));
|
|
11293
11294
|
const o = n?.end ?? /* @__PURE__ */ new Date();
|
|
11294
11295
|
for (; nt(a, o); )
|
|
11295
11296
|
i.push({
|
|
@@ -11310,7 +11311,7 @@ const bn = () => {
|
|
|
11310
11311
|
const n = [], i = e.filter(
|
|
11311
11312
|
(r) => r.top_level_category_guid !== D.INCOME && r.top_level_category_guid !== D.TRANSFER && r.total > 0
|
|
11312
11313
|
);
|
|
11313
|
-
let a =
|
|
11314
|
+
let a = Ye(Ht(/* @__PURE__ */ new Date(), 5));
|
|
11314
11315
|
const o = qe(/* @__PURE__ */ new Date());
|
|
11315
11316
|
for (; nt(a, o); )
|
|
11316
11317
|
n.push({
|
|
@@ -12380,8 +12381,8 @@ const Kt = (e) => /* @__PURE__ */ t(f, { fontWeight: 600, variant: "Small", chil
|
|
|
12380
12381
|
S && R().finally();
|
|
12381
12382
|
}, [S]);
|
|
12382
12383
|
const L = (fe) => u(fe), W = () => {
|
|
12383
|
-
const fe = w.find((Me) => Me.guid === l),
|
|
12384
|
-
fe && E(fe),
|
|
12384
|
+
const fe = w.find((Me) => Me.guid === l), Ie = G.find((Me) => Me.guid === l);
|
|
12385
|
+
fe && E(fe), Ie && v(Ie), a(!0);
|
|
12385
12386
|
}, K = () => p(F.DEBTS_CLICK_FILTER), re = () => {
|
|
12386
12387
|
c(!0), p(F.DEBTS_CLICK_SNOWBALL_CTA);
|
|
12387
12388
|
}, ne = () => {
|
|
@@ -12517,7 +12518,7 @@ const Pp = ({ list: e, onClickItem: n }) => /* @__PURE__ */ t(O, { sx: { bgcolor
|
|
|
12517
12518
|
}
|
|
12518
12519
|
},
|
|
12519
12520
|
children: e.map((i, a) => /* @__PURE__ */ d(g.Fragment, { children: [
|
|
12520
|
-
/* @__PURE__ */ t(j, { secondaryAction: /* @__PURE__ */ t(
|
|
12521
|
+
/* @__PURE__ */ t(j, { secondaryAction: /* @__PURE__ */ t(ze, {}), children: /* @__PURE__ */ d(ge, { onClick: () => n(i.key), children: [
|
|
12521
12522
|
/* @__PURE__ */ t(He, { children: /* @__PURE__ */ t(
|
|
12522
12523
|
Ft,
|
|
12523
12524
|
{
|
|
@@ -12740,15 +12741,15 @@ const Pp = ({ list: e, onClickItem: n }) => /* @__PURE__ */ t(O, { sx: { bgcolor
|
|
|
12740
12741
|
legend: { hidden: !0 }
|
|
12741
12742
|
},
|
|
12742
12743
|
slots: {
|
|
12743
|
-
pieArc: (
|
|
12744
|
+
pieArc: (Ie) => /* @__PURE__ */ t(
|
|
12744
12745
|
zp,
|
|
12745
12746
|
{
|
|
12746
|
-
arcColor:
|
|
12747
|
+
arcColor: Ie.color,
|
|
12747
12748
|
arcRadius: e,
|
|
12748
12749
|
arcStartAngle: p,
|
|
12749
12750
|
centerX: M,
|
|
12750
12751
|
centerY: k,
|
|
12751
|
-
dataIndex:
|
|
12752
|
+
dataIndex: Ie.dataIndex,
|
|
12752
12753
|
dialScoreData: a,
|
|
12753
12754
|
innerArcRadius: N,
|
|
12754
12755
|
isFinacialStrengthGraph: h,
|
|
@@ -13088,7 +13089,7 @@ const Yo = ({
|
|
|
13088
13089
|
/* @__PURE__ */ t(
|
|
13089
13090
|
te,
|
|
13090
13091
|
{
|
|
13091
|
-
endIcon: /* @__PURE__ */ t(
|
|
13092
|
+
endIcon: /* @__PURE__ */ t(ze, {}),
|
|
13092
13093
|
onClick: () => c(!0),
|
|
13093
13094
|
size: "small",
|
|
13094
13095
|
sx: { p: 0, mt: 8, "&:hover": { backgroundColor: "transparent" } },
|
|
@@ -13115,7 +13116,7 @@ const Yo = ({
|
|
|
13115
13116
|
action: /* @__PURE__ */ t(
|
|
13116
13117
|
te,
|
|
13117
13118
|
{
|
|
13118
|
-
endIcon: /* @__PURE__ */ t(
|
|
13119
|
+
endIcon: /* @__PURE__ */ t(ze, {}),
|
|
13119
13120
|
sx: {
|
|
13120
13121
|
fontSize: 13,
|
|
13121
13122
|
lineHeight: "16px",
|
|
@@ -13448,7 +13449,7 @@ const Yo = ({
|
|
|
13448
13449
|
poor: 110,
|
|
13449
13450
|
good: 100
|
|
13450
13451
|
}
|
|
13451
|
-
},
|
|
13452
|
+
}, Ke = {
|
|
13452
13453
|
GOOD: "Good",
|
|
13453
13454
|
FAIR: "Fair",
|
|
13454
13455
|
OFF_TRACK: "Off Track",
|
|
@@ -13456,14 +13457,14 @@ const Yo = ({
|
|
|
13456
13457
|
}, di = ({
|
|
13457
13458
|
title: e,
|
|
13458
13459
|
description: n,
|
|
13459
|
-
cardState: i =
|
|
13460
|
+
cardState: i = Ke.MISSING,
|
|
13460
13461
|
stateTitle: a
|
|
13461
13462
|
}) => {
|
|
13462
13463
|
const o = {
|
|
13463
|
-
[
|
|
13464
|
-
[
|
|
13465
|
-
[
|
|
13466
|
-
[
|
|
13464
|
+
[Ke.GOOD]: { backgroundColor: "success.lighter", color: "success.main" },
|
|
13465
|
+
[Ke.FAIR]: { backgroundColor: "warning.lighter", color: "warning.main" },
|
|
13466
|
+
[Ke.OFF_TRACK]: { backgroundColor: "error.lighter", color: "error.main" },
|
|
13467
|
+
[Ke.MISSING]: { backgroundColor: "divider", color: "text.secondary" }
|
|
13467
13468
|
}[i];
|
|
13468
13469
|
return /* @__PURE__ */ d(
|
|
13469
13470
|
b,
|
|
@@ -13505,16 +13506,16 @@ const Yo = ({
|
|
|
13505
13506
|
}, o1 = () => {
|
|
13506
13507
|
const { healthScore: e } = Wi(), { finstrong: n } = A(), { key_indicators_spend: i } = n, a = (c) => {
|
|
13507
13508
|
const { good: l, poor: u } = Hi.spendToIncomeRatio;
|
|
13508
|
-
let _ =
|
|
13509
|
-
return c !== null && (c < l ? (_ =
|
|
13509
|
+
let _ = Ke.MISSING, h = i.ratio_missing_description, m = n.key_indicators_missing;
|
|
13510
|
+
return c !== null && (c < l ? (_ = Ke.GOOD, h = T(i.ratio_good_description, c), m = n.key_indicators_good) : c >= l && c < u ? (_ = Ke.FAIR, h = T(i.ratio_fair_description, c), m = n.key_indicators_fair) : c >= u && (_ = Ke.OFF_TRACK, h = T(i.ratio_off_track_description, c), m = n.key_indicators_off_track)), {
|
|
13510
13511
|
cardState: _,
|
|
13511
13512
|
description: h,
|
|
13512
13513
|
title: i.ratio_card_title,
|
|
13513
13514
|
stateTitle: m
|
|
13514
13515
|
};
|
|
13515
13516
|
}, o = (c) => {
|
|
13516
|
-
let l =
|
|
13517
|
-
return c !== null && (c === 0 ? (l =
|
|
13517
|
+
let l = Ke.MISSING, u = i.count_missing_description, _ = n.key_indicators_missing;
|
|
13518
|
+
return c !== null && (c === 0 ? (l = Ke.GOOD, u = i.count_good_description, _ = n.key_indicators_good) : c >= 1 && (l = Ke.OFF_TRACK, u = i.count_off_track_description, _ = n.key_indicators_off_track)), {
|
|
13518
13519
|
cardState: l,
|
|
13519
13520
|
description: u,
|
|
13520
13521
|
title: i.count_card_title,
|
|
@@ -13552,8 +13553,8 @@ const Yo = ({
|
|
|
13552
13553
|
}, r1 = () => {
|
|
13553
13554
|
const { healthScore: e } = Wi(), { finstrong: n } = A(), { key_indicators_save: i } = n, a = (c) => {
|
|
13554
13555
|
const { good: l, poor: u } = Hi.daysOfCashOnHand;
|
|
13555
|
-
let _ =
|
|
13556
|
-
return c !== null && (c >= l ? (_ =
|
|
13556
|
+
let _ = Ke.MISSING, h = i.days_of_cash_missing_description, m = n.key_indicators_missing;
|
|
13557
|
+
return c !== null && (c >= l ? (_ = Ke.GOOD, h = T(i.days_of_cash_good_description, c), m = n.key_indicators_good) : c < l && c >= u ? (_ = Ke.FAIR, h = T(i.days_of_cash_fair_description, c), m = n.key_indicators_fair) : c < u && (_ = Ke.OFF_TRACK, h = T(i.days_of_cash_off_track_description, c), m = n.key_indicators_off_track)), {
|
|
13557
13558
|
cardState: _,
|
|
13558
13559
|
description: h,
|
|
13559
13560
|
title: i.days_of_cash_title,
|
|
@@ -13561,11 +13562,11 @@ const Yo = ({
|
|
|
13561
13562
|
};
|
|
13562
13563
|
}, o = (c) => {
|
|
13563
13564
|
const { good: l, poor: u } = Hi.emergencySavings;
|
|
13564
|
-
let _ =
|
|
13565
|
-
return c !== null && (c >= l ? (_ =
|
|
13565
|
+
let _ = Ke.MISSING, h = i.emergency_savings_missing_description, m = n.key_indicators_missing;
|
|
13566
|
+
return c !== null && (c >= l ? (_ = Ke.GOOD, h = i.emergency_savings_good_description, m = n.key_indicators_good) : c < l && c >= u ? (_ = Ke.FAIR, h = T(
|
|
13566
13567
|
i.emergency_savings_fair_description,
|
|
13567
13568
|
H(c, "0,0.00")
|
|
13568
|
-
), m = n.key_indicators_fair) : c < u && (_ =
|
|
13569
|
+
), m = n.key_indicators_fair) : c < u && (_ = Ke.OFF_TRACK, h = i.emergency_savings_off_track_description, m = n.key_indicators_off_track)), {
|
|
13569
13570
|
cardState: _,
|
|
13570
13571
|
description: h,
|
|
13571
13572
|
title: i.emergency_savings_title,
|
|
@@ -13603,8 +13604,8 @@ const Yo = ({
|
|
|
13603
13604
|
}, s1 = () => {
|
|
13604
13605
|
const { healthScore: e } = Wi(), { finstrong: n } = A(), { key_indicators_borrow: i } = n, { user: a } = Ct(), o = (l) => {
|
|
13605
13606
|
const { good: u, poor: _ } = Hi.debtToIncomeRatio;
|
|
13606
|
-
let h =
|
|
13607
|
-
return l != null && (l <= u ? (h =
|
|
13607
|
+
let h = Ke.MISSING, m = i.manage_debit_missing_description, p = n.key_indicators_missing;
|
|
13608
|
+
return l != null && (l <= u ? (h = Ke.GOOD, m = i.manage_debit_good_description, p = n.key_indicators_good) : l > u && l <= _ ? (h = Ke.FAIR, m = T(i.manage_debit_fair_description, l), p = n.key_indicators_fair) : l > _ && (h = Ke.OFF_TRACK, m = T(
|
|
13608
13609
|
i.manage_debit_off_track_description,
|
|
13609
13610
|
l
|
|
13610
13611
|
), p = n.key_indicators_off_track)), {
|
|
@@ -13615,8 +13616,8 @@ const Yo = ({
|
|
|
13615
13616
|
};
|
|
13616
13617
|
}, r = (l) => {
|
|
13617
13618
|
const { good: u, poor: _ } = Hi.creditScore;
|
|
13618
|
-
let h =
|
|
13619
|
-
return l !== null && (l >= u ? (h =
|
|
13619
|
+
let h = Ke.MISSING, m = i.credit_score_missing_description, p = n.key_indicators_missing;
|
|
13620
|
+
return l !== null && (l >= u ? (h = Ke.GOOD, m = T(i.credit_score_good_description, l), p = n.key_indicators_good) : l < u && l >= _ ? (h = Ke.FAIR, m = T(i.credit_score_fair_description, l), p = n.key_indicators_fair) : l < _ && (h = Ke.OFF_TRACK, m = T(
|
|
13620
13621
|
i.credit_score_off_track_description,
|
|
13621
13622
|
l
|
|
13622
13623
|
), p = n.key_indicators_off_track)), {
|
|
@@ -13717,7 +13718,7 @@ const Yo = ({
|
|
|
13717
13718
|
/* @__PURE__ */ t(O, { children: /* @__PURE__ */ t(
|
|
13718
13719
|
te,
|
|
13719
13720
|
{
|
|
13720
|
-
endIcon: /* @__PURE__ */ t(
|
|
13721
|
+
endIcon: /* @__PURE__ */ t(ze, {}),
|
|
13721
13722
|
onClick: e,
|
|
13722
13723
|
size: "small",
|
|
13723
13724
|
sx: {
|
|
@@ -13788,7 +13789,7 @@ const Yo = ({
|
|
|
13788
13789
|
/* @__PURE__ */ t(
|
|
13789
13790
|
te,
|
|
13790
13791
|
{
|
|
13791
|
-
endIcon: /* @__PURE__ */ t(
|
|
13792
|
+
endIcon: /* @__PURE__ */ t(ze, {}),
|
|
13792
13793
|
sx: {
|
|
13793
13794
|
fontSize: 13
|
|
13794
13795
|
},
|
|
@@ -14084,7 +14085,7 @@ const h1 = (e, n) => {
|
|
|
14084
14085
|
justifyContent: "space-between",
|
|
14085
14086
|
children: [
|
|
14086
14087
|
/* @__PURE__ */ t(f, { color: "primary.light", variant: "Body", children: n.reorder_goals_title }),
|
|
14087
|
-
/* @__PURE__ */ t(
|
|
14088
|
+
/* @__PURE__ */ t(ze, { color: "primary" })
|
|
14088
14089
|
]
|
|
14089
14090
|
}
|
|
14090
14091
|
) }) }) }),
|
|
@@ -14179,7 +14180,7 @@ const h1 = (e, n) => {
|
|
|
14179
14180
|
), [c, l] = g.useState(!1);
|
|
14180
14181
|
let u = n.manage_saving_goals, _ = n.manage_saving_drawer_title, h = n.manage_saving_title, m = n.manage_saving_description;
|
|
14181
14182
|
return e === z.DEBT_TRACK ? (u = n.manage_debt_goals, _ = n.manage_debt_drawer_title, h = n.manage_debt_title, m = n.manage_debt_description) : e === z.RETIREMENT_TRACK && (u = n.manage_retirement_goals, _ = n.manage_retirement_drawer_title, h = n.manage_retirement_title, m = n.manage_retirement_description), /* @__PURE__ */ d(b, { children: [
|
|
14182
|
-
/* @__PURE__ */ t(te, { endIcon: /* @__PURE__ */ t(
|
|
14183
|
+
/* @__PURE__ */ t(te, { endIcon: /* @__PURE__ */ t(ze, {}), onClick: () => l(!0), children: u }),
|
|
14183
14184
|
/* @__PURE__ */ t(
|
|
14184
14185
|
de,
|
|
14185
14186
|
{
|
|
@@ -14307,7 +14308,7 @@ const h1 = (e, n) => {
|
|
|
14307
14308
|
children: [
|
|
14308
14309
|
/* @__PURE__ */ t(He, { children: /* @__PURE__ */ t(Ft, { sx: { bgcolor: a }, variant: "rounded", children: /* @__PURE__ */ t(pt, { name: o, sx: { color: "grey.900" } }) }) }),
|
|
14309
14310
|
/* @__PURE__ */ t(se, { primary: r, secondary: s, sx: { mr: 24 } }),
|
|
14310
|
-
!h && /* @__PURE__ */ t(
|
|
14311
|
+
!h && /* @__PURE__ */ t(ze, {}),
|
|
14311
14312
|
h && (u ? /* @__PURE__ */ t(Ks, {}) : /* @__PURE__ */ t(_i, {}))
|
|
14312
14313
|
]
|
|
14313
14314
|
}
|
|
@@ -14322,7 +14323,7 @@ const h1 = (e, n) => {
|
|
|
14322
14323
|
primaryTypographyProps: { variant: "Body" }
|
|
14323
14324
|
}
|
|
14324
14325
|
),
|
|
14325
|
-
/* @__PURE__ */ t(
|
|
14326
|
+
/* @__PURE__ */ t(ze, {})
|
|
14326
14327
|
] }) }, p)) }) })
|
|
14327
14328
|
] }) });
|
|
14328
14329
|
}, tl = ({
|
|
@@ -14442,7 +14443,7 @@ const h1 = (e, n) => {
|
|
|
14442
14443
|
secondary: H(e.balance || 0, "0,0.00")
|
|
14443
14444
|
}
|
|
14444
14445
|
),
|
|
14445
|
-
/* @__PURE__ */ t(
|
|
14446
|
+
/* @__PURE__ */ t(ze, {})
|
|
14446
14447
|
] }),
|
|
14447
14448
|
/* @__PURE__ */ t(de, { isOpen: a, onClose: () => o(!1), title: n.account_details, children: /* @__PURE__ */ d(b, { children: [
|
|
14448
14449
|
/* @__PURE__ */ t(zo, {}),
|
|
@@ -14494,7 +14495,7 @@ const h1 = (e, n) => {
|
|
|
14494
14495
|
/* @__PURE__ */ t(zs, { filled: !0 }),
|
|
14495
14496
|
o.details_add_account
|
|
14496
14497
|
] }) }),
|
|
14497
|
-
/* @__PURE__ */ t(
|
|
14498
|
+
/* @__PURE__ */ t(ze, { color: "primary" })
|
|
14498
14499
|
] }) }) : /* @__PURE__ */ d(b, { sx: { gap: 8, my: 24, mx: 24 }, children: [
|
|
14499
14500
|
/* @__PURE__ */ t(te, { onClick: () => _(!0), variant: "text", children: o.details_change_account }),
|
|
14500
14501
|
/* @__PURE__ */ t(
|
|
@@ -14524,7 +14525,7 @@ const h1 = (e, n) => {
|
|
|
14524
14525
|
secondary: H(m?.balance || 0, "0,0.00")
|
|
14525
14526
|
}
|
|
14526
14527
|
),
|
|
14527
|
-
/* @__PURE__ */ t(
|
|
14528
|
+
/* @__PURE__ */ t(ze, {})
|
|
14528
14529
|
] }) }, m.guid)) }),
|
|
14529
14530
|
/* @__PURE__ */ t(f, { bold: !0, sx: { mb: 4, ml: 24, mt: 12 }, variant: "XSmall", children: a.account_types[2] }),
|
|
14530
14531
|
/* @__PURE__ */ t(oe, { sx: { bgcolor: "background.paper" }, children: i.map((m) => /* @__PURE__ */ t(j, { children: /* @__PURE__ */ d(ge, { onClick: () => h(m), children: [
|
|
@@ -14542,7 +14543,7 @@ const h1 = (e, n) => {
|
|
|
14542
14543
|
secondary: H(m?.balance || 0, "0,0.00")
|
|
14543
14544
|
}
|
|
14544
14545
|
),
|
|
14545
|
-
/* @__PURE__ */ t(
|
|
14546
|
+
/* @__PURE__ */ t(ze, {})
|
|
14546
14547
|
] }) }, m.guid)) }),
|
|
14547
14548
|
/* @__PURE__ */ t(
|
|
14548
14549
|
Tc,
|
|
@@ -14683,7 +14684,7 @@ const h1 = (e, n) => {
|
|
|
14683
14684
|
/* @__PURE__ */ t(zs, { filled: !0 }),
|
|
14684
14685
|
n.details_add_account
|
|
14685
14686
|
] }) }),
|
|
14686
|
-
/* @__PURE__ */ t(
|
|
14687
|
+
/* @__PURE__ */ t(ze, { color: "primary" })
|
|
14687
14688
|
] }) }),
|
|
14688
14689
|
/* @__PURE__ */ t(
|
|
14689
14690
|
tl,
|
|
@@ -14854,7 +14855,7 @@ const h1 = (e, n) => {
|
|
|
14854
14855
|
/* @__PURE__ */ d(
|
|
14855
14856
|
$t,
|
|
14856
14857
|
{
|
|
14857
|
-
onChange: (fe,
|
|
14858
|
+
onChange: (fe, Ie) => I(Ie),
|
|
14858
14859
|
sx: { bgcolor: "background.paper" },
|
|
14859
14860
|
textColor: "primary",
|
|
14860
14861
|
value: ne ? !1 : E,
|
|
@@ -15981,7 +15982,7 @@ const tC = ({
|
|
|
15981
15982
|
}), _C = (e, n) => [...e, ...n], ss = (e) => {
|
|
15982
15983
|
if (e && e.length > 0)
|
|
15983
15984
|
return e[e.length - 1];
|
|
15984
|
-
}, uC = (e, n) => e.year_month - n.year_month, hC = () => Array.from({ length: dl }, (e, n) => Math.floor(
|
|
15985
|
+
}, uC = (e, n) => e.year_month - n.year_month, hC = () => Array.from({ length: dl }, (e, n) => Math.floor(Ye(Ht(/* @__PURE__ */ new Date(), n)).getTime() / 1e3)).sort(), gC = (e, n, i) => !e.length || !n.length ? [] : hC().reduceRight((o, r) => {
|
|
15985
15986
|
const s = n.filter(
|
|
15986
15987
|
({ year_month: _ }) => _ === parseInt(Ln(Ue(r), "yyyyMM"))
|
|
15987
15988
|
), c = e.map((_) => {
|
|
@@ -16351,7 +16352,7 @@ const fC = ({ amount: e, copy: n, trendValue: i }) => {
|
|
|
16351
16352
|
y(pe), V.currentTarget instanceof HTMLDivElement && k(!0);
|
|
16352
16353
|
}, fe = (V) => {
|
|
16353
16354
|
S(V);
|
|
16354
|
-
},
|
|
16355
|
+
}, Ie = () => {
|
|
16355
16356
|
S(null);
|
|
16356
16357
|
}, Me = () => {
|
|
16357
16358
|
I(F.NET_WORTH_WIDGET_CLICK_ASSETS_LIABILITIES), L(!0);
|
|
@@ -16364,7 +16365,7 @@ const fC = ({ amount: e, copy: n, trendValue: i }) => {
|
|
|
16364
16365
|
onButtonClick: Me,
|
|
16365
16366
|
onDataClick: ne,
|
|
16366
16367
|
onMouseEnter: fe,
|
|
16367
|
-
onMouseLeave:
|
|
16368
|
+
onMouseLeave: Ie,
|
|
16368
16369
|
selectedData: C
|
|
16369
16370
|
}, Xe = () => {
|
|
16370
16371
|
K(!0), I(F.ACCOUNTS_CLICK_CONNECT);
|
|
@@ -16879,7 +16880,7 @@ const _l = x(() => {
|
|
|
16879
16880
|
return /* @__PURE__ */ d(g.Fragment, { children: [
|
|
16880
16881
|
/* @__PURE__ */ d(te, { onClick: l, sx: { height: "auto", p: 4, width: "fit-content" }, children: [
|
|
16881
16882
|
/* @__PURE__ */ t(f, { variant: "Small", children: n.verify_email }),
|
|
16882
|
-
/* @__PURE__ */ t(
|
|
16883
|
+
/* @__PURE__ */ t(ze, {})
|
|
16883
16884
|
] }),
|
|
16884
16885
|
/* @__PURE__ */ t(
|
|
16885
16886
|
Ge,
|
|
@@ -16961,7 +16962,7 @@ const _l = x(() => {
|
|
|
16961
16962
|
return /* @__PURE__ */ d(g.Fragment, { children: [
|
|
16962
16963
|
/* @__PURE__ */ d(te, { onClick: h, sx: { height: "auto", p: 4, width: "fit-content" }, children: [
|
|
16963
16964
|
/* @__PURE__ */ t(f, { variant: "Small", children: n.verify_phone }),
|
|
16964
|
-
/* @__PURE__ */ t(
|
|
16965
|
+
/* @__PURE__ */ t(ze, {})
|
|
16965
16966
|
] }),
|
|
16966
16967
|
/* @__PURE__ */ t(
|
|
16967
16968
|
Ge,
|
|
@@ -17770,7 +17771,7 @@ const WC = ({
|
|
|
17770
17771
|
institutionGuid: n.account?.institution_guid
|
|
17771
17772
|
}
|
|
17772
17773
|
) : void 0,
|
|
17773
|
-
endIcon: /* @__PURE__ */ t(
|
|
17774
|
+
endIcon: /* @__PURE__ */ t(ze, {}),
|
|
17774
17775
|
isChecked: n.is_enabled,
|
|
17775
17776
|
onClick: () => l(!0),
|
|
17776
17777
|
onToggle: () => e({
|
|
@@ -17797,7 +17798,7 @@ const WC = ({
|
|
|
17797
17798
|
Co,
|
|
17798
17799
|
{
|
|
17799
17800
|
maxDate: qe(/* @__PURE__ */ new Date()),
|
|
17800
|
-
minDate:
|
|
17801
|
+
minDate: Ye(/* @__PURE__ */ new Date()),
|
|
17801
17802
|
onChange: (E) => {
|
|
17802
17803
|
m(E.getDate());
|
|
17803
17804
|
},
|
|
@@ -17911,7 +17912,7 @@ const WC = ({
|
|
|
17911
17912
|
e.filter((c) => c.children && c.children.length > 0).map((c) => /* @__PURE__ */ t(
|
|
17912
17913
|
Ro,
|
|
17913
17914
|
{
|
|
17914
|
-
endIcon: /* @__PURE__ */ t(
|
|
17915
|
+
endIcon: /* @__PURE__ */ t(ze, {}),
|
|
17915
17916
|
isChecked: c.is_enabled,
|
|
17916
17917
|
isDisabled: !c.is_enabled,
|
|
17917
17918
|
onClick: () => a(c.guid),
|
|
@@ -18208,15 +18209,15 @@ const WC = ({
|
|
|
18208
18209
|
/* @__PURE__ */ d(oe, { children: [
|
|
18209
18210
|
e.includes(Mt.Accounts) && /* @__PURE__ */ t(j, { children: /* @__PURE__ */ d(ge, { onClick: () => u(Mt.Accounts), children: [
|
|
18210
18211
|
/* @__PURE__ */ t(se, { primary: o.accounts_title, secondary: o.accounts_subtitle }),
|
|
18211
|
-
/* @__PURE__ */ t(
|
|
18212
|
+
/* @__PURE__ */ t(ze, {})
|
|
18212
18213
|
] }) }),
|
|
18213
18214
|
e.includes(Mt.Budgets) && /* @__PURE__ */ t(j, { children: /* @__PURE__ */ d(ge, { onClick: () => u(Mt.Budgets), children: [
|
|
18214
18215
|
/* @__PURE__ */ t(se, { primary: o.budgets_title, secondary: o.budgets_subtitle }),
|
|
18215
|
-
/* @__PURE__ */ t(
|
|
18216
|
+
/* @__PURE__ */ t(ze, {})
|
|
18216
18217
|
] }) }),
|
|
18217
18218
|
e.includes(Mt.Insights) && /* @__PURE__ */ t(j, { children: /* @__PURE__ */ d(ge, { onClick: () => u(Mt.Insights), children: [
|
|
18218
18219
|
/* @__PURE__ */ t(se, { primary: o.insights_title, secondary: o.insights_subtitle }),
|
|
18219
|
-
/* @__PURE__ */ t(
|
|
18220
|
+
/* @__PURE__ */ t(ze, {})
|
|
18220
18221
|
] }) })
|
|
18221
18222
|
] }),
|
|
18222
18223
|
y && /* @__PURE__ */ t(b, { sx: { px: 24 }, children: /* @__PURE__ */ t(tf, {}) }),
|
|
@@ -18564,49 +18565,49 @@ const WC = ({
|
|
|
18564
18565
|
/* @__PURE__ */ t($, { content: c, sx: { py: 1 } }),
|
|
18565
18566
|
i === l ? /* @__PURE__ */ t(s, { ...o === "ol" && { type: "a" }, children: a.map((u, _) => /* @__PURE__ */ t("li", { children: /* @__PURE__ */ t($, { content: u, sx: { py: 1 } }) }, _)) }) : null
|
|
18566
18567
|
] }, l)) }) });
|
|
18567
|
-
},
|
|
18568
|
-
ACCOUNT_DETAILS: `${
|
|
18569
|
-
ACCOUNT_OVERVIEW: `${
|
|
18570
|
-
ACCOUNT_ADD: `${
|
|
18571
|
-
ACCOUNT_BROKEN_CONNECTION: `${
|
|
18572
|
-
ACCOUNT_HIDE: `${
|
|
18573
|
-
ACCOUNT_MANAGE_CONNECTIONS: `${
|
|
18574
|
-
BUDGETS_ADD_SUB_BUDGET: `${
|
|
18575
|
-
BUDGETS_WIDGET: `${
|
|
18576
|
-
BUDGETS_EDIT_INCOME: `${
|
|
18577
|
-
CASHFLOW_WIDGET: `${
|
|
18578
|
-
CASHFLOW_EXPENSE_DETAILS: `${
|
|
18579
|
-
CASHFLOW_MANAGE_EXPENSES: `${
|
|
18580
|
-
DEBTS_DETAILS: `${
|
|
18581
|
-
DEBTS_OVERVIEW: `${
|
|
18582
|
-
DEBTS_PRIORITIZATION: `${
|
|
18583
|
-
DEBTS_SNOWBALL_METHOD: `${
|
|
18584
|
-
GENERAL_CATEGORIZE_TRANSACTIONS: `${
|
|
18585
|
-
GOALS_CREATE_GOAL: `${
|
|
18586
|
-
GOALS_DEBT_GOALS: `${
|
|
18587
|
-
GOALS_WIDGET_OVERVIEW: `${
|
|
18588
|
-
GOALS_MANAGE_GOALS: `${
|
|
18589
|
-
GOALS_RETIREMENT_GOALS: `${
|
|
18590
|
-
GOALS_SAVINGS_GOALS: `${
|
|
18591
|
-
INSIGHTS_CAROUSEL: `${
|
|
18592
|
-
INSIGHTS_FEED: `${
|
|
18593
|
-
INVESTMENTS_WIDGET_DETAILS: `${
|
|
18594
|
-
MOBILE_ADD_MOBILE_DEVICE: `${
|
|
18595
|
-
NETWORTH_ASSETS_LIABILITIES: `${
|
|
18596
|
-
NETWORTH_GAINS_LOSSES: `${
|
|
18597
|
-
NETWORTH_WIDGET: `${
|
|
18598
|
-
NOTIFICATIONS_MANAGING: `${
|
|
18599
|
-
NOTIFICATIONS_OVERVIEW: `${
|
|
18600
|
-
RECURRING_TRANSACTIONS_EXPENSE_DETAILS: `${
|
|
18601
|
-
RECURRING_TRANSACTIONS_MANAGE_EXPENSES: `${
|
|
18602
|
-
RECURRING_TRANSACTIONS_OVERVIEW: `${
|
|
18603
|
-
SPENDING_WIDGET: `${
|
|
18604
|
-
TRANSACTIONS_CATEGORIZE: `${
|
|
18605
|
-
TRANSACTIONS_EDIT: `${
|
|
18606
|
-
TRANSACTIONS_EXPORT: `${
|
|
18607
|
-
TRANSACTIONS_OVERVIEW: `${
|
|
18608
|
-
TRANSACTIONS_RULES: `${
|
|
18609
|
-
TRENDS_WIDGET: `${
|
|
18568
|
+
}, xe = "https://content.moneydesktop.com/storage/MD_Assets/md/help", Re = {
|
|
18569
|
+
ACCOUNT_DETAILS: `${xe}/account/AccountDetails.png`,
|
|
18570
|
+
ACCOUNT_OVERVIEW: `${xe}/account/AccountsOverview.png`,
|
|
18571
|
+
ACCOUNT_ADD: `${xe}/account/AddAccount.png`,
|
|
18572
|
+
ACCOUNT_BROKEN_CONNECTION: `${xe}/account/BrokenConnection.png`,
|
|
18573
|
+
ACCOUNT_HIDE: `${xe}/account/AccountHide.png`,
|
|
18574
|
+
ACCOUNT_MANAGE_CONNECTIONS: `${xe}/account/ManageConnections.png`,
|
|
18575
|
+
BUDGETS_ADD_SUB_BUDGET: `${xe}/budgets/AddSubBudget.png`,
|
|
18576
|
+
BUDGETS_WIDGET: `${xe}/budgets/BudgetWidget.png`,
|
|
18577
|
+
BUDGETS_EDIT_INCOME: `${xe}/budgets/EditIncome.png`,
|
|
18578
|
+
CASHFLOW_WIDGET: `${xe}/cashflow/CashFlowWidget.png`,
|
|
18579
|
+
CASHFLOW_EXPENSE_DETAILS: `${xe}/cashflow/ExpenseDetailsCurrent.png`,
|
|
18580
|
+
CASHFLOW_MANAGE_EXPENSES: `${xe}/cashflow/ManageExpenses.png`,
|
|
18581
|
+
DEBTS_DETAILS: `${xe}/debts/DebtDetails.png`,
|
|
18582
|
+
DEBTS_OVERVIEW: `${xe}/debts/DebtOverview.png`,
|
|
18583
|
+
DEBTS_PRIORITIZATION: `${xe}/debts/DebtPrioritization.png`,
|
|
18584
|
+
DEBTS_SNOWBALL_METHOD: `${xe}/debts/SnowballMethod.png`,
|
|
18585
|
+
GENERAL_CATEGORIZE_TRANSACTIONS: `${xe}/general/CategorizeTransactions.png`,
|
|
18586
|
+
GOALS_CREATE_GOAL: `${xe}/goals/CreateGoal.png`,
|
|
18587
|
+
GOALS_DEBT_GOALS: `${xe}/goals/DebtGoals.png`,
|
|
18588
|
+
GOALS_WIDGET_OVERVIEW: `${xe}/goals/GoalsWidgetOverview.png`,
|
|
18589
|
+
GOALS_MANAGE_GOALS: `${xe}/goals/ManageGoals.png`,
|
|
18590
|
+
GOALS_RETIREMENT_GOALS: `${xe}/goals/RetirementGoals.png`,
|
|
18591
|
+
GOALS_SAVINGS_GOALS: `${xe}/goals/SavingsGoals.png`,
|
|
18592
|
+
INSIGHTS_CAROUSEL: `${xe}/insights/InsightsCarousel.png`,
|
|
18593
|
+
INSIGHTS_FEED: `${xe}/insights/InsightsFeed.png`,
|
|
18594
|
+
INVESTMENTS_WIDGET_DETAILS: `${xe}/investments/WidgetDetails.png`,
|
|
18595
|
+
MOBILE_ADD_MOBILE_DEVICE: `${xe}/mobile/AddMobileDevice.png`,
|
|
18596
|
+
NETWORTH_ASSETS_LIABILITIES: `${xe}/networth/AssetsLiabilities.png`,
|
|
18597
|
+
NETWORTH_GAINS_LOSSES: `${xe}/networth/GainsLosses.png`,
|
|
18598
|
+
NETWORTH_WIDGET: `${xe}/networth/NetWorthWidget.png`,
|
|
18599
|
+
NOTIFICATIONS_MANAGING: `${xe}/notifications/ManagingNotifications.png`,
|
|
18600
|
+
NOTIFICATIONS_OVERVIEW: `${xe}/notifications/NotificationOverview.png`,
|
|
18601
|
+
RECURRING_TRANSACTIONS_EXPENSE_DETAILS: `${xe}/recurringtransactions/expenseDetails.png`,
|
|
18602
|
+
RECURRING_TRANSACTIONS_MANAGE_EXPENSES: `${xe}/recurringtransactions/manageExpenses.png`,
|
|
18603
|
+
RECURRING_TRANSACTIONS_OVERVIEW: `${xe}/recurringtransactions/overview.png`,
|
|
18604
|
+
SPENDING_WIDGET: `${xe}/spending/SpendingWidget.png`,
|
|
18605
|
+
TRANSACTIONS_CATEGORIZE: `${xe}/transactions/CategorizeTransactions.png`,
|
|
18606
|
+
TRANSACTIONS_EDIT: `${xe}/transactions/EditTransactions.png`,
|
|
18607
|
+
TRANSACTIONS_EXPORT: `${xe}/transactions/ExportTransactions.png`,
|
|
18608
|
+
TRANSACTIONS_OVERVIEW: `${xe}/transactions/Overview.png`,
|
|
18609
|
+
TRANSACTIONS_RULES: `${xe}/transactions/TransactionRules.png`,
|
|
18610
|
+
TRENDS_WIDGET: `${xe}/trends/TrendsWidget.png`
|
|
18610
18611
|
}, of = ({ copy: e, topicKey: n }) => ({
|
|
18611
18612
|
"accounts-overview": /* @__PURE__ */ d(g.Fragment, { children: [
|
|
18612
18613
|
/* @__PURE__ */ t(
|
|
@@ -21026,7 +21027,7 @@ const WC = ({
|
|
|
21026
21027
|
secondaryTypographyProps: { variant: "XSmall" }
|
|
21027
21028
|
}
|
|
21028
21029
|
),
|
|
21029
|
-
/* @__PURE__ */ t(gt, { children: /* @__PURE__ */ t(
|
|
21030
|
+
/* @__PURE__ */ t(gt, { children: /* @__PURE__ */ t(ze, {}) })
|
|
21030
21031
|
] }) }), ml = ({ list: e, onClick: n, sx: i }) => /* @__PURE__ */ t(O, { sx: { bgcolor: "background.paper" }, children: /* @__PURE__ */ t(oe, { sx: { "& .MuiDivider-root:last-child": { ml: 0 } }, children: e.map(({ name: a, guid: o, subtitle: r, type: s }, c) => /* @__PURE__ */ d(g.Fragment, { children: [
|
|
21031
21032
|
/* @__PURE__ */ t(
|
|
21032
21033
|
If,
|
|
@@ -21839,10 +21840,10 @@ const Bf = (e) => e.reduce((i, a) => {
|
|
|
21839
21840
|
};
|
|
21840
21841
|
}, [l, k, h]), fe = (Q, ke) => {
|
|
21841
21842
|
M(ke ?? R), i(F.TRENDS_CLICK_TOGGLE);
|
|
21842
|
-
},
|
|
21843
|
-
const ke = go(Q?.[0], 1), Ce = Q?.[1],
|
|
21843
|
+
}, Ie = (Q) => {
|
|
21844
|
+
const ke = go(Q?.[0], 1), Ce = Q?.[1], Ve = Js(Ce, ke);
|
|
21844
21845
|
m({ start: ke, end: Ce }), i(F.TRENDS_CLICK_DATE, {
|
|
21845
|
-
time_period:
|
|
21846
|
+
time_period: Ve + "M"
|
|
21846
21847
|
});
|
|
21847
21848
|
}, Me = () => {
|
|
21848
21849
|
i(F.TRENDS_CLICK_FILTER);
|
|
@@ -21861,7 +21862,7 @@ const Bf = (e) => e.reduce((i, a) => {
|
|
|
21861
21862
|
ft,
|
|
21862
21863
|
{
|
|
21863
21864
|
accountOptions: s,
|
|
21864
|
-
calendarActions: { onRangeChanged:
|
|
21865
|
+
calendarActions: { onRangeChanged: Ie },
|
|
21865
21866
|
dateRange: h,
|
|
21866
21867
|
dateRangeVariant: "timeframebuttons",
|
|
21867
21868
|
onAccountsFilterClick: Me,
|
|
@@ -23722,14 +23723,14 @@ const Ui = g.createContext(null), c0 = ({
|
|
|
23722
23723
|
if (typeof V == "number" && e) {
|
|
23723
23724
|
const pe = (ke) => {
|
|
23724
23725
|
G(!0);
|
|
23725
|
-
const
|
|
23726
|
+
const Ve = [
|
|
23726
23727
|
{ maxWidth: 375, cardWidth: 268 },
|
|
23727
23728
|
{ maxWidth: 444, cardWidth: 300 },
|
|
23728
23729
|
{ maxWidth: 599, cardWidth: 350 },
|
|
23729
23730
|
{ maxWidth: 749, cardWidth: 450 },
|
|
23730
23731
|
{ maxWidth: 900, cardWidth: 600 }
|
|
23731
23732
|
].find((wt) => ke <= wt.maxWidth);
|
|
23732
|
-
return
|
|
23733
|
+
return Ve ? Ve.cardWidth : 750;
|
|
23733
23734
|
};
|
|
23734
23735
|
M(pe(V));
|
|
23735
23736
|
const Q = () => {
|
|
@@ -23758,7 +23759,7 @@ const Ui = g.createContext(null), c0 = ({
|
|
|
23758
23759
|
}, fe = () => {
|
|
23759
23760
|
if (!w || !I) return;
|
|
23760
23761
|
w - I > f0 ? W(Yt.ON_CAROUSEL_FORWARD_SWIPE) : W(Yt.ON_CAROUSEL_BACK_SWIPE);
|
|
23761
|
-
},
|
|
23762
|
+
}, Ie = (V) => {
|
|
23762
23763
|
v(V.targetTouches[0].clientX);
|
|
23763
23764
|
}, Me = (V) => {
|
|
23764
23765
|
v(null), N(V.targetTouches[0].clientX);
|
|
@@ -23790,7 +23791,7 @@ const Ui = g.createContext(null), c0 = ({
|
|
|
23790
23791
|
direction: "row",
|
|
23791
23792
|
onScroll: ne,
|
|
23792
23793
|
onTouchEnd: fe,
|
|
23793
|
-
onTouchMove:
|
|
23794
|
+
onTouchMove: Ie,
|
|
23794
23795
|
onTouchStart: Me,
|
|
23795
23796
|
ref: C,
|
|
23796
23797
|
sx: {
|
|
@@ -23816,7 +23817,7 @@ const Ui = g.createContext(null), c0 = ({
|
|
|
23816
23817
|
L.card_position_in_carousel_aria,
|
|
23817
23818
|
Q.toString(),
|
|
23818
23819
|
ke.toString()
|
|
23819
|
-
),
|
|
23820
|
+
), Ve = V.micro_title && V.micro_title.length > 0, wt = V.micro_description && V.micro_description.length > 0, yn = Ve ? V.micro_title : V.title, Y = wt ? V.micro_description : V.description;
|
|
23820
23821
|
return /* @__PURE__ */ t(
|
|
23821
23822
|
b0,
|
|
23822
23823
|
{
|
|
@@ -24107,7 +24108,7 @@ const Ui = g.createContext(null), c0 = ({
|
|
|
24107
24108
|
showWithMargin: E,
|
|
24108
24109
|
useDarkMode: v,
|
|
24109
24110
|
widthOverrides: M
|
|
24110
|
-
},
|
|
24111
|
+
}, Ie = {
|
|
24111
24112
|
carouselSize: G,
|
|
24112
24113
|
variant: N,
|
|
24113
24114
|
...fe
|
|
@@ -24140,8 +24141,8 @@ const Ui = g.createContext(null), c0 = ({
|
|
|
24140
24141
|
...fe
|
|
24141
24142
|
}
|
|
24142
24143
|
),
|
|
24143
|
-
W && !i.length && w && /* @__PURE__ */ t(wl, { clientColorScheme: a, ...
|
|
24144
|
-
W && !i.length && !w && /* @__PURE__ */ t(Dl, { ...
|
|
24144
|
+
W && !i.length && w && /* @__PURE__ */ t(wl, { clientColorScheme: a, ...Ie }),
|
|
24145
|
+
W && !i.length && !w && /* @__PURE__ */ t(Dl, { ...Ie })
|
|
24145
24146
|
] }) })
|
|
24146
24147
|
] })
|
|
24147
24148
|
);
|
|
@@ -24422,7 +24423,7 @@ const Ui = g.createContext(null), c0 = ({
|
|
|
24422
24423
|
selectedAccounts: I,
|
|
24423
24424
|
selectedAccountGuids: v,
|
|
24424
24425
|
setSelectedAccounts: w
|
|
24425
|
-
} = _e(), { trends: N } = A(), R = Q_(), M = s || r, [k, G] = g.useState(!1), [L, W] = g.useState("Chart"), [K, re] = g.useState(""), [ne, fe] = g.useState(!1), [
|
|
24426
|
+
} = _e(), { trends: N } = A(), R = Q_(), M = s || r, [k, G] = g.useState(!1), [L, W] = g.useState("Chart"), [K, re] = g.useState(""), [ne, fe] = g.useState(!1), [Ie, Me] = g.useState(window.innerHeight), he = Ie - 208;
|
|
24426
24427
|
g.useEffect(() => {
|
|
24427
24428
|
const Ce = () => Me(window.innerHeight);
|
|
24428
24429
|
return window.addEventListener("resize", Ce), () => window.removeEventListener("resize", Ce);
|
|
@@ -24444,22 +24445,22 @@ const Ui = g.createContext(null), c0 = ({
|
|
|
24444
24445
|
};
|
|
24445
24446
|
h({
|
|
24446
24447
|
...Ce,
|
|
24447
|
-
custom: (
|
|
24448
|
-
(wt) => wt.top_level_category_guid ===
|
|
24448
|
+
custom: (Ve) => !!_.find(
|
|
24449
|
+
(wt) => wt.top_level_category_guid === Ve.top_level_category_guid || wt.category_guid === Ve.category_guid
|
|
24449
24450
|
)
|
|
24450
24451
|
});
|
|
24451
24452
|
}
|
|
24452
24453
|
}, [_]);
|
|
24453
24454
|
const me = (Ce) => {
|
|
24454
|
-
const
|
|
24455
|
-
|
|
24455
|
+
const Ve = Ce;
|
|
24456
|
+
Ve.color = la(Ve.guid, o), Ve.chartLabel = Ce.name === "Income" ? N.monthly_income : N.monthly_spending, C(Ve), fe(!0);
|
|
24456
24457
|
}, Xe = () => {
|
|
24457
24458
|
C(null), fe(!1);
|
|
24458
|
-
}, V = (Ce,
|
|
24459
|
-
W(
|
|
24459
|
+
}, V = (Ce, Ve) => {
|
|
24460
|
+
W(Ve ?? L), a(F.TRENDS_CLICK_TOGGLE);
|
|
24460
24461
|
}, pe = (Ce) => {
|
|
24461
|
-
const
|
|
24462
|
-
S({ start:
|
|
24462
|
+
const Ve = go(Ce?.[0], 1), wt = Ce?.[1], yn = Js(wt, Ve);
|
|
24463
|
+
S({ start: Ve, end: wt }), a(F.TRENDS_CLICK_DATE, {
|
|
24463
24464
|
time_period: yn + "M"
|
|
24464
24465
|
});
|
|
24465
24466
|
}, Q = () => {
|
|
@@ -24599,7 +24600,7 @@ class $0 {
|
|
|
24599
24600
|
if (!this.selectedCategoryData?.transactions || this.selectedCategoryData.transactions.length === 0)
|
|
24600
24601
|
return [];
|
|
24601
24602
|
const n = [];
|
|
24602
|
-
let i =
|
|
24603
|
+
let i = Ye(this.selectedDateRange.start);
|
|
24603
24604
|
const a = this.selectedDateRange.end;
|
|
24604
24605
|
for (; nt(i, a); ) {
|
|
24605
24606
|
const o = this.selectedCategoryData.transactions.filter((r) => {
|
|
@@ -24689,7 +24690,7 @@ class K0 {
|
|
|
24689
24690
|
selectedAccountGuids = this.selectedAccounts.map((n) => n.guid);
|
|
24690
24691
|
displayedDate = /* @__PURE__ */ new Date();
|
|
24691
24692
|
displayedDateRange = {
|
|
24692
|
-
start:
|
|
24693
|
+
start: Ye(this.displayedDate),
|
|
24693
24694
|
end: qe(this.displayedDate)
|
|
24694
24695
|
};
|
|
24695
24696
|
constructor(n) {
|
|
@@ -26962,7 +26963,7 @@ const kb = ({
|
|
|
26962
26963
|
return g.useEffect(() => {
|
|
26963
26964
|
s(n);
|
|
26964
26965
|
}, [n]), g.useEffect(() => {
|
|
26965
|
-
_ && !o && m(h,
|
|
26966
|
+
_ && !o && m(h, Ye(/* @__PURE__ */ new Date()), qe(/* @__PURE__ */ new Date())).then(
|
|
26966
26967
|
() => {
|
|
26967
26968
|
r().finally();
|
|
26968
26969
|
}
|
|
@@ -27469,9 +27470,9 @@ const kb = ({
|
|
|
27469
27470
|
a(F.BUDGETS_CLICK_FILTER);
|
|
27470
27471
|
}, fe = () => {
|
|
27471
27472
|
K(!0), a(F.BUDGETS_CLICK_ADD);
|
|
27472
|
-
},
|
|
27473
|
+
}, Ie = () => {
|
|
27473
27474
|
K(!1);
|
|
27474
|
-
}, Me = rn(p.end,
|
|
27475
|
+
}, Me = rn(p.end, Ye(/* @__PURE__ */ new Date()));
|
|
27475
27476
|
return !c || !l || !C ? /* @__PURE__ */ t(ue, {}) : /* @__PURE__ */ d(
|
|
27476
27477
|
ft,
|
|
27477
27478
|
{
|
|
@@ -27532,7 +27533,7 @@ const kb = ({
|
|
|
27532
27533
|
isOpen: W,
|
|
27533
27534
|
onClose: () => K(!1),
|
|
27534
27535
|
title: r.add_new_title,
|
|
27535
|
-
children: /* @__PURE__ */ t(Ll, { onRecalculateBudgets:
|
|
27536
|
+
children: /* @__PURE__ */ t(Ll, { onRecalculateBudgets: Ie })
|
|
27536
27537
|
}
|
|
27537
27538
|
),
|
|
27538
27539
|
/* @__PURE__ */ t(
|
|
@@ -28838,7 +28839,7 @@ const iy = ({ widgets: e, isLoading: n }) => {
|
|
|
28838
28839
|
}));
|
|
28839
28840
|
}, { visibleHoldings: re } = Xn(), { visibleInvestmentAccounts: ne } = ye(), fe = ne.filter(
|
|
28840
28841
|
({ guid: V }) => r.includes(V)
|
|
28841
|
-
),
|
|
28842
|
+
), Ie = fe.reduce((V, pe) => V + (pe.balance || 0), 0), Me = fe.map(({ guid: V }) => V), me = re.filter(
|
|
28842
28843
|
({ account_guid: V }) => Me.includes(V)
|
|
28843
28844
|
).reduce((V, pe) => {
|
|
28844
28845
|
const Q = pe.market_value ? pe.market_value - (pe.cost_basis || 0) : 0;
|
|
@@ -28849,7 +28850,7 @@ const iy = ({ widgets: e, isLoading: n }) => {
|
|
|
28849
28850
|
return C ? /* @__PURE__ */ d(Oe, { sx: { alignItems: "center", gap: 48, pt: 48, width: "100%" }, children: [
|
|
28850
28851
|
!!fe.length && /* @__PURE__ */ d(Oe, { sx: { alignItems: "center" }, children: [
|
|
28851
28852
|
/* @__PURE__ */ t(f, { sx: { color: "text.secondary" }, children: p.overview.total_portfolio }),
|
|
28852
|
-
/* @__PURE__ */ t(Qt, { children:
|
|
28853
|
+
/* @__PURE__ */ t(Qt, { children: Ie.toLocaleString("en-US", {
|
|
28853
28854
|
currency: "USD",
|
|
28854
28855
|
maximumFractionDigits: 2,
|
|
28855
28856
|
minimumFractionDigits: 2,
|
|
@@ -28891,7 +28892,7 @@ const iy = ({ widgets: e, isLoading: n }) => {
|
|
|
28891
28892
|
})), Q = pe.length > 0, ke = V.balance, Ce = pe.reduce(
|
|
28892
28893
|
(Y, Be) => Be.totalGainLoss + Y,
|
|
28893
28894
|
0
|
|
28894
|
-
),
|
|
28895
|
+
), Ve = ke ? Ce / ke * 100 : 0;
|
|
28895
28896
|
if (e)
|
|
28896
28897
|
return /* @__PURE__ */ t(
|
|
28897
28898
|
Nt,
|
|
@@ -29001,7 +29002,7 @@ const iy = ({ widgets: e, isLoading: n }) => {
|
|
|
29001
29002
|
},
|
|
29002
29003
|
variant: "Body",
|
|
29003
29004
|
children: [
|
|
29004
|
-
|
|
29005
|
+
Ve.toFixed(2),
|
|
29005
29006
|
"%"
|
|
29006
29007
|
]
|
|
29007
29008
|
}
|
|
@@ -29145,7 +29146,7 @@ const iy = ({ widgets: e, isLoading: n }) => {
|
|
|
29145
29146
|
},
|
|
29146
29147
|
variant: "Body",
|
|
29147
29148
|
children: [
|
|
29148
|
-
|
|
29149
|
+
Ve.toFixed(2),
|
|
29149
29150
|
"%"
|
|
29150
29151
|
]
|
|
29151
29152
|
}
|
|
@@ -29483,7 +29484,7 @@ const iy = ({ widgets: e, isLoading: n }) => {
|
|
|
29483
29484
|
g.useEffect(() => {
|
|
29484
29485
|
c(
|
|
29485
29486
|
a,
|
|
29486
|
-
|
|
29487
|
+
Ye(/* @__PURE__ */ new Date()),
|
|
29487
29488
|
qe(/* @__PURE__ */ new Date())
|
|
29488
29489
|
).finally();
|
|
29489
29490
|
}, [a]);
|
|
@@ -29741,7 +29742,7 @@ const iy = ({ widgets: e, isLoading: n }) => {
|
|
|
29741
29742
|
const ne = R.categoryData.find((fe) => fe.guid === "other");
|
|
29742
29743
|
_({
|
|
29743
29744
|
...re,
|
|
29744
|
-
custom: (fe) => !!ne?.categoryTotals?.find((
|
|
29745
|
+
custom: (fe) => !!ne?.categoryTotals?.find((Ie) => Ie.guid === fe.top_level_category_guid)
|
|
29745
29746
|
});
|
|
29746
29747
|
} else
|
|
29747
29748
|
_({
|
|
@@ -29829,7 +29830,7 @@ const iy = ({ widgets: e, isLoading: n }) => {
|
|
|
29829
29830
|
g.useEffect(() => {
|
|
29830
29831
|
c(i);
|
|
29831
29832
|
}, [i]), g.useEffect(() => {
|
|
29832
|
-
_ && Array.isArray(_) && _.length === 2 ? s(_[0], _[1]) : s(
|
|
29833
|
+
_ && Array.isArray(_) && _.length === 2 ? s(_[0], _[1]) : s(Ye(ve()), qe(ve())), m(!0), l(F.SPENDING_VIEW);
|
|
29833
29834
|
}, []);
|
|
29834
29835
|
const p = (C) => {
|
|
29835
29836
|
s(C[0], C[1]);
|