@mx-cartographer/experiences 9.0.7 → 9.0.8-alpha.al0

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,11 +1,17 @@
1
- ## [9.0.6] - 05-22-2026
1
+ ## [9.0.8] - 05-26-2026
2
+
3
+ - **UPDATED** - Theming utils for custom theming via mxui2
4
+
5
+ ## [9.0.7] - 05-22-2026
2
6
 
3
7
  - **UPDATED** - ADD the html_in_description_cta field to the ClientConfigurableCta
4
8
 
5
- ## [9.0.5.1] - 05-20-2026
9
+ ## [9.0.6] - 05-20-2026
10
+
6
11
  - **UPDATED** - Add aria-hidden="true" to the main image in the WeekendNoSpendDays insight
7
12
 
8
13
  ## [9.0.5] - 05-20-2026
14
+
9
15
  - **UPDATED** - Hide MarketingHub Offer call to action button when call_to_action content is blank
10
16
 
11
17
  ## [9.0.4] - 05-19-2026
@@ -1,108 +1,108 @@
1
- import { l as Y } from "../UserStore-DzWku3t0.mjs";
2
- import { b as $, a as H } from "../Localization-DnoVyBNK.mjs";
3
- import { f as j, b as V, a as K, c as Z, g as J, d as X } from "../NumberFormatting--XMeeBfr.mjs";
4
- import { C as rr, a as er, b as or } from "../CurrencyDialog-DumQCTPO.mjs";
5
- import { C as ar } from "../CurrencyInput-DaGEQaLW.mjs";
6
- import { D as nr, S as ir } from "../Select-CSpkK5cR.mjs";
7
- import { D as lr, W as mr, u as dr } from "../WidgetContainer-D-LzIKFb.mjs";
8
- import { D as fr } from "../Dialog-Bvd2n8hz.mjs";
9
- import { D as yr } from "../Donut-SzzfZDHF.mjs";
10
- import { D as xr } from "../Drawer-BXqqBMxg.mjs";
11
- import { E as hr } from "../ErrorBoundary-CsdOcnJ9.mjs";
12
- import { I as Cr } from "../IconBacking-DgT8DCeh.mjs";
13
- import { I as vr } from "../InformationTooltip-4su8bn1e.mjs";
14
- import { L as br } from "../Loader-CxeBwuPG.mjs";
15
- import { M as Dr } from "../MicroWidgetContainer-B2NnKBgW.mjs";
16
- import { M as Ir } from "../MiniWidgetContainer-Bmv_WeUd.mjs";
17
- import { jsxs as g, jsx as y } from "react/jsx-runtime";
18
- import { css as C } from "@mxenabled/cssinjs";
19
- import { D as _, a as v } from "../SingleSegmentDonut-7Uy6VEld.mjs";
20
- import { S as Mr } from "../SingleSegmentDonut-7Uy6VEld.mjs";
21
- import { R as wr } from "../ResponsiveButton-CC9F_Ezk.mjs";
22
- import { S as Lr } from "../SelectionBox-B4xELRgp.mjs";
23
- import { S as Ur } from "../StatusBar-CPfSXe80.mjs";
24
- import { I as Br, P as Rr, S as qr, T as Yr } from "../TabContentContainer-B0eYJP5p.mjs";
25
- import { A as $r } from "../Analytics-WeZYytR0.mjs";
26
- import { C as Qr } from "../ConnectCard-Dwfgv24k.mjs";
27
- import { C as Vr } from "../ConnectDrawer-DytyIhaF.mjs";
28
- import { C as Zr } from "../CurrencyText-CCbE6MmF.mjs";
29
- import { E as Xr } from "../EmptyState-CJUDc3kD.mjs";
30
- import { E as re } from "../Error-Dtw6yxkf.mjs";
31
- import { G as oe } from "../GlobalAccountFilter-CYqzqmAd.mjs";
32
- import { G as ae, m as se, n as ne, W as ie, c as ue, i as le, o as me, p as de, l as ce, q as fe, r as pe, f as ye, s as ge, u as xe, e as Ee, a as he, k as Se, t as Ce, v as _e, w as ve, b as ke, x as be, y as Oe, z as De, h as Te, A as Ie, g as Ae, B as Me, C as Pe, D as we } from "../hooks-97sNJ_lf.mjs";
33
- import { L as Le } from "../ListItemAction-BqUCLj_w.mjs";
34
- import { L as Ue } from "../ListItemRow-kH1rn8Xu.mjs";
35
- import { L as Be } from "../ListItemWrapper-BHIbqx7E.mjs";
36
- import { S as qe } from "../SearchBox-Cpgu_gdO.mjs";
37
- import { S as Fe, T as $e } from "../Sizes-DISGrlUg.mjs";
38
- import { T as Qe, a as je } from "../ToggleListItem-Dl1lXNwj.mjs";
39
- import { a as Ke, u as Ze, b as Je } from "../Analytics-CkYXKvco.mjs";
40
- import { alpha as k, darken as x, lighten as E } from "@mui/material";
41
- import { u as ze } from "../useAccountDisplayName-BsiXA0qf.mjs";
42
- import { u as eo } from "../useInsightsEnabled-D5Sdm0TJ.mjs";
43
- import { useRef as b, useEffect as O } from "react";
44
- import { u as to } from "../useScreenSize-mWpmnh5w.mjs";
45
- import { u as so } from "../useWidgetLoadTimer-B0tB-yzL.mjs";
46
- var i = /* @__PURE__ */ ((r) => (r[r.Unknown = 0] = "Unknown", r[r.EveryWeek = 1] = "EveryWeek", r[r.EveryOtherWeek = 2] = "EveryOtherWeek", r[r.EveryMonth = 3] = "EveryMonth", r[r.EveryOtherMonth = 4] = "EveryOtherMonth", r[r.EveryQuarter = 5] = "EveryQuarter", r[r.EveryOtherQuarter = 6] = "EveryOtherQuarter", r[r.EveryYear = 7] = "EveryYear", r))(i || {});
47
- const N = (r) => {
48
- const o = b(null);
49
- return O(() => {
1
+ import { l as V } from "../UserStore-DzWku3t0.mjs";
2
+ import { b as Z, a as z } from "../Localization-DnoVyBNK.mjs";
3
+ import { f as X, b as rr, a as or, c as er, g as tr, d as ar } from "../NumberFormatting--XMeeBfr.mjs";
4
+ import { C as nr, a as ir, b as ur } from "../CurrencyDialog-DumQCTPO.mjs";
5
+ import { C as lr } from "../CurrencyInput-DaGEQaLW.mjs";
6
+ import { D as mr, S as pr } from "../Select-CSpkK5cR.mjs";
7
+ import { D as gr, W as yr, u as _r } from "../WidgetContainer-D-LzIKFb.mjs";
8
+ import { D as xr } from "../Dialog-Bvd2n8hz.mjs";
9
+ import { D as Cr } from "../Donut-SzzfZDHF.mjs";
10
+ import { D as br } from "../Drawer-BXqqBMxg.mjs";
11
+ import { E as Sr } from "../ErrorBoundary-CsdOcnJ9.mjs";
12
+ import { I as Dr } from "../IconBacking-DgT8DCeh.mjs";
13
+ import { I as Ir } from "../InformationTooltip-4su8bn1e.mjs";
14
+ import { L as Nr } from "../Loader-CxeBwuPG.mjs";
15
+ import { M as Mr } from "../MicroWidgetContainer-B2NnKBgW.mjs";
16
+ import { M as Pr } from "../MiniWidgetContainer-Bmv_WeUd.mjs";
17
+ import { jsxs as h, jsx as _ } from "react/jsx-runtime";
18
+ import { css as v } from "@mxenabled/cssinjs";
19
+ import { D as b, a as O } from "../SingleSegmentDonut-7Uy6VEld.mjs";
20
+ import { S as Gr } from "../SingleSegmentDonut-7Uy6VEld.mjs";
21
+ import { R as Ur } from "../ResponsiveButton-CC9F_Ezk.mjs";
22
+ import { S as Br } from "../SelectionBox-B4xELRgp.mjs";
23
+ import { S as Yr } from "../StatusBar-CPfSXe80.mjs";
24
+ import { I as Hr, P as jr, S as Qr, T as Vr } from "../TabContentContainer-B0eYJP5p.mjs";
25
+ import { A as Zr } from "../Analytics-WeZYytR0.mjs";
26
+ import { C as Jr } from "../ConnectCard-Dwfgv24k.mjs";
27
+ import { C as ro } from "../ConnectDrawer-DytyIhaF.mjs";
28
+ import { C as eo } from "../CurrencyText-CCbE6MmF.mjs";
29
+ import { E as ao } from "../EmptyState-CJUDc3kD.mjs";
30
+ import { E as no } from "../Error-Dtw6yxkf.mjs";
31
+ import { G as uo } from "../GlobalAccountFilter-CYqzqmAd.mjs";
32
+ import { G as lo, m as mo, n as po, W as fo, c as go, i as yo, o as _o, p as ho, l as xo, q as Eo, r as Co, f as vo, s as bo, u as Oo, e as So, a as ko, k as Do, t as To, v as Io, w as Ao, b as No, x as wo, y as Mo, z as Lo, h as Po, A as Wo, g as Go, B as Ro, C as Uo, D as Fo } from "../hooks-97sNJ_lf.mjs";
33
+ import { L as qo } from "../ListItemAction-BqUCLj_w.mjs";
34
+ import { L as $o } from "../ListItemRow-kH1rn8Xu.mjs";
35
+ import { L as jo } from "../ListItemWrapper-BHIbqx7E.mjs";
36
+ import { S as Vo } from "../SearchBox-Cpgu_gdO.mjs";
37
+ import { S as Zo, T as zo } from "../Sizes-DISGrlUg.mjs";
38
+ import { T as Xo, a as re } from "../ToggleListItem-Dl1lXNwj.mjs";
39
+ import { a as ee, u as te, b as ae } from "../Analytics-CkYXKvco.mjs";
40
+ import { alpha as S, darken as k, lighten as D } from "@mui/material";
41
+ import { u as ne } from "../useAccountDisplayName-BsiXA0qf.mjs";
42
+ import { u as ue } from "../useInsightsEnabled-D5Sdm0TJ.mjs";
43
+ import { useRef as T, useEffect as I } from "react";
44
+ import { u as le } from "../useScreenSize-mWpmnh5w.mjs";
45
+ import { u as me } from "../useWidgetLoadTimer-B0tB-yzL.mjs";
46
+ var d = /* @__PURE__ */ ((r) => (r[r.Unknown = 0] = "Unknown", r[r.EveryWeek = 1] = "EveryWeek", r[r.EveryOtherWeek = 2] = "EveryOtherWeek", r[r.EveryMonth = 3] = "EveryMonth", r[r.EveryOtherMonth = 4] = "EveryOtherMonth", r[r.EveryQuarter = 5] = "EveryQuarter", r[r.EveryOtherQuarter = 6] = "EveryOtherQuarter", r[r.EveryYear = 7] = "EveryYear", r))(d || {});
47
+ const F = (r) => {
48
+ const o = T(null);
49
+ return I(() => {
50
50
  o.current = r;
51
51
  }, [r]), o.current;
52
- }, L = [
53
- { id: i.Unknown, copy: "frequency_unknown" },
54
- { id: i.EveryWeek, copy: "frequency_every_week" },
55
- { id: i.EveryOtherWeek, copy: "frequency_every_other_week" },
56
- { id: i.EveryMonth, copy: "frequency_every_month" },
57
- { id: i.EveryOtherMonth, copy: "frequency_every_other_month" },
58
- { id: i.EveryQuarter, copy: "frequency_every_quarter" },
59
- { id: i.EveryOtherQuarter, copy: "frequency_every_other_quarter" },
60
- { id: i.EveryYear, copy: "frequency_every_year" }
61
- ], W = {
52
+ }, B = [
53
+ { id: d.Unknown, copy: "frequency_unknown" },
54
+ { id: d.EveryWeek, copy: "frequency_every_week" },
55
+ { id: d.EveryOtherWeek, copy: "frequency_every_other_week" },
56
+ { id: d.EveryMonth, copy: "frequency_every_month" },
57
+ { id: d.EveryOtherMonth, copy: "frequency_every_other_month" },
58
+ { id: d.EveryQuarter, copy: "frequency_every_quarter" },
59
+ { id: d.EveryOtherQuarter, copy: "frequency_every_other_quarter" },
60
+ { id: d.EveryYear, copy: "frequency_every_year" }
61
+ ], q = {
62
62
  ERROR: "ERROR",
63
63
  LOADING: "LOADING",
64
64
  SUCCESS: "SUCCESS"
65
- }, U = ({
65
+ }, Y = ({
66
66
  hasGap: r = !1,
67
67
  segments: o,
68
- size: n = _,
69
- strokeWidth: u = v,
70
- children: m
68
+ size: a = b,
69
+ strokeWidth: m = O,
70
+ children: s
71
71
  }) => {
72
- const d = D(n), t = (n - u) / 2, a = n / 2;
73
- let c = -90 - (r ? 1 : 0), s = 0;
74
- return /* @__PURE__ */ g("div", { className: `mx-cmn-multi-segment-donut ${d}`, children: [
75
- /* @__PURE__ */ g("svg", { height: n, width: n, children: [
76
- /* @__PURE__ */ y(
72
+ const c = A(a), i = (a - m) / 2, e = a / 2;
73
+ let p = -90 - (r ? 1 : 0), l = 0;
74
+ return /* @__PURE__ */ h("div", { className: `mx-cmn-multi-segment-donut ${c}`, children: [
75
+ /* @__PURE__ */ h("svg", { height: a, width: a, children: [
76
+ /* @__PURE__ */ _(
77
77
  "circle",
78
78
  {
79
- cx: a,
80
- cy: a,
79
+ cx: e,
80
+ cy: e,
81
81
  fill: "none",
82
- r: t,
82
+ r: i,
83
83
  stroke: "#E4E8EE",
84
- strokeWidth: u
84
+ strokeWidth: m
85
85
  }
86
86
  ),
87
- o.map((l, f) => (c += 360 * s + (r ? 1 : 0), s = (l.percent - (r ? 0.3 : 0)) / 100, /* @__PURE__ */ y(
87
+ o.map((n, t) => (p += 360 * l + (r ? 1 : 0), l = (n.percent - (r ? 0.3 : 0)) / 100, /* @__PURE__ */ _(
88
88
  "circle",
89
89
  {
90
- cx: a,
91
- cy: a,
90
+ cx: e,
91
+ cy: e,
92
92
  fill: "none",
93
- r: t,
94
- stroke: l.color,
95
- strokeDasharray: 2 * Math.PI * t,
96
- strokeDashoffset: 2 * Math.PI * t * (1 - s),
97
- strokeWidth: u,
98
- transform: `rotate(${c}, ${a}, ${a})`
93
+ r: i,
94
+ stroke: n.color,
95
+ strokeDasharray: 2 * Math.PI * i,
96
+ strokeDashoffset: 2 * Math.PI * i * (1 - l),
97
+ strokeWidth: m,
98
+ transform: `rotate(${p}, ${e}, ${e})`
99
99
  },
100
- f
100
+ t
101
101
  )))
102
102
  ] }),
103
- /* @__PURE__ */ y("div", { className: "mx-cmn-multi-segment-donut-children", children: m })
103
+ /* @__PURE__ */ _("div", { className: "mx-cmn-multi-segment-donut-children", children: s })
104
104
  ] });
105
- }, D = (r) => C({
105
+ }, A = (r) => v({
106
106
  height: r,
107
107
  marginTop: "-8px",
108
108
  position: "relative",
@@ -114,7 +114,7 @@ const N = (r) => {
114
114
  top: "50%",
115
115
  transform: "translate(-50%, -50%)"
116
116
  }
117
- }), T = [
117
+ }), N = [
118
118
  "fontFamily",
119
119
  "h1",
120
120
  "h2",
@@ -126,186 +126,210 @@ const N = (r) => {
126
126
  "subtitle1",
127
127
  "subtitle2",
128
128
  "tiny"
129
- ], h = [
129
+ ], w = [
130
130
  { key: "primary", light: "primary_color", dark: "primary_color_dark" },
131
131
  { key: "secondary", light: "neutral_color", dark: "neutral_color_dark" },
132
132
  { key: "error", light: "error_color", dark: "error_color_dark" },
133
133
  { key: "warning", light: "warning_color", dark: "warning_color_dark" },
134
134
  { key: "info", light: "info_color", dark: "info_color_dark" },
135
135
  { key: "success", light: "success_color", dark: "success_color_dark" }
136
- ], G = (r, o) => {
137
- const n = o === "dark", u = {};
138
- for (const { key: m, light: d, dark: t } of h) {
139
- const a = r?.[n ? t : d];
140
- a && (u[m] = a);
136
+ ], M = [
137
+ { source: "primary_color", target: "primary" },
138
+ { source: "secondary_color", target: "secondary" },
139
+ { source: "error_color", target: "error" },
140
+ { source: "warning_color", target: "warning" },
141
+ { source: "info_color", target: "info" },
142
+ { source: "success_color", target: "success" },
143
+ { source: "neutral_color", target: "grey" }
144
+ ], L = [
145
+ { source: "background_color", target: "default" },
146
+ { source: "paper_color", target: "paper" }
147
+ ], $ = (r, o, a) => {
148
+ const m = (t) => r?.[t] || o?.[t], s = {}, c = {};
149
+ for (const { source: t, target: g } of M) {
150
+ const f = m(t);
151
+ f && (c[g] = f);
141
152
  }
142
- return u;
143
- }, B = (r, o, n) => {
144
- const u = r.palette.mode === "dark", m = (n?.master?.style?.font_name || o?.system_font) ?? r.typography.fontFamily, d = (e, p) => e ? {
145
- lighter: E(e, 0.5),
146
- light: E(e, 0.25),
147
- main: e,
148
- dark: x(e, 0.25),
149
- darker: x(e, 0.5)
150
- } : p, t = Object.fromEntries(
151
- h.map(({ key: e, light: p, dark: S }) => [
152
- e,
153
- d(
154
- o?.[u ? S : p],
155
- r.palette[e]
156
- )
157
- ])
158
- ), a = Object.fromEntries(
159
- T.map((e) => [
160
- e,
161
- e === "fontFamily" ? m : { fontFamily: m }
153
+ const i = {};
154
+ for (const { source: t, target: g } of L) {
155
+ const f = m(t);
156
+ f && (i[g] = { [a]: f });
157
+ }
158
+ Object.keys(i).length > 0 && (c.background = i), Object.keys(c).length > 0 && (s.paletteOptions = c);
159
+ const e = r?.use_glass ?? o?.use_glass;
160
+ e !== void 0 && (s.styleOptions = { useGlass: e });
161
+ const p = o?.body_font_name, l = r?.header_font_name || o?.header_font_name;
162
+ (p || l) && (s.typographyOptions = {}, p && (s.typographyOptions.fontFamily = p), l && (s.typographyOptions.headerFontFamily = l));
163
+ const n = r?.corner_radius || o?.card_corner_radius;
164
+ return n !== void 0 && (s.shapeOptions = { borderRadius: n }), s;
165
+ }, H = (r, o, a, m) => {
166
+ const s = r.palette.mode === "dark", c = (a?.font_name || m?.master?.style?.font_name || o?.system_font) ?? r.typography.fontFamily, i = (u, y) => u ? {
167
+ light: D(u, 0.25),
168
+ main: u,
169
+ dark: k(u, 0.25)
170
+ } : y, e = Object.fromEntries(
171
+ w.map(({ key: u, light: y, dark: x }) => {
172
+ const E = o?.[s ? x : y], C = s ? void 0 : a?.[y];
173
+ return [u, i(C || E, r.palette[u])];
174
+ })
175
+ ), p = Object.fromEntries(
176
+ N.map((u) => [
177
+ u,
178
+ u === "fontFamily" ? c : { fontFamily: c }
162
179
  ])
163
- ), c = {
180
+ ), l = {
164
181
  MuiTabs: {
165
182
  styleOverrides: {
166
- indicator: { backgroundColor: t.primary.light }
183
+ indicator: { backgroundColor: e.primary.light }
167
184
  }
168
185
  },
169
186
  MuiPickersCalendarHeader: {
170
187
  styleOverrides: {
171
188
  switchViewButton: {
172
- color: t.primary.lighter,
173
- "&:hover": { backgroundColor: k(t.primary.light, 0.1) }
189
+ color: e.primary.light,
190
+ "&:hover": { backgroundColor: S(e.primary.light, 0.1) }
174
191
  }
175
192
  }
176
193
  }
177
- }, s = o?.button_corner_radius, l = o?.card_corner_radius, f = {
178
- ...c,
179
- ...s && {
194
+ }, n = o?.button_corner_radius, t = a?.corner_radius || o?.card_corner_radius, g = a?.use_glass ?? o?.use_glass, f = {
195
+ ...l,
196
+ ...n && {
180
197
  MuiButton: {
181
198
  styleOverrides: {
182
- root: { borderRadius: `${s}px`, textTransform: "none" }
199
+ root: { borderRadius: `${n}px`, textTransform: "none" }
183
200
  }
184
201
  },
185
202
  MuiIconButton: {
186
203
  styleOverrides: {
187
204
  root: {
188
- borderRadius: `${s}px`,
189
- minWidth: s,
190
- minHeight: s
205
+ borderRadius: `${n}px`,
206
+ minWidth: n,
207
+ minHeight: n
191
208
  }
192
209
  }
193
210
  },
194
211
  MuiToggleButton: {
195
212
  styleOverrides: {
196
- root: { borderRadius: `${s}px`, textTransform: "none" }
213
+ root: { borderRadius: `${n}px`, textTransform: "none" }
197
214
  }
198
215
  }
199
216
  },
200
- ...l && {
217
+ ...t && {
201
218
  MuiCard: {
202
- styleOverrides: { root: { borderRadius: `${l}px` } }
219
+ styleOverrides: { root: { borderRadius: `${t}px` } }
203
220
  }
204
221
  },
205
- ...l && {
222
+ ...(t || g) && {
206
223
  MuiPaper: {
207
224
  styleOverrides: {
208
- rounded: { borderRadius: `${l}px` }
225
+ ...t && { rounded: { borderRadius: `${t}px` } },
226
+ ...g && {
227
+ root: {
228
+ backgroundColor: "rgba(255, 255, 255, 0.1)",
229
+ backdropFilter: "blur(10px)",
230
+ WebkitBackdropFilter: "blur(10px)"
231
+ }
232
+ }
209
233
  }
210
234
  }
211
235
  }
212
236
  };
213
- return { typography: a, palette: t, components: f };
237
+ return { typography: p, palette: e, components: f };
214
238
  };
215
239
  export {
216
- $r as ANALYTICS_EVENTS,
217
- rr as Calendar,
218
- er as CalendarSelectionTypes,
219
- Qr as ConnectCard,
220
- Vr as ConnectDrawer,
221
- or as CurrencyDialog,
222
- ar as CurrencyInput,
223
- Zr as CurrencyText,
224
- _ as DEFAULT_DONUT_SIZE,
225
- v as DEFAULT_STROKE_WIDTH,
226
- nr as DataRow,
227
- lr as DateRangeSelector,
228
- fr as Dialog,
229
- yr as Donut,
230
- xr as Drawer,
231
- Xr as EmptyState,
232
- re as Error,
233
- hr as ErrorBoundary,
234
- oe as GlobalAccountFilter,
235
- ae as GlobalDataContext,
236
- se as GlobalDataProvider,
237
- Y as GlobalStore,
238
- Br as INCOME_ACCOUNT_TYPES,
239
- Cr as IconBacking,
240
- vr as InformationTooltip,
241
- W as LOADING_STATUS,
242
- Le as ListItemAction,
243
- Ue as ListItemRow,
244
- Be as ListItemWrapper,
245
- br as Loader,
246
- Dr as MicroWidgetContainer,
247
- Ir as MiniWidgetContainer,
248
- U as MultiSegmentDonut,
249
- Rr as PAYMENT_ACCOUNT_TYPES,
250
- L as RECURRENCE_COPY,
251
- wr as ResponsiveButton,
252
- qr as SPENDING_ACCOUNT_TYPES,
253
- qe as SearchBox,
254
- ir as Select,
255
- Lr as SelectionBox,
256
- Mr as SingleSegmentDonut,
257
- Fe as Sizes,
258
- Ur as StatusBar,
259
- $e as TOUCH_TARGET,
260
- Yr as TabContentContainer,
261
- Qe as ToggleButtonListItem,
262
- je as ToggleListItem,
263
- mr as WidgetContainer,
264
- ne as WidgetContainerContext,
265
- ie as WidgetContainerProvider,
266
- Ke as analyticsSession,
267
- $ as buildDynamicCopy,
268
- H as buildPluralCopy,
269
- j as formatCurrency,
270
- V as formatOrdinal,
271
- K as formatPercentage,
272
- Z as generateEqualIntervals,
273
- G as getClientPaletteOptions,
274
- B as getClientTheme,
275
- J as getCurrencyCodes,
276
- X as getPluralRules,
277
- ze as useAccountDisplayName,
278
- ue as useAccountStore,
279
- le as useAppConfig,
280
- me as useBudgetsStore,
281
- de as useCashflowStore,
282
- ce as useCategoryStore,
283
- Ze as useCombineEvents,
284
- Je as useCombinePageviews,
285
- fe as useDebtStore,
286
- pe as useError,
287
- ye as useEvent,
288
- ge as useFinstrongStore,
289
- xe as useGlobalCopyStore,
290
- Ee as useGlobalStore,
291
- he as useGlobalUiStore,
292
- Se as useGoalStore,
293
- Ce as useHelpStore,
294
- _e as useHoldingStore,
295
- eo as useInsightsEnabled,
296
- ve as useLoad,
297
- ke as useMerchantStore,
298
- be as useNetWorthStore,
299
- Oe as useNotificationStore,
300
- De as usePageView,
301
- N as usePrevious,
302
- Te as useRecurringTransactionsStore,
303
- to as useScreenSize,
304
- Ie as useSettingsStore,
305
- Ae as useTransactionStore,
306
- Me as useTrendsStore,
307
- Pe as useUserStore,
308
- we as useWidgetContainerProvider,
309
- dr as useWidgetHeaderStyles,
310
- so as useWidgetLoadTimer
240
+ Zr as ANALYTICS_EVENTS,
241
+ nr as Calendar,
242
+ ir as CalendarSelectionTypes,
243
+ Jr as ConnectCard,
244
+ ro as ConnectDrawer,
245
+ ur as CurrencyDialog,
246
+ lr as CurrencyInput,
247
+ eo as CurrencyText,
248
+ b as DEFAULT_DONUT_SIZE,
249
+ O as DEFAULT_STROKE_WIDTH,
250
+ mr as DataRow,
251
+ gr as DateRangeSelector,
252
+ xr as Dialog,
253
+ Cr as Donut,
254
+ br as Drawer,
255
+ ao as EmptyState,
256
+ no as Error,
257
+ Sr as ErrorBoundary,
258
+ uo as GlobalAccountFilter,
259
+ lo as GlobalDataContext,
260
+ mo as GlobalDataProvider,
261
+ V as GlobalStore,
262
+ Hr as INCOME_ACCOUNT_TYPES,
263
+ Dr as IconBacking,
264
+ Ir as InformationTooltip,
265
+ q as LOADING_STATUS,
266
+ qo as ListItemAction,
267
+ $o as ListItemRow,
268
+ jo as ListItemWrapper,
269
+ Nr as Loader,
270
+ Mr as MicroWidgetContainer,
271
+ Pr as MiniWidgetContainer,
272
+ Y as MultiSegmentDonut,
273
+ jr as PAYMENT_ACCOUNT_TYPES,
274
+ B as RECURRENCE_COPY,
275
+ Ur as ResponsiveButton,
276
+ Qr as SPENDING_ACCOUNT_TYPES,
277
+ Vo as SearchBox,
278
+ pr as Select,
279
+ Br as SelectionBox,
280
+ Gr as SingleSegmentDonut,
281
+ Zo as Sizes,
282
+ Yr as StatusBar,
283
+ zo as TOUCH_TARGET,
284
+ Vr as TabContentContainer,
285
+ Xo as ToggleButtonListItem,
286
+ re as ToggleListItem,
287
+ yr as WidgetContainer,
288
+ po as WidgetContainerContext,
289
+ fo as WidgetContainerProvider,
290
+ ee as analyticsSession,
291
+ Z as buildDynamicCopy,
292
+ z as buildPluralCopy,
293
+ X as formatCurrency,
294
+ rr as formatOrdinal,
295
+ or as formatPercentage,
296
+ er as generateEqualIntervals,
297
+ $ as getClientPaletteOptions,
298
+ H as getClientTheme,
299
+ tr as getCurrencyCodes,
300
+ ar as getPluralRules,
301
+ ne as useAccountDisplayName,
302
+ go as useAccountStore,
303
+ yo as useAppConfig,
304
+ _o as useBudgetsStore,
305
+ ho as useCashflowStore,
306
+ xo as useCategoryStore,
307
+ te as useCombineEvents,
308
+ ae as useCombinePageviews,
309
+ Eo as useDebtStore,
310
+ Co as useError,
311
+ vo as useEvent,
312
+ bo as useFinstrongStore,
313
+ Oo as useGlobalCopyStore,
314
+ So as useGlobalStore,
315
+ ko as useGlobalUiStore,
316
+ Do as useGoalStore,
317
+ To as useHelpStore,
318
+ Io as useHoldingStore,
319
+ ue as useInsightsEnabled,
320
+ Ao as useLoad,
321
+ No as useMerchantStore,
322
+ wo as useNetWorthStore,
323
+ Mo as useNotificationStore,
324
+ Lo as usePageView,
325
+ F as usePrevious,
326
+ Po as useRecurringTransactionsStore,
327
+ le as useScreenSize,
328
+ Wo as useSettingsStore,
329
+ Go as useTransactionStore,
330
+ Ro as useTrendsStore,
331
+ Uo as useUserStore,
332
+ Fo as useWidgetContainerProvider,
333
+ _r as useWidgetHeaderStyles,
334
+ me as useWidgetLoadTimer
311
335
  };
@@ -1,8 +1,8 @@
1
1
  import { PaletteColor, PaletteMode, Theme } from '@mui/material';
2
- import { ClientStyleProfile } from '../../core';
3
- import { ClientConfig } from '../../core/types/AppData';
4
- export declare const getClientPaletteOptions: (clientStyleProfile: ClientStyleProfile, mode: PaletteMode) => Record<string, string>;
5
- export declare const getClientTheme: (theme: Theme, clientStyleProfile: ClientStyleProfile, clientConfig?: ClientConfig) => {
2
+ import { Customizations } from '@mxenabled/mxui';
3
+ import { ClientStyleProfile, ClientConfig, StyleConfig } from '../../core';
4
+ export declare const getClientPaletteOptions: (clientStyleConfig: StyleConfig | undefined, clientStyleProfile: ClientStyleProfile, mode: PaletteMode) => Customizations;
5
+ export declare const getClientTheme: (theme: Theme, clientStyleProfile: ClientStyleProfile, clientStyleConfig?: StyleConfig, clientConfig?: ClientConfig) => {
6
6
  typography: {
7
7
  [k: string]: string | {
8
8
  fontFamily: string | undefined;
@@ -10,19 +10,22 @@ export declare const getClientTheme: (theme: Theme, clientStyleProfile: ClientSt
10
10
  };
11
11
  palette: {
12
12
  [k: string]: PaletteColor | {
13
- lighter: string;
14
13
  light: string;
15
14
  main: string;
16
15
  dark: string;
17
- darker: string;
18
16
  };
19
17
  };
20
18
  components: {
21
19
  MuiPaper?: {
22
20
  styleOverrides: {
23
- rounded: {
21
+ root?: {
22
+ backgroundColor: string;
23
+ backdropFilter: string;
24
+ WebkitBackdropFilter: string;
25
+ } | undefined;
26
+ rounded?: {
24
27
  borderRadius: string;
25
- };
28
+ } | undefined;
26
29
  };
27
30
  } | undefined;
28
31
  MuiCard?: {
@@ -67,7 +70,7 @@ export declare const getClientTheme: (theme: Theme, clientStyleProfile: ClientSt
67
70
  MuiPickersCalendarHeader: {
68
71
  styleOverrides: {
69
72
  switchViewButton: {
70
- color: string | undefined;
73
+ color: string;
71
74
  '&:hover': {
72
75
  backgroundColor: string;
73
76
  };
@@ -48,7 +48,21 @@ export interface MasterConfig {
48
48
  ui_message_webview_url_scheme?: string;
49
49
  }
50
50
  export interface StyleConfig {
51
+ background_color?: string;
52
+ corner_radius?: number;
53
+ error_color?: string;
51
54
  font_name?: string;
55
+ header_font_name?: string;
56
+ info_color?: string;
57
+ neutral_color?: string;
58
+ paper_color?: string;
59
+ primary_color?: string;
60
+ secondary_color?: string;
61
+ success_color?: string;
62
+ use_font_url?: boolean;
63
+ use_glass?: boolean;
64
+ use_header_font_url?: boolean;
65
+ warning_color?: string;
52
66
  }
53
67
  export interface DeepLinkParams {
54
68
  account_guids?: string[];
@@ -96,23 +96,30 @@ export interface ClientInsightProfile {
96
96
  is_recurring_transactions_manager_enabled: boolean;
97
97
  }
98
98
  export interface ClientStyleProfile {
99
- primary_color?: string;
100
- primary_font_regular?: string;
101
- secondary_color?: string;
102
- neutral_color?: string;
103
- success_color?: string;
99
+ background_color?: string;
100
+ body_font_name?: string;
101
+ body_font_url?: string;
102
+ button_corner_radius?: number;
103
+ card_corner_radius?: number;
104
104
  error_color?: string;
105
- warning_color?: string;
105
+ error_color_dark?: string;
106
+ header_font_name?: string;
107
+ header_font_url?: string;
106
108
  info_color?: string;
109
+ info_color_dark?: string;
110
+ mode?: 'dark' | 'light' | 'browser';
111
+ neutral_color?: string;
112
+ neutral_color_dark?: string;
113
+ paper_color?: string;
114
+ primary_color?: string;
107
115
  primary_color_dark?: string;
116
+ primary_font_regular?: string;
117
+ secondary_color?: string;
108
118
  secondary_color_dark?: string;
109
- neutral_color_dark?: string;
119
+ success_color?: string;
110
120
  success_color_dark?: string;
111
- error_color_dark?: string;
112
- warning_color_dark?: string;
113
- info_color_dark?: string;
114
- mode?: 'dark' | 'light' | 'browser';
115
121
  system_font?: string;
116
- card_corner_radius?: number;
117
- button_corner_radius?: number;
122
+ use_glass?: boolean;
123
+ warning_color?: string;
124
+ warning_color_dark?: string;
118
125
  }
@@ -1,7 +1,7 @@
1
1
  export type { Account, DetailedAccount, Member, MonthlyAccountBalance } from './Account';
2
2
  export { AccountIcon, AccountIconVariants, AccountSubType, AccountType, AccountTypeName, ConnectionStatus, ConnectionStatusEnums, ErrorStatuses, MfaStatuses, NonConnectedStatuses, ProcessingStatuses, PropertyType, PropertyTypeName, StatusName, } from './Account';
3
3
  export type { AnalyticsEvent, AnalyticsPageview, BasicAnalyticsEvent, BasicAnalyticsPageview, AnalyticsSession, AnalyticEventFunction, AnalyticPageviewFunction, AnalyticsSessionInstance, } from './Analytics';
4
- export type { AppConfig, AppData, Banner, ClientConfig, Config, Options } from './AppData';
4
+ export type { AppConfig, AppData, Banner, ClientConfig, Config, Options, StyleConfig, } from './AppData';
5
5
  export type { Beat, DataSeries } from './Beat';
6
6
  export { UserVerification } from './Beat';
7
7
  export type { Budget, BudgetColors, DetailedBudget, MerchantBudget } from './Budget';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mx-cartographer/experiences",
3
- "version": "9.0.7",
3
+ "version": "9.0.8-alpha.al0",
4
4
  "description": "Library containing experience widgets",
5
5
  "author": "MX",
6
6
  "license": "MIT",
@@ -200,7 +200,7 @@
200
200
  "@mui/x-date-pickers-pro": "^7.29.4",
201
201
  "@mxenabled/cssinjs": "^0.6.0",
202
202
  "@mxenabled/mx-icons": "^2",
203
- "@mxenabled/mxui": "2.5.3",
203
+ "@mxenabled/mxui": "2.5.4-alpha.al0",
204
204
  "@mxenabled/web-widget-sdk": "^0.0.15",
205
205
  "@tanstack/react-virtual": "^3.13.24",
206
206
  "bowser": "^2.14.1",