@m4l/components 0.1.80 → 0.1.82

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 (105) hide show
  1. package/@types/export.d.ts +9 -1
  2. package/components/AccountPopover/AccountPopover.d.ts +21 -0
  3. package/components/AccountPopover/classes/types.d.ts +1 -1
  4. package/components/AccountPopover/{index.00d1d15f.js → index.0ba26726.js} +68 -72
  5. package/components/AccountPopover/subcomponents/MyAvatar/index.d.ts +2 -2
  6. package/components/AccountPopover/subcomponents/MyAvatar/types.d.ts +7 -0
  7. package/components/AccountPopover/subcomponents/PopOver/index.d.ts +6 -0
  8. package/components/AccountPopover/subcomponents/PopOver/types.d.ts +5 -4
  9. package/components/AccountPopover/types.d.ts +3 -4
  10. package/components/AppBar/{index.c85b100d.js → index.fadcefc6.js} +7 -7
  11. package/components/CommonActions/components/ActionCancel/{index.1051a117.js → index.6cf96d04.js} +2 -2
  12. package/components/CommonActions/components/ActionFormCancel/{index.a0d727b2.js → index.a0335cbf.js} +15 -15
  13. package/components/CommonActions/components/ActionFormIntro/{index.a20dc88d.js → index.273b1b9f.js} +2 -2
  14. package/components/CommonActions/components/ActionIntro/{index.bfe3256c.js → index.856df8ef.js} +2 -2
  15. package/components/CommonActions/components/Actions/{index.19d67bc6.js → index.5abb6ac4.js} +13 -13
  16. package/components/DataGrid/classes/index.d.ts +1 -0
  17. package/components/DataGrid/classes/types.d.ts +1 -0
  18. package/components/DataGrid/constants.d.ts +1 -0
  19. package/components/DataGrid/{index.2f175eba.js → index.03ad08af.js} +28 -681
  20. package/components/DataGrid/subcomponents/Actions/index.db54ec98.js +621 -0
  21. package/components/DataGrid/subcomponents/editors/TextEditor/index.91380a55.js +64 -0
  22. package/components/DynamicFilter/constants.d.ts +1 -1
  23. package/components/DynamicFilter/{index.c1f9d560.js → index.9b72180b.js} +28 -28
  24. package/components/GridLayout/GridLayout.d.ts +1 -0
  25. package/components/GridLayout/classes/index.d.ts +4 -0
  26. package/components/GridLayout/classes/types.d.ts +17 -0
  27. package/components/GridLayout/constants.d.ts +26 -0
  28. package/components/GridLayout/{index.a792aacb.js → index.76bccc4f.js} +322 -575
  29. package/components/GridLayout/index.d.ts +4 -3
  30. package/components/GridLayout/subcomponents/Griditem/index.01fc14c3.js +370 -0
  31. package/components/GridLayout/subcomponents/Griditem/index.d.ts +9 -0
  32. package/components/GridLayout/subcomponents/Griditem/types.d.ts +103 -0
  33. package/components/GridLayout/subcomponents/Responsive/helper.d.ts +10 -0
  34. package/components/GridLayout/subcomponents/Responsive/index.d.ts +15 -2
  35. package/components/GridLayout/{Responsive/index.1671380a.js → subcomponents/Responsive/index.e589d8bf.js} +95 -139
  36. package/components/GridLayout/subcomponents/Responsive/responsiveUtils.d.ts +3 -6
  37. package/components/GridLayout/subcomponents/Responsive/types.d.ts +114 -33
  38. package/components/GridLayout/{WidthProvider/index.9a26dfe4.js → subcomponents/WidthProvider/index.50dafd87.js} +5 -5
  39. package/components/GridLayout/subcomponents/WidthProvider/index.d.ts +4 -5
  40. package/components/GridLayout/types.d.ts +83 -18
  41. package/components/GridLayout/utils.d.ts +15 -12
  42. package/components/HelperText/{index.6ef76993.js → index.6c3adb40.js} +7 -7
  43. package/components/Icon/{index.9fcd1476.js → index.2414ff25.js} +1 -1
  44. package/components/LanguagePopover/{index.1564bd08.js → index.66e11634.js} +7 -7
  45. package/components/ModalDialog/{index.fbc4cd71.js → index.4dc1c8ed.js} +4 -4
  46. package/components/NavLink/{index.6c9c2588.js → index.5859e048.js} +7 -7
  47. package/components/ObjectLogs/{index.eab1c15f.js → index.51de2deb.js} +17 -17
  48. package/components/PaperForm/{index.ba38a0bd.js → index.f931dc02.js} +1 -1
  49. package/components/Period/{index.26071a16.js → index.4fd9df2a.js} +14 -14
  50. package/components/PropertyValue/{index.18d3c0fd.js → index.1b09f426.js} +1 -1
  51. package/components/ScrollBar/{index.bbe48f4d.js → index.d4410cb5.js} +5 -0
  52. package/components/SideBar/{index.2f497e6c.js → index.72564ef2.js} +11 -6
  53. package/components/animate/AnimatedScroll/animatedScroll.d.ts +3 -0
  54. package/components/animate/AnimatedScroll/index.d.ts +1 -0
  55. package/components/animate/AnimatedScroll/types.d.ts +5 -0
  56. package/components/animate/index.4e9774a6.js +150 -0
  57. package/components/animate/index.d.ts +1 -0
  58. package/components/areas/components/AreasAdmin/{index.7a0dabbe.js → index.f011d49d.js} +60 -49
  59. package/components/areas/components/AreasAdmin/subcomponents/AreaChipMobile/subcomponents/PanelWindowPopUp/index.d.ts +1 -1
  60. package/components/areas/components/AreasViewer/{index.fd49f06c.js → index.51a52736.js} +41 -153
  61. package/components/areas/components/{index.7756928a.js → index.f496660b.js} +11 -11
  62. package/components/areas/contexts/AreasContext/helper.d.ts +2 -2
  63. package/components/areas/contexts/AreasContext/{index.0a08a08b.js → index.9820bc7f.js} +12 -6
  64. package/components/areas/contexts/AreasContext/types.d.ts +4 -4
  65. package/components/areas/contexts/{index.b303b664.js → index.361acb6f.js} +1 -1
  66. package/components/areas/hooks/useAreas/{index.c6eb2569.js → index.b403f383.js} +1 -1
  67. package/components/areas/{index.6e67d89a.js → index.eacab372.js} +11 -11
  68. package/components/formatters/BooleanFormatter/{index.e8de8e4c.js → index.32de0803.js} +1 -1
  69. package/components/formatters/{index.67aeb049.js → index.d16d2331.js} +2 -2
  70. package/components/hook-form/RHFAutocomplete/{index.d1bbb015.js → index.6edb51b1.js} +8 -8
  71. package/components/hook-form/RHFAutocompleteAsync/{index.f9a9ef48.js → index.c2ca5c66.js} +1 -1
  72. package/components/hook-form/RHFCheckbox/{index.7b4a21d7.js → index.c6c3933b.js} +8 -8
  73. package/components/hook-form/RHFDateTime/{index.46cf616e.js → index.3add0fa4.js} +8 -8
  74. package/components/hook-form/RHFPeriod/{index.ce513149.js → index.72edef4d.js} +2 -2
  75. package/components/hook-form/RHFTextField/{index.f7ee202c.js → index.20daa95e.js} +3 -3
  76. package/components/hook-form/RHFUpload/{index.1befd5bb.js → index.cc5adc15.js} +8 -8
  77. package/components/modal/{WindowBase.7e19843e.js → WindowBase.4016485b.js} +9 -9
  78. package/components/modal/{WindowConfirm.12a9608a.js → WindowConfirm.f148e495.js} +16 -16
  79. package/components/modal/{index.b0a7236c.js → index.e9fece72.js} +13 -13
  80. package/components/mui_extended/Accordion/{index.a6447bf8.js → index.42cef1c7.js} +3 -3
  81. package/components/mui_extended/Avatar/types.d.ts +3 -1
  82. package/components/mui_extended/Button/classes/types.d.ts +3 -0
  83. package/components/mui_extended/Button/{index.4288f9fc.js → index.40af964e.js} +8 -3
  84. package/components/mui_extended/Button/types.d.ts +2 -1
  85. package/components/mui_extended/IconButton/{index.12f1a3c3.js → index.a318316e.js} +1 -1
  86. package/components/mui_extended/MenuActions/{index.43a2e1ae.js → index.f6bfdd40.js} +2 -2
  87. package/components/mui_extended/Pager/classes/index.d.ts +12 -0
  88. package/components/mui_extended/Pager/classes/types.d.ts +12 -4
  89. package/components/mui_extended/Pager/{index.82e89328.js → index.da26e9d4.js} +114 -62
  90. package/components/mui_extended/Pager/subcomponents/CustomTablePagination/index.d.ts +3 -0
  91. package/components/mui_extended/Pager/subcomponents/CustomTablePagination/types.d.ts +12 -0
  92. package/components/mui_extended/Pager/{components → subcomponents}/PagerActions/types.d.ts +2 -0
  93. package/components/mui_extended/Tab/{index.c39a6681.js → index.0d5f96e6.js} +1 -1
  94. package/components/mui_extended/{index.d78bde19.js → index.f6a356b9.js} +7 -7
  95. package/contexts/ModalContext/{index.89805978.js → index.efc1135a.js} +1 -1
  96. package/contexts/RHFormContext/{index.fe175bab.js → index.b9266262.js} +1 -1
  97. package/hooks/useModal/{index.e1c5c31e.js → index.9b0cc3fe.js} +1 -1
  98. package/index.js +92 -88
  99. package/package.json +1 -2
  100. package/{vendor.f57d47a7.js → vendor.88ed58a5.js} +51 -48
  101. package/components/AccountPopover/subcomponents/MyAvatar/createAvatar.d.ts +0 -4
  102. package/components/GridLayout/subcomponents/GridItem/index.d.ts +0 -26
  103. package/components/GridLayout/subcomponents/GridItem/types.d.ts +0 -78
  104. package/components/animate/index.1f8eadd4.js +0 -66
  105. /package/components/mui_extended/Pager/{components → subcomponents}/PagerActions/index.d.ts +0 -0
@@ -3,7 +3,7 @@ import type { Area, AreasStateWithActions } from './types';
3
3
  import type { WindowState, WindowStateProps } from '../../types';
4
4
  export declare const ROW_HEIGTH_GRIDLAYOUT = 20;
5
5
  export declare const PADDING_GRIDLAYOUT = 3;
6
- export declare const MARGIN_GRIDLAYOUT = 5;
6
+ export declare const MARGIN_GRIDLAYOUT = 3;
7
7
  export declare const DEBOUCED_SAVE_TIME = 500;
8
8
  export declare const THROTTLE_RESIZE_TIME = 300;
9
9
  export declare const COOKIE_BREAKPOINT_LAYOUTS = "layoutPros";
@@ -22,7 +22,7 @@ export declare const NORMALIZED_COLS: {
22
22
  xs: number;
23
23
  xxs: number;
24
24
  };
25
- import { Layouts } from '../../../GridLayout/subcomponents/Responsive/types';
25
+ import { Layouts } from '../../../GridLayout/types';
26
26
  export declare const DEFAULT_WINDOW: Pick<WindowState, 'status' | 'moduleActions' | 'cookies' | 'loading' | 'toasties' | 'toastyCount' | 'hashToasties'>;
27
27
  export declare const DEFAULT_AREA: Omit<Area, 'id' | 'name' | 'loadWindows' | 'viewMode'>;
28
28
  /**
@@ -5,18 +5,19 @@ import { useResponsiveDesktop, useFirstRender } from "@m4l/graphics";
5
5
  import { useHostTools, useModuleDictionary, useNetwork, useModuleSkeleton, EmitEvents } from "@m4l/core";
6
6
  import { devtools } from "zustand/middleware";
7
7
  import { immer } from "zustand/middleware/immer";
8
- import { u as useAreasViewerUtilityClasses } from "../../components/AreasViewer/index.fd49f06c.js";
9
- import { u as useAreasAdminUtilityClasses } from "../../components/AreasAdmin/index.7a0dabbe.js";
8
+ import { u as useAreasViewerUtilityClasses } from "../../components/AreasViewer/index.51a52736.js";
9
+ import { u as useAreasAdminUtilityClasses } from "../../components/AreasAdmin/index.f011d49d.js";
10
10
  import { c as createDynamicMFStore } from "../DynamicMFParmsContext/index.1607c78e.js";
11
11
  import { g as getAreasDictionary, D as DICCTIONARY } from "../../dictionary.afb7e3d9.js";
12
12
  import "clsx";
13
- import "../../../GridLayout/index.a792aacb.js";
14
- import { a as addLayoutItemToBreakPointIfNoExists, b as addLayoutItemToBreakPoints, c as isEqualLayouts } from "../../../GridLayout/Responsive/index.1671380a.js";
13
+ import "../../../GridLayout/subcomponents/Griditem/index.01fc14c3.js";
14
+ import { z as isEqualLayouts } from "../../../GridLayout/index.76bccc4f.js";
15
15
  import { jsx } from "react/jsx-runtime";
16
+ import { a as addLayoutItemToBreakPointIfNoExists, b as addLayoutItemToBreakPoints, c as cloneLayouts } from "../../../GridLayout/subcomponents/Responsive/index.e589d8bf.js";
16
17
  import { debounce, cloneDeep } from "lodash";
17
18
  const ROW_HEIGTH_GRIDLAYOUT = 20;
18
19
  const PADDING_GRIDLAYOUT = 3;
19
- const MARGIN_GRIDLAYOUT = 5;
20
+ const MARGIN_GRIDLAYOUT = 3;
20
21
  const DEBOUCED_SAVE_TIME = 500;
21
22
  const COOKIE_BREAKPOINT_LAYOUTS = "layoutPros";
22
23
  const COOKIE_WINDOWS = "windows";
@@ -629,7 +630,7 @@ const createAreasStore = (initProps) => {
629
630
  onBreakpointsLayoutsChange: (areaId, _currentLayout, newAllLayouts) => {
630
631
  if (!isEqualLayouts(get().hashAreas[areaId].layouts, newAllLayouts)) {
631
632
  set((state) => {
632
- state.hashAreas[areaId].layouts = cloneDeep(newAllLayouts);
633
+ state.hashAreas[areaId].layouts = cloneLayouts(newAllLayouts);
633
634
  });
634
635
  if (!get().hashAreas[areaId].maximizedId) {
635
636
  get().areaActions.bouncedSaveBreakpointsLayouts(areaId);
@@ -637,6 +638,11 @@ const createAreasStore = (initProps) => {
637
638
  }
638
639
  },
639
640
  onContainerChange: (areaId, e) => {
641
+ console.log(
642
+ `onContainerChange [${e.containerWidth}, ${e.containerHeight}] Store`,
643
+ areaId,
644
+ e.breakpoint
645
+ );
640
646
  set((state) => {
641
647
  state.hashAreas[areaId].containerHeight = e.containerHeight;
642
648
  state.hashAreas[areaId].currentBreakpoint = e.breakpoint;
@@ -5,8 +5,8 @@ import { ViwerClasses } from '../../components/AreasViewer/classes';
5
5
  import { AdminClasses } from '../../components/AreasAdmin/classes';
6
6
  import { DebouncedFunc } from 'lodash';
7
7
  import { LayoutItem } from '../../../GridLayout';
8
- import { Breakpoint, ContainerChangeEvent, LayoutsNotReadonly } from '../../../GridLayout/subcomponents/Responsive/types';
9
- import { LayoutNotReadOnly } from '../../../GridLayout/types';
8
+ import { ContainerChangeEvent } from '../../../GridLayout/subcomponents/Responsive/types';
9
+ import { Layout, Breakpoint, Layouts } from '../../../GridLayout/types';
10
10
  export declare type WinLayoutItem = LayoutItem & {
11
11
  winType: WinType;
12
12
  };
@@ -29,7 +29,7 @@ export interface Area {
29
29
  */
30
30
  containerHeight?: number;
31
31
  currentBreakpoint?: Breakpoint;
32
- layouts: LayoutsNotReadonly;
32
+ layouts: Layouts;
33
33
  maximizedId?: string | undefined;
34
34
  /** Son los ids de las ventanas, iterar con keys, destruye los componentes en un map */
35
35
  layoutItemsIds: string[];
@@ -172,7 +172,7 @@ export interface AreasStateWithActions extends AreasState {
172
172
  selectLayout: (areaId: string, layoutId: string) => void;
173
173
  addLayout: (areaId: string, windowId: string, newWindow: NewLayoutMagnetizableProps | NewLayoutMoveableProps) => void;
174
174
  saveLayouts: (areaId: string) => void;
175
- onBreakpointsLayoutsChange: (areaId: string, currentLayout: LayoutNotReadOnly, newAllLayouts: LayoutsNotReadonly) => void;
175
+ onBreakpointsLayoutsChange: (areaId: string, currentLayout: Layout, newAllLayouts: Layouts) => void;
176
176
  onContainerChange: (areaId: string, e: ContainerChangeEvent) => void;
177
177
  bouncedSaveBreakpointsLayouts: DebouncedFunc<(areaId: string) => void>;
178
178
  colapseLayoutItem: (areaId: string, layoutId: string) => void;
@@ -1,2 +1,2 @@
1
- import "./AreasContext/index.0a08a08b.js";
1
+ import "./AreasContext/index.9820bc7f.js";
2
2
  import "./WindowToolsMFContext/index.8f3e2a04.js";
@@ -1,6 +1,6 @@
1
1
  import { useContext } from "react";
2
2
  import { useStore } from "zustand";
3
- import { A as AreasContext } from "../../contexts/AreasContext/index.0a08a08b.js";
3
+ import { A as AreasContext } from "../../contexts/AreasContext/index.9820bc7f.js";
4
4
  function useAreasStore(selector, equalityFn) {
5
5
  const context = useContext(AreasContext);
6
6
  if (!context)
@@ -1,32 +1,32 @@
1
1
  import "react";
2
2
  import "@m4l/core";
3
3
  import "@mui/material";
4
- import "../Icon/index.9fcd1476.js";
4
+ import "../Icon/index.2414ff25.js";
5
5
  import "clsx";
6
6
  import "react/jsx-runtime";
7
- import "../mui_extended/IconButton/index.12f1a3c3.js";
7
+ import "../mui_extended/IconButton/index.a318316e.js";
8
8
  import "@m4l/graphics";
9
9
  import "zustand";
10
- import "./contexts/AreasContext/index.0a08a08b.js";
11
- import "./components/AreasAdmin/index.7a0dabbe.js";
10
+ import "./contexts/AreasContext/index.9820bc7f.js";
11
+ import "./components/AreasAdmin/index.f011d49d.js";
12
12
  import "zustand/shallow";
13
- import "../ScrollBar/index.bbe48f4d.js";
14
- import "../mui_extended/Accordion/index.a6447bf8.js";
13
+ import "../ScrollBar/index.d4410cb5.js";
14
+ import "../mui_extended/Accordion/index.42cef1c7.js";
15
15
  import "../mui_extended/Typography/index.443590d6.js";
16
16
  import "../mui_extended/Avatar/index.75e6ed57.js";
17
17
  import "react-router-dom";
18
18
  import "@mui/material/Button";
19
- import "../mui_extended/Button/index.4288f9fc.js";
19
+ import "../mui_extended/Button/index.40af964e.js";
20
20
  import "../mui_extended/CheckBox.5f6c78b0.js";
21
21
  import "../mui_extended/Badge/index.cad260fe.js";
22
22
  import "../Image/index.c18ebf5a.js";
23
23
  import "@mui/lab";
24
- import "../mui_extended/MenuActions/index.43a2e1ae.js";
24
+ import "../mui_extended/MenuActions/index.f6bfdd40.js";
25
25
  import "../mui_extended/Popover/index.9f35d0eb.js";
26
- import "../mui_extended/Pager/index.82e89328.js";
27
- import "../mui_extended/Tab/index.c39a6681.js";
26
+ import "../mui_extended/Pager/index.da26e9d4.js";
27
+ import "../mui_extended/Tab/index.0d5f96e6.js";
28
28
  import "../mui_extended/Tooltip/index.5a795dcd.js";
29
- import "./components/AreasViewer/index.fd49f06c.js";
29
+ import "./components/AreasViewer/index.51a52736.js";
30
30
  import "../LinearProgressIndeterminate/index.60dabc06.js";
31
31
  import "./contexts/WindowToolsMFContext/index.8f3e2a04.js";
32
32
  import "./contexts/DynamicMFParmsContext/index.1607c78e.js";
@@ -1,6 +1,6 @@
1
1
  import { useMemo } from "react";
2
2
  import { useModuleDictionary, useEnvironment } from "@m4l/core";
3
- import { I as Icon } from "../../Icon/index.9fcd1476.js";
3
+ import { I as Icon } from "../../Icon/index.2414ff25.js";
4
4
  import { W as WrapperComponent } from "../../WrapperComponent/index.5e872594.js";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  const BOOLEAN_FORMATTER_DICTIONARY_KEY = `boolean_formatter`;
@@ -2,11 +2,11 @@ import { W as WrapperComponent } from "../WrapperComponent/index.5e872594.js";
2
2
  import { jsx } from "react/jsx-runtime";
3
3
  import { useModuleDictionary } from "@m4l/core";
4
4
  import "react";
5
- import "../Icon/index.9fcd1476.js";
5
+ import "../Icon/index.2414ff25.js";
6
6
  import "@mui/material";
7
7
  import "clsx";
8
8
  import "@m4l/graphics";
9
- import { a as BOOLEAN_FORMATTER_DICTIONARY_KEY, b as BOOLEAN_FORMATTER_DICTIONARY_LABELS } from "./BooleanFormatter/index.e8de8e4c.js";
9
+ import { a as BOOLEAN_FORMATTER_DICTIONARY_KEY, b as BOOLEAN_FORMATTER_DICTIONARY_LABELS } from "./BooleanFormatter/index.32de0803.js";
10
10
  function getFormatConcatenated(values, separator) {
11
11
  const returnSymbol = "";
12
12
  if (values === null)
@@ -6,25 +6,25 @@ import { useMemo, useRef, useState, useEffect } from "react";
6
6
  import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
7
7
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
8
8
  import { T as Typography } from "../../mui_extended/Typography/index.443590d6.js";
9
- import { H as HelperText } from "../../HelperText/index.6ef76993.js";
10
- import { I as IconButton } from "../../mui_extended/IconButton/index.12f1a3c3.js";
9
+ import { H as HelperText } from "../../HelperText/index.6c3adb40.js";
10
+ import { I as IconButton } from "../../mui_extended/IconButton/index.a318316e.js";
11
11
  import { useResponsiveDesktop } from "@m4l/graphics";
12
12
  import { styled } from "@mui/material/styles";
13
13
  import "clsx";
14
14
  import { unstable_composeClasses } from "@mui/base";
15
- import "../../Icon/index.9fcd1476.js";
16
- import "../../mui_extended/Accordion/index.a6447bf8.js";
15
+ import "../../Icon/index.2414ff25.js";
16
+ import "../../mui_extended/Accordion/index.42cef1c7.js";
17
17
  import "../../mui_extended/Avatar/index.75e6ed57.js";
18
18
  import "react-router-dom";
19
19
  import "@mui/material/Button";
20
- import "../../mui_extended/Button/index.4288f9fc.js";
20
+ import "../../mui_extended/Button/index.40af964e.js";
21
21
  import "../../mui_extended/CheckBox.5f6c78b0.js";
22
22
  import "../../mui_extended/Badge/index.cad260fe.js";
23
23
  import "@mui/lab";
24
- import "../../mui_extended/MenuActions/index.43a2e1ae.js";
24
+ import "../../mui_extended/MenuActions/index.f6bfdd40.js";
25
25
  import "../../mui_extended/Popover/index.9f35d0eb.js";
26
- import "../../mui_extended/Pager/index.82e89328.js";
27
- import "../../mui_extended/Tab/index.c39a6681.js";
26
+ import "../../mui_extended/Pager/index.da26e9d4.js";
27
+ import "../../mui_extended/Tab/index.0d5f96e6.js";
28
28
  import "../../mui_extended/Tooltip/index.5a795dcd.js";
29
29
  const AutocompleteRoot = styled("div")(({
30
30
  theme
@@ -5,7 +5,7 @@ import { styled } from "@mui/material/styles";
5
5
  import { generateUtilityClasses, generateUtilityClass } from "@mui/material";
6
6
  import { unstable_composeClasses } from "@mui/base";
7
7
  import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
8
- import { R as RHFAutocomplete, g as getRHFAutocompleteComponentsDictionary } from "../RHFAutocomplete/index.d1bbb015.js";
8
+ import { R as RHFAutocomplete, g as getRHFAutocompleteComponentsDictionary } from "../RHFAutocomplete/index.6edb51b1.js";
9
9
  import { jsx } from "react/jsx-runtime";
10
10
  styled("div")(() => ({
11
11
  display: "flex",
@@ -2,29 +2,29 @@ import { useFormContext, Controller } from "react-hook-form";
2
2
  import { styled } from "@mui/material/styles";
3
3
  import { Skeleton, generateUtilityClasses, generateUtilityClass } from "@mui/material";
4
4
  import { unstable_composeClasses } from "@mui/base";
5
- import { H as HelperText } from "../../HelperText/index.6ef76993.js";
5
+ import { H as HelperText } from "../../HelperText/index.6c3adb40.js";
6
6
  import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
7
7
  import { useResponsiveDesktop } from "@m4l/graphics";
8
8
  import "react";
9
9
  import "@m4l/core";
10
- import "../../Icon/index.9fcd1476.js";
10
+ import "../../Icon/index.2414ff25.js";
11
11
  import "clsx";
12
12
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
13
- import "../../mui_extended/IconButton/index.12f1a3c3.js";
14
- import "../../mui_extended/Accordion/index.a6447bf8.js";
13
+ import "../../mui_extended/IconButton/index.a318316e.js";
14
+ import "../../mui_extended/Accordion/index.42cef1c7.js";
15
15
  import "../../mui_extended/Typography/index.443590d6.js";
16
16
  import "../../mui_extended/Avatar/index.75e6ed57.js";
17
17
  import "react-router-dom";
18
18
  import "@mui/material/Button";
19
- import "../../mui_extended/Button/index.4288f9fc.js";
19
+ import "../../mui_extended/Button/index.40af964e.js";
20
20
  import { C as CheckBox } from "../../mui_extended/CheckBox.5f6c78b0.js";
21
21
  import "../../mui_extended/Badge/index.cad260fe.js";
22
22
  import "../../Image/index.c18ebf5a.js";
23
23
  import "@mui/lab";
24
- import "../../mui_extended/MenuActions/index.43a2e1ae.js";
24
+ import "../../mui_extended/MenuActions/index.f6bfdd40.js";
25
25
  import "../../mui_extended/Popover/index.9f35d0eb.js";
26
- import "../../mui_extended/Pager/index.82e89328.js";
27
- import "../../mui_extended/Tab/index.c39a6681.js";
26
+ import "../../mui_extended/Pager/index.da26e9d4.js";
27
+ import "../../mui_extended/Tab/index.0d5f96e6.js";
28
28
  import "../../mui_extended/Tooltip/index.5a795dcd.js";
29
29
  const RHFCheckboxRoot = styled("div")(({
30
30
  theme
@@ -6,25 +6,25 @@ import { jsxs, jsx, Fragment } from "react/jsx-runtime";
6
6
  import { useFormatter, useResponsiveDesktop } from "@m4l/graphics";
7
7
  import { useState, useEffect } from "react";
8
8
  import clsx from "clsx";
9
- import "../../Icon/index.9fcd1476.js";
9
+ import "../../Icon/index.2414ff25.js";
10
10
  import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
11
- import "../../mui_extended/IconButton/index.12f1a3c3.js";
12
- import "../../mui_extended/Accordion/index.a6447bf8.js";
11
+ import "../../mui_extended/IconButton/index.a318316e.js";
12
+ import "../../mui_extended/Accordion/index.42cef1c7.js";
13
13
  import { T as Typography } from "../../mui_extended/Typography/index.443590d6.js";
14
14
  import "../../mui_extended/Avatar/index.75e6ed57.js";
15
15
  import "react-router-dom";
16
16
  import "@mui/material/Button";
17
- import "../../mui_extended/Button/index.4288f9fc.js";
17
+ import "../../mui_extended/Button/index.40af964e.js";
18
18
  import "../../mui_extended/CheckBox.5f6c78b0.js";
19
19
  import "../../mui_extended/Badge/index.cad260fe.js";
20
20
  import "../../Image/index.c18ebf5a.js";
21
21
  import "@mui/lab";
22
- import "../../mui_extended/MenuActions/index.43a2e1ae.js";
22
+ import "../../mui_extended/MenuActions/index.f6bfdd40.js";
23
23
  import "../../mui_extended/Popover/index.9f35d0eb.js";
24
- import "../../mui_extended/Pager/index.82e89328.js";
25
- import "../../mui_extended/Tab/index.c39a6681.js";
24
+ import "../../mui_extended/Pager/index.da26e9d4.js";
25
+ import "../../mui_extended/Tab/index.0d5f96e6.js";
26
26
  import "../../mui_extended/Tooltip/index.5a795dcd.js";
27
- import { H as HelperText } from "../../HelperText/index.6ef76993.js";
27
+ import { H as HelperText } from "../../HelperText/index.6c3adb40.js";
28
28
  import { styled } from "@mui/material/styles";
29
29
  import { unstable_composeClasses } from "@mui/base";
30
30
  const SKTRHFWrapperTextField = styled("div")(({
@@ -1,7 +1,7 @@
1
1
  import { styled, generateUtilityClasses, generateUtilityClass } from "@mui/material";
2
2
  import { useFormContext, Controller } from "react-hook-form";
3
- import { H as HelperText } from "../../HelperText/index.6ef76993.js";
4
- import { P as Period } from "../../Period/index.26071a16.js";
3
+ import { H as HelperText } from "../../HelperText/index.6c3adb40.js";
4
+ import { P as Period } from "../../Period/index.4fd9df2a.js";
5
5
  import { unstable_composeClasses } from "@mui/base";
6
6
  import { jsx, jsxs } from "react/jsx-runtime";
7
7
  const RHFPeriodRoot = styled("div")(({
@@ -1,10 +1,10 @@
1
1
  import { useModuleSkeleton, useEnvironment } from "@m4l/core";
2
2
  import { styled, Skeleton, generateUtilityClasses, TextField, InputAdornment, generateUtilityClass } from "@mui/material";
3
3
  import { forwardRef, useState, useEffect } from "react";
4
- import { I as IconButton } from "../../mui_extended/IconButton/index.12f1a3c3.js";
4
+ import { I as IconButton } from "../../mui_extended/IconButton/index.a318316e.js";
5
5
  import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
6
6
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
7
- import "../../Icon/index.9fcd1476.js";
7
+ import "../../Icon/index.2414ff25.js";
8
8
  import "clsx";
9
9
  import { useResponsiveDesktop } from "@m4l/graphics";
10
10
  import { useFormContext, Controller } from "react-hook-form";
@@ -12,7 +12,7 @@ import { styled as styled$1 } from "@mui/material/styles";
12
12
  import { unstable_composeClasses } from "@mui/base";
13
13
  import { g as getComponentUtilityClass } from "../../../utils/index.c43a95f4.js";
14
14
  import { T as Typography } from "../../mui_extended/Typography/index.443590d6.js";
15
- import { H as HelperText } from "../../HelperText/index.6ef76993.js";
15
+ import { H as HelperText } from "../../HelperText/index.6c3adb40.js";
16
16
  const SkeletonTextFieldRoot = styled("div")(() => ({
17
17
  display: "flex",
18
18
  flexDirection: "column",
@@ -7,26 +7,26 @@ import { useEnvironment, useModuleDictionary, useModuleSkeleton } from "@m4l/cor
7
7
  import { Skeleton, generateUtilityClasses, generateUtilityClass, styled as styled$1 } from "@mui/material";
8
8
  import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
9
9
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
10
- import { B as Button } from "../../mui_extended/Button/index.4288f9fc.js";
10
+ import { B as Button } from "../../mui_extended/Button/index.40af964e.js";
11
11
  import { T as Typography } from "../../mui_extended/Typography/index.443590d6.js";
12
- import { H as HelperText } from "../../HelperText/index.6ef76993.js";
12
+ import { H as HelperText } from "../../HelperText/index.6c3adb40.js";
13
13
  import "clsx";
14
14
  import { styled } from "@mui/material/styles";
15
15
  import { unstable_composeClasses } from "@mui/base";
16
16
  import "@mui/material/Button";
17
- import "../../Icon/index.9fcd1476.js";
18
- import "../../mui_extended/IconButton/index.12f1a3c3.js";
17
+ import "../../Icon/index.2414ff25.js";
18
+ import "../../mui_extended/IconButton/index.a318316e.js";
19
19
  import "@m4l/graphics";
20
- import "../../mui_extended/Accordion/index.a6447bf8.js";
20
+ import "../../mui_extended/Accordion/index.42cef1c7.js";
21
21
  import "../../mui_extended/Avatar/index.75e6ed57.js";
22
22
  import "react-router-dom";
23
23
  import "../../mui_extended/CheckBox.5f6c78b0.js";
24
24
  import "../../mui_extended/Badge/index.cad260fe.js";
25
25
  import "@mui/lab";
26
- import "../../mui_extended/MenuActions/index.43a2e1ae.js";
26
+ import "../../mui_extended/MenuActions/index.f6bfdd40.js";
27
27
  import "../../mui_extended/Popover/index.9f35d0eb.js";
28
- import "../../mui_extended/Pager/index.82e89328.js";
29
- import "../../mui_extended/Tab/index.c39a6681.js";
28
+ import "../../mui_extended/Pager/index.da26e9d4.js";
29
+ import "../../mui_extended/Tab/index.0d5f96e6.js";
30
30
  import "../../mui_extended/Tooltip/index.5a795dcd.js";
31
31
  const UploadImageRoot = styled("div")(({
32
32
  theme
@@ -1,27 +1,27 @@
1
1
  import { useEnvironment } from "@m4l/core";
2
2
  import "react";
3
- import { u as useModal } from "../../hooks/useModal/index.e1c5c31e.js";
4
- import { m as modalUtilityClasses } from "./index.b0a7236c.js";
5
- import { I as Icon } from "../Icon/index.9fcd1476.js";
3
+ import { u as useModal } from "../../hooks/useModal/index.9b0cc3fe.js";
4
+ import { m as modalUtilityClasses } from "./index.e9fece72.js";
5
+ import { I as Icon } from "../Icon/index.2414ff25.js";
6
6
  import "@mui/material";
7
- import { I as IconButton } from "../mui_extended/IconButton/index.12f1a3c3.js";
8
- import "../mui_extended/Accordion/index.a6447bf8.js";
7
+ import { I as IconButton } from "../mui_extended/IconButton/index.a318316e.js";
8
+ import "../mui_extended/Accordion/index.42cef1c7.js";
9
9
  import "../mui_extended/Typography/index.443590d6.js";
10
10
  import { jsxs, jsx } from "react/jsx-runtime";
11
11
  import clsx from "clsx";
12
12
  import "../mui_extended/Avatar/index.75e6ed57.js";
13
13
  import "react-router-dom";
14
14
  import "@mui/material/Button";
15
- import "../mui_extended/Button/index.4288f9fc.js";
15
+ import "../mui_extended/Button/index.40af964e.js";
16
16
  import "@m4l/graphics";
17
17
  import "../mui_extended/CheckBox.5f6c78b0.js";
18
18
  import "../mui_extended/Badge/index.cad260fe.js";
19
19
  import "../Image/index.c18ebf5a.js";
20
20
  import "@mui/lab";
21
- import "../mui_extended/MenuActions/index.43a2e1ae.js";
21
+ import "../mui_extended/MenuActions/index.f6bfdd40.js";
22
22
  import "../mui_extended/Popover/index.9f35d0eb.js";
23
- import "../mui_extended/Pager/index.82e89328.js";
24
- import "../mui_extended/Tab/index.c39a6681.js";
23
+ import "../mui_extended/Pager/index.da26e9d4.js";
24
+ import "../mui_extended/Tab/index.0d5f96e6.js";
25
25
  import "../mui_extended/Tooltip/index.5a795dcd.js";
26
26
  const Header = (props) => {
27
27
  const {
@@ -1,40 +1,40 @@
1
1
  import { useModuleDictionary, useEnvironment } from "@m4l/core";
2
2
  import "react";
3
- import { u as useModal } from "../../hooks/useModal/index.e1c5c31e.js";
4
- import { A as Actions } from "../CommonActions/components/Actions/index.19d67bc6.js";
5
- import { A as ActionCancel } from "../CommonActions/components/ActionCancel/index.1051a117.js";
6
- import { A as ActionIntro } from "../CommonActions/components/ActionIntro/index.bfe3256c.js";
3
+ import { u as useModal } from "../../hooks/useModal/index.9b0cc3fe.js";
4
+ import { A as Actions } from "../CommonActions/components/Actions/index.5abb6ac4.js";
5
+ import { A as ActionCancel } from "../CommonActions/components/ActionCancel/index.6cf96d04.js";
6
+ import { A as ActionIntro } from "../CommonActions/components/ActionIntro/index.856df8ef.js";
7
7
  import "react-hook-form";
8
8
  import { Typography } from "@mui/material";
9
9
  import "@mui/material/Button";
10
- import "../mui_extended/Button/index.4288f9fc.js";
10
+ import "../mui_extended/Button/index.40af964e.js";
11
11
  import "clsx";
12
12
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
13
13
  import "../../react-draggable.7abb5d0a.js";
14
14
  import "../Resizeable/index.9a9c79a4.js";
15
15
  import "@m4l/graphics";
16
- import "../Icon/index.9fcd1476.js";
17
- import { m as modalUtilityClasses } from "./index.b0a7236c.js";
16
+ import "../Icon/index.2414ff25.js";
17
+ import { m as modalUtilityClasses } from "./index.e9fece72.js";
18
18
  import { I as Image } from "../Image/index.c18ebf5a.js";
19
- import "../mui_extended/IconButton/index.12f1a3c3.js";
20
- import "../mui_extended/Accordion/index.a6447bf8.js";
19
+ import "../mui_extended/IconButton/index.a318316e.js";
20
+ import "../mui_extended/Accordion/index.42cef1c7.js";
21
21
  import "../mui_extended/Typography/index.443590d6.js";
22
22
  import "../mui_extended/Avatar/index.75e6ed57.js";
23
23
  import "react-router-dom";
24
24
  import "../mui_extended/CheckBox.5f6c78b0.js";
25
25
  import "../mui_extended/Badge/index.cad260fe.js";
26
26
  import "@mui/lab";
27
- import "../mui_extended/MenuActions/index.43a2e1ae.js";
27
+ import "../mui_extended/MenuActions/index.f6bfdd40.js";
28
28
  import "../mui_extended/Popover/index.9f35d0eb.js";
29
- import "../mui_extended/Pager/index.82e89328.js";
30
- import "../mui_extended/Tab/index.c39a6681.js";
29
+ import "../mui_extended/Pager/index.da26e9d4.js";
30
+ import "../mui_extended/Tab/index.0d5f96e6.js";
31
31
  import "../mui_extended/Tooltip/index.5a795dcd.js";
32
32
  import "zustand";
33
- import "../areas/contexts/AreasContext/index.0a08a08b.js";
34
- import "../areas/components/AreasAdmin/index.7a0dabbe.js";
33
+ import "../areas/contexts/AreasContext/index.9820bc7f.js";
34
+ import "../areas/components/AreasAdmin/index.f011d49d.js";
35
35
  import "zustand/shallow";
36
- import "../ScrollBar/index.bbe48f4d.js";
37
- import "../areas/components/AreasViewer/index.fd49f06c.js";
36
+ import "../ScrollBar/index.d4410cb5.js";
37
+ import "../areas/components/AreasViewer/index.51a52736.js";
38
38
  import "../LinearProgressIndeterminate/index.60dabc06.js";
39
39
  import "../areas/contexts/WindowToolsMFContext/index.8f3e2a04.js";
40
40
  import "../areas/contexts/DynamicMFParmsContext/index.1607c78e.js";
@@ -1,20 +1,20 @@
1
1
  import { generateUtilityClasses, generateUtilityClass } from "@mui/material";
2
2
  import "../../react-draggable.7abb5d0a.js";
3
3
  import "react";
4
- import "../../contexts/ModalContext/index.89805978.js";
4
+ import "../../contexts/ModalContext/index.efc1135a.js";
5
5
  import "../Resizeable/index.9a9c79a4.js";
6
6
  import "react/jsx-runtime";
7
7
  import "@m4l/graphics";
8
- import "../Icon/index.9fcd1476.js";
8
+ import "../Icon/index.2414ff25.js";
9
9
  import "clsx";
10
10
  import "@m4l/core";
11
11
  import { unstable_composeClasses } from "@mui/base";
12
- import "../CommonActions/components/Actions/index.19d67bc6.js";
12
+ import "../CommonActions/components/Actions/index.5abb6ac4.js";
13
13
  import "@mui/material/Button";
14
- import "../mui_extended/Button/index.4288f9fc.js";
14
+ import "../mui_extended/Button/index.40af964e.js";
15
15
  import "react-hook-form";
16
- import "../mui_extended/IconButton/index.12f1a3c3.js";
17
- import "../mui_extended/Accordion/index.a6447bf8.js";
16
+ import "../mui_extended/IconButton/index.a318316e.js";
17
+ import "../mui_extended/Accordion/index.42cef1c7.js";
18
18
  import "../mui_extended/Typography/index.443590d6.js";
19
19
  import "../mui_extended/Avatar/index.75e6ed57.js";
20
20
  import "react-router-dom";
@@ -22,17 +22,17 @@ import "../mui_extended/CheckBox.5f6c78b0.js";
22
22
  import "../mui_extended/Badge/index.cad260fe.js";
23
23
  import "../Image/index.c18ebf5a.js";
24
24
  import "@mui/lab";
25
- import "../mui_extended/MenuActions/index.43a2e1ae.js";
25
+ import "../mui_extended/MenuActions/index.f6bfdd40.js";
26
26
  import "../mui_extended/Popover/index.9f35d0eb.js";
27
- import "../mui_extended/Pager/index.82e89328.js";
28
- import "../mui_extended/Tab/index.c39a6681.js";
27
+ import "../mui_extended/Pager/index.da26e9d4.js";
28
+ import "../mui_extended/Tab/index.0d5f96e6.js";
29
29
  import "../mui_extended/Tooltip/index.5a795dcd.js";
30
30
  import "zustand";
31
- import "../areas/contexts/AreasContext/index.0a08a08b.js";
32
- import "../areas/components/AreasAdmin/index.7a0dabbe.js";
31
+ import "../areas/contexts/AreasContext/index.9820bc7f.js";
32
+ import "../areas/components/AreasAdmin/index.f011d49d.js";
33
33
  import "zustand/shallow";
34
- import "../ScrollBar/index.bbe48f4d.js";
35
- import "../areas/components/AreasViewer/index.fd49f06c.js";
34
+ import "../ScrollBar/index.d4410cb5.js";
35
+ import "../areas/components/AreasViewer/index.51a52736.js";
36
36
  import "../LinearProgressIndeterminate/index.60dabc06.js";
37
37
  import "../areas/contexts/WindowToolsMFContext/index.8f3e2a04.js";
38
38
  import "../areas/contexts/DynamicMFParmsContext/index.1607c78e.js";
@@ -1,12 +1,12 @@
1
1
  import { generateUtilityClasses, generateUtilityClass, styled, Accordion as Accordion$1, AccordionSummary, AccordionDetails } from "@mui/material";
2
- import { I as IconButton } from "../IconButton/index.12f1a3c3.js";
2
+ import { I as IconButton } from "../IconButton/index.a318316e.js";
3
3
  import { useEnvironment } from "@m4l/core";
4
4
  import { unstable_composeClasses } from "@mui/base";
5
- import { I as Icon } from "../../Icon/index.9fcd1476.js";
5
+ import { I as Icon } from "../../Icon/index.2414ff25.js";
6
6
  import { T as Typography } from "../Typography/index.443590d6.js";
7
7
  import clsx from "clsx";
8
8
  import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
9
- import { g as getNameDataTestId } from "../../../vendor.f57d47a7.js";
9
+ import { g as getNameDataTestId } from "../../../vendor.88ed58a5.js";
10
10
  import { jsx, jsxs } from "react/jsx-runtime";
11
11
  const componentName = "M4LAccordion";
12
12
  generateUtilityClasses(componentName, [
@@ -1,2 +1,4 @@
1
1
  import { AvatarProps as MUIAvatarProps } from '@mui/material';
2
- export declare type AvatarProps = MUIAvatarProps;
2
+ export interface AvatarProps extends MUIAvatarProps {
3
+ dataTestId?: string;
4
+ }
@@ -7,5 +7,8 @@ export interface ButtonClassesType {
7
7
  variantContained: string;
8
8
  variantText: string;
9
9
  isDisabled: string;
10
+ colorError: string;
11
+ colorSuccess: string;
12
+ colorWarning: string;
10
13
  }
11
14
  export declare type ButtonClassesKey = keyof ButtonClassesType;
@@ -28,14 +28,17 @@ generateUtilityClasses(componentName$2, [
28
28
  "variantOutlined",
29
29
  "variantContained",
30
30
  "variantText",
31
- "isDisabled"
31
+ "isDisabled",
32
+ "colorError",
33
+ "colorSuccess",
34
+ "colorWarning"
32
35
  ]);
33
36
  function getButtonUtilityClass(slot) {
34
37
  return generateUtilityClass(componentName$2, slot);
35
38
  }
36
39
  const useUtilityClasses$2 = (onwerState) => {
37
40
  const slots = {
38
- root: ["root", onwerState.size === "small" && "sizeSmall", onwerState.size === "medium" && "sizeMedium", onwerState.variant === "outlined" && "variantOutlined", onwerState.variant === "contained" && "variantContained", onwerState.variant === "text" && "variantText", onwerState.isDisabled && "isDisabled"],
41
+ root: ["root", onwerState.size === "small" && "sizeSmall", onwerState.size === "medium" && "sizeMedium", onwerState.variant === "outlined" && "variantOutlined", onwerState.variant === "contained" && "variantContained", onwerState.variant === "text" && "variantText", onwerState.isDisabled && "isDisabled", onwerState.colorState === "error" && "colorError", onwerState.colorState === "success" && "colorSuccess", onwerState.colorState === "warning" && "colorWarning"],
39
42
  skeleton: ["skeleton"]
40
43
  };
41
44
  const composedClasses = unstable_composeClasses(slots, getButtonUtilityClass, {});
@@ -51,13 +54,15 @@ const Button = (props) => {
51
54
  disabled,
52
55
  skeletonWidth = "100px",
53
56
  skeletonHeight = "28px",
57
+ colorState,
54
58
  ...others
55
59
  } = props;
56
60
  const isSkeleton = useModuleSkeleton();
57
61
  const ownerState = {
58
62
  size,
59
63
  variant,
60
- isDisabled: disabled
64
+ isDisabled: disabled,
65
+ colorState
61
66
  };
62
67
  const classes = useUtilityClasses$2(ownerState);
63
68
  return /* @__PURE__ */ jsx(ButtonRoot, {
@@ -3,7 +3,8 @@ export interface ExtendButtonProps extends Omit<ButtonProps, 'size'> {
3
3
  size?: 'small' | 'medium';
4
4
  skeletonWidth?: number | string;
5
5
  skeletonHeight?: number | string;
6
+ colorState?: 'error' | 'success' | 'warning';
6
7
  }
7
- export interface OwnerState extends Pick<ExtendButtonProps, 'size' | 'variant'> {
8
+ export interface OwnerState extends Pick<ExtendButtonProps, 'size' | 'variant' | 'colorState'> {
8
9
  isDisabled?: boolean;
9
10
  }
@@ -1,7 +1,7 @@
1
1
  import { useMemo, useState } from "react";
2
2
  import { useModuleDictionary, useModuleSkeleton } from "@m4l/core";
3
3
  import { Skeleton, styled, generateUtilityClasses, generateUtilityClass, Tooltip, IconButton as IconButton$1 } from "@mui/material";
4
- import { I as Icon } from "../../Icon/index.9fcd1476.js";
4
+ import { I as Icon } from "../../Icon/index.2414ff25.js";
5
5
  import { jsx, Fragment } from "react/jsx-runtime";
6
6
  import clsx from "clsx";
7
7
  import { useResponsiveDesktop } from "@m4l/graphics";