@m4l/components 0.1.77 → 0.1.78

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 (89) hide show
  1. package/@types/export.d.ts +3 -3
  2. package/components/AccountPopover/{index.3a79c395.js → index.7e76dbb7.js} +6 -6
  3. package/components/AppBar/{index.71b38ee9.js → index.06858422.js} +6 -6
  4. package/components/CommonActions/components/ActionCancel/{index.b748a38e.js → index.d536ccfa.js} +1 -1
  5. package/components/CommonActions/components/ActionFormCancel/{index.27ad09e1.js → index.a915b105.js} +13 -13
  6. package/components/CommonActions/components/ActionFormIntro/{index.2556f054.js → index.14e65d6c.js} +1 -1
  7. package/components/CommonActions/components/ActionIntro/{index.a7d92e66.js → index.aa1648eb.js} +1 -1
  8. package/components/CommonActions/components/Actions/{index.3eba9d91.js → index.52125041.js} +11 -11
  9. package/components/DataGrid/{index.545b492f.js → index.9fb3e6a1.js} +20 -23
  10. package/components/DataGrid/types.d.ts +1 -1
  11. package/components/DynamicFilter/constants.d.ts +1 -0
  12. package/components/DynamicFilter/contexts/DynamicFilterContext/store.d.ts +6 -1
  13. package/components/DynamicFilter/{index.d7be0f37.js → index.d1a2e2d1.js} +50 -50
  14. package/components/DynamicFilter/subcomponents/InnerForHooks/index.d.ts +1 -2
  15. package/components/DynamicFilter/tests/contants.d.ts +2 -3
  16. package/components/GridLayout/Responsive/{index.a12a8cec.js → index.0905a698.js} +61 -43
  17. package/components/GridLayout/WidthProvider/{index.8ff65909.js → index.9a26dfe4.js} +1 -3
  18. package/components/GridLayout/index.d.ts +1 -1
  19. package/components/GridLayout/{index.4ba3767a.js → index.da6fd387.js} +103 -93
  20. package/components/GridLayout/subcomponents/GridItem/index.d.ts +1 -0
  21. package/components/GridLayout/subcomponents/GridItem/types.d.ts +2 -0
  22. package/components/GridLayout/subcomponents/Responsive/responsiveUtils.d.ts +6 -3
  23. package/components/GridLayout/subcomponents/Responsive/types.d.ts +1 -3
  24. package/components/HelperText/{index.ef31df1f.js → index.a019742c.js} +6 -6
  25. package/components/Icon/{index.ecb63e65.js → index.9fcd1476.js} +1 -1
  26. package/components/LanguagePopover/{index.0023d069.js → index.98b63dcb.js} +6 -6
  27. package/components/ModalDialog/{index.d880e685.js → index.d9937d46.js} +4 -4
  28. package/components/NavLink/{index.cd92eceb.js → index.a5dea6d3.js} +6 -6
  29. package/components/ObjectLogs/{index.f174c542.js → index.d9d20b9d.js} +22 -16
  30. package/components/ObjectLogs/types.d.ts +1 -0
  31. package/components/PaperForm/{index.1bd86ee5.js → index.ba38a0bd.js} +1 -1
  32. package/components/Period/{index.711db043.js → index.7b94c418.js} +12 -12
  33. package/components/PropertyValue/constants.d.ts +3 -0
  34. package/components/PropertyValue/{index.8a1adf3e.js → index.45c73161.js} +17 -11
  35. package/components/PropertyValue/types.d.ts +2 -1
  36. package/components/SideBar/{index.c5ce0bad.js → index.2f497e6c.js} +2 -2
  37. package/components/areas/components/AreasAdmin/classes/index.d.ts +1 -1
  38. package/components/areas/components/AreasAdmin/classes/types.d.ts +3 -0
  39. package/components/areas/components/AreasAdmin/{index.cc4cbf56.js → index.43ecd998.js} +91 -79
  40. package/components/areas/components/AreasViewer/classes/index.d.ts +1 -1
  41. package/components/areas/components/AreasViewer/classes/types.d.ts +1 -0
  42. package/components/areas/components/AreasViewer/{index.9c2aaaeb.js → index.14e62059.js} +143 -161
  43. package/components/areas/components/{index.0f7ac464.js → index.a87653a9.js} +9 -9
  44. package/components/areas/contexts/AreasContext/helper.d.ts +3 -1
  45. package/components/areas/contexts/AreasContext/{index.c8147e8e.js → index.02c4e7be.js} +99 -78
  46. package/components/areas/contexts/AreasContext/types.d.ts +1 -2
  47. package/components/areas/contexts/{index.02336412.js → index.1ff9b360.js} +1 -1
  48. package/components/areas/hooks/useAreas/{index.3406a6cb.js → index.85e4b2e2.js} +1 -1
  49. package/components/areas/{index.6f2e5dab.js → index.d1dcccf5.js} +9 -9
  50. package/components/areas/types.d.ts +0 -1
  51. package/components/formatters/BooleanFormatter/{index.5268b024.js → index.e8de8e4c.js} +1 -1
  52. package/components/formatters/{index.137169d8.js → index.67aeb049.js} +2 -2
  53. package/components/hook-form/RHFAutocomplete/{index.ac2b1fae.js → index.6aa51705.js} +23 -12
  54. package/components/hook-form/RHFAutocompleteAsync/{index.8b4ccc8d.js → index.1a3dfe5f.js} +1 -1
  55. package/components/hook-form/RHFCheckbox/{index.acef119c.js → index.a08a65b3.js} +1 -1
  56. package/components/hook-form/RHFDateTime/{index.5b080342.js → index.4d671108.js} +7 -7
  57. package/components/hook-form/RHFPeriod/{index.5304e3bd.js → index.39b4be49.js} +2 -2
  58. package/components/hook-form/RHFTextField/{index.e751dca7.js → index.9004e898.js} +3 -3
  59. package/components/hook-form/RHFUpload/{index.25db0511.js → index.bed8573e.js} +7 -10
  60. package/components/modal/{WindowBase.850ea31a.js → WindowBase.a0c0b322.js} +8 -8
  61. package/components/modal/{WindowConfirm.cb37bc58.js → WindowConfirm.6c063f2d.js} +14 -14
  62. package/components/modal/{index.a0978193.js → index.00efea85.js} +11 -11
  63. package/components/mui_extended/Accordion/constants.d.ts +1 -0
  64. package/components/mui_extended/Accordion/{index.12b1339a.js → index.9877f7bf.js} +8 -9
  65. package/components/mui_extended/Accordion/types.d.ts +1 -0
  66. package/components/mui_extended/IconButton/{index.fc5b7c2d.js → index.12f1a3c3.js} +4 -1
  67. package/components/mui_extended/MenuActions/{index.f5b1c022.js → index.43a2e1ae.js} +15 -6
  68. package/components/mui_extended/MenuActions/index.d.ts +3 -2
  69. package/components/mui_extended/MenuActions/types.d.ts +1 -0
  70. package/components/mui_extended/Pager/{index.435af0df.js → index.2f6d6d7d.js} +1 -1
  71. package/components/mui_extended/Tab/constant.d.ts +1 -0
  72. package/components/mui_extended/Tab/{index.9e2f6e34.js → index.7c82e43d.js} +5 -6
  73. package/components/mui_extended/Tab/types.d.ts +1 -0
  74. package/components/mui_extended/{index.83979b6a.js → index.0e2ff642.js} +6 -6
  75. package/contexts/ModalContext/{index.dee85a61.js → index.e9a7ba4a.js} +1 -1
  76. package/hooks/useModal/{index.de522a10.js → index.8e85f7ae.js} +1 -1
  77. package/index.js +220 -217
  78. package/package.json +1 -1
  79. package/test/getNameDataTestId.d.ts +1 -0
  80. package/vendor.e353394b.js +124 -0
  81. package/components/DynamicFilter/subcomponents/InnerForHooks/types.d.ts +0 -2
  82. package/components/DynamicFilter/tests/types.d.ts +0 -2
  83. package/components/DynamicFilter/tests/utils.d.ts +0 -2
  84. package/components/PropertyValue/tests/constants.d.ts +0 -1
  85. package/components/PropertyValue/tests/utils.d.ts +0 -2
  86. package/components/mui_extended/Accordion/tests/constants.d.ts +0 -1
  87. package/components/mui_extended/Accordion/tests/utils.d.ts +0 -2
  88. package/components/mui_extended/Tab/tests/constants.d.ts +0 -1
  89. package/components/mui_extended/Tab/tests/utils.d.ts +0 -2
@@ -1,17 +1,17 @@
1
1
  import "react";
2
2
  import "@m4l/core";
3
3
  import "@mui/material";
4
- import "../../Icon/index.ecb63e65.js";
4
+ import "../../Icon/index.9fcd1476.js";
5
5
  import "clsx";
6
6
  import "react/jsx-runtime";
7
- import "../../mui_extended/IconButton/index.fc5b7c2d.js";
7
+ import "../../mui_extended/IconButton/index.12f1a3c3.js";
8
8
  import "@m4l/graphics";
9
9
  import "zustand";
10
- import "../contexts/AreasContext/index.c8147e8e.js";
11
- import "./AreasAdmin/index.cc4cbf56.js";
10
+ import "../contexts/AreasContext/index.02c4e7be.js";
11
+ import "./AreasAdmin/index.43ecd998.js";
12
12
  import "zustand/shallow";
13
13
  import "../../ScrollBar/index.bbe48f4d.js";
14
- import "../../mui_extended/Accordion/index.12b1339a.js";
14
+ import "../../mui_extended/Accordion/index.9877f7bf.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";
@@ -20,10 +20,10 @@ import "../../mui_extended/Button/index.4288f9fc.js";
20
20
  import "../../mui_extended/Badge/index.8c2b8b66.js";
21
21
  import "../../Image/index.c18ebf5a.js";
22
22
  import "@mui/lab";
23
+ import "../../mui_extended/MenuActions/index.43a2e1ae.js";
23
24
  import "../../mui_extended/Popover/index.9f35d0eb.js";
24
- import "../../mui_extended/MenuActions/index.f5b1c022.js";
25
- import "../../mui_extended/Pager/index.435af0df.js";
26
- import "../../mui_extended/Tab/index.9e2f6e34.js";
25
+ import "../../mui_extended/Pager/index.2f6d6d7d.js";
26
+ import "../../mui_extended/Tab/index.7c82e43d.js";
27
27
  import "../../mui_extended/Tooltip/index.5a795dcd.js";
28
- import "./AreasViewer/index.9c2aaaeb.js";
28
+ import "./AreasViewer/index.14e62059.js";
29
29
  import "../../LinearProgressIndeterminate/index.60dabc06.js";
@@ -41,10 +41,12 @@ export declare const addArea: (state: WritableDraft<AreasStateWithActions>) => s
41
41
  export declare const updateOwnerStateClasses: (state: WritableDraft<AreasStateWithActions>) => void;
42
42
  export declare const getCurrentArea: (state: WritableDraft<AreasStateWithActions> | AreasStateWithActions) => Area;
43
43
  export declare const getParmsFromValue: (key: string, data: []) => any;
44
+ export declare function setColapsedLayoutBreakPoints(state: WritableDraft<Area>, layoutId: string, colapsed: boolean): void;
44
45
  export declare function deleteLayoutFromBreakPoints(state: WritableDraft<Area>, layoutId?: string): void;
46
+ export declare function purgeToastsWindow(state: WritableDraft<AreasStateWithActions>, windowId: string): void;
47
+ export declare function purgeToastsArea(state: WritableDraft<AreasStateWithActions>, areaId: string): void;
45
48
  export declare function getDataFromResponse(data: any, state: WritableDraft<AreasStateWithActions>, areaId: string): {
46
49
  newBreakPointsLayouts: Layouts;
47
- newWindowsLayoutsIds: string[];
48
50
  newHashLayoutItems: string[];
49
51
  };
50
52
  export declare function getCookiesContainer(data: any, containerId: string): Record<string, any>;
@@ -5,14 +5,14 @@ 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.9c2aaaeb.js";
9
- import { u as useAreasAdminUtilityClasses } from "../../components/AreasAdmin/index.cc4cbf56.js";
8
+ import { u as useAreasViewerUtilityClasses } from "../../components/AreasViewer/index.14e62059.js";
9
+ import { u as useAreasAdminUtilityClasses } from "../../components/AreasAdmin/index.43ecd998.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.4ba3767a.js";
13
+ import "../../../GridLayout/index.da6fd387.js";
14
+ import { a as addLayoutItemToBreakPointIfNoExists, b as addLayoutItemToBreakPoints, c as isEqualLayouts } from "../../../GridLayout/Responsive/index.0905a698.js";
14
15
  import { jsx } from "react/jsx-runtime";
15
- import { a as addLayoutItemToBreakPointIfNoExists, b as addLayoutItemToBreakPoints } from "../../../GridLayout/Responsive/index.a12a8cec.js";
16
16
  import { debounce, cloneDeep } from "lodash";
17
17
  const ROW_HEIGTH_GRIDLAYOUT = 20;
18
18
  const PADDING_GRIDLAYOUT = 3;
@@ -35,8 +35,7 @@ const DEFAULT_AREA = {
35
35
  status: "init",
36
36
  zPopUpIndex: 0,
37
37
  layouts: {},
38
- colapsedItems: {},
39
- hashLayoutItems: [],
38
+ layoutItemsIds: [],
40
39
  currentLayoutId: "",
41
40
  currentPopUpId: "",
42
41
  breakpoints: BREAKPOINT_SIZES,
@@ -96,6 +95,22 @@ const getParmsFromValue = (key, data) => {
96
95
  }
97
96
  return void 0;
98
97
  };
98
+ function setColapsedLayoutBreakPoints(state, layoutId, colapsed) {
99
+ const layoutsBreakPoints = state.layouts;
100
+ for (const key in layoutsBreakPoints) {
101
+ const layoutBreakpoint = layoutsBreakPoints[key];
102
+ const index = layoutBreakpoint.findIndex((lb) => lb.i === layoutId);
103
+ if (index > -1) {
104
+ if (key !== "xxs") {
105
+ layoutBreakpoint[index].colapsed = colapsed;
106
+ } else {
107
+ if (!layoutBreakpoint[index].freeMove) {
108
+ layoutBreakpoint[index].colapsed = colapsed;
109
+ }
110
+ }
111
+ }
112
+ }
113
+ }
99
114
  function deleteLayoutFromBreakPoints(state, layoutId) {
100
115
  const layoutsBreakPoints = state.layouts;
101
116
  for (const key in layoutsBreakPoints) {
@@ -109,6 +124,24 @@ function deleteLayoutFromBreakPoints(state, layoutId) {
109
124
  }
110
125
  }
111
126
  }
127
+ function purgeToastsWindow(state, windowId) {
128
+ const toasties = state?.hashWindows[windowId]?.toasties;
129
+ if (toasties) {
130
+ for (let index = 0; index < toasties.length; index++) {
131
+ const toast = toasties[index];
132
+ if (toast.timer) {
133
+ clearInterval(toast.timer);
134
+ toast.timer = void 0;
135
+ }
136
+ }
137
+ }
138
+ }
139
+ function purgeToastsArea(state, areaId) {
140
+ const area = state.hashAreas[areaId];
141
+ for (let index = 0; index < area.layoutItemsIds.length; index++) {
142
+ purgeToastsWindow(state, area.layoutItemsIds[index]);
143
+ }
144
+ }
112
145
  function getDataFromResponse(data, state, areaId) {
113
146
  let newBreakPointsLayouts = getParmsFromValue(COOKIE_BREAKPOINT_LAYOUTS, data);
114
147
  const windows = getParmsFromValue(COOKIE_WINDOWS, data);
@@ -157,13 +190,6 @@ function getDataFromResponse(data, state, areaId) {
157
190
  [PADDING_GRIDLAYOUT, PADDING_GRIDLAYOUT],
158
191
  ROW_HEIGTH_GRIDLAYOUT
159
192
  );
160
- console.log(
161
- "addLayoutItemToBreakPointIfNoExists",
162
- element,
163
- breakPoint,
164
- key,
165
- newBreakPointsLayouts[breakPoint]
166
- );
167
193
  }
168
194
  }
169
195
  }
@@ -177,10 +203,8 @@ function getDataFromResponse(data, state, areaId) {
177
203
  newBreakPointsLayouts[breakPoint] = [];
178
204
  }
179
205
  }
180
- console.log("newBreakPointsLayouts", newBreakPointsLayouts, windows);
181
206
  return {
182
207
  newBreakPointsLayouts,
183
- newWindowsLayoutsIds,
184
208
  newHashLayoutItems
185
209
  };
186
210
  }
@@ -202,12 +226,14 @@ const verifyRemoveToasty = (state, toastyId, forceRemove) => {
202
226
  const tfy = state.hashToasties[toastyId];
203
227
  if (tfy) {
204
228
  tfy.percentExecuted = (1 - (tfy.timeStart + tfy.timeoutMs - new Date().getTime()) / tfy.timeoutMs) * 100;
205
- console.log("verifyRemoveToasty", tfy.percentExecuted);
206
229
  if (tfy.percentExecuted >= 100 || forceRemove) {
207
230
  const tosties = state.toasties;
208
231
  for (let i = 0; i < tosties.length; i++) {
209
232
  const findToasty = tosties[i];
210
233
  if (findToasty.id === toastyId) {
234
+ if (findToasty.timer) {
235
+ clearInterval(findToasty.timer);
236
+ }
211
237
  state.toasties.splice(i, 1);
212
238
  delete state.hashToasties[toastyId];
213
239
  return;
@@ -280,13 +306,14 @@ const createAreasStore = (initProps) => {
280
306
  }
281
307
  }
282
308
  },
283
- editArea: (idArea, newName) => {
309
+ editArea: (areaId, newName) => {
284
310
  set((state) => {
285
- if (state.hashAreas[idArea]) {
286
- state.hashAreas[idArea].name = newName;
311
+ if (state.hashAreas[areaId]) {
312
+ purgeToastsArea(state, areaId);
313
+ state.hashAreas[areaId].name = newName;
287
314
  state.networkOperation({
288
315
  method: "PATCH",
289
- endPoint: `areas/${idArea}`,
316
+ endPoint: `areas/${areaId}`,
290
317
  data: { name: newName },
291
318
  toastSuccess: false,
292
319
  toastError: false
@@ -402,8 +429,8 @@ const createAreasStore = (initProps) => {
402
429
  return;
403
430
  }
404
431
  if (newWindowProps.replaceMeId) {
405
- for (let index = 0; index < area.hashLayoutItems.length; index++) {
406
- const key = area.hashLayoutItems[index];
432
+ for (let index = 0; index < area.layoutItemsIds.length; index++) {
433
+ const key = area.layoutItemsIds[index];
407
434
  const WindoPopUp = state.hashWindows[key];
408
435
  if (WindoPopUp.replaceMeId === newWindowProps.replaceMeId) {
409
436
  previousId = key;
@@ -427,7 +454,7 @@ const createAreasStore = (initProps) => {
427
454
  ...DEFAULT_WINDOW,
428
455
  dynamicMFStore
429
456
  };
430
- area.hashLayoutItems.push(windowId);
457
+ area.layoutItemsIds.push(windowId);
431
458
  if (newWindowProps.emergeType === "layout") {
432
459
  area.currentLayoutId = windowId;
433
460
  if (area.maximizedId) {
@@ -443,11 +470,16 @@ const createAreasStore = (initProps) => {
443
470
  [MARGIN_GRIDLAYOUT, MARGIN_GRIDLAYOUT],
444
471
  [PADDING_GRIDLAYOUT, PADDING_GRIDLAYOUT],
445
472
  ROW_HEIGTH_GRIDLAYOUT,
446
- area.containerHeight
473
+ area.containerHeight,
474
+ area.currentBreakpoint
447
475
  );
476
+ if (area.currentBreakpoint === "xxs") {
477
+ area.maximizedId = windowId;
478
+ }
448
479
  }
449
480
  });
450
481
  get().areaActions.saveLayouts(areaId);
482
+ get().areaActions.bouncedSaveBreakpointsLayouts(areaId);
451
483
  },
452
484
  closeLayout: (areaId, removeLayoutId) => {
453
485
  set((state) => {
@@ -455,19 +487,20 @@ const createAreasStore = (initProps) => {
455
487
  if (!area) {
456
488
  return;
457
489
  }
458
- const removeIndex = area.hashLayoutItems.indexOf(removeLayoutId);
490
+ const removeIndex = area.layoutItemsIds.indexOf(removeLayoutId);
459
491
  if (removeIndex > -1) {
460
- area.hashLayoutItems.splice(removeIndex, 1);
492
+ area.layoutItemsIds.splice(removeIndex, 1);
461
493
  }
462
494
  deleteLayoutFromBreakPoints(area, removeLayoutId);
495
+ purgeToastsWindow(state, removeLayoutId);
463
496
  delete state.hashWindows[removeLayoutId];
464
497
  });
465
498
  get().areaActions.saveLayouts(areaId);
466
499
  if (get().hashAreas[areaId].maximizedId === removeLayoutId) {
467
500
  get().areaActions.maximizeLayout(areaId);
468
501
  }
469
- for (let index = 0; index < get().hashAreas[areaId].hashLayoutItems.length; index++) {
470
- const layoutItemId = get().hashAreas[areaId].hashLayoutItems[index];
502
+ for (let index = 0; index < get().hashAreas[areaId].layoutItemsIds.length; index++) {
503
+ const layoutItemId = get().hashAreas[areaId].layoutItemsIds[index];
471
504
  const layoutItem = get().hashWindows[layoutItemId];
472
505
  if (layoutItem.parentLayoutId === removeLayoutId) {
473
506
  get().areaActions.closeLayout(areaId, layoutItem.windowId);
@@ -480,11 +513,9 @@ const createAreasStore = (initProps) => {
480
513
  if (!area) {
481
514
  return;
482
515
  }
483
- console.log("saveLayouts before", areaId, area.hashLayoutItems);
484
516
  const saveObjetc = {};
485
- for (let index = 0; index < area.hashLayoutItems.length; index++) {
486
- const key = area.hashLayoutItems[index];
487
- console.log("saveLayouts", areaId, key, get().hashWindows[key]);
517
+ for (let index = 0; index < area.layoutItemsIds.length; index++) {
518
+ const key = area.layoutItemsIds[index];
488
519
  if (get().hashWindows[key] && get().hashWindows[key].winType === "microfrontend") {
489
520
  const element = get().hashWindows[key];
490
521
  const hasPropsToSave = {
@@ -506,7 +537,6 @@ const createAreasStore = (initProps) => {
506
537
  }
507
538
  }
508
539
  if (nrKeys > 0) {
509
- console.log("SaveLayouyts", saveObjetc);
510
540
  get().networkOperation({
511
541
  method: "PUT",
512
542
  endPoint: `cookies/${area.id}/${COOKIE_WINDOWS}`,
@@ -534,6 +564,7 @@ const createAreasStore = (initProps) => {
534
564
  if (removeIndex > -1) {
535
565
  state.windowsModals.splice(removeIndex, 1);
536
566
  }
567
+ purgeToastsWindow(state, removeModalId);
537
568
  delete state.hashWindows[removeModalId];
538
569
  delete state.hashWindowsModals[removeModalId];
539
570
  });
@@ -568,7 +599,7 @@ const createAreasStore = (initProps) => {
568
599
  if (l.i === "none") {
569
600
  return false;
570
601
  }
571
- if (get().hashAreas[areaId].hashLayoutItems.indexOf(l.i) > -1) {
602
+ if (get().hashAreas[areaId].layoutItemsIds.indexOf(l.i) > -1) {
572
603
  return true;
573
604
  }
574
605
  return false;
@@ -596,16 +627,16 @@ const createAreasStore = (initProps) => {
596
627
  }
597
628
  ),
598
629
  onBreakpointsLayoutsChange: (areaId, _currentLayout, newAllLayouts) => {
599
- console.log("onBreakpointsLayoutsChange", areaId, newAllLayouts);
600
- set((state) => {
601
- state.hashAreas[areaId].layouts = cloneDeep(newAllLayouts);
602
- });
603
- if (!get().hashAreas[areaId].maximizedId) {
604
- get().areaActions.bouncedSaveBreakpointsLayouts(areaId);
630
+ if (!isEqualLayouts(get().hashAreas[areaId].layouts, newAllLayouts)) {
631
+ set((state) => {
632
+ state.hashAreas[areaId].layouts = cloneDeep(newAllLayouts);
633
+ });
634
+ if (!get().hashAreas[areaId].maximizedId) {
635
+ get().areaActions.bouncedSaveBreakpointsLayouts(areaId);
636
+ }
605
637
  }
606
638
  },
607
639
  onContainerChange: (areaId, e) => {
608
- console.log("onContainerChange Store", areaId, e.containerHeight);
609
640
  set((state) => {
610
641
  state.hashAreas[areaId].containerHeight = e.containerHeight;
611
642
  state.hashAreas[areaId].currentBreakpoint = e.breakpoint;
@@ -636,24 +667,18 @@ const createAreasStore = (initProps) => {
636
667
  });
637
668
  },
638
669
  unColapseLayoutItem: (areaId, layoutId) => {
639
- if (get().hashWindows[layoutId] && get().hashAreas[areaId].colapsedItems[layoutId]) {
640
- set((state) => {
641
- state.hashAreas[areaId].colapsedItems = {
642
- ...state.hashAreas[areaId].colapsedItems
643
- };
644
- delete state.hashAreas[areaId].colapsedItems[layoutId];
645
- state.hashWindows[layoutId].colapsed = false;
646
- });
647
- }
670
+ set((state) => {
671
+ setColapsedLayoutBreakPoints(state.hashAreas[areaId], layoutId, false);
672
+ });
648
673
  },
649
674
  colapseLayoutItem: (areaId, layoutId) => {
650
675
  if (!get().hashAreas[areaId].maximizedId && get().hashWindows[layoutId]) {
651
676
  set((state) => {
652
- state.hashAreas[areaId].colapsedItems = {
653
- ...state.hashAreas[areaId].colapsedItems
654
- };
655
- state.hashAreas[areaId].colapsedItems[layoutId] = true;
656
- state.hashWindows[layoutId].colapsed = true;
677
+ setColapsedLayoutBreakPoints(
678
+ state.hashAreas[areaId],
679
+ layoutId,
680
+ true
681
+ );
657
682
  });
658
683
  }
659
684
  },
@@ -663,6 +688,13 @@ const createAreasStore = (initProps) => {
663
688
  if (!area)
664
689
  return;
665
690
  area.maximizedId = layoutId;
691
+ const index = area.layouts["xxs"]?.findIndex(
692
+ (li) => li.i === area.maximizedId
693
+ );
694
+ if (index !== void 0 && index > -1 && layoutId && state.hashWindows[layoutId].emergeType === "popup") {
695
+ area.layouts["xxs"][index].visible = true;
696
+ area.layouts["xxs"][index].colapsed = false;
697
+ }
666
698
  });
667
699
  if (layoutId) {
668
700
  get().areaActions.selectLayout(areaId, layoutId);
@@ -673,6 +705,14 @@ const createAreasStore = (initProps) => {
673
705
  const area = state.hashAreas[areaId];
674
706
  if (!area)
675
707
  return;
708
+ if (area.maximizedId) {
709
+ const index = area.layouts["xxs"]?.findIndex(
710
+ (li) => li.i === area.maximizedId
711
+ );
712
+ if (index !== void 0 && index > -1 && state.hashWindows[area.maximizedId].emergeType === "popup") {
713
+ area.layouts["xxs"][index].visible = false;
714
+ }
715
+ }
676
716
  area.maximizedId = void 0;
677
717
  });
678
718
  },
@@ -706,20 +746,10 @@ const createAreasStore = (initProps) => {
706
746
  }
707
747
  set((state) => {
708
748
  const area3 = state.hashAreas[areaId];
709
- const {
710
- newBreakPointsLayouts,
711
- newWindowsLayoutsIds,
712
- newHashLayoutItems
713
- } = getDataFromResponse(response.data, state, areaId);
749
+ const { newBreakPointsLayouts, newHashLayoutItems } = getDataFromResponse(response.data, state, areaId);
714
750
  area3.layouts = newBreakPointsLayouts;
715
- area3.hashLayoutItems = newHashLayoutItems;
751
+ area3.layoutItemsIds = newHashLayoutItems;
716
752
  area3.status = "loaded";
717
- console.log(
718
- "loadWindowsFromApi",
719
- newBreakPointsLayouts,
720
- newHashLayoutItems,
721
- newWindowsLayoutsIds
722
- );
723
753
  });
724
754
  }).catch((_response) => {
725
755
  set((state) => {
@@ -738,11 +768,6 @@ const createAreasStore = (initProps) => {
738
768
  });
739
769
  },
740
770
  getCookie: (windowId, id) => {
741
- console.log(
742
- "getCookie",
743
- get().hashWindows[windowId].cookies.windowCookies[id],
744
- get().hashWindows[windowId].cookies.moduleCookies[id]
745
- );
746
771
  if (get().hashWindows[windowId]) {
747
772
  return get().hashWindows[windowId].cookies.windowCookies[id] || get().hashWindows[windowId].cookies.moduleCookies[id];
748
773
  }
@@ -832,11 +857,6 @@ const createAreasStore = (initProps) => {
832
857
  response.data,
833
858
  windowId
834
859
  );
835
- console.log(
836
- "cookies",
837
- hWs.cookies.windowCookies,
838
- hWs.cookies.moduleCookies
839
- );
840
860
  hWs.status = "loaded";
841
861
  }
842
862
  });
@@ -890,7 +910,6 @@ const createAreasStore = (initProps) => {
890
910
  toast: (windowId, options) => {
891
911
  const hW = get().hashWindows[windowId];
892
912
  if (hW) {
893
- console.log("replaceMeId", options.replaceMeId);
894
913
  if (options.replaceMeId) {
895
914
  for (const key in hW.hashToasties) {
896
915
  const t = hW.hashToasties[key];
@@ -904,6 +923,7 @@ const createAreasStore = (initProps) => {
904
923
  hw2.timeStart = new Date().getTime();
905
924
  hw2.percentExecuted = 0;
906
925
  hw2.timer = setInterval(() => {
926
+ console.log("toast timer edit tick");
907
927
  set((state3) => {
908
928
  verifyRemoveToasty(
909
929
  state3.hashWindows[windowId],
@@ -927,6 +947,7 @@ const createAreasStore = (initProps) => {
927
947
  timeStart: new Date().getTime(),
928
948
  percentExecuted: 0,
929
949
  timer: setInterval(() => {
950
+ console.log("toast timer new tick");
930
951
  set((stateRemoveToasty) => {
931
952
  verifyRemoveToasty(
932
953
  stateRemoveToasty.hashWindows[windowId],
@@ -30,10 +30,9 @@ export interface Area {
30
30
  containerHeight?: number;
31
31
  currentBreakpoint?: Breakpoint;
32
32
  layouts: LayoutsNotReadonly;
33
- colapsedItems: Record<string, boolean>;
34
33
  maximizedId?: string | undefined;
35
34
  /** Son los ids de las ventanas, iterar con keys, destruye los componentes en un map */
36
- hashLayoutItems: string[];
35
+ layoutItemsIds: string[];
37
36
  currentLayoutId: string;
38
37
  currentPopUpId: string;
39
38
  breakpoints: Breakpoints;
@@ -1,2 +1,2 @@
1
- import "./AreasContext/index.c8147e8e.js";
1
+ import "./AreasContext/index.02c4e7be.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.c8147e8e.js";
3
+ import { A as AreasContext } from "../../contexts/AreasContext/index.02c4e7be.js";
4
4
  function useAreasStore(selector, equalityFn) {
5
5
  const context = useContext(AreasContext);
6
6
  if (!context)
@@ -1,17 +1,17 @@
1
1
  import "react";
2
2
  import "@m4l/core";
3
3
  import "@mui/material";
4
- import "../Icon/index.ecb63e65.js";
4
+ import "../Icon/index.9fcd1476.js";
5
5
  import "clsx";
6
6
  import "react/jsx-runtime";
7
- import "../mui_extended/IconButton/index.fc5b7c2d.js";
7
+ import "../mui_extended/IconButton/index.12f1a3c3.js";
8
8
  import "@m4l/graphics";
9
9
  import "zustand";
10
- import "./contexts/AreasContext/index.c8147e8e.js";
11
- import "./components/AreasAdmin/index.cc4cbf56.js";
10
+ import "./contexts/AreasContext/index.02c4e7be.js";
11
+ import "./components/AreasAdmin/index.43ecd998.js";
12
12
  import "zustand/shallow";
13
13
  import "../ScrollBar/index.bbe48f4d.js";
14
- import "../mui_extended/Accordion/index.12b1339a.js";
14
+ import "../mui_extended/Accordion/index.9877f7bf.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";
@@ -20,12 +20,12 @@ import "../mui_extended/Button/index.4288f9fc.js";
20
20
  import "../mui_extended/Badge/index.8c2b8b66.js";
21
21
  import "../Image/index.c18ebf5a.js";
22
22
  import "@mui/lab";
23
+ import "../mui_extended/MenuActions/index.43a2e1ae.js";
23
24
  import "../mui_extended/Popover/index.9f35d0eb.js";
24
- import "../mui_extended/MenuActions/index.f5b1c022.js";
25
- import "../mui_extended/Pager/index.435af0df.js";
26
- import "../mui_extended/Tab/index.9e2f6e34.js";
25
+ import "../mui_extended/Pager/index.2f6d6d7d.js";
26
+ import "../mui_extended/Tab/index.7c82e43d.js";
27
27
  import "../mui_extended/Tooltip/index.5a795dcd.js";
28
- import "./components/AreasViewer/index.9c2aaaeb.js";
28
+ import "./components/AreasViewer/index.14e62059.js";
29
29
  import "../LinearProgressIndeterminate/index.60dabc06.js";
30
30
  import "./contexts/WindowToolsMFContext/index.8f3e2a04.js";
31
31
  import "./contexts/DynamicMFParmsContext/index.1607c78e.js";
@@ -55,7 +55,6 @@ export declare type WindowState = {
55
55
  toasties: Toasty[];
56
56
  hashToasties: Record<number, Toasty>;
57
57
  toastyCount: number;
58
- colapsed?: boolean;
59
58
  };
60
59
  export declare type WindowOptions = {
61
60
  allowPersistCookies: boolean;
@@ -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.ecb63e65.js";
3
+ import { I as Icon } from "../../Icon/index.9fcd1476.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.ecb63e65.js";
5
+ import "../Icon/index.9fcd1476.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.5268b024.js";
9
+ import { a as BOOLEAN_FORMATTER_DICTIONARY_KEY, b as BOOLEAN_FORMATTER_DICTIONARY_LABELS } from "./BooleanFormatter/index.e8de8e4c.js";
10
10
  function getFormatConcatenated(values, separator) {
11
11
  const returnSymbol = "";
12
12
  if (values === null)
@@ -1,29 +1,29 @@
1
- import { useModuleDictionary, useModuleSkeleton } from "@m4l/core";
1
+ import { useModuleDictionary, useModuleSkeleton, useEnvironment } from "@m4l/core";
2
2
  import { useFormContext, Controller } from "react-hook-form";
3
3
  import { styled as styled$1, Skeleton, generateUtilityClasses, generateUtilityClass, Autocomplete, Popper, TextField, CircularProgress } from "@mui/material";
4
4
  import { I as Image } from "../../Image/index.c18ebf5a.js";
5
- import { useMemo, useState, useEffect } from "react";
5
+ 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.ef31df1f.js";
9
+ import { H as HelperText } from "../../HelperText/index.a019742c.js";
10
+ import { I as IconButton } from "../../mui_extended/IconButton/index.12f1a3c3.js";
10
11
  import { styled } from "@mui/material/styles";
11
12
  import "clsx";
12
13
  import { unstable_composeClasses } from "@mui/base";
13
- import "../../Icon/index.ecb63e65.js";
14
- import "../../mui_extended/IconButton/index.fc5b7c2d.js";
14
+ import "../../Icon/index.9fcd1476.js";
15
15
  import "@m4l/graphics";
16
- import "../../mui_extended/Accordion/index.12b1339a.js";
16
+ import "../../mui_extended/Accordion/index.9877f7bf.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.4288f9fc.js";
21
21
  import "../../mui_extended/Badge/index.8c2b8b66.js";
22
22
  import "@mui/lab";
23
+ import "../../mui_extended/MenuActions/index.43a2e1ae.js";
23
24
  import "../../mui_extended/Popover/index.9f35d0eb.js";
24
- import "../../mui_extended/MenuActions/index.f5b1c022.js";
25
- import "../../mui_extended/Pager/index.435af0df.js";
26
- import "../../mui_extended/Tab/index.9e2f6e34.js";
25
+ import "../../mui_extended/Pager/index.2f6d6d7d.js";
26
+ import "../../mui_extended/Tab/index.7c82e43d.js";
27
27
  import "../../mui_extended/Tooltip/index.5a795dcd.js";
28
28
  const AutocompleteRoot = styled("div")(({
29
29
  theme
@@ -207,6 +207,11 @@ function RHFAutocomplete(props) {
207
207
  } = useModuleDictionary();
208
208
  const isSkeleton = useModuleSkeleton();
209
209
  const withImage = useMemo(() => getOptionUrlImage !== void 0, [getOptionUrlImage]);
210
+ const {
211
+ host_static_assets,
212
+ environment_assets
213
+ } = useEnvironment();
214
+ const autocompleteRef = useRef(null);
210
215
  const [open, setOpen] = useState(false);
211
216
  const onCloseLocal = (event, reason) => {
212
217
  setOpen(false);
@@ -304,6 +309,7 @@ function RHFAutocomplete(props) {
304
309
  }), /* @__PURE__ */ jsx(Autocomplete, {
305
310
  onKeyDown: checkKeyDown,
306
311
  autoComplete: true,
312
+ ref: autocompleteRef,
307
313
  onFocus: handleFocus,
308
314
  onBlur: handleBlur,
309
315
  autoSelect: false,
@@ -336,6 +342,7 @@ function RHFAutocomplete(props) {
336
342
  value: value || null,
337
343
  onOpen: onOpenLocal,
338
344
  onClose: onCloseLocal,
345
+ open,
339
346
  onChange: (_e, val) => {
340
347
  setInputValue(getOptionLabelLocal(val));
341
348
  onChange(val);
@@ -366,11 +373,15 @@ function RHFAutocomplete(props) {
366
373
  width: imageWidth,
367
374
  height: imageHeight
368
375
  }, "ImageTextField") : null,
369
- endAdornment: /* @__PURE__ */ jsxs(Fragment, {
370
- children: [loading ? /* @__PURE__ */ jsx(CircularProgress, {
376
+ endAdornment: /* @__PURE__ */ jsx(Fragment, {
377
+ children: loading ? /* @__PURE__ */ jsx(CircularProgress, {
371
378
  color: "inherit",
372
379
  size: 20
373
- }) : null, params.InputProps.endAdornment]
380
+ }) : /* @__PURE__ */ jsx(IconButton, {
381
+ src: `${host_static_assets}/${environment_assets}/frontend/components/RHFAutocompletarAsync/assets/icons/chevronRight.svg`,
382
+ onClick: (event) => onOpenLocal(event),
383
+ size: "small"
384
+ })
374
385
  })
375
386
  },
376
387
  autoComplete: "off",
@@ -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.ac2b1fae.js";
8
+ import { R as RHFAutocomplete, g as getRHFAutocompleteComponentsDictionary } from "../RHFAutocomplete/index.6aa51705.js";
9
9
  import { jsx } from "react/jsx-runtime";
10
10
  styled("div")(() => ({
11
11
  display: "flex",
@@ -5,7 +5,7 @@ import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
5
5
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
6
6
  import { styled as styled$1 } from "@mui/material/styles";
7
7
  import { unstable_composeClasses } from "@mui/base";
8
- import { H as HelperText } from "../../HelperText/index.ef31df1f.js";
8
+ import { H as HelperText } from "../../HelperText/index.a019742c.js";
9
9
  import { T as Typography } from "../../mui_extended/Typography/index.443590d6.js";
10
10
  const WrapperSkeletonCheckBox = styled("div")(() => ({
11
11
  display: "flex",