@mx-cartographer/experiences 6.26.28 → 6.26.30
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 +8 -0
- package/dist/index.es.js +587 -583
- package/dist/index.es.js.map +1 -1
- package/package.json +1 -1
package/dist/index.es.js
CHANGED
@@ -6,7 +6,7 @@ import P from "@mui/material/Divider";
|
|
6
6
|
import ae from "@mui/material/List";
|
7
7
|
import $t from "@mui/material/ListSubheader";
|
8
8
|
import Me from "@mui/system/Stack";
|
9
|
-
import { AccountsIcon as Ul, P as X, Icon as V, useTokens as At, Text as C, H2 as fn, CategoryIcon as Lt, DialogHeader as Vl, DialogFooter as Kl, Drawer as zl, Footer as Yl, DateRangePicker as sr, H3 as
|
9
|
+
import { AccountsIcon as Ul, P as X, Icon as V, useTokens as At, Text as C, H2 as fn, CategoryIcon as Lt, DialogHeader as Vl, DialogFooter as Kl, Drawer as zl, Footer as Yl, DateRangePicker as sr, H3 as qe, H1 as Qt, TextField as On, IconWeight as It, MerchantLogo as Jt, CategoryIconList as jl, CategoryIconVariants as Bs, InstitutionLogo as Tt, ChevronRightIcon as Hs, THEMES as cr } from "@mxenabled/mxui";
|
10
10
|
import Xl from "bowser";
|
11
11
|
import { getUnixTime as We } from "date-fns/getUnixTime";
|
12
12
|
import { intlFormat as Zl } from "date-fns/intlFormat";
|
@@ -18,8 +18,8 @@ import { getDay as ql } from "date-fns/getDay";
|
|
18
18
|
import { isBefore as ot } 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
|
22
|
-
import { fromUnixTime as
|
21
|
+
import { startOfToday as Ae } from "date-fns/startOfToday";
|
22
|
+
import { fromUnixTime as Ke } from "date-fns/fromUnixTime";
|
23
23
|
import ja from "numeral";
|
24
24
|
import te from "@mui/material/Button";
|
25
25
|
import qn from "@mui/material/Tooltip";
|
@@ -38,18 +38,18 @@ import { css as Cn, keyframes as td } from "@mxenabled/cssinjs";
|
|
38
38
|
import { addDays as Fn } from "date-fns/addDays";
|
39
39
|
import { eachDayOfInterval as nd } from "date-fns/eachDayOfInterval";
|
40
40
|
import { eachWeekOfInterval as id } from "date-fns/eachWeekOfInterval";
|
41
|
-
import { endOfMonth as
|
41
|
+
import { endOfMonth as Ye } from "date-fns/endOfMonth";
|
42
42
|
import { format as Ln } from "date-fns/format";
|
43
43
|
import { isSameMonth as ad } from "date-fns/isSameMonth";
|
44
|
-
import { startOfMonth as
|
44
|
+
import { startOfMonth as Ve } 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 Ws, ChevronRight as
|
47
|
+
import { ChevronLeft as Ws, ChevronRight as je, ArrowBack as od, Icon as pt, AccountBalance as co, ExpandMore as ui, CheckCircle as ma, Edit as rd, Delete as $s, Schedule as sd, MonetizationOn as cd, Cancel as Us, CurrencyExchange as ld, Check as dd, TrendingUp as Vs, ArrowRightAlt as _d, TrendingDown as Ks, Payments as lo, CalendarMonth as ud, CreditCard as zs, Savings as hd, ContentCopy as gd, MultilineChart as Ys, NoteStack as js, Person as Xs, ExpandLess as Zs, AddBox as qs, Trophy as md, Star as pd, Settings as fd } from "@mxenabled/mx-icons";
|
48
48
|
import { isSameDay as Dt } from "date-fns/isSameDay";
|
49
49
|
import { isWithinInterval as _o } from "date-fns/isWithinInterval";
|
50
50
|
import * as Rt from "d3";
|
51
51
|
import { selectAll as Cd, interpolateString as bd, arc as yd } from "d3";
|
52
|
-
import { useTheme as
|
52
|
+
import { useTheme as Xe, alpha as Dn, keyframes as Sd, ThemeProvider as Ed } from "@mui/material/styles";
|
53
53
|
import { ResponsiveChartContainer as Td, ChartsReferenceLine as Ad, AreaPlot as xd, LinePlot as Id, MarkPlot as wd, BarPlot as vd, ChartsXAxis as Dd, ChartsYAxis as Nd, ChartsAxisHighlight as Rd, LineChart as Qs, PieChart as Od } from "@mui/x-charts";
|
54
54
|
import { ChartsTooltip as Ld } from "@mui/x-charts/ChartsTooltip";
|
55
55
|
import bt from "@mui/material/Card";
|
@@ -80,7 +80,7 @@ import gt from "@mui/material/ListItemIcon";
|
|
80
80
|
import ho from "@mui/material/MenuItem";
|
81
81
|
import it from "@mui/material/TextField";
|
82
82
|
import pa from "@mui/material/Switch";
|
83
|
-
import { makeAutoObservable as Fe, runInAction as
|
83
|
+
import { makeAutoObservable as Fe, runInAction as ee, reaction as Wd, observable as $d } from "mobx";
|
84
84
|
import Ud, { SurveyQuestionType as hr } from "posthog-js";
|
85
85
|
import { formatISO as fa } from "date-fns/formatISO";
|
86
86
|
import { differenceInDays as Vd } from "date-fns/differenceInDays";
|
@@ -867,15 +867,15 @@ const xi = 44, yr = (e, n) => e.find((i) => i.guid === n), Y_ = (e, n) => e.find
|
|
867
867
|
}, Io = (e) => {
|
868
868
|
const n = ql(e);
|
869
869
|
let i = ea(e, n);
|
870
|
-
for (; ot(i,
|
870
|
+
for (; ot(i, Ae()); )
|
871
871
|
i = Ps(i, 1);
|
872
872
|
return i;
|
873
873
|
}, X_ = (e) => {
|
874
874
|
const n = Io(e);
|
875
875
|
return Ps(n, 1);
|
876
876
|
}, Z_ = (e) => {
|
877
|
-
let n = ta(
|
878
|
-
for (; ot(n,
|
877
|
+
let n = ta(Ae(), e.getDate());
|
878
|
+
for (; ot(n, Ae()); )
|
879
879
|
n = rn(n, 1);
|
880
880
|
return n;
|
881
881
|
}, q_ = (e) => {
|
@@ -883,13 +883,13 @@ const xi = 44, yr = (e, n) => e.find((i) => i.guid === n), Y_ = (e, n) => e.find
|
|
883
883
|
return rn(n, 1);
|
884
884
|
}, pc = (e) => {
|
885
885
|
let n = Li(e, 1);
|
886
|
-
for (; ot(n,
|
886
|
+
for (; ot(n, Ae()); )
|
887
887
|
n = Li(n, 1);
|
888
888
|
return n;
|
889
889
|
}, Q_ = (e) => {
|
890
890
|
const n = pc(e);
|
891
891
|
return Li(n, 1);
|
892
|
-
}, J_ = (e) => Ji(e, 1), ya = (e) => de(
|
892
|
+
}, J_ = (e) => Ji(e, 1), ya = (e) => de(Ke(e), ie.DAY_OF_WEEK_MONTH_DAY), fc = (e) => e ? de(Ke(e), ie.MONTH_YEAR) : "", eu = /(?<static>.*?)(?<dynamic>(?:_\d+{(?:.*?)}))|(?<staticEnd>.+)/g, T = (e, ...n) => {
|
893
893
|
if (!e) return "";
|
894
894
|
const i = n.some((r) => typeof r != "string"), o = [...e.matchAll(eu)].reduce(
|
895
895
|
(r, s, c) => {
|
@@ -1918,7 +1918,7 @@ const cu = (e, n) => {
|
|
1918
1918
|
/* @__PURE__ */ t(fn, { className: "mx-cmn-calendar-header-title", variant: "H3", children: de(n, ie.MONTH_YEAR) }),
|
1919
1919
|
/* @__PURE__ */ d("div", { className: "mx-cmn-calendar-header-button-container", children: [
|
1920
1920
|
/* @__PURE__ */ t(te, { "aria-label": e.prevAria, onClick: a, children: /* @__PURE__ */ t(Ws, { size: 24 }) }),
|
1921
|
-
/* @__PURE__ */ t(te, { "aria-label": e.nextAria, onClick: i, children: /* @__PURE__ */ t(
|
1921
|
+
/* @__PURE__ */ t(te, { "aria-label": e.nextAria, onClick: i, children: /* @__PURE__ */ t(je, { size: 24 }) })
|
1922
1922
|
] })
|
1923
1923
|
] });
|
1924
1924
|
}, Su = (e) => Cn({
|
@@ -1935,7 +1935,7 @@ const cu = (e, n) => {
|
|
1935
1935
|
gap: 4
|
1936
1936
|
}
|
1937
1937
|
}), Eu = ({ beginDate: e, date: n, endDate: i, isInMonth: a, onClick: o }) => {
|
1938
|
-
const r = Te(), s = Tu(r), c = e && i && _o(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,
|
1938
|
+
const r = Te(), s = Tu(r), c = e && i && _o(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, Ae());
|
1939
1939
|
return /* @__PURE__ */ t(
|
1940
1940
|
"div",
|
1941
1941
|
{
|
@@ -2027,12 +2027,12 @@ const xu = ({
|
|
2027
2027
|
selectionType: r = "Single"
|
2028
2028
|
/* Single */
|
2029
2029
|
}) => {
|
2030
|
-
const s = At(), c = Iu(s), [l, u] = g.useState(
|
2030
|
+
const s = At(), c = Iu(s), [l, u] = g.useState(Ae), [_, h] = g.useState(n), [m, p] = g.useState(i);
|
2031
2031
|
g.useEffect(() => {
|
2032
2032
|
h(n), p(i), n && u(n);
|
2033
2033
|
}, [n, i]);
|
2034
2034
|
const f = g.useMemo(() => {
|
2035
|
-
const w = id({ start:
|
2035
|
+
const w = id({ start: Ve(l), end: Ye(l) }), v = [];
|
2036
2036
|
for (let N = 0; N < w.length; N++) {
|
2037
2037
|
const R = w[N], M = nd({ start: R, end: Fn(R, 6) }), k = [];
|
2038
2038
|
for (let G = 0; G < M.length; G++)
|
@@ -2049,7 +2049,7 @@ const xu = ({
|
|
2049
2049
|
!_ || m ? (h(w), p(void 0)) : ot(w, _) ? (p(_), h(w), o?.(w, _)) : (p(w), o?.(_, w));
|
2050
2050
|
}
|
2051
2051
|
}, y = () => {
|
2052
|
-
const w =
|
2052
|
+
const w = Ae();
|
2053
2053
|
u(w), r !== "None" && (h(w), r === "Single" ? a?.(w) : (p(w), o?.(w, w)));
|
2054
2054
|
}, E = () => {
|
2055
2055
|
u(rn(l, 1));
|
@@ -2171,7 +2171,7 @@ const xu = ({
|
|
2171
2171
|
)
|
2172
2172
|
] });
|
2173
2173
|
}, Nu = (e) => {
|
2174
|
-
const n =
|
2174
|
+
const n = Xe(), i = e.showLabel, a = e.style, o = Number(e.x), r = Number(e.y), s = e.handlers?.onMarkClick, c = e.handlers?.onMouseEnter, l = e.handlers?.onMouseLeave, u = hn(n.breakpoints.up("sm")), _ = e.valueFormatterString ? H(e.yData[e.dataIndex], e.valueFormatterString) : String(e.yData[e.dataIndex]), h = u ? n.typography.Small?.fontSize : n.typography.XSmall?.fontSize, m = h ? parseFloat(h.toString()) * 0.6 : 8, y = _.length * m + 8 + 8, E = 24, I = o - y / 2, w = r - 30;
|
2175
2175
|
return /* @__PURE__ */ d(Z, { children: [
|
2176
2176
|
i && /* @__PURE__ */ d(Z, { children: [
|
2177
2177
|
e.labelBackgroundColor && /* @__PURE__ */ t(
|
@@ -2469,18 +2469,18 @@ const ni = ({
|
|
2469
2469
|
showYAxisTicks: L = !1,
|
2470
2470
|
title: W,
|
2471
2471
|
useCustomMark: Y = !1,
|
2472
|
-
valueFormatterString:
|
2473
|
-
width:
|
2472
|
+
valueFormatterString: J,
|
2473
|
+
width: he
|
2474
2474
|
}) => {
|
2475
|
-
const _e =
|
2475
|
+
const _e = Xe(), Le = s.flat().map((fe) => fe.x), Re = s.flat().map((fe) => fe.y), ue = Math.round(Re.reduce((fe, we) => we + fe, 0) / Re.length), me = Math.floor(Math.min(...Re) / 100) * 100, Qe = Math.ceil(Math.max(...Re) / 100) * 100, $ = s.map((fe, we) => ({
|
2476
2476
|
type: w ? "bar" : "line",
|
2477
2477
|
curve: a,
|
2478
|
-
color: w ? _e.palette.chart?.chart6 : i[
|
2478
|
+
color: w ? _e.palette.chart?.chart6 : i[we] ?? _e.palette.primary.main,
|
2479
2479
|
data: fe.map((Ge) => Ge.y),
|
2480
2480
|
area: y,
|
2481
2481
|
baseline: n,
|
2482
2482
|
showMark: !0,
|
2483
|
-
valueFormatter: (Ge) =>
|
2483
|
+
valueFormatter: (Ge) => J ? H(Ge || 0, J) : String(Ge)
|
2484
2484
|
})), be = {
|
2485
2485
|
...{
|
2486
2486
|
top: 60,
|
@@ -2507,22 +2507,22 @@ const ni = ({
|
|
2507
2507
|
opacity: 0.15
|
2508
2508
|
}
|
2509
2509
|
},
|
2510
|
-
width:
|
2510
|
+
width: he,
|
2511
2511
|
xAxis: [{ data: Le, scaleType: w ? "band" : "point" }],
|
2512
2512
|
yAxis: [
|
2513
2513
|
{
|
2514
2514
|
min: l ? -22 : me,
|
2515
|
-
max:
|
2515
|
+
max: Qe || 100,
|
2516
2516
|
colorMap: y && $.length < 2 ? {
|
2517
2517
|
type: "continuous",
|
2518
2518
|
min: me,
|
2519
|
-
max:
|
2519
|
+
max: Qe,
|
2520
2520
|
color: [
|
2521
2521
|
_e.palette.background.paper,
|
2522
2522
|
i[0] ?? _e.palette.primary.main
|
2523
2523
|
]
|
2524
2524
|
} : void 0,
|
2525
|
-
valueFormatter: (fe) =>
|
2525
|
+
valueFormatter: (fe) => J ? H(fe, J) : String(fe)
|
2526
2526
|
}
|
2527
2527
|
],
|
2528
2528
|
children: [
|
@@ -2534,7 +2534,7 @@ const ni = ({
|
|
2534
2534
|
strokeDasharray: "10, 8",
|
2535
2535
|
strokeWidth: 2
|
2536
2536
|
},
|
2537
|
-
y:
|
2537
|
+
y: ue
|
2538
2538
|
}
|
2539
2539
|
),
|
2540
2540
|
/* @__PURE__ */ t(xd, {}),
|
@@ -2565,7 +2565,7 @@ const ni = ({
|
|
2565
2565
|
labelFontSize: m,
|
2566
2566
|
showLabel: N,
|
2567
2567
|
style: S?.(fe.dataIndex) ?? {},
|
2568
|
-
valueFormatterString:
|
2568
|
+
valueFormatterString: J,
|
2569
2569
|
yData: Re,
|
2570
2570
|
...fe
|
2571
2571
|
}
|
@@ -2624,7 +2624,7 @@ const ni = ({
|
|
2624
2624
|
{
|
2625
2625
|
customLabels: r,
|
2626
2626
|
labels: u,
|
2627
|
-
valueFormatterString:
|
2627
|
+
valueFormatterString: J
|
2628
2628
|
}
|
2629
2629
|
)
|
2630
2630
|
]
|
@@ -2633,13 +2633,13 @@ const ni = ({
|
|
2633
2633
|
v && /* @__PURE__ */ t(
|
2634
2634
|
Mu,
|
2635
2635
|
{
|
2636
|
-
average: E ?
|
2636
|
+
average: E ? ue : void 0,
|
2637
2637
|
customLegendVariant: o,
|
2638
2638
|
labels: u,
|
2639
2639
|
series: $,
|
2640
2640
|
style: { position: "absolute", top: 16, left: 16 },
|
2641
2641
|
title: W,
|
2642
|
-
valueFormatterString:
|
2642
|
+
valueFormatterString: J
|
2643
2643
|
}
|
2644
2644
|
)
|
2645
2645
|
] });
|
@@ -2689,7 +2689,7 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
2689
2689
|
),
|
2690
2690
|
/* @__PURE__ */ t(C, { variant: "Body", children: o })
|
2691
2691
|
] });
|
2692
|
-
},
|
2692
|
+
}, Ze = ({
|
2693
2693
|
isIncome: e = !1,
|
2694
2694
|
amount: n = 0,
|
2695
2695
|
bold: i,
|
@@ -2708,7 +2708,7 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
2708
2708
|
cursorPosition: a,
|
2709
2709
|
chartContainerRef: o
|
2710
2710
|
}) => {
|
2711
|
-
const r =
|
2711
|
+
const r = Xe(), s = Gs(null), [c, l] = xt({ x: a.x, y: a.y });
|
2712
2712
|
if (Pn(() => {
|
2713
2713
|
(() => {
|
2714
2714
|
const h = s.current, m = o.current;
|
@@ -2734,7 +2734,7 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
2734
2734
|
/* @__PURE__ */ d(O, { alignItems: "center", display: "flex", flexDirection: "column", children: [
|
2735
2735
|
/* @__PURE__ */ t(Ic, { categoryGuid: e, topLevelCategoryGuid: n }),
|
2736
2736
|
/* @__PURE__ */ t(C, { variant: "Small", children: `${i.length}-month total` }),
|
2737
|
-
/* @__PURE__ */ t(
|
2737
|
+
/* @__PURE__ */ t(Ze, { amount: u, bold: !0, formatString: "0,0", variant: "body2" })
|
2738
2738
|
] }),
|
2739
2739
|
/* @__PURE__ */ t(P, { sx: { my: 16, width: "100%" } }),
|
2740
2740
|
/* @__PURE__ */ t(_t, { container: !0, children: i.map((_, h) => /* @__PURE__ */ d(g.Fragment, { children: [
|
@@ -2742,7 +2742,7 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
2742
2742
|
/* @__PURE__ */ t(_t, { item: !0, xs: 4, children: /* @__PURE__ */ d(O, { alignItems: "center", display: "flex", flexDirection: "column", children: [
|
2743
2743
|
/* @__PURE__ */ t(C, { color: r.palette.text.secondary, variant: "XSmall", children: _.x }),
|
2744
2744
|
/* @__PURE__ */ t(
|
2745
|
-
|
2745
|
+
Ze,
|
2746
2746
|
{
|
2747
2747
|
amount: _.y,
|
2748
2748
|
bold: !0,
|
@@ -2765,7 +2765,7 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
2765
2765
|
return s === void 0 || !c ? null : /* @__PURE__ */ t(ga, { sx: { pt: 4, px: 8 }, children: /* @__PURE__ */ t(Jl, { children: /* @__PURE__ */ d(un, { alignItems: "center", display: "flex", flexDirection: "column", children: [
|
2766
2766
|
/* @__PURE__ */ t(Ic, { categoryGuid: e, topLevelCategoryGuid: n }),
|
2767
2767
|
/* @__PURE__ */ t(C, { color: r.palette.text.secondary, variant: "Small", children: de(c, ie.MONTH_SHORT_YEAR) }),
|
2768
|
-
/* @__PURE__ */ t(
|
2768
|
+
/* @__PURE__ */ t(Ze, { amount: String(s), bold: !0, formatString: "0,0", variant: "Body" })
|
2769
2769
|
] }) }) });
|
2770
2770
|
}, Fu = ({
|
2771
2771
|
sx: e,
|
@@ -2835,7 +2835,7 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
2835
2835
|
availableHeight: s = 0,
|
2836
2836
|
minimumHeight: c = 350
|
2837
2837
|
}) => {
|
2838
|
-
const l =
|
2838
|
+
const l = Xe(), { isMobile: u } = Ce(), [_, { height: h }] = ii(), m = g.useRef(null), [p, f] = g.useState(0);
|
2839
2839
|
g.useEffect(() => {
|
2840
2840
|
const K = Math.max(s - h, c);
|
2841
2841
|
f(K);
|
@@ -2845,11 +2845,11 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
2845
2845
|
hoveredAreaData: null,
|
2846
2846
|
isAreaHovered: !1,
|
2847
2847
|
cursorPos: { x: 0, y: 0 }
|
2848
|
-
}), { hoveredSeriesId: w, hoveredAreaData: v, isAreaHovered: N, cursorPos: R } = E, M = N && w && v, k = !M, G = [...o, ...r], L = G[0]?.dataset.length ?? 0, W = G.flatMap((K) => K.dataset.map((He) => He.x)), Y = G.flatMap((K) => K.dataset.map((He) => He.y)),
|
2848
|
+
}), { hoveredSeriesId: w, hoveredAreaData: v, isAreaHovered: N, cursorPos: R } = E, M = N && w && v, k = !M, G = [...o, ...r], L = G[0]?.dataset.length ?? 0, W = G.flatMap((K) => K.dataset.map((He) => He.x)), Y = G.flatMap((K) => K.dataset.map((He) => He.y)), J = o[0]?.dataset?.map(
|
2849
2849
|
(K, He) => o.reduce((st, En) => st + En.dataset[He]?.y || 0, 0)
|
2850
|
-
) ?? [0],
|
2850
|
+
) ?? [0], he = Math.max(...J), _e = Math.max(
|
2851
2851
|
...r.flatMap((K) => K.dataset.map((He) => He.y))
|
2852
|
-
), Le = Math.floor(Math.min(...Y) / 100) * 100, Re = Math.ceil(Math.max(
|
2852
|
+
), Le = Math.floor(Math.min(...Y) / 100) * 100, Re = Math.ceil(Math.max(he, _e) / 100) * 100, ue = o.map((K, He) => ({
|
2853
2853
|
id: `stacked-${He}`,
|
2854
2854
|
guid: K.category_guid,
|
2855
2855
|
top_level_guid: K.top_level_category_guid,
|
@@ -2871,8 +2871,8 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
2871
2871
|
label: K.category_name,
|
2872
2872
|
type: "line",
|
2873
2873
|
valueFormatter: (st) => H(st, "0,0")
|
2874
|
-
})),
|
2875
|
-
...
|
2874
|
+
})), Qe = [...ue, ...me], $ = [
|
2875
|
+
...ue.map(({ guid: K, top_level_guid: He }) => ({
|
2876
2876
|
guid: K,
|
2877
2877
|
top_level_guid: He
|
2878
2878
|
})),
|
@@ -2890,11 +2890,11 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
2890
2890
|
y(K), i?.(K ?? "");
|
2891
2891
|
}, fe = (K) => {
|
2892
2892
|
a?.(K ?? "");
|
2893
|
-
},
|
2893
|
+
}, we = () => {
|
2894
2894
|
const K = pe(String(w)).guid;
|
2895
2895
|
K && a?.(K);
|
2896
2896
|
}, Ge = (K) => {
|
2897
|
-
const He = String(K?.seriesId), st = pe(He).guid, En =
|
2897
|
+
const He = String(K?.seriesId), st = pe(He).guid, En = Qe.find((Ai) => Ai.id === He), La = En && K?.dataIndex !== void 0, Ma = En && K?.dataIndex === void 0;
|
2898
2898
|
if (La)
|
2899
2899
|
I({
|
2900
2900
|
hoveredSeriesId: He,
|
@@ -2945,10 +2945,10 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
2945
2945
|
'& [class*="MuiLineElement-series-unstacked-"]': {
|
2946
2946
|
strokeWidth: 3
|
2947
2947
|
},
|
2948
|
-
...S &&
|
2948
|
+
...S && ue.reduce((K, He, st) => {
|
2949
2949
|
const En = `.MuiAreaElement-series-stacked-${st}`;
|
2950
2950
|
return K[En] = {
|
2951
|
-
opacity:
|
2951
|
+
opacity: ue[st].guid === S ? 0.9 : 0.2
|
2952
2952
|
}, K;
|
2953
2953
|
}, {})
|
2954
2954
|
};
|
@@ -2964,9 +2964,9 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
2964
2964
|
{
|
2965
2965
|
height: p,
|
2966
2966
|
margin: { bottom: 50 },
|
2967
|
-
onAreaClick:
|
2967
|
+
onAreaClick: we,
|
2968
2968
|
onHighlightChange: Ge,
|
2969
|
-
series:
|
2969
|
+
series: Qe,
|
2970
2970
|
skipAnimation: !0,
|
2971
2971
|
slotProps: {
|
2972
2972
|
legend: {
|
@@ -3213,7 +3213,7 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
3213
3213
|
calendarActions: e,
|
3214
3214
|
color: n = "primary",
|
3215
3215
|
copy: i,
|
3216
|
-
range: a = [
|
3216
|
+
range: a = [Ve(Ae()), Ye(pn())],
|
3217
3217
|
shouldShrinkToIcon: o = !0,
|
3218
3218
|
variant: r = "outlined"
|
3219
3219
|
}) => {
|
@@ -3232,22 +3232,22 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
3232
3232
|
]
|
3233
3233
|
};
|
3234
3234
|
g.useEffect(() => {
|
3235
|
-
p(a);
|
3235
|
+
u(a), p(a);
|
3236
3236
|
}, [a]), g.useEffect(() => {
|
3237
3237
|
(r === "timeframebuttons" || r === "timeframetabs") && e.onRangeChanged(N());
|
3238
3238
|
}, [I]);
|
3239
3239
|
const N = () => {
|
3240
|
-
const G =
|
3241
|
-
return [
|
3240
|
+
const G = Ye(pn());
|
3241
|
+
return [Ye(Ht(G, I)), G];
|
3242
3242
|
}, R = (G) => {
|
3243
|
-
const L = [...l], W = l[0], Y = l[1],
|
3243
|
+
const L = [...l], W = l[0], Y = l[1], J = G === "previous";
|
3244
3244
|
if (_ === i.dateRangePickerCopy.dateRangeThisMonth)
|
3245
|
-
L[0] =
|
3245
|
+
L[0] = J ? Ht(W, 1) : rn(W, 1), L[1] = Ye(J ? Ht(Y, 1) : rn(Y, 1));
|
3246
3246
|
else if (_ === i.dateRangePickerCopy.dateRangeYTD || _ === i.dateRangePickerCopy.dateRangeLastYear)
|
3247
|
-
L[0] =
|
3247
|
+
L[0] = J ? Za(ur(W), 1) : Ji(ur(W), 1), L[1] = J ? Za(_r(W), 1) : Ji(_r(W), 1);
|
3248
3248
|
else {
|
3249
|
-
const
|
3250
|
-
L[
|
3249
|
+
const he = Md(Y, W);
|
3250
|
+
J ? (L[1] = Ot(W, 1), L[0] = Ot(L[1], he)) : (L[0] = Fn(Y, 1), L[1] = Fn(L[0], he));
|
3251
3251
|
}
|
3252
3252
|
u(L), e.onRangeChanged(L);
|
3253
3253
|
}, M = () => {
|
@@ -3389,7 +3389,7 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
3389
3389
|
copy: i.dateRangePickerCopy,
|
3390
3390
|
dateRange: m,
|
3391
3391
|
onRangeChanged: (G, L) => {
|
3392
|
-
p(G), h(L);
|
3392
|
+
G[0] && !G[1] && (G[1] = G[0]), p(G), h(L);
|
3393
3393
|
},
|
3394
3394
|
selectedShortcut: _,
|
3395
3395
|
sx: { p: 16 }
|
@@ -3416,7 +3416,7 @@ const Ic = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
|
3416
3416
|
copy: i.dateRangePickerCopy,
|
3417
3417
|
dateRange: m,
|
3418
3418
|
onRangeChanged: (G, L) => {
|
3419
|
-
p(G), h(L);
|
3419
|
+
G[0] && !G[1] && (G[1] = G[0]), p(G), h(L);
|
3420
3420
|
},
|
3421
3421
|
selectedShortcut: _,
|
3422
3422
|
sx: {
|
@@ -3556,7 +3556,7 @@ class Ku extends g.Component {
|
|
3556
3556
|
return { hasError: !0 };
|
3557
3557
|
}
|
3558
3558
|
render() {
|
3559
|
-
return this.state.hasError ? /* @__PURE__ */ t(
|
3559
|
+
return this.state.hasError ? /* @__PURE__ */ t(qe, { sx: { pt: 24 }, children: Vu.text }) : this.props.children;
|
3560
3560
|
}
|
3561
3561
|
}
|
3562
3562
|
const Ea = ({
|
@@ -3576,7 +3576,7 @@ const Ea = ({
|
|
3576
3576
|
action: /* @__PURE__ */ t(
|
3577
3577
|
te,
|
3578
3578
|
{
|
3579
|
-
endIcon: /* @__PURE__ */ t(
|
3579
|
+
endIcon: /* @__PURE__ */ t(je, { size: 20 }),
|
3580
3580
|
onClick: a,
|
3581
3581
|
size: "small",
|
3582
3582
|
variant: "text",
|
@@ -3585,7 +3585,7 @@ const Ea = ({
|
|
3585
3585
|
),
|
3586
3586
|
subheader: o && /* @__PURE__ */ t(X, { sx: { color: "text.secondary" }, variant: "body2", children: o }),
|
3587
3587
|
sx: { p: 0, pb: 8, width: "calc(100% - 8px)", "& .MuiCardHeader-action": { mt: 0 } },
|
3588
|
-
title: /* @__PURE__ */ t(
|
3588
|
+
title: /* @__PURE__ */ t(qe, { sx: { width: "calc(100% - 10px)" }, children: s })
|
3589
3589
|
}
|
3590
3590
|
),
|
3591
3591
|
/* @__PURE__ */ t(Pt, { ref: l, sx: { p: 0, ":last-child": { pb: 0 } }, children: /* @__PURE__ */ t(wo, { availableHeight: u, availableWidth: _, children: e }) })
|
@@ -3607,11 +3607,11 @@ const Ea = ({
|
|
3607
3607
|
/* @__PURE__ */ t(
|
3608
3608
|
_n,
|
3609
3609
|
{
|
3610
|
-
action: a ? /* @__PURE__ */ t($e, { "aria-label": n, onClick: a, children: /* @__PURE__ */ t(pt, { name: "close", size: 24 }) }) : o && /* @__PURE__ */ t(te, { endIcon: /* @__PURE__ */ t(
|
3610
|
+
action: a ? /* @__PURE__ */ t($e, { "aria-label": n, onClick: a, children: /* @__PURE__ */ t(pt, { name: "close", size: 24 }) }) : o && /* @__PURE__ */ t(te, { endIcon: /* @__PURE__ */ t(je, {}), onClick: o, children: /* @__PURE__ */ t(C, { bold: !0, variant: "Small", children: r }) }),
|
3611
3611
|
subheader: s || null,
|
3612
3612
|
subheaderTypographyProps: { variant: "Small" },
|
3613
3613
|
sx: { pb: 4 },
|
3614
|
-
title: l ? /* @__PURE__ */ t(
|
3614
|
+
title: l ? /* @__PURE__ */ t(qe, { sx: { pb: 4 }, children: l }) : null
|
3615
3615
|
}
|
3616
3616
|
),
|
3617
3617
|
/* @__PURE__ */ t(Pt, { ref: u, sx: { p: 0 }, children: /* @__PURE__ */ t(wo, { availableHeight: _, availableWidth: h, children: i }) })
|
@@ -3642,7 +3642,7 @@ const Ea = ({
|
|
3642
3642
|
};
|
3643
3643
|
if (!M)
|
3644
3644
|
return /* @__PURE__ */ t(ce, {});
|
3645
|
-
const
|
3645
|
+
const J = {
|
3646
3646
|
accountFilterOptionsCopy: {
|
3647
3647
|
accountTypeAccounts: L.account_filter.account_type_accounts,
|
3648
3648
|
cancelButton: L.cancel_button,
|
@@ -3656,7 +3656,7 @@ const Ea = ({
|
|
3656
3656
|
zeroStateTitle: L.account_filter.zero_state_title
|
3657
3657
|
},
|
3658
3658
|
title: L.account_filter.title
|
3659
|
-
},
|
3659
|
+
}, he = {
|
3660
3660
|
dateRangePickerCopy: {
|
3661
3661
|
dateRangeFrom: L.date_range_picker.from,
|
3662
3662
|
dateRangeTo: L.date_range_picker.to,
|
@@ -3695,7 +3695,7 @@ const Ea = ({
|
|
3695
3695
|
vr,
|
3696
3696
|
{
|
3697
3697
|
calendarActions: i,
|
3698
|
-
copy:
|
3698
|
+
copy: he,
|
3699
3699
|
range: [_e, Le],
|
3700
3700
|
shouldShrinkToIcon: !1,
|
3701
3701
|
variant: r
|
@@ -3705,38 +3705,38 @@ const Ea = ({
|
|
3705
3705
|
Tc,
|
3706
3706
|
{
|
3707
3707
|
accounts: e,
|
3708
|
-
copy:
|
3708
|
+
copy: J,
|
3709
3709
|
onConnectAccountClick: () => f(!0),
|
3710
|
-
onFilterClick: (
|
3711
|
-
G(
|
3710
|
+
onFilterClick: (ue) => {
|
3711
|
+
G(ue), u?.();
|
3712
3712
|
},
|
3713
3713
|
selectedAccountGuids: k,
|
3714
3714
|
showAccountNumbers: !1,
|
3715
3715
|
variant: "text"
|
3716
3716
|
}
|
3717
3717
|
),
|
3718
|
-
n?.map((
|
3719
|
-
if (g.isValidElement(
|
3720
|
-
const { iconName: me, onClick:
|
3718
|
+
n?.map((ue) => {
|
3719
|
+
if (g.isValidElement(ue)) return ue;
|
3720
|
+
const { iconName: me, onClick: Qe, label: $ } = ue;
|
3721
3721
|
return Re ? w || N ? /* @__PURE__ */ t(
|
3722
3722
|
te,
|
3723
3723
|
{
|
3724
|
-
onClick:
|
3724
|
+
onClick: Qe,
|
3725
3725
|
startIcon: /* @__PURE__ */ t(V, { name: me, size: 24 }),
|
3726
3726
|
sx: { my: 4 },
|
3727
3727
|
children: $
|
3728
3728
|
},
|
3729
3729
|
me
|
3730
|
-
) : /* @__PURE__ */ t($e, { "aria-label": $, color: "primary", onClick:
|
3730
|
+
) : /* @__PURE__ */ t($e, { "aria-label": $, color: "primary", onClick: Qe, children: /* @__PURE__ */ t(V, { name: me, size: 24 }) }, me) : w || N ? /* @__PURE__ */ t(
|
3731
3731
|
te,
|
3732
3732
|
{
|
3733
|
-
onClick:
|
3733
|
+
onClick: Qe,
|
3734
3734
|
startIcon: /* @__PURE__ */ t(V, { name: me, size: 24 }),
|
3735
3735
|
sx: { my: 4 },
|
3736
3736
|
children: $
|
3737
3737
|
},
|
3738
3738
|
me
|
3739
|
-
) : /* @__PURE__ */ t($e, { "aria-label": $, color: "primary", onClick:
|
3739
|
+
) : /* @__PURE__ */ t($e, { "aria-label": $, color: "primary", onClick: Qe, children: /* @__PURE__ */ t(V, { name: me, size: 24 }) }, me);
|
3740
3740
|
})
|
3741
3741
|
] }),
|
3742
3742
|
sx: {
|
@@ -3762,7 +3762,7 @@ const Ea = ({
|
|
3762
3762
|
children: /* @__PURE__ */ t(V, { name: "arrow_back", size: 24 })
|
3763
3763
|
}
|
3764
3764
|
),
|
3765
|
-
/* @__PURE__ */ t(
|
3765
|
+
/* @__PURE__ */ t(qe, { children: m })
|
3766
3766
|
] })
|
3767
3767
|
}
|
3768
3768
|
),
|
@@ -3773,7 +3773,7 @@ const Ea = ({
|
|
3773
3773
|
vr,
|
3774
3774
|
{
|
3775
3775
|
calendarActions: i,
|
3776
|
-
copy:
|
3776
|
+
copy: he,
|
3777
3777
|
range: [_e, Le],
|
3778
3778
|
shouldShrinkToIcon: !1,
|
3779
3779
|
variant: r
|
@@ -4154,7 +4154,7 @@ const Dr = "connect_widget", Nr = "connections_widget", ju = ({
|
|
4154
4154
|
/* @__PURE__ */ t(
|
4155
4155
|
te,
|
4156
4156
|
{
|
4157
|
-
endIcon: /* @__PURE__ */ t(
|
4157
|
+
endIcon: /* @__PURE__ */ t(je, {}),
|
4158
4158
|
onClick: () => r(!0),
|
4159
4159
|
sx: {
|
4160
4160
|
pl: 0,
|
@@ -4261,7 +4261,7 @@ const Dr = "connect_widget", Nr = "connections_widget", ju = ({
|
|
4261
4261
|
primaryTypographyProps: { variant: "body1" }
|
4262
4262
|
}
|
4263
4263
|
),
|
4264
|
-
!n && !l && /* @__PURE__ */ t(
|
4264
|
+
!n && !l && /* @__PURE__ */ t(je, {})
|
4265
4265
|
] }),
|
4266
4266
|
/* @__PURE__ */ t(
|
4267
4267
|
Be,
|
@@ -4393,14 +4393,14 @@ class Qu {
|
|
4393
4393
|
this.api = new Ni(n, i), await this.loadCopy();
|
4394
4394
|
};
|
4395
4395
|
loadCopy = async () => {
|
4396
|
-
await this.getCopy(this.featureNamespace),
|
4396
|
+
await this.getCopy(this.featureNamespace), ee(() => {
|
4397
4397
|
this.isInitialized = !0;
|
4398
4398
|
});
|
4399
4399
|
};
|
4400
4400
|
getCopy = async (n, i = "") => {
|
4401
4401
|
try {
|
4402
4402
|
const a = await this.api.getGlobalCopy(n, i);
|
4403
|
-
|
4403
|
+
ee(() => {
|
4404
4404
|
this.copy = a[n];
|
4405
4405
|
});
|
4406
4406
|
} catch (a) {
|
@@ -4439,7 +4439,7 @@ class Ju {
|
|
4439
4439
|
}
|
4440
4440
|
loadSurvey = (n = !1) => {
|
4441
4441
|
Ud.getActiveMatchingSurveys((i) => {
|
4442
|
-
|
4442
|
+
ee(() => {
|
4443
4443
|
if (i.length > 0) {
|
4444
4444
|
const a = i.find((o) => o.id === this.surveyId);
|
4445
4445
|
a && (this.survey = a, this.currentQuestionIndex = 0, this.question = a.questions[0], this.response = null, this.responses = {});
|
@@ -4515,7 +4515,7 @@ class nh {
|
|
4515
4515
|
loadBeats = async () => {
|
4516
4516
|
this.isLoading = !0;
|
4517
4517
|
const n = await this.api.getBeats(), a = (await this.api.getOffers()).map((o) => th(o));
|
4518
|
-
|
4518
|
+
ee(() => {
|
4519
4519
|
this.beats = eh(n, a, "active_at", "desc"), this.isLoading = !1;
|
4520
4520
|
});
|
4521
4521
|
};
|
@@ -4616,7 +4616,7 @@ class oh {
|
|
4616
4616
|
api = new Or("/", "");
|
4617
4617
|
globalStore;
|
4618
4618
|
alert = "";
|
4619
|
-
dateRange = { start:
|
4619
|
+
dateRange = { start: Ve(Ae()), end: Ye(Ae()) };
|
4620
4620
|
budgets = [];
|
4621
4621
|
selectedBudget;
|
4622
4622
|
selectedSubBudget;
|
@@ -4674,7 +4674,7 @@ class oh {
|
|
4674
4674
|
addBudget = async (n, i, a = null) => {
|
4675
4675
|
try {
|
4676
4676
|
const o = await this.api.addBudget(n, i, a);
|
4677
|
-
|
4677
|
+
ee(() => {
|
4678
4678
|
this.budgets.push(o);
|
4679
4679
|
});
|
4680
4680
|
} catch (o) {
|
@@ -4683,7 +4683,7 @@ class oh {
|
|
4683
4683
|
};
|
4684
4684
|
deleteBudget = async (n) => {
|
4685
4685
|
try {
|
4686
|
-
await this.api.deleteBudget(n),
|
4686
|
+
await this.api.deleteBudget(n), ee(() => {
|
4687
4687
|
const i = this.budgets.findIndex((a) => a.guid === n);
|
4688
4688
|
i >= 0 && this.budgets.splice(i, 1);
|
4689
4689
|
});
|
@@ -4694,7 +4694,7 @@ class oh {
|
|
4694
4694
|
loadBudgets = async () => {
|
4695
4695
|
try {
|
4696
4696
|
const n = await this.api.getBudgets();
|
4697
|
-
|
4697
|
+
ee(() => {
|
4698
4698
|
this.budgets = n, this.isDataLoaded = !0;
|
4699
4699
|
});
|
4700
4700
|
} catch (n) {
|
@@ -4732,7 +4732,7 @@ class oh {
|
|
4732
4732
|
updateBudget = async (n) => {
|
4733
4733
|
try {
|
4734
4734
|
const i = await this.api.updateBudget(n);
|
4735
|
-
|
4735
|
+
ee(() => {
|
4736
4736
|
const a = this.budgets.findIndex((o) => o.guid === n.guid);
|
4737
4737
|
a >= 0 && (this.budgets[a] = i);
|
4738
4738
|
});
|
@@ -4760,7 +4760,7 @@ const Si = () => {
|
|
4760
4760
|
}
|
4761
4761
|
),
|
4762
4762
|
/* @__PURE__ */ t(C, { bold: !0, sx: { flexGrow: 1, fontSize: 12 }, children: n.remaining_cash }),
|
4763
|
-
/* @__PURE__ */ t(
|
4763
|
+
/* @__PURE__ */ t(Ze, { amount: e, bold: !0, sx: { fontSize: 12 } })
|
4764
4764
|
] });
|
4765
4765
|
}, Mo = x(rh), sh = ({ onAddIncomeClick: e }) => {
|
4766
4766
|
const n = Te(), { availableWidth: i } = $n(), { isMobile: a } = Ce(), { visibleCashAccounts: o, visibleCashBalance: r } = Se(), { selectedAccountGuids: s } = re(), { cashflow: c } = A(), { userProfile: l } = ft(), {
|
@@ -4798,7 +4798,7 @@ const Si = () => {
|
|
4798
4798
|
px: 24,
|
4799
4799
|
children: [
|
4800
4800
|
/* @__PURE__ */ d(b, { pb: 14, pt: 12, children: [
|
4801
|
-
/* @__PURE__ */ t(
|
4801
|
+
/* @__PURE__ */ t(Ze, { amount: I, variant: "H2" }),
|
4802
4802
|
/* @__PURE__ */ t(X, { variant: "XSmall", whiteSpace: "nowrap", children: T(
|
4803
4803
|
c.total_cash_accounts,
|
4804
4804
|
h.length
|
@@ -4806,12 +4806,12 @@ const Si = () => {
|
|
4806
4806
|
] }),
|
4807
4807
|
/* @__PURE__ */ t(b, { pt: 18, children: /* @__PURE__ */ t(V, { name: "remove" }) }),
|
4808
4808
|
/* @__PURE__ */ d(b, { pb: 14, pt: 12, children: [
|
4809
|
-
/* @__PURE__ */ t(
|
4809
|
+
/* @__PURE__ */ t(Ze, { amount: w, variant: "H2" }),
|
4810
4810
|
/* @__PURE__ */ t(X, { variant: "XSmall", whiteSpace: "nowrap", children: T(c.expenses_due, _.length) })
|
4811
4811
|
] }),
|
4812
4812
|
/* @__PURE__ */ t(b, { pt: 18, children: /* @__PURE__ */ t(V, { name: "equal" }) }),
|
4813
4813
|
/* @__PURE__ */ d(b, { pb: 14, pr: 24, pt: 12, children: [
|
4814
|
-
/* @__PURE__ */ t(
|
4814
|
+
/* @__PURE__ */ t(Ze, { amount: v, variant: "H2" }),
|
4815
4815
|
/* @__PURE__ */ d(b, { alignItems: "center", direction: "row", gap: 8, children: [
|
4816
4816
|
/* @__PURE__ */ t(X, { variant: "XSmall", whiteSpace: "nowrap", children: c.available_to_spend }),
|
4817
4817
|
/* @__PURE__ */ t(Oo, { body: c.tooltip_body, title: c.tooltip_title })
|
@@ -4837,12 +4837,12 @@ const Si = () => {
|
|
4837
4837
|
c.total_cash_accounts,
|
4838
4838
|
h.length
|
4839
4839
|
) }),
|
4840
|
-
/* @__PURE__ */ t(
|
4840
|
+
/* @__PURE__ */ t(Ze, { amount: r, bold: !0, variant: "XSmall" })
|
4841
4841
|
] }),
|
4842
4842
|
/* @__PURE__ */ t(P, {}),
|
4843
4843
|
/* @__PURE__ */ d(b, { direction: "row", justifyContent: "space-between", p: 16, children: [
|
4844
4844
|
/* @__PURE__ */ t(C, { variant: "Small", children: T(c.expenses_due, _.length) }),
|
4845
|
-
/* @__PURE__ */ t(
|
4845
|
+
/* @__PURE__ */ t(Ze, { amount: w, bold: !0, symbol: "-", variant: "XSmall" })
|
4846
4846
|
] }),
|
4847
4847
|
/* @__PURE__ */ t(P, {}),
|
4848
4848
|
/* @__PURE__ */ t(
|
@@ -4959,7 +4959,7 @@ const Si = () => {
|
|
4959
4959
|
const u = e.transactions.find(
|
4960
4960
|
(_) => _.repeating_transaction_guid === e.guid && _.date > We(Ot(l.expectedDate, 5)) && _.date < We(Fn(l.expectedDate, 5))
|
4961
4961
|
);
|
4962
|
-
u ? (l.transaction = u, l.status = et.Paid, l.occurredOnDate =
|
4962
|
+
u ? (l.transaction = u, l.status = et.Paid, l.occurredOnDate = Ke(u.date)) : ot(l.expectedDate, Ot(Ae(), 3)) && (l.status = et.Missed);
|
4963
4963
|
}
|
4964
4964
|
return i;
|
4965
4965
|
}, uh = (e, n, i) => {
|
@@ -5040,7 +5040,7 @@ const Si = () => {
|
|
5040
5040
|
recurrences: [i]
|
5041
5041
|
}), n;
|
5042
5042
|
}, []), sa = (e, n, i) => {
|
5043
|
-
const a = ea(
|
5043
|
+
const a = ea(Ae(), n.recurrence_day), o = ic(Ae(), n.recurrence_day), r = Mi(n.recurrence_day), s = n.second_recurrence_day ? Mi(n.second_recurrence_day) : "";
|
5044
5044
|
let c = i ? T(e.monthly_ordinal, r) : e.monthly;
|
5045
5045
|
switch (n.recurrence_type) {
|
5046
5046
|
case Ee.EveryQuarter:
|
@@ -5560,7 +5560,7 @@ const Dc = (e, n) => {
|
|
5560
5560
|
const i = Nh(Dh(e, n)), a = encodeURIComponent(i), o = document.createElement("a");
|
5561
5561
|
o.href = `data:attachment/csv;charset=utf-8,${a}`, o.download = "transactions.csv", document.body.appendChild(o), o.click(), document.body.removeChild(o);
|
5562
5562
|
}, Dh = (e, n) => e.map((i) => ({
|
5563
|
-
Date: de(
|
5563
|
+
Date: de(Ke(i.date), ie.YEAR_MONTH_DAY),
|
5564
5564
|
Description: Rh(i),
|
5565
5565
|
"Original Description": i.feed_description,
|
5566
5566
|
Amount: `${i.amount}`,
|
@@ -5587,7 +5587,7 @@ const Dc = (e, n) => {
|
|
5587
5587
|
}, kh = (e, n, i) => {
|
5588
5588
|
const {
|
5589
5589
|
accounts: a = [],
|
5590
|
-
dateRange: o = { start:
|
5590
|
+
dateRange: o = { start: Ve(Ae()), end: pn() },
|
5591
5591
|
custom: r = () => !0,
|
5592
5592
|
searchTerm: s = "",
|
5593
5593
|
showSplits: c = !1
|
@@ -5599,7 +5599,7 @@ const Dc = (e, n) => {
|
|
5599
5599
|
return !0;
|
5600
5600
|
const _ = l.tags.some(
|
5601
5601
|
(m) => Kt(s, n.find((p) => p.guid === m)?.name)
|
5602
|
-
), h =
|
5602
|
+
), h = Ke(l.date);
|
5603
5603
|
return Kt(s, l.payee) || Kt(s, l.feed_description) || Kt(s, l.category) || Kt(s, de(h, ie.MONTH)) || Kt(s, de(h, ie.DAY)) || Kt(s, de(h, ie.FULL_MONTH_DAY)) || Kt(s, de(h, ie.MONTH_DAY_YEAR)) || Kt(s, Ln(h, B_)) || Kt(s, l.account) || Kt(s, `${l.amount}`) || Kt(s, l.memo) || _;
|
5604
5604
|
});
|
5605
5605
|
}, Gh = (e, n, i) => [...e].sort((a, o) => {
|
@@ -5641,8 +5641,8 @@ const Nc = {
|
|
5641
5641
|
tags: []
|
5642
5642
|
};
|
5643
5643
|
let Wh = class {
|
5644
|
-
beginDate =
|
5645
|
-
endDate =
|
5644
|
+
beginDate = Ve(/* @__PURE__ */ new Date());
|
5645
|
+
endDate = Ye(/* @__PURE__ */ new Date());
|
5646
5646
|
expandedSplits = [];
|
5647
5647
|
isInitialized = !1;
|
5648
5648
|
height = 550;
|
@@ -5687,7 +5687,7 @@ class $h {
|
|
5687
5687
|
api = new ca("/", "");
|
5688
5688
|
beatApi = new li("/", "");
|
5689
5689
|
associatedBeats = [];
|
5690
|
-
cachedStartDate = Ot(
|
5690
|
+
cachedStartDate = Ot(Ae(), 90);
|
5691
5691
|
filter = {};
|
5692
5692
|
isLoading = !0;
|
5693
5693
|
rawTransactions = [];
|
@@ -5706,13 +5706,13 @@ class $h {
|
|
5706
5706
|
transactions: a
|
5707
5707
|
} = {}) => {
|
5708
5708
|
await Promise.all([
|
5709
|
-
this.loadAssociatedBeats(
|
5709
|
+
this.loadAssociatedBeats(Ve(/* @__PURE__ */ new Date()), n),
|
5710
5710
|
this.loadTags(),
|
5711
5711
|
this.loadTaggings(),
|
5712
5712
|
this.loadTransactionRules(i),
|
5713
5713
|
// By default loads 90 days of transactions
|
5714
5714
|
this.loadTransactions(this.cachedStartDate, pn(), a)
|
5715
|
-
]),
|
5715
|
+
]), ee(() => {
|
5716
5716
|
this.uiStore.setIsInitialized(!0);
|
5717
5717
|
});
|
5718
5718
|
};
|
@@ -5757,7 +5757,7 @@ class $h {
|
|
5757
5757
|
};
|
5758
5758
|
addTransaction = async (n) => {
|
5759
5759
|
const i = await this.api.addTransaction(n);
|
5760
|
-
i &&
|
5760
|
+
i && ee(() => this.rawTransactions = [i, ...this.transactions]);
|
5761
5761
|
};
|
5762
5762
|
augmentTransactions = (n) => xh(
|
5763
5763
|
n,
|
@@ -5768,25 +5768,25 @@ class $h {
|
|
5768
5768
|
getTransactionData = () => ({});
|
5769
5769
|
loadAssociatedBeats = async (n, i) => {
|
5770
5770
|
const a = n ? fa(n, { representation: "date" }) : void 0, o = i ?? await this.beatApi.getBeatsWithAssociatedTransaction(a);
|
5771
|
-
|
5771
|
+
ee(() => this.associatedBeats = o);
|
5772
5772
|
};
|
5773
5773
|
loadTags = async () => {
|
5774
5774
|
const n = await this.api.getTags();
|
5775
|
-
|
5775
|
+
ee(() => this.tags = n);
|
5776
5776
|
};
|
5777
5777
|
loadTaggings = async () => {
|
5778
5778
|
const n = await this.api.getTaggings();
|
5779
|
-
|
5779
|
+
ee(() => this.taggings = n);
|
5780
5780
|
};
|
5781
5781
|
loadTransactionRules = async (n) => {
|
5782
5782
|
const i = n ?? await this.api.getTransactionRules();
|
5783
|
-
|
5783
|
+
ee(() => this.transactionRules = i);
|
5784
5784
|
};
|
5785
5785
|
loadTransactions = async (n = this.cachedStartDate, i = pn(), a) => {
|
5786
5786
|
this.setIsLoading(!0), this.rawTransactions = [];
|
5787
5787
|
try {
|
5788
5788
|
const o = a ?? await this.api.getTransactionsByDateRange(We(n), We(i));
|
5789
|
-
|
5789
|
+
ee(() => {
|
5790
5790
|
this.rawTransactions = o;
|
5791
5791
|
});
|
5792
5792
|
} catch (o) {
|
@@ -5798,7 +5798,7 @@ class $h {
|
|
5798
5798
|
loadTransactionsByDateRange = async (n, i) => {
|
5799
5799
|
console.warn("DEPRECATED: loadTransactionsByDateRange will be removed"), this.setFilter({
|
5800
5800
|
...this.filter,
|
5801
|
-
dateRange: { start:
|
5801
|
+
dateRange: { start: Ke(i), end: Ke(n) }
|
5802
5802
|
});
|
5803
5803
|
};
|
5804
5804
|
modifyTransactionByAccountGuid = (n, i) => {
|
@@ -5817,7 +5817,7 @@ class $h {
|
|
5817
5817
|
const i = this.transactions.findIndex((a) => a.guid === n);
|
5818
5818
|
if (i >= 0) {
|
5819
5819
|
const a = [...this.transactions];
|
5820
|
-
a.splice(i, 1),
|
5820
|
+
a.splice(i, 1), ee(() => this.rawTransactions = a);
|
5821
5821
|
}
|
5822
5822
|
};
|
5823
5823
|
setFilter = (n) => {
|
@@ -5836,7 +5836,7 @@ class $h {
|
|
5836
5836
|
o.push(c);
|
5837
5837
|
}
|
5838
5838
|
const r = this.transactions.findIndex((s) => s.guid === n.guid);
|
5839
|
-
r >= 0 &&
|
5839
|
+
r >= 0 && ee(
|
5840
5840
|
() => this.rawTransactions = [
|
5841
5841
|
...this.transactions.slice(0, r),
|
5842
5842
|
a,
|
@@ -5854,7 +5854,7 @@ class $h {
|
|
5854
5854
|
c >= 0 && a.splice(c, 1);
|
5855
5855
|
});
|
5856
5856
|
const o = a.findIndex((s) => s.guid === n), r = a[o];
|
5857
|
-
r.has_been_split = !1, o >= 0 &&
|
5857
|
+
r.has_been_split = !1, o >= 0 && ee(
|
5858
5858
|
() => this.rawTransactions = [
|
5859
5859
|
...a.slice(0, o),
|
5860
5860
|
r,
|
@@ -5875,7 +5875,7 @@ class $h {
|
|
5875
5875
|
};
|
5876
5876
|
updateTransaction = async (n) => {
|
5877
5877
|
const i = await this.api.updateTransaction(n), a = this.transactions.findIndex((o) => o.guid === n.guid);
|
5878
|
-
a >= 0 &&
|
5878
|
+
a >= 0 && ee(
|
5879
5879
|
() => this.rawTransactions = [
|
5880
5880
|
...this.transactions.slice(0, a),
|
5881
5881
|
i,
|
@@ -5980,10 +5980,10 @@ const zh = ({ transaction: e, onClick: n }) => {
|
|
5980
5980
|
n && /* @__PURE__ */ t(C, { color: "secondary", variant: "XSmall", children: a.zero_state_there_are_no_transactions })
|
5981
5981
|
] });
|
5982
5982
|
}, jh = x(Yh), Br = (e, n) => {
|
5983
|
-
const i =
|
5983
|
+
const i = Ke(n[e].date), a = Ke(n[e - 1]?.date);
|
5984
5984
|
return !Dt(i, a);
|
5985
5985
|
}, Xh = (e, n) => {
|
5986
|
-
const i =
|
5986
|
+
const i = Ke(n[e].date), a = Ke(n[e + 1]?.date);
|
5987
5987
|
return Dt(i, a);
|
5988
5988
|
}, Hr = 65, Pr = 34, Zh = ({
|
5989
5989
|
bgcolor: e,
|
@@ -6078,8 +6078,8 @@ const zh = ({ transaction: e, onClick: n }) => {
|
|
6078
6078
|
]
|
6079
6079
|
}
|
6080
6080
|
);
|
6081
|
-
}, eg = x(Jh), tg = (e) => /* @__PURE__ */ t(C, { tabIndex: e.tabIndex, variant: "Small", children: de(
|
6082
|
-
const n =
|
6081
|
+
}, eg = x(Jh), tg = (e) => /* @__PURE__ */ t(C, { tabIndex: e.tabIndex, variant: "Small", children: de(Ke(e.row.date), ie.MONTH_DAY) }), ng = (e) => {
|
6082
|
+
const n = Xe(), { transactions: i } = A(), { is_flagged: a, is_hidden: o, has_been_viewed: r, parent_guid: s } = e.row, l = !r && !!!s;
|
6083
6083
|
return /* @__PURE__ */ d(
|
6084
6084
|
O,
|
6085
6085
|
{
|
@@ -6624,9 +6624,9 @@ const sg = ({
|
|
6624
6624
|
)
|
6625
6625
|
);
|
6626
6626
|
}, $r = (e) => {
|
6627
|
-
const n = [], i =
|
6627
|
+
const n = [], i = Ae();
|
6628
6628
|
for (let a = 0; a <= Fr; a++) {
|
6629
|
-
const o =
|
6629
|
+
const o = Ve(Ht(i, Fr - a)), s = e.filter(
|
6630
6630
|
(c) => c.year_month === Number(Ln(o, "yyyyMM"))
|
6631
6631
|
).reduce((c, l) => c + l.total, 0);
|
6632
6632
|
n.push({
|
@@ -6708,7 +6708,7 @@ class vg {
|
|
6708
6708
|
loadCategories = async (n) => {
|
6709
6709
|
try {
|
6710
6710
|
const i = n || await this.api.getCategories(), { default_categories: a } = this.globalStore.copyStore.copy.categories;
|
6711
|
-
|
6711
|
+
ee(() => {
|
6712
6712
|
this.categories = i.map((o) => ({
|
6713
6713
|
...o,
|
6714
6714
|
name: a[o.guid] ? a[o.guid].replace(/&/g, "&") : o.name
|
@@ -6726,7 +6726,7 @@ class vg {
|
|
6726
6726
|
We(a),
|
6727
6727
|
n
|
6728
6728
|
);
|
6729
|
-
|
6729
|
+
ee(() => {
|
6730
6730
|
this.dateRangeCategoryTotals = o, this.setIsLoadingCategoryTotals(!1), this.dataRangeTotalsLoaded = !0;
|
6731
6731
|
});
|
6732
6732
|
} catch (o) {
|
@@ -6734,10 +6734,10 @@ class vg {
|
|
6734
6734
|
}
|
6735
6735
|
};
|
6736
6736
|
loadMonthlyCategoryTotals = async (n = this.globalStore.globalUiStore.selectedAccounts, i, a) => {
|
6737
|
-
const o = We(
|
6737
|
+
const o = We(Ve(i ?? Ht(/* @__PURE__ */ new Date(), 11))), r = We(Ye(a ?? /* @__PURE__ */ new Date()));
|
6738
6738
|
try {
|
6739
6739
|
const s = await this.api.getMonthlyCategoryTotals(o, r, n);
|
6740
|
-
|
6740
|
+
ee(() => {
|
6741
6741
|
this.monthlyCategoryTotals = s, this.monthlyTotalsLoaded = !0;
|
6742
6742
|
});
|
6743
6743
|
} catch (s) {
|
@@ -6752,11 +6752,11 @@ class vg {
|
|
6752
6752
|
We(a),
|
6753
6753
|
n
|
6754
6754
|
), r = await this.api.getMonthlyCategoryTotals(
|
6755
|
-
We(
|
6756
|
-
We(
|
6755
|
+
We(Ve(Ht(a, 11))),
|
6756
|
+
We(Ye(a)),
|
6757
6757
|
n
|
6758
6758
|
);
|
6759
|
-
|
6759
|
+
ee(() => {
|
6760
6760
|
this.dateRangeCategoryTotals = o, this.monthlyCategoryTotals = r, this.dataRangeTotalsLoaded = !0, this.monthlyTotalsLoaded = !0, this.setIsLoadingCategoryTotals(!1);
|
6761
6761
|
});
|
6762
6762
|
} catch (o) {
|
@@ -6892,7 +6892,7 @@ const Lc = ({ transaction: e }) => {
|
|
6892
6892
|
{
|
6893
6893
|
primary: s.date_title,
|
6894
6894
|
primaryTypographyProps: { variant: "XSmall" },
|
6895
|
-
secondary: /* @__PURE__ */ t(C, { bold: !0, variant: "Body", children: de(
|
6895
|
+
secondary: /* @__PURE__ */ t(C, { bold: !0, variant: "Body", children: de(Ke(e.date), ie.YEAR_MONTH_DAY) })
|
6896
6896
|
}
|
6897
6897
|
),
|
6898
6898
|
/* @__PURE__ */ t(gt, { children: /* @__PURE__ */ t(V, { name: "chevron_right", weight: It.Dark }) })
|
@@ -6912,7 +6912,7 @@ const Lc = ({ transaction: e }) => {
|
|
6912
6912
|
children: /* @__PURE__ */ t(b, { alignItems: "center", mt: n.Spacing.XXLarge, children: /* @__PURE__ */ t(
|
6913
6913
|
xu,
|
6914
6914
|
{
|
6915
|
-
beginDate:
|
6915
|
+
beginDate: Ke(u),
|
6916
6916
|
copy: {
|
6917
6917
|
nextAria: s.date_next_aria,
|
6918
6918
|
prevAria: s.date_prev_aria,
|
@@ -7348,11 +7348,11 @@ const Lc = ({ transaction: e }) => {
|
|
7348
7348
|
}, I = (G, L) => {
|
7349
7349
|
const W = [...f];
|
7350
7350
|
W[G].amount = L, W[0].amount = e.amount - W.reduce(
|
7351
|
-
(Y,
|
7351
|
+
(Y, J, he) => Y + (he !== 0 ? J.amount : 0),
|
7352
7352
|
0
|
7353
7353
|
), S(W);
|
7354
7354
|
}, w = (G, L) => {
|
7355
|
-
const W = [...f], Y = c.find((
|
7355
|
+
const W = [...f], Y = c.find((J) => J.guid === L);
|
7356
7356
|
Y && (W[G] = {
|
7357
7357
|
...W[G],
|
7358
7358
|
category_guid: L,
|
@@ -8016,13 +8016,13 @@ const Lc = ({ transaction: e }) => {
|
|
8016
8016
|
} = ke(), {
|
8017
8017
|
manualTransaction: W,
|
8018
8018
|
isAmountValid: Y,
|
8019
|
-
searchValue:
|
8020
|
-
setSearchValue:
|
8019
|
+
searchValue: J,
|
8020
|
+
setSearchValue: he,
|
8021
8021
|
setShowInsights: _e,
|
8022
8022
|
updateManualTransaction: Le
|
8023
|
-
} = wt(), { userProfile: Re } = ft(), [
|
8023
|
+
} = wt(), { userProfile: Re } = ft(), [ue, me] = g.useState(""), [Qe, $] = g.useState(""), [pe, be] = g.useState(!1), [fe, we] = g.useState(!1), [Ge, St] = g.useState(!1);
|
8024
8024
|
g.useEffect(() => {
|
8025
|
-
const ht = o.filter((ai) => !ai.is_hidden), or =
|
8025
|
+
const ht = o.filter((ai) => !ai.is_hidden), or = Ve(Ae()), rr = Ye(Ae());
|
8026
8026
|
y(ht), S(or, rr), R({
|
8027
8027
|
accounts: ht.map((ai) => ai.guid),
|
8028
8028
|
custom: (ai) => !ai.accountIsClosed && !ai.accountIsHidden,
|
@@ -8040,10 +8040,10 @@ const Lc = ({ transaction: e }) => {
|
|
8040
8040
|
const Wt = g.useMemo(
|
8041
8041
|
() => o.filter((ht) => ht.is_manual),
|
8042
8042
|
[o]
|
8043
|
-
), K =
|
8043
|
+
), K = Qe ? G.find((ht) => ht.guid === Qe) : void 0, He = Y && !!W.payee && !!W.account_guid && !!W.category_guid, st = (ht) => {
|
8044
8044
|
S(ht[0], ht[1]);
|
8045
8045
|
}, En = (ht) => {
|
8046
|
-
|
8046
|
+
he(ht), R({
|
8047
8047
|
...v,
|
8048
8048
|
searchTerm: ht
|
8049
8049
|
}), l(F.TRANSACTIONS_CLICK_SEARCH, { search_term: ht });
|
@@ -8052,7 +8052,7 @@ const Lc = ({ transaction: e }) => {
|
|
8052
8052
|
}, Ma = () => {
|
8053
8053
|
Wt.length > 0 ? (Le({
|
8054
8054
|
...Nc,
|
8055
|
-
date: We(
|
8055
|
+
date: We(Ae()),
|
8056
8056
|
user_guid: Re?.user_guid || ""
|
8057
8057
|
}), me(
|
8058
8058
|
"addTransaction"
|
@@ -8061,9 +8061,9 @@ const Lc = ({ transaction: e }) => {
|
|
8061
8061
|
}, Ai = async () => {
|
8062
8062
|
He && await w(W), me("");
|
8063
8063
|
}, ka = () => {
|
8064
|
-
be(!1),
|
8064
|
+
be(!1), we(!0);
|
8065
8065
|
}, Ga = async () => {
|
8066
|
-
|
8066
|
+
we(!1), await r();
|
8067
8067
|
}, Wl = async () => {
|
8068
8068
|
K && !K.has_been_viewed && await L({ ...K, has_been_viewed: !0 }), me("");
|
8069
8069
|
};
|
@@ -8096,7 +8096,7 @@ const Lc = ({ transaction: e }) => {
|
|
8096
8096
|
{
|
8097
8097
|
onChange: En,
|
8098
8098
|
placeholder: _.action_bar_search_placeholder,
|
8099
|
-
searchValue:
|
8099
|
+
searchValue: J
|
8100
8100
|
}
|
8101
8101
|
) }),
|
8102
8102
|
/* @__PURE__ */ t(
|
@@ -8153,13 +8153,13 @@ const Lc = ({ transaction: e }) => {
|
|
8153
8153
|
se,
|
8154
8154
|
{
|
8155
8155
|
ariaLabelClose: u.close_aria,
|
8156
|
-
isOpen:
|
8156
|
+
isOpen: ue === "transaction" && !!K,
|
8157
8157
|
onClose: Wl,
|
8158
8158
|
title: _.details_title,
|
8159
8159
|
children: K && /* @__PURE__ */ t(Ei, { transaction: K })
|
8160
8160
|
}
|
8161
8161
|
),
|
8162
|
-
K &&
|
8162
|
+
K && ue === "category" && /* @__PURE__ */ t(
|
8163
8163
|
sm,
|
8164
8164
|
{
|
8165
8165
|
onClose: () => {
|
@@ -8172,7 +8172,7 @@ const Lc = ({ transaction: e }) => {
|
|
8172
8172
|
se,
|
8173
8173
|
{
|
8174
8174
|
ariaLabelClose: u.close_aria,
|
8175
|
-
isOpen:
|
8175
|
+
isOpen: ue === "addTransaction",
|
8176
8176
|
isPrimaryDisabled: !He,
|
8177
8177
|
onClose: () => me(""),
|
8178
8178
|
onPrimaryAction: Ai,
|
@@ -8235,7 +8235,7 @@ const Lc = ({ transaction: e }) => {
|
|
8235
8235
|
label: Mi(y + 1)
|
8236
8236
|
}));
|
8237
8237
|
u[30].label += ` (${s.last_day_of_month})`;
|
8238
|
-
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, f = ic(
|
8238
|
+
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, f = ic(Ae(), n), S = (y) => {
|
8239
8239
|
y && o(r_(y));
|
8240
8240
|
};
|
8241
8241
|
return /* @__PURE__ */ d(b, { gap: 24, sx: { m: 24 }, children: [
|
@@ -8334,7 +8334,7 @@ const Lc = ({ transaction: e }) => {
|
|
8334
8334
|
g.useEffect(() => {
|
8335
8335
|
s({
|
8336
8336
|
accounts: a,
|
8337
|
-
dateRange: { start: Ot(
|
8337
|
+
dateRange: { start: Ot(Ae(), 90), end: Ye(Ae()) },
|
8338
8338
|
custom: (w) => w.repeating_transaction_guid === n.guid
|
8339
8339
|
});
|
8340
8340
|
}, [n]);
|
@@ -8593,7 +8593,7 @@ const Lc = ({ transaction: e }) => {
|
|
8593
8593
|
return;
|
8594
8594
|
}
|
8595
8595
|
i();
|
8596
|
-
const M = no(p,
|
8596
|
+
const M = no(p, Ke(w.date)), k = {
|
8597
8597
|
account_guid: w.account_guid,
|
8598
8598
|
amount: w.amount,
|
8599
8599
|
created_by: 0,
|
@@ -8823,13 +8823,13 @@ const Lc = ({ transaction: e }) => {
|
|
8823
8823
|
fr(/* @__PURE__ */ new Date()) * xi + Vr
|
8824
8824
|
), s = (l) => {
|
8825
8825
|
r(fr(l) * xi + Vr), a({
|
8826
|
-
start:
|
8827
|
-
end:
|
8826
|
+
start: Ve(l),
|
8827
|
+
end: Ye(l)
|
8828
8828
|
}), n(F.RECURRING_TRANSACTIONS_CLICK_CALENDAR_RIGHT);
|
8829
8829
|
}, c = /* @__PURE__ */ t(
|
8830
8830
|
bo,
|
8831
8831
|
{
|
8832
|
-
minDate:
|
8832
|
+
minDate: Ve(/* @__PURE__ */ new Date()),
|
8833
8833
|
onMonthChange: s,
|
8834
8834
|
showDaysOutsideCurrentMonth: !0,
|
8835
8835
|
slots: {
|
@@ -9117,20 +9117,20 @@ const Lc = ({ transaction: e }) => {
|
|
9117
9117
|
}, G = () => {
|
9118
9118
|
const W = rn(s.start, 1);
|
9119
9119
|
S({
|
9120
|
-
start:
|
9121
|
-
end:
|
9120
|
+
start: Ve(W),
|
9121
|
+
end: Ye(W)
|
9122
9122
|
});
|
9123
9123
|
}, L = () => {
|
9124
9124
|
const W = Ht(s.start, 1);
|
9125
9125
|
S({
|
9126
|
-
start:
|
9127
|
-
end:
|
9126
|
+
start: Ve(W),
|
9127
|
+
end: Ye(W)
|
9128
9128
|
});
|
9129
9129
|
};
|
9130
9130
|
return /* @__PURE__ */ d(vn, { container: !0, sx: { pt: 16, px: 24, spacing: 24 }, children: [
|
9131
9131
|
/* @__PURE__ */ t(vn, { md: !0, sm: 12, width: "100%", children: /* @__PURE__ */ d(b, { sx: { gap: 16 }, children: [
|
9132
9132
|
/* @__PURE__ */ d(b, { alignItems: "center", direction: "row", justifyContent: "space-between", children: [
|
9133
|
-
/* @__PURE__ */ t(
|
9133
|
+
/* @__PURE__ */ t(qe, { sx: { px: 24 }, children: T(
|
9134
9134
|
e.header_title,
|
9135
9135
|
de(s.start, ie.MONTH_LONG)
|
9136
9136
|
) }),
|
@@ -9144,7 +9144,7 @@ const Lc = ({ transaction: e }) => {
|
|
9144
9144
|
children: /* @__PURE__ */ t(Ws, {})
|
9145
9145
|
}
|
9146
9146
|
),
|
9147
|
-
/* @__PURE__ */ t($e, { color: "primary", onClick: G, children: /* @__PURE__ */ t(
|
9147
|
+
/* @__PURE__ */ t($e, { color: "primary", onClick: G, children: /* @__PURE__ */ t(je, {}) })
|
9148
9148
|
] })
|
9149
9149
|
] }),
|
9150
9150
|
/* @__PURE__ */ t(
|
@@ -9229,9 +9229,9 @@ const Lc = ({ transaction: e }) => {
|
|
9229
9229
|
c(i);
|
9230
9230
|
}, [i]), g.useEffect(() => {
|
9231
9231
|
r && (h({
|
9232
|
-
dateRange: { start: Ot(
|
9232
|
+
dateRange: { start: Ot(Ae(), 90), end: pn() },
|
9233
9233
|
accounts: s
|
9234
|
-
}), _({ start:
|
9234
|
+
}), _({ start: Ve(/* @__PURE__ */ new Date()), end: Ye(/* @__PURE__ */ new Date()) }), u().finally());
|
9235
9235
|
}, [r]), o ? /* @__PURE__ */ d(
|
9236
9236
|
Ct,
|
9237
9237
|
{
|
@@ -9295,7 +9295,7 @@ const Lc = ({ transaction: e }) => {
|
|
9295
9295
|
l && u(i);
|
9296
9296
|
}, [l]), g.useEffect(() => {
|
9297
9297
|
_.length > 0 && (o({
|
9298
|
-
dateRange: { start: Ot(
|
9298
|
+
dateRange: { start: Ot(Ae(), 90), end: pn() },
|
9299
9299
|
accounts: _
|
9300
9300
|
}), s().finally());
|
9301
9301
|
}, [_]), !c || !l ? /* @__PURE__ */ t(ce, {}) : /* @__PURE__ */ t(
|
@@ -9406,22 +9406,22 @@ const Lc = ({ transaction: e }) => {
|
|
9406
9406
|
h(r);
|
9407
9407
|
}, [r]), g.useEffect(() => {
|
9408
9408
|
u && (N({
|
9409
|
-
dateRange: { start: Ot(
|
9409
|
+
dateRange: { start: Ot(Ae(), 90), end: pn() },
|
9410
9410
|
accounts: _
|
9411
|
-
}), I({ start:
|
9411
|
+
}), I({ start: Ve(/* @__PURE__ */ new Date()), end: Ye(/* @__PURE__ */ new Date()) }), m().finally(), i(!0));
|
9412
9412
|
}, [u]), g.useEffect(() => {
|
9413
9413
|
n && a(F.RECURRING_TRANSACTIONS_LOAD_WIDGET, {
|
9414
9414
|
state: p.length > 0 ? "default" : "zeroState"
|
9415
9415
|
});
|
9416
9416
|
}, [n]);
|
9417
9417
|
const k = c <= 288, G = c >= 450, L = g.useMemo(() => {
|
9418
|
-
const
|
9418
|
+
const ue = [
|
9419
9419
|
{ color: o.palette.success.main, percentage: `${y / f}` }
|
9420
9420
|
];
|
9421
|
-
return S &&
|
9421
|
+
return S && ue.push({
|
9422
9422
|
color: o.palette.error.main,
|
9423
9423
|
percentage: `${S / f}`
|
9424
|
-
}),
|
9424
|
+
}), ue;
|
9425
9425
|
}, [
|
9426
9426
|
y,
|
9427
9427
|
f,
|
@@ -9434,10 +9434,10 @@ const Lc = ({ transaction: e }) => {
|
|
9434
9434
|
), e();
|
9435
9435
|
};
|
9436
9436
|
if (!l || !n || !v) return /* @__PURE__ */ t(ce, { height: 100 });
|
9437
|
-
const
|
9437
|
+
const J = 32, he = p.length > 0, _e = () => he ? k ? /* @__PURE__ */ t(
|
9438
9438
|
bm,
|
9439
9439
|
{
|
9440
|
-
logoSize:
|
9440
|
+
logoSize: J,
|
9441
9441
|
maxLogos: 3,
|
9442
9442
|
upcomingRecurrences: p.slice(0, 3)
|
9443
9443
|
}
|
@@ -9524,14 +9524,14 @@ const Lc = ({ transaction: e }) => {
|
|
9524
9524
|
gap: 16,
|
9525
9525
|
mt: 4
|
9526
9526
|
},
|
9527
|
-
children: Le.map((
|
9527
|
+
children: Le.map((ue, me) => /* @__PURE__ */ t(
|
9528
9528
|
ym,
|
9529
9529
|
{
|
9530
|
-
amount:
|
9531
|
-
bgcolor:
|
9530
|
+
amount: ue.amount,
|
9531
|
+
bgcolor: ue.bgColor,
|
9532
9532
|
isLargeScreen: G,
|
9533
9533
|
isSmallScreen: k,
|
9534
|
-
label:
|
9534
|
+
label: ue.label
|
9535
9535
|
},
|
9536
9536
|
`recurrence-legend-${me}`
|
9537
9537
|
))
|
@@ -9563,7 +9563,7 @@ class Em {
|
|
9563
9563
|
transactions = [];
|
9564
9564
|
repeatingTransactions = [];
|
9565
9565
|
selectedDay;
|
9566
|
-
dateRange = { start:
|
9566
|
+
dateRange = { start: Ve(Ae()), end: Ye(Ae()) };
|
9567
9567
|
isDataLoaded = !1;
|
9568
9568
|
constructor(n) {
|
9569
9569
|
this.globalStore = n, this.api = new Yr(n.endpoint, n.sessionToken), Fe(this);
|
@@ -9589,7 +9589,7 @@ class Em {
|
|
9589
9589
|
*/
|
9590
9590
|
get upcomingRecurrences() {
|
9591
9591
|
return this.recurrences.filter(
|
9592
|
-
(n) => sn(n.expectedDate, Ot(
|
9592
|
+
(n) => sn(n.expectedDate, Ot(Ae(), 3)) && ot(n.expectedDate, this.dateRange.end) && n.status === et.Upcoming
|
9593
9593
|
);
|
9594
9594
|
}
|
9595
9595
|
/**
|
@@ -9625,7 +9625,7 @@ class Em {
|
|
9625
9625
|
);
|
9626
9626
|
}
|
9627
9627
|
get nextIncomeRecurrence() {
|
9628
|
-
return this.upcomingIncome.find((n) => sn(n.expectedDate,
|
9628
|
+
return this.upcomingIncome.find((n) => sn(n.expectedDate, Ae()));
|
9629
9629
|
}
|
9630
9630
|
/**
|
9631
9631
|
* Returns the expense recurrences for the current month.
|
@@ -9711,7 +9711,7 @@ class Em {
|
|
9711
9711
|
loadRepeatingTransactions = async () => {
|
9712
9712
|
try {
|
9713
9713
|
const n = await this.api.getRepeatingTransactions();
|
9714
|
-
|
9714
|
+
ee(() => {
|
9715
9715
|
this.repeatingTransactions = Fa(
|
9716
9716
|
this.globalStore.accountStore.visibleAccounts,
|
9717
9717
|
n,
|
@@ -9733,7 +9733,7 @@ class Em {
|
|
9733
9733
|
await this.globalStore.transactionStore.updateTransaction({
|
9734
9734
|
...i,
|
9735
9735
|
repeating_transaction_guid: a.guid
|
9736
|
-
}),
|
9736
|
+
}), ee(() => {
|
9737
9737
|
this.repeatingTransactions = [
|
9738
9738
|
...this.repeatingTransactions,
|
9739
9739
|
...Fa(
|
@@ -9753,7 +9753,7 @@ class Em {
|
|
9753
9753
|
*/
|
9754
9754
|
deleteRepeatingTransaction = async (n) => {
|
9755
9755
|
try {
|
9756
|
-
await this.api.deleteRepeatingTransaction(n),
|
9756
|
+
await this.api.deleteRepeatingTransaction(n), ee(() => {
|
9757
9757
|
this.repeatingTransactions = [
|
9758
9758
|
...this.repeatingTransactions.filter((i) => i.guid !== n)
|
9759
9759
|
];
|
@@ -9772,7 +9772,7 @@ class Em {
|
|
9772
9772
|
(o) => o.guid === i.guid
|
9773
9773
|
);
|
9774
9774
|
if (a < 0) return;
|
9775
|
-
|
9775
|
+
ee(() => {
|
9776
9776
|
this.repeatingTransactions = [
|
9777
9777
|
...this.repeatingTransactions.slice(0, a),
|
9778
9778
|
...Fa(
|
@@ -9906,7 +9906,7 @@ const Tm = {
|
|
9906
9906
|
H(e.minimum_payment, "0,0.00"),
|
9907
9907
|
de(c, ie.FULL_MONTH_DAY)
|
9908
9908
|
) });
|
9909
|
-
} else e.credit_limit && (o = n.available_credit, r = H(e.credit_limit, "0,0.00"));
|
9909
|
+
} else e.credit_limit && (o = n.available_credit, r = H(e.credit_limit - (e?.balance ?? 0), "0,0.00"));
|
9910
9910
|
}
|
9911
9911
|
return {
|
9912
9912
|
firstSubtitle: i,
|
@@ -10005,7 +10005,7 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10005
10005
|
] }),
|
10006
10006
|
/* @__PURE__ */ t(C, { sx: { flexGrow: 1, fontSize: 13 }, children: e.name }),
|
10007
10007
|
/* @__PURE__ */ t(
|
10008
|
-
|
10008
|
+
Ze,
|
10009
10009
|
{
|
10010
10010
|
amount: e.amount,
|
10011
10011
|
bold: !0,
|
@@ -10173,9 +10173,9 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10173
10173
|
}
|
10174
10174
|
], l = g.useMemo(() => s.map((u) => {
|
10175
10175
|
const _ = a.filter(
|
10176
|
-
da(u, { start:
|
10176
|
+
da(u, { start: Ae(), end: Fn(Ae(), 30) })
|
10177
10177
|
).reduce((p, f) => p + f.amount, 0), h = o.filter(
|
10178
|
-
da(u, { start:
|
10178
|
+
da(u, { start: Ae(), end: Fn(Ae(), 30) })
|
10179
10179
|
).reduce((p, f) => p + f.amount, 0), m = (u.balance || 0) + h - _;
|
10180
10180
|
return {
|
10181
10181
|
account: u,
|
@@ -10287,7 +10287,7 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10287
10287
|
),
|
10288
10288
|
/* @__PURE__ */ t(C, { variant: "Small", children: `${f} ${p ? `*${p}` : ""}` })
|
10289
10289
|
] }),
|
10290
|
-
/* @__PURE__ */ t(
|
10290
|
+
/* @__PURE__ */ t(Ze, { amount: u.balance, bold: !0, variant: "Small" })
|
10291
10291
|
]
|
10292
10292
|
}
|
10293
10293
|
),
|
@@ -10302,7 +10302,7 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10302
10302
|
py: 12,
|
10303
10303
|
children: [
|
10304
10304
|
/* @__PURE__ */ t(C, { variant: "Small", children: i.projected_income }),
|
10305
|
-
/* @__PURE__ */ t(
|
10305
|
+
/* @__PURE__ */ t(Ze, { amount: u.income, bold: !0, symbol: "+", variant: "Small" })
|
10306
10306
|
]
|
10307
10307
|
}
|
10308
10308
|
),
|
@@ -10317,7 +10317,7 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10317
10317
|
py: 12,
|
10318
10318
|
children: [
|
10319
10319
|
/* @__PURE__ */ t(C, { variant: "Small", children: i.projected_expenses }),
|
10320
|
-
/* @__PURE__ */ t(
|
10320
|
+
/* @__PURE__ */ t(Ze, { amount: u.expenses, bold: !0, symbol: "-", variant: "Small" })
|
10321
10321
|
]
|
10322
10322
|
}
|
10323
10323
|
),
|
@@ -10406,12 +10406,12 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10406
10406
|
padding: n ? "14px 16px" : 0,
|
10407
10407
|
sx: { borderBottomLeftRadius: 4, borderBottomRightRadius: 4 },
|
10408
10408
|
children: [
|
10409
|
-
!n && /* @__PURE__ */ t(
|
10409
|
+
!n && /* @__PURE__ */ t(Ze, { amount: e, component: "h2", variant: "H2" }),
|
10410
10410
|
/* @__PURE__ */ d(b, { alignItems: "center", component: "span", direction: "row", gap: 8, mt: 2, children: [
|
10411
10411
|
/* @__PURE__ */ t(C, { bold: i, variant: "Small", children: a }),
|
10412
10412
|
r
|
10413
10413
|
] }),
|
10414
|
-
n && /* @__PURE__ */ t(
|
10414
|
+
n && /* @__PURE__ */ t(Ze, { amount: e, component: "h2", symbol: o, variant: "Small" })
|
10415
10415
|
]
|
10416
10416
|
}
|
10417
10417
|
), qr = (e, n) => (i) => i.accountGuid && e.includes(i.accountGuid) && (So(i.expectedDate) || sn(i.expectedDate, n.start)) && ot(i.expectedDate, n.end), Fm = () => {
|
@@ -10595,28 +10595,28 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10595
10595
|
transform: rotate(360deg);
|
10596
10596
|
}
|
10597
10597
|
`, Ym = () => {
|
10598
|
-
const { addRepeatingTransaction: e, repeatingTransactions: n } = rt(), { cashflow: i, common: a } = A(), { completeOnboarding: o } = Do(), { isDirty: r } = Si(), { isMobile: s } = Ce(), { isCopyLoaded: c, setDisplayedDate: l } = re(), { filter: u, setFilter: _, transactions: h } = ke(), m = Te(), [p, f] = xt(!0), [S, y] = g.useState(Ee.EveryMonth), [E, I] = g.useState(1), [w, v] = g.useState(15), [N, R] = xt(!1), [M, k] = xt(1), [G, L] = xt([]), [W, Y] = xt(""),
|
10599
|
-
() => h.find((
|
10598
|
+
const { addRepeatingTransaction: e, repeatingTransactions: n } = rt(), { cashflow: i, common: a } = A(), { completeOnboarding: o } = Do(), { isDirty: r } = Si(), { isMobile: s } = Ce(), { isCopyLoaded: c, setDisplayedDate: l } = re(), { filter: u, setFilter: _, transactions: h } = ke(), m = Te(), [p, f] = xt(!0), [S, y] = g.useState(Ee.EveryMonth), [E, I] = g.useState(1), [w, v] = g.useState(15), [N, R] = xt(!1), [M, k] = xt(1), [G, L] = xt([]), [W, Y] = xt(""), J = g.useMemo(
|
10599
|
+
() => h.find((ue) => ue.guid === W),
|
10600
10600
|
[W, h]
|
10601
|
-
),
|
10602
|
-
(
|
10601
|
+
), he = !!n.filter(
|
10602
|
+
(ue) => ue.repeating_transaction_type === cn.Income
|
10603
10603
|
).length, _e = async () => {
|
10604
10604
|
k(2), l(
|
10605
10605
|
// Beginning of the month, 90 days before today
|
10606
|
-
|
10607
|
-
|
10606
|
+
Ve(Ot(Ae(), 90)),
|
10607
|
+
Ae()
|
10608
10608
|
), _({ ...u, custom: ki }), k(3);
|
10609
10609
|
}, Le = async () => {
|
10610
10610
|
if (!(G.length < 1)) {
|
10611
10611
|
R(!0);
|
10612
|
-
for (let
|
10613
|
-
const me = G[
|
10612
|
+
for (let ue = 0; ue < G.length; ue++) {
|
10613
|
+
const me = G[ue], Qe = no(S, Ke(me.date)), $ = {
|
10614
10614
|
account_guid: me.account_guid,
|
10615
10615
|
amount: me.amount,
|
10616
10616
|
merchant_guid: me.merchant_guid,
|
10617
10617
|
description: me.feed_description || me.description,
|
10618
|
-
predicted_occurs_on: fa(
|
10619
|
-
recurrence_day:
|
10618
|
+
predicted_occurs_on: fa(Qe, { representation: "date" }),
|
10619
|
+
recurrence_day: Qe.getDay(),
|
10620
10620
|
recurrence_type: S,
|
10621
10621
|
repeating_transaction_type: cn.Income,
|
10622
10622
|
transaction_type: me.transaction_type
|
@@ -10625,7 +10625,7 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10625
10625
|
}
|
10626
10626
|
await o();
|
10627
10627
|
}
|
10628
|
-
}, Re = !
|
10628
|
+
}, Re = !J && p || !J && G.length < 1;
|
10629
10629
|
return c ? /* @__PURE__ */ d(
|
10630
10630
|
O,
|
10631
10631
|
{
|
@@ -10667,14 +10667,14 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10667
10667
|
children: [
|
10668
10668
|
/* @__PURE__ */ t(Qt, { pb: 12, children: i.add_income_title }),
|
10669
10669
|
/* @__PURE__ */ t(X, { mb: 24, children: i.add_income_description }),
|
10670
|
-
G.length > 0 && !
|
10671
|
-
/* @__PURE__ */ t(ae, { children: G.map((
|
10670
|
+
G.length > 0 && !J && /* @__PURE__ */ d(Z, { children: [
|
10671
|
+
/* @__PURE__ */ t(ae, { children: G.map((ue, me) => /* @__PURE__ */ d(g.Fragment, { children: [
|
10672
10672
|
/* @__PURE__ */ t(Aa, { bgcolor: "background.paper", children: ya(
|
10673
|
-
We(
|
10673
|
+
We(ue.nextDate || ue.date)
|
10674
10674
|
) }),
|
10675
|
-
/* @__PURE__ */ t(Go, { transaction:
|
10675
|
+
/* @__PURE__ */ t(Go, { transaction: ue }),
|
10676
10676
|
me !== G.length - 1 && /* @__PURE__ */ t(P, {})
|
10677
|
-
] },
|
10677
|
+
] }, ue.guid)) }),
|
10678
10678
|
/* @__PURE__ */ d(b, { alignItems: "center", direction: "row", children: [
|
10679
10679
|
/* @__PURE__ */ t(P, { sx: { flexGrow: 1 } }),
|
10680
10680
|
/* @__PURE__ */ t(
|
@@ -10691,17 +10691,17 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10691
10691
|
Wc,
|
10692
10692
|
{
|
10693
10693
|
bgcolor: "background.paper",
|
10694
|
-
onSearch: (
|
10694
|
+
onSearch: (ue) => _({
|
10695
10695
|
...u,
|
10696
|
-
custom: (me) =>
|
10696
|
+
custom: (me) => ue ? Uc(me, ue) : ki(me)
|
10697
10697
|
}),
|
10698
|
-
onSelected: (
|
10699
|
-
Y(
|
10698
|
+
onSelected: (ue) => {
|
10699
|
+
Y(ue), f(!1);
|
10700
10700
|
}
|
10701
10701
|
}
|
10702
10702
|
),
|
10703
|
-
!
|
10704
|
-
|
10703
|
+
!he && r && /* @__PURE__ */ t(X, { color: "error", mt: 16, children: i.confirm_error }),
|
10704
|
+
J && /* @__PURE__ */ d(Z, { children: [
|
10705
10705
|
/* @__PURE__ */ t(
|
10706
10706
|
$c,
|
10707
10707
|
{
|
@@ -10712,21 +10712,21 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10712
10712
|
onFrequencyChange: y,
|
10713
10713
|
onSecondDayChange: v,
|
10714
10714
|
secondDay: w,
|
10715
|
-
transaction:
|
10715
|
+
transaction: J
|
10716
10716
|
}
|
10717
10717
|
),
|
10718
10718
|
/* @__PURE__ */ d(b, { direction: "row", gap: 16, ml: 24, mt: 32, children: [
|
10719
10719
|
/* @__PURE__ */ t(
|
10720
10720
|
te,
|
10721
10721
|
{
|
10722
|
-
"aria-disabled": !
|
10722
|
+
"aria-disabled": !J,
|
10723
10723
|
onClick: () => {
|
10724
|
-
const
|
10725
|
-
|
10726
|
-
...
|
10727
|
-
nextDate: no(S,
|
10724
|
+
const ue = [...G];
|
10725
|
+
ue.push({
|
10726
|
+
...J,
|
10727
|
+
nextDate: no(S, Ke(J.date)),
|
10728
10728
|
frequency: S
|
10729
|
-
}), L(
|
10729
|
+
}), L(ue), Y("");
|
10730
10730
|
},
|
10731
10731
|
variant: "contained",
|
10732
10732
|
children: a.confirm_button
|
@@ -10744,7 +10744,7 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10744
10744
|
)
|
10745
10745
|
] })
|
10746
10746
|
] }),
|
10747
|
-
G.length > 0 && !
|
10747
|
+
G.length > 0 && !J && /* @__PURE__ */ d(b, { direction: "row", gap: 16, ml: 24, mt: 32, children: [
|
10748
10748
|
/* @__PURE__ */ t(
|
10749
10749
|
te,
|
10750
10750
|
{
|
@@ -10788,7 +10788,7 @@ const Om = ({ recurrence: e }) => /* @__PURE__ */ d(Z, { children: [
|
|
10788
10788
|
(R) => a.includes(R.guid) && v.includes(R.guid)
|
10789
10789
|
);
|
10790
10790
|
m(N), u({
|
10791
|
-
dateRange: { start: Ot(
|
10791
|
+
dateRange: { start: Ot(Ae(), 90), end: pn() },
|
10792
10792
|
accounts: N.map((R) => R.guid)
|
10793
10793
|
});
|
10794
10794
|
}, [l, i]), !y || !E ? /* @__PURE__ */ t(ce, {}) : _?.has_completed_cash_flow_onboarding ? /* @__PURE__ */ d(
|
@@ -10864,7 +10864,7 @@ class b2 {
|
|
10864
10864
|
}
|
10865
10865
|
let Zm = class {
|
10866
10866
|
// Cashflow is hard-coded to display 30 days starting from today
|
10867
|
-
dateRange = { start:
|
10867
|
+
dateRange = { start: Ae(), end: Fn(Ae(), 30) };
|
10868
10868
|
isDirty = !1;
|
10869
10869
|
nextIncome = void 0;
|
10870
10870
|
upcomingExpenses = [];
|
@@ -10874,13 +10874,13 @@ let Zm = class {
|
|
10874
10874
|
}
|
10875
10875
|
// Returns the number of days until the next income activity or 0 if there is no income activity
|
10876
10876
|
get daysUntilNextIncome() {
|
10877
|
-
return this.nextIncome ? Math.abs(Vd(
|
10877
|
+
return this.nextIncome ? Math.abs(Vd(Ae(), this.nextIncome.expectedDate)) : 0;
|
10878
10878
|
}
|
10879
10879
|
// Returns the expenses (Activities) until the next income activity or the end of the month
|
10880
10880
|
// if there is no income activity
|
10881
10881
|
get expensesTilNextIncome() {
|
10882
10882
|
return this.upcomingExpenses.filter(
|
10883
|
-
(n) => ot(n.expectedDate, this.nextIncome?.expectedDate ||
|
10883
|
+
(n) => ot(n.expectedDate, this.nextIncome?.expectedDate || Ye(/* @__PURE__ */ new Date()))
|
10884
10884
|
);
|
10885
10885
|
}
|
10886
10886
|
setNextIncome = (n) => {
|
@@ -11381,7 +11381,7 @@ const Sn = () => {
|
|
11381
11381
|
return isNaN(i) ? 0 : i;
|
11382
11382
|
}, Ko = (e, n) => {
|
11383
11383
|
const i = [];
|
11384
|
-
let a =
|
11384
|
+
let a = Ve(n?.start ?? Ht(/* @__PURE__ */ new Date(), 5));
|
11385
11385
|
const o = n?.end ?? /* @__PURE__ */ new Date();
|
11386
11386
|
for (; ot(a, o); )
|
11387
11387
|
i.push({
|
@@ -11402,8 +11402,8 @@ const Sn = () => {
|
|
11402
11402
|
const n = [], i = e.filter(
|
11403
11403
|
(r) => r.top_level_category_guid !== D.INCOME && r.top_level_category_guid !== D.TRANSFER && r.total > 0
|
11404
11404
|
);
|
11405
|
-
let a =
|
11406
|
-
const o =
|
11405
|
+
let a = Ve(Ht(/* @__PURE__ */ new Date(), 5));
|
11406
|
+
const o = Ye(/* @__PURE__ */ new Date());
|
11407
11407
|
for (; ot(a, o); )
|
11408
11408
|
n.push({
|
11409
11409
|
x: de(a, ie.MONTH_SHORT),
|
@@ -11428,7 +11428,7 @@ const Sn = () => {
|
|
11428
11428
|
}
|
11429
11429
|
return c;
|
11430
11430
|
}, dp = () => {
|
11431
|
-
const e =
|
11431
|
+
const e = Xe(), { selectedAccount: n } = Vt(), { monthlyCategoryTotals: i } = Ue(), { trends: a } = A(), o = [e.palette.chart?.chart1, e.palette.chart?.chart2], r = cp(i, n.account_type), s = lp(r, n.account_type, a), c = [le.LOAN, le.MORTGAGE].includes(n.account_type);
|
11432
11432
|
return /* @__PURE__ */ t("div", { "data-testid": "TrendsChart", children: /* @__PURE__ */ t(
|
11433
11433
|
ni,
|
11434
11434
|
{
|
@@ -11462,7 +11462,7 @@ const Sn = () => {
|
|
11462
11462
|
_n,
|
11463
11463
|
{
|
11464
11464
|
sx: { pb: 0 },
|
11465
|
-
title: /* @__PURE__ */ t(
|
11465
|
+
title: /* @__PURE__ */ t(qe, { sx: { pb: 4 }, children: de(/* @__PURE__ */ new Date(), ie.MONTH_LONG) })
|
11466
11466
|
}
|
11467
11467
|
),
|
11468
11468
|
/* @__PURE__ */ t(Pt, { sx: { p: 0 }, children: /* @__PURE__ */ t(_p, {}) })
|
@@ -11520,7 +11520,7 @@ const qc = ({
|
|
11520
11520
|
onClickArea: r,
|
11521
11521
|
onHoverArea: s
|
11522
11522
|
}) => {
|
11523
|
-
const c =
|
11523
|
+
const c = Xe(), { onEvent: l } = q(), u = a.filter((v) => !v.is_impossible), _ = [
|
11524
11524
|
...new Set(
|
11525
11525
|
u.flatMap((v) => v.dataset.map((N) => new Date(N.x).getTime()))
|
11526
11526
|
)
|
@@ -11645,7 +11645,7 @@ const qc = ({
|
|
11645
11645
|
}
|
11646
11646
|
},
|
11647
11647
|
children: [
|
11648
|
-
/* @__PURE__ */ t(_n, { sx: { pb: 0 }, title: /* @__PURE__ */ t(
|
11648
|
+
/* @__PURE__ */ t(_n, { sx: { pb: 0 }, title: /* @__PURE__ */ t(qe, { sx: { pb: 4 }, children: n.details_chart_title }) }),
|
11649
11649
|
/* @__PURE__ */ t(Pt, { sx: { p: 0 }, children: /* @__PURE__ */ t(qc, { debts: [i], height: 250 }) })
|
11650
11650
|
]
|
11651
11651
|
}
|
@@ -12474,9 +12474,9 @@ const zt = (e) => /* @__PURE__ */ t(C, { fontWeight: 600, variant: "Small", chil
|
|
12474
12474
|
const L = (_e) => u(_e), W = () => {
|
12475
12475
|
const _e = v.find((Re) => Re.guid === l), Le = G.find((Re) => Re.guid === l);
|
12476
12476
|
_e && E(_e), Le && w(Le), a(!0);
|
12477
|
-
}, Y = () => p(F.DEBTS_CLICK_FILTER),
|
12477
|
+
}, Y = () => p(F.DEBTS_CLICK_FILTER), J = () => {
|
12478
12478
|
c(!0), p(F.DEBTS_CLICK_SNOWBALL_CTA);
|
12479
|
-
},
|
12479
|
+
}, he = () => {
|
12480
12480
|
r(!0), p(F.DEBTS_CLICK_PAYDOWN);
|
12481
12481
|
};
|
12482
12482
|
return !N || !f || !S ? /* @__PURE__ */ t(ce, {}) : /* @__PURE__ */ d(
|
@@ -12485,7 +12485,7 @@ const zt = (e) => /* @__PURE__ */ t(C, { fontWeight: 600, variant: "Small", chil
|
|
12485
12485
|
accountOptions: v,
|
12486
12486
|
actions: [
|
12487
12487
|
/* @__PURE__ */ t(Up, {}, "prioritize-debts"),
|
12488
|
-
/* @__PURE__ */ t(Kp, { onClick:
|
12488
|
+
/* @__PURE__ */ t(Kp, { onClick: he }, "extra-paydown")
|
12489
12489
|
],
|
12490
12490
|
onAccountsFilterClick: Y,
|
12491
12491
|
onBackClick: e,
|
@@ -12517,7 +12517,7 @@ const zt = (e) => /* @__PURE__ */ t(C, { fontWeight: 600, variant: "Small", chil
|
|
12517
12517
|
ep,
|
12518
12518
|
{
|
12519
12519
|
debts: G,
|
12520
|
-
onClickCta:
|
12520
|
+
onClickCta: J,
|
12521
12521
|
sx: { mb: h ? "0px" : "64px" }
|
12522
12522
|
}
|
12523
12523
|
)
|
@@ -12609,7 +12609,7 @@ const qp = ({ list: e, onClickItem: n }) => /* @__PURE__ */ t(O, { sx: { bgcolor
|
|
12609
12609
|
}
|
12610
12610
|
},
|
12611
12611
|
children: e.map((i, a) => /* @__PURE__ */ d(g.Fragment, { children: [
|
12612
|
-
/* @__PURE__ */ t(j, { secondaryAction: /* @__PURE__ */ t(
|
12612
|
+
/* @__PURE__ */ t(j, { secondaryAction: /* @__PURE__ */ t(je, {}), children: /* @__PURE__ */ d(ge, { onClick: () => n(i.key), children: [
|
12613
12613
|
/* @__PURE__ */ t(Pe, { children: /* @__PURE__ */ t(
|
12614
12614
|
Ft,
|
12615
12615
|
{
|
@@ -12742,7 +12742,7 @@ const qp = ({ list: e, onClickItem: n }) => /* @__PURE__ */ t(O, { sx: { bgcolor
|
|
12742
12742
|
unitsPerSegment: h,
|
12743
12743
|
isFinacialStrengthGraph: m
|
12744
12744
|
}) => {
|
12745
|
-
const p =
|
12745
|
+
const p = Xe(), f = [
|
12746
12746
|
{ offset: "13.62%", color: p.palette.chartMono.chartMono2 },
|
12747
12747
|
{ offset: "36.67%", color: p.palette.chartMono.chartMono3 },
|
12748
12748
|
{ offset: "59.72%", color: p.palette.chartMono.chartMono4 },
|
@@ -12796,7 +12796,7 @@ const qp = ({ list: e, onClickItem: n }) => /* @__PURE__ */ t(O, { sx: { bgcolor
|
|
12796
12796
|
footerRightContent: _,
|
12797
12797
|
isFinacialStrengthGraph: h = !1
|
12798
12798
|
}) => {
|
12799
|
-
const m =
|
12799
|
+
const m = Xe(), p = -Math.PI / 1.35, f = Math.PI / 1.35, S = f - p, y = S / (r - o), E = (n - o) * y, I = p + E + 0.02, w = i !== "SM" ? 0.1 : 0.12, v = e, N = e * (1 - w), R = v * 2.5, M = R / 2, k = R / 2, G = (N + v) / 2, L = n !== 25 && n !== 50 && n !== 75 && n !== 100 ? 0 : 0.12, [W, Y] = t1(G, I, L), J = n / 25, he = {
|
12800
12800
|
L: { markerSize: 12, healthScoreFontSize: 64 },
|
12801
12801
|
M: { markerSize: 10, healthScoreFontSize: 48 },
|
12802
12802
|
SM: { markerSize: 3, healthScoreFontSize: 14 }
|
@@ -12847,7 +12847,7 @@ const qp = ({ list: e, onClickItem: n }) => /* @__PURE__ */ t(O, { sx: { bgcolor
|
|
12847
12847
|
outterArcRadius: v,
|
12848
12848
|
progressEndAngle: I,
|
12849
12849
|
totalAngularSpan: S,
|
12850
|
-
unitsPerSegment:
|
12850
|
+
unitsPerSegment: J
|
12851
12851
|
}
|
12852
12852
|
)
|
12853
12853
|
},
|
@@ -12863,7 +12863,7 @@ const qp = ({ list: e, onClickItem: n }) => /* @__PURE__ */ t(O, { sx: { bgcolor
|
|
12863
12863
|
cx: M + W,
|
12864
12864
|
cy: k + Y,
|
12865
12865
|
fill: m.palette.common.white,
|
12866
|
-
r:
|
12866
|
+
r: he[i].markerSize,
|
12867
12867
|
stroke: h ? "url(#arcGradient)" : s,
|
12868
12868
|
strokeWidth: i !== "SM" ? 3 : 1
|
12869
12869
|
}
|
@@ -12890,7 +12890,7 @@ const qp = ({ list: e, onClickItem: n }) => /* @__PURE__ */ t(O, { sx: { bgcolor
|
|
12890
12890
|
X,
|
12891
12891
|
{
|
12892
12892
|
sx: {
|
12893
|
-
fontSize:
|
12893
|
+
fontSize: he[i].healthScoreFontSize,
|
12894
12894
|
lineHeight: i !== "SM" ? "48px" : "100%"
|
12895
12895
|
},
|
12896
12896
|
variant: "H1",
|
@@ -12989,7 +12989,7 @@ const qp = ({ list: e, onClickItem: n }) => /* @__PURE__ */ t(O, { sx: { bgcolor
|
|
12989
12989
|
minValue: o = 300,
|
12990
12990
|
footerCenterContent: r
|
12991
12991
|
}) => {
|
12992
|
-
const c =
|
12992
|
+
const c = Xe().palette.mode === "dark", l = [
|
12993
12993
|
{
|
12994
12994
|
id: 1,
|
12995
12995
|
label: "Poor",
|
@@ -13082,7 +13082,7 @@ class r1 {
|
|
13082
13082
|
let i = 0;
|
13083
13083
|
await this.loadHealthScoreChangeReports();
|
13084
13084
|
const a = n?.health_score || 0, o = this.healthScoreChangeReports.at(-1)?.older_health_score || 0;
|
13085
|
-
i = a - o,
|
13085
|
+
i = a - o, ee(() => {
|
13086
13086
|
this.healthScore = n, this.healthScoreChange = i;
|
13087
13087
|
});
|
13088
13088
|
} catch (n) {
|
@@ -13092,7 +13092,7 @@ class r1 {
|
|
13092
13092
|
loadAverageHealthScores = async () => {
|
13093
13093
|
try {
|
13094
13094
|
const n = await this.api.getAverageHealthScores();
|
13095
|
-
|
13095
|
+
ee(() => {
|
13096
13096
|
this.averageHealthScores = n;
|
13097
13097
|
});
|
13098
13098
|
} catch (n) {
|
@@ -13106,7 +13106,7 @@ class r1 {
|
|
13106
13106
|
n,
|
13107
13107
|
i
|
13108
13108
|
);
|
13109
|
-
|
13109
|
+
ee(() => {
|
13110
13110
|
this.healthScoreChangeReports = a;
|
13111
13111
|
});
|
13112
13112
|
} catch (a) {
|
@@ -13114,10 +13114,10 @@ class r1 {
|
|
13114
13114
|
}
|
13115
13115
|
};
|
13116
13116
|
loadPeerScore = async () => {
|
13117
|
-
const n = Ln(
|
13117
|
+
const n = Ln(Ke(this.globalStore.appDataStore.user.birthday), "yyyy");
|
13118
13118
|
try {
|
13119
13119
|
const i = await this.api.getPeerScore(n);
|
13120
|
-
|
13120
|
+
ee(() => {
|
13121
13121
|
this.peerScore = i;
|
13122
13122
|
});
|
13123
13123
|
} catch (i) {
|
@@ -13127,7 +13127,7 @@ class r1 {
|
|
13127
13127
|
loadAugmentedChartData = async () => {
|
13128
13128
|
try {
|
13129
13129
|
const n = await this.api.getAverageHealthScores();
|
13130
|
-
|
13130
|
+
ee(() => {
|
13131
13131
|
this.augmentedChartData = o1(n);
|
13132
13132
|
});
|
13133
13133
|
} catch (n) {
|
@@ -13164,7 +13164,7 @@ const Na = ({
|
|
13164
13164
|
},
|
13165
13165
|
children: [
|
13166
13166
|
n && /* @__PURE__ */ t(co, { sx: { height: 20, width: 20 } }),
|
13167
|
-
/* @__PURE__ */ t(
|
13167
|
+
/* @__PURE__ */ t(qe, { className: "connect-more-accounts-title", sx: { ...e && { fontSize: 15 } }, children: a || u.connect_more_accounts_title })
|
13168
13168
|
]
|
13169
13169
|
}
|
13170
13170
|
),
|
@@ -13180,7 +13180,7 @@ const Na = ({
|
|
13180
13180
|
/* @__PURE__ */ t(
|
13181
13181
|
te,
|
13182
13182
|
{
|
13183
|
-
endIcon: /* @__PURE__ */ t(
|
13183
|
+
endIcon: /* @__PURE__ */ t(je, {}),
|
13184
13184
|
onClick: () => c(!0),
|
13185
13185
|
size: "small",
|
13186
13186
|
sx: { p: 0, mt: 8, "&:hover": { backgroundColor: "transparent" } },
|
@@ -13199,7 +13199,7 @@ const Na = ({
|
|
13199
13199
|
}
|
13200
13200
|
);
|
13201
13201
|
}, s1 = x(() => {
|
13202
|
-
const e =
|
13202
|
+
const e = Xe(), [n, { width: i }] = ii(), { finstrong: a } = A(), { isCopyLoaded: o, isInitialized: r } = re(), { healthScore: s, healthScoreChange: c } = bi(), l = e.palette.mode === "dark", u = Xo(s?.health_score, a);
|
13203
13203
|
return !o || !r ? /* @__PURE__ */ t(ce, {}) : /* @__PURE__ */ d(bt, { ref: n, sx: { p: 16 }, children: [
|
13204
13204
|
/* @__PURE__ */ t(
|
13205
13205
|
_n,
|
@@ -13207,7 +13207,7 @@ const Na = ({
|
|
13207
13207
|
action: /* @__PURE__ */ t(
|
13208
13208
|
te,
|
13209
13209
|
{
|
13210
|
-
endIcon: /* @__PURE__ */ t(
|
13210
|
+
endIcon: /* @__PURE__ */ t(je, {}),
|
13211
13211
|
sx: {
|
13212
13212
|
fontSize: 13,
|
13213
13213
|
lineHeight: "16px",
|
@@ -13218,7 +13218,7 @@ const Na = ({
|
|
13218
13218
|
children: a.financial_strength_header_action
|
13219
13219
|
}
|
13220
13220
|
),
|
13221
|
-
subheader: /* @__PURE__ */ t(
|
13221
|
+
subheader: /* @__PURE__ */ t(qe, { color: "text.primary", children: a.financial_strength_header }),
|
13222
13222
|
sx: {
|
13223
13223
|
p: 0,
|
13224
13224
|
"& .MuiCardHeader-content": {
|
@@ -13295,7 +13295,7 @@ const Na = ({
|
|
13295
13295
|
title: i
|
13296
13296
|
}) => {
|
13297
13297
|
let a;
|
13298
|
-
const { refreshAccounts: o } = Se(), { loadWidget: r } = bc(), { connect: s } = A(), c =
|
13298
|
+
const { refreshAccounts: o } = Se(), { loadWidget: r } = bc(), { connect: s } = A(), c = Xe(), [l, u] = g.useState(!1), [_, h] = g.useState(!1);
|
13299
13299
|
return g.useEffect(() => (n ? (u(!0), r({ widget: "connections_widget", mode: c.palette.mode }).then((m) => {
|
13300
13300
|
a = new Hd({
|
13301
13301
|
container: `#${Nr}`,
|
@@ -13368,7 +13368,7 @@ const Na = ({
|
|
13368
13368
|
}
|
13369
13369
|
);
|
13370
13370
|
}, d1 = x(l1), _1 = ({ isOpen: e, onClose: n }) => {
|
13371
|
-
const { finstrong: i } = A(), a =
|
13371
|
+
const { finstrong: i } = A(), a = Xe(), { updateUser: o, user: r } = ft(), [s, c] = g.useState(r.birthday), l = (_) => {
|
13372
13372
|
c(Math.floor(new Date(_).getTime() / 1e3));
|
13373
13373
|
};
|
13374
13374
|
return /* @__PURE__ */ t(
|
@@ -13479,7 +13479,7 @@ const Na = ({
|
|
13479
13479
|
return /* @__PURE__ */ d(se, { isOpen: e, onClose: n, title: s.financial_profile, children: [
|
13480
13480
|
/* @__PURE__ */ d(b, { sx: { gap: 20, p: 24 }, children: [
|
13481
13481
|
/* @__PURE__ */ d(b, { sx: { gap: 8 }, children: [
|
13482
|
-
/* @__PURE__ */ t(
|
13482
|
+
/* @__PURE__ */ t(qe, { children: s.your_financial_profile }),
|
13483
13483
|
/* @__PURE__ */ t(X, { children: s.financial_profile_description })
|
13484
13484
|
] }),
|
13485
13485
|
/* @__PURE__ */ t(
|
@@ -13540,7 +13540,7 @@ const Na = ({
|
|
13540
13540
|
poor: 110,
|
13541
13541
|
good: 100
|
13542
13542
|
}
|
13543
|
-
},
|
13543
|
+
}, ze = {
|
13544
13544
|
GOOD: "Good",
|
13545
13545
|
FAIR: "Fair",
|
13546
13546
|
OFF_TRACK: "Off Track",
|
@@ -13548,14 +13548,14 @@ const Na = ({
|
|
13548
13548
|
}, _i = ({
|
13549
13549
|
title: e,
|
13550
13550
|
description: n,
|
13551
|
-
cardState: i =
|
13551
|
+
cardState: i = ze.MISSING,
|
13552
13552
|
stateTitle: a
|
13553
13553
|
}) => {
|
13554
13554
|
const o = {
|
13555
|
-
[
|
13556
|
-
[
|
13557
|
-
[
|
13558
|
-
[
|
13555
|
+
[ze.GOOD]: { backgroundColor: "success.lighter", color: "success.main" },
|
13556
|
+
[ze.FAIR]: { backgroundColor: "warning.lighter", color: "warning.main" },
|
13557
|
+
[ze.OFF_TRACK]: { backgroundColor: "error.lighter", color: "error.main" },
|
13558
|
+
[ze.MISSING]: { backgroundColor: "divider", color: "text.secondary" }
|
13559
13559
|
}[i];
|
13560
13560
|
return /* @__PURE__ */ d(
|
13561
13561
|
b,
|
@@ -13597,16 +13597,16 @@ const Na = ({
|
|
13597
13597
|
}, p1 = () => {
|
13598
13598
|
const { healthScore: e } = bi(), { finstrong: n } = A(), { key_indicators_spend: i } = n, a = (c) => {
|
13599
13599
|
const { good: l, poor: u } = Hi.spendToIncomeRatio;
|
13600
|
-
let _ =
|
13601
|
-
return c !== null && (c < l ? (_ =
|
13600
|
+
let _ = ze.MISSING, h = i.ratio_missing_description, m = n.key_indicators_missing;
|
13601
|
+
return c !== null && (c < l ? (_ = ze.GOOD, h = T(i.ratio_good_description, c), m = n.key_indicators_good) : c >= l && c < u ? (_ = ze.FAIR, h = T(i.ratio_fair_description, c), m = n.key_indicators_fair) : c >= u && (_ = ze.OFF_TRACK, h = T(i.ratio_off_track_description, c), m = n.key_indicators_off_track)), {
|
13602
13602
|
cardState: _,
|
13603
13603
|
description: h,
|
13604
13604
|
title: i.ratio_card_title,
|
13605
13605
|
stateTitle: m
|
13606
13606
|
};
|
13607
13607
|
}, o = (c) => {
|
13608
|
-
let l =
|
13609
|
-
return c !== null && (c === 0 ? (l =
|
13608
|
+
let l = ze.MISSING, u = i.count_missing_description, _ = n.key_indicators_missing;
|
13609
|
+
return c !== null && (c === 0 ? (l = ze.GOOD, u = i.count_good_description, _ = n.key_indicators_good) : c >= 1 && (l = ze.OFF_TRACK, u = i.count_off_track_description, _ = n.key_indicators_off_track)), {
|
13610
13610
|
cardState: l,
|
13611
13611
|
description: u,
|
13612
13612
|
title: i.count_card_title,
|
@@ -13644,8 +13644,8 @@ const Na = ({
|
|
13644
13644
|
}, f1 = () => {
|
13645
13645
|
const { healthScore: e } = bi(), { finstrong: n } = A(), { key_indicators_save: i } = n, a = (c) => {
|
13646
13646
|
const { good: l, poor: u } = Hi.daysOfCashOnHand;
|
13647
|
-
let _ =
|
13648
|
-
return c !== null && (c >= l ? (_ =
|
13647
|
+
let _ = ze.MISSING, h = i.days_of_cash_missing_description, m = n.key_indicators_missing;
|
13648
|
+
return c !== null && (c >= l ? (_ = ze.GOOD, h = T(i.days_of_cash_good_description, c), m = n.key_indicators_good) : c < l && c >= u ? (_ = ze.FAIR, h = T(i.days_of_cash_fair_description, c), m = n.key_indicators_fair) : c < u && (_ = ze.OFF_TRACK, h = T(i.days_of_cash_off_track_description, c), m = n.key_indicators_off_track)), {
|
13649
13649
|
cardState: _,
|
13650
13650
|
description: h,
|
13651
13651
|
title: i.days_of_cash_title,
|
@@ -13653,11 +13653,11 @@ const Na = ({
|
|
13653
13653
|
};
|
13654
13654
|
}, o = (c) => {
|
13655
13655
|
const { good: l, poor: u } = Hi.emergencySavings;
|
13656
|
-
let _ =
|
13657
|
-
return c !== null && (c >= l ? (_ =
|
13656
|
+
let _ = ze.MISSING, h = i.emergency_savings_missing_description, m = n.key_indicators_missing;
|
13657
|
+
return c !== null && (c >= l ? (_ = ze.GOOD, h = i.emergency_savings_good_description, m = n.key_indicators_good) : c < l && c >= u ? (_ = ze.FAIR, h = T(
|
13658
13658
|
i.emergency_savings_fair_description,
|
13659
13659
|
H(c, "0,0.00")
|
13660
|
-
), m = n.key_indicators_fair) : c < u && (_ =
|
13660
|
+
), m = n.key_indicators_fair) : c < u && (_ = ze.OFF_TRACK, h = i.emergency_savings_off_track_description, m = n.key_indicators_off_track)), {
|
13661
13661
|
cardState: _,
|
13662
13662
|
description: h,
|
13663
13663
|
title: i.emergency_savings_title,
|
@@ -13695,8 +13695,8 @@ const Na = ({
|
|
13695
13695
|
}, C1 = () => {
|
13696
13696
|
const { healthScore: e } = bi(), { finstrong: n } = A(), { key_indicators_borrow: i } = n, { user: a } = ft(), o = (l) => {
|
13697
13697
|
const { good: u, poor: _ } = Hi.debtToIncomeRatio;
|
13698
|
-
let h =
|
13699
|
-
return l != null && (l <= u ? (h =
|
13698
|
+
let h = ze.MISSING, m = i.manage_debit_missing_description, p = n.key_indicators_missing;
|
13699
|
+
return l != null && (l <= u ? (h = ze.GOOD, m = i.manage_debit_good_description, p = n.key_indicators_good) : l > u && l <= _ ? (h = ze.FAIR, m = T(i.manage_debit_fair_description, l), p = n.key_indicators_fair) : l > _ && (h = ze.OFF_TRACK, m = T(
|
13700
13700
|
i.manage_debit_off_track_description,
|
13701
13701
|
l
|
13702
13702
|
), p = n.key_indicators_off_track)), {
|
@@ -13707,8 +13707,8 @@ const Na = ({
|
|
13707
13707
|
};
|
13708
13708
|
}, r = (l) => {
|
13709
13709
|
const { good: u, poor: _ } = Hi.creditScore;
|
13710
|
-
let h =
|
13711
|
-
return l !== null && (l >= u ? (h =
|
13710
|
+
let h = ze.MISSING, m = i.credit_score_missing_description, p = n.key_indicators_missing;
|
13711
|
+
return l !== null && (l >= u ? (h = ze.GOOD, m = T(i.credit_score_good_description, l), p = n.key_indicators_good) : l < u && l >= _ ? (h = ze.FAIR, m = T(i.credit_score_fair_description, l), p = n.key_indicators_fair) : l < _ && (h = ze.OFF_TRACK, m = T(
|
13712
13712
|
i.credit_score_off_track_description,
|
13713
13713
|
l
|
13714
13714
|
), p = n.key_indicators_off_track)), {
|
@@ -13812,7 +13812,7 @@ const Na = ({
|
|
13812
13812
|
const { finstrong: u } = A(), { isCopyLoaded: _ } = re();
|
13813
13813
|
return _ ? /* @__PURE__ */ d(se, { isOpen: o, onClose: s, title: a || u.key_indicators, children: [
|
13814
13814
|
(l || i) && /* @__PURE__ */ d(b, { sx: { p: 24, pb: 0, gap: 8, backgroundColor: "background.paper" }, children: [
|
13815
|
-
l && /* @__PURE__ */ t(
|
13815
|
+
l && /* @__PURE__ */ t(qe, { children: l }),
|
13816
13816
|
i && /* @__PURE__ */ t(X, { children: i })
|
13817
13817
|
] }),
|
13818
13818
|
c && /* @__PURE__ */ t(
|
@@ -13931,7 +13931,7 @@ const Na = ({
|
|
13931
13931
|
) })
|
13932
13932
|
] }) });
|
13933
13933
|
}, T1 = x(E1), A1 = ({ isOpen: e, onClose: n }) => {
|
13934
|
-
const i =
|
13934
|
+
const i = Xe(), { finstrong: a } = A(), { isCopyLoaded: o, isInitialized: r } = re(), { healthScore: s, healthScoreChangeReports: c, augmentedChartData: l } = bi();
|
13935
13935
|
if (!o || !r) return /* @__PURE__ */ t(ce, {});
|
13936
13936
|
const u = Xo(s.health_score || 0, a), _ = c.slice().reverse();
|
13937
13937
|
return /* @__PURE__ */ t(
|
@@ -13987,13 +13987,13 @@ const Na = ({
|
|
13987
13987
|
return i ? /* @__PURE__ */ d(b, { sx: { alignItems: "center", gap: 12, pt: 12, pb: 32 }, children: [
|
13988
13988
|
/* @__PURE__ */ t(Ys, { size: 48 }),
|
13989
13989
|
/* @__PURE__ */ d(b, { sx: { alignItems: "center", gap: 4, textAlign: "center" }, children: [
|
13990
|
-
/* @__PURE__ */ t(
|
13990
|
+
/* @__PURE__ */ t(qe, { children: n.missing_data_title }),
|
13991
13991
|
/* @__PURE__ */ t(X, { sx: { width: { sm: 348 } }, variant: "subtitle1", children: n.missing_data_description })
|
13992
13992
|
] }),
|
13993
13993
|
/* @__PURE__ */ t(O, { children: /* @__PURE__ */ t(
|
13994
13994
|
te,
|
13995
13995
|
{
|
13996
|
-
endIcon: /* @__PURE__ */ t(
|
13996
|
+
endIcon: /* @__PURE__ */ t(je, {}),
|
13997
13997
|
onClick: e,
|
13998
13998
|
size: "small",
|
13999
13999
|
sx: {
|
@@ -14008,7 +14008,7 @@ const Na = ({
|
|
14008
14008
|
) })
|
14009
14009
|
] }) : /* @__PURE__ */ t(ce, {});
|
14010
14010
|
}, w1 = x(I1), v1 = ({ onBackClick: e, sx: n }) => {
|
14011
|
-
const i =
|
14011
|
+
const i = Xe(), { visibleAccounts: a } = Se(), { dateRange: o, isDataLoaded: r, loadBudgetData: s, setTheme: c } = ut(), { reloadCategoryTotals: l } = Ue(), { augmentedChartData: u, calculateHealthScore: _, healthScore: h, loadAugmentedChartData: m } = bi(), { finstrong: p, connect: f } = A(), { isCopyLoaded: S, isInitialized: y, selectedAccounts: E, setSelectedAccounts: I } = re(), { isMobile: w } = Ce(), [v, N] = g.useState(!1);
|
14012
14012
|
g.useEffect(() => {
|
14013
14013
|
c(i);
|
14014
14014
|
}, []), g.useEffect(() => I(a), [a]), g.useEffect(() => {
|
@@ -14060,11 +14060,11 @@ const Na = ({
|
|
14060
14060
|
] }),
|
14061
14061
|
/* @__PURE__ */ t(b, { sx: { maxWidth: 848, minWidth: 288, width: { md: 720 } }, children: /* @__PURE__ */ d(bt, { sx: { background: i.palette.background.paper, p: 16 }, children: [
|
14062
14062
|
/* @__PURE__ */ d(b, { direction: "row", sx: { alignItems: "center", justifyContent: "space-between" }, children: [
|
14063
|
-
/* @__PURE__ */ t(
|
14063
|
+
/* @__PURE__ */ t(qe, { children: p.key_indicators }),
|
14064
14064
|
/* @__PURE__ */ t(
|
14065
14065
|
te,
|
14066
14066
|
{
|
14067
|
-
endIcon: /* @__PURE__ */ t(
|
14067
|
+
endIcon: /* @__PURE__ */ t(je, {}),
|
14068
14068
|
onClick: () => G(!0),
|
14069
14069
|
sx: {
|
14070
14070
|
fontSize: 13
|
@@ -14161,7 +14161,7 @@ function il(e, n) {
|
|
14161
14161
|
style: "percent",
|
14162
14162
|
minimumFractionDigits: 0,
|
14163
14163
|
maximumFractionDigits: 0
|
14164
|
-
}, c = n.is_complete ? n.completed_at : n.projected_to_complete_at, l = c ?
|
14164
|
+
}, c = n.is_complete ? n.completed_at : n.projected_to_complete_at, l = c ? Ke(c) : /* @__PURE__ */ new Date(), u = T(
|
14165
14165
|
e.goal_percentage,
|
14166
14166
|
Ci(a, s)
|
14167
14167
|
), _ = T(
|
@@ -14326,7 +14326,7 @@ const N1 = (e, n) => {
|
|
14326
14326
|
/* @__PURE__ */ t(C, { variant: "XSmall", children: T(
|
14327
14327
|
n.goal_projection,
|
14328
14328
|
de(
|
14329
|
-
|
14329
|
+
Ke(f.projected_to_complete_at || 0),
|
14330
14330
|
ie.MONTH_SHORT_YEAR
|
14331
14331
|
)
|
14332
14332
|
) })
|
@@ -14368,7 +14368,7 @@ const N1 = (e, n) => {
|
|
14368
14368
|
justifyContent: "space-between",
|
14369
14369
|
children: [
|
14370
14370
|
/* @__PURE__ */ t(C, { color: "primary.light", variant: "Body", children: n.reorder_goals_title }),
|
14371
|
-
/* @__PURE__ */ t(
|
14371
|
+
/* @__PURE__ */ t(je, { color: "primary" })
|
14372
14372
|
]
|
14373
14373
|
}
|
14374
14374
|
) }) }) }),
|
@@ -14429,7 +14429,7 @@ const N1 = (e, n) => {
|
|
14429
14429
|
/* @__PURE__ */ t(C, { variant: "XSmall", children: T(
|
14430
14430
|
i.goal_projection,
|
14431
14431
|
de(
|
14432
|
-
|
14432
|
+
Ke(e.projected_to_complete_at || 0),
|
14433
14433
|
ie.MONTH_SHORT_YEAR
|
14434
14434
|
)
|
14435
14435
|
) })
|
@@ -14447,7 +14447,7 @@ const N1 = (e, n) => {
|
|
14447
14447
|
/* @__PURE__ */ t(C, { variant: "XSmall", children: T(
|
14448
14448
|
n.completed_label,
|
14449
14449
|
de(
|
14450
|
-
|
14450
|
+
Ke(e.completed_at || 0),
|
14451
14451
|
ie.MONTH_SHORT_YEAR
|
14452
14452
|
)
|
14453
14453
|
) })
|
@@ -14463,7 +14463,7 @@ const N1 = (e, n) => {
|
|
14463
14463
|
), [c, l] = g.useState(!1);
|
14464
14464
|
let u = n.manage_saving_goals, _ = n.manage_saving_drawer_title, h = n.manage_saving_title, m = n.manage_saving_description;
|
14465
14465
|
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: [
|
14466
|
-
/* @__PURE__ */ t(te, { endIcon: /* @__PURE__ */ t(
|
14466
|
+
/* @__PURE__ */ t(te, { endIcon: /* @__PURE__ */ t(je, {}), onClick: () => l(!0), children: u }),
|
14467
14467
|
/* @__PURE__ */ t(
|
14468
14468
|
se,
|
14469
14469
|
{
|
@@ -14473,7 +14473,7 @@ const N1 = (e, n) => {
|
|
14473
14473
|
title: _,
|
14474
14474
|
children: /* @__PURE__ */ d(b, { children: [
|
14475
14475
|
/* @__PURE__ */ d(b, { m: 24, children: [
|
14476
|
-
/* @__PURE__ */ t(
|
14476
|
+
/* @__PURE__ */ t(qe, { children: h }),
|
14477
14477
|
/* @__PURE__ */ t(X, { color: "text.secondary", sx: { textWrap: "wrap" }, variant: "ParagraphSmall", children: m })
|
14478
14478
|
] }),
|
14479
14479
|
/* @__PURE__ */ t(O1, { trackType: e }),
|
@@ -14591,7 +14591,7 @@ const N1 = (e, n) => {
|
|
14591
14591
|
children: [
|
14592
14592
|
/* @__PURE__ */ t(Pe, { children: /* @__PURE__ */ t(Ft, { sx: { bgcolor: a }, variant: "rounded", children: /* @__PURE__ */ t(pt, { name: o, sx: { color: "grey.900" } }) }) }),
|
14593
14593
|
/* @__PURE__ */ t(oe, { primary: r, secondary: s, sx: { mr: 24 } }),
|
14594
|
-
!h && /* @__PURE__ */ t(
|
14594
|
+
!h && /* @__PURE__ */ t(je, {}),
|
14595
14595
|
h && (u ? /* @__PURE__ */ t(Zs, {}) : /* @__PURE__ */ t(ui, {}))
|
14596
14596
|
]
|
14597
14597
|
}
|
@@ -14606,7 +14606,7 @@ const N1 = (e, n) => {
|
|
14606
14606
|
primaryTypographyProps: { variant: "Body" }
|
14607
14607
|
}
|
14608
14608
|
),
|
14609
|
-
/* @__PURE__ */ t(
|
14609
|
+
/* @__PURE__ */ t(je, {})
|
14610
14610
|
] }) }, p)) }) })
|
14611
14611
|
] }) });
|
14612
14612
|
}, ol = ({
|
@@ -14726,7 +14726,7 @@ const N1 = (e, n) => {
|
|
14726
14726
|
secondary: H(e.balance || 0, "0,0.00")
|
14727
14727
|
}
|
14728
14728
|
),
|
14729
|
-
/* @__PURE__ */ t(
|
14729
|
+
/* @__PURE__ */ t(je, {})
|
14730
14730
|
] }),
|
14731
14731
|
/* @__PURE__ */ t(se, { isOpen: a, onClose: () => o(!1), title: n.account_details, children: /* @__PURE__ */ d(b, { children: [
|
14732
14732
|
/* @__PURE__ */ t(jo, {}),
|
@@ -14778,7 +14778,7 @@ const N1 = (e, n) => {
|
|
14778
14778
|
/* @__PURE__ */ t(qs, { filled: !0 }),
|
14779
14779
|
o.details_add_account
|
14780
14780
|
] }) }),
|
14781
|
-
/* @__PURE__ */ t(
|
14781
|
+
/* @__PURE__ */ t(je, { color: "primary" })
|
14782
14782
|
] }) }) : /* @__PURE__ */ d(b, { sx: { gap: 8, my: 24, mx: 24 }, children: [
|
14783
14783
|
/* @__PURE__ */ t(te, { onClick: () => _(!0), variant: "text", children: o.details_change_account }),
|
14784
14784
|
/* @__PURE__ */ t(
|
@@ -14808,7 +14808,7 @@ const N1 = (e, n) => {
|
|
14808
14808
|
secondary: H(m?.balance || 0, "0,0.00")
|
14809
14809
|
}
|
14810
14810
|
),
|
14811
|
-
/* @__PURE__ */ t(
|
14811
|
+
/* @__PURE__ */ t(je, {})
|
14812
14812
|
] }) }, m.guid)) }),
|
14813
14813
|
/* @__PURE__ */ t(C, { bold: !0, sx: { mb: 4, ml: 24, mt: 12 }, variant: "XSmall", children: a.account_types[2] }),
|
14814
14814
|
/* @__PURE__ */ t(ae, { sx: { bgcolor: "background.paper" }, children: i.map((m) => /* @__PURE__ */ t(j, { children: /* @__PURE__ */ d(ge, { onClick: () => h(m), children: [
|
@@ -14826,7 +14826,7 @@ const N1 = (e, n) => {
|
|
14826
14826
|
secondary: H(m?.balance || 0, "0,0.00")
|
14827
14827
|
}
|
14828
14828
|
),
|
14829
|
-
/* @__PURE__ */ t(
|
14829
|
+
/* @__PURE__ */ t(je, {})
|
14830
14830
|
] }) }, m.guid)) }),
|
14831
14831
|
/* @__PURE__ */ t(
|
14832
14832
|
wc,
|
@@ -14904,7 +14904,7 @@ const N1 = (e, n) => {
|
|
14904
14904
|
}
|
14905
14905
|
);
|
14906
14906
|
}, U1 = x(({ goal: e }) => {
|
14907
|
-
const { goals: n } = A(), { user: i, updateUser: a } = ft(), { setAlert: o } = dt(), [r, s] = g.useState(
|
14907
|
+
const { goals: n } = A(), { user: i, updateUser: a } = ft(), { setAlert: o } = dt(), [r, s] = g.useState(Ke(i.birthday ?? 0)), [c, l] = g.useState(null), u = e.is_complete, _ = async () => {
|
14908
14908
|
r && f_(r) && (await a({ ...i, birthday: We(r) }), o(n.alert_goal_updated_birthday));
|
14909
14909
|
};
|
14910
14910
|
return /* @__PURE__ */ t(
|
@@ -14915,7 +14915,7 @@ const N1 = (e, n) => {
|
|
14915
14915
|
label: n.details_birthday,
|
14916
14916
|
onSave: _,
|
14917
14917
|
primaryText: n.details_birthday,
|
14918
|
-
secondaryText: `${de(
|
14918
|
+
secondaryText: `${de(Ke(i.birthday ?? 0), ie.MONTH_DAY_YEAR)}`,
|
14919
14919
|
zeroStateText: !e.guid && !i.birthday ? n.add_birthday : void 0,
|
14920
14920
|
children: /* @__PURE__ */ t(gi, { dateAdapter: Jn, children: /* @__PURE__ */ t(
|
14921
14921
|
go,
|
@@ -14967,7 +14967,7 @@ const N1 = (e, n) => {
|
|
14967
14967
|
/* @__PURE__ */ t(qs, { filled: !0 }),
|
14968
14968
|
n.details_add_account
|
14969
14969
|
] }) }),
|
14970
|
-
/* @__PURE__ */ t(
|
14970
|
+
/* @__PURE__ */ t(je, { color: "primary" })
|
14971
14971
|
] }) }),
|
14972
14972
|
/* @__PURE__ */ t(
|
14973
14973
|
ol,
|
@@ -15042,8 +15042,8 @@ const N1 = (e, n) => {
|
|
15042
15042
|
return n.filter((W) => L.some((Y) => Y.account_guid === W.guid));
|
15043
15043
|
}, [E, n, l, u]), v = g.useMemo(() => {
|
15044
15044
|
if (!_) return !1;
|
15045
|
-
const { account_guid: L, track_type: W, name: Y, amount:
|
15046
|
-
return W === z.SAVINGS_TRACK ? L ? !!Y && !!
|
15045
|
+
const { account_guid: L, track_type: W, name: Y, amount: J, retirement_age: he } = _;
|
15046
|
+
return W === z.SAVINGS_TRACK ? L ? !!Y && !!J : !1 : W === z.RETIREMENT_TRACK ? w.length ? !!Y && !!J && !!he && !!f.birthday : !1 : !0;
|
15047
15047
|
}, [_, w, f.birthday]);
|
15048
15048
|
let N = a.delete_button, R = () => y(!0);
|
15049
15049
|
E ? (R = () => M(), N = a.save_button) : I && (R = () => G(), N = i.mark_as_complete_button);
|
@@ -15112,9 +15112,9 @@ const N1 = (e, n) => {
|
|
15112
15112
|
i(F.GOALS_CLICK_FILTER);
|
15113
15113
|
}, Y = () => {
|
15114
15114
|
v(!0), i(F.GOALS_CLICK_ADD);
|
15115
|
-
},
|
15115
|
+
}, J = (_e) => {
|
15116
15116
|
v(!1), _e === z.SAVINGS_TRACK ? I(0) : _e === z.DEBT_TRACK ? I(1) : _e === z.RETIREMENT_TRACK && I(2);
|
15117
|
-
},
|
15117
|
+
}, he = g.useMemo(
|
15118
15118
|
() => m && (h.length === 0 || h.every(({ track_type: _e }) => !_e) && y.length === 0),
|
15119
15119
|
[h, m, y]
|
15120
15120
|
);
|
@@ -15141,34 +15141,34 @@ const N1 = (e, n) => {
|
|
15141
15141
|
onChange: (_e, Le) => I(Le),
|
15142
15142
|
sx: { bgcolor: "background.paper" },
|
15143
15143
|
textColor: "primary",
|
15144
|
-
value:
|
15144
|
+
value: he ? !1 : E,
|
15145
15145
|
variant: "fullWidth",
|
15146
15146
|
children: [
|
15147
15147
|
/* @__PURE__ */ t(
|
15148
15148
|
tt,
|
15149
15149
|
{
|
15150
|
-
disabled:
|
15150
|
+
disabled: he,
|
15151
15151
|
label: /* @__PURE__ */ t(Wa, { subtitle: k, title: l.tab_saving_title })
|
15152
15152
|
}
|
15153
15153
|
),
|
15154
15154
|
/* @__PURE__ */ t(
|
15155
15155
|
tt,
|
15156
15156
|
{
|
15157
|
-
disabled:
|
15157
|
+
disabled: he,
|
15158
15158
|
label: /* @__PURE__ */ t(Wa, { subtitle: G, title: l.tab_debt_title })
|
15159
15159
|
}
|
15160
15160
|
),
|
15161
15161
|
/* @__PURE__ */ t(
|
15162
15162
|
tt,
|
15163
15163
|
{
|
15164
|
-
disabled:
|
15164
|
+
disabled: he,
|
15165
15165
|
label: /* @__PURE__ */ t(Wa, { subtitle: L, title: l.tab_retirement_title })
|
15166
15166
|
}
|
15167
15167
|
)
|
15168
15168
|
]
|
15169
15169
|
}
|
15170
15170
|
),
|
15171
|
-
|
15171
|
+
he ? /* @__PURE__ */ t(
|
15172
15172
|
jn,
|
15173
15173
|
{
|
15174
15174
|
header: l.create_goals_header,
|
@@ -15189,7 +15189,7 @@ const N1 = (e, n) => {
|
|
15189
15189
|
E === 2 && /* @__PURE__ */ t($a, { onAddGoals: Y, trackType: z.RETIREMENT_TRACK })
|
15190
15190
|
] })
|
15191
15191
|
] }),
|
15192
|
-
/* @__PURE__ */ t(z1, { onClose:
|
15192
|
+
/* @__PURE__ */ t(z1, { onClose: J }),
|
15193
15193
|
/* @__PURE__ */ t(
|
15194
15194
|
se,
|
15195
15195
|
{
|
@@ -15197,7 +15197,7 @@ const N1 = (e, n) => {
|
|
15197
15197
|
isOpen: w,
|
15198
15198
|
onClose: () => v(!1),
|
15199
15199
|
title: l.add_goal_title,
|
15200
|
-
children: /* @__PURE__ */ t(H1, { onClose:
|
15200
|
+
children: /* @__PURE__ */ t(H1, { onClose: J })
|
15201
15201
|
}
|
15202
15202
|
),
|
15203
15203
|
/* @__PURE__ */ t(Fi, { onClose: () => S(""), open: !!_, children: /* @__PURE__ */ t(Mn, { onClose: () => S(""), severity: "success", variant: "filled", children: _ }) })
|
@@ -15246,7 +15246,7 @@ class Y1 {
|
|
15246
15246
|
addGoal = async (n) => {
|
15247
15247
|
try {
|
15248
15248
|
const i = await this.api.addGoal(n);
|
15249
|
-
|
15249
|
+
ee(() => {
|
15250
15250
|
this.goals = [...this.goals, i];
|
15251
15251
|
});
|
15252
15252
|
} catch (i) {
|
@@ -15264,7 +15264,7 @@ class Y1 {
|
|
15264
15264
|
});
|
15265
15265
|
o.push(s);
|
15266
15266
|
}
|
15267
|
-
this.setNewRetirementGoalAccounts([]),
|
15267
|
+
this.setNewRetirementGoalAccounts([]), ee(() => {
|
15268
15268
|
this.goals = [
|
15269
15269
|
...this.goals,
|
15270
15270
|
{
|
@@ -15282,7 +15282,7 @@ class Y1 {
|
|
15282
15282
|
addRetirementGoalAccount = async (n) => {
|
15283
15283
|
try {
|
15284
15284
|
const i = await this.api.addRetirementGoalAccount(n);
|
15285
|
-
|
15285
|
+
ee(() => {
|
15286
15286
|
this.retirementGoalAccounts = [...this.retirementGoalAccounts, i];
|
15287
15287
|
});
|
15288
15288
|
} catch (i) {
|
@@ -15301,7 +15301,7 @@ class Y1 {
|
|
15301
15301
|
track_type: z.RETIREMENT_TRACK
|
15302
15302
|
}))
|
15303
15303
|
];
|
15304
|
-
|
15304
|
+
ee(() => {
|
15305
15305
|
this.goals = s, this.retirementGoalAccounts = o, this.monthlyCashFlowProfile = r, this.goalsLoaded = !0;
|
15306
15306
|
});
|
15307
15307
|
} catch (i) {
|
@@ -15310,7 +15310,7 @@ class Y1 {
|
|
15310
15310
|
};
|
15311
15311
|
deleteGoal = async (n) => {
|
15312
15312
|
try {
|
15313
|
-
await this.api.removeGoal(n),
|
15313
|
+
await this.api.removeGoal(n), ee(() => {
|
15314
15314
|
const i = this.goals.findIndex((a) => a.guid === n);
|
15315
15315
|
i >= 0 && this.goals.splice(i, 1);
|
15316
15316
|
});
|
@@ -15325,7 +15325,7 @@ class Y1 {
|
|
15325
15325
|
);
|
15326
15326
|
for (const a of i)
|
15327
15327
|
await this.deleteRetirementGoalAccount(a.guid);
|
15328
|
-
await this.api.removeRetirementGoal(n.guid),
|
15328
|
+
await this.api.removeRetirementGoal(n.guid), ee(() => {
|
15329
15329
|
const a = this.goals.findIndex((o) => o.guid === n.guid);
|
15330
15330
|
a >= 0 && this.goals.splice(a, 1);
|
15331
15331
|
});
|
@@ -15335,7 +15335,7 @@ class Y1 {
|
|
15335
15335
|
};
|
15336
15336
|
deleteRetirementGoalAccount = async (n) => {
|
15337
15337
|
try {
|
15338
|
-
await this.api.removeRetirementGoalAccount(n),
|
15338
|
+
await this.api.removeRetirementGoalAccount(n), ee(() => {
|
15339
15339
|
const i = this.retirementGoalAccounts.findIndex((a) => a.guid === n);
|
15340
15340
|
i >= 0 && this.retirementGoalAccounts.splice(i, 1);
|
15341
15341
|
});
|
@@ -15346,7 +15346,7 @@ class Y1 {
|
|
15346
15346
|
reorderGoals = async (n) => {
|
15347
15347
|
try {
|
15348
15348
|
const i = await this.api.reorderGoals(n);
|
15349
|
-
|
15349
|
+
ee(() => {
|
15350
15350
|
for (const a of i) {
|
15351
15351
|
const o = this.goals.findIndex((r) => r.guid === a.guid);
|
15352
15352
|
o >= 0 && (this.goals[o].position = a.position);
|
@@ -15364,7 +15364,7 @@ class Y1 {
|
|
15364
15364
|
updateGoal = async (n) => {
|
15365
15365
|
try {
|
15366
15366
|
const i = await this.api.updateGoal(n);
|
15367
|
-
|
15367
|
+
ee(() => {
|
15368
15368
|
const a = this.goals.findIndex((o) => o.guid === n.guid);
|
15369
15369
|
a >= 0 && (this.goals[a] = i), this.selectedGoal?.guid === n.guid && this.setSelectedGoal(i);
|
15370
15370
|
});
|
@@ -15375,7 +15375,7 @@ class Y1 {
|
|
15375
15375
|
updateMonthlyCashFlowProfile = async (n) => {
|
15376
15376
|
try {
|
15377
15377
|
const i = await this.api.updateMonthlyCashFlowProfile(n);
|
15378
|
-
|
15378
|
+
ee(() => {
|
15379
15379
|
this.monthlyCashFlowProfile = i;
|
15380
15380
|
});
|
15381
15381
|
} catch (i) {
|
@@ -15993,7 +15993,7 @@ class gf {
|
|
15993
15993
|
loadHoldings = async () => {
|
15994
15994
|
try {
|
15995
15995
|
const n = await this.api.getHoldings();
|
15996
|
-
|
15996
|
+
ee(() => {
|
15997
15997
|
this.holdings = [...n], this.holdingsLoaded = !0;
|
15998
15998
|
});
|
15999
15999
|
} catch (n) {
|
@@ -16009,7 +16009,7 @@ class gf {
|
|
16009
16009
|
const i = await this.api.updateHoldings(n), a = this.holdings.findIndex(({ guid: o }) => o === n.guid);
|
16010
16010
|
if (a >= 0) {
|
16011
16011
|
const o = [...this.holdings];
|
16012
|
-
o[a] = i,
|
16012
|
+
o[a] = i, ee(() => {
|
16013
16013
|
this.holdings = o, this.holdingsLoaded = !0;
|
16014
16014
|
});
|
16015
16015
|
}
|
@@ -16098,13 +16098,13 @@ class Cf {
|
|
16098
16098
|
loadMerchants = async (n = "") => {
|
16099
16099
|
this.isLoading = !0;
|
16100
16100
|
const i = await this.api.getMerchants([n]);
|
16101
|
-
|
16101
|
+
ee(() => {
|
16102
16102
|
this.merchants = i, this.isLoading = !1;
|
16103
16103
|
});
|
16104
16104
|
};
|
16105
16105
|
loadMerchantByGuid = async (n) => {
|
16106
16106
|
const i = await this.api.getMerchantByGuid(n);
|
16107
|
-
|
16107
|
+
ee(() => this.merchant = i);
|
16108
16108
|
};
|
16109
16109
|
}
|
16110
16110
|
const bf = ({
|
@@ -16115,8 +16115,8 @@ const bf = ({
|
|
16115
16115
|
onMouseLeave: o,
|
16116
16116
|
selectedData: r
|
16117
16117
|
}) => {
|
16118
|
-
const { isMobile: s } = Ce(), { availableWidth: c } = $n(), l =
|
16119
|
-
x: de(
|
16118
|
+
const { isMobile: s } = Ce(), { availableWidth: c } = $n(), l = Xe(), u = c - 320, _ = e.map((f) => ({
|
16119
|
+
x: de(Ke(f.x), ie.MONTH_SHORT),
|
16120
16120
|
y: f.y
|
16121
16121
|
})), h = r ? { index: e.findIndex((f) => f.x === r.x) } : void 0, m = n ? { index: e.findIndex((f) => f.x === n.x) } : void 0, p = (f) => ({
|
16122
16122
|
fill: f === h?.index ? l.palette.success.main : "",
|
@@ -16175,7 +16175,7 @@ const bf = ({
|
|
16175
16175
|
{
|
16176
16176
|
primary: /* @__PURE__ */ d(b, { direction: "row", justifyContent: "space-between", sx: { fontWeight: 400 }, children: [
|
16177
16177
|
/* @__PURE__ */ t(C, { variant: "Body", children: fc(e.x) }),
|
16178
|
-
/* @__PURE__ */ t(
|
16178
|
+
/* @__PURE__ */ t(Ze, { amount: e.y, sx: { color: "inherit" }, variant: "Body" })
|
16179
16179
|
] })
|
16180
16180
|
}
|
16181
16181
|
)
|
@@ -16194,7 +16194,7 @@ const bf = ({
|
|
16194
16194
|
onMouseLeave: r,
|
16195
16195
|
selectedData: s
|
16196
16196
|
}) => {
|
16197
|
-
const { net_worth: c } = A(), l =
|
16197
|
+
const { net_worth: c } = A(), l = Xe(), u = (_) => {
|
16198
16198
|
const h = _.x === n?.x, m = _.x === s?.x, p = {
|
16199
16199
|
backgroundColor: "inherit",
|
16200
16200
|
borderBottom: "inherit",
|
@@ -16249,14 +16249,14 @@ const bf = ({
|
|
16249
16249
|
}
|
16250
16250
|
}
|
16251
16251
|
),
|
16252
|
-
/* @__PURE__ */ t(
|
16252
|
+
/* @__PURE__ */ t(Ze, { amount: a.change, color: s, variant: n }),
|
16253
16253
|
/* @__PURE__ */ t(C, { variant: "Small", children: e })
|
16254
16254
|
] });
|
16255
16255
|
}, Jo = x(xf), If = ({ hoveredData: e, selectedData: n }) => {
|
16256
|
-
const { net_worth: i } = A(), a =
|
16256
|
+
const { net_worth: i } = A(), a = Xe(), o = e || n, r = ec(ci(o.x), "MMMM");
|
16257
16257
|
return /* @__PURE__ */ d(b, { alignItems: "center", direction: "column", m: 24, children: [
|
16258
16258
|
/* @__PURE__ */ t(C, { color: a.palette.secondary.main, variant: "Small", children: `${r} ${i.net_worth}` }),
|
16259
|
-
/* @__PURE__ */ t(
|
16259
|
+
/* @__PURE__ */ t(Ze, { amount: o.y, variant: "H2" }),
|
16260
16260
|
/* @__PURE__ */ t(Jo, { currencyLabel: i.this_month, netWorth: o, theme: a })
|
16261
16261
|
] });
|
16262
16262
|
}, wf = x(If), gl = 13, vf = (e, n) => e.filter((i) => {
|
@@ -16265,9 +16265,9 @@ const bf = ({
|
|
16265
16265
|
}), Df = (e, n) => [...e, ...n], _s = (e) => {
|
16266
16266
|
if (e && e.length > 0)
|
16267
16267
|
return e[e.length - 1];
|
16268
|
-
}, Nf = (e, n) => e.year_month - n.year_month, Rf = () => Array.from({ length: gl }, (e, n) => Math.floor(
|
16268
|
+
}, Nf = (e, n) => e.year_month - n.year_month, Rf = () => Array.from({ length: gl }, (e, n) => Math.floor(Ve(Ht(/* @__PURE__ */ new Date(), n)).getTime() / 1e3)).sort(), Of = (e, n, i) => !e.length || !n.length ? [] : Rf().reduceRight((o, r) => {
|
16269
16269
|
const s = n.filter(
|
16270
|
-
({ year_month: _ }) => _ === parseInt(Ln(
|
16270
|
+
({ year_month: _ }) => _ === parseInt(Ln(Ke(r), "yyyyMM"))
|
16271
16271
|
), c = e.map((_) => {
|
16272
16272
|
const h = s.find((p) => p.account_guid === _.guid), m = {
|
16273
16273
|
change: 0,
|
@@ -16352,7 +16352,7 @@ class kf {
|
|
16352
16352
|
const i = this.globalStore.accountStore.members, a = vf(n, i), r = await (await Promise.all(
|
16353
16353
|
a.map((s) => this.globalStore.accountStore.api.getMonthlyAccountBalances(s.guid))
|
16354
16354
|
)).reduce(Df, []).sort(Nf);
|
16355
|
-
|
16355
|
+
ee(() => {
|
16356
16356
|
this.netWorthData = {
|
16357
16357
|
accounts: a,
|
16358
16358
|
monthlyAccountBalances: r
|
@@ -16365,7 +16365,7 @@ class kf {
|
|
16365
16365
|
loadChartData = async (n) => {
|
16366
16366
|
try {
|
16367
16367
|
const { accounts: i, monthlyAccountBalances: a } = this.netWorthData, o = await Of(i, a, n), r = _s(o);
|
16368
|
-
|
16368
|
+
ee(() => {
|
16369
16369
|
this.netWorthChartData = o, this.selectedData = r;
|
16370
16370
|
});
|
16371
16371
|
} catch (i) {
|
@@ -16388,12 +16388,12 @@ class kf {
|
|
16388
16388
|
};
|
16389
16389
|
}
|
16390
16390
|
setSelectedData = (n) => {
|
16391
|
-
|
16391
|
+
ee(() => {
|
16392
16392
|
this.selectedData = this.netWorthChartData[n];
|
16393
16393
|
});
|
16394
16394
|
};
|
16395
16395
|
setHoveredData = (n) => {
|
16396
|
-
|
16396
|
+
ee(() => {
|
16397
16397
|
this.hoveredData = n !== null ? this.netWorthChartData[n] : void 0;
|
16398
16398
|
});
|
16399
16399
|
};
|
@@ -16477,7 +16477,7 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16477
16477
|
}
|
16478
16478
|
),
|
16479
16479
|
/* @__PURE__ */ t(
|
16480
|
-
|
16480
|
+
Ze,
|
16481
16481
|
{
|
16482
16482
|
amount: r.balance,
|
16483
16483
|
sx: {
|
@@ -16515,7 +16515,7 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16515
16515
|
},
|
16516
16516
|
children: [
|
16517
16517
|
/* @__PURE__ */ t(C, { variant: "Body", children: r.current_net_worth }),
|
16518
|
-
/* @__PURE__ */ t(
|
16518
|
+
/* @__PURE__ */ t(Ze, { amount: e?.y ?? 0, variant: "H1" }),
|
16519
16519
|
e && /* @__PURE__ */ t(
|
16520
16520
|
Jo,
|
16521
16521
|
{
|
@@ -16534,7 +16534,7 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16534
16534
|
{
|
16535
16535
|
primary: /* @__PURE__ */ d(b, { direction: "row", justifyContent: "space-between", children: [
|
16536
16536
|
/* @__PURE__ */ t(C, { sx: { fontWeight: 700 }, variant: "XSmall", children: r.assets }),
|
16537
|
-
/* @__PURE__ */ t(
|
16537
|
+
/* @__PURE__ */ t(Ze, { amount: a, sx: { fontWeight: 400 }, variant: "XSmall" })
|
16538
16538
|
] })
|
16539
16539
|
}
|
16540
16540
|
) }),
|
@@ -16544,7 +16544,7 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16544
16544
|
{
|
16545
16545
|
primary: /* @__PURE__ */ d(b, { direction: "row", justifyContent: "space-between", children: [
|
16546
16546
|
/* @__PURE__ */ t(C, { sx: { fontWeight: 700 }, variant: "XSmall", children: r.liabilities }),
|
16547
|
-
/* @__PURE__ */ t(
|
16547
|
+
/* @__PURE__ */ t(Ze, { amount: o, sx: { fontWeight: 400 }, variant: "XSmall" })
|
16548
16548
|
] })
|
16549
16549
|
}
|
16550
16550
|
) }),
|
@@ -16571,7 +16571,7 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16571
16571
|
{
|
16572
16572
|
primary: /* @__PURE__ */ d(b, { direction: "row", justifyContent: "space-between", children: [
|
16573
16573
|
/* @__PURE__ */ t(C, { sx: { fontWeight: 700 }, variant: "XSmall", children: r.gains }),
|
16574
|
-
/* @__PURE__ */ t(
|
16574
|
+
/* @__PURE__ */ t(Ze, { amount: a, sx: { fontWeight: 400 }, variant: "XSmall" })
|
16575
16575
|
] })
|
16576
16576
|
}
|
16577
16577
|
) }),
|
@@ -16582,7 +16582,7 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16582
16582
|
primary: /* @__PURE__ */ d(b, { direction: "row", justifyContent: "space-between", children: [
|
16583
16583
|
/* @__PURE__ */ t(C, { sx: { mr: 10 }, variant: "Body", children: c.accountName }),
|
16584
16584
|
/* @__PURE__ */ t(
|
16585
|
-
|
16585
|
+
Ze,
|
16586
16586
|
{
|
16587
16587
|
amount: c.gain,
|
16588
16588
|
sx: { color: s.palette.success.main, flexShrink: 0, fontWeight: 700 },
|
@@ -16600,7 +16600,7 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16600
16600
|
{
|
16601
16601
|
primary: /* @__PURE__ */ d(b, { direction: "row", justifyContent: "space-between", children: [
|
16602
16602
|
/* @__PURE__ */ t(C, { sx: { fontWeight: 700 }, variant: "XSmall", children: r.losses }),
|
16603
|
-
/* @__PURE__ */ t(
|
16603
|
+
/* @__PURE__ */ t(Ze, { amount: o, sx: { fontWeight: 400 }, variant: "XSmall" })
|
16604
16604
|
] })
|
16605
16605
|
}
|
16606
16606
|
) }),
|
@@ -16624,7 +16624,7 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16624
16624
|
}
|
16625
16625
|
),
|
16626
16626
|
/* @__PURE__ */ t(
|
16627
|
-
|
16627
|
+
Ze,
|
16628
16628
|
{
|
16629
16629
|
amount: c.loss,
|
16630
16630
|
sx: { flexShrink: 0, fontWeight: 700 },
|
@@ -16653,7 +16653,7 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16653
16653
|
selectedData: f,
|
16654
16654
|
setHoveredData: S,
|
16655
16655
|
setSelectedData: y
|
16656
|
-
} = yc(), { isMobile: E } = Ce(), { onEvent: I } = q(), [w, v] = g.useState(!1), [N, R] = g.useState(6), [M, k] = g.useState(!1), [G, L] = g.useState(!1), [W, Y] = g.useState(!1),
|
16656
|
+
} = yc(), { isMobile: E } = Ce(), { onEvent: I } = q(), [w, v] = g.useState(!1), [N, R] = g.useState(6), [M, k] = g.useState(!1), [G, L] = g.useState(!1), [W, Y] = g.useState(!1), J = async () => {
|
16657
16657
|
await m(a), await h(N), v(!0);
|
16658
16658
|
};
|
16659
16659
|
g.useEffect(() => {
|
@@ -16661,11 +16661,11 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16661
16661
|
}, []), g.useEffect(() => {
|
16662
16662
|
o(c);
|
16663
16663
|
}, [c]), g.useEffect(() => {
|
16664
|
-
i &&
|
16664
|
+
i && J().finally();
|
16665
16665
|
}, [i, a]), g.useEffect(() => {
|
16666
16666
|
I(F.NET_WORTH_WIDGET_CLICK_TIMEFRAME, { time_period: N + "M" }), h(N).finally();
|
16667
16667
|
}, [N]);
|
16668
|
-
const
|
16668
|
+
const he = ($, pe) => {
|
16669
16669
|
y(pe), $.currentTarget instanceof HTMLDivElement && k(!0);
|
16670
16670
|
}, _e = ($) => {
|
16671
16671
|
S($);
|
@@ -16673,18 +16673,18 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16673
16673
|
S(null);
|
16674
16674
|
}, Re = () => {
|
16675
16675
|
I(F.NET_WORTH_WIDGET_CLICK_ASSETS_LIABILITIES), L(!0);
|
16676
|
-
},
|
16676
|
+
}, ue = async ($) => {
|
16677
16677
|
const pe = $[0], be = $[1];
|
16678
16678
|
pe && be && R(Yd(be, pe));
|
16679
16679
|
}, me = {
|
16680
16680
|
chartData: p,
|
16681
16681
|
hoveredData: _,
|
16682
16682
|
onButtonClick: Re,
|
16683
|
-
onDataClick:
|
16683
|
+
onDataClick: he,
|
16684
16684
|
onMouseEnter: _e,
|
16685
16685
|
onMouseLeave: Le,
|
16686
16686
|
selectedData: f
|
16687
|
-
},
|
16687
|
+
}, Qe = () => {
|
16688
16688
|
Y(!0), I(F.ACCOUNTS_CLICK_CONNECT);
|
16689
16689
|
};
|
16690
16690
|
return n ? /* @__PURE__ */ t(
|
@@ -16692,7 +16692,7 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16692
16692
|
{
|
16693
16693
|
accountOptions: c,
|
16694
16694
|
calendarActions: {
|
16695
|
-
onRangeChanged:
|
16695
|
+
onRangeChanged: ue
|
16696
16696
|
},
|
16697
16697
|
dateRangeVariant: E ? "timeframetabs" : "timeframebuttons",
|
16698
16698
|
onAccountsFilterClick: () => I(F.NET_WORTH_WIDGET_CLICK_FILTER),
|
@@ -16732,7 +16732,7 @@ const Gf = ({ amount: e, copy: n, trendValue: i }) => {
|
|
16732
16732
|
{
|
16733
16733
|
header: s.empty_widget_header,
|
16734
16734
|
icon: "elevation",
|
16735
|
-
onClick:
|
16735
|
+
onClick: Qe,
|
16736
16736
|
primaryButton: s.empty_widget_button,
|
16737
16737
|
subText: s.empty_widget_description,
|
16738
16738
|
sx: {
|
@@ -16822,7 +16822,7 @@ class Kf {
|
|
16822
16822
|
try {
|
16823
16823
|
this.isLoading = !0;
|
16824
16824
|
const n = await this.api.getNotifications();
|
16825
|
-
|
16825
|
+
ee(() => {
|
16826
16826
|
this.notifications = n, this.recentNotifications = Vf(n), this.isLoading = !1;
|
16827
16827
|
});
|
16828
16828
|
} catch (n) {
|
@@ -17061,7 +17061,7 @@ class tC {
|
|
17061
17061
|
try {
|
17062
17062
|
await this.api.deleteDevice(n);
|
17063
17063
|
const i = this.devices.findIndex((a) => a.guid === n);
|
17064
|
-
return i >= 0 &&
|
17064
|
+
return i >= 0 && ee(() => {
|
17065
17065
|
this.devices.splice(i, 1);
|
17066
17066
|
}), { success: !0 };
|
17067
17067
|
} catch {
|
@@ -17085,7 +17085,7 @@ class tC {
|
|
17085
17085
|
loadDevices = async () => {
|
17086
17086
|
try {
|
17087
17087
|
const n = await this.api.getDevices();
|
17088
|
-
|
17088
|
+
ee(() => {
|
17089
17089
|
this.devices = n;
|
17090
17090
|
});
|
17091
17091
|
} catch (n) {
|
@@ -17095,7 +17095,7 @@ class tC {
|
|
17095
17095
|
loadNotificationProfiles = async () => {
|
17096
17096
|
try {
|
17097
17097
|
const n = await this.api.getNotificationProfiles();
|
17098
|
-
|
17098
|
+
ee(() => {
|
17099
17099
|
this.notificationProfiles = n;
|
17100
17100
|
});
|
17101
17101
|
} catch (n) {
|
@@ -17105,7 +17105,7 @@ class tC {
|
|
17105
17105
|
loadTransactionRules = async () => {
|
17106
17106
|
try {
|
17107
17107
|
const n = await this.transactionApi.getTransactionRules();
|
17108
|
-
|
17108
|
+
ee(() => {
|
17109
17109
|
this.transactionRules = n;
|
17110
17110
|
});
|
17111
17111
|
} catch (n) {
|
@@ -17133,7 +17133,7 @@ class tC {
|
|
17133
17133
|
updateDevice = async (n) => {
|
17134
17134
|
try {
|
17135
17135
|
const i = await this.api.updateDevice(n), a = this.devices.findIndex((o) => o.guid === n.guid);
|
17136
|
-
return a >= 0 &&
|
17136
|
+
return a >= 0 && ee(() => {
|
17137
17137
|
this.devices[a] = i;
|
17138
17138
|
}), { success: !0 };
|
17139
17139
|
} catch (i) {
|
@@ -17143,7 +17143,7 @@ class tC {
|
|
17143
17143
|
updateNotificationProfile = async (n) => {
|
17144
17144
|
try {
|
17145
17145
|
const i = await this.api.updateNotificationProfile(n), a = this.notificationProfiles.findIndex((o) => o.guid === n.guid);
|
17146
|
-
a >= 0 &&
|
17146
|
+
a >= 0 && ee(() => {
|
17147
17147
|
this.notificationProfiles[a] = i;
|
17148
17148
|
});
|
17149
17149
|
} catch (i) {
|
@@ -17197,7 +17197,7 @@ const ml = x(() => {
|
|
17197
17197
|
return /* @__PURE__ */ d(g.Fragment, { children: [
|
17198
17198
|
/* @__PURE__ */ d(te, { onClick: l, sx: { height: "auto", p: 4, width: "fit-content" }, children: [
|
17199
17199
|
/* @__PURE__ */ t(C, { variant: "Small", children: n.verify_email }),
|
17200
|
-
/* @__PURE__ */ t(
|
17200
|
+
/* @__PURE__ */ t(je, {})
|
17201
17201
|
] }),
|
17202
17202
|
/* @__PURE__ */ t(
|
17203
17203
|
Be,
|
@@ -17279,7 +17279,7 @@ const ml = x(() => {
|
|
17279
17279
|
return /* @__PURE__ */ d(g.Fragment, { children: [
|
17280
17280
|
/* @__PURE__ */ d(te, { onClick: h, sx: { height: "auto", p: 4, width: "fit-content" }, children: [
|
17281
17281
|
/* @__PURE__ */ t(C, { variant: "Small", children: n.verify_phone }),
|
17282
|
-
/* @__PURE__ */ t(
|
17282
|
+
/* @__PURE__ */ t(je, {})
|
17283
17283
|
] }),
|
17284
17284
|
/* @__PURE__ */ t(
|
17285
17285
|
Be,
|
@@ -17328,7 +17328,7 @@ const ml = x(() => {
|
|
17328
17328
|
)
|
17329
17329
|
] });
|
17330
17330
|
}), iC = ({ availableWidth: e, handleOnLeavClick: n }) => {
|
17331
|
-
const i =
|
17331
|
+
const i = Xe(), { common: a, settings: o } = A(), { isDesktop: r, isMobile: s, isSmallMobile: c, isTablet: l } = Ce(e), { config: u } = vt(), { updateUser: _ } = yt(), { user: h } = ft(), [m, p] = g.useState({
|
17332
17332
|
first_name: h.first_name,
|
17333
17333
|
last_name: h.last_name,
|
17334
17334
|
email: h.email,
|
@@ -17349,8 +17349,8 @@ const ml = x(() => {
|
|
17349
17349
|
}, [f]);
|
17350
17350
|
const N = () => {
|
17351
17351
|
if (m.birthday) {
|
17352
|
-
const L = new Date(m.birthday * 1e3), W = L.getUTCFullYear(), Y = L.getUTCMonth(),
|
17353
|
-
return new Date(W, Y,
|
17352
|
+
const L = new Date(m.birthday * 1e3), W = L.getUTCFullYear(), Y = L.getUTCMonth(), J = L.getUTCDate();
|
17353
|
+
return new Date(W, Y, J);
|
17354
17354
|
}
|
17355
17355
|
}, R = async () => {
|
17356
17356
|
await _({ ...h, ...m }), S(!1);
|
@@ -17380,7 +17380,7 @@ const ml = x(() => {
|
|
17380
17380
|
}
|
17381
17381
|
},
|
17382
17382
|
children: [
|
17383
|
-
/* @__PURE__ */ t(
|
17383
|
+
/* @__PURE__ */ t(qe, { children: o.personal_details }),
|
17384
17384
|
/* @__PURE__ */ t(X, { variant: "Body", children: o.update_information }),
|
17385
17385
|
/* @__PURE__ */ d(
|
17386
17386
|
b,
|
@@ -17550,7 +17550,7 @@ const oC = ({
|
|
17550
17550
|
field: "created_at",
|
17551
17551
|
headerName: o.mobile_devices_column_added,
|
17552
17552
|
renderHeader: zt,
|
17553
|
-
valueFormatter: (c) => rc(
|
17553
|
+
valueFormatter: (c) => rc(Ke(c), { addSuffix: !0 }),
|
17554
17554
|
sortable: !0,
|
17555
17555
|
hideSortIcons: !1,
|
17556
17556
|
flex: 1,
|
@@ -17654,7 +17654,7 @@ const oC = ({
|
|
17654
17654
|
children: /* @__PURE__ */ d(b, { gap: 4, children: [
|
17655
17655
|
/* @__PURE__ */ t(C, { bold: !0, variant: "Body", children: l.name }),
|
17656
17656
|
/* @__PURE__ */ t(C, { color: a.palette.text.secondary, variant: "Small", children: `${l.make} ${l.model}` }),
|
17657
|
-
/* @__PURE__ */ t(C, { color: a.palette.text.secondary, variant: "Small", children: rc(
|
17657
|
+
/* @__PURE__ */ t(C, { color: a.palette.text.secondary, variant: "Small", children: rc(Ke(l.created_at), { addSuffix: !0 }) })
|
17658
17658
|
] })
|
17659
17659
|
}
|
17660
17660
|
),
|
@@ -17864,7 +17864,7 @@ const oC = ({
|
|
17864
17864
|
},
|
17865
17865
|
children: [
|
17866
17866
|
/* @__PURE__ */ d(b, { gap: 4, children: [
|
17867
|
-
/* @__PURE__ */ t(
|
17867
|
+
/* @__PURE__ */ t(qe, { children: n.mobile_devices_title }),
|
17868
17868
|
/* @__PURE__ */ t(X, { variant: "Body", children: n.mobile_devices_info })
|
17869
17869
|
] }),
|
17870
17870
|
e ? /* @__PURE__ */ t(
|
@@ -18062,7 +18062,7 @@ const oC = ({
|
|
18062
18062
|
n().finally();
|
18063
18063
|
}, []), /* @__PURE__ */ d(b, { sx: { gap: 24, py: 24 }, children: [
|
18064
18064
|
/* @__PURE__ */ d(b, { sx: { px: 24 }, children: [
|
18065
|
-
/* @__PURE__ */ t(
|
18065
|
+
/* @__PURE__ */ t(qe, { children: e.transaction_rules_label }),
|
18066
18066
|
/* @__PURE__ */ t(X, { variant: "Body", children: e.transaction_rules_description })
|
18067
18067
|
] }),
|
18068
18068
|
/* @__PURE__ */ t(ae, { children: i.map((a, o) => /* @__PURE__ */ t(gC, { rule: a }, o)) })
|
@@ -18088,7 +18088,7 @@ const oC = ({
|
|
18088
18088
|
institutionGuid: n.account?.institution_guid
|
18089
18089
|
}
|
18090
18090
|
) : void 0,
|
18091
|
-
endIcon: /* @__PURE__ */ t(
|
18091
|
+
endIcon: /* @__PURE__ */ t(je, {}),
|
18092
18092
|
isChecked: n.is_enabled,
|
18093
18093
|
onClick: () => l(!0),
|
18094
18094
|
onToggle: () => e({
|
@@ -18114,8 +18114,8 @@ const oC = ({
|
|
18114
18114
|
children: s ? /* @__PURE__ */ t(gi, { dateAdapter: Jn, children: /* @__PURE__ */ t(
|
18115
18115
|
bo,
|
18116
18116
|
{
|
18117
|
-
maxDate:
|
18118
|
-
minDate:
|
18117
|
+
maxDate: Ye(/* @__PURE__ */ new Date()),
|
18118
|
+
minDate: Ve(/* @__PURE__ */ new Date()),
|
18119
18119
|
onChange: (E) => {
|
18120
18120
|
m(E.getDate());
|
18121
18121
|
},
|
@@ -18229,7 +18229,7 @@ const oC = ({
|
|
18229
18229
|
e.filter((c) => c.children && c.children.length > 0).map((c) => /* @__PURE__ */ t(
|
18230
18230
|
Lo,
|
18231
18231
|
{
|
18232
|
-
endIcon: /* @__PURE__ */ t(
|
18232
|
+
endIcon: /* @__PURE__ */ t(je, {}),
|
18233
18233
|
isChecked: c.is_enabled,
|
18234
18234
|
isDisabled: !c.is_enabled,
|
18235
18235
|
onClick: () => a(c.guid),
|
@@ -18354,7 +18354,7 @@ const oC = ({
|
|
18354
18354
|
await a(u);
|
18355
18355
|
};
|
18356
18356
|
return /* @__PURE__ */ d(b, { children: [
|
18357
|
-
/* @__PURE__ */ t(
|
18357
|
+
/* @__PURE__ */ t(qe, { sx: { mt: 24 }, children: n.delivery_method_title }),
|
18358
18358
|
i.email_notifications_enabled && /* @__PURE__ */ d(Z, { children: [
|
18359
18359
|
/* @__PURE__ */ t(
|
18360
18360
|
Rn,
|
@@ -18419,7 +18419,7 @@ const oC = ({
|
|
18419
18419
|
return /* @__PURE__ */ d(b, { ref: n, children: [
|
18420
18420
|
/* @__PURE__ */ t(P, {}),
|
18421
18421
|
/* @__PURE__ */ d(b, { sx: { pt: 12 }, children: [
|
18422
|
-
/* @__PURE__ */ t(
|
18422
|
+
/* @__PURE__ */ t(qe, { sx: { lineHeight: "20px", pb: 4, pt: 16 }, children: o.personal_details }),
|
18423
18423
|
/* @__PURE__ */ d(b, { sx: { flexDirection: i <= 768 ? "column" : "row", gap: 24, py: 16 }, children: [
|
18424
18424
|
e.display_email_edit_field_in_settings && /* @__PURE__ */ d(b, { sx: { flex: 1, pb: 14 }, children: [
|
18425
18425
|
/* @__PURE__ */ t(
|
@@ -18521,20 +18521,20 @@ const oC = ({
|
|
18521
18521
|
/* @__PURE__ */ t(fC, {}),
|
18522
18522
|
/* @__PURE__ */ t(P, { sx: { my: 24 } })
|
18523
18523
|
] }),
|
18524
|
-
/* @__PURE__ */ t(
|
18524
|
+
/* @__PURE__ */ t(qe, { sx: { mb: 4 }, children: o.notification_types_title })
|
18525
18525
|
] }),
|
18526
18526
|
/* @__PURE__ */ d(ae, { children: [
|
18527
18527
|
e.includes(Mt.Accounts) && /* @__PURE__ */ t(j, { children: /* @__PURE__ */ d(ge, { onClick: () => u(Mt.Accounts), children: [
|
18528
18528
|
/* @__PURE__ */ t(oe, { primary: o.accounts_title, secondary: o.accounts_subtitle }),
|
18529
|
-
/* @__PURE__ */ t(
|
18529
|
+
/* @__PURE__ */ t(je, {})
|
18530
18530
|
] }) }),
|
18531
18531
|
e.includes(Mt.Budgets) && /* @__PURE__ */ t(j, { children: /* @__PURE__ */ d(ge, { onClick: () => u(Mt.Budgets), children: [
|
18532
18532
|
/* @__PURE__ */ t(oe, { primary: o.budgets_title, secondary: o.budgets_subtitle }),
|
18533
|
-
/* @__PURE__ */ t(
|
18533
|
+
/* @__PURE__ */ t(je, {})
|
18534
18534
|
] }) }),
|
18535
18535
|
e.includes(Mt.Insights) && /* @__PURE__ */ t(j, { children: /* @__PURE__ */ d(ge, { onClick: () => u(Mt.Insights), children: [
|
18536
18536
|
/* @__PURE__ */ t(oe, { primary: o.insights_title, secondary: o.insights_subtitle }),
|
18537
|
-
/* @__PURE__ */ t(
|
18537
|
+
/* @__PURE__ */ t(je, {})
|
18538
18538
|
] }) })
|
18539
18539
|
] }),
|
18540
18540
|
y && /* @__PURE__ */ t(b, { sx: { px: 24 }, children: /* @__PURE__ */ t(bC, {}) }),
|
@@ -18575,7 +18575,7 @@ const oC = ({
|
|
18575
18575
|
},
|
18576
18576
|
children: [
|
18577
18577
|
/* @__PURE__ */ d(b, { children: [
|
18578
|
-
/* @__PURE__ */ t(
|
18578
|
+
/* @__PURE__ */ t(qe, { children: o }),
|
18579
18579
|
/* @__PURE__ */ t(X, { variant: "Body", children: a })
|
18580
18580
|
] }),
|
18581
18581
|
n && /* @__PURE__ */ t(
|
@@ -18670,7 +18670,7 @@ const oC = ({
|
|
18670
18670
|
imageLargeBreakPoint: o = 12,
|
18671
18671
|
sx: r
|
18672
18672
|
}) => {
|
18673
|
-
const s =
|
18673
|
+
const s = Xe();
|
18674
18674
|
return /* @__PURE__ */ d(g.Fragment, { children: [
|
18675
18675
|
/* @__PURE__ */ t(O, { sx: { pb: 48, ...r }, children: /* @__PURE__ */ d(_t, { container: !0, rowSpacing: 24, children: [
|
18676
18676
|
/* @__PURE__ */ t(_t, { item: !0, lg: 12, md: 12, sm: 12, xs: 12, children: n }),
|
@@ -18714,7 +18714,7 @@ const oC = ({
|
|
18714
18714
|
return /* @__PURE__ */ d(g.Fragment, { children: [
|
18715
18715
|
/* @__PURE__ */ d(_t, { container: !0, sx: { alignItems: "center", justifyContent: "space-between" }, children: [
|
18716
18716
|
/* @__PURE__ */ d(_t, { item: !0, sm: 6, xs: 12, children: [
|
18717
|
-
/* @__PURE__ */ t(
|
18717
|
+
/* @__PURE__ */ t(qe, { color: "text.primary", children: o }),
|
18718
18718
|
/* @__PURE__ */ d(
|
18719
18719
|
c_,
|
18720
18720
|
{
|
@@ -18761,7 +18761,7 @@ const oC = ({
|
|
18761
18761
|
imageLargeBreakPoint: o = 4,
|
18762
18762
|
sx: r
|
18763
18763
|
}) => {
|
18764
|
-
const s =
|
18764
|
+
const s = Xe();
|
18765
18765
|
return /* @__PURE__ */ d(g.Fragment, { children: [
|
18766
18766
|
/* @__PURE__ */ t(O, { sx: { pb: 48, ...r }, children: /* @__PURE__ */ d(_t, { container: !0, spacing: 24, sx: { alignItems: "flex-start" }, children: [
|
18767
18767
|
/* @__PURE__ */ t(
|
@@ -18808,7 +18808,7 @@ const oC = ({
|
|
18808
18808
|
imageLargeBreakPoint: o = 4,
|
18809
18809
|
sx: r
|
18810
18810
|
}) => {
|
18811
|
-
const s =
|
18811
|
+
const s = Xe();
|
18812
18812
|
return /* @__PURE__ */ d(g.Fragment, { children: [
|
18813
18813
|
/* @__PURE__ */ t(O, { sx: { pb: 48, ...r }, children: /* @__PURE__ */ d(_t, { container: !0, spacing: 24, sx: { alignItems: "flex-start" }, children: [
|
18814
18814
|
/* @__PURE__ */ t(_t, { item: !0, lg: 12 - o, md: 12, sm: 12, xs: 12, children: n }),
|
@@ -18846,7 +18846,7 @@ const oC = ({
|
|
18846
18846
|
imageLargeBreakPoint: o = 12,
|
18847
18847
|
sx: r
|
18848
18848
|
}) => {
|
18849
|
-
const s =
|
18849
|
+
const s = Xe();
|
18850
18850
|
return /* @__PURE__ */ d(g.Fragment, { children: [
|
18851
18851
|
/* @__PURE__ */ t(O, { sx: { pb: 48, ...r }, children: /* @__PURE__ */ d(_t, { container: !0, rowSpacing: 24, children: [
|
18852
18852
|
/* @__PURE__ */ t(
|
@@ -18878,7 +18878,7 @@ const oC = ({
|
|
18878
18878
|
] }) }),
|
18879
18879
|
i && /* @__PURE__ */ t(P, {})
|
18880
18880
|
] });
|
18881
|
-
}, U = ({ content: e, sx: n }) => /* @__PURE__ */ t(X, { sx: { lineHeight: "24px", py: 6, ...n }, children: e }),
|
18881
|
+
}, U = ({ content: e, sx: n }) => /* @__PURE__ */ t(X, { sx: { lineHeight: "24px", py: 6, ...n }, children: e }), xe = ({ content: e, sx: n }) => /* @__PURE__ */ t(qe, { color: "text.primary", sx: { py: 12, whiteSpace: { sm: "nowrap", xs: "wrap" }, ...n }, children: e }), ne = ({
|
18882
18882
|
items: e,
|
18883
18883
|
listType: n = "ul",
|
18884
18884
|
subItemPlacement: i,
|
@@ -18890,49 +18890,49 @@ const oC = ({
|
|
18890
18890
|
/* @__PURE__ */ t(U, { content: c, sx: { py: 1 } }),
|
18891
18891
|
i === l ? /* @__PURE__ */ t(s, { ...o === "ol" && { type: "a" }, children: a.map((u, _) => /* @__PURE__ */ t("li", { children: /* @__PURE__ */ t(U, { content: u, sx: { py: 1 } }) }, _)) }) : null
|
18892
18892
|
] }, l)) }) });
|
18893
|
-
},
|
18894
|
-
ACCOUNT_DETAILS: `${
|
18895
|
-
ACCOUNT_OVERVIEW: `${
|
18896
|
-
ACCOUNT_ADD: `${
|
18897
|
-
ACCOUNT_BROKEN_CONNECTION: `${
|
18898
|
-
ACCOUNT_HIDE: `${
|
18899
|
-
ACCOUNT_MANAGE_CONNECTIONS: `${
|
18900
|
-
BUDGETS_ADD_SUB_BUDGET: `${
|
18901
|
-
BUDGETS_WIDGET: `${
|
18902
|
-
BUDGETS_EDIT_INCOME: `${
|
18903
|
-
CASHFLOW_WIDGET: `${
|
18904
|
-
CASHFLOW_EXPENSE_DETAILS: `${
|
18905
|
-
CASHFLOW_MANAGE_EXPENSES: `${
|
18906
|
-
DEBTS_DETAILS: `${
|
18907
|
-
DEBTS_OVERVIEW: `${
|
18908
|
-
DEBTS_PRIORITIZATION: `${
|
18909
|
-
DEBTS_SNOWBALL_METHOD: `${
|
18910
|
-
GENERAL_CATEGORIZE_TRANSACTIONS: `${
|
18911
|
-
GOALS_CREATE_GOAL: `${
|
18912
|
-
GOALS_DEBT_GOALS: `${
|
18913
|
-
GOALS_WIDGET_OVERVIEW: `${
|
18914
|
-
GOALS_MANAGE_GOALS: `${
|
18915
|
-
GOALS_RETIREMENT_GOALS: `${
|
18916
|
-
GOALS_SAVINGS_GOALS: `${
|
18917
|
-
INSIGHTS_CAROUSEL: `${
|
18918
|
-
INSIGHTS_FEED: `${
|
18919
|
-
INVESTMENTS_WIDGET_DETAILS: `${
|
18920
|
-
MOBILE_ADD_MOBILE_DEVICE: `${
|
18921
|
-
NETWORTH_ASSETS_LIABILITIES: `${
|
18922
|
-
NETWORTH_GAINS_LOSSES: `${
|
18923
|
-
NETWORTH_WIDGET: `${
|
18924
|
-
NOTIFICATIONS_MANAGING: `${
|
18925
|
-
NOTIFICATIONS_OVERVIEW: `${
|
18926
|
-
RECURRING_TRANSACTIONS_EXPENSE_DETAILS: `${
|
18927
|
-
RECURRING_TRANSACTIONS_MANAGE_EXPENSES: `${
|
18928
|
-
RECURRING_TRANSACTIONS_OVERVIEW: `${
|
18929
|
-
SPENDING_WIDGET: `${
|
18930
|
-
TRANSACTIONS_CATEGORIZE: `${
|
18931
|
-
TRANSACTIONS_EDIT: `${
|
18932
|
-
TRANSACTIONS_EXPORT: `${
|
18933
|
-
TRANSACTIONS_OVERVIEW: `${
|
18934
|
-
TRANSACTIONS_RULES: `${
|
18935
|
-
TRENDS_WIDGET: `${
|
18893
|
+
}, Ie = "https://content.moneydesktop.com/storage/MD_Assets/md/help", Oe = {
|
18894
|
+
ACCOUNT_DETAILS: `${Ie}/account/AccountDetails.png`,
|
18895
|
+
ACCOUNT_OVERVIEW: `${Ie}/account/AccountsOverview.png`,
|
18896
|
+
ACCOUNT_ADD: `${Ie}/account/AddAccount.png`,
|
18897
|
+
ACCOUNT_BROKEN_CONNECTION: `${Ie}/account/BrokenConnection.png`,
|
18898
|
+
ACCOUNT_HIDE: `${Ie}/account/AccountHide.png`,
|
18899
|
+
ACCOUNT_MANAGE_CONNECTIONS: `${Ie}/account/ManageConnections.png`,
|
18900
|
+
BUDGETS_ADD_SUB_BUDGET: `${Ie}/budgets/AddSubBudget.png`,
|
18901
|
+
BUDGETS_WIDGET: `${Ie}/budgets/BudgetWidget.png`,
|
18902
|
+
BUDGETS_EDIT_INCOME: `${Ie}/budgets/EditIncome.png`,
|
18903
|
+
CASHFLOW_WIDGET: `${Ie}/cashflow/CashFlowWidget.png`,
|
18904
|
+
CASHFLOW_EXPENSE_DETAILS: `${Ie}/cashflow/ExpenseDetailsCurrent.png`,
|
18905
|
+
CASHFLOW_MANAGE_EXPENSES: `${Ie}/cashflow/ManageExpenses.png`,
|
18906
|
+
DEBTS_DETAILS: `${Ie}/debts/DebtDetails.png`,
|
18907
|
+
DEBTS_OVERVIEW: `${Ie}/debts/DebtOverview.png`,
|
18908
|
+
DEBTS_PRIORITIZATION: `${Ie}/debts/DebtPrioritization.png`,
|
18909
|
+
DEBTS_SNOWBALL_METHOD: `${Ie}/debts/SnowballMethod.png`,
|
18910
|
+
GENERAL_CATEGORIZE_TRANSACTIONS: `${Ie}/general/CategorizeTransactions.png`,
|
18911
|
+
GOALS_CREATE_GOAL: `${Ie}/goals/CreateGoal.png`,
|
18912
|
+
GOALS_DEBT_GOALS: `${Ie}/goals/DebtGoals.png`,
|
18913
|
+
GOALS_WIDGET_OVERVIEW: `${Ie}/goals/GoalsWidgetOverview.png`,
|
18914
|
+
GOALS_MANAGE_GOALS: `${Ie}/goals/ManageGoals.png`,
|
18915
|
+
GOALS_RETIREMENT_GOALS: `${Ie}/goals/RetirementGoals.png`,
|
18916
|
+
GOALS_SAVINGS_GOALS: `${Ie}/goals/SavingsGoals.png`,
|
18917
|
+
INSIGHTS_CAROUSEL: `${Ie}/insights/InsightsCarousel.png`,
|
18918
|
+
INSIGHTS_FEED: `${Ie}/insights/InsightsFeed.png`,
|
18919
|
+
INVESTMENTS_WIDGET_DETAILS: `${Ie}/investments/WidgetDetails.png`,
|
18920
|
+
MOBILE_ADD_MOBILE_DEVICE: `${Ie}/mobile/AddMobileDevice.png`,
|
18921
|
+
NETWORTH_ASSETS_LIABILITIES: `${Ie}/networth/AssetsLiabilities.png`,
|
18922
|
+
NETWORTH_GAINS_LOSSES: `${Ie}/networth/GainsLosses.png`,
|
18923
|
+
NETWORTH_WIDGET: `${Ie}/networth/NetWorthWidget.png`,
|
18924
|
+
NOTIFICATIONS_MANAGING: `${Ie}/notifications/ManagingNotifications.png`,
|
18925
|
+
NOTIFICATIONS_OVERVIEW: `${Ie}/notifications/NotificationOverview.png`,
|
18926
|
+
RECURRING_TRANSACTIONS_EXPENSE_DETAILS: `${Ie}/recurringtransactions/expenseDetails.png`,
|
18927
|
+
RECURRING_TRANSACTIONS_MANAGE_EXPENSES: `${Ie}/recurringtransactions/manageExpenses.png`,
|
18928
|
+
RECURRING_TRANSACTIONS_OVERVIEW: `${Ie}/recurringtransactions/overview.png`,
|
18929
|
+
SPENDING_WIDGET: `${Ie}/spending/SpendingWidget.png`,
|
18930
|
+
TRANSACTIONS_CATEGORIZE: `${Ie}/transactions/CategorizeTransactions.png`,
|
18931
|
+
TRANSACTIONS_EDIT: `${Ie}/transactions/EditTransactions.png`,
|
18932
|
+
TRANSACTIONS_EXPORT: `${Ie}/transactions/ExportTransactions.png`,
|
18933
|
+
TRANSACTIONS_OVERVIEW: `${Ie}/transactions/Overview.png`,
|
18934
|
+
TRANSACTIONS_RULES: `${Ie}/transactions/TransactionRules.png`,
|
18935
|
+
TRENDS_WIDGET: `${Ie}/trends/TrendsWidget.png`
|
18936
18936
|
}, EC = ({ copy: e, topicKey: n }) => ({
|
18937
18937
|
"accounts-overview": /* @__PURE__ */ d(g.Fragment, { children: [
|
18938
18938
|
/* @__PURE__ */ t(
|
@@ -18956,7 +18956,7 @@ const oC = ({
|
|
18956
18956
|
imageLargeBreakPoint: 5
|
18957
18957
|
}
|
18958
18958
|
),
|
18959
|
-
/* @__PURE__ */ t(
|
18959
|
+
/* @__PURE__ */ t(xe, { content: e.accounts_overview.edit_account_title, sx: { pt: 48 } }),
|
18960
18960
|
/* @__PURE__ */ t(
|
18961
18961
|
Bt,
|
18962
18962
|
{
|
@@ -18991,7 +18991,7 @@ const oC = ({
|
|
18991
18991
|
imageLargeBreakPoint: 3
|
18992
18992
|
}
|
18993
18993
|
),
|
18994
|
-
/* @__PURE__ */ t(
|
18994
|
+
/* @__PURE__ */ t(xe, { content: e.accounts_overview.add_account_title, sx: { pt: 48 } }),
|
18995
18995
|
/* @__PURE__ */ t(
|
18996
18996
|
ln,
|
18997
18997
|
{
|
@@ -19031,7 +19031,7 @@ const oC = ({
|
|
19031
19031
|
)
|
19032
19032
|
}
|
19033
19033
|
),
|
19034
|
-
/* @__PURE__ */ t(
|
19034
|
+
/* @__PURE__ */ t(xe, { content: e.accounts_overview.hide_account_title }),
|
19035
19035
|
/* @__PURE__ */ t(
|
19036
19036
|
ne,
|
19037
19037
|
{
|
@@ -19048,7 +19048,7 @@ const oC = ({
|
|
19048
19048
|
listType: "ol"
|
19049
19049
|
}
|
19050
19050
|
),
|
19051
|
-
/* @__PURE__ */ t(
|
19051
|
+
/* @__PURE__ */ t(xe, { content: e.accounts_overview.unhide_account_title }),
|
19052
19052
|
/* @__PURE__ */ t(
|
19053
19053
|
ne,
|
19054
19054
|
{
|
@@ -19144,8 +19144,8 @@ const oC = ({
|
|
19144
19144
|
at,
|
19145
19145
|
{
|
19146
19146
|
content: /* @__PURE__ */ d(g.Fragment, { children: [
|
19147
|
-
/* @__PURE__ */ t(
|
19148
|
-
/* @__PURE__ */ t(
|
19147
|
+
/* @__PURE__ */ t(xe, { content: e.seeing_duplicate_accounts.warning_title }),
|
19148
|
+
/* @__PURE__ */ t(xe, { content: e.seeing_duplicate_accounts.instructions_title }),
|
19149
19149
|
/* @__PURE__ */ t(
|
19150
19150
|
ne,
|
19151
19151
|
{
|
@@ -19199,7 +19199,7 @@ const oC = ({
|
|
19199
19199
|
image: Oe.BUDGETS_WIDGET
|
19200
19200
|
}
|
19201
19201
|
),
|
19202
|
-
/* @__PURE__ */ t(
|
19202
|
+
/* @__PURE__ */ t(xe, { content: i.adjusting_income_title, sx: { pt: 48 } }),
|
19203
19203
|
/* @__PURE__ */ t(
|
19204
19204
|
Bt,
|
19205
19205
|
{
|
@@ -19226,7 +19226,7 @@ const oC = ({
|
|
19226
19226
|
image: Oe.BUDGETS_EDIT_INCOME
|
19227
19227
|
}
|
19228
19228
|
),
|
19229
|
-
/* @__PURE__ */ t(
|
19229
|
+
/* @__PURE__ */ t(xe, { content: i.create_budget_title, sx: { pt: 48 } }),
|
19230
19230
|
/* @__PURE__ */ t(
|
19231
19231
|
on,
|
19232
19232
|
{
|
@@ -19304,7 +19304,7 @@ const oC = ({
|
|
19304
19304
|
}
|
19305
19305
|
),
|
19306
19306
|
/* @__PURE__ */ t(
|
19307
|
-
|
19307
|
+
xe,
|
19308
19308
|
{
|
19309
19309
|
content: e.cashflow_overview.manage_expenses_section_title,
|
19310
19310
|
sx: { pt: 48 }
|
@@ -19544,19 +19544,19 @@ const oC = ({
|
|
19544
19544
|
};
|
19545
19545
|
return /* @__PURE__ */ d(g.Fragment, { children: [
|
19546
19546
|
i.overviewSection,
|
19547
|
-
/* @__PURE__ */ t(
|
19547
|
+
/* @__PURE__ */ t(xe, { content: n.snowball_method_title, sx: { pt: 48 } }),
|
19548
19548
|
i.snowballMethod,
|
19549
|
-
/* @__PURE__ */ t(
|
19549
|
+
/* @__PURE__ */ t(xe, { content: n.debt_prioritization, sx: { pt: 48 } }),
|
19550
19550
|
i.debtPrioritization,
|
19551
|
-
/* @__PURE__ */ t(
|
19551
|
+
/* @__PURE__ */ t(xe, { content: n.debt_chart, sx: { pt: 48 } }),
|
19552
19552
|
i.debtChart,
|
19553
|
-
/* @__PURE__ */ t(
|
19553
|
+
/* @__PURE__ */ t(xe, { content: n.debt_list, sx: { pt: 48 } }),
|
19554
19554
|
i.debtList,
|
19555
|
-
/* @__PURE__ */ t(
|
19555
|
+
/* @__PURE__ */ t(xe, { content: n.debt_details, sx: { pt: 48 } }),
|
19556
19556
|
i.debtDetails,
|
19557
|
-
/* @__PURE__ */ t(
|
19557
|
+
/* @__PURE__ */ t(xe, { content: n.hiding_accounts, sx: { pt: 48 } }),
|
19558
19558
|
i.hidingAccounts,
|
19559
|
-
/* @__PURE__ */ t(
|
19559
|
+
/* @__PURE__ */ t(xe, { content: n.extra_payments, sx: { pt: 48 } }),
|
19560
19560
|
i.extraPayments
|
19561
19561
|
] });
|
19562
19562
|
}, IC = ({ topicKey: e, copy: n }) => {
|
@@ -19719,7 +19719,7 @@ const oC = ({
|
|
19719
19719
|
at,
|
19720
19720
|
{
|
19721
19721
|
content: /* @__PURE__ */ d(g.Fragment, { children: [
|
19722
|
-
/* @__PURE__ */ t(
|
19722
|
+
/* @__PURE__ */ t(xe, { content: n.setting_goals_section_title }),
|
19723
19723
|
/* @__PURE__ */ t(U, { content: `${n.setting_goals_title_text}:` }),
|
19724
19724
|
/* @__PURE__ */ t(
|
19725
19725
|
ne,
|
@@ -19744,7 +19744,7 @@ const oC = ({
|
|
19744
19744
|
hasDivider: !0
|
19745
19745
|
}
|
19746
19746
|
),
|
19747
|
-
/* @__PURE__ */ t(
|
19747
|
+
/* @__PURE__ */ t(xe, { content: n.create_goal_section_title, sx: { pt: 48 } }),
|
19748
19748
|
/* @__PURE__ */ t(
|
19749
19749
|
ln,
|
19750
19750
|
{
|
@@ -19778,7 +19778,7 @@ const oC = ({
|
|
19778
19778
|
imageLargeBreakPoint: 10
|
19779
19779
|
}
|
19780
19780
|
),
|
19781
|
-
/* @__PURE__ */ t(
|
19781
|
+
/* @__PURE__ */ t(xe, { content: n.savings_goal_section_title, sx: { pt: 48 } }),
|
19782
19782
|
/* @__PURE__ */ t(
|
19783
19783
|
Bt,
|
19784
19784
|
{
|
@@ -19802,7 +19802,7 @@ const oC = ({
|
|
19802
19802
|
imageLargeBreakPoint: 3
|
19803
19803
|
}
|
19804
19804
|
),
|
19805
|
-
/* @__PURE__ */ t(
|
19805
|
+
/* @__PURE__ */ t(xe, { content: n.debt_payoff_goal_section_title, sx: { pt: 48 } }),
|
19806
19806
|
/* @__PURE__ */ t(
|
19807
19807
|
Bt,
|
19808
19808
|
{
|
@@ -19828,7 +19828,7 @@ const oC = ({
|
|
19828
19828
|
imageLargeBreakPoint: 3
|
19829
19829
|
}
|
19830
19830
|
),
|
19831
|
-
/* @__PURE__ */ t(
|
19831
|
+
/* @__PURE__ */ t(xe, { content: n.retirement_goal_section_title, sx: { pt: 48 } }),
|
19832
19832
|
/* @__PURE__ */ t(
|
19833
19833
|
Bt,
|
19834
19834
|
{
|
@@ -19856,7 +19856,7 @@ const oC = ({
|
|
19856
19856
|
}
|
19857
19857
|
),
|
19858
19858
|
/* @__PURE__ */ t(
|
19859
|
-
|
19859
|
+
xe,
|
19860
19860
|
{
|
19861
19861
|
content: n.adjusting_contribution_priorities_section_title,
|
19862
19862
|
sx: { pt: 48 }
|
@@ -19998,7 +19998,7 @@ const oC = ({
|
|
19998
19998
|
}
|
19999
19999
|
),
|
20000
20000
|
/* @__PURE__ */ t(
|
20001
|
-
|
20001
|
+
xe,
|
20002
20002
|
{
|
20003
20003
|
content: n.preventing_app_crashes_section_title,
|
20004
20004
|
sx: { pt: 48 }
|
@@ -20057,7 +20057,7 @@ const oC = ({
|
|
20057
20057
|
{
|
20058
20058
|
content: /* @__PURE__ */ d(g.Fragment, { children: [
|
20059
20059
|
/* @__PURE__ */ t(
|
20060
|
-
|
20060
|
+
xe,
|
20061
20061
|
{
|
20062
20062
|
content: i.net_worth_history_section_title,
|
20063
20063
|
sx: { pt: 48 }
|
@@ -20076,7 +20076,7 @@ const oC = ({
|
|
20076
20076
|
] })
|
20077
20077
|
}
|
20078
20078
|
),
|
20079
|
-
/* @__PURE__ */ t(
|
20079
|
+
/* @__PURE__ */ t(xe, { content: i.gains_losses_section_title, sx: { mt: 36 } }),
|
20080
20080
|
/* @__PURE__ */ t(
|
20081
20081
|
Bt,
|
20082
20082
|
{
|
@@ -20112,7 +20112,7 @@ const oC = ({
|
|
20112
20112
|
}
|
20113
20113
|
),
|
20114
20114
|
/* @__PURE__ */ t(
|
20115
|
-
|
20115
|
+
xe,
|
20116
20116
|
{
|
20117
20117
|
content: i.assets_liabilities_section_title,
|
20118
20118
|
sx: { mt: 36 }
|
@@ -20181,7 +20181,7 @@ const oC = ({
|
|
20181
20181
|
}
|
20182
20182
|
),
|
20183
20183
|
/* @__PURE__ */ t(
|
20184
|
-
|
20184
|
+
xe,
|
20185
20185
|
{
|
20186
20186
|
content: e.notifications_overview.managing_notifications_section_title,
|
20187
20187
|
sx: { pt: 48 }
|
@@ -20218,7 +20218,7 @@ const oC = ({
|
|
20218
20218
|
at,
|
20219
20219
|
{
|
20220
20220
|
content: /* @__PURE__ */ d(g.Fragment, { children: [
|
20221
|
-
/* @__PURE__ */ t(
|
20221
|
+
/* @__PURE__ */ t(xe, { content: e.notifications_overview.notification_work_section_title }),
|
20222
20222
|
/* @__PURE__ */ t(
|
20223
20223
|
ne,
|
20224
20224
|
{
|
@@ -20250,7 +20250,7 @@ const oC = ({
|
|
20250
20250
|
at,
|
20251
20251
|
{
|
20252
20252
|
content: /* @__PURE__ */ d(g.Fragment, { children: [
|
20253
|
-
/* @__PURE__ */ t(
|
20253
|
+
/* @__PURE__ */ t(xe, { content: e.notifications_overview.verify_email_section_title }),
|
20254
20254
|
/* @__PURE__ */ t(
|
20255
20255
|
ne,
|
20256
20256
|
{
|
@@ -20354,11 +20354,11 @@ const oC = ({
|
|
20354
20354
|
};
|
20355
20355
|
return /* @__PURE__ */ d(g.Fragment, { children: [
|
20356
20356
|
i.overviewSsction,
|
20357
|
-
/* @__PURE__ */ t(
|
20357
|
+
/* @__PURE__ */ t(xe, { content: n.calendar_title, sx: { pt: 48 } }),
|
20358
20358
|
i.calendarSection,
|
20359
|
-
/* @__PURE__ */ t(
|
20359
|
+
/* @__PURE__ */ t(xe, { content: n.edit_recurring_transaction_title, sx: { pt: 48 } }),
|
20360
20360
|
i.editSsction,
|
20361
|
-
/* @__PURE__ */ t(
|
20361
|
+
/* @__PURE__ */ t(xe, { content: n.payment_frequency_title, sx: { pt: 48 } }),
|
20362
20362
|
i.paymentFrequencySection
|
20363
20363
|
] });
|
20364
20364
|
}, LC = ({ copy: e, topicKey: n }) => {
|
@@ -20395,7 +20395,7 @@ const oC = ({
|
|
20395
20395
|
at,
|
20396
20396
|
{
|
20397
20397
|
content: /* @__PURE__ */ d(g.Fragment, { children: [
|
20398
|
-
/* @__PURE__ */ t(
|
20398
|
+
/* @__PURE__ */ t(xe, { content: i.date_range_section_title }),
|
20399
20399
|
/* @__PURE__ */ t(U, { content: i.date_range_section }),
|
20400
20400
|
/* @__PURE__ */ t(
|
20401
20401
|
ne,
|
@@ -20497,7 +20497,7 @@ const oC = ({
|
|
20497
20497
|
}
|
20498
20498
|
),
|
20499
20499
|
/* @__PURE__ */ t(
|
20500
|
-
|
20500
|
+
xe,
|
20501
20501
|
{
|
20502
20502
|
content: e.transactions_widget_overview.edit_transactions_title,
|
20503
20503
|
sx: { pt: 48 }
|
@@ -20549,7 +20549,7 @@ const oC = ({
|
|
20549
20549
|
}
|
20550
20550
|
),
|
20551
20551
|
/* @__PURE__ */ t(
|
20552
|
-
|
20552
|
+
xe,
|
20553
20553
|
{
|
20554
20554
|
content: e.transactions_widget_overview.categorizing_transactions_title,
|
20555
20555
|
sx: { pt: 48 }
|
@@ -20592,7 +20592,7 @@ const oC = ({
|
|
20592
20592
|
}
|
20593
20593
|
),
|
20594
20594
|
/* @__PURE__ */ t(
|
20595
|
-
|
20595
|
+
xe,
|
20596
20596
|
{
|
20597
20597
|
content: e.transactions_widget_overview.transaction_rules_title,
|
20598
20598
|
sx: { pt: 48 }
|
@@ -20681,7 +20681,7 @@ const oC = ({
|
|
20681
20681
|
at,
|
20682
20682
|
{
|
20683
20683
|
content: /* @__PURE__ */ d(g.Fragment, { children: [
|
20684
|
-
/* @__PURE__ */ t(
|
20684
|
+
/* @__PURE__ */ t(xe, { content: e.transactions_widget_overview.split_transactions_title }),
|
20685
20685
|
/* @__PURE__ */ t(U, { content: e.transactions_widget_overview.split_transactions_description }),
|
20686
20686
|
/* @__PURE__ */ t(
|
20687
20687
|
U,
|
@@ -20874,7 +20874,7 @@ const oC = ({
|
|
20874
20874
|
at,
|
20875
20875
|
{
|
20876
20876
|
content: /* @__PURE__ */ d(g.Fragment, { children: [
|
20877
|
-
/* @__PURE__ */ t(
|
20877
|
+
/* @__PURE__ */ t(xe, { content: e.trends_widget_overview.exploring_trends_title }),
|
20878
20878
|
/* @__PURE__ */ t(
|
20879
20879
|
ne,
|
20880
20880
|
{
|
@@ -20894,7 +20894,7 @@ const oC = ({
|
|
20894
20894
|
at,
|
20895
20895
|
{
|
20896
20896
|
content: /* @__PURE__ */ d(g.Fragment, { children: [
|
20897
|
-
/* @__PURE__ */ t(
|
20897
|
+
/* @__PURE__ */ t(xe, { content: e.trends_widget_overview.list_view_title }),
|
20898
20898
|
/* @__PURE__ */ t(U, { content: e.trends_widget_overview.list_view_description }),
|
20899
20899
|
/* @__PURE__ */ t(
|
20900
20900
|
ne,
|
@@ -20919,7 +20919,7 @@ const oC = ({
|
|
20919
20919
|
at,
|
20920
20920
|
{
|
20921
20921
|
content: /* @__PURE__ */ d(g.Fragment, { children: [
|
20922
|
-
/* @__PURE__ */ t(
|
20922
|
+
/* @__PURE__ */ t(xe, { content: i.insights_work_section_title }),
|
20923
20923
|
/* @__PURE__ */ t(U, { content: i.insights_work_description }),
|
20924
20924
|
/* @__PURE__ */ t(
|
20925
20925
|
ne,
|
@@ -20950,7 +20950,7 @@ const oC = ({
|
|
20950
20950
|
sx: { pt: 8 }
|
20951
20951
|
}
|
20952
20952
|
),
|
20953
|
-
/* @__PURE__ */ t(
|
20953
|
+
/* @__PURE__ */ t(xe, { content: i.dashboard_insights_section_title, sx: { mt: 48 } }),
|
20954
20954
|
/* @__PURE__ */ t(
|
20955
20955
|
on,
|
20956
20956
|
{
|
@@ -20972,7 +20972,7 @@ const oC = ({
|
|
20972
20972
|
image: Oe.INSIGHTS_CAROUSEL
|
20973
20973
|
}
|
20974
20974
|
),
|
20975
|
-
/* @__PURE__ */ t(
|
20975
|
+
/* @__PURE__ */ t(xe, { content: i.full_feed_section_title, sx: { mt: 48 } }),
|
20976
20976
|
/* @__PURE__ */ t(
|
20977
20977
|
Bt,
|
20978
20978
|
{
|
@@ -21013,7 +21013,7 @@ const oC = ({
|
|
21013
21013
|
imageLargeBreakPoint: 3
|
21014
21014
|
}
|
21015
21015
|
),
|
21016
|
-
/* @__PURE__ */ t(
|
21016
|
+
/* @__PURE__ */ t(xe, { content: i.hide_insights_section_title, sx: { mt: 48 } }),
|
21017
21017
|
/* @__PURE__ */ t(
|
21018
21018
|
at,
|
21019
21019
|
{
|
@@ -21352,7 +21352,7 @@ const oC = ({
|
|
21352
21352
|
secondaryTypographyProps: { variant: "XSmall" }
|
21353
21353
|
}
|
21354
21354
|
),
|
21355
|
-
/* @__PURE__ */ t(gt, { children: /* @__PURE__ */ t(
|
21355
|
+
/* @__PURE__ */ t(gt, { children: /* @__PURE__ */ t(je, {}) })
|
21356
21356
|
] }) }), bl = ({ list: e, onClick: n, sx: i }) => /* @__PURE__ */ t(O, { sx: { bgcolor: "background.paper" }, children: /* @__PURE__ */ t(ae, { sx: { "& .MuiDivider-root:last-child": { ml: 0 } }, children: e.map(({ name: a, guid: o, subtitle: r, type: s }, c) => /* @__PURE__ */ d(g.Fragment, { children: [
|
21357
21357
|
/* @__PURE__ */ t(
|
21358
21358
|
UC,
|
@@ -22020,7 +22020,7 @@ const e0 = (e) => e.reduce((i, a) => {
|
|
22020
22020
|
] });
|
22021
22021
|
}, o0 = (e) => {
|
22022
22022
|
const n = e.row[e.field];
|
22023
|
-
return /* @__PURE__ */ t(b, { alignItems: "flex-end", tabIndex: e.tabIndex, children: /* @__PURE__ */ t(
|
22023
|
+
return /* @__PURE__ */ t(b, { alignItems: "flex-end", tabIndex: e.tabIndex, children: /* @__PURE__ */ t(Ze, { amount: n, variant: "Small" }) });
|
22024
22024
|
}, r0 = ({ categoryGuid: e, topLevelCategoryGuid: n }) => {
|
22025
22025
|
const { categories: i } = A(), a = i.default_categories[e]?.replace(/&/g, "&") ?? ba[e];
|
22026
22026
|
return /* @__PURE__ */ d(b, { alignItems: "center", direction: "row", justifyContent: "center", children: [
|
@@ -22158,7 +22158,7 @@ const e0 = (e) => e.reduce((i, a) => {
|
|
22158
22158
|
}
|
22159
22159
|
);
|
22160
22160
|
}, _0 = x(d0), u0 = ({ onBackClick: e, sx: n }) => {
|
22161
|
-
const { onEvent: i } = q(), { isDesktop: a, isTablet: o, isMobile: r } = Ce(), { visibleAccounts: s } = Se(), { loadMonthlyCategoryTotals: c, monthlyCategoryTotals: l, getCategoryName: u } = Ue(), { sortedTransactions: _ } = ke(), { selectedDateRange: h, setSelectedDateRange: m } = Wi(), { isCopyLoaded: p, isInitialized: f, selectedAccounts: S, setSelectedAccounts: y } = re(), { trends: E } = A(), [I, w] = g.useState(!1), [v, N] = g.useState(!1), [R, M] = g.useState("Chart"), [k, G] = g.useState(""), [L, W] = g.useState(window.innerHeight),
|
22161
|
+
const { onEvent: i } = q(), { isDesktop: a, isTablet: o, isMobile: r } = Ce(), { visibleAccounts: s } = Se(), { loadMonthlyCategoryTotals: c, monthlyCategoryTotals: l, getCategoryName: u } = Ue(), { sortedTransactions: _ } = ke(), { selectedDateRange: h, setSelectedDateRange: m } = Wi(), { isCopyLoaded: p, isInitialized: f, selectedAccounts: S, setSelectedAccounts: y } = re(), { trends: E } = A(), [I, w] = g.useState(!1), [v, N] = g.useState(!1), [R, M] = g.useState("Chart"), [k, G] = g.useState(""), [L, W] = g.useState(window.innerHeight), J = L - (r ? 315 : 345);
|
22162
22162
|
g.useEffect(() => {
|
22163
22163
|
const be = () => W(window.innerHeight);
|
22164
22164
|
return window.addEventListener("resize", be), () => window.removeEventListener("resize", be);
|
@@ -22173,14 +22173,14 @@ const e0 = (e) => e.reduce((i, a) => {
|
|
22173
22173
|
w(!0);
|
22174
22174
|
});
|
22175
22175
|
}, [f, S, h]);
|
22176
|
-
const
|
22176
|
+
const he = g.useMemo(() => {
|
22177
22177
|
if (!I) return { stackedDatasets: [], unstackedDatasets: [] };
|
22178
22178
|
const be = t0(
|
22179
22179
|
l,
|
22180
22180
|
h.start,
|
22181
22181
|
h.end
|
22182
22182
|
), fe = k.length ? be.filter(
|
22183
|
-
(
|
22183
|
+
(we) => we.top_level_category_guid === k || we.category_guid === k
|
22184
22184
|
) : op(be);
|
22185
22185
|
return {
|
22186
22186
|
stackedDatasets: fe.filter(ip),
|
@@ -22189,17 +22189,17 @@ const e0 = (e) => e.reduce((i, a) => {
|
|
22189
22189
|
}, [l, k, h]), _e = (be, fe) => {
|
22190
22190
|
M(fe ?? R), i(F.TRENDS_CLICK_TOGGLE);
|
22191
22191
|
}, Le = (be) => {
|
22192
|
-
const fe = mo(be?.[0], 1),
|
22193
|
-
m({ start: fe, end:
|
22192
|
+
const fe = mo(be?.[0], 1), we = be?.[1], Ge = po(we, fe);
|
22193
|
+
m({ start: fe, end: we }), i(F.TRENDS_CLICK_DATE, {
|
22194
22194
|
time_period: Ge + "M"
|
22195
22195
|
});
|
22196
22196
|
}, Re = () => {
|
22197
22197
|
i(F.TRENDS_CLICK_FILTER);
|
22198
|
-
},
|
22198
|
+
}, ue = (be) => {
|
22199
22199
|
G(be);
|
22200
22200
|
}, me = (be) => {
|
22201
22201
|
G(be), i(F.TRENDS_CLICK_LEGEND, { category: u(be) });
|
22202
|
-
},
|
22202
|
+
}, Qe = (be) => {
|
22203
22203
|
i(F.TRENDS_HOVER_LEGEND, { category: u(be) });
|
22204
22204
|
}, $ = (be) => {
|
22205
22205
|
i(F.TRENDS_HOVER_AREA, { category: be });
|
@@ -22255,20 +22255,20 @@ const e0 = (e) => e.reduce((i, a) => {
|
|
22255
22255
|
R === "Chart" && /* @__PURE__ */ t(
|
22256
22256
|
Wu,
|
22257
22257
|
{
|
22258
|
-
availableHeight:
|
22258
|
+
availableHeight: J,
|
22259
22259
|
onClickLegend: me,
|
22260
22260
|
onHoverArea: $,
|
22261
|
-
onHoverLegend:
|
22261
|
+
onHoverLegend: Qe,
|
22262
22262
|
onHoverPoint: pe,
|
22263
|
-
stackedDatasets:
|
22264
|
-
unstackedDatasets:
|
22263
|
+
stackedDatasets: he.stackedDatasets,
|
22264
|
+
unstackedDatasets: he.unstackedDatasets
|
22265
22265
|
}
|
22266
22266
|
),
|
22267
22267
|
R === "Table" && /* @__PURE__ */ t(
|
22268
22268
|
Tl,
|
22269
22269
|
{
|
22270
22270
|
monthlyCategoryTotals: l,
|
22271
|
-
onClickRow:
|
22271
|
+
onClickRow: ue,
|
22272
22272
|
selectedCategory: k,
|
22273
22273
|
selectedDateRange: h
|
22274
22274
|
}
|
@@ -22290,7 +22290,7 @@ const e0 = (e) => e.reduce((i, a) => {
|
|
22290
22290
|
}
|
22291
22291
|
);
|
22292
22292
|
}, k2 = x(u0), h0 = () => {
|
22293
|
-
const e =
|
22293
|
+
const e = Xe(), { monthlyCategoryTotals: n } = Ue(), { trends: i } = A(), a = sp(n);
|
22294
22294
|
return /* @__PURE__ */ t(
|
22295
22295
|
ni,
|
22296
22296
|
{
|
@@ -22391,7 +22391,7 @@ const e0 = (e) => e.reduce((i, a) => {
|
|
22391
22391
|
{
|
22392
22392
|
ref: c,
|
22393
22393
|
sx: { overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" },
|
22394
|
-
children: /* @__PURE__ */ t(
|
22394
|
+
children: /* @__PURE__ */ t(qe, { children: _ })
|
22395
22395
|
}
|
22396
22396
|
),
|
22397
22397
|
r && s >= 450 && !y && /* @__PURE__ */ t(
|
@@ -22600,7 +22600,7 @@ const e0 = (e) => e.reduce((i, a) => {
|
|
22600
22600
|
u(!l);
|
22601
22601
|
}, m = a.length + (l ? i.length : 0);
|
22602
22602
|
return /* @__PURE__ */ t(b, { sx: { bgColor: "background.paper", width: "100%" }, children: /* @__PURE__ */ d(ae, { children: [
|
22603
|
-
/* @__PURE__ */ t(b, { sx: { pb: 4, pt: 16, px: 16 }, children: /* @__PURE__ */ t(
|
22603
|
+
/* @__PURE__ */ t(b, { sx: { pb: 4, pt: 16, px: 16 }, children: /* @__PURE__ */ t(qe, { children: c.categories }) }),
|
22604
22604
|
a.map((p, f) => /* @__PURE__ */ t(
|
22605
22605
|
Es,
|
22606
22606
|
{
|
@@ -22648,7 +22648,7 @@ class y0 {
|
|
22648
22648
|
};
|
22649
22649
|
loadCopy = async () => {
|
22650
22650
|
const n = await this.copyApi.getGlobalCopy(this.namespace, this.translationKey);
|
22651
|
-
|
22651
|
+
ee(() => {
|
22652
22652
|
this.copyObject = n[this.translationKey];
|
22653
22653
|
});
|
22654
22654
|
};
|
@@ -22849,7 +22849,7 @@ class x0 {
|
|
22849
22849
|
initialize = async (n, i, a) => {
|
22850
22850
|
await this.copyStore.initialize(n, i), await this.insightsMicroWidgetStore.initialize(n, i, a);
|
22851
22851
|
const o = await G_(n, i, "1.0.0", "Micro Insights Carousel");
|
22852
|
-
|
22852
|
+
ee(() => {
|
22853
22853
|
this.session = o, this.isInitialized = !0;
|
22854
22854
|
});
|
22855
22855
|
};
|
@@ -23973,7 +23973,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
23973
23973
|
shouldApplyNewAnimation: c = !1,
|
23974
23974
|
visibleCardsCount: l = 1
|
23975
23975
|
}) => {
|
23976
|
-
const u =
|
23976
|
+
const u = Xe(), { carouselCopy: _ } = Kn(), h = Math.floor(s) > r || n - l + 1 === 0, m = s < 0 || i - 1 === n, p = u.palette.grey[500], f = e?.primary_300 ?? u.palette.primary.main;
|
23977
23977
|
return /* @__PURE__ */ d(
|
23978
23978
|
b,
|
23979
23979
|
{
|
@@ -24075,8 +24075,8 @@ const Ui = g.createContext(null), I0 = ({
|
|
24075
24075
|
const $ = f.current.offsetWidth, pe = 8;
|
24076
24076
|
let be;
|
24077
24077
|
if (p > 1) {
|
24078
|
-
const
|
24079
|
-
be = ($ -
|
24078
|
+
const we = ($ - (p - 1) * pe) / p / 3;
|
24079
|
+
be = ($ - we - (p - 1) * pe) / p;
|
24080
24080
|
} else
|
24081
24081
|
be = $;
|
24082
24082
|
M(be);
|
@@ -24111,13 +24111,13 @@ const Ui = g.createContext(null), I0 = ({
|
|
24111
24111
|
top: 0,
|
24112
24112
|
behavior: "smooth"
|
24113
24113
|
});
|
24114
|
-
},
|
24114
|
+
}, J = () => {
|
24115
24115
|
W(jt.ON_CAROUSEL_BACK_CLICK), f.current && R && f.current.scrollTo({
|
24116
24116
|
left: Math.max(0, y - (R + 8)),
|
24117
24117
|
top: 0,
|
24118
24118
|
behavior: "smooth"
|
24119
24119
|
});
|
24120
|
-
},
|
24120
|
+
}, he = () => {
|
24121
24121
|
f.current && E(f.current.scrollLeft);
|
24122
24122
|
}, _e = () => {
|
24123
24123
|
if (!v || !I) return;
|
@@ -24126,14 +24126,14 @@ const Ui = g.createContext(null), I0 = ({
|
|
24126
24126
|
w($.targetTouches[0].clientX);
|
24127
24127
|
}, Re = ($) => {
|
24128
24128
|
w(null), N($.targetTouches[0].clientX);
|
24129
|
-
},
|
24129
|
+
}, ue = {
|
24130
24130
|
clientColorScheme: i,
|
24131
24131
|
showCTAColocatedWithText: a,
|
24132
24132
|
heightOverrides: o,
|
24133
24133
|
posthog: s,
|
24134
24134
|
showIcon: u,
|
24135
24135
|
variant: h
|
24136
|
-
}, me = R ? Math.round(y / (R + 8)) : 0,
|
24136
|
+
}, me = R ? Math.round(y / (R + 8)) : 0, Qe = f.current ? f.current.scrollWidth - f.current.offsetWidth : 0;
|
24137
24137
|
return /* @__PURE__ */ d(
|
24138
24138
|
b,
|
24139
24139
|
{
|
@@ -24152,7 +24152,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24152
24152
|
b,
|
24153
24153
|
{
|
24154
24154
|
direction: "row",
|
24155
|
-
onScroll:
|
24155
|
+
onScroll: he,
|
24156
24156
|
onTouchEnd: _e,
|
24157
24157
|
onTouchMove: Le,
|
24158
24158
|
onTouchStart: Re,
|
@@ -24176,7 +24176,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24176
24176
|
},
|
24177
24177
|
children: [
|
24178
24178
|
n.map(($, pe) => {
|
24179
|
-
const be = pe + 1, fe = n.length + 1,
|
24179
|
+
const be = pe + 1, fe = n.length + 1, we = T(
|
24180
24180
|
L.card_position_in_carousel_aria,
|
24181
24181
|
be.toString(),
|
24182
24182
|
fe.toString()
|
@@ -24184,13 +24184,13 @@ const Ui = g.createContext(null), I0 = ({
|
|
24184
24184
|
return /* @__PURE__ */ t(
|
24185
24185
|
B0,
|
24186
24186
|
{
|
24187
|
-
ariaLabel: `${
|
24187
|
+
ariaLabel: `${we}: ${Wt}, ${K}`,
|
24188
24188
|
beat: $,
|
24189
24189
|
index: pe,
|
24190
24190
|
isActiveCard: pe === me,
|
24191
24191
|
onCardClick: r,
|
24192
24192
|
widthOverrides: R || void 0,
|
24193
|
-
...
|
24193
|
+
...ue
|
24194
24194
|
},
|
24195
24195
|
`${$.guid} ${pe}`
|
24196
24196
|
);
|
@@ -24201,7 +24201,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24201
24201
|
isActiveCard: me === n.length,
|
24202
24202
|
onCardClick: r,
|
24203
24203
|
widthOverrides: R || void 0,
|
24204
|
-
...
|
24204
|
+
...ue
|
24205
24205
|
}
|
24206
24206
|
)
|
24207
24207
|
]
|
@@ -24214,8 +24214,8 @@ const Ui = g.createContext(null), I0 = ({
|
|
24214
24214
|
currentBeatIndex: me + p - 1,
|
24215
24215
|
numBeats: n.length + 1,
|
24216
24216
|
onNextClick: Y,
|
24217
|
-
onPreviousClick:
|
24218
|
-
scrollRightBoundary:
|
24217
|
+
onPreviousClick: J,
|
24218
|
+
scrollRightBoundary: Qe,
|
24219
24219
|
scrollX: y,
|
24220
24220
|
shouldApplyNewAnimation: k,
|
24221
24221
|
visibleCardsCount: p
|
@@ -24453,7 +24453,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24453
24453
|
visibleCardsCount: R = 1,
|
24454
24454
|
widthOverrides: M
|
24455
24455
|
}) => {
|
24456
|
-
const k =
|
24456
|
+
const k = Xe(), [G, L] = xt("STANDARD"), [W, Y] = xt(!1), J = cu([u], Tn), he = lu([_], Tn);
|
24457
24457
|
g.useEffect(() => {
|
24458
24458
|
Tn.isInitialized || Tn.initialize(r, I, c);
|
24459
24459
|
}, [r, I, c, Tn.isInitialized]), g.useEffect(() => {
|
@@ -24480,7 +24480,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24480
24480
|
// The Theme provider must wrap the component so that the styles don't break when imported into other applications.
|
24481
24481
|
/* @__PURE__ */ d(Ed, { theme: k, children: [
|
24482
24482
|
/* @__PURE__ */ t(o_, {}),
|
24483
|
-
/* @__PURE__ */ t(I0, { onEvent:
|
24483
|
+
/* @__PURE__ */ t(I0, { onEvent: J, onPageview: he, store: Tn, children: /* @__PURE__ */ d(U0, { heightOverrides: s, widthOverrides: M, children: [
|
24484
24484
|
(n || !Tn.isInitialized) && /* @__PURE__ */ t(V0, {}),
|
24485
24485
|
W && S && /* @__PURE__ */ t(
|
24486
24486
|
$0,
|
@@ -24756,7 +24756,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24756
24756
|
selectedDateRange: i,
|
24757
24757
|
totals: a
|
24758
24758
|
}) => {
|
24759
|
-
const o =
|
24759
|
+
const o = Xe(), { trends: r } = A(), { isSmallMobile: s, isMobile: c, isSmallTablet: l, isTablet: u } = Ce(), _ = [o.palette.chart?.chart1, o.palette.chart?.chart2], h = tb(a, i), m = nb(h, r), [p, f] = g.useState(0), S = 458, y = 195, E = 56, I = c || s ? y : l || u ? S : p;
|
24760
24760
|
return g.useEffect(() => {
|
24761
24761
|
const w = Math.max(e - E, n);
|
24762
24762
|
f(w);
|
@@ -24792,7 +24792,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24792
24792
|
selectedAccounts: I,
|
24793
24793
|
selectedAccountGuids: w,
|
24794
24794
|
setSelectedAccounts: v
|
24795
|
-
} = re(), { trends: N } = A(), R = du(), M = r || o, [k, G] = g.useState(!1), [L, W] = g.useState("Chart"), [Y,
|
24795
|
+
} = re(), { trends: N } = A(), R = du(), M = r || o, [k, G] = g.useState(!1), [L, W] = g.useState("Chart"), [Y, J] = g.useState(""), [he, _e] = g.useState(!1), [Le, Re] = g.useState(window.innerHeight), ue = Le - 208, me = Le - (R ? 494 : 266);
|
24796
24796
|
g.useEffect(() => {
|
24797
24797
|
const Ge = () => Re(window.innerHeight);
|
24798
24798
|
return window.addEventListener("resize", Ge), () => window.removeEventListener("resize", Ge);
|
@@ -24822,7 +24822,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24822
24822
|
});
|
24823
24823
|
}
|
24824
24824
|
}, [_]);
|
24825
|
-
const
|
24825
|
+
const Qe = (Ge) => {
|
24826
24826
|
f(Ge), _e(!0);
|
24827
24827
|
}, $ = () => {
|
24828
24828
|
f(null), _e(!1);
|
@@ -24835,8 +24835,8 @@ const Ui = g.createContext(null), I0 = ({
|
|
24835
24835
|
});
|
24836
24836
|
}, fe = () => {
|
24837
24837
|
a(F.TRENDS_CLICK_FILTER);
|
24838
|
-
},
|
24839
|
-
|
24838
|
+
}, we = (Ge) => {
|
24839
|
+
J(Ge);
|
24840
24840
|
};
|
24841
24841
|
return !y || !k ? /* @__PURE__ */ t(ce, {}) : h && _.length === 0 ? /* @__PURE__ */ t(
|
24842
24842
|
jn,
|
@@ -24885,7 +24885,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24885
24885
|
]
|
24886
24886
|
}
|
24887
24887
|
),
|
24888
|
-
/* @__PURE__ */ t(b, { alignItems: "center", flexDirection: "row", width: "100%", children: /* @__PURE__ */ t(O, { flexGrow: 1, children: Y && /* @__PURE__ */ d(te, { onClick: () =>
|
24888
|
+
/* @__PURE__ */ t(b, { alignItems: "center", flexDirection: "row", width: "100%", children: /* @__PURE__ */ t(O, { flexGrow: 1, children: Y && /* @__PURE__ */ d(te, { onClick: () => J(""), sx: { p: 0, pr: 5 }, children: [
|
24889
24889
|
/* @__PURE__ */ t(V, { name: "arrow_back" }),
|
24890
24890
|
N.all_categories
|
24891
24891
|
] }) }) }),
|
@@ -24894,7 +24894,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24894
24894
|
L === "Chart" && /* @__PURE__ */ t(
|
24895
24895
|
ab,
|
24896
24896
|
{
|
24897
|
-
availableHeight:
|
24897
|
+
availableHeight: ue,
|
24898
24898
|
minHeight: 450,
|
24899
24899
|
selectedDateRange: p,
|
24900
24900
|
totals: _
|
@@ -24905,7 +24905,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24905
24905
|
{
|
24906
24906
|
height: "unset",
|
24907
24907
|
monthlyCategoryTotals: _,
|
24908
|
-
onClickRow:
|
24908
|
+
onClickRow: we,
|
24909
24909
|
selectedCategory: Y,
|
24910
24910
|
selectedDateRange: p
|
24911
24911
|
}
|
@@ -24917,7 +24917,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24917
24917
|
b0,
|
24918
24918
|
{
|
24919
24919
|
availableHeight: me,
|
24920
|
-
onCategoryClick:
|
24920
|
+
onCategoryClick: Qe
|
24921
24921
|
}
|
24922
24922
|
)
|
24923
24923
|
] })
|
@@ -24925,7 +24925,7 @@ const Ui = g.createContext(null), I0 = ({
|
|
24925
24925
|
]
|
24926
24926
|
}
|
24927
24927
|
),
|
24928
|
-
|
24928
|
+
he && /* @__PURE__ */ t(eb, { onClose: $ })
|
24929
24929
|
]
|
24930
24930
|
}
|
24931
24931
|
);
|
@@ -24937,8 +24937,8 @@ class rb {
|
|
24937
24937
|
visibleListLength = 5;
|
24938
24938
|
constructor(n) {
|
24939
24939
|
this.globalStore = n, this.selectedDateRange = {
|
24940
|
-
start: mo(
|
24941
|
-
end:
|
24940
|
+
start: mo(Ye(Ht(/* @__PURE__ */ new Date(), 6)), 1),
|
24941
|
+
end: Ye(/* @__PURE__ */ new Date())
|
24942
24942
|
}, Fe(this);
|
24943
24943
|
}
|
24944
24944
|
setSelectedCategoryData = (n) => {
|
@@ -25010,7 +25010,7 @@ class sb {
|
|
25010
25010
|
loadAppData = async (n) => {
|
25011
25011
|
try {
|
25012
25012
|
const i = n || await this.api.getAppData();
|
25013
|
-
|
25013
|
+
ee(() => {
|
25014
25014
|
this.appData = i, this.bannerApi = new Sr(i.address?.bullseye || "/");
|
25015
25015
|
});
|
25016
25016
|
} catch (i) {
|
@@ -25020,7 +25020,7 @@ class sb {
|
|
25020
25020
|
loadBanner = async () => {
|
25021
25021
|
try {
|
25022
25022
|
const n = this.user?.guid ?? null, i = n ? await this.bannerApi.getBanner(n) : {};
|
25023
|
-
|
25023
|
+
ee(() => {
|
25024
25024
|
this.banner = i;
|
25025
25025
|
});
|
25026
25026
|
} catch (n) {
|
@@ -25048,8 +25048,8 @@ class lb {
|
|
25048
25048
|
selectedAccountGuids = this.selectedAccounts.map((n) => n.guid);
|
25049
25049
|
displayedDate = /* @__PURE__ */ new Date();
|
25050
25050
|
displayedDateRange = {
|
25051
|
-
start:
|
25052
|
-
end:
|
25051
|
+
start: Ve(this.displayedDate),
|
25052
|
+
end: Ye(this.displayedDate)
|
25053
25053
|
};
|
25054
25054
|
constructor(n) {
|
25055
25055
|
Fe(this), this.globalStore = n;
|
@@ -25108,7 +25108,7 @@ class db {
|
|
25108
25108
|
loadUserFeatures = async (n) => {
|
25109
25109
|
try {
|
25110
25110
|
const i = n || await this.api.getUserFeatures();
|
25111
|
-
|
25111
|
+
ee(() => {
|
25112
25112
|
this.userFeatures = i;
|
25113
25113
|
});
|
25114
25114
|
} catch (i) {
|
@@ -25462,7 +25462,7 @@ const Va = ({
|
|
25462
25462
|
};
|
25463
25463
|
default: {
|
25464
25464
|
const a = () => {
|
25465
|
-
const o = e.successfully_aggregated_at ?
|
25465
|
+
const o = e.successfully_aggregated_at ? Ke(e.successfully_aggregated_at) : void 0, r = o && de(o, ie.TIME_STAMP_HOUR_MINUTE);
|
25466
25466
|
if (r)
|
25467
25467
|
return So(o) ? T(n.last_updated_at, n.today, r) : D_(o) ? T(n.last_updated_at, n.yesterday, r) : T(
|
25468
25468
|
n.last_updated_at,
|
@@ -26630,7 +26630,7 @@ class Gb {
|
|
26630
26630
|
addAccount = async (n) => {
|
26631
26631
|
try {
|
26632
26632
|
const i = await this.api.createAccount(n);
|
26633
|
-
|
26633
|
+
ee(() => {
|
26634
26634
|
this.accounts = [...this.accounts, i];
|
26635
26635
|
});
|
26636
26636
|
} catch (i) {
|
@@ -26661,7 +26661,7 @@ class Gb {
|
|
26661
26661
|
await this.loadMembers();
|
26662
26662
|
try {
|
26663
26663
|
const i = n || await this.api.getAccounts();
|
26664
|
-
|
26664
|
+
ee(() => {
|
26665
26665
|
this.accounts = this.sortAccounts(this.augmentAccounts(i));
|
26666
26666
|
});
|
26667
26667
|
} catch (i) {
|
@@ -26671,7 +26671,7 @@ class Gb {
|
|
26671
26671
|
loadInstitutions = async (n) => {
|
26672
26672
|
try {
|
26673
26673
|
const i = n || await this.api.getInstitutions();
|
26674
|
-
|
26674
|
+
ee(() => {
|
26675
26675
|
this.institutions = i;
|
26676
26676
|
});
|
26677
26677
|
} catch (i) {
|
@@ -26681,7 +26681,7 @@ class Gb {
|
|
26681
26681
|
loadMembers = async () => {
|
26682
26682
|
try {
|
26683
26683
|
const n = await this.api.getMembers();
|
26684
|
-
|
26684
|
+
ee(() => {
|
26685
26685
|
this.members = n;
|
26686
26686
|
});
|
26687
26687
|
} catch (n) {
|
@@ -26691,7 +26691,7 @@ class Gb {
|
|
26691
26691
|
mergeAccounts = async (n) => {
|
26692
26692
|
try {
|
26693
26693
|
const i = await this.api.mergeAccounts(n), a = i[Object.keys(i)[0]];
|
26694
|
-
|
26694
|
+
ee(() => {
|
26695
26695
|
const o = this.accounts.findIndex((s) => s.guid === n[1]);
|
26696
26696
|
this.accounts.splice(o, 1);
|
26697
26697
|
const r = this.accounts.findIndex((s) => s.guid === n[0]);
|
@@ -26714,7 +26714,7 @@ class Gb {
|
|
26714
26714
|
};
|
26715
26715
|
removeAccount = async (n) => {
|
26716
26716
|
try {
|
26717
|
-
await this.api.deleteAccount(n),
|
26717
|
+
await this.api.deleteAccount(n), ee(() => {
|
26718
26718
|
const i = this.accounts.findIndex((a) => a.guid === n);
|
26719
26719
|
this.accounts.splice(i, 1);
|
26720
26720
|
});
|
@@ -26725,7 +26725,7 @@ class Gb {
|
|
26725
26725
|
updateAccount = async (n) => {
|
26726
26726
|
try {
|
26727
26727
|
const i = await this.api.updateAccount(n);
|
26728
|
-
|
26728
|
+
ee(() => {
|
26729
26729
|
const a = this.accounts.findIndex(
|
26730
26730
|
(o) => o.guid === i.guid
|
26731
26731
|
);
|
@@ -27321,7 +27321,7 @@ const Jb = ({
|
|
27321
27321
|
return g.useEffect(() => {
|
27322
27322
|
s(n);
|
27323
27323
|
}, [n]), g.useEffect(() => {
|
27324
|
-
_ && !o && m(h,
|
27324
|
+
_ && !o && m(h, Ve(/* @__PURE__ */ new Date()), Ye(/* @__PURE__ */ new Date())).then(
|
27325
27325
|
() => {
|
27326
27326
|
r().finally();
|
27327
27327
|
}
|
@@ -27715,7 +27715,7 @@ const Jb = ({
|
|
27715
27715
|
});
|
27716
27716
|
};
|
27717
27717
|
return /* @__PURE__ */ d(bt, { elevation: 2, children: [
|
27718
|
-
/* @__PURE__ */ t(_n, { sx: { pb: 8, pl: 24 }, title: /* @__PURE__ */ t(
|
27718
|
+
/* @__PURE__ */ t(_n, { sx: { pb: 8, pl: 24 }, title: /* @__PURE__ */ t(qe, { children: n.budget_categories_title }) }),
|
27719
27719
|
/* @__PURE__ */ t(Pt, { sx: { p: 0, ":last-child": { p: 0 } }, children: /* @__PURE__ */ t(ae, { children: i.map((r) => /* @__PURE__ */ d(g.Fragment, { children: [
|
27720
27720
|
/* @__PURE__ */ t(hy, { budget: r, onClick: o }),
|
27721
27721
|
/* @__PURE__ */ t(P, {})
|
@@ -27758,7 +27758,7 @@ const Jb = ({
|
|
27758
27758
|
}), p(!0), n(F.BUDGETS_CLICK_EDIT_INCOME);
|
27759
27759
|
};
|
27760
27760
|
return /* @__PURE__ */ d(bt, { elevation: 2, sx: { overflow: "visible" }, children: [
|
27761
|
-
/* @__PURE__ */ t(_n, { sx: { pb: 8, pl: 24 }, title: /* @__PURE__ */ t(
|
27761
|
+
/* @__PURE__ */ t(_n, { sx: { pb: 8, pl: 24 }, title: /* @__PURE__ */ t(qe, { children: a.overview_title }) }),
|
27762
27762
|
/* @__PURE__ */ t(Pt, { sx: { pt: 12, px: 24 }, children: /* @__PURE__ */ d(b, { gap: 24, children: [
|
27763
27763
|
/* @__PURE__ */ d(b, { gap: 8, children: [
|
27764
27764
|
/* @__PURE__ */ t(C, { bold: !0, sx: { mb: 8 }, variant: "Body", children: a.spending_title }),
|
@@ -27815,22 +27815,22 @@ const Jb = ({
|
|
27815
27815
|
setTheme: I,
|
27816
27816
|
detailedBudgets: w
|
27817
27817
|
} = ut(), { loadRepeatingTransactions: v, setDateRange: N } = rt(), { reloadCategoryTotals: R } = Ue(), { isSmallTablet: M, isMobile: k, isSmallMobile: G } = Ce(), L = M || k || G, [W, Y] = g.useState(!1);
|
27818
|
-
g.useEffect(() => {
|
27819
|
-
|
27820
|
-
}, []), g.useEffect(() => {
|
27818
|
+
g.useEffect(() => (I(i), h(o), y({ start: Ve(Ae()), end: Ye(Ae()) }), a(F.BUDGETS_VIEW), () => {
|
27819
|
+
y({ start: Ve(Ae()), end: Ye(Ae()) });
|
27820
|
+
}), []), g.useEffect(() => {
|
27821
27821
|
h(o);
|
27822
27822
|
}, [o]), g.useEffect(() => {
|
27823
|
-
l && (R(u, p.start, p.end).finally(), N(p), f || (v().finally(), S().finally()));
|
27823
|
+
l && (_(p.start, p.end), R(u, p.start, p.end).finally(), N(p), f || (v().finally(), S().finally()));
|
27824
27824
|
}, [l, u, p]);
|
27825
|
-
const
|
27826
|
-
y({ start:
|
27827
|
-
},
|
27825
|
+
const J = (ue) => {
|
27826
|
+
y({ start: ue[0] || /* @__PURE__ */ new Date(), end: ue[1] || /* @__PURE__ */ new Date() });
|
27827
|
+
}, he = () => {
|
27828
27828
|
a(F.BUDGETS_CLICK_FILTER);
|
27829
27829
|
}, _e = () => {
|
27830
27830
|
Y(!0), a(F.BUDGETS_CLICK_ADD);
|
27831
27831
|
}, Le = () => {
|
27832
27832
|
Y(!1);
|
27833
|
-
}, Re = sn(p.end,
|
27833
|
+
}, Re = sn(p.end, Ve(/* @__PURE__ */ new Date()));
|
27834
27834
|
return !c || !l || !f ? /* @__PURE__ */ t(ce, {}) : /* @__PURE__ */ d(
|
27835
27835
|
Ct,
|
27836
27836
|
{
|
@@ -27842,8 +27842,12 @@ const Jb = ({
|
|
27842
27842
|
onClick: _e
|
27843
27843
|
}
|
27844
27844
|
],
|
27845
|
-
calendarActions: {
|
27846
|
-
|
27845
|
+
calendarActions: {
|
27846
|
+
onRangeChanged: J,
|
27847
|
+
shouldDisableNext: Re,
|
27848
|
+
shouldDisablePicker: !0
|
27849
|
+
},
|
27850
|
+
onAccountsFilterClick: he,
|
27847
27851
|
onBackClick: e,
|
27848
27852
|
sx: n,
|
27849
27853
|
title: r.budgets_title,
|
@@ -28539,7 +28543,7 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
28539
28543
|
), My = () => {
|
28540
28544
|
const {
|
28541
28545
|
investments: { analysis: e }
|
28542
|
-
} = A(), { analysisChartData: n, analysisDetails: i, analysisType: a, setAnalysisType: o } = Xn(), r = hn("(min-width:320px) and (max-width:375px)"), { isMobile: s } = Ce(), l =
|
28546
|
+
} = A(), { analysisChartData: n, analysisDetails: i, analysisType: a, setAnalysisType: o } = Xn(), r = hn("(min-width:320px) and (max-width:375px)"), { isMobile: s } = Ce(), l = Xe().palette.mode === "dark", { cellDimension: u, columns: _, rows: h, textVariant: m } = g.useMemo(() => {
|
28543
28547
|
const p = a === Hn.Stocks, f = Object.values(p ? e.stock_column_labels : e.bond_column_labels), S = Object.values(p ? e.stock_row_labels : e.bond_row_labels);
|
28544
28548
|
return { cellDimension: s ? 72 : 100, columns: f, rows: S, textVariant: s ? "XSmall" : "Body" };
|
28545
28549
|
}, [e, s, a]);
|
@@ -29182,10 +29186,10 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
29182
29186
|
const be = Number(E);
|
29183
29187
|
if (c({ ...pe, cost_basis: be }), e) {
|
29184
29188
|
const fe = _.holdings.map(
|
29185
|
-
(
|
29189
|
+
(we) => we.id === $ ? { ...we, costBasis: be } : we
|
29186
29190
|
);
|
29187
|
-
h((
|
29188
|
-
...
|
29191
|
+
h((we) => ({
|
29192
|
+
...we,
|
29189
29193
|
holdings: fe
|
29190
29194
|
}));
|
29191
29195
|
}
|
@@ -29195,14 +29199,14 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
29195
29199
|
...fe,
|
29196
29200
|
[$]: be
|
29197
29201
|
}));
|
29198
|
-
}, { visibleHoldings:
|
29202
|
+
}, { visibleHoldings: J } = Xn(), { visibleInvestmentAccounts: he } = Se(), _e = he.filter(
|
29199
29203
|
({ guid: $ }) => r.includes($)
|
29200
|
-
), Le = _e.reduce(($, pe) => $ + (pe.balance || 0), 0), Re = _e.map(({ guid: $ }) => $), me =
|
29204
|
+
), Le = _e.reduce(($, pe) => $ + (pe.balance || 0), 0), Re = _e.map(({ guid: $ }) => $), me = J.filter(
|
29201
29205
|
({ account_guid: $ }) => Re.includes($)
|
29202
29206
|
).reduce(($, pe) => {
|
29203
29207
|
const be = pe.market_value ? pe.market_value - (pe.cost_basis || 0) : 0;
|
29204
29208
|
return $ + be;
|
29205
|
-
}, 0),
|
29209
|
+
}, 0), Qe = () => {
|
29206
29210
|
o(!1);
|
29207
29211
|
};
|
29208
29212
|
return f ? /* @__PURE__ */ d(Me, { sx: { alignItems: "center", gap: 48, pt: 48, width: "100%" }, children: [
|
@@ -29239,7 +29243,7 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
29239
29243
|
] })
|
29240
29244
|
] }),
|
29241
29245
|
_e.map(($) => {
|
29242
|
-
const pe =
|
29246
|
+
const pe = J.filter((K) => K.account_guid === $.guid).map((K) => ({
|
29243
29247
|
id: K.guid,
|
29244
29248
|
qty: K.shares || 0,
|
29245
29249
|
holding: K.symbol || K.description || "Unknown",
|
@@ -29247,10 +29251,10 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
29247
29251
|
totalGainLoss: K.market_value ? K.market_value - (K.cost_basis || 0) : 0,
|
29248
29252
|
marketValue: K.market_value || 0,
|
29249
29253
|
description: K.description || ""
|
29250
|
-
})), be = pe.length > 0, fe = $.balance,
|
29254
|
+
})), be = pe.length > 0, fe = $.balance, we = pe.reduce(
|
29251
29255
|
(K, He) => He.totalGainLoss + K,
|
29252
29256
|
0
|
29253
|
-
), Ge = fe ?
|
29257
|
+
), Ge = fe ? we / fe * 100 : 0;
|
29254
29258
|
if (e)
|
29255
29259
|
return /* @__PURE__ */ t(
|
29256
29260
|
Nt,
|
@@ -29343,19 +29347,19 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
29343
29347
|
justifyContent: "flex-end"
|
29344
29348
|
},
|
29345
29349
|
children: [
|
29346
|
-
|
29350
|
+
we !== 0 && /* @__PURE__ */ t(
|
29347
29351
|
pt,
|
29348
29352
|
{
|
29349
|
-
name:
|
29353
|
+
name: we > 0 ? "trending_up" : "trending_down",
|
29350
29354
|
size: 20,
|
29351
|
-
sx: { color: M(
|
29355
|
+
sx: { color: M(we) }
|
29352
29356
|
}
|
29353
29357
|
),
|
29354
29358
|
/* @__PURE__ */ d(
|
29355
29359
|
C,
|
29356
29360
|
{
|
29357
29361
|
sx: {
|
29358
|
-
color: M(
|
29362
|
+
color: M(we),
|
29359
29363
|
fontWeight: 600
|
29360
29364
|
},
|
29361
29365
|
variant: "Body",
|
@@ -29370,11 +29374,11 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
29370
29374
|
C,
|
29371
29375
|
{
|
29372
29376
|
sx: {
|
29373
|
-
color: M(
|
29377
|
+
color: M(we),
|
29374
29378
|
fontWeight: 600
|
29375
29379
|
},
|
29376
29380
|
variant: "Body",
|
29377
|
-
children: Math.abs(
|
29381
|
+
children: Math.abs(we).toLocaleString("en-US", {
|
29378
29382
|
currency: "USD",
|
29379
29383
|
maximumFractionDigits: 2,
|
29380
29384
|
minimumFractionDigits: 2,
|
@@ -29487,19 +29491,19 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
29487
29491
|
justifyContent: "flex-end"
|
29488
29492
|
},
|
29489
29493
|
children: [
|
29490
|
-
|
29494
|
+
we !== 0 && /* @__PURE__ */ t(
|
29491
29495
|
pt,
|
29492
29496
|
{
|
29493
|
-
name:
|
29497
|
+
name: we >= 0 ? "trending_up" : "trending_down",
|
29494
29498
|
size: 20,
|
29495
|
-
sx: { color: M(
|
29499
|
+
sx: { color: M(we) }
|
29496
29500
|
}
|
29497
29501
|
),
|
29498
29502
|
/* @__PURE__ */ d(
|
29499
29503
|
C,
|
29500
29504
|
{
|
29501
29505
|
sx: {
|
29502
|
-
color: M(
|
29506
|
+
color: M(we),
|
29503
29507
|
fontWeight: 600
|
29504
29508
|
},
|
29505
29509
|
variant: "Body",
|
@@ -29514,11 +29518,11 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
29514
29518
|
C,
|
29515
29519
|
{
|
29516
29520
|
sx: {
|
29517
|
-
color: M(
|
29521
|
+
color: M(we),
|
29518
29522
|
fontWeight: 600
|
29519
29523
|
},
|
29520
29524
|
variant: "Body",
|
29521
|
-
children: Math.abs(
|
29525
|
+
children: Math.abs(we).toLocaleString("en-US", {
|
29522
29526
|
currency: "USD",
|
29523
29527
|
maximumFractionDigits: 2,
|
29524
29528
|
minimumFractionDigits: 2,
|
@@ -29572,7 +29576,7 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
29572
29576
|
handleCostBasisClick: k,
|
29573
29577
|
handleCostBasisKeyDown: L,
|
29574
29578
|
isOpen: a,
|
29575
|
-
onClose:
|
29579
|
+
onClose: Qe
|
29576
29580
|
}
|
29577
29581
|
),
|
29578
29582
|
/* @__PURE__ */ t(
|
@@ -29842,8 +29846,8 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
29842
29846
|
g.useEffect(() => {
|
29843
29847
|
c(
|
29844
29848
|
a,
|
29845
|
-
|
29846
|
-
|
29849
|
+
Ve(/* @__PURE__ */ new Date()),
|
29850
|
+
Ye(/* @__PURE__ */ new Date())
|
29847
29851
|
).finally();
|
29848
29852
|
}, [a]);
|
29849
29853
|
const [u, _] = g.useState(""), [h, m] = g.useState(0), p = g.useMemo(
|
@@ -30086,32 +30090,32 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
30086
30090
|
), k = g.useMemo(
|
30087
30091
|
() => h.find((Y) => Y.guid === I),
|
30088
30092
|
[I, h]
|
30089
|
-
), G = (Y,
|
30090
|
-
E(
|
30093
|
+
), G = (Y, J) => {
|
30094
|
+
E(J), S("");
|
30091
30095
|
}, L = (Y) => {
|
30092
30096
|
S(f === Y || Y === "0" ? "" : Y);
|
30093
30097
|
}, W = (Y) => {
|
30094
|
-
const
|
30098
|
+
const J = {
|
30095
30099
|
accounts: m || u,
|
30096
30100
|
dateRange: c
|
30097
30101
|
};
|
30098
30102
|
if (y === 0)
|
30099
30103
|
if (Y === "other") {
|
30100
|
-
const
|
30104
|
+
const he = R.categoryData.find((_e) => _e.guid === "other");
|
30101
30105
|
_({
|
30102
|
-
...
|
30103
|
-
custom: (_e) => !!
|
30106
|
+
...J,
|
30107
|
+
custom: (_e) => !!he?.categoryTotals?.find((Le) => Le.guid === _e.top_level_category_guid)
|
30104
30108
|
});
|
30105
30109
|
} else
|
30106
30110
|
_({
|
30107
|
-
...
|
30108
|
-
custom: (
|
30111
|
+
...J,
|
30112
|
+
custom: (he) => Y ? he.top_level_category_guid === Y : he.top_level_category_guid !== D.INCOME && he.top_level_category_guid !== D.INVESTMENTS && he.top_level_category_guid !== D.TRANSFER,
|
30109
30113
|
showSplits: !!Y
|
30110
30114
|
});
|
30111
30115
|
else
|
30112
30116
|
_({
|
30113
|
-
...
|
30114
|
-
custom: (
|
30117
|
+
...J,
|
30118
|
+
custom: (he) => Y ? he.category_guid === Y : he.category_guid === D.INCOME || he.top_level_category_guid === D.INCOME
|
30115
30119
|
});
|
30116
30120
|
N(!0);
|
30117
30121
|
};
|
@@ -30188,7 +30192,7 @@ const Sy = ({ widgets: e, isLoading: n }) => {
|
|
30188
30192
|
g.useEffect(() => {
|
30189
30193
|
c(i);
|
30190
30194
|
}, [i]), g.useEffect(() => {
|
30191
|
-
_ && Array.isArray(_) && _.length === 2 ? s(_[0], _[1]) : s(
|
30195
|
+
_ && Array.isArray(_) && _.length === 2 ? s(_[0], _[1]) : s(Ve(Ae()), Ye(Ae())), m(!0), l(F.SPENDING_VIEW);
|
30192
30196
|
}, []);
|
30193
30197
|
const p = (f) => {
|
30194
30198
|
s(f[0], f[1]);
|
@@ -30262,7 +30266,7 @@ export {
|
|
30262
30266
|
E2 as CreditScoreGraph,
|
30263
30267
|
oa as CurrencyCodes,
|
30264
30268
|
en as CurrencyInput,
|
30265
|
-
|
30269
|
+
Ze as CurrencyText,
|
30266
30270
|
ie as DATE_FORMATS_INTL,
|
30267
30271
|
gc as DEFAULT_DONUT_SIZE,
|
30268
30272
|
mc as DEFAULT_STROKE_WIDTH,
|