@mx-cartographer/experiences 7.0.9-alpha.mega1 → 7.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -1
- package/dist/{Account-Bdz1k5WZ.mjs → Account-BW3-oYEs.mjs} +1 -1
- package/dist/{AccountDetailsContent-CEjEyv_M.mjs → AccountDetailsContent-Dkpo7pw6.mjs} +16 -16
- package/dist/{AccountDetailsHeader-uX5amBaR.mjs → AccountDetailsHeader-2HU_fMWZ.mjs} +11 -11
- package/dist/{AccountFields-Ckw28o6E.mjs → AccountFields-CIz-r3gP.mjs} +2 -2
- package/dist/{AccountListItem-DKwz0HGB.mjs → AccountListItem-B-ZjJ4Gp.mjs} +3 -3
- package/dist/{AccountStore-DhfQsEK5.mjs → AccountStore-BQKxAYSg.mjs} +62 -67
- package/dist/{Accounts-CAr848d0.mjs → Accounts-CA-nqAjT.mjs} +1 -1
- package/dist/{BudgetUtil-spowPvBM.mjs → BudgetUtil-CeSLAcsl.mjs} +1 -1
- package/dist/{CategorySelectorDrawer-Dyzb3UDU.mjs → CategorySelectorDrawer-BPvjZ-Xo.mjs} +1 -1
- package/dist/{ConnectDrawer-yFS82Il7.mjs → ConnectDrawer-phFH6OHt.mjs} +5 -5
- package/dist/{ConnectionsDrawer-Cl1jJGRv.mjs → ConnectionsDrawer-ihxkAi1P.mjs} +2 -2
- package/dist/{CurrencyInput-CSZjO22Z.mjs → CurrencyInput-bEx2Mbd0.mjs} +1 -1
- package/dist/{DebtsStore-Bep2cYsx.mjs → DebtsStore-Dp-CraCD.mjs} +1 -1
- package/dist/{ExportCsvAction-dpvaZxbS.mjs → ExportCsvAction-CvyiKLTh.mjs} +3 -3
- package/dist/GoalStore-BWHkOQ8o.mjs +364 -0
- package/dist/{Help-BazrEpv7.mjs → Help-B3oENhkG.mjs} +1 -1
- package/dist/{LineChart-CYiUS-px.mjs → LineChart-jpdaQX7x.mjs} +1 -1
- package/dist/{ListItemAction-BzmbPuNp.mjs → ListItemAction-DNZZ5fSa.mjs} +1 -1
- package/dist/{ManageIncome-Dk2ZDGqw.mjs → ManageIncome-Bd14SWPF.mjs} +4 -4
- package/dist/{MicroWidgetContainer-DmYiksbT.mjs → MicroWidgetContainer-Dxz8uBN9.mjs} +1 -1
- package/dist/{MiniWidgetContainer-DqKQNubH.mjs → MiniWidgetContainer-CTyjmE1h.mjs} +1 -1
- package/dist/{NetWorthStore-DrBL4JEO.mjs → NetWorthStore-B6xF9eGH.mjs} +2 -2
- package/dist/{NotificationSettings-BznqGVQ2.mjs → NotificationSettings-uXVwpIa1.mjs} +17 -17
- package/dist/{OriginalBalanceAction-CSu5brQE.mjs → OriginalBalanceAction-DepsKiJz.mjs} +3 -3
- package/dist/{RecurringSettings-DNJs5JIe.mjs → RecurringSettings-4Y2RJy_M.mjs} +3 -3
- package/dist/{Transaction-CyqrHmAA.mjs → Transaction-Dns0Kuuy.mjs} +1 -1
- package/dist/{TransactionDetails-B6h5Qo1c.mjs → TransactionDetails-BSl6CpL8.mjs} +5 -5
- package/dist/{TransactionStore-DSyXtPek.mjs → TransactionStore-BVKUoEHj.mjs} +2 -2
- package/dist/{TrendsStore-DR8etTL2.mjs → TrendsStore-D6Un6Y4A.mjs} +1 -1
- package/dist/{WidgetContainer-D7sX3S6R.mjs → WidgetContainer-C2NBfpDg.mjs} +2 -2
- package/dist/accounts/index.es.js +17 -17
- package/dist/analytics/index.es.js +2 -2
- package/dist/budgets/index.es.js +10 -10
- package/dist/cashflow/index.es.js +7 -7
- package/dist/categories/index.es.js +1 -1
- package/dist/common/index.es.js +22 -22
- package/dist/dashboard/index.es.js +14 -14
- package/dist/debts/index.es.js +9 -9
- package/dist/{exportTransactionsToCSV-BlVifaOG.mjs → exportTransactionsToCSV-B4JW8rfR.mjs} +1 -1
- package/dist/finstrong/index.es.js +6 -6
- package/dist/goals/index.es.js +560 -647
- package/dist/goals/util/GoalsUtil.d.ts +1 -0
- package/dist/help/index.es.js +3 -3
- package/dist/{hooks-02T565vf.mjs → hooks-DkUqN6JE.mjs} +3 -3
- package/dist/investments/index.es.js +3 -3
- package/dist/merchants/index.es.js +1 -1
- package/dist/networth/index.es.js +7 -7
- package/dist/notifications/index.es.js +7 -7
- package/dist/recurringtransactions/index.es.js +8 -8
- package/dist/settings/index.es.js +6 -6
- package/dist/spending/index.es.js +4 -4
- package/dist/transactions/index.es.js +13 -13
- package/dist/trends/index.es.js +9 -9
- package/package.json +1 -1
- package/dist/GoalStore-ChqCWX_U.mjs +0 -263
- package/dist/common/utils/User.d.ts +0 -2
package/CHANGELOG.md
CHANGED
|
@@ -11,18 +11,18 @@ import M from "@mui/material/Divider";
|
|
|
11
11
|
import v from "@mui/material/ListItem";
|
|
12
12
|
import N from "@mui/material/ListItemButton";
|
|
13
13
|
import w from "@mui/material/ListItemText";
|
|
14
|
-
import { u as D } from "./AccountDetailsHeader-
|
|
15
|
-
import { c as z, u as E, e as O, f as X } from "./hooks-
|
|
16
|
-
import { A as at } from "./AccountListItem-
|
|
17
|
-
import { A as k } from "./WidgetContainer-
|
|
18
|
-
import { a as V, f as B, D as
|
|
14
|
+
import { u as D } from "./AccountDetailsHeader-2HU_fMWZ.mjs";
|
|
15
|
+
import { c as z, u as E, e as O, f as X } from "./hooks-DkUqN6JE.mjs";
|
|
16
|
+
import { A as at } from "./AccountListItem-B-ZjJ4Gp.mjs";
|
|
17
|
+
import { A as k } from "./WidgetContainer-C2NBfpDg.mjs";
|
|
18
|
+
import { a as V, f as B, D as j } from "./Dialog-CWW597AF.mjs";
|
|
19
19
|
import { b as h } from "./Localization-2MODESHW.mjs";
|
|
20
20
|
import { D as J } from "./Drawer-kEE73B87.mjs";
|
|
21
21
|
import R from "@mui/material/ListItemAvatar";
|
|
22
22
|
import ct from "@mui/material/Stack";
|
|
23
23
|
import st from "@mui/material/styles/useTheme";
|
|
24
24
|
import { Error as q, CheckCircle as it, Language as rt } from "@mxenabled/mx-icons";
|
|
25
|
-
import { k as m, N as Q,
|
|
25
|
+
import { k as m, N as Q, j as Z, F as P } from "./ConnectDrawer-phFH6OHt.mjs";
|
|
26
26
|
import { fromUnixTime as lt } from "date-fns/fromUnixTime";
|
|
27
27
|
import { isToday as dt } from "date-fns/isToday";
|
|
28
28
|
import { isYesterday as ut } from "date-fns/isYesterday";
|
|
@@ -37,15 +37,15 @@ import { LocalizationProvider as ft } from "@mui/x-date-pickers-pro";
|
|
|
37
37
|
import At from "@mui/material/MenuItem";
|
|
38
38
|
import bt from "@mui/material/Select";
|
|
39
39
|
import Tt from "@mui/material/TextField";
|
|
40
|
-
import { C as St } from "./CurrencyInput-
|
|
41
|
-
import { a as Dt } from "./AccountFields-
|
|
40
|
+
import { C as St } from "./CurrencyInput-bEx2Mbd0.mjs";
|
|
41
|
+
import { a as Dt } from "./AccountFields-CIz-r3gP.mjs";
|
|
42
42
|
import Et from "@mui/material/Alert";
|
|
43
43
|
import yt from "@mui/material/AlertTitle";
|
|
44
44
|
import xt from "@mui/material/Link";
|
|
45
45
|
import wt from "@mui/material/Paper";
|
|
46
46
|
import { subDays as kt, startOfToday as It, endOfToday as Mt } from "date-fns";
|
|
47
|
-
import { T as vt, a as Lt } from "./TransactionDetails-
|
|
48
|
-
import { T as
|
|
47
|
+
import { T as vt, a as Lt } from "./TransactionDetails-BSl6CpL8.mjs";
|
|
48
|
+
import { T as K } from "./TabContentContainer-j01JYR_7.mjs";
|
|
49
49
|
const U = ({
|
|
50
50
|
children: e,
|
|
51
51
|
isLast: o = !1,
|
|
@@ -314,11 +314,11 @@ const U = ({
|
|
|
314
314
|
};
|
|
315
315
|
default: {
|
|
316
316
|
const c = () => {
|
|
317
|
-
const i = e.successfully_aggregated_at ? lt(e.successfully_aggregated_at) : void 0, u = i && B(i,
|
|
317
|
+
const i = e.successfully_aggregated_at ? lt(e.successfully_aggregated_at) : void 0, u = i && B(i, j.TIME_STAMP_HOUR_MINUTE);
|
|
318
318
|
if (u)
|
|
319
319
|
return dt(i) ? h(o.last_updated_at, o.today, u) : ut(i) ? h(o.last_updated_at, o.yesterday, u) : h(
|
|
320
320
|
o.last_updated_at,
|
|
321
|
-
B(i,
|
|
321
|
+
B(i, j.MONTH_DAY_YEAR),
|
|
322
322
|
u
|
|
323
323
|
);
|
|
324
324
|
};
|
|
@@ -609,7 +609,7 @@ const U = ({
|
|
|
609
609
|
}
|
|
610
610
|
)
|
|
611
611
|
] });
|
|
612
|
-
}, Bt = b(Gt),
|
|
612
|
+
}, Bt = b(Gt), jt = () => {
|
|
613
613
|
const [e, o] = _.useState(""), { onEvent: n } = O(), { selectedAccount: c } = D(), { accounts: i } = E(), { setFilter: u, sortedTransactions: l } = X(), s = _.useMemo(
|
|
614
614
|
() => l.find((r) => r.guid === e),
|
|
615
615
|
[e, l]
|
|
@@ -632,7 +632,7 @@ const U = ({
|
|
|
632
632
|
}
|
|
633
633
|
)
|
|
634
634
|
] });
|
|
635
|
-
},
|
|
635
|
+
}, Kt = b(jt), Yt = () => {
|
|
636
636
|
const [e, o] = _.useState(0), { accounts: n } = E();
|
|
637
637
|
return /* @__PURE__ */ d(g, { children: [
|
|
638
638
|
/* @__PURE__ */ t(Bt, { setTabValue: o }),
|
|
@@ -665,8 +665,8 @@ const U = ({
|
|
|
665
665
|
]
|
|
666
666
|
}
|
|
667
667
|
),
|
|
668
|
-
/* @__PURE__ */ t(
|
|
669
|
-
/* @__PURE__ */ t(
|
|
668
|
+
/* @__PURE__ */ t(K, { index: 0, name: "transaction-details", value: e, children: /* @__PURE__ */ t(Kt, {}) }),
|
|
669
|
+
/* @__PURE__ */ t(K, { index: 1, name: "account-details", value: e, children: /* @__PURE__ */ t(Ht, {}) })
|
|
670
670
|
] });
|
|
671
671
|
}, He = b(Yt);
|
|
672
672
|
export {
|
|
@@ -2,25 +2,25 @@ import { jsx as e, jsxs as u } from "react/jsx-runtime";
|
|
|
2
2
|
import { observer as p } from "mobx-react-lite";
|
|
3
3
|
import d from "@mui/material/Stack";
|
|
4
4
|
import { H3 as w, InstitutionLogo as I, Text as m, H2 as L } from "@mxenabled/mxui";
|
|
5
|
-
import { g as N } from "./AccountFields-
|
|
5
|
+
import { g as N } from "./AccountFields-CIz-r3gP.mjs";
|
|
6
6
|
import h from "react";
|
|
7
|
-
import { G as v, c as S,
|
|
7
|
+
import { G as v, c as S, k as y, u as _, l as E } from "./hooks-DkUqN6JE.mjs";
|
|
8
8
|
import G from "@mui/material/Card";
|
|
9
9
|
import O from "@mui/material/CardContent";
|
|
10
10
|
import P from "@mui/material/CardHeader";
|
|
11
11
|
import { useTheme as M } from "@mui/material/styles";
|
|
12
12
|
import { g as B, a as H, b as U } from "./SpendingData-D5vsfYKo.mjs";
|
|
13
|
-
import { L as j } from "./LineChart-
|
|
14
|
-
import { I as f, P as g, S as C } from "./Account-
|
|
15
|
-
import { A } from "./ConnectDrawer-
|
|
13
|
+
import { L as j } from "./LineChart-jpdaQX7x.mjs";
|
|
14
|
+
import { I as f, P as g, S as C } from "./Account-BW3-oYEs.mjs";
|
|
15
|
+
import { A } from "./ConnectDrawer-phFH6OHt.mjs";
|
|
16
16
|
import { L as z } from "./Loader-Dp1P2gNw.mjs";
|
|
17
|
-
import { f as Y, D as
|
|
18
|
-
import { f as
|
|
17
|
+
import { f as Y, D as k } from "./Dialog-CWW597AF.mjs";
|
|
18
|
+
import { f as R } from "./NumberFormatting-CtWHhyBX.mjs";
|
|
19
19
|
const b = () => {
|
|
20
20
|
if (!h.useContext(v))
|
|
21
21
|
throw new Error("useCategoryUiStore() must be used within the GlobalDataContext");
|
|
22
22
|
return S().uiStore;
|
|
23
|
-
},
|
|
23
|
+
}, $ = (o, n) => {
|
|
24
24
|
const t = f.includes(n) ? B(o) : [], a = g.includes(n) ? H(o) : [], r = C.includes(n) ? U(o) : [];
|
|
25
25
|
return [t, a, r].filter((s) => s.length > 0);
|
|
26
26
|
}, F = (o, n, t) => {
|
|
@@ -38,7 +38,7 @@ const b = () => {
|
|
|
38
38
|
}
|
|
39
39
|
return i;
|
|
40
40
|
}, V = () => {
|
|
41
|
-
const o = M(), { selectedAccount: n } = b(), { monthlyCategoryTotals: t } = y(), { trends: a } = _(), r = [o.palette.chart?.chart1, o.palette.chart?.chart2], s =
|
|
41
|
+
const o = M(), { selectedAccount: n } = b(), { monthlyCategoryTotals: t } = y(), { trends: a } = _(), r = [o.palette.chart?.chart1, o.palette.chart?.chart2], s = $(t, n.account_type), c = F(s, n.account_type, a), i = [A.LOAN, A.MORTGAGE].includes(n.account_type);
|
|
42
42
|
return /* @__PURE__ */ e("div", { "data-testid": "TrendsChart", children: /* @__PURE__ */ e(
|
|
43
43
|
j,
|
|
44
44
|
{
|
|
@@ -72,7 +72,7 @@ const b = () => {
|
|
|
72
72
|
P,
|
|
73
73
|
{
|
|
74
74
|
sx: { pb: 0 },
|
|
75
|
-
title: /* @__PURE__ */ e(w, { sx: { pb: 4 }, children: Y(/* @__PURE__ */ new Date(),
|
|
75
|
+
title: /* @__PURE__ */ e(w, { sx: { pb: 4 }, children: Y(/* @__PURE__ */ new Date(), k.MONTH_LONG) })
|
|
76
76
|
}
|
|
77
77
|
),
|
|
78
78
|
/* @__PURE__ */ e(O, { sx: { p: 0 }, children: /* @__PURE__ */ e(W, {}) })
|
|
@@ -103,7 +103,7 @@ const b = () => {
|
|
|
103
103
|
/* @__PURE__ */ e(L, { children: t.name || t.feed_name }),
|
|
104
104
|
/* @__PURE__ */ u(d, { direction: "row", justifyContent: "space-between", children: [
|
|
105
105
|
/* @__PURE__ */ e(m, { bold: c, variant: "Body", children: r }),
|
|
106
|
-
/* @__PURE__ */ e(m, { bold: !0, variant: "Body", children:
|
|
106
|
+
/* @__PURE__ */ e(m, { bold: !0, variant: "Body", children: R(s, "0,0.00") })
|
|
107
107
|
] }),
|
|
108
108
|
/* @__PURE__ */ u(d, { direction: "row", justifyContent: "space-between", children: [
|
|
109
109
|
/* @__PURE__ */ e(m, { variant: "Small", children: i }),
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as s } from "react/jsx-runtime";
|
|
2
2
|
import { Icon as p, Text as c } from "@mxenabled/mxui";
|
|
3
|
-
import { F as m, A as b, a as v, P as h, b as F } from "./ConnectDrawer-
|
|
4
|
-
import { i as D, u as T, a as A, b as O, c as g } from "./Accounts-
|
|
3
|
+
import { F as m, A as b, a as v, P as h, b as F } from "./ConnectDrawer-phFH6OHt.mjs";
|
|
4
|
+
import { i as D, u as T, a as A, b as O, c as g } from "./Accounts-CA-nqAjT.mjs";
|
|
5
5
|
import { f as _, i as d, a as N, b as S } from "./NumberFormatting-CtWHhyBX.mjs";
|
|
6
6
|
import { b as i } from "./Localization-2MODESHW.mjs";
|
|
7
7
|
import { f, D as o } from "./Dialog-CWW597AF.mjs";
|
|
@@ -10,9 +10,9 @@ import C from "@mui/material/styles/useTheme";
|
|
|
10
10
|
import { InstitutionLogo as B, Text as o } from "@mxenabled/mxui";
|
|
11
11
|
import { Error as L } from "@mxenabled/mx-icons";
|
|
12
12
|
import { I as A } from "./IconBacking-B9oC6uL2.mjs";
|
|
13
|
-
import { g as j } from "./AccountFields-
|
|
14
|
-
import { d } from "./ConnectDrawer-
|
|
15
|
-
import { u as T } from "./hooks-
|
|
13
|
+
import { g as j } from "./AccountFields-CIz-r3gP.mjs";
|
|
14
|
+
import { d } from "./ConnectDrawer-phFH6OHt.mjs";
|
|
15
|
+
import { u as T } from "./hooks-DkUqN6JE.mjs";
|
|
16
16
|
import { f as X } from "./NumberFormatting-CtWHhyBX.mjs";
|
|
17
17
|
const $ = {
|
|
18
18
|
gridRow: 1,
|
|
@@ -1,34 +1,33 @@
|
|
|
1
|
-
import { makeAutoObservable as
|
|
2
|
-
import { F as
|
|
3
|
-
import { A as
|
|
1
|
+
import { makeAutoObservable as m, runInAction as a } from "mobx";
|
|
2
|
+
import { F as A, A as o } from "./Fetch-CkFKy79O.mjs";
|
|
3
|
+
import { A as n, d as u, E as _, g, h as f } from "./ConnectDrawer-phFH6OHt.mjs";
|
|
4
4
|
class l {
|
|
5
5
|
fetchInstance;
|
|
6
6
|
constructor(t, e) {
|
|
7
|
-
this.fetchInstance = new
|
|
8
|
-
}
|
|
9
|
-
createAccount = async (t) => this.fetchInstance.post(
|
|
10
|
-
deleteAccount = async (t) => this.fetchInstance.delete(`${
|
|
11
|
-
getAccounts = async () => this.fetchInstance.get(
|
|
12
|
-
getInstitutions = async () => this.fetchInstance.get(
|
|
13
|
-
getMembers = async () => this.fetchInstance.get(
|
|
14
|
-
getMonthlyAccountBalances = async (t) => this.fetchInstance.get(`${
|
|
15
|
-
mergeAccounts = async (t) => this.fetchInstance.put(`${
|
|
16
|
-
refreshAllMembers = async () => this.fetchInstance.get(`${
|
|
17
|
-
updateAccount = async (t) => this.fetchInstance.put(`${
|
|
7
|
+
this.fetchInstance = new A(t, e);
|
|
8
|
+
}
|
|
9
|
+
createAccount = async (t) => this.fetchInstance.post(o.ACCOUNTS, t).then((e) => e.account).catch((e) => e);
|
|
10
|
+
deleteAccount = async (t) => this.fetchInstance.delete(`${o.ACCOUNTS}/${t}`).catch((e) => e);
|
|
11
|
+
getAccounts = async () => this.fetchInstance.get(o.ACCOUNTS).then((t) => t.accounts).catch((t) => t);
|
|
12
|
+
getInstitutions = async () => this.fetchInstance.get(o.INSTITUTIONS).then((t) => t).catch((t) => t);
|
|
13
|
+
getMembers = async () => this.fetchInstance.get(o.MEMBERS).then((t) => t.members).catch((t) => t);
|
|
14
|
+
getMonthlyAccountBalances = async (t) => this.fetchInstance.get(`${o.ACCOUNTS}/${t}/monthly_account_balances`).then((e) => e.monthly_account_balances).catch((e) => e);
|
|
15
|
+
mergeAccounts = async (t) => this.fetchInstance.put(`${o.ACCOUNTS}/merge`, { accounts: t }).then((e) => e).catch((e) => e);
|
|
16
|
+
refreshAllMembers = async () => this.fetchInstance.get(`${o.MEMBERS}/refresh_all`).then((t) => t).catch((t) => t);
|
|
17
|
+
updateAccount = async (t) => this.fetchInstance.put(`${o.ACCOUNTS}/${t.guid}`, t).then((e) => e.account).catch((e) => e);
|
|
18
18
|
}
|
|
19
|
-
|
|
20
|
-
class b {
|
|
19
|
+
class p {
|
|
21
20
|
isLoading = !1;
|
|
22
21
|
selectedAccount = {};
|
|
23
22
|
selectedMember = {};
|
|
24
23
|
constructor() {
|
|
25
|
-
|
|
24
|
+
m(this);
|
|
26
25
|
}
|
|
27
26
|
setIsLoading = (t) => this.isLoading = t;
|
|
28
27
|
setSelectedAccount = (t) => this.selectedAccount = t;
|
|
29
28
|
setSelectedMember = (t) => this.selectedMember = t;
|
|
30
29
|
}
|
|
31
|
-
class
|
|
30
|
+
class C {
|
|
32
31
|
globalStore;
|
|
33
32
|
api = new l("/", "");
|
|
34
33
|
accounts = [];
|
|
@@ -36,7 +35,7 @@ class w {
|
|
|
36
35
|
members = [];
|
|
37
36
|
uiStore;
|
|
38
37
|
constructor(t) {
|
|
39
|
-
this.globalStore = t, this.uiStore = new
|
|
38
|
+
this.globalStore = t, this.uiStore = new p(), this.api = new l(t.endpoint, t.sessionToken), m(this);
|
|
40
39
|
}
|
|
41
40
|
loadAccountData = async ({
|
|
42
41
|
accounts: t,
|
|
@@ -46,36 +45,36 @@ class w {
|
|
|
46
45
|
};
|
|
47
46
|
get cashAccounts() {
|
|
48
47
|
return this.accounts.filter(
|
|
49
|
-
(t) => t.account_type ===
|
|
48
|
+
(t) => t.account_type === n.CASH || t.account_type === n.CHECKING || t.account_type === n.PREPAID || t.account_type === n.SAVINGS || t.account_type === n.CHECKING_LINE_OF_CREDIT
|
|
50
49
|
);
|
|
51
50
|
}
|
|
52
51
|
get cashBalance() {
|
|
53
52
|
return this.cashAccounts.reduce((t, e) => t + (e?.balance || 0), 0);
|
|
54
53
|
}
|
|
55
54
|
get checkingAccounts() {
|
|
56
|
-
return this.accounts.filter((t) => t.account_type ===
|
|
55
|
+
return this.accounts.filter((t) => t.account_type === n.CHECKING);
|
|
57
56
|
}
|
|
58
57
|
get debtAccounts() {
|
|
59
58
|
return this.accounts.filter(
|
|
60
|
-
(t) => t.account_type ===
|
|
59
|
+
(t) => t.account_type === n.CREDIT_CARD || t.account_type === n.LOAN || t.account_type === n.MORTGAGE || t.account_type === n.LINE_OF_CREDIT || t.account_type === n.CHECKING_LINE_OF_CREDIT
|
|
61
60
|
);
|
|
62
61
|
}
|
|
63
62
|
get finstrongAccounts() {
|
|
64
63
|
const t = /* @__PURE__ */ new Set([
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
64
|
+
n.CHECKING,
|
|
65
|
+
n.SAVINGS,
|
|
66
|
+
n.CREDIT_CARD,
|
|
67
|
+
n.INVESTMENT
|
|
69
68
|
]);
|
|
70
69
|
return this.accounts.filter((e) => t.has(e.account_type));
|
|
71
70
|
}
|
|
72
71
|
get investmentAccounts() {
|
|
73
72
|
return this.accounts.filter(
|
|
74
|
-
(t) => t.account_type ===
|
|
73
|
+
(t) => t.account_type === n.INVESTMENT
|
|
75
74
|
);
|
|
76
75
|
}
|
|
77
76
|
get savingsAccounts() {
|
|
78
|
-
return this.accounts.filter((t) => t.account_type ===
|
|
77
|
+
return this.accounts.filter((t) => t.account_type === n.SAVINGS);
|
|
79
78
|
}
|
|
80
79
|
get visibleAccounts() {
|
|
81
80
|
return this.accounts.filter((t) => !t.is_hidden);
|
|
@@ -114,28 +113,24 @@ class w {
|
|
|
114
113
|
}
|
|
115
114
|
};
|
|
116
115
|
augmentAccounts = (t = this.accounts) => {
|
|
117
|
-
const e = []
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
if (
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
memberName: o.name
|
|
136
|
-
}), o.connectionStatus = u;
|
|
137
|
-
}
|
|
138
|
-
return e;
|
|
116
|
+
const e = [];
|
|
117
|
+
return t.forEach((c) => {
|
|
118
|
+
const s = this.members.findIndex(
|
|
119
|
+
(r) => r.guid === c.member_guid
|
|
120
|
+
);
|
|
121
|
+
if (s > -1) {
|
|
122
|
+
let r = u.Connected;
|
|
123
|
+
const i = this.members[s];
|
|
124
|
+
_.includes(i.connection_status) ? r = u.Error : g.includes(i.connection_status) ? r = u.Processing : f.includes(i.connection_status) && (r = u.RequiresMfa);
|
|
125
|
+
let h = c.user_name || c.feed_name || "";
|
|
126
|
+
c.account_number && (h = `${h} *${c.account_number}`), e.push({
|
|
127
|
+
...c,
|
|
128
|
+
institutionName: h,
|
|
129
|
+
memberName: i.name,
|
|
130
|
+
connectionStatus: r
|
|
131
|
+
}), this.members[s].connectionStatus = r;
|
|
132
|
+
}
|
|
133
|
+
}), e;
|
|
139
134
|
};
|
|
140
135
|
loadAccounts = async (t) => {
|
|
141
136
|
await this.loadMembers();
|
|
@@ -170,18 +165,18 @@ class w {
|
|
|
170
165
|
};
|
|
171
166
|
mergeAccounts = async (t) => {
|
|
172
167
|
try {
|
|
173
|
-
const e = await this.api.mergeAccounts(t),
|
|
168
|
+
const e = await this.api.mergeAccounts(t), c = e[Object.keys(e)[0]];
|
|
174
169
|
a(() => {
|
|
175
|
-
const
|
|
176
|
-
this.accounts.splice(
|
|
177
|
-
const r = this.accounts.findIndex((
|
|
178
|
-
this.accounts.splice(r, 1,
|
|
170
|
+
const s = this.accounts.findIndex((i) => i.guid === t[1]);
|
|
171
|
+
this.accounts.splice(s, 1);
|
|
172
|
+
const r = this.accounts.findIndex((i) => i.guid === t[0]);
|
|
173
|
+
this.accounts.splice(r, 1, c);
|
|
179
174
|
});
|
|
180
175
|
} catch (e) {
|
|
181
176
|
console.error(`Error occurred while merging accounts: ${e}`);
|
|
182
177
|
}
|
|
183
178
|
};
|
|
184
|
-
sortAccounts = (t = this.accounts) => t.sort((e,
|
|
179
|
+
sortAccounts = (t = this.accounts) => t.sort((e, c) => e.account_type > c.account_type ? 1 : e.account_type < c.account_type ? -1 : (e.name || "") > (c.name || "") ? 1 : (e.name || "") < (c.name || "") ? -1 : 0);
|
|
185
180
|
refreshAccounts = async () => {
|
|
186
181
|
this.uiStore.setIsLoading(!0), await Promise.all([this.loadAccounts(), this.loadInstitutions()]), this.uiStore.setIsLoading(!1);
|
|
187
182
|
};
|
|
@@ -195,7 +190,7 @@ class w {
|
|
|
195
190
|
removeAccount = async (t) => {
|
|
196
191
|
try {
|
|
197
192
|
await this.api.deleteAccount(t), a(() => {
|
|
198
|
-
const e = this.accounts.findIndex((
|
|
193
|
+
const e = this.accounts.findIndex((c) => c.guid === t);
|
|
199
194
|
this.accounts.splice(e, 1);
|
|
200
195
|
});
|
|
201
196
|
} catch (e) {
|
|
@@ -206,24 +201,24 @@ class w {
|
|
|
206
201
|
try {
|
|
207
202
|
const e = await this.api.updateAccount(t);
|
|
208
203
|
a(() => {
|
|
209
|
-
const
|
|
210
|
-
(
|
|
204
|
+
const c = this.accounts.findIndex(
|
|
205
|
+
(s) => s.guid === e.guid
|
|
211
206
|
);
|
|
212
|
-
this.accounts.splice(
|
|
207
|
+
this.accounts.splice(c, 1, e), this.accounts = this.augmentAccounts(this.accounts);
|
|
213
208
|
});
|
|
214
209
|
} catch (e) {
|
|
215
210
|
console.error(`Error occurred while updating account: ${e}`);
|
|
216
211
|
}
|
|
217
212
|
};
|
|
218
213
|
updateAccountFiltering = async (t, e) => {
|
|
219
|
-
for (const
|
|
220
|
-
const
|
|
221
|
-
if (
|
|
222
|
-
|
|
214
|
+
for (const c of t) {
|
|
215
|
+
const s = this.accounts.find((r) => r.guid === c);
|
|
216
|
+
if (s) {
|
|
217
|
+
s.is_excluded_from_accounts = e, s.is_excluded_from_budgets = e, s.is_excluded_from_cash_flow = e, s.is_excluded_from_debts = e, s.is_excluded_from_goals = e, s.is_excluded_from_investments = e, s.is_excluded_from_net_worth = e, s.is_excluded_from_spending = e, s.is_excluded_from_transactions = e, s.is_excluded_from_trends = e;
|
|
223
218
|
try {
|
|
224
|
-
this.updateAccount(
|
|
219
|
+
this.updateAccount(s);
|
|
225
220
|
} catch (r) {
|
|
226
|
-
console.error(`Failed to update account ${
|
|
221
|
+
console.error(`Failed to update account ${c} (added):`, r);
|
|
227
222
|
}
|
|
228
223
|
}
|
|
229
224
|
}
|
|
@@ -231,5 +226,5 @@ class w {
|
|
|
231
226
|
}
|
|
232
227
|
export {
|
|
233
228
|
l as A,
|
|
234
|
-
|
|
229
|
+
C as a
|
|
235
230
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as _ } from "./ConnectDrawer-
|
|
1
|
+
import { A as _ } from "./ConnectDrawer-phFH6OHt.mjs";
|
|
2
2
|
const s = (t) => t && (t.account_type === _.CREDIT_CARD || t.account_type === _.LOAN || t.account_type === _.MORTGAGE || t.account_type === _.LINE_OF_CREDIT || t.account_type === _.CHECKING_LINE_OF_CREDIT), p = (t) => t.is_manual || !t.guid, E = (t) => t.account_type === _.LINE_OF_CREDIT || t.account_type === _.CREDIT_CARD || t.account_type === _.CHECKING_LINE_OF_CREDIT, a = (t) => t.account_type === _.SAVINGS || t.account_type === _.CHECKING || t.account_type === _.LINE_OF_CREDIT || t.account_type === _.CREDIT_CARD || t.account_type === _.LOAN || t.account_type === _.MORTGAGE, y = (t) => t.account_type === _.LOAN || t.account_type === _.MORTGAGE;
|
|
3
3
|
export {
|
|
4
4
|
s as a,
|
|
@@ -2,7 +2,7 @@ import { jsx as t, jsxs as E } from "react/jsx-runtime";
|
|
|
2
2
|
import { observer as g } from "mobx-react-lite";
|
|
3
3
|
import C from "react";
|
|
4
4
|
import $ from "@mui/material/Stack";
|
|
5
|
-
import { G as K,
|
|
5
|
+
import { G as K, k as y, u as b, e as D, a as U } from "./hooks-DkUqN6JE.mjs";
|
|
6
6
|
import Y from "@mui/material/List";
|
|
7
7
|
import V from "@mui/material/Paper";
|
|
8
8
|
import v from "@mui/material/Divider";
|
|
@@ -14,7 +14,7 @@ import p from "@mui/material/ListItemText";
|
|
|
14
14
|
import y from "@mui/material/Popover";
|
|
15
15
|
import g from "@mui/material/Stack";
|
|
16
16
|
import v from "@mui/material/Checkbox";
|
|
17
|
-
import { u as B, c, d as u } from "./hooks-
|
|
17
|
+
import { u as B, c, d as u } from "./hooks-DkUqN6JE.mjs";
|
|
18
18
|
import { b as W } from "./Localization-2MODESHW.mjs";
|
|
19
19
|
import { u as EE } from "./useScreenSize-B6JyS_Lj.mjs";
|
|
20
20
|
import { observer as z } from "mobx-react-lite";
|
|
@@ -498,10 +498,10 @@ export {
|
|
|
498
498
|
sE as d,
|
|
499
499
|
ZE as e,
|
|
500
500
|
CE as f,
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
501
|
+
jE as g,
|
|
502
|
+
LE as h,
|
|
503
|
+
bE as i,
|
|
504
|
+
yE as j,
|
|
505
505
|
lE as k,
|
|
506
506
|
iE as l,
|
|
507
507
|
SE as m
|
|
@@ -3,8 +3,8 @@ import r from "react";
|
|
|
3
3
|
import { observer as E } from "mobx-react-lite";
|
|
4
4
|
import { useTheme as D } from "@mui/material/styles";
|
|
5
5
|
import { ConnectionsWidget as L } from "@mxenabled/web-widget-sdk";
|
|
6
|
-
import { C as a, c, M as i } from "./ConnectDrawer-
|
|
7
|
-
import { c as b, d as w, u as _ } from "./hooks-
|
|
6
|
+
import { C as a, c, M as i } from "./ConnectDrawer-phFH6OHt.mjs";
|
|
7
|
+
import { c as b, d as w, u as _ } from "./hooks-DkUqN6JE.mjs";
|
|
8
8
|
import { D as x } from "./Drawer-kEE73B87.mjs";
|
|
9
9
|
const I = ({
|
|
10
10
|
onClose: l,
|
|
@@ -5,7 +5,7 @@ import { v4 as B } from "uuid";
|
|
|
5
5
|
import { useTokens as O, TextField as W, P as p } from "@mxenabled/mxui";
|
|
6
6
|
import { b as _, g as d } from "./Localization-2MODESHW.mjs";
|
|
7
7
|
import { g as j, C as D, f as y, M as C } from "./NumberFormatting-CtWHhyBX.mjs";
|
|
8
|
-
import { u as F } from "./hooks-
|
|
8
|
+
import { u as F } from "./hooks-DkUqN6JE.mjs";
|
|
9
9
|
const G = ({
|
|
10
10
|
allowDecimals: o = !0,
|
|
11
11
|
ariaLabel: g,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { makeAutoObservable as l } from "mobx";
|
|
2
2
|
import { getDate as o, fromUnixTime as m, startOfMonth as _ } from "date-fns";
|
|
3
|
-
import { A as b } from "./ConnectDrawer-
|
|
3
|
+
import { A as b } from "./ConnectDrawer-phFH6OHt.mjs";
|
|
4
4
|
var u = /* @__PURE__ */ ((a) => (a[a.HIGHEST_INTEREST = 1] = "HIGHEST_INTEREST", a[a.LOWEST_BALANCE = 2] = "LOWEST_BALANCE", a[a.HIGHEST_BALANCE = 3] = "HIGHEST_BALANCE", a))(u || {});
|
|
5
5
|
const p = {
|
|
6
6
|
unnamed_label: "Unnamed Debt"
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx as o } from "react/jsx-runtime";
|
|
2
2
|
import { observer as c } from "mobx-react-lite";
|
|
3
3
|
import { Icon as i } from "@mxenabled/mxui";
|
|
4
|
-
import { e as p } from "./exportTransactionsToCSV-
|
|
5
|
-
import { O as m } from "./Transaction-
|
|
4
|
+
import { e as p } from "./exportTransactionsToCSV-B4JW8rfR.mjs";
|
|
5
|
+
import { O as m } from "./Transaction-Dns0Kuuy.mjs";
|
|
6
6
|
import { R as x } from "./ResponsiveButton-DZFp78fJ.mjs";
|
|
7
|
-
import { e as _, f as C, u as l } from "./hooks-
|
|
7
|
+
import { e as _, f as C, u as l } from "./hooks-DkUqN6JE.mjs";
|
|
8
8
|
const v = ({ filter: t }) => {
|
|
9
9
|
const { onEvent: r } = _(), { tags: e, sortedTransactions: s } = C(), { transactions: n } = l(), a = () => {
|
|
10
10
|
r(m.ON_TRANSACTION_EXPORT_CSV_CLICK), p(t ? s.filter(t) : s, e);
|