@mx-cartographer/experiences 3.13.5-alpha.mm.2 → 3.13.5-alpha.mm.3
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/index.es.js +311 -311
- package/dist/index.es.js.map +1 -1
- package/package.json +1 -1
package/dist/index.es.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsx as t, jsxs as d, Fragment as rA } from "react/jsx-runtime";
|
|
2
|
-
import C, { useMemo as Wi, useRef as wa, useEffect as ge, useState as
|
|
2
|
+
import C, { useMemo as Wi, useRef as wa, useEffect as ge, useState as de, createContext as Yi, useContext as Vi } from "react";
|
|
3
3
|
import { observer as T } from "mobx-react-lite";
|
|
4
4
|
import b from "@mui/material/Box";
|
|
5
5
|
import G from "@mui/material/Divider";
|
|
6
6
|
import sA from "@mui/material/List";
|
|
7
7
|
import ke from "@mui/material/ListSubheader";
|
|
8
8
|
import gr from "@mui/system/Stack";
|
|
9
|
-
import { AccountsIcon as Ji, P as CA, Icon as M, useTokens as OA, Text as E, H2 as Wt, CategoryIcon as
|
|
9
|
+
import { AccountsIcon as Ji, P as CA, Icon as M, useTokens as OA, Text as E, H2 as Wt, CategoryIcon as ie, DialogHeader as Zi, DialogFooter as $i, Drawer as Ao, Footer as eo, DateRangePicker as Cr, H3 as Yt, H1 as Ce, TextField as Ne, IconWeight as GA, MerchantLogo as He, CategoryIconVariants as La, InstitutionLogo as fe, THEMES as fr, createMXTheme as Te } from "@kyper/mui";
|
|
10
10
|
import to from "bowser";
|
|
11
11
|
import { getUnixTime as fA } from "date-fns/getUnixTime";
|
|
12
12
|
import { intlFormat as no } from "date-fns/intlFormat";
|
|
@@ -29,13 +29,13 @@ import { addDays as me } from "date-fns/addDays";
|
|
|
29
29
|
import { addMonths as $A } from "date-fns/addMonths";
|
|
30
30
|
import { eachDayOfInterval as io } from "date-fns/eachDayOfInterval";
|
|
31
31
|
import { eachWeekOfInterval as oo } from "date-fns/eachWeekOfInterval";
|
|
32
|
-
import { endOfMonth as
|
|
32
|
+
import { endOfMonth as DA } from "date-fns/endOfMonth";
|
|
33
33
|
import { format as kA } from "date-fns/format";
|
|
34
|
-
import { isBefore as
|
|
34
|
+
import { isBefore as mA } from "date-fns/isBefore";
|
|
35
35
|
import { isSameMonth as so } from "date-fns/isSameMonth";
|
|
36
|
-
import { startOfMonth as
|
|
36
|
+
import { startOfMonth as pA } from "date-fns/startOfMonth";
|
|
37
37
|
import { startOfToday as J } from "date-fns/startOfToday";
|
|
38
|
-
import { subMonths as
|
|
38
|
+
import { subMonths as ue } from "date-fns/subMonths";
|
|
39
39
|
import he from "@mui/material/Paper";
|
|
40
40
|
import co from "@mui/icons-material/KeyboardArrowLeftRounded";
|
|
41
41
|
import lo from "@mui/icons-material/KeyboardArrowRightRounded";
|
|
@@ -69,12 +69,12 @@ import Rt from "@mui/material/InputAdornment";
|
|
|
69
69
|
import Ho from "@mui/material/Radio";
|
|
70
70
|
import be from "@mui/material/Avatar";
|
|
71
71
|
import xA from "@mui/material/ListItemAvatar";
|
|
72
|
-
import
|
|
72
|
+
import oe from "@mui/material/ListItemIcon";
|
|
73
73
|
import { makeAutoObservable as TA, runInAction as U, observable as zo } from "mobx";
|
|
74
74
|
import { differenceInDays as _o } from "date-fns/differenceInDays";
|
|
75
75
|
import { getMonth as Ye } from "date-fns/getMonth";
|
|
76
76
|
import { useVirtualizer as Ia } from "@tanstack/react-virtual";
|
|
77
|
-
import { fromUnixTime as
|
|
77
|
+
import { fromUnixTime as bA } from "date-fns/fromUnixTime";
|
|
78
78
|
import { format as Bo, fromUnixTime as yn, isSameDay as qo, subDays as Ko, startOfToday as ko, endOfToday as Go } from "date-fns";
|
|
79
79
|
import WA from "@mui/material/Tab";
|
|
80
80
|
import Xe from "@mui/material/Tabs";
|
|
@@ -1149,7 +1149,7 @@ const gn = (A, e) => A.reduce((n, r) => (n[r.guid] = e?.includes(r.guid), n), {}
|
|
|
1149
1149
|
) }),
|
|
1150
1150
|
sx: { overflow: "auto", width: "100%" },
|
|
1151
1151
|
children: S.map((L) => {
|
|
1152
|
-
const P = c[L.guid],
|
|
1152
|
+
const P = c[L.guid], x = `${L.name}${h && L.accountNumber ? ` *${L.accountNumber.slice(-4)}` : ""}`;
|
|
1153
1153
|
return /* @__PURE__ */ t(
|
|
1154
1154
|
V,
|
|
1155
1155
|
{
|
|
@@ -1178,7 +1178,7 @@ const gn = (A, e) => A.reduce((n, r) => (n[r.guid] = e?.includes(r.guid), n), {}
|
|
|
1178
1178
|
}
|
|
1179
1179
|
}
|
|
1180
1180
|
),
|
|
1181
|
-
label:
|
|
1181
|
+
label: x
|
|
1182
1182
|
}
|
|
1183
1183
|
)
|
|
1184
1184
|
},
|
|
@@ -1514,10 +1514,10 @@ const qs = (A, e) => {
|
|
|
1514
1514
|
selectedIndex: c,
|
|
1515
1515
|
valueFormatter: u = (l) => `${l}`
|
|
1516
1516
|
}) => {
|
|
1517
|
-
const l = OA(), h = Ys(l), g = r.reduce(Us, []), m = A !== void 0 ? A : g.reduce(Fs, 0) / g.length, f = Math.max(...g), y = Math.min(...g), p = g.reduce(js, 0), S = f >= 0, I = y < 0, L = Pr(S, I, a), P = Pr(I, S, a),
|
|
1517
|
+
const l = OA(), h = Ys(l), g = r.reduce(Us, []), m = A !== void 0 ? A : g.reduce(Fs, 0) / g.length, f = Math.max(...g), y = Math.min(...g), p = g.reduce(js, 0), S = f >= 0, I = y < 0, L = Pr(S, I, a), P = Pr(I, S, a), x = Ws(m, f, y, L || P), O = (q) => c === void 0 || q === c ? n : `${n}80`, N = () => /* @__PURE__ */ t(
|
|
1518
1518
|
Or,
|
|
1519
1519
|
{
|
|
1520
|
-
averageLineHeight:
|
|
1520
|
+
averageLineHeight: x,
|
|
1521
1521
|
bottomHeight: P,
|
|
1522
1522
|
color: "",
|
|
1523
1523
|
range: p,
|
|
@@ -1534,9 +1534,9 @@ const qs = (A, e) => {
|
|
|
1534
1534
|
Or,
|
|
1535
1535
|
{
|
|
1536
1536
|
ariaLabel: q.ariaLabel,
|
|
1537
|
-
averageLineHeight:
|
|
1537
|
+
averageLineHeight: x,
|
|
1538
1538
|
bottomHeight: P,
|
|
1539
|
-
color:
|
|
1539
|
+
color: O(z),
|
|
1540
1540
|
index: z,
|
|
1541
1541
|
onClick: s,
|
|
1542
1542
|
range: p,
|
|
@@ -1681,9 +1681,9 @@ const ec = ({
|
|
|
1681
1681
|
h(e), m(n), e && u(e);
|
|
1682
1682
|
}, [e, n]);
|
|
1683
1683
|
const f = C.useMemo(() => {
|
|
1684
|
-
const L = oo({ start:
|
|
1685
|
-
for (let
|
|
1686
|
-
const
|
|
1684
|
+
const L = oo({ start: pA(c), end: DA(c) }), P = [];
|
|
1685
|
+
for (let x = 0; x < L.length; x++) {
|
|
1686
|
+
const O = L[x], N = io({ start: O, end: me(O, 6) }), q = [];
|
|
1687
1687
|
for (let z = 0; z < N.length; z++)
|
|
1688
1688
|
q.push(N[z]);
|
|
1689
1689
|
P.push(q);
|
|
@@ -1695,7 +1695,7 @@ const ec = ({
|
|
|
1695
1695
|
h(L), r?.(L);
|
|
1696
1696
|
return;
|
|
1697
1697
|
}
|
|
1698
|
-
!l || g ? (h(L), m(void 0)) :
|
|
1698
|
+
!l || g ? (h(L), m(void 0)) : mA(L, l) ? (m(l), h(L), a?.(L, l)) : (m(L), a?.(l, L));
|
|
1699
1699
|
}
|
|
1700
1700
|
}, p = () => {
|
|
1701
1701
|
const L = J();
|
|
@@ -1703,7 +1703,7 @@ const ec = ({
|
|
|
1703
1703
|
}, S = () => {
|
|
1704
1704
|
u($A(c, 1));
|
|
1705
1705
|
}, I = () => {
|
|
1706
|
-
u(
|
|
1706
|
+
u(ue(c, 1));
|
|
1707
1707
|
};
|
|
1708
1708
|
return /* @__PURE__ */ t("div", { className: `mx-cmn-calendar ${s}`, children: /* @__PURE__ */ d(he, { sx: { boxShadow: "none" }, children: [
|
|
1709
1709
|
/* @__PURE__ */ t(
|
|
@@ -1716,16 +1716,16 @@ const ec = ({
|
|
|
1716
1716
|
}
|
|
1717
1717
|
),
|
|
1718
1718
|
/* @__PURE__ */ t("div", { className: "mx-cmn-calendar-header-row", children: f[0].map((L, P) => /* @__PURE__ */ t("div", { className: "mx-cmn-calendar-header-cell", children: /* @__PURE__ */ t(E, { bold: !0, variant: "Small", children: kA(L, "EEEEE") }) }, P)) }),
|
|
1719
|
-
f.map((L, P) => /* @__PURE__ */ t("div", { className: "mx-cmn-calendar-week", children: L.map((
|
|
1719
|
+
f.map((L, P) => /* @__PURE__ */ t("div", { className: "mx-cmn-calendar-week", children: L.map((x, O) => /* @__PURE__ */ t(
|
|
1720
1720
|
Zs,
|
|
1721
1721
|
{
|
|
1722
1722
|
beginDate: l,
|
|
1723
|
-
date:
|
|
1723
|
+
date: x,
|
|
1724
1724
|
endDate: g,
|
|
1725
|
-
isInMonth: so(
|
|
1725
|
+
isInMonth: so(x, c),
|
|
1726
1726
|
onClick: y
|
|
1727
1727
|
},
|
|
1728
|
-
|
|
1728
|
+
O
|
|
1729
1729
|
)) }, `w-${P}`)),
|
|
1730
1730
|
/* @__PURE__ */ t("div", { className: "mx-cmn-calendar-today-container", children: /* @__PURE__ */ t(oA, { onClick: p, size: "small", variant: "text", children: A.today }) })
|
|
1731
1731
|
] }) });
|
|
@@ -1917,7 +1917,7 @@ const ec = ({
|
|
|
1917
1917
|
valueFormatterString: g = "0,0",
|
|
1918
1918
|
width: m
|
|
1919
1919
|
}) => {
|
|
1920
|
-
const f = qA(), y = n.flat().map((N) => N.x), p = n.flat().map((N) => N.y), S = Math.round(p.reduce((N, q) => q + N, 0) / p.length), I = Math.floor(Math.min(...p) / 100) * 100, L = Math.ceil(Math.max(...p) / 100) * 100, P = I * 0.95,
|
|
1920
|
+
const f = qA(), y = n.flat().map((N) => N.x), p = n.flat().map((N) => N.y), S = Math.round(p.reduce((N, q) => q + N, 0) / p.length), I = Math.floor(Math.min(...p) / 100) * 100, L = Math.ceil(Math.max(...p) / 100) * 100, P = I * 0.95, x = L * 2, O = n.map((N, q) => ({
|
|
1921
1921
|
type: s ? "bar" : "line",
|
|
1922
1922
|
curve: "linear",
|
|
1923
1923
|
color: s ? f.palette.chart?.chart6 : e[q] ?? f.palette.primary.main,
|
|
@@ -1933,7 +1933,7 @@ const ec = ({
|
|
|
1933
1933
|
fo,
|
|
1934
1934
|
{
|
|
1935
1935
|
height: r,
|
|
1936
|
-
series:
|
|
1936
|
+
series: O,
|
|
1937
1937
|
sx: {
|
|
1938
1938
|
p: 4,
|
|
1939
1939
|
"& .MuiBarLabel-root": {
|
|
@@ -1953,7 +1953,7 @@ const ec = ({
|
|
|
1953
1953
|
colorMap: c ? {
|
|
1954
1954
|
type: "continuous",
|
|
1955
1955
|
min: P,
|
|
1956
|
-
max:
|
|
1956
|
+
max: x,
|
|
1957
1957
|
color: [f.palette.background.paper, e[0] ?? f.palette.primary.main]
|
|
1958
1958
|
} : void 0,
|
|
1959
1959
|
valueFormatter: (N) => Q(N, g)
|
|
@@ -1964,7 +1964,7 @@ const ec = ({
|
|
|
1964
1964
|
/* @__PURE__ */ t(
|
|
1965
1965
|
po,
|
|
1966
1966
|
{
|
|
1967
|
-
slots: c &&
|
|
1967
|
+
slots: c && O.length < 2 ? {
|
|
1968
1968
|
line: (N) => /* @__PURE__ */ t(sc, { ...N, lineColor: e[0] ?? f.palette.primary.main })
|
|
1969
1969
|
} : void 0
|
|
1970
1970
|
}
|
|
@@ -2026,7 +2026,7 @@ const ec = ({
|
|
|
2026
2026
|
lc,
|
|
2027
2027
|
{
|
|
2028
2028
|
average: S,
|
|
2029
|
-
series:
|
|
2029
|
+
series: O,
|
|
2030
2030
|
style: { position: "absolute", top: 16, left: 16 }
|
|
2031
2031
|
}
|
|
2032
2032
|
)
|
|
@@ -2076,7 +2076,7 @@ const ec = ({
|
|
|
2076
2076
|
"aria-label": B(n.category_icon_label_aria, r),
|
|
2077
2077
|
mb: 4,
|
|
2078
2078
|
role: "img",
|
|
2079
|
-
children: /* @__PURE__ */ t(
|
|
2079
|
+
children: /* @__PURE__ */ t(ie, { categoryGuid: e })
|
|
2080
2080
|
}
|
|
2081
2081
|
),
|
|
2082
2082
|
/* @__PURE__ */ t(E, { variant: "Body", children: r })
|
|
@@ -2100,7 +2100,7 @@ const ec = ({
|
|
|
2100
2100
|
cursorPosition: r,
|
|
2101
2101
|
chartContainerRef: a
|
|
2102
2102
|
}) => {
|
|
2103
|
-
const { common: i } = D(), o = qA(), s = wa(null), [c, u] =
|
|
2103
|
+
const { common: i } = D(), o = qA(), s = wa(null), [c, u] = de({ x: r.x, y: r.y });
|
|
2104
2104
|
if (ge(() => {
|
|
2105
2105
|
(() => {
|
|
2106
2106
|
const g = s.current, m = a.current;
|
|
@@ -2218,7 +2218,7 @@ const ec = ({
|
|
|
2218
2218
|
hoveredAreaData: null,
|
|
2219
2219
|
isAreaHovered: !1,
|
|
2220
2220
|
cursorPos: { x: 0, y: 0 }
|
|
2221
|
-
}), { hoveredSeriesId: y, hoveredAreaData: p, isAreaHovered: S, cursorPos: I } = m, L = S && y && p, P = !L,
|
|
2221
|
+
}), { hoveredSeriesId: y, hoveredAreaData: p, isAreaHovered: S, cursorPos: I } = m, L = S && y && p, P = !L, x = [...a, ...i], O = x[0]?.dataset?.length ?? 0, N = x.flatMap((R) => R.dataset.map((AA) => AA.x)), q = x.flatMap((R) => R.dataset.map((AA) => AA.y)), z = a[0]?.dataset.map(
|
|
2222
2222
|
(R, AA) => a.reduce((EA, ZA) => EA + (ZA.dataset[AA]?.y ?? 0), 0)
|
|
2223
2223
|
) ?? [0], k = Math.max(...z), X = Math.max(
|
|
2224
2224
|
...i.flatMap((R) => R.dataset.map((AA) => AA.y))
|
|
@@ -2253,13 +2253,13 @@ const ec = ({
|
|
|
2253
2253
|
guid: R,
|
|
2254
2254
|
top_level_guid: AA
|
|
2255
2255
|
}))
|
|
2256
|
-
],
|
|
2256
|
+
], ce = (R) => {
|
|
2257
2257
|
const EA = R.startsWith("stacked-") ? a[parseInt(R.split("-")[1])] : i[parseInt(R.split("-")[1])];
|
|
2258
2258
|
return {
|
|
2259
2259
|
guid: EA.category_guid,
|
|
2260
2260
|
topLevelGuid: EA.top_level_category_guid
|
|
2261
2261
|
};
|
|
2262
|
-
},
|
|
2262
|
+
}, le = (R) => {
|
|
2263
2263
|
g(R), n?.(R ?? "");
|
|
2264
2264
|
}, ze = (R) => {
|
|
2265
2265
|
r?.(R ?? "");
|
|
@@ -2299,7 +2299,7 @@ const ec = ({
|
|
|
2299
2299
|
hoveredAreaData: null,
|
|
2300
2300
|
isAreaHovered: !1,
|
|
2301
2301
|
cursorPos: I
|
|
2302
|
-
}), e?.(
|
|
2302
|
+
}), e?.(ce(String(R.seriesId)).guid);
|
|
2303
2303
|
else if (ZA) {
|
|
2304
2304
|
const ae = AA?.data.map((bt, un) => ({
|
|
2305
2305
|
x: N[un],
|
|
@@ -2310,7 +2310,7 @@ const ec = ({
|
|
|
2310
2310
|
hoveredAreaData: ae,
|
|
2311
2311
|
isAreaHovered: !0,
|
|
2312
2312
|
cursorPos: I
|
|
2313
|
-
}), A?.(
|
|
2313
|
+
}), A?.(ce(String(R.seriesId)).guid);
|
|
2314
2314
|
} else
|
|
2315
2315
|
f({
|
|
2316
2316
|
hoveredSeriesId: null,
|
|
@@ -2329,7 +2329,7 @@ const ec = ({
|
|
|
2329
2329
|
itemContent: (R) => P && y ? /* @__PURE__ */ t(
|
|
2330
2330
|
fc,
|
|
2331
2331
|
{
|
|
2332
|
-
categoryGuids:
|
|
2332
|
+
categoryGuids: ce(y),
|
|
2333
2333
|
xData: N,
|
|
2334
2334
|
...R
|
|
2335
2335
|
}
|
|
@@ -2367,7 +2367,7 @@ const ec = ({
|
|
|
2367
2367
|
data: N,
|
|
2368
2368
|
scaleType: "time",
|
|
2369
2369
|
valueFormatter: (R) => $(R, Y.MONTH_SHORT_YEAR),
|
|
2370
|
-
tickNumber:
|
|
2370
|
+
tickNumber: O
|
|
2371
2371
|
// How many ticks to show on the x-axis
|
|
2372
2372
|
}
|
|
2373
2373
|
],
|
|
@@ -2385,14 +2385,14 @@ const ec = ({
|
|
|
2385
2385
|
categoryGuids: wA,
|
|
2386
2386
|
hoveredLegend: h,
|
|
2387
2387
|
onClickLegend: ze,
|
|
2388
|
-
onHoverLegend:
|
|
2388
|
+
onHoverLegend: le,
|
|
2389
2389
|
sx: { px: u ? 0 : 24 }
|
|
2390
2390
|
}
|
|
2391
2391
|
),
|
|
2392
2392
|
L && /* @__PURE__ */ t(
|
|
2393
2393
|
Cc,
|
|
2394
2394
|
{
|
|
2395
|
-
categoryGuids:
|
|
2395
|
+
categoryGuids: ce(y),
|
|
2396
2396
|
chartContainerRef: l,
|
|
2397
2397
|
cursorPosition: I,
|
|
2398
2398
|
hoveredAreaData: p.map((R) => ({
|
|
@@ -2562,12 +2562,12 @@ const ec = ({
|
|
|
2562
2562
|
calendarActions: A,
|
|
2563
2563
|
color: e = "primary",
|
|
2564
2564
|
copy: n,
|
|
2565
|
-
range: r = [
|
|
2565
|
+
range: r = [pA(J()), DA(Me())],
|
|
2566
2566
|
shouldShrinkToIcon: a = !0,
|
|
2567
2567
|
toolTipContent: i = "",
|
|
2568
2568
|
variant: o = "outlined"
|
|
2569
2569
|
}) => {
|
|
2570
|
-
const s = hA(), c = s.palette.mode === "dark", { isDesktop: u, isMobile: l } = KA(), [h, g] = C.useState(r), [m, f] = C.useState(n.dateRangePickerCopy.dateRangeThisMonth), [y, p] = C.useState(h), [S, I] = C.useState(!1), [L, P] = C.useState(!0), [
|
|
2570
|
+
const s = hA(), c = s.palette.mode === "dark", { isDesktop: u, isMobile: l } = KA(), [h, g] = C.useState(r), [m, f] = C.useState(n.dateRangePickerCopy.dateRangeThisMonth), [y, p] = C.useState(h), [S, I] = C.useState(!1), [L, P] = C.useState(!0), [x, O] = C.useState(6), N = [
|
|
2571
2571
|
{ label: "3M", value: 3 },
|
|
2572
2572
|
{ label: "6M", value: 6 },
|
|
2573
2573
|
{ label: "9M", value: 9 },
|
|
@@ -2577,14 +2577,14 @@ const ec = ({
|
|
|
2577
2577
|
p(r);
|
|
2578
2578
|
}, [r]), C.useEffect(() => {
|
|
2579
2579
|
o === "timeframebuttons" && A.onRangeChanged(q());
|
|
2580
|
-
}, [
|
|
2580
|
+
}, [x]);
|
|
2581
2581
|
const q = () => {
|
|
2582
|
-
const F =
|
|
2583
|
-
return [
|
|
2582
|
+
const F = DA(Me());
|
|
2583
|
+
return [DA(ue(F, x)), F];
|
|
2584
2584
|
}, z = (F) => {
|
|
2585
2585
|
const aA = [...h], iA = h[0], vA = h[1], uA = F === "previous";
|
|
2586
2586
|
if (m === n.dateRangePickerCopy.dateRangeThisMonth)
|
|
2587
|
-
aA[0] = uA ?
|
|
2587
|
+
aA[0] = uA ? ue(iA, 1) : $A(iA, 1), aA[1] = DA(uA ? ue(vA, 1) : $A(vA, 1));
|
|
2588
2588
|
else if (m === n.dateRangePickerCopy.dateRangeYTD || m === n.dateRangePickerCopy.dateRangeLastYear)
|
|
2589
2589
|
aA[0] = uA ? Er(vr(iA), 1) : Ct(vr(iA), 1), aA[1] = uA ? Er(pr(iA), 1) : Ct(pr(iA), 1);
|
|
2590
2590
|
else {
|
|
@@ -2597,7 +2597,7 @@ const ec = ({
|
|
|
2597
2597
|
m === n.dateRangePickerCopy.dateRangeThisMonth || m === n.dateRangePickerCopy.dateRangeLastMonth
|
|
2598
2598
|
), A.onRangeChanged(y);
|
|
2599
2599
|
}, X = (F) => {
|
|
2600
|
-
|
|
2600
|
+
O(F);
|
|
2601
2601
|
};
|
|
2602
2602
|
return /* @__PURE__ */ d(b, { className: "mx-cmn-date-range-selector", m: 4, children: [
|
|
2603
2603
|
/* @__PURE__ */ t(
|
|
@@ -2695,7 +2695,7 @@ const ec = ({
|
|
|
2695
2695
|
color: e,
|
|
2696
2696
|
exclusive: !0,
|
|
2697
2697
|
orientation: "horizontal",
|
|
2698
|
-
value:
|
|
2698
|
+
value: x,
|
|
2699
2699
|
children: N?.map((F) => /* @__PURE__ */ t(
|
|
2700
2700
|
Nn,
|
|
2701
2701
|
{
|
|
@@ -2978,40 +2978,40 @@ const Fe = ({
|
|
|
2978
2978
|
sx: l = {},
|
|
2979
2979
|
title: h = ""
|
|
2980
2980
|
}) => {
|
|
2981
|
-
const [g, { height: m, width: f }] = $a(), { onEvent: y } = Z(), { isDesktop: p, isMobile: S, isTablet: I } = KA(), { displayedDateRange: L, selectedAccountGuids: P, setSelectedAccountGuids:
|
|
2981
|
+
const [g, { height: m, width: f }] = $a(), { onEvent: y } = Z(), { isDesktop: p, isMobile: S, isTablet: I } = KA(), { displayedDateRange: L, selectedAccountGuids: P, setSelectedAccountGuids: x } = yA(), { common: O } = D(), N = () => {
|
|
2982
2982
|
c && (c(), y(j.WIDGET_BACK_CLICK));
|
|
2983
2983
|
}, q = {
|
|
2984
2984
|
accountFilterOptionsCopy: {
|
|
2985
|
-
accountTypeAccounts:
|
|
2986
|
-
cancelButton:
|
|
2987
|
-
filterButton:
|
|
2988
|
-
filterButtonAria:
|
|
2989
|
-
selectAllAccounts:
|
|
2990
|
-
toggleAccountTypeAccounts:
|
|
2991
|
-
unselectAllAccounts:
|
|
2992
|
-
zeroStateButton:
|
|
2993
|
-
zeroStateDescription:
|
|
2994
|
-
zeroStateTitle:
|
|
2985
|
+
accountTypeAccounts: O.account_filter.account_type_accounts,
|
|
2986
|
+
cancelButton: O.cancel_button,
|
|
2987
|
+
filterButton: O.filter_button,
|
|
2988
|
+
filterButtonAria: O.account_filter.filter_button_generic_aria,
|
|
2989
|
+
selectAllAccounts: O.account_filter.select_all_accounts,
|
|
2990
|
+
toggleAccountTypeAccounts: O.account_filter.toggle_account_type_accounts,
|
|
2991
|
+
unselectAllAccounts: O.account_filter.unselect_all_accounts,
|
|
2992
|
+
zeroStateButton: O.account_filter.zero_state_button,
|
|
2993
|
+
zeroStateDescription: O.account_filter.zero_state_description,
|
|
2994
|
+
zeroStateTitle: O.account_filter.zero_state_title
|
|
2995
2995
|
},
|
|
2996
|
-
title:
|
|
2996
|
+
title: O.account_filter.title
|
|
2997
2997
|
}, z = {
|
|
2998
2998
|
dateRangePickerCopy: {
|
|
2999
|
-
dateRangeFrom:
|
|
3000
|
-
dateRangeTo:
|
|
3001
|
-
dateRangeCustom:
|
|
3002
|
-
dateRangeSelectARange:
|
|
3003
|
-
dateRangeThisMonth:
|
|
3004
|
-
dateRangeLastMonth:
|
|
3005
|
-
dateRangeLast30Days:
|
|
3006
|
-
dateRangeLast90Days:
|
|
3007
|
-
dateRangeYTD:
|
|
3008
|
-
dateRangeLastYear:
|
|
3009
|
-
dateRangeSelect:
|
|
2999
|
+
dateRangeFrom: O.date_range_picker.from,
|
|
3000
|
+
dateRangeTo: O.date_range_picker.to,
|
|
3001
|
+
dateRangeCustom: O.date_range_picker.custom,
|
|
3002
|
+
dateRangeSelectARange: O.date_range_picker.select_range,
|
|
3003
|
+
dateRangeThisMonth: O.date_range_picker.this_month,
|
|
3004
|
+
dateRangeLastMonth: O.date_range_picker.last_month,
|
|
3005
|
+
dateRangeLast30Days: O.date_range_picker.last_30_days,
|
|
3006
|
+
dateRangeLast90Days: O.date_range_picker.last_90_days,
|
|
3007
|
+
dateRangeYTD: O.date_range_picker.ytd,
|
|
3008
|
+
dateRangeLastYear: O.date_range_picker.last_year,
|
|
3009
|
+
dateRangeSelect: O.date_range_picker.select
|
|
3010
3010
|
},
|
|
3011
|
-
dateRangeEditApply:
|
|
3012
|
-
dateRangeEditTitle:
|
|
3013
|
-
dateRangeNextAria:
|
|
3014
|
-
dateRangePreviousAria:
|
|
3011
|
+
dateRangeEditApply: O.date_range_picker.edit_apply,
|
|
3012
|
+
dateRangeEditTitle: O.date_range_picker.edit_title,
|
|
3013
|
+
dateRangeNextAria: O.date_range_picker.next_aria,
|
|
3014
|
+
dateRangePreviousAria: O.date_range_picker.previous_aria
|
|
3015
3015
|
}, k = a ? a.start : L.start, X = a ? a.end : L.end;
|
|
3016
3016
|
return /* @__PURE__ */ d(
|
|
3017
3017
|
RA,
|
|
@@ -3051,7 +3051,7 @@ const Fe = ({
|
|
|
3051
3051
|
copy: q,
|
|
3052
3052
|
onFilterClick: (F) => {
|
|
3053
3053
|
const aA = A.filter((iA) => F.includes(iA.guid)).map((iA) => iA.guid);
|
|
3054
|
-
|
|
3054
|
+
x(aA), u?.();
|
|
3055
3055
|
},
|
|
3056
3056
|
selectedAccountGuids: P,
|
|
3057
3057
|
showAccountNumbers: !1,
|
|
@@ -3094,7 +3094,7 @@ const Fe = ({
|
|
|
3094
3094
|
S && c && /* @__PURE__ */ t(
|
|
3095
3095
|
_A,
|
|
3096
3096
|
{
|
|
3097
|
-
"aria-label":
|
|
3097
|
+
"aria-label": O.back_to_dashboard,
|
|
3098
3098
|
onClick: N,
|
|
3099
3099
|
sx: { ml: -16, mr: 16 },
|
|
3100
3100
|
children: /* @__PURE__ */ t(M, { name: "arrow_back" })
|
|
@@ -3208,19 +3208,19 @@ const Mr = "connect_widget", Rr = "connections_widget", Sc = ({
|
|
|
3208
3208
|
...h
|
|
3209
3209
|
}) => {
|
|
3210
3210
|
const [g, m] = C.useState(""), { common: f } = D(), y = a || f.currency_input, p = OA(), S = Tc(p), I = /^[0-9]*$/, L = /^(\d)*(\,)?([0-9]{1,2})?$/, P = /^(\d)*(\.)?([0-9]{1,2})?$/;
|
|
3211
|
-
let
|
|
3212
|
-
const
|
|
3211
|
+
let x;
|
|
3212
|
+
const O = C.useRef(Ro());
|
|
3213
3213
|
if (A)
|
|
3214
3214
|
switch (Ns()) {
|
|
3215
3215
|
case zt.CAD:
|
|
3216
|
-
|
|
3216
|
+
x = L;
|
|
3217
3217
|
break;
|
|
3218
3218
|
default:
|
|
3219
|
-
|
|
3219
|
+
x = P;
|
|
3220
3220
|
break;
|
|
3221
3221
|
}
|
|
3222
3222
|
else
|
|
3223
|
-
|
|
3223
|
+
x = I;
|
|
3224
3224
|
C.useEffect(() => {
|
|
3225
3225
|
N(n);
|
|
3226
3226
|
}, [n]);
|
|
@@ -3235,7 +3235,7 @@ const Mr = "connect_widget", Rr = "connections_widget", Sc = ({
|
|
|
3235
3235
|
y.error_amount_must_be_less_than_or_equal_to,
|
|
3236
3236
|
Q(Sr, A ? "0,0.00" : "0,0", Math.floor)
|
|
3237
3237
|
)
|
|
3238
|
-
), l?.(!1)) : q.toString().match(
|
|
3238
|
+
), l?.(!1)) : q.toString().match(x) ? i() ? (m(""), l?.(!0)) : (m(o), l?.(!1)) : (m(y.error_amount_is_invalid), l?.(!1)), u(q.toString());
|
|
3239
3239
|
};
|
|
3240
3240
|
return /* @__PURE__ */ t(
|
|
3241
3241
|
Ne,
|
|
@@ -3254,7 +3254,7 @@ const Mr = "connect_widget", Rr = "connections_widget", Sc = ({
|
|
|
3254
3254
|
pattern: "[0-9]*"
|
|
3255
3255
|
},
|
|
3256
3256
|
label: s,
|
|
3257
|
-
name: `currency-input-${
|
|
3257
|
+
name: `currency-input-${O.current}`,
|
|
3258
3258
|
onChange: (q) => N(q.target.value),
|
|
3259
3259
|
value: n,
|
|
3260
3260
|
...h
|
|
@@ -3437,7 +3437,7 @@ const Mr = "connect_widget", Rr = "connections_widget", Sc = ({
|
|
|
3437
3437
|
] });
|
|
3438
3438
|
return n ? /* @__PURE__ */ t(V, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ d(lA, { onClick: n, children: [
|
|
3439
3439
|
a,
|
|
3440
|
-
/* @__PURE__ */ t(
|
|
3440
|
+
/* @__PURE__ */ t(oe, { children: /* @__PURE__ */ t(M, { name: "chevron_right", size: 24 }) })
|
|
3441
3441
|
] }) }) : /* @__PURE__ */ t(V, { disableGutters: !1, disablePadding: !1, children: a });
|
|
3442
3442
|
}, Qt = ({
|
|
3443
3443
|
body: A,
|
|
@@ -3597,7 +3597,7 @@ class Nc {
|
|
|
3597
3597
|
api = new zr("/", "");
|
|
3598
3598
|
categoryApi = new Bt("/", "");
|
|
3599
3599
|
globalStore;
|
|
3600
|
-
dateRange = { start:
|
|
3600
|
+
dateRange = { start: pA(J()), end: DA(J()) };
|
|
3601
3601
|
budgets = [];
|
|
3602
3602
|
categoryTotals = [];
|
|
3603
3603
|
theme = {};
|
|
@@ -3715,10 +3715,10 @@ const tt = () => {
|
|
|
3715
3715
|
f && h(f), m(y);
|
|
3716
3716
|
}, [f, y]);
|
|
3717
3717
|
const p = C.useMemo(
|
|
3718
|
-
() => r.filter((P) => i.includes(P.guid)).reduce((P,
|
|
3718
|
+
() => r.filter((P) => i.includes(P.guid)).reduce((P, x) => P + (x?.balance || 0), 0),
|
|
3719
3719
|
[i, y]
|
|
3720
3720
|
), S = C.useMemo(
|
|
3721
|
-
() => u.filter((P) => i.includes(P.accountGuid || "")).reduce((P,
|
|
3721
|
+
() => u.filter((P) => i.includes(P.accountGuid || "")).reduce((P, x) => P + x.amount, 0),
|
|
3722
3722
|
[i, u]
|
|
3723
3723
|
), I = C.useMemo(
|
|
3724
3724
|
() => p - S,
|
|
@@ -4283,7 +4283,7 @@ const _c = [
|
|
|
4283
4283
|
}, Xc = (A, e, n) => {
|
|
4284
4284
|
const {
|
|
4285
4285
|
accounts: r = [],
|
|
4286
|
-
dateRange: a = { start:
|
|
4286
|
+
dateRange: a = { start: pA(J()), end: Me() },
|
|
4287
4287
|
custom: i = () => !0,
|
|
4288
4288
|
searchTerm: o = ""
|
|
4289
4289
|
} = A;
|
|
@@ -4294,7 +4294,7 @@ const _c = [
|
|
|
4294
4294
|
return !0;
|
|
4295
4295
|
const u = s.tags.some(
|
|
4296
4296
|
(h) => Ae(o, e.find((g) => g.guid === h)?.name)
|
|
4297
|
-
), l =
|
|
4297
|
+
), l = bA(s.date);
|
|
4298
4298
|
return Ae(o, s.payee) || Ae(o, s.feed_description) || Ae(o, s.category) || Ae(o, $(l, Y.MONTH)) || Ae(o, $(l, Y.DAY)) || Ae(o, $(l, Y.FULL_MONTH_DAY)) || Ae(o, $(l, Y.MONTH_DAY_YEAR)) || Ae(o, kA(l, ys)) || Ae(o, s.account) || Ae(o, `${s.amount}`) || Ae(o, s.memo) || u;
|
|
4299
4299
|
});
|
|
4300
4300
|
}, Qc = (A, e, n) => [...A].sort((r, a) => {
|
|
@@ -4336,8 +4336,8 @@ const ei = {
|
|
|
4336
4336
|
tags: []
|
|
4337
4337
|
};
|
|
4338
4338
|
let Yc = class {
|
|
4339
|
-
beginDate =
|
|
4340
|
-
endDate =
|
|
4339
|
+
beginDate = pA(/* @__PURE__ */ new Date());
|
|
4340
|
+
endDate = DA(/* @__PURE__ */ new Date());
|
|
4341
4341
|
expandedSplits = [];
|
|
4342
4342
|
isInitialized = !1;
|
|
4343
4343
|
height = 550;
|
|
@@ -4394,7 +4394,7 @@ class Vc {
|
|
|
4394
4394
|
}
|
|
4395
4395
|
initialize = async (e, n) => {
|
|
4396
4396
|
this.api = new Br(e, n), this.beatApi = new Ze(e, n), Promise.all([
|
|
4397
|
-
this.loadAssociatedBeats(
|
|
4397
|
+
this.loadAssociatedBeats(pA(/* @__PURE__ */ new Date())),
|
|
4398
4398
|
this.loadTags(),
|
|
4399
4399
|
this.loadTaggings(),
|
|
4400
4400
|
this.loadTransactionRules(),
|
|
@@ -4482,7 +4482,7 @@ class Vc {
|
|
|
4482
4482
|
loadTransactionsByDateRange = async (e, n) => {
|
|
4483
4483
|
console.warn("DEPRECATED: loadTransactionsByDateRange will be removed"), this.setFilter({
|
|
4484
4484
|
...this.filter,
|
|
4485
|
-
dateRange: { start:
|
|
4485
|
+
dateRange: { start: bA(n), end: bA(e) }
|
|
4486
4486
|
});
|
|
4487
4487
|
};
|
|
4488
4488
|
removeTag = async (e) => {
|
|
@@ -4500,7 +4500,7 @@ class Vc {
|
|
|
4500
4500
|
}
|
|
4501
4501
|
};
|
|
4502
4502
|
setFilter = (e) => {
|
|
4503
|
-
this.filter = e, e.dateRange &&
|
|
4503
|
+
this.filter = e, e.dateRange && mA(e.dateRange.start, this.cachedStartDate) && this.loadTransactions(e.dateRange.start, Me()).then(() => {
|
|
4504
4504
|
e.dateRange && (this.cachedStartDate = e.dateRange.start);
|
|
4505
4505
|
});
|
|
4506
4506
|
};
|
|
@@ -4624,15 +4624,15 @@ const JA = () => {
|
|
|
4624
4624
|
e && /* @__PURE__ */ t(E, { color: "secondary", variant: "XSmall", children: r.zero_state_there_are_no_transactions })
|
|
4625
4625
|
] });
|
|
4626
4626
|
}, $c = T(Zc), Kr = (A, e) => {
|
|
4627
|
-
const n =
|
|
4627
|
+
const n = bA(e[A].date), r = bA(e[A - 1]?.date);
|
|
4628
4628
|
return !jA(n, r);
|
|
4629
4629
|
}, Al = (A, e) => {
|
|
4630
|
-
const n =
|
|
4630
|
+
const n = bA(e[A].date), r = bA(e[A + 1]?.date);
|
|
4631
4631
|
return jA(n, r);
|
|
4632
4632
|
}, Ar = (A) => {
|
|
4633
4633
|
const e = mt(A);
|
|
4634
4634
|
let n = wn(A, e);
|
|
4635
|
-
for (;
|
|
4635
|
+
for (; mA(n, J()); )
|
|
4636
4636
|
n = Ve(n, 1);
|
|
4637
4637
|
return n;
|
|
4638
4638
|
}, el = (A) => {
|
|
@@ -4640,7 +4640,7 @@ const JA = () => {
|
|
|
4640
4640
|
return Ve(e, 1);
|
|
4641
4641
|
}, kr = (A) => {
|
|
4642
4642
|
let e = Ln(J(), A.getDate());
|
|
4643
|
-
for (;
|
|
4643
|
+
for (; mA(e, J()); )
|
|
4644
4644
|
e = $A(e, 1);
|
|
4645
4645
|
return e;
|
|
4646
4646
|
}, tl = (A) => {
|
|
@@ -4648,16 +4648,16 @@ const JA = () => {
|
|
|
4648
4648
|
return $A(e, 1);
|
|
4649
4649
|
}, ti = (A) => {
|
|
4650
4650
|
let e = _e(A, 1);
|
|
4651
|
-
for (;
|
|
4651
|
+
for (; mA(e, J()); )
|
|
4652
4652
|
e = _e(e, 1);
|
|
4653
4653
|
return e;
|
|
4654
4654
|
}, nl = (A) => {
|
|
4655
4655
|
const e = ti(A);
|
|
4656
4656
|
return _e(e, 1);
|
|
4657
4657
|
}, rl = (A) => Ct(A, 1), gt = (A) => {
|
|
4658
|
-
const e =
|
|
4658
|
+
const e = bA(A);
|
|
4659
4659
|
return new Date(e.getUTCFullYear(), e.getUTCMonth(), e.getUTCDate());
|
|
4660
|
-
}, rn = (A) => $(
|
|
4660
|
+
}, rn = (A) => $(bA(A), Y.DAY_OF_WEEK_MONTH_DAY), Gr = 65, Xr = 34, al = ({
|
|
4661
4661
|
bgcolor: A,
|
|
4662
4662
|
height: e = "calc(100dvh - 36px)",
|
|
4663
4663
|
loader: n = /* @__PURE__ */ t(re, { label: "Loading", size: 40 }),
|
|
@@ -4749,7 +4749,7 @@ const JA = () => {
|
|
|
4749
4749
|
]
|
|
4750
4750
|
}
|
|
4751
4751
|
);
|
|
4752
|
-
}, cl = T(sl), ll = (A) => /* @__PURE__ */ t(E, { tabIndex: A.tabIndex, variant: "Small", children: $(
|
|
4752
|
+
}, cl = T(sl), ll = (A) => /* @__PURE__ */ t(E, { tabIndex: A.tabIndex, variant: "Small", children: $(bA(A.row.date), Y.MONTH_DAY) }), dl = (A) => {
|
|
4753
4753
|
const e = qA(), { transactions: n } = D(), { is_flagged: r, is_hidden: a, has_been_viewed: i, parent_guid: o } = A.row, c = !i && !!!o;
|
|
4754
4754
|
return /* @__PURE__ */ d(
|
|
4755
4755
|
b,
|
|
@@ -5128,7 +5128,7 @@ const fl = ({
|
|
|
5128
5128
|
id: `category-${A.guid}`,
|
|
5129
5129
|
onClick: s,
|
|
5130
5130
|
children: [
|
|
5131
|
-
/* @__PURE__ */ t(xA, { children: /* @__PURE__ */ t(
|
|
5131
|
+
/* @__PURE__ */ t(xA, { children: /* @__PURE__ */ t(ie, { categoryGuid: A.guid }) }),
|
|
5132
5132
|
/* @__PURE__ */ t(
|
|
5133
5133
|
cA,
|
|
5134
5134
|
{
|
|
@@ -5136,7 +5136,7 @@ const fl = ({
|
|
|
5136
5136
|
primaryTypographyProps: { fontWeight: "normal", variant: "Body" }
|
|
5137
5137
|
}
|
|
5138
5138
|
),
|
|
5139
|
-
/* @__PURE__ */ t(
|
|
5139
|
+
/* @__PURE__ */ t(oe, { children: o || r ? /* @__PURE__ */ t(xa, {}) : /* @__PURE__ */ t(Zt, {}) })
|
|
5140
5140
|
]
|
|
5141
5141
|
},
|
|
5142
5142
|
A.guid
|
|
@@ -5273,7 +5273,7 @@ const fl = ({
|
|
|
5273
5273
|
}, jr = (A) => {
|
|
5274
5274
|
const e = [], n = J();
|
|
5275
5275
|
for (let r = 0; r < Qr; r++) {
|
|
5276
|
-
const a =
|
|
5276
|
+
const a = pA(ue(n, Qr - r)), o = A.filter(
|
|
5277
5277
|
(s) => s.year_month === Number(kA(a, "yyyyMM"))
|
|
5278
5278
|
).reduce((s, c) => s + c.total, 0);
|
|
5279
5279
|
e.push({
|
|
@@ -5374,7 +5374,7 @@ class Bl {
|
|
|
5374
5374
|
}
|
|
5375
5375
|
};
|
|
5376
5376
|
loadMonthlyCategoryTotals = async (e = this.globalStore.accountStore.accounts, n, r) => {
|
|
5377
|
-
const a = fA(
|
|
5377
|
+
const a = fA(pA(n ?? ue(/* @__PURE__ */ new Date(), 11))), i = fA(DA(r ?? /* @__PURE__ */ new Date()));
|
|
5378
5378
|
try {
|
|
5379
5379
|
const o = await this.api.getMonthlyCategoryTotals(a, i, e);
|
|
5380
5380
|
U(() => {
|
|
@@ -5434,7 +5434,7 @@ const ri = ({ transaction: A }) => {
|
|
|
5434
5434
|
},
|
|
5435
5435
|
children: [
|
|
5436
5436
|
/* @__PURE__ */ t(xA, { children: /* @__PURE__ */ t(be, { sx: { bgcolor: "border.light" }, variant: "rounded", children: /* @__PURE__ */ t(
|
|
5437
|
-
|
|
5437
|
+
ie,
|
|
5438
5438
|
{
|
|
5439
5439
|
categoryGuid: A.top_level_category_guid,
|
|
5440
5440
|
size: 24,
|
|
@@ -5450,7 +5450,7 @@ const ri = ({ transaction: A }) => {
|
|
|
5450
5450
|
secondary: /* @__PURE__ */ t(E, { bold: !0, variant: "Body", children: A.category ?? s.actions_select_a_category })
|
|
5451
5451
|
}
|
|
5452
5452
|
),
|
|
5453
|
-
/* @__PURE__ */ t(
|
|
5453
|
+
/* @__PURE__ */ t(oe, { children: /* @__PURE__ */ t(M, { name: "chevron_right", weight: GA.Dark }) })
|
|
5454
5454
|
]
|
|
5455
5455
|
}
|
|
5456
5456
|
) }),
|
|
@@ -5511,10 +5511,10 @@ const ri = ({ transaction: A }) => {
|
|
|
5511
5511
|
{
|
|
5512
5512
|
primary: o.date_title,
|
|
5513
5513
|
primaryTypographyProps: { variant: "XSmall" },
|
|
5514
|
-
secondary: /* @__PURE__ */ t(E, { bold: !0, variant: "Body", children: $(
|
|
5514
|
+
secondary: /* @__PURE__ */ t(E, { bold: !0, variant: "Body", children: $(bA(A.date), Y.YEAR_MONTH_DAY) })
|
|
5515
5515
|
}
|
|
5516
5516
|
),
|
|
5517
|
-
/* @__PURE__ */ t(
|
|
5517
|
+
/* @__PURE__ */ t(oe, { children: /* @__PURE__ */ t(M, { name: "chevron_right", weight: GA.Dark }) })
|
|
5518
5518
|
]
|
|
5519
5519
|
}
|
|
5520
5520
|
) }),
|
|
@@ -5531,7 +5531,7 @@ const ri = ({ transaction: A }) => {
|
|
|
5531
5531
|
children: /* @__PURE__ */ t(w, { alignItems: "center", mt: e.Spacing.XXLarge, children: /* @__PURE__ */ t(
|
|
5532
5532
|
ec,
|
|
5533
5533
|
{
|
|
5534
|
-
beginDate:
|
|
5534
|
+
beginDate: bA(u),
|
|
5535
5535
|
copy: {
|
|
5536
5536
|
nextAria: o.date_next_aria,
|
|
5537
5537
|
prevAria: o.date_prev_aria,
|
|
@@ -5564,7 +5564,7 @@ const ri = ({ transaction: A }) => {
|
|
|
5564
5564
|
secondary: i.manual_transaction_delete_subtitle
|
|
5565
5565
|
}
|
|
5566
5566
|
),
|
|
5567
|
-
/* @__PURE__ */ t(
|
|
5567
|
+
/* @__PURE__ */ t(oe, { children: /* @__PURE__ */ t(pt, {}) })
|
|
5568
5568
|
]
|
|
5569
5569
|
}
|
|
5570
5570
|
) }),
|
|
@@ -5600,7 +5600,7 @@ const ri = ({ transaction: A }) => {
|
|
|
5600
5600
|
children: [
|
|
5601
5601
|
/* @__PURE__ */ t(xA, { children: /* @__PURE__ */ t(be, { sx: { bgcolor: "border.light" }, variant: "rounded", children: /* @__PURE__ */ t(M, { name: "delete", sx: { color: "text.primary" }, weight: GA.Dark }) }) }),
|
|
5602
5602
|
/* @__PURE__ */ t(cA, { primary: i.merchant_logo_title, secondary: i.merchant_logo_desc }),
|
|
5603
|
-
/* @__PURE__ */ t(
|
|
5603
|
+
/* @__PURE__ */ t(oe, { children: /* @__PURE__ */ t(M, { name: "chevron_right", weight: GA.Dark }) })
|
|
5604
5604
|
]
|
|
5605
5605
|
}
|
|
5606
5606
|
) }),
|
|
@@ -5662,7 +5662,7 @@ const ri = ({ transaction: A }) => {
|
|
|
5662
5662
|
secondary: c ? i.hide_trnx_desc_unhiding : i.hide_trnx_desc_hiding
|
|
5663
5663
|
}
|
|
5664
5664
|
),
|
|
5665
|
-
/* @__PURE__ */ t(
|
|
5665
|
+
/* @__PURE__ */ t(oe, { children: /* @__PURE__ */ t(
|
|
5666
5666
|
_n,
|
|
5667
5667
|
{
|
|
5668
5668
|
checked: c,
|
|
@@ -5742,7 +5742,7 @@ const ri = ({ transaction: A }) => {
|
|
|
5742
5742
|
secondary: /* @__PURE__ */ t(E, { bold: !0, variant: "Body", children: A.memo ? A.memo : i.memo_desc })
|
|
5743
5743
|
}
|
|
5744
5744
|
),
|
|
5745
|
-
/* @__PURE__ */ t(
|
|
5745
|
+
/* @__PURE__ */ t(oe, { children: /* @__PURE__ */ t(M, { name: "chevron_right", weight: GA.Dark }) })
|
|
5746
5746
|
]
|
|
5747
5747
|
}
|
|
5748
5748
|
) }),
|
|
@@ -5799,7 +5799,7 @@ const ri = ({ transaction: A }) => {
|
|
|
5799
5799
|
{
|
|
5800
5800
|
endIcon: /* @__PURE__ */ t(Zt, {}),
|
|
5801
5801
|
onClick: () => h(!0),
|
|
5802
|
-
startIcon: /* @__PURE__ */ t(
|
|
5802
|
+
startIcon: /* @__PURE__ */ t(ie, { categoryGuid: a.top_level_category_guid }),
|
|
5803
5803
|
sx: { px: i.Spacing.Small, py: i.Spacing.XSmall },
|
|
5804
5804
|
children: a.category
|
|
5805
5805
|
}
|
|
@@ -5973,9 +5973,9 @@ const ri = ({ transaction: A }) => {
|
|
|
5973
5973
|
y([{ ...c }, { ...u }]), e(j.TRANSACTION_DETAILS_CLICK_SPLIT, {
|
|
5974
5974
|
transaction_guid: A.guid
|
|
5975
5975
|
}), h(!0);
|
|
5976
|
-
}, O = async () => {
|
|
5977
|
-
e(_.ON_TRANSACTION_SPLIT_SAVE_CLICK), await n({ ...A, has_been_split: !0 }, f), h(!1);
|
|
5978
5976
|
}, x = async () => {
|
|
5977
|
+
e(_.ON_TRANSACTION_SPLIT_SAVE_CLICK), await n({ ...A, has_been_split: !0 }, f), h(!1);
|
|
5978
|
+
}, O = async () => {
|
|
5979
5979
|
e(_.ON_TRANSACTION_SPLIT_CANCEL_CLICK), y([{ ...c }, { ...u }]), h(!1);
|
|
5980
5980
|
}, N = async () => {
|
|
5981
5981
|
e(j.TRANSACTION_DETAILS_CLICK_UNSPLIT, {
|
|
@@ -5997,7 +5997,7 @@ const ri = ({ transaction: A }) => {
|
|
|
5997
5997
|
secondary: A.has_been_split || A.parent_guid ? i.split_transaction_unsplit_subtitle : i.split_transaction_desc
|
|
5998
5998
|
}
|
|
5999
5999
|
),
|
|
6000
|
-
/* @__PURE__ */ t(
|
|
6000
|
+
/* @__PURE__ */ t(oe, { children: A.has_been_split || A.parent_guid ? /* @__PURE__ */ t(M, { name: "delete", weight: GA.Dark }) : /* @__PURE__ */ t(M, { name: "chevron_right", weight: GA.Dark }) })
|
|
6001
6001
|
] }) }),
|
|
6002
6002
|
/* @__PURE__ */ d(
|
|
6003
6003
|
gA,
|
|
@@ -6005,8 +6005,8 @@ const ri = ({ transaction: A }) => {
|
|
|
6005
6005
|
ariaLabelClose: a.close_aria,
|
|
6006
6006
|
isOpen: l,
|
|
6007
6007
|
isPrimaryDisabled: q,
|
|
6008
|
-
onClose:
|
|
6009
|
-
onPrimaryAction:
|
|
6008
|
+
onClose: O,
|
|
6009
|
+
onPrimaryAction: x,
|
|
6010
6010
|
primaryText: a.save_button,
|
|
6011
6011
|
secondaryText: a.cancel_button,
|
|
6012
6012
|
title: i.split_transaction_title,
|
|
@@ -6182,7 +6182,7 @@ const ri = ({ transaction: A }) => {
|
|
|
6182
6182
|
onClick: () => A(n.guid),
|
|
6183
6183
|
role: "checkbox",
|
|
6184
6184
|
children: [
|
|
6185
|
-
/* @__PURE__ */ t(
|
|
6185
|
+
/* @__PURE__ */ t(oe, { sx: { ml: 0 }, children: /* @__PURE__ */ t(Mt, { checked: e.includes(n.guid), edge: "start", tabIndex: -1 }) }),
|
|
6186
6186
|
/* @__PURE__ */ t(cA, { children: n.name })
|
|
6187
6187
|
]
|
|
6188
6188
|
}
|
|
@@ -6283,7 +6283,7 @@ const ri = ({ transaction: A }) => {
|
|
|
6283
6283
|
secondary: /* @__PURE__ */ t(E, { bold: !0, variant: "Body", children: A.tags?.length > 0 ? f : o.tags_desc })
|
|
6284
6284
|
}
|
|
6285
6285
|
),
|
|
6286
|
-
/* @__PURE__ */ t(
|
|
6286
|
+
/* @__PURE__ */ t(oe, { children: /* @__PURE__ */ t(M, { name: "chevron_right", weight: GA.Dark }) })
|
|
6287
6287
|
]
|
|
6288
6288
|
}
|
|
6289
6289
|
) }),
|
|
@@ -6468,7 +6468,7 @@ const ri = ({ transaction: A }) => {
|
|
|
6468
6468
|
a.href = `data:attachment/csv;charset=utf-8,${r}`, a.download = "transactions.csv", document.body.appendChild(a), a.click(), document.body.removeChild(a);
|
|
6469
6469
|
}, Cd = (A, e) => A.map((n) => ({
|
|
6470
6470
|
// TODO: Data format should be localized
|
|
6471
|
-
Date: kA(
|
|
6471
|
+
Date: kA(bA(n.date), "MM/dd/yy"),
|
|
6472
6472
|
Description: md(n),
|
|
6473
6473
|
"Original Description": n.feed_description,
|
|
6474
6474
|
Amount: `${n.amount}`,
|
|
@@ -6645,20 +6645,20 @@ const ri = ({ transaction: A }) => {
|
|
|
6645
6645
|
tags: S,
|
|
6646
6646
|
transactions: I,
|
|
6647
6647
|
updateTransaction: L
|
|
6648
|
-
} = dA(), { common: P, transactions:
|
|
6648
|
+
} = dA(), { common: P, transactions: x } = D(), { userProfile: O } = en(), { onEvent: N } = Z(), {
|
|
6649
6649
|
displayedDateRange: q,
|
|
6650
6650
|
isInitialized: z,
|
|
6651
6651
|
selectedAccountGuids: k,
|
|
6652
6652
|
selectedAccounts: X,
|
|
6653
6653
|
setDisplayedDate: F,
|
|
6654
6654
|
setSelectedAccounts: aA
|
|
6655
|
-
} = yA(), [iA, vA] = C.useState(""), [uA, wA] = C.useState(""), [
|
|
6655
|
+
} = yA(), [iA, vA] = C.useState(""), [uA, wA] = C.useState(""), [ce, le] = C.useState(!1), [ze, R] = C.useState(!1), [AA, EA] = C.useState(!1);
|
|
6656
6656
|
C.useEffect(() => {
|
|
6657
6657
|
aA(a);
|
|
6658
6658
|
}, [a]), C.useEffect(() => {
|
|
6659
|
-
const
|
|
6660
|
-
F(
|
|
6661
|
-
dateRange: { start:
|
|
6659
|
+
const IA = pA(J()), hr = DA(J());
|
|
6660
|
+
F(IA, hr), p({
|
|
6661
|
+
dateRange: { start: IA, end: hr },
|
|
6662
6662
|
accounts: X.map((Ui) => Ui.guid)
|
|
6663
6663
|
}), EA(!0), N(j.TRANSACTIONS_VIEW);
|
|
6664
6664
|
}, []), C.useEffect(() => {
|
|
@@ -6671,30 +6671,30 @@ const ri = ({ transaction: A }) => {
|
|
|
6671
6671
|
h(n);
|
|
6672
6672
|
}, [n]);
|
|
6673
6673
|
const ZA = C.useMemo(
|
|
6674
|
-
() => a.filter((
|
|
6674
|
+
() => a.filter((IA) => IA.is_manual),
|
|
6675
6675
|
[a]
|
|
6676
|
-
), ae = uA ? I.find((
|
|
6677
|
-
F(
|
|
6678
|
-
}, ki = (
|
|
6679
|
-
l(
|
|
6676
|
+
), ae = uA ? I.find((IA) => IA.guid === uA) : void 0, bt = c && !!s.payee && !!s.account_guid && !!s.category_guid, un = (IA) => {
|
|
6677
|
+
F(IA[0], IA[1]);
|
|
6678
|
+
}, ki = (IA) => {
|
|
6679
|
+
l(IA), p({
|
|
6680
6680
|
...f,
|
|
6681
|
-
searchTerm:
|
|
6682
|
-
}), N(j.TRANSACTIONS_CLICK_SEARCH, { search_term:
|
|
6681
|
+
searchTerm: IA
|
|
6682
|
+
}), N(j.TRANSACTIONS_CLICK_SEARCH, { search_term: IA });
|
|
6683
6683
|
}, Gi = () => {
|
|
6684
6684
|
gd(I, S), N(j.TRANSACTIONS_CLICK_EXPORT);
|
|
6685
6685
|
}, Xi = () => {
|
|
6686
6686
|
ZA.length > 0 ? (g({
|
|
6687
6687
|
...ei,
|
|
6688
6688
|
date: fA(J()),
|
|
6689
|
-
user_guid:
|
|
6689
|
+
user_guid: O?.user_guid || ""
|
|
6690
6690
|
}), vA(
|
|
6691
6691
|
"addTransaction"
|
|
6692
6692
|
/* AddTransaction */
|
|
6693
|
-
), N(j.TRANSACTIONS_CLICK_ADD)) : (
|
|
6693
|
+
), N(j.TRANSACTIONS_CLICK_ADD)) : (le(!0), N(j.TRANSACTIONS_ADD_MANUAL_ACCOUNT_MODAL));
|
|
6694
6694
|
}, Qi = async () => {
|
|
6695
6695
|
bt && await m(s), vA("");
|
|
6696
6696
|
}, Fi = () => {
|
|
6697
|
-
|
|
6697
|
+
le(!1), R(!0);
|
|
6698
6698
|
}, ji = () => {
|
|
6699
6699
|
R(!1), i();
|
|
6700
6700
|
};
|
|
@@ -6705,12 +6705,12 @@ const ri = ({ transaction: A }) => {
|
|
|
6705
6705
|
actions: [
|
|
6706
6706
|
{
|
|
6707
6707
|
iconName: "open_in_new",
|
|
6708
|
-
label:
|
|
6708
|
+
label: x.export_csv_btn,
|
|
6709
6709
|
onClick: Gi
|
|
6710
6710
|
},
|
|
6711
6711
|
{
|
|
6712
6712
|
iconName: "add",
|
|
6713
|
-
label:
|
|
6713
|
+
label: x.add_transaction_btn,
|
|
6714
6714
|
onClick: Xi
|
|
6715
6715
|
}
|
|
6716
6716
|
],
|
|
@@ -6720,13 +6720,13 @@ const ri = ({ transaction: A }) => {
|
|
|
6720
6720
|
onAccountsFilterClick: () => N(j.ACCOUNTS_CLICK_FILTER),
|
|
6721
6721
|
onBackClick: A,
|
|
6722
6722
|
sx: r,
|
|
6723
|
-
title:
|
|
6723
|
+
title: x.transactions_title,
|
|
6724
6724
|
children: [
|
|
6725
6725
|
/* @__PURE__ */ t(b, { mt: 16, children: /* @__PURE__ */ t(
|
|
6726
6726
|
nn,
|
|
6727
6727
|
{
|
|
6728
6728
|
onChange: ki,
|
|
6729
|
-
placeholder:
|
|
6729
|
+
placeholder: x.action_bar_search_placeholder,
|
|
6730
6730
|
searchValue: u
|
|
6731
6731
|
}
|
|
6732
6732
|
) }),
|
|
@@ -6741,17 +6741,17 @@ const ri = ({ transaction: A }) => {
|
|
|
6741
6741
|
Cl,
|
|
6742
6742
|
{
|
|
6743
6743
|
height: `calc(${e} - ${Ur}px)`,
|
|
6744
|
-
onCategoryClick: (
|
|
6745
|
-
wA(
|
|
6744
|
+
onCategoryClick: (IA) => {
|
|
6745
|
+
wA(IA), vA(
|
|
6746
6746
|
"category"
|
|
6747
6747
|
/* Category */
|
|
6748
6748
|
);
|
|
6749
6749
|
},
|
|
6750
|
-
onRowClick: (
|
|
6751
|
-
wA(
|
|
6750
|
+
onRowClick: (IA) => {
|
|
6751
|
+
wA(IA), vA(
|
|
6752
6752
|
"transaction"
|
|
6753
6753
|
/* Transaction */
|
|
6754
|
-
), N(j.TRANSACTIONS_CLICK_DETAILS, { transaction_guid:
|
|
6754
|
+
), N(j.TRANSACTIONS_CLICK_DETAILS, { transaction_guid: IA });
|
|
6755
6755
|
}
|
|
6756
6756
|
}
|
|
6757
6757
|
)
|
|
@@ -6768,8 +6768,8 @@ const ri = ({ transaction: A }) => {
|
|
|
6768
6768
|
nt,
|
|
6769
6769
|
{
|
|
6770
6770
|
height: `calc(${e} - ${Ur}px)`,
|
|
6771
|
-
onClick: (
|
|
6772
|
-
wA(
|
|
6771
|
+
onClick: (IA) => {
|
|
6772
|
+
wA(IA), vA(
|
|
6773
6773
|
"transaction"
|
|
6774
6774
|
/* Transaction */
|
|
6775
6775
|
);
|
|
@@ -6787,7 +6787,7 @@ const ri = ({ transaction: A }) => {
|
|
|
6787
6787
|
onClose: () => {
|
|
6788
6788
|
ae && !ae.has_been_viewed && L({ ...ae, has_been_viewed: !0 }), vA("");
|
|
6789
6789
|
},
|
|
6790
|
-
title:
|
|
6790
|
+
title: x.details_title,
|
|
6791
6791
|
children: ae && /* @__PURE__ */ t(Lt, { transaction: ae })
|
|
6792
6792
|
}
|
|
6793
6793
|
),
|
|
@@ -6808,17 +6808,17 @@ const ri = ({ transaction: A }) => {
|
|
|
6808
6808
|
isPrimaryDisabled: !bt,
|
|
6809
6809
|
onClose: () => vA(""),
|
|
6810
6810
|
onPrimaryAction: Qi,
|
|
6811
|
-
title:
|
|
6811
|
+
title: x.add_transaction_title,
|
|
6812
6812
|
children: /* @__PURE__ */ t(Ed, {})
|
|
6813
6813
|
}
|
|
6814
6814
|
),
|
|
6815
6815
|
/* @__PURE__ */ t(
|
|
6816
6816
|
hd,
|
|
6817
6817
|
{
|
|
6818
|
-
copy: { title:
|
|
6819
|
-
isOpen:
|
|
6818
|
+
copy: { title: x.add_manual_account },
|
|
6819
|
+
isOpen: ce,
|
|
6820
6820
|
onClose: () => {
|
|
6821
|
-
|
|
6821
|
+
le(!1);
|
|
6822
6822
|
},
|
|
6823
6823
|
onPrimaryAction: Fi
|
|
6824
6824
|
}
|
|
@@ -6828,7 +6828,7 @@ const ri = ({ transaction: A }) => {
|
|
|
6828
6828
|
{
|
|
6829
6829
|
onClose: ji,
|
|
6830
6830
|
showConnectWidget: ze,
|
|
6831
|
-
title:
|
|
6831
|
+
title: x.add_manual_account
|
|
6832
6832
|
}
|
|
6833
6833
|
)
|
|
6834
6834
|
]
|
|
@@ -6980,25 +6980,25 @@ const ri = ({ transaction: A }) => {
|
|
|
6980
6980
|
)
|
|
6981
6981
|
] });
|
|
6982
6982
|
}, Id = T(bd), Dd = ({ activity: A, onDeleted: e }) => {
|
|
6983
|
-
const { recurring: n } = D(), { categories: r } = MA(), { deleteCashflowSequence: a, deleteScheduledPayment: i, paidActivities: o } = HA(), { filter: s, setFilter: c, transactions: u } = dA(), { selectedAccountGuids: l } = yA(), { onEvent: h } = Z(), [g, m] = C.useState(!1), [f, y] = C.useState(""), p = r.find((
|
|
6984
|
-
() => u.find((
|
|
6983
|
+
const { recurring: n } = D(), { categories: r } = MA(), { deleteCashflowSequence: a, deleteScheduledPayment: i, paidActivities: o } = HA(), { filter: s, setFilter: c, transactions: u } = dA(), { selectedAccountGuids: l } = yA(), { onEvent: h } = Z(), [g, m] = C.useState(!1), [f, y] = C.useState(""), p = r.find((x) => x.guid === A.categoryGuid), S = A.activityType === LA.Income, I = C.useMemo(
|
|
6984
|
+
() => u.find((x) => x.guid === f),
|
|
6985
6985
|
[f]
|
|
6986
6986
|
);
|
|
6987
6987
|
C.useEffect(() => {
|
|
6988
6988
|
c({
|
|
6989
6989
|
accounts: l,
|
|
6990
|
-
dateRange: { start: pe(J(), 90), end:
|
|
6990
|
+
dateRange: { start: pe(J(), 90), end: DA(J()) }
|
|
6991
6991
|
});
|
|
6992
6992
|
}, []), C.useEffect(() => {
|
|
6993
6993
|
if (S && A.sequenceGuid) {
|
|
6994
|
-
const
|
|
6994
|
+
const x = o.filter((O) => O.sequenceGuid === A.sequenceGuid).map((O) => O.transactionGuid);
|
|
6995
6995
|
c({
|
|
6996
6996
|
...s,
|
|
6997
|
-
custom: (
|
|
6997
|
+
custom: (O) => !!x.find((N) => O.guid === N)
|
|
6998
6998
|
});
|
|
6999
6999
|
} else !S && A.scheduledPaymentGuid && c({
|
|
7000
7000
|
...s,
|
|
7001
|
-
custom: (
|
|
7001
|
+
custom: (x) => x.scheduled_payment_guid === A.scheduledPaymentGuid
|
|
7002
7002
|
});
|
|
7003
7003
|
}, [A]);
|
|
7004
7004
|
const L = async () => {
|
|
@@ -7336,11 +7336,11 @@ const ri = ({ transaction: A }) => {
|
|
|
7336
7336
|
{ id: K.EveryYear, label: s.frequency_every_year }
|
|
7337
7337
|
];
|
|
7338
7338
|
C.useEffect(() => {
|
|
7339
|
-
const l =
|
|
7339
|
+
const l = bA(o.date);
|
|
7340
7340
|
i(kr(l)), a(K.EveryMonth);
|
|
7341
7341
|
}, [o]);
|
|
7342
7342
|
const u = (l) => {
|
|
7343
|
-
const h =
|
|
7343
|
+
const h = bA(o.date);
|
|
7344
7344
|
switch (Number(l.target.value)) {
|
|
7345
7345
|
case K.EveryWeek:
|
|
7346
7346
|
i(Ar(h));
|
|
@@ -7406,27 +7406,27 @@ const ri = ({ transaction: A }) => {
|
|
|
7406
7406
|
onAddActivity: n = () => null
|
|
7407
7407
|
}) => {
|
|
7408
7408
|
const { recurring: r } = D(), { addCashflowEvent: a, addCashflowSequence: i, addScheduledPayment: o } = HA(), { filter: s, setFilter: c, transactions: u } = dA(), [l, h] = C.useState(!1), [g, m] = C.useState(""), [f, y] = C.useState(K.EveryMonth), [p, S] = C.useState(null), I = C.useMemo(
|
|
7409
|
-
() => u.find((
|
|
7409
|
+
() => u.find((O) => O.guid === g),
|
|
7410
7410
|
[g]
|
|
7411
7411
|
), L = () => {
|
|
7412
7412
|
h(!0), c(A ? { ...s, custom: vt } : { ...s, custom: Dn });
|
|
7413
7413
|
}, P = async () => {
|
|
7414
7414
|
if (n(), !I || !p) {
|
|
7415
|
-
|
|
7415
|
+
x();
|
|
7416
7416
|
return;
|
|
7417
7417
|
}
|
|
7418
7418
|
if (A) {
|
|
7419
|
-
const
|
|
7419
|
+
const O = di(I, f, p), N = await i(O);
|
|
7420
7420
|
if (N) {
|
|
7421
7421
|
const q = ui(N, I);
|
|
7422
7422
|
await a(q);
|
|
7423
7423
|
}
|
|
7424
7424
|
} else {
|
|
7425
|
-
const
|
|
7426
|
-
await o(
|
|
7425
|
+
const O = Md(I, f, p);
|
|
7426
|
+
await o(O, I);
|
|
7427
7427
|
}
|
|
7428
|
-
|
|
7429
|
-
},
|
|
7428
|
+
x();
|
|
7429
|
+
}, x = () => {
|
|
7430
7430
|
m(""), h(!1);
|
|
7431
7431
|
};
|
|
7432
7432
|
return /* @__PURE__ */ d(b, { children: [
|
|
@@ -7449,13 +7449,13 @@ const ri = ({ transaction: A }) => {
|
|
|
7449
7449
|
hi,
|
|
7450
7450
|
{
|
|
7451
7451
|
description: A ? r.add_income_description : r.add_expense_description,
|
|
7452
|
-
onSearch: (
|
|
7452
|
+
onSearch: (O) => {
|
|
7453
7453
|
c({
|
|
7454
7454
|
...s,
|
|
7455
|
-
custom: (N) => A ?
|
|
7455
|
+
custom: (N) => A ? O ? Ci(N, O) : vt(N) : O ? zd(N, O) : Dn(N)
|
|
7456
7456
|
});
|
|
7457
7457
|
},
|
|
7458
|
-
onSelected: (
|
|
7458
|
+
onSelected: (O) => m(O)
|
|
7459
7459
|
}
|
|
7460
7460
|
)
|
|
7461
7461
|
}
|
|
@@ -7540,8 +7540,8 @@ const ri = ({ transaction: A }) => {
|
|
|
7540
7540
|
transactionGuid: l.transaction_guid
|
|
7541
7541
|
};
|
|
7542
7542
|
}), s = r.filter(
|
|
7543
|
-
(l) => Je(
|
|
7544
|
-
start:
|
|
7543
|
+
(l) => Je(bA(l.expected_date), {
|
|
7544
|
+
start: pA(J()),
|
|
7545
7545
|
end: me(J(), 30)
|
|
7546
7546
|
})
|
|
7547
7547
|
).filter((l) => {
|
|
@@ -7591,19 +7591,19 @@ const ri = ({ transaction: A }) => {
|
|
|
7591
7591
|
recurrenceDay: e.recurrence_day,
|
|
7592
7592
|
scheduledPaymentGuid: e.guid,
|
|
7593
7593
|
transactionGuid: ""
|
|
7594
|
-
}, c = e.recurrence_day, u = J(), l =
|
|
7594
|
+
}, c = e.recurrence_day, u = J(), l = pA(J()), h = me(J(), 30);
|
|
7595
7595
|
let g = l;
|
|
7596
7596
|
switch (e.recurrence_type) {
|
|
7597
7597
|
case K.EveryWeek:
|
|
7598
|
-
for (g = wn(g, c);
|
|
7598
|
+
for (g = wn(g, c); mA(g, h); )
|
|
7599
7599
|
r.push({
|
|
7600
7600
|
...s,
|
|
7601
7601
|
expectedDate: g
|
|
7602
7602
|
}), g = wn(g, c);
|
|
7603
7603
|
break;
|
|
7604
7604
|
case K.EveryOtherWeek:
|
|
7605
|
-
if (
|
|
7606
|
-
for (g = Ve(o, 2);
|
|
7605
|
+
if (mA(o, l))
|
|
7606
|
+
for (g = Ve(o, 2); mA(g, h); )
|
|
7607
7607
|
ft(g, l) && r.push({
|
|
7608
7608
|
...s,
|
|
7609
7609
|
expectedDate: g
|
|
@@ -7617,7 +7617,7 @@ const ri = ({ transaction: A }) => {
|
|
|
7617
7617
|
...s,
|
|
7618
7618
|
expectedDate: g
|
|
7619
7619
|
}), g = yr(g, 2);
|
|
7620
|
-
for (g = Ve(o, 2);
|
|
7620
|
+
for (g = Ve(o, 2); mA(g, h); )
|
|
7621
7621
|
r.push({
|
|
7622
7622
|
...s,
|
|
7623
7623
|
expectedDate: g
|
|
@@ -7634,37 +7634,37 @@ const ri = ({ transaction: A }) => {
|
|
|
7634
7634
|
});
|
|
7635
7635
|
break;
|
|
7636
7636
|
case K.EveryOtherMonth:
|
|
7637
|
-
|
|
7637
|
+
mA(o, l) ? mA($A(o, 2), h) && r.push({
|
|
7638
7638
|
...s,
|
|
7639
7639
|
expectedDate: $A(o, 2)
|
|
7640
|
-
}) :
|
|
7640
|
+
}) : mA(o, h) && r.push({
|
|
7641
7641
|
...s,
|
|
7642
7642
|
expectedDate: o
|
|
7643
7643
|
});
|
|
7644
7644
|
break;
|
|
7645
7645
|
case K.EveryQuarter:
|
|
7646
|
-
|
|
7646
|
+
mA(o, l) ? mA(_e(o, 1), h) && r.push({
|
|
7647
7647
|
...s,
|
|
7648
7648
|
expectedDate: _e(o, 1)
|
|
7649
|
-
}) :
|
|
7649
|
+
}) : mA(o, h) && r.push({
|
|
7650
7650
|
...s,
|
|
7651
7651
|
expectedDate: o
|
|
7652
7652
|
});
|
|
7653
7653
|
break;
|
|
7654
7654
|
case K.EveryOtherQuarter:
|
|
7655
|
-
|
|
7655
|
+
mA(o, l) ? mA(_e(o, 2), h) && r.push({
|
|
7656
7656
|
...s,
|
|
7657
7657
|
expectedDate: _e(o, 2)
|
|
7658
|
-
}) :
|
|
7658
|
+
}) : mA(o, h) && r.push({
|
|
7659
7659
|
...s,
|
|
7660
7660
|
expectedDate: o
|
|
7661
7661
|
});
|
|
7662
7662
|
break;
|
|
7663
7663
|
case K.EveryYear:
|
|
7664
|
-
|
|
7664
|
+
mA(o, l) ? mA(Ct(o, 1), h) && r.push({
|
|
7665
7665
|
...s,
|
|
7666
7666
|
expectedDate: Ct(o, 1)
|
|
7667
|
-
}) :
|
|
7667
|
+
}) : mA(o, h) && r.push({
|
|
7668
7668
|
...s,
|
|
7669
7669
|
expectedDate: o
|
|
7670
7670
|
});
|
|
@@ -7674,7 +7674,7 @@ const ri = ({ transaction: A }) => {
|
|
|
7674
7674
|
const f = n.find(
|
|
7675
7675
|
(y) => y.scheduled_payment_guid === m.scheduledPaymentGuid && y.date > fA(pe(m.expectedDate, 3)) && y.date < fA(me(m.expectedDate, 3))
|
|
7676
7676
|
);
|
|
7677
|
-
f ? (m.transactionGuid = f.guid, m.occurredOnDate =
|
|
7677
|
+
f ? (m.transactionGuid = f.guid, m.occurredOnDate = bA(f.date), m.activityStatus = SA.Paid) : mA(m.expectedDate, pe(u, 3)) && (m.activityStatus = SA.Missed);
|
|
7678
7678
|
}), r;
|
|
7679
7679
|
}, Xd = (A, e, n, r, a) => r.map((i) => {
|
|
7680
7680
|
const o = e.find((h) => h.cashflow_sequence_guid === i.guid), s = n.find((h) => h.cashflow_sequence_guid === i.guid), c = a.find((h) => h.guid === o?.transaction_guid), u = A.find((h) => h.guid === c?.account_guid);
|
|
@@ -7738,16 +7738,16 @@ const ri = ({ transaction: A }) => {
|
|
|
7738
7738
|
A === 1 && /* @__PURE__ */ t(mi, {})
|
|
7739
7739
|
] });
|
|
7740
7740
|
}, pi = T(Fd), it = (A, e) => A + e.amount, Cn = (A) => A.activityType === LA.Income && Je(A.expectedDate, {
|
|
7741
|
-
start:
|
|
7742
|
-
end:
|
|
7741
|
+
start: pA(J()),
|
|
7742
|
+
end: DA(J())
|
|
7743
7743
|
}), xt = (A) => A.activityType === LA.Expense && Je(A.expectedDate, {
|
|
7744
|
-
start:
|
|
7745
|
-
end:
|
|
7744
|
+
start: pA(J()),
|
|
7745
|
+
end: DA(J())
|
|
7746
7746
|
}), fn = (A) => A.occurredOnDate && Je(A.occurredOnDate, {
|
|
7747
|
-
start:
|
|
7747
|
+
start: pA(/* @__PURE__ */ new Date()),
|
|
7748
7748
|
end: me(J(), 30)
|
|
7749
7749
|
}) || Je(A.expectedDate, {
|
|
7750
|
-
start:
|
|
7750
|
+
start: pA(/* @__PURE__ */ new Date()),
|
|
7751
7751
|
end: me(J(), 30)
|
|
7752
7752
|
}), jd = ({ day: A, outsideCurrentMonth: e, ...n }) => {
|
|
7753
7753
|
const { recurring: r } = D(), { selectedAccountGuids: a } = yA(), { activities: i, setSelectedDay: o } = HA(), c = C.useMemo(
|
|
@@ -7832,8 +7832,8 @@ const ri = ({ transaction: A }) => {
|
|
|
7832
7832
|
}, o = /* @__PURE__ */ t(
|
|
7833
7833
|
Bn,
|
|
7834
7834
|
{
|
|
7835
|
-
maxDate:
|
|
7836
|
-
minDate:
|
|
7835
|
+
maxDate: DA($A(/* @__PURE__ */ new Date(), 1)),
|
|
7836
|
+
minDate: pA(/* @__PURE__ */ new Date()),
|
|
7837
7837
|
onMonthChange: i,
|
|
7838
7838
|
showDaysOutsideCurrentMonth: !0,
|
|
7839
7839
|
slots: {
|
|
@@ -7982,7 +7982,7 @@ const ri = ({ transaction: A }) => {
|
|
|
7982
7982
|
selectedDayActivities: o,
|
|
7983
7983
|
setSelectedDay: s,
|
|
7984
7984
|
upcomingActivities: c
|
|
7985
|
-
} = HA(), [u, l] = C.useState(0), { onEvent: h } = Z(), g = n.filter(fn), m = a.filter(fn), f = r.filter(fn), y = g.filter(xt).reduce(it, 0), p = m.filter(xt).reduce(it, 0), S = f.filter(xt).reduce(it, 0), I = g.filter(xt).length, L = g.filter(Cn).reduce(it, 0), P = m.filter(Cn).reduce(it, 0),
|
|
7985
|
+
} = HA(), [u, l] = C.useState(0), { onEvent: h } = Z(), g = n.filter(fn), m = a.filter(fn), f = r.filter(fn), y = g.filter(xt).reduce(it, 0), p = m.filter(xt).reduce(it, 0), S = f.filter(xt).reduce(it, 0), I = g.filter(xt).length, L = g.filter(Cn).reduce(it, 0), P = m.filter(Cn).reduce(it, 0), x = g.filter(Cn).length, O = (z, k) => {
|
|
7986
7986
|
l(k);
|
|
7987
7987
|
}, N = (z) => {
|
|
7988
7988
|
h(j.RECURRING_ACTIVITY_CLICK_UPCOMING, {
|
|
@@ -8011,7 +8011,7 @@ const ri = ({ transaction: A }) => {
|
|
|
8011
8011
|
expected: L,
|
|
8012
8012
|
paid: P,
|
|
8013
8013
|
title: A.deposits,
|
|
8014
|
-
total:
|
|
8014
|
+
total: x
|
|
8015
8015
|
}
|
|
8016
8016
|
),
|
|
8017
8017
|
!e && /* @__PURE__ */ t(
|
|
@@ -8023,7 +8023,7 @@ const ri = ({ transaction: A }) => {
|
|
|
8023
8023
|
}
|
|
8024
8024
|
),
|
|
8025
8025
|
e && /* @__PURE__ */ d(b, { children: [
|
|
8026
|
-
/* @__PURE__ */ d(Xe, { onChange:
|
|
8026
|
+
/* @__PURE__ */ d(Xe, { onChange: O, value: u, variant: "fullWidth", children: [
|
|
8027
8027
|
/* @__PURE__ */ t(
|
|
8028
8028
|
WA,
|
|
8029
8029
|
{
|
|
@@ -8277,7 +8277,7 @@ class iu {
|
|
|
8277
8277
|
loadExpectedEvents = async () => {
|
|
8278
8278
|
try {
|
|
8279
8279
|
const e = await this.cashflowApi.getProjectedCashflowEvents(
|
|
8280
|
-
|
|
8280
|
+
pA(J()),
|
|
8281
8281
|
me(J(), 30)
|
|
8282
8282
|
);
|
|
8283
8283
|
U(() => {
|
|
@@ -8293,7 +8293,7 @@ class iu {
|
|
|
8293
8293
|
try {
|
|
8294
8294
|
const e = await this.cashflowApi.getCashflowEventsByDateRange(
|
|
8295
8295
|
pe(J(), 90),
|
|
8296
|
-
|
|
8296
|
+
DA(J())
|
|
8297
8297
|
);
|
|
8298
8298
|
U(() => {
|
|
8299
8299
|
this.cashflowEvents = e.filter(
|
|
@@ -8589,7 +8589,7 @@ const fu = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
|
8589
8589
|
),
|
|
8590
8590
|
/* @__PURE__ */ t(G, {})
|
|
8591
8591
|
] });
|
|
8592
|
-
}, Zr = T(mu), $r = (A, e) => (n) => n.accountGuid === A.guid && (kn(n.expectedDate) || ft(n.expectedDate, e.start)) &&
|
|
8592
|
+
}, Zr = T(mu), $r = (A, e) => (n) => n.accountGuid === A.guid && (kn(n.expectedDate) || ft(n.expectedDate, e.start)) && mA(n.expectedDate, e.end), pu = () => {
|
|
8593
8593
|
const { cashflow: A } = D(), { upcomingExpenses: e, upcomingIncome: n } = HA(), { dateRange: r, selectedCashAccounts: a } = tt();
|
|
8594
8594
|
return /* @__PURE__ */ d(w, { children: [
|
|
8595
8595
|
/* @__PURE__ */ d(w, { flexDirection: "row", justifyContent: "space-between", children: [
|
|
@@ -8928,7 +8928,7 @@ const fu = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
|
8928
8928
|
e && /* @__PURE__ */ t(NA, { amount: A, component: "h2", symbol: a, variant: "Small" })
|
|
8929
8929
|
]
|
|
8930
8930
|
}
|
|
8931
|
-
), Aa = (A, e) => (n) => n.accountGuid && A.includes(n.accountGuid) && (kn(n.expectedDate) || ft(n.expectedDate, e.start)) &&
|
|
8931
|
+
), Aa = (A, e) => (n) => n.accountGuid && A.includes(n.accountGuid) && (kn(n.expectedDate) || ft(n.expectedDate, e.start)) && mA(n.expectedDate, e.end), Su = () => {
|
|
8932
8932
|
const [A, e] = C.useState(!1), { availableWidth: n } = wt(), { cashflow: r } = D(), { upcomingExpenses: a, upcomingIncome: i } = HA(), { selectedAccountGuids: o } = yA(), { dateRange: s, selectedCashAccounts: c } = tt(), { userProfile: u } = en(), l = C.useMemo(
|
|
8933
8933
|
() => a.filter(Aa(o, s)),
|
|
8934
8934
|
[s, o, a]
|
|
@@ -9129,26 +9129,26 @@ const fu = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
|
9129
9129
|
transform: rotate(360deg);
|
|
9130
9130
|
}
|
|
9131
9131
|
`, Mu = () => {
|
|
9132
|
-
const { addCashflowEvent: A, addCashflowSequence: e, cashflowSequences: n } = HA(), { cashflow: r, common: a } = D(), { completeOnboarding: i } = Wn(), { isDirty: o } = tt(), { isMobile: s } = KA(), { setDisplayedDate: c } = yA(), { filter: u, setFilter: l, transactions: h } = dA(), g = hA(), [m, f] =
|
|
9132
|
+
const { addCashflowEvent: A, addCashflowSequence: e, cashflowSequences: n } = HA(), { cashflow: r, common: a } = D(), { completeOnboarding: i } = Wn(), { isDirty: o } = tt(), { isMobile: s } = KA(), { setDisplayedDate: c } = yA(), { filter: u, setFilter: l, transactions: h } = dA(), g = hA(), [m, f] = de(!0), [y, p] = C.useState(K.EveryMonth), [S, I] = de(!1), [L, P] = C.useState(null), [x, O] = de(1), [N, q] = de([]), [z, k] = de(""), X = C.useMemo(
|
|
9133
9133
|
() => h.find((uA) => uA.guid === z),
|
|
9134
9134
|
[z]
|
|
9135
9135
|
), F = !!n.length, aA = async () => {
|
|
9136
|
-
|
|
9136
|
+
O(2), c(
|
|
9137
9137
|
// Beginning of the month, 90 days before today
|
|
9138
|
-
|
|
9138
|
+
pA(pe(J(), 90)),
|
|
9139
9139
|
J()
|
|
9140
|
-
), l({ ...u, custom: vt }),
|
|
9140
|
+
), l({ ...u, custom: vt }), O(3);
|
|
9141
9141
|
}, iA = async () => {
|
|
9142
9142
|
if (!(N.length < 1)) {
|
|
9143
9143
|
I(!0);
|
|
9144
9144
|
for (let uA = 0; uA < N.length; uA++) {
|
|
9145
|
-
const wA = N[uA],
|
|
9145
|
+
const wA = N[uA], ce = di(
|
|
9146
9146
|
wA,
|
|
9147
9147
|
wA.frequency,
|
|
9148
9148
|
wA.nextDate
|
|
9149
|
-
),
|
|
9150
|
-
if (
|
|
9151
|
-
const ze = ui(
|
|
9149
|
+
), le = await e(ce);
|
|
9150
|
+
if (le) {
|
|
9151
|
+
const ze = ui(le, wA);
|
|
9152
9152
|
await A(ze);
|
|
9153
9153
|
}
|
|
9154
9154
|
}
|
|
@@ -9169,7 +9169,7 @@ const fu = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
|
9169
9169
|
py: 24
|
|
9170
9170
|
},
|
|
9171
9171
|
children: [
|
|
9172
|
-
|
|
9172
|
+
x === 1 && /* @__PURE__ */ t(
|
|
9173
9173
|
b,
|
|
9174
9174
|
{
|
|
9175
9175
|
sx: {
|
|
@@ -9178,7 +9178,7 @@ const fu = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
|
9178
9178
|
children: /* @__PURE__ */ t(Iu, { handleNextStep: aA })
|
|
9179
9179
|
}
|
|
9180
9180
|
),
|
|
9181
|
-
|
|
9181
|
+
x === 2 && /* @__PURE__ */ t(
|
|
9182
9182
|
b,
|
|
9183
9183
|
{
|
|
9184
9184
|
sx: {
|
|
@@ -9187,7 +9187,7 @@ const fu = ({ activity: A }) => /* @__PURE__ */ d(rA, { children: [
|
|
|
9187
9187
|
children: /* @__PURE__ */ t(Ou, {})
|
|
9188
9188
|
}
|
|
9189
9189
|
),
|
|
9190
|
-
|
|
9190
|
+
x === 3 && /* @__PURE__ */ d(
|
|
9191
9191
|
b,
|
|
9192
9192
|
{
|
|
9193
9193
|
sx: {
|
|
@@ -9399,7 +9399,7 @@ let zu = class {
|
|
|
9399
9399
|
// if there is no income activity
|
|
9400
9400
|
get expensesTilNextIncome() {
|
|
9401
9401
|
return this.upcomingExpenses.filter(
|
|
9402
|
-
(e) =>
|
|
9402
|
+
(e) => mA(e.expectedDate, this.nextIncome?.expectedDate || DA(/* @__PURE__ */ new Date()))
|
|
9403
9403
|
);
|
|
9404
9404
|
}
|
|
9405
9405
|
setNextIncome = (e) => {
|
|
@@ -9444,8 +9444,8 @@ class qu {
|
|
|
9444
9444
|
selectedAccountGuids = this.selectedAccounts.map((e) => e.guid);
|
|
9445
9445
|
displayedDate = /* @__PURE__ */ new Date();
|
|
9446
9446
|
displayedDateRange = {
|
|
9447
|
-
start:
|
|
9448
|
-
end:
|
|
9447
|
+
start: pA(this.displayedDate),
|
|
9448
|
+
end: DA(this.displayedDate)
|
|
9449
9449
|
};
|
|
9450
9450
|
constructor(e) {
|
|
9451
9451
|
TA(this), this.globalStore = e;
|
|
@@ -9574,9 +9574,9 @@ const yi = 13, Qu = (A, e) => A.filter((n) => {
|
|
|
9574
9574
|
}), Fu = (A, e) => [...A, ...e], ju = (A) => {
|
|
9575
9575
|
if (A && A.length > 0)
|
|
9576
9576
|
return A[A.length - 1];
|
|
9577
|
-
}, Uu = (A, e) => A.year_month - e.year_month, Wu = () => Array.from({ length: yi }, (A, e) => Math.floor(
|
|
9577
|
+
}, Uu = (A, e) => A.year_month - e.year_month, Wu = () => Array.from({ length: yi }, (A, e) => Math.floor(pA(ue(/* @__PURE__ */ new Date(), e)).getTime() / 1e3)).sort(), Yu = (A, e, n) => !A.length || !e.length ? [] : Wu().reduceRight((a, i) => {
|
|
9578
9578
|
const o = e.filter(
|
|
9579
|
-
({ year_month: l }) => l === parseInt(kA(
|
|
9579
|
+
({ year_month: l }) => l === parseInt(kA(bA(i), "yyyyMM"))
|
|
9580
9580
|
), s = A.map((l) => {
|
|
9581
9581
|
const h = o.find((m) => m.account_guid === l.guid), g = {
|
|
9582
9582
|
change: 0,
|
|
@@ -9715,7 +9715,7 @@ const $u = ({
|
|
|
9715
9715
|
selectedData: i
|
|
9716
9716
|
}) => {
|
|
9717
9717
|
const { isMobile: o } = KA(), s = qA(), c = A.map((g) => ({
|
|
9718
|
-
x: kA(
|
|
9718
|
+
x: kA(bA(g.x), "MMM"),
|
|
9719
9719
|
y: g.y
|
|
9720
9720
|
})), u = i ? { index: A.findIndex((g) => g.x === i.x) } : void 0, l = e ? { index: A.findIndex((g) => g.x === e.x) } : void 0, h = (g) => ({
|
|
9721
9721
|
fill: g === u?.index ? s.palette.success.main : "",
|
|
@@ -9770,7 +9770,7 @@ const $u = ({
|
|
|
9770
9770
|
cA,
|
|
9771
9771
|
{
|
|
9772
9772
|
primary: /* @__PURE__ */ d(w, { direction: "row", justifyContent: "space-between", sx: { fontWeight: 400 }, children: [
|
|
9773
|
-
/* @__PURE__ */ t(E, { variant: "Body", children: kA(
|
|
9773
|
+
/* @__PURE__ */ t(E, { variant: "Body", children: kA(bA(A.x), "MMMM yyyy") }),
|
|
9774
9774
|
/* @__PURE__ */ t(NA, { amount: A.y, sx: { color: "inherit" }, variant: "Body" })
|
|
9775
9775
|
] })
|
|
9776
9776
|
}
|
|
@@ -9950,7 +9950,7 @@ const c1 = (A, e) => {
|
|
|
9950
9950
|
institutionGuid: a?.institution_guid ?? "",
|
|
9951
9951
|
size: 33
|
|
9952
9952
|
}
|
|
9953
|
-
) }) : /* @__PURE__ */ t("div", { style: s.badge, children: /* @__PURE__ */ t(
|
|
9953
|
+
) }) : /* @__PURE__ */ t("div", { style: s.badge, children: /* @__PURE__ */ t(ie, { categoryGuid: i?.category_guid, size: 36 }) });
|
|
9954
9954
|
}, d1 = T(l1), u1 = ({ notification: A, onClick: e }) => {
|
|
9955
9955
|
const { updateNotification: n } = Va(), r = Vt(), a = {
|
|
9956
9956
|
card: {
|
|
@@ -10084,17 +10084,17 @@ const mn = ({
|
|
|
10084
10084
|
A
|
|
10085
10085
|
] }) }),
|
|
10086
10086
|
/* @__PURE__ */ t(G, { sx: { ml: e ? 0 : 24 } })
|
|
10087
|
-
] }),
|
|
10087
|
+
] }), se = () => {
|
|
10088
10088
|
if (!C.useContext(et))
|
|
10089
10089
|
throw new Error("useCategoryUiStore() must be used within the GlobalDataContext");
|
|
10090
10090
|
return PA().uiStore;
|
|
10091
10091
|
}, f1 = () => {
|
|
10092
|
-
const { accounts: A } = PA(), { selectedAccount: e, selectedMember: n } =
|
|
10092
|
+
const { accounts: A } = PA(), { selectedAccount: e, selectedMember: n } = se();
|
|
10093
10093
|
return A.filter(
|
|
10094
10094
|
(r) => r.member_guid === n.guid && n.successfully_aggregated_at && r.guid !== e.guid
|
|
10095
10095
|
);
|
|
10096
10096
|
}, m1 = () => {
|
|
10097
|
-
const [A, e] = C.useState(!1), [n, r] = C.useState(!1), [a, i] = C.useState(!1), [o, s] = C.useState({}), { selectedAccount: c } =
|
|
10097
|
+
const [A, e] = C.useState(!1), [n, r] = C.useState(!1), [a, i] = C.useState(!1), [o, s] = C.useState({}), { selectedAccount: c } = se(), { mergeAccounts: u, updateAccount: l } = PA(), { accounts: h } = D(), g = f1(), { onEvent: m } = Z(), f = (p) => {
|
|
10098
10098
|
l({
|
|
10099
10099
|
...c,
|
|
10100
10100
|
...p
|
|
@@ -10344,7 +10344,7 @@ const mn = ({
|
|
|
10344
10344
|
};
|
|
10345
10345
|
default: {
|
|
10346
10346
|
const r = () => {
|
|
10347
|
-
const a = A.successfully_aggregated_at ?
|
|
10347
|
+
const a = A.successfully_aggregated_at ? bA(A.successfully_aggregated_at) : void 0, i = a && $(a, Y.TIME_STAMP_HOUR_MINUTE);
|
|
10348
10348
|
if (i)
|
|
10349
10349
|
return kn(a) ? B(e.last_updated_at, e.today, i) : as(a) ? B(e.last_updated_at, e.yesterday, i) : B(
|
|
10350
10350
|
e.last_updated_at,
|
|
@@ -10368,7 +10368,7 @@ const mn = ({
|
|
|
10368
10368
|
}, v1 = () => {
|
|
10369
10369
|
const [A, e] = C.useState(!1), {
|
|
10370
10370
|
palette: { mode: n }
|
|
10371
|
-
} = hA(), { selectedMember: r } =
|
|
10371
|
+
} = hA(), { selectedMember: r } = se(), { accounts: a, connect: i } = D(), o = wi(r, i), s = qa.includes(r.connection_status) ? {
|
|
10372
10372
|
color: "error.main",
|
|
10373
10373
|
ctaCopy: o.cta ?? "",
|
|
10374
10374
|
icon: /* @__PURE__ */ t(Kn, { sx: { ...pn } }),
|
|
@@ -10438,7 +10438,7 @@ const mn = ({
|
|
|
10438
10438
|
)
|
|
10439
10439
|
] });
|
|
10440
10440
|
}, E1 = T(v1), y1 = ({ field: A, isOpen: e, onClose: n }) => {
|
|
10441
|
-
const { updateAccount: r } = PA(), { selectedAccount: a } =
|
|
10441
|
+
const { updateAccount: r } = PA(), { selectedAccount: a } = se(), { accounts: i } = D(), [o, s] = C.useState(a[A.name]), [c, u] = C.useState(""), [l, h] = C.useState(!0), g = () => {
|
|
10442
10442
|
s(""), u(""), n();
|
|
10443
10443
|
}, m = () => {
|
|
10444
10444
|
switch (A.type) {
|
|
@@ -10524,7 +10524,7 @@ const mn = ({
|
|
|
10524
10524
|
}
|
|
10525
10525
|
);
|
|
10526
10526
|
}, w1 = T(y1), L1 = () => {
|
|
10527
|
-
const A = window.app?.config, { onEvent: e } = Z(), { selectedAccount: n } =
|
|
10527
|
+
const A = window.app?.config, { onEvent: e } = Z(), { selectedAccount: n } = se(), { accounts: r } = D(), a = hu(n, r), i = n.member_is_managed_by_user || !n.member_is_managed_by_user && A.enable_renaming_home_accounts, [o, s] = C.useState(!1), [c, u] = C.useState(a[0]), l = a.filter(
|
|
10528
10528
|
(h) => i || n[h.name] || n[h.name] === 0
|
|
10529
10529
|
);
|
|
10530
10530
|
return /* @__PURE__ */ d(rA, { children: [
|
|
@@ -10573,7 +10573,7 @@ const mn = ({
|
|
|
10573
10573
|
/* @__PURE__ */ t(p1, {})
|
|
10574
10574
|
] });
|
|
10575
10575
|
}, b1 = T(T1), I1 = ({ setTabValue: A }) => {
|
|
10576
|
-
const [e, n] = C.useState(!1), { selectedMember: r } =
|
|
10576
|
+
const [e, n] = C.useState(!1), { selectedMember: r } = se(), { accounts: a, connect: i } = D(), o = r.connection_status && qa.includes(r.connection_status);
|
|
10577
10577
|
if (C.useEffect(() => {
|
|
10578
10578
|
o && A(1);
|
|
10579
10579
|
}, [o]), !o) return;
|
|
@@ -10629,7 +10629,7 @@ const mn = ({
|
|
|
10629
10629
|
)
|
|
10630
10630
|
] });
|
|
10631
10631
|
}, D1 = T(I1), x1 = () => {
|
|
10632
|
-
const [A, e] = C.useState(""), { onEvent: n } = Z(), { selectedAccount: r } =
|
|
10632
|
+
const [A, e] = C.useState(""), { onEvent: n } = Z(), { selectedAccount: r } = se(), { accounts: a } = D(), { setFilter: i, sortedTransactions: o } = dA(), s = C.useMemo(() => o.find((c) => c.guid === A), [A]);
|
|
10633
10633
|
return C.useEffect(() => {
|
|
10634
10634
|
i({
|
|
10635
10635
|
dateRange: { start: Ko(ko(), 90), end: Go() },
|
|
@@ -10685,9 +10685,9 @@ const mn = ({
|
|
|
10685
10685
|
] });
|
|
10686
10686
|
}, N1 = T(P1), ln = (A) => A.top_level_category_guid === v.INCOME || A.category_guid === v.INCOME, M1 = (A) => !ln(A) && !Si(A), Li = (A) => Lr.includes(A.top_level_category_guid) || Lr.includes(A.category_guid), Si = (A) => A.top_level_category_guid === v.TRANSFER || A.category_guid === v.TRANSFER, R1 = (A) => !ln(A) && !Li(A) && !Si(A), H1 = (A) => A.filter((e) => e.category_guid === e.top_level_category_guid), sr = (A, e) => {
|
|
10687
10687
|
const n = [];
|
|
10688
|
-
let r =
|
|
10688
|
+
let r = pA(ue(/* @__PURE__ */ new Date(), 5));
|
|
10689
10689
|
const a = /* @__PURE__ */ new Date();
|
|
10690
|
-
for (;
|
|
10690
|
+
for (; mA(r, a); )
|
|
10691
10691
|
n.push({
|
|
10692
10692
|
x: $(r, Y.MONTH_SHORT),
|
|
10693
10693
|
y: A.filter((i) => i.year === r.getFullYear() && i.month === r.getMonth() + 1).reduce((i, o) => i + o.total, 0)
|
|
@@ -10720,7 +10720,7 @@ const mn = ({
|
|
|
10720
10720
|
}
|
|
10721
10721
|
return s;
|
|
10722
10722
|
}, k1 = () => {
|
|
10723
|
-
const A = qA(), { selectedAccount: e } =
|
|
10723
|
+
const A = qA(), { selectedAccount: e } = se(), { monthlyCategoryTotals: n } = MA(), { trends: r } = D(), a = [A.palette.chart?.chart1, A.palette.chart?.chart2], i = q1(n, e.account_type), o = K1(i, e.account_type, r), s = [W.LOAN, W.MORTGAGE].includes(e.account_type);
|
|
10724
10724
|
return /* @__PURE__ */ t("div", { "data-testid": "TrendsChart", children: /* @__PURE__ */ t(
|
|
10725
10725
|
Un,
|
|
10726
10726
|
{
|
|
@@ -10733,7 +10733,7 @@ const mn = ({
|
|
|
10733
10733
|
}
|
|
10734
10734
|
) });
|
|
10735
10735
|
}, G1 = T(k1), X1 = ({ sx: A }) => {
|
|
10736
|
-
const { loadMonthlyCategoryTotals: e } = MA(), { isInitialized: n } = An(), { selectedAccount: r } =
|
|
10736
|
+
const { loadMonthlyCategoryTotals: e } = MA(), { isInitialized: n } = An(), { selectedAccount: r } = se(), [a, i] = C.useState(!1);
|
|
10737
10737
|
return C.useEffect(() => {
|
|
10738
10738
|
n && e([r]).finally(() => {
|
|
10739
10739
|
i(!0);
|
|
@@ -10761,7 +10761,7 @@ const mn = ({
|
|
|
10761
10761
|
}
|
|
10762
10762
|
);
|
|
10763
10763
|
}, Q1 = T(X1), F1 = () => {
|
|
10764
|
-
const { institutions: A } = PA(), { selectedAccount: e } =
|
|
10764
|
+
const { institutions: A } = PA(), { selectedAccount: e } = se(), { accounts: n } = D(), { firstSubtitle: r, firstValue: a, hasAvailableBalance: i, secondSubtitle: o, secondValue: s } = Ei(e, n), c = A.find(
|
|
10765
10765
|
(l) => l.guid === e?.institution_guid
|
|
10766
10766
|
), u = [
|
|
10767
10767
|
...Qn,
|
|
@@ -10794,7 +10794,7 @@ const mn = ({
|
|
|
10794
10794
|
u && /* @__PURE__ */ t(w, { children: /* @__PURE__ */ t(Q1, {}) })
|
|
10795
10795
|
] });
|
|
10796
10796
|
}, j1 = T(F1), U1 = () => {
|
|
10797
|
-
const [A, e] = C.useState(""), { accounts: n } = D(), { selectedAccounts: r } = yA(), { setSelectedAccount: a, setSelectedMember: i } =
|
|
10797
|
+
const [A, e] = C.useState(""), { accounts: n } = D(), { selectedAccounts: r } = yA(), { setSelectedAccount: a, setSelectedMember: i } = se(), { members: o } = PA(), { onEvent: s } = Z(), c = [...new Set(r.map((l) => l.account_type))], u = r.find((l) => A === l.guid);
|
|
10798
10798
|
return C.useEffect(() => {
|
|
10799
10799
|
if (u) {
|
|
10800
10800
|
a(u);
|
|
@@ -11861,7 +11861,7 @@ const aa = 5, ih = 100, ia = 25, oh = (A) => {
|
|
|
11861
11861
|
transaction_total: i
|
|
11862
11862
|
} = A;
|
|
11863
11863
|
return /* @__PURE__ */ t(V, { children: /* @__PURE__ */ d(lA, { children: [
|
|
11864
|
-
/* @__PURE__ */ t(xA, { sx: { mb: -8, mr: 16 }, children: /* @__PURE__ */ t(Za, { color: n, percent: a, size: 40, children: /* @__PURE__ */ t(
|
|
11864
|
+
/* @__PURE__ */ t(xA, { sx: { mb: -8, mr: 16 }, children: /* @__PURE__ */ t(Za, { color: n, percent: a, size: 40, children: /* @__PURE__ */ t(ie, { categoryGuid: r.parent_guid, variant: "basic" }) }) }),
|
|
11865
11865
|
/* @__PURE__ */ t(
|
|
11866
11866
|
cA,
|
|
11867
11867
|
{
|
|
@@ -11899,7 +11899,7 @@ const aa = 5, ih = 100, ia = 25, oh = (A) => {
|
|
|
11899
11899
|
};
|
|
11900
11900
|
return /* @__PURE__ */ d(w, { gap: 24, children: [
|
|
11901
11901
|
/* @__PURE__ */ t(RA, { sx: { mt: 24, mx: 24 }, children: /* @__PURE__ */ t(Ge, { children: /* @__PURE__ */ d(w, { alignItems: "center", gap: 16, children: [
|
|
11902
|
-
/* @__PURE__ */ t(
|
|
11902
|
+
/* @__PURE__ */ t(ie, { categoryGuid: A.category_guid, size: 56 }),
|
|
11903
11903
|
/* @__PURE__ */ t(Ce, { children: `${Q(A.transaction_total, "0,0")} / ${Q(A.amount, "0,0")}` }),
|
|
11904
11904
|
/* @__PURE__ */ t(E, { bold: !0, variant: "XSmall", children: A.category.name }),
|
|
11905
11905
|
/* @__PURE__ */ t(Kt, { data: s, height: 10 })
|
|
@@ -11946,7 +11946,7 @@ const aa = 5, ih = 100, ia = 25, oh = (A) => {
|
|
|
11946
11946
|
transaction_total: u
|
|
11947
11947
|
} = A;
|
|
11948
11948
|
return /* @__PURE__ */ t(V, { children: /* @__PURE__ */ d(lA, { onClick: () => e?.(A), children: [
|
|
11949
|
-
/* @__PURE__ */ t(xA, { sx: { mb: -8, mr: 16 }, children: /* @__PURE__ */ t(Za, { color: r, percent: s, size: 40, children: /* @__PURE__ */ t(
|
|
11949
|
+
/* @__PURE__ */ t(xA, { sx: { mb: -8, mr: 16 }, children: /* @__PURE__ */ t(Za, { color: r, percent: s, size: 40, children: /* @__PURE__ */ t(ie, { categoryGuid: i, variant: "basic" }) }) }),
|
|
11950
11950
|
/* @__PURE__ */ t(
|
|
11951
11951
|
cA,
|
|
11952
11952
|
{
|
|
@@ -12032,17 +12032,17 @@ const aa = 5, ih = 100, ia = 25, oh = (A) => {
|
|
|
12032
12032
|
selectedAccountGuids: s,
|
|
12033
12033
|
setDisplayedDate: c,
|
|
12034
12034
|
setSelectedAccounts: u
|
|
12035
|
-
} = yA(), { dateRange: l, loadBudgets: h, loadCategoryTotals: g, setDateRange: m, setTheme: f } = Qe(), { loadCashflowSequences: y } = HA(), { isDesktop: p, isTablet: S } = KA(), { setFilter: I } = dA(), [L, P] = C.useState(!1), [
|
|
12035
|
+
} = yA(), { dateRange: l, loadBudgets: h, loadCategoryTotals: g, setDateRange: m, setTheme: f } = Qe(), { loadCashflowSequences: y } = HA(), { isDesktop: p, isTablet: S } = KA(), { setFilter: I } = dA(), [L, P] = C.useState(!1), [x, O] = C.useState(void 0);
|
|
12036
12036
|
C.useEffect(() => {
|
|
12037
12037
|
f(n), u(r), c(l.start, l.end);
|
|
12038
12038
|
}, []), C.useEffect(() => {
|
|
12039
12039
|
i && (g(o, l).finally(), y().finally(), L || h().finally(() => P(!0)));
|
|
12040
12040
|
}, [i, o, l]);
|
|
12041
12041
|
const N = (z) => {
|
|
12042
|
-
|
|
12042
|
+
O(z), I({
|
|
12043
12043
|
accounts: s,
|
|
12044
12044
|
dateRange: {
|
|
12045
|
-
start:
|
|
12045
|
+
start: pA(/* @__PURE__ */ new Date()),
|
|
12046
12046
|
end: Me()
|
|
12047
12047
|
},
|
|
12048
12048
|
custom: (k) => k.category_guid === z.category_guid || k.top_level_category_guid === z.category_guid
|
|
@@ -12098,11 +12098,11 @@ const aa = 5, ih = 100, ia = 25, oh = (A) => {
|
|
|
12098
12098
|
gA,
|
|
12099
12099
|
{
|
|
12100
12100
|
ariaLabelClose: "Close",
|
|
12101
|
-
isOpen: !!
|
|
12102
|
-
onClose: () =>
|
|
12101
|
+
isOpen: !!x,
|
|
12102
|
+
onClose: () => O(void 0),
|
|
12103
12103
|
shouldShowHeaderBorders: !1,
|
|
12104
12104
|
title: "Budget Details",
|
|
12105
|
-
children:
|
|
12105
|
+
children: x && /* @__PURE__ */ t(Eh, { budget: x })
|
|
12106
12106
|
}
|
|
12107
12107
|
)
|
|
12108
12108
|
]
|
|
@@ -13034,7 +13034,7 @@ const bh = () => {
|
|
|
13034
13034
|
)
|
|
13035
13035
|
] });
|
|
13036
13036
|
}, Di = Yi(void 0), Xh = ({ children: A }) => {
|
|
13037
|
-
const [e, n] =
|
|
13037
|
+
const [e, n] = de({
|
|
13038
13038
|
isOpen: !1,
|
|
13039
13039
|
message: "",
|
|
13040
13040
|
severity: "success"
|
|
@@ -13164,18 +13164,18 @@ const Oi = ({
|
|
|
13164
13164
|
m && !a && l(c);
|
|
13165
13165
|
}, [m, a, c, l]);
|
|
13166
13166
|
const f = (L) => {
|
|
13167
|
-
const { name: P, checked:
|
|
13168
|
-
l((
|
|
13169
|
-
...
|
|
13170
|
-
[P]:
|
|
13167
|
+
const { name: P, checked: x } = L.target;
|
|
13168
|
+
l((O) => ({
|
|
13169
|
+
...O,
|
|
13170
|
+
[P]: x
|
|
13171
13171
|
}));
|
|
13172
13172
|
}, y = Object.values(u).filter(Boolean).length, p = () => {
|
|
13173
13173
|
l(c), i();
|
|
13174
13174
|
}, S = () => {
|
|
13175
13175
|
const L = e.reduce(
|
|
13176
|
-
(P,
|
|
13176
|
+
(P, x) => ({
|
|
13177
13177
|
...P,
|
|
13178
|
-
[
|
|
13178
|
+
[x.name]: y !== e.length
|
|
13179
13179
|
}),
|
|
13180
13180
|
{}
|
|
13181
13181
|
);
|
|
@@ -13255,9 +13255,9 @@ const Oi = ({
|
|
|
13255
13255
|
/* @__PURE__ */ t(V, { disablePadding: !0, children: /* @__PURE__ */ d(
|
|
13256
13256
|
lA,
|
|
13257
13257
|
{
|
|
13258
|
-
onClick: () => l((
|
|
13259
|
-
...
|
|
13260
|
-
[L.name]: !
|
|
13258
|
+
onClick: () => l((x) => ({
|
|
13259
|
+
...x,
|
|
13260
|
+
[L.name]: !x[L.name]
|
|
13261
13261
|
})),
|
|
13262
13262
|
children: [
|
|
13263
13263
|
/* @__PURE__ */ t(
|
|
@@ -13405,11 +13405,11 @@ const Oi = ({
|
|
|
13405
13405
|
update: r,
|
|
13406
13406
|
isUpdateError: a,
|
|
13407
13407
|
isUpdateLoading: i
|
|
13408
|
-
} = e, [o, s, c] = Vh(n), { toastState: u, showToast: l, hideToast: h, setMessage: g } = xi(), [m, f] = C.useState(!1), [y, p] = C.useState(!1), [S, I] = C.useState(""), [L, P] = C.useState(""),
|
|
13408
|
+
} = e, [o, s, c] = Vh(n), { toastState: u, showToast: l, hideToast: h, setMessage: g } = xi(), [m, f] = C.useState(!1), [y, p] = C.useState(!1), [S, I] = C.useState(""), [L, P] = C.useState(""), x = Qa(i);
|
|
13409
13409
|
ge(() => {
|
|
13410
|
-
|
|
13411
|
-
}, [
|
|
13412
|
-
const
|
|
13410
|
+
x && !i && (a ? l(A.something_went_wrong, "error") : l(void 0, "success"));
|
|
13411
|
+
}, [x, a]);
|
|
13412
|
+
const O = () => {
|
|
13413
13413
|
g(
|
|
13414
13414
|
n.length > 1 ? A.insights_unhidden : A.insight_unhidden
|
|
13415
13415
|
), r(n.map((k) => k.name));
|
|
@@ -13489,7 +13489,7 @@ const Oi = ({
|
|
|
13489
13489
|
color: "primary",
|
|
13490
13490
|
fullWidth: !0,
|
|
13491
13491
|
loading: i,
|
|
13492
|
-
onClick:
|
|
13492
|
+
onClick: O,
|
|
13493
13493
|
variant: "contained",
|
|
13494
13494
|
children: A.show_all_hidden_insights
|
|
13495
13495
|
}
|
|
@@ -13776,10 +13776,10 @@ const St = C.createContext(null), ag = ({
|
|
|
13776
13776
|
store: n,
|
|
13777
13777
|
children: r
|
|
13778
13778
|
}) => /* @__PURE__ */ t(St.Provider, { value: { onEvent: A, onPageview: e, store: n, children: r }, children: r }), ig = ({ beat: A }) => {
|
|
13779
|
-
const [e, n] =
|
|
13779
|
+
const [e, n] = de(v.UNCATEGORIZED);
|
|
13780
13780
|
return ge(() => {
|
|
13781
13781
|
A.primary_category_guid ? n(A.primary_category_guid) : A.category_guids?.length && n(A.category_guids[0]);
|
|
13782
|
-
}, []), /* @__PURE__ */ t(
|
|
13782
|
+
}, []), /* @__PURE__ */ t(ie, { categoryGuid: e, size: 16, sx: { minWidth: 16 } });
|
|
13783
13783
|
}, og = ({ beat: A }) => {
|
|
13784
13784
|
const e = OA(), n = sg(e);
|
|
13785
13785
|
return /* @__PURE__ */ t(
|
|
@@ -14804,7 +14804,7 @@ const St = C.createContext(null), ag = ({
|
|
|
14804
14804
|
variant: u,
|
|
14805
14805
|
widthOverrides: l
|
|
14806
14806
|
}) => {
|
|
14807
|
-
const h = yg(r, c, l), g = C.useRef(null), [m, f] = C.useState(0), [y, p] = C.useState(null), [S, I] = C.useState(null), { carouselCopy: L } = Ue(), { onEvent: P } = Tt(),
|
|
14807
|
+
const h = yg(r, c, l), g = C.useRef(null), [m, f] = C.useState(0), [y, p] = C.useState(null), [S, I] = C.useState(null), { carouselCopy: L } = Ue(), { onEvent: P } = Tt(), x = () => {
|
|
14808
14808
|
P(te.ON_CAROUSEL_FORWARD_CLICK), g.current && g.current.scrollTo({
|
|
14809
14809
|
left: (
|
|
14810
14810
|
// Adds the flex gap to the carousel ulRef's width
|
|
@@ -14813,7 +14813,7 @@ const St = C.createContext(null), ag = ({
|
|
|
14813
14813
|
top: 0,
|
|
14814
14814
|
behavior: "smooth"
|
|
14815
14815
|
});
|
|
14816
|
-
},
|
|
14816
|
+
}, O = () => {
|
|
14817
14817
|
P(te.ON_CAROUSEL_BACK_CLICK), g.current && g.current.scrollTo({
|
|
14818
14818
|
left: (g.current.offsetWidth + 8) * (Math.floor(m / (g.current.offsetWidth + 8)) - 1),
|
|
14819
14819
|
top: 0,
|
|
@@ -14881,8 +14881,8 @@ const St = C.createContext(null), ag = ({
|
|
|
14881
14881
|
clientColorScheme: e,
|
|
14882
14882
|
currentBeatIndex: F,
|
|
14883
14883
|
numBeats: A.length + 1,
|
|
14884
|
-
onNextClick:
|
|
14885
|
-
onPreviousClick:
|
|
14884
|
+
onNextClick: x,
|
|
14885
|
+
onPreviousClick: O,
|
|
14886
14886
|
scrollRightBoundary: aA,
|
|
14887
14887
|
scrollX: m
|
|
14888
14888
|
}
|
|
@@ -14936,8 +14936,8 @@ const St = C.createContext(null), ag = ({
|
|
|
14936
14936
|
C.useEffect(() => {
|
|
14937
14937
|
y && y <= 325 && I(3), y && y > 325 && I(2);
|
|
14938
14938
|
}, [y]);
|
|
14939
|
-
const { cardStyle: L, linkTextStyle: P } = h,
|
|
14940
|
-
|
|
14939
|
+
const { cardStyle: L, linkTextStyle: P } = h, x = f ? L : { border: "none", boxShadow: "none", ...L }, O = wg(
|
|
14940
|
+
x,
|
|
14941
14941
|
a,
|
|
14942
14942
|
g,
|
|
14943
14943
|
S,
|
|
@@ -14948,7 +14948,7 @@ const St = C.createContext(null), ag = ({
|
|
|
14948
14948
|
"li",
|
|
14949
14949
|
{
|
|
14950
14950
|
"aria-hidden": !c,
|
|
14951
|
-
className:
|
|
14951
|
+
className: O,
|
|
14952
14952
|
onClick: () => u(),
|
|
14953
14953
|
ref: p,
|
|
14954
14954
|
role: "button",
|
|
@@ -15146,12 +15146,12 @@ const St = C.createContext(null), ag = ({
|
|
|
15146
15146
|
variant: L,
|
|
15147
15147
|
widthOverrides: P
|
|
15148
15148
|
}) => {
|
|
15149
|
-
const [
|
|
15149
|
+
const [x, O] = de("STANDARD"), [N, q] = de(!1), z = qs([c], ve), k = Ks([u], ve);
|
|
15150
15150
|
C.useEffect(() => {
|
|
15151
15151
|
ve.isInitialized || ve.initialize(a, p, o);
|
|
15152
15152
|
}, [a, p, o, ve.isInitialized]), C.useEffect(() => {
|
|
15153
15153
|
const aA = window.innerHeight;
|
|
15154
|
-
aA < 180 ?
|
|
15154
|
+
aA < 180 ? O("STANDARD") : aA >= 180 && aA < 200 ? O("LARGE") : aA >= 200 && aA < 248 ? O("XLARGE") : aA >= 248 && O("XXLARGE");
|
|
15155
15155
|
}, [window.innerHeight]), C.useEffect(() => {
|
|
15156
15156
|
q(!A && ve.isInitialized);
|
|
15157
15157
|
}, [A, ve.isInitialized]);
|
|
@@ -15164,7 +15164,7 @@ const St = C.createContext(null), ag = ({
|
|
|
15164
15164
|
useDarkMode: S,
|
|
15165
15165
|
widthOverrides: P
|
|
15166
15166
|
}, F = {
|
|
15167
|
-
carouselSize:
|
|
15167
|
+
carouselSize: x,
|
|
15168
15168
|
posthog: l,
|
|
15169
15169
|
variant: L,
|
|
15170
15170
|
...X
|
|
@@ -15464,7 +15464,7 @@ const St = C.createContext(null), ag = ({
|
|
|
15464
15464
|
sx: s === "mini" ? { gap: 0, mb: 0 } : { gap: { xs: 4, xl: 8 }, mb: { xs: 4, xl: 8 } },
|
|
15465
15465
|
children: [
|
|
15466
15466
|
/* @__PURE__ */ t(
|
|
15467
|
-
|
|
15467
|
+
ie,
|
|
15468
15468
|
{
|
|
15469
15469
|
categoryGuid: e ? v.INCOME : h.guid,
|
|
15470
15470
|
size: s === "mini" ? 24 : f,
|
|
@@ -15522,8 +15522,8 @@ const St = C.createContext(null), ag = ({
|
|
|
15522
15522
|
C.useEffect(() => {
|
|
15523
15523
|
o(
|
|
15524
15524
|
n,
|
|
15525
|
-
|
|
15526
|
-
|
|
15525
|
+
pA(/* @__PURE__ */ new Date()),
|
|
15526
|
+
DA(/* @__PURE__ */ new Date())
|
|
15527
15527
|
).finally();
|
|
15528
15528
|
}, [n]);
|
|
15529
15529
|
const [s, c] = C.useState(""), [u, l] = C.useState(0), h = C.useMemo(
|
|
@@ -15764,9 +15764,9 @@ const St = C.createContext(null), ag = ({
|
|
|
15764
15764
|
), P = C.useMemo(
|
|
15765
15765
|
() => u.find((q) => q.guid === f),
|
|
15766
15766
|
[f]
|
|
15767
|
-
),
|
|
15767
|
+
), x = (q, z) => {
|
|
15768
15768
|
m(z), h("");
|
|
15769
|
-
},
|
|
15769
|
+
}, O = (q) => {
|
|
15770
15770
|
h(l === q || q === "0" ? "" : q);
|
|
15771
15771
|
}, N = (q) => {
|
|
15772
15772
|
const z = {
|
|
@@ -15793,7 +15793,7 @@ const St = C.createContext(null), ag = ({
|
|
|
15793
15793
|
S(!0);
|
|
15794
15794
|
};
|
|
15795
15795
|
return /* @__PURE__ */ d(b, { children: [
|
|
15796
|
-
/* @__PURE__ */ d(Xe, { onChange:
|
|
15796
|
+
/* @__PURE__ */ d(Xe, { onChange: x, value: g, variant: "fullWidth", children: [
|
|
15797
15797
|
/* @__PURE__ */ t(
|
|
15798
15798
|
WA,
|
|
15799
15799
|
{
|
|
@@ -15823,7 +15823,7 @@ const St = C.createContext(null), ag = ({
|
|
|
15823
15823
|
va,
|
|
15824
15824
|
{
|
|
15825
15825
|
data: I,
|
|
15826
|
-
onSelected:
|
|
15826
|
+
onSelected: O,
|
|
15827
15827
|
onViewTransactions: N,
|
|
15828
15828
|
selectedId: l,
|
|
15829
15829
|
title: a.spend_tab_title
|
|
@@ -15833,7 +15833,7 @@ const St = C.createContext(null), ag = ({
|
|
|
15833
15833
|
va,
|
|
15834
15834
|
{
|
|
15835
15835
|
data: L,
|
|
15836
|
-
onSelected:
|
|
15836
|
+
onSelected: O,
|
|
15837
15837
|
onViewTransactions: N,
|
|
15838
15838
|
selectedId: l,
|
|
15839
15839
|
title: a.income_tab_title
|
|
@@ -15865,7 +15865,7 @@ const St = C.createContext(null), ag = ({
|
|
|
15865
15865
|
C.useEffect(() => {
|
|
15866
15866
|
o(n);
|
|
15867
15867
|
}, [n]), C.useEffect(() => {
|
|
15868
|
-
i(
|
|
15868
|
+
i(pA(J()), DA(J())), u(!0), s(j.SPENDING_VIEW);
|
|
15869
15869
|
}, []);
|
|
15870
15870
|
const l = (h) => {
|
|
15871
15871
|
i(h[0], h[1]);
|
|
@@ -15883,7 +15883,7 @@ const St = C.createContext(null), ag = ({
|
|
|
15883
15883
|
}
|
|
15884
15884
|
);
|
|
15885
15885
|
}, M7 = T(Qg), Fg = (A) => xe[A] ?? xe.default, jg = (A) => Ke[A], Ug = (A) => A.reduce((e, n) => {
|
|
15886
|
-
const r =
|
|
15886
|
+
const r = pA(new Date(n.year, n.month - 1)), a = {
|
|
15887
15887
|
top_level_category_guid: n.top_level_category_guid,
|
|
15888
15888
|
category_guid: n.category_guid,
|
|
15889
15889
|
amount: n.total,
|
|
@@ -15928,7 +15928,7 @@ const St = C.createContext(null), ag = ({
|
|
|
15928
15928
|
{
|
|
15929
15929
|
"aria-label": B(n.category_icon_label_aria, r),
|
|
15930
15930
|
role: "img",
|
|
15931
|
-
children: /* @__PURE__ */ t(
|
|
15931
|
+
children: /* @__PURE__ */ t(ie, { categoryGuid: e })
|
|
15932
15932
|
}
|
|
15933
15933
|
),
|
|
15934
15934
|
/* @__PURE__ */ t(E, { sx: { ml: 12, pb: 6 }, variant: "Small", children: r })
|
|
@@ -15987,15 +15987,15 @@ const St = C.createContext(null), ag = ({
|
|
|
15987
15987
|
(f) => f.category_guid === e || f.top_level_category_guid === e
|
|
15988
15988
|
) : A).reduce(
|
|
15989
15989
|
(f, y) => {
|
|
15990
|
-
const { category_guid: p, top_level_category_guid: S, month: I, total: L, year: P } = y,
|
|
15991
|
-
f[
|
|
15992
|
-
id:
|
|
15993
|
-
category:
|
|
15990
|
+
const { category_guid: p, top_level_category_guid: S, month: I, total: L, year: P } = y, x = e ? p : S;
|
|
15991
|
+
f[x] || (f[x] = {
|
|
15992
|
+
id: x,
|
|
15993
|
+
category: x,
|
|
15994
15994
|
category_guid: p,
|
|
15995
15995
|
top_level_category_guid: S
|
|
15996
15996
|
});
|
|
15997
|
-
const
|
|
15998
|
-
return f[
|
|
15997
|
+
const O = $(new Date(P, I, 1), Y.MONTH_SHORT);
|
|
15998
|
+
return f[x][O] = L, f;
|
|
15999
15999
|
},
|
|
16000
16000
|
{}
|
|
16001
16001
|
);
|
|
@@ -16022,21 +16022,21 @@ const St = C.createContext(null), ag = ({
|
|
|
16022
16022
|
}
|
|
16023
16023
|
) });
|
|
16024
16024
|
}, A3 = ({ onBackClick: A, sx: e }) => {
|
|
16025
|
-
const n = qA(), { onEvent: r } = Z(), { isDesktop: a, isTablet: i, isMobile: o } = KA(), { accounts: s } = PA(), { loadMonthlyCategoryTotals: c, monthlyCategoryTotals: u } = MA(), { isInitialized: l, selectedAccounts: h, setSelectedAccounts: g } = yA(), { trends: m } = D(), f = n.palette.mode === "dark", [y, p] = C.useState(!1), [S, I] = C.useState("Chart"), [L, P] = C.useState(""), [
|
|
16026
|
-
start:
|
|
16027
|
-
end:
|
|
16025
|
+
const n = qA(), { onEvent: r } = Z(), { isDesktop: a, isTablet: i, isMobile: o } = KA(), { accounts: s } = PA(), { loadMonthlyCategoryTotals: c, monthlyCategoryTotals: u } = MA(), { isInitialized: l, selectedAccounts: h, setSelectedAccounts: g } = yA(), { trends: m } = D(), f = n.palette.mode === "dark", [y, p] = C.useState(!1), [S, I] = C.useState("Chart"), [L, P] = C.useState(""), [x, O] = C.useState({
|
|
16026
|
+
start: pA(ue(/* @__PURE__ */ new Date(), 6)),
|
|
16027
|
+
end: DA(/* @__PURE__ */ new Date())
|
|
16028
16028
|
}), [N, q] = C.useState(6);
|
|
16029
16029
|
C.useEffect(() => {
|
|
16030
16030
|
g(s);
|
|
16031
16031
|
}, [s]), C.useEffect(() => {
|
|
16032
16032
|
l && c(
|
|
16033
16033
|
h,
|
|
16034
|
-
|
|
16035
|
-
|
|
16034
|
+
x.start,
|
|
16035
|
+
x.end
|
|
16036
16036
|
).finally(() => {
|
|
16037
16037
|
h.length && p(!0);
|
|
16038
16038
|
});
|
|
16039
|
-
}, [l, h]);
|
|
16039
|
+
}, [l, h, x]);
|
|
16040
16040
|
const z = C.useMemo(
|
|
16041
16041
|
() => Wg(u),
|
|
16042
16042
|
[u]
|
|
@@ -16062,18 +16062,18 @@ const St = C.createContext(null), ag = ({
|
|
|
16062
16062
|
};
|
|
16063
16063
|
}, [k, N]), F = C.useMemo(() => {
|
|
16064
16064
|
const R = $(
|
|
16065
|
-
|
|
16065
|
+
x.start,
|
|
16066
16066
|
o ? Y.MONTH_SHORT_YEAR : Y.MONTH_YEAR
|
|
16067
16067
|
), AA = $(
|
|
16068
|
-
|
|
16068
|
+
x.end,
|
|
16069
16069
|
o ? Y.MONTH_SHORT_YEAR : Y.MONTH_YEAR
|
|
16070
16070
|
);
|
|
16071
16071
|
return `${R} - ${AA}`;
|
|
16072
|
-
}, [
|
|
16072
|
+
}, [x, o]), aA = (R, AA) => {
|
|
16073
16073
|
I(AA ?? S), r(j.TRENDS_CLICK_TOGGLE);
|
|
16074
16074
|
}, iA = (R) => {
|
|
16075
16075
|
const AA = R?.[0], EA = R?.[1], ZA = vs(EA, AA);
|
|
16076
|
-
|
|
16076
|
+
O({ start: AA, end: EA }), q(ZA), r(j.TRENDS_CLICK_DATE, {
|
|
16077
16077
|
time_period: ZA + "M"
|
|
16078
16078
|
});
|
|
16079
16079
|
}, vA = () => {
|
|
@@ -16082,9 +16082,9 @@ const St = C.createContext(null), ag = ({
|
|
|
16082
16082
|
P(R);
|
|
16083
16083
|
}, wA = (R) => {
|
|
16084
16084
|
P(R), r(j.TRENDS_CLICK_LEGEND, { category: Ke[R] });
|
|
16085
|
-
},
|
|
16085
|
+
}, ce = (R) => {
|
|
16086
16086
|
r(j.TRENDS_HOVER_LEGEND, { category: Ke[R] });
|
|
16087
|
-
},
|
|
16087
|
+
}, le = (R) => {
|
|
16088
16088
|
r(j.TRENDS_HOVER_AREA, { category: R });
|
|
16089
16089
|
}, ze = (R) => {
|
|
16090
16090
|
r(j.TRENDS_HOVER_POINT, { category: R });
|
|
@@ -16094,14 +16094,14 @@ const St = C.createContext(null), ag = ({
|
|
|
16094
16094
|
allChartData: z,
|
|
16095
16095
|
filteredChartData: k,
|
|
16096
16096
|
rangeChartData: X,
|
|
16097
|
-
selectedDateRange:
|
|
16097
|
+
selectedDateRange: x,
|
|
16098
16098
|
dateRangeText: F
|
|
16099
16099
|
}), !l || !y ? /* @__PURE__ */ t(re, {}) : /* @__PURE__ */ t(
|
|
16100
16100
|
Se,
|
|
16101
16101
|
{
|
|
16102
16102
|
accountOptions: s,
|
|
16103
16103
|
calendarActions: { onRangeChanged: iA },
|
|
16104
|
-
dateRange:
|
|
16104
|
+
dateRange: x,
|
|
16105
16105
|
dateRangeVariant: "timeframebuttons",
|
|
16106
16106
|
onAccountsFilterClick: vA,
|
|
16107
16107
|
onBackClick: A,
|
|
@@ -16190,8 +16190,8 @@ const St = C.createContext(null), ag = ({
|
|
|
16190
16190
|
pc,
|
|
16191
16191
|
{
|
|
16192
16192
|
onClickLegend: wA,
|
|
16193
|
-
onHoverArea:
|
|
16194
|
-
onHoverLegend:
|
|
16193
|
+
onHoverArea: le,
|
|
16194
|
+
onHoverLegend: ce,
|
|
16195
16195
|
onHoverPoint: ze,
|
|
16196
16196
|
stackedDatasets: X.stackedDatasets,
|
|
16197
16197
|
unstackedDatasets: X.unstackedDatasets
|
|
@@ -16215,9 +16215,9 @@ const St = C.createContext(null), ag = ({
|
|
|
16215
16215
|
const e = [], n = A.filter(
|
|
16216
16216
|
(i) => i.top_level_category_guid !== v.INCOME && i.top_level_category_guid !== v.TRANSFER && i.total > 0
|
|
16217
16217
|
);
|
|
16218
|
-
let r =
|
|
16219
|
-
const a =
|
|
16220
|
-
for (;
|
|
16218
|
+
let r = pA(ue(/* @__PURE__ */ new Date(), 5));
|
|
16219
|
+
const a = DA(/* @__PURE__ */ new Date());
|
|
16220
|
+
for (; mA(r, a); )
|
|
16221
16221
|
e.push({
|
|
16222
16222
|
x: $(r, Y.MONTH_SHORT),
|
|
16223
16223
|
y: n.filter((i) => i.year === r.getFullYear() && i.month === r.getMonth() + 1).reduce((i, o) => i + o.total, 0)
|