@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.
Files changed (57) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/dist/{Account-Bdz1k5WZ.mjs → Account-BW3-oYEs.mjs} +1 -1
  3. package/dist/{AccountDetailsContent-CEjEyv_M.mjs → AccountDetailsContent-Dkpo7pw6.mjs} +16 -16
  4. package/dist/{AccountDetailsHeader-uX5amBaR.mjs → AccountDetailsHeader-2HU_fMWZ.mjs} +11 -11
  5. package/dist/{AccountFields-Ckw28o6E.mjs → AccountFields-CIz-r3gP.mjs} +2 -2
  6. package/dist/{AccountListItem-DKwz0HGB.mjs → AccountListItem-B-ZjJ4Gp.mjs} +3 -3
  7. package/dist/{AccountStore-DhfQsEK5.mjs → AccountStore-BQKxAYSg.mjs} +62 -67
  8. package/dist/{Accounts-CAr848d0.mjs → Accounts-CA-nqAjT.mjs} +1 -1
  9. package/dist/{BudgetUtil-spowPvBM.mjs → BudgetUtil-CeSLAcsl.mjs} +1 -1
  10. package/dist/{CategorySelectorDrawer-Dyzb3UDU.mjs → CategorySelectorDrawer-BPvjZ-Xo.mjs} +1 -1
  11. package/dist/{ConnectDrawer-yFS82Il7.mjs → ConnectDrawer-phFH6OHt.mjs} +5 -5
  12. package/dist/{ConnectionsDrawer-Cl1jJGRv.mjs → ConnectionsDrawer-ihxkAi1P.mjs} +2 -2
  13. package/dist/{CurrencyInput-CSZjO22Z.mjs → CurrencyInput-bEx2Mbd0.mjs} +1 -1
  14. package/dist/{DebtsStore-Bep2cYsx.mjs → DebtsStore-Dp-CraCD.mjs} +1 -1
  15. package/dist/{ExportCsvAction-dpvaZxbS.mjs → ExportCsvAction-CvyiKLTh.mjs} +3 -3
  16. package/dist/GoalStore-BWHkOQ8o.mjs +364 -0
  17. package/dist/{Help-BazrEpv7.mjs → Help-B3oENhkG.mjs} +1 -1
  18. package/dist/{LineChart-CYiUS-px.mjs → LineChart-jpdaQX7x.mjs} +1 -1
  19. package/dist/{ListItemAction-BzmbPuNp.mjs → ListItemAction-DNZZ5fSa.mjs} +1 -1
  20. package/dist/{ManageIncome-Dk2ZDGqw.mjs → ManageIncome-Bd14SWPF.mjs} +4 -4
  21. package/dist/{MicroWidgetContainer-DmYiksbT.mjs → MicroWidgetContainer-Dxz8uBN9.mjs} +1 -1
  22. package/dist/{MiniWidgetContainer-DqKQNubH.mjs → MiniWidgetContainer-CTyjmE1h.mjs} +1 -1
  23. package/dist/{NetWorthStore-DrBL4JEO.mjs → NetWorthStore-B6xF9eGH.mjs} +2 -2
  24. package/dist/{NotificationSettings-BznqGVQ2.mjs → NotificationSettings-uXVwpIa1.mjs} +17 -17
  25. package/dist/{OriginalBalanceAction-CSu5brQE.mjs → OriginalBalanceAction-DepsKiJz.mjs} +3 -3
  26. package/dist/{RecurringSettings-DNJs5JIe.mjs → RecurringSettings-4Y2RJy_M.mjs} +3 -3
  27. package/dist/{Transaction-CyqrHmAA.mjs → Transaction-Dns0Kuuy.mjs} +1 -1
  28. package/dist/{TransactionDetails-B6h5Qo1c.mjs → TransactionDetails-BSl6CpL8.mjs} +5 -5
  29. package/dist/{TransactionStore-DSyXtPek.mjs → TransactionStore-BVKUoEHj.mjs} +2 -2
  30. package/dist/{TrendsStore-DR8etTL2.mjs → TrendsStore-D6Un6Y4A.mjs} +1 -1
  31. package/dist/{WidgetContainer-D7sX3S6R.mjs → WidgetContainer-C2NBfpDg.mjs} +2 -2
  32. package/dist/accounts/index.es.js +17 -17
  33. package/dist/analytics/index.es.js +2 -2
  34. package/dist/budgets/index.es.js +10 -10
  35. package/dist/cashflow/index.es.js +7 -7
  36. package/dist/categories/index.es.js +1 -1
  37. package/dist/common/index.es.js +22 -22
  38. package/dist/dashboard/index.es.js +14 -14
  39. package/dist/debts/index.es.js +9 -9
  40. package/dist/{exportTransactionsToCSV-BlVifaOG.mjs → exportTransactionsToCSV-B4JW8rfR.mjs} +1 -1
  41. package/dist/finstrong/index.es.js +6 -6
  42. package/dist/goals/index.es.js +560 -647
  43. package/dist/goals/util/GoalsUtil.d.ts +1 -0
  44. package/dist/help/index.es.js +3 -3
  45. package/dist/{hooks-02T565vf.mjs → hooks-DkUqN6JE.mjs} +3 -3
  46. package/dist/investments/index.es.js +3 -3
  47. package/dist/merchants/index.es.js +1 -1
  48. package/dist/networth/index.es.js +7 -7
  49. package/dist/notifications/index.es.js +7 -7
  50. package/dist/recurringtransactions/index.es.js +8 -8
  51. package/dist/settings/index.es.js +6 -6
  52. package/dist/spending/index.es.js +4 -4
  53. package/dist/transactions/index.es.js +13 -13
  54. package/dist/trends/index.es.js +9 -9
  55. package/package.json +1 -1
  56. package/dist/GoalStore-ChqCWX_U.mjs +0 -263
  57. package/dist/common/utils/User.d.ts +0 -2
package/CHANGELOG.md CHANGED
@@ -1,6 +1,6 @@
1
1
  ## [7.0.9] - 09-19-2025
2
2
 
3
- - **ADDED** - Support for excluding external accounts based on feature flag
3
+ - **FIXED** - `Retirement Goal` Projection month and year issue fixed
4
4
 
5
5
  ## [7.0.8] - 09-18-2025
6
6
 
@@ -1,4 +1,4 @@
1
- import { A as C } from "./ConnectDrawer-yFS82Il7.mjs";
1
+ import { A as C } from "./ConnectDrawer-phFH6OHt.mjs";
2
2
  const I = [
3
3
  C.ANY,
4
4
  C.CASH,
@@ -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-uX5amBaR.mjs";
15
- import { c as z, u as E, e as O, f as X } from "./hooks-02T565vf.mjs";
16
- import { A as at } from "./AccountListItem-DKwz0HGB.mjs";
17
- import { A as k } from "./WidgetContainer-D7sX3S6R.mjs";
18
- import { a as V, f as B, D as K } from "./Dialog-CWW597AF.mjs";
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, h as Z, F as P } from "./ConnectDrawer-yFS82Il7.mjs";
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-CSZjO22Z.mjs";
41
- import { a as Dt } from "./AccountFields-Ckw28o6E.mjs";
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-B6h5Qo1c.mjs";
48
- import { T as j } from "./TabContentContainer-j01JYR_7.mjs";
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, K.TIME_STAMP_HOUR_MINUTE);
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, K.MONTH_DAY_YEAR),
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), Kt = () => {
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
- }, jt = b(Kt), Yt = () => {
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(j, { index: 0, name: "transaction-details", value: e, children: /* @__PURE__ */ t(jt, {}) }),
669
- /* @__PURE__ */ t(j, { index: 1, name: "account-details", value: e, children: /* @__PURE__ */ t(Ht, {}) })
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-Ckw28o6E.mjs";
5
+ import { g as N } from "./AccountFields-CIz-r3gP.mjs";
6
6
  import h from "react";
7
- import { G as v, c as S, l as y, u as _, m as E } from "./hooks-02T565vf.mjs";
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-CYiUS-px.mjs";
14
- import { I as f, P as g, S as C } from "./Account-Bdz1k5WZ.mjs";
15
- import { A } from "./ConnectDrawer-yFS82Il7.mjs";
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 R } from "./Dialog-CWW597AF.mjs";
18
- import { f as $ } from "./NumberFormatting-CtWHhyBX.mjs";
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
- }, k = (o, n) => {
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 = k(t, n.account_type), c = F(s, n.account_type, a), i = [A.LOAN, A.MORTGAGE].includes(n.account_type);
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(), R.MONTH_LONG) })
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: $(s, "0,0.00") })
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-yFS82Il7.mjs";
4
- import { i as D, u as T, a as A, b as O, c as g } from "./Accounts-CAr848d0.mjs";
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-Ckw28o6E.mjs";
14
- import { d } from "./ConnectDrawer-yFS82Il7.mjs";
15
- import { u as T } from "./hooks-02T565vf.mjs";
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 _, runInAction as a } from "mobx";
2
- import { F as g, A as i } from "./Fetch-CkFKy79O.mjs";
3
- import { A as s, d, E as f, i as p, j as y } from "./ConnectDrawer-yFS82Il7.mjs";
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 g(t, e);
8
- }
9
- createAccount = async (t) => this.fetchInstance.post(i.ACCOUNTS, t).then((e) => e.account).catch((e) => e);
10
- deleteAccount = async (t) => this.fetchInstance.delete(`${i.ACCOUNTS}/${t}`).catch((e) => e);
11
- getAccounts = async () => this.fetchInstance.get(i.ACCOUNTS).then((t) => t.accounts).catch((t) => t);
12
- getInstitutions = async () => this.fetchInstance.get(i.INSTITUTIONS).then((t) => t).catch((t) => t);
13
- getMembers = async () => this.fetchInstance.get(i.MEMBERS).then((t) => t.members).catch((t) => t);
14
- getMonthlyAccountBalances = async (t) => this.fetchInstance.get(`${i.ACCOUNTS}/${t}/monthly_account_balances`).then((e) => e.monthly_account_balances).catch((e) => e);
15
- mergeAccounts = async (t) => this.fetchInstance.put(`${i.ACCOUNTS}/merge`, { accounts: t }).then((e) => e).catch((e) => e);
16
- refreshAllMembers = async () => this.fetchInstance.get(`${i.MEMBERS}/refresh_all`).then((t) => t).catch((t) => t);
17
- updateAccount = async (t) => this.fetchInstance.put(`${i.ACCOUNTS}/${t.guid}`, t).then((e) => e.account).catch((e) => e);
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
- const I = (h, t) => !!h.find((e) => e.feature_name === t)?.is_enabled;
20
- class b {
19
+ class p {
21
20
  isLoading = !1;
22
21
  selectedAccount = {};
23
22
  selectedMember = {};
24
23
  constructor() {
25
- _(this);
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 w {
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 b(), this.api = new l(t.endpoint, t.sessionToken), _(this);
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 === s.CASH || t.account_type === s.CHECKING || t.account_type === s.PREPAID || t.account_type === s.SAVINGS || t.account_type === s.CHECKING_LINE_OF_CREDIT
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 === s.CHECKING);
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 === s.CREDIT_CARD || t.account_type === s.LOAN || t.account_type === s.MORTGAGE || t.account_type === s.LINE_OF_CREDIT || t.account_type === s.CHECKING_LINE_OF_CREDIT
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
- s.CHECKING,
66
- s.SAVINGS,
67
- s.CREDIT_CARD,
68
- s.INVESTMENT
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 === s.INVESTMENT
73
+ (t) => t.account_type === n.INVESTMENT
75
74
  );
76
75
  }
77
76
  get savingsAccounts() {
78
- return this.accounts.filter((t) => t.account_type === s.SAVINGS);
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 = [], n = this.globalStore.userStore.userFeatures, c = I(
118
- n,
119
- "MD_EXCLUDE_EXTERNAL_ACCOUNTS"
120
- );
121
- for (const r of t) {
122
- if (c && r.member_is_managed_by_user) continue;
123
- const o = this.members.find((m) => m.guid === r.member_guid);
124
- if (!o) continue;
125
- let u = d.Connected;
126
- f.includes(o.connection_status) ? u = d.Error : p.includes(o.connection_status) ? u = d.Processing : y.includes(o.connection_status) && (u = d.RequiresMfa);
127
- const A = [
128
- r.user_name || r.feed_name || "",
129
- r.account_number ? `*${r.account_number}` : ""
130
- ].join(" ").trim();
131
- e.push({
132
- ...r,
133
- connectionStatus: u,
134
- institutionName: A,
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), n = e[Object.keys(e)[0]];
168
+ const e = await this.api.mergeAccounts(t), c = e[Object.keys(e)[0]];
174
169
  a(() => {
175
- const c = this.accounts.findIndex((o) => o.guid === t[1]);
176
- this.accounts.splice(c, 1);
177
- const r = this.accounts.findIndex((o) => o.guid === t[0]);
178
- this.accounts.splice(r, 1, n);
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, 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);
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((n) => n.guid === t);
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 n = this.accounts.findIndex(
210
- (c) => c.guid === e.guid
204
+ const c = this.accounts.findIndex(
205
+ (s) => s.guid === e.guid
211
206
  );
212
- this.accounts.splice(n, 1, e), this.accounts = this.augmentAccounts(this.accounts);
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 n of t) {
220
- const c = this.accounts.find((r) => r.guid === n);
221
- if (c) {
222
- c.is_excluded_from_accounts = e, c.is_excluded_from_budgets = e, c.is_excluded_from_cash_flow = e, c.is_excluded_from_debts = e, c.is_excluded_from_goals = e, c.is_excluded_from_investments = e, c.is_excluded_from_net_worth = e, c.is_excluded_from_spending = e, c.is_excluded_from_transactions = e, c.is_excluded_from_trends = e;
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(c);
219
+ this.updateAccount(s);
225
220
  } catch (r) {
226
- console.error(`Failed to update account ${n} (added):`, r);
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
- w as a
229
+ C as a
235
230
  };
@@ -1,4 +1,4 @@
1
- import { A as _ } from "./ConnectDrawer-yFS82Il7.mjs";
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,
@@ -1,4 +1,4 @@
1
- import { g as _ } from "./hooks-02T565vf.mjs";
1
+ import { g as _ } from "./hooks-DkUqN6JE.mjs";
2
2
  import { b as d } from "./Category-CevNQ03n.mjs";
3
3
  import { b as f } from "./Localization-2MODESHW.mjs";
4
4
  import { f as l } from "./NumberFormatting-CtWHhyBX.mjs";
@@ -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, l as y, u as b, e as D, a as U } from "./hooks-02T565vf.mjs";
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-02T565vf.mjs";
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
- bE as g,
502
- yE as h,
503
- jE as i,
504
- LE as j,
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-yFS82Il7.mjs";
7
- import { c as b, d as w, u as _ } from "./hooks-02T565vf.mjs";
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-02T565vf.mjs";
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-yFS82Il7.mjs";
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-BlVifaOG.mjs";
5
- import { O as m } from "./Transaction-CyqrHmAA.mjs";
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-02T565vf.mjs";
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);