@m4l/components 9.38.0 → 9.39.0

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 (56) hide show
  1. package/components/DynamicFilter/DynamicFilter.styles.d.ts.map +1 -1
  2. package/components/DynamicFilter/DynamicFilter.styles.js +82 -60
  3. package/components/DynamicFilter/hooks/useChipsOverflow.d.ts +1 -0
  4. package/components/DynamicFilter/hooks/useChipsOverflow.d.ts.map +1 -1
  5. package/components/DynamicFilter/hooks/useChipsOverflow.js +50 -44
  6. package/components/DynamicFilter/slots/SlotsEnum.d.ts +1 -0
  7. package/components/DynamicFilter/slots/SlotsEnum.d.ts.map +1 -1
  8. package/components/DynamicFilter/slots/SlotsEnum.js +1 -1
  9. package/components/DynamicFilter/slots/dynamicFilterSlots.d.ts +3 -0
  10. package/components/DynamicFilter/slots/dynamicFilterSlots.d.ts.map +1 -1
  11. package/components/DynamicFilter/slots/dynamicFilterSlots.js +43 -39
  12. package/components/DynamicFilter/subcomponents/AppliedFilterChip/AppliedFilterChip.d.ts.map +1 -1
  13. package/components/DynamicFilter/subcomponents/AppliedFilterChip/AppliedFilterChip.js +26 -19
  14. package/components/DynamicSort/DynamicSort.js +6 -6
  15. package/components/DynamicSort/DynamicSort.styles.d.ts.map +1 -1
  16. package/components/DynamicSort/DynamicSort.styles.js +40 -14
  17. package/components/DynamicSort/slots/DynamicSortSlots.d.ts +3 -0
  18. package/components/DynamicSort/slots/DynamicSortSlots.d.ts.map +1 -1
  19. package/components/DynamicSort/slots/DynamicSortSlots.js +44 -40
  20. package/components/DynamicSort/slots/SlotsEnum.d.ts +1 -0
  21. package/components/DynamicSort/slots/SlotsEnum.d.ts.map +1 -1
  22. package/components/DynamicSort/slots/SlotsEnum.js +1 -1
  23. package/components/DynamicSort/subcomponents/AppliedSorts/AppliedSorts.d.ts +2 -1
  24. package/components/DynamicSort/subcomponents/AppliedSorts/AppliedSorts.d.ts.map +1 -1
  25. package/components/DynamicSort/subcomponents/AppliedSorts/AppliedSorts.js +70 -54
  26. package/components/DynamicSort/subcomponents/AppliedSorts/types.d.ts +5 -0
  27. package/components/DynamicSort/subcomponents/AppliedSorts/types.d.ts.map +1 -0
  28. package/components/DynamicSort/subcomponents/AppliedSorts/useAppliedSorts.d.ts +1 -0
  29. package/components/DynamicSort/subcomponents/AppliedSorts/useAppliedSorts.d.ts.map +1 -1
  30. package/components/DynamicSort/subcomponents/AppliedSorts/useAppliedSorts.js +23 -21
  31. package/components/DynamicSort/subcomponents/DynamicSortBase/DynamicSortBase.d.ts.map +1 -1
  32. package/components/DynamicSort/subcomponents/DynamicSortBase/DynamicSortBase.js +15 -17
  33. package/components/DynamicSort/subcomponents/DynamicSortBase/types.d.ts +2 -0
  34. package/components/DynamicSort/subcomponents/DynamicSortBase/types.d.ts.map +1 -1
  35. package/components/DynamicSort/subcomponents/PopoverMenuFields/PopoverMenuFields.d.ts.map +1 -1
  36. package/components/DynamicSort/subcomponents/PopoverMenuFields/PopoverMenuFields.js +58 -46
  37. package/components/DynamicSort/subcomponents/SortActions/SortActions.d.ts.map +1 -1
  38. package/components/DynamicSort/subcomponents/SortActions/SortActions.js +30 -30
  39. package/components/DynamicSort/types.d.ts +6 -0
  40. package/components/DynamicSort/types.d.ts.map +1 -1
  41. package/hooks/useDynamicFilterAndSort/constants.d.ts +1 -0
  42. package/hooks/useDynamicFilterAndSort/constants.d.ts.map +1 -1
  43. package/hooks/useDynamicFilterAndSort/constants.js +4 -3
  44. package/hooks/useDynamicFilterAndSort/slots/DynamicFilterAndSortEnum.d.ts +2 -1
  45. package/hooks/useDynamicFilterAndSort/slots/DynamicFilterAndSortEnum.d.ts.map +1 -1
  46. package/hooks/useDynamicFilterAndSort/slots/DynamicFilterAndSortEnum.js +2 -2
  47. package/hooks/useDynamicFilterAndSort/slots/DynamicFilterAndSortSlots.d.ts +3 -0
  48. package/hooks/useDynamicFilterAndSort/slots/DynamicFilterAndSortSlots.d.ts.map +1 -1
  49. package/hooks/useDynamicFilterAndSort/slots/DynamicFilterAndSortSlots.js +19 -15
  50. package/hooks/useDynamicFilterAndSort/styles.d.ts.map +1 -1
  51. package/hooks/useDynamicFilterAndSort/styles.js +58 -37
  52. package/hooks/useDynamicFilterAndSort/types.d.ts +1 -0
  53. package/hooks/useDynamicFilterAndSort/types.d.ts.map +1 -1
  54. package/hooks/useDynamicFilterAndSort/useDynamicFilterAndSort.d.ts.map +1 -1
  55. package/hooks/useDynamicFilterAndSort/useDynamicFilterAndSort.js +204 -172
  56. package/package.json +8 -8
@@ -1,71 +1,92 @@
1
- import { DYNAMIC_FILTER_KEY_COMPONENT as t } from "../../components/DynamicFilter/constants.js";
2
- import { DYNAMIC_SORT_KEY_COMPONENT as e } from "../../components/DynamicSort/constants.js";
3
- const r = {
1
+ import { DYNAMIC_FILTER_KEY_COMPONENT as r } from "../../components/DynamicFilter/constants.js";
2
+ import { DYNAMIC_SORT_KEY_COMPONENT as o } from "../../components/DynamicSort/constants.js";
3
+ const p = {
4
4
  /**
5
5
  * Estilos para los leftActions
6
6
  */
7
- stackLeftActions: ({ theme: a }) => ({
7
+ stackLeftActions: ({ theme: i }) => ({
8
8
  width: "fit-content",
9
- gap: a.vars.size.baseSpacings.sp1,
10
- display: "flex",
11
- alignItems: "center"
9
+ gap: i.vars.size.baseSpacings.sp1,
10
+ alignItems: "center",
11
+ display: "flex"
12
12
  }),
13
13
  /**
14
14
  * Estilos para el Stack que contiene los componentes de filtro y ordenamiento
15
15
  */
16
- stackCustomHeader: ({ theme: a, ownerState: i }) => ({
17
- flexDirection: a.generalSettings.isMobile ? "column" : "row",
18
- gap: a.vars.size.baseSpacings.sp3,
19
- height: "auto",
20
- alignItems: "center",
21
- [`& [class*="${t}-root"]`]: {
22
- display: i?.showDynamicFilter ? "block" : "none",
23
- // flex-basis: 0 prevents the DynamicFilter root's own width:100% from
24
- // acting as flex-basis, which would create a CSS layout cycle with
25
- // container-type:inline-size (the container query needs inline size but
26
- // that depends on width:100% which depends on parent — browser resolves
27
- // the cycle incorrectly on the first pass, reporting 0 or stale width).
28
- flex: "1 1 0%",
29
- minWidth: 0
30
- },
31
- [`& [class*="${e}-root"]`]: {
32
- display: i?.showDynamicSort ? "block" : "none",
33
- flex: "1 1 0%",
34
- minWidth: 0
35
- }
36
- }),
16
+ stackCustomHeader: ({ theme: i, ownerState: a }) => {
17
+ const t = i.generalSettings.isMobile, n = a?.isNarrow, s = t || n, e = s || !a?.showDynamicFilter;
18
+ return {
19
+ // Column stacks each control on its own full-width row (children are
20
+ // width:100%); no flex-basis trick needed, so it also avoids the
21
+ // column + basis:100rem cycle that would size children by height.
22
+ flexDirection: s ? "column" : "row",
23
+ flexWrap: "wrap",
24
+ gap: i.vars.size.baseSpacings.sp3,
25
+ height: "auto",
26
+ alignItems: "center",
27
+ // Share the sort's stacked state with the DynamicSort slot styles through an
28
+ // inherited CSS variable. Prod-safe: no descendant class selectors (which
29
+ // rely on the Emotion slot labels that production builds strip).
30
+ "--m4l-dynamic-sort-justify-content": e ? "flex-start" : "flex-end",
31
+ [`& [class*="${r}-root"]`]: {
32
+ display: a?.showDynamicFilter ? "block" : "none",
33
+ // grow:7 DynamicFilter is the flexible, priority area (~70%) per design.
34
+ flex: "7 1 0%",
35
+ minWidth: 0
36
+ },
37
+ [`& [class*="${o}-root"]`]: {
38
+ display: a?.showDynamicSort ? "block" : "none",
39
+ // grow:3 — DynamicSort takes the secondary area (~30%) per design.
40
+ flex: "3 1 0%",
41
+ minWidth: 0
42
+ }
43
+ };
44
+ },
37
45
  /**
38
46
  * Estilos para el Stack que contiene los componentes de filtro y ordenamiento
39
47
  */
40
- stackRightActions: ({ theme: a }) => ({
48
+ stackRightActions: ({ theme: i }) => ({
41
49
  alignItems: "center",
42
- gap: a.vars.size.baseSpacings.sp3,
50
+ gap: i.vars.size.baseSpacings.sp3,
43
51
  width: "fit-content"
44
52
  }),
45
53
  /**
46
54
  * Estilos para el botón de refresh
47
55
  */
48
- actionRefresh: ({ theme: a, ownerState: i }) => ({
49
- ...i?.isDirty ? {
56
+ actionRefresh: ({ theme: i, ownerState: a }) => ({
57
+ ...a?.isDirty ? {
50
58
  animation: "changeBgColor 0.9s ease infinite",
51
59
  "& .M4LIcon-icon": {
52
- background: `${a.vars.palette.primary.main} !important`
60
+ background: `${i.vars.palette.primary.main} !important`
53
61
  }
54
62
  } : null,
55
63
  //Create and apply animation with change background color red and green
56
64
  "@keyframes changeBgColor": {
57
65
  "0%": {
58
- background: a.vars.palette.primary.hoverOpacity
66
+ background: i.vars.palette.primary.hoverOpacity
59
67
  },
60
68
  "50%": {
61
- background: a.vars.palette.primary.activeOpacity
69
+ background: i.vars.palette.primary.activeOpacity
62
70
  },
63
71
  "100%": {
64
- background: a.vars.palette.primary.hoverOpacity
72
+ background: i.vars.palette.primary.hoverOpacity
65
73
  }
66
74
  }
75
+ }),
76
+ /**
77
+ * Vertical separator the hook renders between the filter and the sort. It is
78
+ * owned by the hook (not by DynamicSort) so a standalone DynamicSort has no
79
+ * divider. Only visible when both controls share one row: both shown and not
80
+ * stacked (not narrow, not mobile).
81
+ */
82
+ separator: ({ theme: i, ownerState: a }) => ({
83
+ flexShrink: 0,
84
+ alignSelf: "center",
85
+ alignItems: "center",
86
+ height: i.vars.size.baseSpacings.sp4,
87
+ display: a?.showDynamicFilter && a?.showDynamicSort && !a?.isNarrow && !i.generalSettings.isMobile ? "flex" : "none"
67
88
  })
68
89
  };
69
90
  export {
70
- r as dynamicFilterAndSortStyles
91
+ p as dynamicFilterAndSortStyles
71
92
  };
@@ -37,6 +37,7 @@ export interface DynamicFilterAndSortOwnerState {
37
37
  showDynamicSort: boolean;
38
38
  automatic: boolean;
39
39
  isDirty: boolean;
40
+ isNarrow?: boolean;
40
41
  }
41
42
  export type DynamicFilterAndSortSlotsType = keyof typeof DynamicFilterAndSortSlots;
42
43
  export type DynamicFilterAndSortStyles = M4LOverridesStyleRules<DynamicFilterAndSortSlotsType, typeof M4LDYNAMIC_KEY_FILTER_AND_SORT, Theme>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../packages/components/src/hooks/useDynamicFilterAndSort/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC7G,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AACrH,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,UAAU,YAAY;IACpB,OAAO,CAAC,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACtC,UAAU,CAAC,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;CACzC;AACD,UAAU,UAAU;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,4BAA6B,SAAQ,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,cAAc,GAAG,gBAAgB,CAAC;IAC1H,SAAS,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACvC,SAAS,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,kBAAkB,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACnC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAE7B;AAED,MAAM,WAAW,8BAA8B;IAC7C,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CAClB;AACD,MAAM,MAAM,6BAA6B,GAAG,MAAM,OAAO,yBAAyB,CAAC;AACnF,MAAM,MAAM,0BAA0B,GAAG,sBAAsB,CAAC,6BAA6B,EAAE,OAAO,8BAA8B,EAAE,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../packages/components/src/hooks/useDynamicFilterAndSort/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC7G,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AACrH,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,UAAU,YAAY;IACpB,OAAO,CAAC,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACtC,UAAU,CAAC,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;CACzC;AACD,UAAU,UAAU;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,4BAA6B,SAAQ,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,cAAc,GAAG,gBAAgB,CAAC;IAC1H,SAAS,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACvC,SAAS,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,kBAAkB,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACnC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAE7B;AAED,MAAM,WAAW,8BAA8B;IAC7C,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IAEjB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AACD,MAAM,MAAM,6BAA6B,GAAG,MAAM,OAAO,yBAAyB,CAAC;AACnF,MAAM,MAAM,0BAA0B,GAAG,sBAAsB,CAAC,6BAA6B,EAAE,OAAO,8BAA8B,EAAE,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useDynamicFilterAndSort.d.ts","sourceRoot":"","sources":["../../../../../../packages/components/src/hooks/useDynamicFilterAndSort/useDynamicFilterAndSort.tsx"],"names":[],"mappings":"AA+BA,OAAO,EAAoB,4BAA4B,EAAE,MAAM,SAAS,CAAC;AAIzE,OAAO,EAGL,YAAY,EACZ,cAAc,EACf,MAAM,kCAAkC,CAAC;AAI1C;;GAEG;AACH,eAAO,MAAM,uBAAuB,GAClC,OAAO,4BAA4B;;;;;;;CAggBpC,CAAC"}
1
+ {"version":3,"file":"useDynamicFilterAndSort.d.ts","sourceRoot":"","sources":["../../../../../../packages/components/src/hooks/useDynamicFilterAndSort/useDynamicFilterAndSort.tsx"],"names":[],"mappings":"AAkCA,OAAO,EAAoB,4BAA4B,EAAE,MAAM,SAAS,CAAC;AAIzE,OAAO,EAGL,YAAY,EACZ,cAAc,EACf,MAAM,kCAAkC,CAAC;AAI1C;;GAEG;AACH,eAAO,MAAM,uBAAuB,GAClC,OAAO,4BAA4B;;;;;;;CA0jBpC,CAAC"}