@m4l/components 0.1.52 → 0.1.54

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 (103) hide show
  1. package/components/CommonActions/components/ActionFormCancel/{index.bd0d16d6.js → index.91b4e98a.js} +15 -15
  2. package/components/CommonActions/components/ActionIntro/{index.d567aebb.js → index.9004fca7.js} +5 -0
  3. package/components/CommonActions/components/ActionIntro/test/contants.d.ts +1 -0
  4. package/components/CommonActions/components/Actions/{index.f0a3167b.js → index.5e17c889.js} +14 -14
  5. package/components/DataGrid/{index.85390177.js → index.2c875ddb.js} +40 -39
  6. package/components/DynamicFilter/DynamicFilter.d.ts +9 -0
  7. package/components/DynamicFilter/classes/index.d.ts +5 -0
  8. package/components/DynamicFilter/classes/types.d.ts +22 -0
  9. package/components/DynamicFilter/constants.d.ts +14 -0
  10. package/components/DynamicFilter/contexts/DynamicFilterContext/helpers.d.ts +24 -0
  11. package/components/DynamicFilter/contexts/DynamicFilterContext/index.d.ts +18 -0
  12. package/components/DynamicFilter/contexts/DynamicFilterContext/store.d.ts +213 -0
  13. package/components/DynamicFilter/contexts/DynamicFilterContext/types.d.ts +5 -0
  14. package/components/DynamicFilter/dictionary.d.ts +21 -0
  15. package/components/DynamicFilter/hooks/useDynamicFilter.d.ts +2 -0
  16. package/components/DynamicFilter/index.931a2f9c.js +1808 -0
  17. package/components/DynamicFilter/index.d.ts +4 -6
  18. package/components/DynamicFilter/subcomponents/ApplyedFilters/subcomponents/ApplyedFilter/index.d.ts +3 -0
  19. package/components/DynamicFilter/subcomponents/ClearFilters/index.d.ts +1 -1
  20. package/components/DynamicFilter/subcomponents/FilterButton/index.d.ts +10 -0
  21. package/components/DynamicFilter/subcomponents/InnerForHooks/index.d.ts +6 -0
  22. package/components/DynamicFilter/subcomponents/InputFilter/index.d.ts +7 -1
  23. package/components/DynamicFilter/subcomponents/PopoverFilter/index.d.ts +15 -0
  24. package/components/DynamicFilter/subcomponents/PopoverMenuFields/index.d.ts +12 -0
  25. package/components/DynamicFilter/subcomponents/PopoverMenuFields/types.d.ts +6 -0
  26. package/components/DynamicFilter/subcomponents/fieldstypes/BooleanFilter/helpers.d.ts +39 -0
  27. package/components/DynamicFilter/subcomponents/fieldstypes/BooleanFilter/index.d.ts +4 -2
  28. package/components/DynamicFilter/subcomponents/fieldstypes/DateTimeFilter/helpers.d.ts +42 -0
  29. package/components/DynamicFilter/subcomponents/fieldstypes/DateTimeFilter/index.d.ts +4 -3
  30. package/components/DynamicFilter/subcomponents/fieldstypes/NumberFilter/helpers.d.ts +36 -0
  31. package/components/DynamicFilter/subcomponents/fieldstypes/NumberFilter/index.d.ts +4 -2
  32. package/components/DynamicFilter/subcomponents/fieldstypes/StringFilter/helpers.d.ts +39 -0
  33. package/components/DynamicFilter/subcomponents/fieldstypes/StringFilter/index.d.ts +4 -2
  34. package/components/DynamicFilter/subcomponents/fieldstypes/factory.d.ts +72 -4
  35. package/components/DynamicFilter/subcomponents/fieldstypes/validations.d.ts +25 -6
  36. package/components/DynamicFilter/tests/contants.d.ts +6 -0
  37. package/components/DynamicFilter/tests/types.d.ts +2 -0
  38. package/components/DynamicFilter/tests/utils.d.ts +2 -0
  39. package/components/DynamicFilter/types.d.ts +173 -42
  40. package/components/ErrorLabel/{index.78553a1e.js → index.28e80b6b.js} +6 -6
  41. package/components/Icon/{index.f6e8d810.js → index.b29ff2d9.js} +1 -1
  42. package/components/LanguagePopover/{index.5047b444.js → index.9ec5f3cf.js} +6 -6
  43. package/components/ModalDialog/{index.5a307e29.js → index.c0cb2945.js} +5 -5
  44. package/components/ObjectLogs/{index.1315af37.js → index.214967c3.js} +23 -23
  45. package/components/PaperForm/{index.0114aa9b.js → index.c04000a9.js} +1 -1
  46. package/components/Period/{index.85fe764a.js → index.23b6b403.js} +15 -15
  47. package/components/Resizeable/{index.8a442a8b.js → index.04fa8de5.js} +1 -1
  48. package/components/ScrollBar/{index.39eeb2de.js → index.35ebe9a1.js} +8 -3
  49. package/components/SplitLayout/{index.5a8355d8.js → index.fde8c830.js} +1 -1
  50. package/components/areas/components/AreasAdmin/{index.dbab59f1.js → index.a9d8e790.js} +7 -7
  51. package/components/areas/components/AreasContainer/{index.f3f921b9.js → index.1d804927.js} +3 -3
  52. package/components/areas/components/GridLayout/{index.9953146d.js → index.e3566f2a.js} +5 -5
  53. package/components/areas/components/Window/{index.e34225ae.js → index.e3b76f29.js} +37 -38
  54. package/components/areas/components/WindowPopUp/{index.90eb0348.js → index.0795e28d.js} +38 -39
  55. package/components/areas/components/{index.6d863764.js → index.8eaa42fa.js} +10 -10
  56. package/components/areas/contexts/AreaContext/{index.f25f7180.js → index.7a52aefa.js} +1 -1
  57. package/components/areas/contexts/AreasContext/{index.7406c20f.js → index.1f2d6776.js} +1 -1
  58. package/components/areas/contexts/{index.e80d8f0f.js → index.3be51103.js} +1 -1
  59. package/components/areas/hooks/{index.0fd57f88.js → index.8923d389.js} +1 -1
  60. package/components/areas/hooks/useArea/{index.7bdbbb79.js → index.8e9fbcde.js} +2 -2
  61. package/components/areas/index.a1517f9d.js +21 -0
  62. package/components/formatters/BooleanFormatter/{index.b3fb8a75.js → index.a50933fb.js} +1 -1
  63. package/components/formatters/{index.90a19f9f.js → index.7d2ad9ca.js} +2 -1
  64. package/components/hook-form/RHFAutocomplete/{index.74add0d0.js → index.19b255b5.js} +69 -59
  65. package/components/hook-form/RHFAutocomplete/test/contants.d.ts +1 -0
  66. package/components/hook-form/RHFAutocompleteAsync/{index.0aa3c224.js → index.9bedb9df.js} +1 -1
  67. package/components/hook-form/RHFCheckbox/{index.ca94a050.js → index.2e8950b3.js} +1 -1
  68. package/components/hook-form/RHFDateTime/{index.7f1cbd85.js → index.6c129ce4.js} +14 -25
  69. package/components/hook-form/RHFPeriod/{index.5d2a2071.js → index.4986e492.js} +2 -2
  70. package/components/hook-form/RHFTextField/classes/index.d.ts +0 -1
  71. package/components/hook-form/RHFTextField/{index.bef7eced.js → index.2887da3c.js} +21 -11
  72. package/components/hook-form/RHFTextField/tests/contants.d.ts +2 -0
  73. package/components/index.d.ts +1 -3
  74. package/components/modal/{WindowBase.b5e29758.js → WindowBase.a29640e3.js} +3 -3
  75. package/components/modal/{WindowConfirm.cbc7720c.js → WindowConfirm.e872e238.js} +16 -16
  76. package/components/modal/index.661b068a.js +29 -0
  77. package/components/mui_extended/Accordion/{index.1d513477.js → index.549938bd.js} +3 -3
  78. package/components/mui_extended/IconButton/{index.1318a283.js → index.460c0476.js} +1 -1
  79. package/components/mui_extended/MenuActions/{index.1261168c.js → index.01e3ccfe.js} +2 -2
  80. package/components/mui_extended/Pager/{index.984aac44.js → index.458f9f0d.js} +1 -1
  81. package/components/mui_extended/Popover/{index.58c49cc0.js → index.708c0af6.js} +2 -1
  82. package/components/mui_extended/{index.cb9d48d2.js → index.44306d3a.js} +6 -6
  83. package/contexts/ModalContext/{index.3d92d9f9.js → index.a59e3e81.js} +1 -1
  84. package/contexts/RHFormContext/{index.828b60ad.js → index.3dc6e2f5.js} +1 -0
  85. package/hooks/useModal/{index.4454145e.js → index.6741a628.js} +1 -1
  86. package/index.js +196 -225
  87. package/package.json +2 -2
  88. package/{react-draggable.0eef011c.js → react-draggable.6471b07e.js} +1 -1
  89. package/{react-resizable.bb58c8fc.js → react-resizable.b620abed.js} +2 -2
  90. package/test/constants_no_mock.d.ts +1 -0
  91. package/utils/{index.e882b264.js → index.b6ae791a.js} +12 -3
  92. package/utils/index.d.ts +2 -0
  93. package/vendor.b4e23d82.js +145 -0
  94. package/components/DynamicFilter/contexts/BaseContext/index.d.ts +0 -5
  95. package/components/DynamicFilter/contexts/BaseContext/types.d.ts +0 -45
  96. package/components/DynamicFilter/hooks/useFilter.d.ts +0 -1
  97. package/components/DynamicFilter/index.cddd7472.js +0 -1756
  98. package/components/DynamicFilter/subcomponents/ApplyedFilters/components/ApplyedFilter/index.d.ts +0 -3
  99. package/components/DynamicFilter/subcomponents/PopupEditFilter/index.d.ts +0 -2
  100. package/components/DynamicFilter/utils/Clases/index.d.ts +0 -20
  101. package/components/DynamicFilter/utils/Clases/types.d.ts +0 -17
  102. package/components/areas/index.6f09d168.js +0 -21
  103. package/components/modal/index.f6de895f.js +0 -29
@@ -3,28 +3,28 @@ import { useModuleDictionary, useModuleSkeleton } from "@m4l/core";
3
3
  import { Skeleton } from "@mui/material";
4
4
  import { B as Button } from "../../../mui_extended/Button/index.8406ed5b.js";
5
5
  import { useCallback } from "react";
6
- import { u as useModal } from "../../../../hooks/useModal/index.4454145e.js";
7
- import "../../../../react-draggable.0eef011c.js";
8
- import "../../../ModalDialog/index.5a307e29.js";
9
- import "../../../Resizeable/index.8a442a8b.js";
6
+ import { u as useModal } from "../../../../hooks/useModal/index.6741a628.js";
7
+ import "../../../../react-draggable.6471b07e.js";
8
+ import "../../../ModalDialog/index.c0cb2945.js";
9
+ import "../../../Resizeable/index.04fa8de5.js";
10
10
  import { jsx } from "react/jsx-runtime";
11
11
  import "@m4l/graphics";
12
- import { W as WindowConfirm } from "../../../modal/WindowConfirm.cbc7720c.js";
13
- import "../../../modal/WindowBase.b5e29758.js";
14
- import "../../../Icon/index.f6e8d810.js";
12
+ import { W as WindowConfirm } from "../../../modal/WindowConfirm.e872e238.js";
13
+ import "../../../modal/WindowBase.a29640e3.js";
14
+ import "../../../Icon/index.b29ff2d9.js";
15
15
  import "@mui/material/styles";
16
- import "../../../areas/components/index.6d863764.js";
17
- import "../../../areas/components/AreasAdmin/index.dbab59f1.js";
18
- import "../../../mui_extended/IconButton/index.1318a283.js";
16
+ import "../../../areas/components/index.8eaa42fa.js";
17
+ import "../../../areas/components/AreasAdmin/index.a9d8e790.js";
18
+ import "../../../mui_extended/IconButton/index.460c0476.js";
19
19
  import "zustand";
20
- import "../../../areas/contexts/AreasContext/index.7406c20f.js";
20
+ import "../../../areas/contexts/AreasContext/index.1f2d6776.js";
21
21
  import "zustand/shallow";
22
- import "../../../areas/components/AreasContainer/index.f3f921b9.js";
22
+ import "../../../areas/components/AreasContainer/index.1d804927.js";
23
23
  import "react-grid-layout/css/styles.css";
24
- import "../../../../react-resizable.bb58c8fc.js";
25
- import "../../../areas/contexts/index.e80d8f0f.js";
24
+ import "../../../../react-resizable.b620abed.js";
25
+ import "../../../areas/contexts/index.3be51103.js";
26
26
  import "../../../areas/contexts/DynamicMFParmsContext/index.c19cb8cc.js";
27
- import { u as useWindowToolsMF } from "../../../areas/hooks/index.0fd57f88.js";
27
+ import { u as useWindowToolsMF } from "../../../areas/hooks/index.8923d389.js";
28
28
  function ActionFormCancel() {
29
29
  const {
30
30
  getLabel
@@ -1,11 +1,16 @@
1
1
  import { useModuleDictionary } from "@m4l/core";
2
2
  import { B as Button } from "../../../mui_extended/Button/index.8406ed5b.js";
3
+ import { T as TEST_PROP_ID } from "../../../../vendor.b4e23d82.js";
3
4
  import { jsx } from "react/jsx-runtime";
5
+ const ACTIONINTRO_TEST_ID = "m4lactions";
4
6
  const ActionIntro = (props) => {
5
7
  const {
6
8
  getLabel
7
9
  } = useModuleDictionary();
8
10
  return /* @__PURE__ */ jsx(Button, {
11
+ ...process.env.NODE_ENV !== "production" ? {
12
+ [TEST_PROP_ID]: ACTIONINTRO_TEST_ID
13
+ } : {},
9
14
  variant: "contained",
10
15
  type: "submit",
11
16
  color: "primary",
@@ -0,0 +1 @@
1
+ export declare const ACTIONINTRO_TEST_ID = "m4lactions";
@@ -6,25 +6,25 @@ import "@mui/material/Button";
6
6
  import "../../../mui_extended/Button/index.8406ed5b.js";
7
7
  import "react-hook-form";
8
8
  import "react";
9
- import "../../../../contexts/ModalContext/index.3d92d9f9.js";
10
- import "../../../../react-draggable.0eef011c.js";
11
- import "../../../ModalDialog/index.5a307e29.js";
12
- import "../../../Resizeable/index.8a442a8b.js";
9
+ import "../../../../contexts/ModalContext/index.a59e3e81.js";
10
+ import "../../../../react-draggable.6471b07e.js";
11
+ import "../../../ModalDialog/index.c0cb2945.js";
12
+ import "../../../Resizeable/index.04fa8de5.js";
13
13
  import "@m4l/graphics";
14
14
  import "@mui/lab";
15
- import "../../../modal/WindowConfirm.cbc7720c.js";
16
- import "../../../Icon/index.f6e8d810.js";
17
- import "../../../modal/WindowBase.b5e29758.js";
18
- import "../../../areas/components/index.6d863764.js";
19
- import "../../../areas/components/AreasAdmin/index.dbab59f1.js";
20
- import "../../../mui_extended/IconButton/index.1318a283.js";
15
+ import "../../../modal/WindowConfirm.e872e238.js";
16
+ import "../../../Icon/index.b29ff2d9.js";
17
+ import "../../../modal/WindowBase.a29640e3.js";
18
+ import "../../../areas/components/index.8eaa42fa.js";
19
+ import "../../../areas/components/AreasAdmin/index.a9d8e790.js";
20
+ import "../../../mui_extended/IconButton/index.460c0476.js";
21
21
  import "zustand";
22
- import "../../../areas/contexts/AreasContext/index.7406c20f.js";
22
+ import "../../../areas/contexts/AreasContext/index.1f2d6776.js";
23
23
  import "zustand/shallow";
24
- import "../../../areas/components/AreasContainer/index.f3f921b9.js";
24
+ import "../../../areas/components/AreasContainer/index.1d804927.js";
25
25
  import "react-grid-layout/css/styles.css";
26
- import "../../../../react-resizable.bb58c8fc.js";
27
- import "../../../areas/contexts/index.e80d8f0f.js";
26
+ import "../../../../react-resizable.b620abed.js";
27
+ import "../../../areas/contexts/index.3be51103.js";
28
28
  import "../../../areas/contexts/DynamicMFParmsContext/index.c19cb8cc.js";
29
29
  const WrapperStandarActions = styled("div")(({
30
30
  theme
@@ -1,4 +1,5 @@
1
- import { styled, alpha } from "@mui/material/styles";
1
+ import { alpha, styled as styled$1 } from "@mui/material/styles";
2
+ import { styled } from "@m4l/styles";
2
3
  import { forwardRef, createContext, useState, useMemo, useEffect, useCallback, useContext, useRef, useLayoutEffect, useImperativeHandle } from "react";
3
4
  import { S as SELECT_COLUMN_KEY, u as useRowSelection, a as SelectCellFormatter, H as HeaderRenderer, D as DataGrid$1 } from "../../react-data-grid.d46d625e.js";
4
5
  import { useDrag, useDrop, DndProvider } from "react-dnd";
@@ -6,37 +7,37 @@ import { HTML5Backend } from "react-dnd-html5-backend";
6
7
  import { SvgIcon, Checkbox, InputBase, Skeleton } from "@mui/material";
7
8
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
8
9
  import { voidFunction, useModuleDictionary, useModuleSkeleton, getPropertyByString, useEnvironment } from "@m4l/core";
9
- import { M as MenuActions } from "../mui_extended/MenuActions/index.1261168c.js";
10
- import { P as Pager, g as getPagerComponentsDictionary } from "../mui_extended/Pager/index.984aac44.js";
11
- import { I as IconButton } from "../mui_extended/IconButton/index.1318a283.js";
12
- import { u as useModal } from "../../hooks/useModal/index.4454145e.js";
10
+ import { M as MenuActions } from "../mui_extended/MenuActions/index.01e3ccfe.js";
11
+ import { P as Pager, g as getPagerComponentsDictionary } from "../mui_extended/Pager/index.458f9f0d.js";
12
+ import { I as IconButton } from "../mui_extended/IconButton/index.460c0476.js";
13
+ import { u as useModal } from "../../hooks/useModal/index.6741a628.js";
13
14
  import { A as ActionCancel } from "../CommonActions/components/ActionCancel/index.a81752ef.js";
14
- import { A as ActionIntro } from "../CommonActions/components/ActionIntro/index.d567aebb.js";
15
- import "../../react-draggable.0eef011c.js";
16
- import { g as getModalDialogComponentsDictionary } from "../ModalDialog/index.5a307e29.js";
17
- import "../Resizeable/index.8a442a8b.js";
15
+ import { A as ActionIntro } from "../CommonActions/components/ActionIntro/index.9004fca7.js";
16
+ import "../../react-draggable.6471b07e.js";
17
+ import { g as getModalDialogComponentsDictionary } from "../ModalDialog/index.c0cb2945.js";
18
+ import "../Resizeable/index.04fa8de5.js";
18
19
  import { useResponsiveDesktop } from "@m4l/graphics";
19
- import { A as Actions$1 } from "../CommonActions/components/Actions/index.f0a3167b.js";
20
+ import { A as Actions$1 } from "../CommonActions/components/Actions/index.5e17c889.js";
20
21
  import "react-hook-form";
21
22
  import "@mui/material/Button";
22
23
  import "../mui_extended/Button/index.8406ed5b.js";
23
- import "../areas/components/index.6d863764.js";
24
- import "../areas/components/AreasAdmin/index.dbab59f1.js";
24
+ import "../areas/components/index.8eaa42fa.js";
25
+ import "../areas/components/AreasAdmin/index.a9d8e790.js";
25
26
  import "zustand";
26
- import "../areas/contexts/AreasContext/index.7406c20f.js";
27
+ import "../areas/contexts/AreasContext/index.1f2d6776.js";
27
28
  import "zustand/shallow";
28
- import "../areas/components/AreasContainer/index.f3f921b9.js";
29
+ import "../areas/components/AreasContainer/index.1d804927.js";
29
30
  import "react-grid-layout/css/styles.css";
30
- import "../../react-resizable.bb58c8fc.js";
31
- import "../areas/contexts/index.e80d8f0f.js";
31
+ import "../../react-resizable.b620abed.js";
32
+ import "../areas/contexts/index.3be51103.js";
32
33
  import "../areas/contexts/DynamicMFParmsContext/index.c19cb8cc.js";
33
34
  import "@mui/lab";
34
- import "../modal/WindowConfirm.cbc7720c.js";
35
- import "../Icon/index.f6e8d810.js";
36
- import { W as WindowBase } from "../modal/WindowBase.b5e29758.js";
37
- import { B as BooleanFormatter } from "../formatters/BooleanFormatter/index.b3fb8a75.js";
35
+ import "../modal/WindowConfirm.e872e238.js";
36
+ import "../Icon/index.b29ff2d9.js";
37
+ import { W as WindowBase } from "../modal/WindowBase.a29640e3.js";
38
+ import { B as BooleanFormatter } from "../formatters/BooleanFormatter/index.a50933fb.js";
38
39
  import { D as DateFormatter } from "../formatters/DateFormatter/index.578a9f53.js";
39
- import { C as ConcatenatedFormatter } from "../formatters/index.90a19f9f.js";
40
+ import { C as ConcatenatedFormatter } from "../formatters/index.7d2ad9ca.js";
40
41
  const WrapperGrid = styled("div")(() => ({
41
42
  display: "flex",
42
43
  flexDirection: "column",
@@ -171,7 +172,7 @@ const OriginalDataGridWrapperStyled = styled("div")(({
171
172
  borderBottom: `2px solid ${theme.palette.primary.main}`
172
173
  }
173
174
  }));
174
- const WrapperTable = styled("div", {
175
+ const WrapperTable = styled$1("div", {
175
176
  shouldForwardProp: (prop) => prop !== "withActions"
176
177
  })(({
177
178
  withActions,
@@ -720,7 +721,7 @@ const ActionsColumn = {
720
721
  type: "custom",
721
722
  formatter: ActionsFormatter
722
723
  };
723
- const WrapperSkeleton = styled("div")(() => ({
724
+ const WrapperSkeleton = styled$1("div")(() => ({
724
725
  display: "flex",
725
726
  width: "100%",
726
727
  height: "100%",
@@ -994,7 +995,7 @@ function Table(props) {
994
995
  })
995
996
  });
996
997
  }
997
- const SKTWrapperFilter = styled("div")(({
998
+ const SKTWrapperFilter = styled$1("div")(({
998
999
  theme
999
1000
  }) => ({
1000
1001
  display: "flex",
@@ -1032,7 +1033,7 @@ function Filter() {
1032
1033
  src: `${host_static_assets}/${environment_assets}/frontend/components/data_grid/assets/icons/filter.svg`
1033
1034
  });
1034
1035
  }
1035
- const WrapperColumnsConfig = styled("div")(({ theme }) => ({
1036
+ const WrapperColumnsConfig = styled$1("div")(({ theme }) => ({
1036
1037
  color: theme.palette.text.primary,
1037
1038
  position: "relative",
1038
1039
  display: "flex",
@@ -1040,31 +1041,31 @@ const WrapperColumnsConfig = styled("div")(({ theme }) => ({
1040
1041
  height: "100%",
1041
1042
  width: "100%"
1042
1043
  }));
1043
- styled("div")(({ theme }) => ({
1044
+ styled$1("div")(({ theme }) => ({
1044
1045
  color: theme.palette.text.primary,
1045
1046
  fontSize: theme.typography.h4.fontSize
1046
1047
  }));
1047
- const DivSelColumns = styled("div")(({ theme }) => ({
1048
+ const DivSelColumns = styled$1("div")(({ theme }) => ({
1048
1049
  ...theme.typography.subtitle2,
1049
1050
  color: theme.palette.text.primary,
1050
1051
  padding: `${theme.spacing(3)} ${theme.spacing(1)}`
1051
1052
  }));
1052
- const WrapperDataGrid = styled("div")(() => ({
1053
+ const WrapperDataGrid = styled$1("div")(() => ({
1053
1054
  position: "relative",
1054
1055
  display: "flex",
1055
1056
  flexDirection: "column",
1056
1057
  flexGrow: 1
1057
1058
  }));
1058
- styled("div")(() => ({
1059
+ styled$1("div")(() => ({
1059
1060
  display: "flex",
1060
1061
  flexDirection: "row"
1061
1062
  }));
1062
- const ColumnActions = styled("div")(({ theme }) => ({
1063
+ const ColumnActions = styled$1("div")(({ theme }) => ({
1063
1064
  paddingTop: theme.spacing(3),
1064
1065
  display: "flex",
1065
1066
  flexDirection: "row"
1066
1067
  }));
1067
- styled("div")(({ theme }) => ({
1068
+ styled$1("div")(({ theme }) => ({
1068
1069
  paddingTop: theme.spacing(3),
1069
1070
  display: "flex",
1070
1071
  flexDirection: "row",
@@ -1340,7 +1341,7 @@ const ColumnsConfig = forwardRef((props, ref) => {
1340
1341
  });
1341
1342
  });
1342
1343
  ColumnsConfig.displayName = "ColumnsConfig";
1343
- const SKTWrapperColumnsSettings = styled("div")(({ theme }) => ({
1344
+ const SKTWrapperColumnsSettings = styled$1("div")(({ theme }) => ({
1344
1345
  display: "flex",
1345
1346
  justifyContent: "center",
1346
1347
  alignItems: "center",
@@ -1410,12 +1411,12 @@ function Settings() {
1410
1411
  src: `${host_static_assets}/${environment_assets}/frontend/components/data_grid/assets/icons/configuration.svg`
1411
1412
  });
1412
1413
  }
1413
- const Container = styled("div")(() => ({
1414
+ const Container = styled$1("div")(() => ({
1414
1415
  display: "flex",
1415
1416
  alignItems: "center"
1416
1417
  }));
1417
- const RowsLabel = styled("span")(() => ({}));
1418
- const InsetLabel = styled("span")(({ theme }) => ({
1418
+ const RowsLabel = styled$1("span")(() => ({}));
1419
+ const InsetLabel = styled$1("span")(({ theme }) => ({
1419
1420
  marginLeft: theme.spacing(2),
1420
1421
  paddingTop: "2px",
1421
1422
  paddingBottom: "2px",
@@ -1458,13 +1459,13 @@ function RowsCount() {
1458
1459
  })]
1459
1460
  });
1460
1461
  }
1461
- const WrapperDensity = styled("div")(({ theme }) => ({
1462
+ const WrapperDensity = styled$1("div")(({ theme }) => ({
1462
1463
  marginLeft: 0,
1463
1464
  [theme.breakpoints.up("sm")]: {
1464
1465
  marginLeft: theme.spacing(3)
1465
1466
  }
1466
1467
  }));
1467
- const SKTWrapperDensity = styled("div")(({ theme }) => ({
1468
+ const SKTWrapperDensity = styled$1("div")(({ theme }) => ({
1468
1469
  display: "flex",
1469
1470
  justifyContent: "center",
1470
1471
  alignItems: "center",
@@ -1545,7 +1546,7 @@ function Density() {
1545
1546
  })
1546
1547
  });
1547
1548
  }
1548
- const WrapperActions = styled("div")(({ theme }) => ({
1549
+ const WrapperActions = styled$1("div")(({ theme }) => ({
1549
1550
  ...theme.typography.caption,
1550
1551
  position: "absolute",
1551
1552
  left: "0px",
@@ -1693,7 +1694,7 @@ function columnConcatenatedValuesFormatter(props) {
1693
1694
  function getDataGridComponentsDictionary() {
1694
1695
  return ["data_grid"].concat(getPagerComponentsDictionary()).concat(getModalDialogComponentsDictionary());
1695
1696
  }
1696
- const Input = styled("input")(() => ({
1697
+ const Input = styled$1("input")(() => ({
1697
1698
  appearance: "none",
1698
1699
  boxSizing: "border-box",
1699
1700
  inlineSize: "100%",
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import type { DynamicFilterProps } from './types';
3
+ /**
4
+ * @description Punto de entrada del componente
5
+ * El componente inicia su renderización cuando si el Flag FLAG_DICTIONARY_LOADED ha llegado.
6
+ * @param inProps
7
+ * @returns
8
+ */
9
+ export declare const DynamicFilter: (inProps: DynamicFilterProps) => JSX.Element | null;
@@ -0,0 +1,5 @@
1
+ import { DynamicFilterClasses } from './types';
2
+ import { OwnerState } from '../contexts/DynamicFilterContext/store';
3
+ export declare const dynamicFilterClasses: DynamicFilterClasses;
4
+ export declare const useUtilityClasses: (ownerState: OwnerState) => Record<"root" | "containerFistRow" | "filterButton" | "containerInputFilter" | "wrapperApplyedFilters" | "containerApplyedFilters" | "applyedFilter" | "popUpMenuFields" | "popoverMenuFieldsItem" | "popoverFilterPaper" | "popoverFilterHeader" | "containerBooleanFilter" | "containerDateTimeFilter" | "containerNumberFilter" | "containerStringFilter" | "clearFilters", string>;
5
+ export declare type Classes = ReturnType<typeof useUtilityClasses>;
@@ -0,0 +1,22 @@
1
+ export interface DynamicFilterClasses {
2
+ root: string;
3
+ containerFistRow: string;
4
+ filterButton: string;
5
+ containerInputFilter: string;
6
+ wrapperApplyedFilters: string;
7
+ containerApplyedFilters: string;
8
+ applyedFilter: string;
9
+ popUpMenuFields: string;
10
+ popoverMenuFieldsItem: string;
11
+ popoverFilterPaper: string;
12
+ popoverFilterHeader: string;
13
+ containerBooleanFilter: string;
14
+ containerDateTimeFilter: string;
15
+ containerNumberFilter: string;
16
+ containerStringFilter: string;
17
+ inEdition: string;
18
+ isValid: string;
19
+ isDirty: string;
20
+ isMobile: string;
21
+ }
22
+ export declare type DynamicFilterClassesKey = keyof DynamicFilterClasses;
@@ -0,0 +1,14 @@
1
+ import { BooleanOperator, DateTimeOperator, Field, NumberOperator, Operator, StringOperator } from './types';
2
+ export declare const COMPONENT_TEST_ID = "m4ldynamicfilter";
3
+ export declare const COMPONENT_CLASS_NAME = "M4LDynamicFilter";
4
+ export declare const ASSETS_URL = "/frontend/components/dynamic_filter/assets/icons/";
5
+ export declare const ASSETS: {
6
+ readonly refresh: "refresh.svg";
7
+ readonly search: "search.svg";
8
+ };
9
+ export declare const ALL_FIELDS: Field;
10
+ export declare const OPERATORS: Array<Operator>;
11
+ export declare const STRING_OPERATORS: Array<StringOperator>;
12
+ export declare const NUMBER_OPERATORS: Array<NumberOperator>;
13
+ export declare const BOOLEAN_OPERATORS: Array<BooleanOperator>;
14
+ export declare const DATE_TIME_OPERATORS: Array<DateTimeOperator>;
@@ -0,0 +1,24 @@
1
+ import { Field, FilterFieldApplyed, InitialFilterApplyed, RawFilterFieldApply } from '../../types';
2
+ export declare const getFilterById: (id: number, applyedFilters: Array<FilterFieldApplyed>) => number;
3
+ /**
4
+ * @description Función formateadora filtros como el DynamicFilter los usa a nivel interno a como se guardan en las cookies
5
+ * @param applyedFilters Filtros actualmente aplicados
6
+ * @returns
7
+ */
8
+ export declare const formatToInitialFilters: (applyedFilters: Array<FilterFieldApplyed>) => Array<InitialFilterApplyed>;
9
+ /**
10
+ * @description Función formateadora filtros como el DynamicFilter los usa a nivel interno a como se envían a la API
11
+ * @param applyedFilters Filtros actualmente aplicados
12
+ * @returns
13
+ */
14
+ export declare const formatToRawFilter: (applyedFilters: Array<FilterFieldApplyed>) => Array<RawFilterFieldApply>;
15
+ /**
16
+ * @name getPurgedInitialFiltersApplyed
17
+ * @description Función encargada de purgar cualquier error que pueda venir del endpoint, por algun cambio de versión
18
+ *
19
+ * @param fields todos los campos que pueden aparecer en el filtro no Inclute el AllField
20
+ * @param initialFilters Filtros que van a ser purgados (Eliminados si tienen errores)
21
+ * @param getFieldByName Funcion para obtener el Field a través del nombre
22
+ * @returns Array de filtros aplicados excluyendo los que tengan errores
23
+ */
24
+ export declare const getPurgedInitialFiltersApplyed: (fields: Array<Field>, initialFilters: Array<InitialFilterApplyed>, getFieldByName: (name: string) => Field) => Array<FilterFieldApplyed>;
@@ -0,0 +1,18 @@
1
+ /// <reference types="react" />
2
+ import { DynamicFilterProviderProps } from './types';
3
+ declare const DynamicFilterContext: import("react").Context<(Omit<Omit<import("zustand").StoreApi<import("./store").DynamicFilterStateWithActions>, "setState"> & {
4
+ setState<A extends string | {
5
+ type: unknown;
6
+ }>(partial: import("./store").DynamicFilterStateWithActions | Partial<import("./store").DynamicFilterStateWithActions> | ((state: import("./store").DynamicFilterStateWithActions) => import("./store").DynamicFilterStateWithActions | Partial<import("./store").DynamicFilterStateWithActions>), replace?: boolean | undefined, action?: A | undefined): void;
7
+ }, "setState"> & {
8
+ setState(nextStateOrUpdater: import("./store").DynamicFilterStateWithActions | Partial<import("./store").DynamicFilterStateWithActions> | ((state: import("immer/dist/internal").WritableDraft<import("./store").DynamicFilterStateWithActions>) => void), shouldReplace?: boolean | undefined, action?: string | {
9
+ type: unknown;
10
+ } | undefined): void;
11
+ }) | null>;
12
+ /**
13
+ * @description Contexto que crea y da alcance al Store (Zustand) para ser usado desde cualquier parte del componente.
14
+ * @param props DynamicFilterProviderProps
15
+ * @returns Proveedor de contexto, y el contexto
16
+ */
17
+ declare function DynamicFilterProvider(props: DynamicFilterProviderProps): JSX.Element;
18
+ export { DynamicFilterProvider, DynamicFilterContext };
@@ -0,0 +1,213 @@
1
+ import { GetLabelType } from '@m4l/core';
2
+ import { Field, FilterFieldApplyed, FilterToEditApply, InitialFilterApplyed, OnChangeFilters } from '../../types';
3
+ import { Classes } from '../../classes';
4
+ import { WritableDraft } from 'immer/dist/internal';
5
+ export declare type OpenFor = 'add' | 'edit';
6
+ export interface PopoverFilterDataBase {
7
+ /**
8
+ * "openFor" motivo de apertura del popup
9
+ */
10
+ openFor: OpenFor;
11
+ /**
12
+ * "fnAnchorEl" Anchor para ubicar el popup y se pone como función debido a que Immer no soporta un draft de Element
13
+ */
14
+ fnAnchorEl: () => Element;
15
+ }
16
+ export interface PopoverFilterDataAdd extends PopoverFilterDataBase {
17
+ openFor: 'add';
18
+ /**
19
+ * "field" Campo por el cual se va a filtrar
20
+ */
21
+ field: Field;
22
+ }
23
+ export interface PopoverFilterDataEdit extends PopoverFilterDataBase {
24
+ openFor: 'edit';
25
+ /**
26
+ * "filter" filtro que se va a editar
27
+ */
28
+ filter: FilterFieldApplyed;
29
+ }
30
+ /**
31
+ *
32
+ * @description Tipo usado para cuado se va agregar o modificar un filtro
33
+ */
34
+ export declare type PopoverFilterData = PopoverFilterDataAdd | PopoverFilterDataEdit;
35
+ /**
36
+ * @interface
37
+ * @name OwnerState
38
+ * @description Interface que define la variables que se van a usar en clases del componente
39
+ */
40
+ export declare type OwnerState = {
41
+ /**
42
+ * "inEdition" se establece cuando se está en edición.
43
+ */
44
+ inEdition: boolean;
45
+ /**
46
+ * "isDirty" cuando el comnponente tiene filtros por aplicar
47
+ */
48
+ isDirty: boolean;
49
+ /**
50
+ * "isValid" cuando el comnponente está en un estado invalido
51
+ */
52
+ isValid: boolean;
53
+ /**
54
+ * "isMobile" cuando el navegador está en modo celular
55
+ */
56
+ isMobile: boolean;
57
+ };
58
+ /**
59
+ * @interface DynamicFilterState
60
+ * @name DynamicFilterState
61
+ * @description Interface que define el estado del componente
62
+ */
63
+ export interface DynamicFilterState {
64
+ /**
65
+ * "fields" Campos por los que se puede filtrar
66
+ */
67
+ fields: Array<Field>;
68
+ /**
69
+ * "withAllField" indica si permite o no filtrar por todos los campos
70
+ */
71
+ withAllField: boolean;
72
+ /**
73
+ * "ownerState" estado a nivel de clases del componente
74
+ */
75
+ ownerState: OwnerState;
76
+ /**
77
+ * "allField" Campo que se usa cuando se puede buscar por todos los campos
78
+ */
79
+ allField: Field;
80
+ /**
81
+ * "automatic" Configura si el filtro se ejecuta automaticamente cuando se agrega o se modifica un filtro
82
+ */
83
+ automatic: boolean;
84
+ /**
85
+ * @description Funcion que retorna el elemento (inputFilter) desde donde se desprende el listado de campos
86
+ * Si no está definida, el menú de campos no se muestra
87
+ * @returns
88
+ */
89
+ fnAnchorEl?: () => Element;
90
+ /**
91
+ * "inputData" texto en el InputFilter
92
+ */
93
+ inputData: string;
94
+ /**
95
+ * @description Campos disponibles para filtrar
96
+ */
97
+ availableFields: Array<Field>;
98
+ applyedFilters: Array<FilterFieldApplyed>;
99
+ onChangeFilters: OnChangeFilters;
100
+ /** popoverFilterData: para emerger el popuup de modificación campos */
101
+ popoverFilterData?: PopoverFilterData;
102
+ classes: Classes;
103
+ getLabel: GetLabelType;
104
+ }
105
+ export interface DynamicFilterStateWithActions extends DynamicFilterState {
106
+ actions: {
107
+ /**
108
+ * @description inicializa el estado del componente con los filtros que provienen desde afuera
109
+ * @param initialFiltersApplyed Filtros iniciales
110
+ */
111
+ init: (initialFiltersApplyed: Array<InitialFilterApplyed>) => void;
112
+ /**
113
+ * @description Objetiene el Campo dado el nombre
114
+ * @param name
115
+ * @returns Field o undefined si no se encuentra
116
+ */
117
+ getFieldByName: (name: string) => Field;
118
+ /**
119
+ * @description remueve un filtro si existe, y dispara el trigger de onChangeFilters
120
+ * @param id //identificador unico de un filtro
121
+ */
122
+ removeFilter: (id: number) => void;
123
+ /**
124
+ *
125
+ * @param anchorEl Elemento de donde va emerger el popup
126
+ * @param field Campo por el cual se va filtrar
127
+ * @returns
128
+ */
129
+ showPopoverFilterForAdd: (anchorEl: Element, field: Field) => void;
130
+ /**
131
+ * @description Muestra la ventan de edición de un filtro aplicado
132
+ * @param anchorEl Anchor de elemento desde donde debe emerger
133
+ * @param filterToEdit Filtro a editar
134
+ * @returns
135
+ */
136
+ showPopoverFilterForEdit: (anchorEl: Element, filterToEdit: FilterFieldApplyed) => void;
137
+ /**
138
+ * @description Oculta la ventana de edición
139
+ * @param stayInEditon determina si continua en edicióin
140
+ */
141
+ hidePopoverFilter: (stayInEditon: boolean) => void;
142
+ /**
143
+ * @description Limpia todos los filtros aplicados menos los fixed
144
+ */
145
+ clearFilters: VoidFunction;
146
+ /**
147
+ * @description llama al onChangeFilters proporcionado en los props del componente
148
+ */
149
+ fireOnChangeFilters: VoidFunction;
150
+ /**
151
+ * @description Función encargada de encontrar un Id par un nuevo filtro
152
+ * @returns Id de filtro
153
+ */
154
+ getNewId: () => number;
155
+ /**
156
+ * @description Agrega un filtro setedo y correcto a los filtros aplicados (applyedFilters)
157
+ * @param newFilter Filtro a agregar
158
+ * @returns
159
+ */
160
+ addFilter: (newFilter: FilterFieldApplyed) => void;
161
+ /**
162
+ * @description Modifica un filtro que se encuentra en applyedFilters
163
+ * @param filterToEdit filtro a editar
164
+ * @returns
165
+ */
166
+ updateFilter: (filterToEdit: FilterToEditApply) => void;
167
+ /**
168
+ * @description Modifica el texto que se visuliza en el InputFilter
169
+ * @param text texto en el input
170
+ * @returns
171
+ */
172
+ setInputData: (inputData: string) => void;
173
+ /**
174
+ * @description Modifica el estado de edición del componente
175
+ * @param newInEdition Estado de edición
176
+ * @returns
177
+ */
178
+ setInEdition: (newInEdition: boolean) => void;
179
+ /**
180
+ * @description Modifica el estado de isMobile del componente
181
+ * @param newIsMobile
182
+ * @returns
183
+ */
184
+ setIsMobile: (newIsMobile: boolean) => void;
185
+ /**
186
+ * @description Establece la función de apertura del menuu de campos
187
+ * @param anchorEl
188
+ * @returns
189
+ */
190
+ openPopoverMenuFields: (anchorEl: Element) => void;
191
+ /**
192
+ * @description Limpia la función de apertura del menu de campos (por el valor anchorEl = undefined)
193
+ */
194
+ closePopoverMenuFields: (newInEdition?: boolean) => void;
195
+ };
196
+ }
197
+ declare type InitialStoreProps = Pick<DynamicFilterState, 'automatic' | 'onChangeFilters' | 'automatic' | 'fields' | 'withAllField' | 'getLabel' | 'getLabel' | 'allField' | 'ownerState'>;
198
+ /**
199
+ * @description Crea el store de zustand para el componente DynamicFilter
200
+ * @param initProps Variables iniciales que necesita store para poder inicializarlo
201
+ * @returns
202
+ */
203
+ export declare const createAreaStore: (initProps: InitialStoreProps) => Omit<Omit<import("zustand").StoreApi<DynamicFilterStateWithActions>, "setState"> & {
204
+ setState<A extends string | {
205
+ type: unknown;
206
+ }>(partial: DynamicFilterStateWithActions | Partial<DynamicFilterStateWithActions> | ((state: DynamicFilterStateWithActions) => DynamicFilterStateWithActions | Partial<DynamicFilterStateWithActions>), replace?: boolean | undefined, action?: A | undefined): void;
207
+ }, "setState"> & {
208
+ setState(nextStateOrUpdater: DynamicFilterStateWithActions | Partial<DynamicFilterStateWithActions> | ((state: WritableDraft<DynamicFilterStateWithActions>) => void), shouldReplace?: boolean | undefined, action?: string | {
209
+ type: unknown;
210
+ } | undefined): void;
211
+ };
212
+ export declare type DynamicFilterStore = ReturnType<typeof createAreaStore>;
213
+ export {};
@@ -0,0 +1,5 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { DynamicFilterProps } from '../../types';
3
+ export interface DynamicFilterProviderProps extends DynamicFilterProps {
4
+ children: ReactNode;
5
+ }
@@ -1,3 +1,24 @@
1
1
  import { Dictionary } from '@m4l/core';
2
+ export declare const DYNAMICFILTER_DICTIONARY_ID = "dynamic_filter";
2
3
  export declare function getDynamicFilterComponentsDictionary(): string[];
3
4
  export declare const defaultDynamicFilterDictionary: Dictionary;
5
+ export declare const LABEL_FILTER_BUTTON = "filter_tooltip";
6
+ export declare const DICCTIONARY: {
7
+ readonly input_placeholder: "input_placeholder";
8
+ readonly operand_true: "true";
9
+ readonly operand_false: "false";
10
+ readonly filter_tooltip_refresh: "filter_tooltip_refresh";
11
+ readonly filter_tooltip_dirty: "filter_tooltip_dirty";
12
+ readonly filter_tooltip_invalid: "filter_tooltip_invalid";
13
+ readonly operator_b: "operator_b";
14
+ readonly operator_e: "operator_e";
15
+ readonly operator_ne: "operator_ne";
16
+ readonly operator_gt: "operator_gt";
17
+ readonly operator_gte: "operator_gte";
18
+ readonly operator_lt: "operator_lt";
19
+ readonly operator_lte: "operator_lte";
20
+ readonly operator_c: "operator_c";
21
+ readonly operator_nc: "operator_nc";
22
+ };
23
+ export declare type TypeDictionary = typeof DICCTIONARY;
24
+ export declare const getDynamicFilterDictionary: (key: keyof TypeDictionary) => string;