@mx-cartographer/experiences 7.6.1 → 7.6.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/CHANGELOG.md CHANGED
@@ -1,8 +1,16 @@
1
- ## [7.6.1] - 01-14-2025
1
+ ## [7.6.3] - 01-15-2026
2
+
3
+ - **FIXED** - Finstrong | Mobile key Indicators Styling Issues
4
+
5
+ ## [7.6.2] - 01-14-2026
6
+
7
+ - **UPDATED** - Hover, axes, titles, descriptions, role for Account Details charts
8
+
9
+ ## [7.6.1] - 01-14-2026
2
10
 
3
11
  - **UPDATED** - Improved ADA support for `Goals` reorder
4
12
 
5
- ## [7.6.0] - 01-14-2025
13
+ ## [7.6.0] - 01-14-2026
6
14
 
7
15
  - **UPDATED** - Migrated MUI X-Charts from v7 to v8
8
16
 
@@ -11,7 +11,7 @@ import I 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-B21Y8_ED.mjs";
14
+ import { u as D } from "./AccountDetailsHeader-D8wbZdBk.mjs";
15
15
  import { d as z, u as E, g as O, h as X } from "./hooks-ZMp65DFz.mjs";
16
16
  import { A as at } from "./AccountListItem-Dikzsimi.mjs";
17
17
  import { A as M } from "./WidgetContainer-DyotIGdv.mjs";
@@ -0,0 +1,95 @@
1
+ import { jsx as t, jsxs as a } from "react/jsx-runtime";
2
+ import { observer as f } from "mobx-react-lite";
3
+ import s from "@mui/material/Stack";
4
+ import { H3 as T, InstitutionLogo as x, Text as l, H2 as D } from "@mxenabled/mxui";
5
+ import p from "react";
6
+ import { G as N, d as C, m as P, f as G, u as O } from "./hooks-ZMp65DFz.mjs";
7
+ import { g as R } from "./AccountFields-D9Jil_7P.mjs";
8
+ import { A as r } from "./ConnectDrawer-cXpqSnbj.mjs";
9
+ import w from "@mui/material/Card";
10
+ import v from "@mui/material/CardContent";
11
+ import L from "@mui/material/CardHeader";
12
+ import { L as H } from "./Loader-DUaFpDGv.mjs";
13
+ import { I as M, P as U, S as Y } from "./Account-CQ5cFk24.mjs";
14
+ import { u as j } from "./useAccountDisplayName-DSUFGGaF.mjs";
15
+ import { f as z } from "./NumberFormatting-DjTD0t3W.mjs";
16
+ const _ = () => {
17
+ if (!p.useContext(N))
18
+ throw new Error("useCategoryUiStore() must be used within the GlobalDataContext");
19
+ return C().uiStore;
20
+ }, B = (i, e) => {
21
+ const c = [r.LOAN, r.MORTGAGE, r.PROPERTY].includes(
22
+ i
23
+ ), n = [
24
+ r.CREDIT_CARD,
25
+ r.LINE_OF_CREDIT,
26
+ r.PREPAID,
27
+ r.CHECKING_LINE_OF_CREDIT
28
+ ].includes(i);
29
+ return c ? { title: e.label_payments, description: e.chart_title_payments } : n ? { title: e.label_payments_spend, description: e.chart_title_payments_spend } : { title: e.label_income_spend, description: e.chart_title_income_spend };
30
+ }, k = ({
31
+ sx: i,
32
+ ChartComponent: e,
33
+ header: c
34
+ }) => {
35
+ const { loadMonthlyCategoryTotals: n } = P(), { isInitialized: o } = G(), { selectedAccount: d } = _(), [u, m] = p.useState(!1);
36
+ return p.useEffect(() => {
37
+ o && n([d]).finally(() => {
38
+ m(!0);
39
+ });
40
+ }, [o, d]), !o || !u ? /* @__PURE__ */ t(H, {}) : /* @__PURE__ */ a(
41
+ w,
42
+ {
43
+ sx: {
44
+ "& .MuiCardContent-root:last-child": {
45
+ pb: 0
46
+ },
47
+ ...i
48
+ },
49
+ children: [
50
+ /* @__PURE__ */ t(L, { sx: { pb: 0 }, title: /* @__PURE__ */ t(T, { sx: { pb: 4 }, children: c }) }),
51
+ /* @__PURE__ */ t(v, { sx: { p: 0 }, children: e ? /* @__PURE__ */ t(e, {}) : null })
52
+ ]
53
+ }
54
+ );
55
+ }, F = f(k), V = ({
56
+ customDetailsChart: i,
57
+ ChartComponent: e
58
+ }) => {
59
+ const { institutions: c } = C(), { selectedAccount: n } = _(), { accounts: o } = O(), { firstSubtitle: d, firstValue: u, hasAvailableBalance: m, secondSubtitle: h, secondValue: b } = R(n, o), A = c.find(
60
+ (I) => I.guid === n?.institution_guid
61
+ ), S = [
62
+ ...M,
63
+ ...U,
64
+ ...Y
65
+ ].includes(n.account_type), g = j(n), { title: y, description: E } = B(n.account_type, o);
66
+ return /* @__PURE__ */ a(s, { bgcolor: "background.default", p: 24, children: [
67
+ /* @__PURE__ */ a(s, { gap: 12, children: [
68
+ /* @__PURE__ */ t(
69
+ x,
70
+ {
71
+ alt: o.institution_logo_alt,
72
+ institutionGuid: n.institution_guid || "",
73
+ size: 64
74
+ }
75
+ ),
76
+ /* @__PURE__ */ t(l, { variant: "Small", children: A?.name })
77
+ ] }),
78
+ /* @__PURE__ */ a(s, { gap: 8, mb: 24, mt: 4, children: [
79
+ /* @__PURE__ */ t(D, { children: g }),
80
+ /* @__PURE__ */ a(s, { direction: "row", justifyContent: "space-between", children: [
81
+ /* @__PURE__ */ t(l, { bold: m, variant: "Body", children: d }),
82
+ /* @__PURE__ */ t(l, { bold: !0, variant: "Body", children: z(u, "0,0.00") })
83
+ ] }),
84
+ /* @__PURE__ */ a(s, { direction: "row", justifyContent: "space-between", children: [
85
+ /* @__PURE__ */ t(l, { variant: "Small", children: h }),
86
+ /* @__PURE__ */ t(l, { variant: "Small", children: b })
87
+ ] })
88
+ ] }),
89
+ S && /* @__PURE__ */ t(s, { "aria-label": E, role: "img", children: i || /* @__PURE__ */ t(F, { ChartComponent: e, header: y }) })
90
+ ] });
91
+ }, at = f(V);
92
+ export {
93
+ at as A,
94
+ _ as u
95
+ };
@@ -2,6 +2,7 @@ import { default as React } from 'react';
2
2
  import { MiniWidgetProps } from '../../../../common';
3
3
  interface AccountDetailsChartProps extends MiniWidgetProps {
4
4
  ChartComponent?: React.ComponentType;
5
+ header?: string;
5
6
  }
6
7
  declare const _default: React.FunctionComponent<AccountDetailsChartProps>;
7
8
  export default _default;
@@ -1,28 +1,28 @@
1
- import { jsx as e, jsxs as r, Fragment as J } from "react/jsx-runtime";
1
+ import { jsx as e, jsxs as r, Fragment as q } from "react/jsx-runtime";
2
2
  import h from "react";
3
3
  import { observer as v } from "mobx-react-lite";
4
4
  import E from "@mui/material/Box";
5
- import y from "@mui/material/Divider";
5
+ import x from "@mui/material/Divider";
6
6
  import F from "@mui/material/List";
7
7
  import O from "@mui/material/ListSubheader";
8
8
  import Z from "@mui/system/Stack";
9
9
  import { Text as g } from "@mxenabled/mxui";
10
- import { useTheme as Q } from "@mui/material/styles";
11
- import { u as U, A as X } from "../AccountDetailsHeader-B21Y8_ED.mjs";
10
+ import { useTheme as J } from "@mui/material/styles";
11
+ import { u as U, A as Q } from "../AccountDetailsHeader-D8wbZdBk.mjs";
12
12
  import { L as e1 } from "../LineChart-BF4QA-Lx.mjs";
13
13
  import { g as t1, a as n1, b as l1 } from "../SpendingData-zOn0cwrq.mjs";
14
14
  import { m as i1, u as M, b as S, d as W, g as P, a as o1 } from "../hooks-ZMp65DFz.mjs";
15
15
  import { A as I, l as G, m as C1 } from "../ConnectDrawer-cXpqSnbj.mjs";
16
16
  import { F as C3, M as d3 } from "../ConnectDrawer-cXpqSnbj.mjs";
17
- import { I as $, P as j, S as Y } from "../Account-CQ5cFk24.mjs";
17
+ import { I as $, P as Y, S as j } from "../Account-CQ5cFk24.mjs";
18
18
  import { a as d1 } from "../AccountFields-D9Jil_7P.mjs";
19
19
  import { g as s3, b as a3 } from "../AccountFields-D9Jil_7P.mjs";
20
20
  import { A as N } from "../AccountListItem-Dikzsimi.mjs";
21
- import { A as c1 } from "../AccountDetailsContent-ZWkttor7.mjs";
22
- import { u as L3 } from "../AccountDetailsContent-ZWkttor7.mjs";
21
+ import { A as c1 } from "../AccountDetailsContent-D4oOgcoI.mjs";
22
+ import { u as L3 } from "../AccountDetailsContent-D4oOgcoI.mjs";
23
23
  import { f as D } from "../NumberFormatting-DjTD0t3W.mjs";
24
24
  import { D as s1 } from "../Drawer-HUhV0NVP.mjs";
25
- import { A as x, W as a1 } from "../WidgetContainer-DyotIGdv.mjs";
25
+ import { A as y, W as a1 } from "../WidgetContainer-DyotIGdv.mjs";
26
26
  import { C as r1 } from "../ConnectionsDrawer-CecygbxT.mjs";
27
27
  import { u as K } from "../useScreenSize-B6JyS_Lj.mjs";
28
28
  import { u as B } from "../useWidgetLoadTimer-hIOioiKx.mjs";
@@ -32,24 +32,24 @@ import { M as z } from "../MiniWidgetContainer-98-hKFqm.mjs";
32
32
  import u1 from "@mui/material/Stack";
33
33
  import { A as h3, a as H3 } from "../AccountStore-CMEXKMhd.mjs";
34
34
  const h1 = (o, C) => {
35
- const l = $.includes(C) ? t1(o) : [], t = j.includes(C) ? n1(o) : [], L = Y.includes(C) ? l1(o) : [];
35
+ const l = $.includes(C) ? t1(o) : [], t = Y.includes(C) ? n1(o) : [], L = j.includes(C) ? l1(o) : [];
36
36
  return [l, t, L].filter((i) => i.length > 0);
37
37
  }, H1 = (o, C, l) => {
38
38
  const [t, L] = o, i = t, d = L ?? t, s = [];
39
39
  if (i && d && $.includes(C)) {
40
40
  const c = i[i.length - 1].y;
41
41
  s.push({ label: l.income_label, amount: c });
42
- } else if (j.includes(C)) {
42
+ } else if (Y.includes(C)) {
43
43
  const c = i[i.length - 1].y;
44
44
  s.push({ label: l.payments_label, amount: c });
45
45
  }
46
- if (d && Y.includes(C)) {
46
+ if (d && j.includes(C)) {
47
47
  const c = d[d.length - 1].y;
48
48
  s.push({ label: l.spending_label, amount: c });
49
49
  }
50
50
  return s;
51
51
  }, p1 = () => {
52
- const o = Q(), { selectedAccount: C } = U(), { monthlyCategoryTotals: l } = i1(), { trends: t } = M(), L = [o.palette.chart?.chart1, o.palette.chart?.chart2], i = h1(l, C.account_type), d = H1(i, C.account_type, t), s = [I.LOAN, I.MORTGAGE].includes(C.account_type);
52
+ const o = J(), { selectedAccount: C } = U(), { monthlyCategoryTotals: l } = i1(), { trends: t } = M(), L = [o.palette.chart?.chart1, o.palette.chart?.chart2], i = h1(l, C.account_type), d = H1(i, C.account_type, t), s = [I.LOAN, I.MORTGAGE].includes(C.account_type);
53
53
  return /* @__PURE__ */ e("div", { "data-testid": "TrendsChart", children: /* @__PURE__ */ e(
54
54
  e1,
55
55
  {
@@ -58,8 +58,14 @@ const h1 = (o, C) => {
58
58
  height: 185,
59
59
  labels: d,
60
60
  showAverage: s,
61
+ showAxisHighlight: !0,
61
62
  showBars: s,
62
63
  showLegend: !0,
64
+ showTooltip: !0,
65
+ showXAxis: !0,
66
+ showXAxisTicks: !0,
67
+ showYAxis: !0,
68
+ showYAxisTicks: !0,
63
69
  valueFormatterString: "0,0"
64
70
  }
65
71
  ) });
@@ -81,13 +87,13 @@ const h1 = (o, C) => {
81
87
  n && i(n);
82
88
  }
83
89
  }, [H, o]);
84
- const _ = (n) => {
85
- C(n.guid), s(x.ACCOUNTS_CLICK_ACCOUNT, {
90
+ const A = (n) => {
91
+ C(n.guid), s(y.ACCOUNTS_CLICK_ACCOUNT, {
86
92
  account_guid: n.guid,
87
93
  account_type: n.account_type
88
94
  });
89
95
  }, V = (n) => {
90
- const a = n === "hidden" ? p : m, k = n === "hidden" ? R : b, u = n === "hidden" ? l.account_hidden : l.account_closed;
96
+ const a = n === "hidden" ? p : m, T = n === "hidden" ? R : b, u = n === "hidden" ? l.account_hidden : l.account_closed;
91
97
  return /* @__PURE__ */ e(E, { children: /* @__PURE__ */ e(
92
98
  F,
93
99
  {
@@ -100,31 +106,31 @@ const h1 = (o, C) => {
100
106
  sx: { justifyContent: "space-between", color: "grey.700" },
101
107
  children: [
102
108
  /* @__PURE__ */ e(g, { bold: !0, variant: "Body", children: u }),
103
- /* @__PURE__ */ e(g, { bold: !0, variant: "Body", children: D(k, "0,0.00") })
109
+ /* @__PURE__ */ e(g, { bold: !0, variant: "Body", children: D(T, "0,0.00") })
104
110
  ]
105
111
  }
106
112
  ) }),
107
- children: /* @__PURE__ */ e(Z, { children: a.map((f, A, q) => {
108
- const T = A === q.length - 1;
113
+ children: /* @__PURE__ */ e(Z, { children: a.map((f, _, X) => {
114
+ const k = _ === X.length - 1;
109
115
  return /* @__PURE__ */ r(h.Fragment, { children: [
110
116
  /* @__PURE__ */ e(
111
117
  N,
112
118
  {
113
119
  account: f,
114
- onRowClick: () => _(f),
120
+ onRowClick: () => A(f),
115
121
  shouldShowConnectionStatus: !0
116
122
  }
117
123
  ),
118
124
  n === "hidden" ? /* @__PURE__ */ e(
119
- y,
125
+ x,
120
126
  {
121
127
  sx: {
122
- mb: T ? 24 : 4,
123
- ml: T ? 24 : 68
128
+ mb: k ? 24 : 4,
129
+ ml: k ? 24 : 68
124
130
  }
125
131
  }
126
- ) : !T && /* @__PURE__ */ e(
127
- y,
132
+ ) : !k && /* @__PURE__ */ e(
133
+ x,
128
134
  {
129
135
  sx: {
130
136
  mb: 4,
@@ -141,7 +147,7 @@ const h1 = (o, C) => {
141
147
  c.map((n) => {
142
148
  const a = t.filter(
143
149
  (u) => u.account_type === n && !u.is_closed && !u.is_hidden
144
- ), k = a.reduce(
150
+ ), T = a.reduce(
145
151
  (u, f) => (f.balance || 0) + u,
146
152
  0
147
153
  );
@@ -157,27 +163,27 @@ const h1 = (o, C) => {
157
163
  sx: { display: "flex", justifyContent: "space-between" },
158
164
  children: [
159
165
  /* @__PURE__ */ e(g, { bold: !0, variant: "Body", children: l.account_types[n] }),
160
- /* @__PURE__ */ e(g, { bold: !0, variant: "Body", children: D(k, "0,0.00") })
166
+ /* @__PURE__ */ e(g, { bold: !0, variant: "Body", children: D(T, "0,0.00") })
161
167
  ]
162
168
  }
163
169
  ) }),
164
170
  children: /* @__PURE__ */ e(Z, { children: a.map((u) => {
165
- const f = t.indexOf(u) === t.length - 1, A = a.indexOf(u) === a.length - 1;
171
+ const f = t.indexOf(u) === t.length - 1, _ = a.indexOf(u) === a.length - 1;
166
172
  return /* @__PURE__ */ r(h.Fragment, { children: [
167
173
  /* @__PURE__ */ e(
168
174
  N,
169
175
  {
170
176
  account: u,
171
- onRowClick: () => _(u),
177
+ onRowClick: () => A(u),
172
178
  shouldShowConnectionStatus: !0
173
179
  }
174
180
  ),
175
181
  (!f || m.length > 0 || p.length > 0) && /* @__PURE__ */ e(
176
- y,
182
+ x,
177
183
  {
178
184
  sx: {
179
- mb: A ? 24 : 4,
180
- ml: A ? 24 : 68
185
+ mb: _ ? 24 : 4,
186
+ ml: _ ? 24 : 68
181
187
  }
182
188
  }
183
189
  )
@@ -197,14 +203,14 @@ const h1 = (o, C) => {
197
203
  onClose: () => C(""),
198
204
  title: l.account_details,
199
205
  children: [
200
- /* @__PURE__ */ e(X, { ChartComponent: m1 }),
206
+ /* @__PURE__ */ e(Q, { ChartComponent: m1 }),
201
207
  /* @__PURE__ */ e(c1, {})
202
208
  ]
203
209
  }
204
210
  )
205
211
  ] });
206
212
  }, V1 = v(f1), g1 = ({ onBackClick: o, sx: C = {} }) => {
207
- const [l, t] = h.useState(!1), [L, i] = h.useState(!1), { config: d } = o1(), { accounts: s } = W(), { accounts: c, connect: H } = M(), { isCopyLoaded: p, isInitialized: m, setSelectedAccounts: R, selectedAccountGuids: b } = S(), { isDesktop: _ } = K(), { onEvent: V } = P();
213
+ const [l, t] = h.useState(!1), [L, i] = h.useState(!1), { config: d } = o1(), { accounts: s } = W(), { accounts: c, connect: H } = M(), { isCopyLoaded: p, isInitialized: m, setSelectedAccounts: R, selectedAccountGuids: b } = S(), { isDesktop: A } = K(), { onEvent: V } = P();
208
214
  B({
209
215
  widgetName: "AccountsWidget",
210
216
  isLoaded: m && p
@@ -212,9 +218,9 @@ const h1 = (o, C) => {
212
218
  R(s);
213
219
  }, [s]);
214
220
  const n = () => {
215
- t(!0), V(x.ACCOUNTS_CLICK_CONNECT);
221
+ t(!0), V(y.ACCOUNTS_CLICK_CONNECT);
216
222
  }, a = () => {
217
- i(!0), V(x.ACCOUNTS_CLICK_CONNECT);
223
+ i(!0), V(y.ACCOUNTS_CLICK_CONNECT);
218
224
  };
219
225
  return p ? /* @__PURE__ */ e(
220
226
  a1,
@@ -228,12 +234,12 @@ const h1 = (o, C) => {
228
234
  onClick: a
229
235
  }
230
236
  ] : [],
231
- onAccountsFilterClick: () => V(x.ACCOUNTS_CLICK_FILTER),
237
+ onAccountsFilterClick: () => V(y.ACCOUNTS_CLICK_FILTER),
232
238
  onBackClick: o,
233
239
  sx: C,
234
240
  title: c.title,
235
- children: m ? /* @__PURE__ */ r(J, { children: [
236
- /* @__PURE__ */ r(E, { sx: { px: _ ? 24 : 12 }, children: [
241
+ children: m ? /* @__PURE__ */ r(q, { children: [
242
+ /* @__PURE__ */ r(E, { sx: { px: A ? 24 : 12 }, children: [
237
243
  b.length < 1 && /* @__PURE__ */ e(g, { display: "flex", justifyContent: "center", my: 24, children: c.no_accounts }),
238
244
  /* @__PURE__ */ e(V1, {})
239
245
  ] }),
@@ -289,7 +295,7 @@ const h1 = (o, C) => {
289
295
  shouldShowConnectionStatus: !0
290
296
  }
291
297
  ),
292
- !R && /* @__PURE__ */ e(y, { "aria-hidden": "true", variant: "inset" })
298
+ !R && /* @__PURE__ */ e(x, { "aria-hidden": "true", variant: "inset" })
293
299
  ] }, `account-item${m}`);
294
300
  })
295
301
  ] }) : /* @__PURE__ */ e(w, {})
@@ -751,7 +757,7 @@ const h1 = (o, C) => {
751
757
  }
752
758
  )
753
759
  ] });
754
- }, w1 = v(R1), _1 = ({
760
+ }, w1 = v(R1), A1 = ({
755
761
  onPrimaryCtaClick: o = () => {
756
762
  },
757
763
  sx: C
@@ -783,11 +789,11 @@ const h1 = (o, C) => {
783
789
  ]
784
790
  }
785
791
  ) : /* @__PURE__ */ e(w, {});
786
- }, l3 = v(_1);
792
+ }, l3 = v(A1);
787
793
  export {
788
794
  h3 as AccountApi,
789
795
  c1 as AccountDetailsContent,
790
- X as AccountDetailsHeader,
796
+ Q as AccountDetailsHeader,
791
797
  H3 as AccountStore,
792
798
  n3 as AccountsMiniWidget,
793
799
  t3 as AccountsWidget,
@@ -0,0 +1,5 @@
1
+ import { AccountType, AccountsCopy } from '../../common';
2
+ export declare const getChartLabels: (accountType: AccountType, copy: AccountsCopy) => {
3
+ title: string;
4
+ description: string;
5
+ };
@@ -45,6 +45,9 @@ export interface AccountsCopy {
45
45
  apy: string;
46
46
  available_balance: string;
47
47
  available_credit: string;
48
+ chart_title_income_spend: string;
49
+ chart_title_payments: string;
50
+ chart_title_payments_spend: string;
48
51
  close_aria: string;
49
52
  close_account_details_aria: string;
50
53
  close_drawer: string;
@@ -73,6 +76,9 @@ export interface AccountsCopy {
73
76
  interest_rate: string;
74
77
  is_closed: string;
75
78
  is_hidden: string;
79
+ label_income_spend: string;
80
+ label_payments: string;
81
+ label_payments_spend: string;
76
82
  manage: string;
77
83
  manage_connection: string;
78
84
  manage_connections: string;
@@ -16,7 +16,7 @@ import { G as Me, w as q, u as S, l as V, g as F, d as Z, b as Pe } from "../hoo
16
16
  import { u as Y } from "../useScreenSize-B6JyS_Lj.mjs";
17
17
  import { D as te } from "../Drawer-HUhV0NVP.mjs";
18
18
  import { b as E } from "../Localization-2MODESHW.mjs";
19
- import { A as ke, u as Ne } from "../AccountDetailsHeader-B21Y8_ED.mjs";
19
+ import { A as ke, u as Ne } from "../AccountDetailsHeader-D8wbZdBk.mjs";
20
20
  import Fe from "@mui/material/Card";
21
21
  import Re from "@mui/material/CardContent";
22
22
  import Le from "@mui/material/CardHeader";
@@ -9,7 +9,7 @@ import { g as gn, a as yn, r as Je, b as bn, c as He, d as ht, C as we, e as ke,
9
9
  import { y as bi, F as fi } from "../FinstrongStore-DzK8bMoz.mjs";
10
10
  import * as nt from "d3";
11
11
  import { observer as v } from "mobx-react-lite";
12
- import { u as S, b as q, a as Ne, o as ee, z as F, p as An, d as Se, m as je, f as Tn, j as Ke, h as On, i as Rn } from "../hooks-ZMp65DFz.mjs";
12
+ import { u as S, b as U, a as Ne, o as ee, z as F, p as An, d as Se, m as je, f as Tn, j as Ke, h as On, i as Rn } from "../hooks-ZMp65DFz.mjs";
13
13
  import { L as te } from "../Loader-DUaFpDGv.mjs";
14
14
  import m from "react";
15
15
  import P from "@mui/material/Button";
@@ -122,7 +122,7 @@ const Mo = ({
122
122
  x2: i - c * 0.8 * Math.cos(Math.PI / 1.35),
123
123
  y1: l + c * 0.8 * Math.sin(Math.PI / 1.35),
124
124
  y2: l - c * 0.8 * Math.sin(Math.PI / 1.35),
125
- children: w.map((B, U) => /* @__PURE__ */ e("stop", { offset: B.offset, stopColor: B.color }, U))
125
+ children: w.map((B, Y) => /* @__PURE__ */ e("stop", { offset: B.offset, stopColor: B.color }, Y))
126
126
  }
127
127
  ) })
128
128
  ] });
@@ -141,7 +141,7 @@ const Mo = ({
141
141
  footerRightContent: u,
142
142
  isFinacialStrengthGraph: y = !1
143
143
  }) => {
144
- const f = G(), w = -Math.PI / 1.35, x = Math.PI / 1.35, D = x - w, C = D / (i - s), g = (o - s) * C, b = w + g + 0.02, L = n !== "SM" ? 0.1 : 0.12, B = t, U = t * (1 - L), T = B * 2, $ = T / 2, z = T / 2, pe = (U + B) / 2, ve = o !== 25 && o !== 50 && o !== 75 && o !== 100 ? 0 : 0.12, [Q, X] = bn(pe, b, ve), _e = o / 25, H = {
144
+ const f = G(), w = -Math.PI / 1.35, x = Math.PI / 1.35, D = x - w, C = D / (i - s), g = (o - s) * C, b = w + g + 0.02, L = n !== "SM" ? 0.1 : 0.12, B = t, Y = t * (1 - L), T = B * 2, $ = T / 2, z = T / 2, pe = (Y + B) / 2, ve = o !== 25 && o !== 50 && o !== 75 && o !== 100 ? 0 : 0.12, [Q, X] = bn(pe, b, ve), _e = o / 25, H = {
145
145
  L: { markerSize: 12, healthScoreFontSize: 64 },
146
146
  M: { markerSize: 8, healthScoreFontSize: 48 },
147
147
  SM: { markerSize: 3, healthScoreFontSize: 14 }
@@ -172,7 +172,7 @@ const Mo = ({
172
172
  series: [
173
173
  {
174
174
  data: r,
175
- innerRadius: U,
175
+ innerRadius: Y,
176
176
  outerRadius: B,
177
177
  startAngle: Math.round(Je(w)),
178
178
  // Use Math.degrees to convert
@@ -182,17 +182,17 @@ const Mo = ({
182
182
  ],
183
183
  skipAnimation: !0,
184
184
  slots: {
185
- pieArc: (Y) => /* @__PURE__ */ e(
185
+ pieArc: (q) => /* @__PURE__ */ e(
186
186
  Mo,
187
187
  {
188
- arcColor: Y.color,
188
+ arcColor: q.color,
189
189
  arcRadius: t,
190
190
  arcStartAngle: w,
191
191
  centerX: $,
192
192
  centerY: z,
193
- dataIndex: Y.dataIndex,
193
+ dataIndex: q.dataIndex,
194
194
  dialScoreData: r,
195
- innerArcRadius: U,
195
+ innerArcRadius: Y,
196
196
  isFinacialStrengthGraph: y,
197
197
  outterArcRadius: B,
198
198
  progressEndAngle: b,
@@ -402,7 +402,7 @@ const Mo = ({
402
402
  value: 12,
403
403
  color: c ? we.EXCEPTIONAL : ke.EXCEPTIONAL
404
404
  }
405
- ], { finstrong: d } = S(), { isCopyLoaded: h } = q();
405
+ ], { finstrong: d } = S(), { isCopyLoaded: h } = U();
406
406
  if (!h) return /* @__PURE__ */ e(te, {});
407
407
  const { status: u, color: y = "none" } = ht(
408
408
  n,
@@ -701,7 +701,7 @@ const Io = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
701
701
  title: h,
702
702
  drawerType: u
703
703
  }) => {
704
- const { finstrong: y } = S(), { isCopyLoaded: f } = q();
704
+ const { finstrong: y } = S(), { isCopyLoaded: f } = U();
705
705
  return f ? /* @__PURE__ */ e(oe, { isOpen: l, onClose: _, title: i || y.key_indicators, children: /* @__PURE__ */ a(p, { sx: { backgroundColor: "background.default", height: "100%" }, children: [
706
706
  (h || s) && /* @__PURE__ */ a(
707
707
  p,
@@ -748,7 +748,7 @@ const Io = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
748
748
  shouldShowBalance: o = !0,
749
749
  loadAccounts: n
750
750
  }) => {
751
- const { config: r } = Ne(), { accounts: s } = S(), { selectedAccounts: i } = q(), l = m.useCallback(
751
+ const { config: r } = Ne(), { accounts: s } = S(), { selectedAccounts: i } = U(), l = m.useCallback(
752
752
  (_) => {
753
753
  t?.(_);
754
754
  },
@@ -799,7 +799,7 @@ const Io = "https://content.moneydesktop.com/storage/MD_Assets/serenity/loading_
799
799
  );
800
800
  }) }) : null;
801
801
  }, Lt = v(Po), Wo = ({ loadAccounts: t, loadMoreLabel: o }) => {
802
- const n = G(), { config: r } = Ne(), { connect: s, finstrong: i } = S(), { accounts: l } = S(), { selectedAccounts: c } = q(), [_, d] = m.useState(!1), [h, u] = m.useState(!1), y = m.useMemo(
802
+ const n = G(), { config: r } = Ne(), { connect: s, finstrong: i } = S(), { accounts: l } = S(), { selectedAccounts: c } = U(), [_, d] = m.useState(!1), [h, u] = m.useState(!1), y = m.useMemo(
803
803
  () => c.filter(
804
804
  (x) => t ? t.includes(x.account_type) : !0
805
805
  ),
@@ -2478,7 +2478,7 @@ const $o = ({ total: t }) => {
2478
2478
  /* @__PURE__ */ e(ce, { index: 2, name: "borrow-details", value: t, children: /* @__PURE__ */ e(wr, {}) })
2479
2479
  ] });
2480
2480
  }, Mr = v(kr), Dr = ({ onClick: t }) => {
2481
- const { finstrong: o } = S(), { isCopyLoaded: n } = q();
2481
+ const { finstrong: o } = S(), { isCopyLoaded: n } = U();
2482
2482
  return n ? /* @__PURE__ */ a(p, { sx: { alignItems: "center", gap: 12, pt: 12, pb: 32 }, children: [
2483
2483
  /* @__PURE__ */ e(pt, { size: 48 }),
2484
2484
  /* @__PURE__ */ a(p, { sx: { alignItems: "center", gap: 4, textAlign: "center" }, children: [
@@ -2634,9 +2634,9 @@ const $o = ({ total: t }) => {
2634
2634
  step: O.ConnectAccounts,
2635
2635
  type: "main"
2636
2636
  }, Pr = ({ isOpen: t, onClose: o }) => {
2637
- const { visibleAccounts: n } = Se(), { calculateHealthScore: r } = F(), { finstrong: s } = S(), { setSelectedAccounts: i } = q(), { addRepeatingTransaction: l, setDateRange: c } = Ke(), { filter: _, setFilter: d, transactions: h } = On(), { user: u, userProfile: y, updateUser: f, updateUserProfile: w } = ee(), [x, D] = m.useState(u.credit_score || 0), [C, g] = m.useState(
2637
+ const { visibleAccounts: n } = Se(), { calculateHealthScore: r } = F(), { finstrong: s } = S(), { setSelectedAccounts: i } = U(), { addRepeatingTransaction: l, setDateRange: c } = Ke(), { filter: _, setFilter: d, transactions: h } = On(), { user: u, userProfile: y, updateUser: f, updateUserProfile: w } = ee(), [x, D] = m.useState(u.credit_score || 0), [C, g] = m.useState(
2638
2638
  it
2639
- ), [b, L] = m.useState(1), [B, U] = m.useState(wt.EveryMonth), [T, $] = m.useState([]), [z, pe] = m.useState(!1), [ve, Q] = m.useState(!1), [X, _e] = m.useState(u.birthday), [H, he] = m.useState(15), [N, ae] = m.useState("");
2639
+ ), [b, L] = m.useState(1), [B, Y] = m.useState(wt.EveryMonth), [T, $] = m.useState([]), [z, pe] = m.useState(!1), [ve, Q] = m.useState(!1), [X, _e] = m.useState(u.birthday), [H, he] = m.useState(15), [N, ae] = m.useState("");
2640
2640
  m.useEffect(() => {
2641
2641
  c({ start: Dt(rt()), end: It(rt()) });
2642
2642
  }, []), m.useEffect(() => {
@@ -2657,19 +2657,19 @@ const $o = ({ total: t }) => {
2657
2657
  [O.MonthlyIncome]: !!N,
2658
2658
  [O.Birthday]: !!u.birthday || !!X,
2659
2659
  [O.CreditScore]: !!u.credit_score || !!x
2660
- })[C.step], [x, C, X, N, u]), Y = n.length > 0, $t = m.useMemo(() => {
2660
+ })[C.step], [x, C, X, N, u]), q = n.length > 0, $t = m.useMemo(() => {
2661
2661
  const { step: A } = C;
2662
2662
  let R = 0;
2663
- return A >= O.MonthlyIncome && Y && R++, A >= O.Birthday && T.length && R++, A >= O.CreditScore && (u.birthday || u.credit_score) && R++, R;
2664
- }, [C.step, Y, T.length, u.birthday, u.credit_score]), zt = (A) => {
2663
+ return A >= O.MonthlyIncome && q && R++, A >= O.Birthday && T.length && R++, A >= O.CreditScore && (u.birthday || u.credit_score) && R++, R;
2664
+ }, [C.step, q, T.length, u.birthday, u.credit_score]), zt = (A) => {
2665
2665
  d({
2666
2666
  ..._,
2667
2667
  custom: (R) => A ? ao(R, A) : at(R)
2668
2668
  });
2669
2669
  }, Et = {
2670
2670
  [O.ConnectAccounts]: {
2671
- main: Y ? /* @__PURE__ */ e(Lt, { shouldShowBalance: !1 }) : null,
2672
- mainActionContent: Y ? s.onboarding_next : s.onboarding_add_accounts,
2671
+ main: q ? /* @__PURE__ */ e(Lt, { shouldShowBalance: !1 }) : null,
2672
+ mainActionContent: q ? s.onboarding_next : s.onboarding_add_accounts,
2673
2673
  primaryText: s.connect_your_accounts,
2674
2674
  secondaryText: s.onboarding_connect_your_accounts_secondary
2675
2675
  },
@@ -2689,7 +2689,7 @@ const $o = ({ total: t }) => {
2689
2689
  });
2690
2690
  },
2691
2691
  setFirstDay: L,
2692
- setFrequency: U,
2692
+ setFrequency: Y,
2693
2693
  setSecondDay: he,
2694
2694
  transaction: De
2695
2695
  }
@@ -2746,7 +2746,7 @@ const $o = ({ total: t }) => {
2746
2746
  ]);
2747
2747
  break;
2748
2748
  case O.ConnectAccounts:
2749
- if (!Y) {
2749
+ if (!q) {
2750
2750
  Q(!0);
2751
2751
  return;
2752
2752
  }
@@ -2796,8 +2796,8 @@ const $o = ({ total: t }) => {
2796
2796
  }
2797
2797
  }, me = Et[C.step], Ie = C.step === O.ConnectAccounts, Kt = {
2798
2798
  fullWidth: !0,
2799
- ...Ie && !Y && { startIcon: /* @__PURE__ */ e(_t, {}) }
2800
- }, Vt = !Ie || Ie && !Y;
2799
+ ...Ie && !q && { startIcon: /* @__PURE__ */ e(_t, {}) }
2800
+ }, Vt = !Ie || Ie && !q;
2801
2801
  return /* @__PURE__ */ a(m.Fragment, { children: [
2802
2802
  /* @__PURE__ */ e(
2803
2803
  oe,
@@ -3131,7 +3131,7 @@ const $o = ({ total: t }) => {
3131
3131
  ) })
3132
3132
  ] });
3133
3133
  }, jr = v(Nr), Kr = ({ isOpen: t, onClose: o }) => {
3134
- const n = G(), { finstrong: r } = S(), { isCopyLoaded: s, isInitialized: i } = q(), { augmentedChartData: l, healthScore: c, healthScoreChangeReports: _, peerScore: d } = F();
3134
+ const n = G(), { finstrong: r } = S(), { isCopyLoaded: s, isInitialized: i } = U(), { augmentedChartData: l, healthScore: c, healthScoreChangeReports: _, peerScore: d } = F();
3135
3135
  if (!s || !i) return /* @__PURE__ */ e(te, {});
3136
3136
  const h = He(c.health_score || 0, r), u = _.slice().reverse();
3137
3137
  return /* @__PURE__ */ e(
@@ -3252,7 +3252,7 @@ const $o = ({ total: t }) => {
3252
3252
  ] })
3253
3253
  ] });
3254
3254
  }, Yr = ({ isOpen: t, onClose: o }) => {
3255
- const { finstrong: n } = S(), { isCopyLoaded: r } = q();
3255
+ const { finstrong: n } = S(), { isCopyLoaded: r } = U();
3256
3256
  return r ? /* @__PURE__ */ e(oe, { isOpen: t, onClose: o, title: n.score_rubric, children: /* @__PURE__ */ a(p, { sx: { bgcolor: "background.default", gap: 36, height: "100%", p: 24 }, children: [
3257
3257
  /* @__PURE__ */ a(p, { sx: { gap: 20 }, children: [
3258
3258
  /* @__PURE__ */ a(p, { sx: { gap: 8 }, children: [
@@ -3332,7 +3332,7 @@ const $o = ({ total: t }) => {
3332
3332
  ] })
3333
3333
  ] }) }) : /* @__PURE__ */ e(te, {});
3334
3334
  }, qr = v(Yr), Ur = v(() => {
3335
- const [t, o] = m.useState(!1), n = G(), [r, { width: s }] = St(), { finstrong: i } = S(), { isCopyLoaded: l, isInitialized: c } = q(), { healthScore: _, healthScoreChange: d } = F(), h = n.palette.mode === "dark", u = He(_?.health_score, i);
3335
+ const [t, o] = m.useState(!1), n = G(), [r, { width: s }] = St(), { finstrong: i } = S(), { isCopyLoaded: l, isInitialized: c } = U(), { healthScore: _, healthScoreChange: d } = F(), h = n.palette.mode === "dark", u = He(_?.health_score, i);
3336
3336
  return !l || !c ? /* @__PURE__ */ e(te, {}) : /* @__PURE__ */ a(V, { ref: r, sx: { p: 16, display: "flex", flexDirection: "column", gap: 8 }, children: [
3337
3337
  /* @__PURE__ */ e(
3338
3338
  vo,
@@ -3440,7 +3440,7 @@ const $o = ({ total: t }) => {
3440
3440
  loadMonthlySummaries: w,
3441
3441
  loadPeerScore: x,
3442
3442
  peerScore: D
3443
- } = d, { finstrong: C, connect: g } = S(), { isCopyLoaded: b, isInitialized: L } = q(), { loadRepeatingTransactions: B } = Ke(), { isMobile: U } = Ye(), T = G(), { userProfile: $ } = ee(), [z, pe] = m.useState(!1), [ve, Q] = m.useState(!1), [X, _e] = m.useState(!1), [H, he] = m.useState(!1);
3443
+ } = d, { finstrong: C, connect: g } = S(), { isCopyLoaded: b, isInitialized: L } = U(), { loadRepeatingTransactions: B } = Ke(), { isSmallMobile: Y } = Ye(), T = G(), { userProfile: $ } = ee(), [z, pe] = m.useState(!1), [ve, Q] = m.useState(!1), [X, _e] = m.useState(!1), [H, he] = m.useState(!1);
3444
3444
  if (wo({
3445
3445
  widgetName: "FinstrongWidget",
3446
3446
  isLoaded: z
@@ -3479,8 +3479,8 @@ const $o = ({ total: t }) => {
3479
3479
  flexDirection: { md: "row" },
3480
3480
  gap: 24,
3481
3481
  justifyContent: "center",
3482
- pt: U ? 24 : 16,
3483
- px: 24
3482
+ pt: Y ? 16 : 24,
3483
+ px: Y ? 16 : 48
3484
3484
  },
3485
3485
  children: [
3486
3486
  /* @__PURE__ */ a(p, { sx: { gap: 24, width: { md: 432 }, height: "100%" }, children: [
@@ -3494,22 +3494,27 @@ const $o = ({ total: t }) => {
3494
3494
  }
3495
3495
  )
3496
3496
  ] }),
3497
- /* @__PURE__ */ e(p, { sx: { maxWidth: 848, minWidth: 288, width: { md: 720 } }, children: /* @__PURE__ */ a(V, { sx: { height: "100%", p: 16 }, children: [
3498
- /* @__PURE__ */ a(p, { direction: "row", sx: { alignItems: "center", justifyContent: "space-between" }, children: [
3499
- /* @__PURE__ */ e(K, { children: C.key_indicators }),
3500
- /* @__PURE__ */ e(
3501
- P,
3502
- {
3503
- endIcon: /* @__PURE__ */ e(J, {}),
3504
- onClick: () => _e(!0),
3505
- sx: {
3506
- fontSize: 13
3507
- },
3508
- variant: "text",
3509
- children: C.whats_changed
3510
- }
3511
- )
3512
- ] }),
3497
+ /* @__PURE__ */ e(p, { children: /* @__PURE__ */ a(V, { sx: { height: "100%", p: 16 }, children: [
3498
+ /* @__PURE__ */ a(
3499
+ p,
3500
+ {
3501
+ direction: "row",
3502
+ sx: { alignItems: "center", gap: 12, justifyContent: "space-between" },
3503
+ children: [
3504
+ /* @__PURE__ */ e(K, { children: C.key_indicators }),
3505
+ /* @__PURE__ */ e(
3506
+ P,
3507
+ {
3508
+ endIcon: /* @__PURE__ */ e(J, {}),
3509
+ onClick: () => _e(!0),
3510
+ size: "small",
3511
+ variant: "text",
3512
+ children: /* @__PURE__ */ e(I, { bold: !0, sx: { flexShrink: 0 }, variant: "body2", children: C.whats_changed })
3513
+ }
3514
+ )
3515
+ ]
3516
+ }
3517
+ ),
3513
3518
  h.length ? /* @__PURE__ */ e(
3514
3519
  Ve,
3515
3520
  {
@@ -39,8 +39,8 @@ import { g as we, A as ye } from "../ConnectDrawer-cXpqSnbj.mjs";
39
39
  import at from "@mui/material/Collapse";
40
40
  import rt from "@mui/material/ListItemIcon";
41
41
  import it from "@mui/material/Checkbox";
42
- import { u as st, A as lt } from "../AccountDetailsHeader-B21Y8_ED.mjs";
43
- import { A as ct } from "../AccountDetailsContent-ZWkttor7.mjs";
42
+ import { u as st, A as lt } from "../AccountDetailsHeader-D8wbZdBk.mjs";
43
+ import { A as ct } from "../AccountDetailsContent-D4oOgcoI.mjs";
44
44
  import { u as dt } from "../useAccountDisplayName-DSUFGGaF.mjs";
45
45
  import De from "@mui/material/TextField";
46
46
  import { M as mt, I as ut, O as _t } from "../OriginalBalanceAction-BCSXD8XS.mjs";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mx-cartographer/experiences",
3
- "version": "7.6.1",
3
+ "version": "7.6.3",
4
4
  "description": "Library containing experience widgets",
5
5
  "author": "MX",
6
6
  "license": "MIT",
@@ -1,87 +0,0 @@
1
- import { jsx as t, jsxs as i } from "react/jsx-runtime";
2
- import { observer as m } from "mobx-react-lite";
3
- import e from "@mui/material/Stack";
4
- import { H3 as _, InstitutionLogo as x, Text as a, H2 as T } from "@mxenabled/mxui";
5
- import d from "react";
6
- import { G as N, d as f, m as D, f as w, u as E } from "./hooks-ZMp65DFz.mjs";
7
- import { g as I } from "./AccountFields-D9Jil_7P.mjs";
8
- import G from "@mui/material/Card";
9
- import v from "@mui/material/CardContent";
10
- import O from "@mui/material/CardHeader";
11
- import { L as H } from "./Loader-DUaFpDGv.mjs";
12
- import { f as M, a as P } from "./Dialog-BlnUNqVo.mjs";
13
- import { I as L, P as U, S as j } from "./Account-CQ5cFk24.mjs";
14
- import { u as z } from "./useAccountDisplayName-DSUFGGaF.mjs";
15
- import { f as B } from "./NumberFormatting-DjTD0t3W.mjs";
16
- const p = () => {
17
- if (!d.useContext(N))
18
- throw new Error("useCategoryUiStore() must be used within the GlobalDataContext");
19
- return f().uiStore;
20
- }, Y = ({ sx: n, ChartComponent: s }) => {
21
- const { loadMonthlyCategoryTotals: c } = D(), { isInitialized: o } = w(), { selectedAccount: r } = p(), [l, u] = d.useState(!1);
22
- return d.useEffect(() => {
23
- o && c([r]).finally(() => {
24
- u(!0);
25
- });
26
- }, [o, r]), !o || !l ? /* @__PURE__ */ t(H, {}) : /* @__PURE__ */ i(
27
- G,
28
- {
29
- sx: {
30
- "& .MuiCardContent-root:last-child": {
31
- pb: 0
32
- },
33
- ...n
34
- },
35
- children: [
36
- /* @__PURE__ */ t(
37
- O,
38
- {
39
- sx: { pb: 0 },
40
- title: /* @__PURE__ */ t(_, { sx: { pb: 4 }, children: M(/* @__PURE__ */ new Date(), P.MONTH_LONG) })
41
- }
42
- ),
43
- /* @__PURE__ */ t(v, { sx: { p: 0 }, children: s ? /* @__PURE__ */ t(s, {}) : null })
44
- ]
45
- }
46
- );
47
- }, k = m(Y), R = ({
48
- customDetailsChart: n,
49
- ChartComponent: s
50
- }) => {
51
- const { institutions: c } = f(), { selectedAccount: o } = p(), { accounts: r } = E(), { firstSubtitle: l, firstValue: u, hasAvailableBalance: C, secondSubtitle: h, secondValue: S } = I(o, r), b = c.find(
52
- (y) => y.guid === o?.institution_guid
53
- ), A = [
54
- ...L,
55
- ...U,
56
- ...j
57
- ].includes(o.account_type), g = z(o);
58
- return /* @__PURE__ */ i(e, { bgcolor: "background.default", p: 24, children: [
59
- /* @__PURE__ */ i(e, { gap: 12, children: [
60
- /* @__PURE__ */ t(
61
- x,
62
- {
63
- alt: r.institution_logo_alt,
64
- institutionGuid: o.institution_guid || "",
65
- size: 64
66
- }
67
- ),
68
- /* @__PURE__ */ t(a, { variant: "Small", children: b?.name })
69
- ] }),
70
- /* @__PURE__ */ i(e, { gap: 8, mb: 24, mt: 4, children: [
71
- /* @__PURE__ */ t(T, { children: g }),
72
- /* @__PURE__ */ i(e, { direction: "row", justifyContent: "space-between", children: [
73
- /* @__PURE__ */ t(a, { bold: C, variant: "Body", children: l }),
74
- /* @__PURE__ */ t(a, { bold: !0, variant: "Body", children: B(u, "0,0.00") })
75
- ] }),
76
- /* @__PURE__ */ i(e, { direction: "row", justifyContent: "space-between", children: [
77
- /* @__PURE__ */ t(a, { variant: "Small", children: h }),
78
- /* @__PURE__ */ t(a, { variant: "Small", children: S })
79
- ] })
80
- ] }),
81
- A && /* @__PURE__ */ t(e, { children: n || /* @__PURE__ */ t(k, { ChartComponent: s }) })
82
- ] });
83
- }, rt = m(R);
84
- export {
85
- rt as A,
86
- p as u
87
- };