@m4l/components 9.4.45 → 9.4.46

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 (146) hide show
  1. package/components/datagrids/Datagrid.styles.d.ts.map +1 -1
  2. package/components/datagrids/Datagrid.styles.js +358 -272
  3. package/components/datagrids/components/BaseDataGrid/BaseDataGrid.d.ts.map +1 -1
  4. package/components/datagrids/components/BaseDataGrid/BaseDataGrid.js +47 -45
  5. package/components/datagrids/contexts/DataGridContext/DataGridContext.d.ts.map +1 -1
  6. package/components/datagrids/contexts/DataGridContext/DataGridContext.js +237 -178
  7. package/components/datagrids/contexts/DataGridContext/types.d.ts +13 -4
  8. package/components/datagrids/contexts/DataGridContext/types.d.ts.map +1 -1
  9. package/components/datagrids/dictionary.d.ts +1 -0
  10. package/components/datagrids/dictionary.d.ts.map +1 -1
  11. package/components/datagrids/dictionary.js +1 -0
  12. package/components/datagrids/formatters/ColumnImageFormatter/ImageFormatterCell.d.ts.map +1 -1
  13. package/components/datagrids/formatters/ColumnImageFormatter/ImageFormatterCell.js +14 -14
  14. package/components/datagrids/helpers/persistence/getViewMode/getViewMode.d.ts.map +1 -1
  15. package/components/datagrids/helpers/persistence/getViewMode/getViewMode.js +8 -8
  16. package/components/datagrids/helpers/shared/getAllViewModes/getAllViewModes.d.ts +2 -1
  17. package/components/datagrids/helpers/shared/getAllViewModes/getAllViewModes.d.ts.map +1 -1
  18. package/components/datagrids/helpers/shared/getAllViewModes/getAllViewModes.js +1 -1
  19. package/components/datagrids/helpers/shared/getViewSpecificConfig/getViewSpecificConfig.d.ts +2 -1
  20. package/components/datagrids/helpers/shared/getViewSpecificConfig/getViewSpecificConfig.d.ts.map +1 -1
  21. package/components/datagrids/helpers/shared/getViewSpecificConfig/getViewSpecificConfig.js +11 -4
  22. package/components/datagrids/helpers/shared/getViewSuffix/getViewSuffix.d.ts +3 -2
  23. package/components/datagrids/helpers/shared/getViewSuffix/getViewSuffix.d.ts.map +1 -1
  24. package/components/datagrids/helpers/shared/getViewSuffix/getViewSuffix.js +1 -1
  25. package/components/datagrids/helpers/shared/scrollToRowElement/index.d.ts +2 -0
  26. package/components/datagrids/helpers/shared/scrollToRowElement/index.d.ts.map +1 -0
  27. package/components/datagrids/helpers/shared/scrollToRowElement/scrollToRowElement.d.ts +10 -0
  28. package/components/datagrids/helpers/shared/scrollToRowElement/scrollToRowElement.d.ts.map +1 -0
  29. package/components/datagrids/helpers/shared/scrollToRowElement/scrollToRowElement.js +24 -0
  30. package/components/datagrids/hooks/useViewConfig/useViewConfig.d.ts.map +1 -1
  31. package/components/datagrids/hooks/useViewConfig/useViewConfig.js +11 -10
  32. package/components/datagrids/shared/LazyLoadItem/LazyLoadItem.d.ts +7 -0
  33. package/components/datagrids/shared/LazyLoadItem/LazyLoadItem.d.ts.map +1 -0
  34. package/components/datagrids/shared/LazyLoadItem/index.d.ts +3 -0
  35. package/components/datagrids/shared/LazyLoadItem/index.d.ts.map +1 -0
  36. package/components/datagrids/shared/LazyLoadItem/subcomponents/IntersectItem/IntersectItem.d.ts +7 -0
  37. package/components/datagrids/shared/LazyLoadItem/subcomponents/IntersectItem/IntersectItem.d.ts.map +1 -0
  38. package/components/datagrids/shared/LazyLoadItem/subcomponents/IntersectItem/index.d.ts +3 -0
  39. package/components/datagrids/shared/LazyLoadItem/subcomponents/IntersectItem/index.d.ts.map +1 -0
  40. package/components/datagrids/shared/LazyLoadItem/subcomponents/IntersectItem/types.d.ts +13 -0
  41. package/components/datagrids/shared/LazyLoadItem/subcomponents/IntersectItem/types.d.ts.map +1 -0
  42. package/components/datagrids/shared/LazyLoadItem/types.d.ts +12 -0
  43. package/components/datagrids/shared/LazyLoadItem/types.d.ts.map +1 -0
  44. package/components/datagrids/slots/DataGridEnum.d.ts +5 -1
  45. package/components/datagrids/slots/DataGridEnum.d.ts.map +1 -1
  46. package/components/datagrids/slots/DataGridEnum.js +3 -3
  47. package/components/datagrids/slots/DataGridSlot.d.ts +12 -0
  48. package/components/datagrids/slots/DataGridSlot.d.ts.map +1 -1
  49. package/components/datagrids/slots/DataGridSlot.js +105 -89
  50. package/components/datagrids/subcomponents/HeaderActions/HeaderActions.d.ts +3 -10
  51. package/components/datagrids/subcomponents/HeaderActions/HeaderActions.d.ts.map +1 -1
  52. package/components/datagrids/subcomponents/HeaderActions/HeaderActions.js +34 -33
  53. package/components/datagrids/subcomponents/HeaderActions/subcomponents/MobileMenuActions/MobileMenuActions.d.ts +1 -13
  54. package/components/datagrids/subcomponents/HeaderActions/subcomponents/MobileMenuActions/MobileMenuActions.d.ts.map +1 -1
  55. package/components/datagrids/subcomponents/HeaderActions/subcomponents/MobileMenuActions/MobileMenuActions.js +27 -26
  56. package/components/datagrids/subcomponents/HeaderActions/subcomponents/ViewMode/ViewMode.d.ts +3 -4
  57. package/components/datagrids/subcomponents/HeaderActions/subcomponents/ViewMode/ViewMode.d.ts.map +1 -1
  58. package/components/datagrids/subcomponents/HeaderActions/subcomponents/ViewMode/ViewMode.js +77 -47
  59. package/components/datagrids/tests/helpers/useListViewConfig.d.ts +12 -0
  60. package/components/datagrids/tests/helpers/useListViewConfig.d.ts.map +1 -0
  61. package/components/datagrids/types.d.ts +58 -0
  62. package/components/datagrids/types.d.ts.map +1 -1
  63. package/components/datagrids/views/CardsView/CardsView.js +14 -14
  64. package/components/datagrids/views/ListView/ListView.d.ts +8 -0
  65. package/components/datagrids/views/ListView/ListView.d.ts.map +1 -0
  66. package/components/datagrids/views/ListView/ListView.js +98 -0
  67. package/components/datagrids/views/ListView/hooks/useListContent/index.d.ts +2 -0
  68. package/components/datagrids/views/{CardsView/helpers/scrollToCardElement → ListView/hooks/useListContent}/index.d.ts.map +1 -1
  69. package/components/datagrids/views/ListView/hooks/useListContent/useListContent.d.ts +10 -0
  70. package/components/datagrids/views/ListView/hooks/useListContent/useListContent.d.ts.map +1 -0
  71. package/components/datagrids/views/ListView/hooks/useListContent/useListContent.js +112 -0
  72. package/components/datagrids/views/ListView/hooks/useListVirtualizer/index.d.ts +3 -0
  73. package/components/datagrids/views/ListView/hooks/useListVirtualizer/index.d.ts.map +1 -0
  74. package/components/datagrids/views/ListView/hooks/useListVirtualizer/types.d.ts +27 -0
  75. package/components/datagrids/views/ListView/hooks/useListVirtualizer/types.d.ts.map +1 -0
  76. package/components/datagrids/views/ListView/hooks/useListVirtualizer/useListVirtualizer.d.ts +19 -0
  77. package/components/datagrids/views/ListView/hooks/useListVirtualizer/useListVirtualizer.d.ts.map +1 -0
  78. package/components/datagrids/views/ListView/hooks/useListVirtualizer/useListVirtualizer.js +23 -0
  79. package/components/datagrids/views/ListView/hooks/useModalDetail/index.d.ts +3 -0
  80. package/components/datagrids/views/ListView/hooks/useModalDetail/index.d.ts.map +1 -0
  81. package/components/datagrids/views/ListView/hooks/useModalDetail/types.d.ts +20 -0
  82. package/components/datagrids/views/ListView/hooks/useModalDetail/types.d.ts.map +1 -0
  83. package/components/datagrids/views/ListView/hooks/useModalDetail/useModalDetail.d.ts +7 -0
  84. package/components/datagrids/views/ListView/hooks/useModalDetail/useModalDetail.d.ts.map +1 -0
  85. package/components/datagrids/views/ListView/hooks/useModalDetail/useModalDetail.js +72 -0
  86. package/components/datagrids/views/ListView/hooks/useProcessedColumns/index.d.ts +3 -0
  87. package/components/datagrids/views/ListView/hooks/useProcessedColumns/index.d.ts.map +1 -0
  88. package/components/datagrids/views/ListView/hooks/useProcessedColumns/types.d.ts +13 -0
  89. package/components/datagrids/views/ListView/hooks/useProcessedColumns/types.d.ts.map +1 -0
  90. package/components/datagrids/views/ListView/hooks/useProcessedColumns/useProcessedColumns.d.ts +49 -0
  91. package/components/datagrids/views/ListView/hooks/useProcessedColumns/useProcessedColumns.d.ts.map +1 -0
  92. package/components/datagrids/views/ListView/hooks/useProcessedColumns/useProcessedColumns.js +30 -0
  93. package/components/datagrids/views/ListView/index.d.ts +3 -0
  94. package/components/datagrids/views/ListView/index.d.ts.map +1 -0
  95. package/components/datagrids/views/ListView/subcomponents/ListDetail/ListDetail.d.ts +9 -0
  96. package/components/datagrids/views/ListView/subcomponents/ListDetail/ListDetail.d.ts.map +1 -0
  97. package/components/datagrids/views/ListView/subcomponents/ListDetail/ListDetail.js +113 -0
  98. package/components/datagrids/views/ListView/subcomponents/ListDetail/index.d.ts +3 -0
  99. package/components/datagrids/views/ListView/subcomponents/ListDetail/index.d.ts.map +1 -0
  100. package/components/datagrids/views/ListView/subcomponents/ListDetail/types.d.ts +39 -0
  101. package/components/datagrids/views/ListView/subcomponents/ListDetail/types.d.ts.map +1 -0
  102. package/components/datagrids/views/ListView/subcomponents/ListRow/ListRow.d.ts +12 -0
  103. package/components/datagrids/views/ListView/subcomponents/ListRow/ListRow.d.ts.map +1 -0
  104. package/components/datagrids/views/ListView/subcomponents/ListRow/ListRow.js +96 -0
  105. package/components/datagrids/views/ListView/subcomponents/ListRow/index.d.ts +3 -0
  106. package/components/datagrids/views/ListView/subcomponents/ListRow/index.d.ts.map +1 -0
  107. package/components/datagrids/views/ListView/subcomponents/ListRow/subcomponents/ListHeader/ListHeader.d.ts +8 -0
  108. package/components/datagrids/views/ListView/subcomponents/ListRow/subcomponents/ListHeader/ListHeader.d.ts.map +1 -0
  109. package/components/datagrids/views/ListView/subcomponents/ListRow/subcomponents/ListHeader/ListHeader.js +83 -0
  110. package/components/datagrids/views/ListView/subcomponents/ListRow/subcomponents/ListHeader/index.d.ts +3 -0
  111. package/components/datagrids/views/ListView/subcomponents/ListRow/subcomponents/ListHeader/index.d.ts.map +1 -0
  112. package/components/datagrids/views/ListView/subcomponents/ListRow/subcomponents/ListHeader/types.d.ts +14 -0
  113. package/components/datagrids/views/ListView/subcomponents/ListRow/subcomponents/ListHeader/types.d.ts.map +1 -0
  114. package/components/datagrids/views/ListView/subcomponents/ListRow/types.d.ts +81 -0
  115. package/components/datagrids/views/ListView/subcomponents/ListRow/types.d.ts.map +1 -0
  116. package/components/datagrids/views/ListView/subcomponents/Settings/Settings.d.ts +7 -0
  117. package/components/datagrids/views/ListView/subcomponents/Settings/Settings.d.ts.map +1 -0
  118. package/components/datagrids/views/ListView/subcomponents/Settings/Settings.js +24 -0
  119. package/components/datagrids/views/ListView/subcomponents/Settings/hooks/useModalSettings/index.d.ts +3 -0
  120. package/components/datagrids/views/ListView/subcomponents/Settings/hooks/useModalSettings/index.d.ts.map +1 -0
  121. package/components/datagrids/views/ListView/subcomponents/Settings/hooks/useModalSettings/types.d.ts +5 -0
  122. package/components/datagrids/views/ListView/subcomponents/Settings/hooks/useModalSettings/types.d.ts.map +1 -0
  123. package/components/datagrids/views/ListView/subcomponents/Settings/hooks/useModalSettings/useModalSettings.d.ts +7 -0
  124. package/components/datagrids/views/ListView/subcomponents/Settings/hooks/useModalSettings/useModalSettings.d.ts.map +1 -0
  125. package/components/datagrids/views/ListView/subcomponents/Settings/hooks/useModalSettings/useModalSettings.js +62 -0
  126. package/components/datagrids/views/ListView/subcomponents/Settings/index.d.ts +3 -0
  127. package/components/datagrids/views/ListView/subcomponents/Settings/index.d.ts.map +1 -0
  128. package/components/datagrids/views/ListView/subcomponents/Settings/subcomponents/ColumnsConfig/ColumnsConfig.d.ts +3 -0
  129. package/components/datagrids/views/ListView/subcomponents/Settings/subcomponents/ColumnsConfig/ColumnsConfig.d.ts.map +1 -0
  130. package/components/datagrids/views/ListView/subcomponents/Settings/subcomponents/ColumnsConfig/ColumnsConfig.js +253 -0
  131. package/components/datagrids/views/ListView/subcomponents/Settings/subcomponents/ColumnsConfig/index.d.ts +3 -0
  132. package/components/datagrids/views/ListView/subcomponents/Settings/subcomponents/ColumnsConfig/index.d.ts.map +1 -0
  133. package/components/datagrids/views/ListView/subcomponents/Settings/subcomponents/ColumnsConfig/types.d.ts +32 -0
  134. package/components/datagrids/views/ListView/subcomponents/Settings/subcomponents/ColumnsConfig/types.d.ts.map +1 -0
  135. package/components/datagrids/views/ListView/subcomponents/Settings/types.d.ts +5 -0
  136. package/components/datagrids/views/ListView/subcomponents/Settings/types.d.ts.map +1 -0
  137. package/components/datagrids/views/ListView/types.d.ts +7 -0
  138. package/components/datagrids/views/ListView/types.d.ts.map +1 -0
  139. package/components/datagrids/views/adapters/RenderContent/RenderContent.d.ts +2 -1
  140. package/components/datagrids/views/adapters/RenderContent/RenderContent.d.ts.map +1 -1
  141. package/components/datagrids/views/adapters/RenderContent/RenderContent.js +7 -6
  142. package/package.json +7 -6
  143. package/components/datagrids/views/CardsView/helpers/scrollToCardElement/index.d.ts +0 -2
  144. package/components/datagrids/views/CardsView/helpers/scrollToCardElement/scrollToCardElement.d.ts +0 -10
  145. package/components/datagrids/views/CardsView/helpers/scrollToCardElement/scrollToCardElement.d.ts.map +0 -1
  146. package/components/datagrids/views/CardsView/helpers/scrollToCardElement/scrollToCardElement.js +0 -24
@@ -0,0 +1,96 @@
1
+ import { jsxs as x, jsx as c } from "@emotion/react/jsx-runtime";
2
+ import q, { useMemo as B } from "react";
3
+ import { CardContentWrapperStyled as G, CardContentStyled as H, ListStyled as W } from "../../../../slots/DataGridSlot.js";
4
+ import { deepEqual as h } from "fast-equals";
5
+ import { useListContent as z } from "../../hooks/useListContent/useListContent.js";
6
+ import { ListHeader as F } from "./subcomponents/ListHeader/ListHeader.js";
7
+ import { getDefaultAction as J } from "../../../../helpers/shared/getDefaultAction/getDefaultAction.js";
8
+ import { useDataGrid as K } from "../../../../hooks/shared/useDataGrid/useDataGrid.js";
9
+ function N({
10
+ row: t,
11
+ rows: o,
12
+ rowIndex: I,
13
+ columns: y,
14
+ originalColumns: O,
15
+ rowKeyGetter: u,
16
+ selectedRows: n,
17
+ onSelectedRowsChange: l,
18
+ onRowsChange: L,
19
+ customRender: e,
20
+ isChecked: r,
21
+ showCheckbox: m,
22
+ checkedRows: f,
23
+ onCheckedRowsChange: p,
24
+ onOpenDetail: M,
25
+ showExpandButton: C = !0,
26
+ onExpandClick: d
27
+ }) {
28
+ const { rowActionsGetter: b } = K(), i = u(t), S = e !== void 0, { listContent: g } = z({
29
+ row: t,
30
+ rows: o,
31
+ rowIndex: I,
32
+ columns: y,
33
+ onRowsChange: L
34
+ }), k = B(() => S ? e.renderContent(t) : /* @__PURE__ */ x(G, { ownerState: {}, children: [
35
+ /* @__PURE__ */ c(
36
+ F,
37
+ {
38
+ row: t,
39
+ onOpenDetail: M,
40
+ isChecked: r,
41
+ showCheckbox: m,
42
+ checkedRows: f,
43
+ onCheckedRowsChange: p,
44
+ showExpandButton: C,
45
+ onExpandClick: d
46
+ }
47
+ ),
48
+ /* @__PURE__ */ c(H, { ownerState: {}, children: g })
49
+ ] }), [
50
+ S,
51
+ e,
52
+ t,
53
+ g,
54
+ r,
55
+ m,
56
+ f,
57
+ p,
58
+ C,
59
+ d
60
+ ]), D = (a) => {
61
+ if (!a.target.closest(
62
+ 'input, button, a, [role="button"], .MuiCheckbox-root, .MuiIconButton-root'
63
+ ) && n && l) {
64
+ if (n.has(i))
65
+ return;
66
+ const s = /* @__PURE__ */ new Set([u(t)]);
67
+ l(s);
68
+ }
69
+ }, A = (a) => {
70
+ if (a.target.closest(
71
+ 'input, button, a, [role="button"], .MuiCheckbox-root, .MuiIconButton-root'
72
+ ) || !b)
73
+ return;
74
+ const s = b(t), v = J(s);
75
+ v?.onClick && v.onClick(t);
76
+ };
77
+ return /* @__PURE__ */ c(
78
+ W,
79
+ {
80
+ variant: "outlined",
81
+ ownerState: {
82
+ selected: n?.has(i) ?? !1,
83
+ checked: r
84
+ },
85
+ onClick: D,
86
+ onDoubleClick: A,
87
+ "data-testid": "list-row",
88
+ "data-row-key": i,
89
+ children: k
90
+ }
91
+ );
92
+ }
93
+ const _ = q.memo(N, (t, o) => h(t, o));
94
+ export {
95
+ _ as ListRow
96
+ };
@@ -0,0 +1,3 @@
1
+ export { ListRow } from './ListRow';
2
+ export type { ListRowProps } from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../packages/components/src/components/datagrids/views/ListView/subcomponents/ListRow/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { ListHeaderProps } from './types';
2
+ /**
3
+ * Componente CardHeader que renderiza el header de cada card con:
4
+ * - Checkbox en el lado izquierdo (solo si existen checkedRows/onCheckedRowsChange)
5
+ * - Botones de acción en el lado derecho (IconButton + MenuActions)
6
+ */
7
+ export declare function ListHeader<TRow>({ row, onOpenDetail, isChecked, showCheckbox, checkedRows, onCheckedRowsChange, showExpandButton, onExpandClick, }: ListHeaderProps<TRow>): import("@emotion/react/jsx-runtime").JSX.Element;
8
+ //# sourceMappingURL=ListHeader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListHeader.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../packages/components/src/components/datagrids/views/ListView/subcomponents/ListRow/subcomponents/ListHeader/ListHeader.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAI1C;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,EAC/B,GAAG,EACH,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,WAAW,EACX,mBAAmB,EACnB,gBAAuB,EACvB,aAAa,GACd,EAAE,eAAe,CAAC,IAAI,CAAC,oDA8GvB"}
@@ -0,0 +1,83 @@
1
+ import { jsxs as c, jsx as o } from "@emotion/react/jsx-runtime";
2
+ import { useMemo as l, useCallback as A } from "react";
3
+ import { CardHeaderStyled as H, CardHeaderLeftStyled as h, CardHeaderRightStyled as j } from "../../../../../../slots/DataGridSlot.js";
4
+ import { LayoutExpandOutlined as w } from "@m4l/icons";
5
+ import { CheckboxCellAdapter as z } from "../../../../../adapters/CheckboxCellAdapter/CheckboxCellAdapter.js";
6
+ import { IconButton as G } from "../../../../../../../extended/mui/IconButton/IconButton.js";
7
+ import { useDataGrid as I } from "../../../../../../hooks/shared/useDataGrid/useDataGrid.js";
8
+ import { MenuActions as L } from "../../../../../../../MenuActions/MenuActions.js";
9
+ function $({
10
+ row: e,
11
+ onOpenDetail: u,
12
+ isChecked: S,
13
+ showCheckbox: s,
14
+ checkedRows: a,
15
+ onCheckedRowsChange: r,
16
+ showExpandButton: y = !0,
17
+ onExpandClick: m
18
+ }) {
19
+ const { rowKeyGetter: f, rowActionsGetter: d, size: b, checkedRowsMultiple: p } = I(), i = l(() => f(e), [f, e]), x = A(
20
+ (t, M) => {
21
+ if (!(!r || !a))
22
+ if (p === !1)
23
+ r(t ? /* @__PURE__ */ new Set([i]) : /* @__PURE__ */ new Set());
24
+ else {
25
+ const n = new Set(a);
26
+ t ? n.add(i) : n.delete(i), r(n);
27
+ }
28
+ },
29
+ [a, r, i, p]
30
+ ), v = l(
31
+ () => ({
32
+ vertical: "bottom",
33
+ horizontal: "right"
34
+ }),
35
+ []
36
+ ), g = l(
37
+ () => ({
38
+ vertical: "top",
39
+ horizontal: "right"
40
+ }),
41
+ []
42
+ );
43
+ return /* @__PURE__ */ c(H, { ownerState: { hasCheckedRows: s }, children: [
44
+ s && /* @__PURE__ */ o(h, { ownerState: {}, children: /* @__PURE__ */ o(
45
+ z,
46
+ {
47
+ value: S ?? !1,
48
+ tabIndex: -1,
49
+ onChange: x,
50
+ "aria-label": "Select"
51
+ }
52
+ ) }),
53
+ /* @__PURE__ */ c(j, { ownerState: {}, children: [
54
+ y && /* @__PURE__ */ o(
55
+ G,
56
+ {
57
+ icon: /* @__PURE__ */ o(w, {}),
58
+ size: b,
59
+ variant: "text",
60
+ "data-testid": `list-details-button-${i}`,
61
+ onClick: (t) => {
62
+ t.stopPropagation(), m ? m(e) : u(e);
63
+ }
64
+ }
65
+ ),
66
+ d && /* @__PURE__ */ o(
67
+ L,
68
+ {
69
+ arrowType: "top-left",
70
+ objItem: e,
71
+ menuActions: d,
72
+ anchorOrigin: v,
73
+ transformOrigin: g,
74
+ onClick: (t) => t.stopPropagation(),
75
+ variant: "text"
76
+ }
77
+ )
78
+ ] })
79
+ ] });
80
+ }
81
+ export {
82
+ $ as ListHeader
83
+ };
@@ -0,0 +1,3 @@
1
+ export { ListHeader } from './ListHeader';
2
+ export type { ListHeaderProps } from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../packages/components/src/components/datagrids/views/ListView/subcomponents/ListRow/subcomponents/ListHeader/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Props for ListHeader. Same shape as CardHeader (checkbox left, expand + MenuActions right).
3
+ */
4
+ export interface ListHeaderProps<TRow> {
5
+ row: TRow;
6
+ onOpenDetail: (row: TRow) => void;
7
+ isChecked?: boolean;
8
+ showCheckbox?: boolean;
9
+ checkedRows?: ReadonlySet<any>;
10
+ onCheckedRowsChange?: (rows: ReadonlySet<any>) => void;
11
+ showExpandButton?: boolean;
12
+ onExpandClick?: (row: TRow) => void;
13
+ }
14
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../packages/components/src/components/datagrids/views/ListView/subcomponents/ListRow/subcomponents/ListHeader/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,IAAI;IACnC,GAAG,EAAE,IAAI,CAAC;IACV,YAAY,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;IACvD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;CACrC"}
@@ -0,0 +1,81 @@
1
+ import { Column, RowsChangeData } from 'react-data-grid';
2
+ import { Maybe } from '@m4l/core';
3
+ import { ListViewConfig, RowKey } from '../../../../types';
4
+ /**
5
+ * Props para el componente ListRow.
6
+ * Mismo tipado que CardRowProps (mismas props, mismos tipos); solo el tipo de customRender viene de ListViewConfig.
7
+ */
8
+ export interface ListRowProps<TRow, TKey extends RowKey = RowKey> {
9
+ /**
10
+ * Fila que se mostrará en la fila de lista
11
+ */
12
+ row: TRow;
13
+ /**
14
+ * Array completo de todas las filas (necesario para reconstruir el array al editar)
15
+ */
16
+ rows: readonly TRow[];
17
+ /**
18
+ * Índice de la fila actual en el array de filas
19
+ */
20
+ rowIndex: number;
21
+ /**
22
+ * Columnas que se mostrarán (procesadas, filtradas por visibilidad)
23
+ */
24
+ columns: readonly Column<TRow, any>[];
25
+ /**
26
+ * Columnas originales sin filtrar (para el modal de detalle)
27
+ */
28
+ originalColumns: readonly Column<TRow, any>[];
29
+ /**
30
+ * Función que devuelve la clave de la fila
31
+ */
32
+ rowKeyGetter: (row: TRow) => TKey;
33
+ /**
34
+ * Filas seleccionadas actualmente
35
+ */
36
+ selectedRows?: ReadonlySet<TKey>;
37
+ /**
38
+ * Función para manejar el cambio de filas seleccionadas
39
+ */
40
+ onSelectedRowsChange?: (mapRowsSelected: ReadonlySet<TKey>) => void;
41
+ /**
42
+ * Función para manejar cambios en las filas (para editores)
43
+ */
44
+ onRowsChange?: Maybe<(rows: TRow[], data: RowsChangeData<TRow, any>) => void>;
45
+ /**
46
+ * Custom render configuration for the row
47
+ */
48
+ customRender?: Extract<ListViewConfig<TRow>, {
49
+ customRender: unknown;
50
+ }>['customRender'];
51
+ /**
52
+ * Whether the row is checked
53
+ */
54
+ isChecked: boolean;
55
+ /**
56
+ * Indica si se debe mostrar el checkbox para checkedRows
57
+ */
58
+ showCheckbox: boolean;
59
+ /**
60
+ * Filas chequeadas actualmente
61
+ */
62
+ checkedRows?: ReadonlySet<TKey>;
63
+ /**
64
+ * Función para manejar el cambio de filas chequeadas
65
+ */
66
+ onCheckedRowsChange?: (mapRowsChecked: ReadonlySet<TKey>) => void;
67
+ /**
68
+ * Función para abrir el modal de detalle de la fila
69
+ */
70
+ onOpenDetail: (row: TRow) => void;
71
+ /**
72
+ * Indica si se debe mostrar el botón de expansión (detalle)
73
+ * @default true
74
+ */
75
+ showExpandButton?: boolean;
76
+ /**
77
+ * Opcional. Cuando se proporciona, el botón de expansión llama a esta función en lugar de abrir el modal de detalle.
78
+ */
79
+ onExpandClick?: (row: TRow) => void;
80
+ }
81
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../../../../../packages/components/src/components/datagrids/views/ListView/subcomponents/ListRow/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3D;;;GAGG;AACH,MAAM,WAAW,YAAY,CAAC,IAAI,EAAE,IAAI,SAAS,MAAM,GAAG,MAAM;IAC9D;;OAEG;IACH,GAAG,EAAE,IAAI,CAAC;IACV;;OAEG;IACH,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,OAAO,EAAE,SAAS,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;IACtC;;OAEG;IACH,eAAe,EAAE,SAAS,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;IAC9C;;OAEG;IACH,YAAY,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;IAClC;;OAEG;IACH,YAAY,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IACjC;;OAEG;IACH,oBAAoB,CAAC,EAAE,CAAC,eAAe,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;IACpE;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC;IAC9E;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;QAAE,YAAY,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC,cAAc,CAAC,CAAC;IACxF;;OAEG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,YAAY,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC;;OAEG;IACH,mBAAmB,CAAC,EAAE,CAAC,cAAc,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;IAClE;;OAEG;IACH,YAAY,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;IAClC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;CACrC"}
@@ -0,0 +1,7 @@
1
+ import { SettingsProps } from './types';
2
+ /**
3
+ * Renders the settings icon for ListView.
4
+ * Opens the column configuration modal for the list view.
5
+ */
6
+ export declare function Settings(props: SettingsProps): import("@emotion/react/jsx-runtime").JSX.Element;
7
+ //# sourceMappingURL=Settings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Settings.d.ts","sourceRoot":"","sources":["../../../../../../../../../../packages/components/src/components/datagrids/views/ListView/subcomponents/Settings/Settings.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAGxC;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,oDAmB5C"}
@@ -0,0 +1,24 @@
1
+ import { jsx as t } from "@emotion/react/jsx-runtime";
2
+ import { useModuleDictionary as a } from "@m4l/core";
3
+ import { SettingsConfigOutlined as m } from "@m4l/icons";
4
+ import { IconButton as l } from "../../../../../extended/mui/IconButton/IconButton.js";
5
+ import { useDataGrid as c } from "../../../../hooks/shared/useDataGrid/useDataGrid.js";
6
+ import { useModalSettings as d } from "./hooks/useModalSettings/useModalSettings.js";
7
+ function C(o) {
8
+ const { columns: i } = o, { size: n } = c(), s = d(n, i), { getLabel: e } = a(), r = () => {
9
+ s();
10
+ };
11
+ return /* @__PURE__ */ t(
12
+ l,
13
+ {
14
+ tooltip: e("data_grid.tooltip_settings"),
15
+ onClick: r,
16
+ "aria-label": "settings",
17
+ icon: /* @__PURE__ */ t(m, {}),
18
+ "data-testid": "settings-button"
19
+ }
20
+ );
21
+ }
22
+ export {
23
+ C as Settings
24
+ };
@@ -0,0 +1,3 @@
1
+ export * from './useModalSettings';
2
+ export * from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../packages/components/src/components/datagrids/views/ListView/subcomponents/Settings/hooks/useModalSettings/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC"}
@@ -0,0 +1,5 @@
1
+ export type ColumnsConfigRef = {
2
+ onClickIntro: () => void;
3
+ current: HTMLDivElement | null;
4
+ };
5
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../packages/components/src/components/datagrids/views/ListView/subcomponents/Settings/hooks/useModalSettings/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;CAChC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { GridProps } from '../../../../../../types';
2
+ import { Column } from 'react-data-grid';
3
+ /**
4
+ * Hook que abre el modal de configuración de columnas para la vista de ListView
5
+ */
6
+ export declare const useModalSettings: (size: GridProps<unknown, unknown>["size"], columns: readonly Column<any, any>[]) => () => void;
7
+ //# sourceMappingURL=useModalSettings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useModalSettings.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../packages/components/src/components/datagrids/views/ListView/subcomponents/Settings/hooks/useModalSettings/useModalSettings.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzC;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAC3B,MAAM,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,EACzC,SAAS,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,eAkErC,CAAC"}
@@ -0,0 +1,62 @@
1
+ import { jsx as o, jsxs as e } from "@emotion/react/jsx-runtime";
2
+ import { useModuleDictionary as M } from "@m4l/core";
3
+ import { useIsMobile as k } from "@m4l/graphics";
4
+ import { useRef as w, useCallback as r } from "react";
5
+ import { useModal as I } from "../../../../../../../../hooks/useModal/index.js";
6
+ import { ContentModalSettingStyled as b, DataGridRootStyled as y } from "../../../../../../slots/DataGridSlot.js";
7
+ import { SettingsConfigOutlined as x } from "@m4l/icons";
8
+ import { ColumnsConfig as A } from "../../subcomponents/ColumnsConfig/ColumnsConfig.js";
9
+ import { ActionsContainer as D } from "../../../../../../../CommonActions/components/ActionsContainer/ActionsContainer.js";
10
+ import { useDataGrid as H } from "../../../../../../hooks/shared/useDataGrid/useDataGrid.js";
11
+ import { WindowBase as R } from "../../../../../../../WindowBase/WindowBase.js";
12
+ import { ActionCancel as j } from "../../../../../../../CommonActions/components/ActionCancel/ActionCancel.js";
13
+ import { ActionIntro as G } from "../../../../../../../CommonActions/components/ActionIntro/ActionIntro.js";
14
+ const K = (l, s) => {
15
+ const { openModal: c, closeModal: t } = I(), { getConfigColumns: m, onChangeColumnsConfig: a, currentRowHeight: C, classes: i } = H(), d = m("list"), { getLabel: g } = M(), f = k(), n = w(null), u = r(() => {
16
+ t();
17
+ }, [t]), p = r(() => {
18
+ n.current?.onClickIntro && n.current.onClickIntro();
19
+ }, []), S = (h) => {
20
+ a("list", h);
21
+ };
22
+ return () => {
23
+ c({
24
+ initialWidth: 500,
25
+ initialHeight: 680,
26
+ fullScreen: f,
27
+ window: /* @__PURE__ */ o(
28
+ R,
29
+ {
30
+ title: g("data_grid.settings_title"),
31
+ iconUrl: /* @__PURE__ */ o(x, {}),
32
+ onClose: t,
33
+ className: "settings-modal",
34
+ variant: "outlined",
35
+ emergeType: "modal",
36
+ children: /* @__PURE__ */ e(b, { ownerState: {}, classes: i?.contentModalSetting, children: [
37
+ /* @__PURE__ */ o(y, { ownerState: {}, children: /* @__PURE__ */ o(
38
+ A,
39
+ {
40
+ ref: n,
41
+ rowHeight: C,
42
+ columnsConfig: d,
43
+ onChangeColumnsConfig: S,
44
+ onCloseSettings: u,
45
+ classes: i,
46
+ size: l,
47
+ columns: s
48
+ }
49
+ ) }),
50
+ /* @__PURE__ */ e(D, { children: [
51
+ /* @__PURE__ */ o(j, { onClick: t }),
52
+ /* @__PURE__ */ o(G, { onClick: p })
53
+ ] })
54
+ ] })
55
+ }
56
+ )
57
+ });
58
+ };
59
+ };
60
+ export {
61
+ K as useModalSettings
62
+ };
@@ -0,0 +1,3 @@
1
+ export * from './Settings';
2
+ export * from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../packages/components/src/components/datagrids/views/ListView/subcomponents/Settings/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { ColumnsConfigRef, ConfigProps } from './types';
2
+ export declare const ColumnsConfig: import('react').ForwardRefExoticComponent<ConfigProps & import('react').RefAttributes<ColumnsConfigRef>>;
3
+ //# sourceMappingURL=ColumnsConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColumnsConfig.d.ts","sourceRoot":"","sources":["../../../../../../../../../../../../packages/components/src/components/datagrids/views/ListView/subcomponents/Settings/subcomponents/ColumnsConfig/ColumnsConfig.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAO,MAAM,SAAS,CAAC;AA0DlE,eAAO,MAAM,aAAa,0GAkTzB,CAAC"}