@mx-cartographer/experiences 9.2.4-alpha.al4 → 9.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/{AccountDetailsDrawer-BcwBkxIE.mjs → AccountDetailsDrawer-utXjRHSW.mjs} +5 -5
  3. package/dist/{AccountDetailsDrawer-BcwBkxIE.mjs.map → AccountDetailsDrawer-utXjRHSW.mjs.map} +1 -1
  4. package/dist/{CategorySelectorDrawer-BIsncOhX.mjs → CategorySelectorDrawer-NJsFsKP1.mjs} +2 -2
  5. package/dist/{CategorySelectorDrawer-BIsncOhX.mjs.map → CategorySelectorDrawer-NJsFsKP1.mjs.map} +1 -1
  6. package/dist/{ConnectCard-BdxyIUkW.mjs → ConnectCard-D7uxoH5Y.mjs} +2 -2
  7. package/dist/{ConnectCard-BdxyIUkW.mjs.map → ConnectCard-D7uxoH5Y.mjs.map} +1 -1
  8. package/dist/{ConnectDrawer-CYP3sd5f.mjs → ConnectDrawer-CW4LA3H3.mjs} +2 -2
  9. package/dist/{ConnectDrawer-CYP3sd5f.mjs.map → ConnectDrawer-CW4LA3H3.mjs.map} +1 -1
  10. package/dist/{ConnectionsDrawer-Pjc0E6uI.mjs → ConnectionsDrawer-CZU9ku-k.mjs} +2 -2
  11. package/dist/{ConnectionsDrawer-Pjc0E6uI.mjs.map → ConnectionsDrawer-CZU9ku-k.mjs.map} +1 -1
  12. package/dist/{Drawer-DLUMdk6P.mjs → Drawer-DsnW2o0v.mjs} +41 -67
  13. package/dist/Drawer-DsnW2o0v.mjs.map +1 -0
  14. package/dist/{EmbeddedCard-DCR-ziFE.mjs → EmbeddedCard-CQEnrozC.mjs} +2 -2
  15. package/dist/{EmbeddedCard-DCR-ziFE.mjs.map → EmbeddedCard-CQEnrozC.mjs.map} +1 -1
  16. package/dist/{ExportCsvAction-C2Y4D7Kn.mjs → ExportCsvAction-B_8I-Le6.mjs} +2 -2
  17. package/dist/{ExportCsvAction-C2Y4D7Kn.mjs.map → ExportCsvAction-B_8I-Le6.mjs.map} +1 -1
  18. package/dist/GlobalAccountFilter-z4N1ElqC.mjs +208 -0
  19. package/dist/GlobalAccountFilter-z4N1ElqC.mjs.map +1 -0
  20. package/dist/{Help-CTmDMtG2.mjs → Help-D4sOpItq.mjs} +2 -2
  21. package/dist/{Help-CTmDMtG2.mjs.map → Help-D4sOpItq.mjs.map} +1 -1
  22. package/dist/{ManageIncome-CRSMKFWt.mjs → ManageIncome-Czs7daKV.mjs} +5 -5
  23. package/dist/{ManageIncome-CRSMKFWt.mjs.map → ManageIncome-Czs7daKV.mjs.map} +1 -1
  24. package/dist/{NotificationSettings-BXpzPNjH.mjs → NotificationSettings-CW7okUrk.mjs} +2 -2
  25. package/dist/{NotificationSettings-BXpzPNjH.mjs.map → NotificationSettings-CW7okUrk.mjs.map} +1 -1
  26. package/dist/{RecurringSettings-7zGNq-fh.mjs → RecurringSettings-CcS5b1xA.mjs} +2 -2
  27. package/dist/{RecurringSettings-7zGNq-fh.mjs.map → RecurringSettings-CcS5b1xA.mjs.map} +1 -1
  28. package/dist/{TransactionDetails-C5JAB8SL.mjs → TransactionDetails-Kmj8GUlD.mjs} +4 -4
  29. package/dist/{TransactionDetails-C5JAB8SL.mjs.map → TransactionDetails-Kmj8GUlD.mjs.map} +1 -1
  30. package/dist/{WidgetContainer-DKRs7nIV.mjs → WidgetContainer-DvKtBdhn.mjs} +3 -3
  31. package/dist/{WidgetContainer-DKRs7nIV.mjs.map → WidgetContainer-DvKtBdhn.mjs.map} +1 -1
  32. package/dist/accounts/index.es.js +5 -5
  33. package/dist/budgets/index.es.js +7 -7
  34. package/dist/cashflow/index.es.js +6 -6
  35. package/dist/categories/index.es.js +1 -1
  36. package/dist/common/index.es.js +5 -5
  37. package/dist/dashboard/index.es.js +2 -2
  38. package/dist/debts/index.es.js +3 -3
  39. package/dist/finstrong/index.es.js +7 -7
  40. package/dist/goals/index.es.js +3 -3
  41. package/dist/help/index.es.js +2 -2
  42. package/dist/insights/index.es.js +3 -3
  43. package/dist/investments/index.es.js +3 -3
  44. package/dist/networth/index.es.js +3 -3
  45. package/dist/notifications/index.es.js +2 -2
  46. package/dist/recurringtransactions/index.es.js +6 -6
  47. package/dist/settings/index.es.js +6 -6
  48. package/dist/spending/index.es.js +4 -4
  49. package/dist/transactions/index.es.js +9 -9
  50. package/dist/trends/index.es.js +6 -6
  51. package/package.json +1 -1
  52. package/dist/Drawer-DLUMdk6P.mjs.map +0 -1
  53. package/dist/GlobalAccountFilter-BhzR5Vb1.mjs +0 -230
  54. package/dist/GlobalAccountFilter-BhzR5Vb1.mjs.map +0 -1
@@ -15,8 +15,8 @@ import z from "@mui/material/Box";
15
15
  import Z from "@mui/material/Button";
16
16
  import I from "@mui/material/TextField";
17
17
  import { H3 as Y, P as M, Text as x, Icon as B } from "@mxenabled/mxui";
18
- import { V as xe, a as ve, N as J } from "../NotificationSettings-BXpzPNjH.mjs";
19
- import { A as Jt, B as Kt, I as Yt } from "../NotificationSettings-BXpzPNjH.mjs";
18
+ import { V as xe, a as ve, N as J } from "../NotificationSettings-CW7okUrk.mjs";
19
+ import { A as Jt, B as Kt, I as Yt } from "../NotificationSettings-CW7okUrk.mjs";
20
20
  import { u as k, i as G, A as E, C as Ce, a as ee, l as j } from "../hooks-97sNJ_lf.mjs";
21
21
  import { u as F } from "../useScreenSize-mWpmnh5w.mjs";
22
22
  import { D as $ } from "../Dialog-Bvd2n8hz.mjs";
@@ -33,16 +33,16 @@ import { L as ie } from "../Loader-CxeBwuPG.mjs";
33
33
  import Te from "@mui/material/List";
34
34
  import K from "@mui/material/Divider";
35
35
  import Ae from "@mui/material/ListSubheader";
36
- import { b as Ie, u as Ee } from "../CategorySelectorDrawer-BIsncOhX.mjs";
36
+ import { b as Ie, u as Ee } from "../CategorySelectorDrawer-NJsFsKP1.mjs";
37
37
  import Pe from "@mui/material/ListItem";
38
38
  import Re from "@mui/material/ListItemButton";
39
39
  import Ne from "@mui/material/ListItemIcon";
40
40
  import Me from "@mui/material/ListItemText";
41
41
  import { ChevronRight as Le, ChevronLeft as Be } from "@mxenabled/mx-icons";
42
- import { D as He } from "../Drawer-DLUMdk6P.mjs";
42
+ import { D as He } from "../Drawer-DsnW2o0v.mjs";
43
43
  import { u as ne } from "../useWidgetLoadTimer-B0tB-yzL.mjs";
44
- import { H as Oe } from "../Help-CTmDMtG2.mjs";
45
- import { W as q } from "../WidgetContainer-DKRs7nIV.mjs";
44
+ import { H as Oe } from "../Help-D4sOpItq.mjs";
45
+ import { W as q } from "../WidgetContainer-DvKtBdhn.mjs";
46
46
  const Fe = ({ availableWidth: t, handleOnLeavClick: r }) => {
47
47
  const i = L(), { common: o, settings: n } = k(), { isDesktop: u, isMobile: s, isSmallMobile: a, isTablet: l } = F(t), { config: b } = G(), { updateUser: _ } = E(), { user: d } = Ce(), [h, w] = m.useState({
48
48
  first_name: d.first_name,
@@ -19,19 +19,19 @@ import { startOfToday as J } from "date-fns/startOfToday";
19
19
  import St from "@mui/material/Button";
20
20
  import { useTheme as Tt } from "@mui/material";
21
21
  import { e as Mt } from "../TransactionUtils-BphBJBbU.mjs";
22
- import { T as Dt } from "../EmbeddedCard-DCR-ziFE.mjs";
23
- import { T as xt } from "../TransactionDetails-C5JAB8SL.mjs";
22
+ import { T as Dt } from "../EmbeddedCard-CQEnrozC.mjs";
23
+ import { T as xt } from "../TransactionDetails-Kmj8GUlD.mjs";
24
24
  import vt from "@mui/material/Collapse";
25
25
  import wt from "@mui/material/Divider";
26
26
  import Q from "@mui/material/List";
27
27
  import X from "@mui/material/ListItem";
28
28
  import Z from "@mui/material/ListItemButton";
29
29
  import { u as Lt } from "../useScreenSize-mWpmnh5w.mjs";
30
- import { D as tt } from "../Drawer-DLUMdk6P.mjs";
30
+ import { D as tt } from "../Drawer-DsnW2o0v.mjs";
31
31
  import { C as w } from "../Category-DEKZGLYe.mjs";
32
32
  import { parseISO as et } from "date-fns/parseISO";
33
33
  import { A as nt } from "../Analytics-D-jdcL72.mjs";
34
- import { W as It } from "../WidgetContainer-DKRs7nIV.mjs";
34
+ import { W as It } from "../WidgetContainer-DvKtBdhn.mjs";
35
35
  const G = ({ amount: n, label: d, variant: o = "full" }) => /* @__PURE__ */ p(y, { direction: "column", children: [
36
36
  /* @__PURE__ */ t(T, { bold: !0, sx: { textTransform: "none" }, variant: "body1", children: d }),
37
37
  /* @__PURE__ */ t(T, { variant: "caption", children: k(n, o === "mini" ? "0,0" : "0,0.00") })
@@ -1,8 +1,8 @@
1
- import { C as Be, D as He, M as Pe, a as We, T as $e } from "../TransactionDetails-C5JAB8SL.mjs";
2
- import { B as xa, b as Aa } from "../TransactionDetails-C5JAB8SL.mjs";
3
- import { u as B, T as Ge } from "../EmbeddedCard-DCR-ziFE.mjs";
4
- import { a as Sa } from "../EmbeddedCard-DCR-ziFE.mjs";
5
- import { E as va } from "../ExportCsvAction-C2Y4D7Kn.mjs";
1
+ import { C as Be, D as He, M as Pe, a as We, T as $e } from "../TransactionDetails-Kmj8GUlD.mjs";
2
+ import { B as xa, b as Aa } from "../TransactionDetails-Kmj8GUlD.mjs";
3
+ import { u as B, T as Ge } from "../EmbeddedCard-CQEnrozC.mjs";
4
+ import { a as Sa } from "../EmbeddedCard-CQEnrozC.mjs";
5
+ import { E as va } from "../ExportCsvAction-B_8I-Le6.mjs";
6
6
  import { jsxs as m, jsx as e } from "react/jsx-runtime";
7
7
  import u from "react";
8
8
  import { observer as D } from "mobx-react-lite";
@@ -24,7 +24,7 @@ import { getUnixTime as tt } from "date-fns/getUnixTime";
24
24
  import { startOfMonth as at } from "date-fns/startOfMonth";
25
25
  import { startOfToday as U } from "date-fns/startOfToday";
26
26
  import { b as F } from "../Localization-DnoVyBNK.mjs";
27
- import { C as nt } from "../ConnectDrawer-CYP3sd5f.mjs";
27
+ import { C as nt } from "../ConnectDrawer-CW4LA3H3.mjs";
28
28
  import ot from "@mui/material/Divider";
29
29
  import rt from "@mui/material/MenuItem";
30
30
  import it from "@mui/material/RadioGroup";
@@ -32,14 +32,14 @@ import { ExpandMore as st } from "@mxenabled/mx-icons";
32
32
  import { C as ct } from "../CurrencyInput-DaGEQaLW.mjs";
33
33
  import { S as ee } from "../SelectionBox-B4xELRgp.mjs";
34
34
  import { D as se } from "../Dialog-Bvd2n8hz.mjs";
35
- import { b as lt, u as dt } from "../CategorySelectorDrawer-BIsncOhX.mjs";
35
+ import { b as lt, u as dt } from "../CategorySelectorDrawer-NJsFsKP1.mjs";
36
36
  import { u as ut } from "../useAriaLive-MkYebyUR.mjs";
37
37
  import { S as mt } from "../SkeletonLoader-BaNboJjD.mjs";
38
38
  import { u as _t } from "../useScreenSize-mWpmnh5w.mjs";
39
39
  import { u as pt } from "../useWidgetLoadTimer-B0tB-yzL.mjs";
40
- import { W as gt } from "../WidgetContainer-DKRs7nIV.mjs";
40
+ import { W as gt } from "../WidgetContainer-DvKtBdhn.mjs";
41
41
  import { S as ht } from "../SearchBox-Cpgu_gdO.mjs";
42
- import { D as te } from "../Drawer-DLUMdk6P.mjs";
42
+ import { D as te } from "../Drawer-DsnW2o0v.mjs";
43
43
  const ft = (t) => /* @__PURE__ */ m(y, { tabIndex: t.tabIndex, variant: "body2", children: [
44
44
  `${t.row.account}`,
45
45
  t.row.number && ` | ${t.row.number}`
@@ -34,12 +34,12 @@ import { useGridApiContext as Yt, useGridRootProps as jt, DataGridPro as Ut } fr
34
34
  import Xt from "@mui/material/Badge";
35
35
  import Zt from "@mui/material/IconButton";
36
36
  import { A as w } from "../Analytics-D-jdcL72.mjs";
37
- import { T as ct } from "../EmbeddedCard-DCR-ziFE.mjs";
38
- import { T as dt } from "../TransactionDetails-C5JAB8SL.mjs";
39
- import { D as Pe } from "../Drawer-DLUMdk6P.mjs";
37
+ import { T as ct } from "../EmbeddedCard-CQEnrozC.mjs";
38
+ import { T as dt } from "../TransactionDetails-Kmj8GUlD.mjs";
39
+ import { D as Pe } from "../Drawer-DsnW2o0v.mjs";
40
40
  import { u as Ie } from "../useWidgetLoadTimer-B0tB-yzL.mjs";
41
41
  import { L as Le } from "../Loader-CxeBwuPG.mjs";
42
- import { W as ut } from "../WidgetContainer-DKRs7nIV.mjs";
42
+ import { W as ut } from "../WidgetContainer-DvKtBdhn.mjs";
43
43
  import { L as Ve } from "../LineChart-CUfiH86G.mjs";
44
44
  import { M as Qt } from "../MiniWidgetContainer-Bmv_WeUd.mjs";
45
45
  import { subMonths as qt } from "date-fns";
@@ -55,10 +55,10 @@ import { g as Oe } from "../TransactionUtils-BphBJBbU.mjs";
55
55
  import { L as uo } from "../ListItemRow-kH1rn8Xu.mjs";
56
56
  import { Stack as mo } from "@mui/material";
57
57
  import ho from "@mui/material/ListItemAvatar";
58
- import { E as go } from "../ExportCsvAction-C2Y4D7Kn.mjs";
58
+ import { E as go } from "../ExportCsvAction-B_8I-Le6.mjs";
59
59
  import { u as po } from "../useInsightsEnabled-D5Sdm0TJ.mjs";
60
60
  import { E as fo } from "../EmptyState-CJUDc3kD.mjs";
61
- import { C as yo } from "../ConnectDrawer-CYP3sd5f.mjs";
61
+ import { C as yo } from "../ConnectDrawer-CW4LA3H3.mjs";
62
62
  const gt = ({ categoryGuid: t, topLevelCategoryGuid: n }) => {
63
63
  const { categories: s } = R(), { getCategoryName: o } = q(), r = o(t);
64
64
  return /* @__PURE__ */ C(S, { alignItems: "center", direction: "column", gap: "8", justifyContent: "center", mb: 4, children: [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mx-cartographer/experiences",
3
- "version": "9.2.4-alpha.al4",
3
+ "version": "9.2.4",
4
4
  "description": "Library containing experience widgets",
5
5
  "author": "MX",
6
6
  "license": "MIT",
@@ -1 +0,0 @@
1
- {"version":3,"file":"Drawer-DLUMdk6P.mjs","sources":["../src/common/components/drawer/Footer.tsx","../src/common/components/drawer/Header.tsx","../src/common/components/drawer/Drawer.tsx"],"sourcesContent":["import Button from '@mui/material/Button'\nimport Stack from '@mui/material/Stack'\nimport { type SxProps } from '@mui/material/styles'\n\ntype Color = 'primary' | 'inherit' | 'secondary' | 'success' | 'error' | 'info' | 'warning'\n\ntype FooterProps = {\n footerStyles?: SxProps\n hasSecondaryAction?: boolean\n isPrimaryDisabled?: boolean\n onPrimaryAction?: () => void\n onSecondaryAction?: () => void\n primaryButtonProps?: React.ComponentProps<typeof Button>\n primaryColor?: Color\n primaryText?: string\n secondaryColor?: Color\n secondaryText?: string\n}\n\nconst Footer = ({\n footerStyles = {},\n hasSecondaryAction = true,\n isPrimaryDisabled,\n onPrimaryAction,\n onSecondaryAction,\n primaryButtonProps = {},\n primaryColor = 'primary',\n primaryText = 'Save',\n secondaryColor = 'primary',\n secondaryText = 'Cancel',\n}: FooterProps) => {\n return (\n <Stack\n sx={{\n bgcolor: 'background.paper',\n flexDirection: 'row',\n gap: 16,\n justifyContent: 'flex-end',\n p: 24,\n ...footerStyles,\n }}\n >\n {hasSecondaryAction && (\n <Button\n color={secondaryColor}\n onClick={onSecondaryAction}\n variant={onPrimaryAction ? 'outlined' : 'contained'}\n >\n {secondaryText}\n </Button>\n )}\n\n {onPrimaryAction && (\n <Button\n {...primaryButtonProps}\n color={primaryColor}\n disabled={isPrimaryDisabled}\n onClick={onPrimaryAction}\n variant=\"contained\"\n >\n {primaryText}\n </Button>\n )}\n </Stack>\n )\n}\n\nexport default Footer\n","import React from 'react'\n\nimport Box from '@mui/material/Box'\nimport Stack from '@mui/material/Stack'\nimport IconButton from '@mui/material/IconButton'\n\nimport { ArrowBack } from '@mxenabled/mx-icons'\n\nimport { H2 } from '@mxenabled/mxui'\n\ninterface DrawerHeaderProps {\n ariaLabelClose: string\n onClose: () => void\n shouldShowBorders: boolean\n shouldShowShadow?: boolean\n title: string\n}\n\nconst DrawerHeader: React.FC<DrawerHeaderProps> = ({\n ariaLabelClose,\n onClose,\n shouldShowBorders,\n shouldShowShadow,\n title,\n}) => {\n return (\n <Stack\n aria-labelledby={`${title?.replace(/\\s+/g, '-').toLowerCase()}-header-title`}\n direction=\"row\"\n sx={{\n alignItems: 'center',\n backgroundColor: 'background.paper',\n ...(shouldShowBorders && {\n borderBottom: 1,\n borderColor: 'divider',\n }),\n ...(shouldShowShadow && {\n boxShadow: '0px 2px 8px 0px #6A73811F',\n }),\n padding: '8px 8px 8px 8px',\n }}\n >\n <IconButton aria-label={ariaLabelClose} autoFocus={true} color=\"primary\" onClick={onClose}>\n <ArrowBack color=\"primary\" sx={{ fontSize: 22 }} />\n </IconButton>\n <Box\n sx={{\n flexGrow: 1,\n margin: 'auto',\n textAlign: 'center',\n }}\n >\n <H2\n bold={true}\n id={`${title?.replace(/\\s+/g, '-').toLowerCase()}-header-title`}\n variant=\"body1\"\n >\n {title}\n </H2>\n </Box>\n {/* placeholder for when we add a button here, this also ensures the title text is centered */}\n <Box width=\"44px\" />\n </Stack>\n )\n}\n\nexport default DrawerHeader\n","import React from 'react'\n\nimport Box from '@mui/material/Box'\nimport Button from '@mui/material/Button'\nimport Stack from '@mui/material/Stack'\nimport type { SxProps } from '@mui/material/styles'\n\nimport { Drawer as KMuiDrawer } from '@mxenabled/mxui'\n\nimport Footer from './Footer'\nimport Header from './Header'\n\nexport type CopyObject = {\n close_drawer_aria: string\n}\n\ninterface DrawerProps {\n ariaLabelClose?: string\n className?: string\n footerStyles?: SxProps\n hasSecondaryAction?: boolean\n id?: string\n isOpen: boolean\n isPrimaryDisabled?: boolean\n onClose: () => void\n onPrimaryAction?: () => void\n onSecondaryAction?: () => void\n primaryButtonProps?: React.ComponentProps<typeof Button>\n primaryColor?: 'primary' | 'inherit' | 'secondary' | 'success' | 'error' | 'info' | 'warning'\n primaryText?: string\n secondaryColor?: 'primary' | 'inherit' | 'secondary' | 'success' | 'error' | 'info' | 'warning'\n secondaryText?: string\n shouldShowHeaderBorders?: boolean\n shouldShowHeaderShadow?: boolean\n sx?: SxProps\n title: string\n}\n\nconst Drawer: React.FC<React.PropsWithChildren<DrawerProps>> = ({\n ariaLabelClose = 'Close',\n children,\n footerStyles = {},\n hasSecondaryAction = true,\n id,\n isOpen,\n isPrimaryDisabled,\n onClose,\n onPrimaryAction,\n onSecondaryAction,\n primaryButtonProps,\n primaryColor = 'primary',\n primaryText,\n secondaryColor = 'secondary',\n secondaryText,\n shouldShowHeaderBorders = true,\n shouldShowHeaderShadow = false,\n title,\n ...rest\n}) => {\n return (\n <KMuiDrawer\n id={id}\n isOpen={isOpen}\n onClose={onClose}\n slotProps={{\n paper: {\n 'aria-labelledby': `${title?.replace(/\\s+/g, '-').toLowerCase()}-header-title`,\n },\n }}\n sx={{\n '& .MuiDrawer-paper': {\n backgroundColor: 'background.default',\n borderRadius: 0,\n // Small viewport height so the paper fits the visible area when the\n // browser reports it correctly (Safari iOS, most browsers). Chrome iOS\n // does not expose the region behind its bottom toolbar in any viewport\n // metric, so height units alone can't help there — the generous bottom\n // padding on the scroll container (below) is what clears the toolbar.\n height: '100svh',\n },\n height: '100%',\n '& .MuiToolbar-root': {\n backgroundColor: 'background.paper',\n },\n }}\n {...rest}\n >\n <Stack height=\"100%\" justifyContent=\"space-between\">\n <Header\n ariaLabelClose={ariaLabelClose}\n onClose={onClose}\n shouldShowBorders={shouldShowHeaderBorders}\n shouldShowShadow={shouldShowHeaderShadow}\n title={title}\n />\n\n <Box\n height=\"100%\"\n overflow=\"auto\"\n sx={{\n // On small screens, Chrome iOS overlays ~80px of the bottom of the\n // viewport with its toolbar and exposes no viewport metric for it,\n // so we add generous bottom padding so the last item can scroll\n // clear. The env() term also clears the home-indicator safe area in\n // native webviews. On larger screens no extra padding is needed.\n // TODO(MEW-3820 follow-up): revisit with a proper mobile scroll\n // model that lets the document scroll (retracting Chrome's toolbar).\n pb: {\n xs: 'calc(env(safe-area-inset-bottom, 0px) + 96px)',\n sm: 'env(safe-area-inset-bottom, 0px)',\n },\n }}\n >\n {children}\n </Box>\n\n {onPrimaryAction && (\n <Footer\n footerStyles={footerStyles}\n hasSecondaryAction={hasSecondaryAction}\n isPrimaryDisabled={isPrimaryDisabled}\n onPrimaryAction={onPrimaryAction}\n onSecondaryAction={onSecondaryAction ?? onClose}\n primaryButtonProps={primaryButtonProps}\n primaryColor={primaryColor}\n primaryText={primaryText}\n secondaryColor={secondaryColor}\n secondaryText={secondaryText}\n />\n )}\n </Stack>\n </KMuiDrawer>\n )\n}\n\nexport default Drawer\n"],"names":["Footer","footerStyles","hasSecondaryAction","isPrimaryDisabled","onPrimaryAction","onSecondaryAction","primaryButtonProps","primaryColor","primaryText","secondaryColor","secondaryText","jsxs","Stack","jsx","Button","DrawerHeader","ariaLabelClose","onClose","shouldShowBorders","shouldShowShadow","title","IconButton","ArrowBack","Box","H2","Drawer","children","id","isOpen","shouldShowHeaderBorders","shouldShowHeaderShadow","rest","KMuiDrawer","Header"],"mappings":"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"}
@@ -1,230 +0,0 @@
1
- import { jsxs as d, jsx as t } from "react/jsx-runtime";
2
- import B from "react";
3
- import { observer as I } from "mobx-react-lite";
4
- import j from "@mui/material/Box";
5
- import C from "@mui/material/Button";
6
- import P from "@mui/material/Divider";
7
- import w from "@mui/material/IconButton";
8
- import O from "@mui/material/Popover";
9
- import A from "@mui/material/Stack";
10
- import E from "@mui/material/Tooltip";
11
- import { FilterAlt as F } from "@mxenabled/mx-icons";
12
- import S from "@mui/material/Checkbox";
13
- import G from "@mui/material/List";
14
- import g from "@mui/material/ListItem";
15
- import _ from "@mui/material/ListItemButton";
16
- import H from "@mui/material/ListItemIcon";
17
- import v from "@mui/material/ListItemText";
18
- import { a as M, u as W, c as z } from "./hooks-97sNJ_lf.mjs";
19
- const R = I(
20
- ({ allowedAccountTypes: l }) => {
21
- const { accountFilterMap: s, updateAccountFilterMap: m } = M(), { accounts: x, common: y } = W(), { account_filter: u } = y, { accountsByTypeMap: a } = z(), k = B.useMemo(
22
- () => Array.from(a.keys()).reduce((e, r) => {
23
- if (!l || l && l.includes(r)) {
24
- const i = a.get(r);
25
- i && e.push(...i);
26
- }
27
- return e;
28
- }, []),
29
- [a, l]
30
- ), p = new Map(
31
- Array.from(s.entries()).filter(([e]) => k.some((r) => r.guid === e))
32
- ), c = Array.from(p.values()).every((e) => e), f = Array.from(p.values()).some((e) => e), h = () => {
33
- for (const e of p.keys())
34
- m(e, !c);
35
- }, b = (e) => {
36
- const r = a.get(e);
37
- if (!r) return;
38
- const i = r.some((o) => s.get(o.guid));
39
- for (const o of r)
40
- m(o.guid, !i);
41
- };
42
- return /* @__PURE__ */ d(
43
- G,
44
- {
45
- dense: !0,
46
- id: "filter_accounts",
47
- sx: { overflowY: "scroll", maxHeight: 350, minWidth: 280 },
48
- children: [
49
- /* @__PURE__ */ t(g, { disableGutters: !0, disablePadding: !0, sx: { py: 16 }, children: /* @__PURE__ */ d(
50
- _,
51
- {
52
- "aria-checked": !c && f ? "mixed" : c,
53
- disableGutters: !0,
54
- onClick: h,
55
- role: "checkbox",
56
- sx: { p: 0, px: 8 },
57
- children: [
58
- /* @__PURE__ */ t(
59
- S,
60
- {
61
- "aria-hidden": !0,
62
- checked: c,
63
- disableRipple: !0,
64
- indeterminate: !c && f,
65
- size: "small",
66
- slotProps: { input: { "aria-hidden": !0 } },
67
- tabIndex: -1
68
- }
69
- ),
70
- /* @__PURE__ */ t(
71
- v,
72
- {
73
- id: "label-select-all",
74
- primary: u.select_all_accounts,
75
- slotProps: { primary: { variant: "body1", fontWeight: "normal" } }
76
- }
77
- )
78
- ]
79
- }
80
- ) }),
81
- Array.from(a.keys()).map((e) => {
82
- const r = a.get(e), i = l ? !l.includes(e) : !1, o = x.account_type_accounts[e];
83
- return (
84
- // Account Type Header
85
- /* @__PURE__ */ t(g, { disableGutters: !0, disablePadding: !0, children: /* @__PURE__ */ d(A, { sx: { pb: 8, width: "100%" }, children: [
86
- /* @__PURE__ */ t(P, {}),
87
- /* @__PURE__ */ t(
88
- G,
89
- {
90
- dense: !0,
91
- subheader: /* @__PURE__ */ t(g, { children: /* @__PURE__ */ t(
92
- _,
93
- {
94
- disableGutters: !0,
95
- disabled: i,
96
- onClick: () => b(e),
97
- sx: { pl: 16, minHeight: 40, justifyContent: "left" },
98
- children: /* @__PURE__ */ t(
99
- v,
100
- {
101
- primary: o,
102
- slotProps: { primary: { variant: "body1", fontWeight: "bold" } }
103
- }
104
- )
105
- }
106
- ) }),
107
- children: r?.map((n) => (
108
- // Account Checkbox
109
- /* @__PURE__ */ t(g, { children: /* @__PURE__ */ d(
110
- _,
111
- {
112
- "aria-checked": !!s.get(n.guid),
113
- disableGutters: !0,
114
- disabled: i,
115
- onClick: () => m(n.guid, !s.get(n.guid)),
116
- role: "checkbox",
117
- sx: { p: 0, minHeight: 40 },
118
- children: [
119
- /* @__PURE__ */ t(H, { children: /* @__PURE__ */ t(
120
- S,
121
- {
122
- "aria-hidden": !0,
123
- checked: !!s.get(n.guid),
124
- disableRipple: !0,
125
- size: "small",
126
- slotProps: { input: { "aria-hidden": !0 } },
127
- tabIndex: -1
128
- }
129
- ) }),
130
- /* @__PURE__ */ t(
131
- v,
132
- {
133
- id: `label-${n.guid}`,
134
- primary: n.displayName,
135
- slotProps: { primary: { variant: "body1", fontWeight: "normal" } }
136
- }
137
- )
138
- ]
139
- }
140
- ) }, n.guid)
141
- ))
142
- }
143
- )
144
- ] }) }, e)
145
- );
146
- })
147
- ]
148
- }
149
- );
150
- }
151
- ), nt = I(
152
- ({
153
- allowedAccountTypes: l,
154
- isDesktop: s,
155
- onAccountFilterClick: m,
156
- sx: x = {},
157
- variant: y = "text"
158
- }) => {
159
- const { common: u } = W(), { accountFilterMap: a, resetAccountFilterMap: k } = M(), { detailedAccounts: p, updateAccountFilter: c } = z(), [f, h] = B.useState(null), b = (L) => {
160
- k(), h(L.currentTarget), m?.();
161
- }, e = () => {
162
- h(null);
163
- }, r = async () => {
164
- await c(a), h(null);
165
- }, i = u.account_filter, o = !!f, n = p.length === 0;
166
- return /* @__PURE__ */ d(j, { sx: { ...x }, children: [
167
- s ? /* @__PURE__ */ t(
168
- C,
169
- {
170
- "aria-controls": o ? "filter_accounts" : void 0,
171
- "aria-expanded": o,
172
- "aria-haspopup": !0,
173
- "aria-label": i.title,
174
- disabled: n,
175
- onClick: b,
176
- startIcon: /* @__PURE__ */ t(F, { size: 24 }),
177
- sx: { p: 8, whiteSpace: "nowrap", minWidth: "max-content" },
178
- variant: y,
179
- children: u.filter_button
180
- }
181
- ) : /* @__PURE__ */ t(E, { id: "filter-accounts", placement: "bottom", title: i.title, children: /* @__PURE__ */ t(
182
- w,
183
- {
184
- "aria-controls": o ? "filter_accounts" : void 0,
185
- "aria-describedby": "filter-accounts",
186
- "aria-expanded": o,
187
- "aria-haspopup": !0,
188
- "aria-label": i.title,
189
- color: "primary",
190
- disabled: n,
191
- onClick: b,
192
- sx: { p: 8 },
193
- children: /* @__PURE__ */ t(F, { size: 24 })
194
- }
195
- ) }),
196
- /* @__PURE__ */ t(
197
- O,
198
- {
199
- anchorEl: f,
200
- anchorOrigin: { vertical: "bottom", horizontal: "left" },
201
- onClose: e,
202
- open: o,
203
- transformOrigin: { vertical: "top", horizontal: "left" },
204
- children: /* @__PURE__ */ d(A, { children: [
205
- /* @__PURE__ */ t(R, { allowedAccountTypes: l }),
206
- /* @__PURE__ */ t(P, {}),
207
- /* @__PURE__ */ d(A, { direction: "row", justifyContent: "space-between", spacing: 16, sx: { p: 16 }, children: [
208
- /* @__PURE__ */ t(C, { fullWidth: !0, onClick: e, variant: "text", children: u.cancel_button }),
209
- /* @__PURE__ */ t(
210
- C,
211
- {
212
- "aria-label": i.filter_button_generic_aria,
213
- color: "primary",
214
- fullWidth: !0,
215
- onClick: r,
216
- variant: "contained",
217
- children: u.filter_button
218
- }
219
- )
220
- ] })
221
- ] })
222
- }
223
- )
224
- ] });
225
- }
226
- );
227
- export {
228
- nt as G
229
- };
230
- //# sourceMappingURL=GlobalAccountFilter-BhzR5Vb1.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GlobalAccountFilter-BhzR5Vb1.mjs","sources":["../src/common/components/globalaccountfilter/GlobalAccountFilterList.tsx","../src/common/components/GlobalAccountFilter.tsx"],"sourcesContent":["import React from 'react'\nimport { observer } from 'mobx-react-lite'\n\nimport CheckBox from '@mui/material/Checkbox'\nimport Divider from '@mui/material/Divider'\nimport List from '@mui/material/List'\nimport ListItem from '@mui/material/ListItem'\nimport ListItemButton from '@mui/material/ListItemButton'\nimport ListItemIcon from '@mui/material/ListItemIcon'\nimport ListItemText from '@mui/material/ListItemText'\nimport Stack from '@mui/material/Stack'\n\nimport { useAccountStore, useGlobalCopyStore, useGlobalUiStore } from '../../context'\nimport { AccountType, type DetailedAccount } from '../../../core'\n\nexport interface GlobalAccountFilterListProps {\n allowedAccountTypes: AccountType[] | undefined\n}\n\nexport const GlobalAccountFilterList = observer(\n ({ allowedAccountTypes }: GlobalAccountFilterListProps) => {\n const { accountFilterMap, updateAccountFilterMap } = useGlobalUiStore()\n const { accounts: accountsCopy, common: commonCopy } = useGlobalCopyStore()\n const { account_filter: copy } = commonCopy\n\n const { accountsByTypeMap } = useAccountStore()\n\n // Allowed accounts\n const allowedAccounts = React.useMemo(\n () =>\n Array.from(accountsByTypeMap.keys()).reduce((acc: DetailedAccount[], accountType) => {\n if (\n !allowedAccountTypes ||\n (allowedAccountTypes && allowedAccountTypes.includes(accountType))\n ) {\n const accounts = accountsByTypeMap.get(accountType)\n if (accounts) {\n acc.push(...accounts)\n }\n }\n return acc\n }, []),\n [accountsByTypeMap, allowedAccountTypes],\n )\n\n // Filters the selection to include only allowed accounts\n const selectionFilter = new Map<string, boolean>(\n Array.from(accountFilterMap.entries()).filter(([guid]) => {\n return allowedAccounts.some((account) => account.guid === guid)\n }),\n )\n\n const allSelected = Array.from(selectionFilter.values()).every((isSelected) => isSelected)\n const someSelected = Array.from(selectionFilter.values()).some((isSelected) => isSelected)\n\n const handleSelectAllClick = () => {\n for (const guid of selectionFilter.keys()) {\n updateAccountFilterMap(guid, !allSelected)\n }\n }\n\n const handleSelectAccountTypeClick = (accountType: AccountType) => {\n const accounts = accountsByTypeMap.get(accountType)\n if (!accounts) return\n\n const someAccountsSelected = accounts.some((account) => accountFilterMap.get(account.guid))\n for (const account of accounts) {\n updateAccountFilterMap(account.guid, !someAccountsSelected)\n }\n }\n\n return (\n <List\n dense={true}\n id=\"filter_accounts\"\n sx={{ overflowY: 'scroll', maxHeight: 350, minWidth: 280 }}\n >\n {/* Select All Checkbox */}\n <ListItem disableGutters={true} disablePadding={true} sx={{ py: 16 }}>\n <ListItemButton\n aria-checked={!allSelected && someSelected ? 'mixed' : allSelected}\n disableGutters={true}\n onClick={handleSelectAllClick}\n role=\"checkbox\"\n sx={{ p: 0, px: 8 }}\n >\n <CheckBox\n aria-hidden={true}\n checked={allSelected}\n disableRipple={true}\n indeterminate={!allSelected && someSelected}\n size=\"small\"\n slotProps={{ input: { 'aria-hidden': true } }}\n tabIndex={-1}\n />\n <ListItemText\n id={`label-select-all`}\n primary={copy.select_all_accounts}\n slotProps={{ primary: { variant: 'body1', fontWeight: 'normal' } }}\n />\n </ListItemButton>\n </ListItem>\n\n {Array.from(accountsByTypeMap.keys()).map((accountType) => {\n const accounts = accountsByTypeMap.get(accountType)\n const disabled = allowedAccountTypes ? !allowedAccountTypes.includes(accountType) : false\n const typeName = accountsCopy.account_type_accounts[accountType]\n\n return (\n // Account Type Header\n <ListItem disableGutters={true} disablePadding={true} key={accountType}>\n <Stack sx={{ pb: 8, width: '100%' }}>\n <Divider />\n <List\n dense={true}\n subheader={\n <ListItem>\n <ListItemButton\n disableGutters={true}\n disabled={disabled}\n onClick={() => handleSelectAccountTypeClick(accountType)}\n sx={{ pl: 16, minHeight: 40, justifyContent: 'left' }}\n >\n <ListItemText\n primary={typeName}\n slotProps={{ primary: { variant: 'body1', fontWeight: 'bold' } }}\n />\n </ListItemButton>\n </ListItem>\n }\n >\n {accounts?.map((account) => (\n // Account Checkbox\n <ListItem key={account.guid}>\n <ListItemButton\n aria-checked={!!accountFilterMap.get(account.guid)}\n disableGutters={true}\n disabled={disabled}\n onClick={() =>\n updateAccountFilterMap(account.guid, !accountFilterMap.get(account.guid))\n }\n role=\"checkbox\"\n sx={{ p: 0, minHeight: 40 }}\n >\n <ListItemIcon>\n <CheckBox\n aria-hidden={true}\n checked={!!accountFilterMap.get(account.guid)}\n disableRipple={true}\n size=\"small\"\n slotProps={{ input: { 'aria-hidden': true } }}\n tabIndex={-1}\n />\n </ListItemIcon>\n <ListItemText\n id={`label-${account.guid}`}\n primary={account.displayName}\n slotProps={{ primary: { variant: 'body1', fontWeight: 'normal' } }}\n />\n </ListItemButton>\n </ListItem>\n ))}\n </List>\n </Stack>\n </ListItem>\n )\n })}\n </List>\n )\n },\n)\n","import React from 'react'\nimport { observer } from 'mobx-react-lite'\n\nimport Box from '@mui/material/Box'\nimport Button from '@mui/material/Button'\nimport Divider from '@mui/material/Divider'\nimport IconButton from '@mui/material/IconButton'\nimport Popover from '@mui/material/Popover'\nimport Stack from '@mui/material/Stack'\nimport Tooltip from '@mui/material/Tooltip'\nimport { SxProps } from '@mui/material/styles'\n\nimport { FilterAlt } from '@mxenabled/mx-icons'\n\nimport { useAccountStore, useGlobalCopyStore, useGlobalUiStore } from '../context'\nimport { AccountType } from '../../core'\n\nimport { GlobalAccountFilterList } from './globalaccountfilter/GlobalAccountFilterList'\n\nexport interface GlobalAccountFilterProps {\n allowedAccountTypes?: AccountType[] | undefined\n isDesktop?: boolean\n onAccountFilterClick?: () => void\n sx?: SxProps\n variant?: 'outlined' | 'text'\n}\n\nexport const GlobalAccountFilter = observer(\n ({\n allowedAccountTypes,\n isDesktop,\n onAccountFilterClick,\n sx = {},\n variant = 'text',\n }: GlobalAccountFilterProps) => {\n const { common: commonCopy } = useGlobalCopyStore()\n const { accountFilterMap, resetAccountFilterMap } = useGlobalUiStore()\n\n const { detailedAccounts, updateAccountFilter } = useAccountStore()\n\n const [filterButtonEl, setFilterButtonEl] = React.useState<HTMLButtonElement | null>(null)\n\n const handleOpen = (event: React.MouseEvent<HTMLButtonElement>) => {\n resetAccountFilterMap()\n setFilterButtonEl(event.currentTarget)\n onAccountFilterClick?.()\n }\n\n const handleCancel = () => {\n setFilterButtonEl(null)\n }\n\n const handleFilter = async () => {\n await updateAccountFilter(accountFilterMap)\n setFilterButtonEl(null)\n }\n\n const copy = commonCopy.account_filter\n const isFilterOpen = Boolean(filterButtonEl)\n const filterDisabled = detailedAccounts.length === 0\n\n return (\n <Box sx={{ ...sx }}>\n {isDesktop ? (\n <Button\n aria-controls={isFilterOpen ? 'filter_accounts' : undefined}\n aria-expanded={isFilterOpen}\n aria-haspopup={true}\n aria-label={copy.title}\n disabled={filterDisabled}\n onClick={handleOpen}\n startIcon={<FilterAlt size={24} />}\n sx={{ p: 8, whiteSpace: 'nowrap', minWidth: 'max-content' }}\n variant={variant}\n >\n {commonCopy.filter_button}\n </Button>\n ) : (\n <Tooltip id=\"filter-accounts\" placement=\"bottom\" title={copy.title}>\n <IconButton\n aria-controls={isFilterOpen ? 'filter_accounts' : undefined}\n aria-describedby=\"filter-accounts\"\n aria-expanded={isFilterOpen}\n aria-haspopup={true}\n aria-label={copy.title}\n color=\"primary\"\n disabled={filterDisabled}\n onClick={handleOpen}\n sx={{ p: 8 }}\n >\n <FilterAlt size={24} />\n </IconButton>\n </Tooltip>\n )}\n\n <Popover\n anchorEl={filterButtonEl}\n anchorOrigin={{ vertical: 'bottom', horizontal: 'left' }}\n onClose={handleCancel}\n open={isFilterOpen}\n transformOrigin={{ vertical: 'top', horizontal: 'left' }}\n >\n <Stack>\n <GlobalAccountFilterList allowedAccountTypes={allowedAccountTypes} />\n <Divider />\n <Stack direction=\"row\" justifyContent=\"space-between\" spacing={16} sx={{ p: 16 }}>\n <Button fullWidth={true} onClick={handleCancel} variant=\"text\">\n {commonCopy.cancel_button}\n </Button>\n <Button\n aria-label={copy.filter_button_generic_aria}\n color=\"primary\"\n fullWidth={true}\n onClick={handleFilter}\n variant=\"contained\"\n >\n {commonCopy.filter_button}\n </Button>\n </Stack>\n </Stack>\n </Popover>\n </Box>\n )\n },\n)\n"],"names":["GlobalAccountFilterList","observer","allowedAccountTypes","accountFilterMap","updateAccountFilterMap","useGlobalUiStore","accountsCopy","commonCopy","useGlobalCopyStore","copy","accountsByTypeMap","useAccountStore","allowedAccounts","React","acc","accountType","accounts","selectionFilter","guid","account","allSelected","isSelected","someSelected","handleSelectAllClick","handleSelectAccountTypeClick","someAccountsSelected","jsxs","List","jsx","ListItem","ListItemButton","CheckBox","ListItemText","disabled","typeName","Stack","Divider","ListItemIcon","GlobalAccountFilter","isDesktop","onAccountFilterClick","sx","variant","resetAccountFilterMap","detailedAccounts","updateAccountFilter","filterButtonEl","setFilterButtonEl","handleOpen","event","handleCancel","handleFilter","isFilterOpen","filterDisabled","Box","Button","FilterAlt","Tooltip","IconButton","Popover"],"mappings":"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"}