@m4l/components 9.2.60-24062025.beta.1 → 9.2.60-J18062025.beta.1

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 (199) hide show
  1. package/@types/types.d.ts +0 -8
  2. package/components/Chip/Chip.js +10 -9
  3. package/components/Chip/ChipStyles.js +2 -13
  4. package/components/Chip/constants.d.ts +0 -9
  5. package/components/Chip/constants.js +2 -6
  6. package/components/Chip/slots/ChipEnum.d.ts +0 -3
  7. package/components/Chip/slots/ChipEnum.js +1 -6
  8. package/components/Chip/slots/ChipSlots.js +1 -1
  9. package/components/DataGrid/DataGrid.js +17 -3
  10. package/components/DataGrid/Datagrid.styles.js +67 -27
  11. package/components/DataGrid/constants.d.ts +2 -0
  12. package/components/DataGrid/constants.js +7 -3
  13. package/components/DataGrid/contexts/DataGridContext/index.js +77 -30
  14. package/components/DataGrid/contexts/DataGridContext/types.d.ts +5 -2
  15. package/components/DataGrid/dictionary.d.ts +8 -0
  16. package/components/DataGrid/dictionary.js +26 -17
  17. package/components/DataGrid/icons.d.ts +6 -0
  18. package/components/DataGrid/icons.js +7 -1
  19. package/components/DataGrid/slots/DataGridEnum.d.ts +5 -1
  20. package/components/DataGrid/slots/DataGridEnum.js +4 -0
  21. package/components/DataGrid/slots/DataGridSlot.d.ts +4 -0
  22. package/components/DataGrid/slots/DataGridSlot.js +22 -2
  23. package/components/DataGrid/subcomponents/HeaderActions/subcomponents/Filter/index.js +9 -1
  24. package/components/DataGrid/subcomponents/Table/hooks/getDragHeaderRenderer.d.ts +3 -1
  25. package/components/DataGrid/subcomponents/Table/hooks/getDragHeaderRenderer.js +9 -2
  26. package/components/DataGrid/subcomponents/Table/hooks/useHeaderMenuActions.d.ts +6 -0
  27. package/components/DataGrid/subcomponents/Table/hooks/useHeaderMenuActions.js +259 -0
  28. package/components/DataGrid/subcomponents/Table/hooks/useSortColumnsRows.d.ts +6 -4
  29. package/components/DataGrid/subcomponents/Table/hooks/useSortColumnsRows.js +35 -18
  30. package/components/DataGrid/subcomponents/Table/index.js +97 -34
  31. package/components/DataGrid/subcomponents/Table/subcomponents/ActionsColumn.js +1 -1
  32. package/components/DataGrid/subcomponents/Table/subcomponents/DraggableHeaderRenderer.d.ts +1 -0
  33. package/components/DataGrid/subcomponents/Table/subcomponents/DraggableHeaderRenderer.js +42 -3
  34. package/components/DataGrid/subcomponents/Table/subcomponents/HeaderRenderClick/HeaderRenderClick.d.ts +5 -0
  35. package/components/DataGrid/subcomponents/Table/subcomponents/HeaderRenderClick/HeaderRenderClick.js +136 -0
  36. package/components/DataGrid/subcomponents/Table/subcomponents/HeaderRenderClick/index.d.ts +1 -0
  37. package/components/DataGrid/subcomponents/Table/subcomponents/HeaderRenderClick/types.d.ts +131 -0
  38. package/components/DataGrid/subcomponents/Table/subcomponents/SelectColumn.js +1 -1
  39. package/components/DataGrid/subcomponents/editors/TextEditor/index.js +1 -1
  40. package/components/DataGrid/tests/HeaderRenderClick.test.d.ts +1 -0
  41. package/components/DataGrid/tests/useHeaderMenuActions.test.d.ts +1 -0
  42. package/components/DataGrid/types.d.ts +53 -0
  43. package/components/DynamicFilter/DynamicFilter.styles.js +90 -99
  44. package/components/DynamicFilter/slots/SlotsEnum.d.ts +3 -0
  45. package/components/DynamicFilter/slots/SlotsEnum.js +3 -0
  46. package/components/DynamicFilter/slots/dynamicFilterSlots.d.ts +9 -0
  47. package/components/DynamicFilter/slots/dynamicFilterSlots.js +19 -3
  48. package/components/DynamicFilter/store/DynamicFilterContext.js +67 -26
  49. package/components/DynamicFilter/subcomponents/FieldTypes/BooleanFilter/index.js +2 -2
  50. package/components/DynamicFilter/subcomponents/FieldTypes/DateTimeFilter/index.js +2 -2
  51. package/components/DynamicFilter/subcomponents/FieldTypes/NumberFilter/index.js +2 -2
  52. package/components/DynamicFilter/subcomponents/FieldTypes/SelectAsyncFilter/index.js +2 -2
  53. package/components/DynamicFilter/subcomponents/FieldTypes/SelectFilter/index.js +2 -2
  54. package/components/DynamicFilter/subcomponents/FieldTypes/StringFilter/index.js +2 -2
  55. package/components/DynamicFilter/subcomponents/FilterActions/FilterActions.js +1 -1
  56. package/components/DynamicFilter/subcomponents/FilterActions/useFilterActions.d.ts +0 -1
  57. package/components/DynamicFilter/subcomponents/FilterActions/useFilterActions.js +1 -2
  58. package/components/DynamicFilter/subcomponents/InputFilter/InputFilter.js +0 -2
  59. package/components/DynamicFilter/subcomponents/PopoverFilter/PopoverFilter.js +18 -23
  60. package/components/DynamicFilter/subcomponents/PopoverMenuFields/PopoverMenuFields.js +1 -4
  61. package/components/DynamicFilter/types.d.ts +3 -0
  62. package/components/DynamicSort/DynamicSort.js +10 -6
  63. package/components/DynamicSort/DynamicSort.styles.js +88 -90
  64. package/components/DynamicSort/slots/DynamicSortSlots.d.ts +9 -0
  65. package/components/DynamicSort/slots/DynamicSortSlots.js +21 -5
  66. package/components/DynamicSort/slots/SlotsEnum.d.ts +4 -1
  67. package/components/DynamicSort/slots/SlotsEnum.js +4 -1
  68. package/components/DynamicSort/store/DynamicSortContext.js +96 -67
  69. package/components/DynamicSort/store/DynamicSortStore.js +53 -4
  70. package/components/DynamicSort/store/types.d.ts +11 -0
  71. package/components/DynamicSort/subcomponents/FieldTypes/StringSort/index.js +2 -2
  72. package/components/DynamicSort/subcomponents/InputSort/InputSort.js +0 -2
  73. package/components/DynamicSort/subcomponents/PopoverSort/PopoverSort.js +17 -21
  74. package/components/DynamicSort/subcomponents/SortActions/SortActions.js +2 -2
  75. package/components/DynamicSort/subcomponents/SortActions/useSortActions.d.ts +0 -2
  76. package/components/DynamicSort/subcomponents/SortActions/useSortActions.js +1 -2
  77. package/components/DynamicSort/types.d.ts +4 -0
  78. package/components/LanguagePopover/LanguagePopover.js +6 -8
  79. package/components/LanguagePopover/LanguagePopover.styles.js +4 -25
  80. package/components/LanguagePopover/slots/LanguagePopoverSlots.d.ts +3 -9
  81. package/components/LanguagePopover/slots/LanguagePopoverSlots.js +3 -1
  82. package/components/LanguagePopover/types.d.ts +1 -6
  83. package/components/PaperForm/styles.js +1 -2
  84. package/components/PropertyValue/PropertyValue.js +1 -2
  85. package/components/PropertyValue/PropertyValue.styles.js +4 -7
  86. package/components/PropertyValue/types.d.ts +0 -4
  87. package/components/SideBar/SideBar.js +2 -4
  88. package/components/SideBar/constants.d.ts +2 -26
  89. package/components/SideBar/constants.js +7 -19
  90. package/components/SideBar/context/sideBarContext/index.js +5 -19
  91. package/components/SideBar/context/sideBarContext/types.d.ts +1 -22
  92. package/components/SideBar/helpers/getMenuDataWithState/index.js +8 -25
  93. package/components/SideBar/slots/SideBarEnum.d.ts +5 -5
  94. package/components/SideBar/slots/SideBarEnum.js +11 -9
  95. package/components/SideBar/slots/SideBarSlots.d.ts +3 -9
  96. package/components/SideBar/slots/SideBarSlots.js +28 -36
  97. package/components/SideBar/styles.js +4 -2
  98. package/components/SideBar/subcomponents/ContentComponent/index.js +19 -39
  99. package/components/SideBar/subcomponents/ContentComponent/style.js +22 -171
  100. package/components/SideBar/subcomponents/ContentGroups/index.d.ts +5 -0
  101. package/components/SideBar/subcomponents/{TreeGroupItems → ContentGroups}/index.js +18 -16
  102. package/components/SideBar/subcomponents/{TreeGroupItems → ContentGroups}/styles.js +7 -5
  103. package/components/SideBar/subcomponents/{TreeGroupItems/subcomponents/NodeMenuItem → ContentGroups/subcomponents/ContainerMenuItemsMain}/index.d.ts +3 -3
  104. package/components/SideBar/subcomponents/ContentGroups/subcomponents/ContainerMenuItemsMain/index.js +63 -0
  105. package/components/SideBar/subcomponents/ContentGroups/subcomponents/ContainerMenuItemsMain/styles.d.ts +2 -0
  106. package/components/SideBar/subcomponents/ContentGroups/subcomponents/ContainerMenuItemsMain/styles.js +47 -0
  107. package/components/SideBar/subcomponents/{TreeGroupItems → ContentGroups/subcomponents/ContainerMenuItemsMain}/subcomponents/ArrowIcon/index.js +7 -10
  108. package/components/SideBar/subcomponents/ContentGroups/subcomponents/ContainerMenuItemsMain/types.d.ts +7 -0
  109. package/components/SideBar/subcomponents/ContentGroups/types.d.ts +4 -0
  110. package/components/SideBar/subcomponents/{Promotion → FooterSidebar}/index.d.ts +2 -2
  111. package/components/SideBar/subcomponents/{Promotion → FooterSidebar}/index.js +15 -8
  112. package/components/SideBar/subcomponents/{Promotion → FooterSidebar}/styles.js +2 -2
  113. package/components/SideBar/subcomponents/FooterSidebar/types.d.ts +5 -0
  114. package/components/SideBar/subcomponents/HeaderSidebar/index.js +25 -0
  115. package/components/SideBar/subcomponents/SideBarDesktop/index.js +1 -1
  116. package/components/SideBar/subcomponents/SideBarDesktop/styles.js +14 -10
  117. package/components/SideBar/subcomponents/SideBarMobile/index.js +1 -1
  118. package/components/SideBar/types.d.ts +3 -7
  119. package/components/WindowBase/WindowBase.js +1 -4
  120. package/components/WindowBase/WindowBase.styles.js +13 -48
  121. package/components/WindowBase/constants.d.ts +0 -1
  122. package/components/WindowBase/constants.js +1 -5
  123. package/components/WindowBase/slots/WindowBaseEnum.d.ts +1 -2
  124. package/components/WindowBase/slots/WindowBaseEnum.js +0 -1
  125. package/components/WindowBase/slots/WindowBaseSlots.d.ts +0 -3
  126. package/components/WindowBase/slots/WindowBaseSlots.js +1 -6
  127. package/components/WindowBase/subcomponents/Header/HeaderWindowBase.js +4 -8
  128. package/components/WindowBase/subcomponents/Header/useButtonActions.js +2 -4
  129. package/components/WindowBase/subcomponents/MemoizedIconButton/MemoizedIconButton.d.ts +1 -1
  130. package/components/WindowBase/subcomponents/MemoizedIconButton/MemoizedIconButton.js +1 -1
  131. package/components/WindowBase/subcomponents/MemoizedIconButton/types.d.ts +0 -5
  132. package/components/WindowBase/types.d.ts +0 -11
  133. package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/Window.js +0 -13
  134. package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/hooks/useRightActions.js +20 -21
  135. package/components/extended/React-Resizable/helpers.js +1 -1
  136. package/components/extended/React-resizable-panels/SplitLayout.js +3 -6
  137. package/components/extended/React-resizable-panels/SplitLayout.styles.js +36 -78
  138. package/components/extended/React-resizable-panels/constants.d.ts +0 -6
  139. package/components/extended/React-resizable-panels/constants.js +1 -5
  140. package/components/extended/React-resizable-panels/slots/SplitLayoutEnum.d.ts +1 -2
  141. package/components/extended/React-resizable-panels/slots/SplitLayoutEnum.js +0 -1
  142. package/components/extended/React-resizable-panels/slots/SplitLayoutSlots.d.ts +0 -3
  143. package/components/extended/React-resizable-panels/slots/SplitLayoutSlots.js +1 -7
  144. package/components/hook-form/RHFAutocomplete/RFHAutocompleteStyles.js +1 -1
  145. package/components/hook-form/RHFTextField/RHFTextField.js +0 -1
  146. package/components/hook-form/RHFTextFieldPassword/RHFTextFieldPassword.styles.js +1 -1
  147. package/components/mui_extended/Accordion/styles.js +2 -10
  148. package/components/mui_extended/Button/Button.js +1 -3
  149. package/components/mui_extended/Button/ButtonStyles.js +1 -6
  150. package/components/mui_extended/Button/types.d.ts +1 -1
  151. package/components/mui_extended/NavLink/NavLink.js +1 -3
  152. package/components/mui_extended/NavLink/NavLink.styles.js +1 -2
  153. package/components/mui_extended/NavLink/types.d.ts +1 -3
  154. package/components/mui_extended/Tab/Tab.styles.js +1 -2
  155. package/components/mui_extended/TabContent/TabContent.styles.js +8 -2
  156. package/components/mui_extended/TextField/TextField.js +1 -1
  157. package/components/mui_extended/TextField/TextField.styles.js +13 -15
  158. package/components/mui_extended/index.d.ts +0 -1
  159. package/hooks/useDynamicFilterAndSort/styles.js +1 -1
  160. package/hooks/useDynamicFilterAndSort/useDynamicFilterAndSort.d.ts +7 -0
  161. package/hooks/useDynamicFilterAndSort/useDynamicFilterAndSort.js +300 -88
  162. package/index.d.ts +0 -1
  163. package/index.js +20 -23
  164. package/package.json +5 -6
  165. package/storybook/components/DataGrid/DataGrid.stories.d.ts +22 -0
  166. package/storybook/components/DataGrid/MswHandles.d.ts +1 -0
  167. package/storybook/components/DataGrid/helpers/filterFieldsSeedData.d.ts +5 -0
  168. package/storybook/components/DataGrid/helpers/getRows.d.ts +4 -0
  169. package/storybook/components/DataGrid/helpers/getRowsWithBackendSimulation.d.ts +9 -0
  170. package/storybook/components/DataGrid/helpers/sortsSeedData.d.ts +5 -0
  171. package/storybook/components/DataGrid/helpers/types.d.ts +1 -0
  172. package/storybook/components/DataGrid/helpers/useSeed.d.ts +3 -0
  173. package/storybook/components/DataGrid/subcomponents/DataGridRenderWithExternalFiltersAndSorts.d.ts +16 -0
  174. package/storybook/components/DynamicFilter/DynamicFilter.stories.d.ts +11 -27
  175. package/storybook/components/DynamicSort/DynamicSort.stories.d.ts +10 -26
  176. package/storybook/components/extended/mui/IconButton/IconButton.stories.d.ts +0 -1
  177. package/storybook/components/extended/mui/TextField/TextFieldText.stories.d.ts +0 -1
  178. package/utils/index.d.ts +0 -1
  179. package/components/SideBar/hooks/useCollapse/index.d.ts +0 -1
  180. package/components/SideBar/hooks/useCollapse/useCollapse.d.ts +0 -11
  181. package/components/SideBar/hooks/useCollapse/useCollapse.js +0 -23
  182. package/components/SideBar/subcomponents/Promotion/types.d.ts +0 -5
  183. package/components/SideBar/subcomponents/TreeGroupItems/index.d.ts +0 -5
  184. package/components/SideBar/subcomponents/TreeGroupItems/subcomponents/NodeMenuItem/index.js +0 -69
  185. package/components/SideBar/subcomponents/TreeGroupItems/subcomponents/NodeMenuItem/types.d.ts +0 -9
  186. package/components/SideBar/subcomponents/TreeGroupItems/subcomponents/NodeMenuItemMain/NodeMenuItemMain.d.ts +0 -5
  187. package/components/SideBar/subcomponents/TreeGroupItems/subcomponents/NodeMenuItemMain/NodeMenuItemMain.js +0 -56
  188. package/components/SideBar/subcomponents/TreeGroupItems/subcomponents/NodeMenuItemMain/index.d.ts +0 -1
  189. package/components/SideBar/subcomponents/TreeGroupItems/types.d.ts +0 -4
  190. package/components/mui_extended/Divider/index.d.ts +0 -1
  191. package/components/mui_extended/Divider/index.js +0 -1
  192. package/storybook/components/SideBar/subcomponents/FooterPromotion/FooterPromotion.d.ts +0 -4
  193. package/storybook/components/SideBar/subcomponents/FooterPromotion/constants.d.ts +0 -3
  194. package/storybook/components/SideBar/subcomponents/FooterPromotion/index.d.ts +0 -1
  195. /package/components/{SideBar/hooks/useCollapse → DataGrid/subcomponents/Table/subcomponents/HeaderRenderClick}/index.js +0 -0
  196. /package/components/SideBar/subcomponents/{TreeGroupItems → ContentGroups}/styles.d.ts +0 -0
  197. /package/components/SideBar/subcomponents/{TreeGroupItems → ContentGroups/subcomponents/ContainerMenuItemsMain}/subcomponents/ArrowIcon/index.d.ts +0 -0
  198. /package/components/SideBar/subcomponents/{TreeGroupItems → ContentGroups/subcomponents/ContainerMenuItemsMain}/subcomponents/ArrowIcon/types.d.ts +0 -0
  199. /package/components/SideBar/subcomponents/{Promotion → FooterSidebar}/styles.d.ts +0 -0
@@ -1,9 +1,10 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { I as Icon } from "../../../Icon/Icon.js";
3
+ import { u as useDynamicFilterBase } from "../DynamicFilterBase/useDynamicFilterBase.js";
2
4
  import { D as DataTypeComponent } from "../FieldTypes/DataTypeComponent.js";
3
5
  import { u as usePopoverFilter } from "./usePopoverFilter.js";
4
- import { P as PopoverStyled, h as PopoverContainerFieldsStyled, i as PopoverHeaderActionsStyled } from "../../slots/dynamicFilterSlots.js";
6
+ import { P as PopoverStyled, h as PopoverHeaderStyled, i as PopoverHeaderTitleStyled, C as ContentFilterStyled, j as PopoverContainerFieldsStyled, k as PopoverHeaderActionsStyled } from "../../slots/dynamicFilterSlots.js";
5
7
  import { R as RHFormProvider } from "../../../hook-form/RHFormContext/index.js";
6
- import { W as WindowBase } from "../../../WindowBase/WindowBase.js";
7
8
  import { A as ActionCancel } from "../../../CommonActions/components/ActionCancel/ActionCancel.js";
8
9
  import { A as ActionIntro } from "../../../CommonActions/components/ActionIntro/ActionIntro.js";
9
10
  function PopoverFilter() {
@@ -21,6 +22,7 @@ function PopoverFilter() {
21
22
  statusLoad,
22
23
  canRender
23
24
  } = usePopoverFilter();
25
+ const { ownerState } = useDynamicFilterBase();
24
26
  if (!canRender) {
25
27
  return null;
26
28
  }
@@ -32,37 +34,30 @@ function PopoverFilter() {
32
34
  transitionDuration: 0,
33
35
  anchorOrigin: { vertical: "bottom", horizontal: "left" },
34
36
  transformOrigin: { vertical: "top", horizontal: "left" },
35
- sx: (theme) => ({
36
- mt: theme.vars.size.baseSpacings.sp2
37
- }),
38
37
  arrowType: "top-left",
39
38
  anchorEl,
40
39
  onKeyDown: handleKeyDownPopper,
41
40
  onClose: handleClosePopover,
42
- children: /* @__PURE__ */ jsx(
41
+ children: /* @__PURE__ */ jsxs(
43
42
  RHFormProvider,
44
43
  {
45
44
  onSubmit,
46
45
  values: filterFormValue,
47
46
  validationSchema: popupValidationSchema,
48
47
  statusLoad,
49
- children: /* @__PURE__ */ jsxs(
50
- WindowBase,
51
- {
52
- title: labelField,
53
- iconUrl: field.urlIcon,
54
- variant: "text",
55
- type: "popup",
56
- selected: true,
57
- children: [
58
- /* @__PURE__ */ jsx(PopoverContainerFieldsStyled, { children: /* @__PURE__ */ jsx(DataTypeComponent, { formFilter, statusLoad }) }),
59
- /* @__PURE__ */ jsxs(PopoverHeaderActionsStyled, { children: [
60
- /* @__PURE__ */ jsx(ActionCancel, { onClick: onClose, skeletonWidth: "68px" }),
61
- /* @__PURE__ */ jsx(ActionIntro, { skeletonWidth: "64px", "aria-label": "applyFilter" })
62
- ] })
63
- ]
64
- }
65
- )
48
+ children: [
49
+ /* @__PURE__ */ jsxs(PopoverHeaderStyled, { ownerState: { ...ownerState }, children: [
50
+ field.urlIcon && /* @__PURE__ */ jsx(Icon, { src: field.urlIcon }),
51
+ /* @__PURE__ */ jsx(PopoverHeaderTitleStyled, { variant: "paragraphDens", children: labelField })
52
+ ] }),
53
+ /* @__PURE__ */ jsxs(ContentFilterStyled, { ownerState: { ...ownerState }, children: [
54
+ /* @__PURE__ */ jsx(PopoverContainerFieldsStyled, { children: /* @__PURE__ */ jsx(DataTypeComponent, { formFilter, statusLoad }) }),
55
+ /* @__PURE__ */ jsxs(PopoverHeaderActionsStyled, { children: [
56
+ /* @__PURE__ */ jsx(ActionCancel, { onClick: onClose, skeletonWidth: "68px" }),
57
+ /* @__PURE__ */ jsx(ActionIntro, { skeletonWidth: "64px" })
58
+ ] })
59
+ ] })
60
+ ]
66
61
  }
67
62
  )
68
63
  }
@@ -5,7 +5,7 @@ import { u as useDynamicFilterBase } from "../DynamicFilterBase/useDynamicFilter
5
5
  import { useModuleDictionary } from "@m4l/core";
6
6
  import { a as DICCTIONARY } from "../../dictionary.js";
7
7
  import { u as usePopoverContainer } from "../../../../hooks/usePopoverContainer/usePopoverContainer.js";
8
- import { j as PopoverMenuStyled } from "../../slots/dynamicFilterSlots.js";
8
+ import { l as PopoverMenuStyled } from "../../slots/dynamicFilterSlots.js";
9
9
  function PopoverMenuFields(props) {
10
10
  const { fields, selectFieldIndex } = props;
11
11
  const { elementRef, handleOpenPopUpClickItem, handleClosePopover, getItemLabel, isOpenPopoverMenuFields } = usePopoverMenuFields();
@@ -21,9 +21,6 @@ function PopoverMenuFields(props) {
21
21
  arrowType: "top-left",
22
22
  anchorOrigin: { vertical: "bottom", horizontal: "left" },
23
23
  transformOrigin: { vertical: "top", horizontal: "left" },
24
- sx: (theme) => ({
25
- mt: theme.vars.size.baseSpacings.sp2
26
- }),
27
24
  open: !!isOpenPopoverMenuFields,
28
25
  onClose: handleClosePopover,
29
26
  anchorEl,
@@ -354,5 +354,8 @@ export type DynamicFilterSlotsType = keyof typeof DynamicFilterSlots;
354
354
  export type DynamicFilterStyles = M4LOverridesStyleRules<DynamicFilterSlotsType, 'M4LDynamicFilter', Theme>;
355
355
  export interface DynamicFilterRef {
356
356
  fireOnChangeFilter: () => void;
357
+ openPopoverMenuFields: () => void;
358
+ addExternalFilter: (columnKey: string) => void;
359
+ getCurrentFilters: () => FilterFieldApplied[];
357
360
  }
358
361
  export {};
@@ -3,13 +3,17 @@ import { useFlagsPresent, CommonFlags } from "@m4l/core";
3
3
  import { forwardRef } from "react";
4
4
  import { D as DynamicSortProvider } from "./store/DynamicSortContext.js";
5
5
  import { D as DynamicSortBase } from "./subcomponents/DynamicSortBase/DynamicSortBase.js";
6
- const DynamicSort = forwardRef((props, ref) => {
7
- const hasPresentFlags = useFlagsPresent([CommonFlags.FLAG_DICTIONARY_LOADED]);
8
- if (!hasPresentFlags) {
9
- return null;
6
+ const DynamicSort = forwardRef(
7
+ (props, ref) => {
8
+ const hasPresentFlags = useFlagsPresent([
9
+ CommonFlags.FLAG_DICTIONARY_LOADED
10
+ ]);
11
+ if (!hasPresentFlags) {
12
+ return null;
13
+ }
14
+ return /* @__PURE__ */ jsx(DynamicSortProvider, { ...props, ref, children: /* @__PURE__ */ jsx(DynamicSortBase, {}) });
10
15
  }
11
- return /* @__PURE__ */ jsx(DynamicSortProvider, { ...props, ref, children: /* @__PURE__ */ jsx(DynamicSortBase, {}) });
12
- });
16
+ );
13
17
  export {
14
18
  DynamicSort as D
15
19
  };
@@ -5,55 +5,50 @@ const dynamicSortStyles = {
5
5
  /**
6
6
  * Root: Estilos del contenedor principal del componente.
7
7
  */
8
- root: ({ theme, ownerState }) => ({
8
+ root: () => ({
9
9
  containerName: CONTAINER_QUERY_NAME,
10
10
  containerType: "inline-size",
11
11
  width: "100%",
12
12
  height: "auto",
13
- padding: 0,
14
- ...getSizeStyles(
15
- theme,
16
- ownerState?.size || "medium",
17
- "container",
18
- (size) => ({
19
- height: size,
20
- maxHeight: size,
21
- minHeight: size
22
- })
23
- )
13
+ padding: 0
24
14
  }),
25
15
  /**
26
16
  * innerContainer: Estilos del contenedor interno del componente.
27
17
  */
28
18
  innerContainer: ({ theme, ownerState }) => ({
29
- display: "flex",
19
+ display: "grid",
20
+ gridTemplateColumns: "auto 1fr auto",
21
+ gridTemplateAreas: '"input-sort applied-sorts actions-sort"',
30
22
  alignItems: "center",
31
23
  justifyContent: "flex-start",
32
24
  width: "100%",
33
25
  height: "fit-content",
34
- borderRadius: theme.vars.size.borderRadius.r2,
26
+ border: theme.vars.size.borderStroke.container,
27
+ borderRadius: theme.vars.size.borderRadius.r1,
28
+ borderColor: ownerState?.isValid ? theme.vars.palette.border?.default : theme.vars.palette.error.enabled,
35
29
  background: theme.vars.palette.background.default,
36
- boxShadow: ownerState?.isValid ? `inset 0px 0px 0px 1px ${theme.vars.palette.border.default}` : `inset 0px 0px 0px 1px ${theme.vars.palette.error.enabled}`,
37
- overflow: "hidden",
38
30
  '&:has([aria-expanded="true"])': {
39
- boxShadow: ownerState?.isValid ? `inset 0px 0px 0px 1.3px ${theme.vars.palette.border.main}` : `inset 0px 0px 0px 1px ${theme.vars.palette.error.enabled}`
31
+ borderColor: ownerState?.isValid ? theme.vars.palette.primary.active : theme.vars.palette.error.enabled
40
32
  }
41
33
  }),
42
34
  /**
43
35
  * inputSort: Estilos del contenedor del campo de entrada de ordenamiento.
44
36
  */
45
37
  inputSort: ({ theme, ownerState }) => ({
38
+ gridArea: "input-sort",
46
39
  display: "flex",
47
40
  flexDirection: "row",
48
- paddingLeft: theme.vars.size.baseSpacings.sp2,
41
+ paddingLeft: theme.vars.size.baseSpacings.sp1,
49
42
  paddingRight: theme.vars.size.baseSpacings.sp1,
50
43
  height: "100%",
51
44
  overflow: "hidden",
52
- maxWidth: "120px",
45
+ maxWidth: "135px",
53
46
  width: "100%",
54
47
  alignItems: "center",
55
48
  borderTopLeftRadius: theme.vars.size.borderRadius.r1,
56
49
  borderBottomLeftRadius: theme.vars.size.borderRadius.r1,
50
+ borderRight: theme.vars.size.borderStroke.container,
51
+ borderColor: theme.vars.palette.border?.default,
57
52
  ...getSizeStyles(
58
53
  theme,
59
54
  ownerState?.size || "medium",
@@ -67,8 +62,6 @@ const dynamicSortStyles = {
67
62
  * inputSortInput: Estilos del campo de entrada de ordenamiento.
68
63
  */
69
64
  inputSortInput: ({ theme, ownerState }) => ({
70
- width: "100%",
71
- background: "#ffffff00",
72
65
  ...getSizeStyles(
73
66
  theme,
74
67
  ownerState?.size || "medium",
@@ -79,57 +72,51 @@ const dynamicSortStyles = {
79
72
  maxHeight: size
80
73
  })
81
74
  ),
82
- fontFamily: "inherit",
83
75
  ...getTypographyStyles(
84
76
  theme.generalSettings.isMobile,
85
77
  ownerState?.size || "medium",
86
78
  "body"
87
79
  ),
80
+ background: theme.vars.palette.background.default,
88
81
  color: theme.vars.palette.text.secondary,
89
82
  border: 0,
90
83
  borderColor: "transparent",
91
84
  paddingLeft: theme.vars.size.baseSpacings.sp2,
92
85
  paddingRight: theme.vars.size.baseSpacings.sp2,
86
+ width: "100%",
93
87
  height: "100%",
94
88
  "&::placeholder": {
95
89
  color: theme.vars.palette.text.secondary
96
90
  },
97
91
  "&:focus-visible": {
98
92
  color: theme.vars.palette.text.secondary,
99
- border: "unset",
93
+ border: theme.vars.size.borderStroke.container,
100
94
  borderColor: theme.vars.palette.primary.opacity,
95
+ background: theme.vars.palette.primary.opacity,
101
96
  BorderRadius: theme.vars.size.borderRadius["r0-5"],
102
97
  outline: "none!important"
98
+ },
99
+ "&:hover": {
100
+ borderColor: theme.vars.palette.primary?.toneOpacity,
101
+ background: theme.vars.palette.background?.hover
103
102
  }
104
103
  }),
105
104
  /**
106
105
  * appliedSorts: Estilos del contenedor de los campos de ordenamiento aplicados.
107
106
  */
108
- appliedSorts: ({ theme, ownerState }) => ({
107
+ appliedSorts: ({ theme }) => ({
108
+ gridArea: "applied-sorts",
109
109
  width: "100%",
110
110
  height: "fit-content",
111
- display: "flex",
112
- alignItems: "center",
111
+ overflow: "hidden",
113
112
  borderLeft: "none",
114
113
  margin: "0px",
115
- padding: `0px ${theme.vars.size.baseSpacings.sp1}`,
116
- flex: 1,
117
- overflow: "hidden",
118
- ...getSizeStyles(
119
- theme,
120
- ownerState?.size || "medium",
121
- "container",
122
- (size) => ({
123
- height: size,
124
- maxHeight: size,
125
- minHeight: size
126
- })
127
- )
114
+ padding: `0px ${theme.vars.size.baseSpacings.sp1}`
128
115
  }),
129
116
  /**
130
117
  * appliedSortInnerContainer: Estilos del contenedor interno de los campos de ordenamiento aplicados.
131
118
  */
132
- appliedSortInnerContainer: ({ theme, ownerState }) => ({
119
+ appliedSortInnerContainer: ({ theme }) => ({
133
120
  padding: theme.vars.size.baseSpacings["sp0-5"],
134
121
  gap: theme.vars.size.baseSpacings.sp1,
135
122
  height: "fit-content",
@@ -139,30 +126,13 @@ const dynamicSortStyles = {
139
126
  justifyContent: "flex-start",
140
127
  alignItems: "center",
141
128
  overflow: "auto hidden",
142
- position: "relative",
143
- "& .M4LChip-root": {
144
- borderRadius: theme.vars.size.borderRadius.r1,
145
- ...getSizeStyles(
146
- theme,
147
- ownerState?.size || "medium",
148
- "action",
149
- (size) => ({
150
- height: size
151
- })
152
- ),
153
- "& .M4LIconButton-styledMUIIconButton:hover": {
154
- backgroundColor: `${theme.vars.palette.chips.error.contained.backgroundHover} !important`,
155
- "& .M4LIcon-icon": {
156
- backgroundColor: `${theme.vars.palette.chips.error.contained.backgroundColorTone} !important`
157
- }
158
- }
159
- }
129
+ position: "relative"
160
130
  }),
161
131
  /**
162
132
  * actions: Estilos del contenedor de los botones de acción.
163
133
  */
164
134
  actions: ({ theme, ownerState }) => ({
165
- gridArea: "actions-filter",
135
+ gridArea: "actions-sort",
166
136
  overflow: "hidden",
167
137
  display: "flex",
168
138
  flexDirection: "row",
@@ -172,33 +142,19 @@ const dynamicSortStyles = {
172
142
  alignItems: "center",
173
143
  borderTopRightRadius: theme.vars.size.borderRadius.r1,
174
144
  borderBottomRightRadius: theme.vars.size.borderRadius.r1,
175
- boxShadow: `inset 1px 0px 0px 0px ${theme.vars.palette.border.default}`,
176
- ...!ownerState?.visibleRefresh && !ownerState?.isDirty && {
177
- display: "none"
178
- },
179
- ...ownerState?.inEdition && ownerState?.isValid && {
180
- boxShadow: `inset 1px 0px 0px 0px ${theme.vars.palette.border.main}`
181
- },
182
- ...!ownerState?.isValid && {
183
- boxShadow: `inset 1px 0px 0px 0px ${theme.vars.palette.error.enabled}`
184
- }
185
- }),
186
- /**
187
- * actionsClearButton: Estilos del botón de acción de limpiar.
188
- */
189
- actionsClearButton: ({ theme }) => ({
190
- visibility: "visible",
191
- "&:hover": {
192
- backgroundColor: `${theme.vars.palette.chips.error.contained.backgroundHover} !important`,
193
- "& .M4LIcon-icon": {
194
- backgroundColor: `${theme.vars.palette.chips.error.contained.backgroundColorTone} !important`
195
- }
196
- }
145
+ borderLeft: !ownerState?.visibleRefresh && !ownerState?.isDirty ? "none" : theme.vars.size.borderStroke.container,
146
+ borderColor: theme.vars.palette.border?.default
197
147
  }),
148
+ actionsClearButton: {
149
+ visibility: "visible"
150
+ },
198
151
  /**
199
152
  * actionsSubmitButton: Estilos del botón de acción de envío de formulario.
200
153
  */
201
154
  actionsSubmitButton: ({ theme, ownerState }) => ({
155
+ ...ownerState?.isValid === false ? { border: `1px dashed ${theme.vars.palette.error.enabled}` } : {
156
+ visibility: "visible"
157
+ },
202
158
  ...ownerState?.isDirty ? {
203
159
  animation: "changeBgColor 0.9s ease infinite",
204
160
  "& .M4LIcon-icon": {
@@ -250,27 +206,69 @@ const dynamicSortStyles = {
250
206
  minWidth: "220px",
251
207
  maxWidth: "420px",
252
208
  height: "fit-content"
253
- },
254
- "& .M4LWindowBase-root": {
255
- border: "unset!important",
256
- "& .M4LWindowBase-headerWindowComponent": {
257
- cursor: "unset"
258
- }
259
209
  }
260
210
  }
261
211
  }),
212
+ /**
213
+ * popoverSortHeader: Estilos del encabezado del menú emergente de ordenamiento.
214
+ */
215
+ popoverSortHeader: ({ theme, ownerState }) => ({
216
+ display: "flex",
217
+ alignItems: "center",
218
+ gap: theme.vars.size.baseSpacings.sp2,
219
+ padding: theme.vars.size.baseSpacings.sp1,
220
+ paddingLeft: theme.vars.size.baseSpacings.sp2,
221
+ borderTopLeftRadius: theme.vars.size.borderRadius.r1,
222
+ borderTopRightRadius: theme.vars.size.borderRadius.r1,
223
+ borderBottom: theme.vars.size.borderStroke.container,
224
+ borderColor: theme.vars.palette.border.secondary,
225
+ "& .MuiTypography-root": {
226
+ color: theme.vars.palette.primary.main
227
+ },
228
+ "& .M4LIcon-icon": {
229
+ backgroundColor: theme.vars.palette.primary.main
230
+ },
231
+ ...getSizeStyles(
232
+ theme,
233
+ ownerState?.size || "medium",
234
+ "container",
235
+ (size) => ({
236
+ height: size
237
+ })
238
+ )
239
+ }),
240
+ /**
241
+ * popoverSortHeaderTitle: Estilos del título del menú emergente de ordenamiento.
242
+ */
243
+ popoverSortHeaderTitle: ({ theme }) => ({
244
+ color: `${theme.vars.palette.primary.main} !important`
245
+ }),
262
246
  /**
263
247
  * popoverSortContainerFields: Estilos del contenedor de campos del menú emergente de ordenamiento.
264
248
  */
265
- popoverSortContainerFields: ({ theme }) => ({
249
+ popoverSortContainerFields: () => ({
250
+ height: "fit-content",
251
+ "& > div": {
252
+ display: "flex",
253
+ height: "auto",
254
+ flexDirection: "column"
255
+ }
256
+ }),
257
+ /**
258
+ * contentSort: Estilos del contenedor entre el change sort y actions
259
+ */
260
+ contentSort: ({ theme }) => ({
266
261
  display: "flex",
267
262
  flexDirection: "column",
268
- gap: theme.vars.size.baseSpacings.sp4
263
+ padding: theme.vars.size.baseSpacings.sp3,
264
+ gap: theme.vars.size.baseSpacings.sp3
269
265
  }),
270
266
  /**
271
267
  * popoverSortActions: Estilos del contenedor de acciones del menú emergente de ordenamiento.
272
268
  */
273
- popoverSortActions: {},
269
+ popoverSortActions: ({ theme }) => ({
270
+ padding: `${theme.vars.size.baseSpacings.sp3} 0px`
271
+ }),
274
272
  /**
275
273
  * inputSortInputSkeleton: Estilos del esqueleto del campo de entrada de ordenamiento.
276
274
  */
@@ -34,6 +34,15 @@ export declare const PopoverStyled: import('@emotion/styled').StyledComponent<Pi
34
34
  export declare const PopoverContainerFieldsStyled: import('@emotion/styled').StyledComponent<import('@mui/system').MUIStyledCommonProps<import('@mui/material/styles').Theme> & Record<string, unknown> & {
35
35
  ownerState?: (Partial<import('../types').DynamicSortOwnerState> & Record<string, unknown>) | undefined;
36
36
  }, Pick<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import('react').ClassAttributes<HTMLDivElement> | keyof import('react').HTMLAttributes<HTMLDivElement>>, {}>;
37
+ export declare const PopoverHeaderStyled: import('@emotion/styled').StyledComponent<import('@mui/system').MUIStyledCommonProps<import('@mui/material/styles').Theme> & Record<string, unknown> & {
38
+ ownerState?: (Partial<import('../types').DynamicSortOwnerState> & Record<string, unknown>) | undefined;
39
+ }, Pick<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import('react').ClassAttributes<HTMLDivElement> | keyof import('react').HTMLAttributes<HTMLDivElement>>, {}>;
40
+ export declare const ContentSortStyled: import('@emotion/styled').StyledComponent<import('@mui/system').MUIStyledCommonProps<import('@mui/material/styles').Theme> & Record<string, unknown> & {
41
+ ownerState?: (Partial<import('../types').DynamicSortOwnerState> & Record<string, unknown>) | undefined;
42
+ }, Pick<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import('react').ClassAttributes<HTMLDivElement> | keyof import('react').HTMLAttributes<HTMLDivElement>>, {}>;
43
+ export declare const PopoverHeaderTitleStyled: import('@emotion/styled').StyledComponent<Pick<import('../../mui_extended/Typography/types').TypographyProps, keyof import('../../mui_extended/Typography/types').TypographyProps> & import('@mui/system').MUIStyledCommonProps<import('@mui/material/styles').Theme> & Record<string, unknown> & {
44
+ ownerState?: (Partial<import('../types').DynamicSortOwnerState> & Record<string, unknown>) | undefined;
45
+ }, {}, {}>;
37
46
  export declare const PopoverHeaderActionsStyled: import('@emotion/styled').StyledComponent<Pick<import('../../CommonActions/components/ActionsContainer').ActionsContainerProps & import('react').RefAttributes<HTMLDivElement>, keyof import('react').RefAttributes<HTMLDivElement> | keyof import('../../CommonActions/components/ActionsContainer').ActionsContainerProps> & import('@mui/system').MUIStyledCommonProps<import('@mui/material/styles').Theme> & Record<string, unknown> & {
38
47
  ownerState?: (Partial<import('../types').DynamicSortOwnerState> & Record<string, unknown>) | undefined;
39
48
  }, {}, {}>;
@@ -4,6 +4,7 @@ import { D as DYNAMIC_SORT_KEY_COMPONENT } from "../constants.js";
4
4
  import { D as DynamicSortSlots } from "./SlotsEnum.js";
5
5
  import { S as Skeleton } from "../../mui_extended/Skeleton/Skeleton.js";
6
6
  import { I as IconButton } from "../../mui_extended/IconButton/IconButton.js";
7
+ import { T as Typography } from "../../mui_extended/Typography/Typography.js";
7
8
  import { A as ActionsContainer } from "../../CommonActions/components/ActionsContainer/ActionsContainer.js";
8
9
  import { P as Popover } from "../../mui_extended/Popover/Popover.js";
9
10
  const RootStyled = styled("div", {
@@ -54,6 +55,18 @@ const PopoverContainerFieldsStyled = styled("div", {
54
55
  name: DYNAMIC_SORT_KEY_COMPONENT,
55
56
  slot: DynamicSortSlots.popoverSortContainerFields
56
57
  })(dynamicSortStyles?.popoverSortContainerFields);
58
+ const PopoverHeaderStyled = styled("div", {
59
+ name: DYNAMIC_SORT_KEY_COMPONENT,
60
+ slot: DynamicSortSlots.popoverSortHeader
61
+ })(dynamicSortStyles?.popoverSortHeader);
62
+ const ContentSortStyled = styled("div", {
63
+ name: DYNAMIC_SORT_KEY_COMPONENT,
64
+ slot: DynamicSortSlots.contentSort
65
+ })(dynamicSortStyles?.contentSort);
66
+ const PopoverHeaderTitleStyled = styled(Typography, {
67
+ name: DYNAMIC_SORT_KEY_COMPONENT,
68
+ slot: DynamicSortSlots.popoverSortHeaderTitle
69
+ })(dynamicSortStyles?.popoverSortHeaderTitle);
57
70
  const PopoverHeaderActionsStyled = styled(ActionsContainer, {
58
71
  name: DYNAMIC_SORT_KEY_COMPONENT,
59
72
  slot: DynamicSortSlots.popoverSortActions
@@ -64,6 +77,7 @@ const InputSortInputSkeletonStyled = styled(Skeleton, {
64
77
  })(dynamicSortStyles?.inputSortInputSkeleton);
65
78
  export {
66
79
  AppliedSortsStyled as A,
80
+ ContentSortStyled as C,
67
81
  InnerContainerStyled as I,
68
82
  PopoverMenuStyled as P,
69
83
  RootStyled as R,
@@ -72,9 +86,11 @@ export {
72
86
  InputSortInputSkeletonStyled as c,
73
87
  InputSortInputStyled as d,
74
88
  PopoverStyled as e,
75
- PopoverContainerFieldsStyled as f,
76
- PopoverHeaderActionsStyled as g,
77
- ActionsStyled as h,
78
- ActionsClearButtonStyled as i,
79
- ActionsSubmitButtonStyled as j
89
+ PopoverHeaderStyled as f,
90
+ PopoverHeaderTitleStyled as g,
91
+ PopoverContainerFieldsStyled as h,
92
+ PopoverHeaderActionsStyled as i,
93
+ ActionsStyled as j,
94
+ ActionsClearButtonStyled as k,
95
+ ActionsSubmitButtonStyled as l
80
96
  };
@@ -11,6 +11,9 @@ export declare enum DynamicSortSlots {
11
11
  popoverMenu = "popoverMenu",
12
12
  popoverSort = "popoverSort",
13
13
  popoverSortContainerFields = "popoverSortContainerFields",
14
+ popoverSortHeader = "popoverSortHeader",
15
+ contentSort = "contentSort",
16
+ popoverSortHeaderTitle = "popoverSortHeaderTitle",
14
17
  popoverSortActions = "popoverSortActions",
15
- inputSortInputSkeleton = "inputSortInputSkelecontentSortton"
18
+ inputSortInputSkeleton = "inputSortInputSkeleton"
16
19
  }
@@ -11,8 +11,11 @@ var DynamicSortSlots = /* @__PURE__ */ ((DynamicSortSlots2) => {
11
11
  DynamicSortSlots2["popoverMenu"] = "popoverMenu";
12
12
  DynamicSortSlots2["popoverSort"] = "popoverSort";
13
13
  DynamicSortSlots2["popoverSortContainerFields"] = "popoverSortContainerFields";
14
+ DynamicSortSlots2["popoverSortHeader"] = "popoverSortHeader";
15
+ DynamicSortSlots2["contentSort"] = "contentSort";
16
+ DynamicSortSlots2["popoverSortHeaderTitle"] = "popoverSortHeaderTitle";
14
17
  DynamicSortSlots2["popoverSortActions"] = "popoverSortActions";
15
- DynamicSortSlots2["inputSortInputSkeleton"] = "inputSortInputSkelecontentSortton";
18
+ DynamicSortSlots2["inputSortInputSkeleton"] = "inputSortInputSkeleton";
16
19
  return DynamicSortSlots2;
17
20
  })(DynamicSortSlots || {});
18
21
  export {