@mx-cartographer/experiences 7.1.3-alpha.mm1 → 7.1.4
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 +13 -0
- package/dist/{Account-DKy2na__.mjs → Account-8IUM_CLv.mjs} +1 -1
- package/dist/{AccountDetailsContent-CCOCsdoL.mjs → AccountDetailsContent-CuZSSAEc.mjs} +8 -8
- package/dist/{AccountDetailsHeader-Ca9SPAjA.mjs → AccountDetailsHeader-BZBsIKdF.mjs} +6 -6
- package/dist/{AccountFields-DDAr5SEq.mjs → AccountFields-BD_0GT68.mjs} +2 -2
- package/dist/{AccountListItem-CMes1Q7Z.mjs → AccountListItem-CllIBCao.mjs} +4 -4
- package/dist/{AccountStore-DYOG9MYj.mjs → AccountStore-BL0FE1QL.mjs} +53 -45
- package/dist/{Accounts-BNvFndCa.mjs → Accounts-Bvc9TJaO.mjs} +1 -1
- package/dist/{BudgetUtil-B2ZXyw-g.mjs → BudgetUtil-psfk-Amb.mjs} +1 -1
- package/dist/{CategorySelectorDrawer-DUe4lH5-.mjs → CategorySelectorDrawer-BmenK5bu.mjs} +1 -1
- package/dist/{ConnectDrawer-CHG5Lv_B.mjs → ConnectDrawer-CPTXh70j.mjs} +8 -8
- package/dist/{ConnectionsDrawer-BeB6ab8V.mjs → ConnectionsDrawer-Dkb4vBmt.mjs} +2 -2
- package/dist/{CurrencyInput-CsCy7uaS.mjs → CurrencyInput-C4xNRL2W.mjs} +1 -1
- package/dist/{DebtsStore-BblTVTMD.mjs → DebtsStore-D4grpB4m.mjs} +1 -1
- package/dist/{ExportCsvAction-sX8Rg4Ov.mjs → ExportCsvAction-CBJAfyAw.mjs} +3 -3
- package/dist/{GoalStore-CSsU4LR2.mjs → GoalStore-B5MZzPLZ.mjs} +2 -2
- package/dist/{Help-B6dIcujh.mjs → Help-CzBAsKA2.mjs} +1 -1
- package/dist/{LineChart-D4GI7nVh.mjs → LineChart-B35qvXik.mjs} +1 -1
- package/dist/{ListItemAction-DHa3KJPs.mjs → ListItemAction-DSrYDGAP.mjs} +1 -1
- package/dist/{ManageIncome-DqG75uQd.mjs → ManageIncome-DUuT-yMV.mjs} +34 -34
- package/dist/{MicroWidgetContainer-DpeqN9n3.mjs → MicroWidgetContainer-C4QQHfD7.mjs} +1 -1
- package/dist/{MiniWidgetContainer-D0gfmbaF.mjs → MiniWidgetContainer-DTQdRK-3.mjs} +1 -1
- package/dist/{NetWorthStore-BbA7H83o.mjs → NetWorthStore-Do1Gk8Te.mjs} +2 -2
- package/dist/{NotificationSettings-BRm_EJZV.mjs → NotificationSettings-BuShgjn6.mjs} +3 -3
- package/dist/{OriginalBalanceAction-CAaVbVMO.mjs → OriginalBalanceAction-BsxcvNEF.mjs} +3 -3
- package/dist/{RecurringSettings-B9l_Axnd.mjs → RecurringSettings-BVOt46uV.mjs} +3 -3
- package/dist/{TransactionDetails-DPvvi4Iu.mjs → TransactionDetails-_cXLXTd3.mjs} +5 -5
- package/dist/{TransactionStore-CBrJOY0H.mjs → TransactionStore-B-Tq_YFE.mjs} +2 -2
- package/dist/{TrendsStore-DCYbpXPO.mjs → TrendsStore-ZZ8X36lJ.mjs} +1 -1
- package/dist/{User-BQUxBeZV.mjs → User-DaJAQ09j.mjs} +1 -1
- package/dist/{WidgetContainer-BMWagbIl.mjs → WidgetContainer-DtPnPQZY.mjs} +10 -10
- package/dist/accounts/index.es.js +13 -13
- package/dist/accounts/stores/AccountStore.d.ts +2 -0
- package/dist/analytics/index.es.js +2 -2
- package/dist/budgets/index.es.js +10 -10
- package/dist/cashflow/index.es.js +381 -387
- package/dist/categories/index.es.js +1 -1
- package/dist/common/context/GlobalDataProvider.d.ts +0 -1
- package/dist/common/context/hooks.d.ts +0 -3
- package/dist/common/context/index.d.ts +1 -1
- package/dist/common/index.es.js +49 -50
- package/dist/dashboard/index.es.js +77 -79
- package/dist/debts/index.es.js +9 -9
- package/dist/{exportTransactionsToCSV-7bVS7KXf.mjs → exportTransactionsToCSV-D8TTNrrE.mjs} +1 -1
- package/dist/finstrong/index.es.js +6 -6
- package/dist/goals/index.es.js +52 -52
- package/dist/help/index.es.js +3 -3
- package/dist/hooks-CE2TKk4a.mjs +74 -0
- 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 +2 -2
- package/dist/recurringtransactions/index.es.js +19 -19
- 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 +449 -449
- package/dist/{useAccountDisplayName-BEorBm5u.mjs → useAccountDisplayName-BXGkZN5B.mjs} +2 -2
- package/dist/{useInsightsEnabled-DBpwEq10.mjs → useInsightsEnabled-DSnpkUq0.mjs} +1 -1
- package/package.json +1 -1
- package/dist/hooks-D6XlXHf4.mjs +0 -77
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,16 @@
|
|
|
1
|
+
## [7.1.4] - 11-10-2025
|
|
2
|
+
|
|
3
|
+
- **UPDATED** - Cash Flow widget to show add income button when no recurring income transactions
|
|
4
|
+
|
|
5
|
+
## [7.1.3] - 11-10-2025
|
|
6
|
+
|
|
7
|
+
- **UPDATED** - Cash Flow widget to show onboarding when no recurring income transactions
|
|
8
|
+
|
|
9
|
+
## [7.1.2] - 11-07-2025
|
|
10
|
+
|
|
11
|
+
- **ADDED** - `visibleRetirementAccounts` and `retirementAccounts` getters to `AccountStore`
|
|
12
|
+
- **UPDATED** - `AddRetirementAccountAction` and `GoalDetailsDrawer` to retirement accounts instead of only investment accounts
|
|
13
|
+
|
|
1
14
|
## [7.1.1] - 11-06-2025
|
|
2
15
|
|
|
3
16
|
- **UPDATED** - Cash Flow widget to show add income button when no recurring income transactions
|
|
@@ -11,10 +11,10 @@ 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 { d as z, u as E, g as O, h as X } from "./hooks-
|
|
16
|
-
import { A as at } from "./AccountListItem-
|
|
17
|
-
import { A as k } from "./WidgetContainer-
|
|
14
|
+
import { u as D } from "./AccountDetailsHeader-BZBsIKdF.mjs";
|
|
15
|
+
import { d as z, u as E, g as O, h as X } from "./hooks-CE2TKk4a.mjs";
|
|
16
|
+
import { A as at } from "./AccountListItem-CllIBCao.mjs";
|
|
17
|
+
import { A as k } from "./WidgetContainer-DtPnPQZY.mjs";
|
|
18
18
|
import { a as V, f as B, D as K } from "./Dialog-CWW597AF.mjs";
|
|
19
19
|
import { b as h } from "./Localization-2MODESHW.mjs";
|
|
20
20
|
import { D as J } from "./Drawer-kEE73B87.mjs";
|
|
@@ -22,7 +22,7 @@ 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 { m, N as Q,
|
|
25
|
+
import { n as m, N as Q, l as Z, F as P } from "./ConnectDrawer-CPTXh70j.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,14 +37,14 @@ 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 { b as Dt } from "./AccountFields-
|
|
40
|
+
import { C as St } from "./CurrencyInput-C4xNRL2W.mjs";
|
|
41
|
+
import { b as Dt } from "./AccountFields-BD_0GT68.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-
|
|
47
|
+
import { T as vt, a as Lt } from "./TransactionDetails-_cXLXTd3.mjs";
|
|
48
48
|
import { T as j } from "./TabContentContainer-j01JYR_7.mjs";
|
|
49
49
|
const U = ({
|
|
50
50
|
children: e,
|
|
@@ -2,20 +2,20 @@ 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 v } from "./AccountFields-
|
|
5
|
+
import { g as v } from "./AccountFields-BD_0GT68.mjs";
|
|
6
6
|
import h from "react";
|
|
7
|
-
import { G as E, d as y, m as S, u as _, f as G } from "./hooks-
|
|
7
|
+
import { G as E, d as y, m as S, u as _, f as G } from "./hooks-CE2TKk4a.mjs";
|
|
8
8
|
import O from "@mui/material/Card";
|
|
9
9
|
import P from "@mui/material/CardContent";
|
|
10
10
|
import M from "@mui/material/CardHeader";
|
|
11
11
|
import { useTheme as B } from "@mui/material/styles";
|
|
12
12
|
import { g as H, a as U, b as j } from "./SpendingData-D5vsfYKo.mjs";
|
|
13
|
-
import { L as z } from "./LineChart-
|
|
14
|
-
import { I as f, P as g, S as C } from "./Account-
|
|
15
|
-
import { A } from "./ConnectDrawer-
|
|
13
|
+
import { L as z } from "./LineChart-B35qvXik.mjs";
|
|
14
|
+
import { I as f, P as g, S as C } from "./Account-8IUM_CLv.mjs";
|
|
15
|
+
import { A } from "./ConnectDrawer-CPTXh70j.mjs";
|
|
16
16
|
import { L as Y } from "./Loader-DUaFpDGv.mjs";
|
|
17
17
|
import { f as R, D as $ } from "./Dialog-CWW597AF.mjs";
|
|
18
|
-
import { u as k } from "./useAccountDisplayName-
|
|
18
|
+
import { u as k } from "./useAccountDisplayName-BXGkZN5B.mjs";
|
|
19
19
|
import { f as F } from "./NumberFormatting-Buh7u8Oi.mjs";
|
|
20
20
|
const b = () => {
|
|
21
21
|
if (!h.useContext(E))
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as u } from "react/jsx-runtime";
|
|
2
2
|
import { Icon as p, Text as y } from "@mxenabled/mxui";
|
|
3
|
-
import { F as m, A as d, a as v, P as h, b as F } from "./ConnectDrawer-
|
|
4
|
-
import { i as T, u as D, a as A, b as g, c as O } from "./Accounts-
|
|
3
|
+
import { F as m, A as d, a as v, P as h, b as F } from "./ConnectDrawer-CPTXh70j.mjs";
|
|
4
|
+
import { i as T, u as D, a as A, b as g, c as O } from "./Accounts-Bvc9TJaO.mjs";
|
|
5
5
|
import { f as _, i as b, a as N, b as S } from "./NumberFormatting-Buh7u8Oi.mjs";
|
|
6
6
|
import { b as i } from "./Localization-2MODESHW.mjs";
|
|
7
7
|
import { f as o, D as f } from "./Dialog-CWW597AF.mjs";
|
|
@@ -10,10 +10,10 @@ import B from "@mui/material/styles/useTheme";
|
|
|
10
10
|
import { InstitutionLogo as L, Text as o } from "@mxenabled/mxui";
|
|
11
11
|
import { Error as A } from "@mxenabled/mx-icons";
|
|
12
12
|
import { I as j } from "./IconBacking-B9oC6uL2.mjs";
|
|
13
|
-
import { g as T } from "./AccountFields-
|
|
14
|
-
import { u as X } from "./useAccountDisplayName-
|
|
15
|
-
import { d } from "./ConnectDrawer-
|
|
16
|
-
import { u as $ } from "./hooks-
|
|
13
|
+
import { g as T } from "./AccountFields-BD_0GT68.mjs";
|
|
14
|
+
import { u as X } from "./useAccountDisplayName-BXGkZN5B.mjs";
|
|
15
|
+
import { d } from "./ConnectDrawer-CPTXh70j.mjs";
|
|
16
|
+
import { u as $ } from "./hooks-CE2TKk4a.mjs";
|
|
17
17
|
import { f as k } from "./NumberFormatting-Buh7u8Oi.mjs";
|
|
18
18
|
const w = {
|
|
19
19
|
gridRow: 1,
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { makeAutoObservable as
|
|
2
|
-
import { i as
|
|
3
|
-
import { F as
|
|
4
|
-
import { A as
|
|
5
|
-
class
|
|
1
|
+
import { makeAutoObservable as A, runInAction as a } from "mobx";
|
|
2
|
+
import { i as f } from "./User-DaJAQ09j.mjs";
|
|
3
|
+
import { F as p, A as i } from "./Fetch-87LIQbEA.mjs";
|
|
4
|
+
import { A as c, h as d, d as h, E as y, i as I, j as b } from "./ConnectDrawer-CPTXh70j.mjs";
|
|
5
|
+
class _ {
|
|
6
6
|
fetchInstance;
|
|
7
|
-
constructor(t, e,
|
|
8
|
-
this.fetchInstance = new
|
|
7
|
+
constructor(t, e, n) {
|
|
8
|
+
this.fetchInstance = new p(t, e, void 0, n);
|
|
9
9
|
}
|
|
10
10
|
createAccount = async (t) => this.fetchInstance.post(i.ACCOUNTS, t).then((e) => e.account).catch((e) => e);
|
|
11
11
|
deleteAccount = async (t) => this.fetchInstance.delete(`${i.ACCOUNTS}/${t}`).catch((e) => e);
|
|
@@ -17,26 +17,26 @@ class l {
|
|
|
17
17
|
refreshAllMembers = async () => this.fetchInstance.get(`${i.MEMBERS}/refresh_all`).then((t) => t).catch((t) => t);
|
|
18
18
|
updateAccount = async (t) => this.fetchInstance.put(`${i.ACCOUNTS}/${t.guid}`, t).then((e) => e.account).catch((e) => e);
|
|
19
19
|
}
|
|
20
|
-
class
|
|
20
|
+
class E {
|
|
21
21
|
isLoading = !1;
|
|
22
22
|
selectedAccount = {};
|
|
23
23
|
selectedMember = {};
|
|
24
24
|
constructor() {
|
|
25
|
-
|
|
25
|
+
A(this);
|
|
26
26
|
}
|
|
27
27
|
setIsLoading = (t) => this.isLoading = t;
|
|
28
28
|
setSelectedAccount = (t) => this.selectedAccount = t;
|
|
29
29
|
setSelectedMember = (t) => this.selectedMember = t;
|
|
30
30
|
}
|
|
31
|
-
class
|
|
31
|
+
class T {
|
|
32
32
|
globalStore;
|
|
33
|
-
api = new
|
|
33
|
+
api = new _("/", "");
|
|
34
34
|
accounts = [];
|
|
35
35
|
institutions = [];
|
|
36
36
|
members = [];
|
|
37
37
|
uiStore;
|
|
38
38
|
constructor(t) {
|
|
39
|
-
this.globalStore = t, this.uiStore = new
|
|
39
|
+
this.globalStore = t, this.uiStore = new E(), this.api = new _(t.endpoint, t.sessionToken, t.onError), A(this);
|
|
40
40
|
}
|
|
41
41
|
loadAccountData = async ({
|
|
42
42
|
accounts: t,
|
|
@@ -46,36 +46,41 @@ class N {
|
|
|
46
46
|
};
|
|
47
47
|
get cashAccounts() {
|
|
48
48
|
return this.accounts.filter(
|
|
49
|
-
(t) => t.account_type ===
|
|
49
|
+
(t) => t.account_type === c.CASH || t.account_type === c.CHECKING || t.account_type === c.PREPAID || t.account_type === c.SAVINGS || t.account_type === c.CHECKING_LINE_OF_CREDIT
|
|
50
50
|
);
|
|
51
51
|
}
|
|
52
52
|
get cashBalance() {
|
|
53
53
|
return this.cashAccounts.reduce((t, e) => t + (e?.balance || 0), 0);
|
|
54
54
|
}
|
|
55
55
|
get checkingAccounts() {
|
|
56
|
-
return this.accounts.filter((t) => t.account_type ===
|
|
56
|
+
return this.accounts.filter((t) => t.account_type === c.CHECKING);
|
|
57
57
|
}
|
|
58
58
|
get debtAccounts() {
|
|
59
59
|
return this.accounts.filter(
|
|
60
|
-
(t) => t.account_type ===
|
|
60
|
+
(t) => t.account_type === c.CREDIT_CARD || t.account_type === c.LOAN || t.account_type === c.MORTGAGE || t.account_type === c.LINE_OF_CREDIT || t.account_type === c.CHECKING_LINE_OF_CREDIT
|
|
61
61
|
);
|
|
62
62
|
}
|
|
63
63
|
get finstrongAccounts() {
|
|
64
64
|
const t = /* @__PURE__ */ new Set([
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
65
|
+
c.CHECKING,
|
|
66
|
+
c.SAVINGS,
|
|
67
|
+
c.CREDIT_CARD,
|
|
68
|
+
c.INVESTMENT
|
|
69
69
|
]);
|
|
70
70
|
return this.accounts.filter((e) => t.has(e.account_type));
|
|
71
71
|
}
|
|
72
72
|
get investmentAccounts() {
|
|
73
73
|
return this.accounts.filter(
|
|
74
|
-
(t) => t.account_type ===
|
|
74
|
+
(t) => t.account_type === c.INVESTMENT
|
|
75
75
|
);
|
|
76
76
|
}
|
|
77
77
|
get savingsAccounts() {
|
|
78
|
-
return this.accounts.filter((t) => t.account_type ===
|
|
78
|
+
return this.accounts.filter((t) => t.account_type === c.SAVINGS);
|
|
79
|
+
}
|
|
80
|
+
get retirementAccounts() {
|
|
81
|
+
return this.accounts.filter(
|
|
82
|
+
(t) => t.account_type === c.INVESTMENT || t.account_type === c.SAVINGS || t.account_type === c.CHECKING || t.account_type === c.CASH || t.account_type === c.PROPERTY || t.account_type === c.INSURANCE && (t.account_subtype === d.WHOLE_LIFE || t.account_subtype === d.UNIVERSAL_LIFE || t.account_subtype === d.VARIABLE_UNIVERSAL_LIFE)
|
|
83
|
+
);
|
|
79
84
|
}
|
|
80
85
|
get visibleAccounts() {
|
|
81
86
|
return this.accounts.filter((t) => !t.is_hidden);
|
|
@@ -97,6 +102,9 @@ class N {
|
|
|
97
102
|
(t) => !(t.is_closed || t.is_deleted || t.is_hidden)
|
|
98
103
|
);
|
|
99
104
|
}
|
|
105
|
+
get visibleRetirementAccounts() {
|
|
106
|
+
return this.retirementAccounts.filter((t) => !t.is_hidden);
|
|
107
|
+
}
|
|
100
108
|
get visibleInvestmentAccounts() {
|
|
101
109
|
return this.investmentAccounts.filter((t) => !t.is_hidden);
|
|
102
110
|
}
|
|
@@ -114,24 +122,24 @@ class N {
|
|
|
114
122
|
}
|
|
115
123
|
};
|
|
116
124
|
augmentAccounts = (t = this.accounts) => {
|
|
117
|
-
const e = [],
|
|
118
|
-
|
|
125
|
+
const e = [], n = this.globalStore.userStore.userFeatures, s = f(
|
|
126
|
+
n,
|
|
119
127
|
"MD_EXCLUDE_EXTERNAL_ACCOUNTS"
|
|
120
128
|
);
|
|
121
129
|
for (const r of t) {
|
|
122
|
-
if (
|
|
123
|
-
const o = this.members.find((
|
|
130
|
+
if (s && r.member_is_managed_by_user) continue;
|
|
131
|
+
const o = this.members.find((g) => g.guid === r.member_guid);
|
|
124
132
|
if (!o) continue;
|
|
125
133
|
let u = h.Connected;
|
|
126
|
-
|
|
127
|
-
const
|
|
134
|
+
y.includes(o.connection_status) ? u = h.Error : I.includes(o.connection_status) ? u = h.Processing : b.includes(o.connection_status) && (u = h.RequiresMfa);
|
|
135
|
+
const m = [
|
|
128
136
|
r.user_name || r.feed_name || "",
|
|
129
137
|
r.account_number ? `*${r.account_number}` : ""
|
|
130
138
|
].join(" ").trim();
|
|
131
139
|
e.push({
|
|
132
140
|
...r,
|
|
133
141
|
connectionStatus: u,
|
|
134
|
-
institutionName:
|
|
142
|
+
institutionName: m,
|
|
135
143
|
memberName: o.name
|
|
136
144
|
}), o.connectionStatus = u;
|
|
137
145
|
}
|
|
@@ -170,18 +178,18 @@ class N {
|
|
|
170
178
|
};
|
|
171
179
|
mergeAccounts = async (t) => {
|
|
172
180
|
try {
|
|
173
|
-
const e = await this.api.mergeAccounts(t),
|
|
181
|
+
const e = await this.api.mergeAccounts(t), n = e[Object.keys(e)[0]];
|
|
174
182
|
a(() => {
|
|
175
|
-
const
|
|
176
|
-
this.accounts.splice(
|
|
183
|
+
const s = this.accounts.findIndex((o) => o.guid === t[1]);
|
|
184
|
+
this.accounts.splice(s, 1);
|
|
177
185
|
const r = this.accounts.findIndex((o) => o.guid === t[0]);
|
|
178
|
-
this.accounts.splice(r, 1,
|
|
186
|
+
this.accounts.splice(r, 1, n);
|
|
179
187
|
});
|
|
180
188
|
} catch (e) {
|
|
181
189
|
console.error(`Error occurred while merging accounts: ${e}`);
|
|
182
190
|
}
|
|
183
191
|
};
|
|
184
|
-
sortAccounts = (t = this.accounts) => t.sort((e,
|
|
192
|
+
sortAccounts = (t = this.accounts) => t.sort((e, n) => e.account_type > n.account_type ? 1 : e.account_type < n.account_type ? -1 : (e.name || "") > (n.name || "") ? 1 : (e.name || "") < (n.name || "") ? -1 : 0);
|
|
185
193
|
refreshAccounts = async () => {
|
|
186
194
|
this.uiStore.setIsLoading(!0), await Promise.all([this.loadAccounts(), this.loadInstitutions()]), this.uiStore.setIsLoading(!1);
|
|
187
195
|
};
|
|
@@ -195,7 +203,7 @@ class N {
|
|
|
195
203
|
removeAccount = async (t) => {
|
|
196
204
|
try {
|
|
197
205
|
await this.api.deleteAccount(t), a(() => {
|
|
198
|
-
const e = this.accounts.findIndex((
|
|
206
|
+
const e = this.accounts.findIndex((n) => n.guid === t);
|
|
199
207
|
this.accounts.splice(e, 1);
|
|
200
208
|
});
|
|
201
209
|
} catch (e) {
|
|
@@ -206,30 +214,30 @@ class N {
|
|
|
206
214
|
try {
|
|
207
215
|
const e = await this.api.updateAccount(t);
|
|
208
216
|
a(() => {
|
|
209
|
-
const
|
|
210
|
-
(
|
|
217
|
+
const n = this.accounts.findIndex(
|
|
218
|
+
(s) => s.guid === e.guid
|
|
211
219
|
);
|
|
212
|
-
this.accounts.splice(
|
|
220
|
+
this.accounts.splice(n, 1, e), this.accounts = this.augmentAccounts(this.accounts);
|
|
213
221
|
});
|
|
214
222
|
} catch (e) {
|
|
215
223
|
console.error(`Error occurred while updating account: ${e}`);
|
|
216
224
|
}
|
|
217
225
|
};
|
|
218
226
|
updateAccountFiltering = async (t, e) => {
|
|
219
|
-
for (const
|
|
220
|
-
const
|
|
221
|
-
if (
|
|
222
|
-
|
|
227
|
+
for (const n of t) {
|
|
228
|
+
const s = this.accounts.find((r) => r.guid === n);
|
|
229
|
+
if (s) {
|
|
230
|
+
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
231
|
try {
|
|
224
|
-
this.updateAccount(
|
|
232
|
+
this.updateAccount(s);
|
|
225
233
|
} catch (r) {
|
|
226
|
-
console.error(`Failed to update account ${
|
|
234
|
+
console.error(`Failed to update account ${n} (added):`, r);
|
|
227
235
|
}
|
|
228
236
|
}
|
|
229
237
|
}
|
|
230
238
|
};
|
|
231
239
|
}
|
|
232
240
|
export {
|
|
233
|
-
|
|
234
|
-
|
|
241
|
+
_ as A,
|
|
242
|
+
T as a
|
|
235
243
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as _ } from "./ConnectDrawer-
|
|
1
|
+
import { A as _ } from "./ConnectDrawer-CPTXh70j.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, m as y, u as b, g as D, b as U } from "./hooks-
|
|
5
|
+
import { G as K, m as y, u as b, g as D, b as U } from "./hooks-CE2TKk4a.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 EE from "@mui/material/ListItemText";
|
|
|
14
14
|
import IE from "@mui/material/Popover";
|
|
15
15
|
import F from "@mui/material/Stack";
|
|
16
16
|
import w from "@mui/material/Checkbox";
|
|
17
|
-
import { u as o, f as _E, d as NE, e as rE } from "./hooks-
|
|
17
|
+
import { u as o, f as _E, d as NE, e as rE } from "./hooks-CE2TKk4a.mjs";
|
|
18
18
|
import { b as W } from "./Localization-2MODESHW.mjs";
|
|
19
19
|
import { u as RE } from "./useScreenSize-B6JyS_Lj.mjs";
|
|
20
20
|
import { observer as Q } from "mobx-react-lite";
|
|
@@ -533,12 +533,12 @@ export {
|
|
|
533
533
|
uE as e,
|
|
534
534
|
PE as f,
|
|
535
535
|
AE as g,
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
536
|
+
sE as h,
|
|
537
|
+
bE as i,
|
|
538
|
+
DE as j,
|
|
539
|
+
NI as k,
|
|
540
|
+
RI as l,
|
|
541
|
+
_I as m,
|
|
542
|
+
eE as n,
|
|
543
543
|
EI as o
|
|
544
544
|
};
|
|
@@ -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 { d as b, e as w, u as _ } from "./hooks-
|
|
6
|
+
import { C as a, c, M as i } from "./ConnectDrawer-CPTXh70j.mjs";
|
|
7
|
+
import { d as b, e as w, u as _ } from "./hooks-CE2TKk4a.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-Buh7u8Oi.mjs";
|
|
8
|
-
import { u as F } from "./hooks-
|
|
8
|
+
import { u as F } from "./hooks-CE2TKk4a.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 r, fromUnixTime as _, startOfMonth as m } from "date-fns";
|
|
3
|
-
import { A as p } from "./ConnectDrawer-
|
|
3
|
+
import { A as p } from "./ConnectDrawer-CPTXh70j.mjs";
|
|
4
4
|
const E = 12, T = 100;
|
|
5
5
|
var c = /* @__PURE__ */ ((a) => (a[a.FASTEST_PAYOFF_FIRST = 1] = "FASTEST_PAYOFF_FIRST", a[a.HIGHEST_INTEREST = 2] = "HIGHEST_INTEREST", a[a.LOWEST_BALANCE = 3] = "LOWEST_BALANCE", a[a.HIGHEST_BALANCE = 4] = "HIGHEST_BALANCE", a))(c || {});
|
|
6
6
|
const b = {
|
|
@@ -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 "./User-
|
|
4
|
+
import { e as p } from "./exportTransactionsToCSV-D8TTNrrE.mjs";
|
|
5
|
+
import { O as m } from "./User-DaJAQ09j.mjs";
|
|
6
6
|
import { R as x } from "./ResponsiveButton-DZFp78fJ.mjs";
|
|
7
|
-
import { g as _, h as C, u as l } from "./hooks-
|
|
7
|
+
import { g as _, h as C, u as l } from "./hooks-CE2TKk4a.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);
|
|
@@ -7,8 +7,8 @@ import O from "@mui/material/CardHeader";
|
|
|
7
7
|
import S from "@mui/material/Stack";
|
|
8
8
|
import { AccountBalance as w, ChevronRight as L } from "@mxenabled/mx-icons";
|
|
9
9
|
import { Text as A } from "@mxenabled/mxui";
|
|
10
|
-
import {
|
|
11
|
-
import { a as y } from "./hooks-
|
|
10
|
+
import { l as b } from "./ConnectDrawer-CPTXh70j.mjs";
|
|
11
|
+
import { a as y } from "./hooks-CE2TKk4a.mjs";
|
|
12
12
|
import { makeAutoObservable as D, runInAction as c } from "mobx";
|
|
13
13
|
import { F as v, A as i } from "./Fetch-87LIQbEA.mjs";
|
|
14
14
|
import { fromUnixTime as G } from "date-fns/fromUnixTime";
|
|
@@ -13,7 +13,7 @@ import E from "@mui/material/Stack";
|
|
|
13
13
|
import { H3 as y, P as H, Icon as X, Text as T, H2 as _t, InstitutionLogo as bt } from "@mxenabled/mxui";
|
|
14
14
|
import { ExpandMore as ot, ChevronRight as wt } from "@mxenabled/mx-icons";
|
|
15
15
|
import xt from "@mui/material/Breadcrumbs";
|
|
16
|
-
import { u as V,
|
|
16
|
+
import { u as V, z as tt, d as ft, o as St, b as It, a as Tt } from "./hooks-CE2TKk4a.mjs";
|
|
17
17
|
import { useTheme as Z } from "@mui/material/styles";
|
|
18
18
|
import { b as s } from "./Localization-2MODESHW.mjs";
|
|
19
19
|
import { E as Et, a as Ct, P as At } from "./Help-DhcC-C05.mjs";
|
|
@@ -7,7 +7,7 @@ import ut from "@mui/material/useMediaQuery";
|
|
|
7
7
|
import { observer as xt } from "mobx-react-lite";
|
|
8
8
|
import { Stack as u, Box as N, useTheme as ft } from "@mui/material";
|
|
9
9
|
import { Text as l } from "@mxenabled/mxui";
|
|
10
|
-
import { u as gt } from "./hooks-
|
|
10
|
+
import { u as gt } from "./hooks-CE2TKk4a.mjs";
|
|
11
11
|
import { ChartsTooltip as yt } from "@mui/x-charts/ChartsTooltip";
|
|
12
12
|
const pt = (t) => {
|
|
13
13
|
const r = X(), o = t.showLabel, s = t.style, y = Number(t.x), m = Number(t.y), x = t.handlers?.onMarkClick, f = t.handlers?.onMouseEnter, c = t.handlers?.onMouseLeave, d = ut(r.breakpoints.up("sm")), a = t.valueFormatterString ? b(t.yData[t.dataIndex], t.valueFormatterString) : String(t.yData[t.dataIndex]), h = d ? r.typography.Small?.fontSize : r.typography.XSmall?.fontSize, k = h ? parseFloat(h.toString()) * 0.6 : 8, D = a.length * k + 8 + 8, T = 24, $ = y - D / 2, M = m - 30;
|
|
@@ -8,7 +8,7 @@ import L from "@mui/material/Stack";
|
|
|
8
8
|
import { ChevronRight as g } from "@mxenabled/mx-icons";
|
|
9
9
|
import { Text as m } from "@mxenabled/mxui";
|
|
10
10
|
import { a as j } from "./Dialog-CWW597AF.mjs";
|
|
11
|
-
import { u as P } from "./hooks-
|
|
11
|
+
import { u as P } from "./hooks-CE2TKk4a.mjs";
|
|
12
12
|
const D = v(
|
|
13
13
|
({
|
|
14
14
|
children: n,
|