@mx-cartographer/experiences 3.7.2-alpha.mm7 → 3.7.2-alpha.mm9
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/index.es.js +349 -340
- package/dist/index.es.js.map +1 -1
- package/package.json +1 -1
package/dist/index.es.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import { jsx as t, jsxs as d, Fragment as rA } from "react/jsx-runtime";
|
2
2
|
import g, { useMemo as xi, useRef as ca, useEffect as se, useState as ae, createContext as Pi, useContext as Ni } from "react";
|
3
3
|
import { observer as I } from "mobx-react-lite";
|
4
|
-
import
|
4
|
+
import O from "@mui/material/Box";
|
5
5
|
import Q from "@mui/material/Divider";
|
6
6
|
import sA from "@mui/material/List";
|
7
7
|
import Je from "@mui/material/ListSubheader";
|
@@ -1123,7 +1123,7 @@ const cn = (A, e) => A.reduce((n, r) => (n[r.guid] = e?.includes(r.guid), n), {}
|
|
1123
1123
|
) }),
|
1124
1124
|
sx: { overflow: "auto", width: "100%" },
|
1125
1125
|
children: T.map((L) => {
|
1126
|
-
const
|
1126
|
+
const D = c[L.guid], N = `${L.name}${h && L.accountNumber ? ` *${L.accountNumber.slice(-4)}` : ""}`;
|
1127
1127
|
return /* @__PURE__ */ t(
|
1128
1128
|
Z,
|
1129
1129
|
{
|
@@ -1136,8 +1136,8 @@ const cn = (A, e) => A.reduce((n, r) => (n[r.guid] = e?.includes(r.guid), n), {}
|
|
1136
1136
|
control: /* @__PURE__ */ t(
|
1137
1137
|
Pt,
|
1138
1138
|
{
|
1139
|
-
checked:
|
1140
|
-
"data-ui-test": `checked-${
|
1139
|
+
checked: D,
|
1140
|
+
"data-ui-test": `checked-${D}`,
|
1141
1141
|
disableRipple: !0,
|
1142
1142
|
id: L.guid,
|
1143
1143
|
onChange: () => {
|
@@ -1233,7 +1233,7 @@ const ps = (A, e) => {
|
|
1233
1233
|
}, v = () => {
|
1234
1234
|
l(null);
|
1235
1235
|
};
|
1236
|
-
return /* @__PURE__ */ d(
|
1236
|
+
return /* @__PURE__ */ d(O, { className: "mx-cmn-account-filter", m: 4, sx: { ...o }, children: [
|
1237
1237
|
c ? /* @__PURE__ */ t(pt, { id: "filter-accounts", placement: "bottom", title: e.title, children: /* @__PURE__ */ t(
|
1238
1238
|
RA,
|
1239
1239
|
{
|
@@ -1488,11 +1488,11 @@ const ps = (A, e) => {
|
|
1488
1488
|
selectedIndex: c,
|
1489
1489
|
valueFormatter: u = (l) => `${l}`
|
1490
1490
|
}) => {
|
1491
|
-
const l = LA(), h = Ds(l), C = r.reduce(Is, []), f = A !== void 0 ? A : C.reduce(Ts, 0) / C.length, v = Math.max(...C), m = Math.min(...C), E = C.reduce(Ss, 0), T = v >= 0, S = m < 0, L = xr(T, S, a),
|
1491
|
+
const l = LA(), h = Ds(l), C = r.reduce(Is, []), f = A !== void 0 ? A : C.reduce(Ts, 0) / C.length, v = Math.max(...C), m = Math.min(...C), E = C.reduce(Ss, 0), T = v >= 0, S = m < 0, L = xr(T, S, a), D = xr(S, T, a), N = bs(f, v, m, L || D), x = (K) => c === void 0 || K === c ? n : `${n}80`, G = () => /* @__PURE__ */ t(
|
1492
1492
|
Or,
|
1493
1493
|
{
|
1494
1494
|
averageLineHeight: N,
|
1495
|
-
bottomHeight:
|
1495
|
+
bottomHeight: D,
|
1496
1496
|
color: "",
|
1497
1497
|
range: E,
|
1498
1498
|
topHeight: L,
|
@@ -1502,27 +1502,27 @@ const ps = (A, e) => {
|
|
1502
1502
|
);
|
1503
1503
|
return /* @__PURE__ */ d("div", { className: `mx-cmn-bar-chart ${h}`, children: [
|
1504
1504
|
/* @__PURE__ */ d("div", { className: "mx-cmn-chart-container", children: [
|
1505
|
-
/* @__PURE__ */ t(
|
1506
|
-
r.map((
|
1505
|
+
/* @__PURE__ */ t(G, {}),
|
1506
|
+
r.map((K, B) => /* @__PURE__ */ d(g.Fragment, { children: [
|
1507
1507
|
/* @__PURE__ */ t(
|
1508
1508
|
Or,
|
1509
1509
|
{
|
1510
|
-
ariaLabel:
|
1510
|
+
ariaLabel: K.ariaLabel,
|
1511
1511
|
averageLineHeight: N,
|
1512
|
-
bottomHeight:
|
1512
|
+
bottomHeight: D,
|
1513
1513
|
color: x(B),
|
1514
1514
|
index: B,
|
1515
1515
|
onClick: s,
|
1516
1516
|
range: E,
|
1517
1517
|
selectedIndex: c,
|
1518
1518
|
topHeight: L,
|
1519
|
-
value:
|
1520
|
-
valueLabel: u(
|
1519
|
+
value: K.value,
|
1520
|
+
valueLabel: u(K.value),
|
1521
1521
|
width: e,
|
1522
|
-
xAxisLabel:
|
1522
|
+
xAxisLabel: K.label
|
1523
1523
|
}
|
1524
1524
|
),
|
1525
|
-
/* @__PURE__ */ t(
|
1525
|
+
/* @__PURE__ */ t(G, {})
|
1526
1526
|
] }, `column-${B}`))
|
1527
1527
|
] }),
|
1528
1528
|
/* @__PURE__ */ t(Es, { color: n, labelAverage: i, labelMain: o })
|
@@ -1655,14 +1655,14 @@ const Rs = ({
|
|
1655
1655
|
h(e), f(n), e && u(e);
|
1656
1656
|
}, [e, n]);
|
1657
1657
|
const v = g.useMemo(() => {
|
1658
|
-
const L = Xi({ start: wA(c), end: bA(c) }),
|
1658
|
+
const L = Xi({ start: wA(c), end: bA(c) }), D = [];
|
1659
1659
|
for (let N = 0; N < L.length; N++) {
|
1660
|
-
const x = L[N],
|
1661
|
-
for (let B = 0; B <
|
1662
|
-
|
1663
|
-
|
1660
|
+
const x = L[N], G = Gi({ start: x, end: ce(x, 6) }), K = [];
|
1661
|
+
for (let B = 0; B < G.length; B++)
|
1662
|
+
K.push(G[B]);
|
1663
|
+
D.push(K);
|
1664
1664
|
}
|
1665
|
-
return
|
1665
|
+
return D;
|
1666
1666
|
}, [c]), m = (L) => {
|
1667
1667
|
if (i !== "None") {
|
1668
1668
|
if (i === "Single") {
|
@@ -1689,8 +1689,8 @@ const Rs = ({
|
|
1689
1689
|
onPreviousClick: S
|
1690
1690
|
}
|
1691
1691
|
),
|
1692
|
-
/* @__PURE__ */ t("div", { className: "mx-cmn-calendar-header-row", children: v[0].map((L,
|
1693
|
-
v.map((L,
|
1692
|
+
/* @__PURE__ */ t("div", { className: "mx-cmn-calendar-header-row", children: v[0].map((L, D) => /* @__PURE__ */ t("div", { className: "mx-cmn-calendar-header-cell", children: /* @__PURE__ */ t(y, { bold: !0, variant: "Small", children: YA(L, "EEEEE") }) }, D)) }),
|
1693
|
+
v.map((L, D) => /* @__PURE__ */ t("div", { className: "mx-cmn-calendar-week", children: L.map((N, x) => /* @__PURE__ */ t(
|
1694
1694
|
Ps,
|
1695
1695
|
{
|
1696
1696
|
beginDate: l,
|
@@ -1700,7 +1700,7 @@ const Rs = ({
|
|
1700
1700
|
onClick: m
|
1701
1701
|
},
|
1702
1702
|
x
|
1703
|
-
)) }, `w-${
|
1703
|
+
)) }, `w-${D}`)),
|
1704
1704
|
/* @__PURE__ */ t("div", { className: "mx-cmn-calendar-today-container", children: /* @__PURE__ */ t(iA, { onClick: E, size: "small", variant: "text", children: A.today }) })
|
1705
1705
|
] }) });
|
1706
1706
|
}, Hs = (A) => KA({
|
@@ -1754,8 +1754,8 @@ const Rs = ({
|
|
1754
1754
|
let i = 0;
|
1755
1755
|
return g.useEffect(() => {
|
1756
1756
|
ji(".arc-outer").transition("roll").duration(500).attrTween("transform", () => Wi("rotate(0)", "rotate(360)"));
|
1757
|
-
}, []), /* @__PURE__ */ d(
|
1758
|
-
/* @__PURE__ */ t(
|
1757
|
+
}, []), /* @__PURE__ */ d(O, { height: r, position: "relative", width: r, children: [
|
1758
|
+
/* @__PURE__ */ t(O, { height: "100%", padding: r / 3.75, width: "100%", children: a }),
|
1759
1759
|
/* @__PURE__ */ t(
|
1760
1760
|
"svg",
|
1761
1761
|
{
|
@@ -1880,11 +1880,11 @@ const Rs = ({
|
|
1880
1880
|
type: a ? "bar" : "line",
|
1881
1881
|
curve: "linear",
|
1882
1882
|
color: a ? u.palette.chart?.chart6 : A[L] ?? u.palette.primary.main,
|
1883
|
-
data: S.map((
|
1883
|
+
data: S.map((D) => D.y),
|
1884
1884
|
area: i,
|
1885
1885
|
showMark: !0,
|
1886
1886
|
label: r[L],
|
1887
|
-
valueFormatter: (
|
1887
|
+
valueFormatter: (D) => j(D || 0, "0,0")
|
1888
1888
|
}));
|
1889
1889
|
return /* @__PURE__ */ d("div", { style: { position: "relative" }, children: [
|
1890
1890
|
/* @__PURE__ */ d(
|
@@ -2185,12 +2185,21 @@ const Rs = ({
|
|
2185
2185
|
cursorPos: { x: 0, y: 0 }
|
2186
2186
|
}), { hoveredSeriesId: f, hoveredAreaData: v, isAreaHovered: m, cursorPos: E } = h, T = m && f && v, S = !T, {
|
2187
2187
|
stackedColors: L,
|
2188
|
-
stackedDatasets:
|
2188
|
+
stackedDatasets: D,
|
2189
2189
|
stackedCategoryGuids: N,
|
2190
2190
|
unstackedColors: x = [],
|
2191
|
-
unstackedDatasets:
|
2192
|
-
unstackedCategoryGuids:
|
2193
|
-
} = A
|
2191
|
+
unstackedDatasets: G = [],
|
2192
|
+
unstackedCategoryGuids: K = []
|
2193
|
+
} = A;
|
2194
|
+
console.log("StackedLineChart", {
|
2195
|
+
stackedColors: L,
|
2196
|
+
stackedDatasets: D,
|
2197
|
+
stackedCategoryGuids: N,
|
2198
|
+
unstackedColors: x,
|
2199
|
+
unstackedDatasets: G,
|
2200
|
+
unstackedCategoryGuids: K
|
2201
|
+
});
|
2202
|
+
const B = [...D, ...G], _ = B.flat().map((F) => F.x), k = B.flat().map((F) => F.y), X = Math.floor(Math.min(...k) / 100) * 100, oA = B.reduce((F, EA) => {
|
2194
2203
|
const xA = EA.reduce((ee, de) => ee + de.y, 0);
|
2195
2204
|
return xA > F ? xA : F;
|
2196
2205
|
}, 0), q = Js(B), uA = Zs(q), aA = N.map((F) => Le[F]), IA = uA.map((F, EA) => {
|
@@ -2211,7 +2220,7 @@ const Rs = ({
|
|
2211
2220
|
},
|
2212
2221
|
valueFormatter: (ee) => j(ee, "0,0")
|
2213
2222
|
};
|
2214
|
-
}), le =
|
2223
|
+
}), le = K.map((F) => Le[F]), Ge = G.map((F, EA) => ({
|
2215
2224
|
id: `unstacked-${EA}`,
|
2216
2225
|
area: !1,
|
2217
2226
|
color: x[EA],
|
@@ -2219,7 +2228,7 @@ const Rs = ({
|
|
2219
2228
|
label: le[EA],
|
2220
2229
|
type: "line",
|
2221
2230
|
valueFormatter: (xA) => j(xA, "0,0")
|
2222
|
-
})), xe = [...IA, ...Ge], Lt = [...aA, ...le], Xe = (F) => F.startsWith("stacked-") ? N[parseInt(F.split("-")[1])] :
|
2231
|
+
})), xe = [...IA, ...Ge], Lt = [...aA, ...le], Xe = (F) => F.startsWith("stacked-") ? N[parseInt(F.split("-")[1])] : K[parseInt(F.split("-")[1])], an = (F) => {
|
2223
2232
|
l(F), r?.(F ?? "");
|
2224
2233
|
};
|
2225
2234
|
return /* @__PURE__ */ t(
|
@@ -2262,7 +2271,7 @@ const Rs = ({
|
|
2262
2271
|
);
|
2263
2272
|
else if (ee) {
|
2264
2273
|
const de = EA?.data.map((tt, on) => ({
|
2265
|
-
x:
|
2274
|
+
x: _[on],
|
2266
2275
|
y: tt
|
2267
2276
|
})) ?? [];
|
2268
2277
|
C({
|
@@ -2325,14 +2334,14 @@ const Rs = ({
|
|
2325
2334
|
width: i,
|
2326
2335
|
xAxis: [
|
2327
2336
|
{
|
2328
|
-
data:
|
2337
|
+
data: _,
|
2329
2338
|
scaleType: "point",
|
2330
2339
|
valueFormatter: (F) => J(F, Y.MONTH_SHORT_YEAR)
|
2331
2340
|
}
|
2332
2341
|
],
|
2333
2342
|
yAxis: [
|
2334
2343
|
{
|
2335
|
-
min:
|
2344
|
+
min: X,
|
2336
2345
|
max: oA || 100
|
2337
2346
|
}
|
2338
2347
|
]
|
@@ -2367,7 +2376,7 @@ const Rs = ({
|
|
2367
2376
|
);
|
2368
2377
|
}, Ac = ({ data: A, height: e = 8 }) => {
|
2369
2378
|
const n = `${e / 4}px`;
|
2370
|
-
return /* @__PURE__ */ t(
|
2379
|
+
return /* @__PURE__ */ t(O, { children: /* @__PURE__ */ t(
|
2371
2380
|
w,
|
2372
2381
|
{
|
2373
2382
|
bgcolor: "border.light",
|
@@ -2377,7 +2386,7 @@ const Rs = ({
|
|
2377
2386
|
height: e,
|
2378
2387
|
width: "100%",
|
2379
2388
|
children: A.map((r, a) => /* @__PURE__ */ t(
|
2380
|
-
|
2389
|
+
O,
|
2381
2390
|
{
|
2382
2391
|
bgcolor: r.color,
|
2383
2392
|
borderRadius: n,
|
@@ -2464,7 +2473,7 @@ const Rs = ({
|
|
2464
2473
|
children: [
|
2465
2474
|
/* @__PURE__ */ t(RA, { "aria-label": A, onClick: e, children: /* @__PURE__ */ t(P, { name: "west" }) }),
|
2466
2475
|
/* @__PURE__ */ t(
|
2467
|
-
|
2476
|
+
O,
|
2468
2477
|
{
|
2469
2478
|
sx: {
|
2470
2479
|
flexGrow: 1,
|
@@ -2526,7 +2535,7 @@ const Rs = ({
|
|
2526
2535
|
toolTipContent: i = "",
|
2527
2536
|
variant: o = "outlined"
|
2528
2537
|
}) => {
|
2529
|
-
const s = vA(), c = s.palette.mode === "dark", { isDesktop: u, isMobile: l } = FA(), [h, C] = g.useState(r), [f, v] = g.useState(n.dateRangePickerCopy.dateRangeThisMonth), [m, E] = g.useState(h), [T, S] = g.useState(!1), [L,
|
2538
|
+
const s = vA(), c = s.palette.mode === "dark", { isDesktop: u, isMobile: l } = FA(), [h, C] = g.useState(r), [f, v] = g.useState(n.dateRangePickerCopy.dateRangeThisMonth), [m, E] = g.useState(h), [T, S] = g.useState(!1), [L, D] = g.useState(!0), [N, x] = g.useState(6), G = [
|
2530
2539
|
{ label: "3M", value: 3 },
|
2531
2540
|
{ label: "6M", value: 6 },
|
2532
2541
|
{ label: "9M", value: 9 },
|
@@ -2535,30 +2544,30 @@ const Rs = ({
|
|
2535
2544
|
g.useEffect(() => {
|
2536
2545
|
E(r);
|
2537
2546
|
}, [r]), g.useEffect(() => {
|
2538
|
-
A.onRangeChanged(
|
2547
|
+
A.onRangeChanged(K());
|
2539
2548
|
}, [N]);
|
2540
|
-
const
|
2541
|
-
const
|
2542
|
-
return [bA(fe(
|
2543
|
-
}, B = (
|
2544
|
-
const oA = [...h], q = h[0], uA = h[1], aA =
|
2549
|
+
const K = () => {
|
2550
|
+
const X = bA(ze());
|
2551
|
+
return [bA(fe(X, N)), X];
|
2552
|
+
}, B = (X) => {
|
2553
|
+
const oA = [...h], q = h[0], uA = h[1], aA = X === "previous";
|
2545
2554
|
if (f === n.dateRangePickerCopy.dateRangeThisMonth)
|
2546
2555
|
oA[0] = aA ? fe(q, 1) : jA(q, 1), oA[1] = bA(aA ? fe(uA, 1) : jA(uA, 1));
|
2547
2556
|
else if (f === n.dateRangePickerCopy.dateRangeYTD || f === n.dateRangePickerCopy.dateRangeLastYear)
|
2548
2557
|
oA[0] = aA ? fr(Cr(q), 1) : dt(Cr(q), 1), oA[1] = aA ? fr(gr(q), 1) : dt(gr(q), 1);
|
2549
2558
|
else {
|
2550
2559
|
const IA = co(uA, q);
|
2551
|
-
oA[0] =
|
2560
|
+
oA[0] = X === "previous" ? te(q, IA) : ce(q, IA), oA[1] = X === "previous" ? te(uA, IA) : ce(uA, IA);
|
2552
2561
|
}
|
2553
2562
|
C(oA), A.onRangeChanged(oA);
|
2554
|
-
},
|
2555
|
-
C(m),
|
2563
|
+
}, _ = () => {
|
2564
|
+
C(m), D(
|
2556
2565
|
f === n.dateRangePickerCopy.dateRangeThisMonth || f === n.dateRangePickerCopy.dateRangeLastMonth
|
2557
2566
|
), A.onRangeChanged(m);
|
2558
|
-
}, k = (
|
2559
|
-
x(
|
2567
|
+
}, k = (X) => {
|
2568
|
+
x(X);
|
2560
2569
|
};
|
2561
|
-
return /* @__PURE__ */ d(
|
2570
|
+
return /* @__PURE__ */ d(O, { className: "mx-cmn-date-range-selector", m: 4, children: [
|
2562
2571
|
/* @__PURE__ */ t(
|
2563
2572
|
pt,
|
2564
2573
|
{
|
@@ -2578,7 +2587,7 @@ const Rs = ({
|
|
2578
2587
|
}
|
2579
2588
|
),
|
2580
2589
|
/* @__PURE__ */ d(
|
2581
|
-
|
2590
|
+
O,
|
2582
2591
|
{
|
2583
2592
|
sx: {
|
2584
2593
|
[s.breakpoints.down("sm")]: {
|
@@ -2655,10 +2664,10 @@ const Rs = ({
|
|
2655
2664
|
exclusive: !0,
|
2656
2665
|
orientation: "horizontal",
|
2657
2666
|
value: N,
|
2658
|
-
children:
|
2667
|
+
children: G?.map((X) => /* @__PURE__ */ t(
|
2659
2668
|
In,
|
2660
2669
|
{
|
2661
|
-
onClick: () => k(
|
2670
|
+
onClick: () => k(X.value),
|
2662
2671
|
sx: {
|
2663
2672
|
fontSize: 15,
|
2664
2673
|
fontWeight: 600,
|
@@ -2682,10 +2691,10 @@ const Rs = ({
|
|
2682
2691
|
color: s.palette.grey[500]
|
2683
2692
|
}
|
2684
2693
|
},
|
2685
|
-
value:
|
2686
|
-
children:
|
2694
|
+
value: X.value,
|
2695
|
+
children: X.label
|
2687
2696
|
},
|
2688
|
-
|
2697
|
+
X.label
|
2689
2698
|
))
|
2690
2699
|
}
|
2691
2700
|
)
|
@@ -2699,7 +2708,7 @@ const Rs = ({
|
|
2699
2708
|
isOpen: T,
|
2700
2709
|
onClose: () => S(!1),
|
2701
2710
|
onPrimaryAction: () => {
|
2702
|
-
|
2711
|
+
_(), S(!1);
|
2703
2712
|
},
|
2704
2713
|
primaryText: n.dateRangeEditApply,
|
2705
2714
|
title: n.dateRangeEditTitle,
|
@@ -2708,8 +2717,8 @@ const Rs = ({
|
|
2708
2717
|
{
|
2709
2718
|
copy: n.dateRangePickerCopy,
|
2710
2719
|
dateRange: m,
|
2711
|
-
onRangeChanged: (
|
2712
|
-
E(
|
2720
|
+
onRangeChanged: (X, oA) => {
|
2721
|
+
E(X), v(oA);
|
2713
2722
|
},
|
2714
2723
|
selectedShortcut: f,
|
2715
2724
|
sx: { p: 16 }
|
@@ -2723,7 +2732,7 @@ const Rs = ({
|
|
2723
2732
|
copy: { title: n.dateRangeEditTitle },
|
2724
2733
|
isOpen: !0,
|
2725
2734
|
onClose: () => S(!1),
|
2726
|
-
onPrimaryAction: () =>
|
2735
|
+
onPrimaryAction: () => _(),
|
2727
2736
|
primaryText: n.dateRangeEditApply,
|
2728
2737
|
sx: {
|
2729
2738
|
"& .MuiDialogContent-root": {
|
@@ -2735,8 +2744,8 @@ const Rs = ({
|
|
2735
2744
|
{
|
2736
2745
|
copy: n.dateRangePickerCopy,
|
2737
2746
|
dateRange: m,
|
2738
|
-
onRangeChanged: (
|
2739
|
-
E(
|
2747
|
+
onRangeChanged: (X, oA) => {
|
2748
|
+
E(X), v(oA);
|
2740
2749
|
},
|
2741
2750
|
selectedShortcut: f,
|
2742
2751
|
sx: {
|
@@ -2928,9 +2937,9 @@ const Ke = ({
|
|
2928
2937
|
sx: l = {},
|
2929
2938
|
title: h = ""
|
2930
2939
|
}) => {
|
2931
|
-
const [C, { height: f, width: v }] = Ga(), { onEvent: m } = V(), { isDesktop: E, isMobile: T, isTablet: S } = FA(), { displayedDateRange: L, selectedAccountGuids:
|
2940
|
+
const [C, { height: f, width: v }] = Ga(), { onEvent: m } = V(), { isDesktop: E, isMobile: T, isTablet: S } = FA(), { displayedDateRange: L, selectedAccountGuids: D, setSelectedAccountGuids: N } = pA(), { common: x } = b(), G = () => {
|
2932
2941
|
c && (c(), m(U.WIDGET_BACK_CLICK));
|
2933
|
-
},
|
2942
|
+
}, K = {
|
2934
2943
|
accountFilterOptionsCopy: {
|
2935
2944
|
accountTypeAccounts: x.account_filter.account_type_accounts,
|
2936
2945
|
cancelButton: x.cancel_button,
|
@@ -2962,7 +2971,7 @@ const Ke = ({
|
|
2962
2971
|
dateRangeEditTitle: x.date_range_picker.edit_title,
|
2963
2972
|
dateRangeNextAria: x.date_range_picker.next_aria,
|
2964
2973
|
dateRangePreviousAria: x.date_range_picker.previous_aria
|
2965
|
-
},
|
2974
|
+
}, _ = a ? a.start : L.start, k = a ? a.end : L.end;
|
2966
2975
|
return /* @__PURE__ */ d(
|
2967
2976
|
He,
|
2968
2977
|
{
|
@@ -2984,12 +2993,12 @@ const Ke = ({
|
|
2984
2993
|
Ft,
|
2985
2994
|
{
|
2986
2995
|
action: /* @__PURE__ */ d(w, { alignItems: "center", flexDirection: "row", children: [
|
2987
|
-
E && n && /* @__PURE__ */ t(
|
2996
|
+
E && n && /* @__PURE__ */ t(O, { sx: { flexGrow: 1 }, children: /* @__PURE__ */ t(
|
2988
2997
|
Pr,
|
2989
2998
|
{
|
2990
2999
|
calendarActions: n,
|
2991
3000
|
copy: B,
|
2992
|
-
range: [
|
3001
|
+
range: [_, k],
|
2993
3002
|
shouldShrinkToIcon: !1,
|
2994
3003
|
variant: i
|
2995
3004
|
}
|
@@ -2998,35 +3007,35 @@ const Ke = ({
|
|
2998
3007
|
Ra,
|
2999
3008
|
{
|
3000
3009
|
accounts: A,
|
3001
|
-
copy:
|
3002
|
-
onFilterClick: (
|
3003
|
-
const oA = A.filter((q) =>
|
3010
|
+
copy: K,
|
3011
|
+
onFilterClick: (X) => {
|
3012
|
+
const oA = A.filter((q) => X.includes(q.guid)).map((q) => q.guid);
|
3004
3013
|
N(oA), u?.();
|
3005
3014
|
},
|
3006
|
-
selectedAccountGuids:
|
3015
|
+
selectedAccountGuids: D,
|
3007
3016
|
showAccountNumbers: !1,
|
3008
3017
|
sx: { "& .mx-cmn-account-filter-title": { fontSize: 15 }, mx: 4 },
|
3009
3018
|
variant: "text"
|
3010
3019
|
}
|
3011
3020
|
),
|
3012
3021
|
e.map(
|
3013
|
-
(
|
3022
|
+
(X) => E || S ? /* @__PURE__ */ t(
|
3014
3023
|
iA,
|
3015
3024
|
{
|
3016
|
-
onClick:
|
3017
|
-
startIcon: /* @__PURE__ */ t(P, { name:
|
3025
|
+
onClick: X.onClick,
|
3026
|
+
startIcon: /* @__PURE__ */ t(P, { name: X.iconName }),
|
3018
3027
|
sx: { mx: 4 },
|
3019
|
-
children:
|
3028
|
+
children: X.label
|
3020
3029
|
},
|
3021
|
-
|
3030
|
+
X.iconName
|
3022
3031
|
) : /* @__PURE__ */ t(
|
3023
3032
|
RA,
|
3024
3033
|
{
|
3025
|
-
"aria-label":
|
3026
|
-
onClick:
|
3027
|
-
children: /* @__PURE__ */ t(P, { name:
|
3034
|
+
"aria-label": X.label,
|
3035
|
+
onClick: X.onClick,
|
3036
|
+
children: /* @__PURE__ */ t(P, { name: X.iconName })
|
3028
3037
|
},
|
3029
|
-
|
3038
|
+
X.iconName
|
3030
3039
|
)
|
3031
3040
|
)
|
3032
3041
|
] }),
|
@@ -3045,7 +3054,7 @@ const Ke = ({
|
|
3045
3054
|
RA,
|
3046
3055
|
{
|
3047
3056
|
"aria-label": x.back_to_dashboard,
|
3048
|
-
onClick:
|
3057
|
+
onClick: G,
|
3049
3058
|
sx: { ml: -16, mr: 16 },
|
3050
3059
|
children: /* @__PURE__ */ t(P, { name: "arrow_back" })
|
3051
3060
|
}
|
@@ -3062,7 +3071,7 @@ const Ke = ({
|
|
3062
3071
|
{
|
3063
3072
|
calendarActions: n,
|
3064
3073
|
copy: B,
|
3065
|
-
range: [
|
3074
|
+
range: [_, k],
|
3066
3075
|
shouldShrinkToIcon: !1,
|
3067
3076
|
variant: i
|
3068
3077
|
}
|
@@ -3086,7 +3095,7 @@ const Ke = ({
|
|
3086
3095
|
setHasValidInput: l,
|
3087
3096
|
...h
|
3088
3097
|
}) => {
|
3089
|
-
const [C, f] = g.useState(""), { common: v } = b(), m = a || v.currency_input, E = LA(), T = ic(E), S = /^[0-9]*$/, L = /^(\d)*(\,)?([0-9]{1,2})?$/,
|
3098
|
+
const [C, f] = g.useState(""), { common: v } = b(), m = a || v.currency_input, E = LA(), T = ic(E), S = /^[0-9]*$/, L = /^(\d)*(\,)?([0-9]{1,2})?$/, D = /^(\d)*(\.)?([0-9]{1,2})?$/;
|
3090
3099
|
let N;
|
3091
3100
|
const x = g.useRef(ho());
|
3092
3101
|
if (A)
|
@@ -3095,26 +3104,26 @@ const Ke = ({
|
|
3095
3104
|
N = L;
|
3096
3105
|
break;
|
3097
3106
|
default:
|
3098
|
-
N =
|
3107
|
+
N = D;
|
3099
3108
|
break;
|
3100
3109
|
}
|
3101
3110
|
else
|
3102
3111
|
N = S;
|
3103
3112
|
g.useEffect(() => {
|
3104
|
-
|
3113
|
+
G(n);
|
3105
3114
|
}, [n]);
|
3106
|
-
const
|
3107
|
-
!r && (
|
3115
|
+
const G = (K) => {
|
3116
|
+
!r && (K === "" || K === "." || K === ",") ? (f(""), l?.(!1)) : Number(K) < c ? (f(
|
3108
3117
|
H(
|
3109
3118
|
m.error_amount_must_be_equal_to,
|
3110
3119
|
j(c, "0")
|
3111
3120
|
)
|
3112
|
-
), l?.(!1)) : Number(
|
3121
|
+
), l?.(!1)) : Number(K) > wr ? (f(
|
3113
3122
|
H(
|
3114
3123
|
m.error_amount_must_be_less_than_or_equal_to,
|
3115
3124
|
j(wr, A ? "0,0.00" : "0,0", Math.floor)
|
3116
3125
|
)
|
3117
|
-
), l?.(!1)) :
|
3126
|
+
), l?.(!1)) : K.toString().match(N) ? i() ? (f(""), l?.(!0)) : (f(o), l?.(!1)) : (f(m.error_amount_is_invalid), l?.(!1)), u(K.toString());
|
3118
3127
|
};
|
3119
3128
|
return /* @__PURE__ */ t(
|
3120
3129
|
Ie,
|
@@ -3134,7 +3143,7 @@ const Ke = ({
|
|
3134
3143
|
},
|
3135
3144
|
label: s,
|
3136
3145
|
name: `currency-input-${x.current}`,
|
3137
|
-
onChange: (
|
3146
|
+
onChange: (K) => G(K.target.value),
|
3138
3147
|
value: n,
|
3139
3148
|
...h
|
3140
3149
|
}
|
@@ -3200,7 +3209,7 @@ const Ke = ({
|
|
3200
3209
|
children: /* @__PURE__ */ t(P, { name: "cancel", size: 24 })
|
3201
3210
|
}
|
3202
3211
|
);
|
3203
|
-
return /* @__PURE__ */ t(
|
3212
|
+
return /* @__PURE__ */ t(O, { className: "mx-cmn-search-box", px: i.Spacing.Large, py: i.Spacing.Medium, children: /* @__PURE__ */ t(
|
3204
3213
|
Ie,
|
3205
3214
|
{
|
3206
3215
|
InputProps: {
|
@@ -3224,7 +3233,7 @@ const Ke = ({
|
|
3224
3233
|
}) => {
|
3225
3234
|
const i = vA(), o = i.palette.mode === "light" ? i.palette.grey[400] : i.palette.grey[700], s = A ? i.palette.action.active : o;
|
3226
3235
|
return /* @__PURE__ */ t(
|
3227
|
-
|
3236
|
+
O,
|
3228
3237
|
{
|
3229
3238
|
bgcolor: "background.paper",
|
3230
3239
|
border: `${A ? 3 : 1}px solid`,
|
@@ -3286,7 +3295,7 @@ const Ke = ({
|
|
3286
3295
|
children: [
|
3287
3296
|
e,
|
3288
3297
|
/* @__PURE__ */ t(
|
3289
|
-
|
3298
|
+
O,
|
3290
3299
|
{
|
3291
3300
|
sx: {
|
3292
3301
|
backgroundColor: "common.white",
|
@@ -3443,7 +3452,7 @@ const et = () => {
|
|
3443
3452
|
const { cashflow: e } = b();
|
3444
3453
|
return /* @__PURE__ */ d(rA, { children: [
|
3445
3454
|
/* @__PURE__ */ t(
|
3446
|
-
|
3455
|
+
O,
|
3447
3456
|
{
|
3448
3457
|
sx: {
|
3449
3458
|
borderRadius: "1px",
|
@@ -3467,22 +3476,22 @@ const et = () => {
|
|
3467
3476
|
} = et(), { nextIncomeActivity: v, upcomingExpenses: m } = BA();
|
3468
3477
|
g.useEffect(() => {
|
3469
3478
|
C(
|
3470
|
-
r.filter((
|
3479
|
+
r.filter((D) => i.includes(D.guid))
|
3471
3480
|
);
|
3472
3481
|
}, [r, i]), g.useEffect(() => {
|
3473
3482
|
v && h(v), f(m);
|
3474
3483
|
}, [v, m]);
|
3475
3484
|
const E = g.useMemo(
|
3476
|
-
() => r.filter((
|
3485
|
+
() => r.filter((D) => i.includes(D.guid)).reduce((D, N) => D + (N?.balance || 0), 0),
|
3477
3486
|
[i, m]
|
3478
3487
|
), T = g.useMemo(
|
3479
|
-
() => u.filter((
|
3488
|
+
() => u.filter((D) => i.includes(D.accountGuid || "")).reduce((D, N) => D + N.amount, 0),
|
3480
3489
|
[i, u]
|
3481
3490
|
), S = g.useMemo(
|
3482
3491
|
() => E - T,
|
3483
3492
|
[E, T]
|
3484
3493
|
), L = s?.has_completed_cash_flow_onboarding && !!A;
|
3485
|
-
return /* @__PURE__ */ t(
|
3494
|
+
return /* @__PURE__ */ t(O, { className: "mx-cashflow", pl: 16, pr: 16, pt: 16, children: n > 610 ? /* @__PURE__ */ d(
|
3486
3495
|
w,
|
3487
3496
|
{
|
3488
3497
|
border: `1px solid ${e.palette.border.light}`,
|
@@ -4374,7 +4383,7 @@ const UA = () => {
|
|
4374
4383
|
}, jn = I(xc), Wn = ({
|
4375
4384
|
bgcolor: A = "background.default",
|
4376
4385
|
children: e
|
4377
|
-
}) => /* @__PURE__ */ t(
|
4386
|
+
}) => /* @__PURE__ */ t(O, { display: "inline-block", pb: 4, pl: 24, pt: 4, sx: { bgcolor: A, width: "100%" }, children: /* @__PURE__ */ t(y, { bold: !0, variant: "XSmall", children: e }) }), Pc = ({ showIcon: A = !0, showSubtitle: e = !0 }) => {
|
4378
4387
|
const n = LA(), { transactions: r } = b();
|
4379
4388
|
return /* @__PURE__ */ d(w, { alignItems: "center", gap: n.Spacing.Small, height: "auto", mt: n.Spacing.Large, children: [
|
4380
4389
|
A && /* @__PURE__ */ t(Oo, { color: "secondary", sx: { fontSize: 32 } }),
|
@@ -4441,8 +4450,8 @@ const UA = () => {
|
|
4441
4450
|
estimateSize: (E) => Br + (zr(E, u) ? Kr : 0),
|
4442
4451
|
overscan: 5
|
4443
4452
|
});
|
4444
|
-
return g.useEffect(() => m.measure(), [u]), g.useEffect(() => l(a), [a]), /* @__PURE__ */ t(sA, { children: /* @__PURE__ */ t(
|
4445
|
-
|
4453
|
+
return g.useEffect(() => m.measure(), [u]), g.useEffect(() => l(a), [a]), /* @__PURE__ */ t(sA, { children: /* @__PURE__ */ t(O, { height: e, overflow: "auto", ref: v, width: o, children: /* @__PURE__ */ d(
|
4454
|
+
O,
|
4446
4455
|
{
|
4447
4456
|
height: (
|
4448
4457
|
// set the height to auto when there are no transactions so the zero state isn't set to 0
|
@@ -4454,12 +4463,12 @@ const UA = () => {
|
|
4454
4463
|
(c || i) && n,
|
4455
4464
|
!c && !i && m.getVirtualItems().length === 0 && s,
|
4456
4465
|
!c && !i && m.getVirtualItems().length > 0 && m.getVirtualItems().map((E) => {
|
4457
|
-
const T = u[E.index], S = zr(E.index, u), L = Mc(E.index, u),
|
4466
|
+
const T = u[E.index], S = zr(E.index, u), L = Mc(E.index, u), D = Br + (S ? Kr : 0);
|
4458
4467
|
return /* @__PURE__ */ d(
|
4459
|
-
|
4468
|
+
O,
|
4460
4469
|
{
|
4461
4470
|
sx: {
|
4462
|
-
height:
|
4471
|
+
height: D,
|
4463
4472
|
position: "absolute",
|
4464
4473
|
transform: `translateY(${E.start}px)`,
|
4465
4474
|
width: "100%"
|
@@ -4510,7 +4519,7 @@ const UA = () => {
|
|
4510
4519
|
}, Gc = I(kc), Xc = (A) => /* @__PURE__ */ t(y, { tabIndex: A.tabIndex, variant: "Small", children: J(NA(A.row.date), Y.MONTH_DAY) }), Qc = (A) => {
|
4511
4520
|
const e = Be(), { transactions: n } = b(), { is_flagged: r, is_hidden: a, has_been_viewed: i, parent_guid: o } = A.row, c = !i && !!!o;
|
4512
4521
|
return /* @__PURE__ */ d(
|
4513
|
-
|
4522
|
+
O,
|
4514
4523
|
{
|
4515
4524
|
"aria-label": a ? n.is_hidden : n.is_flagged,
|
4516
4525
|
tabIndex: A.tabIndex,
|
@@ -4802,7 +4811,7 @@ const Yc = ({
|
|
4802
4811
|
]
|
4803
4812
|
}
|
4804
4813
|
),
|
4805
|
-
m && /* @__PURE__ */ d(
|
4814
|
+
m && /* @__PURE__ */ d(O, { className: "mx-cat-subcategory-edit-container", sx: { marginRight: 24 }, children: [
|
4806
4815
|
/* @__PURE__ */ t(
|
4807
4816
|
RA,
|
4808
4817
|
{
|
@@ -5226,7 +5235,7 @@ const Ua = ({ transaction: A }) => {
|
|
5226
5235
|
}
|
5227
5236
|
await r({ ...A, date: u }), n(U.TRANSACTION_DETAILS_CLICK_DATE, { transaction_guid: A.guid }), c(!1);
|
5228
5237
|
};
|
5229
|
-
return /* @__PURE__ */ d(
|
5238
|
+
return /* @__PURE__ */ d(O, { className: "mx-txn-date-action", children: [
|
5230
5239
|
/* @__PURE__ */ t(Z, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ d(
|
5231
5240
|
dA,
|
5232
5241
|
{
|
@@ -5277,7 +5286,7 @@ const Ua = ({ transaction: A }) => {
|
|
5277
5286
|
const { onEvent: e } = V(), { removeTransaction: n } = cA(), { setShouldDisableDrawerScroll: r } = UA(), { common: a, transactions: i } = b(), [o, s] = g.useState(!1), c = async () => {
|
5278
5287
|
await n(A.guid), e(M.ON_TRANSACTION_DELETE_DELETED);
|
5279
5288
|
};
|
5280
|
-
return /* @__PURE__ */ d(
|
5289
|
+
return /* @__PURE__ */ d(O, { className: "mx-txn-delete", children: [
|
5281
5290
|
A && /* @__PURE__ */ t(Z, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ d(
|
5282
5291
|
dA,
|
5283
5292
|
{
|
@@ -5319,7 +5328,7 @@ const Ua = ({ transaction: A }) => {
|
|
5319
5328
|
transaction_guid: A.guid
|
5320
5329
|
});
|
5321
5330
|
};
|
5322
|
-
return /* @__PURE__ */ d(
|
5331
|
+
return /* @__PURE__ */ d(O, { className: "mx-txn-delete-logo", children: [
|
5323
5332
|
A && /* @__PURE__ */ t(Z, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ d(
|
5324
5333
|
dA,
|
5325
5334
|
{
|
@@ -5359,7 +5368,7 @@ const Ua = ({ transaction: A }) => {
|
|
5359
5368
|
c ? M.ON_TRANSACTION_UNHIDDEN : M.ON_TRANSACTION_HIDDEN
|
5360
5369
|
);
|
5361
5370
|
};
|
5362
|
-
return /* @__PURE__ */ d(
|
5371
|
+
return /* @__PURE__ */ d(O, { className: "mx-txn-hide-transaction", children: [
|
5363
5372
|
A && /* @__PURE__ */ t(Z, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ d(
|
5364
5373
|
dA,
|
5365
5374
|
{
|
@@ -5514,7 +5523,7 @@ const Ua = ({ transaction: A }) => {
|
|
5514
5523
|
isNaN(Number(v)) || (u(v), r(A, Number(v)));
|
5515
5524
|
};
|
5516
5525
|
return /* @__PURE__ */ d(
|
5517
|
-
|
5526
|
+
O,
|
5518
5527
|
{
|
5519
5528
|
bgcolor: "background.paper",
|
5520
5529
|
className: "mx-txn-split-manager-row",
|
@@ -5533,7 +5542,7 @@ const Ua = ({ transaction: A }) => {
|
|
5533
5542
|
children: a.category
|
5534
5543
|
}
|
5535
5544
|
),
|
5536
|
-
/* @__PURE__ */ t(
|
5545
|
+
/* @__PURE__ */ t(O, { children: !a.category_guid && /* @__PURE__ */ d(
|
5537
5546
|
w,
|
5538
5547
|
{
|
5539
5548
|
color: "error.main",
|
@@ -5620,7 +5629,7 @@ const Ua = ({ transaction: A }) => {
|
|
5620
5629
|
j(i.amount, "0,0.00")
|
5621
5630
|
) : ""
|
5622
5631
|
);
|
5623
|
-
}, [a]), /* @__PURE__ */ d(
|
5632
|
+
}, [a]), /* @__PURE__ */ d(O, { className: "mx-txn-split-manager", children: [
|
5624
5633
|
a.map((h, C) => /* @__PURE__ */ t(
|
5625
5634
|
Tl,
|
5626
5635
|
{
|
@@ -5645,7 +5654,7 @@ const Ua = ({ transaction: A }) => {
|
|
5645
5654
|
]
|
5646
5655
|
}
|
5647
5656
|
),
|
5648
|
-
/* @__PURE__ */ t(
|
5657
|
+
/* @__PURE__ */ t(O, { p: o.Spacing.Medium, children: /* @__PURE__ */ t(
|
5649
5658
|
iA,
|
5650
5659
|
{
|
5651
5660
|
"aria-label": s.split_transaction_add_split_btn,
|
@@ -5677,24 +5686,24 @@ const Ua = ({ transaction: A }) => {
|
|
5677
5686
|
B.push({ ...u }), B[0].amount -= 1, m(B);
|
5678
5687
|
}, T = (B) => {
|
5679
5688
|
if (B > 0) {
|
5680
|
-
const
|
5681
|
-
k.splice(B, 1), k[0].amount +=
|
5689
|
+
const _ = v[B], k = [...v];
|
5690
|
+
k.splice(B, 1), k[0].amount += _.amount, m(k);
|
5682
5691
|
}
|
5683
|
-
}, S = (B,
|
5692
|
+
}, S = (B, _) => {
|
5684
5693
|
const k = [...v];
|
5685
|
-
k[B].amount =
|
5686
|
-
(
|
5694
|
+
k[B].amount = _, k[0].amount = A.amount - k.reduce(
|
5695
|
+
(X, oA, q) => X + (q !== 0 ? oA.amount : 0),
|
5687
5696
|
0
|
5688
5697
|
), m(k);
|
5689
|
-
}, L = (B,
|
5690
|
-
const k = [...v],
|
5691
|
-
|
5698
|
+
}, L = (B, _) => {
|
5699
|
+
const k = [...v], X = s.find((oA) => oA.guid === _);
|
5700
|
+
X && (k[B] = {
|
5692
5701
|
...k[B],
|
5693
|
-
category_guid:
|
5694
|
-
category:
|
5695
|
-
top_level_category_guid:
|
5702
|
+
category_guid: _,
|
5703
|
+
category: X.name,
|
5704
|
+
top_level_category_guid: X.parent_guid || _
|
5696
5705
|
}, m(k));
|
5697
|
-
},
|
5706
|
+
}, D = () => {
|
5698
5707
|
if (A.parent_guid || A.has_been_split) {
|
5699
5708
|
f(!0);
|
5700
5709
|
return;
|
@@ -5706,18 +5715,18 @@ const Ua = ({ transaction: A }) => {
|
|
5706
5715
|
e(M.ON_TRANSACTION_SPLIT_SAVE_CLICK), await n({ ...A, has_been_split: !0 }, v), h(!1);
|
5707
5716
|
}, x = async () => {
|
5708
5717
|
e(M.ON_TRANSACTION_SPLIT_CANCEL_CLICK), m([{ ...c }, { ...u }]), h(!1);
|
5709
|
-
},
|
5718
|
+
}, G = async () => {
|
5710
5719
|
e(U.TRANSACTION_DETAILS_CLICK_UNSPLIT, {
|
5711
5720
|
transaction_guid: A.guid
|
5712
5721
|
});
|
5713
5722
|
const B = A.parent_guid ?? A.guid;
|
5714
5723
|
await r(B);
|
5715
|
-
},
|
5716
|
-
const B = v.some((k) => !k.category_guid),
|
5717
|
-
return B ||
|
5724
|
+
}, K = g.useMemo(() => {
|
5725
|
+
const B = v.some((k) => !k.category_guid), _ = v.some((k) => k.amount <= 0);
|
5726
|
+
return B || _;
|
5718
5727
|
}, [v]);
|
5719
5728
|
return /* @__PURE__ */ d(g.Fragment, { children: [
|
5720
|
-
A && /* @__PURE__ */ t(Z, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ d(dA, { onClick:
|
5729
|
+
A && /* @__PURE__ */ t(Z, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ d(dA, { onClick: D, children: [
|
5721
5730
|
/* @__PURE__ */ t(PA, { children: /* @__PURE__ */ t(me, { sx: { bgcolor: "border.light" }, variant: "rounded", children: /* @__PURE__ */ t(P, { name: "call_split", sx: { color: "text.primary" }, weight: qA.Dark }) }) }),
|
5722
5731
|
/* @__PURE__ */ t(
|
5723
5732
|
lA,
|
@@ -5733,7 +5742,7 @@ const Ua = ({ transaction: A }) => {
|
|
5733
5742
|
{
|
5734
5743
|
ariaLabelClose: a.close_aria,
|
5735
5744
|
isOpen: l,
|
5736
|
-
isPrimaryDisabled:
|
5745
|
+
isPrimaryDisabled: K,
|
5737
5746
|
onClose: x,
|
5738
5747
|
onPrimaryAction: N,
|
5739
5748
|
primaryText: a.save_button,
|
@@ -5763,7 +5772,7 @@ const Ua = ({ transaction: A }) => {
|
|
5763
5772
|
onClose: () => {
|
5764
5773
|
o(!1), f(!1);
|
5765
5774
|
},
|
5766
|
-
onPrimaryAction:
|
5775
|
+
onPrimaryAction: G,
|
5767
5776
|
onSecondaryAction: () => {
|
5768
5777
|
e(M.ON_TRANSACTION_UNSPLIT_CANCEL);
|
5769
5778
|
},
|
@@ -5790,7 +5799,7 @@ const Ua = ({ transaction: A }) => {
|
|
5790
5799
|
};
|
5791
5800
|
return g.useEffect(() => {
|
5792
5801
|
u(o.length > 40 ? r.tags_error_name_must_be_40_chars : "");
|
5793
|
-
}, [o]), /* @__PURE__ */ d(
|
5802
|
+
}, [o]), /* @__PURE__ */ d(O, { className: "mx-txn-tag-manager-header", children: [
|
5794
5803
|
/* @__PURE__ */ d(
|
5795
5804
|
w,
|
5796
5805
|
{
|
@@ -5848,7 +5857,7 @@ const Ua = ({ transaction: A }) => {
|
|
5848
5857
|
children: /* @__PURE__ */ t(To, {})
|
5849
5858
|
}
|
5850
5859
|
);
|
5851
|
-
return /* @__PURE__ */ t(
|
5860
|
+
return /* @__PURE__ */ t(O, { className: "mx-txn-tag-manager-search", px: a.Spacing.Large, py: a.Spacing.Medium, children: /* @__PURE__ */ t(
|
5852
5861
|
Ie,
|
5853
5862
|
{
|
5854
5863
|
InputProps: {
|
@@ -5931,7 +5940,7 @@ const Ua = ({ transaction: A }) => {
|
|
5931
5940
|
"aria-describedby": v ? "update-tag-error" : void 0,
|
5932
5941
|
"aria-label": s.tags_update_the_tag_name,
|
5933
5942
|
name: "update-tag",
|
5934
|
-
onChange: (
|
5943
|
+
onChange: (D) => f(D.target.value),
|
5935
5944
|
placeholder: "Tag name",
|
5936
5945
|
sx: { width: "100%" },
|
5937
5946
|
value: C
|
@@ -6040,7 +6049,7 @@ const Ua = ({ transaction: A }) => {
|
|
6040
6049
|
transaction_guid: A.guid
|
6041
6050
|
}), await e({ ...A, description: s }), o(!1);
|
6042
6051
|
};
|
6043
|
-
return /* @__PURE__ */ t(
|
6052
|
+
return /* @__PURE__ */ t(O, { className: "mx-txn-transaction-description", children: i ? /* @__PURE__ */ d(bo, { row: !0, children: [
|
6044
6053
|
/* @__PURE__ */ t(
|
6045
6054
|
Ut,
|
6046
6055
|
{
|
@@ -6122,7 +6131,7 @@ const Ua = ({ transaction: A }) => {
|
|
6122
6131
|
return g.useEffect(
|
6123
6132
|
() => i(U.TRANSACTION_DETAILS_VIEW, { transaction_guid: n.guid }),
|
6124
6133
|
[]
|
6125
|
-
), /* @__PURE__ */ t(
|
6134
|
+
), /* @__PURE__ */ t(O, { className: "mx-txn-transaction-details", width: "100%", children: n && /* @__PURE__ */ d(w, { children: [
|
6126
6135
|
/* @__PURE__ */ d(w, { gap: r.Spacing.Small, p: r.Spacing.Large, children: [
|
6127
6136
|
/* @__PURE__ */ t(ie, { elevation: 2, sx: { borderRadius: r.BorderRadius.Small, width: 64 }, children: /* @__PURE__ */ t(
|
6128
6137
|
Oe,
|
@@ -6217,7 +6226,7 @@ const Ua = ({ transaction: A }) => {
|
|
6217
6226
|
}, Yl = (A, e) => A.tags.map((n) => e.filter((a) => a.guid === n)[0]?.name ?? "").join(" "), Vl = ({ status: A = Se.Loading }) => {
|
6218
6227
|
const { connect: e } = b();
|
6219
6228
|
return /* @__PURE__ */ t(
|
6220
|
-
|
6229
|
+
O,
|
6221
6230
|
{
|
6222
6231
|
sx: {
|
6223
6232
|
height: "calc(100% - 62px)",
|
@@ -6306,7 +6315,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6306
6315
|
}, m = (E) => {
|
6307
6316
|
i({ ...r, account_guid: E });
|
6308
6317
|
};
|
6309
|
-
return /* @__PURE__ */ d(
|
6318
|
+
return /* @__PURE__ */ d(O, { className: "mx-txn-manual-transaction-details", children: [
|
6310
6319
|
/* @__PURE__ */ d(w, { gap: 40, mx: 24, my: 32, children: [
|
6311
6320
|
/* @__PURE__ */ d(
|
6312
6321
|
w,
|
@@ -6376,7 +6385,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6376
6385
|
)
|
6377
6386
|
] }),
|
6378
6387
|
/* @__PURE__ */ t(Q, { light: !0 }),
|
6379
|
-
/* @__PURE__ */ d(
|
6388
|
+
/* @__PURE__ */ d(O, { bgcolor: "background.paper", children: [
|
6380
6389
|
/* @__PURE__ */ t(Ua, { transaction: r }),
|
6381
6390
|
/* @__PURE__ */ t(ja, { transaction: r }),
|
6382
6391
|
/* @__PURE__ */ t(Ya, { transaction: r }),
|
@@ -6390,7 +6399,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6390
6399
|
), u = async (l) => {
|
6391
6400
|
await r({ ...e, category_guid: o }), l && await n(o, e), s(""), A();
|
6392
6401
|
};
|
6393
|
-
return /* @__PURE__ */ d(
|
6402
|
+
return /* @__PURE__ */ d(O, { className: "mx-txn-edit-category-action", children: [
|
6394
6403
|
/* @__PURE__ */ t(
|
6395
6404
|
Jn,
|
6396
6405
|
{
|
@@ -6437,29 +6446,29 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6437
6446
|
setSearchValue: l,
|
6438
6447
|
setShowInsights: h,
|
6439
6448
|
updateManualTransaction: C
|
6440
|
-
} = UA(), { addTransaction: f, filter: v, setFilter: m, tags: E, transactions: T, updateTransaction: S } = cA(), { common: L, transactions:
|
6441
|
-
displayedDateRange:
|
6442
|
-
isInitialized:
|
6449
|
+
} = UA(), { addTransaction: f, filter: v, setFilter: m, tags: E, transactions: T, updateTransaction: S } = cA(), { common: L, transactions: D } = b(), { userProfile: N } = Vt(), { onEvent: x } = V(), {
|
6450
|
+
displayedDateRange: G,
|
6451
|
+
isInitialized: K,
|
6443
6452
|
selectedAccountGuids: B,
|
6444
|
-
selectedAccounts:
|
6453
|
+
selectedAccounts: _,
|
6445
6454
|
setDisplayedDate: k,
|
6446
|
-
setSelectedAccounts:
|
6455
|
+
setSelectedAccounts: X
|
6447
6456
|
} = pA(), [oA, q] = g.useState(""), [uA, aA] = g.useState(""), [IA, le] = g.useState(!1), [Ge, xe] = g.useState(!1), [Lt, Xe] = g.useState(!1);
|
6448
6457
|
g.useEffect(() => {
|
6449
|
-
|
6458
|
+
X(a);
|
6450
6459
|
}, [a]), g.useEffect(() => {
|
6451
6460
|
const TA = wA($()), sr = bA($());
|
6452
6461
|
k(TA, sr), m({
|
6453
6462
|
dateRange: { start: TA, end: sr },
|
6454
|
-
accounts:
|
6463
|
+
accounts: _.map((Oi) => Oi.guid)
|
6455
6464
|
}), Xe(!0), x(U.TRANSACTIONS_VIEW);
|
6456
6465
|
}, []), g.useEffect(() => {
|
6457
6466
|
Lt && m({
|
6458
6467
|
...v,
|
6459
|
-
dateRange: { start:
|
6468
|
+
dateRange: { start: G.start, end: G.end },
|
6460
6469
|
accounts: B
|
6461
6470
|
});
|
6462
|
-
}, [
|
6471
|
+
}, [G, B]), g.useEffect(() => {
|
6463
6472
|
h(n);
|
6464
6473
|
}, [n]);
|
6465
6474
|
const an = g.useMemo(
|
@@ -6490,19 +6499,19 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6490
6499
|
}, Di = () => {
|
6491
6500
|
xe(!1), i();
|
6492
6501
|
};
|
6493
|
-
return !
|
6502
|
+
return !K || !Lt ? /* @__PURE__ */ t(Ee, {}) : /* @__PURE__ */ d(
|
6494
6503
|
qe,
|
6495
6504
|
{
|
6496
6505
|
accountOptions: a,
|
6497
6506
|
actions: [
|
6498
6507
|
{
|
6499
6508
|
iconName: "open_in_new",
|
6500
|
-
label:
|
6509
|
+
label: D.export_csv_btn,
|
6501
6510
|
onClick: de
|
6502
6511
|
},
|
6503
6512
|
{
|
6504
6513
|
iconName: "add",
|
6505
|
-
label:
|
6514
|
+
label: D.add_transaction_btn,
|
6506
6515
|
onClick: tt
|
6507
6516
|
}
|
6508
6517
|
],
|
@@ -6512,18 +6521,18 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6512
6521
|
onAccountsFilterClick: () => x(U.ACCOUNTS_CLICK_FILTER),
|
6513
6522
|
onBackClick: A,
|
6514
6523
|
sx: r,
|
6515
|
-
title:
|
6524
|
+
title: D.transactions_title,
|
6516
6525
|
children: [
|
6517
|
-
/* @__PURE__ */ t(
|
6526
|
+
/* @__PURE__ */ t(O, { mt: 16, children: /* @__PURE__ */ t(
|
6518
6527
|
Jt,
|
6519
6528
|
{
|
6520
6529
|
onChange: ee,
|
6521
|
-
placeholder:
|
6530
|
+
placeholder: D.action_bar_search_placeholder,
|
6522
6531
|
searchValue: u
|
6523
6532
|
}
|
6524
6533
|
) }),
|
6525
6534
|
/* @__PURE__ */ t(
|
6526
|
-
|
6535
|
+
O,
|
6527
6536
|
{
|
6528
6537
|
sx: {
|
6529
6538
|
[o.breakpoints.down("md")]: { display: "none" },
|
@@ -6550,7 +6559,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6550
6559
|
}
|
6551
6560
|
),
|
6552
6561
|
/* @__PURE__ */ t(
|
6553
|
-
|
6562
|
+
O,
|
6554
6563
|
{
|
6555
6564
|
sx: {
|
6556
6565
|
[o.breakpoints.down("md")]: { display: "block" },
|
@@ -6578,7 +6587,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6578
6587
|
onClose: () => {
|
6579
6588
|
F && !F.has_been_viewed && S({ ...F, has_been_viewed: !0 }), q("");
|
6580
6589
|
},
|
6581
|
-
title:
|
6590
|
+
title: D.details_title,
|
6582
6591
|
children: F && /* @__PURE__ */ t(An, { transaction: F })
|
6583
6592
|
}
|
6584
6593
|
),
|
@@ -6599,14 +6608,14 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6599
6608
|
isPrimaryDisabled: !EA,
|
6600
6609
|
onClose: () => q(""),
|
6601
6610
|
onPrimaryAction: on,
|
6602
|
-
title:
|
6611
|
+
title: D.add_transaction_title,
|
6603
6612
|
children: /* @__PURE__ */ t($l, {})
|
6604
6613
|
}
|
6605
6614
|
),
|
6606
6615
|
/* @__PURE__ */ t(
|
6607
6616
|
Ql,
|
6608
6617
|
{
|
6609
|
-
copy: { title:
|
6618
|
+
copy: { title: D.add_manual_account },
|
6610
6619
|
isOpen: IA,
|
6611
6620
|
onClose: () => {
|
6612
6621
|
le(!1);
|
@@ -6619,7 +6628,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6619
6628
|
{
|
6620
6629
|
onClose: Di,
|
6621
6630
|
showConnectWidget: Ge,
|
6622
|
-
title:
|
6631
|
+
title: D.add_manual_account
|
6623
6632
|
}
|
6624
6633
|
)
|
6625
6634
|
]
|
@@ -6785,7 +6794,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6785
6794
|
const N = o.filter((x) => x.sequenceGuid === A.sequenceGuid).map((x) => x.transactionGuid);
|
6786
6795
|
c({
|
6787
6796
|
...s,
|
6788
|
-
custom: (x) => !!N.find((
|
6797
|
+
custom: (x) => !!N.find((G) => x.guid === G)
|
6789
6798
|
});
|
6790
6799
|
} else !T && A.scheduledPaymentGuid && c({
|
6791
6800
|
...s,
|
@@ -6794,7 +6803,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6794
6803
|
}, [A]);
|
6795
6804
|
const L = async () => {
|
6796
6805
|
T && A.sequenceGuid ? await a(A.sequenceGuid) : A.scheduledPaymentGuid && await i(A.scheduledPaymentGuid), e();
|
6797
|
-
},
|
6806
|
+
}, D = () => {
|
6798
6807
|
f(!0), h(
|
6799
6808
|
T ? "recurring_transactions_widget_income_details_click_delete" : "recurring_transactions_widget_expense_details_click_delete",
|
6800
6809
|
{
|
@@ -6850,7 +6859,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
6850
6859
|
iA,
|
6851
6860
|
{
|
6852
6861
|
color: "error",
|
6853
|
-
onClick:
|
6862
|
+
onClick: D,
|
6854
6863
|
startIcon: /* @__PURE__ */ t(P, { name: "delete" }),
|
6855
6864
|
sx: { mx: 24, my: 16 },
|
6856
6865
|
variant: "text",
|
@@ -7201,16 +7210,16 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
7201
7210
|
[C]
|
7202
7211
|
), L = () => {
|
7203
7212
|
h(!0), c(A ? { ...s, custom: Ct } : { ...s, custom: yn });
|
7204
|
-
},
|
7213
|
+
}, D = async () => {
|
7205
7214
|
if (n(), !S || !E) {
|
7206
7215
|
N();
|
7207
7216
|
return;
|
7208
7217
|
}
|
7209
7218
|
if (A) {
|
7210
|
-
const x = $a(S, v, E),
|
7211
|
-
if (
|
7212
|
-
const
|
7213
|
-
await a(
|
7219
|
+
const x = $a(S, v, E), G = await i(x);
|
7220
|
+
if (G) {
|
7221
|
+
const K = Ai(G, S);
|
7222
|
+
await a(K);
|
7214
7223
|
}
|
7215
7224
|
} else {
|
7216
7225
|
const x = ud(S, v, E);
|
@@ -7220,7 +7229,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
7220
7229
|
}, N = () => {
|
7221
7230
|
f(""), h(!1);
|
7222
7231
|
};
|
7223
|
-
return /* @__PURE__ */ d(
|
7232
|
+
return /* @__PURE__ */ d(O, { children: [
|
7224
7233
|
/* @__PURE__ */ t(Z, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ t(dA, { onClick: L, children: /* @__PURE__ */ t(lA, { children: /* @__PURE__ */ d(w, { alignItems: "center", direction: "row", justifyContent: "space-between", children: [
|
7225
7234
|
/* @__PURE__ */ d(w, { alignItems: "center", direction: "row", gap: 8, children: [
|
7226
7235
|
/* @__PURE__ */ t(P, { fill: !0, name: "add_box", size: 24, sx: { color: "action.active" } }),
|
@@ -7243,7 +7252,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
7243
7252
|
onSearch: (x) => {
|
7244
7253
|
c({
|
7245
7254
|
...s,
|
7246
|
-
custom: (
|
7255
|
+
custom: (G) => A ? x ? ni(G, x) : Ct(G) : x ? Cd(G, x) : yn(G)
|
7247
7256
|
});
|
7248
7257
|
},
|
7249
7258
|
onSelected: (x) => f(x)
|
@@ -7257,7 +7266,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
7257
7266
|
ariaLabelClose: r.close_drawer_aria,
|
7258
7267
|
isOpen: !!C,
|
7259
7268
|
onClose: () => f(""),
|
7260
|
-
onPrimaryAction:
|
7269
|
+
onPrimaryAction: D,
|
7261
7270
|
title: A ? r.income_details : r.expense_details,
|
7262
7271
|
children: S && /* @__PURE__ */ t(
|
7263
7272
|
ti,
|
@@ -7507,7 +7516,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
7507
7516
|
] });
|
7508
7517
|
}, ai = I(Ld), Td = () => {
|
7509
7518
|
const [A, e] = g.useState(0), { onEvent: n } = V(), { recurring: r } = b();
|
7510
|
-
return /* @__PURE__ */ d(
|
7519
|
+
return /* @__PURE__ */ d(O, { bgcolor: "background.default", height: "100%", children: [
|
7511
7520
|
/* @__PURE__ */ d(
|
7512
7521
|
$e,
|
7513
7522
|
{
|
@@ -7743,9 +7752,9 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
7743
7752
|
const u = [{ color: s.palette.success.main, percentage: `${n / e}` }];
|
7744
7753
|
return r && u.push({ color: s.palette.error.main, percentage: `${r / e}` }), u;
|
7745
7754
|
}, [n, e, r]);
|
7746
|
-
return /* @__PURE__ */ d(
|
7755
|
+
return /* @__PURE__ */ d(O, { px: 24, children: [
|
7747
7756
|
/* @__PURE__ */ d(w, { direction: "row", justifyContent: "space-between", children: [
|
7748
|
-
/* @__PURE__ */ d(
|
7757
|
+
/* @__PURE__ */ d(O, { children: [
|
7749
7758
|
/* @__PURE__ */ t(y, { bold: !0, variant: "Body", children: `${a} ${A}` }),
|
7750
7759
|
/* @__PURE__ */ d(w, { direction: "row", gap: 2, mb: 8, children: [
|
7751
7760
|
/* @__PURE__ */ t(y, { bold: !0, variant: "XSmall", children: j(n, "0,0.00") }),
|
@@ -7773,13 +7782,13 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
7773
7782
|
selectedDayActivities: o,
|
7774
7783
|
setSelectedDay: s,
|
7775
7784
|
upcomingActivities: c
|
7776
|
-
} = BA(), [u, l] = g.useState(0), { onEvent: h } = V(), C = n.filter(dn), f = a.filter(dn), v = r.filter(dn), m = C.filter(Dt).reduce(at, 0), E = f.filter(Dt).reduce(at, 0), T = v.filter(Dt).reduce(at, 0), S = C.filter(Dt).length, L = C.filter(ln).reduce(at, 0),
|
7777
|
-
l(
|
7778
|
-
},
|
7785
|
+
} = BA(), [u, l] = g.useState(0), { onEvent: h } = V(), C = n.filter(dn), f = a.filter(dn), v = r.filter(dn), m = C.filter(Dt).reduce(at, 0), E = f.filter(Dt).reduce(at, 0), T = v.filter(Dt).reduce(at, 0), S = C.filter(Dt).length, L = C.filter(ln).reduce(at, 0), D = f.filter(ln).reduce(at, 0), N = C.filter(ln).length, x = (B, _) => {
|
7786
|
+
l(_);
|
7787
|
+
}, G = (B) => {
|
7779
7788
|
h(U.RECURRING_ACTIVITY_CLICK_UPCOMING, {
|
7780
7789
|
transaction_guid: B.transactionGuid
|
7781
7790
|
});
|
7782
|
-
},
|
7791
|
+
}, K = (B) => {
|
7783
7792
|
h(U.RECURRING_ACTIVITY_CLICK_PAID, {
|
7784
7793
|
transaction_guid: B.transactionGuid
|
7785
7794
|
});
|
@@ -7800,7 +7809,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
7800
7809
|
Fr,
|
7801
7810
|
{
|
7802
7811
|
expected: L,
|
7803
|
-
paid:
|
7812
|
+
paid: D,
|
7804
7813
|
title: A.deposits,
|
7805
7814
|
total: N
|
7806
7815
|
}
|
@@ -7809,11 +7818,11 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
7809
7818
|
ot,
|
7810
7819
|
{
|
7811
7820
|
activities: c,
|
7812
|
-
onActivityClick:
|
7821
|
+
onActivityClick: G,
|
7813
7822
|
title: A.upcoming_activity
|
7814
7823
|
}
|
7815
7824
|
),
|
7816
|
-
e && /* @__PURE__ */ d(
|
7825
|
+
e && /* @__PURE__ */ d(O, { children: [
|
7817
7826
|
/* @__PURE__ */ d($e, { onChange: x, value: u, variant: "fullWidth", children: [
|
7818
7827
|
/* @__PURE__ */ t(
|
7819
7828
|
Ae,
|
@@ -7832,10 +7841,10 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
7832
7841
|
ot,
|
7833
7842
|
{
|
7834
7843
|
activities: c,
|
7835
|
-
onActivityClick:
|
7844
|
+
onActivityClick: G
|
7836
7845
|
}
|
7837
7846
|
),
|
7838
|
-
u === 1 && /* @__PURE__ */ t(ot, { activities: f, onActivityClick:
|
7847
|
+
u === 1 && /* @__PURE__ */ t(ot, { activities: f, onActivityClick: K })
|
7839
7848
|
] })
|
7840
7849
|
] }) }),
|
7841
7850
|
!e && /* @__PURE__ */ t(Me, { sx: { minWidth: 450 }, xs: "auto", children: /* @__PURE__ */ d(w, { gap: 35, children: [
|
@@ -7844,7 +7853,7 @@ const _r = "connect_widget", kr = "connections_widget", Jl = ({
|
|
7844
7853
|
ot,
|
7845
7854
|
{
|
7846
7855
|
activities: o || f,
|
7847
|
-
onActivityClick:
|
7856
|
+
onActivityClick: K,
|
7848
7857
|
onResetClick: i ? () => s(i) : void 0,
|
7849
7858
|
title: i ? H(
|
7850
7859
|
A.day_transactions,
|
@@ -8307,11 +8316,11 @@ const _d = {
|
|
8307
8316
|
A.is_closed && a.is_closed
|
8308
8317
|
] }),
|
8309
8318
|
secondary: /* @__PURE__ */ d(rA, { children: [
|
8310
|
-
/* @__PURE__ */ d(
|
8319
|
+
/* @__PURE__ */ d(O, { sx: { alignItems: "center", display: "flex", justifyContent: "space-between" }, children: [
|
8311
8320
|
/* @__PURE__ */ t(y, { variant: "XSmall", children: i }),
|
8312
8321
|
/* @__PURE__ */ t(y, { bold: !0, variant: "Small", children: j(o, "0,0.00") })
|
8313
8322
|
] }),
|
8314
|
-
/* @__PURE__ */ d(
|
8323
|
+
/* @__PURE__ */ d(O, { sx: { alignItems: "center", display: "flex", justifyContent: "space-between" }, children: [
|
8315
8324
|
/* @__PURE__ */ t(y, { variant: "XSmall", children: s }),
|
8316
8325
|
/* @__PURE__ */ t(y, { ml: "auto", variant: "XSmall", children: c })
|
8317
8326
|
] })
|
@@ -8523,7 +8532,7 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
8523
8532
|
};
|
8524
8533
|
}), [o, r, a]);
|
8525
8534
|
return /* @__PURE__ */ d(
|
8526
|
-
|
8535
|
+
O,
|
8527
8536
|
{
|
8528
8537
|
sx: {
|
8529
8538
|
width: "100%"
|
@@ -8660,7 +8669,7 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
8660
8669
|
};
|
8661
8670
|
return g.useEffect(() => {
|
8662
8671
|
n(r === 0 ? "cash_flow_summary" : "cash_flow_details");
|
8663
|
-
}, [r]), /* @__PURE__ */ d(
|
8672
|
+
}, [r]), /* @__PURE__ */ d(O, { children: [
|
8664
8673
|
/* @__PURE__ */ d(
|
8665
8674
|
$e,
|
8666
8675
|
{
|
@@ -8691,9 +8700,9 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
8691
8700
|
]
|
8692
8701
|
}
|
8693
8702
|
),
|
8694
|
-
/* @__PURE__ */ t(
|
8695
|
-
/* @__PURE__ */ t(zt, { index: 0, name: "cashflow", value: r, children: /* @__PURE__ */ t(
|
8696
|
-
/* @__PURE__ */ t(zt, { index: 1, name: "cashflow", value: r, children: /* @__PURE__ */ t(
|
8703
|
+
/* @__PURE__ */ t(O, { sx: { mb: 32 } }),
|
8704
|
+
/* @__PURE__ */ t(zt, { index: 0, name: "cashflow", value: r, children: /* @__PURE__ */ t(O, { sx: { m: e ? 48 : 16 }, children: /* @__PURE__ */ t(eu, {}) }) }),
|
8705
|
+
/* @__PURE__ */ t(zt, { index: 1, name: "cashflow", value: r, children: /* @__PURE__ */ t(O, { sx: { m: e ? 48 : 16 }, children: /* @__PURE__ */ t($d, {}) }) })
|
8697
8706
|
] });
|
8698
8707
|
}, nu = I(tu), ye = ({
|
8699
8708
|
amount: A,
|
@@ -8853,7 +8862,7 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
8853
8862
|
/* @__PURE__ */ d(w, { direction: "column", mb: 32, spacing: 32, children: [
|
8854
8863
|
/* @__PURE__ */ d(fA, { sx: { display: "flex", alignItems: "center", fontSize: 18 }, children: [
|
8855
8864
|
/* @__PURE__ */ t(
|
8856
|
-
|
8865
|
+
O,
|
8857
8866
|
{
|
8858
8867
|
bgcolor: r.palette.primary.lighter,
|
8859
8868
|
borderRadius: 1,
|
@@ -8869,7 +8878,7 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
8869
8878
|
] }),
|
8870
8879
|
/* @__PURE__ */ d(fA, { sx: { display: "flex", alignItems: "center", fontSize: 18 }, children: [
|
8871
8880
|
/* @__PURE__ */ t(
|
8872
|
-
|
8881
|
+
O,
|
8873
8882
|
{
|
8874
8883
|
bgcolor: r.palette.primary.lighter,
|
8875
8884
|
borderRadius: 1,
|
@@ -8885,7 +8894,7 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
8885
8894
|
] }),
|
8886
8895
|
/* @__PURE__ */ d(fA, { sx: { display: "flex", alignItems: "center", fontSize: 18 }, children: [
|
8887
8896
|
/* @__PURE__ */ t(
|
8888
|
-
|
8897
|
+
O,
|
8889
8898
|
{
|
8890
8899
|
bgcolor: r.palette.primary.lighter,
|
8891
8900
|
borderRadius: 1,
|
@@ -8920,20 +8929,20 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
8920
8929
|
transform: rotate(360deg);
|
8921
8930
|
}
|
8922
8931
|
`, hu = () => {
|
8923
|
-
const { addCashflowEvent: A, addCashflowSequence: e, cashflowSequences: n } = BA(), { cashflow: r, common: a } = b(), { completeOnboarding: i } = Gn(), { isDirty: o } = et(), { isMobile: s } = FA(), { setDisplayedDate: c } = pA(), { filter: u, setFilter: l, transactions: h } = cA(), C = vA(), [f, v] = ae(!0), [m, E] = g.useState(z.EveryMonth), [T, S] = ae(!1), [L,
|
8932
|
+
const { addCashflowEvent: A, addCashflowSequence: e, cashflowSequences: n } = BA(), { cashflow: r, common: a } = b(), { completeOnboarding: i } = Gn(), { isDirty: o } = et(), { isMobile: s } = FA(), { setDisplayedDate: c } = pA(), { filter: u, setFilter: l, transactions: h } = cA(), C = vA(), [f, v] = ae(!0), [m, E] = g.useState(z.EveryMonth), [T, S] = ae(!1), [L, D] = g.useState(null), [N, x] = ae(1), [G, K] = ae([]), [B, _] = ae(""), k = g.useMemo(
|
8924
8933
|
() => h.find((aA) => aA.guid === B),
|
8925
8934
|
[B]
|
8926
|
-
),
|
8935
|
+
), X = !!n.length, oA = async () => {
|
8927
8936
|
x(2), c(
|
8928
8937
|
// Beginning of the month, 90 days before today
|
8929
8938
|
wA(te($(), 90)),
|
8930
8939
|
$()
|
8931
8940
|
), l({ ...u, custom: Ct }), x(3);
|
8932
8941
|
}, q = async () => {
|
8933
|
-
if (!(
|
8942
|
+
if (!(G.length < 1)) {
|
8934
8943
|
S(!0);
|
8935
|
-
for (let aA = 0; aA <
|
8936
|
-
const IA =
|
8944
|
+
for (let aA = 0; aA < G.length; aA++) {
|
8945
|
+
const IA = G[aA], le = $a(
|
8937
8946
|
IA,
|
8938
8947
|
IA.frequency,
|
8939
8948
|
IA.nextDate
|
@@ -8945,9 +8954,9 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
8945
8954
|
}
|
8946
8955
|
i();
|
8947
8956
|
}
|
8948
|
-
}, uA = !k && f || !k &&
|
8957
|
+
}, uA = !k && f || !k && G.length < 1;
|
8949
8958
|
return /* @__PURE__ */ d(
|
8950
|
-
|
8959
|
+
O,
|
8951
8960
|
{
|
8952
8961
|
sx: {
|
8953
8962
|
display: "flex",
|
@@ -8961,7 +8970,7 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
8961
8970
|
},
|
8962
8971
|
children: [
|
8963
8972
|
N === 1 && /* @__PURE__ */ t(
|
8964
|
-
|
8973
|
+
O,
|
8965
8974
|
{
|
8966
8975
|
sx: {
|
8967
8976
|
...s ? { display: "flex", flexDirection: "column", maxWidth: "100%", padding: "0 16px" } : { maxWidth: 590, ml: "40%", mr: 90 }
|
@@ -8970,7 +8979,7 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
8970
8979
|
}
|
8971
8980
|
),
|
8972
8981
|
N === 2 && /* @__PURE__ */ t(
|
8973
|
-
|
8982
|
+
O,
|
8974
8983
|
{
|
8975
8984
|
sx: {
|
8976
8985
|
...s ? { display: "flex", flexDirection: "column", maxWidth: "100%", padding: "0 16px" } : { maxWidth: 590, ml: "40%", mr: 90 }
|
@@ -8979,7 +8988,7 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
8979
8988
|
}
|
8980
8989
|
),
|
8981
8990
|
N === 3 && /* @__PURE__ */ d(
|
8982
|
-
|
8991
|
+
O,
|
8983
8992
|
{
|
8984
8993
|
sx: {
|
8985
8994
|
...s ? { display: "flex", flexDirection: "column", maxWidth: "100%", padding: "0 16px" } : { maxWidth: 590, ml: "40%", mr: 90 }
|
@@ -8987,13 +8996,13 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
8987
8996
|
children: [
|
8988
8997
|
/* @__PURE__ */ t(ve, { pb: 12, children: r.add_income_title }),
|
8989
8998
|
/* @__PURE__ */ t(fA, { mb: 24, children: r.add_income_description }),
|
8990
|
-
|
8991
|
-
/* @__PURE__ */ t(sA, { children:
|
8999
|
+
G.length > 0 && !k && /* @__PURE__ */ d(rA, { children: [
|
9000
|
+
/* @__PURE__ */ t(sA, { children: G.map((aA, IA) => /* @__PURE__ */ d(g.Fragment, { children: [
|
8992
9001
|
/* @__PURE__ */ t(Wn, { bgcolor: "background.paper", children: Zt(
|
8993
9002
|
CA(aA.nextDate || aA.date)
|
8994
9003
|
) }),
|
8995
9004
|
/* @__PURE__ */ t(jn, { transaction: aA }),
|
8996
|
-
IA !==
|
9005
|
+
IA !== G.length - 1 && /* @__PURE__ */ t(Q, {})
|
8997
9006
|
] }, aA.guid)) }),
|
8998
9007
|
/* @__PURE__ */ d(w, { alignItems: "center", direction: "row", children: [
|
8999
9008
|
/* @__PURE__ */ t(Q, { sx: { flexGrow: 1 } }),
|
@@ -9016,11 +9025,11 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
9016
9025
|
custom: (IA) => aA ? ni(IA, aA) : Ct(IA)
|
9017
9026
|
}),
|
9018
9027
|
onSelected: (aA) => {
|
9019
|
-
|
9028
|
+
_(aA), v(!1);
|
9020
9029
|
}
|
9021
9030
|
}
|
9022
9031
|
),
|
9023
|
-
!
|
9032
|
+
!X && o && /* @__PURE__ */ t(fA, { color: "error", mt: 16, children: r.confirm_error }),
|
9024
9033
|
k && /* @__PURE__ */ d(rA, { children: [
|
9025
9034
|
/* @__PURE__ */ t(
|
9026
9035
|
ti,
|
@@ -9030,7 +9039,7 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
9030
9039
|
isIncome: !0,
|
9031
9040
|
nextDate: L,
|
9032
9041
|
onFrequencyChange: E,
|
9033
|
-
onNextDateChange:
|
9042
|
+
onNextDateChange: D,
|
9034
9043
|
transaction: k
|
9035
9044
|
}
|
9036
9045
|
),
|
@@ -9040,8 +9049,8 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
9040
9049
|
{
|
9041
9050
|
"aria-disabled": !k || !L,
|
9042
9051
|
onClick: () => {
|
9043
|
-
const aA = [...
|
9044
|
-
aA.push({ ...k, nextDate: L, frequency: m }),
|
9052
|
+
const aA = [...G];
|
9053
|
+
aA.push({ ...k, nextDate: L, frequency: m }), K(aA), _("");
|
9045
9054
|
},
|
9046
9055
|
variant: "contained",
|
9047
9056
|
children: a.confirm_button
|
@@ -9051,7 +9060,7 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
9051
9060
|
iA,
|
9052
9061
|
{
|
9053
9062
|
onClick: () => {
|
9054
|
-
|
9063
|
+
_(""), v(!0), oA();
|
9055
9064
|
},
|
9056
9065
|
variant: "outlined",
|
9057
9066
|
children: a.cancel_button
|
@@ -9059,11 +9068,11 @@ const Vd = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
9059
9068
|
)
|
9060
9069
|
] })
|
9061
9070
|
] }),
|
9062
|
-
|
9071
|
+
G.length > 0 && !k && /* @__PURE__ */ d(w, { direction: "row", gap: 16, ml: 24, mt: 32, children: [
|
9063
9072
|
/* @__PURE__ */ t(
|
9064
9073
|
iA,
|
9065
9074
|
{
|
9066
|
-
"aria-disabled":
|
9075
|
+
"aria-disabled": G.length < 1 || T,
|
9067
9076
|
onClick: q,
|
9068
9077
|
startIcon: T ? /* @__PURE__ */ t(
|
9069
9078
|
P,
|
@@ -9297,13 +9306,13 @@ const Eu = /^[ a-zA-ZÀ-ÿ0-9]+$/, yu = 50, Jr = 65, wu = ({
|
|
9297
9306
|
searchValue: o
|
9298
9307
|
}
|
9299
9308
|
),
|
9300
|
-
/* @__PURE__ */ t(ie, { sx: { boxShadow: "none" }, children: /* @__PURE__ */ t(sA, { children: /* @__PURE__ */ d(
|
9301
|
-
/* @__PURE__ */ d(
|
9309
|
+
/* @__PURE__ */ t(ie, { sx: { boxShadow: "none" }, children: /* @__PURE__ */ t(sA, { children: /* @__PURE__ */ d(O, { height: A, overflow: "auto", ref: l, children: [
|
9310
|
+
/* @__PURE__ */ d(O, { height: h.getTotalSize(), position: "relative", children: [
|
9302
9311
|
n && /* @__PURE__ */ t(Ee, { label: "Loading...", size: 32 }),
|
9303
9312
|
!n && h.getVirtualItems().length > 0 && h.getVirtualItems().map((C) => {
|
9304
9313
|
const f = r[C.index];
|
9305
9314
|
return /* @__PURE__ */ d(
|
9306
|
-
|
9315
|
+
O,
|
9307
9316
|
{
|
9308
9317
|
height: Jr,
|
9309
9318
|
position: "absolute",
|
@@ -9472,7 +9481,7 @@ const Iu = (A, e) => {
|
|
9472
9481
|
/* @__PURE__ */ t(Du, { notification: A }),
|
9473
9482
|
/* @__PURE__ */ t(y, { bold: !A.has_been_viewed, variant: "Small", children: A.content })
|
9474
9483
|
] });
|
9475
|
-
}, xu = ({ date: A }) => /* @__PURE__ */ t(
|
9484
|
+
}, xu = ({ date: A }) => /* @__PURE__ */ t(O, { sx: { display: "flex", justifyContent: "center", mt: 12, py: 8 }, children: /* @__PURE__ */ t(y, { bold: !0, variant: "Small", children: Zt(A) }) }), Pu = ({ onClick: A }) => {
|
9476
9485
|
const { isLoading: e, recentNotifications: n, markAllAsViewed: r } = _a(), { notifications: a } = b(), i = (o) => {
|
9477
9486
|
A?.(o);
|
9478
9487
|
};
|
@@ -10293,7 +10302,7 @@ const un = ({
|
|
10293
10302
|
const l = o.find((h) => h.guid === u?.member_guid) || {};
|
10294
10303
|
l && i(l);
|
10295
10304
|
}
|
10296
|
-
}, [u, A]), /* @__PURE__ */ d(
|
10305
|
+
}, [u, A]), /* @__PURE__ */ d(O, { sx: { pt: 24 }, children: [
|
10297
10306
|
c.map((l) => {
|
10298
10307
|
const h = r.filter((v) => v.account_type === l), C = h.reduce(
|
10299
10308
|
(v, m) => (m.available_balance || m.balance || 0) + v,
|
@@ -10433,7 +10442,7 @@ const un = ({
|
|
10433
10442
|
sx: e,
|
10434
10443
|
title: c.title,
|
10435
10444
|
children: a ? /* @__PURE__ */ t(Ee, {}) : /* @__PURE__ */ d(rA, { children: [
|
10436
|
-
/* @__PURE__ */ d(
|
10445
|
+
/* @__PURE__ */ d(O, { sx: { px: h ? 24 : 12 }, children: [
|
10437
10446
|
l.length < 1 && /* @__PURE__ */ t(y, { display: "flex", justifyContent: "center", my: 24, children: c.no_accounts }),
|
10438
10447
|
/* @__PURE__ */ t(d1, {})
|
10439
10448
|
] }),
|
@@ -11266,7 +11275,7 @@ const y1 = (A, e) => !A && !e ? 0 : !A && e ? 101 : e / A * 100, w1 = (A, e, n)
|
|
11266
11275
|
document.fonts.ready.then(() => {
|
11267
11276
|
h(!0);
|
11268
11277
|
});
|
11269
|
-
}, []), /* @__PURE__ */ t(
|
11278
|
+
}, []), /* @__PURE__ */ t(O, { ml: n ? 0 : 24, children: n || !s || !l ? /* @__PURE__ */ t(B1, {}) : /* @__PURE__ */ t(
|
11270
11279
|
q1,
|
11271
11280
|
{
|
11272
11281
|
data: C,
|
@@ -11286,7 +11295,7 @@ const y1 = (A, e) => !A && !e ? 0 : !A && e ? 101 : e / A * 100, w1 = (A, e, n)
|
|
11286
11295
|
...A,
|
11287
11296
|
children: [
|
11288
11297
|
/* @__PURE__ */ t(_1, { shouldShowZeroState: a }),
|
11289
|
-
!a && /* @__PURE__ */ d(
|
11298
|
+
!a && /* @__PURE__ */ d(O, { ml: 16, children: [
|
11290
11299
|
/* @__PURE__ */ t(y, { bold: !0, color: r < 0 ? "error.main" : "success.main", children: j(Math.abs(r), "0,0") }),
|
11291
11300
|
/* @__PURE__ */ t(y, { children: r < 0 ? n.overspent_in_budgets : n.left_in_budgets })
|
11292
11301
|
] })
|
@@ -11369,7 +11378,7 @@ const G1 = () => {
|
|
11369
11378
|
bgcolor: A = "background.default",
|
11370
11379
|
children: e
|
11371
11380
|
}) => /* @__PURE__ */ t(
|
11372
|
-
|
11381
|
+
O,
|
11373
11382
|
{
|
11374
11383
|
alignItems: "flex-end",
|
11375
11384
|
boxSizing: "border-box",
|
@@ -11405,9 +11414,9 @@ const G1 = () => {
|
|
11405
11414
|
updateType: ""
|
11406
11415
|
});
|
11407
11416
|
};
|
11408
|
-
return /* @__PURE__ */ d(
|
11417
|
+
return /* @__PURE__ */ d(O, { children: [
|
11409
11418
|
/* @__PURE__ */ t(ar, { children: r }),
|
11410
|
-
A.map((h, C) => /* @__PURE__ */ d(
|
11419
|
+
A.map((h, C) => /* @__PURE__ */ d(O, { children: [
|
11411
11420
|
/* @__PURE__ */ t(Z, { children: /* @__PURE__ */ d(dA, { onClick: () => c(h), children: [
|
11412
11421
|
/* @__PURE__ */ t(PA, { children: /* @__PURE__ */ t(
|
11413
11422
|
pe,
|
@@ -11602,7 +11611,7 @@ const fi = ({
|
|
11602
11611
|
}
|
11603
11612
|
), W1 = "data:image/png;base64,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", Y1 = ({ content: A = {} }) => {
|
11604
11613
|
const e = vA();
|
11605
|
-
return /* @__PURE__ */ d(
|
11614
|
+
return /* @__PURE__ */ d(O, { px: 24, py: 32, children: [
|
11606
11615
|
/* @__PURE__ */ t(
|
11607
11616
|
y,
|
11608
11617
|
{
|
@@ -11617,7 +11626,7 @@ const fi = ({
|
|
11617
11626
|
}
|
11618
11627
|
),
|
11619
11628
|
/* @__PURE__ */ t(
|
11620
|
-
|
11629
|
+
O,
|
11621
11630
|
{
|
11622
11631
|
sx: {
|
11623
11632
|
display: "flex",
|
@@ -11626,7 +11635,7 @@ const fi = ({
|
|
11626
11635
|
p: "16px 24px"
|
11627
11636
|
},
|
11628
11637
|
children: /* @__PURE__ */ t(
|
11629
|
-
|
11638
|
+
O,
|
11630
11639
|
{
|
11631
11640
|
sx: {
|
11632
11641
|
backgroundImage: `url(${W1})`,
|
@@ -11652,24 +11661,24 @@ const fi = ({
|
|
11652
11661
|
translatedSubCatetgory: o = ""
|
11653
11662
|
}) => {
|
11654
11663
|
const s = vA(), c = g.useMemo(
|
11655
|
-
() => e.reduce((L,
|
11664
|
+
() => e.reduce((L, D) => ({ ...L, [D.name]: !1 }), {}),
|
11656
11665
|
[e]
|
11657
11666
|
), [u, l] = g.useState(c), { toastState: h, hideToast: C } = Ci(), f = Ma(a);
|
11658
11667
|
se(() => {
|
11659
11668
|
f && !a && l(c);
|
11660
11669
|
}, [f, a, c, l]);
|
11661
11670
|
const v = (L) => {
|
11662
|
-
const { name:
|
11671
|
+
const { name: D, checked: N } = L.target;
|
11663
11672
|
l((x) => ({
|
11664
11673
|
...x,
|
11665
|
-
[
|
11674
|
+
[D]: N
|
11666
11675
|
}));
|
11667
11676
|
}, m = Object.values(u).filter(Boolean).length, E = () => {
|
11668
11677
|
l(c), i();
|
11669
11678
|
}, T = () => {
|
11670
11679
|
const L = e.reduce(
|
11671
|
-
(
|
11672
|
-
...
|
11680
|
+
(D, N) => ({
|
11681
|
+
...D,
|
11673
11682
|
[N.name]: m !== e.length
|
11674
11683
|
}),
|
11675
11684
|
{}
|
@@ -11678,7 +11687,7 @@ const fi = ({
|
|
11678
11687
|
}, S = () => {
|
11679
11688
|
const L = m === e.length;
|
11680
11689
|
n(
|
11681
|
-
Object.keys(u).filter((
|
11690
|
+
Object.keys(u).filter((D) => u[D]),
|
11682
11691
|
L
|
11683
11692
|
);
|
11684
11693
|
};
|
@@ -11697,7 +11706,7 @@ const fi = ({
|
|
11697
11706
|
title: o.replace(/&/g, "&"),
|
11698
11707
|
children: [
|
11699
11708
|
/* @__PURE__ */ t(Q, {}),
|
11700
|
-
/* @__PURE__ */ t(
|
11709
|
+
/* @__PURE__ */ t(O, { px: 24, py: 16, children: /* @__PURE__ */ t(
|
11701
11710
|
y,
|
11702
11711
|
{
|
11703
11712
|
sx: {
|
@@ -11714,7 +11723,7 @@ const fi = ({
|
|
11714
11723
|
sA,
|
11715
11724
|
{
|
11716
11725
|
subheader: /* @__PURE__ */ t(ar, { children: /* @__PURE__ */ d(
|
11717
|
-
|
11726
|
+
O,
|
11718
11727
|
{
|
11719
11728
|
boxSizing: "border-box",
|
11720
11729
|
pt: 8,
|
@@ -11746,7 +11755,7 @@ const fi = ({
|
|
11746
11755
|
}
|
11747
11756
|
) }),
|
11748
11757
|
sx: { height: "100%" },
|
11749
|
-
children: e.sort((L,
|
11758
|
+
children: e.sort((L, D) => L.name < D.name ? -1 : 1).map((L, D) => /* @__PURE__ */ d(O, { children: [
|
11750
11759
|
/* @__PURE__ */ t(Z, { disablePadding: !0, children: /* @__PURE__ */ d(
|
11751
11760
|
dA,
|
11752
11761
|
{
|
@@ -11779,12 +11788,12 @@ const fi = ({
|
|
11779
11788
|
]
|
11780
11789
|
}
|
11781
11790
|
) }),
|
11782
|
-
/* @__PURE__ */ t(Q, { sx: { ml:
|
11783
|
-
] },
|
11791
|
+
/* @__PURE__ */ t(Q, { sx: { ml: D < e.length - 1 ? 24 : 0 } })
|
11792
|
+
] }, D))
|
11784
11793
|
}
|
11785
11794
|
),
|
11786
11795
|
/* @__PURE__ */ d(
|
11787
|
-
|
11796
|
+
O,
|
11788
11797
|
{
|
11789
11798
|
boxSizing: "border-box",
|
11790
11799
|
pb: 32,
|
@@ -11900,20 +11909,20 @@ const fi = ({
|
|
11900
11909
|
update: r,
|
11901
11910
|
isUpdateError: a,
|
11902
11911
|
isUpdateLoading: i
|
11903
|
-
} = e, [o, s, c] = $1(n), { toastState: u, showToast: l, hideToast: h, setMessage: C } = Ci(), [f, v] = g.useState(!1), [m, E] = g.useState(!1), [T, S] = g.useState(""), [L,
|
11912
|
+
} = e, [o, s, c] = $1(n), { toastState: u, showToast: l, hideToast: h, setMessage: C } = Ci(), [f, v] = g.useState(!1), [m, E] = g.useState(!1), [T, S] = g.useState(""), [L, D] = g.useState(""), N = Ma(i);
|
11904
11913
|
se(() => {
|
11905
11914
|
N && !i && (a ? l(A.something_went_wrong, "error") : l(void 0, "success"));
|
11906
11915
|
}, [N, a]);
|
11907
11916
|
const x = () => {
|
11908
11917
|
C(
|
11909
11918
|
n.length > 1 ? A.insights_unhidden : A.insight_unhidden
|
11910
|
-
), r(n.map((
|
11911
|
-
},
|
11912
|
-
E(!0), S(
|
11913
|
-
},
|
11914
|
-
E(!1),
|
11915
|
-
}, B = (
|
11916
|
-
r(
|
11919
|
+
), r(n.map((_) => _.name));
|
11920
|
+
}, G = (_, k) => {
|
11921
|
+
E(!0), S(_), D(k);
|
11922
|
+
}, K = () => {
|
11923
|
+
E(!1), D(""), S("");
|
11924
|
+
}, B = (_, k) => {
|
11925
|
+
r(_), k && E(!1), C(_.length > 1 ? A.insights_unhidden : A.insight_unhidden);
|
11917
11926
|
};
|
11918
11927
|
return /* @__PURE__ */ d(rA, { children: [
|
11919
11928
|
/* @__PURE__ */ t(
|
@@ -11941,16 +11950,16 @@ const fi = ({
|
|
11941
11950
|
children: [
|
11942
11951
|
/* @__PURE__ */ t(Q, {}),
|
11943
11952
|
n.length > 0 ? /* @__PURE__ */ t(sA, { sx: { height: "100%" }, children: o.map(
|
11944
|
-
(
|
11953
|
+
(_) => s[_.key] !== "" && /* @__PURE__ */ t(
|
11945
11954
|
sA,
|
11946
11955
|
{
|
11947
|
-
subheader: /* @__PURE__ */ t(ar, { children: s[
|
11948
|
-
children:
|
11949
|
-
(k,
|
11956
|
+
subheader: /* @__PURE__ */ t(ar, { children: s[_.key] }),
|
11957
|
+
children: _.subcategories.map(
|
11958
|
+
(k, X) => k.beats.length > 0 && /* @__PURE__ */ d(O, { children: [
|
11950
11959
|
/* @__PURE__ */ t(Z, { disablePadding: !0, children: /* @__PURE__ */ d(
|
11951
11960
|
dA,
|
11952
11961
|
{
|
11953
|
-
onClick: () =>
|
11962
|
+
onClick: () => G(_.key, k.key),
|
11954
11963
|
children: [
|
11955
11964
|
/* @__PURE__ */ t(
|
11956
11965
|
lA,
|
@@ -11970,14 +11979,14 @@ const fi = ({
|
|
11970
11979
|
]
|
11971
11980
|
}
|
11972
11981
|
) }),
|
11973
|
-
/* @__PURE__ */ t(Q, { sx: { ml:
|
11982
|
+
/* @__PURE__ */ t(Q, { sx: { ml: X < _.subcategories.length - 1 ? 24 : 0 } })
|
11974
11983
|
] }, k.key)
|
11975
11984
|
)
|
11976
11985
|
},
|
11977
|
-
|
11986
|
+
_.key
|
11978
11987
|
)
|
11979
11988
|
) }) : /* @__PURE__ */ t(Y1, { content: A }),
|
11980
|
-
/* @__PURE__ */ d(
|
11989
|
+
/* @__PURE__ */ d(O, { boxSizing: "border-box", pb: 32, pt: 24, px: 24, children: [
|
11981
11990
|
n.length > 0 && /* @__PURE__ */ t(
|
11982
11991
|
Ta,
|
11983
11992
|
{
|
@@ -12008,11 +12017,11 @@ const fi = ({
|
|
12008
12017
|
V1,
|
12009
12018
|
{
|
12010
12019
|
content: A,
|
12011
|
-
disabledBeatTemplates: L !== "" ? o.filter((
|
12020
|
+
disabledBeatTemplates: L !== "" ? o.filter((_) => _.key === T)[0].subcategories.filter((_) => _.key === L)[0].beats : [],
|
12012
12021
|
handleEnableBeatTemplates: B,
|
12013
12022
|
isOpen: m,
|
12014
12023
|
isUpdateLoading: i,
|
12015
|
-
onClose:
|
12024
|
+
onClose: K,
|
12016
12025
|
translatedSubCatetgory: c[L]
|
12017
12026
|
}
|
12018
12027
|
)
|
@@ -12079,7 +12088,7 @@ const fi = ({
|
|
12079
12088
|
children: s
|
12080
12089
|
}
|
12081
12090
|
), f = /* @__PURE__ */ d(
|
12082
|
-
|
12091
|
+
O,
|
12083
12092
|
{
|
12084
12093
|
"data-ui-test": "mx-insights-sudd-mini-body-header",
|
12085
12094
|
sx: { display: "flex", flexDirection: "row", gap: 8, justifyContent: "center" },
|
@@ -12099,7 +12108,7 @@ const fi = ({
|
|
12099
12108
|
}
|
12100
12109
|
);
|
12101
12110
|
return /* @__PURE__ */ t(ua, { theme: l, children: /* @__PURE__ */ t(
|
12102
|
-
|
12111
|
+
O,
|
12103
12112
|
{
|
12104
12113
|
sx: {
|
12105
12114
|
backgroundColor: l.palette.background.highlight,
|
@@ -12131,7 +12140,7 @@ const fi = ({
|
|
12131
12140
|
}
|
12132
12141
|
),
|
12133
12142
|
!o && /* @__PURE__ */ t(
|
12134
|
-
|
12143
|
+
O,
|
12135
12144
|
{
|
12136
12145
|
sx: {
|
12137
12146
|
display: "flex",
|
@@ -12174,7 +12183,7 @@ const fi = ({
|
|
12174
12183
|
children: [
|
12175
12184
|
o ? f : C,
|
12176
12185
|
/* @__PURE__ */ d(
|
12177
|
-
|
12186
|
+
O,
|
12178
12187
|
{
|
12179
12188
|
sx: {
|
12180
12189
|
display: "flex",
|
@@ -13414,7 +13423,7 @@ const yt = g.createContext(null), lh = ({
|
|
13414
13423
|
scrollX: o
|
13415
13424
|
}) => {
|
13416
13425
|
const s = Lh(), { carouselCopy: c } = ke(), u = Math.floor(o) > i || e === 0, l = o < 0 || n - 1 === e, h = "#BBBCBC", C = A?.primary_300 ? A?.primary_300 : "#2D64EF";
|
13417
|
-
return /* @__PURE__ */ d(
|
13426
|
+
return /* @__PURE__ */ d(O, { className: s, children: [
|
13418
13427
|
/* @__PURE__ */ t(
|
13419
13428
|
RA,
|
13420
13429
|
{
|
@@ -13488,8 +13497,8 @@ const yt = g.createContext(null), lh = ({
|
|
13488
13497
|
variant: u,
|
13489
13498
|
widthOverrides: l
|
13490
13499
|
}) => {
|
13491
|
-
const h = Ih(r, c, l), C = g.useRef(null), [f, v] = g.useState(0), [m, E] = g.useState(null), [T, S] = g.useState(null), { carouselCopy: L } = ke(), { onEvent:
|
13492
|
-
|
13500
|
+
const h = Ih(r, c, l), C = g.useRef(null), [f, v] = g.useState(0), [m, E] = g.useState(null), [T, S] = g.useState(null), { carouselCopy: L } = ke(), { onEvent: D } = wt(), N = () => {
|
13501
|
+
D(ZA.ON_CAROUSEL_FORWARD_CLICK), C.current && C.current.scrollTo({
|
13493
13502
|
left: (
|
13494
13503
|
// Adds the flex gap to the carousel ulRef's width
|
13495
13504
|
(C.current.offsetWidth + 8) * (Math.floor(f / (C.current.offsetWidth + 8)) + 1)
|
@@ -13498,19 +13507,19 @@ const yt = g.createContext(null), lh = ({
|
|
13498
13507
|
behavior: "smooth"
|
13499
13508
|
});
|
13500
13509
|
}, x = () => {
|
13501
|
-
|
13510
|
+
D(ZA.ON_CAROUSEL_BACK_CLICK), C.current && C.current.scrollTo({
|
13502
13511
|
left: (C.current.offsetWidth + 8) * (Math.floor(f / (C.current.offsetWidth + 8)) - 1),
|
13503
13512
|
top: 0,
|
13504
13513
|
behavior: "smooth"
|
13505
13514
|
});
|
13506
|
-
},
|
13515
|
+
}, G = () => {
|
13507
13516
|
C.current && v(C.current.scrollLeft);
|
13508
|
-
},
|
13517
|
+
}, K = () => {
|
13509
13518
|
if (!T || !m) return;
|
13510
|
-
T - m > mh ?
|
13519
|
+
T - m > mh ? D(ZA.ON_CAROUSEL_FORWARD_SWIPE) : D(ZA.ON_CAROUSEL_BACK_SWIPE);
|
13511
13520
|
}, B = (q) => {
|
13512
13521
|
E(q.targetTouches[0].clientX);
|
13513
|
-
},
|
13522
|
+
}, _ = (q) => {
|
13514
13523
|
E(null), S(q.targetTouches[0].clientX);
|
13515
13524
|
}, k = {
|
13516
13525
|
clientColorScheme: e,
|
@@ -13519,16 +13528,16 @@ const yt = g.createContext(null), lh = ({
|
|
13519
13528
|
showIcon: s,
|
13520
13529
|
variant: u,
|
13521
13530
|
widthOverrides: l
|
13522
|
-
},
|
13531
|
+
}, X = C.current && C.current.offsetWidth ? Math.round(f / C.current.offsetWidth) : 0, oA = C.current ? C.current.scrollWidth - C.current.offsetWidth : 0;
|
13523
13532
|
return /* @__PURE__ */ d("div", { className: h, children: [
|
13524
13533
|
/* @__PURE__ */ d(
|
13525
13534
|
"ul",
|
13526
13535
|
{
|
13527
13536
|
className: "mx-insights-micro-carousel-container",
|
13528
|
-
onScroll:
|
13529
|
-
onTouchEnd:
|
13537
|
+
onScroll: G,
|
13538
|
+
onTouchEnd: K,
|
13530
13539
|
onTouchMove: B,
|
13531
|
-
onTouchStart:
|
13540
|
+
onTouchStart: _,
|
13532
13541
|
ref: C,
|
13533
13542
|
children: [
|
13534
13543
|
A.map((q, uA) => /* @__PURE__ */ t(
|
@@ -13541,7 +13550,7 @@ const yt = g.createContext(null), lh = ({
|
|
13541
13550
|
),
|
13542
13551
|
beat: q,
|
13543
13552
|
index: uA,
|
13544
|
-
isActiveCard: uA ===
|
13553
|
+
isActiveCard: uA === X,
|
13545
13554
|
onCardClick: a,
|
13546
13555
|
posthog: i,
|
13547
13556
|
...k
|
@@ -13551,7 +13560,7 @@ const yt = g.createContext(null), lh = ({
|
|
13551
13560
|
/* @__PURE__ */ t(
|
13552
13561
|
Hh,
|
13553
13562
|
{
|
13554
|
-
isActiveCard:
|
13563
|
+
isActiveCard: X === A.length,
|
13555
13564
|
onCardClick: a,
|
13556
13565
|
...k
|
13557
13566
|
}
|
@@ -13563,7 +13572,7 @@ const yt = g.createContext(null), lh = ({
|
|
13563
13572
|
wh,
|
13564
13573
|
{
|
13565
13574
|
clientColorScheme: e,
|
13566
|
-
currentBeatIndex:
|
13575
|
+
currentBeatIndex: X,
|
13567
13576
|
numBeats: A.length + 1,
|
13568
13577
|
onNextClick: N,
|
13569
13578
|
onPreviousClick: x,
|
@@ -13620,12 +13629,12 @@ const yt = g.createContext(null), lh = ({
|
|
13620
13629
|
g.useEffect(() => {
|
13621
13630
|
m && m <= 325 && S(3), m && m > 325 && S(2);
|
13622
13631
|
}, [m]);
|
13623
|
-
const { cardStyle: L, linkTextStyle:
|
13632
|
+
const { cardStyle: L, linkTextStyle: D } = h, N = v ? L : { border: "none", boxShadow: "none", ...L }, x = bh(
|
13624
13633
|
N,
|
13625
13634
|
a,
|
13626
13635
|
C,
|
13627
13636
|
T,
|
13628
|
-
|
13637
|
+
D,
|
13629
13638
|
o
|
13630
13639
|
);
|
13631
13640
|
return /* @__PURE__ */ d(
|
@@ -13791,7 +13800,7 @@ const yt = g.createContext(null), lh = ({
|
|
13791
13800
|
}
|
13792
13801
|
);
|
13793
13802
|
}, Oh = I(Dh), xh = () => /* @__PURE__ */ t(
|
13794
|
-
|
13803
|
+
O,
|
13795
13804
|
{
|
13796
13805
|
sx: {
|
13797
13806
|
alignItems: "center",
|
@@ -13829,16 +13838,16 @@ const yt = g.createContext(null), lh = ({
|
|
13829
13838
|
variant: S,
|
13830
13839
|
widthOverrides: L
|
13831
13840
|
}) => {
|
13832
|
-
const [
|
13841
|
+
const [D, N] = ae("STANDARD"), [x, G] = ae(!1), K = ps([s], Pe), B = ms([c], Pe);
|
13833
13842
|
g.useEffect(() => {
|
13834
13843
|
Pe.initialize(a, m);
|
13835
13844
|
}, [a, m]), g.useEffect(() => {
|
13836
|
-
const
|
13837
|
-
|
13845
|
+
const X = window.innerHeight;
|
13846
|
+
X < 180 ? N("STANDARD") : X >= 180 && X < 200 ? N("LARGE") : X >= 200 && X < 248 ? N("XLARGE") : X >= 248 && N("XXLARGE");
|
13838
13847
|
}, []), g.useEffect(() => {
|
13839
|
-
|
13848
|
+
G(!A && Pe.isInitialized);
|
13840
13849
|
}, [A, Pe.isInitialized]);
|
13841
|
-
const
|
13850
|
+
const _ = {
|
13842
13851
|
showCTAColocatedWithText: r,
|
13843
13852
|
heightOverrides: i,
|
13844
13853
|
onCardClick: o,
|
@@ -13847,17 +13856,17 @@ const yt = g.createContext(null), lh = ({
|
|
13847
13856
|
useDarkMode: E,
|
13848
13857
|
widthOverrides: L
|
13849
13858
|
}, k = {
|
13850
|
-
carouselSize:
|
13859
|
+
carouselSize: D,
|
13851
13860
|
posthog: u,
|
13852
13861
|
variant: S,
|
13853
|
-
...
|
13862
|
+
..._
|
13854
13863
|
};
|
13855
13864
|
return (
|
13856
13865
|
// The Theme provider must wrap the component so that the styles don't break when imported into other applications.
|
13857
13866
|
/* @__PURE__ */ d(ua, { theme: vt(E ? "dark" : "light"), children: [
|
13858
13867
|
/* @__PURE__ */ t(Zo, {}),
|
13859
|
-
/* @__PURE__ */ t(lh, { onEvent:
|
13860
|
-
|
13868
|
+
/* @__PURE__ */ t(lh, { onEvent: K, onPageview: B, store: Pe, children: /* @__PURE__ */ d(
|
13869
|
+
O,
|
13861
13870
|
{
|
13862
13871
|
sx: {
|
13863
13872
|
boxSizing: "border-box",
|
@@ -13883,7 +13892,7 @@ const yt = g.createContext(null), lh = ({
|
|
13883
13892
|
clientColorScheme: n,
|
13884
13893
|
showCarouselControls: h,
|
13885
13894
|
variant: l ? S : void 0,
|
13886
|
-
...
|
13895
|
+
..._
|
13887
13896
|
}
|
13888
13897
|
),
|
13889
13898
|
x && !e.length && T && /* @__PURE__ */ t(Mh, { clientColorScheme: n, ...k }),
|
@@ -14186,7 +14195,7 @@ const yt = g.createContext(null), lh = ({
|
|
14186
14195
|
role: "button",
|
14187
14196
|
sx: { cursor: "pointer" },
|
14188
14197
|
children: [
|
14189
|
-
/* @__PURE__ */ t(
|
14198
|
+
/* @__PURE__ */ t(O, { borderRadius: 4, height: 8, sx: { backgroundColor: r.color }, width: 8 }),
|
14190
14199
|
/* @__PURE__ */ t(y, { bold: r.guid === n, variant: "XSmall", children: r.name })
|
14191
14200
|
]
|
14192
14201
|
},
|
@@ -14221,7 +14230,7 @@ const yt = g.createContext(null), lh = ({
|
|
14221
14230
|
}, v = (m) => {
|
14222
14231
|
c(s === m ? "" : m);
|
14223
14232
|
};
|
14224
|
-
return /* @__PURE__ */ d(
|
14233
|
+
return /* @__PURE__ */ d(O, { width: "100%", children: [
|
14225
14234
|
/* @__PURE__ */ d($e, { onChange: f, value: u, variant: "fullWidth", children: [
|
14226
14235
|
/* @__PURE__ */ t(
|
14227
14236
|
Ae,
|
@@ -14248,7 +14257,7 @@ const yt = g.createContext(null), lh = ({
|
|
14248
14257
|
}
|
14249
14258
|
)
|
14250
14259
|
] }),
|
14251
|
-
u === 0 && /* @__PURE__ */ t(
|
14260
|
+
u === 0 && /* @__PURE__ */ t(O, { children: /* @__PURE__ */ d(w, { direction: "row", gap: 16, justifyContent: "center", p: 24, children: [
|
14252
14261
|
/* @__PURE__ */ t(
|
14253
14262
|
Xt,
|
14254
14263
|
{
|
@@ -14267,7 +14276,7 @@ const yt = g.createContext(null), lh = ({
|
|
14267
14276
|
}
|
14268
14277
|
)
|
14269
14278
|
] }) }),
|
14270
|
-
u === 1 && /* @__PURE__ */ t(
|
14279
|
+
u === 1 && /* @__PURE__ */ t(O, { children: /* @__PURE__ */ d(w, { direction: "row", gap: 16, justifyContent: "center", p: 24, children: [
|
14271
14280
|
/* @__PURE__ */ t(
|
14272
14281
|
Xt,
|
14273
14282
|
{
|
@@ -14321,7 +14330,7 @@ const yt = g.createContext(null), lh = ({
|
|
14321
14330
|
sx: { minHeight: 44, px: 8, py: 0 },
|
14322
14331
|
children: [
|
14323
14332
|
/* @__PURE__ */ t(
|
14324
|
-
|
14333
|
+
O,
|
14325
14334
|
{
|
14326
14335
|
borderRadius: 4,
|
14327
14336
|
flexShrink: 0,
|
@@ -14445,38 +14454,38 @@ const yt = g.createContext(null), lh = ({
|
|
14445
14454
|
), L = g.useMemo(
|
14446
14455
|
() => Ii(e, n, Uh(A)),
|
14447
14456
|
[e, n]
|
14448
|
-
),
|
14449
|
-
() => u.find((
|
14457
|
+
), D = g.useMemo(
|
14458
|
+
() => u.find((K) => K.guid === v),
|
14450
14459
|
[v]
|
14451
|
-
), N = (
|
14460
|
+
), N = (K, B) => {
|
14452
14461
|
f(B), h("");
|
14453
|
-
}, x = (
|
14454
|
-
h(l ===
|
14455
|
-
},
|
14462
|
+
}, x = (K) => {
|
14463
|
+
h(l === K || K === "0" ? "" : K);
|
14464
|
+
}, G = (K) => {
|
14456
14465
|
const B = {
|
14457
14466
|
accounts: s,
|
14458
14467
|
dateRange: i
|
14459
14468
|
};
|
14460
14469
|
if (C === 0)
|
14461
|
-
if (
|
14462
|
-
const
|
14470
|
+
if (K === "other") {
|
14471
|
+
const _ = S.categoryData.find((k) => k.guid === "other");
|
14463
14472
|
c({
|
14464
14473
|
...B,
|
14465
|
-
custom: (k) => !!
|
14474
|
+
custom: (k) => !!_?.categoryTotals?.find((X) => X.guid === k.top_level_category_guid)
|
14466
14475
|
});
|
14467
14476
|
} else
|
14468
14477
|
c({
|
14469
14478
|
...B,
|
14470
|
-
custom: (
|
14479
|
+
custom: (_) => K ? _.top_level_category_guid === K : _.top_level_category_guid !== p.INCOME
|
14471
14480
|
});
|
14472
14481
|
else
|
14473
14482
|
c({
|
14474
14483
|
...B,
|
14475
|
-
custom: (
|
14484
|
+
custom: (_) => K ? _.category_guid === K : _.top_level_category_guid === p.INCOME
|
14476
14485
|
});
|
14477
14486
|
T(!0);
|
14478
14487
|
};
|
14479
|
-
return /* @__PURE__ */ d(
|
14488
|
+
return /* @__PURE__ */ d(O, { children: [
|
14480
14489
|
/* @__PURE__ */ d($e, { onChange: N, value: C, variant: "fullWidth", children: [
|
14481
14490
|
/* @__PURE__ */ t(
|
14482
14491
|
Ae,
|
@@ -14508,7 +14517,7 @@ const yt = g.createContext(null), lh = ({
|
|
14508
14517
|
{
|
14509
14518
|
data: S,
|
14510
14519
|
onSelected: x,
|
14511
|
-
onViewTransactions:
|
14520
|
+
onViewTransactions: G,
|
14512
14521
|
selectedId: l,
|
14513
14522
|
title: a.spend_tab_title
|
14514
14523
|
}
|
@@ -14518,7 +14527,7 @@ const yt = g.createContext(null), lh = ({
|
|
14518
14527
|
{
|
14519
14528
|
data: L,
|
14520
14529
|
onSelected: x,
|
14521
|
-
onViewTransactions:
|
14530
|
+
onViewTransactions: G,
|
14522
14531
|
selectedId: l,
|
14523
14532
|
title: a.income_tab_title
|
14524
14533
|
}
|
@@ -14537,10 +14546,10 @@ const yt = g.createContext(null), lh = ({
|
|
14537
14546
|
hA,
|
14538
14547
|
{
|
14539
14548
|
ariaLabelClose: a.close_drawer_aria,
|
14540
|
-
isOpen: !!
|
14549
|
+
isOpen: !!D,
|
14541
14550
|
onClose: () => m(""),
|
14542
14551
|
title: a.transaction_details_drawer_title,
|
14543
|
-
children:
|
14552
|
+
children: D && /* @__PURE__ */ t(An, { transaction: D })
|
14544
14553
|
}
|
14545
14554
|
)
|
14546
14555
|
] });
|
@@ -14563,7 +14572,7 @@ const yt = g.createContext(null), lh = ({
|
|
14563
14572
|
onBackClick: A,
|
14564
14573
|
sx: e,
|
14565
14574
|
title: r.title,
|
14566
|
-
children: /* @__PURE__ */ t(
|
14575
|
+
children: /* @__PURE__ */ t(O, { height: "calc(100dvh - 150px)", width: "100%", children: /* @__PURE__ */ t(Wh, {}) })
|
14567
14576
|
}
|
14568
14577
|
);
|
14569
14578
|
}, SC = I(Yh), Vh = (A) => {
|
@@ -14573,7 +14582,7 @@ const yt = g.createContext(null), lh = ({
|
|
14573
14582
|
const { categories: e } = b(), n = Le[A];
|
14574
14583
|
return /* @__PURE__ */ d(w, { alignItems: "center", direction: "row", justifyContent: "center", children: [
|
14575
14584
|
/* @__PURE__ */ t(
|
14576
|
-
|
14585
|
+
O,
|
14577
14586
|
{
|
14578
14587
|
"aria-label": H(e.category_icon_label_aria, n),
|
14579
14588
|
role: "img",
|
@@ -14632,7 +14641,7 @@ const yt = g.createContext(null), lh = ({
|
|
14632
14641
|
);
|
14633
14642
|
return Object.values(l);
|
14634
14643
|
}, [A]);
|
14635
|
-
return /* @__PURE__ */ t(
|
14644
|
+
return /* @__PURE__ */ t(O, { sx: { height: e, width: "100%", overflowX: "auto", boxShadow: "none", ...n }, children: /* @__PURE__ */ t(
|
14636
14645
|
xn,
|
14637
14646
|
{
|
14638
14647
|
columns: c,
|
@@ -14651,7 +14660,7 @@ const yt = g.createContext(null), lh = ({
|
|
14651
14660
|
}
|
14652
14661
|
) });
|
14653
14662
|
}, A3 = ({ onBackClick: A, sx: e }) => {
|
14654
|
-
const n = Be(), { onEvent: r } = V(), { isDesktop: a, isTablet: i, isMobile: o } = FA(), { accounts: s } = DA(), { categories: c, loadMonthlyCategoryTotals: u, monthlyCategoryTotals: l } = OA(), { isInitialized: h, selectedAccounts: C, setSelectedAccounts: f } = pA(), { trends: v } = b(), m = n.palette.mode === "dark", [E, T] = g.useState(!1), [S, L] = g.useState("Chart"), [
|
14663
|
+
const n = Be(), { onEvent: r } = V(), { isDesktop: a, isTablet: i, isMobile: o } = FA(), { accounts: s } = DA(), { categories: c, loadMonthlyCategoryTotals: u, monthlyCategoryTotals: l } = OA(), { isInitialized: h, selectedAccounts: C, setSelectedAccounts: f } = pA(), { trends: v } = b(), m = n.palette.mode === "dark", [E, T] = g.useState(!1), [S, L] = g.useState("Chart"), [D, N] = g.useState({
|
14655
14664
|
start: wA(fe(/* @__PURE__ */ new Date(), 5)),
|
14656
14665
|
end: bA(/* @__PURE__ */ new Date())
|
14657
14666
|
});
|
@@ -14660,12 +14669,12 @@ const yt = g.createContext(null), lh = ({
|
|
14660
14669
|
}, [s]), g.useEffect(() => {
|
14661
14670
|
h && u(
|
14662
14671
|
C,
|
14663
|
-
|
14664
|
-
|
14672
|
+
D.start,
|
14673
|
+
D.end
|
14665
14674
|
).finally(() => {
|
14666
14675
|
T(!0);
|
14667
14676
|
});
|
14668
|
-
}, [c, h, C,
|
14677
|
+
}, [c, h, C, D]), console.log("TrendsFullWidget", { monthlyCategoryTotals: l });
|
14669
14678
|
const x = g.useMemo(() => {
|
14670
14679
|
const q = A1(l).sort(
|
14671
14680
|
(uA, aA) => uA.month - aA.month
|
@@ -14680,16 +14689,16 @@ const yt = g.createContext(null), lh = ({
|
|
14680
14689
|
unstackedColors: [je[p.INCOME]],
|
14681
14690
|
unstackedCategoryGuids: [p.INCOME]
|
14682
14691
|
};
|
14683
|
-
}, [l]),
|
14692
|
+
}, [l]), G = g.useMemo(() => {
|
14684
14693
|
const q = J(
|
14685
|
-
|
14694
|
+
D.start,
|
14686
14695
|
o ? Y.MONTH_SHORT_YEAR : Y.MONTH_YEAR
|
14687
14696
|
), uA = J(
|
14688
|
-
|
14697
|
+
D.end,
|
14689
14698
|
o ? Y.MONTH_SHORT_YEAR : Y.MONTH_YEAR
|
14690
14699
|
);
|
14691
14700
|
return `${q} - ${uA}`;
|
14692
|
-
}, [
|
14701
|
+
}, [D, o]), K = (q, uA) => {
|
14693
14702
|
L(uA ?? S), r(U.TRENDS_CLICK_TOGGLE);
|
14694
14703
|
}, B = (q) => {
|
14695
14704
|
u(C, q?.[0], q?.[1]), N({
|
@@ -14698,11 +14707,11 @@ const yt = g.createContext(null), lh = ({
|
|
14698
14707
|
}), r(U.TRENDS_CLICK_DATE, {
|
14699
14708
|
time_period: $o(q?.[1], q?.[0]) + "M"
|
14700
14709
|
});
|
14701
|
-
},
|
14710
|
+
}, _ = () => {
|
14702
14711
|
r(U.TRENDS_CLICK_FILTER);
|
14703
14712
|
}, k = (q) => {
|
14704
14713
|
r(U.TRENDS_HOVER_AREA, { category: q });
|
14705
|
-
},
|
14714
|
+
}, X = (q) => {
|
14706
14715
|
r(U.TRENDS_HOVER_LEGEND, { category: q });
|
14707
14716
|
}, oA = (q) => {
|
14708
14717
|
r(U.TRENDS_HOVER_POINT, { category: q });
|
@@ -14712,9 +14721,9 @@ const yt = g.createContext(null), lh = ({
|
|
14712
14721
|
{
|
14713
14722
|
accountOptions: s,
|
14714
14723
|
calendarActions: { onRangeChanged: B },
|
14715
|
-
dateRange:
|
14724
|
+
dateRange: D,
|
14716
14725
|
dateRangeVariant: "timeframebuttons",
|
14717
|
-
onAccountsFilterClick:
|
14726
|
+
onAccountsFilterClick: _,
|
14718
14727
|
onBackClick: A,
|
14719
14728
|
sx: e,
|
14720
14729
|
title: v.title,
|
@@ -14733,7 +14742,7 @@ const yt = g.createContext(null), lh = ({
|
|
14733
14742
|
justifyContent: "space-between",
|
14734
14743
|
sx: { pb: o ? 12 : 24, pt: o ? 24 : 48 },
|
14735
14744
|
children: [
|
14736
|
-
/* @__PURE__ */ d(
|
14745
|
+
/* @__PURE__ */ d(O, { sx: { mr: 10, minWidth: "60%" }, children: [
|
14737
14746
|
/* @__PURE__ */ t(
|
14738
14747
|
y,
|
14739
14748
|
{
|
@@ -14748,13 +14757,13 @@ const yt = g.createContext(null), lh = ({
|
|
14748
14757
|
children: v.sub_title
|
14749
14758
|
}
|
14750
14759
|
),
|
14751
|
-
/* @__PURE__ */ t(y, { variant: a ? "Body" : "Small", children:
|
14760
|
+
/* @__PURE__ */ t(y, { variant: a ? "Body" : "Small", children: G })
|
14752
14761
|
] }),
|
14753
14762
|
/* @__PURE__ */ t(
|
14754
14763
|
ga,
|
14755
14764
|
{
|
14756
14765
|
exclusive: !0,
|
14757
|
-
onChange:
|
14766
|
+
onChange: K,
|
14758
14767
|
orientation: "horizontal",
|
14759
14768
|
value: S,
|
14760
14769
|
children: ["Chart", "Table"].map((q) => /* @__PURE__ */ t(
|
@@ -14792,14 +14801,14 @@ const yt = g.createContext(null), lh = ({
|
|
14792
14801
|
]
|
14793
14802
|
}
|
14794
14803
|
),
|
14795
|
-
/* @__PURE__ */ d(
|
14804
|
+
/* @__PURE__ */ d(O, { children: [
|
14796
14805
|
S === "Chart" && /* @__PURE__ */ t(
|
14797
14806
|
$s,
|
14798
14807
|
{
|
14808
|
+
chartData: x,
|
14799
14809
|
onHoverArea: k,
|
14800
|
-
onHoverLegend:
|
14801
|
-
onHoverPoint: oA
|
14802
|
-
chartData: x
|
14810
|
+
onHoverLegend: X,
|
14811
|
+
onHoverPoint: oA
|
14803
14812
|
}
|
14804
14813
|
),
|
14805
14814
|
S === "Table" && /* @__PURE__ */ t($h, { monthlyCategoryTotals: l, sx: {} })
|