@mx-cartographer/experiences 6.24.12-alpha.al3 → 6.24.12-alpha.al4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/common/types/Category.d.ts +0 -1
- package/dist/index.es.js +661 -664
- package/dist/index.es.js.map +1 -1
- package/package.json +1 -1
package/dist/index.es.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as t, jsxs as l, Fragment as Q } from "react/jsx-runtime";
|
|
2
2
|
import g, { useMemo as xl, useState as Et, useEffect as Dn, useRef as ps } from "react";
|
|
3
|
-
import { observer as
|
|
3
|
+
import { observer as x } from "mobx-react-lite";
|
|
4
4
|
import O from "@mui/material/Box";
|
|
5
5
|
import F from "@mui/material/Divider";
|
|
6
6
|
import ie from "@mui/material/List";
|
|
@@ -1395,8 +1395,8 @@ const va = (e, n) => e.reduce((i, a) => (i[a.guid] = n?.includes(a.guid), i), {}
|
|
|
1395
1395
|
disableRipple: !0,
|
|
1396
1396
|
onChange: () => {
|
|
1397
1397
|
const S = {};
|
|
1398
|
-
Object.keys(d).forEach((
|
|
1399
|
-
S[
|
|
1398
|
+
Object.keys(d).forEach((T) => {
|
|
1399
|
+
S[T] = !y;
|
|
1400
1400
|
}), _(S);
|
|
1401
1401
|
},
|
|
1402
1402
|
size: "small",
|
|
@@ -1412,8 +1412,8 @@ const va = (e, n) => e.reduce((i, a) => (i[a.guid] = n?.includes(a.guid), i), {}
|
|
|
1412
1412
|
}
|
|
1413
1413
|
) }),
|
|
1414
1414
|
Object.keys(p).map((S) => {
|
|
1415
|
-
const
|
|
1416
|
-
(
|
|
1415
|
+
const T = p[S], v = T.every(
|
|
1416
|
+
(w) => d[w.guid]
|
|
1417
1417
|
);
|
|
1418
1418
|
return /* @__PURE__ */ t(j, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ t(
|
|
1419
1419
|
ie,
|
|
@@ -1425,12 +1425,12 @@ const va = (e, n) => e.reduce((i, a) => (i[a.guid] = n?.includes(a.guid), i), {}
|
|
|
1425
1425
|
ue,
|
|
1426
1426
|
{
|
|
1427
1427
|
"aria-label": A(i.toggleAccountTypeAccounts, S),
|
|
1428
|
-
"aria-pressed":
|
|
1428
|
+
"aria-pressed": v,
|
|
1429
1429
|
disableGutters: !0,
|
|
1430
1430
|
onClick: () => o(
|
|
1431
1431
|
S,
|
|
1432
1432
|
p,
|
|
1433
|
-
|
|
1433
|
+
v
|
|
1434
1434
|
),
|
|
1435
1435
|
sx: {
|
|
1436
1436
|
paddingLeft: 12,
|
|
@@ -1447,8 +1447,8 @@ const va = (e, n) => e.reduce((i, a) => (i[a.guid] = n?.includes(a.guid), i), {}
|
|
|
1447
1447
|
}
|
|
1448
1448
|
) }),
|
|
1449
1449
|
sx: { overflow: "auto", width: "100%" },
|
|
1450
|
-
children:
|
|
1451
|
-
const D = d[
|
|
1450
|
+
children: T.map((w) => {
|
|
1451
|
+
const D = d[w.guid], L = `${w.name}${h && w.accountNumber ? ` *${w.accountNumber.slice(-4)}` : ""}`;
|
|
1452
1452
|
return /* @__PURE__ */ t(
|
|
1453
1453
|
j,
|
|
1454
1454
|
{
|
|
@@ -1464,9 +1464,9 @@ const va = (e, n) => e.reduce((i, a) => (i[a.guid] = n?.includes(a.guid), i), {}
|
|
|
1464
1464
|
checked: D,
|
|
1465
1465
|
"data-ui-test": `checked-${D}`,
|
|
1466
1466
|
disableRipple: !0,
|
|
1467
|
-
id:
|
|
1467
|
+
id: w.guid,
|
|
1468
1468
|
onChange: () => {
|
|
1469
|
-
a(
|
|
1469
|
+
a(w);
|
|
1470
1470
|
},
|
|
1471
1471
|
size: "small",
|
|
1472
1472
|
sx: {
|
|
@@ -1481,7 +1481,7 @@ const va = (e, n) => e.reduce((i, a) => (i[a.guid] = n?.includes(a.guid), i), {}
|
|
|
1481
1481
|
}
|
|
1482
1482
|
)
|
|
1483
1483
|
},
|
|
1484
|
-
|
|
1484
|
+
w.guid
|
|
1485
1485
|
);
|
|
1486
1486
|
})
|
|
1487
1487
|
}
|
|
@@ -1621,10 +1621,10 @@ const Ru = (e, n) => {
|
|
|
1621
1621
|
m({ ...h, [E.guid]: !h[E.guid] });
|
|
1622
1622
|
},
|
|
1623
1623
|
onAccountGroupClick: (E, y, S) => {
|
|
1624
|
-
const
|
|
1625
|
-
y[E].forEach((
|
|
1626
|
-
|
|
1627
|
-
}), m(
|
|
1624
|
+
const T = { ...h };
|
|
1625
|
+
y[E].forEach((v) => {
|
|
1626
|
+
T[v.guid] = !S;
|
|
1627
|
+
}), m(T);
|
|
1628
1628
|
},
|
|
1629
1629
|
onCancelClick: () => {
|
|
1630
1630
|
m(va(e, o)), f();
|
|
@@ -1844,14 +1844,14 @@ const Ru = (e, n) => {
|
|
|
1844
1844
|
selectedIndex: d,
|
|
1845
1845
|
valueFormatter: _ = (u) => `${u}`
|
|
1846
1846
|
}) => {
|
|
1847
|
-
const u = yt(), h = Uu(u), m = a.reduce(Fu, []), p = e !== void 0 ? e : m.reduce(Hu, 0) / m.length, f = Math.max(...m), E = Math.min(...m), y = m.reduce(Pu, 0), S = f >= 0,
|
|
1847
|
+
const u = yt(), h = Uu(u), m = a.reduce(Fu, []), p = e !== void 0 ? e : m.reduce(Hu, 0) / m.length, f = Math.max(...m), E = Math.min(...m), y = m.reduce(Pu, 0), S = f >= 0, T = E < 0, v = ur(S, T, o), w = ur(T, S, o), D = Wu(p, f, E, v || w), L = (B) => d === void 0 || B === d ? i : `${i}80`, k = () => /* @__PURE__ */ t(
|
|
1848
1848
|
dr,
|
|
1849
1849
|
{
|
|
1850
1850
|
averageLineHeight: D,
|
|
1851
|
-
bottomHeight:
|
|
1851
|
+
bottomHeight: w,
|
|
1852
1852
|
color: "",
|
|
1853
1853
|
range: y,
|
|
1854
|
-
topHeight:
|
|
1854
|
+
topHeight: v,
|
|
1855
1855
|
value: 0,
|
|
1856
1856
|
width: void 0
|
|
1857
1857
|
}
|
|
@@ -1865,13 +1865,13 @@ const Ru = (e, n) => {
|
|
|
1865
1865
|
{
|
|
1866
1866
|
ariaLabel: B.ariaLabel,
|
|
1867
1867
|
averageLineHeight: D,
|
|
1868
|
-
bottomHeight:
|
|
1868
|
+
bottomHeight: w,
|
|
1869
1869
|
color: L(M),
|
|
1870
1870
|
index: M,
|
|
1871
1871
|
onClick: c,
|
|
1872
1872
|
range: y,
|
|
1873
1873
|
selectedIndex: d,
|
|
1874
|
-
topHeight:
|
|
1874
|
+
topHeight: v,
|
|
1875
1875
|
value: B.value,
|
|
1876
1876
|
valueLabel: _(B.value),
|
|
1877
1877
|
width: n,
|
|
@@ -2011,28 +2011,28 @@ const $u = ({
|
|
|
2011
2011
|
h(n), p(i), n && _(n);
|
|
2012
2012
|
}, [n, i]);
|
|
2013
2013
|
const f = g.useMemo(() => {
|
|
2014
|
-
const
|
|
2015
|
-
for (let D = 0; D <
|
|
2016
|
-
const L =
|
|
2014
|
+
const v = Fl({ start: Ve(d), end: $e(d) }), w = [];
|
|
2015
|
+
for (let D = 0; D < v.length; D++) {
|
|
2016
|
+
const L = v[D], k = Pl({ start: L, end: Rn(L, 6) }), B = [];
|
|
2017
2017
|
for (let M = 0; M < k.length; M++)
|
|
2018
2018
|
B.push(k[M]);
|
|
2019
|
-
|
|
2019
|
+
w.push(B);
|
|
2020
2020
|
}
|
|
2021
|
-
return
|
|
2022
|
-
}, [d]), E = (
|
|
2021
|
+
return w;
|
|
2022
|
+
}, [d]), E = (v) => {
|
|
2023
2023
|
if (r !== "None") {
|
|
2024
2024
|
if (r === "Single") {
|
|
2025
|
-
h(
|
|
2025
|
+
h(v), a?.(v);
|
|
2026
2026
|
return;
|
|
2027
2027
|
}
|
|
2028
|
-
!u || m ? (h(
|
|
2028
|
+
!u || m ? (h(v), p(void 0)) : Ze(v, u) ? (p(u), h(v), o?.(v, u)) : (p(v), o?.(u, v));
|
|
2029
2029
|
}
|
|
2030
2030
|
}, y = () => {
|
|
2031
|
-
const
|
|
2032
|
-
_(
|
|
2031
|
+
const v = Ae();
|
|
2032
|
+
_(v), r !== "None" && (h(v), r === "Single" ? a?.(v) : (p(v), o?.(v, v)));
|
|
2033
2033
|
}, S = () => {
|
|
2034
2034
|
_($t(d, 1));
|
|
2035
|
-
},
|
|
2035
|
+
}, T = () => {
|
|
2036
2036
|
_(Ot(d, 1));
|
|
2037
2037
|
};
|
|
2038
2038
|
return /* @__PURE__ */ t("div", { className: `mx-cmn-calendar ${c}`, children: /* @__PURE__ */ l(Tt, { sx: { boxShadow: "none" }, children: [
|
|
@@ -2042,11 +2042,11 @@ const $u = ({
|
|
|
2042
2042
|
copy: e,
|
|
2043
2043
|
date: d,
|
|
2044
2044
|
onNextClick: S,
|
|
2045
|
-
onPreviousClick:
|
|
2045
|
+
onPreviousClick: T
|
|
2046
2046
|
}
|
|
2047
2047
|
),
|
|
2048
|
-
/* @__PURE__ */ t("div", { className: "mx-cmn-calendar-header-row", children: f[0].map((
|
|
2049
|
-
f.map((
|
|
2048
|
+
/* @__PURE__ */ t("div", { className: "mx-cmn-calendar-header-row", children: f[0].map((v, w) => /* @__PURE__ */ t("div", { className: "mx-cmn-calendar-header-cell", children: /* @__PURE__ */ t(C, { bold: !0, variant: "Small", children: Ln(v, "EEEEE") }) }, w)) }),
|
|
2049
|
+
f.map((v, w) => /* @__PURE__ */ t("div", { className: "mx-cmn-calendar-week", children: v.map((D, L) => /* @__PURE__ */ t(
|
|
2050
2050
|
Yu,
|
|
2051
2051
|
{
|
|
2052
2052
|
beginDate: u,
|
|
@@ -2056,7 +2056,7 @@ const $u = ({
|
|
|
2056
2056
|
onClick: E
|
|
2057
2057
|
},
|
|
2058
2058
|
L
|
|
2059
|
-
)) }, `w-${
|
|
2059
|
+
)) }, `w-${w}`)),
|
|
2060
2060
|
/* @__PURE__ */ t("div", { className: "mx-cmn-calendar-today-container", children: /* @__PURE__ */ t(ee, { onClick: y, size: "small", variant: "text", children: e.today }) })
|
|
2061
2061
|
] }) });
|
|
2062
2062
|
}, Xu = (e) => ln({
|
|
@@ -2252,7 +2252,7 @@ const $u = ({
|
|
|
2252
2252
|
/* @__PURE__ */ t(C, { bold: !0, variant: "Small", children: P(e, "0,0") })
|
|
2253
2253
|
] })
|
|
2254
2254
|
] });
|
|
2255
|
-
}, i_ =
|
|
2255
|
+
}, i_ = x(n_), Di = ({
|
|
2256
2256
|
baseline: e = "max",
|
|
2257
2257
|
colors: n,
|
|
2258
2258
|
curve: i = "linear",
|
|
@@ -2272,10 +2272,10 @@ const $u = ({
|
|
|
2272
2272
|
valueFormatterString: y = "0,0",
|
|
2273
2273
|
width: S
|
|
2274
2274
|
}) => {
|
|
2275
|
-
const
|
|
2275
|
+
const T = st(), v = a.flat().map((G) => G.x), w = a.flat().map((G) => G.y), D = Math.round(w.reduce((G, q) => q + G, 0) / w.length), L = Math.floor(Math.min(...w) / 100) * 100, k = Math.ceil(Math.max(...w) / 100) * 100, B = a.map((G, q) => ({
|
|
2276
2276
|
type: _ ? "bar" : "line",
|
|
2277
2277
|
curve: i,
|
|
2278
|
-
color: _ ?
|
|
2278
|
+
color: _ ? T.palette.chart?.chart6 : n[q] ?? T.palette.primary.main,
|
|
2279
2279
|
data: G.map((se) => se.y),
|
|
2280
2280
|
area: u,
|
|
2281
2281
|
baseline: e,
|
|
@@ -2308,7 +2308,7 @@ const $u = ({
|
|
|
2308
2308
|
}
|
|
2309
2309
|
},
|
|
2310
2310
|
width: S,
|
|
2311
|
-
xAxis: [{ data:
|
|
2311
|
+
xAxis: [{ data: v, scaleType: _ ? "band" : "point" }],
|
|
2312
2312
|
yAxis: [
|
|
2313
2313
|
{
|
|
2314
2314
|
min: L,
|
|
@@ -2318,8 +2318,8 @@ const $u = ({
|
|
|
2318
2318
|
min: L,
|
|
2319
2319
|
max: k,
|
|
2320
2320
|
color: [
|
|
2321
|
-
|
|
2322
|
-
n[0] ??
|
|
2321
|
+
T.palette.background.paper,
|
|
2322
|
+
n[0] ?? T.palette.primary.main
|
|
2323
2323
|
]
|
|
2324
2324
|
} : void 0,
|
|
2325
2325
|
valueFormatter: (G) => P(G, y)
|
|
@@ -2335,7 +2335,7 @@ const $u = ({
|
|
|
2335
2335
|
e_,
|
|
2336
2336
|
{
|
|
2337
2337
|
...G,
|
|
2338
|
-
lineColor: G.ownerState.color ??
|
|
2338
|
+
lineColor: G.ownerState.color ?? T.palette.primary.main
|
|
2339
2339
|
}
|
|
2340
2340
|
)
|
|
2341
2341
|
}
|
|
@@ -2351,7 +2351,7 @@ const $u = ({
|
|
|
2351
2351
|
handlers: c,
|
|
2352
2352
|
showLabel: f,
|
|
2353
2353
|
style: d?.(G.dataIndex) ?? {},
|
|
2354
|
-
yData:
|
|
2354
|
+
yData: w,
|
|
2355
2355
|
...G
|
|
2356
2356
|
}
|
|
2357
2357
|
)
|
|
@@ -2371,7 +2371,7 @@ const $u = ({
|
|
|
2371
2371
|
ud,
|
|
2372
2372
|
{
|
|
2373
2373
|
lineStyle: {
|
|
2374
|
-
stroke:
|
|
2374
|
+
stroke: T.palette.grey[700],
|
|
2375
2375
|
strokeDasharray: "10, 8",
|
|
2376
2376
|
strokeWidth: 2
|
|
2377
2377
|
},
|
|
@@ -2471,7 +2471,7 @@ const $u = ({
|
|
|
2471
2471
|
] })
|
|
2472
2472
|
}
|
|
2473
2473
|
);
|
|
2474
|
-
}, o_ =
|
|
2474
|
+
}, o_ = x(a_), r_ = ({
|
|
2475
2475
|
categoryGuids: { guid: e, topLevelGuid: n },
|
|
2476
2476
|
itemData: { dataIndex: i },
|
|
2477
2477
|
series: a,
|
|
@@ -2544,7 +2544,7 @@ const $u = ({
|
|
|
2544
2544
|
hoveredAreaData: null,
|
|
2545
2545
|
isAreaHovered: !1,
|
|
2546
2546
|
cursorPos: { x: 0, y: 0 }
|
|
2547
|
-
}), { hoveredSeriesId: E, hoveredAreaData: y, isAreaHovered: S, cursorPos:
|
|
2547
|
+
}), { hoveredSeriesId: E, hoveredAreaData: y, isAreaHovered: S, cursorPos: T } = p, v = S && E && y, w = !v, D = [...o, ...r], L = D[0]?.dataset.length ?? 0, k = D.flatMap((Y) => Y.dataset.map((Ee) => Ee.x)), B = D.flatMap((Y) => Y.dataset.map((Ee) => Ee.y)), M = o[0]?.dataset?.map(
|
|
2548
2548
|
(Y, Ee) => o.reduce((Fe, Gt) => Fe + Gt.dataset[Ee]?.y || 0, 0)
|
|
2549
2549
|
) ?? [0], R = Math.max(...M), G = Math.max(
|
|
2550
2550
|
...r.flatMap((Y) => Y.dataset.map((Ee) => Ee.y))
|
|
@@ -2599,7 +2599,7 @@ const $u = ({
|
|
|
2599
2599
|
hoveredSeriesId: Ee,
|
|
2600
2600
|
hoveredAreaData: null,
|
|
2601
2601
|
isAreaHovered: !1,
|
|
2602
|
-
cursorPos:
|
|
2602
|
+
cursorPos: T
|
|
2603
2603
|
}), n?.(Fe);
|
|
2604
2604
|
else if (zn) {
|
|
2605
2605
|
const li = Gt?.data.map((Ta, xa) => ({
|
|
@@ -2610,14 +2610,14 @@ const $u = ({
|
|
|
2610
2610
|
hoveredSeriesId: Ee,
|
|
2611
2611
|
hoveredAreaData: li,
|
|
2612
2612
|
isAreaHovered: !0,
|
|
2613
|
-
cursorPos:
|
|
2613
|
+
cursorPos: T
|
|
2614
2614
|
}), e?.(Fe);
|
|
2615
2615
|
} else
|
|
2616
2616
|
f({
|
|
2617
2617
|
hoveredSeriesId: null,
|
|
2618
2618
|
hoveredAreaData: null,
|
|
2619
2619
|
isAreaHovered: !1,
|
|
2620
|
-
cursorPos:
|
|
2620
|
+
cursorPos: T
|
|
2621
2621
|
});
|
|
2622
2622
|
}, Ye = (Y) => {
|
|
2623
2623
|
const Ee = Y.currentTarget.getBoundingClientRect();
|
|
@@ -2673,7 +2673,7 @@ const $u = ({
|
|
|
2673
2673
|
}
|
|
2674
2674
|
},
|
|
2675
2675
|
slots: {
|
|
2676
|
-
itemContent: (Y) =>
|
|
2676
|
+
itemContent: (Y) => w && E ? /* @__PURE__ */ t(
|
|
2677
2677
|
r_,
|
|
2678
2678
|
{
|
|
2679
2679
|
categoryGuids: me(E),
|
|
@@ -2684,7 +2684,7 @@ const $u = ({
|
|
|
2684
2684
|
},
|
|
2685
2685
|
sx: Oe,
|
|
2686
2686
|
tooltip: {
|
|
2687
|
-
trigger:
|
|
2687
|
+
trigger: w ? "item" : "none"
|
|
2688
2688
|
},
|
|
2689
2689
|
width: c,
|
|
2690
2690
|
xAxis: [
|
|
@@ -2714,12 +2714,12 @@ const $u = ({
|
|
|
2714
2714
|
sx: { px: _ ? 0 : 24 }
|
|
2715
2715
|
}
|
|
2716
2716
|
),
|
|
2717
|
-
|
|
2717
|
+
v && /* @__PURE__ */ t(
|
|
2718
2718
|
o_,
|
|
2719
2719
|
{
|
|
2720
2720
|
categoryGuids: me(E),
|
|
2721
2721
|
chartContainerRef: u,
|
|
2722
|
-
cursorPosition:
|
|
2722
|
+
cursorPosition: T,
|
|
2723
2723
|
hoveredAreaData: y.map((Y) => ({
|
|
2724
2724
|
...Y,
|
|
2725
2725
|
x: oe(Y.x, ne.MONTH_SHORT_YEAR)
|
|
@@ -2916,7 +2916,7 @@ const $u = ({
|
|
|
2916
2916
|
shouldShrinkToIcon: o = !0,
|
|
2917
2917
|
variant: r = "outlined"
|
|
2918
2918
|
}) => {
|
|
2919
|
-
const s = ye(), { isMobile: c } = he(), [d, _] = g.useState(a), [u, h] = g.useState(i.dateRangePickerCopy.dateRangeThisMonth), [m, p] = g.useState(d), [f, E] = g.useState(!1), [y, S] = g.useState(!0), [
|
|
2919
|
+
const s = ye(), { isMobile: c } = he(), [d, _] = g.useState(a), [u, h] = g.useState(i.dateRangePickerCopy.dateRangeThisMonth), [m, p] = g.useState(d), [f, E] = g.useState(!1), [y, S] = g.useState(!0), [T, v] = g.useState(6), w = {
|
|
2920
2920
|
buttons: [
|
|
2921
2921
|
{ label: "3M", value: 3 },
|
|
2922
2922
|
{ label: "6M", value: 6 },
|
|
@@ -2934,10 +2934,10 @@ const $u = ({
|
|
|
2934
2934
|
p(a);
|
|
2935
2935
|
}, [a]), g.useEffect(() => {
|
|
2936
2936
|
(r === "timeframebuttons" || r === "timeframetabs") && e.onRangeChanged(D());
|
|
2937
|
-
}, [
|
|
2937
|
+
}, [T]);
|
|
2938
2938
|
const D = () => {
|
|
2939
2939
|
const M = $e(Sn());
|
|
2940
|
-
return [$e(Ot(M,
|
|
2940
|
+
return [$e(Ot(M, T)), M];
|
|
2941
2941
|
}, L = (M) => {
|
|
2942
2942
|
const R = [...d], G = d[0], q = d[1], se = M === "previous";
|
|
2943
2943
|
if (u === i.dateRangePickerCopy.dateRangeThisMonth)
|
|
@@ -2954,7 +2954,7 @@ const $u = ({
|
|
|
2954
2954
|
u === i.dateRangePickerCopy.dateRangeThisMonth || u === i.dateRangePickerCopy.dateRangeLastMonth
|
|
2955
2955
|
), e.onRangeChanged(m);
|
|
2956
2956
|
}, B = (M) => {
|
|
2957
|
-
|
|
2957
|
+
v(M);
|
|
2958
2958
|
};
|
|
2959
2959
|
return /* @__PURE__ */ l(O, { className: "mx-cmn-date-range-selector", m: 4, children: [
|
|
2960
2960
|
/* @__PURE__ */ l(
|
|
@@ -3036,8 +3036,8 @@ const $u = ({
|
|
|
3036
3036
|
color: n,
|
|
3037
3037
|
exclusive: !0,
|
|
3038
3038
|
orientation: "horizontal",
|
|
3039
|
-
value:
|
|
3040
|
-
children:
|
|
3039
|
+
value: T,
|
|
3040
|
+
children: w.buttons.map((M) => /* @__PURE__ */ t(
|
|
3041
3041
|
ni,
|
|
3042
3042
|
{
|
|
3043
3043
|
onClick: () => B(M.value),
|
|
@@ -3055,9 +3055,9 @@ const $u = ({
|
|
|
3055
3055
|
indicatorColor: "primary",
|
|
3056
3056
|
onChange: (M, R) => B(R),
|
|
3057
3057
|
textColor: "primary",
|
|
3058
|
-
value:
|
|
3058
|
+
value: T,
|
|
3059
3059
|
variant: "fullWidth",
|
|
3060
|
-
children:
|
|
3060
|
+
children: w.tabs.map((M) => /* @__PURE__ */ t(
|
|
3061
3061
|
ot,
|
|
3062
3062
|
{
|
|
3063
3063
|
label: /* @__PURE__ */ t(C, { bold: !0, variant: "Body", children: M.label }),
|
|
@@ -3368,8 +3368,8 @@ const ga = ({
|
|
|
3368
3368
|
sx: h = {},
|
|
3369
3369
|
title: m = ""
|
|
3370
3370
|
}) => {
|
|
3371
|
-
const [p, f] = g.useState(!1), [E, { height: y, width: S }] = Ri(), { onEvent:
|
|
3372
|
-
d && (d(),
|
|
3371
|
+
const [p, f] = g.useState(!1), [E, { height: y, width: S }] = Ri(), { onEvent: T } = X(), { isDesktop: v, isMobile: w, isTablet: D } = he(S), { displayedDateRange: L, isCopyLoaded: k, selectedAccountGuids: B, setSelectedAccountGuids: M } = le(), { common: R, connect: G } = I(), q = () => {
|
|
3372
|
+
d && (d(), T(W.WIDGET_BACK_CLICK));
|
|
3373
3373
|
};
|
|
3374
3374
|
if (!k)
|
|
3375
3375
|
return /* @__PURE__ */ t(de, {});
|
|
@@ -3411,9 +3411,9 @@ const ga = ({
|
|
|
3411
3411
|
{
|
|
3412
3412
|
className: s,
|
|
3413
3413
|
sx: {
|
|
3414
|
-
...
|
|
3414
|
+
...w && { px: 4 },
|
|
3415
3415
|
"& .mx-cmn-date-range-selector": {
|
|
3416
|
-
...(
|
|
3416
|
+
...(w || D) && { textAlign: "center" }
|
|
3417
3417
|
},
|
|
3418
3418
|
...h
|
|
3419
3419
|
},
|
|
@@ -3422,7 +3422,7 @@ const ga = ({
|
|
|
3422
3422
|
dn,
|
|
3423
3423
|
{
|
|
3424
3424
|
action: /* @__PURE__ */ l(b, { alignItems: "center", flexDirection: "row", children: [
|
|
3425
|
-
|
|
3425
|
+
v && i && /* @__PURE__ */ t(O, { sx: { flexGrow: 1 }, children: /* @__PURE__ */ t(
|
|
3426
3426
|
_r,
|
|
3427
3427
|
{
|
|
3428
3428
|
calendarActions: i,
|
|
@@ -3449,7 +3449,7 @@ const ga = ({
|
|
|
3449
3449
|
n?.map((me) => {
|
|
3450
3450
|
if (g.isValidElement(me)) return me;
|
|
3451
3451
|
const { iconName: J, onClick: Ke, label: U } = me;
|
|
3452
|
-
return Me ?
|
|
3452
|
+
return Me ? v || D ? /* @__PURE__ */ t(
|
|
3453
3453
|
ee,
|
|
3454
3454
|
{
|
|
3455
3455
|
onClick: Ke,
|
|
@@ -3458,7 +3458,7 @@ const ga = ({
|
|
|
3458
3458
|
children: U
|
|
3459
3459
|
},
|
|
3460
3460
|
J
|
|
3461
|
-
) : /* @__PURE__ */ t(He, { "aria-label": U, color: "primary", onClick: Ke, children: /* @__PURE__ */ t(K, { name: J, size: 24 }) }, J) :
|
|
3461
|
+
) : /* @__PURE__ */ t(He, { "aria-label": U, color: "primary", onClick: Ke, children: /* @__PURE__ */ t(K, { name: J, size: 24 }) }, J) : v || D ? /* @__PURE__ */ t(
|
|
3462
3462
|
ee,
|
|
3463
3463
|
{
|
|
3464
3464
|
onClick: Ke,
|
|
@@ -3472,15 +3472,15 @@ const ga = ({
|
|
|
3472
3472
|
] }),
|
|
3473
3473
|
sx: {
|
|
3474
3474
|
"& .MuiCardHeader-action": {
|
|
3475
|
-
...i &&
|
|
3476
|
-
...(
|
|
3475
|
+
...i && v && { flexGrow: 1 },
|
|
3476
|
+
...(w || D) && { alignSelf: "center" },
|
|
3477
3477
|
mr: 0
|
|
3478
3478
|
},
|
|
3479
|
-
p:
|
|
3479
|
+
p: v ? 48 : 24,
|
|
3480
3480
|
pb: 0
|
|
3481
3481
|
},
|
|
3482
|
-
title:
|
|
3483
|
-
|
|
3482
|
+
title: v || D ? /* @__PURE__ */ t(Xt, { children: m }) : /* @__PURE__ */ l(b, { alignItems: "center", flexDirection: "row", children: [
|
|
3483
|
+
w && d && /* @__PURE__ */ t(
|
|
3484
3484
|
He,
|
|
3485
3485
|
{
|
|
3486
3486
|
"aria-label": R.back_to_dashboard,
|
|
@@ -3494,8 +3494,8 @@ const ga = ({
|
|
|
3494
3494
|
] })
|
|
3495
3495
|
}
|
|
3496
3496
|
),
|
|
3497
|
-
c && /* @__PURE__ */ t(F, { sx: { mt:
|
|
3498
|
-
i && (
|
|
3497
|
+
c && /* @__PURE__ */ t(F, { sx: { mt: v ? 48 : 24 } }),
|
|
3498
|
+
i && (w || D) && /* @__PURE__ */ l(b, { gap: 24, justifyContent: "center", sx: { mt: w ? 0 : 16 }, children: [
|
|
3499
3499
|
u && /* @__PURE__ */ t(F, {}),
|
|
3500
3500
|
/* @__PURE__ */ t(
|
|
3501
3501
|
_r,
|
|
@@ -3520,7 +3520,7 @@ const ga = ({
|
|
|
3520
3520
|
]
|
|
3521
3521
|
}
|
|
3522
3522
|
);
|
|
3523
|
-
}, mt =
|
|
3523
|
+
}, mt = x(g_), m_ = ({ status: e = wn.Loading }) => {
|
|
3524
3524
|
const { connect: n } = I();
|
|
3525
3525
|
return /* @__PURE__ */ t(
|
|
3526
3526
|
O,
|
|
@@ -3545,7 +3545,7 @@ const ga = ({
|
|
|
3545
3545
|
] })
|
|
3546
3546
|
}
|
|
3547
3547
|
);
|
|
3548
|
-
}, Qi =
|
|
3548
|
+
}, Qi = x(m_);
|
|
3549
3549
|
var wn = /* @__PURE__ */ ((e) => (e.Loading = "loading", e.Error = "error", e))(wn || {}), Dt = /* @__PURE__ */ ((e) => (e.Currency = "currency", e.Date = "date", e.Input = "input", e.Select = "select", e))(Dt || {});
|
|
3550
3550
|
const hr = "connect_widget", gr = "connections_widget", p_ = ({
|
|
3551
3551
|
loadWidgetProps: e,
|
|
@@ -3591,7 +3591,7 @@ const hr = "connect_widget", gr = "connections_widget", p_ = ({
|
|
|
3591
3591
|
] })
|
|
3592
3592
|
}
|
|
3593
3593
|
);
|
|
3594
|
-
}, Tn =
|
|
3594
|
+
}, Tn = x(p_), Qt = ({
|
|
3595
3595
|
allowDecimals: e = !0,
|
|
3596
3596
|
ariaLabel: n,
|
|
3597
3597
|
amount: i,
|
|
@@ -3605,20 +3605,20 @@ const hr = "connect_widget", gr = "connections_widget", p_ = ({
|
|
|
3605
3605
|
setHasValidInput: u,
|
|
3606
3606
|
...h
|
|
3607
3607
|
}) => {
|
|
3608
|
-
const [m, p] = g.useState(""), { common: f } = I(), E = o || f.currency_input, y = yt(), S = C_(y),
|
|
3608
|
+
const [m, p] = g.useState(""), { common: f } = I(), E = o || f.currency_input, y = yt(), S = C_(y), T = /^[0-9]*$/, v = /^(\d)*(\,)?([0-9]{1,2})?$/, w = /^(\d)*(\.)?([0-9]{1,2})?$/;
|
|
3609
3609
|
let D;
|
|
3610
3610
|
const L = g.useRef(Cd());
|
|
3611
3611
|
if (e)
|
|
3612
3612
|
switch (Tu()) {
|
|
3613
3613
|
case Zi.CAD:
|
|
3614
|
-
D =
|
|
3614
|
+
D = v;
|
|
3615
3615
|
break;
|
|
3616
3616
|
default:
|
|
3617
|
-
D =
|
|
3617
|
+
D = w;
|
|
3618
3618
|
break;
|
|
3619
3619
|
}
|
|
3620
3620
|
else
|
|
3621
|
-
D =
|
|
3621
|
+
D = T;
|
|
3622
3622
|
g.useEffect(() => {
|
|
3623
3623
|
k(i);
|
|
3624
3624
|
}, [i]);
|
|
@@ -3729,7 +3729,7 @@ const hr = "connect_widget", gr = "connections_widget", p_ = ({
|
|
|
3729
3729
|
value: o
|
|
3730
3730
|
}
|
|
3731
3731
|
) });
|
|
3732
|
-
}, ma =
|
|
3732
|
+
}, ma = x(f_), mr = ({
|
|
3733
3733
|
checked: e = !1,
|
|
3734
3734
|
label: n,
|
|
3735
3735
|
sx: i = {},
|
|
@@ -3951,7 +3951,7 @@ const hr = "connect_widget", gr = "connections_widget", p_ = ({
|
|
|
3951
3951
|
)
|
|
3952
3952
|
]
|
|
3953
3953
|
}
|
|
3954
|
-
), Jt =
|
|
3954
|
+
), Jt = x(
|
|
3955
3955
|
({
|
|
3956
3956
|
children: e,
|
|
3957
3957
|
isDisabled: n = !1,
|
|
@@ -4469,7 +4469,7 @@ const si = () => {
|
|
|
4469
4469
|
/* @__PURE__ */ t(C, { bold: !0, sx: { flexGrow: 1, fontSize: 12 }, children: n.remaining_cash }),
|
|
4470
4470
|
/* @__PURE__ */ t(je, { amount: e, bold: !0, sx: { fontSize: 12 } })
|
|
4471
4471
|
] });
|
|
4472
|
-
}, yo =
|
|
4472
|
+
}, yo = x(N_), D_ = ({ onAddIncomeClick: e }) => {
|
|
4473
4473
|
const n = ye(), { availableWidth: i } = un(), { isMobile: a } = he(), { visibleCashAccounts: o, visibleCashBalance: r } = fe(), { selectedAccountGuids: s } = le(), { cashflow: c } = I(), { userProfile: d } = wt(), {
|
|
4474
4474
|
daysUntilNextIncome: _,
|
|
4475
4475
|
expensesTilNextIncome: u,
|
|
@@ -4485,15 +4485,15 @@ const si = () => {
|
|
|
4485
4485
|
}, [o, s]), g.useEffect(() => {
|
|
4486
4486
|
y && m(y), f(S);
|
|
4487
4487
|
}, [y, S]);
|
|
4488
|
-
const
|
|
4488
|
+
const T = g.useMemo(
|
|
4489
4489
|
() => o.filter((L) => s.includes(L.guid)).reduce((L, k) => L + (k?.balance || 0), 0),
|
|
4490
4490
|
[s, S]
|
|
4491
|
-
),
|
|
4491
|
+
), v = g.useMemo(
|
|
4492
4492
|
() => u.filter((L) => s.includes(L.accountGuid || "")).reduce((L, k) => L + k.amount, 0),
|
|
4493
4493
|
[s, u]
|
|
4494
|
-
),
|
|
4495
|
-
() =>
|
|
4496
|
-
[
|
|
4494
|
+
), w = g.useMemo(
|
|
4495
|
+
() => T - v,
|
|
4496
|
+
[T, v]
|
|
4497
4497
|
), D = d?.has_completed_cash_flow_onboarding && !!e;
|
|
4498
4498
|
return E ? /* @__PURE__ */ t(O, { className: "mx-cashflow", pl: 16, pr: 16, pt: 16, children: i > 610 ? /* @__PURE__ */ l(
|
|
4499
4499
|
b,
|
|
@@ -4505,7 +4505,7 @@ const si = () => {
|
|
|
4505
4505
|
px: 24,
|
|
4506
4506
|
children: [
|
|
4507
4507
|
/* @__PURE__ */ l(b, { pb: 14, pt: 12, children: [
|
|
4508
|
-
/* @__PURE__ */ t(je, { amount:
|
|
4508
|
+
/* @__PURE__ */ t(je, { amount: T, variant: "H2" }),
|
|
4509
4509
|
/* @__PURE__ */ t(_e, { variant: "XSmall", whiteSpace: "nowrap", children: A(
|
|
4510
4510
|
c.total_cash_accounts,
|
|
4511
4511
|
h.length
|
|
@@ -4513,12 +4513,12 @@ const si = () => {
|
|
|
4513
4513
|
] }),
|
|
4514
4514
|
/* @__PURE__ */ t(b, { pt: 18, children: /* @__PURE__ */ t(K, { name: "remove" }) }),
|
|
4515
4515
|
/* @__PURE__ */ l(b, { pb: 14, pt: 12, children: [
|
|
4516
|
-
/* @__PURE__ */ t(je, { amount:
|
|
4516
|
+
/* @__PURE__ */ t(je, { amount: v, variant: "H2" }),
|
|
4517
4517
|
/* @__PURE__ */ t(_e, { variant: "XSmall", whiteSpace: "nowrap", children: A(c.expenses_due, u.length) })
|
|
4518
4518
|
] }),
|
|
4519
4519
|
/* @__PURE__ */ t(b, { pt: 18, children: /* @__PURE__ */ t(K, { name: "equals" }) }),
|
|
4520
4520
|
/* @__PURE__ */ l(b, { pb: 14, pr: 24, pt: 12, children: [
|
|
4521
|
-
/* @__PURE__ */ t(je, { amount:
|
|
4521
|
+
/* @__PURE__ */ t(je, { amount: w, variant: "H2" }),
|
|
4522
4522
|
/* @__PURE__ */ l(b, { alignItems: "center", direction: "row", gap: 8, children: [
|
|
4523
4523
|
/* @__PURE__ */ t(_e, { variant: "XSmall", whiteSpace: "nowrap", children: c.available_to_spend }),
|
|
4524
4524
|
/* @__PURE__ */ t(fo, { body: c.tooltip_body, title: c.tooltip_title })
|
|
@@ -4549,7 +4549,7 @@ const si = () => {
|
|
|
4549
4549
|
/* @__PURE__ */ t(F, {}),
|
|
4550
4550
|
/* @__PURE__ */ l(b, { direction: "row", justifyContent: "space-between", p: 16, children: [
|
|
4551
4551
|
/* @__PURE__ */ t(C, { variant: "Small", children: A(c.expenses_due, u.length) }),
|
|
4552
|
-
/* @__PURE__ */ t(je, { amount:
|
|
4552
|
+
/* @__PURE__ */ t(je, { amount: v, bold: !0, symbol: "-", variant: "XSmall" })
|
|
4553
4553
|
] }),
|
|
4554
4554
|
/* @__PURE__ */ t(F, {}),
|
|
4555
4555
|
/* @__PURE__ */ t(
|
|
@@ -4563,7 +4563,7 @@ const si = () => {
|
|
|
4563
4563
|
justifyContent: "space-between",
|
|
4564
4564
|
px: 16,
|
|
4565
4565
|
sx: { borderBottomLeftRadius: 4, borderBottomRightRadius: 4 },
|
|
4566
|
-
children: /* @__PURE__ */ t(yo, { remaining:
|
|
4566
|
+
children: /* @__PURE__ */ t(yo, { remaining: w })
|
|
4567
4567
|
}
|
|
4568
4568
|
),
|
|
4569
4569
|
/* @__PURE__ */ t(F, {}),
|
|
@@ -4594,7 +4594,7 @@ const si = () => {
|
|
|
4594
4594
|
}
|
|
4595
4595
|
)
|
|
4596
4596
|
] }) }) : /* @__PURE__ */ t(de, { height: a ? 210 : 120 });
|
|
4597
|
-
}, R_ =
|
|
4597
|
+
}, R_ = x(D_), L_ = ({ onPrimaryCtaClick: e, sx: n = {} }) => {
|
|
4598
4598
|
const { cashflow: i } = I(), { isCopyLoaded: a, isInitialized: o } = le(), { loadRepeatingTransactions: r } = tt();
|
|
4599
4599
|
return g.useEffect(() => {
|
|
4600
4600
|
o && r().finally();
|
|
@@ -4610,7 +4610,7 @@ const si = () => {
|
|
|
4610
4610
|
children: /* @__PURE__ */ t(R_, { onAddIncomeClick: e })
|
|
4611
4611
|
}
|
|
4612
4612
|
) : /* @__PURE__ */ t(de, {});
|
|
4613
|
-
}, Q4 =
|
|
4613
|
+
}, Q4 = x(L_), O_ = (e) => {
|
|
4614
4614
|
if (!e) return "";
|
|
4615
4615
|
let n = e.user_name || e.feed_name || "";
|
|
4616
4616
|
return e.account_number && (n = `${n} *${e.account_number}`), n;
|
|
@@ -5673,7 +5673,7 @@ const mh = ({ transaction: e, onClick: n }) => {
|
|
|
5673
5673
|
}
|
|
5674
5674
|
)
|
|
5675
5675
|
);
|
|
5676
|
-
}, So =
|
|
5676
|
+
}, So = x(mh), pa = ({
|
|
5677
5677
|
bgcolor: e = "background.default",
|
|
5678
5678
|
children: n
|
|
5679
5679
|
}) => /* @__PURE__ */ t(O, { display: "inline-block", pb: 4, pl: 24, pt: 4, sx: { bgcolor: e, width: "100%" }, children: /* @__PURE__ */ t(C, { bold: !0, variant: "XSmall", children: n }) }), ph = ({ showIcon: e = !0, showSubtitle: n = !0 }) => {
|
|
@@ -5683,7 +5683,7 @@ const mh = ({ transaction: e, onClick: n }) => {
|
|
|
5683
5683
|
/* @__PURE__ */ t(C, { bold: !0, color: "secondary", variant: "Small", children: a.zero_state_no_transactions }),
|
|
5684
5684
|
n && /* @__PURE__ */ t(C, { color: "secondary", variant: "XSmall", children: a.zero_state_there_are_no_transactions })
|
|
5685
5685
|
] });
|
|
5686
|
-
}, Ch =
|
|
5686
|
+
}, Ch = x(ph), yr = (e, n) => {
|
|
5687
5687
|
const i = We(n[e].date), a = We(n[e - 1]?.date);
|
|
5688
5688
|
return !At(i, a);
|
|
5689
5689
|
}, fh = (e, n) => {
|
|
@@ -5700,58 +5700,58 @@ const mh = ({ transaction: e, onClick: n }) => {
|
|
|
5700
5700
|
width: c = "100%",
|
|
5701
5701
|
zeroState: d = /* @__PURE__ */ t(Ch, {})
|
|
5702
5702
|
}) => {
|
|
5703
|
-
const { isLoading: _, sortedTransactions: u } = Re(), h = g.useMemo(() => s ? u : u.filter((
|
|
5704
|
-
const
|
|
5705
|
-
if (
|
|
5706
|
-
f(
|
|
5703
|
+
const { isLoading: _, sortedTransactions: u } = Re(), h = g.useMemo(() => s ? u : u.filter((v) => !v.is_hidden), [u, s]), { clearExpandedSplits: m, setShowInsights: p, toggleSplit: f } = vt(), { onEvent: E } = X(), y = (v) => {
|
|
5704
|
+
const w = h.find((D) => D.guid === v);
|
|
5705
|
+
if (w?.has_been_split) {
|
|
5706
|
+
f(w.guid);
|
|
5707
5707
|
return;
|
|
5708
5708
|
}
|
|
5709
5709
|
E(W.ACCOUNT_DETAILS_CLICK_TRANSACTION, {
|
|
5710
|
-
account_guid:
|
|
5711
|
-
transaction_guid:
|
|
5712
|
-
}), a?.(
|
|
5713
|
-
}, S = g.useRef(null),
|
|
5710
|
+
account_guid: w?.account_guid,
|
|
5711
|
+
transaction_guid: v
|
|
5712
|
+
}), a?.(v);
|
|
5713
|
+
}, S = g.useRef(null), T = Os({
|
|
5714
5714
|
count: h.length,
|
|
5715
5715
|
getScrollElement: () => S.current,
|
|
5716
|
-
estimateSize: (
|
|
5716
|
+
estimateSize: (v) => Er + (yr(v, h) ? Sr : 0),
|
|
5717
5717
|
overscan: 5
|
|
5718
5718
|
});
|
|
5719
|
-
return g.useEffect(() =>
|
|
5719
|
+
return g.useEffect(() => T.measure(), [h]), g.useEffect(() => p(o), [o]), g.useEffect(() => () => m(), []), /* @__PURE__ */ t(ie, { children: /* @__PURE__ */ t(O, { height: n, overflow: "auto", ref: S, width: c, children: /* @__PURE__ */ l(
|
|
5720
5720
|
O,
|
|
5721
5721
|
{
|
|
5722
5722
|
height: (
|
|
5723
5723
|
// set the height to auto when there are no transactions so the zero state isn't set to 0
|
|
5724
|
-
|
|
5724
|
+
T.getVirtualItems().length === 0 ? "auto" : T.getTotalSize()
|
|
5725
5725
|
),
|
|
5726
5726
|
position: "relative",
|
|
5727
5727
|
width: "100%",
|
|
5728
5728
|
children: [
|
|
5729
5729
|
(_ || r) && i,
|
|
5730
|
-
!_ && !r &&
|
|
5731
|
-
!_ && !r &&
|
|
5732
|
-
const
|
|
5730
|
+
!_ && !r && T.getVirtualItems().length === 0 && d,
|
|
5731
|
+
!_ && !r && T.getVirtualItems().length > 0 && T.getVirtualItems().map((v) => {
|
|
5732
|
+
const w = h[v.index], D = yr(v.index, h), L = fh(v.index, h), k = Er + (D ? Sr : 0);
|
|
5733
5733
|
return /* @__PURE__ */ l(
|
|
5734
5734
|
O,
|
|
5735
5735
|
{
|
|
5736
5736
|
sx: {
|
|
5737
5737
|
height: k,
|
|
5738
5738
|
position: "absolute",
|
|
5739
|
-
transform: `translateY(${
|
|
5739
|
+
transform: `translateY(${v.start}px)`,
|
|
5740
5740
|
width: "100%"
|
|
5741
5741
|
},
|
|
5742
5742
|
children: [
|
|
5743
|
-
D && /* @__PURE__ */ t(pa, { bgcolor: e, children: _a(
|
|
5744
|
-
/* @__PURE__ */ t(So, { onClick: y, transaction:
|
|
5743
|
+
D && /* @__PURE__ */ t(pa, { bgcolor: e, children: _a(w.date) }),
|
|
5744
|
+
/* @__PURE__ */ t(So, { onClick: y, transaction: w }),
|
|
5745
5745
|
/* @__PURE__ */ t(F, { sx: { ml: L ? 24 : 0 } })
|
|
5746
5746
|
]
|
|
5747
5747
|
},
|
|
5748
|
-
|
|
5748
|
+
w.guid
|
|
5749
5749
|
);
|
|
5750
5750
|
})
|
|
5751
5751
|
]
|
|
5752
5752
|
}
|
|
5753
5753
|
) }) });
|
|
5754
|
-
}, kn =
|
|
5754
|
+
}, kn = x(bh), yh = (e) => /* @__PURE__ */ l(C, { tabIndex: e.tabIndex, variant: "Small", children: [
|
|
5755
5755
|
`${e.row.account}`,
|
|
5756
5756
|
e.row.number && ` | ${e.row.number}`
|
|
5757
5757
|
] }), Eh = (e) => {
|
|
@@ -5782,7 +5782,7 @@ const mh = ({ transaction: e, onClick: n }) => {
|
|
|
5782
5782
|
]
|
|
5783
5783
|
}
|
|
5784
5784
|
);
|
|
5785
|
-
}, Ah =
|
|
5785
|
+
}, Ah = x(Sh), Th = (e) => /* @__PURE__ */ t(C, { tabIndex: e.tabIndex, variant: "Small", children: oe(We(e.row.date), ne.MONTH_DAY) }), xh = (e) => {
|
|
5786
5786
|
const n = st(), { transactions: i } = I(), { is_flagged: a, is_hidden: o, has_been_viewed: r, parent_guid: s } = e.row, d = !r && !!!s;
|
|
5787
5787
|
return /* @__PURE__ */ l(
|
|
5788
5788
|
O,
|
|
@@ -5810,7 +5810,7 @@ const mh = ({ transaction: e, onClick: n }) => {
|
|
|
5810
5810
|
]
|
|
5811
5811
|
}
|
|
5812
5812
|
);
|
|
5813
|
-
}, Ih =
|
|
5813
|
+
}, Ih = x(xh), ui = (e) => /* @__PURE__ */ t(C, { fontWeight: 600, variant: "Small", children: e.colDef.headerName }), wh = (e) => /* @__PURE__ */ l(b, { alignItems: "center", direction: "row", gap: 8, children: [
|
|
5814
5814
|
/* @__PURE__ */ t(
|
|
5815
5815
|
qt,
|
|
5816
5816
|
{
|
|
@@ -5910,7 +5910,7 @@ const mh = ({ transaction: e, onClick: n }) => {
|
|
|
5910
5910
|
}
|
|
5911
5911
|
}
|
|
5912
5912
|
) });
|
|
5913
|
-
}, Nh =
|
|
5913
|
+
}, Nh = x(vh), _n = () => {
|
|
5914
5914
|
if (!g.useContext(Yn))
|
|
5915
5915
|
throw new Error("useCategoryUiStore() must be used within the GlobalDataContext");
|
|
5916
5916
|
return Ue().uiStore;
|
|
@@ -5979,7 +5979,7 @@ const Dh = ({
|
|
|
5979
5979
|
) })
|
|
5980
5980
|
}
|
|
5981
5981
|
);
|
|
5982
|
-
}, Ao =
|
|
5982
|
+
}, Ao = x(Dh), Rh = ({ parentCategory: e }) => {
|
|
5983
5983
|
const [n, i] = g.useState(!1), { addCategory: a } = Ue(), { categories: o } = I(), { onEvent: r } = X(), { setShouldDisableDrawerScroll: s } = _n(), c = async (u) => {
|
|
5984
5984
|
await a(u.trim(), e.guid), r(jt.ON_SUBCATEGORY_ADDED), i(!1);
|
|
5985
5985
|
}, d = async () => {
|
|
@@ -6005,7 +6005,7 @@ const Dh = ({
|
|
|
6005
6005
|
}
|
|
6006
6006
|
)
|
|
6007
6007
|
] });
|
|
6008
|
-
}, Lh =
|
|
6008
|
+
}, Lh = x(Rh), Oh = ({
|
|
6009
6009
|
setShowRename: e,
|
|
6010
6010
|
subCategory: n,
|
|
6011
6011
|
showRename: i
|
|
@@ -6025,7 +6025,7 @@ const Dh = ({
|
|
|
6025
6025
|
type: Ca.EDIT
|
|
6026
6026
|
}
|
|
6027
6027
|
);
|
|
6028
|
-
}, Mh =
|
|
6028
|
+
}, Mh = x(Oh), kh = ({
|
|
6029
6029
|
parentCategory: e,
|
|
6030
6030
|
showDelete: n,
|
|
6031
6031
|
setShowDelete: i,
|
|
@@ -6046,7 +6046,7 @@ const Dh = ({
|
|
|
6046
6046
|
type: Ca.DELETE
|
|
6047
6047
|
}
|
|
6048
6048
|
);
|
|
6049
|
-
}, Gh =
|
|
6049
|
+
}, Gh = x(kh), Bh = ({ parentCategory: e, subCategory: n }) => {
|
|
6050
6050
|
const {
|
|
6051
6051
|
onSelect: i,
|
|
6052
6052
|
selectedGuid: a,
|
|
@@ -6055,7 +6055,7 @@ const Dh = ({
|
|
|
6055
6055
|
showSelected: s,
|
|
6056
6056
|
unselectable: c,
|
|
6057
6057
|
unselectableText: d
|
|
6058
|
-
} = _n(), { categories: _ } = I(), { onEvent: u } = X(), [h, m] = g.useState(!1), [p, f] = g.useState(!1), E = !!n.revision, y = n.guid === a, S = !c.some((
|
|
6058
|
+
} = _n(), { categories: _ } = I(), { onEvent: u } = X(), [h, m] = g.useState(!1), [p, f] = g.useState(!1), E = !!n.revision, y = n.guid === a, S = !c.some((v) => v === n.guid);
|
|
6059
6059
|
return /* @__PURE__ */ l(
|
|
6060
6060
|
j,
|
|
6061
6061
|
{
|
|
@@ -6129,7 +6129,7 @@ const Dh = ({
|
|
|
6129
6129
|
]
|
|
6130
6130
|
}
|
|
6131
6131
|
);
|
|
6132
|
-
}, Hh =
|
|
6132
|
+
}, Hh = x(Bh), Ph = ({ categories: e, parentCategory: n }) => {
|
|
6133
6133
|
const { expandedGuid: i, searchValue: a } = _n(), o = n.guid === i, r = !!a;
|
|
6134
6134
|
return /* @__PURE__ */ t(
|
|
6135
6135
|
Kn,
|
|
@@ -6155,7 +6155,7 @@ const Dh = ({
|
|
|
6155
6155
|
)
|
|
6156
6156
|
}
|
|
6157
6157
|
);
|
|
6158
|
-
}, Fh =
|
|
6158
|
+
}, Fh = x(Ph), Wh = ({ category: e, subCategories: n }) => {
|
|
6159
6159
|
const { expandedGuid: i, searchValue: a, setExpandedGuid: o } = _n(), { onEvent: r } = X(), s = e.guid === i, c = () => {
|
|
6160
6160
|
const d = e.guid !== i ? e.guid : null;
|
|
6161
6161
|
o(d), r(d ? jt.ON_CATEGORY_EXPANDED : jt.ON_CATEGORY_COLLAPSED);
|
|
@@ -6194,7 +6194,7 @@ const Dh = ({
|
|
|
6194
6194
|
/* @__PURE__ */ t(F, { sx: { ml: 58 } }),
|
|
6195
6195
|
/* @__PURE__ */ t(Fh, { categories: n, parentCategory: e })
|
|
6196
6196
|
] });
|
|
6197
|
-
}, dc =
|
|
6197
|
+
}, dc = x(Wh), Uh = () => {
|
|
6198
6198
|
const { categories: e } = Ue(), { searchValue: n } = _n(), { categories: i } = I(), o = ((r, s = "") => r.reduce((c, d) => {
|
|
6199
6199
|
if (d.parent_guid === null) {
|
|
6200
6200
|
const u = [
|
|
@@ -6220,7 +6220,7 @@ const Dh = ({
|
|
|
6220
6220
|
},
|
|
6221
6221
|
r.category.guid
|
|
6222
6222
|
)) }) });
|
|
6223
|
-
}, Vh =
|
|
6223
|
+
}, Vh = x(Uh), Kh = ({
|
|
6224
6224
|
initialSelected: e,
|
|
6225
6225
|
onSelect: n = void 0,
|
|
6226
6226
|
showSelected: i = !0,
|
|
@@ -6255,7 +6255,7 @@ const Dh = ({
|
|
|
6255
6255
|
),
|
|
6256
6256
|
/* @__PURE__ */ t(Vh, {})
|
|
6257
6257
|
] }) : /* @__PURE__ */ t(de, {});
|
|
6258
|
-
}, Yh =
|
|
6258
|
+
}, Yh = x(Kh), zh = ({
|
|
6259
6259
|
id: e,
|
|
6260
6260
|
onClose: n,
|
|
6261
6261
|
title: i,
|
|
@@ -6275,7 +6275,7 @@ const Dh = ({
|
|
|
6275
6275
|
children: /* @__PURE__ */ t(Yh, { ...o })
|
|
6276
6276
|
}
|
|
6277
6277
|
) : /* @__PURE__ */ t(de, {});
|
|
6278
|
-
}, fa =
|
|
6278
|
+
}, fa = x(zh), jh = 3, Ar = 12, $h = (e, n, i) => e.filter((a) => !a.parent_guid).map(
|
|
6279
6279
|
(a) => uc(
|
|
6280
6280
|
a,
|
|
6281
6281
|
n,
|
|
@@ -6480,7 +6480,7 @@ const _c = ({ transaction: e }) => {
|
|
|
6480
6480
|
});
|
|
6481
6481
|
}, p = (y) => {
|
|
6482
6482
|
if (e.is_manual && !e.guid) {
|
|
6483
|
-
const S = a.find((
|
|
6483
|
+
const S = a.find((T) => T.guid === y);
|
|
6484
6484
|
s({
|
|
6485
6485
|
...e,
|
|
6486
6486
|
category: S?.name,
|
|
@@ -6655,7 +6655,7 @@ const _c = ({ transaction: e }) => {
|
|
|
6655
6655
|
}
|
|
6656
6656
|
)
|
|
6657
6657
|
] });
|
|
6658
|
-
}, Qh =
|
|
6658
|
+
}, Qh = x(Zh), Jh = ({ transaction: e }) => {
|
|
6659
6659
|
const { onEvent: n } = X(), { updateTransaction: i } = Re(), { setShouldDisableDrawerScroll: a } = vt(), { common: o, transactions: r } = I(), [s, c] = g.useState(!1), d = async () => {
|
|
6660
6660
|
await i({ ...e, merchant_guid: "" }), n(W.TRANSACTION_DETAILS_CLICK_DELETE_LOGO, {
|
|
6661
6661
|
transaction_guid: e.guid
|
|
@@ -6695,7 +6695,7 @@ const _c = ({ transaction: e }) => {
|
|
|
6695
6695
|
}
|
|
6696
6696
|
)
|
|
6697
6697
|
] });
|
|
6698
|
-
}, eg =
|
|
6698
|
+
}, eg = x(Jh), tg = ({ transaction: e }) => {
|
|
6699
6699
|
const { onEvent: n } = X(), { updateTransaction: i } = Re(), { setShouldDisableDrawerScroll: a } = vt(), { common: o, transactions: r } = I(), [s, c] = g.useState(!1), d = e.is_hidden, _ = async () => {
|
|
6700
6700
|
await i({ ...e, is_hidden: !e.is_hidden }), n(
|
|
6701
6701
|
d ? $.ON_TRANSACTION_UNHIDDEN : $.ON_TRANSACTION_HIDDEN
|
|
@@ -6765,7 +6765,7 @@ const _c = ({ transaction: e }) => {
|
|
|
6765
6765
|
}
|
|
6766
6766
|
)
|
|
6767
6767
|
] });
|
|
6768
|
-
}, ng =
|
|
6768
|
+
}, ng = x(tg), gc = ({ transaction: e }) => {
|
|
6769
6769
|
const { amount: n, description: i, isIncome: a, merchant_guid: o, payee: r, top_level_category_guid: s } = e;
|
|
6770
6770
|
return /* @__PURE__ */ l(b, { className: "mx-txn-amount-header", direction: "row", gap: 12, px: 16, py: 24, children: [
|
|
6771
6771
|
/* @__PURE__ */ t(
|
|
@@ -6854,7 +6854,7 @@ const _c = ({ transaction: e }) => {
|
|
|
6854
6854
|
}
|
|
6855
6855
|
)
|
|
6856
6856
|
] });
|
|
6857
|
-
}, mc =
|
|
6857
|
+
}, mc = x(ig), ag = ({
|
|
6858
6858
|
index: e,
|
|
6859
6859
|
onDeleteRow: n,
|
|
6860
6860
|
onCategoryChanged: i,
|
|
@@ -6959,7 +6959,7 @@ const _c = ({ transaction: e }) => {
|
|
|
6959
6959
|
]
|
|
6960
6960
|
}
|
|
6961
6961
|
);
|
|
6962
|
-
}, og =
|
|
6962
|
+
}, og = x(ag), rg = ({
|
|
6963
6963
|
onAddSplit: e,
|
|
6964
6964
|
onCategoryChanged: n,
|
|
6965
6965
|
onDeleteSplit: i,
|
|
@@ -7011,7 +7011,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7011
7011
|
}
|
|
7012
7012
|
) })
|
|
7013
7013
|
] });
|
|
7014
|
-
}, sg =
|
|
7014
|
+
}, sg = x(rg), cg = ({ transaction: e }) => {
|
|
7015
7015
|
const { onEvent: n } = X(), { splitTransaction: i, unSplitTransaction: a } = Re(), { common: o, transactions: r } = I(), { setShouldDisableDrawerScroll: s } = vt(), { categories: c } = Ue(), d = {
|
|
7016
7016
|
...e,
|
|
7017
7017
|
amount: e.amount - 1,
|
|
@@ -7035,13 +7035,13 @@ const _c = ({ transaction: e }) => {
|
|
|
7035
7035
|
const R = f[M], G = [...f];
|
|
7036
7036
|
G.splice(M, 1), G[0].amount += R.amount, E(G);
|
|
7037
7037
|
}
|
|
7038
|
-
},
|
|
7038
|
+
}, T = (M, R) => {
|
|
7039
7039
|
const G = [...f];
|
|
7040
7040
|
G[M].amount = R, G[0].amount = e.amount - G.reduce(
|
|
7041
7041
|
(q, se, pe) => q + (pe !== 0 ? se.amount : 0),
|
|
7042
7042
|
0
|
|
7043
7043
|
), E(G);
|
|
7044
|
-
},
|
|
7044
|
+
}, v = (M, R) => {
|
|
7045
7045
|
const G = [...f], q = c.find((se) => se.guid === R);
|
|
7046
7046
|
q && (G[M] = {
|
|
7047
7047
|
...G[M],
|
|
@@ -7049,7 +7049,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7049
7049
|
category: q.name,
|
|
7050
7050
|
top_level_category_guid: q.parent_guid || R
|
|
7051
7051
|
}, E(G));
|
|
7052
|
-
},
|
|
7052
|
+
}, w = () => {
|
|
7053
7053
|
if (e.parent_guid || e.has_been_split) {
|
|
7054
7054
|
p(!0);
|
|
7055
7055
|
return;
|
|
@@ -7072,7 +7072,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7072
7072
|
return M || R;
|
|
7073
7073
|
}, [f]);
|
|
7074
7074
|
return /* @__PURE__ */ l(g.Fragment, { children: [
|
|
7075
|
-
e && /* @__PURE__ */ t(j, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ l(ue, { onClick:
|
|
7075
|
+
e && /* @__PURE__ */ t(j, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ l(ue, { onClick: w, children: [
|
|
7076
7076
|
/* @__PURE__ */ t(Pe, { children: /* @__PURE__ */ t(Pt, { sx: { bgcolor: "border.light" }, variant: "rounded", children: /* @__PURE__ */ t(K, { name: "call_split", sx: { color: "text.primary" }, weight: St.Dark }) }) }),
|
|
7077
7077
|
/* @__PURE__ */ t(
|
|
7078
7078
|
ae,
|
|
@@ -7100,9 +7100,9 @@ const _c = ({ transaction: e }) => {
|
|
|
7100
7100
|
sg,
|
|
7101
7101
|
{
|
|
7102
7102
|
onAddSplit: y,
|
|
7103
|
-
onCategoryChanged:
|
|
7103
|
+
onCategoryChanged: v,
|
|
7104
7104
|
onDeleteSplit: S,
|
|
7105
|
-
onUpdateAmount:
|
|
7105
|
+
onUpdateAmount: T,
|
|
7106
7106
|
splits: f,
|
|
7107
7107
|
transaction: e
|
|
7108
7108
|
}
|
|
@@ -7131,7 +7131,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7131
7131
|
}
|
|
7132
7132
|
)
|
|
7133
7133
|
] });
|
|
7134
|
-
}, lg =
|
|
7134
|
+
}, lg = x(cg), dg = () => {
|
|
7135
7135
|
const e = ye(), { onEvent: n } = X(), { addTag: i } = Re(), { transactions: a } = I(), [o, r] = g.useState(!1), [s, c] = g.useState(""), [d, _] = g.useState(""), u = g.useRef(null);
|
|
7136
7136
|
g.useEffect(() => {
|
|
7137
7137
|
o && u?.current?.focus();
|
|
@@ -7194,7 +7194,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7194
7194
|
}
|
|
7195
7195
|
)
|
|
7196
7196
|
] });
|
|
7197
|
-
}, ug =
|
|
7197
|
+
}, ug = x(dg), _g = ({ onSearchValueChanged: e, searchValue: n }) => {
|
|
7198
7198
|
const { common: i, transactions: a } = I(), o = yt(), r = /* @__PURE__ */ t(
|
|
7199
7199
|
He,
|
|
7200
7200
|
{
|
|
@@ -7218,7 +7218,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7218
7218
|
value: n
|
|
7219
7219
|
}
|
|
7220
7220
|
) });
|
|
7221
|
-
}, hg =
|
|
7221
|
+
}, hg = x(_g), gg = ({ onTagChecked: e, selectedTags: n, tag: i }) => {
|
|
7222
7222
|
const { onEvent: a } = X(), { removeTag: o, updateTag: r } = Re(), { common: s, transactions: c } = I(), [d, _] = g.useState(!1), [u, h] = g.useState(!1), [m, p] = g.useState(""), [f, E] = g.useState(""), y = async () => {
|
|
7223
7223
|
a($.ON_TRANSACTION_TAGS_TAG_EDIT_SAVED), i && await r({ ...i, name: m }), _(!1);
|
|
7224
7224
|
}, S = async () => {
|
|
@@ -7227,9 +7227,9 @@ const _c = ({ transaction: e }) => {
|
|
|
7227
7227
|
g.useEffect(() => {
|
|
7228
7228
|
E(m.length > 40 ? c.tags_error_name_must_be_40_chars : "");
|
|
7229
7229
|
}, [m]);
|
|
7230
|
-
const
|
|
7230
|
+
const T = () => {
|
|
7231
7231
|
a($.ON_TRANSACTION_TAGS_TAG_EDIT_CLICK), p(i.name), _(!0);
|
|
7232
|
-
},
|
|
7232
|
+
}, v = () => {
|
|
7233
7233
|
a($.ON_TRANSACTION_TAGS_TAG_DELETE_CLICK), h(!0);
|
|
7234
7234
|
};
|
|
7235
7235
|
return /* @__PURE__ */ l(
|
|
@@ -7244,7 +7244,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7244
7244
|
{
|
|
7245
7245
|
"aria-label": `Edit ${i.name} tag`,
|
|
7246
7246
|
color: "secondary",
|
|
7247
|
-
onClick:
|
|
7247
|
+
onClick: T,
|
|
7248
7248
|
children: /* @__PURE__ */ t(Vd, { color: "secondary" })
|
|
7249
7249
|
}
|
|
7250
7250
|
),
|
|
@@ -7253,7 +7253,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7253
7253
|
{
|
|
7254
7254
|
"aria-label": `Delete ${i.name} tag`,
|
|
7255
7255
|
color: "secondary",
|
|
7256
|
-
onClick:
|
|
7256
|
+
onClick: v,
|
|
7257
7257
|
children: /* @__PURE__ */ t(qi, { color: "secondary" })
|
|
7258
7258
|
}
|
|
7259
7259
|
)
|
|
@@ -7286,7 +7286,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7286
7286
|
"aria-describedby": f ? "update-tag-error" : void 0,
|
|
7287
7287
|
"aria-label": c.tags_update_the_tag_name,
|
|
7288
7288
|
name: "update-tag",
|
|
7289
|
-
onChange: (
|
|
7289
|
+
onChange: (w) => p(w.target.value),
|
|
7290
7290
|
placeholder: "Tag name",
|
|
7291
7291
|
sx: { width: "100%" },
|
|
7292
7292
|
value: m
|
|
@@ -7312,7 +7312,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7312
7312
|
]
|
|
7313
7313
|
}
|
|
7314
7314
|
);
|
|
7315
|
-
}, mg =
|
|
7315
|
+
}, mg = x(gg), pg = ({ selectedTags: e, onTagChecked: n }) => {
|
|
7316
7316
|
const { tags: i } = Re(), [a, o] = g.useState(""), r = i.filter(
|
|
7317
7317
|
(s) => s.name.toLowerCase().includes(a.toLowerCase())
|
|
7318
7318
|
);
|
|
@@ -7330,7 +7330,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7330
7330
|
/* @__PURE__ */ t(F, { sx: { ml: 24 } })
|
|
7331
7331
|
] }, s.guid)) }) })
|
|
7332
7332
|
] });
|
|
7333
|
-
}, Cg =
|
|
7333
|
+
}, Cg = x(pg), fg = ({ transaction: e }) => {
|
|
7334
7334
|
const { onEvent: n } = X(), { tags: i, updateTaggings: a, updateTransaction: o } = Re(), { common: r, transactions: s } = I(), { updateManualTransaction: c } = vt(), [d, _] = g.useState(!1), [u, h] = g.useState(e.tags);
|
|
7335
7335
|
g.useEffect(() => {
|
|
7336
7336
|
h(e.tags);
|
|
@@ -7346,7 +7346,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7346
7346
|
await a(u, e.guid), await o({ ...e, tags: u }), n(W.TRANSACTION_DETAILS_CLICK_TAGS, { transaction_guid: e.guid }), _(!1);
|
|
7347
7347
|
}, f = g.useMemo(
|
|
7348
7348
|
() => e.tags.map(
|
|
7349
|
-
(E, y, S) => `${i.find((
|
|
7349
|
+
(E, y, S) => `${i.find((T) => T.guid === E)?.name}${y < S.length - 1 ? " / " : ""}`
|
|
7350
7350
|
),
|
|
7351
7351
|
[i, e]
|
|
7352
7352
|
);
|
|
@@ -7385,7 +7385,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7385
7385
|
}
|
|
7386
7386
|
)
|
|
7387
7387
|
] });
|
|
7388
|
-
}, pc =
|
|
7388
|
+
}, pc = x(fg), bg = ({ transaction: e }) => {
|
|
7389
7389
|
const { updateTransaction: n } = Re(), { common: i, transactions: a } = I(), { onEvent: o } = X(), [r, s] = g.useState(!1), [c, d] = g.useState(""), _ = g.useRef(null);
|
|
7390
7390
|
g.useEffect(() => {
|
|
7391
7391
|
r && (d(e.description), _?.current?.focus());
|
|
@@ -7436,7 +7436,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7436
7436
|
}
|
|
7437
7437
|
)
|
|
7438
7438
|
] }) });
|
|
7439
|
-
}, yg =
|
|
7439
|
+
}, yg = x(bg), Eg = ({ transaction: e }) => {
|
|
7440
7440
|
const { updateTransaction: n } = Re(), { transactions: i } = I(), { onEvent: a } = X(), o = ye(), r = async () => {
|
|
7441
7441
|
a(W.TRANSACTION_DETAILS_CLICK_FLAG, { transaction_guid: e.guid }), await n({ ...e, is_flagged: !e.is_flagged });
|
|
7442
7442
|
};
|
|
@@ -7468,7 +7468,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7468
7468
|
children: /* @__PURE__ */ t(Yd, { color: "inherit" })
|
|
7469
7469
|
}
|
|
7470
7470
|
) });
|
|
7471
|
-
}, Sg =
|
|
7471
|
+
}, Sg = x(Eg), Ag = ({
|
|
7472
7472
|
bottomActions: e = z_,
|
|
7473
7473
|
topActions: n = Y_,
|
|
7474
7474
|
transaction: i
|
|
@@ -7519,7 +7519,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7519
7519
|
i.is_manual && !i.parent_guid && !i.has_been_split && /* @__PURE__ */ t(Qh, { transaction: i })
|
|
7520
7520
|
] }) })
|
|
7521
7521
|
] }) }) : /* @__PURE__ */ t(de, {});
|
|
7522
|
-
}, ci =
|
|
7522
|
+
}, ci = x(Ag), Tg = ({ copy: e, isOpen: n, onClose: i, onPrimaryAction: a }) => {
|
|
7523
7523
|
const { common: o, transactions: r } = I(), { isCopyLoaded: s } = le();
|
|
7524
7524
|
return s ? /* @__PURE__ */ l(
|
|
7525
7525
|
ke,
|
|
@@ -7538,7 +7538,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7538
7538
|
]
|
|
7539
7539
|
}
|
|
7540
7540
|
) : /* @__PURE__ */ t(de, {});
|
|
7541
|
-
}, xg =
|
|
7541
|
+
}, xg = x(Tg), Ig = () => {
|
|
7542
7542
|
const { visibleAccounts: e } = fe(), { common: n, transactions: i } = I(), { manualTransaction: a, setIsAmountValid: o, updateManualTransaction: r } = vt(), [s, c] = g.useState(""), [d, _] = g.useState(""), u = g.useMemo(
|
|
7543
7543
|
() => e.filter((y) => y.is_manual),
|
|
7544
7544
|
[e]
|
|
@@ -7640,7 +7640,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7640
7640
|
/* @__PURE__ */ t(pc, { transaction: a })
|
|
7641
7641
|
] })
|
|
7642
7642
|
] });
|
|
7643
|
-
}, wg =
|
|
7643
|
+
}, wg = x(Ig), vg = ({ onClose: e, transaction: n }) => {
|
|
7644
7644
|
const { addOrUpdateTransactionRule: i, updateTransaction: a } = Re(), { transactions: o } = I(), { categories: r } = Ue(), [s, c] = g.useState(""), d = g.useMemo(
|
|
7645
7645
|
() => r.find((u) => u.guid === s),
|
|
7646
7646
|
[s]
|
|
@@ -7681,7 +7681,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7681
7681
|
}
|
|
7682
7682
|
)
|
|
7683
7683
|
] });
|
|
7684
|
-
}, Ng =
|
|
7684
|
+
}, Ng = x(vg), Ir = 120, Dg = ({
|
|
7685
7685
|
onBackClick: e,
|
|
7686
7686
|
height: n = "100dvh",
|
|
7687
7687
|
showInsights: i = !1,
|
|
@@ -7694,9 +7694,9 @@ const _c = ({ transaction: e }) => {
|
|
|
7694
7694
|
selectedAccountGuids: f,
|
|
7695
7695
|
setDisplayedDate: E,
|
|
7696
7696
|
setSelectedAccounts: y
|
|
7697
|
-
} = le(), { isDesktop: S } = he(),
|
|
7698
|
-
addTransaction:
|
|
7699
|
-
filter:
|
|
7697
|
+
} = le(), { isDesktop: S } = he(), T = ye(), {
|
|
7698
|
+
addTransaction: v,
|
|
7699
|
+
filter: w,
|
|
7700
7700
|
loadAssociatedBeats: D,
|
|
7701
7701
|
setFilter: L,
|
|
7702
7702
|
sortedTransactionsWithSplits: k,
|
|
@@ -7720,7 +7720,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7720
7720
|
}), Fe(!0), d(W.TRANSACTIONS_VIEW);
|
|
7721
7721
|
}, [o]), g.useEffect(() => {
|
|
7722
7722
|
Ee && (L({
|
|
7723
|
-
...
|
|
7723
|
+
...w,
|
|
7724
7724
|
accounts: f,
|
|
7725
7725
|
dateRange: { start: h.start, end: h.end }
|
|
7726
7726
|
}), D(h.start).finally());
|
|
@@ -7734,7 +7734,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7734
7734
|
E(dt[0], dt[1]);
|
|
7735
7735
|
}, Ta = (dt) => {
|
|
7736
7736
|
pe(dt), L({
|
|
7737
|
-
...
|
|
7737
|
+
...w,
|
|
7738
7738
|
searchTerm: dt
|
|
7739
7739
|
}), d(W.TRANSACTIONS_CLICK_SEARCH, { search_term: dt });
|
|
7740
7740
|
}, xa = () => {
|
|
@@ -7749,7 +7749,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7749
7749
|
/* AddTransaction */
|
|
7750
7750
|
), d(W.TRANSACTIONS_CLICK_ADD)) : (Ye(!0), d(W.TRANSACTIONS_ADD_MANUAL_ACCOUNT_MODAL));
|
|
7751
7751
|
}, El = async () => {
|
|
7752
|
-
zn && await
|
|
7752
|
+
zn && await v(G), J("");
|
|
7753
7753
|
}, Sl = () => {
|
|
7754
7754
|
Ye(!1), Y(!0);
|
|
7755
7755
|
}, Al = async () => {
|
|
@@ -7793,8 +7793,8 @@ const _c = ({ transaction: e }) => {
|
|
|
7793
7793
|
O,
|
|
7794
7794
|
{
|
|
7795
7795
|
sx: {
|
|
7796
|
-
[
|
|
7797
|
-
[
|
|
7796
|
+
[T.breakpoints.down("md")]: { display: "none" },
|
|
7797
|
+
[T.breakpoints.up("md")]: { display: "block" }
|
|
7798
7798
|
},
|
|
7799
7799
|
children: /* @__PURE__ */ t(
|
|
7800
7800
|
Nh,
|
|
@@ -7820,8 +7820,8 @@ const _c = ({ transaction: e }) => {
|
|
|
7820
7820
|
O,
|
|
7821
7821
|
{
|
|
7822
7822
|
sx: {
|
|
7823
|
-
[
|
|
7824
|
-
[
|
|
7823
|
+
[T.breakpoints.down("md")]: { display: "block" },
|
|
7824
|
+
[T.breakpoints.up("md")]: { display: "none" }
|
|
7825
7825
|
},
|
|
7826
7826
|
children: /* @__PURE__ */ t(
|
|
7827
7827
|
kn,
|
|
@@ -7892,7 +7892,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7892
7892
|
]
|
|
7893
7893
|
}
|
|
7894
7894
|
);
|
|
7895
|
-
}, t2 =
|
|
7895
|
+
}, t2 = x(Dg), Cc = ({
|
|
7896
7896
|
frequency: e,
|
|
7897
7897
|
firstDay: n,
|
|
7898
7898
|
secondDay: i,
|
|
@@ -7975,7 +7975,7 @@ const _c = ({ transaction: e }) => {
|
|
|
7975
7975
|
}
|
|
7976
7976
|
) })
|
|
7977
7977
|
] });
|
|
7978
|
-
}, Rg =
|
|
7978
|
+
}, Rg = x(({ repeatingTransaction: e }) => {
|
|
7979
7979
|
const { recurring: n } = I(), { updateRepeatingTransaction: i } = tt(), { onEvent: a } = X(), [o, r] = g.useState(!1), [s, c] = g.useState(e.recurrence_type), [d, _] = g.useState(e.recurrence_day), [u, h] = g.useState(e.second_recurrence_day), m = async () => {
|
|
7980
7980
|
await i({
|
|
7981
7981
|
...e,
|
|
@@ -8018,22 +8018,22 @@ const _c = ({ transaction: e }) => {
|
|
|
8018
8018
|
}
|
|
8019
8019
|
)
|
|
8020
8020
|
] });
|
|
8021
|
-
}), fc =
|
|
8021
|
+
}), fc = x(
|
|
8022
8022
|
({ onDeleted: e, recurringTransaction: n }) => {
|
|
8023
8023
|
const { recurring: i } = I(), { selectedAccountGuids: a } = le(), { onEvent: o } = X(), { deleteRepeatingTransaction: r } = tt(), { setFilter: s, transactions: c } = Re(), { amount: d, description: _, merchant_guid: u } = n, [h, m] = g.useState(!1), [p, f] = g.useState("");
|
|
8024
8024
|
g.useEffect(() => {
|
|
8025
8025
|
s({
|
|
8026
8026
|
accounts: a,
|
|
8027
8027
|
dateRange: { start: xt(Ae(), 90), end: $e(Ae()) },
|
|
8028
|
-
custom: (
|
|
8028
|
+
custom: (v) => v.repeating_transaction_guid === n.guid
|
|
8029
8029
|
});
|
|
8030
8030
|
}, [n]);
|
|
8031
8031
|
const E = g.useMemo(
|
|
8032
|
-
() => c.find((
|
|
8032
|
+
() => c.find((v) => v.guid === p),
|
|
8033
8033
|
[p, c]
|
|
8034
8034
|
), y = n.repeating_transaction_type === an.Income, S = async () => {
|
|
8035
8035
|
await r(n.guid), e();
|
|
8036
|
-
},
|
|
8036
|
+
}, T = () => {
|
|
8037
8037
|
m(!0), o(W.RECURRING_TRANSACTIONS_DETAILS_CLICK_DELETE);
|
|
8038
8038
|
};
|
|
8039
8039
|
return /* @__PURE__ */ l(b, { bgcolor: "background.default", direction: "column", height: "100%", children: [
|
|
@@ -8087,7 +8087,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8087
8087
|
ee,
|
|
8088
8088
|
{
|
|
8089
8089
|
color: "error",
|
|
8090
|
-
onClick:
|
|
8090
|
+
onClick: T,
|
|
8091
8091
|
startIcon: /* @__PURE__ */ t(As, {}),
|
|
8092
8092
|
sx: { mx: 24, my: 16 },
|
|
8093
8093
|
variant: "text",
|
|
@@ -8121,7 +8121,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8121
8121
|
)
|
|
8122
8122
|
] });
|
|
8123
8123
|
}
|
|
8124
|
-
), bc =
|
|
8124
|
+
), bc = x(
|
|
8125
8125
|
({ onClick: e = () => {
|
|
8126
8126
|
}, repeatingTransaction: n }) => {
|
|
8127
8127
|
const { recurring: i } = I(), [a, o] = g.useState(!1), r = g.useMemo(
|
|
@@ -8210,7 +8210,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8210
8210
|
)
|
|
8211
8211
|
] });
|
|
8212
8212
|
}
|
|
8213
|
-
), yc =
|
|
8213
|
+
), yc = x(
|
|
8214
8214
|
({
|
|
8215
8215
|
bgcolor: e = "background.default",
|
|
8216
8216
|
description: n,
|
|
@@ -8235,7 +8235,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8235
8235
|
/* @__PURE__ */ t(kn, { bgcolor: e, height: "auto", onClick: a, showLoader: !1 })
|
|
8236
8236
|
] });
|
|
8237
8237
|
}
|
|
8238
|
-
), Ec =
|
|
8238
|
+
), Ec = x(
|
|
8239
8239
|
({
|
|
8240
8240
|
bgcolor: e = "background.default",
|
|
8241
8241
|
firstDay: n,
|
|
@@ -8266,44 +8266,44 @@ const _c = ({ transaction: e }) => {
|
|
|
8266
8266
|
)
|
|
8267
8267
|
] });
|
|
8268
8268
|
}
|
|
8269
|
-
), $a = (e) => e.top_level_category_guid !== N.INCOME && e.transaction_type === Yt.DEBIT, Lg = (e, n) => $a(e) ? e.payee?.toLowerCase().includes(n.toLowerCase()) || e.description.toLowerCase().includes(n.toLowerCase()) || e.feed_description.toLowerCase().includes(n.toLowerCase()) : !1, yi = (e) => e.top_level_category_guid === N.INCOME || e.top_level_category_guid === N.TRANSFER && e.transaction_type === Yt.CREDIT, Sc = (e, n) => yi(e) ? e.payee?.toLowerCase().includes(n.toLowerCase()) || e.description?.toLowerCase().includes(n.toLowerCase()) || e.feed_description?.toLowerCase().includes(n.toLowerCase()) : !1, Ac =
|
|
8269
|
+
), $a = (e) => e.top_level_category_guid !== N.INCOME && e.transaction_type === Yt.DEBIT, Lg = (e, n) => $a(e) ? e.payee?.toLowerCase().includes(n.toLowerCase()) || e.description.toLowerCase().includes(n.toLowerCase()) || e.feed_description.toLowerCase().includes(n.toLowerCase()) : !1, yi = (e) => e.top_level_category_guid === N.INCOME || e.top_level_category_guid === N.TRANSFER && e.transaction_type === Yt.CREDIT, Sc = (e, n) => yi(e) ? e.payee?.toLowerCase().includes(n.toLowerCase()) || e.description?.toLowerCase().includes(n.toLowerCase()) || e.feed_description?.toLowerCase().includes(n.toLowerCase()) : !1, Ac = x(
|
|
8270
8270
|
({
|
|
8271
8271
|
isIncome: e = !1,
|
|
8272
8272
|
label: n,
|
|
8273
8273
|
onAddRecurringTransaction: i = () => null
|
|
8274
8274
|
}) => {
|
|
8275
|
-
const { recurring: a } = I(), { filter: o, setFilter: r, transactions: s } = Re(), { addRepeatingTransaction: c } = tt(), { user: d } = wt(), [_, u] = g.useState(!1), [h, m] = g.useState(""), [p, f] = g.useState(be.EveryMonth), [E, y] = g.useState(1), [S,
|
|
8275
|
+
const { recurring: a } = I(), { filter: o, setFilter: r, transactions: s } = Re(), { addRepeatingTransaction: c } = tt(), { user: d } = wt(), [_, u] = g.useState(!1), [h, m] = g.useState(""), [p, f] = g.useState(be.EveryMonth), [E, y] = g.useState(1), [S, T] = g.useState(15), v = g.useMemo(
|
|
8276
8276
|
() => s.find((k) => k.guid === h),
|
|
8277
8277
|
[h, s]
|
|
8278
|
-
),
|
|
8278
|
+
), w = () => {
|
|
8279
8279
|
u(!0), r(e ? { ...o, custom: yi } : { ...o, custom: $a });
|
|
8280
8280
|
}, D = async () => {
|
|
8281
|
-
if (!
|
|
8281
|
+
if (!v) {
|
|
8282
8282
|
L();
|
|
8283
8283
|
return;
|
|
8284
8284
|
}
|
|
8285
8285
|
i();
|
|
8286
|
-
const k = Ya(p, We(
|
|
8287
|
-
account_guid:
|
|
8288
|
-
amount:
|
|
8286
|
+
const k = Ya(p, We(v.date)), B = {
|
|
8287
|
+
account_guid: v.account_guid,
|
|
8288
|
+
amount: v.amount,
|
|
8289
8289
|
created_by: 0,
|
|
8290
8290
|
// User
|
|
8291
|
-
merchant_guid:
|
|
8292
|
-
description:
|
|
8291
|
+
merchant_guid: v.merchant_guid,
|
|
8292
|
+
description: v.payee || v.description || v.feed_description,
|
|
8293
8293
|
predicted_occurs_on: la(k, { representation: "date" }),
|
|
8294
8294
|
recurrence_day: E,
|
|
8295
8295
|
recurrence_type: p,
|
|
8296
8296
|
repeating_transaction_type: e ? an.Income : an.Bill,
|
|
8297
8297
|
second_recurrence_day: S,
|
|
8298
|
-
transaction_type:
|
|
8298
|
+
transaction_type: v.transaction_type,
|
|
8299
8299
|
user_guid: d.guid
|
|
8300
8300
|
};
|
|
8301
|
-
await c(B,
|
|
8301
|
+
await c(B, v), L();
|
|
8302
8302
|
}, L = () => {
|
|
8303
8303
|
m(""), u(!1);
|
|
8304
8304
|
};
|
|
8305
8305
|
return /* @__PURE__ */ l(O, { children: [
|
|
8306
|
-
/* @__PURE__ */ t(j, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ t(ue, { onClick:
|
|
8306
|
+
/* @__PURE__ */ t(j, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ t(ue, { onClick: w, children: /* @__PURE__ */ t(ae, { children: /* @__PURE__ */ l(b, { alignItems: "center", direction: "row", justifyContent: "space-between", children: [
|
|
8307
8307
|
/* @__PURE__ */ l(b, { alignItems: "center", direction: "row", gap: 8, children: [
|
|
8308
8308
|
/* @__PURE__ */ t(K, { fill: !0, name: "add_box", size: 24, sx: { color: "primary.main" } }),
|
|
8309
8309
|
/* @__PURE__ */ t(C, { bold: !0, sx: { color: "primary.main" }, variant: "Body", children: n })
|
|
@@ -8341,23 +8341,23 @@ const _c = ({ transaction: e }) => {
|
|
|
8341
8341
|
onClose: () => m(""),
|
|
8342
8342
|
onPrimaryAction: D,
|
|
8343
8343
|
title: e ? a.income_details : a.expense_details,
|
|
8344
|
-
children:
|
|
8344
|
+
children: v && /* @__PURE__ */ t(
|
|
8345
8345
|
Ec,
|
|
8346
8346
|
{
|
|
8347
8347
|
firstDay: E,
|
|
8348
8348
|
frequency: p,
|
|
8349
8349
|
onFirstDayChange: y,
|
|
8350
8350
|
onFrequencyChange: f,
|
|
8351
|
-
onSecondDayChange:
|
|
8351
|
+
onSecondDayChange: T,
|
|
8352
8352
|
secondDay: S,
|
|
8353
|
-
transaction:
|
|
8353
|
+
transaction: v
|
|
8354
8354
|
}
|
|
8355
8355
|
)
|
|
8356
8356
|
}
|
|
8357
8357
|
)
|
|
8358
8358
|
] });
|
|
8359
8359
|
}
|
|
8360
|
-
), Og =
|
|
8360
|
+
), Og = x(() => {
|
|
8361
8361
|
const { recurring: e } = I(), { repeatingTransactions: n } = tt(), { onEvent: i } = X(), a = (r) => {
|
|
8362
8362
|
i(W.RECURRING_TRANSACTIONS_CLICK_EXPENSE, {
|
|
8363
8363
|
repeating_transaction_guid: r.guid
|
|
@@ -8374,7 +8374,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8374
8374
|
] }, r.guid)),
|
|
8375
8375
|
/* @__PURE__ */ t(Ac, { label: e.add_expense, onAddRecurringTransaction: o })
|
|
8376
8376
|
] });
|
|
8377
|
-
}), To =
|
|
8377
|
+
}), To = x(() => {
|
|
8378
8378
|
const { recurring: e } = I(), { repeatingTransactions: n } = tt(), { onEvent: i } = X(), a = (r) => {
|
|
8379
8379
|
i(W.RECURRING_TRANSACTIONS_CLICK_INCOME, {
|
|
8380
8380
|
repeating_transaction_guid: r.guid
|
|
@@ -8398,7 +8398,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8398
8398
|
}
|
|
8399
8399
|
)
|
|
8400
8400
|
] });
|
|
8401
|
-
}), Tc =
|
|
8401
|
+
}), Tc = x(() => {
|
|
8402
8402
|
const [e, n] = g.useState(0), { onEvent: i } = X(), { recurring: a } = I();
|
|
8403
8403
|
return /* @__PURE__ */ l(O, { bgcolor: "background.default", height: "100%", children: [
|
|
8404
8404
|
/* @__PURE__ */ l(
|
|
@@ -8431,7 +8431,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8431
8431
|
filled: !0,
|
|
8432
8432
|
sx: { color: "categories.income", fontSize: n, ...ba }
|
|
8433
8433
|
}
|
|
8434
|
-
) }), wo = ({ isOffset: e = !1, size: n = 16 }) => /* @__PURE__ */ t(vn, { size: n, sx: { ...ya(e) }, children: /* @__PURE__ */ t(Ts, { color: "error", filled: !0, sx: { fontSize: n, ...ba } }) }), vo = ({ isOffset: e = !1, size: n = 16 }) => /* @__PURE__ */ t(vn, { size: n, sx: { ...ya(e) }, children: /* @__PURE__ */ t(sa, { color: "success", filled: !0, sx: { fontSize: n, ...ba } }) }), Mg =
|
|
8434
|
+
) }), wo = ({ isOffset: e = !1, size: n = 16 }) => /* @__PURE__ */ t(vn, { size: n, sx: { ...ya(e) }, children: /* @__PURE__ */ t(Ts, { color: "error", filled: !0, sx: { fontSize: n, ...ba } }) }), vo = ({ isOffset: e = !1, size: n = 16 }) => /* @__PURE__ */ t(vn, { size: n, sx: { ...ya(e) }, children: /* @__PURE__ */ t(sa, { color: "success", filled: !0, sx: { fontSize: n, ...ba } }) }), Mg = x(
|
|
8435
8435
|
({ day: e, outsideCurrentMonth: n, ...i }) => {
|
|
8436
8436
|
const { recurring: a } = I(), { selectedAccountGuids: o } = le(), { recurrences: r, setSelectedDay: s } = tt(), d = g.useMemo(
|
|
8437
8437
|
() => r.filter((f) => o.includes(f.accountGuid)),
|
|
@@ -8489,7 +8489,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8489
8489
|
), Pi = ({ icon: e, label: n }) => /* @__PURE__ */ l(b, { alignItems: "center", flexDirection: "row", sx: { gap: 6 }, children: [
|
|
8490
8490
|
/* @__PURE__ */ t(e, {}),
|
|
8491
8491
|
/* @__PURE__ */ t(C, { variant: "XSmall", children: n })
|
|
8492
|
-
] }), kg =
|
|
8492
|
+
] }), kg = x(() => {
|
|
8493
8493
|
const { recurring: e } = I();
|
|
8494
8494
|
return /* @__PURE__ */ l(
|
|
8495
8495
|
b,
|
|
@@ -8508,7 +8508,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8508
8508
|
]
|
|
8509
8509
|
}
|
|
8510
8510
|
);
|
|
8511
|
-
}), wr = 58, xc =
|
|
8511
|
+
}), wr = 58, xc = x(() => {
|
|
8512
8512
|
const e = ye(), { onEvent: n } = X(), { selectedDay: i, setDateRange: a } = tt(), [o, r] = g.useState(
|
|
8513
8513
|
tr(/* @__PURE__ */ new Date()) * di + wr
|
|
8514
8514
|
), s = (d) => {
|
|
@@ -8699,7 +8699,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8699
8699
|
}
|
|
8700
8700
|
)
|
|
8701
8701
|
] });
|
|
8702
|
-
}, gi =
|
|
8702
|
+
}, gi = x(
|
|
8703
8703
|
({
|
|
8704
8704
|
recurrences: e,
|
|
8705
8705
|
isMini: n = !1,
|
|
@@ -8750,7 +8750,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8750
8750
|
] }, `recurrence-${_}`)) })
|
|
8751
8751
|
] });
|
|
8752
8752
|
}
|
|
8753
|
-
), Nr =
|
|
8753
|
+
), Nr = x(
|
|
8754
8754
|
({ expected: e, isExpense: n = !0, missed: i, paid: a, title: o, total: r, upcoming: s }) => {
|
|
8755
8755
|
const c = ye(), { isSmallMobile: d } = he(), { recurring: _ } = I(), u = g.useMemo(() => {
|
|
8756
8756
|
const h = [{ color: c.palette.success.main, percentage: `${a / e}` }];
|
|
@@ -8777,7 +8777,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8777
8777
|
] })
|
|
8778
8778
|
] });
|
|
8779
8779
|
}
|
|
8780
|
-
), Hg =
|
|
8780
|
+
), Hg = x(() => {
|
|
8781
8781
|
const { recurring: e } = I(), { isDesktop: n, isSmallMobile: i } = he(), { onEvent: a } = X(), {
|
|
8782
8782
|
currentMonthExpenses: o,
|
|
8783
8783
|
currentMonthIncome: r,
|
|
@@ -8793,9 +8793,9 @@ const _c = ({ transaction: e }) => {
|
|
|
8793
8793
|
setDateRange: E,
|
|
8794
8794
|
upcomingExpenseTotal: y,
|
|
8795
8795
|
upcomingIncomeTotal: S,
|
|
8796
|
-
upcomingRecurrences:
|
|
8797
|
-
} = tt(), [
|
|
8798
|
-
|
|
8796
|
+
upcomingRecurrences: T
|
|
8797
|
+
} = tt(), [v, w] = g.useState(0), D = Ze(s.start, /* @__PURE__ */ new Date()), L = (G, q) => {
|
|
8798
|
+
w(q);
|
|
8799
8799
|
}, k = (G) => {
|
|
8800
8800
|
a(W.RECURRING_TRANSACTIONS_CLICK_UPCOMING, {
|
|
8801
8801
|
transaction_guid: G.transaction?.guid
|
|
@@ -8863,12 +8863,12 @@ const _c = ({ transaction: e }) => {
|
|
|
8863
8863
|
gi,
|
|
8864
8864
|
{
|
|
8865
8865
|
onRecurrenceClick: k,
|
|
8866
|
-
recurrences:
|
|
8866
|
+
recurrences: T,
|
|
8867
8867
|
title: e.upcoming_activity
|
|
8868
8868
|
}
|
|
8869
8869
|
),
|
|
8870
8870
|
!n && /* @__PURE__ */ l(b, { children: [
|
|
8871
|
-
/* @__PURE__ */ l(Zt, { onChange: L, value:
|
|
8871
|
+
/* @__PURE__ */ l(Zt, { onChange: L, value: v, variant: "fullWidth", children: [
|
|
8872
8872
|
/* @__PURE__ */ t(
|
|
8873
8873
|
ot,
|
|
8874
8874
|
{
|
|
@@ -8882,14 +8882,14 @@ const _c = ({ transaction: e }) => {
|
|
|
8882
8882
|
}
|
|
8883
8883
|
)
|
|
8884
8884
|
] }),
|
|
8885
|
-
|
|
8885
|
+
v === 0 && /* @__PURE__ */ t(
|
|
8886
8886
|
gi,
|
|
8887
8887
|
{
|
|
8888
8888
|
onRecurrenceClick: k,
|
|
8889
|
-
recurrences:
|
|
8889
|
+
recurrences: T
|
|
8890
8890
|
}
|
|
8891
8891
|
),
|
|
8892
|
-
|
|
8892
|
+
v === 1 && /* @__PURE__ */ t(
|
|
8893
8893
|
gi,
|
|
8894
8894
|
{
|
|
8895
8895
|
onRecurrenceClick: B,
|
|
@@ -8913,7 +8913,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8913
8913
|
)
|
|
8914
8914
|
] }) })
|
|
8915
8915
|
] });
|
|
8916
|
-
}), n2 =
|
|
8916
|
+
}), n2 = x(({ onBackClick: e, sx: n = {} }) => {
|
|
8917
8917
|
const { accounts: i } = fe(), { recurring: a } = I(), { isCopyLoaded: o, isInitialized: r, selectedAccountGuids: s, setSelectedAccounts: c } = le(), { isDataLoaded: d, loadRepeatingTransactions: _, setDateRange: u } = tt(), { setFilter: h } = Re(), { onEvent: m } = X(), [p, f] = g.useState(!1);
|
|
8918
8918
|
return g.useEffect(() => {
|
|
8919
8919
|
c(i);
|
|
@@ -8959,7 +8959,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8959
8959
|
]
|
|
8960
8960
|
}
|
|
8961
8961
|
) : /* @__PURE__ */ t(de, {});
|
|
8962
|
-
}), Pg =
|
|
8962
|
+
}), Pg = x(() => {
|
|
8963
8963
|
const { recurring: e } = I(), { availableWidth: n } = un(), { selectedDay: i, selectedDayRecurrences: a, setSelectedDay: o, upcomingRecurrences: r } = tt(), s = n < 750;
|
|
8964
8964
|
return /* @__PURE__ */ l(b, { flexDirection: s ? "column" : "row", width: "100%", children: [
|
|
8965
8965
|
/* @__PURE__ */ t(xc, {}),
|
|
@@ -8978,7 +8978,7 @@ const _c = ({ transaction: e }) => {
|
|
|
8978
8978
|
}
|
|
8979
8979
|
)
|
|
8980
8980
|
] });
|
|
8981
|
-
}), i2 =
|
|
8981
|
+
}), i2 = x(
|
|
8982
8982
|
({ onPrimaryCtaClick: e, sx: n }) => {
|
|
8983
8983
|
const { accounts: i } = fe(), { recurring: a } = I(), { setFilter: o } = Re(), { isDataLoaded: r, loadRepeatingTransactions: s } = tt(), { isCopyLoaded: c, isInitialized: d, setSelectedAccounts: _, selectedAccountGuids: u } = le();
|
|
8984
8984
|
return g.useEffect(() => {
|
|
@@ -9070,7 +9070,7 @@ const _c = ({ transaction: e }) => {
|
|
|
9070
9070
|
!a && /* @__PURE__ */ t(C, { bold: !0, variant: "caption", children: P(e, e === 0 || !i ? "0,0" : "0,0.00") }),
|
|
9071
9071
|
/* @__PURE__ */ t(C, { variant: "caption", children: o })
|
|
9072
9072
|
] })
|
|
9073
|
-
] }), Vg =
|
|
9073
|
+
] }), Vg = x(() => {
|
|
9074
9074
|
const { recurring: e } = I();
|
|
9075
9075
|
return /* @__PURE__ */ l(b, { sx: { alignItems: "start", flexDirection: "row", gap: 12 }, children: [
|
|
9076
9076
|
/* @__PURE__ */ t(zl, { size: 32 }),
|
|
@@ -9079,7 +9079,7 @@ const _c = ({ transaction: e }) => {
|
|
|
9079
9079
|
/* @__PURE__ */ t(_e, { color: "text.secondary", variant: "subtitle2", children: e.zero_state_content_description })
|
|
9080
9080
|
] })
|
|
9081
9081
|
] });
|
|
9082
|
-
}), a2 =
|
|
9082
|
+
}), a2 = x(
|
|
9083
9083
|
({ onCTAClick: e }) => {
|
|
9084
9084
|
const [n, i] = g.useState(!1), { accounts: a } = fe(), [o, { width: r }] = Ri(), { isCopyLoaded: s, isInitialized: c, selectedAccountGuids: d, setSelectedAccounts: _ } = le(), {
|
|
9085
9085
|
loadRepeatingTransactions: u,
|
|
@@ -9089,7 +9089,7 @@ const _c = ({ transaction: e }) => {
|
|
|
9089
9089
|
paidExpenseTotal: f,
|
|
9090
9090
|
setDateRange: E,
|
|
9091
9091
|
upcomingExpenseTotal: y
|
|
9092
|
-
} = tt(), { setFilter: S } = Re(), { recurring:
|
|
9092
|
+
} = tt(), { setFilter: S } = Re(), { recurring: T, budgets: v } = I();
|
|
9093
9093
|
g.useEffect(() => {
|
|
9094
9094
|
_(a);
|
|
9095
9095
|
}, [a]), g.useEffect(() => {
|
|
@@ -9098,7 +9098,7 @@ const _c = ({ transaction: e }) => {
|
|
|
9098
9098
|
accounts: d
|
|
9099
9099
|
}), E({ start: Ve(/* @__PURE__ */ new Date()), end: $e(/* @__PURE__ */ new Date()) }), u().finally(), i(!0));
|
|
9100
9100
|
}, [c]);
|
|
9101
|
-
const { onEvent:
|
|
9101
|
+
const { onEvent: w } = X(), D = ye(), L = r <= 288, k = r >= 450, B = g.useMemo(() => {
|
|
9102
9102
|
const Le = [
|
|
9103
9103
|
{ color: D.palette.success.main, percentage: `${f / m}` }
|
|
9104
9104
|
];
|
|
@@ -9113,7 +9113,7 @@ const _c = ({ transaction: e }) => {
|
|
|
9113
9113
|
D.palette.success.main,
|
|
9114
9114
|
D.palette.error.main
|
|
9115
9115
|
]), M = g.useMemo(() => P(m, m === 0 ? "0,0" : "0,0.00"), [m]), R = () => {
|
|
9116
|
-
|
|
9116
|
+
w(W.RECURRING_TRANSACTIONS_MICRO_WIDGET_CTA), e();
|
|
9117
9117
|
};
|
|
9118
9118
|
if (!s || !n) return /* @__PURE__ */ t(de, { height: 100 });
|
|
9119
9119
|
const G = 32, q = h.length > 0, se = () => q ? L ? /* @__PURE__ */ t(
|
|
@@ -9127,26 +9127,26 @@ const _c = ({ transaction: e }) => {
|
|
|
9127
9127
|
{
|
|
9128
9128
|
amount: f,
|
|
9129
9129
|
bgColor: "success.main",
|
|
9130
|
-
label:
|
|
9130
|
+
label: T.paid
|
|
9131
9131
|
},
|
|
9132
9132
|
{
|
|
9133
9133
|
amount: p,
|
|
9134
9134
|
bgColor: "error.main",
|
|
9135
|
-
label:
|
|
9135
|
+
label: T.missed
|
|
9136
9136
|
},
|
|
9137
9137
|
{
|
|
9138
9138
|
amount: y,
|
|
9139
9139
|
bgColor: "border.light",
|
|
9140
|
-
label:
|
|
9140
|
+
label: T.upcoming
|
|
9141
9141
|
}
|
|
9142
9142
|
], Ce = n && !a?.length;
|
|
9143
9143
|
return /* @__PURE__ */ t(
|
|
9144
9144
|
ga,
|
|
9145
9145
|
{
|
|
9146
9146
|
className: "mx-recurring-transaction-microwidget",
|
|
9147
|
-
ctaLabel: Ce ?
|
|
9147
|
+
ctaLabel: Ce ? v.get_started_cta : T.primary_cta,
|
|
9148
9148
|
onCTAClick: R,
|
|
9149
|
-
title:
|
|
9149
|
+
title: T.recurring_expenses,
|
|
9150
9150
|
children: Ce ? /* @__PURE__ */ t(Vg, {}) : /* @__PURE__ */ l(Q, { children: [
|
|
9151
9151
|
/* @__PURE__ */ l(
|
|
9152
9152
|
b,
|
|
@@ -9185,7 +9185,7 @@ const _c = ({ transaction: e }) => {
|
|
|
9185
9185
|
pr: 12
|
|
9186
9186
|
},
|
|
9187
9187
|
variant: "XSmall",
|
|
9188
|
-
children:
|
|
9188
|
+
children: T.expected
|
|
9189
9189
|
}
|
|
9190
9190
|
)
|
|
9191
9191
|
]
|
|
@@ -9661,7 +9661,7 @@ const Yg = {
|
|
|
9661
9661
|
children: n ? /* @__PURE__ */ t(ue, { alignItems: "flex-start", onClick: n, sx: { px: 24 }, children: h }) : h
|
|
9662
9662
|
}
|
|
9663
9663
|
);
|
|
9664
|
-
}, Ei =
|
|
9664
|
+
}, Ei = x(Qg), Jg = ({ remaining: e }) => /* @__PURE__ */ t(
|
|
9665
9665
|
j,
|
|
9666
9666
|
{
|
|
9667
9667
|
sx: {
|
|
@@ -9695,7 +9695,7 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
9695
9695
|
)
|
|
9696
9696
|
] }),
|
|
9697
9697
|
/* @__PURE__ */ t(F, {})
|
|
9698
|
-
] }), Lr =
|
|
9698
|
+
] }), Lr = x(em), tm = ({ total: e, type: n }) => {
|
|
9699
9699
|
const { cashflow: i } = I();
|
|
9700
9700
|
return /* @__PURE__ */ l(Q, { children: [
|
|
9701
9701
|
/* @__PURE__ */ l(
|
|
@@ -9721,7 +9721,7 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
9721
9721
|
),
|
|
9722
9722
|
/* @__PURE__ */ t(F, {})
|
|
9723
9723
|
] });
|
|
9724
|
-
}, Or =
|
|
9724
|
+
}, Or = x(tm), na = (e, n) => (i) => i.accountGuid === e.guid && (ro(i.expectedDate) || nn(i.expectedDate, n.start)) && Ze(i.expectedDate, n.end), nm = () => {
|
|
9725
9725
|
const { availableWidth: e } = un(), { cashflow: n } = I(), { upcomingExpenses: i, upcomingIncome: a } = tt(), { dateRange: o, selectedCashAccounts: r } = si();
|
|
9726
9726
|
return /* @__PURE__ */ l(b, { children: [
|
|
9727
9727
|
/* @__PURE__ */ l(b, { direction: e < 400 ? "column" : "row", justifyContent: "space-between", children: [
|
|
@@ -9793,7 +9793,7 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
9793
9793
|
);
|
|
9794
9794
|
}) })
|
|
9795
9795
|
] });
|
|
9796
|
-
}, im =
|
|
9796
|
+
}, im = x(nm), am = () => {
|
|
9797
9797
|
const { availableWidth: e } = un(), n = ye(), { cashflow: i } = I(), { upcomingExpenses: a, upcomingIncome: o } = tt(), { dateRange: r, selectedCashAccounts: s } = si(), c = [
|
|
9798
9798
|
{
|
|
9799
9799
|
field: "account",
|
|
@@ -10025,7 +10025,7 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
10025
10025
|
]
|
|
10026
10026
|
}
|
|
10027
10027
|
);
|
|
10028
|
-
}, om =
|
|
10028
|
+
}, om = x(am), rm = () => {
|
|
10029
10029
|
const { cashflow: e } = I(), { isDesktop: n } = he(), { onEvent: i } = X(), [a, o] = g.useState(0), r = (s, c) => {
|
|
10030
10030
|
o(c);
|
|
10031
10031
|
};
|
|
@@ -10071,7 +10071,7 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
10071
10071
|
/* @__PURE__ */ t(ti, { index: 0, name: "cashflow", value: a, children: /* @__PURE__ */ t(O, { sx: { m: n ? 48 : 16 }, children: /* @__PURE__ */ t(om, {}) }) }),
|
|
10072
10072
|
/* @__PURE__ */ t(ti, { index: 1, name: "cashflow", value: a, children: /* @__PURE__ */ t(O, { sx: { m: n ? 48 : 16 }, children: /* @__PURE__ */ t(im, {}) }) })
|
|
10073
10073
|
] });
|
|
10074
|
-
}, sm =
|
|
10074
|
+
}, sm = x(rm), Fi = ({
|
|
10075
10075
|
amount: e,
|
|
10076
10076
|
isMobile: n = !1,
|
|
10077
10077
|
isTotal: i = !1,
|
|
@@ -10103,9 +10103,9 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
10103
10103
|
() => a.filter(Mr(o, r)),
|
|
10104
10104
|
[r, o, a]
|
|
10105
10105
|
), m = g.useMemo(
|
|
10106
|
-
() => s.reduce((S,
|
|
10106
|
+
() => s.reduce((S, T) => S + (T?.balance || 0), 0),
|
|
10107
10107
|
[s]
|
|
10108
|
-
), p = u.reduce((S,
|
|
10108
|
+
), p = u.reduce((S, T) => S + T.amount, 0), f = h.reduce((S, T) => S + T.amount, 0), E = m - p + f, y = e < 725;
|
|
10109
10109
|
return /* @__PURE__ */ l(b, { sx: { mx: y ? 16 : 0, my: y ? 24 : 42 }, children: [
|
|
10110
10110
|
/* @__PURE__ */ l(
|
|
10111
10111
|
b,
|
|
@@ -10188,7 +10188,7 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
10188
10188
|
}
|
|
10189
10189
|
)
|
|
10190
10190
|
] });
|
|
10191
|
-
}, lm =
|
|
10191
|
+
}, lm = x(cm), dm = ({ handleNextStep: e }) => {
|
|
10192
10192
|
const { completeOnboarding: n } = mo(), { cashflow: i } = I(), a = ye();
|
|
10193
10193
|
return /* @__PURE__ */ l(b, { children: [
|
|
10194
10194
|
/* @__PURE__ */ t(Xt, { pb: 12, children: i.welcome_title }),
|
|
@@ -10258,7 +10258,7 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
10258
10258
|
/* @__PURE__ */ t(ee, { onClick: n, variant: "outlined", children: i.skip_button })
|
|
10259
10259
|
] })
|
|
10260
10260
|
] });
|
|
10261
|
-
}, um =
|
|
10261
|
+
}, um = x(dm), kr = "https://content.moneydesktop.com/storage/MD_Assets/md/cashflow", wc = {
|
|
10262
10262
|
CASHFLOW_ONBOARDING: `${kr}/cashflow-onboarding.png`,
|
|
10263
10263
|
CASHFLOW_LOADING_ANIMATION: `${kr}/loading-animation.gif`
|
|
10264
10264
|
}, _m = () => {
|
|
@@ -10268,7 +10268,7 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
10268
10268
|
/* @__PURE__ */ t(Xt, { pb: 12, children: e.loading_title }),
|
|
10269
10269
|
/* @__PURE__ */ t(_e, { children: e.loading_description })
|
|
10270
10270
|
] });
|
|
10271
|
-
}, hm =
|
|
10271
|
+
}, hm = x(_m), gm = nd`
|
|
10272
10272
|
from {
|
|
10273
10273
|
transform: rotate(0deg);
|
|
10274
10274
|
}
|
|
@@ -10276,7 +10276,7 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
10276
10276
|
transform: rotate(360deg);
|
|
10277
10277
|
}
|
|
10278
10278
|
`, mm = () => {
|
|
10279
|
-
const { addRepeatingTransaction: e, repeatingTransactions: n } = tt(), { cashflow: i, common: a } = I(), { completeOnboarding: o } = mo(), { isDirty: r } = si(), { isMobile: s } = he(), { isCopyLoaded: c, setDisplayedDate: d } = le(), { filter: _, setFilter: u, transactions: h } = Re(), m = ye(), [p, f] = Et(!0), [E, y] = g.useState(be.EveryMonth), [S,
|
|
10279
|
+
const { addRepeatingTransaction: e, repeatingTransactions: n } = tt(), { cashflow: i, common: a } = I(), { completeOnboarding: o } = mo(), { isDirty: r } = si(), { isMobile: s } = he(), { isCopyLoaded: c, setDisplayedDate: d } = le(), { filter: _, setFilter: u, transactions: h } = Re(), m = ye(), [p, f] = Et(!0), [E, y] = g.useState(be.EveryMonth), [S, T] = g.useState(1), [v, w] = g.useState(15), [D, L] = Et(!1), [k, B] = Et(1), [M, R] = Et([]), [G, q] = Et(""), se = g.useMemo(
|
|
10280
10280
|
() => h.find((me) => me.guid === G),
|
|
10281
10281
|
[G, h]
|
|
10282
10282
|
), pe = !!n.filter(
|
|
@@ -10389,10 +10389,10 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
10389
10389
|
bgcolor: "background.paper",
|
|
10390
10390
|
firstDay: S,
|
|
10391
10391
|
frequency: E,
|
|
10392
|
-
onFirstDayChange:
|
|
10392
|
+
onFirstDayChange: T,
|
|
10393
10393
|
onFrequencyChange: y,
|
|
10394
|
-
onSecondDayChange:
|
|
10395
|
-
secondDay:
|
|
10394
|
+
onSecondDayChange: w,
|
|
10395
|
+
secondDay: v,
|
|
10396
10396
|
transaction: se
|
|
10397
10397
|
}
|
|
10398
10398
|
),
|
|
@@ -10452,21 +10452,21 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
10452
10452
|
]
|
|
10453
10453
|
}
|
|
10454
10454
|
) : /* @__PURE__ */ t(de, {});
|
|
10455
|
-
}, pm =
|
|
10455
|
+
}, pm = x(mm), Cm = ({ onBackClick: e, sx: n = {} }) => {
|
|
10456
10456
|
const {
|
|
10457
10457
|
selectedAccounts: i,
|
|
10458
10458
|
selectedAccountGuids: a,
|
|
10459
10459
|
setSelectedAccounts: o,
|
|
10460
10460
|
shouldDisableNextDate: r,
|
|
10461
10461
|
shouldDisablePrevDate: s
|
|
10462
|
-
} = le(), { onEvent: c } = X(), { visibleCashAccounts: d } = fe(), { setFilter: _ } = Re(), { userProfile: u } = wt(), { dateRange: h, setSelectedCashAccounts: m } = si(), { loadRepeatingTransactions: p, setDateRange: f } = tt(), { cashflow: E } = I(), { isCopyLoaded: y, isInitialized: S } = le(), [
|
|
10462
|
+
} = le(), { onEvent: c } = X(), { visibleCashAccounts: d } = fe(), { setFilter: _ } = Re(), { userProfile: u } = wt(), { dateRange: h, setSelectedCashAccounts: m } = si(), { loadRepeatingTransactions: p, setDateRange: f } = tt(), { cashflow: E } = I(), { isCopyLoaded: y, isInitialized: S } = le(), [T, v] = g.useState(!1);
|
|
10463
10463
|
return g.useEffect(() => {
|
|
10464
10464
|
S && (f(h), p().finally());
|
|
10465
10465
|
}, [S]), g.useEffect(() => {
|
|
10466
10466
|
o(d);
|
|
10467
10467
|
}, [d]), g.useEffect(() => {
|
|
10468
|
-
const
|
|
10469
|
-
(L) => a.includes(L.guid) &&
|
|
10468
|
+
const w = d.map((L) => L.guid), D = i.filter(
|
|
10469
|
+
(L) => a.includes(L.guid) && w.includes(L.guid)
|
|
10470
10470
|
);
|
|
10471
10471
|
m(D), _({
|
|
10472
10472
|
dateRange: { start: xt(Ae(), 90), end: Sn() },
|
|
@@ -10481,7 +10481,7 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
10481
10481
|
label: E.cashflow_settings,
|
|
10482
10482
|
iconName: "settings",
|
|
10483
10483
|
onClick: () => {
|
|
10484
|
-
|
|
10484
|
+
v(!0), c(W.CASH_FLOW_CLICK_SETTINGS);
|
|
10485
10485
|
}
|
|
10486
10486
|
}
|
|
10487
10487
|
],
|
|
@@ -10505,8 +10505,8 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
10505
10505
|
re,
|
|
10506
10506
|
{
|
|
10507
10507
|
ariaLabelClose: E.close_settings_aria,
|
|
10508
|
-
isOpen:
|
|
10509
|
-
onClose: () =>
|
|
10508
|
+
isOpen: T,
|
|
10509
|
+
onClose: () => v(!1),
|
|
10510
10510
|
shouldShowHeaderBorders: !1,
|
|
10511
10511
|
title: E.cashflow_settings,
|
|
10512
10512
|
children: /* @__PURE__ */ t(Tc, {})
|
|
@@ -10523,7 +10523,7 @@ const em = ({ recurrence: e }) => /* @__PURE__ */ l(Q, { children: [
|
|
|
10523
10523
|
children: /* @__PURE__ */ t(pm, {})
|
|
10524
10524
|
}
|
|
10525
10525
|
);
|
|
10526
|
-
}, o2 =
|
|
10526
|
+
}, o2 = x(Cm);
|
|
10527
10527
|
class r2 {
|
|
10528
10528
|
fetchInstance;
|
|
10529
10529
|
constructor(n, i) {
|
|
@@ -10690,7 +10690,7 @@ const hn = () => {
|
|
|
10690
10690
|
] })
|
|
10691
10691
|
}
|
|
10692
10692
|
);
|
|
10693
|
-
}, Sm =
|
|
10693
|
+
}, Sm = x(Em), Am = ({ isOpen: e, onClose: n, sx: i }) => {
|
|
10694
10694
|
const a = cn(), { debts: o } = I(), [r, s] = g.useState(!1);
|
|
10695
10695
|
return /* @__PURE__ */ t(
|
|
10696
10696
|
re,
|
|
@@ -11052,7 +11052,7 @@ const hn = () => {
|
|
|
11052
11052
|
] })
|
|
11053
11053
|
}
|
|
11054
11054
|
);
|
|
11055
|
-
}, Tm =
|
|
11055
|
+
}, Tm = x(Am), Ft = () => {
|
|
11056
11056
|
if (!g.useContext(Yn))
|
|
11057
11057
|
throw new Error("useCategoryUiStore() must be used within the GlobalDataContext");
|
|
11058
11058
|
return fe().uiStore;
|
|
@@ -11122,7 +11122,7 @@ const hn = () => {
|
|
|
11122
11122
|
showLegend: !0
|
|
11123
11123
|
}
|
|
11124
11124
|
) });
|
|
11125
|
-
}, Om =
|
|
11125
|
+
}, Om = x(Lm), Mm = ({ sx: e }) => {
|
|
11126
11126
|
const { loadMonthlyCategoryTotals: n } = Ue(), { isInitialized: i } = oi(), { selectedAccount: a } = Ft(), [o, r] = g.useState(!1);
|
|
11127
11127
|
return g.useEffect(() => {
|
|
11128
11128
|
i && n([a]).finally(() => {
|
|
@@ -11149,7 +11149,7 @@ const hn = () => {
|
|
|
11149
11149
|
]
|
|
11150
11150
|
}
|
|
11151
11151
|
);
|
|
11152
|
-
}, km =
|
|
11152
|
+
}, km = x(Mm), Gm = ({ customDetailsChart: e }) => {
|
|
11153
11153
|
const { institutions: n } = fe(), { selectedAccount: i } = Ft(), { accounts: a } = I(), { firstSubtitle: o, firstValue: r, hasAvailableBalance: s, secondSubtitle: c, secondValue: d } = Ic(i, a), _ = n.find(
|
|
11154
11154
|
(h) => h.guid === i?.institution_guid
|
|
11155
11155
|
), u = [
|
|
@@ -11182,7 +11182,7 @@ const hn = () => {
|
|
|
11182
11182
|
] }),
|
|
11183
11183
|
u && /* @__PURE__ */ t(b, { children: e || /* @__PURE__ */ t(km, {}) })
|
|
11184
11184
|
] });
|
|
11185
|
-
}, Oo =
|
|
11185
|
+
}, Oo = x(Gm), Bm = "#FF7B08";
|
|
11186
11186
|
function Hm(e, n) {
|
|
11187
11187
|
const [i, a, o] = e.replace(/^#/, "").match(/.{1,2}/g).map((s) => parseInt(s, 16)), r = [
|
|
11188
11188
|
Math.max(0, Math.min(255, Math.round(i * n))),
|
|
@@ -11200,31 +11200,31 @@ const Rc = ({
|
|
|
11200
11200
|
onClickArea: r,
|
|
11201
11201
|
onHoverArea: s
|
|
11202
11202
|
}) => {
|
|
11203
|
-
const c = st(), { onEvent: d } = X(), _ = a.filter((
|
|
11203
|
+
const c = st(), { onEvent: d } = X(), _ = a.filter((w) => !w.is_impossible), u = [
|
|
11204
11204
|
...new Set(
|
|
11205
|
-
_.flatMap((
|
|
11205
|
+
_.flatMap((w) => w.dataset.map((D) => new Date(D.x).getTime()))
|
|
11206
11206
|
)
|
|
11207
|
-
].sort((
|
|
11208
|
-
const D = new Map(
|
|
11207
|
+
].sort((w, D) => w - D).map((w) => new Date(w)), h = _.map((w) => {
|
|
11208
|
+
const D = new Map(w.dataset.map((B) => [new Date(B.x).getTime(), B.y]));
|
|
11209
11209
|
let L = D.get(u[0].getTime()) ?? 0;
|
|
11210
11210
|
const k = u.map((B) => {
|
|
11211
11211
|
const M = D.get(B.getTime()) ?? L;
|
|
11212
11212
|
return L = M, { x: B, y: M };
|
|
11213
11213
|
});
|
|
11214
|
-
return { ...
|
|
11214
|
+
return { ...w, dataset: k };
|
|
11215
11215
|
}), m = h.reduce(
|
|
11216
|
-
(
|
|
11216
|
+
(w, D) => w + (D.dataset[0]?.y ?? 0),
|
|
11217
11217
|
0
|
|
11218
|
-
), p = u.map((
|
|
11218
|
+
), p = u.map((w, D) => {
|
|
11219
11219
|
const L = D / (u.length - 1), k = m * (1 - L);
|
|
11220
|
-
return { x:
|
|
11221
|
-
}), f = Math.ceil(m / 100) * 100, E = u, y = h.map((
|
|
11220
|
+
return { x: w, y: k };
|
|
11221
|
+
}), f = Math.ceil(m / 100) * 100, E = u, y = h.map((w, D) => {
|
|
11222
11222
|
const L = 1 - D / h.length * 0.5, k = Hm(Bm, L);
|
|
11223
11223
|
return {
|
|
11224
11224
|
id: `debt-${D}`,
|
|
11225
|
-
guid:
|
|
11226
|
-
label:
|
|
11227
|
-
data:
|
|
11225
|
+
guid: w.guid,
|
|
11226
|
+
label: w.name,
|
|
11227
|
+
data: w.dataset.map((B) => B.y),
|
|
11228
11228
|
color: k,
|
|
11229
11229
|
curve: "linear",
|
|
11230
11230
|
type: "line",
|
|
@@ -11236,7 +11236,7 @@ const Rc = ({
|
|
|
11236
11236
|
y.push({
|
|
11237
11237
|
id: "payoff-line",
|
|
11238
11238
|
label: "Payoff Line",
|
|
11239
|
-
data: p.map((
|
|
11239
|
+
data: p.map((w) => w.y),
|
|
11240
11240
|
color: c.palette.grey[700],
|
|
11241
11241
|
curve: "linear",
|
|
11242
11242
|
type: "line",
|
|
@@ -11244,20 +11244,20 @@ const Rc = ({
|
|
|
11244
11244
|
showMark: !1,
|
|
11245
11245
|
disableHighlight: !0
|
|
11246
11246
|
});
|
|
11247
|
-
const S = (
|
|
11247
|
+
const S = (w) => y.findIndex((D) => D?.guid === w);
|
|
11248
11248
|
return /* @__PURE__ */ t(
|
|
11249
11249
|
Ds,
|
|
11250
11250
|
{
|
|
11251
11251
|
axisHighlight: { x: "none" },
|
|
11252
11252
|
disableLineItemHighlight: !0,
|
|
11253
11253
|
height: n,
|
|
11254
|
-
onAreaClick: (
|
|
11254
|
+
onAreaClick: (w, D) => {
|
|
11255
11255
|
r?.();
|
|
11256
11256
|
const L = y.find((k) => k.id === D.seriesId);
|
|
11257
11257
|
d(W.DEBTS_CLICK_CHART_AREA, { account_guid: L?.guid });
|
|
11258
11258
|
},
|
|
11259
|
-
onHighlightChange: (
|
|
11260
|
-
const D = y.find((L) => L.id ===
|
|
11259
|
+
onHighlightChange: (w) => {
|
|
11260
|
+
const D = y.find((L) => L.id === w?.seriesId)?.guid;
|
|
11261
11261
|
s?.(D ?? "");
|
|
11262
11262
|
},
|
|
11263
11263
|
series: y,
|
|
@@ -11300,7 +11300,7 @@ const Rc = ({
|
|
|
11300
11300
|
scaleType: "time",
|
|
11301
11301
|
min: u[0],
|
|
11302
11302
|
disableTicks: !0,
|
|
11303
|
-
valueFormatter: (
|
|
11303
|
+
valueFormatter: (w) => oe(w, ne.MONTH_SHORT_YEAR)
|
|
11304
11304
|
}
|
|
11305
11305
|
],
|
|
11306
11306
|
yAxis: [
|
|
@@ -11308,7 +11308,7 @@ const Rc = ({
|
|
|
11308
11308
|
min: 0,
|
|
11309
11309
|
max: f,
|
|
11310
11310
|
disableTicks: !0,
|
|
11311
|
-
valueFormatter: (
|
|
11311
|
+
valueFormatter: (w) => P(w, "0a")
|
|
11312
11312
|
}
|
|
11313
11313
|
]
|
|
11314
11314
|
}
|
|
@@ -11340,7 +11340,7 @@ const Rc = ({
|
|
|
11340
11340
|
}
|
|
11341
11341
|
)
|
|
11342
11342
|
] });
|
|
11343
|
-
}, Fm =
|
|
11343
|
+
}, Fm = x(Pm), Wm = () => {
|
|
11344
11344
|
const e = cn(), { onEvent: n } = X(), { debts: i } = I(), { selectedDebtChartData: a, showCompleted: o, showError: r } = hn();
|
|
11345
11345
|
return g.useEffect(() => n(W.DEBT_SCHEDULE_VIEW), []), /* @__PURE__ */ t(ie, { children: r || o ? /* @__PURE__ */ t(
|
|
11346
11346
|
C,
|
|
@@ -11404,7 +11404,7 @@ const Rc = ({
|
|
|
11404
11404
|
}
|
|
11405
11405
|
) })
|
|
11406
11406
|
] }) });
|
|
11407
|
-
}, Um =
|
|
11407
|
+
}, Um = x(Wm), Lc = x(({ goal: e }) => {
|
|
11408
11408
|
const { goals: n } = I(), { setAlert: i, setSelectedGoal: a, updateGoal: o } = lt(), [r, s] = g.useState(e.interest_rate ?? 0), c = !e.guid, d = r < 0, _ = async () => {
|
|
11409
11409
|
const h = { ...e, interest_rate: r };
|
|
11410
11410
|
e.interest_rate = r, c ? a(h) : (await o(h), i(n.alert_goal_updated_interest_rate));
|
|
@@ -11437,7 +11437,7 @@ const Rc = ({
|
|
|
11437
11437
|
)
|
|
11438
11438
|
}
|
|
11439
11439
|
);
|
|
11440
|
-
}), Oc =
|
|
11440
|
+
}), Oc = x(({ goal: e }) => {
|
|
11441
11441
|
const { goals: n } = I(), { setAlert: i, setSelectedGoal: a, updateGoal: o } = lt(), [r, s] = g.useState(e.monthly_payment ?? 0), c = !e.guid, d = r < 0 || r > 9999999999e-2, _ = async () => {
|
|
11442
11442
|
const h = { ...e, monthly_payment: r };
|
|
11443
11443
|
e.monthly_payment = r, c ? a(h) : (await o({ ...e, monthly_payment: r }), i(n.alert_goal_updated_payment));
|
|
@@ -11471,7 +11471,7 @@ const Rc = ({
|
|
|
11471
11471
|
)
|
|
11472
11472
|
}
|
|
11473
11473
|
);
|
|
11474
|
-
}), Mc =
|
|
11474
|
+
}), Mc = x(({ goal: e }) => {
|
|
11475
11475
|
const { goals: n } = I(), { setAlert: i, setSelectedGoal: a, updateGoal: o } = lt(), [r, s] = g.useState(e.initial_amount), c = !e.guid, d = r < 0 || r > 9999999999e-2, _ = async () => {
|
|
11476
11476
|
const h = { ...e, initial_amount: r };
|
|
11477
11477
|
e.initial_amount = r, c ? a(h) : (await o({ ...e, initial_amount: r }), i(n.alert_goal_updated_balance));
|
|
@@ -11505,7 +11505,7 @@ const Rc = ({
|
|
|
11505
11505
|
)
|
|
11506
11506
|
}
|
|
11507
11507
|
);
|
|
11508
|
-
}), Vm =
|
|
11508
|
+
}), Vm = x(({ debt: e }) => {
|
|
11509
11509
|
const { debts: n } = I(), { updateAccount: i } = fe(), { onEvent: a } = X(), [o, r] = g.useState(e.interest_rate ?? 0), s = o < 0, c = async () => {
|
|
11510
11510
|
await i({ ...e.account, interest_rate: o }), e.interest_rate = o, a(W.DEBTS_SAVE_RATE_ACTION, { account_guid: e.guid });
|
|
11511
11511
|
}, d = () => {
|
|
@@ -11535,7 +11535,7 @@ const Rc = ({
|
|
|
11535
11535
|
)
|
|
11536
11536
|
}
|
|
11537
11537
|
);
|
|
11538
|
-
}), Km =
|
|
11538
|
+
}), Km = x(({ debt: e }) => {
|
|
11539
11539
|
const { debts: n } = I(), { updateAccount: i } = fe(), { onEvent: a } = X(), [o, r] = g.useState(e.monthly_payment ?? 0), s = o < 0 || o > 9999999999e-2, c = async () => {
|
|
11540
11540
|
await i({ ...e.account, minimum_payment: o }), e.monthly_payment = o, a(W.DEBTS_SAVE_PAYMENT_ACTION, { account_guid: e.guid });
|
|
11541
11541
|
}, d = () => {
|
|
@@ -11567,7 +11567,7 @@ const Rc = ({
|
|
|
11567
11567
|
)
|
|
11568
11568
|
}
|
|
11569
11569
|
);
|
|
11570
|
-
}), Ym =
|
|
11570
|
+
}), Ym = x(({ debt: e }) => {
|
|
11571
11571
|
const { debts: n } = I(), { updateAccount: i } = fe(), { onEvent: a } = X(), [o, r] = g.useState(e.original_balance ?? 0), s = o < 0 || o > 9999999999e-2, c = async () => {
|
|
11572
11572
|
await i({ ...e.account, original_balance: o }), e.original_balance = o, a(W.DEBTS_SAVE_BALANCE_ACTION, { account_guid: e.guid });
|
|
11573
11573
|
}, d = () => {
|
|
@@ -11619,7 +11619,7 @@ const Rc = ({
|
|
|
11619
11619
|
/* @__PURE__ */ t(F, {})
|
|
11620
11620
|
] })
|
|
11621
11621
|
] });
|
|
11622
|
-
}, jm =
|
|
11622
|
+
}, jm = x(zm), $m = ({ setTabValue: e, sx: n }) => {
|
|
11623
11623
|
const { debts: i } = I(), { showError: a, showCompleted: o } = hn();
|
|
11624
11624
|
return g.useEffect(() => {
|
|
11625
11625
|
a && e(1);
|
|
@@ -11664,7 +11664,7 @@ const Rc = ({
|
|
|
11664
11664
|
}
|
|
11665
11665
|
) })
|
|
11666
11666
|
] });
|
|
11667
|
-
}, Xm =
|
|
11667
|
+
}, Xm = x($m), qm = () => {
|
|
11668
11668
|
const { debts: e } = I(), { showError: n, showCompleted: i } = hn(), [a, o] = g.useState(0);
|
|
11669
11669
|
return /* @__PURE__ */ l(Q, { children: [
|
|
11670
11670
|
(n || i) && /* @__PURE__ */ t(Xm, { setTabValue: o, sx: { mt: -24 } }),
|
|
@@ -11700,7 +11700,7 @@ const Rc = ({
|
|
|
11700
11700
|
/* @__PURE__ */ t(ti, { index: 0, name: "debt-schedule", value: a, children: /* @__PURE__ */ t(Um, {}) }),
|
|
11701
11701
|
/* @__PURE__ */ t(ti, { index: 1, name: "debt-details", value: a, children: /* @__PURE__ */ t(jm, {}) })
|
|
11702
11702
|
] });
|
|
11703
|
-
}, Zm =
|
|
11703
|
+
}, Zm = x(qm), Qm = ({ isOpen: e, onClose: n, sx: i }) => {
|
|
11704
11704
|
const { debts: a } = I(), { showError: o, showCompleted: r } = hn(), s = o || r ? /* @__PURE__ */ t(Q, {}) : /* @__PURE__ */ t(Fm, {});
|
|
11705
11705
|
return /* @__PURE__ */ t(
|
|
11706
11706
|
re,
|
|
@@ -11716,7 +11716,7 @@ const Rc = ({
|
|
|
11716
11716
|
] })
|
|
11717
11717
|
}
|
|
11718
11718
|
);
|
|
11719
|
-
}, Jm =
|
|
11719
|
+
}, Jm = x(() => {
|
|
11720
11720
|
const { debts: e } = I(), { monthlyCashFlowProfile: n, updateMonthlyCashFlowProfile: i } = lt(), { onEvent: a } = X(), [o, r] = g.useState(n?.extra_payment ?? 0), s = o < 0 || o > 9999999999e-2, c = async () => {
|
|
11721
11721
|
n && (await i({ ...n, extra_payment: o }), n.extra_payment = o, a(W.DEBTS_SAVE_PAYDOWN_ACTION, {
|
|
11722
11722
|
user_guid: n?.user_guid
|
|
@@ -11770,7 +11770,7 @@ const Rc = ({
|
|
|
11770
11770
|
/* @__PURE__ */ t(C, { bold: !0, textAlign: "right", variant: "Body", children: P(a, "0,0") })
|
|
11771
11771
|
] }) })
|
|
11772
11772
|
] });
|
|
11773
|
-
}, tp =
|
|
11773
|
+
}, tp = x(ep), np = ({ isOpen: e, onClose: n, sx: i }) => {
|
|
11774
11774
|
const { debts: a } = I();
|
|
11775
11775
|
return /* @__PURE__ */ t(
|
|
11776
11776
|
re,
|
|
@@ -11942,8 +11942,8 @@ const Ut = (e) => /* @__PURE__ */ t(C, { fontWeight: 600, variant: "Small", chil
|
|
|
11942
11942
|
id: S,
|
|
11943
11943
|
priority: ap(y)
|
|
11944
11944
|
})), [n]), f = (y) => {
|
|
11945
|
-
const
|
|
11946
|
-
a?.(
|
|
11945
|
+
const v = y.target.closest("[data-id]")?.getAttribute("data-id"), w = n[Number(v)];
|
|
11946
|
+
a?.(w?.guid ?? "");
|
|
11947
11947
|
}, E = (y) => p.find((S) => S.guid === y)?.id;
|
|
11948
11948
|
return /* @__PURE__ */ t(
|
|
11949
11949
|
O,
|
|
@@ -12015,7 +12015,7 @@ const Ut = (e) => /* @__PURE__ */ t(C, { fontWeight: 600, variant: "Small", chil
|
|
|
12015
12015
|
children: /* @__PURE__ */ t(K, { name: r })
|
|
12016
12016
|
}
|
|
12017
12017
|
);
|
|
12018
|
-
}, dp =
|
|
12018
|
+
}, dp = x(({ buttonEl: e, onClose: n }) => {
|
|
12019
12019
|
const { onEvent: i } = X(), { debts: a } = I(), { selectedDebtPriority: o, setSelectedDebtPriority: r } = hn(), s = !!e, c = [
|
|
12020
12020
|
{
|
|
12021
12021
|
priority: en.HIGHEST_INTEREST,
|
|
@@ -12074,7 +12074,7 @@ const Ut = (e) => /* @__PURE__ */ t(C, { fontWeight: 600, variant: "Small", chil
|
|
|
12074
12074
|
)) })
|
|
12075
12075
|
}
|
|
12076
12076
|
);
|
|
12077
|
-
}), up =
|
|
12077
|
+
}), up = x(() => {
|
|
12078
12078
|
const { onEvent: e } = X(), { debts: n } = I(), { selectedDebtPriority: i } = hn(), [a, o] = g.useState(null), r = (_) => {
|
|
12079
12079
|
o(_.currentTarget), e(W.DEBTS_CLICK_PRIORITIZE);
|
|
12080
12080
|
}, s = () => {
|
|
@@ -12125,7 +12125,7 @@ const Ut = (e) => /* @__PURE__ */ t(C, { fontWeight: 600, variant: "Small", chil
|
|
|
12125
12125
|
}), r.forEach((d) => {
|
|
12126
12126
|
d.priority = !d.is_paid_off && !d.is_impossible ? c++ : void 0;
|
|
12127
12127
|
}), r;
|
|
12128
|
-
}, hp =
|
|
12128
|
+
}, hp = x(({ onClick: e }) => {
|
|
12129
12129
|
const { debts: n } = I(), { isDesktop: i } = he(), { totalMonthlyPayments: a } = ha(), { monthlyCashFlowProfile: o } = lt(), r = a + Number(o?.extra_payment), s = i ? n.paydown_button_long : n.paydown_button_short;
|
|
12130
12130
|
return /* @__PURE__ */ t(
|
|
12131
12131
|
ee,
|
|
@@ -12140,20 +12140,20 @@ const Ut = (e) => /* @__PURE__ */ t(C, { fontWeight: 600, variant: "Small", chil
|
|
|
12140
12140
|
}
|
|
12141
12141
|
);
|
|
12142
12142
|
}), gp = ({ onBackClick: e, sx: n }) => {
|
|
12143
|
-
const [i, a] = g.useState(!1), [o, r] = g.useState(!1), [s, c] = g.useState(!1), [d, _] = g.useState(""), { isDesktop: u, isMobile: h } = he(), { debts: m } = I(), { onEvent: p } = X(), { isCopyLoaded: f, isInitialized: E, setSelectedAccounts: y } = le(), { setSelectedAccount: S } = Ft(), { selectedDebtPriority:
|
|
12143
|
+
const [i, a] = g.useState(!1), [o, r] = g.useState(!1), [s, c] = g.useState(!1), [d, _] = g.useState(""), { isDesktop: u, isMobile: h } = he(), { debts: m } = I(), { onEvent: p } = X(), { isCopyLoaded: f, isInitialized: E, setSelectedAccounts: y } = le(), { setSelectedAccount: S } = Ft(), { selectedDebtPriority: T, setSelectedDebtChartData: v } = hn(), { visibleDebtAccounts: w } = fe(), { goalsLoaded: D, loadGoals: L, monthlyCashFlowProfile: k } = lt(), { debts: B } = ha(), M = g.useMemo(() => {
|
|
12144
12144
|
const Ce = k?.extra_payment ?? 0;
|
|
12145
|
-
return _p(B,
|
|
12146
|
-
}, [B,
|
|
12145
|
+
return _p(B, T, Ce);
|
|
12146
|
+
}, [B, T, k]);
|
|
12147
12147
|
g.useEffect(() => {
|
|
12148
|
-
y(
|
|
12148
|
+
y(w), p(W.DEBTS_VIEW);
|
|
12149
12149
|
}, []), g.useEffect(() => {
|
|
12150
|
-
y(
|
|
12151
|
-
}, [
|
|
12150
|
+
y(w);
|
|
12151
|
+
}, [w]), g.useEffect(() => {
|
|
12152
12152
|
E && L().finally();
|
|
12153
12153
|
}, [E]);
|
|
12154
12154
|
const R = (Ce) => _(Ce), G = () => {
|
|
12155
|
-
const Ce =
|
|
12156
|
-
Ce && S(Ce), Le &&
|
|
12155
|
+
const Ce = w.find((Me) => Me.guid === d), Le = M.find((Me) => Me.guid === d);
|
|
12156
|
+
Ce && S(Ce), Le && v(Le), a(!0);
|
|
12157
12157
|
}, q = () => p(W.DEBTS_CLICK_FILTER), se = () => {
|
|
12158
12158
|
c(!0), p(W.DEBTS_CLICK_SNOWBALL_CTA);
|
|
12159
12159
|
}, pe = () => {
|
|
@@ -12162,7 +12162,7 @@ const Ut = (e) => /* @__PURE__ */ t(C, { fontWeight: 600, variant: "Small", chil
|
|
|
12162
12162
|
return !D || !f || !E ? /* @__PURE__ */ t(de, {}) : /* @__PURE__ */ l(
|
|
12163
12163
|
mt,
|
|
12164
12164
|
{
|
|
12165
|
-
accountOptions:
|
|
12165
|
+
accountOptions: w,
|
|
12166
12166
|
actions: [
|
|
12167
12167
|
/* @__PURE__ */ t(up, {}, "prioritize-debts"),
|
|
12168
12168
|
/* @__PURE__ */ t(hp, { onClick: pe }, "extra-paydown")
|
|
@@ -12226,7 +12226,7 @@ const Ut = (e) => /* @__PURE__ */ t(C, { fontWeight: 600, variant: "Small", chil
|
|
|
12226
12226
|
]
|
|
12227
12227
|
}
|
|
12228
12228
|
);
|
|
12229
|
-
}, c2 =
|
|
12229
|
+
}, c2 = x(gp), mp = {
|
|
12230
12230
|
unnamed_label: "Unnamed Debt"
|
|
12231
12231
|
};
|
|
12232
12232
|
function pp(e, n) {
|
|
@@ -12447,7 +12447,7 @@ const yp = ({
|
|
|
12447
12447
|
)
|
|
12448
12448
|
}
|
|
12449
12449
|
);
|
|
12450
|
-
}, l2 =
|
|
12450
|
+
}, l2 = x(Ep);
|
|
12451
12451
|
class Fr {
|
|
12452
12452
|
fetchInstance;
|
|
12453
12453
|
constructor(n, i) {
|
|
@@ -12565,7 +12565,7 @@ const Ap = (e, n) => {
|
|
|
12565
12565
|
}, Tp = (e, n) => n ? P(e, e < 1e3 ? "0" : "0.00a").replace(
|
|
12566
12566
|
/(\d+)(?:\.0+|(\.\d*?[1-9])0*)([a-zA-Z]* ?\$?)/g,
|
|
12567
12567
|
"$1$2$3"
|
|
12568
|
-
) : P(e, "0,0.00"), Gc =
|
|
12568
|
+
) : P(e, "0,0.00"), Gc = x(
|
|
12569
12569
|
({ goal: e, isInDrawer: n = !1, onClick: i }) => {
|
|
12570
12570
|
const { goals: a } = I(), { isMobile: o, isTablet: r } = he(), s = o || r, {
|
|
12571
12571
|
backgroundColor: c,
|
|
@@ -12601,7 +12601,7 @@ const Ap = (e, n) => {
|
|
|
12601
12601
|
] }) })
|
|
12602
12602
|
] }) });
|
|
12603
12603
|
}
|
|
12604
|
-
), xp =
|
|
12604
|
+
), xp = x(({ trackType: e }) => {
|
|
12605
12605
|
const { goals: n } = I(), { setAlert: i, monthlyCashFlowProfile: a, updateMonthlyCashFlowProfile: o } = lt(), r = g.useMemo(() => {
|
|
12606
12606
|
let _ = 0;
|
|
12607
12607
|
return e === z.SAVINGS_TRACK ? _ = a?.amount_allocated_for_savings_goals || 0 : e === z.DEBT_TRACK ? _ = a?.amount_allocated_for_debt_goals || 0 : e === z.RETIREMENT_TRACK && (_ = a?.amount_allocated_for_retirement_goals || 0), _;
|
|
@@ -12834,7 +12834,7 @@ const Ap = (e, n) => {
|
|
|
12834
12834
|
}
|
|
12835
12835
|
)
|
|
12836
12836
|
] });
|
|
12837
|
-
}, Ra =
|
|
12837
|
+
}, Ra = x(({ trackType: e, onAddGoals: n }) => {
|
|
12838
12838
|
const { isMobile: i } = he(), { goals: a } = I(), { orderedGoals: o, setSelectedGoal: r } = lt(), s = o.filter((u) => u.track_type === e), c = s.filter(
|
|
12839
12839
|
(u) => u.track_type === z.SAVINGS_TRACK && !u.has_been_spent || u.track_type !== z.SAVINGS_TRACK && !u.is_complete
|
|
12840
12840
|
), d = s.filter(
|
|
@@ -13057,7 +13057,7 @@ const Ap = (e, n) => {
|
|
|
13057
13057
|
/* @__PURE__ */ t(gl, {})
|
|
13058
13058
|
] }) })
|
|
13059
13059
|
] });
|
|
13060
|
-
}, Lp =
|
|
13060
|
+
}, Lp = x(({ goal: e }) => {
|
|
13061
13061
|
const { goals: n } = I(), { setAlert: i, setSelectedGoal: a, updateGoal: o } = lt(), [r, s] = g.useState(e.amount), c = !e.guid, d = r < 0 || r > 9999999999e-2, _ = e.track_type === z.SAVINGS_TRACK && e.has_been_spent || e.track_type !== z.SAVINGS_TRACK && e.is_complete, u = async () => {
|
|
13062
13062
|
const m = { ...e, amount: r };
|
|
13063
13063
|
e.amount = r, c ? a(m) : (await o(m), i(n.alert_goal_updated_amount));
|
|
@@ -13162,7 +13162,7 @@ const Ap = (e, n) => {
|
|
|
13162
13162
|
)
|
|
13163
13163
|
] }) })
|
|
13164
13164
|
] });
|
|
13165
|
-
}, Mp =
|
|
13165
|
+
}, Mp = x(({ goal: e }) => {
|
|
13166
13166
|
const { goals: n } = I(), { setAlert: i, setSelectedGoal: a, updateGoal: o } = lt(), [r, s] = g.useState(e.name), c = !e.guid, d = e.track_type === z.SAVINGS_TRACK && e.has_been_spent || e.track_type !== z.SAVINGS_TRACK && e.is_complete, _ = async () => {
|
|
13167
13167
|
const h = { ...e, name: r };
|
|
13168
13168
|
e.name = r, c ? a(h) : (await o(h), i(n.alert_goal_updated_name));
|
|
@@ -13227,7 +13227,7 @@ const Ap = (e, n) => {
|
|
|
13227
13227
|
)
|
|
13228
13228
|
}
|
|
13229
13229
|
);
|
|
13230
|
-
}, Gp =
|
|
13230
|
+
}, Gp = x(({ goal: e }) => {
|
|
13231
13231
|
const { goals: n } = I(), { user: i, updateUser: a } = wt(), { setAlert: o } = lt(), [r, s] = g.useState(We(i.birthday ?? 0)), [c, d] = g.useState(null), _ = e.is_complete, u = async () => {
|
|
13232
13232
|
r && $d(r) && (await a({ ...i, birthday: Be(r) }), o(n.alert_goal_updated_birthday));
|
|
13233
13233
|
};
|
|
@@ -13267,18 +13267,18 @@ const Ap = (e, n) => {
|
|
|
13267
13267
|
), f = i.filter(
|
|
13268
13268
|
(y) => !r.find((S) => S.account_guid === y.guid)
|
|
13269
13269
|
), E = async (y) => {
|
|
13270
|
-
const S = y.map((
|
|
13271
|
-
account_guid:
|
|
13270
|
+
const S = y.map((T) => ({
|
|
13271
|
+
account_guid: T.guid,
|
|
13272
13272
|
retirement_goal_guid: e.guid
|
|
13273
13273
|
}));
|
|
13274
13274
|
if (m)
|
|
13275
13275
|
d(S);
|
|
13276
13276
|
else
|
|
13277
|
-
for (const
|
|
13278
|
-
await a(
|
|
13277
|
+
for (const T of S)
|
|
13278
|
+
await a(T), c(n.alert_account_added);
|
|
13279
13279
|
_({
|
|
13280
13280
|
...s,
|
|
13281
|
-
current_amount: y.reduce((
|
|
13281
|
+
current_amount: y.reduce((T, v) => T + (v.balance || 0), 0)
|
|
13282
13282
|
}), h(!1);
|
|
13283
13283
|
};
|
|
13284
13284
|
return /* @__PURE__ */ l(b, { children: [
|
|
@@ -13304,7 +13304,7 @@ const Ap = (e, n) => {
|
|
|
13304
13304
|
}
|
|
13305
13305
|
)
|
|
13306
13306
|
] });
|
|
13307
|
-
}, Hp =
|
|
13307
|
+
}, Hp = x(({ goal: e }) => {
|
|
13308
13308
|
const { goals: n } = I(), { visibleAccounts: i } = fe(), a = g.useMemo(
|
|
13309
13309
|
() => i.find((s) => s.guid === e.account_guid),
|
|
13310
13310
|
[i, e]
|
|
@@ -13349,7 +13349,7 @@ const Ap = (e, n) => {
|
|
|
13349
13349
|
] }),
|
|
13350
13350
|
e.track_type === z.SAVINGS_TRACK && !e.is_complete && /* @__PURE__ */ t(Op, { goal: e })
|
|
13351
13351
|
] });
|
|
13352
|
-
}), Pp =
|
|
13352
|
+
}), Pp = x(({ onClose: e }) => {
|
|
13353
13353
|
const { visibleInvestmentAccounts: n } = fe(), { goals: i, common: a } = I(), {
|
|
13354
13354
|
addGoal: o,
|
|
13355
13355
|
addRetirementGoal: r,
|
|
@@ -13361,16 +13361,16 @@ const Ap = (e, n) => {
|
|
|
13361
13361
|
setAlert: h,
|
|
13362
13362
|
setSelectedGoal: m,
|
|
13363
13363
|
updateGoal: p
|
|
13364
|
-
} = lt(), { user: f } = wt(), [E, y] = g.useState(!1), S = !u?.guid,
|
|
13364
|
+
} = lt(), { user: f } = wt(), [E, y] = g.useState(!1), S = !u?.guid, T = u?.track_type === z.SAVINGS_TRACK && u.is_complete && !u.has_been_spent, v = g.useMemo(() => {
|
|
13365
13365
|
const R = S ? d : _;
|
|
13366
13366
|
return n.filter((G) => R.some((q) => q.account_guid === G.guid));
|
|
13367
|
-
}, [S, n, d, _]),
|
|
13367
|
+
}, [S, n, d, _]), w = g.useMemo(() => {
|
|
13368
13368
|
if (!u) return !1;
|
|
13369
13369
|
const { account_guid: R, track_type: G, name: q, amount: se, retirement_age: pe } = u;
|
|
13370
|
-
return G === z.SAVINGS_TRACK ? R ? !!q && !!se : !1 : G === z.RETIREMENT_TRACK ?
|
|
13371
|
-
}, [u,
|
|
13370
|
+
return G === z.SAVINGS_TRACK ? R ? !!q && !!se : !1 : G === z.RETIREMENT_TRACK ? v.length ? !!q && !!se && !!pe && !!f.birthday : !1 : !0;
|
|
13371
|
+
}, [u, v, f.birthday]);
|
|
13372
13372
|
let D = a.delete_button, L = () => y(!0);
|
|
13373
|
-
S ? (L = () => k(), D = a.save_button) :
|
|
13373
|
+
S ? (L = () => k(), D = a.save_button) : T && (L = () => M(), D = i.mark_as_complete_button);
|
|
13374
13374
|
const k = async () => {
|
|
13375
13375
|
if (u) {
|
|
13376
13376
|
const R = u.track_type;
|
|
@@ -13392,10 +13392,10 @@ const Ap = (e, n) => {
|
|
|
13392
13392
|
ariaLabelClose: a.close_aria,
|
|
13393
13393
|
hasSecondaryAction: S,
|
|
13394
13394
|
isOpen: !!u,
|
|
13395
|
-
isPrimaryDisabled: !
|
|
13395
|
+
isPrimaryDisabled: !w,
|
|
13396
13396
|
onClose: () => m(void 0),
|
|
13397
13397
|
onPrimaryAction: L,
|
|
13398
|
-
primaryColor: S ||
|
|
13398
|
+
primaryColor: S || T ? "primary" : "error",
|
|
13399
13399
|
primaryText: D,
|
|
13400
13400
|
secondaryColor: "primary",
|
|
13401
13401
|
title: i.goal_details,
|
|
@@ -13416,8 +13416,8 @@ const Ap = (e, n) => {
|
|
|
13416
13416
|
}
|
|
13417
13417
|
)
|
|
13418
13418
|
] });
|
|
13419
|
-
}), d2 =
|
|
13420
|
-
const { onEvent: i } = X(), { isMobile: a } = he(), { visibleAccounts: o } = fe(), { isCopyLoaded: r, isInitialized: s, setSelectedAccounts: c } = le(), { goals: d, common: _ } = I(), { alert: u, goals: h, goalsLoaded: m, loadGoals: p, monthlyCashFlowProfile: f, setAlert: E, retirmentGoals: y } = lt(), [S,
|
|
13419
|
+
}), d2 = x(({ onBackClick: e, sx: n }) => {
|
|
13420
|
+
const { onEvent: i } = X(), { isMobile: a } = he(), { visibleAccounts: o } = fe(), { isCopyLoaded: r, isInitialized: s, setSelectedAccounts: c } = le(), { goals: d, common: _ } = I(), { alert: u, goals: h, goalsLoaded: m, loadGoals: p, monthlyCashFlowProfile: f, setAlert: E, retirmentGoals: y } = lt(), [S, T] = g.useState(0), [v, w] = g.useState(!1), D = f?.amount_allocated_for_savings_goals || 0, L = f?.amount_allocated_for_debt_goals || 0, k = f?.amount_allocated_for_retirement_goals || 0, B = r ? A(
|
|
13421
13421
|
a ? d.tab_subtitle_mobile : d.tab_subtitle,
|
|
13422
13422
|
P(D, "0,0")
|
|
13423
13423
|
) : "", M = r ? A(
|
|
@@ -13435,9 +13435,9 @@ const Ap = (e, n) => {
|
|
|
13435
13435
|
const G = () => {
|
|
13436
13436
|
i(W.GOALS_CLICK_FILTER);
|
|
13437
13437
|
}, q = () => {
|
|
13438
|
-
|
|
13438
|
+
w(!0), i(W.GOALS_CLICK_ADD);
|
|
13439
13439
|
}, se = (Ce) => {
|
|
13440
|
-
|
|
13440
|
+
w(!1), Ce === z.SAVINGS_TRACK ? T(0) : Ce === z.DEBT_TRACK ? T(1) : Ce === z.RETIREMENT_TRACK && T(2);
|
|
13441
13441
|
}, pe = g.useMemo(
|
|
13442
13442
|
() => m && (h.length === 0 || h.every(({ track_type: Ce }) => !Ce) && y.length === 0),
|
|
13443
13443
|
[h, m, y]
|
|
@@ -13462,7 +13462,7 @@ const Ap = (e, n) => {
|
|
|
13462
13462
|
/* @__PURE__ */ l(
|
|
13463
13463
|
Zt,
|
|
13464
13464
|
{
|
|
13465
|
-
onChange: (Ce, Le) =>
|
|
13465
|
+
onChange: (Ce, Le) => T(Le),
|
|
13466
13466
|
sx: { bgcolor: "background.paper" },
|
|
13467
13467
|
textColor: "primary",
|
|
13468
13468
|
value: pe ? !1 : S,
|
|
@@ -13518,8 +13518,8 @@ const Ap = (e, n) => {
|
|
|
13518
13518
|
re,
|
|
13519
13519
|
{
|
|
13520
13520
|
ariaLabelClose: _.close_aria,
|
|
13521
|
-
isOpen:
|
|
13522
|
-
onClose: () =>
|
|
13521
|
+
isOpen: v,
|
|
13522
|
+
onClose: () => w(!1),
|
|
13523
13523
|
title: d.add_goal_title,
|
|
13524
13524
|
children: /* @__PURE__ */ t(Rp, { onClose: se })
|
|
13525
13525
|
}
|
|
@@ -13707,7 +13707,7 @@ class Fp {
|
|
|
13707
13707
|
}
|
|
13708
13708
|
};
|
|
13709
13709
|
}
|
|
13710
|
-
const Wp =
|
|
13710
|
+
const Wp = x(({ goal: e }) => {
|
|
13711
13711
|
const { goals: n } = I(), i = ye(), {
|
|
13712
13712
|
backgroundColor: a,
|
|
13713
13713
|
color: o,
|
|
@@ -13733,7 +13733,7 @@ const Wp = T(({ goal: e }) => {
|
|
|
13733
13733
|
}
|
|
13734
13734
|
)
|
|
13735
13735
|
] });
|
|
13736
|
-
}), Up = "data:image/png;base64,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", Vp = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQ4AAADACAYAAAD1JI3VAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAADaFSURBVHgB7Z0JlBT3fed/Vd0903P3zHAMMECDABmwYWRLClIk0yD5inZX4Ejel81KoOy+9UteEtDb3WycXQdI3kuy3hcLxZs43iMgaTdeW47AiSXLsgUjsGXZUgzDikMcomEGmIG5z54+6p//r6qru7q77q7qru7+f94r+qo+pun61u/6/34ADAaDwWAwGAwGg+E5OKgyLoyR5wQCPeAgfg6eXdfOnQYGgyHihyojRSBC1dBR4UgBhIDBYGSoOuGgohHGS55e8RVhTyWEnJtRYDAYGapOOCBtHYTqABY3gi3mqYnx4WT29vp2LgoMBiNDVQnH+TESJkS6zqetjakEdTUEc89HC6WlTnR3lESBwWDkUG0WR1i+EuClyztzkgVhhka/JBzx3P2jwHCeUCQMPl8P8CQEhP6/EVhJHU20FulGwoo9wxqvMJ7eKLJFSKLUV70GAr2fo/fxfBSamqIQPToODEdxRTjwzE8vIlACqBtxWL5OUvRHlxaMOp90mTBpbSix85xq5NwouQoucGNgKAzFkxYZkfCntv0r6Rpai1z6ikDPAFPU5+zcToWDZsU4uhHyligod37IsmRF4JbFgS7DIXAfPJMcztzismcn2VURCJgm6Ct8DsfVtMURBhdY1r0YSgxaMREqGhF6fa8oKBkxoUICfC80N59mlol5XBEO+v8S5ngoBVHlDXq8h+RESh1v3XKQxUb5PEGgpm+Ng25foDT/n6aZTUKxpMUELWNhn2SZPNJLxeW71IXqZRaJPu5YHIoz/8oWZ390GOwcms3cHM9921yLI2YytiEjf86c4ChhMY42GvfpDOp/n29fFOD1MwLMxi2YeA7ym199HRwgAiVysVXAmMyzX3/KfxQqAFeEQ3nmb3T4HZQZkgI3gsMAm0IALFocanER3seEA5mMA9ya1XiMBqBfec+iSjPyCVPz9tDeQ6T34DOc510mV4SDyzuAZS6Omc9wKFlLjcpg+pMq4w/5boQsWPL7Jiye/NRclXKSDjLLW3Q2AeGZGIzT73e8OQmn71nljR/YjWEWTXaIUNyX2AHKuJ1HcUc40tHufOEYpWempA1L1q94HeVBzWm4KnLFqGWLgy+o4UCiUELEWhQB9tA/ZjcNMOeUujfQ/61gk/QdzFEf/+QA6aUf94VPdmczS44Q3hGCycndWg8vacxaZ8hwEBg1hmtZlfw7koI90UCUwqE8sH18wUGdI1h2gqP5FlGpqkavjpEQ1dV9VCz26i09pNaGeNDiRoUxMjkPkR8PkH30Tz1QtIBIgrGHBgrxM2iuz2kK5J4UAj5g1BiuCofyxzVvMwoezPtR5mQ8FBaHWtWoFeFQDYyWyNrAzz5H4DjkCW4iJX0e/A4C+D9FJPGV/04qnBCiZ/sZ6sLQ7/fQyRtk5cPLuANgFZOCwWDIOC4cp8bESkARpXDYtTbq8z6hzuKzsHxFQwR0kZ9T6qrRtOBlRANFIUZFNk63NioKC4NZIZRBqwhdFYz3oAXSXJe+Pwn7qfUReqibe9bMe3tBMDqbORiZLk8mhmEfx4WjTuUARpI242dabgqidCOKrRr1lSkwqhQN/PumYpJQdLdpp7HrfdJjWMsgCx26D2ihUDHZe2KAXKNuy0HdN+7Yvq/cFsZjm3m6+eA77wpw7Hxh1LyxjoOGOqga5mhmqlzpaqdxXDjQepa/GmUAbd5mtq5e8Rp54pObUSiyalQ+SIXcGo4+cBFqbWBMI4zXUTQmY5KALWtVFw1092QLDP/GZioW0yCJh2x50JgHhkj2/fQWOfrAEpX4zIJHI0AErOoNQxnZtl4SDeSJ+3hRIF7tk34kbdwILPYNQCcNwq5d7LHKsyIYpZbVxSEC06QVbqZWQSXjuHBoVY3GbMY4/AozXS/+4EbVKMkXJwdJuyj75dsoGihaK1QsjbkEwEhMuuxuodmVQPaxJr8kqPhcDFKihUZvh5JJGmQFcZPo+mwYEolDVDQiUGbWdnHw5H25wSu0Pubo2fjYeQGC3Bws5gfo6ZkGja9CVYE6GBQ64CYw4ciFU3dV7FocQcUnzIs/aKZiK6FqlApsRBbY+XS8orW+UDTu0INnPJa9jQLSrRAOtDQwTUsDpCKNAcnqoF/IruNXyf5tWOvR8cgeSMT3gwc6mWFM44uRwjTMCDWd+vqlL39I6IaheDd0t3OweQUH1cLAKMn8jZWO48KhPPM7EhxV/MYSJqpG/RVSNUpFY5d8XRa5kEo9BLojSuFAqwM3pdWB3xHGOzCwin8/CicVotB7P/vZbuh85HFxTUaZQOvi6Qd9cPAN6Y/c+2mfGLtQgqJx8I1kQZB0YIyIG8N7OC4cWlWj+ONuqwfLKLMqZqpGM0FOB6pGfS66KpDui4oHezIlvX+9Sj0ECgRuc4nsfflWB4Lu2Xw61iEflv3XBp4DKN+Bh9YFigZeomDI9+Xzjd4ky6xUGM4Lh0bV6Lp2KBorVaMd9dJmhfysTcCldGw6ZS1+T3LAt17nf6IpTzjwOmZQlIVXypStH4vDqAXS3NIM5QTFQhYKNcFAvvNuSjThlfghAU38pOSqLPdWcPSdKwKMzBCYEVohCQGoVdwoAAvjP3gQOp3aNFM1igeQ3ffNf96qdnfWggQVmScj0MpSuioyeN/CJv3nllM4Ni3nNMVC5tU+QQyG5tPJD8E6P01oTVGr6Rx4imW40aPmTHILTAidUKu4JhxoNl+eANfQqhqdiEubA0TBJegxPy4bQ5ycOtYQu4HJwhoYdGk6dRoxy9/F9NQ0lIszNAiI6VU55ZoPCoacfs1ngnSKB6ZkcXgrOPrOFSJZHDSlWssUCMe5MXIEHB5o5AbYYexc2sQlDrvH6AZMxyF8YsBU67znDYut8riHWjL0s6PwhfQKz4amC7NR6AJ2txZWkyZzS/FFBm8OQjlBi6LvOoEvbvNT6yN7/8Co5KJoESMN4jYxAnB2BGqKH7/y9X00dd4Lg69HwcMUWhyS7x0G7xMGFxHLuc28B7GX4qQv30tffwdaHOnai5xsCaZhJ/MsJxSNZSqiQRRuoRxsRU6952r9mikwK4IZE0zBdndwYgYFg6EMdeKx2TBNnZ+i2bBnYORNzzb1qZ6yvAqDI/CWfL0xLRYj6VjGTLwwriGLhmpFqcLakGtd0No49W75hQPBjMmffC8JL1MrQy3tyigA2xoeEZcFeJQCi2NDB7cNLHJygBynF5GRGWlxFkJ/Ggf+5UZuP3iAkzdE92uHlz7fPA+H6wngDyMUSC+Tl2s0muoA2mkEdSwtHnqikSK5VbkxD1kb+Rw/zxr+WIKD/VQ8AEaPHQCP4YjFkfTBM3jZYqNOoxQkeRBXi3rp82Gcg/4wMj8IXGeC5fU3p6UYywIa/OxskNySJRp9W9EtmYpn61uwAhXdFLQ2/ubrLwKjCkDx6HzkEHgMR4RjGy6mIvB8nT+3otErpD/fAa99vg3tYlC1F69jrKM1KNVm3JiSysY7GqS1K2qFYWhpTChEA2/Ppms9UDTKHRhlOAnBCuAjYhsEj+BYjCOZFBdsjbcEsylGL0E/Hx6knvt88xzshHTqV17hisVgGO8YmskGOmVQILAXx6RCNEh6OT7ePvTXL8D3//4HwKg2yA6aXz/uFfFwTDjExVTU6sCuVE0e7KHg1c+HLgsVDIwr9cr3oXBgeT5mW1Agbs9KLsk4tUIm5iXhIApLYyImXX7tK39ZUS4KFohtX8/6DpqGkB6viIejBWB4VvcHYE9TPYSUJdJeAT9fIAC76OcLe+nzpRsSbTs3RvZScdsD6TQwWiABnaZEGBRF9+QX756Gv/jK1+HyB5ehkpBTtMvaAV56u7CuA4VlbRdUDaM0fnVxsMiMEorH1NQRes1yEsNJHBUOPKuf7Cc76YkyQv31XvAY6c/3jFc/H8Y8ro6Rw9SA2EEtil1TU9ORlryycaz3wODp1euDcOLYT+Ak3byYQTHiifsk0UAeWMPDcnr9G70pMVXbyQ/CXb7zEKTHWGMVFYDVxTGFRi1H0gEXk5vBPiQiBkxH3nwGyoTjJecPL+d6Abx3UMp4/fOl18cchgWPRrHpjnLOqlyWPjU1U9Zy8pszubfvzIElsGnP9vW5XjKKCC5owxaCSRKgB1c7dNJU0qJFHgyY2QQtjsGhlFgVWzw0YLrg0XEY/pG5/rIO41aXc0YxiN264miO4mR38Br5c1uNFhVi/w2516ayZaCSvv5s31FcqzKR7ITGWQ4u3oCqQew5mizSVVFChL3QsX28HHUeTDi8hiQaWFDnqTEFPp3B0z4do0CyLnziupWLQ0JBy0AEy9Bf+kmh+qDYzDqzYLF6keo8otRteQFKCBMOL4HR8qnJgvkq5UZIz3bBAeJq3NawvNH1UDYkno0XKozc/ataun+XB3IQFn6qD+788DSUCCYcXmJycp+yZ6tXGJ2XNi0GVYZRY0YExUJJfstAtCbU1q40cZNigFTqOerBRj70894WljsUq3CEEAipI9Ra3VaqVbVMOIqApk93cEW4FEGAo5lmQQu27wOi6Epe4axdjDNR9AObWi0Dm6lwrPRdokIK8P774Ckwx9Xsk+IwHhIOROpiX6I0bfWErMvAuVGxX0cYbMJxsEqs4Vj4qR56xjgFHmPn5z9jar/mpZugefUjBfdLvUZze3HIYD+OYwaL3rzY5Vxs5OPi6t7j3/xzuPDuD8E2HH+wFJkWZnGUG0UGxWscecVc6frd9wmwXUU48ABDV+SJe/kcl0OrZWA+rMu5DTDT0vnIW2738vCMcChmqHoGahH0UovAsMimJQCwuBFMUdBOMZHApfVhqFJQPLCw67HNRAyU6rUMZDgFOURPSKfdjHd4zeIIg4eQxzMagUvfAzZieL/25O/uEQt5agC0MvpHidiLlOE6IbfjHZ50VQK8vQOxWGIpa/Nm88EFaGoT67RmyowMj+2GGoKJRikhEejYvhdGj1nqh2sWTwrHApwfUIamO9emCqsirTA0K61kzWdRo7pwCETwVJGXmwR4Aep8te2izCRK3AyGA2x8fNQNl4UFRxkl4e72EfhY5x2oZb55cQOUGNdcFiYcjJJwY7ql9GdcBkgrabfvhpFjh8FBmHAwSsLYfFDcGGXhOQjvOArRo45NJqwI4cDOV7dmwVHa6gCWNgGjhODSeSwGw1JzXGLOxiSUjBBMT2Pa37HCMGZxMFxHWkrPF6xVwW5Y2PmLCUiWHZ//DPxZMZWjWmBh2MJPveDUQjg2kMlBgum0a/7WXMOu/VO/7BOX0jeqrFtZ18XBH3/eD1vuYj/DkiAIz4FDMIvDQVbU9hziAtDKeEAhCpKLIpWad3dk73+aigtaHZeGmOXhLjRQuuDRCAz/qBeKhAkHwxVwgZuy09dPrwjwd+8Kmb4bnc1CzgI43BfXtSjZtJxTbfxTqfT1E91h2yWBEIx19EKRMOFwACwaw+IxRpYtd2VdE6nDV+4BI65hOZ6EP/jn0k8Q3RYUG2W8o7FOEqBqobHOCxaVM1ZH0cJxdYyEYgA99GqYCBDieMCUT3R9u9gUuCbAnpsJNhY1B+zHIXP8fFY0GlIpeGBiFI51LJRWv44KGbdl7WJJZGTO9AN8+ZXqmWw/55U2iA5YHUUJx4UxsmeOiBPcpNJpLjsoCGqj10fUaIcbA4NhqHGUbQHnfD74lTuD0B9sgEuNzbo9RVnPUbco3uqwLRznhskOgYArC2gqhQ0dnH4pL1bsARQ9MHjZsi74Ye//Ba9yvl+AH53OdUVGFSMURIviSvbx49TaeHLwBvzJ6rtzXJGRvLELaLU84LGMy6tnhOpIHxdpddgWDsJBj45J4ViFWoWzDxxAOVulUjh9XcikWfHgf+eykGnKg27KY9Tq2Ns0TIVjifSEDyeh8RI1L1raMq+BgdMta7wlHD/9UMhxpyqX4qwOt4KjTDg6H9lB/3PC4DDYNIgvsxOIc2qnDUZo4hJ6PMDw4G+gQc5nP+OHPiomeOB1NvthdrgR1r1/i6ZTFlH/JQUjh67CQHhNzmtcGgJ48W1vxThGq0I00hCC40Z7wQa2hYPTFwcmHBzsAYcs2qXLsgNUFzRIhWblBHuOTJuYvYtZk71UMDA7guKB1oNoQYxRy+Lv02sI/uG6eHGjoQFGArnTwNElGKmscbgVBtkhjuSwsYbFth1Ig6BMOLTAPqKEmoIOsWxZ1lWp84DlnsoTxMlJ9dMwuiZ/+r1koWn/Py5kr//jsLgN++ug1CRnZ2DsQh9MXb8CXmFqssQmzeSkrc76blkctY3UR9QxliksjnK7KUgqL/Us/djVRwWg1fDlVxJivGPzcg4aRudg3VjhkBbMtpQKFIwPj7wI1994JXNfw4LFsO7XfxMWfvyXoZxMlXomMFrGIGZGLeHK+YvjjNOU1Y1z1gaytFsSjoBH4oSJPIvj5o1Bw+fgICNsWvyNUz6YVRGJ/vrSzSg59z+/kiMayNzwEPQ9v1+0QGqMkBgktYhbWZXaxYWgaEurtP5fTThiNHY46WKtQyv1IIJ5v5JEXtX0jRtD0Lz6Y2AGtCyOp7MqOa/R4I5woBsydf0ytSi6wN/YTK2Nabj9i7c19//wyEvwiS9thpqCCLvAYpDUvqvCwS6txwQBroGDNAW055baxcWz9+PgMN1pi0NtuPMMDVJeHAPXWN+pIhwFrsoMNIN5MB27eWoCumNzmfs6EvGC4Khd0BW5/oNXoP+Nv4PE7Iyl56LFgeKCIlNDYJD0WStBUlvCcX6M7DM7OsAJytX13B40Uu0wLS3Sj1jtO5h3ec2UX0Ws8oOjN6irsqQHdFnbxYmT2ZbTbS7ug5/etQ6efC3rFjx2exAO5qVj7TBNLYy+5/eJrgfDNCGYmcTf7WGzT7AsHGnR2K+3T80GTiU3xdHO5UaB0aTLa2TqVWKWZrMqCFaGPvWgT1zElgu1Li5QM/JDaXXgOnqWX0u3S0Wc6WNULP7xT/+9ZStDiezSVAqLlnTBDA2ozkwXGVQVOPQgDpvd3fR5nApG5NwoOW4kGohBqraacdxNUVaNqsY4XLY4giqnFqWrckMnMCrNjlUTjTQb2nNuotVRDMWKBrJ651NQSWzo2Qwb7nEiJkN6xJoOk2haHDiSkV5EiACbqQmxo5SuyWyZigVTRRdsueCmtGbPfnUqZ383XRW/ilDhd6QcWnVjQPtgx5mxyrUoFwcFsVkPdgPbtJw+tpH+Tr93PfM4Wh2dcRrrqJNiHbhfg8mwx5U3f1CUe9IaaoaNX3gaVnzG3KBtO+DqWOWCPyeIfFb6vO+e/AkUCfYlRYez18zOGeFIL4/fQwUiQm/20MvMiler8L7i0rETcWmrKDCl5cKAJWXxV6ldFTU3JakSGFUDrQzloOn86fQv09tPPRiAB9rrsQV65v7HhgfhxaUrxOublmN3MHPe9FNfs9+n89EdD8GfHfp9UTzcBFPSL/7EOaVHN0W2NvD67VvFWWzUVcATX6+ZXcX/FYxbzBHrRSCMLH/7rYM74nHnTSWlqzKk0undR4/NVhNT79Aymbf48bQsDiVaNRzYvUsGDxi16fTfeS8Fmz/WCY0nbmbuw2xLYyol1nrgknqzK1HPn74Mv7TiLviZjSrQAI1pJPxNrq96dbpFALopMk/ufhr+8k+/AsVB0NU2VUnqNxPstIrPRnB0fTsXpZ9lFVQorW1tW1ev7gY3UXPhAiYLLuM2TnSqgdG8418rMIoZFBl0UdRA0/0yPWg3Ke7DRj/bRu/Aqwu7xIVyZ/rNqd2jyz8CLfVBW8Lxzi9uVWTDoMee/Hzm+tbPfQZ6X/8BnD1VVAFbGEKRMIz3Ro129BMXLI2UzawKigdUIqFIaPjOSA8KB7oTPi+UhefFIuwM01ZbTJdQScWqETN5dg1+hGZWLmazK8h2KhxYJDZroQx9MLgC1rTVTjt5dE1WrslNX//Wl34Pfu83vlhchsXPo7ti2GfHlWX1wVpLx/p8ETkWgQeb08Vqdrg5kxsnshMKUXNV8qtGb97AgOSigv2GZ7IKs+UuH3VXCs/oGDhd10XfZHVrjnDIVsfIliWmYhw/f20I4nevhofo/4GfzIkuy++/9i04P3QTzIDxmL962pzoPPdGEi4Nlr+Rz9bPfrrgvoVdXbD7d36rOJeFgKkUjStlVavauRpLx5LIMq+tJ8lTCsGGctQbpGIRreDomevZgwsPTGXHcwQzJl+MpO97aHGBeYNWR2fC2Gx58Y1RuPD6LVE0kN33PgzrFy2FR9duhGom8jn17A+6LL/y5K9CMS9tZifW5dwB2jvaMirt1QpXO66K6arRuwtDUxdp2hVjG6JFAdKMFex8joKCKdZNK7jskCYqGiMfWQCdp7PpVLQ6Hnv9LPSdWyTGO7RWz45ONsAnuQl6rTFz3+R8DF75/++BWXCinNkYhxcaDq9au0a0LrRAq+Pa5ct24x2m4hxu/MyjUGMsXdqVKbj2QnwDUVoGxKZlXWzVKK6GVfbiQNdk2wapmY9ysturfQIcnOlUfY3N12/DF89cgI7b1JWJRaXmPoqN8H74vV/8CL5380Nx/4GJMXjqb78ONybML+DBtSn5r6u1OV2HYYdfeeLzhvtgvKOp2WZ62efrMdqFzd4rloWf6mlqCmbqNwLm43muohQOu4VtxVSNInh2/pPvJcR0rBqYnsT6jlf7UuICt+90LVPdD12WZ6OX4Uv8f4A/7l4LW5pfzHn8q/d/Gv7Z0tXi9SPvvwvnb5uLbcigcFQSZipF0SJ58pmnwSYRox3ccFVqK74hCGFlaz81iwMPtssT4AoYiG00WL1qx+IotmpUBsUDi57QqsCu5fLkNnRlbozmVlLiqlnRRbmj/rqNwQH6t16Dpxf8WyoeL8FLw/8LRpIr4fSGj0OECouZmEils5GKhp6bogRjHe/++Cc2XBYhbLQH/uR6wWRAxCS1JRwc6VFWd6rFONwc1sRrCJUSO7WKxVSNqiGb+kZgPKOvpQ2+2H+1UAj82czLuuBbovXxzvTTcGzyd+DLazeLgtNSwoZA5UAuMTfLfQ/9sg3h4AxNGp7j4AAw7EO4zcr1JGrCkXJROMz0ILWTUSmmarRYBoIN4syVd0IduQ803irYF92WP1h6H+zt+hSMrHoD3lhTeaMkrGB1QZvNBXBhowVvfhzV+P4IeZ6Xeg8WjdfbBp4dIfuVtxt5OFhU+piD8FKdRjtIwqV4Gr6fmsWRXyVqx1UppmrUCTCLgmtWUDyeunEdOmEkx+LIBy0Q3Jo7uuA9uBuqEStuioztAOnMeJj+e1rrYdE7TvCwv56IS8LDUMWcGiMhjuQOSYpJrlov2IWQntZ0ox2/xtnfLYtD6/0KajhKXDWaD2ZQtq3nMzGOubg0I7avX9AMnMpcbGymbsgGeGL2OGyH2saqm4Lcsb3wjcfMir5w3EPPuOfHyDP0zHQcisTptoFOUqcijEKqCLHEfDdkV7BqWhwuCYfZ93O3alQf7PyFhV7K9CvSTb2QzSt8Yvfzl95OGcY/znTwrglHpXQLu/dh6x3Ybw/a/Nvk1fEaZH4e4nR5Dp6FKoaHwi+Dulb2l8L7/WG8MKoaLbtwlLhqVAZF49lP+wtEQwlWlWKzn0aDvhsdfs+ejxzlhoYY309Fw47b8dbrPwBbEC6s93DOz2NDO3fw3DDpoUfYLrCJl9sGonXBFR7cYbALISGjwCiScinGYbZK1c2qUT2efjDr72DNxvHzKeqeEFEk0NKQZ8uKhWHrfWI9hxJcYbt5hfRBOv3baJRjH3TOvCAWgjkNVra6zcAoEf9+O2B2xCrnTp0uYrWsfkq24Lwy74O9NN6xFWweUFbaBn77LOn5wkbuNJQKrvBvokLSBnYhJCxbG0ipXRUzFk65qkZRFOTuXyga0kS37AtcHJTcE3kNy3YaA0FhUfasQHcmu8YFC7z2U9HYDTB0mG7qAtLdFQOrbOiehscWnKSmYwTcBOM5ff3Wk+NoaWz9nLn4BopF9PIVcSuqKxjHr9R7uEA40vGObfQHdwrAuhnv91myOI4cuUru2bmqNIviOBUxLKolIg+h1pamzE2tqlHBLYtD4/28UDXao2jkc6ZfUI1hYFEYWhrybNll1MLA1oIyGEDFKfe5YHewP4QGbiVsht8AJ7j/7gmYO3kA+u79JLjJxSGb1obJ2MZrL/8dHP7aX4EjEP2m26qVo9gX49wYOUADJM+BRQSTrgq1NnbTi3B8Vuw4tB9KAQdqKhoGu1CLw0zVqFuYeb9yVY0GFTELrUY+yMBodiEcZlwuKVx8FJFLQ1pn6H8Nf9z9R9SFiUIxoIXy249HoeHOZfjpiWNwyb8VvMb9JtyUO4OD8PKhF8FBrAsHgvGOs6NkF/1tGi54sYmYFqWvv+/IeXJ453r3m/jQ331I5Vgrok8o38aqRtVRNvKRgqPGCpbfWg+ft6xDe/9LwS9DZ/LfgFW6l0g9Tnd+dhB2PTEArTeTNLUC8EDiJfpgRPe5N0aJ4y0A9cCGPWayKRjLKHpEQi72hAPhCLxAj2xLwmGmbeDL58k+ImTP9PTHfoRe3AMuw6lbFyFs1GyrCIxmZFjVqDr9YwQ2rZCuY7wD/fv8Ay7TyCfNjbwFrcbNiqmr0kcP9onezD3394zD8W/9DJZZiXWkB8ptib8IW7Y+T5VT+5gpdSMfZV9RPXBNiuNg9ajGdDdd4Zjn4XC9RXfFqG0gtS7CVCh2593d8/I58tyTGzi308Gqv4iYdL+tOIvRQOharRrF5sRy/KK7A4cy+cXmxHKsA1O1yqwL9sTIj4Og0Oi5OSLBP4R1CuFALIvG/Cfoj2ArzN7772BgrBX0Kl9K3Y/DbNHX7LQLVbzj45rHha5wYKD03Ki1X55R20BqFGKqN5x/P/2B76WWyPiT6zlX1s7gnBitg4iX3LEo2KBVZzwjUqtVo3iAvUbTq0/cJ70YplU3r/CL4oCBUGVtBwoEFoHlIzUrNnK2HoK9XVvFcnNbTEQAhqVWe3M/icHB2y5PuLKAcvyBEbdvlbaITdfYxRJtsIieyY/WBim0NjLQx/Z/5zyxXUNiQFjrgWTKdpwjpIxxqFHLVaNodeTXZqB7ki8a3zieLGo0wWvj/wVsczubScHVuMpB2OXGrJuCLFpS2sV9usJRl4Id4CBJIi6kC+vtQ33yw1jfAQ5D9MSBs5lZoSkrVjWqD6ZcsR8HZk+UoGD0XRfE+o5LQ8X5cxfRzbA7C2sid0HcOg819bGyNmVhV2mFQz84yucuCDNBVOuBdGxjL5jjON3/HiczLcQHUU7LVeHtuSltba2Z66xqVBsMjL5zBd0TQSzqQtEYnXZ2HOI700/B9tavgWWm1ubc3DQ5ITYUKjdW3BTE6qrZYtH8+Z0bIxgUDYNDUF/figiFqMgcP3LVucnvG9u50zTGgfETpSs1TrOEz69v5w6DDVaGl2aul9ri8HLVqBYoFBgEHRh1vnfnmdl/AU6wfH5OnCRXbu576EFL+5daOFQtjvR0N7PWgZKo2p0amRQjbBeHnaKCMx0QU7wR5f2jhe4rCtOekwNE7EXCa6/FQpN/28PLuV7lfUuXdkUhLa51rGq0rPTHN4vuSiNvLTmGy/aV7gm2LuygsY5ZX3k7iUU+Z20J/UZHJtabp+C8RUXjkNPT3SxaGxnocWyrudBUQIzNRKw8p71Bf1ugsjDxrnUrdF8TDza0DNzYvFw1Wg7mqGgMxK0fPK8tKjxTlztAqjalzQi0OGw37bFBzrklbWnsBgexaW3IhL5Jn/9rFmMduHze6jFj5+S8Zk04c13NdcD71thfQmeZfOFYQAVv0wIommJ6jZaSHw/vhKbgO5aegxYHtipUisUsX95W9WbGH6iB4jFz+TI4Rig0rlVc4admOh4zuEJ1fHoeIr702QzPPBwHllBrG2jX2pAJBq0XZiUScDgQgD3EQoxmMiZNftdCTVh67vlopkmEFwcxOfWZnOg1iinYhryeG05Ph//m95PwlZ9bszrWfvrb0NG6Pue+OX95heM+Gw17kPDa1RB1Ujg0qkYR2eIQ05+xvGFW6EdjoAy/RzuDhoq0NlCIes2unD1+i4R9qWwHMzxJWvnIaIoLhTExMXjq98PhWKxQwBYt7hTtCa+IRn7VqFPDoZzoNbptfeEYSJye5qR4jF07BVa5euJvYGzrf4TGxuxAqEuNpTP581m5ZrXtQGdYdG/eAIfQPe50f/JY9DMdl87GcRMT8vLbBhZpbYwnOXjG7M5dQWqaN0JYuXU2Aig3jFX4rR1MIao++6ighLapCBiXLmH36rxYp4ZD2e01KoNNctYuLvySsA+p3MynWJKxaZgeugRWwed96R//T+Y2ui3l5L6HHwK7OJxZ0RUOUwOZ8Gw8naAHns+8+2LZ2qBndl6AXsJJH9jfDKe/4HCfDsya8Pg7tZhtE7T7L4bBQ+QLh1MWh52qUSX5loYMNu/B9KxWw2JsbvyASWF5+0QfnAB7/Hz4Erx45Tg8fdc2aPhIKzx9r/rnxbU2syVeq2KF8Nq7wDn044qmJ7lhJARN4XqdZyjbBlqyNqhofOGjnJ30bwbqSkCCM3qbQnPeCPqS0Yfy0rAKwvjPbBIDy+A5rk2BK5QqOIr9OXDOrBne+751a0PJfz//GuxYsQU67w9B52r193z1jOCJ2bFaNDqaVRF0Zw9aGgFpVBcgtw00Y20sC2VrH4IB2HpulByHIqDnrBBvQhSCFsx3al2N07P2eLGfrdr4T//5t3JuT5JFcP4OlJULFy5CMUwm5kSr47dXu9sFzE2cTcfyUb1HLQmH30D85baBSQKHwIDmuhwfvOi1KfjRXMiioYvi+LqZSuf+X8rNXJzvF6hwOF9teaZfCqCa2veDW1Asf331BAzpvJ/TWSBPw5HiYxyZnQ2EA9sGvnyeRIhgrfiKUd3gwY/xDAyGKsGmOKM6CRp0C8zGFMbuFC8cGCi9cvYXEFrpek8pV3C0AxjRbyJuWjgwLcubCbYRc7GNW5PZ4F17I0SFKp8iV83EDIwCPFNjELQhkBsEdbINXyLmzEFz5+LJsgpH3JyBpQr2HXUMPhXVe9i0cBgNzEH6R2EHjXNEwASTiiZN/nStCKMySZrwUnDcY18/uEJsonhrw43XKjXRS1fAMZpCUdCJW5kKWQf8cNSMtUGzC7aa8AiEWRuM0pBIzOs+PjXoYOVliXGs7yhH3RSdqlHE0OLAdOSWLm7n2THSw0mzZTWXutMUrCPL4LFYS8kHtwtrCcyC2Zt2RU3PbAJgLpG7DwZqlWnm2zSNedum5dtEX2tVtghRrIEZy1szhUHh1vrc+66OUB/Vptme/zfi++WvysXHleLv5PvdCkDFkEzOQyBQr/34vEs5bJdBN6WoAUxKiHDNaBdD4aBeqdgDFPtZnB0hz9MUpWYMw63+mqvpgTgyY/31qaWU8wM3S2d6xpJVscK1Lp1NYIvuUGn/xlK/n1eIJ+IQDAr0pKpubCdj3ukAZgVHZ6pwxtMV9TuAUWvj4e5skxueh8OEFLdozQ54hu5qhZKBArCoBUpKqf/GUr+fV/D7/JBKJcDv17Y6YuO3IBhaAuWgtREs8/KhF6D3+zaHS6tBihQO2dpQ3A5phToSzqfxGRXC8kU8NNOz+HTM+3UOHD37CYJLpnGRtDZy0N3JZ1xbnAP77o/fzqx4xQKvlWvugjDd8DqmX/FxR0UDSaWKtDhI7jJ5eiJ+vIZKYBgmQfflkU/44IPrAk0nSr8QtNosLig0DR72OSeqJUvhbZPP5TkfzQIlQS9J2MzfhrPvvg9Wue/+zWDU9V6L1iYeNq/iYDhdzY9WhJr78fOTLgxeyiUK471Ro510hYMoFnddGCN7BJ3OYMXknxmVT1OQg4+vy+bUG2jAtNGloKlawPlo11IYHrxp+NxAoA7m4/oDmxY0zcCxb/45GPHKt78KDz7gbMu+JWkX+ZN/tAu+9kfqScp1Gx+31drAHKTPzF666VgaPxJb92FnMPqfdRAYDI/SYGGdBhH0/erYrLnMykc3Orka1TwrlrvZmJg7amYvzNBFdR6PvH2TnKJm4X5gMDzMirvWmtrP5wtQi0U/xjF+27gIrK21GVpby9PwZ+OG1eAaKaHXzG7+RALu8dfBISDqw5douq5nIm3ZocrI9QHow2IZekPaHI1XcHAUmxVNe7jPQiUyp1Iv4yZdq9bRf181tS/P6dc9xmaMLY6NZbI2xPfe4GinLyWm4hsIj52tHl7G7cSeGEY7K4uKMP+PxVQz7IBjeIDQIufSp3MzxvGDj24on3Asd89V6TW7YyY4+vBybu/JfjIOnLU6DVzghEGwSk7HYlczZQIARbGYeSj5LfuEGkxFlfo7XRJeB2bheSOLw1g4urtLOwBJiXuxFe67ZvfMyapQ8dh/YoCM0//w58ACsQqv4WgKOFdyjlWVixSur1oGoBbAoU7KrAp+B4M2G0GaKeN30uIw46p8dKO1uSdOspyKFsZXHM6sjMPIm6YCo0hBOvaT3dxBanmcpqcLnIRmau0Jro5MdwfDwpHnA3Ho3XkPF8URjslp6BF4iND4yFa1lbP0vhfq/LASLA5QchOsGsXahITFFDOeyDpsVP7VAnKZupvfafuipTB22zglSwz634+ZCI66cdbH9pxme/piZuX9s04uyCNvWdm7QDhuzpAdNPD5+HwSTlM3JAImwKBpKz0rrOuEKBWBrfSurUNzkpLQzNdbS5q5/XgdhysFEtCT8kldtbA58Rc+xvWeHPBea75KXo/hVdz+TrtWrTElHD6f/hItI1fFjYzKXFKy3FvqzBXOYWbFWeHgTFsbSM43eGuOhDkCz1HlC2M/0DrrPTJ25I8dpAHsHfR1e5c0cNH0RDbcLH1IBsMMaHE4geSqaAtDfkZlxiB7hOMz9I4lFI25tCU2FTcnHsu7HR6F0NJ6FEbMPyEnSsRLncnD4CwhFCNgMFxGSskaY5SORQK8diQ3P6Myn9Lf9Jp8K0UDwRMvikfSIJDscGblqFH/jXwy3+DtadJDOGfnxipAqyMCDIaLhBaaC5BiVoUQ+wvdnMqo5IuGjBnxcLTUneNfAIuIrsq3z5Pd/dOwz61FSQhV3UP0fQ4EgnB0p8ODlhgMpN1kZgWrR1OpJL3UtjwCPgESgrp/4URGRUs0ZGTx0HJbHHRVojD8o16wiBTjEODQFQv+jU3CdDtEsyxRMCg0cbPugRD1+9x6T7VGOQIpfW2H+DlcGlXphe8UwZRssKnFVDrVCB+n/eGXd9tbASsTMxANGVk82urUG4Wju9LfX3SD4gNgA0vjEUpFqeseMLg1U8LyaPzhl/pvnJyHkoIHR8zEweE0aHXculq8cGjViGFGpdj4Ai7VMIp9yAR1pgs8uGUTfKtY4TC5NiUffoimX6GELGtlA44Y7rFklbnFbkbVowFe3axxYo0Kly5fMJrt2+CXNi0ccFcOm12bko8/RUpbeNUQhExU58QA2U3/+7DuI5wRXw6OUhPNdOkr/e6xaUEk705Lr+EWz//Xv9w3OzMTBoZrrL37Lnjy139VHN+B1b+Ll5qLc3AGmZVP3LcJ+NBK+P53c7trtTlUvyGLx2Rc3fIwEg2k6MwKLxiuT9PC/8EwbK4vocMyPqdI9woQIXzeSAUB+j65PNvn1IgT10mk4Ddg8TVco2N7iIoYS0W7yOC9m0XhqEv/hruWmavlEGgKkdeJY2Anr671mwuE44EthdkMo9EhWtWgWuJhRjSQ4hbacb1wp9ewRaAW/uFZ9eCWWwzXUm9SQTgMPh5rYxwZG8EwxmxfDiNmNcYpqmVUQtp9jw3JFw+zooF0F2dx2LY2EJfi7AyR8V5cbVzUfxDDGp1d5lyVhKBvJsxqZGbaWm3Ov9BBFg9cbNlgwfovIlAbtbKgTQ0mHG6TFLDlIqtbKRGNzS2woMvYXZlP6q+nGBksXOiGB+pGl1bFonjU2xiDatNdsZWCVcKEw22Y1VFylq8xPriNUqFqrkq5WgXq0WrdAqLWxrHDUCT+jy6BZ6iZ9BwVPNfTsvT/6ij15Z49P0bCeHtsDtry4ys+P7TJj5vBiddwm9df6z361f/2v/cIJMViHQ7T2tZcEJxsajaephWiz0vOTYBfI+06Oz0lWhjLFMVeAv0Fj01MO5ZZcYLxiZmcz2jExzatP/DcX7wZxuvr28VFp7bgzo2WMjTKYLjPP3zr/8HfPKefzNr+2GMwMzUFPztxQnOfbxw5AouWOLPi1otQ9+gwFY9nwAbMVWFUHYtNBkgXLa1eUXAbJhyMqiO8znh5PY5PXLhEX2Bu3yp6HUjVwoSDUXUsWmJscaCbYmSZzEwXv+alWmHCwahKzMQmjCyT2SkmHFow4WBUJavWGqdkmwzGRs5MuzWftfJhwsGoSowCn7dv3YKmlhZdy2SGWRyaMOFgVCWr1prrP9rUom11oLgw1GHCwahKwmvNLXZbpbMfc1W0YcLBqErMZFaM9qt2V4UIMAE2cbE9McMUoUgIfPwpcH4sRc2ztmNGt+fGByPN0BZMQldTTPXxhMDDh2MVOZrvGSfWo+jBLI5yIy6C422V/TL0MVo6j8SSVXYIEDjgtmggTDi8ALanJ/AsMBzFaOk8kkhpi4tW31HPwnGnYfTYfigBTDi8wuixg/R/3vJgHIY28yasCWwhiJsWPF8xa0CjkEzthBLBhMNLpFJ7gXC2+0AyckkZhPDkMY96Lo2N3jrlISXstNux3A5MOLwExjsE8awRBUbRmI1f6Lk0ONHN83DUzR3vLekJhwmH18CzBp49WLvBotGLXyjR6wamN9HNE2AwdBjd3NLChMOL4NmD40vmr1YrGLtICsY/8fmUtsXBe/kIQdEoUTA0HyYcXkUaBMzStEWi567IbojePrxnLQ4aSC+TaCAVE/upSeaunoamVWhvR4Bhi4ZAChr86nGKyfmAWOSFstHeoD48OEbjH7MJzx0mR2Hk2K9BGWEWh9cZpmcVrvh29rVKMmX8E8esilZK1u+1dCzWaqSEsluizOKoBGav9jLLwx4+euC31idVH5tL+jO1Hu3BpKpbgjGSqXgJZ6TqgaKRTG0Ts29lhglHpcDEwxaEWhJabgi6IHEqDLhPI3Vp6lRSrzgoCS2SeKrsxvnRdK2GJ7JtTDgqCRSPxlXXoAQzcKoFdEE6qHCoDX5uqkvRVCwvbi3UKgmouCWYjq2nMZLxWADKBw2EYkwjFo2BR2AxjkpDXMDEsToPkyxrielmRnA9ClobjX71aeiNXJ2pNS+uIS5ae3M3eAy2rL5SCUXC1IE/Dmw5vi5LmudpjCPrqqwLtMFafxuso9uBW9dgKJ6iaVkC3VRg0HV5omUZ/FKwAz5etwCaSAP89sCH8A+zV6EslLFOwwiPRH0YlsEK01BkGxMPfSbm/TBLLQYUijeWPyDed3YuCT8Yn4f5+TGgTgi1KDi4ku67sb5lOXQkW+B3r8/A2dkZGOVo3KMOSg1ak89S0TgMHoVZHJWO2AiIw5W1u4ChyYpAA+xq6oGfTsXFDYnXDUDCP5azX3B+JfhSrZnbhIvDbMMHUEKi6SCopxc7suBopYMBs7noUZZx0Wcm0QLvjgdhIJ6NZRAuASlfbnvAumQXcERxWGBWJXAHSgLH9VLR2FbKVa52YcHRakEsFOO3AVtZq4o/2a5yb26mxCc0Ayfk+iUoIjwpga8iLlZ70xM1GmZgwlFN4PoWPGNhzp+RgaMHvi/VVHA/4eZybvuTIZV9EvSYVs+4OERUFHyPBkG1YK5KtRGLjsPc1W8x1yWLX2gFvyJugST9wzTGMZRzX328m3om2XMpikYs+CG9TIJLYFHX56hoXIAKgwVHqxmWshVdjeD8auCFYOY+gadhoeClnP38yQVUOHJHJcw1XAYhzypxiHFx/VEZ+mg4BbM4qhnJ+ng+bX300C0INQRPGqhorKCi0ZC5D62I+WCUXkruBwpLXWIJ3RblPDded5MGTifBBY6K7uTo8V6oYJjFUSuI1ge3v1rTtk2NQbplBWJ00FdgQTQ1BYDruCGmWJG5aYDU+KKCgGgiMATxwG1wmKg4BkPqs1LxMOGoNTq376b/7gMX3Bc8eFetXAqLFkhBxkUL2nMuZRYuyAYhm+nB3tgY1HnNBvF1rXD+7BCcP1d44K/fsBjWb5Qsi9mZBLz+2gWV96uDzzx2N+hxe3jM9OMNweB4fZ3/dEtT43hbW9MEVS2aNSHUVaGXHElnUHyndz52f0U1qWbCUau4KCCMDIepW3KgEuoyrMKEo5ZB98XP76b5xn3AcA4s5ALuQLW4JWow4WBUffyjZNSAYMgw4WBkyVogKCBhYJijhgRDhgkHQx0WAzECazGeh6RwsFLKxJ2ECQdDnwWPRoCkdjM3Jg1aFwL5LgjC4VoUDBkmHAxzSFWoEXrg7AJCIlBbSNYF5zsKd37IZvsCEw6GHWpDRKJ0+y5w/NFail2YhQkHozhkEQF4HKSy9jBUJuPi+AHJDen1eiOdcsOEg+EsoUgP8Dy1RmAreFtIJKEgpE+0KpLJ07Ucs7AKEw6Gu4gWia8HONJD07yb6cEapgdrD5SWKN3QgrgGPL1MiBZFFBi2YcLBKA9omfj9IeAEKiSA20q8lwpLSLwkRLqUNjXGQR4Rges+CImmb0/Q14rS+6KQSuF9UWZJOM8/AeyblBrMp0L8AAAAAElFTkSuQmCC", Kp = T(({ header: e, subText: n, sx: i }) => {
|
|
13736
|
+
}), Up = "data:image/png;base64,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", Vp = "data:image/png;base64,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", Kp = x(({ header: e, subText: n, sx: i }) => {
|
|
13737
13737
|
const { goals: a } = I(), { availableWidth: o } = un(), r = o >= 600, c = ye().palette.mode === "dark";
|
|
13738
13738
|
return /* @__PURE__ */ l(
|
|
13739
13739
|
b,
|
|
@@ -13764,7 +13764,7 @@ const Wp = T(({ goal: e }) => {
|
|
|
13764
13764
|
]
|
|
13765
13765
|
}
|
|
13766
13766
|
);
|
|
13767
|
-
}), u2 =
|
|
13767
|
+
}), u2 = x(({ onCTAClick: e }) => {
|
|
13768
13768
|
const { visibleAccounts: n } = fe(), { onEvent: i } = X(), { goals: a } = I(), { isInitialized: o, setSelectedAccounts: r, isCopyLoaded: s } = le(), { ongoingGoalsForMicroWidget: c, loadGoals: d, goalsLoaded: _ } = lt();
|
|
13769
13769
|
g.useEffect(() => {
|
|
13770
13770
|
r(n), i(W.GOALS_VIEW);
|
|
@@ -14402,7 +14402,7 @@ const l1 = /^[ a-zA-ZÀ-ÿ0-9]+$/, d1 = 50, Kr = 65, u1 = ({
|
|
|
14402
14402
|
!a.length && /* @__PURE__ */ t(b, { alignItems: "center", my: 24, children: /* @__PURE__ */ t(C, { bold: !0, color: "secondary", variant: "Small", children: r.search_zero_state }) })
|
|
14403
14403
|
] }) }) })
|
|
14404
14404
|
] }) : /* @__PURE__ */ t(de, {});
|
|
14405
|
-
}, _2 =
|
|
14405
|
+
}, _2 = x(u1);
|
|
14406
14406
|
class Yr {
|
|
14407
14407
|
fetchInstance;
|
|
14408
14408
|
constructor(n, i) {
|
|
@@ -14468,7 +14468,7 @@ const h1 = ({
|
|
|
14468
14468
|
width: s ? 320 : _
|
|
14469
14469
|
}
|
|
14470
14470
|
);
|
|
14471
|
-
}, g1 =
|
|
14471
|
+
}, g1 = x(h1), m1 = ({
|
|
14472
14472
|
item: e,
|
|
14473
14473
|
getStyles: n,
|
|
14474
14474
|
isHovered: i = !1,
|
|
@@ -14513,7 +14513,7 @@ const h1 = ({
|
|
|
14513
14513
|
),
|
|
14514
14514
|
/* @__PURE__ */ t(F, {})
|
|
14515
14515
|
] }, e.x);
|
|
14516
|
-
}, p1 =
|
|
14516
|
+
}, p1 = x(m1), C1 = ({
|
|
14517
14517
|
chartData: e,
|
|
14518
14518
|
hoveredData: n,
|
|
14519
14519
|
onDataClick: i,
|
|
@@ -14558,7 +14558,7 @@ const h1 = ({
|
|
|
14558
14558
|
}
|
|
14559
14559
|
)
|
|
14560
14560
|
] });
|
|
14561
|
-
}, f1 =
|
|
14561
|
+
}, f1 = x(C1), b1 = ({
|
|
14562
14562
|
currencyLabel: e,
|
|
14563
14563
|
currencyVariant: n = "Small",
|
|
14564
14564
|
iconSize: i,
|
|
@@ -14580,14 +14580,14 @@ const h1 = ({
|
|
|
14580
14580
|
/* @__PURE__ */ t(je, { amount: a.change, color: s, variant: n }),
|
|
14581
14581
|
/* @__PURE__ */ t(C, { variant: "Small", children: e })
|
|
14582
14582
|
] });
|
|
14583
|
-
}, Bo =
|
|
14583
|
+
}, Bo = x(b1), y1 = ({ hoveredData: e, selectedData: n }) => {
|
|
14584
14584
|
const { net_worth: i } = I(), a = st(), o = e || n, r = Ls(Qn(o.x), "MMMM");
|
|
14585
14585
|
return /* @__PURE__ */ l(b, { alignItems: "center", direction: "column", m: 24, children: [
|
|
14586
14586
|
/* @__PURE__ */ t(C, { color: a.palette.secondary.main, variant: "Small", children: `${r} ${i.net_worth}` }),
|
|
14587
14587
|
/* @__PURE__ */ t(je, { amount: o.y, variant: "H2" }),
|
|
14588
14588
|
/* @__PURE__ */ t(Bo, { currencyLabel: i.this_month, netWorth: o, theme: a })
|
|
14589
14589
|
] });
|
|
14590
|
-
}, E1 =
|
|
14590
|
+
}, E1 = x(y1), zc = 13, S1 = (e, n) => e.filter((i) => {
|
|
14591
14591
|
const { is_closed: a, is_deleted: o, is_hidden: r, is_manual: s } = i;
|
|
14592
14592
|
return a || o || r ? !1 : s || !i.guid ? !0 : n.some((c) => e.some((d) => c.guid === d.member_guid));
|
|
14593
14593
|
}), A1 = (e, n) => [...e, ...n], zr = (e) => {
|
|
@@ -14744,7 +14744,7 @@ const D1 = ({ amount: e, copy: n, trendValue: i }) => {
|
|
|
14744
14744
|
/* @__PURE__ */ t(C, { sx: { display: "block", fontWeight: 600 }, variant: "body1", children: e.empty_widget_header }),
|
|
14745
14745
|
/* @__PURE__ */ t(_e, { sx: { color: "text.secondary" }, variant: "body2", children: e.zero_state_description })
|
|
14746
14746
|
] })
|
|
14747
|
-
] }), h2 =
|
|
14747
|
+
] }), h2 = x(({ onCTAClick: e }) => {
|
|
14748
14748
|
const [n, i] = g.useState(!1), { visibleAccounts: a } = fe(), { onEvent: o } = X(), { net_worth: r, common: s } = I(), { isInitialized: c, selectedAccounts: d, setSelectedAccounts: _ } = le(), { loadChartData: u, loadNetWorthData: h, netWorthData: m, selectedData: p } = Js(), f = async () => {
|
|
14749
14749
|
await h(d), await u(1), i(!0);
|
|
14750
14750
|
};
|
|
@@ -14811,7 +14811,7 @@ const D1 = ({ amount: e, copy: n, trendValue: i }) => {
|
|
|
14811
14811
|
] })
|
|
14812
14812
|
}
|
|
14813
14813
|
);
|
|
14814
|
-
}, Li =
|
|
14814
|
+
}, Li = x(L1), O1 = ({ accounts: e, name: n, icon: i }) => {
|
|
14815
14815
|
const [a, o] = g.useState(!1);
|
|
14816
14816
|
return /* @__PURE__ */ l(Q, { children: [
|
|
14817
14817
|
/* @__PURE__ */ t(j, { sx: (r) => ({ backgroundColor: r.palette.background.paper }), children: /* @__PURE__ */ l(ue, { onClick: () => o(!a), children: [
|
|
@@ -14897,7 +14897,7 @@ const D1 = ({ amount: e, copy: n, trendValue: i }) => {
|
|
|
14897
14897
|
/* @__PURE__ */ t($r, { groupedAccounts: jr(i) })
|
|
14898
14898
|
] })
|
|
14899
14899
|
] });
|
|
14900
|
-
}, k1 =
|
|
14900
|
+
}, k1 = x(M1), G1 = ({
|
|
14901
14901
|
netWorth: e,
|
|
14902
14902
|
gains: n,
|
|
14903
14903
|
losses: i,
|
|
@@ -14972,7 +14972,7 @@ const D1 = ({ amount: e, copy: n, trendValue: i }) => {
|
|
|
14972
14972
|
] }))
|
|
14973
14973
|
] })
|
|
14974
14974
|
] });
|
|
14975
|
-
}, B1 =
|
|
14975
|
+
}, B1 = x(G1), g2 = x(({ onBackClick: e }) => {
|
|
14976
14976
|
const { isCopyLoaded: n, isInitialized: i, selectedAccounts: a, setSelectedAccounts: o } = le(), { accounts: r, net_worth: s } = I(), { visibleAccounts: c } = fe(), {
|
|
14977
14977
|
assetsLiabilities: d,
|
|
14978
14978
|
gainsLosses: _,
|
|
@@ -14983,17 +14983,17 @@ const D1 = ({ amount: e, copy: n, trendValue: i }) => {
|
|
|
14983
14983
|
selectedData: f,
|
|
14984
14984
|
setHoveredData: E,
|
|
14985
14985
|
setSelectedData: y
|
|
14986
|
-
} = Js(), { isMobile: S } = he(), { onEvent:
|
|
14987
|
-
await m(a), await h(D),
|
|
14986
|
+
} = Js(), { isMobile: S } = he(), { onEvent: T } = X(), [v, w] = g.useState(!1), [D, L] = g.useState(6), [k, B] = g.useState(!1), [M, R] = g.useState(!1), [G, q] = g.useState(!1), se = async () => {
|
|
14987
|
+
await m(a), await h(D), w(!0);
|
|
14988
14988
|
};
|
|
14989
14989
|
g.useEffect(() => {
|
|
14990
|
-
|
|
14990
|
+
T(W.NET_WORTH_VIEW);
|
|
14991
14991
|
}, []), g.useEffect(() => {
|
|
14992
14992
|
o(c);
|
|
14993
14993
|
}, [c]), g.useEffect(() => {
|
|
14994
14994
|
i && se().finally();
|
|
14995
14995
|
}, [i, a]), g.useEffect(() => {
|
|
14996
|
-
|
|
14996
|
+
T(W.NET_WORTH_WIDGET_CLICK_TIMEFRAME, { time_period: D + "M" }), h(D).finally();
|
|
14997
14997
|
}, [D]);
|
|
14998
14998
|
const pe = (U, ge) => {
|
|
14999
14999
|
y(ge), U.currentTarget instanceof HTMLDivElement && B(!0);
|
|
@@ -15002,7 +15002,7 @@ const D1 = ({ amount: e, copy: n, trendValue: i }) => {
|
|
|
15002
15002
|
}, Le = () => {
|
|
15003
15003
|
E(null);
|
|
15004
15004
|
}, Me = () => {
|
|
15005
|
-
|
|
15005
|
+
T(W.NET_WORTH_WIDGET_CLICK_ASSETS_LIABILITIES), R(!0);
|
|
15006
15006
|
}, me = async (U) => {
|
|
15007
15007
|
const ge = U[0], Ye = U[1];
|
|
15008
15008
|
ge && Ye && L(xd(Ye, ge));
|
|
@@ -15015,7 +15015,7 @@ const D1 = ({ amount: e, copy: n, trendValue: i }) => {
|
|
|
15015
15015
|
onMouseLeave: Le,
|
|
15016
15016
|
selectedData: f
|
|
15017
15017
|
}, Ke = () => {
|
|
15018
|
-
q(!0),
|
|
15018
|
+
q(!0), T(W.ACCOUNTS_CLICK_CONNECT);
|
|
15019
15019
|
};
|
|
15020
15020
|
return n ? /* @__PURE__ */ t(
|
|
15021
15021
|
mt,
|
|
@@ -15025,7 +15025,7 @@ const D1 = ({ amount: e, copy: n, trendValue: i }) => {
|
|
|
15025
15025
|
onRangeChanged: me
|
|
15026
15026
|
},
|
|
15027
15027
|
dateRangeVariant: S ? "timeframetabs" : "timeframebuttons",
|
|
15028
|
-
onAccountsFilterClick: () =>
|
|
15028
|
+
onAccountsFilterClick: () => T(W.NET_WORTH_WIDGET_CLICK_FILTER),
|
|
15029
15029
|
onBackClick: e,
|
|
15030
15030
|
showDividerAboveDateSelector: !1,
|
|
15031
15031
|
sx: {
|
|
@@ -15042,7 +15042,7 @@ const D1 = ({ amount: e, copy: n, trendValue: i }) => {
|
|
|
15042
15042
|
}
|
|
15043
15043
|
},
|
|
15044
15044
|
title: s.net_worth,
|
|
15045
|
-
children:
|
|
15045
|
+
children: v ? /* @__PURE__ */ l(Q, { children: [
|
|
15046
15046
|
p.length ? /* @__PURE__ */ l(Q, { children: [
|
|
15047
15047
|
f && /* @__PURE__ */ t(E1, { hoveredData: u, selectedData: f }),
|
|
15048
15048
|
/* @__PURE__ */ l(
|
|
@@ -15184,7 +15184,7 @@ const W1 = ({ date: e }) => /* @__PURE__ */ t(O, { sx: { display: "flex", justif
|
|
|
15184
15184
|
size: 33
|
|
15185
15185
|
}
|
|
15186
15186
|
) }) : /* @__PURE__ */ t("div", { style: c.badge, children: /* @__PURE__ */ t(It, { categoryGuid: r?.category_guid, size: 36 }) });
|
|
15187
|
-
}, V1 =
|
|
15187
|
+
}, V1 = x(U1), K1 = ({ notification: e, onClick: n }) => {
|
|
15188
15188
|
const { updateNotification: i } = ec(), a = cn(), o = {
|
|
15189
15189
|
card: {
|
|
15190
15190
|
alignItems: "center",
|
|
@@ -15217,7 +15217,7 @@ const W1 = ({ date: e }) => /* @__PURE__ */ t(O, { sx: { display: "flex", justif
|
|
|
15217
15217
|
/* @__PURE__ */ t(V1, { notification: e }),
|
|
15218
15218
|
/* @__PURE__ */ t(C, { bold: !e.has_been_viewed, truncate: !1, variant: "Small", children: e.content })
|
|
15219
15219
|
] });
|
|
15220
|
-
}, Y1 =
|
|
15220
|
+
}, Y1 = x(
|
|
15221
15221
|
({ onManageNotifications: e }) => {
|
|
15222
15222
|
const { notifications: n } = I();
|
|
15223
15223
|
return /* @__PURE__ */ l(b, { sx: { alignItems: "center", height: "95%", justifyContent: "center" }, children: [
|
|
@@ -15260,7 +15260,7 @@ const W1 = ({ date: e }) => /* @__PURE__ */ t(O, { sx: { display: "flex", justif
|
|
|
15260
15260
|
] }, _.guid);
|
|
15261
15261
|
}) })
|
|
15262
15262
|
] });
|
|
15263
|
-
}, j1 =
|
|
15263
|
+
}, j1 = x(z1);
|
|
15264
15264
|
class Xr {
|
|
15265
15265
|
fetchInstance;
|
|
15266
15266
|
constructor(n, i) {
|
|
@@ -15324,13 +15324,13 @@ const qr = "PARENT-ENTITY", $1 = (e, n) => ({
|
|
|
15324
15324
|
} = o;
|
|
15325
15325
|
for (const p of a.filter((f) => f.entity_guid === qr)) {
|
|
15326
15326
|
const f = $1(p.notification_type, i), E = a.filter(
|
|
15327
|
-
(S) => S.entity_guid !== qr && S.notification_type === p.notification_type && e.some((
|
|
15327
|
+
(S) => S.entity_guid !== qr && S.notification_type === p.notification_type && e.some((T) => T.guid === S.entity_guid)
|
|
15328
15328
|
), y = [];
|
|
15329
15329
|
c && !u && p.email_channel && r.email && y.push(i.delivery_method_email_label), d && !h && p.sms_channel && r.phone && y.push(i.delivery_method_sms_label), _ && !m && p.push_channel && y.push(i.delivery_method_push_label), s.push({
|
|
15330
15330
|
...p,
|
|
15331
15331
|
children: E.map((S) => ({
|
|
15332
15332
|
...S,
|
|
15333
|
-
account: e.find((
|
|
15333
|
+
account: e.find((T) => T.guid === S.entity_guid),
|
|
15334
15334
|
label: f
|
|
15335
15335
|
})),
|
|
15336
15336
|
deliveryMethodsLabel: y.join(", "),
|
|
@@ -15518,7 +15518,7 @@ class q1 {
|
|
|
15518
15518
|
}
|
|
15519
15519
|
};
|
|
15520
15520
|
}
|
|
15521
|
-
const jc =
|
|
15521
|
+
const jc = x(() => {
|
|
15522
15522
|
const { common: e, settings: n } = I(), { sendEmailVerification: i } = pt(), { user: a } = wt(), o = ye(), [r, s] = g.useState(!1), c = () => {
|
|
15523
15523
|
s(!1);
|
|
15524
15524
|
}, d = () => {
|
|
@@ -15567,7 +15567,7 @@ const jc = T(() => {
|
|
|
15567
15567
|
}
|
|
15568
15568
|
)
|
|
15569
15569
|
] });
|
|
15570
|
-
}), Z1 =
|
|
15570
|
+
}), Z1 = x(
|
|
15571
15571
|
({ handleClose: e, handleVerify: n, isOpen: i }) => {
|
|
15572
15572
|
const { common: a, settings: o } = I(), [r, s] = g.useState("");
|
|
15573
15573
|
return /* @__PURE__ */ t(
|
|
@@ -15592,7 +15592,7 @@ const jc = T(() => {
|
|
|
15592
15592
|
}
|
|
15593
15593
|
);
|
|
15594
15594
|
}
|
|
15595
|
-
), $c =
|
|
15595
|
+
), $c = x(() => {
|
|
15596
15596
|
const { common: e, settings: n } = I(), { sendPhoneVerification: i, verifyPhoneToken: a } = pt(), { user: o } = wt(), r = ye(), [s, c] = g.useState(!1), [d, _] = g.useState(!1), u = () => {
|
|
15597
15597
|
c(!1);
|
|
15598
15598
|
}, h = () => {
|
|
@@ -15666,11 +15666,11 @@ const jc = T(() => {
|
|
|
15666
15666
|
birthday: h.birthday,
|
|
15667
15667
|
postal_code: h.postal_code,
|
|
15668
15668
|
credit_score: h.credit_score
|
|
15669
|
-
}), [f, E] = g.useState(!1), [y, S] = g.useState(!1),
|
|
15669
|
+
}), [f, E] = g.useState(!1), [y, S] = g.useState(!1), T = g.useRef(null), v = m.email && !h.email_is_verified && !f, w = m.phone && !h.phone_is_verified && !f;
|
|
15670
15670
|
g.useEffect(() => {
|
|
15671
15671
|
if (n) {
|
|
15672
15672
|
const R = (G) => {
|
|
15673
|
-
|
|
15673
|
+
T.current && !T.current.contains(G.target) && f && S(!0);
|
|
15674
15674
|
};
|
|
15675
15675
|
return document.addEventListener("mousedown", R), () => {
|
|
15676
15676
|
document.removeEventListener("mousedown", R);
|
|
@@ -15700,7 +15700,7 @@ const jc = T(() => {
|
|
|
15700
15700
|
O,
|
|
15701
15701
|
{
|
|
15702
15702
|
component: "form",
|
|
15703
|
-
ref:
|
|
15703
|
+
ref: T,
|
|
15704
15704
|
sx: {
|
|
15705
15705
|
backgroundColor: "background.paper",
|
|
15706
15706
|
p: 24,
|
|
@@ -15739,7 +15739,7 @@ const jc = T(() => {
|
|
|
15739
15739
|
}
|
|
15740
15740
|
),
|
|
15741
15741
|
/* @__PURE__ */ l(b, { direction: s ? "column" : "row", children: [
|
|
15742
|
-
_.display_email_edit_field_in_settings && /* @__PURE__ */ l(b, { sx: { mb:
|
|
15742
|
+
_.display_email_edit_field_in_settings && /* @__PURE__ */ l(b, { sx: { mb: v ? 20 : 44, mr: s ? 0 : 24 }, children: [
|
|
15743
15743
|
/* @__PURE__ */ t(
|
|
15744
15744
|
nt,
|
|
15745
15745
|
{
|
|
@@ -15748,9 +15748,9 @@ const jc = T(() => {
|
|
|
15748
15748
|
onChange: (R) => M({ email: R.target.value })
|
|
15749
15749
|
}
|
|
15750
15750
|
),
|
|
15751
|
-
|
|
15751
|
+
v && /* @__PURE__ */ t(jc, {})
|
|
15752
15752
|
] }),
|
|
15753
|
-
_.display_sms_edit_field_in_settings && /* @__PURE__ */ l(b, { sx: { mb:
|
|
15753
|
+
_.display_sms_edit_field_in_settings && /* @__PURE__ */ l(b, { sx: { mb: w ? 20 : 44 }, children: [
|
|
15754
15754
|
/* @__PURE__ */ t(
|
|
15755
15755
|
nt,
|
|
15756
15756
|
{
|
|
@@ -15760,7 +15760,7 @@ const jc = T(() => {
|
|
|
15760
15760
|
type: "tel"
|
|
15761
15761
|
}
|
|
15762
15762
|
),
|
|
15763
|
-
|
|
15763
|
+
w && /* @__PURE__ */ t($c, {})
|
|
15764
15764
|
] })
|
|
15765
15765
|
] }),
|
|
15766
15766
|
/* @__PURE__ */ l(b, { direction: s ? "column" : "row", spacing: s ? 44 : 24, sx: { mb: 44 }, children: [
|
|
@@ -15839,7 +15839,7 @@ const jc = T(() => {
|
|
|
15839
15839
|
}
|
|
15840
15840
|
)
|
|
15841
15841
|
] });
|
|
15842
|
-
}, J1 =
|
|
15842
|
+
}, J1 = x(Q1);
|
|
15843
15843
|
var _t = /* @__PURE__ */ ((e) => (e.Delete = "delete", e.Edit = "edit", e.Token = "token", e))(_t || {});
|
|
15844
15844
|
const eC = ({
|
|
15845
15845
|
devices: e,
|
|
@@ -16087,14 +16087,14 @@ const eC = ({
|
|
|
16087
16087
|
return "";
|
|
16088
16088
|
}
|
|
16089
16089
|
}, y = () => {
|
|
16090
|
-
const
|
|
16090
|
+
const T = {
|
|
16091
16091
|
"& .MuiDialogContent-root": {
|
|
16092
16092
|
width: 400,
|
|
16093
16093
|
pt: 0
|
|
16094
16094
|
}
|
|
16095
16095
|
};
|
|
16096
16096
|
return e === _t.Token ? {
|
|
16097
|
-
...
|
|
16097
|
+
...T,
|
|
16098
16098
|
"& .MuiToolbar-root:last-child": {
|
|
16099
16099
|
padding: "32px 60px 48px",
|
|
16100
16100
|
justifyContent: "center"
|
|
@@ -16106,7 +16106,7 @@ const eC = ({
|
|
|
16106
16106
|
flex: 1
|
|
16107
16107
|
}
|
|
16108
16108
|
} : {
|
|
16109
|
-
...
|
|
16109
|
+
...T,
|
|
16110
16110
|
"& .MuiToolbar-root:last-child": {
|
|
16111
16111
|
gap: 8,
|
|
16112
16112
|
padding: 24,
|
|
@@ -16120,8 +16120,8 @@ const eC = ({
|
|
|
16120
16120
|
};
|
|
16121
16121
|
}, S = async () => {
|
|
16122
16122
|
if (e === _t.Token && i(), e === _t.Edit && a) {
|
|
16123
|
-
const
|
|
16124
|
-
(await d(
|
|
16123
|
+
const T = { ...a, name: m };
|
|
16124
|
+
(await d(T)).success ? (u(c.mobile_devices_edit_success, "success"), h()) : u(
|
|
16125
16125
|
A(c.mobile_devices_edit_error, a.name),
|
|
16126
16126
|
"error"
|
|
16127
16127
|
), i();
|
|
@@ -16164,23 +16164,23 @@ const eC = ({
|
|
|
16164
16164
|
),
|
|
16165
16165
|
/* @__PURE__ */ t(C, { truncate: !1, variant: "Small", children: c.mobile_devices_access_info_2 })
|
|
16166
16166
|
] }),
|
|
16167
|
-
e === _t.Edit && /* @__PURE__ */ t(b, { children: /* @__PURE__ */ t(nt, { onChange: (
|
|
16167
|
+
e === _t.Edit && /* @__PURE__ */ t(b, { children: /* @__PURE__ */ t(nt, { onChange: (T) => p(T.target.value), value: m }) }),
|
|
16168
16168
|
e === _t.Delete && /* @__PURE__ */ t(_e, { children: c.mobile_devices_delete_info })
|
|
16169
16169
|
]
|
|
16170
16170
|
}
|
|
16171
16171
|
);
|
|
16172
|
-
}, iC =
|
|
16172
|
+
}, iC = x(nC), aC = x(() => {
|
|
16173
16173
|
const { isMobile: e } = he(), { settings: n } = I(), { isCopyLoaded: i, isInitialized: a } = le(), { setAlert: o, devices: r, loadDevices: s, generateDeviceToken: c } = pt(), [d, _] = g.useState({ open: !1, type: "" }), [u, h] = g.useState(), [m, p] = g.useState("");
|
|
16174
16174
|
g.useEffect(() => {
|
|
16175
16175
|
a && s();
|
|
16176
16176
|
}, [a]);
|
|
16177
16177
|
const f = async () => {
|
|
16178
|
-
const
|
|
16179
|
-
|
|
16180
|
-
}, E = (
|
|
16181
|
-
h(
|
|
16182
|
-
}, y = (
|
|
16183
|
-
h(
|
|
16178
|
+
const T = await c();
|
|
16179
|
+
T ? (p(T), _({ open: !0, type: _t.Token })) : o(n.mobile_devices_access_error, "error");
|
|
16180
|
+
}, E = (T) => {
|
|
16181
|
+
h(T), _({ open: !0, type: _t.Edit });
|
|
16182
|
+
}, y = (T) => {
|
|
16183
|
+
h(T), _({ open: !0, type: _t.Delete });
|
|
16184
16184
|
}, S = () => {
|
|
16185
16185
|
_({ open: !1, type: "" }), h(void 0);
|
|
16186
16186
|
};
|
|
@@ -16230,7 +16230,7 @@ const eC = ({
|
|
|
16230
16230
|
]
|
|
16231
16231
|
}
|
|
16232
16232
|
);
|
|
16233
|
-
}), Ho =
|
|
16233
|
+
}), Ho = x(
|
|
16234
16234
|
({ onClick: e, primaryText: n, secondaryText: i, sx: a }) => {
|
|
16235
16235
|
const o = ye();
|
|
16236
16236
|
return /* @__PURE__ */ t(j, { sx: { bgcolor: o.palette.background.paper }, children: /* @__PURE__ */ l(ue, { alignItems: "flex-start", onClick: e, sx: a, children: [
|
|
@@ -16238,7 +16238,7 @@ const eC = ({
|
|
|
16238
16238
|
/* @__PURE__ */ t(ut, { children: /* @__PURE__ */ t(fs, {}) })
|
|
16239
16239
|
] }) });
|
|
16240
16240
|
}
|
|
16241
|
-
), oC =
|
|
16241
|
+
), oC = x(() => {
|
|
16242
16242
|
const { settings: e } = I(), { categories: n } = Ue(), { selectedRule: i, updateRuleCategory: a } = pt(), [o, r] = g.useState(!1), s = () => {
|
|
16243
16243
|
r(!1);
|
|
16244
16244
|
}, c = () => {
|
|
@@ -16266,7 +16266,7 @@ const eC = ({
|
|
|
16266
16266
|
}
|
|
16267
16267
|
)
|
|
16268
16268
|
] });
|
|
16269
|
-
}), rC =
|
|
16269
|
+
}), rC = x(() => {
|
|
16270
16270
|
const { common: e, settings: n } = I(), { selectedRule: i, updateRulePayee: a } = pt(), o = ye(), [r, s] = g.useState(!1), c = i?.description ? i.description : i?.match_description, [d, _] = g.useState(c || ""), u = () => {
|
|
16271
16271
|
s(!0);
|
|
16272
16272
|
}, h = async () => {
|
|
@@ -16306,7 +16306,7 @@ const eC = ({
|
|
|
16306
16306
|
}
|
|
16307
16307
|
)
|
|
16308
16308
|
] });
|
|
16309
|
-
}), sC =
|
|
16309
|
+
}), sC = x(({ onClose: e, onDelete: n, isOpen: i }) => {
|
|
16310
16310
|
const { common: a, settings: o } = I(), r = ye();
|
|
16311
16311
|
return /* @__PURE__ */ t(
|
|
16312
16312
|
ke,
|
|
@@ -16330,7 +16330,7 @@ const eC = ({
|
|
|
16330
16330
|
children: /* @__PURE__ */ t(C, { truncate: !1, variant: "Small", children: o.delete_rule_confirm })
|
|
16331
16331
|
}
|
|
16332
16332
|
);
|
|
16333
|
-
}), cC =
|
|
16333
|
+
}), cC = x(
|
|
16334
16334
|
({ isOpen: e, onClose: n, onDelete: i }) => {
|
|
16335
16335
|
const { common: a, settings: o } = I(), r = ye(), [s, c] = g.useState(!1);
|
|
16336
16336
|
return /* @__PURE__ */ l(
|
|
@@ -16366,7 +16366,7 @@ const eC = ({
|
|
|
16366
16366
|
}
|
|
16367
16367
|
);
|
|
16368
16368
|
}
|
|
16369
|
-
), lC =
|
|
16369
|
+
), lC = x(({ rule: e }) => {
|
|
16370
16370
|
const { categories: n } = Ue(), { setSelectedGuid: i } = _n(), { deleteTransactionRule: a, setSelectedRule: o } = pt(), { isDesktop: r, isTablet: s } = he(), [c, d] = g.useState(!1), _ = () => {
|
|
16371
16371
|
d(!1), i(null), o(void 0);
|
|
16372
16372
|
}, u = async () => {
|
|
@@ -16386,7 +16386,7 @@ const eC = ({
|
|
|
16386
16386
|
/* @__PURE__ */ t(F, { sx: { ml: s || r ? 0 : 24 } }),
|
|
16387
16387
|
/* @__PURE__ */ t(cC, { isOpen: c, onClose: _, onDelete: u })
|
|
16388
16388
|
] });
|
|
16389
|
-
}), Xc =
|
|
16389
|
+
}), Xc = x(() => {
|
|
16390
16390
|
const { settings: e } = I(), { loadTransactionRules: n, transactionRules: i } = pt();
|
|
16391
16391
|
return g.useEffect(() => {
|
|
16392
16392
|
n().finally();
|
|
@@ -16397,7 +16397,7 @@ const eC = ({
|
|
|
16397
16397
|
] }),
|
|
16398
16398
|
/* @__PURE__ */ t(ie, { children: i.map((a, o) => /* @__PURE__ */ t(lC, { rule: a }, o)) })
|
|
16399
16399
|
] });
|
|
16400
|
-
}), dC =
|
|
16400
|
+
}), dC = x(
|
|
16401
16401
|
({ onProfileUpdated: e, profile: n }) => {
|
|
16402
16402
|
const { common: i, recurring: a, settings: o } = I(), { updateAccount: r } = fe(), s = n.notification_type === at.DebtPaymentReminder, [c, d] = g.useState(!1), [_, u] = g.useState(n.threshold || 0), [h, m] = g.useState(
|
|
16403
16403
|
n.account?.day_payment_is_due || 0
|
|
@@ -16477,7 +16477,7 @@ const eC = ({
|
|
|
16477
16477
|
)
|
|
16478
16478
|
] });
|
|
16479
16479
|
}
|
|
16480
|
-
), uC =
|
|
16480
|
+
), uC = x(
|
|
16481
16481
|
({ onUpdateProfile: e, profile: n }) => {
|
|
16482
16482
|
const { settings: i } = I(), { user: a } = wt(), { clientCommunicationProfile: o, userCommunicationsProfile: r } = pt(), { isMobile: s } = he(), c = n.notification_type > 2, {
|
|
16483
16483
|
opted_out_of_email_notifications: d,
|
|
@@ -16543,7 +16543,7 @@ const eC = ({
|
|
|
16543
16543
|
] })
|
|
16544
16544
|
] });
|
|
16545
16545
|
}
|
|
16546
|
-
), Zr =
|
|
16546
|
+
), Zr = x(() => {
|
|
16547
16547
|
const { accountProfiles: e, updateNotificationProfile: n } = pt(), [i, a] = g.useState(""), o = g.useMemo(
|
|
16548
16548
|
() => e.find((c) => c.guid === i),
|
|
16549
16549
|
[e, i]
|
|
@@ -16585,7 +16585,7 @@ const eC = ({
|
|
|
16585
16585
|
}
|
|
16586
16586
|
)
|
|
16587
16587
|
] });
|
|
16588
|
-
}), qc =
|
|
16588
|
+
}), qc = x(({ profile: e }) => {
|
|
16589
16589
|
const { settings: n } = I(), {
|
|
16590
16590
|
clientCommunicationProfile: {
|
|
16591
16591
|
email_notifications_enabled: i,
|
|
@@ -16667,10 +16667,10 @@ const eC = ({
|
|
|
16667
16667
|
] }) }),
|
|
16668
16668
|
/* @__PURE__ */ t(F, {})
|
|
16669
16669
|
] }, e.guid);
|
|
16670
|
-
}), Qr =
|
|
16670
|
+
}), Qr = x(() => {
|
|
16671
16671
|
const { budgetProfiles: e } = pt();
|
|
16672
16672
|
return /* @__PURE__ */ t(b, { children: e.map((n) => /* @__PURE__ */ t(qc, { profile: n }, n.guid)) });
|
|
16673
|
-
}), _C =
|
|
16673
|
+
}), _C = x(() => {
|
|
16674
16674
|
const { onEvent: e } = X(), { settings: n } = I(), {
|
|
16675
16675
|
clientCommunicationProfile: i,
|
|
16676
16676
|
updateUserCommunicationProfile: a,
|
|
@@ -16733,7 +16733,7 @@ const eC = ({
|
|
|
16733
16733
|
/* @__PURE__ */ t(C, { sx: { whiteSpace: "wrap" }, variant: "XSmall", children: n.delivery_method_sms_note_1 })
|
|
16734
16734
|
] }) }) })
|
|
16735
16735
|
] });
|
|
16736
|
-
}), Jr =
|
|
16736
|
+
}), Jr = x(() => {
|
|
16737
16737
|
const { insightsProfiles: e } = pt();
|
|
16738
16738
|
return /* @__PURE__ */ t(b, { children: e.map((n) => /* @__PURE__ */ t(qc, { profile: n }, n.guid)) });
|
|
16739
16739
|
}), hC = () => {
|
|
@@ -16741,8 +16741,8 @@ const eC = ({
|
|
|
16741
16741
|
email: s.email,
|
|
16742
16742
|
phone: s.phone
|
|
16743
16743
|
}), h = _.email && !s.email_is_verified && !c, m = _.phone && !s.phone_is_verified && !c, p = (E) => {
|
|
16744
|
-
const { name: y, value: S } = E.target,
|
|
16745
|
-
u(
|
|
16744
|
+
const { name: y, value: S } = E.target, T = { ..._, [y]: S };
|
|
16745
|
+
u(T), d(JSON.stringify({ ...s, ...T }) !== JSON.stringify(s));
|
|
16746
16746
|
}, f = async () => {
|
|
16747
16747
|
await r({ ...s, ..._ }), d(!1);
|
|
16748
16748
|
};
|
|
@@ -16818,7 +16818,7 @@ const eC = ({
|
|
|
16818
16818
|
)
|
|
16819
16819
|
] })
|
|
16820
16820
|
] });
|
|
16821
|
-
}, gC =
|
|
16821
|
+
}, gC = x(hC), ia = x(
|
|
16822
16822
|
({
|
|
16823
16823
|
notificationTypes: e = [Nt.Accounts, Nt.Budgets],
|
|
16824
16824
|
showPersonalDetails: n = !1,
|
|
@@ -16917,16 +16917,16 @@ const eC = ({
|
|
|
16917
16917
|
] }),
|
|
16918
16918
|
/* @__PURE__ */ t(b, { sx: { flexDirection: { xs: "column", md: "row" }, gap: 12 }, children: [0, 1].map((u) => {
|
|
16919
16919
|
const h = u === 0 ? 0 : _, m = u === 0 ? _ : i.length, p = i.slice(h, m);
|
|
16920
|
-
return /* @__PURE__ */ t(b, { sx: { flex: 1, gap: 12, maxWidth: { md: "calc(50% - 6px)" } }, children: p.map(({ guid: f, icon: E, topics: y, title: S },
|
|
16921
|
-
const
|
|
16920
|
+
return /* @__PURE__ */ t(b, { sx: { flex: 1, gap: 12, maxWidth: { md: "calc(50% - 6px)" } }, children: p.map(({ guid: f, icon: E, topics: y, title: S }, T) => {
|
|
16921
|
+
const v = T + h;
|
|
16922
16922
|
return /* @__PURE__ */ l(
|
|
16923
16923
|
wi,
|
|
16924
16924
|
{
|
|
16925
16925
|
disableGutters: !0,
|
|
16926
|
-
expanded:
|
|
16927
|
-
onChange: (
|
|
16928
|
-
sx: (
|
|
16929
|
-
border: `1px solid ${
|
|
16926
|
+
expanded: v === c,
|
|
16927
|
+
onChange: (w, D) => d(D ? v : null),
|
|
16928
|
+
sx: (w) => ({
|
|
16929
|
+
border: `1px solid ${w.palette.border?.light}`,
|
|
16930
16930
|
borderRadius: "8px !important",
|
|
16931
16931
|
"&:before": {
|
|
16932
16932
|
opacity: 0
|
|
@@ -16957,12 +16957,12 @@ const eC = ({
|
|
|
16957
16957
|
ml: 56,
|
|
16958
16958
|
p: 0
|
|
16959
16959
|
},
|
|
16960
|
-
children: /* @__PURE__ */ t(ie, { disablePadding: !0, children: y.map(({ label:
|
|
16960
|
+
children: /* @__PURE__ */ t(ie, { disablePadding: !0, children: y.map(({ label: w, topicKey: D }) => /* @__PURE__ */ t(
|
|
16961
16961
|
ue,
|
|
16962
16962
|
{
|
|
16963
|
-
"aria-label":
|
|
16963
|
+
"aria-label": w,
|
|
16964
16964
|
divider: !0,
|
|
16965
|
-
onClick: () => s({ guid: f, category: S, pageTitle:
|
|
16965
|
+
onClick: () => s({ guid: f, category: S, pageTitle: w, topicKey: D }),
|
|
16966
16966
|
sx: {
|
|
16967
16967
|
pl: "6px !important",
|
|
16968
16968
|
borderColor: "border.light",
|
|
@@ -16971,7 +16971,7 @@ const eC = ({
|
|
|
16971
16971
|
borderBottomRightRadius: 7
|
|
16972
16972
|
}
|
|
16973
16973
|
},
|
|
16974
|
-
children: /* @__PURE__ */ t(C, { color: "secondary", variant: "Small", children:
|
|
16974
|
+
children: /* @__PURE__ */ t(C, { color: "secondary", variant: "Small", children: w })
|
|
16975
16975
|
},
|
|
16976
16976
|
D
|
|
16977
16977
|
)) })
|
|
@@ -19583,7 +19583,7 @@ const eC = ({
|
|
|
19583
19583
|
institutionName: "",
|
|
19584
19584
|
institutionLoginPage: "",
|
|
19585
19585
|
institutionWebsite: ""
|
|
19586
|
-
}, BC =
|
|
19586
|
+
}, BC = x(
|
|
19587
19587
|
({ copy: e, isOpen: n, onClose: i, onSave: a }) => {
|
|
19588
19588
|
const { alert: o, isLoading: r, setAlert: s } = po(), [c, d] = g.useState(es), [_, u] = g.useState(La), h = [
|
|
19589
19589
|
{ name: "institutionName", required: !0 },
|
|
@@ -19598,8 +19598,8 @@ const eC = ({
|
|
|
19598
19598
|
const {
|
|
19599
19599
|
target: { name: y, value: S }
|
|
19600
19600
|
} = E;
|
|
19601
|
-
u((
|
|
19602
|
-
...
|
|
19601
|
+
u((T) => ({
|
|
19602
|
+
...T,
|
|
19603
19603
|
[y]: S
|
|
19604
19604
|
}));
|
|
19605
19605
|
};
|
|
@@ -19611,9 +19611,9 @@ const eC = ({
|
|
|
19611
19611
|
onPrimaryAction: () => {
|
|
19612
19612
|
const E = {};
|
|
19613
19613
|
let y = !0;
|
|
19614
|
-
h.forEach(({ label: S, name:
|
|
19615
|
-
const
|
|
19616
|
-
|
|
19614
|
+
h.forEach(({ label: S, name: T, required: v }) => {
|
|
19615
|
+
const w = _[T];
|
|
19616
|
+
v && !w && (E[T] = `${S} ${e.request_support_required_message}`, y = !1), (T === "institutionWebsite" || T === "institutionLoginPage") && w && !/(.+)\.(.{2,})/g.test(w) && (E[T] = e.request_support_valid_url_message, y = !1);
|
|
19617
19617
|
}), d(E), y && (a(_), u(La));
|
|
19618
19618
|
},
|
|
19619
19619
|
secondaryColor: "primary",
|
|
@@ -19822,7 +19822,7 @@ const eC = ({
|
|
|
19822
19822
|
/* @__PURE__ */ t(ee, { fullWidth: !0, onClick: o, variant: "contained", children: r.done_button }),
|
|
19823
19823
|
/* @__PURE__ */ t(ee, { fullWidth: !0, onClick: a, sx: { mt: 8 }, children: e.request_support_institution_back })
|
|
19824
19824
|
] }) });
|
|
19825
|
-
}, KC =
|
|
19825
|
+
}, KC = x(
|
|
19826
19826
|
({ copy: e, isOpen: n, onClose: i }) => {
|
|
19827
19827
|
const { alert: a, createSupportTicket: o, isLoading: r, setAlert: s } = po(), { user: c } = wt(), { isInitialized: d } = le(), [_, u] = g.useState(""), [h, m] = g.useState(!1), [p, f] = g.useState(!1), [E, y] = g.useState({
|
|
19828
19828
|
isOpen: !1,
|
|
@@ -19835,12 +19835,12 @@ const eC = ({
|
|
|
19835
19835
|
type: M,
|
|
19836
19836
|
label: e.help_by_category_list[B.guid].topics[R]
|
|
19837
19837
|
}))
|
|
19838
|
-
})),
|
|
19838
|
+
})), T = Object.keys(e.popular_topics_list).map((B, M) => ({
|
|
19839
19839
|
name: e.popular_topics_list[B],
|
|
19840
19840
|
type: jp[M].type
|
|
19841
|
-
})),
|
|
19841
|
+
})), v = () => {
|
|
19842
19842
|
u(""), y({ isOpen: !1, topic: "", type: void 0 });
|
|
19843
|
-
},
|
|
19843
|
+
}, w = (B) => {
|
|
19844
19844
|
c.email && o({
|
|
19845
19845
|
email: c.email,
|
|
19846
19846
|
message: _ ? `Institution: ${_}, ${B}` : B,
|
|
@@ -19849,7 +19849,7 @@ const eC = ({
|
|
|
19849
19849
|
}, D = (B, M) => {
|
|
19850
19850
|
M === "other" ? f(!0) : y({ isOpen: !0, topic: B, type: M });
|
|
19851
19851
|
}, L = () => {
|
|
19852
|
-
s(""), m(!1), f(!1),
|
|
19852
|
+
s(""), m(!1), f(!1), v();
|
|
19853
19853
|
}, k = (B) => {
|
|
19854
19854
|
if (!c.email) {
|
|
19855
19855
|
s(e.request_support_email_not_exists_message, "error");
|
|
@@ -19884,7 +19884,7 @@ const eC = ({
|
|
|
19884
19884
|
/* @__PURE__ */ t(
|
|
19885
19885
|
Zc,
|
|
19886
19886
|
{
|
|
19887
|
-
list:
|
|
19887
|
+
list: T,
|
|
19888
19888
|
onClick: D,
|
|
19889
19889
|
sx: { fontWeight: 400 }
|
|
19890
19890
|
}
|
|
@@ -19927,7 +19927,7 @@ const eC = ({
|
|
|
19927
19927
|
onClose: () => {
|
|
19928
19928
|
m(!1), u("");
|
|
19929
19929
|
},
|
|
19930
|
-
onSubmit:
|
|
19930
|
+
onSubmit: w,
|
|
19931
19931
|
setAlert: s,
|
|
19932
19932
|
topic: E.topic || e.contact_support
|
|
19933
19933
|
}
|
|
@@ -19949,7 +19949,7 @@ const eC = ({
|
|
|
19949
19949
|
onClick: (B) => {
|
|
19950
19950
|
u(B), E.type === "internal" && m(!0);
|
|
19951
19951
|
},
|
|
19952
|
-
onClose:
|
|
19952
|
+
onClose: v,
|
|
19953
19953
|
topic: E.topic
|
|
19954
19954
|
}
|
|
19955
19955
|
),
|
|
@@ -19972,7 +19972,7 @@ const eC = ({
|
|
|
19972
19972
|
institution: _,
|
|
19973
19973
|
isOpen: !!_ && E.type === "external",
|
|
19974
19974
|
onClose: () => u(""),
|
|
19975
|
-
popularTopicsDrawerOnClose:
|
|
19975
|
+
popularTopicsDrawerOnClose: v,
|
|
19976
19976
|
title: E.topic
|
|
19977
19977
|
}
|
|
19978
19978
|
)
|
|
@@ -20011,10 +20011,10 @@ const eC = ({
|
|
|
20011
20011
|
}
|
|
20012
20012
|
)
|
|
20013
20013
|
] });
|
|
20014
|
-
}, p2 =
|
|
20014
|
+
}, p2 = x(({ sx: e }) => {
|
|
20015
20015
|
const { isCopyLoaded: n, isInitialized: i } = le();
|
|
20016
20016
|
return !n || !i ? /* @__PURE__ */ t(de, {}) : /* @__PURE__ */ t(mt, { sx: { p: 16 }, children: /* @__PURE__ */ t(Qc, { sx: e }) });
|
|
20017
|
-
}), YC =
|
|
20017
|
+
}), YC = x(({ selectedTab: e }) => {
|
|
20018
20018
|
const { alert: n, setAlert: i } = pt(), {
|
|
20019
20019
|
config: { display_user_profile_in_settings: a }
|
|
20020
20020
|
} = kt();
|
|
@@ -20047,7 +20047,7 @@ const eC = ({
|
|
|
20047
20047
|
] });
|
|
20048
20048
|
});
|
|
20049
20049
|
var Xn = /* @__PURE__ */ ((e) => (e[e.Profile = 0] = "Profile", e[e.Devices = 1] = "Devices", e[e.Notifications = 2] = "Notifications", e[e.TransactionRules = 3] = "TransactionRules", e[e.Help = 4] = "Help", e))(Xn || {});
|
|
20050
|
-
const C2 =
|
|
20050
|
+
const C2 = x(({ onBackClick: e, sx: n }) => {
|
|
20051
20051
|
const { settings: i } = I(), { isCopyLoaded: a, isInitialized: o } = le(), { config: r } = kt(), { isMobile: s } = he(), {
|
|
20052
20052
|
display_user_profile_in_settings: c,
|
|
20053
20053
|
display_mobile_devices_in_settings: d,
|
|
@@ -20085,13 +20085,13 @@ const C2 = T(({ onBackClick: e, sx: n }) => {
|
|
|
20085
20085
|
] })
|
|
20086
20086
|
}
|
|
20087
20087
|
);
|
|
20088
|
-
}), f2 =
|
|
20088
|
+
}), f2 = x((e) => {
|
|
20089
20089
|
const { clientConfig: n } = kt(), i = n?.master?.deep_link_params?.view;
|
|
20090
20090
|
return i ? /* @__PURE__ */ t(ia, { view: i }) : /* @__PURE__ */ t(mt, { ...e, children: /* @__PURE__ */ t(b, { my: 24, children: /* @__PURE__ */ t(ia, {}) }) });
|
|
20091
20091
|
}), b2 = (e) => {
|
|
20092
20092
|
const { isMobile: n } = he();
|
|
20093
20093
|
return /* @__PURE__ */ t(mt, { ...e, children: /* @__PURE__ */ t(b, { sx: { mx: n ? 0 : 48, my: 24 }, children: /* @__PURE__ */ t(Xc, {}) }) });
|
|
20094
|
-
}, y2 =
|
|
20094
|
+
}, y2 = x(
|
|
20095
20095
|
({ notificationTypes: e, isOpen: n, onClose: i, onNotificationClick: a }) => {
|
|
20096
20096
|
const { config: o } = kt(), { notifications: r, settings: s } = I(), { isCopyLoaded: c } = le(), [d, _] = g.useState(!1);
|
|
20097
20097
|
return c ? /* @__PURE__ */ l(Q, { children: [
|
|
@@ -20386,15 +20386,15 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20386
20386
|
(E) => E.category_guid === i || E.top_level_category_guid === i
|
|
20387
20387
|
) : e).reduce(
|
|
20388
20388
|
(E, y) => {
|
|
20389
|
-
const { category_guid: S, top_level_category_guid:
|
|
20389
|
+
const { category_guid: S, top_level_category_guid: T, month: v, total: w, year: D } = y, L = i ? S : T;
|
|
20390
20390
|
E[L] || (E[L] = {
|
|
20391
20391
|
id: L,
|
|
20392
20392
|
category: L,
|
|
20393
20393
|
category_guid: S,
|
|
20394
|
-
top_level_category_guid:
|
|
20394
|
+
top_level_category_guid: T
|
|
20395
20395
|
});
|
|
20396
|
-
const k = oe(new Date(D,
|
|
20397
|
-
return E[L][k] || (E[L][k] = 0), E[L][k] = E[L][k] +
|
|
20396
|
+
const k = oe(new Date(D, v - 1), ne.MONTH_SHORT);
|
|
20397
|
+
return E[L][k] || (E[L][k] = 0), E[L][k] = E[L][k] + w, E;
|
|
20398
20398
|
},
|
|
20399
20399
|
{}
|
|
20400
20400
|
);
|
|
@@ -20455,10 +20455,10 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20455
20455
|
]
|
|
20456
20456
|
}
|
|
20457
20457
|
);
|
|
20458
|
-
}, nl =
|
|
20458
|
+
}, nl = x(af), of = {
|
|
20459
20459
|
view_transactions: "View Transactions"
|
|
20460
20460
|
}, rf = ({ onBackClick: e, sx: n }) => {
|
|
20461
|
-
const { onEvent: i } = X(), { isDesktop: a, isTablet: o, isMobile: r } = he(), { visibleAccounts: s } = fe(), { loadMonthlyCategoryTotals: c, monthlyCategoryTotals: d, getCategoryName: _ } = Ue(), { sortedTransactions: u } = Re(), { selectedDateRange: h, setSelectedDateRange: m } = ri(), { isCopyLoaded: p, isInitialized: f, selectedAccounts: E, setSelectedAccounts: y } = le(), { trends: S } = I(), [
|
|
20461
|
+
const { onEvent: i } = X(), { isDesktop: a, isTablet: o, isMobile: r } = he(), { visibleAccounts: s } = fe(), { loadMonthlyCategoryTotals: c, monthlyCategoryTotals: d, getCategoryName: _ } = Ue(), { sortedTransactions: u } = Re(), { selectedDateRange: h, setSelectedDateRange: m } = ri(), { isCopyLoaded: p, isInitialized: f, selectedAccounts: E, setSelectedAccounts: y } = le(), { trends: S } = I(), [T, v] = g.useState(!1), [w, D] = g.useState(!1), [L, k] = g.useState("Chart"), [B, M] = g.useState("");
|
|
20462
20462
|
g.useEffect(() => {
|
|
20463
20463
|
y(s);
|
|
20464
20464
|
}, [s]), g.useEffect(() => {
|
|
@@ -20467,11 +20467,11 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20467
20467
|
h.start,
|
|
20468
20468
|
h.end
|
|
20469
20469
|
).finally(() => {
|
|
20470
|
-
|
|
20470
|
+
v(!0);
|
|
20471
20471
|
});
|
|
20472
20472
|
}, [f, E, h]);
|
|
20473
20473
|
const R = g.useMemo(() => {
|
|
20474
|
-
if (!
|
|
20474
|
+
if (!T) return { stackedDatasets: [], unstackedDatasets: [] };
|
|
20475
20475
|
const J = qC(
|
|
20476
20476
|
d,
|
|
20477
20477
|
h.start,
|
|
@@ -20503,7 +20503,7 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20503
20503
|
}, me = (J) => {
|
|
20504
20504
|
i(W.TRENDS_HOVER_POINT, { category: J });
|
|
20505
20505
|
};
|
|
20506
|
-
return !p || !f || !
|
|
20506
|
+
return !p || !f || !T ? /* @__PURE__ */ t(de, {}) : /* @__PURE__ */ l(
|
|
20507
20507
|
mt,
|
|
20508
20508
|
{
|
|
20509
20509
|
accountOptions: s,
|
|
@@ -20578,14 +20578,14 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20578
20578
|
{
|
|
20579
20579
|
categoryGuid: B,
|
|
20580
20580
|
dateRange: h,
|
|
20581
|
-
isOpen:
|
|
20581
|
+
isOpen: w,
|
|
20582
20582
|
onClose: () => D(!1)
|
|
20583
20583
|
}
|
|
20584
20584
|
)
|
|
20585
20585
|
]
|
|
20586
20586
|
}
|
|
20587
20587
|
);
|
|
20588
|
-
}, E2 =
|
|
20588
|
+
}, E2 = x(rf), sf = () => {
|
|
20589
20589
|
const e = st(), { monthlyCategoryTotals: n } = Ue(), { trends: i } = I(), a = Nm(n);
|
|
20590
20590
|
return /* @__PURE__ */ t(
|
|
20591
20591
|
Di,
|
|
@@ -20602,7 +20602,7 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20602
20602
|
useCustomMark: !0
|
|
20603
20603
|
}
|
|
20604
20604
|
);
|
|
20605
|
-
}, cf =
|
|
20605
|
+
}, cf = x(sf), lf = ({ onPrimaryCtaClick: e, sx: n }) => {
|
|
20606
20606
|
const { visibleAccounts: i } = fe(), { loadMonthlyCategoryTotals: a, monthlyTotalsLoaded: o } = Ue(), { isInitialized: r } = oi(), { trends: s } = I(), { isCopyLoaded: c, selectedAccounts: d, setSelectedAccounts: _ } = le();
|
|
20607
20607
|
return g.useEffect(() => {
|
|
20608
20608
|
_(i);
|
|
@@ -20619,7 +20619,7 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20619
20619
|
children: o ? /* @__PURE__ */ t(cf, {}) : /* @__PURE__ */ t(de, {})
|
|
20620
20620
|
}
|
|
20621
20621
|
);
|
|
20622
|
-
}, S2 =
|
|
20622
|
+
}, S2 = x(lf), df = 70, ns = ({
|
|
20623
20623
|
title: e,
|
|
20624
20624
|
totalAmount: n,
|
|
20625
20625
|
transactionType: i,
|
|
@@ -20703,7 +20703,7 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20703
20703
|
]
|
|
20704
20704
|
}
|
|
20705
20705
|
);
|
|
20706
|
-
}, uf =
|
|
20706
|
+
}, uf = x(() => {
|
|
20707
20707
|
const { trends: e } = I();
|
|
20708
20708
|
return /* @__PURE__ */ l(b, { sx: { alignItems: "start", flexDirection: "row", gap: 12 }, children: [
|
|
20709
20709
|
/* @__PURE__ */ t(Ql, { size: 32 }),
|
|
@@ -20712,7 +20712,7 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20712
20712
|
/* @__PURE__ */ t(_e, { color: "text.secondary", variant: "subtitle2", children: e.zero_state_content_description })
|
|
20713
20713
|
] })
|
|
20714
20714
|
] });
|
|
20715
|
-
}), A2 =
|
|
20715
|
+
}), A2 = x(({ onCtaClick: e }) => {
|
|
20716
20716
|
const { visibleAccounts: n } = fe(), { monthlyCategoryTotals: i, loadMonthlyCategoryTotals: a, monthlyTotalsLoaded: o } = Ue(), r = {
|
|
20717
20717
|
start: wd(/* @__PURE__ */ new Date(), 1),
|
|
20718
20718
|
end: /* @__PURE__ */ new Date()
|
|
@@ -20728,16 +20728,16 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20728
20728
|
incomeData: Ro(i, r)
|
|
20729
20729
|
}),
|
|
20730
20730
|
[i, r]
|
|
20731
|
-
), [m, p] = u, [f, E] = h, y = Gr(p.y, m.y), S = Gr(E.y, f.y),
|
|
20731
|
+
), [m, p] = u, [f, E] = h, y = Gr(p.y, m.y), S = Gr(E.y, f.y), T = _ && !n?.length;
|
|
20732
20732
|
return !o || !_ ? /* @__PURE__ */ t(de, {}) : /* @__PURE__ */ t(
|
|
20733
20733
|
ga,
|
|
20734
20734
|
{
|
|
20735
20735
|
className: "mx-trends-microwidget",
|
|
20736
20736
|
ctaLabel: s.micro_primary_cta_label,
|
|
20737
20737
|
onCTAClick: e,
|
|
20738
|
-
subHeader:
|
|
20738
|
+
subHeader: T ? void 0 : s.micro_subheader,
|
|
20739
20739
|
title: s.title,
|
|
20740
|
-
children:
|
|
20740
|
+
children: T ? /* @__PURE__ */ t(uf, {}) : /* @__PURE__ */ l(
|
|
20741
20741
|
b,
|
|
20742
20742
|
{
|
|
20743
20743
|
sx: {
|
|
@@ -20773,7 +20773,7 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20773
20773
|
)
|
|
20774
20774
|
}
|
|
20775
20775
|
);
|
|
20776
|
-
}), _f =
|
|
20776
|
+
}), _f = x(
|
|
20777
20777
|
({ isExpanded: e, onClick: n }) => {
|
|
20778
20778
|
const i = ye();
|
|
20779
20779
|
return /* @__PURE__ */ t(j, { sx: { bgcolor: "background.paper" }, children: /* @__PURE__ */ t(ue, { onClick: n, sx: { justifyContent: "center" }, children: /* @__PURE__ */ l(
|
|
@@ -20850,7 +20850,7 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20850
20850
|
children: d
|
|
20851
20851
|
}
|
|
20852
20852
|
) });
|
|
20853
|
-
}, hf =
|
|
20853
|
+
}, hf = x(
|
|
20854
20854
|
({ onClick: e, name: n, amount: i, guid: a, transactions: o }) => {
|
|
20855
20855
|
const { trends: r } = I(), s = o?.length || 0, c = `${s} ${s === 1 ? r.transaction : r.transactions}`;
|
|
20856
20856
|
return /* @__PURE__ */ t(
|
|
@@ -20865,17 +20865,14 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20865
20865
|
}
|
|
20866
20866
|
);
|
|
20867
20867
|
}
|
|
20868
|
-
), gf =
|
|
20868
|
+
), gf = x(
|
|
20869
20869
|
({ onListItemClick: e, transactions: n }) => {
|
|
20870
|
-
const { visibleListItems: i, collapsedListItems: a } = ri(), { trends: o } = I(), [r, s] = g.useState(!1), c = (u) => n.filter((h) => h.category_guid === u), d = ({ guid: u, name: h, amount: m,
|
|
20871
|
-
const
|
|
20872
|
-
console.log(w);
|
|
20873
|
-
const v = {
|
|
20870
|
+
const { visibleListItems: i, collapsedListItems: a } = ri(), { trends: o } = I(), [r, s] = g.useState(!1), c = (u) => n.filter((h) => h.category_guid === u), d = ({ guid: u, name: h, amount: m }, p, f) => {
|
|
20871
|
+
const E = i.length + (r ? a.length : 0), S = (f === a ? i.length + p : p) === E - 1, T = c(u), v = {
|
|
20874
20872
|
guid: u,
|
|
20875
20873
|
name: h,
|
|
20876
20874
|
amount: m,
|
|
20877
|
-
|
|
20878
|
-
transactions: w
|
|
20875
|
+
transactions: T
|
|
20879
20876
|
};
|
|
20880
20877
|
return /* @__PURE__ */ l(g.Fragment, { children: [
|
|
20881
20878
|
/* @__PURE__ */ t(
|
|
@@ -20884,11 +20881,11 @@ const XC = (e) => e.reduce((i, a) => {
|
|
|
20884
20881
|
amount: m,
|
|
20885
20882
|
guid: u,
|
|
20886
20883
|
name: h,
|
|
20887
|
-
onClick:
|
|
20888
|
-
transactions:
|
|
20884
|
+
onClick: T.length > 0 ? () => e(v) : void 0,
|
|
20885
|
+
transactions: T
|
|
20889
20886
|
}
|
|
20890
20887
|
),
|
|
20891
|
-
/* @__PURE__ */ t(F, { sx: { ml:
|
|
20888
|
+
/* @__PURE__ */ t(F, { sx: { ml: S ? 24 : 68 } })
|
|
20892
20889
|
] }, u);
|
|
20893
20890
|
}, _ = () => {
|
|
20894
20891
|
s(!r);
|
|
@@ -21153,7 +21150,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
21153
21150
|
variant: f,
|
|
21154
21151
|
widthOverrides: E
|
|
21155
21152
|
}, y) {
|
|
21156
|
-
const [S,
|
|
21153
|
+
const [S, T] = g.useState(!1), { cardStyle: v, linkTextStyle: w } = h, D = f ? v : { border: "none", boxShadow: "none", ...v }, L = /* @__PURE__ */ t(
|
|
21157
21154
|
_e,
|
|
21158
21155
|
{
|
|
21159
21156
|
className: "mx-micro-card-description",
|
|
@@ -21193,8 +21190,8 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
21193
21190
|
"aria-label": i,
|
|
21194
21191
|
id: "divButton",
|
|
21195
21192
|
onClick: () => _(),
|
|
21196
|
-
onKeyDown: () =>
|
|
21197
|
-
onKeyUp: () =>
|
|
21193
|
+
onKeyDown: () => T(!1),
|
|
21194
|
+
onKeyUp: () => T(!0),
|
|
21198
21195
|
ref: y,
|
|
21199
21196
|
role: "button",
|
|
21200
21197
|
sx: {
|
|
@@ -21256,7 +21253,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
21256
21253
|
fontSize: 14,
|
|
21257
21254
|
fontWeight: "bold",
|
|
21258
21255
|
px: 28,
|
|
21259
|
-
...
|
|
21256
|
+
...w
|
|
21260
21257
|
}),
|
|
21261
21258
|
children: n
|
|
21262
21259
|
}
|
|
@@ -21294,7 +21291,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
21294
21291
|
"& .kyper-categoryicon": {
|
|
21295
21292
|
display: "flex"
|
|
21296
21293
|
}
|
|
21297
|
-
}), xf =
|
|
21294
|
+
}), xf = x(Af), If = ({
|
|
21298
21295
|
color: e = "currentColor",
|
|
21299
21296
|
height: n,
|
|
21300
21297
|
size: i = 16,
|
|
@@ -22168,9 +22165,9 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22168
22165
|
}) => {
|
|
22169
22166
|
const { ref: p, inView: f } = Bs({
|
|
22170
22167
|
threshold: dl
|
|
22171
|
-
}), { cardsCopy: E } = Gn(), { onEvent: y } = ki(), { updateBeat: S, updateOffer:
|
|
22168
|
+
}), { cardsCopy: E } = Gn(), { onEvent: y } = ki(), { updateBeat: S, updateOffer: T } = Df();
|
|
22172
22169
|
Dn(() => {
|
|
22173
|
-
f && (i.has_been_displayed ? y(al(i.template)) : (i.guid.startsWith("OFR") ?
|
|
22170
|
+
f && (i.has_been_displayed ? y(al(i.template)) : (i.guid.startsWith("OFR") ? T({
|
|
22174
22171
|
...i,
|
|
22175
22172
|
has_been_displayed: !0
|
|
22176
22173
|
}) : S({
|
|
@@ -22180,11 +22177,11 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22180
22177
|
}, [f]), Dn(() => {
|
|
22181
22178
|
if (f && i)
|
|
22182
22179
|
if (i.template === "MarketingOffer") {
|
|
22183
|
-
const
|
|
22180
|
+
const w = i;
|
|
22184
22181
|
_?.capture("viewed_messaging_insight", {
|
|
22185
22182
|
template: i.template,
|
|
22186
|
-
campaign_guid:
|
|
22187
|
-
campaign_name:
|
|
22183
|
+
campaign_guid: w.campaign_guid,
|
|
22184
|
+
campaign_name: w.pulse_campaign_name
|
|
22188
22185
|
});
|
|
22189
22186
|
} else
|
|
22190
22187
|
_?.capture("viewed_insight", {
|
|
@@ -22193,13 +22190,13 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22193
22190
|
position: s
|
|
22194
22191
|
});
|
|
22195
22192
|
}, [i, s, f]);
|
|
22196
|
-
const
|
|
22193
|
+
const v = () => {
|
|
22197
22194
|
if (d && d(i), y(il(i.template)), i.template === "MarketingOffer") {
|
|
22198
|
-
const
|
|
22195
|
+
const w = i;
|
|
22199
22196
|
_?.capture("clicked_messaging_insight", {
|
|
22200
22197
|
template: i.template,
|
|
22201
|
-
campaign_guid:
|
|
22202
|
-
campaign_name:
|
|
22198
|
+
campaign_guid: w.campaign_guid,
|
|
22199
|
+
campaign_name: w.pulse_campaign_name
|
|
22203
22200
|
});
|
|
22204
22201
|
} else
|
|
22205
22202
|
_?.capture("clicked_insight", {
|
|
@@ -22227,7 +22224,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22227
22224
|
}
|
|
22228
22225
|
),
|
|
22229
22226
|
isActiveCard: c,
|
|
22230
|
-
onCardClick:
|
|
22227
|
+
onCardClick: v,
|
|
22231
22228
|
posthog: _,
|
|
22232
22229
|
ref: p,
|
|
22233
22230
|
showCTAColocatedWithText: o,
|
|
@@ -22344,7 +22341,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22344
22341
|
visibleCardsCount: p = 1
|
|
22345
22342
|
// Default to 1 card visible
|
|
22346
22343
|
}) => {
|
|
22347
|
-
const f = g.useRef(null), E = g.useRef(null), [y, S] = g.useState(0), [
|
|
22344
|
+
const f = g.useRef(null), E = g.useRef(null), [y, S] = g.useState(0), [T, v] = g.useState(null), [w, D] = g.useState(null), [L, k] = g.useState(null), [B, M] = g.useState(c), { carouselCopy: R } = Gn(), { onEvent: G } = ki();
|
|
22348
22345
|
g.useEffect(() => {
|
|
22349
22346
|
if (f.current && !e) {
|
|
22350
22347
|
const U = f.current.offsetWidth, ge = 8;
|
|
@@ -22395,12 +22392,12 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22395
22392
|
}, pe = () => {
|
|
22396
22393
|
f.current && S(f.current.scrollLeft);
|
|
22397
22394
|
}, Ce = () => {
|
|
22398
|
-
if (!
|
|
22399
|
-
|
|
22395
|
+
if (!w || !T) return;
|
|
22396
|
+
w - T > Rf ? G(Kt.ON_CAROUSEL_FORWARD_SWIPE) : G(Kt.ON_CAROUSEL_BACK_SWIPE);
|
|
22400
22397
|
}, Le = (U) => {
|
|
22401
|
-
|
|
22398
|
+
v(U.targetTouches[0].clientX);
|
|
22402
22399
|
}, Me = (U) => {
|
|
22403
|
-
|
|
22400
|
+
v(null), D(U.targetTouches[0].clientX);
|
|
22404
22401
|
}, me = {
|
|
22405
22402
|
clientColorScheme: i,
|
|
22406
22403
|
showCTAColocatedWithText: a,
|
|
@@ -22499,7 +22496,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22499
22496
|
]
|
|
22500
22497
|
}
|
|
22501
22498
|
);
|
|
22502
|
-
}, kf =
|
|
22499
|
+
}, kf = x(Mf), Gf = ({
|
|
22503
22500
|
clientColorScheme: e,
|
|
22504
22501
|
onCardClick: n,
|
|
22505
22502
|
posthog: i,
|
|
@@ -22568,7 +22565,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22568
22565
|
]
|
|
22569
22566
|
}
|
|
22570
22567
|
) : /* @__PURE__ */ t(de, {});
|
|
22571
|
-
}, Bf =
|
|
22568
|
+
}, Bf = x(Gf), Hf = ({
|
|
22572
22569
|
heightOverrides: e,
|
|
22573
22570
|
widthOverrides: n,
|
|
22574
22571
|
children: i
|
|
@@ -22643,7 +22640,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22643
22640
|
widthOverrides: _
|
|
22644
22641
|
}
|
|
22645
22642
|
);
|
|
22646
|
-
}, T2 =
|
|
22643
|
+
}, T2 = x(ul), _l = ({
|
|
22647
22644
|
ariaLabel: e,
|
|
22648
22645
|
carouselSize: n,
|
|
22649
22646
|
heightOverrides: i,
|
|
@@ -22685,7 +22682,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22685
22682
|
widthOverrides: d
|
|
22686
22683
|
}
|
|
22687
22684
|
);
|
|
22688
|
-
}, x2 =
|
|
22685
|
+
}, x2 = x(_l), Pf = () => /* @__PURE__ */ t(
|
|
22689
22686
|
O,
|
|
22690
22687
|
{
|
|
22691
22688
|
sx: {
|
|
@@ -22721,17 +22718,17 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22721
22718
|
showHeader: E,
|
|
22722
22719
|
showIcon: y,
|
|
22723
22720
|
showWithMargin: S = !0,
|
|
22724
|
-
token:
|
|
22725
|
-
useDarkMode:
|
|
22726
|
-
userHasFullInsightFeedBeats:
|
|
22721
|
+
token: T = "",
|
|
22722
|
+
useDarkMode: v,
|
|
22723
|
+
userHasFullInsightFeedBeats: w,
|
|
22727
22724
|
variant: D,
|
|
22728
22725
|
visibleCardsCount: L = 1,
|
|
22729
22726
|
widthOverrides: k
|
|
22730
22727
|
}) => {
|
|
22731
22728
|
const B = st(), [M, R] = Et("STANDARD"), [G, q] = Et(!1), se = Ru([_], gn), pe = Lu([u], gn);
|
|
22732
22729
|
g.useEffect(() => {
|
|
22733
|
-
gn.isInitialized || gn.initialize(r,
|
|
22734
|
-
}, [r,
|
|
22730
|
+
gn.isInitialized || gn.initialize(r, T, c);
|
|
22731
|
+
}, [r, T, c, gn.isInitialized]), g.useEffect(() => {
|
|
22735
22732
|
const Me = window.innerHeight;
|
|
22736
22733
|
Me < 180 ? R("STANDARD") : Me >= 180 && Me < 200 ? R("LARGE") : Me >= 200 && Me < 248 ? R("XLARGE") : Me >= 248 && R("XXLARGE");
|
|
22737
22734
|
}, [window.innerHeight]), g.useEffect(() => {
|
|
@@ -22744,7 +22741,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22744
22741
|
posthog: h,
|
|
22745
22742
|
showIcon: y,
|
|
22746
22743
|
showWithMargin: S,
|
|
22747
|
-
useDarkMode:
|
|
22744
|
+
useDarkMode: v,
|
|
22748
22745
|
widthOverrides: k
|
|
22749
22746
|
}, Le = {
|
|
22750
22747
|
carouselSize: M,
|
|
@@ -22779,12 +22776,12 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22779
22776
|
...Ce
|
|
22780
22777
|
}
|
|
22781
22778
|
),
|
|
22782
|
-
G && !i.length &&
|
|
22783
|
-
G && !i.length && !
|
|
22779
|
+
G && !i.length && w && /* @__PURE__ */ t(ul, { clientColorScheme: a, ...Le }),
|
|
22780
|
+
G && !i.length && !w && /* @__PURE__ */ t(_l, { ...Le })
|
|
22784
22781
|
] }) })
|
|
22785
22782
|
] })
|
|
22786
22783
|
);
|
|
22787
|
-
}, Wf =
|
|
22784
|
+
}, Wf = x(Ff), Uf = ({
|
|
22788
22785
|
isActiveCard: e,
|
|
22789
22786
|
ariaLabel: n,
|
|
22790
22787
|
clientColorScheme: i,
|
|
@@ -22827,14 +22824,14 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22827
22824
|
widthOverrides: d
|
|
22828
22825
|
}
|
|
22829
22826
|
);
|
|
22830
|
-
}, Vf =
|
|
22827
|
+
}, Vf = x(Uf), Kf = ({ onInsightCardClick: e }) => {
|
|
22831
22828
|
const n = cn(), { isMobile: i, isDesktop: a, isLargeDesktop: o } = he(), { beatStore: r, endpoint: s, sessionToken: c } = oi(), { isInitialized: d } = le(), { sortedCategoriesList: _ } = ri(), [u, h] = g.useState(!1), m = n.palette.mode === "dark", p = a || o, f = p || i ? 1 : 2;
|
|
22832
22829
|
g.useEffect(() => {
|
|
22833
22830
|
d && r.loadBeats().finally(() => h(!0));
|
|
22834
22831
|
}, [d]);
|
|
22835
22832
|
const E = g.useMemo(() => {
|
|
22836
22833
|
if (!u) return [];
|
|
22837
|
-
const S = _.map((
|
|
22834
|
+
const S = _.map((T) => T.guid);
|
|
22838
22835
|
return r.getBeatsByCategories(S);
|
|
22839
22836
|
}, [u, _]), y = () => null;
|
|
22840
22837
|
return /* @__PURE__ */ t(
|
|
@@ -22859,7 +22856,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22859
22856
|
visibleCardsCount: f
|
|
22860
22857
|
}
|
|
22861
22858
|
);
|
|
22862
|
-
}, Yf =
|
|
22859
|
+
}, Yf = x(Kf), zf = x(({ transactions: e }) => {
|
|
22863
22860
|
const { is_mobile_webview: n } = kt(), { trends: i } = I(), { isDesktop: a } = he(), o = ` ${e.length === 1 ? i.transaction : i.transactions} (${e.length})`, r = (() => {
|
|
22864
22861
|
const d = /* @__PURE__ */ new Map();
|
|
22865
22862
|
return e.forEach((_) => {
|
|
@@ -22922,7 +22919,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22922
22919
|
})
|
|
22923
22920
|
] }, d)) })
|
|
22924
22921
|
] });
|
|
22925
|
-
}), jf =
|
|
22922
|
+
}), jf = x(() => {
|
|
22926
22923
|
const { categoryDetailsChartData: e, selectedCategoryData: n } = ri(), i = n?.chartLabel ? n.chartLabel : "", a = n?.color;
|
|
22927
22924
|
return /* @__PURE__ */ t(b, { sx: { pt: 12, width: "100%" }, children: /* @__PURE__ */ t(
|
|
22928
22925
|
Di,
|
|
@@ -22943,11 +22940,11 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22943
22940
|
useCustomMark: !0
|
|
22944
22941
|
}
|
|
22945
22942
|
) });
|
|
22946
|
-
}), $f =
|
|
22943
|
+
}), $f = x(({ onClose: e }) => {
|
|
22947
22944
|
const { trends: n } = I(), { selectedCategoryData: i, selectedDateRangeMonthRange: a } = ri();
|
|
22948
22945
|
if (!i)
|
|
22949
22946
|
return null;
|
|
22950
|
-
const { guid: o, name: r, amount: s,
|
|
22947
|
+
const { guid: o, name: r, amount: s, transactions: c } = i, d = i.name === "Income" ? n.category_income : n.category_spending, _ = () => {
|
|
22951
22948
|
e?.();
|
|
22952
22949
|
};
|
|
22953
22950
|
return /* @__PURE__ */ t(
|
|
@@ -22955,9 +22952,9 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22955
22952
|
{
|
|
22956
22953
|
ariaLabelClose: n.close_category_details,
|
|
22957
22954
|
isOpen: !0,
|
|
22958
|
-
onClose:
|
|
22955
|
+
onClose: _,
|
|
22959
22956
|
shouldShowHeaderShadow: !0,
|
|
22960
|
-
title:
|
|
22957
|
+
title: d,
|
|
22961
22958
|
children: /* @__PURE__ */ l(b, { sx: { alignItems: "center", pt: 16 }, children: [
|
|
22962
22959
|
/* @__PURE__ */ t(
|
|
22963
22960
|
Po,
|
|
@@ -22969,7 +22966,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
22969
22966
|
}
|
|
22970
22967
|
),
|
|
22971
22968
|
/* @__PURE__ */ t(jf, {}),
|
|
22972
|
-
|
|
22969
|
+
c && /* @__PURE__ */ t(zf, { transactions: c })
|
|
22973
22970
|
] })
|
|
22974
22971
|
}
|
|
22975
22972
|
);
|
|
@@ -23005,28 +23002,28 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
23005
23002
|
showLegend: !0
|
|
23006
23003
|
}
|
|
23007
23004
|
);
|
|
23008
|
-
}, Qf =
|
|
23005
|
+
}, Qf = x(Zf), Jf = ({ onBackClick: e, onInsightCardClick: n, sx: i }) => {
|
|
23009
23006
|
const { onEvent: a } = X(), o = st(), { isLargeDesktop: r, isDesktop: s, isMobile: c } = he(), { visibleAccounts: d } = fe(), { loadMonthlyCategoryTotals: _, monthlyCategoryTotals: u } = Ue(), { setFilter: h, sortedTransactions: m } = Re(), { selectedDateRange: p, setSelectedCategoryData: f, setSelectedDateRange: E } = ri(), {
|
|
23010
23007
|
isCopyLoaded: y,
|
|
23011
23008
|
isInitialized: S,
|
|
23012
|
-
selectedAccounts:
|
|
23013
|
-
selectedAccountGuids:
|
|
23014
|
-
setSelectedAccounts:
|
|
23009
|
+
selectedAccounts: T,
|
|
23010
|
+
selectedAccountGuids: v,
|
|
23011
|
+
setSelectedAccounts: w
|
|
23015
23012
|
} = le(), { trends: D } = I(), L = Ou(), k = s || r, [B, M] = g.useState(!1), [R, G] = g.useState(!1), [q, se] = g.useState("Chart"), [pe, Ce] = g.useState(""), [Le, Me] = g.useState(!1);
|
|
23016
23013
|
g.useEffect(() => {
|
|
23017
|
-
|
|
23014
|
+
w(d);
|
|
23018
23015
|
}, [d]), g.useEffect(() => {
|
|
23019
23016
|
S && _(
|
|
23020
|
-
|
|
23017
|
+
T,
|
|
23021
23018
|
p.start,
|
|
23022
23019
|
p.end
|
|
23023
23020
|
).finally(() => {
|
|
23024
23021
|
M(!0);
|
|
23025
23022
|
});
|
|
23026
|
-
}, [S,
|
|
23023
|
+
}, [S, T, p]), g.useEffect(() => {
|
|
23027
23024
|
if (u.length !== 0) {
|
|
23028
23025
|
const Oe = {
|
|
23029
|
-
accounts:
|
|
23026
|
+
accounts: v,
|
|
23030
23027
|
dateRange: { start: p.start, end: p.end }
|
|
23031
23028
|
};
|
|
23032
23029
|
h({
|
|
@@ -23039,7 +23036,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
23039
23036
|
}, [u]);
|
|
23040
23037
|
const me = (Oe) => {
|
|
23041
23038
|
const Y = Oe;
|
|
23042
|
-
Y.color = ta(Y.guid, o), Y.chartLabel = Oe.
|
|
23039
|
+
Y.color = ta(Y.guid, o), Y.chartLabel = Oe.name === "Income" ? D.monthly_income : D.monthly_spending, console.log(Oe), console.log(Y.chartLabel), f(Y), Me(!0);
|
|
23043
23040
|
}, J = () => {
|
|
23044
23041
|
f(null), Me(!1);
|
|
23045
23042
|
}, Ke = (Oe, Y) => {
|
|
@@ -23149,7 +23146,7 @@ const Mi = g.createContext(null), Ef = ({
|
|
|
23149
23146
|
]
|
|
23150
23147
|
}
|
|
23151
23148
|
);
|
|
23152
|
-
}, I2 =
|
|
23149
|
+
}, I2 = x(Jf);
|
|
23153
23150
|
class e0 {
|
|
23154
23151
|
globalStore;
|
|
23155
23152
|
selectedCategoryData = null;
|
|
@@ -23508,7 +23505,7 @@ const Oa = ({
|
|
|
23508
23505
|
onClose: () => a(!1),
|
|
23509
23506
|
title: h.mark_as_duplicate,
|
|
23510
23507
|
children: /* @__PURE__ */ t(ie, { children: m.map((S) => {
|
|
23511
|
-
const
|
|
23508
|
+
const T = m.indexOf(S) === m.length - 1;
|
|
23512
23509
|
return /* @__PURE__ */ l(g.Fragment, { children: [
|
|
23513
23510
|
/* @__PURE__ */ t(
|
|
23514
23511
|
Ei,
|
|
@@ -23519,7 +23516,7 @@ const Oa = ({
|
|
|
23519
23516
|
}
|
|
23520
23517
|
}
|
|
23521
23518
|
),
|
|
23522
|
-
/* @__PURE__ */ t(ie, { sx: { ml:
|
|
23519
|
+
/* @__PURE__ */ t(ie, { sx: { ml: T ? 0 : 24 } })
|
|
23523
23520
|
] }, S.guid);
|
|
23524
23521
|
}) })
|
|
23525
23522
|
}
|
|
@@ -23545,7 +23542,7 @@ const Oa = ({
|
|
|
23545
23542
|
}
|
|
23546
23543
|
)
|
|
23547
23544
|
] });
|
|
23548
|
-
}, s0 =
|
|
23545
|
+
}, s0 = x(r0), hl = (e, n) => {
|
|
23549
23546
|
const { connection_messages: i } = n;
|
|
23550
23547
|
switch (e.connection_status) {
|
|
23551
23548
|
case Ct.CHALLENGED:
|
|
@@ -23775,7 +23772,7 @@ const Oa = ({
|
|
|
23775
23772
|
}
|
|
23776
23773
|
)
|
|
23777
23774
|
] });
|
|
23778
|
-
}, l0 =
|
|
23775
|
+
}, l0 = x(c0), d0 = ({ field: e, isOpen: n, onClose: i }) => {
|
|
23779
23776
|
const { updateAccount: a } = fe(), { selectedAccount: o } = Ft(), { accounts: r } = I(), [s, c] = g.useState(o[e.name]), [d, _] = g.useState(""), [u, h] = g.useState(!0), m = () => {
|
|
23780
23777
|
c(""), _(""), i();
|
|
23781
23778
|
}, p = () => {
|
|
@@ -23872,7 +23869,7 @@ const Oa = ({
|
|
|
23872
23869
|
children: p()
|
|
23873
23870
|
}
|
|
23874
23871
|
);
|
|
23875
|
-
}, u0 =
|
|
23872
|
+
}, u0 = x(d0), _0 = () => {
|
|
23876
23873
|
const e = window.app?.config, { onEvent: n } = X(), { selectedAccount: i } = Ft(), { accounts: a } = I(), o = Zg(i, a), r = i.member_is_managed_by_user || !i.member_is_managed_by_user && e.enable_renaming_home_accounts, [s, c] = g.useState(!1), [d, _] = g.useState(o[0]), u = o.filter(
|
|
23877
23874
|
(h) => r || i[h.name] || i[h.name] === 0
|
|
23878
23875
|
);
|
|
@@ -23914,14 +23911,14 @@ const Oa = ({
|
|
|
23914
23911
|
}
|
|
23915
23912
|
)
|
|
23916
23913
|
] });
|
|
23917
|
-
}, h0 =
|
|
23914
|
+
}, h0 = x(_0), g0 = () => {
|
|
23918
23915
|
const { onEvent: e } = X();
|
|
23919
23916
|
return g.useEffect(() => e(W.ACCOUNT_DETAILS_VIEW), []), /* @__PURE__ */ l(ie, { children: [
|
|
23920
23917
|
/* @__PURE__ */ t(h0, {}),
|
|
23921
23918
|
/* @__PURE__ */ t(l0, {}),
|
|
23922
23919
|
/* @__PURE__ */ t(s0, {})
|
|
23923
23920
|
] });
|
|
23924
|
-
}, m0 =
|
|
23921
|
+
}, m0 = x(g0), p0 = ({ setTabValue: e }) => {
|
|
23925
23922
|
const [n, i] = g.useState(!1), { selectedMember: a } = Ft(), { accounts: o, connect: r } = I(), s = a.connection_status && Ys.includes(a.connection_status);
|
|
23926
23923
|
if (g.useEffect(() => {
|
|
23927
23924
|
s && e(1);
|
|
@@ -23977,7 +23974,7 @@ const Oa = ({
|
|
|
23977
23974
|
}
|
|
23978
23975
|
)
|
|
23979
23976
|
] });
|
|
23980
|
-
}, C0 =
|
|
23977
|
+
}, C0 = x(p0), f0 = () => {
|
|
23981
23978
|
const [e, n] = g.useState(""), { onEvent: i } = X(), { selectedAccount: a } = Ft(), { accounts: o } = I(), { setFilter: r, sortedTransactions: s } = Re(), c = g.useMemo(
|
|
23982
23979
|
() => s.find((d) => d.guid === e),
|
|
23983
23980
|
[e, s]
|
|
@@ -24000,7 +23997,7 @@ const Oa = ({
|
|
|
24000
23997
|
}
|
|
24001
23998
|
)
|
|
24002
23999
|
] });
|
|
24003
|
-
}, b0 =
|
|
24000
|
+
}, b0 = x(f0), y0 = () => {
|
|
24004
24001
|
const [e, n] = g.useState(0), { accounts: i } = I();
|
|
24005
24002
|
return /* @__PURE__ */ l(Q, { children: [
|
|
24006
24003
|
/* @__PURE__ */ t(C0, { setTabValue: n }),
|
|
@@ -24036,7 +24033,7 @@ const Oa = ({
|
|
|
24036
24033
|
/* @__PURE__ */ t(ti, { index: 0, name: "transaction-details", value: e, children: /* @__PURE__ */ t(b0, {}) }),
|
|
24037
24034
|
/* @__PURE__ */ t(ti, { index: 1, name: "account-details", value: e, children: /* @__PURE__ */ t(m0, {}) })
|
|
24038
24035
|
] });
|
|
24039
|
-
}, gl =
|
|
24036
|
+
}, gl = x(y0), E0 = () => {
|
|
24040
24037
|
const [e, n] = g.useState(""), { accounts: i } = I(), { selectedAccounts: a } = le(), { setSelectedAccount: o, setSelectedMember: r } = Ft(), { members: s } = fe(), { onEvent: c } = X(), d = [...new Set(a.map((y) => y.account_type))], _ = a.find((y) => e === y.guid), u = g.useMemo(
|
|
24041
24038
|
() => a.filter((y) => y.is_hidden),
|
|
24042
24039
|
[a]
|
|
@@ -24063,11 +24060,11 @@ const Oa = ({
|
|
|
24063
24060
|
account_type: y.account_type
|
|
24064
24061
|
});
|
|
24065
24062
|
}, E = (y) => {
|
|
24066
|
-
const S = y === "hidden" ? u : h,
|
|
24063
|
+
const S = y === "hidden" ? u : h, T = y === "hidden" ? m : p, v = y === "hidden" ? i.account_hidden : i.account_closed;
|
|
24067
24064
|
return /* @__PURE__ */ t(O, { children: /* @__PURE__ */ t(
|
|
24068
24065
|
ie,
|
|
24069
24066
|
{
|
|
24070
|
-
"aria-label":
|
|
24067
|
+
"aria-label": v,
|
|
24071
24068
|
subheader: /* @__PURE__ */ t(Ht, { component: "h2", sx: { backgroundColor: "transparent", px: 24 }, children: /* @__PURE__ */ l(
|
|
24072
24069
|
De,
|
|
24073
24070
|
{
|
|
@@ -24075,19 +24072,19 @@ const Oa = ({
|
|
|
24075
24072
|
direction: "row",
|
|
24076
24073
|
sx: { justifyContent: "space-between", color: "grey.700" },
|
|
24077
24074
|
children: [
|
|
24078
|
-
/* @__PURE__ */ t(C, { bold: !0, variant: "Body", children:
|
|
24079
|
-
/* @__PURE__ */ t(C, { bold: !0, variant: "Body", children: P(
|
|
24075
|
+
/* @__PURE__ */ t(C, { bold: !0, variant: "Body", children: v }),
|
|
24076
|
+
/* @__PURE__ */ t(C, { bold: !0, variant: "Body", children: P(T, "0,0.00") })
|
|
24080
24077
|
]
|
|
24081
24078
|
}
|
|
24082
24079
|
) }),
|
|
24083
|
-
children: /* @__PURE__ */ t(De, { children: S.map((
|
|
24080
|
+
children: /* @__PURE__ */ t(De, { children: S.map((w, D, L) => {
|
|
24084
24081
|
const k = D === L.length - 1;
|
|
24085
24082
|
return /* @__PURE__ */ l(g.Fragment, { children: [
|
|
24086
24083
|
/* @__PURE__ */ t(
|
|
24087
24084
|
Ei,
|
|
24088
24085
|
{
|
|
24089
|
-
account:
|
|
24090
|
-
onRowClick: () => f(
|
|
24086
|
+
account: w,
|
|
24087
|
+
onRowClick: () => f(w),
|
|
24091
24088
|
shouldShowConnectionStatus: !0
|
|
24092
24089
|
}
|
|
24093
24090
|
),
|
|
@@ -24108,7 +24105,7 @@ const Oa = ({
|
|
|
24108
24105
|
}
|
|
24109
24106
|
}
|
|
24110
24107
|
)
|
|
24111
|
-
] },
|
|
24108
|
+
] }, w.guid);
|
|
24112
24109
|
}) })
|
|
24113
24110
|
}
|
|
24114
24111
|
) });
|
|
@@ -24116,9 +24113,9 @@ const Oa = ({
|
|
|
24116
24113
|
return /* @__PURE__ */ l(O, { sx: { pt: 24 }, children: [
|
|
24117
24114
|
d.map((y) => {
|
|
24118
24115
|
const S = a.filter(
|
|
24119
|
-
(
|
|
24120
|
-
),
|
|
24121
|
-
(
|
|
24116
|
+
(v) => v.account_type === y && !v.is_closed && !v.is_hidden
|
|
24117
|
+
), T = S.reduce(
|
|
24118
|
+
(v, w) => (w.balance || 0) + v,
|
|
24122
24119
|
0
|
|
24123
24120
|
);
|
|
24124
24121
|
return S.length === 0 ? null : /* @__PURE__ */ t(
|
|
@@ -24133,22 +24130,22 @@ const Oa = ({
|
|
|
24133
24130
|
sx: { display: "flex", justifyContent: "space-between" },
|
|
24134
24131
|
children: [
|
|
24135
24132
|
/* @__PURE__ */ t(C, { bold: !0, variant: "Body", children: i.account_types[y] }),
|
|
24136
|
-
/* @__PURE__ */ t(C, { bold: !0, variant: "Body", children: P(
|
|
24133
|
+
/* @__PURE__ */ t(C, { bold: !0, variant: "Body", children: P(T, "0,0.00") })
|
|
24137
24134
|
]
|
|
24138
24135
|
}
|
|
24139
24136
|
) }),
|
|
24140
|
-
children: /* @__PURE__ */ t(De, { children: S.map((
|
|
24141
|
-
const
|
|
24137
|
+
children: /* @__PURE__ */ t(De, { children: S.map((v) => {
|
|
24138
|
+
const w = a.indexOf(v) === a.length - 1, D = S.indexOf(v) === S.length - 1;
|
|
24142
24139
|
return /* @__PURE__ */ l(g.Fragment, { children: [
|
|
24143
24140
|
/* @__PURE__ */ t(
|
|
24144
24141
|
Ei,
|
|
24145
24142
|
{
|
|
24146
|
-
account:
|
|
24147
|
-
onRowClick: () => f(
|
|
24143
|
+
account: v,
|
|
24144
|
+
onRowClick: () => f(v),
|
|
24148
24145
|
shouldShowConnectionStatus: !0
|
|
24149
24146
|
}
|
|
24150
24147
|
),
|
|
24151
|
-
(!
|
|
24148
|
+
(!w || h.length > 0 || u.length > 0) && /* @__PURE__ */ t(
|
|
24152
24149
|
F,
|
|
24153
24150
|
{
|
|
24154
24151
|
sx: {
|
|
@@ -24157,7 +24154,7 @@ const Oa = ({
|
|
|
24157
24154
|
}
|
|
24158
24155
|
}
|
|
24159
24156
|
)
|
|
24160
|
-
] },
|
|
24157
|
+
] }, v.guid);
|
|
24161
24158
|
}) })
|
|
24162
24159
|
},
|
|
24163
24160
|
y
|
|
@@ -24179,7 +24176,7 @@ const Oa = ({
|
|
|
24179
24176
|
}
|
|
24180
24177
|
)
|
|
24181
24178
|
] });
|
|
24182
|
-
}, S0 =
|
|
24179
|
+
}, S0 = x(E0), A0 = ({ onBackClick: e, sx: n = {} }) => {
|
|
24183
24180
|
const [i, a] = g.useState(!1), [o, r] = g.useState(!1), { config: s } = kt(), { accounts: c } = fe(), { accounts: d, connect: _ } = I(), { isCopyLoaded: u, isInitialized: h, setSelectedAccounts: m, selectedAccountGuids: p } = le(), { isDesktop: f } = he(), { onEvent: E } = X();
|
|
24184
24181
|
g.useEffect(() => {
|
|
24185
24182
|
m(c);
|
|
@@ -24229,7 +24226,7 @@ const Oa = ({
|
|
|
24229
24226
|
] }) : /* @__PURE__ */ t(de, {})
|
|
24230
24227
|
}
|
|
24231
24228
|
) : /* @__PURE__ */ t(de, {});
|
|
24232
|
-
}, v2 =
|
|
24229
|
+
}, v2 = x(A0), T0 = ({ onPrimaryCtaClick: e, sx: n }) => {
|
|
24233
24230
|
const { visibleAccounts: i } = fe(), { accounts: a } = I(), { isCopyLoaded: o, isInitialized: r, selectedAccounts: s, setSelectedAccounts: c } = le();
|
|
24234
24231
|
return g.useEffect(() => {
|
|
24235
24232
|
c(i);
|
|
@@ -24260,7 +24257,7 @@ const Oa = ({
|
|
|
24260
24257
|
] }) : /* @__PURE__ */ t(de, {})
|
|
24261
24258
|
}
|
|
24262
24259
|
) : /* @__PURE__ */ t(de, {});
|
|
24263
|
-
}, N2 =
|
|
24260
|
+
}, N2 = x(T0), x0 = () => /* @__PURE__ */ l(
|
|
24264
24261
|
"svg",
|
|
24265
24262
|
{
|
|
24266
24263
|
fill: "none",
|
|
@@ -24716,7 +24713,7 @@ const Oa = ({
|
|
|
24716
24713
|
}
|
|
24717
24714
|
)
|
|
24718
24715
|
] });
|
|
24719
|
-
}, w0 =
|
|
24716
|
+
}, w0 = x(I0), v0 = ({
|
|
24720
24717
|
onPrimaryCtaClick: e = () => {
|
|
24721
24718
|
},
|
|
24722
24719
|
sx: n
|
|
@@ -24745,7 +24742,7 @@ const Oa = ({
|
|
|
24745
24742
|
]
|
|
24746
24743
|
}
|
|
24747
24744
|
) : /* @__PURE__ */ t(de, {});
|
|
24748
|
-
}, D2 =
|
|
24745
|
+
}, D2 = x(v0);
|
|
24749
24746
|
class ds {
|
|
24750
24747
|
fetchInstance;
|
|
24751
24748
|
constructor(n, i) {
|
|
@@ -25007,7 +25004,7 @@ const R0 = () => {
|
|
|
25007
25004
|
}
|
|
25008
25005
|
)
|
|
25009
25006
|
] });
|
|
25010
|
-
}, L0 =
|
|
25007
|
+
}, L0 = x(R0), O0 = () => {
|
|
25011
25008
|
const { response: e, setResponse: n } = go(), { analytics: i } = I();
|
|
25012
25009
|
return /* @__PURE__ */ t(
|
|
25013
25010
|
En,
|
|
@@ -25022,7 +25019,7 @@ const R0 = () => {
|
|
|
25022
25019
|
value: e
|
|
25023
25020
|
}
|
|
25024
25021
|
);
|
|
25025
|
-
}, M0 =
|
|
25022
|
+
}, M0 = x(O0), k0 = () => {
|
|
25026
25023
|
const { onEvent: e } = X(), n = ye(), {
|
|
25027
25024
|
surveyId: i,
|
|
25028
25025
|
question: a,
|
|
@@ -25042,20 +25039,20 @@ const R0 = () => {
|
|
|
25042
25039
|
$survey_id: i
|
|
25043
25040
|
});
|
|
25044
25041
|
}, [h]);
|
|
25045
|
-
const
|
|
25042
|
+
const T = () => {
|
|
25046
25043
|
e("survey dismissed", {
|
|
25047
25044
|
$survey_id: i
|
|
25048
25045
|
}), u(), S(!1);
|
|
25049
|
-
}, w = () => {
|
|
25050
|
-
r();
|
|
25051
25046
|
}, v = () => {
|
|
25047
|
+
r();
|
|
25048
|
+
}, w = () => {
|
|
25052
25049
|
e("survey sent", _), u(), S(!0);
|
|
25053
25050
|
};
|
|
25054
25051
|
return f ? !a && !y ? null : /* @__PURE__ */ l(
|
|
25055
25052
|
Mn,
|
|
25056
25053
|
{
|
|
25057
25054
|
closeLabel: p.close_aria,
|
|
25058
|
-
onClose:
|
|
25055
|
+
onClose: T,
|
|
25059
25056
|
sx: {
|
|
25060
25057
|
"& .MuiCardHeader-root": {
|
|
25061
25058
|
px: 24,
|
|
@@ -25084,7 +25081,7 @@ const R0 = () => {
|
|
|
25084
25081
|
ee,
|
|
25085
25082
|
{
|
|
25086
25083
|
disabled: !o && !d,
|
|
25087
|
-
onClick: o ?
|
|
25084
|
+
onClick: o ? w : v,
|
|
25088
25085
|
sx: {
|
|
25089
25086
|
borderColor: n.palette.border.light,
|
|
25090
25087
|
"&:hover": {
|
|
@@ -25105,7 +25102,7 @@ const R0 = () => {
|
|
|
25105
25102
|
]
|
|
25106
25103
|
}
|
|
25107
25104
|
) : /* @__PURE__ */ t(de, {});
|
|
25108
|
-
}, R2 =
|
|
25105
|
+
}, R2 = x(k0), us = 5, G0 = 100, B0 = 25, H0 = (e) => {
|
|
25109
25106
|
const n = (o) => {
|
|
25110
25107
|
o.active || e.alphaTarget(0.3).restart(), o.subject.fx = o.subject.x, o.subject.fy = o.subject.y;
|
|
25111
25108
|
}, i = (o) => {
|
|
@@ -25266,7 +25263,7 @@ const j0 = ({
|
|
|
25266
25263
|
return _i = g.useMemo(() => V0(o), [o]), g.useEffect(() => {
|
|
25267
25264
|
W0(_i, e, n), i && F0(_i);
|
|
25268
25265
|
}, [_i, e, n]), /* @__PURE__ */ t("svg", { height: e, style: { overflow: "visible" }, width: Math.abs(n), children: _i.nodes().map((r) => /* @__PURE__ */ t(z0, { bubble: r, isDraggable: i, onClick: a }, r.guid)) });
|
|
25269
|
-
}, $0 =
|
|
25266
|
+
}, $0 = x(j0), X0 = ({
|
|
25270
25267
|
isMiniWidget: e = !1,
|
|
25271
25268
|
onConnectAccountsClick: n,
|
|
25272
25269
|
createBudgetOnClick: i
|
|
@@ -25342,7 +25339,7 @@ const j0 = ({
|
|
|
25342
25339
|
}
|
|
25343
25340
|
}
|
|
25344
25341
|
) });
|
|
25345
|
-
}, ml =
|
|
25342
|
+
}, ml = x(
|
|
25346
25343
|
({
|
|
25347
25344
|
createBudgetOnClick: e = () => {
|
|
25348
25345
|
},
|
|
@@ -25352,9 +25349,9 @@ const j0 = ({
|
|
|
25352
25349
|
shouldShowZeroState: o,
|
|
25353
25350
|
unavailableWidth: r = 24
|
|
25354
25351
|
}) => {
|
|
25355
|
-
const { onEvent: s } = X(), { setSelectedBudget: c } = gt(), { isLoadingCategoryTotals: d } = Ue(), { isInitialized: _ } = le(), { accounts: u } = I(), { availableWidth: h } = un(), { isMobile: m } = he(), [p, f] = g.useState(!1), E = g.useMemo(() => h - r, [h]), y = (
|
|
25356
|
-
c(
|
|
25357
|
-
budget_category:
|
|
25352
|
+
const { onEvent: s } = X(), { setSelectedBudget: c } = gt(), { isLoadingCategoryTotals: d } = Ue(), { isInitialized: _ } = le(), { accounts: u } = I(), { availableWidth: h } = un(), { isMobile: m } = he(), [p, f] = g.useState(!1), E = g.useMemo(() => h - r, [h]), y = (T) => {
|
|
25353
|
+
c(T), s(W.BUDGETS_CLICK_BUDGET_CATEGORY, {
|
|
25354
|
+
budget_category: T.category.name,
|
|
25358
25355
|
click_type: "bubble"
|
|
25359
25356
|
});
|
|
25360
25357
|
}, S = () => {
|
|
@@ -25387,7 +25384,7 @@ const j0 = ({
|
|
|
25387
25384
|
)
|
|
25388
25385
|
] });
|
|
25389
25386
|
}
|
|
25390
|
-
), q0 =
|
|
25387
|
+
), q0 = x(() => {
|
|
25391
25388
|
const { budgets: e } = I(), { totalBudgeted: n } = gt(), { incomeTotal: i } = tt(), a = i - n;
|
|
25392
25389
|
return /* @__PURE__ */ l(b, { direction: "row", justifyContent: "center", my: 16, spacing: 20, children: [
|
|
25393
25390
|
/* @__PURE__ */ l(b, { alignItems: "center", children: [
|
|
@@ -25405,7 +25402,7 @@ const j0 = ({
|
|
|
25405
25402
|
/* @__PURE__ */ t(C, { color: "secondary", variant: "Small", children: e.remaining })
|
|
25406
25403
|
] })
|
|
25407
25404
|
] });
|
|
25408
|
-
}), Z0 =
|
|
25405
|
+
}), Z0 = x(
|
|
25409
25406
|
({ category: e }) => {
|
|
25410
25407
|
const { budgets: n } = I(), { budgets: i } = gt(), a = g.useMemo(() => {
|
|
25411
25408
|
const o = i.find((c) => c.category_guid === e.guid), r = P(e.totalAverageAmount, "0,0"), s = o ? A(n.recalculate_previous_budget, P(o.amount, "0,0")) : n.recalculate_new_budget;
|
|
@@ -25470,7 +25467,7 @@ const j0 = ({
|
|
|
25470
25467
|
}
|
|
25471
25468
|
)
|
|
25472
25469
|
] });
|
|
25473
|
-
}, J0 =
|
|
25470
|
+
}, J0 = x(({ category: e, onAddBudget: n }) => {
|
|
25474
25471
|
const { budgets: i, common: a } = I(), [o, r] = g.useState(!1), [s, c] = g.useState(
|
|
25475
25472
|
`${e.totalAmount === 0 ? "" : e.totalAmount}`
|
|
25476
25473
|
);
|
|
@@ -25499,7 +25496,7 @@ const j0 = ({
|
|
|
25499
25496
|
}
|
|
25500
25497
|
)
|
|
25501
25498
|
] });
|
|
25502
|
-
}), pl =
|
|
25499
|
+
}), pl = x(({ onRecalculateBudgets: e }) => {
|
|
25503
25500
|
const { budgets: n } = I(), { addBudget: i, setAlert: a, unbudgetedCategories: o } = gt(), r = async (s, c) => {
|
|
25504
25501
|
await i(s, c), a(A(n.alert_budget_created, s.name));
|
|
25505
25502
|
};
|
|
@@ -25518,7 +25515,7 @@ const j0 = ({
|
|
|
25518
25515
|
}), eb = (e) => {
|
|
25519
25516
|
const n = ye(), { onEvent: i } = X(), { detailedBudgets: a, isDataLoaded: o, loadBudgetData: r, setTheme: s } = gt(), { budgets: c, common: d } = I(), { isCopyLoaded: _, isInitialized: u, selectedAccounts: h } = le(), { reloadCategoryTotals: m } = Ue(), p = x_(), f = a.length === 0, [E, y] = g.useState(!1), S = () => {
|
|
25520
25517
|
y(!0), i(W.BUDGETS_CLICK_ADD);
|
|
25521
|
-
},
|
|
25518
|
+
}, T = () => {
|
|
25522
25519
|
y(!1);
|
|
25523
25520
|
};
|
|
25524
25521
|
return g.useEffect(() => {
|
|
@@ -25558,13 +25555,13 @@ const j0 = ({
|
|
|
25558
25555
|
isOpen: E,
|
|
25559
25556
|
onClose: () => y(!1),
|
|
25560
25557
|
title: c.add_new_title,
|
|
25561
|
-
children: /* @__PURE__ */ t(pl, { onRecalculateBudgets:
|
|
25558
|
+
children: /* @__PURE__ */ t(pl, { onRecalculateBudgets: T })
|
|
25562
25559
|
}
|
|
25563
25560
|
)
|
|
25564
25561
|
]
|
|
25565
25562
|
}
|
|
25566
25563
|
) : /* @__PURE__ */ t(de, {});
|
|
25567
|
-
}, L2 =
|
|
25564
|
+
}, L2 = x(eb), Cl = ({ budget: e }) => {
|
|
25568
25565
|
const {
|
|
25569
25566
|
amount: n,
|
|
25570
25567
|
budgetColors: { background: i },
|
|
@@ -25584,14 +25581,14 @@ const j0 = ({
|
|
|
25584
25581
|
/* @__PURE__ */ t(C, { bold: !0, variant: "XSmall", children: a }),
|
|
25585
25582
|
/* @__PURE__ */ t(ei, { data: c, height: 10 })
|
|
25586
25583
|
] }) }) });
|
|
25587
|
-
}, tb =
|
|
25584
|
+
}, tb = x(() => {
|
|
25588
25585
|
const { budgets: e } = I();
|
|
25589
25586
|
return /* @__PURE__ */ l(b, { alignItems: "center", gap: 12, height: "auto", mb: 24, mt: 24, children: [
|
|
25590
25587
|
/* @__PURE__ */ t(K, { color: "secondary", name: "bubble_chart", sx: { fontSize: 32 } }),
|
|
25591
25588
|
/* @__PURE__ */ t(C, { bold: !0, color: "secondary", variant: "Small", children: e.zero_state_no_sub_budgets }),
|
|
25592
25589
|
/* @__PURE__ */ t(C, { color: "text.secondary", variant: "XSmall", children: e.zero_state_no_sub_budgets_description })
|
|
25593
25590
|
] });
|
|
25594
|
-
}), nb =
|
|
25591
|
+
}), nb = x(({ budget: e }) => {
|
|
25595
25592
|
const {
|
|
25596
25593
|
amount: n,
|
|
25597
25594
|
budgetColors: { background: i },
|
|
@@ -25612,12 +25609,12 @@ const j0 = ({
|
|
|
25612
25609
|
}
|
|
25613
25610
|
)
|
|
25614
25611
|
] }) });
|
|
25615
|
-
}), ib =
|
|
25612
|
+
}), ib = x(({ category: e, parentBudget: n }) => {
|
|
25616
25613
|
const { budgets: i, common: a } = I(), { setExpandedGuid: o, setOnSelect: r } = _n(), { addBudget: s } = gt(), [c, d] = g.useState(!1), [_, u] = g.useState(!1), [h, m] = g.useState(""), [p, f] = g.useState(void 0);
|
|
25617
25614
|
g.useEffect(() => {
|
|
25618
25615
|
r((S) => {
|
|
25619
|
-
const
|
|
25620
|
-
|
|
25616
|
+
const T = e.subCategories.find((v) => v.guid === S);
|
|
25617
|
+
T && (f(T), m(`${T.currentAmount === 0 ? "" : T.currentAmount}`), u(!0));
|
|
25621
25618
|
});
|
|
25622
25619
|
}, []);
|
|
25623
25620
|
const E = () => {
|
|
@@ -25664,12 +25661,12 @@ const j0 = ({
|
|
|
25664
25661
|
}
|
|
25665
25662
|
)
|
|
25666
25663
|
] });
|
|
25667
|
-
}), ab =
|
|
25664
|
+
}), ab = x(({ budget: e }) => {
|
|
25668
25665
|
const { category: n, subBudgets: i } = e, { budgets: a, common: o } = I(), { deleteBudget: r, selectedSubBudget: s, setSelectedSubBudget: c, updateBudget: d } = gt(), { filter: _, setFilter: u } = Re(), [h, m] = g.useState(!1), [p, f] = g.useState(!1), [E, y] = g.useState("");
|
|
25669
25666
|
g.useEffect(() => {
|
|
25670
25667
|
s && (y(`${s.amount}`), u({
|
|
25671
25668
|
..._,
|
|
25672
|
-
custom: (
|
|
25669
|
+
custom: (w) => w.category_guid === s.category_guid
|
|
25673
25670
|
}));
|
|
25674
25671
|
}, [s]);
|
|
25675
25672
|
const S = async () => {
|
|
@@ -25677,20 +25674,20 @@ const j0 = ({
|
|
|
25677
25674
|
...s,
|
|
25678
25675
|
amount: Number(E)
|
|
25679
25676
|
});
|
|
25680
|
-
},
|
|
25681
|
-
s && await r(s.guid), f(!1),
|
|
25682
|
-
},
|
|
25677
|
+
}, T = async () => {
|
|
25678
|
+
s && await r(s.guid), f(!1), v();
|
|
25679
|
+
}, v = () => {
|
|
25683
25680
|
u({
|
|
25684
25681
|
..._,
|
|
25685
|
-
custom: (
|
|
25682
|
+
custom: (w) => w.category_guid === e.category_guid || w.top_level_category_guid === e.category_guid
|
|
25686
25683
|
}), c(void 0);
|
|
25687
25684
|
};
|
|
25688
25685
|
return /* @__PURE__ */ l(g.Fragment, { children: [
|
|
25689
25686
|
/* @__PURE__ */ l(ie, { sx: { bgcolor: "background.paper" }, children: [
|
|
25690
|
-
i.length === 0 ? /* @__PURE__ */ t(tb, {}) : i.map((
|
|
25691
|
-
/* @__PURE__ */ t(nb, { budget:
|
|
25687
|
+
i.length === 0 ? /* @__PURE__ */ t(tb, {}) : i.map((w) => /* @__PURE__ */ l(g.Fragment, { children: [
|
|
25688
|
+
/* @__PURE__ */ t(nb, { budget: w }),
|
|
25692
25689
|
/* @__PURE__ */ t(F, {})
|
|
25693
|
-
] },
|
|
25690
|
+
] }, w.guid)),
|
|
25694
25691
|
/* @__PURE__ */ t(ib, { category: n, parentBudget: e })
|
|
25695
25692
|
] }),
|
|
25696
25693
|
/* @__PURE__ */ t(
|
|
@@ -25698,7 +25695,7 @@ const j0 = ({
|
|
|
25698
25695
|
{
|
|
25699
25696
|
ariaLabelClose: o.close_aria,
|
|
25700
25697
|
isOpen: !!s,
|
|
25701
|
-
onClose:
|
|
25698
|
+
onClose: v,
|
|
25702
25699
|
onPrimaryAction: () => m(!0),
|
|
25703
25700
|
onSecondaryAction: () => f(!0),
|
|
25704
25701
|
primaryText: a.details_edit_button,
|
|
@@ -25736,7 +25733,7 @@ const j0 = ({
|
|
|
25736
25733
|
copy: { close_aria: o.close_aria, title: a.delete_title },
|
|
25737
25734
|
isOpen: p,
|
|
25738
25735
|
onClose: () => f(!1),
|
|
25739
|
-
onPrimaryAction:
|
|
25736
|
+
onPrimaryAction: T,
|
|
25740
25737
|
primaryColor: "error",
|
|
25741
25738
|
primaryText: "Delete",
|
|
25742
25739
|
secondaryColor: "secondary",
|
|
@@ -25745,16 +25742,16 @@ const j0 = ({
|
|
|
25745
25742
|
)
|
|
25746
25743
|
] })
|
|
25747
25744
|
] });
|
|
25748
|
-
}), ob =
|
|
25745
|
+
}), ob = x(({ budget: e }) => {
|
|
25749
25746
|
const { is_mobile_webview: n } = kt(), { setAlert: i } = gt(), { budgets: a, common: o, transactions: r } = I(), { isDesktop: s } = he(), {
|
|
25750
25747
|
sortedTransactions: c,
|
|
25751
25748
|
sortedTransactionsWithSplits: d,
|
|
25752
25749
|
tags: _
|
|
25753
25750
|
} = Re(), [u, h] = g.useState(0), [m, p] = g.useState(""), f = g.useMemo(
|
|
25754
|
-
() => c.find((
|
|
25751
|
+
() => c.find((T) => T.guid === m),
|
|
25755
25752
|
[m, c]
|
|
25756
|
-
), E = (
|
|
25757
|
-
h(
|
|
25753
|
+
), E = (T, v) => {
|
|
25754
|
+
h(v);
|
|
25758
25755
|
}, y = () => {
|
|
25759
25756
|
cc(d, _), i(a.alert_csv_downloaded);
|
|
25760
25757
|
}, S = c.length > 0 && !n && s;
|
|
@@ -25800,7 +25797,7 @@ const j0 = ({
|
|
|
25800
25797
|
)
|
|
25801
25798
|
] })
|
|
25802
25799
|
] });
|
|
25803
|
-
}), rb =
|
|
25800
|
+
}), rb = x(() => {
|
|
25804
25801
|
const { selectedAccountGuids: e } = le(), { budgets: n, common: i } = I(), {
|
|
25805
25802
|
dateRange: a,
|
|
25806
25803
|
deleteBudget: o,
|
|
@@ -25809,21 +25806,21 @@ const j0 = ({
|
|
|
25809
25806
|
setAlert: c,
|
|
25810
25807
|
setSelectedBudget: d,
|
|
25811
25808
|
updateBudget: _
|
|
25812
|
-
} = gt(), { setFilter: u } = Re(), [h, m] = g.useState(!1), [p, f] = g.useState(!1), [E, y] = g.useState(!1), [S,
|
|
25809
|
+
} = gt(), { setFilter: u } = Re(), [h, m] = g.useState(!1), [p, f] = g.useState(!1), [E, y] = g.useState(!1), [S, T] = g.useState("");
|
|
25813
25810
|
g.useEffect(() => {
|
|
25814
|
-
r && !s && (
|
|
25811
|
+
r && !s && (T(`${r.amount}`), m(!0), u({
|
|
25815
25812
|
accounts: e,
|
|
25816
25813
|
dateRange: a,
|
|
25817
25814
|
custom: (L) => L.category_guid === r.category_guid || L.top_level_category_guid === r.category_guid
|
|
25818
25815
|
}));
|
|
25819
25816
|
}, [r]);
|
|
25820
|
-
const
|
|
25817
|
+
const v = async () => {
|
|
25821
25818
|
r && (await _({
|
|
25822
25819
|
...r,
|
|
25823
25820
|
amount: Number(S),
|
|
25824
25821
|
percentage: r.category.totalAmount / Number(S) * 100
|
|
25825
25822
|
}), c(A(n.alert_budget_updated, r.category.name)));
|
|
25826
|
-
},
|
|
25823
|
+
}, w = async () => {
|
|
25827
25824
|
r && (await o(r.guid), c(A(n.alert_budget_deleted, r.category.name))), y(!1), D();
|
|
25828
25825
|
}, D = () => {
|
|
25829
25826
|
m(!1), setTimeout(() => {
|
|
@@ -25854,14 +25851,14 @@ const j0 = ({
|
|
|
25854
25851
|
disablePrimaryButton: Number(S) <= 0,
|
|
25855
25852
|
isOpen: p,
|
|
25856
25853
|
onClose: () => f(!1),
|
|
25857
|
-
onPrimaryAction:
|
|
25854
|
+
onPrimaryAction: v,
|
|
25858
25855
|
primaryText: n.edit_save_button,
|
|
25859
25856
|
children: /* @__PURE__ */ t(
|
|
25860
25857
|
Aa,
|
|
25861
25858
|
{
|
|
25862
25859
|
amount: S,
|
|
25863
25860
|
categoryName: r.category.name,
|
|
25864
|
-
onAmountChanged:
|
|
25861
|
+
onAmountChanged: T
|
|
25865
25862
|
}
|
|
25866
25863
|
)
|
|
25867
25864
|
}
|
|
@@ -25872,7 +25869,7 @@ const j0 = ({
|
|
|
25872
25869
|
copy: { close_aria: i.close_aria, title: n.delete_title },
|
|
25873
25870
|
isOpen: E,
|
|
25874
25871
|
onClose: () => y(!1),
|
|
25875
|
-
onPrimaryAction:
|
|
25872
|
+
onPrimaryAction: w,
|
|
25876
25873
|
primaryColor: "error",
|
|
25877
25874
|
primaryText: n.details_delete_button,
|
|
25878
25875
|
secondaryColor: "secondary",
|
|
@@ -25909,7 +25906,7 @@ const j0 = ({
|
|
|
25909
25906
|
}
|
|
25910
25907
|
)
|
|
25911
25908
|
] }) });
|
|
25912
|
-
}, cb =
|
|
25909
|
+
}, cb = x(() => {
|
|
25913
25910
|
const { onEvent: e } = X(), { budgets: n } = I(), { detailedBudgets: i, setSelectedBudget: a } = gt(), o = (r) => {
|
|
25914
25911
|
a(r), e(W.BUDGETS_CLICK_BUDGET_CATEGORY, {
|
|
25915
25912
|
budget_category: r.category.name,
|
|
@@ -25923,36 +25920,36 @@ const j0 = ({
|
|
|
25923
25920
|
/* @__PURE__ */ t(F, {})
|
|
25924
25921
|
] }, r.guid)) }) })
|
|
25925
25922
|
] });
|
|
25926
|
-
}), lb =
|
|
25923
|
+
}), lb = x(() => {
|
|
25927
25924
|
const e = ye(), { onEvent: n } = X(), { visibleAccounts: i } = fe(), { budgets: a, common: o, recurring: r } = I(), { incomeCategories: s, spendCategories: c } = Ue(), { detailedBudgets: d, totalBudgeted: _ } = gt(), { incomeTotal: u } = tt(), { setFilter: h } = Re(), [m, p] = g.useState(!1), [f, E] = g.useMemo(() => {
|
|
25928
|
-
const
|
|
25929
|
-
let
|
|
25930
|
-
|
|
25925
|
+
const v = c.reduce((k, B) => k + B.totalAmount, 0);
|
|
25926
|
+
let w = v / _;
|
|
25927
|
+
w > 1 && (w = 1);
|
|
25931
25928
|
let D = e.palette.success.main;
|
|
25932
|
-
|
|
25929
|
+
w > 0.8 && w < 1 ? D = e.palette.warning.main : w >= 1 && (D = e.palette.error.main);
|
|
25933
25930
|
const L = [
|
|
25934
25931
|
{
|
|
25935
25932
|
color: D,
|
|
25936
|
-
percentage: `${
|
|
25933
|
+
percentage: `${w}`
|
|
25937
25934
|
}
|
|
25938
25935
|
];
|
|
25939
|
-
return [
|
|
25936
|
+
return [v, L];
|
|
25940
25937
|
}, [d, c]), [y, S] = g.useMemo(() => {
|
|
25941
|
-
const
|
|
25938
|
+
const v = Math.abs(
|
|
25942
25939
|
s.reduce((L, k) => L + k.totalAmount, 0)
|
|
25943
25940
|
);
|
|
25944
|
-
let
|
|
25945
|
-
|
|
25941
|
+
let w = v / u;
|
|
25942
|
+
w > 1 && (w = 1);
|
|
25946
25943
|
const D = [
|
|
25947
25944
|
{
|
|
25948
25945
|
color: e.palette.secondary.main,
|
|
25949
|
-
percentage: `${
|
|
25946
|
+
percentage: `${w}`
|
|
25950
25947
|
}
|
|
25951
25948
|
];
|
|
25952
|
-
return [
|
|
25953
|
-
}, [s, u]),
|
|
25949
|
+
return [v, D];
|
|
25950
|
+
}, [s, u]), T = () => {
|
|
25954
25951
|
h({
|
|
25955
|
-
accounts: i.map((
|
|
25952
|
+
accounts: i.map((v) => v.guid),
|
|
25956
25953
|
dateRange: {
|
|
25957
25954
|
start: xt(/* @__PURE__ */ new Date(), 90),
|
|
25958
25955
|
end: /* @__PURE__ */ new Date()
|
|
@@ -25978,7 +25975,7 @@ const j0 = ({
|
|
|
25978
25975
|
He,
|
|
25979
25976
|
{
|
|
25980
25977
|
"aria-label": r.manage_income,
|
|
25981
|
-
onClick:
|
|
25978
|
+
onClick: T,
|
|
25982
25979
|
sx: { p: 0 },
|
|
25983
25980
|
children: /* @__PURE__ */ t(K, { color: "primary", name: "edit" })
|
|
25984
25981
|
}
|
|
@@ -26006,7 +26003,7 @@ const j0 = ({
|
|
|
26006
26003
|
}
|
|
26007
26004
|
)
|
|
26008
26005
|
] });
|
|
26009
|
-
}), hs = 480, O2 =
|
|
26006
|
+
}), hs = 480, O2 = x(({ onBackClick: e, sx: n }) => {
|
|
26010
26007
|
const i = ye(), { onEvent: a } = X(), { visibleAccounts: o } = fe(), { budgets: r, common: s } = I(), { isCopyLoaded: c, isInitialized: d, selectedAccounts: _, setDisplayedDate: u, setSelectedAccounts: h } = le(), {
|
|
26011
26008
|
alert: m,
|
|
26012
26009
|
dateRange: p,
|
|
@@ -26014,15 +26011,15 @@ const j0 = ({
|
|
|
26014
26011
|
loadBudgetData: E,
|
|
26015
26012
|
setDateRange: y,
|
|
26016
26013
|
setAlert: S,
|
|
26017
|
-
setTheme:
|
|
26018
|
-
detailedBudgets:
|
|
26019
|
-
} = gt(), { loadRepeatingTransactions:
|
|
26014
|
+
setTheme: T,
|
|
26015
|
+
detailedBudgets: v
|
|
26016
|
+
} = gt(), { loadRepeatingTransactions: w, setDateRange: D } = tt(), { reloadCategoryTotals: L } = Ue(), { isSmallTablet: k, isMobile: B, isSmallMobile: M } = he(), R = k || B || M, [G, q] = g.useState(!1);
|
|
26020
26017
|
g.useEffect(() => {
|
|
26021
|
-
|
|
26018
|
+
T(i), h(o), u(p.start, p.end), a(W.BUDGETS_VIEW);
|
|
26022
26019
|
}, []), g.useEffect(() => {
|
|
26023
26020
|
h(o);
|
|
26024
26021
|
}, [o]), g.useEffect(() => {
|
|
26025
|
-
d && (L(_, p.start, p.end).finally(), D(p), f || (
|
|
26022
|
+
d && (L(_, p.start, p.end).finally(), D(p), f || (w().finally(), E().finally()));
|
|
26026
26023
|
}, [d, _, p]);
|
|
26027
26024
|
const se = (me) => {
|
|
26028
26025
|
y({ start: me[0] || /* @__PURE__ */ new Date(), end: me[1] || /* @__PURE__ */ new Date() });
|
|
@@ -26065,11 +26062,11 @@ const j0 = ({
|
|
|
26065
26062
|
createBudgetOnClick: Ce,
|
|
26066
26063
|
height: R ? 450 : 800,
|
|
26067
26064
|
isDraggable: !0,
|
|
26068
|
-
shouldShowZeroState:
|
|
26065
|
+
shouldShowZeroState: v.length === 0,
|
|
26069
26066
|
unavailableWidth: R ? 0 : hs
|
|
26070
26067
|
}
|
|
26071
26068
|
) }),
|
|
26072
|
-
|
|
26069
|
+
v.length !== 0 && /* @__PURE__ */ l(
|
|
26073
26070
|
b,
|
|
26074
26071
|
{
|
|
26075
26072
|
gap: 24,
|
|
@@ -26121,7 +26118,7 @@ const j0 = ({
|
|
|
26121
26118
|
]
|
|
26122
26119
|
}
|
|
26123
26120
|
);
|
|
26124
|
-
}), db =
|
|
26121
|
+
}), db = x(() => {
|
|
26125
26122
|
const e = ye(), {
|
|
26126
26123
|
appDataStore: { banner: n, loadBanner: i, user: a }
|
|
26127
26124
|
} = oi();
|
|
@@ -26190,7 +26187,7 @@ const j0 = ({
|
|
|
26190
26187
|
children: n.add_accounts
|
|
26191
26188
|
}
|
|
26192
26189
|
) });
|
|
26193
|
-
}, _b =
|
|
26190
|
+
}, _b = x(ub), hb = () => {
|
|
26194
26191
|
const [e, n] = g.useState(!1), i = au("(max-width:320px)"), { visibleAccounts: a } = fe(), { selectedAccountGuids: o, setSelectedAccountGuids: r } = le(), { common: s, connect: c } = I(), { config: d } = kt(), { isMobile: _ } = he(), u = {
|
|
26195
26192
|
accountFilterOptionsCopy: {
|
|
26196
26193
|
accountTypeAccounts: s.account_filter.account_type_accounts,
|
|
@@ -26245,7 +26242,7 @@ const j0 = ({
|
|
|
26245
26242
|
}
|
|
26246
26243
|
)
|
|
26247
26244
|
] });
|
|
26248
|
-
}, gb =
|
|
26245
|
+
}, gb = x(hb);
|
|
26249
26246
|
var Vi = /* @__PURE__ */ ((e) => (e[e.Main = 0] = "Main", e[e.RightSide = 1] = "RightSide", e[e.Disabled = 2] = "Disabled", e))(Vi || {});
|
|
26250
26247
|
const mb = ({ widgets: e, isLoading: n }) => {
|
|
26251
26248
|
const { isDesktop: i, isMobile: a } = he(), { copyStore: o } = oi(), { setSelectedAccounts: r } = le(), { visibleAccounts: s } = fe();
|
|
@@ -26279,7 +26276,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
26279
26276
|
/* @__PURE__ */ t(mn, { height: 300, variant: "rounded", width: "100%" })
|
|
26280
26277
|
] }) : /* @__PURE__ */ t(b, { direction: "column", spacing: 24, children: _.map((u) => /* @__PURE__ */ t(g.Fragment, { children: u.component }, u.index)) }) })
|
|
26281
26278
|
] });
|
|
26282
|
-
}, M2 =
|
|
26279
|
+
}, M2 = x(mb), Uo = ({ sx: e = {} }) => {
|
|
26283
26280
|
const { investments: n } = I(), { onEvent: i } = X(), { setShowConnectionsWidget: a } = Fn();
|
|
26284
26281
|
return /* @__PURE__ */ l(b, { sx: { alignItems: "center", gap: 24, height: 164, p: 24, width: "100%", ...e }, children: [
|
|
26285
26282
|
/* @__PURE__ */ l(
|
|
@@ -26401,32 +26398,32 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
26401
26398
|
), m = u + d;
|
|
26402
26399
|
Cb.forEach((f, E) => {
|
|
26403
26400
|
const y = c.filter(
|
|
26404
|
-
(
|
|
26401
|
+
(v) => !!v[f.name]
|
|
26405
26402
|
);
|
|
26406
26403
|
let S = y.reduce(
|
|
26407
|
-
(
|
|
26404
|
+
(v, w) => v + Ki(w) * w[f.name] / 100,
|
|
26408
26405
|
0
|
|
26409
26406
|
);
|
|
26410
|
-
const
|
|
26407
|
+
const T = bb(
|
|
26411
26408
|
y,
|
|
26412
26409
|
f.name,
|
|
26413
26410
|
S
|
|
26414
26411
|
);
|
|
26415
26412
|
if (f.name === "allocations_cash" && d > 0) {
|
|
26416
26413
|
S += d;
|
|
26417
|
-
const
|
|
26414
|
+
const v = {
|
|
26418
26415
|
displayName: n.cash_balance_display_name,
|
|
26419
26416
|
name: "allocations_name",
|
|
26420
26417
|
value: d,
|
|
26421
26418
|
percentage: d / m
|
|
26422
26419
|
};
|
|
26423
|
-
|
|
26420
|
+
T.push(v);
|
|
26424
26421
|
}
|
|
26425
26422
|
S > 0 && (o.push({
|
|
26426
26423
|
name: f.name,
|
|
26427
26424
|
displayName: a[E],
|
|
26428
26425
|
guid: `${f.name}-${E}`,
|
|
26429
|
-
holdings:
|
|
26426
|
+
holdings: T,
|
|
26430
26427
|
percentage: S / m,
|
|
26431
26428
|
value: S,
|
|
26432
26429
|
color: pb[f.name]
|
|
@@ -26566,7 +26563,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
26566
26563
|
totalLabel: d
|
|
26567
26564
|
}) => {
|
|
26568
26565
|
const _ = ye(), u = _.palette.mode === "dark", h = g.useMemo(
|
|
26569
|
-
() => s ? e.investmentsData.find(({ guid:
|
|
26566
|
+
() => s ? e.investmentsData.find(({ guid: T }) => T === s) : void 0,
|
|
26570
26567
|
[s]
|
|
26571
26568
|
), {
|
|
26572
26569
|
investments: { allocation: m }
|
|
@@ -26661,7 +26658,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
26661
26658
|
]
|
|
26662
26659
|
}
|
|
26663
26660
|
);
|
|
26664
|
-
}, Tb =
|
|
26661
|
+
}, Tb = x(Ab), xb = ({
|
|
26665
26662
|
analysisDetails: e,
|
|
26666
26663
|
analysisType: n,
|
|
26667
26664
|
copy: i,
|
|
@@ -26828,17 +26825,17 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
26828
26825
|
}
|
|
26829
26826
|
),
|
|
26830
26827
|
n.map((p, f, E) => /* @__PURE__ */ t(b, { sx: { flexDirection: "row", gap: 4 }, children: p.map((y, S) => {
|
|
26831
|
-
const
|
|
26828
|
+
const T = f === 0, v = f === E.length - 1, w = S === 0, D = S === p.length - 1, L = Number(y.replace("%", "")) >= 25;
|
|
26832
26829
|
let k = "grey.200", B = "grey.900";
|
|
26833
26830
|
return d ? (k = L ? "grey.200" : "grey.700", B = L ? "grey.900" : "common.white") : (k = L ? "grey.700" : "grey.200", B = L ? "common.white" : "grey.900"), /* @__PURE__ */ t(
|
|
26834
26831
|
b,
|
|
26835
26832
|
{
|
|
26836
26833
|
sx: {
|
|
26837
26834
|
...{
|
|
26838
|
-
borderBottomLeftRadius:
|
|
26839
|
-
borderBottomRightRadius:
|
|
26840
|
-
borderTopLeftRadius:
|
|
26841
|
-
borderTopRightRadius:
|
|
26835
|
+
borderBottomLeftRadius: v && w ? 4 : 0,
|
|
26836
|
+
borderBottomRightRadius: v && D ? 4 : 0,
|
|
26837
|
+
borderTopLeftRadius: T && w ? 4 : 0,
|
|
26838
|
+
borderTopRightRadius: T && D ? 4 : 0
|
|
26842
26839
|
},
|
|
26843
26840
|
alignItems: "center",
|
|
26844
26841
|
bgcolor: k,
|
|
@@ -26891,7 +26888,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
26891
26888
|
]
|
|
26892
26889
|
}
|
|
26893
26890
|
);
|
|
26894
|
-
}, Nb =
|
|
26891
|
+
}, Nb = x(vb), Db = ({
|
|
26895
26892
|
accountHoldingsData: e,
|
|
26896
26893
|
currentEditedCostBasis: n,
|
|
26897
26894
|
editingHoldingId: i,
|
|
@@ -27196,7 +27193,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
27196
27193
|
]
|
|
27197
27194
|
}
|
|
27198
27195
|
);
|
|
27199
|
-
}, Rb =
|
|
27196
|
+
}, Rb = x(Db), Wi = (e) => /* @__PURE__ */ l(xe, { sx: { alignItems: "center", flexDirection: "row", gap: 4 }, children: [
|
|
27200
27197
|
/* @__PURE__ */ t(C, { sx: { color: "text.primary", fontWeight: 600, fontSize: 14 }, variant: "Small", children: e.colDef.headerName }),
|
|
27201
27198
|
/* @__PURE__ */ t(ht, { name: "expand_all", size: 12 })
|
|
27202
27199
|
] }), Lb = ({
|
|
@@ -27371,11 +27368,11 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
27371
27368
|
const { isMobile: e } = he(), [n, i] = Et({}), [a, o] = Et(!1), { selectedAccountGuids: r } = le(), { visibleHoldings: s, updateHoldings: c } = Fn(), [d, _] = g.useState(!1), [u, h] = Et({
|
|
27372
27369
|
accounts: [],
|
|
27373
27370
|
holdings: []
|
|
27374
|
-
}), { accounts: m, investments: p } = I(), { isCopyLoaded: f } = le(), [E, y] = Et(null), [S,
|
|
27375
|
-
y(U),
|
|
27371
|
+
}), { accounts: m, investments: p } = I(), { isCopyLoaded: f } = le(), [E, y] = Et(null), [S, T] = Et(""), w = ye().palette.mode === "dark", D = w ? "#0AC295" : "#09A57F", L = w ? "grey.300" : "grey.700", k = (U, ge = "lesserThan") => ge === "greaterThan" ? U >= 0 ? D : L : U <= 0 ? L : D, B = (U, ge) => {
|
|
27372
|
+
y(U), T(ge.toFixed(2));
|
|
27376
27373
|
}, M = (U) => {
|
|
27377
27374
|
const ge = U.target.value;
|
|
27378
|
-
/^\d*\.?\d*$/.test(ge) &&
|
|
27375
|
+
/^\d*\.?\d*$/.test(ge) && T(ge);
|
|
27379
27376
|
}, R = (U, ge) => {
|
|
27380
27377
|
U.key === "Enter" ? G(ge) : U.key === "Escape" && y(null);
|
|
27381
27378
|
}, G = (U) => {
|
|
@@ -27622,7 +27619,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
27622
27619
|
},
|
|
27623
27620
|
U.guid
|
|
27624
27621
|
);
|
|
27625
|
-
const Fe =
|
|
27622
|
+
const Fe = w ? "grey.700" : "grey.400", Gt = ge.length ? "text.primary" : Fe;
|
|
27626
27623
|
return /* @__PURE__ */ l(
|
|
27627
27624
|
wi,
|
|
27628
27625
|
{
|
|
@@ -27786,7 +27783,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
27786
27783
|
}
|
|
27787
27784
|
)
|
|
27788
27785
|
] }) : /* @__PURE__ */ t(de, {});
|
|
27789
|
-
}, Mb =
|
|
27786
|
+
}, Mb = x(Ob), kb = ({ title: e }) => /* @__PURE__ */ t(C, { bold: !0, variant: "Body", children: e }), k2 = x(({ onBackClick: e, sx: n }) => {
|
|
27790
27787
|
const { onEvent: i } = X(), { isMobile: a } = he(), { visibleInvestmentAccounts: o } = fe(), {
|
|
27791
27788
|
visibleHoldings: r,
|
|
27792
27789
|
setShowConnectionsWidget: s,
|
|
@@ -27805,7 +27802,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
27805
27802
|
W.INVESTMENT_WIDGET_DETAILS_CLICK,
|
|
27806
27803
|
W.INVESTMENT_WIDGET_ALLOCATION_CLICK,
|
|
27807
27804
|
W.INVESTMENT_WIDGET_ANALYSIS_CLICK
|
|
27808
|
-
],
|
|
27805
|
+
], T = o.length === 0 && r.length === 0, v = [
|
|
27809
27806
|
d.tab_overview_title,
|
|
27810
27807
|
d.tab_allocation_title,
|
|
27811
27808
|
d.tab_analysis_title
|
|
@@ -27823,17 +27820,17 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
27823
27820
|
/* @__PURE__ */ t(
|
|
27824
27821
|
Zt,
|
|
27825
27822
|
{
|
|
27826
|
-
onChange: (
|
|
27823
|
+
onChange: (w, D) => {
|
|
27827
27824
|
f(D), i(S[D]);
|
|
27828
27825
|
},
|
|
27829
27826
|
sx: { bgcolor: "background.paper" },
|
|
27830
27827
|
textColor: "primary",
|
|
27831
|
-
value:
|
|
27828
|
+
value: T ? -1 : p,
|
|
27832
27829
|
variant: "fullWidth",
|
|
27833
|
-
children:
|
|
27830
|
+
children: v.map((w) => /* @__PURE__ */ t(ot, { disabled: T, label: /* @__PURE__ */ t(kb, { title: w }) }, w))
|
|
27834
27831
|
}
|
|
27835
27832
|
),
|
|
27836
|
-
|
|
27833
|
+
T ? /* @__PURE__ */ t(
|
|
27837
27834
|
Pn,
|
|
27838
27835
|
{
|
|
27839
27836
|
header: d.empty_state_header,
|
|
@@ -28005,7 +28002,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28005
28002
|
}
|
|
28006
28003
|
)
|
|
28007
28004
|
] }) }) });
|
|
28008
|
-
}, oa =
|
|
28005
|
+
}, oa = x(Bb), gs = ({ data: e, onSelected: n, selectedId: i }) => /* @__PURE__ */ t(b, { gap: 8, height: "100%", justifyContent: "center", my: "auto", children: e.categoryData.map((a) => /* @__PURE__ */ l(
|
|
28009
28006
|
b,
|
|
28010
28007
|
{
|
|
28011
28008
|
alignItems: "center",
|
|
@@ -28052,8 +28049,8 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28052
28049
|
), f = g.useMemo(
|
|
28053
28050
|
() => bl(o, r, d),
|
|
28054
28051
|
[o, r, d]
|
|
28055
|
-
), E = (S,
|
|
28056
|
-
m(
|
|
28052
|
+
), E = (S, T) => {
|
|
28053
|
+
m(T), u("");
|
|
28057
28054
|
}, y = (S) => {
|
|
28058
28055
|
u(_ === S ? "" : S);
|
|
28059
28056
|
};
|
|
@@ -28117,7 +28114,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28117
28114
|
/* @__PURE__ */ t(gs, { data: f, onSelected: y, selectedId: _ })
|
|
28118
28115
|
] }) })
|
|
28119
28116
|
] }) : /* @__PURE__ */ t(de, { height: 250 });
|
|
28120
|
-
}, Pb =
|
|
28117
|
+
}, Pb = x(Hb), Fb = ({ onPrimaryCtaClick: e, sx: n = {} }) => {
|
|
28121
28118
|
const { visibleAccounts: i } = fe(), { spending: a } = I(), { isCopyLoaded: o, isInitialized: r, setSelectedAccounts: s } = le();
|
|
28122
28119
|
return g.useEffect(() => {
|
|
28123
28120
|
s(i);
|
|
@@ -28132,7 +28129,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28132
28129
|
children: /* @__PURE__ */ t(Pb, {})
|
|
28133
28130
|
}
|
|
28134
28131
|
);
|
|
28135
|
-
}, G2 =
|
|
28132
|
+
}, G2 = x(Fb), Wb = ({
|
|
28136
28133
|
data: e,
|
|
28137
28134
|
onSelected: n,
|
|
28138
28135
|
selectedId: i = "",
|
|
@@ -28211,7 +28208,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28211
28208
|
] }, s.guid)) }),
|
|
28212
28209
|
/* @__PURE__ */ t(C, { bold: !0, sx: { mt: 12, pr: 8, textAlign: "right" }, children: `${o.total}: ${P(e.totalAmount, "0,0")}` })
|
|
28213
28210
|
] });
|
|
28214
|
-
}, Ub =
|
|
28211
|
+
}, Ub = x(Wb), Vb = ({
|
|
28215
28212
|
data: e,
|
|
28216
28213
|
onSelected: n,
|
|
28217
28214
|
onViewTransactions: i,
|
|
@@ -28261,7 +28258,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28261
28258
|
]
|
|
28262
28259
|
}
|
|
28263
28260
|
);
|
|
28264
|
-
}, ms =
|
|
28261
|
+
}, ms = x(Vb), Kb = (e) => [
|
|
28265
28262
|
e.palette.chartMono.chartMono5,
|
|
28266
28263
|
e.palette.chartMono.chartMono4,
|
|
28267
28264
|
e.palette.chartMono.chartMono3,
|
|
@@ -28269,7 +28266,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28269
28266
|
e.palette.chartMono.chartMono1,
|
|
28270
28267
|
e.palette.chartMono.chartMono6
|
|
28271
28268
|
], Yb = () => {
|
|
28272
|
-
const e = cn(), { categories: n, dateRangeCategoryTotals: i, loadDateRangeCategoryTotals: a } = Ue(), { goals: o, spending: r } = I(), { displayedDateRange: s, selectedAccounts: c, selectedAccountGuids: d } = le(), { setFilter: _, sortedTransactions: u } = Re(), [h, m] = g.useState(""), [p, f] = g.useState(0), [E, y] = g.useState(""), [S,
|
|
28269
|
+
const e = cn(), { categories: n, dateRangeCategoryTotals: i, loadDateRangeCategoryTotals: a } = Ue(), { goals: o, spending: r } = I(), { displayedDateRange: s, selectedAccounts: c, selectedAccountGuids: d } = le(), { setFilter: _, sortedTransactions: u } = Re(), [h, m] = g.useState(""), [p, f] = g.useState(0), [E, y] = g.useState(""), [S, T] = g.useState(!1);
|
|
28273
28270
|
g.useEffect(() => {
|
|
28274
28271
|
a(
|
|
28275
28272
|
c,
|
|
@@ -28277,10 +28274,10 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28277
28274
|
s.end
|
|
28278
28275
|
).finally();
|
|
28279
28276
|
}, [c, s]);
|
|
28280
|
-
const
|
|
28277
|
+
const v = g.useMemo(
|
|
28281
28278
|
() => fl(n, o, e, i),
|
|
28282
28279
|
[n, i]
|
|
28283
|
-
),
|
|
28280
|
+
), w = g.useMemo(
|
|
28284
28281
|
() => bl(n, i, Kb(e)),
|
|
28285
28282
|
[n, i]
|
|
28286
28283
|
), D = g.useMemo(
|
|
@@ -28297,7 +28294,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28297
28294
|
};
|
|
28298
28295
|
if (p === 0)
|
|
28299
28296
|
if (M === "other") {
|
|
28300
|
-
const G =
|
|
28297
|
+
const G = v.categoryData.find((q) => q.guid === "other");
|
|
28301
28298
|
_({
|
|
28302
28299
|
...R,
|
|
28303
28300
|
custom: (q) => !!G?.categoryTotals?.find((se) => se.guid === q.top_level_category_guid)
|
|
@@ -28312,7 +28309,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28312
28309
|
...R,
|
|
28313
28310
|
custom: (G) => M ? G.category_guid === M : G.top_level_category_guid === N.INCOME
|
|
28314
28311
|
});
|
|
28315
|
-
|
|
28312
|
+
T(!0);
|
|
28316
28313
|
};
|
|
28317
28314
|
return /* @__PURE__ */ l(O, { children: [
|
|
28318
28315
|
/* @__PURE__ */ l(Zt, { onChange: L, value: p, variant: "fullWidth", children: [
|
|
@@ -28322,7 +28319,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28322
28319
|
label: /* @__PURE__ */ t(
|
|
28323
28320
|
aa,
|
|
28324
28321
|
{
|
|
28325
|
-
amount:
|
|
28322
|
+
amount: v.totalAmount,
|
|
28326
28323
|
label: r.spend_tab_title
|
|
28327
28324
|
}
|
|
28328
28325
|
)
|
|
@@ -28334,7 +28331,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28334
28331
|
label: /* @__PURE__ */ t(
|
|
28335
28332
|
aa,
|
|
28336
28333
|
{
|
|
28337
|
-
amount:
|
|
28334
|
+
amount: w.totalAmount,
|
|
28338
28335
|
label: r.income_tab_title
|
|
28339
28336
|
}
|
|
28340
28337
|
)
|
|
@@ -28344,7 +28341,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28344
28341
|
p === 0 && /* @__PURE__ */ t(
|
|
28345
28342
|
ms,
|
|
28346
28343
|
{
|
|
28347
|
-
data:
|
|
28344
|
+
data: v,
|
|
28348
28345
|
onSelected: k,
|
|
28349
28346
|
onViewTransactions: B,
|
|
28350
28347
|
selectedId: h,
|
|
@@ -28354,7 +28351,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28354
28351
|
p === 1 && /* @__PURE__ */ t(
|
|
28355
28352
|
ms,
|
|
28356
28353
|
{
|
|
28357
|
-
data:
|
|
28354
|
+
data: w,
|
|
28358
28355
|
onSelected: k,
|
|
28359
28356
|
onViewTransactions: B,
|
|
28360
28357
|
selectedId: h,
|
|
@@ -28366,7 +28363,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28366
28363
|
{
|
|
28367
28364
|
ariaLabelClose: r.close_drawer_aria,
|
|
28368
28365
|
isOpen: S,
|
|
28369
|
-
onClose: () =>
|
|
28366
|
+
onClose: () => T(!1),
|
|
28370
28367
|
title: r.transactions_drawer_title,
|
|
28371
28368
|
children: /* @__PURE__ */ t(kn, { onClick: y })
|
|
28372
28369
|
}
|
|
@@ -28382,7 +28379,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28382
28379
|
}
|
|
28383
28380
|
)
|
|
28384
28381
|
] });
|
|
28385
|
-
}, zb =
|
|
28382
|
+
}, zb = x(Yb), jb = ({ onBackClick: e, sx: n = {} }) => {
|
|
28386
28383
|
const { visibleAccounts: i } = fe(), { spending: a } = I(), { isCopyLoaded: o, isInitialized: r, setDisplayedDate: s, setSelectedAccounts: c } = le(), { onEvent: d } = X(), [_, u] = g.useState(!1);
|
|
28387
28384
|
g.useEffect(() => {
|
|
28388
28385
|
c(i);
|
|
@@ -28404,7 +28401,7 @@ const mb = ({ widgets: e, isLoading: n }) => {
|
|
|
28404
28401
|
children: /* @__PURE__ */ t(O, { height: "calc(100dvh - 150px)", overflow: "scroll", width: "100%", children: /* @__PURE__ */ t(zb, {}) })
|
|
28405
28402
|
}
|
|
28406
28403
|
);
|
|
28407
|
-
}, B2 =
|
|
28404
|
+
}, B2 = x(jb);
|
|
28408
28405
|
export {
|
|
28409
28406
|
W as ANALYTICS_EVENTS,
|
|
28410
28407
|
ds as AccountApi,
|