@m4l/components 0.1.83 → 0.1.84

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 (85) hide show
  1. package/components/AccountPopover/classes/index.d.ts +4 -0
  2. package/components/AccountPopover/classes/types.d.ts +4 -0
  3. package/components/AccountPopover/dictionary.d.ts +1 -0
  4. package/components/AccountPopover/{index.2677fe77.js → index.bbeb9142.js} +73 -27
  5. package/components/AccountPopover/index.d.ts +1 -0
  6. package/components/AccountPopover/types.d.ts +2 -0
  7. package/components/AppBar/dictionary.d.ts +1 -0
  8. package/components/AppBar/{index.ad2a6f0e.js → index.43f8b54f.js} +17 -10
  9. package/components/AppBar/index.d.ts +1 -0
  10. package/components/CommonActions/components/ActionCancel/{index.b2fc495d.js → index.29517521.js} +1 -1
  11. package/components/CommonActions/components/ActionFormCancel/{index.60d8963e.js → index.89f1ac8e.js} +14 -14
  12. package/components/CommonActions/components/ActionFormIntro/{index.fde4ea51.js → index.bbc35e74.js} +1 -1
  13. package/components/CommonActions/components/ActionIntro/{index.724d8e17.js → index.a9420126.js} +1 -1
  14. package/components/CommonActions/components/Actions/{index.23a2d6ae.js → index.e70e8779.js} +12 -12
  15. package/components/DataGrid/{index.d5d0d62f.js → index.1d0a3dec.js} +13 -12
  16. package/components/DataGrid/subcomponents/Actions/{index.201394f5.js → index.a8fc9f6a.js} +44 -29
  17. package/components/DynamicFilter/{index.7d134537.js → index.912679cc.js} +25 -25
  18. package/components/GridLayout/constants.d.ts +1 -1
  19. package/components/GridLayout/{index.70085b00.js → index.c55f16eb.js} +20 -16
  20. package/components/GridLayout/subcomponents/Griditem/{index.c09681ff.js → index.6c68811f.js} +1 -6
  21. package/components/GridLayout/subcomponents/Responsive/{index.eb04fd5e.js → index.a6e33b8d.js} +1 -2
  22. package/components/GridLayout/subcomponents/SizeProvider/{index.9c5e80b2.js → index.bfa05dfa.js} +3 -6
  23. package/components/GridLayout/types.d.ts +2 -2
  24. package/components/HelperText/{index.28e9105d.js → index.a47ff233.js} +7 -7
  25. package/components/Icon/{index.2414ff25.js → index.d1402200.js} +1 -1
  26. package/components/LanguagePopover/{index.065e0296.js → index.807f5272.js} +7 -7
  27. package/components/ModalDialog/{index.fb148f76.js → index.42e804cf.js} +4 -6
  28. package/components/NavLink/{index.2ef07c44.js → index.ff5a939c.js} +7 -7
  29. package/components/ObjectLogs/{index.5d74dfe0.js → index.dc02715d.js} +16 -16
  30. package/components/PaperForm/{index.f931dc02.js → index.249c2404.js} +1 -1
  31. package/components/Period/{index.0e6512b2.js → index.e129cdec.js} +13 -13
  32. package/components/PropertyValue/{index.a67c9916.js → index.93e40532.js} +1 -1
  33. package/components/SideBar/classes/index.d.ts +0 -1
  34. package/components/SideBar/classes/types.d.ts +0 -1
  35. package/components/SideBar/{index.72564ef2.js → index.327679a6.js} +22 -27
  36. package/components/areas/components/AreasAdmin/classes/types.d.ts +1 -0
  37. package/components/areas/components/AreasAdmin/index.8ab71eb9.js +718 -0
  38. package/components/areas/components/AreasAdmin/index.d.ts +2 -2
  39. package/components/areas/components/AreasAdmin/subcomponents/AreaChip/subcomponents/ChipActionsMobile/types.d.ts +2 -1
  40. package/components/areas/components/AreasAdmin/subcomponents/AreaChip/types.d.ts +2 -0
  41. package/components/areas/components/AreasAdmin/subcomponents/AreaChipMobile/subcomponents/ChipMobile/ChipMobile.d.ts +6 -0
  42. package/components/areas/components/AreasViewer/classes/index.d.ts +1 -1
  43. package/components/areas/components/AreasViewer/classes/types.d.ts +1 -0
  44. package/components/areas/components/AreasViewer/{index.9ed7dfd7.js → index.933e506b.js} +120 -41
  45. package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/AreaGridLayout/index.d.ts +2 -2
  46. package/components/areas/components/{index.654b08aa.js → index.9e48d8ff.js} +10 -10
  47. package/components/areas/contexts/AreasContext/helper.d.ts +7 -0
  48. package/components/areas/contexts/AreasContext/{index.36fe6953.js → index.230d1584.js} +17 -7
  49. package/components/areas/contexts/AreasContext/types.d.ts +8 -0
  50. package/components/areas/contexts/{index.68c53fc9.js → index.f494e241.js} +1 -1
  51. package/components/areas/hooks/useAreas/{index.a4c03e23.js → index.b8449343.js} +1 -1
  52. package/components/areas/index.32db4fa7.js +53 -0
  53. package/components/areas/utils/useOnClickOutside/index.d.ts +4 -0
  54. package/components/formatters/BooleanFormatter/{index.32de0803.js → index.b2f02bc4.js} +1 -1
  55. package/components/formatters/{index.d16d2331.js → index.f9ad88b4.js} +2 -2
  56. package/components/hook-form/RHFAutocomplete/{index.42df8eb4.js → index.d5afb409.js} +9 -8
  57. package/components/hook-form/RHFAutocompleteAsync/{index.0441524c.js → index.a4f00088.js} +1 -1
  58. package/components/hook-form/RHFCheckbox/{index.c66147f7.js → index.9bf6edb0.js} +8 -8
  59. package/components/hook-form/RHFDateTime/{index.4698ca29.js → index.a2c1ed2c.js} +8 -8
  60. package/components/hook-form/RHFPeriod/{index.f653934b.js → index.b5204ce2.js} +2 -2
  61. package/components/hook-form/RHFTextField/{index.1fa07688.js → index.5a0fa776.js} +3 -3
  62. package/components/hook-form/RHFUpload/{index.93c2dcb5.js → index.b36539d6.js} +8 -8
  63. package/components/modal/{WindowBase.92ce9b8f.js → WindowBase.37158e8d.js} +15 -11
  64. package/components/modal/{WindowConfirm.4c3d2cd7.js → WindowConfirm.a68aa0f1.js} +15 -15
  65. package/components/modal/{index.1bd35bd5.js → index.6f281ef8.js} +12 -12
  66. package/components/mui_extended/Accordion/{index.5111314b.js → index.46771196.js} +3 -3
  67. package/components/mui_extended/CheckBox/CheckBox.d.ts +1 -1
  68. package/components/mui_extended/{CheckBox.5f6c78b0.js → CheckBox.38abccd8.js} +5 -3
  69. package/components/mui_extended/IconButton/{index.a318316e.js → index.62aea582.js} +2 -12
  70. package/components/mui_extended/MenuActions/{index.f6bfdd40.js → index.2493b1b1.js} +21 -6
  71. package/components/mui_extended/MenuActions/types.d.ts +2 -0
  72. package/components/mui_extended/Pager/{index.da26e9d4.js → index.a7f87c96.js} +84 -82
  73. package/components/mui_extended/Pager/subcomponents/CustomTablePagination/index.d.ts +5 -0
  74. package/components/mui_extended/Pager/subcomponents/CustomTablePagination/types.d.ts +1 -4
  75. package/components/mui_extended/Tab/{index.0989d15d.js → index.756fe693.js} +1 -1
  76. package/components/mui_extended/{index.813723c5.js → index.ba27649e.js} +7 -7
  77. package/contexts/ModalContext/{index.577bf36b.js → index.51da83de.js} +1 -1
  78. package/hooks/useModal/{index.7a07c208.js → index.7611bf21.js} +1 -1
  79. package/index.js +64 -60
  80. package/package.json +1 -1
  81. package/{vendor.5365cc7e.js → vendor.1af105d6.js} +47 -47
  82. package/components/areas/components/AreasAdmin/index.7bfec13f.js +0 -487
  83. package/components/areas/index.ec4f088c.js +0 -32
  84. /package/components/areas/components/{AreasAdmin/subcomponents/AreaChipMobile → AreasViewer/subcomponents/Area/subcomponents/Window/subcomponents/Header}/subcomponents/PanelWindowPopUp/index.d.ts +0 -0
  85. /package/components/areas/components/{AreasAdmin/subcomponents/AreaChipMobile → AreasViewer/subcomponents/Area/subcomponents/Window/subcomponents/Header}/subcomponents/PanelWindowPopUp/types.d.ts +0 -0
@@ -1,2 +1,2 @@
1
- /// <reference types="react" />
2
- export declare function AreasAdmin(): import("react").JSX.Element | null;
1
+ import React from 'react';
2
+ export declare function AreasAdmin(): React.JSX.Element | null;
@@ -1,4 +1,5 @@
1
+ import { MouseEvent } from "react";
1
2
  export interface ChipActionsMobileProps {
2
- handlerOpenPopoverEditArea: () => void;
3
+ handlerOpenPopoverEditArea: (e: MouseEvent | undefined) => void;
3
4
  areaId: string;
4
5
  }
@@ -1,6 +1,8 @@
1
+ /// <reference types="react" />
1
2
  import { FieldValues } from 'react-hook-form';
2
3
  export interface AreaChipProps {
3
4
  areaId: string;
5
+ setAnchorMenuAreas?: React.Dispatch<React.SetStateAction<HTMLDivElement | null>>;
4
6
  selected: boolean;
5
7
  disabled: boolean;
6
8
  }
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import { AreaChipProps } from '../../../AreaChip/types';
3
+ export declare const ChipMobile: {
4
+ (props: AreaChipProps): import("react").JSX.Element;
5
+ displayName: string;
6
+ };
@@ -1,5 +1,5 @@
1
1
  import { AreasViewerClasses } from './types';
2
2
  import { OwnerState } from '../../../contexts/AreasContext/types';
3
3
  export declare const areasViewerClasses: AreasViewerClasses;
4
- export declare const useAreasViewerUtilityClasses: (ownerState: OwnerState) => Record<"root" | "windowLinearProgressBar" | "areaRoot" | "areasLoadingErrorRoot" | "areasLoadingErrorLoading" | "areasLoadingError" | "areasLoadingErrorIcon" | "areasLoadingErrorTitle" | "areasLoadingErrorDescription" | "areasLoadingErrorDivider" | "areaGridLayoutPanelContainer" | "areaGridLayout" | "areaGridLayoutPopupsContainer" | "areasWindowPopUpList" | "windowRoot" | "windowRootContainer" | "windowHeader" | "windowHeaderTitle" | "windowHeaderMainActions" | "windowHeaderCancelHandle" | "windowContent" | "windowLinearProgressRoot" | "windowPopupRoot" | "windowModalRoot" | "selectedWindow" | "windowToastiesContainer" | "windowToastiesContainerTostys" | "windowToastyMeesageButtonsContainer" | "windowToastyMessage" | "windowToastyButtonsContainer" | "windowToastyPin" | "windowToastyClose" | "panelWindowsRoot" | "panelWindowsButtonContainer" | "windowToastyContainer", string>;
4
+ export declare const useAreasViewerUtilityClasses: (ownerState: OwnerState) => Record<"root" | "windowLinearProgressBar" | "areasPopoverListWindows" | "areaRoot" | "areasLoadingErrorRoot" | "areasLoadingErrorLoading" | "areasLoadingError" | "areasLoadingErrorIcon" | "areasLoadingErrorTitle" | "areasLoadingErrorDescription" | "areasLoadingErrorDivider" | "areaGridLayoutPanelContainer" | "areaGridLayout" | "areaGridLayoutPopupsContainer" | "areasWindowPopUpList" | "windowRoot" | "windowRootContainer" | "windowHeader" | "windowHeaderTitle" | "windowHeaderMainActions" | "windowHeaderCancelHandle" | "windowContent" | "windowLinearProgressRoot" | "windowPopupRoot" | "windowModalRoot" | "selectedWindow" | "windowToastiesContainer" | "windowToastiesContainerTostys" | "windowToastyMeesageButtonsContainer" | "windowToastyMessage" | "windowToastyButtonsContainer" | "windowToastyPin" | "windowToastyClose" | "panelWindowsRoot" | "panelWindowsButtonContainer" | "windowToastyContainer", string>;
5
5
  export declare type ViwerClasses = ReturnType<typeof useAreasViewerUtilityClasses>;
@@ -35,6 +35,7 @@ export interface AreasViewerClasses {
35
35
  windowToastyClose: string;
36
36
  panelWindowsRoot: string;
37
37
  panelWindowsButtonContainer: string;
38
+ areasPopoverListWindows: string;
38
39
  selected: string;
39
40
  selectedWindow: string;
40
41
  colapsed: string;
@@ -13,26 +13,26 @@ import { a as AREAS_VIEWER_CLASS_NAME } from "../../constants.66529246.js";
13
13
  import { shallow } from "zustand/shallow";
14
14
  import React__default, { useMemo, useState, useCallback, useEffect } from "react";
15
15
  import clsx from "clsx";
16
- import { u as useAreasStore } from "../../hooks/useAreas/index.a4c03e23.js";
16
+ import { u as useAreasStore } from "../../hooks/useAreas/index.b8449343.js";
17
17
  import { useModuleDictionary, useEnvironment, useModuleSkeleton, useNetwork, useHostTools, axiosOperation } from "@m4l/core";
18
- import { I as IconButton } from "../../../mui_extended/IconButton/index.a318316e.js";
19
- import "../../../mui_extended/Accordion/index.5111314b.js";
20
- import { I as Icon } from "../../../Icon/index.2414ff25.js";
18
+ import { I as IconButton } from "../../../mui_extended/IconButton/index.62aea582.js";
19
+ import "../../../mui_extended/Accordion/index.46771196.js";
20
+ import { I as Icon } from "../../../Icon/index.d1402200.js";
21
21
  import { T as Typography } from "../../../mui_extended/Typography/index.443590d6.js";
22
22
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
23
23
  import "../../../mui_extended/Avatar/index.75e6ed57.js";
24
24
  import "react-router-dom";
25
25
  import "@mui/material/Button";
26
26
  import { B as Button } from "../../../mui_extended/Button/index.40af964e.js";
27
- import { useResponsiveDesktop, useHostTheme, useFormatter, useLocales, useFirstRender } from "@m4l/graphics";
28
- import "../../../mui_extended/CheckBox.5f6c78b0.js";
27
+ import "../../../mui_extended/CheckBox.38abccd8.js";
29
28
  import "../../../mui_extended/Badge/index.cad260fe.js";
30
29
  import "../../../Image/index.c18ebf5a.js";
31
30
  import "@mui/lab";
32
- import { M as MenuActions, a as MemonizedMenuActions } from "../../../mui_extended/MenuActions/index.f6bfdd40.js";
31
+ import { M as MenuActions, a as MemonizedMenuActions } from "../../../mui_extended/MenuActions/index.2493b1b1.js";
33
32
  import "../../../mui_extended/Popover/index.9f35d0eb.js";
34
- import "../../../mui_extended/Pager/index.da26e9d4.js";
35
- import "../../../mui_extended/Tab/index.0989d15d.js";
33
+ import "../../../mui_extended/Pager/index.a7f87c96.js";
34
+ import { useResponsiveDesktop, useHostTheme, useFormatter, useLocales, useFirstRender } from "@m4l/graphics";
35
+ import "../../../mui_extended/Tab/index.756fe693.js";
36
36
  import "../../../mui_extended/Tooltip/index.5a795dcd.js";
37
37
  import { I as ICONS } from "../../icons.8266ccc8.js";
38
38
  import { g as getAreasDictionary, D as DICCTIONARY } from "../../dictionary.afb7e3d9.js";
@@ -41,58 +41,58 @@ import debounce from "lodash/debounce";
41
41
  import { L as LinearProgress } from "../../../mui_extended/LinearProgress/index.c92b9ba9.js";
42
42
  import { W as WindowToolsMFProvider } from "../../contexts/WindowToolsMFContext/index.8f3e2a04.js";
43
43
  import { D as DynamicMFParmsProvider } from "../../contexts/DynamicMFParmsContext/index.1607c78e.js";
44
- import "../../../../contexts/ModalContext/index.577bf36b.js";
44
+ import "../../../../contexts/ModalContext/index.51da83de.js";
45
45
  import "../../../../contexts/RHFormContext/index.b9266262.js";
46
- import "../../../GridLayout/subcomponents/Griditem/index.c09681ff.js";
47
- import "../../../GridLayout/index.70085b00.js";
48
- import { R as Responsive } from "../../../GridLayout/subcomponents/Responsive/index.eb04fd5e.js";
49
- import { S as SizeProvider } from "../../../GridLayout/subcomponents/SizeProvider/index.9c5e80b2.js";
50
- import { R as ROW_HEIGTH_GRIDLAYOUT, M as MARGIN_GRIDLAYOUT, P as PADDING_GRIDLAYOUT } from "../../contexts/AreasContext/index.36fe6953.js";
46
+ import "../../../GridLayout/subcomponents/Griditem/index.6c68811f.js";
47
+ import "../../../GridLayout/index.c55f16eb.js";
48
+ import { R as Responsive } from "../../../GridLayout/subcomponents/Responsive/index.a6e33b8d.js";
49
+ import { S as SizeProvider } from "../../../GridLayout/subcomponents/SizeProvider/index.bfa05dfa.js";
50
+ import { R as ROW_HEIGTH_GRIDLAYOUT, M as MARGIN_GRIDLAYOUT, P as PADDING_GRIDLAYOUT } from "../../contexts/AreasContext/index.230d1584.js";
51
51
  import "../../../animate/index.4e9774a6.js";
52
52
  import "framer-motion";
53
53
  import "../../../animate/LoadingScreen/index.1d0c4307.js";
54
54
  import "../../../animate/PropagateLoader/index.7fab43c8.js";
55
- import "../AreasAdmin/index.7bfec13f.js";
55
+ import "../AreasAdmin/index.8ab71eb9.js";
56
56
  import "../../../ScrollBar/index.d4410cb5.js";
57
57
  import "zustand";
58
58
  import "react-hook-form";
59
- import "../../../hook-form/RHFAutocomplete/index.42df8eb4.js";
60
- import "../../../HelperText/index.28e9105d.js";
61
- import "../../../hook-form/RHFAutocompleteAsync/index.0441524c.js";
62
- import "../../../hook-form/RHFCheckbox/index.c66147f7.js";
59
+ import "../../../hook-form/RHFAutocomplete/index.d5afb409.js";
60
+ import "../../../HelperText/index.a47ff233.js";
61
+ import "../../../hook-form/RHFAutocompleteAsync/index.a4f00088.js";
62
+ import "../../../hook-form/RHFCheckbox/index.9bf6edb0.js";
63
63
  import "@mui/x-date-pickers";
64
- import "../../../hook-form/RHFDateTime/index.4698ca29.js";
65
- import "../../../hook-form/RHFTextField/index.1fa07688.js";
66
- import "../../../hook-form/RHFPeriod/index.f653934b.js";
67
- import "../../../Period/index.0e6512b2.js";
68
- import "../../../CommonActions/components/Actions/index.23a2d6ae.js";
64
+ import "../../../hook-form/RHFDateTime/index.a2c1ed2c.js";
65
+ import "../../../hook-form/RHFTextField/index.5a0fa776.js";
66
+ import "../../../hook-form/RHFPeriod/index.b5204ce2.js";
67
+ import "../../../Period/index.e129cdec.js";
68
+ import "../../../CommonActions/components/Actions/index.e70e8779.js";
69
69
  import { c as cjs } from "../../../../react-draggable.7abb5d0a.js";
70
70
  import { R as ResizeableWindow } from "../../../Resizeable/index.9a9c79a4.js";
71
- import "../../../modal/index.1bd35bd5.js";
71
+ import "../../../modal/index.6f281ef8.js";
72
72
  import "lodash/isString";
73
73
  import "react-dropzone";
74
- import "../../../hook-form/RHFUpload/index.93c2dcb5.js";
75
- import "../../../DataGrid/index.d5d0d62f.js";
74
+ import "../../../hook-form/RHFUpload/index.b36539d6.js";
75
+ import "../../../DataGrid/index.1d0a3dec.js";
76
76
  import "react-dnd";
77
77
  import "react-dnd-html5-backend";
78
- import "../../../DataGrid/subcomponents/Actions/index.201394f5.js";
78
+ import "../../../DataGrid/subcomponents/Actions/index.a8fc9f6a.js";
79
79
  import "../../../DataGrid/subcomponents/editors/TextEditor/index.91380a55.js";
80
- import "../../../DynamicFilter/index.7d134537.js";
80
+ import "../../../DynamicFilter/index.912679cc.js";
81
81
  import "yup";
82
82
  import "lodash";
83
- import "../../../LanguagePopover/index.065e0296.js";
84
- import "../../../NavLink/index.2ef07c44.js";
83
+ import "../../../LanguagePopover/index.807f5272.js";
84
+ import "../../../NavLink/index.ff5a939c.js";
85
85
  import "../../../NoItemSelected/index.23dfc897.js";
86
- import "../../../ObjectLogs/index.5d74dfe0.js";
86
+ import "../../../ObjectLogs/index.dc02715d.js";
87
87
  import "../../../../react-json-view.57125fcf.js";
88
- import "../../../PaperForm/index.f931dc02.js";
88
+ import "../../../PaperForm/index.249c2404.js";
89
89
  import "../../../Page/index.4237c241.js";
90
- import "../../../PropertyValue/index.a67c9916.js";
90
+ import "../../../PropertyValue/index.93e40532.js";
91
91
  import "../../../SplitLayout/index.9ef430f6.js";
92
92
  import "../../../../react-splitter-layout.8b1655c8.js";
93
- import "../../../SideBar/index.72564ef2.js";
94
- import "../../../AppBar/index.ad2a6f0e.js";
95
- import "../../../AccountPopover/index.2677fe77.js";
93
+ import "../../../SideBar/index.327679a6.js";
94
+ import "../../../AppBar/index.43f8b54f.js";
95
+ import "../../../AccountPopover/index.bbeb9142.js";
96
96
  const areasViewerClasses = generateUtilityClasses(AREAS_VIEWER_CLASS_NAME, [
97
97
  "root",
98
98
  "areaRoot",
@@ -131,6 +131,7 @@ const areasViewerClasses = generateUtilityClasses(AREAS_VIEWER_CLASS_NAME, [
131
131
  "panelWindowsRoot",
132
132
  "panelWindowsButtonContainer",
133
133
  "containerLinearProgress",
134
+ "areasPopoverListWindows",
134
135
  "selected",
135
136
  "colapsed",
136
137
  "selectedWindow",
@@ -178,7 +179,8 @@ const useAreasViewerUtilityClasses = (ownerState) => {
178
179
  windowToastyPin: ["windowToastyPin"],
179
180
  windowToastyClose: ["windowToastyClose"],
180
181
  panelWindowsRoot: ["panelWindowsRoot"],
181
- panelWindowsButtonContainer: ["panelWindowsButtonContainer"]
182
+ panelWindowsButtonContainer: ["panelWindowsButtonContainer"],
183
+ areasPopoverListWindows: ["areasPopoverListWindows"]
182
184
  };
183
185
  return unstable_composeClasses(slots, getComponentUtilityClass(AREAS_VIEWER_CLASS_NAME), {});
184
186
  };
@@ -602,6 +604,56 @@ const WindowPopUpsList = (props) => {
602
604
  return null;
603
605
  }
604
606
  };
607
+ const PanelWindowPopUp = (props) => {
608
+ const {
609
+ currentAreaId
610
+ } = props;
611
+ const {
612
+ host_static_assets,
613
+ environment_assets
614
+ } = useEnvironment();
615
+ const windowsLayouts = useAreasStore((state) => state.hashAreas[currentAreaId].layoutItemsIds.filter((li) => state.hashWindows[li].emergeType === "layout").map((lim) => {
616
+ const w = state.hashWindows[lim];
617
+ return {
618
+ i: w.windowId,
619
+ url_icon: w.url_icon,
620
+ title: w.title
621
+ };
622
+ }), shallow);
623
+ const theme = useTheme();
624
+ const {
625
+ maximizeLayout
626
+ } = useAreasStore((state) => state.areaActions);
627
+ const onTouched = (layoutId) => {
628
+ maximizeLayout(currentAreaId, layoutId);
629
+ };
630
+ const menuActions = windowsLayouts.map((element) => {
631
+ return {
632
+ onClick: () => onTouched(element.i),
633
+ label: element.title,
634
+ urlIcon: element.url_icon
635
+ };
636
+ });
637
+ return /* @__PURE__ */ jsx(Fragment, {
638
+ children: menuActions.length > 0 ? /* @__PURE__ */ jsx(MenuActions, {
639
+ urlIcon: `${host_static_assets}/${environment_assets}/frontend/components/areas/assets/icons/${ICONS.MODULE}`,
640
+ arrowType: "no-arrow",
641
+ marginTop: "12px!important",
642
+ marginLeft: "14px!important",
643
+ anchorOrigin: {
644
+ vertical: "bottom",
645
+ horizontal: "right"
646
+ },
647
+ transformOrigin: {
648
+ vertical: "top",
649
+ horizontal: "right"
650
+ },
651
+ menuActions,
652
+ className: areasViewerClasses.areasPopoverListWindows,
653
+ menuActionSx: theme.components?.M4LAreasAdminMobilePopoverOptions?.styleOverrides
654
+ }) : null
655
+ });
656
+ };
605
657
  function Header(props) {
606
658
  const {
607
659
  areaId,
@@ -620,6 +672,12 @@ function Header(props) {
620
672
  window2.fnQueryClose
621
673
  ];
622
674
  }, shallow);
675
+ const currentAreaId = useAreasStore((state) => state.currentAreaId, shallow);
676
+ const areas = useAreasStore((state) => state.areas.map((a) => ({
677
+ id: a,
678
+ name: state.hashAreas[a].name
679
+ })), shallow);
680
+ const currentArea = areas.find((area) => area.id === currentAreaId);
623
681
  const {
624
682
  saveModuleCookies,
625
683
  resetModuleCookies
@@ -711,7 +769,9 @@ function Header(props) {
711
769
  horizontal: "right"
712
770
  },
713
771
  menuActions
714
- }), !colapsed && (emergeType === "layout" || emergeType === "popup") && /* @__PURE__ */ jsx(IconButton, {
772
+ }), maximizedId && emergeType === "layout" && currentArea ? /* @__PURE__ */ jsx(PanelWindowPopUp, {
773
+ currentAreaId: currentArea.id
774
+ }) : null, !colapsed && (emergeType === "layout" || emergeType === "popup") && /* @__PURE__ */ jsx(IconButton, {
715
775
  className: "m4l_draggableCancel",
716
776
  onClick: maxNormalize,
717
777
  "aria-label": "click",
@@ -1320,6 +1380,24 @@ const AreaGridLayout = (props) => {
1320
1380
  const {
1321
1381
  areaId
1322
1382
  } = props;
1383
+ const {
1384
+ host_static_assets,
1385
+ environment_assets
1386
+ } = useEnvironment();
1387
+ const ResizeHandle = React__default.forwardRef((props2, ref) => {
1388
+ const {
1389
+ handleAxis,
1390
+ ...restProps
1391
+ } = props2;
1392
+ return /* @__PURE__ */ jsx("div", {
1393
+ ref,
1394
+ className: `react-resizable-handle react-resizable-handle-${handleAxis}`,
1395
+ ...restProps,
1396
+ children: /* @__PURE__ */ jsx(Icon, {
1397
+ src: `${host_static_assets}/${environment_assets}/frontend/components/areas/assets/icons/control_size.svg`
1398
+ })
1399
+ });
1400
+ });
1323
1401
  const hashLayoutItems = useAreasStore((state) => state.hashAreas[areaId].layoutItemsIds, shallow);
1324
1402
  const layouts = useAreasStore((state) => state.hashAreas[areaId].layouts, shallow);
1325
1403
  const breakpoints = useAreasStore((state) => state.hashAreas[areaId].breakpoints, shallow);
@@ -1364,7 +1442,8 @@ const AreaGridLayout = (props) => {
1364
1442
  onContainerChange(areaId, e);
1365
1443
  },
1366
1444
  preventCollision: false,
1367
- maximizeId: maximizedId
1445
+ maximizeId: maximizedId,
1446
+ resizeHandle: /* @__PURE__ */ jsx(ResizeHandle, {})
1368
1447
  }
1369
1448
  );
1370
1449
  };
@@ -1,7 +1,7 @@
1
- /// <reference types="react" />
2
1
  import { GridLayoutProps } from './types';
2
+ import React from 'react';
3
3
  /**
4
4
  * @description Retorna el componente GridLayout con las ventanas (layouts) y popups tomados del área de trabajo.
5
5
  * @returns JSX
6
6
  */
7
- export declare const AreaGridLayout: (props: GridLayoutProps) => import("react").JSX.Element;
7
+ export declare const AreaGridLayout: (props: GridLayoutProps) => React.JSX.Element;
@@ -1,30 +1,30 @@
1
1
  import "react";
2
2
  import "@m4l/core";
3
3
  import "@mui/material";
4
- import "../../Icon/index.2414ff25.js";
4
+ import "../../Icon/index.d1402200.js";
5
5
  import "clsx";
6
6
  import "react/jsx-runtime";
7
- import "../../mui_extended/IconButton/index.a318316e.js";
7
+ import "../../mui_extended/IconButton/index.62aea582.js";
8
8
  import "@m4l/graphics";
9
9
  import "zustand";
10
- import "../contexts/AreasContext/index.36fe6953.js";
11
- import "./AreasAdmin/index.7bfec13f.js";
10
+ import "../contexts/AreasContext/index.230d1584.js";
11
+ import "./AreasAdmin/index.8ab71eb9.js";
12
12
  import "zustand/shallow";
13
13
  import "../../ScrollBar/index.d4410cb5.js";
14
- import "../../mui_extended/Accordion/index.5111314b.js";
14
+ import "../../mui_extended/Accordion/index.46771196.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
19
  import "../../mui_extended/Button/index.40af964e.js";
20
- import "../../mui_extended/CheckBox.5f6c78b0.js";
20
+ import "../../mui_extended/CheckBox.38abccd8.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.f6bfdd40.js";
24
+ import "../../mui_extended/MenuActions/index.2493b1b1.js";
25
25
  import "../../mui_extended/Popover/index.9f35d0eb.js";
26
- import "../../mui_extended/Pager/index.da26e9d4.js";
27
- import "../../mui_extended/Tab/index.0989d15d.js";
26
+ import "../../mui_extended/Pager/index.a7f87c96.js";
27
+ import "../../mui_extended/Tab/index.756fe693.js";
28
28
  import "../../mui_extended/Tooltip/index.5a795dcd.js";
29
- import "./AreasViewer/index.9ed7dfd7.js";
29
+ import "./AreasViewer/index.933e506b.js";
30
30
  import "../../LinearProgressIndeterminate/index.60dabc06.js";
@@ -22,6 +22,13 @@ export declare const NORMALIZED_COLS: {
22
22
  xs: number;
23
23
  xxs: number;
24
24
  };
25
+ export declare const DEFAULT_LAYOUTS: {
26
+ lg: never[];
27
+ md: never[];
28
+ sm: never[];
29
+ xs: never[];
30
+ xxs: never[];
31
+ };
25
32
  import { Layouts } from '../../../GridLayout/types';
26
33
  export declare const DEFAULT_WINDOW: Pick<WindowState, 'status' | 'moduleActions' | 'cookies' | 'loading' | 'toasties' | 'toastyCount' | 'hashToasties'>;
27
34
  export declare const DEFAULT_AREA: Omit<Area, 'id' | 'name' | 'loadWindows' | 'viewMode'>;
@@ -5,15 +5,15 @@ 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.9ed7dfd7.js";
9
- import { u as useAreasAdminUtilityClasses } from "../../components/AreasAdmin/index.7bfec13f.js";
8
+ import { u as useAreasViewerUtilityClasses } from "../../components/AreasViewer/index.933e506b.js";
9
+ import { u as useAreasAdminUtilityClasses } from "../../components/AreasAdmin/index.8ab71eb9.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/subcomponents/Griditem/index.c09681ff.js";
14
- import { z as isEqualLayouts } from "../../../GridLayout/index.70085b00.js";
13
+ import "../../../GridLayout/subcomponents/Griditem/index.6c68811f.js";
14
+ import { z as isEqualLayouts } from "../../../GridLayout/index.c55f16eb.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.eb04fd5e.js";
16
+ import { a as addLayoutItemToBreakPointIfNoExists, b as addLayoutItemToBreakPoints, c as cloneLayouts } from "../../../GridLayout/subcomponents/Responsive/index.a6e33b8d.js";
17
17
  import { debounce, cloneDeep } from "lodash";
18
18
  const ROW_HEIGTH_GRIDLAYOUT = 20;
19
19
  const PADDING_GRIDLAYOUT = 3;
@@ -23,6 +23,7 @@ const COOKIE_BREAKPOINT_LAYOUTS = "layoutPros";
23
23
  const COOKIE_WINDOWS = "windows";
24
24
  const BREAKPOINT_SIZES = { lg: 1200, md: 996, sm: 768, xs: 480, xxs: 1 };
25
25
  const NORMALIZED_COLS = { lg: 64, md: 48, sm: 32, xs: 24, xxs: 1 };
26
+ const DEFAULT_LAYOUTS = { lg: [], md: [], sm: [], xs: [], xxs: [] };
26
27
  const DEFAULT_WINDOW = {
27
28
  status: "init",
28
29
  moduleActions: [],
@@ -35,7 +36,7 @@ const DEFAULT_WINDOW = {
35
36
  const DEFAULT_AREA = {
36
37
  status: "init",
37
38
  zPopUpIndex: 0,
38
- layouts: {},
39
+ layouts: DEFAULT_LAYOUTS,
39
40
  layoutItemsIds: [],
40
41
  currentLayoutId: "",
41
42
  currentPopUpId: "",
@@ -999,6 +1000,14 @@ const createAreasStore = (initProps) => {
999
1000
  }
1000
1001
  });
1001
1002
  }
1003
+ },
1004
+ areaAdminActions: {
1005
+ setFocus: (newValue) => {
1006
+ set((state) => {
1007
+ state.ownerState = { ...state.ownerState, focus: newValue };
1008
+ updateOwnerStateClasses(state);
1009
+ });
1010
+ }
1002
1011
  }
1003
1012
  })),
1004
1013
  { name: `Areas store` }
@@ -1037,7 +1046,8 @@ function AreasProvider(props) {
1037
1046
  ownerState: {
1038
1047
  status: "init",
1039
1048
  isMobile: !isDesktop,
1040
- isSkeleton
1049
+ isSkeleton,
1050
+ focus: false
1041
1051
  }
1042
1052
  });
1043
1053
  areasStoreRef.current?.getState().areasActions.init();
@@ -55,6 +55,11 @@ export declare type OwnerState = {
55
55
  * "isSkeleton" indica si el componente está en skeleton.
56
56
  */
57
57
  isSkeleton: boolean;
58
+ /**
59
+ * focus: Estado de selección asignado por el usuario.
60
+ *
61
+ */
62
+ focus: boolean;
58
63
  };
59
64
  /**
60
65
  * @type
@@ -197,6 +202,9 @@ export interface AreasStateWithActions extends AreasState {
197
202
  pinToast: (windowId: string, toastyId: number) => void;
198
203
  setFnQueryClose: (windowId: string, fnQueryClose: () => void) => void;
199
204
  };
205
+ areaAdminActions: {
206
+ setFocus: (value: boolean) => void;
207
+ };
200
208
  }
201
209
  export declare type DefaultAreasStoreProps = Omit<AreasState, 'currentArea'>;
202
210
  export declare type InitialAreasStoreProps = Pick<AreasState, 'networkOperation' | 'loadAreasFromNetwork' | 'loadCookiesFromNetwork' | 'getLabel' | 'ownerState'> & Partial<DefaultAreasStoreProps>;
@@ -1,2 +1,2 @@
1
- import "./AreasContext/index.36fe6953.js";
1
+ import "./AreasContext/index.230d1584.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.36fe6953.js";
3
+ import { A as AreasContext } from "../../contexts/AreasContext/index.230d1584.js";
4
4
  function useAreasStore(selector, equalityFn) {
5
5
  const context = useContext(AreasContext);
6
6
  if (!context)
@@ -0,0 +1,53 @@
1
+ import { useEffect } from "react";
2
+ import "@m4l/core";
3
+ import "@mui/material";
4
+ import "../Icon/index.d1402200.js";
5
+ import "clsx";
6
+ import "react/jsx-runtime";
7
+ import "../mui_extended/IconButton/index.62aea582.js";
8
+ import "@m4l/graphics";
9
+ import "zustand";
10
+ import "./contexts/AreasContext/index.230d1584.js";
11
+ import "./components/AreasAdmin/index.8ab71eb9.js";
12
+ import "zustand/shallow";
13
+ import "../ScrollBar/index.d4410cb5.js";
14
+ import "../mui_extended/Accordion/index.46771196.js";
15
+ import "../mui_extended/Typography/index.443590d6.js";
16
+ import "../mui_extended/Avatar/index.75e6ed57.js";
17
+ import "react-router-dom";
18
+ import "@mui/material/Button";
19
+ import "../mui_extended/Button/index.40af964e.js";
20
+ import "../mui_extended/CheckBox.38abccd8.js";
21
+ import "../mui_extended/Badge/index.cad260fe.js";
22
+ import "../Image/index.c18ebf5a.js";
23
+ import "@mui/lab";
24
+ import "../mui_extended/MenuActions/index.2493b1b1.js";
25
+ import "../mui_extended/Popover/index.9f35d0eb.js";
26
+ import "../mui_extended/Pager/index.a7f87c96.js";
27
+ import "../mui_extended/Tab/index.756fe693.js";
28
+ import "../mui_extended/Tooltip/index.5a795dcd.js";
29
+ import "./components/AreasViewer/index.933e506b.js";
30
+ import "../LinearProgressIndeterminate/index.60dabc06.js";
31
+ import "./contexts/WindowToolsMFContext/index.8f3e2a04.js";
32
+ import "./contexts/DynamicMFParmsContext/index.1607c78e.js";
33
+ function useOnClickOutside(ref, handler, noRef) {
34
+ useEffect(() => {
35
+ const listener = (event) => {
36
+ const el = ref?.current;
37
+ const noEl = noRef?.current;
38
+ if (!el || el.contains(event.target) || noEl && noEl.contains(event.target)) {
39
+ return;
40
+ }
41
+ handler(event);
42
+ };
43
+ document.addEventListener("mousedown", listener);
44
+ document.addEventListener("touchstart", listener);
45
+ return () => {
46
+ document.removeEventListener("mousedown", listener);
47
+ document.removeEventListener("touchstart", listener);
48
+ };
49
+ }, [ref, handler]);
50
+ }
51
+ export {
52
+ useOnClickOutside as u
53
+ };
@@ -0,0 +1,4 @@
1
+ import { RefObject } from 'react';
2
+ declare type AnyEvent = MouseEvent | TouchEvent;
3
+ declare function useOnClickOutside<T extends HTMLElement = HTMLElement>(ref: RefObject<T>, handler: (event: AnyEvent) => void, noRef?: RefObject<T>): void;
4
+ export default useOnClickOutside;
@@ -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.2414ff25.js";
3
+ import { I as Icon } from "../../Icon/index.d1402200.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.2414ff25.js";
5
+ import "../Icon/index.d1402200.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.32de0803.js";
9
+ import { a as BOOLEAN_FORMATTER_DICTIONARY_KEY, b as BOOLEAN_FORMATTER_DICTIONARY_LABELS } from "./BooleanFormatter/index.b2f02bc4.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.28e9105d.js";
10
- import { I as IconButton } from "../../mui_extended/IconButton/index.a318316e.js";
9
+ import { H as HelperText } from "../../HelperText/index.a47ff233.js";
10
+ import { I as IconButton } from "../../mui_extended/IconButton/index.62aea582.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.2414ff25.js";
16
- import "../../mui_extended/Accordion/index.5111314b.js";
15
+ import "../../Icon/index.d1402200.js";
16
+ import "../../mui_extended/Accordion/index.46771196.js";
17
17
  import "../../mui_extended/Avatar/index.75e6ed57.js";
18
18
  import "react-router-dom";
19
19
  import "@mui/material/Button";
20
20
  import "../../mui_extended/Button/index.40af964e.js";
21
- import "../../mui_extended/CheckBox.5f6c78b0.js";
21
+ import "../../mui_extended/CheckBox.38abccd8.js";
22
22
  import "../../mui_extended/Badge/index.cad260fe.js";
23
23
  import "@mui/lab";
24
- import "../../mui_extended/MenuActions/index.f6bfdd40.js";
24
+ import "../../mui_extended/MenuActions/index.2493b1b1.js";
25
25
  import "../../mui_extended/Popover/index.9f35d0eb.js";
26
- import "../../mui_extended/Pager/index.da26e9d4.js";
27
- import "../../mui_extended/Tab/index.0989d15d.js";
26
+ import "../../mui_extended/Pager/index.a7f87c96.js";
27
+ import "../../mui_extended/Tab/index.756fe693.js";
28
28
  import "../../mui_extended/Tooltip/index.5a795dcd.js";
29
29
  const AutocompleteRoot = styled("div")(({
30
30
  theme
@@ -252,6 +252,7 @@ function RHFAutocomplete(props) {
252
252
  };
253
253
  const classes = useUtilityClasses(ownerState);
254
254
  const theme = useTheme();
255
+ console.log("RHFAutocomplete");
255
256
  return /* @__PURE__ */ jsx(AutocompleteRoot, {
256
257
  className: classes.root,
257
258
  ...process.env.NODE_ENV !== "production" ? {
@@ -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.42df8eb4.js";
8
+ import { R as RHFAutocomplete, g as getRHFAutocompleteComponentsDictionary } from "../RHFAutocomplete/index.d5afb409.js";
9
9
  import { jsx } from "react/jsx-runtime";
10
10
  styled("div")(() => ({
11
11
  display: "flex",