@navikt/ds-react 8.10.6 → 8.11.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 (249) hide show
  1. package/cjs/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js +5 -1
  2. package/cjs/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js.map +1 -1
  3. package/cjs/data/drag-and-drop/root/DragAndDropRoot.d.ts +1 -1
  4. package/cjs/data/drag-and-drop/root/DragAndDropRoot.js +50 -20
  5. package/cjs/data/drag-and-drop/root/DragAndDropRoot.js.map +1 -1
  6. package/cjs/data/stories/Data.test-data.d.ts +2 -2
  7. package/cjs/data/stories/Data.test-data.js +37 -42
  8. package/cjs/data/stories/Data.test-data.js.map +1 -1
  9. package/cjs/data/table/base-cell/DataTableBaseCell.d.ts +4 -4
  10. package/cjs/data/table/base-cell/DataTableBaseCell.js +2 -2
  11. package/cjs/data/table/base-cell/DataTableBaseCell.js.map +1 -1
  12. package/cjs/data/table/column-header/DataTableColumnHeader.d.ts +3 -15
  13. package/cjs/data/table/column-header/DataTableColumnHeader.js +8 -5
  14. package/cjs/data/table/column-header/DataTableColumnHeader.js.map +1 -1
  15. package/cjs/data/table/column-header/useTableColumnResize.d.ts +2 -4
  16. package/cjs/data/table/column-header/useTableColumnResize.js +15 -11
  17. package/cjs/data/table/column-header/useTableColumnResize.js.map +1 -1
  18. package/cjs/data/table/helpers/collectTableRowEntries.d.ts +1 -1
  19. package/cjs/data/table/helpers/selection/getMultipleSelectProps.d.ts +6 -5
  20. package/cjs/data/table/helpers/selection/getMultipleSelectProps.js +6 -2
  21. package/cjs/data/table/helpers/selection/getMultipleSelectProps.js.map +1 -1
  22. package/cjs/data/table/helpers/selection/getSingleSelectProps.d.ts +3 -3
  23. package/cjs/data/table/helpers/selection/getSingleSelectProps.js +1 -1
  24. package/cjs/data/table/helpers/selection/getSingleSelectProps.js.map +1 -1
  25. package/cjs/data/table/helpers/selection/selection.types.d.ts +19 -27
  26. package/cjs/data/table/helpers/selection/selection.utils.d.ts +1 -1
  27. package/cjs/data/table/helpers/table-focus.js +1 -1
  28. package/cjs/data/table/helpers/table-focus.js.map +1 -1
  29. package/cjs/data/table/hooks/useColumnOptions.d.ts +8 -5
  30. package/cjs/data/table/hooks/useColumnOptions.js +25 -10
  31. package/cjs/data/table/hooks/useColumnOptions.js.map +1 -1
  32. package/cjs/data/table/hooks/useTableDetailsPanel.d.ts +8 -9
  33. package/cjs/data/table/hooks/useTableDetailsPanel.js.map +1 -1
  34. package/cjs/data/table/hooks/useTableItems.d.ts +10 -11
  35. package/cjs/data/table/hooks/useTableItems.js +11 -3
  36. package/cjs/data/table/hooks/useTableItems.js.map +1 -1
  37. package/cjs/data/table/hooks/useTableSelection.d.ts +2 -1
  38. package/cjs/data/table/hooks/useTableSelection.js +46 -29
  39. package/cjs/data/table/hooks/useTableSelection.js.map +1 -1
  40. package/cjs/data/table/hooks/useTableSort.d.ts +13 -7
  41. package/cjs/data/table/hooks/useTableSort.js +8 -9
  42. package/cjs/data/table/hooks/useTableSort.js.map +1 -1
  43. package/cjs/data/table/index.d.ts +1 -1
  44. package/cjs/data/table/index.js +3 -23
  45. package/cjs/data/table/index.js.map +1 -1
  46. package/cjs/data/table/root/{DataTable.types.d.ts → DataGridTable.types.d.ts} +16 -26
  47. package/cjs/data/table/root/DataGridTable.types.js +3 -0
  48. package/cjs/data/table/root/DataGridTable.types.js.map +1 -0
  49. package/cjs/data/table/root/DataGridTableRoot.d.ts +104 -0
  50. package/cjs/data/table/root/{DataTableRoot.js → DataGridTableRoot.js} +59 -38
  51. package/cjs/data/table/root/DataGridTableRoot.js.map +1 -0
  52. package/cjs/data/table/root/DataTableRoot.context.d.ts +6 -2
  53. package/cjs/data/table/root/DataTableRoot.context.js.map +1 -1
  54. package/cjs/data/table/tbody/DataTableTbody.js +3 -3
  55. package/cjs/data/table/tbody/DataTableTbody.js.map +1 -1
  56. package/cjs/data/table/tr/DataTableTr.d.ts +3 -3
  57. package/cjs/data/table/tr/DataTableTr.js +45 -23
  58. package/cjs/data/table/tr/DataTableTr.js.map +1 -1
  59. package/cjs/data/token-filter/TokenFilter.d.ts +0 -6
  60. package/cjs/data/token-filter/TokenFilter.js +1 -1
  61. package/cjs/data-grid/index.d.ts +2 -0
  62. package/cjs/data-grid/index.js +9 -0
  63. package/cjs/data-grid/index.js.map +1 -0
  64. package/cjs/data-grid/root/DataGrid.types.d.ts +48 -0
  65. package/cjs/{data/table/root/DataTable.types.js → data-grid/root/DataGrid.types.js} +1 -1
  66. package/cjs/data-grid/root/DataGrid.types.js.map +1 -0
  67. package/cjs/data-grid/root/DataGridRoot.context.d.ts +16 -0
  68. package/cjs/{data/data-grid → data-grid}/root/DataGridRoot.context.js +1 -1
  69. package/cjs/data-grid/root/DataGridRoot.context.js.map +1 -0
  70. package/cjs/data-grid/root/DataGridRoot.d.ts +89 -0
  71. package/cjs/{data/data-grid → data-grid}/root/DataGridRoot.js +35 -8
  72. package/cjs/data-grid/root/DataGridRoot.js.map +1 -0
  73. package/cjs/preview.d.ts +1 -0
  74. package/cjs/{data/data-grid/index.js → preview.js} +3 -3
  75. package/cjs/preview.js.map +1 -0
  76. package/cjs/primitives/bleed/Bleed.d.ts +0 -2
  77. package/cjs/primitives/bleed/Bleed.js.map +1 -1
  78. package/cjs/table/ColumnHeader.js.map +1 -1
  79. package/cjs/tabs/Tabs.context.d.ts +1 -1
  80. package/cjs/tabs/useTabs.d.ts +1 -1
  81. package/cjs/toggle-group/ToggleGroup.context.d.ts +1 -1
  82. package/cjs/toggle-group/useToggleGroup.d.ts +1 -1
  83. package/cjs/utils/components/dismissablelayer/DismissableLayer.js +1 -0
  84. package/cjs/utils/components/dismissablelayer/DismissableLayer.js.map +1 -1
  85. package/cjs/utils/components/dismissablelayer/util/useFocusOutside.d.ts +1 -0
  86. package/cjs/utils/components/dismissablelayer/util/useFocusOutside.js +11 -1
  87. package/cjs/utils/components/dismissablelayer/util/useFocusOutside.js.map +1 -1
  88. package/cjs/utils/hooks/useControllableState.d.ts +1 -1
  89. package/cjs/utils/hooks/useControllableState.js.map +1 -1
  90. package/esm/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js +5 -1
  91. package/esm/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js.map +1 -1
  92. package/esm/data/drag-and-drop/root/DragAndDropRoot.d.ts +1 -1
  93. package/esm/data/drag-and-drop/root/DragAndDropRoot.js +51 -21
  94. package/esm/data/drag-and-drop/root/DragAndDropRoot.js.map +1 -1
  95. package/esm/data/stories/Data.test-data.d.ts +2 -2
  96. package/esm/data/stories/Data.test-data.js +37 -42
  97. package/esm/data/stories/Data.test-data.js.map +1 -1
  98. package/esm/data/table/base-cell/DataTableBaseCell.d.ts +4 -4
  99. package/esm/data/table/base-cell/DataTableBaseCell.js +2 -2
  100. package/esm/data/table/base-cell/DataTableBaseCell.js.map +1 -1
  101. package/esm/data/table/column-header/DataTableColumnHeader.d.ts +3 -15
  102. package/esm/data/table/column-header/DataTableColumnHeader.js +8 -5
  103. package/esm/data/table/column-header/DataTableColumnHeader.js.map +1 -1
  104. package/esm/data/table/column-header/useTableColumnResize.d.ts +2 -4
  105. package/esm/data/table/column-header/useTableColumnResize.js +15 -11
  106. package/esm/data/table/column-header/useTableColumnResize.js.map +1 -1
  107. package/esm/data/table/helpers/collectTableRowEntries.d.ts +1 -1
  108. package/esm/data/table/helpers/selection/getMultipleSelectProps.d.ts +6 -5
  109. package/esm/data/table/helpers/selection/getMultipleSelectProps.js +6 -2
  110. package/esm/data/table/helpers/selection/getMultipleSelectProps.js.map +1 -1
  111. package/esm/data/table/helpers/selection/getSingleSelectProps.d.ts +3 -3
  112. package/esm/data/table/helpers/selection/getSingleSelectProps.js +1 -1
  113. package/esm/data/table/helpers/selection/getSingleSelectProps.js.map +1 -1
  114. package/esm/data/table/helpers/selection/selection.types.d.ts +19 -27
  115. package/esm/data/table/helpers/selection/selection.utils.d.ts +1 -1
  116. package/esm/data/table/helpers/table-focus.js +1 -1
  117. package/esm/data/table/helpers/table-focus.js.map +1 -1
  118. package/esm/data/table/hooks/useColumnOptions.d.ts +8 -5
  119. package/esm/data/table/hooks/useColumnOptions.js +25 -10
  120. package/esm/data/table/hooks/useColumnOptions.js.map +1 -1
  121. package/esm/data/table/hooks/useTableDetailsPanel.d.ts +8 -9
  122. package/esm/data/table/hooks/useTableDetailsPanel.js.map +1 -1
  123. package/esm/data/table/hooks/useTableItems.d.ts +10 -11
  124. package/esm/data/table/hooks/useTableItems.js +11 -3
  125. package/esm/data/table/hooks/useTableItems.js.map +1 -1
  126. package/esm/data/table/hooks/useTableSelection.d.ts +2 -1
  127. package/esm/data/table/hooks/useTableSelection.js +46 -29
  128. package/esm/data/table/hooks/useTableSelection.js.map +1 -1
  129. package/esm/data/table/hooks/useTableSort.d.ts +13 -7
  130. package/esm/data/table/hooks/useTableSort.js +9 -10
  131. package/esm/data/table/hooks/useTableSort.js.map +1 -1
  132. package/esm/data/table/index.d.ts +1 -1
  133. package/esm/data/table/index.js +1 -21
  134. package/esm/data/table/index.js.map +1 -1
  135. package/esm/data/table/root/{DataTable.types.d.ts → DataGridTable.types.d.ts} +16 -26
  136. package/esm/data/table/root/DataGridTable.types.js +2 -0
  137. package/esm/data/table/root/DataGridTable.types.js.map +1 -0
  138. package/esm/data/table/root/DataGridTableRoot.d.ts +104 -0
  139. package/esm/data/table/root/{DataTableRoot.js → DataGridTableRoot.js} +61 -39
  140. package/esm/data/table/root/DataGridTableRoot.js.map +1 -0
  141. package/esm/data/table/root/DataTableRoot.context.d.ts +6 -2
  142. package/esm/data/table/root/DataTableRoot.context.js.map +1 -1
  143. package/esm/data/table/tbody/DataTableTbody.js +3 -3
  144. package/esm/data/table/tbody/DataTableTbody.js.map +1 -1
  145. package/esm/data/table/tr/DataTableTr.d.ts +3 -3
  146. package/esm/data/table/tr/DataTableTr.js +45 -23
  147. package/esm/data/table/tr/DataTableTr.js.map +1 -1
  148. package/esm/data/token-filter/TokenFilter.d.ts +0 -6
  149. package/esm/data/token-filter/TokenFilter.js +1 -1
  150. package/esm/data-grid/index.d.ts +2 -0
  151. package/esm/data-grid/index.js +4 -0
  152. package/esm/data-grid/index.js.map +1 -0
  153. package/esm/data-grid/root/DataGrid.types.d.ts +48 -0
  154. package/esm/data-grid/root/DataGrid.types.js +2 -0
  155. package/esm/data-grid/root/DataGrid.types.js.map +1 -0
  156. package/esm/data-grid/root/DataGridRoot.context.d.ts +16 -0
  157. package/esm/{data/data-grid → data-grid}/root/DataGridRoot.context.js +1 -1
  158. package/esm/data-grid/root/DataGridRoot.context.js.map +1 -0
  159. package/esm/data-grid/root/DataGridRoot.d.ts +89 -0
  160. package/esm/data-grid/root/DataGridRoot.js +59 -0
  161. package/esm/data-grid/root/DataGridRoot.js.map +1 -0
  162. package/esm/preview.d.ts +1 -0
  163. package/esm/preview.js +3 -0
  164. package/esm/preview.js.map +1 -0
  165. package/esm/primitives/bleed/Bleed.d.ts +0 -2
  166. package/esm/primitives/bleed/Bleed.js.map +1 -1
  167. package/esm/table/ColumnHeader.js.map +1 -1
  168. package/esm/tabs/Tabs.context.d.ts +1 -1
  169. package/esm/tabs/useTabs.d.ts +1 -1
  170. package/esm/toggle-group/ToggleGroup.context.d.ts +1 -1
  171. package/esm/toggle-group/useToggleGroup.d.ts +1 -1
  172. package/esm/utils/components/dismissablelayer/DismissableLayer.js +1 -0
  173. package/esm/utils/components/dismissablelayer/DismissableLayer.js.map +1 -1
  174. package/esm/utils/components/dismissablelayer/util/useFocusOutside.d.ts +1 -0
  175. package/esm/utils/components/dismissablelayer/util/useFocusOutside.js +12 -2
  176. package/esm/utils/components/dismissablelayer/util/useFocusOutside.js.map +1 -1
  177. package/esm/utils/hooks/useControllableState.d.ts +1 -1
  178. package/esm/utils/hooks/useControllableState.js.map +1 -1
  179. package/package.json +25 -5
  180. package/src/data/drag-and-drop/drag-handler/DragAndDropDragHandler.tsx +5 -1
  181. package/src/data/drag-and-drop/root/DragAndDropRoot.tsx +55 -25
  182. package/src/data/stories/Data.test-data.tsx +53 -51
  183. package/src/data/table/base-cell/DataTableBaseCell.tsx +6 -6
  184. package/src/data/table/column-header/DataTableColumnHeader.tsx +17 -20
  185. package/src/data/table/column-header/useTableColumnResize.ts +19 -16
  186. package/src/data/table/helpers/collectTableRowEntries.ts +1 -1
  187. package/src/data/table/helpers/selection/getMultipleSelectProps.ts +11 -5
  188. package/src/data/table/helpers/selection/getSingleSelectProps.ts +4 -4
  189. package/src/data/table/helpers/selection/selection.types.ts +18 -29
  190. package/src/data/table/helpers/selection/selection.utils.test.ts +1 -1
  191. package/src/data/table/helpers/selection/selection.utils.ts +1 -1
  192. package/src/data/table/helpers/table-focus.ts +1 -1
  193. package/src/data/table/hooks/__tests__/useTableItems.test.ts +1 -1
  194. package/src/data/table/hooks/useColumnOptions.ts +50 -15
  195. package/src/data/table/hooks/useTableDetailsPanel.tsx +14 -18
  196. package/src/data/table/hooks/useTableItems.ts +37 -23
  197. package/src/data/table/hooks/useTableSelection.ts +62 -45
  198. package/src/data/table/hooks/useTableSort.ts +29 -17
  199. package/src/data/table/index.tsx +4 -21
  200. package/src/data/table/root/{DataTable.types.ts → DataGridTable.types.ts} +17 -30
  201. package/src/data/table/root/{DataTableRoot.tsx → DataGridTableRoot.tsx} +198 -144
  202. package/src/data/table/root/DataTableRoot.context.ts +10 -8
  203. package/src/data/table/sub-row-toggle/DataTableSubRowToggle.tsx +1 -1
  204. package/src/data/table/tbody/DataTableTbody.tsx +3 -3
  205. package/src/data/table/tr/DataTableTr.tsx +51 -20
  206. package/src/data/token-filter/TokenFilter.tsx +1 -1
  207. package/src/data-grid/index.ts +3 -0
  208. package/src/data-grid/root/DataGrid.types.ts +46 -0
  209. package/src/data-grid/root/DataGridRoot.context.ts +21 -0
  210. package/src/data-grid/root/DataGridRoot.tsx +154 -0
  211. package/src/preview.ts +2 -0
  212. package/src/primitives/bleed/Bleed.tsx +0 -2
  213. package/src/table/ColumnHeader.tsx +1 -0
  214. package/src/utils/components/dismissablelayer/DismissableLayer.tsx +1 -0
  215. package/src/utils/components/dismissablelayer/util/useFocusOutside.ts +14 -2
  216. package/src/utils/hooks/useControllableState.ts +10 -8
  217. package/cjs/data/data-grid/index.d.ts +0 -2
  218. package/cjs/data/data-grid/index.js.map +0 -1
  219. package/cjs/data/data-grid/root/DataGridRoot.context.d.ts +0 -11
  220. package/cjs/data/data-grid/root/DataGridRoot.context.js.map +0 -1
  221. package/cjs/data/data-grid/root/DataGridRoot.d.ts +0 -38
  222. package/cjs/data/data-grid/root/DataGridRoot.js.map +0 -1
  223. package/cjs/data/table/root/DataTable.types.js.map +0 -1
  224. package/cjs/data/table/root/DataTableRoot.d.ts +0 -118
  225. package/cjs/data/table/root/DataTableRoot.js.map +0 -1
  226. package/cjs/data/table/root/DataTableRoot.legacy.d.ts +0 -172
  227. package/cjs/data/table/root/DataTableRoot.legacy.js +0 -118
  228. package/cjs/data/table/root/DataTableRoot.legacy.js.map +0 -1
  229. package/esm/data/data-grid/index.d.ts +0 -2
  230. package/esm/data/data-grid/index.js +0 -3
  231. package/esm/data/data-grid/index.js.map +0 -1
  232. package/esm/data/data-grid/root/DataGridRoot.context.d.ts +0 -11
  233. package/esm/data/data-grid/root/DataGridRoot.context.js.map +0 -1
  234. package/esm/data/data-grid/root/DataGridRoot.d.ts +0 -38
  235. package/esm/data/data-grid/root/DataGridRoot.js +0 -32
  236. package/esm/data/data-grid/root/DataGridRoot.js.map +0 -1
  237. package/esm/data/table/root/DataTable.types.js +0 -2
  238. package/esm/data/table/root/DataTable.types.js.map +0 -1
  239. package/esm/data/table/root/DataTableRoot.d.ts +0 -118
  240. package/esm/data/table/root/DataTableRoot.js.map +0 -1
  241. package/esm/data/table/root/DataTableRoot.legacy.d.ts +0 -172
  242. package/esm/data/table/root/DataTableRoot.legacy.js +0 -73
  243. package/esm/data/table/root/DataTableRoot.legacy.js.map +0 -1
  244. package/src/data/data-grid/index.ts +0 -3
  245. package/src/data/data-grid/root/DataGridRoot.context.ts +0 -16
  246. package/src/data/data-grid/root/DataGridRoot.tsx +0 -71
  247. package/src/data/table/Readme.md +0 -11
  248. package/src/data/table/agent-component-review.md +0 -175
  249. package/src/data/table/root/DataTableRoot.legacy.tsx +0 -305
@@ -1,12 +1,11 @@
1
1
  import React from "react";
2
2
  import { type DataTableBaseCellProps } from "../base-cell/DataTableBaseCell";
3
- import type { SortDirection } from "../root/DataTable.types";
4
3
  import { type ResizeProps } from "./useTableColumnResize";
5
4
  interface DataTableColumnHeaderProps extends DataTableBaseCellProps {
6
5
  /**
7
- * Unique identifier for the column. Required for sortable columns to identify which column is being sorted.
6
+ * Unique identifier for the column. Used when sorting to identify which column is being sorted.
8
7
  */
9
- id?: string;
8
+ id: string;
10
9
  /**
11
10
  * Accessible name of the column.
12
11
  */
@@ -16,17 +15,6 @@ interface DataTableColumnHeaderProps extends DataTableBaseCellProps {
16
15
  * The entire header cell content becomes a clickable button when true.
17
16
  */
18
17
  sortable?: boolean;
19
- /**
20
- * Current sort direction. Only relevant when `sortable` is true.
21
- * Uses values matching the `aria-sort` attribute directly. // TODO: What does this mean? (Can we just remove it?)
22
- * @default "none"
23
- */
24
- sortDirection?: SortDirection;
25
- /**
26
- * Called when the user clicks the header. Only relevant when `sortable` is true.
27
- * The consumer is responsible for determining and setting the next sort state. // TODO: We don't use the term "consumer" in JSDoc anywhere else
28
- */
29
- onSortClick?: (event: React.MouseEvent<HTMLElement>) => void;
30
18
  /**
31
19
  * Object with props related to column width and resizing. Summary:
32
20
  *
@@ -35,7 +23,7 @@ interface DataTableColumnHeaderProps extends DataTableBaseCellProps {
35
23
  * - `resizeMin?: number` - Minimum width of the column when resizing.
36
24
  * - `resizeMax?: number` - Maximum width of the column when resizing.
37
25
  * - `value?: number | string` - Controlled width of the column.
38
- * - `default?: number | string` - Initial width of the column.
26
+ * - `defaultValue?: number | string` - Initial width of the column.
39
27
  * - `onChange?: (width: number) => void` - Called when the column width changes.
40
28
  *
41
29
  * See individual props for details and defaults.
@@ -47,6 +47,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
47
47
  exports.DataTableColumnHeader = void 0;
48
48
  const react_1 = __importStar(require("react"));
49
49
  const aksel_icons_1 = require("@navikt/aksel-icons");
50
+ const DataGridRoot_context_1 = require("../../../data-grid/root/DataGridRoot.context");
50
51
  const helpers_1 = require("../../../utils/helpers");
51
52
  const hooks_1 = require("../../../utils/hooks");
52
53
  const DataTableBaseCell_1 = require("../base-cell/DataTableBaseCell");
@@ -64,6 +65,7 @@ const SORT_ICON = {
64
65
  */
65
66
  const DataTableColumnHeader = (0, react_1.forwardRef)((_a, forwardedRef) => {
66
67
  var { id, label, sortable = false, width, cellType, className, children, style } = _a, rest = __rest(_a, ["id", "label", "sortable", "width", "cellType", "className", "children", "style"]);
68
+ const { isLoading } = (0, DataGridRoot_context_1.useDataGridContext)();
67
69
  const thRef = (0, react_1.useRef)(null);
68
70
  const mergedRef = (0, hooks_1.useMergeRefs)(forwardedRef, thRef);
69
71
  const { sortingState } = (0, DataTableRoot_context_1.useDataTableContext)();
@@ -76,10 +78,11 @@ const DataTableColumnHeader = (0, react_1.forwardRef)((_a, forwardedRef) => {
76
78
  }, [id, sortState]);
77
79
  const canSort = sortable && id !== undefined;
78
80
  const SortIcon = canSort ? SORT_ICON[sortDirection] : null;
79
- return (react_1.default.createElement(DataTableBaseCell_1.DataTableBaseCell, Object.assign({ as: "th" }, rest, { ref: mergedRef, className: (0, helpers_1.cl)("aksel-data-table__column-header", className), "data-sortable": canSort, style: Object.assign(Object.assign({}, style), { width: resizeResult.width }), "aria-sort": canSort ? getAriaSort(sortDirection) : undefined, cellType: cellType }),
80
- canSort ? (react_1.default.createElement("button", { type: "button", className: "aksel-data-table__th-sort-button", onClick: (event) => onSortClick(id, event) },
81
- react_1.default.createElement("div", { className: "aksel-data-table__th-content" }, children),
82
- SortIcon && (react_1.default.createElement(SortIcon, { "aria-hidden": true, "data-sort-direction": sortDirection, className: "aksel-data-table__th-sort-icon", fontSize: "1.25rem" })))) : (react_1.default.createElement("div", { className: (0, helpers_1.cl)({
81
+ const contentId = `th-content-${id.replace(/\s/g, "-")}`;
82
+ return (react_1.default.createElement(DataTableBaseCell_1.DataTableBaseCell, Object.assign({ as: "th" }, rest, { ref: mergedRef, className: (0, helpers_1.cl)("aksel-data-table__column-header", className), "data-sortable": canSort, style: Object.assign(Object.assign({}, style), { width: resizeResult.width }), "aria-sort": canSort ? getAriaSort(sortDirection) : undefined, cellType: cellType, "aria-labelledby": contentId }),
83
+ canSort ? (react_1.default.createElement("button", { type: "button", className: "aksel-data-table__th-sort-button", onClick: (event) => onSortClick(id, event), disabled: isLoading },
84
+ react_1.default.createElement("div", { id: contentId, className: "aksel-data-table__th-content" }, children),
85
+ SortIcon && (react_1.default.createElement(SortIcon, { "aria-hidden": true, "data-sort-direction": sortDirection, className: "aksel-data-table__th-sort-icon", fontSize: "1.25rem" })))) : (react_1.default.createElement("div", { id: contentId, className: (0, helpers_1.cl)({
83
86
  "aksel-data-table__th-content": cellType !== "action",
84
87
  }) }, children)),
85
88
  resizeResult.enabled && cellType !== "action" && (react_1.default.createElement("button", Object.assign({}, resizeResult.resizeHandlerProps, { type: "button", className: "aksel-data-table__th-resize-handle", "aria-label": resizeResult.isResizingWithKeyboard
@@ -87,7 +90,7 @@ const DataTableColumnHeader = (0, react_1.forwardRef)((_a, forwardedRef) => {
87
90
  : `Endre bredde ${label}`, "data-active": resizeResult.isResizingWithKeyboard, "data-disable-keyboard-nav": resizeResult.isResizingWithKeyboard, "data-block-keyboard-nav": true, role: "slider", "aria-valuenow": typeof resizeResult.width === "number" ? resizeResult.width : 0, "aria-valuetext": typeof resizeResult.width === "number" &&
88
91
  resizeResult.isResizingWithKeyboard
89
92
  ? resizeResult.width.toString()
90
- : "" // Needs to be blank when not in keyboard resizing mode to avoid NVDA announcing the value as part of the column heading
93
+ : " " // Needs to be blank when not in keyboard resizing mode to avoid NVDA announcing the value as part of the column heading
91
94
  }), resizeResult.isResizingWithKeyboard && (react_1.default.createElement(react_1.default.Fragment, null,
92
95
  react_1.default.createElement("span", { className: "aksel-data-table__th-resize-handle-indicator" },
93
96
  react_1.default.createElement(aksel_icons_1.CaretLeftCircleFillIcon, { "aria-hidden": true, fontSize: "1.5rem" })),
@@ -1 +1 @@
1
- {"version":3,"file":"DataTableColumnHeader.js","sourceRoot":"","sources":["../../../../src/data/table/column-header/DataTableColumnHeader.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataTableColumnHeader.js","sourceRoot":"","sources":["../../../../src/data/table/column-header/DataTableColumnHeader.tsx"],"names":[],"mappings":"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"}
@@ -16,8 +16,6 @@ type ResizeProps = {
16
16
  * consider using `layout="auto"` on the root instead for better performance.
17
17
  *
18
18
  * **NB:** This can cause a layout shift. Set a good initial width with `width` or `defaultWidth` to mitigate this.
19
- *
20
- * **NB:** Does not work with block content.
21
19
  */
22
20
  autoResizeOnce?: boolean;
23
21
  /**
@@ -44,7 +42,7 @@ type ResizeProps = {
44
42
  * **NB:** Percentage as initial width does not work well with resizing.
45
43
  * @default 140px
46
44
  */
47
- default?: number | string;
45
+ defaultValue?: number | string;
48
46
  /**
49
47
  * Called when the column width changes.
50
48
  * @param width New width in pixels.
@@ -76,6 +74,6 @@ type TableColumnResizeResult = {
76
74
  * - Auto-width mode is hard now since that might cause layout-shifts on mount. But would be preferable to
77
75
  * be able to set "1fr" or similar and have it fill remaining space.
78
76
  */
79
- declare function useTableColumnResize({ resizable, autoResizeOnce, resizeMin, resizeMax, value, default: defaultProp, onChange, thRef, colSpan, }: TableColumnResizeArgs): TableColumnResizeResult;
77
+ declare function useTableColumnResize({ resizable, autoResizeOnce, resizeMin, resizeMax, value, defaultValue, onChange, thRef, colSpan, }: TableColumnResizeArgs): TableColumnResizeResult;
80
78
  export { useTableColumnResize };
81
79
  export type { ResizeProps };
@@ -9,13 +9,13 @@ const DataTableRoot_context_1 = require("../root/DataTableRoot.context");
9
9
  * - Auto-width mode is hard now since that might cause layout-shifts on mount. But would be preferable to
10
10
  * be able to set "1fr" or similar and have it fill remaining space.
11
11
  */
12
- function useTableColumnResize({ resizable = true, autoResizeOnce, resizeMin = 40, resizeMax = Infinity, value, default: defaultProp, onChange, thRef, colSpan, }) {
12
+ function useTableColumnResize({ resizable = true, autoResizeOnce, resizeMin = 40, resizeMax = Infinity, value, defaultValue, onChange, thRef, colSpan, }) {
13
13
  const tableContext = (0, DataTableRoot_context_1.useDataTableContext)();
14
14
  const [isResizingWithKeyboard, setIsResizingWithKeyboard] = (0, react_1.useState)(false);
15
15
  const ignoreNextOnClick = (0, react_1.useRef)(false);
16
16
  const [width, setWidth] = (0, hooks_1.useControllableState)({
17
17
  value,
18
- defaultValue: defaultProp !== null && defaultProp !== void 0 ? defaultProp : (colSpan !== null && colSpan !== void 0 ? colSpan : 1) * 140,
18
+ defaultValue: defaultValue !== null && defaultValue !== void 0 ? defaultValue : (colSpan !== null && colSpan !== void 0 ? colSpan : 1) * 140,
19
19
  /**
20
20
  * TODO:
21
21
  * - Potential optimization: Only call when width as "stopped" changing, e.g. on mouse up or after a debounce when resizing with keyboard.
@@ -153,7 +153,6 @@ function useTableColumnResize({ resizable = true, autoResizeOnce, resizeMin = 40
153
153
  }
154
154
  /**
155
155
  * Figures out how wide the column needs to be to fit all the content without truncation.
156
- * NB: Does not work with block content!
157
156
  */
158
157
  function getAutoColumnWidth(thRef) {
159
158
  var _a;
@@ -197,15 +196,20 @@ function getAutoColumnWidth(thRef) {
197
196
  skipRows = cell.rowSpan - 1;
198
197
  // Find needed width
199
198
  const cellContent = cell.querySelector(".aksel-data-table__cell-content");
200
- range.selectNodeContents(cellContent);
201
- const cellContentWidth = range.getBoundingClientRect().width;
202
- const contentElStyle = window.getComputedStyle(cellContent);
203
- const inlinePadding = parseInt(contentElStyle.paddingLeft, 10) +
204
- parseInt(contentElStyle.paddingRight, 10);
205
- const marginLeft = parseInt(contentElStyle.marginLeft, 10); // We don't have right margin for now
206
- const widthNeededForThisCell = (cellContentWidth + inlinePadding + marginLeft) / cell.colSpan;
199
+ if (!cellContent) {
200
+ continue;
201
+ }
202
+ cellContent.style.width = "fit-content";
203
+ const cellContentWidth = cellContent.scrollWidth;
204
+ cellContent.style.removeProperty("width");
205
+ let marginLeft = 0;
206
+ if (cell.dataset.nested === "true") {
207
+ const contentElStyle = window.getComputedStyle(cellContent);
208
+ marginLeft = parseInt(contentElStyle.marginLeft, 10);
209
+ }
210
+ const widthNeededForThisCell = (cellContentWidth + marginLeft + 1) / cell.colSpan;
207
211
  if (widthNeededForThisCell > newColumnWidth) {
208
- newColumnWidth = widthNeededForThisCell;
212
+ newColumnWidth = Math.ceil(widthNeededForThisCell);
209
213
  }
210
214
  }
211
215
  // Make sure new width is not wider than the table container since that would be impractical
@@ -1 +1 @@
1
- {"version":3,"file":"useTableColumnResize.js","sourceRoot":"","sources":["../../../../src/data/table/column-header/useTableColumnResize.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useTableColumnResize.js","sourceRoot":"","sources":["../../../../src/data/table/column-header/useTableColumnResize.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { TableRowEntryId } from "../root/DataTable.types";
1
+ import type { TableRowEntryId } from "../root/DataGridTable.types";
2
2
  type CollectTableRowEntriesArgs<T> = {
3
3
  items: T[];
4
4
  getRowId?: (rowData: T, index: number) => TableRowEntryId;
@@ -1,15 +1,16 @@
1
1
  import type { SetStateAction } from "react";
2
2
  import type { CheckboxInputProps } from "../../../../form/checkbox/checkbox-input/CheckboxInput";
3
3
  import type { UseTableItemsReturn } from "../../hooks/useTableItems";
4
- import type { TableRowEntryId } from "../../root/DataTable.types";
5
- import type { SelectedKeysT, SelectionProps } from "./selection.types";
4
+ import type { TableRowEntryId } from "../../root/DataGridTable.types";
5
+ import type { SelectionProps } from "./selection.types";
6
6
  type GetMultipleSelectPropsArgs<T> = {
7
7
  selectedKeysSet: Set<TableRowEntryId>;
8
- selectedKeys: SelectedKeysT;
9
- setSelectedKeys: (next: SetStateAction<SelectedKeysT>) => void;
8
+ selectedKeys: string[];
9
+ setSelectedKeys: (next: SetStateAction<string[]>) => void;
10
10
  tableItems: UseTableItemsReturn<T>;
11
+ isLoading?: boolean;
11
12
  } & Pick<SelectionProps<T>, "enableRowSelection">;
12
- declare function getMultipleSelectProps<T>({ selectedKeysSet, selectedKeys, setSelectedKeys, enableRowSelection, tableItems, }: GetMultipleSelectPropsArgs<T>): {
13
+ declare function getMultipleSelectProps<T>({ selectedKeysSet, selectedKeys, setSelectedKeys, enableRowSelection, tableItems, isLoading, }: GetMultipleSelectPropsArgs<T>): {
13
14
  getTheadCheckboxProps: () => CheckboxInputProps;
14
15
  getRowCheckboxProps: (key: TableRowEntryId, row: T) => CheckboxInputProps;
15
16
  toggleSelection: (key: TableRowEntryId, row: T) => void;
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getMultipleSelectProps = getMultipleSelectProps;
4
4
  const consoleWarning_1 = require("../../../../utils/helpers/consoleWarning");
5
5
  const selection_utils_1 = require("./selection.utils");
6
- function getMultipleSelectProps({ selectedKeysSet, selectedKeys, setSelectedKeys, enableRowSelection, tableItems, }) {
6
+ function getMultipleSelectProps({ selectedKeysSet, selectedKeys, setSelectedKeys, enableRowSelection, tableItems, isLoading, }) {
7
7
  const selectableIdsSet = new Set();
8
8
  for (const [id, { rowData }] of tableItems.itemDetails) {
9
9
  if ((0, selection_utils_1.canSelectTableRow)(enableRowSelection, { row: rowData, id })) {
@@ -18,7 +18,7 @@ function getMultipleSelectProps({ selectedKeysSet, selectedKeys, setSelectedKeys
18
18
  const someSelected = selectedOnPageCount > 0;
19
19
  const handleToggleRow = (key, row) => {
20
20
  if (!row) {
21
- (0, consoleWarning_1.consoleWarning)(`Row data is undefined for key ${key}. This may cause issues with selection if enableRowSelection is used.`);
21
+ (0, consoleWarning_1.consoleWarning)(`DataGrid.Table: Row data is undefined for key ${key}. This may cause issues with selection if enableRowSelection is used.`);
22
22
  }
23
23
  const checked = !selectedKeysSet.has(key);
24
24
  const nextSet = new Set(selectedKeysSet);
@@ -35,6 +35,9 @@ function getMultipleSelectProps({ selectedKeysSet, selectedKeys, setSelectedKeys
35
35
  }
36
36
  };
37
37
  const toggleAllRowSelected = (event) => {
38
+ if (isLoading) {
39
+ return;
40
+ }
38
41
  if (event.target.checked) {
39
42
  const preserved = selectedKeys.filter((k) => !selectableIdsSet.has(k));
40
43
  setSelectedKeys([...preserved, ...selectableIdsSet]);
@@ -48,6 +51,7 @@ function getMultipleSelectProps({ selectedKeysSet, selectedKeys, setSelectedKeys
48
51
  checked: isAllSelected,
49
52
  indeterminate: !isAllSelected && someSelected,
50
53
  onChange: toggleAllRowSelected,
54
+ disabled: selectableIdsSet.size === 0 || isLoading,
51
55
  }),
52
56
  getRowCheckboxProps: (key, row) => {
53
57
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"getMultipleSelectProps.js","sourceRoot":"","sources":["../../../../../src/data/table/helpers/selection/getMultipleSelectProps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getMultipleSelectProps.js","sourceRoot":"","sources":["../../../../../src/data/table/helpers/selection/getMultipleSelectProps.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import type { RadioInputProps } from "../../../../form/radio/radio-input/RadioInput";
2
- import type { TableRowEntryId } from "../../root/DataTable.types";
3
- import type { SelectedKeysT, SelectionProps } from "./selection.types";
2
+ import type { TableRowEntryId } from "../../root/DataGridTable.types";
3
+ import type { SelectionProps } from "./selection.types";
4
4
  type GetSingleSelectPropsArgs<T> = {
5
5
  selectedKeysSet: Set<TableRowEntryId>;
6
- setSelectedKeys: (keys: SelectedKeysT) => void;
6
+ setSelectedKeys: (keys: string[]) => void;
7
7
  name: string;
8
8
  } & Pick<SelectionProps<T>, "enableRowSelection">;
9
9
  declare function getSingleSelectProps<T>({ selectedKeysSet, setSelectedKeys, name, enableRowSelection, }: GetSingleSelectPropsArgs<T>): {
@@ -6,7 +6,7 @@ const selection_utils_1 = require("./selection.utils");
6
6
  function getSingleSelectProps({ selectedKeysSet, setSelectedKeys, name, enableRowSelection, }) {
7
7
  const handleSelectionChange = (key, row) => {
8
8
  if (!row) {
9
- (0, consoleWarning_1.consoleWarning)(`Row data is undefined for key ${key}. This may cause issues with selection if enableRowSelection is used.`);
9
+ (0, consoleWarning_1.consoleWarning)(`DataGrid.Table: Row data is undefined for key ${key}. This may cause issues with selection if enableRowSelection is used.`);
10
10
  }
11
11
  if (!(0, selection_utils_1.canSelectTableRow)(enableRowSelection, { row, id: key })) {
12
12
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"getSingleSelectProps.js","sourceRoot":"","sources":["../../../../../src/data/table/helpers/selection/getSingleSelectProps.ts"],"names":[],"mappings":";;AAoDS,oDAAoB;AAnD7B,6EAA0E;AAG1E,uDAAsD;AAQtD,SAAS,oBAAoB,CAAI,EAC/B,eAAe,EACf,eAAe,EACf,IAAI,EACJ,kBAAkB,GACU;IAC5B,MAAM,qBAAqB,GAAG,CAAC,GAAoB,EAAE,GAAM,EAAE,EAAE;QAC7D,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,IAAA,+BAAc,EACZ,iCAAiC,GAAG,uEAAuE,CAC5G,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,IAAA,mCAAiB,EAAC,kBAAkB,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;IAEF,OAAO;QACL,gBAAgB,EAAE,CAAC,GAAoB,EAAE,GAAM,EAAmB,EAAE;YAClE,MAAM,mBAAmB,GAAG,CAAC,IAAA,mCAAiB,EAAC,kBAAkB,EAAE;gBACjE,GAAG;gBACH,EAAE,EAAE,GAAG;aACR,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;gBACjC,QAAQ,EAAE,mBAAmB;oBAC3B,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI;oBACZ,CAAC,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC;gBACzC,QAAQ,EAAE,mBAAmB;gBAC7B,KAAK,EAAE,GAAG;gBACV,IAAI;aACL,CAAC;QACJ,CAAC;QACD,eAAe,EAAE,qBAAqB;KACvC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"getSingleSelectProps.js","sourceRoot":"","sources":["../../../../../src/data/table/helpers/selection/getSingleSelectProps.ts"],"names":[],"mappings":";;AAoDS,oDAAoB;AAnD7B,6EAA0E;AAG1E,uDAAsD;AAQtD,SAAS,oBAAoB,CAAI,EAC/B,eAAe,EACf,eAAe,EACf,IAAI,EACJ,kBAAkB,GACU;IAC5B,MAAM,qBAAqB,GAAG,CAAC,GAAoB,EAAE,GAAM,EAAE,EAAE;QAC7D,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,IAAA,+BAAc,EACZ,iDAAiD,GAAG,uEAAuE,CAC5H,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,IAAA,mCAAiB,EAAC,kBAAkB,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;IAEF,OAAO;QACL,gBAAgB,EAAE,CAAC,GAAoB,EAAE,GAAM,EAAmB,EAAE;YAClE,MAAM,mBAAmB,GAAG,CAAC,IAAA,mCAAiB,EAAC,kBAAkB,EAAE;gBACjE,GAAG;gBACH,EAAE,EAAE,GAAG;aACR,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;gBACjC,QAAQ,EAAE,mBAAmB;oBAC3B,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI;oBACZ,CAAC,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC;gBACzC,QAAQ,EAAE,mBAAmB;gBAC7B,KAAK,EAAE,GAAG;gBACV,IAAI;aACL,CAAC;QACJ,CAAC;QACD,eAAe,EAAE,qBAAqB;KACvC,CAAC;AACJ,CAAC"}
@@ -1,8 +1,6 @@
1
1
  import type { CheckboxInputProps } from "../../../../form/checkbox/checkbox-input/CheckboxInput";
2
2
  import type { RadioInputProps } from "../../../../form/radio/radio-input/RadioInput";
3
- import type { TableRowEntryId } from "../../root/DataTable.types";
4
- type SelectedKeysT = TableRowEntryId[];
5
- type SelectionProps<T = any> = {
3
+ type SelectionProps<T = unknown> = {
6
4
  /**
7
5
  * Enables selection of rows.
8
6
  *
@@ -13,54 +11,48 @@ type SelectionProps<T = any> = {
13
11
  *
14
12
  * @default "none"
15
13
  */
16
- selectionMode: "none" | "single" | "multiple";
14
+ mode: "none" | "single" | "multiple";
17
15
  /**
18
- * Controlled selected keys. Should be used in conjunction with `onSelectionChange`.
16
+ * Controlled selected keys. Should be used in conjunction with `onSelectedRowIdsChange`.
19
17
  */
20
- selectedKeys?: SelectedKeysT;
18
+ selectedRowIds?: string[];
21
19
  /**
22
20
  * Default selected keys when using uncontrolled selection. Should not be used together with `selectedKeys`.
23
21
  */
24
- defaultSelectedKeys?: SelectedKeysT;
22
+ defaultSelectedRowIds?: string[];
25
23
  /**
26
24
  * Callback with array of selected keys.
27
25
  */
28
- onSelectionChange?: (keys: SelectedKeysT) => void;
26
+ onSelectedRowIdsChange?: (ids: string[]) => void;
29
27
  /**
30
28
  * Callback to determine if a row should be enabled for selection.
31
29
  *
32
- *
33
30
  * If set to a boolean, it will enable selection for all rows when true, and disable selection for all rows when false.
34
31
  */
35
32
  enableRowSelection?: (({ row, id }: {
36
33
  row: T;
37
- id: TableRowEntryId;
34
+ id: string;
38
35
  }) => boolean) | boolean;
39
- /**
40
- * Determines if selection is triggered by clicking the row or the selection control (checkbox/radio).
41
- * @default "row"
42
- */
43
- selectionTrigger?: "row" | "control";
44
36
  };
45
37
  type NoneSelection = {
46
- selectionMode: "none";
47
- selectedKeys: SelectedKeysT;
38
+ mode: "none";
39
+ selectedKeys: string[];
48
40
  };
49
41
  type SingleSelection = {
50
- selectionMode: "single";
51
- selectedKeys: SelectedKeysT;
52
- getRowRadioProps: (key: TableRowEntryId, row: any) => RadioInputProps;
53
- toggleSelection: (key: TableRowEntryId, row: any) => void;
42
+ mode: "single";
43
+ selectedKeys: string[];
44
+ getRowRadioProps: (key: string, row: any) => RadioInputProps;
45
+ toggleSelection: (key: string, row: any) => void;
54
46
  };
55
47
  type MultipleSelection = {
56
- selectionMode: "multiple";
57
- selectedKeys: SelectedKeysT;
48
+ mode: "multiple";
49
+ selectedKeys: string[];
58
50
  getTheadCheckboxProps: () => CheckboxInputProps;
59
- getRowCheckboxProps: (key: TableRowEntryId, row: any) => CheckboxInputProps;
60
- toggleSelection: (key: TableRowEntryId, row: any) => void;
51
+ getRowCheckboxProps: (key: string, row: any) => CheckboxInputProps;
52
+ toggleSelection: (key: string, row: any) => void;
61
53
  };
62
54
  type TableSelectionBase = {
63
- isRowSelected: (rowId: TableRowEntryId) => boolean;
55
+ isRowSelected: (rowId: string) => boolean;
64
56
  };
65
57
  type TableSelection = TableSelectionBase & (NoneSelection | SingleSelection | MultipleSelection);
66
- export type { MultipleSelection, NoneSelection, SelectedKeysT, SelectionProps, SingleSelection, TableSelection, };
58
+ export type { MultipleSelection, NoneSelection, SelectionProps, SingleSelection, TableSelection, };
@@ -1,4 +1,4 @@
1
- import type { TableRowEntryId } from "../../root/DataTable.types";
1
+ import type { TableRowEntryId } from "../../root/DataGridTable.types";
2
2
  import type { ItemDetail } from "../collectTableRowEntries";
3
3
  import type { SelectionProps } from "./selection.types";
4
4
  declare function canSelectTableRow<T>(enableRowSelection: SelectionProps<T>["enableRowSelection"], args: {
@@ -117,7 +117,7 @@ function getStickyOffsets(element) {
117
117
  stickyHeaderHeight: 0,
118
118
  };
119
119
  }
120
- const stickyHeader = table.querySelector(`.aksel-data-table__tr[data-sticky="true"]`);
120
+ const stickyHeader = table.querySelector(`.aksel-data-table__thead[data-sticky="true"]`);
121
121
  const stickyNodesStart = table.querySelectorAll(`.aksel-data-table__column-header[data-sticky="start"]`);
122
122
  const stickyNodesEnd = table.querySelectorAll(`.aksel-data-table__column-header[data-sticky="end"]`);
123
123
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"table-focus.js","sourceRoot":"","sources":["../../../../src/data/table/helpers/table-focus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table-focus.js","sourceRoot":"","sources":["../../../../src/data/table/helpers/table-focus.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,16 @@
1
- import type { ColumnDefinition, ColumnDefinitions } from "../root/DataTable.types";
1
+ import type { ColumnDefinition, ColumnDefinitions } from "../root/DataGridTable.types";
2
2
  type UseColumnOptions = {
3
3
  stickyColumns?: {
4
- start?: "1";
5
- end?: "1";
4
+ start?: 1;
5
+ end?: 1;
6
6
  };
7
7
  hasSelection: boolean;
8
8
  hasDetailsPanel: boolean;
9
9
  layout: "fixed" | "auto";
10
+ columnDisplay?: {
11
+ id: string;
12
+ visible: boolean;
13
+ }[];
10
14
  };
11
15
  type StickyStartState = {
12
16
  selection: boolean;
@@ -26,5 +30,4 @@ type UseColumnOptionsResult<T> = {
26
30
  };
27
31
  declare function useColumnOptions<T>(columnDefinitions: ColumnDefinitions<T>, options: UseColumnOptions): UseColumnOptionsResult<T>;
28
32
  export { useColumnOptions };
29
- export type { StickyStartState };
30
- export type { UseColumnOptionsResult };
33
+ export type { StickyStartState, UseColumnOptionsResult };
@@ -2,19 +2,23 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useColumnOptions = useColumnOptions;
4
4
  const react_1 = require("react");
5
+ const consoleWarning_1 = require("../../../utils/helpers/consoleWarning");
5
6
  const DataTableTr_1 = require("../tr/DataTableTr");
6
7
  function useColumnOptions(columnDefinitions, options) {
7
- const { stickyColumns, hasSelection, hasDetailsPanel, layout } = options;
8
- const hasStickyStart = (stickyColumns === null || stickyColumns === void 0 ? void 0 : stickyColumns.start) === "1";
8
+ const { stickyColumns, hasSelection, hasDetailsPanel, layout, columnDisplay, } = options;
9
+ const hasStickyStart = (stickyColumns === null || stickyColumns === void 0 ? void 0 : stickyColumns.start) === 1;
9
10
  const stickyExpansion = hasStickyStart && hasDetailsPanel;
10
11
  const stickySelection = hasStickyStart && hasSelection;
11
12
  const stickySelectionOffset = stickyExpansion ? DataTableTr_1.ACTION_CELL_WIDTH : 0;
12
13
  const stickyFirstColumnOffset = (stickyExpansion ? DataTableTr_1.ACTION_CELL_WIDTH : 0) +
13
14
  (stickySelection ? DataTableTr_1.ACTION_CELL_WIDTH : 0);
15
+ const visibleColumns = (0, react_1.useMemo)(() => {
16
+ return orderColumnsAndFilterByVisibility(columnDefinitions, columnDisplay);
17
+ }, [columnDefinitions, columnDisplay]);
14
18
  const columns = (0, react_1.useMemo)(() => {
15
- return columnDefinitions.map((colDef, index) => {
19
+ return visibleColumns.map((colDef, index) => {
16
20
  const isFirstSticky = hasStickyStart && index === 0;
17
- const isLastSticky = (stickyColumns === null || stickyColumns === void 0 ? void 0 : stickyColumns.end) === "1" && index === columnDefinitions.length - 1;
21
+ const isLastSticky = (stickyColumns === null || stickyColumns === void 0 ? void 0 : stickyColumns.end) === 1 && index === visibleColumns.length - 1;
18
22
  return {
19
23
  isSticky: isFirstSticky
20
24
  ? "start"
@@ -26,12 +30,7 @@ function useColumnOptions(columnDefinitions, options) {
26
30
  colDef,
27
31
  };
28
32
  });
29
- }, [
30
- columnDefinitions,
31
- hasStickyStart,
32
- stickyColumns,
33
- stickyFirstColumnOffset,
34
- ]);
33
+ }, [visibleColumns, hasStickyStart, stickyColumns, stickyFirstColumnOffset]);
35
34
  const totalColSpan = columns.length +
36
35
  (layout === "fixed" ? 1 : 0) +
37
36
  (hasSelection ? 1 : 0) +
@@ -47,4 +46,20 @@ function useColumnOptions(columnDefinitions, options) {
47
46
  totalColSpan,
48
47
  };
49
48
  }
49
+ function orderColumnsAndFilterByVisibility(columns, columnDisplay) {
50
+ if (!columnDisplay) {
51
+ return columns;
52
+ }
53
+ const columnMap = new Map(columns.map((col) => [col.id, col]));
54
+ return columnDisplay.reduce((acc, { id, visible }) => {
55
+ const col = columnMap.get(id);
56
+ if (!col) {
57
+ (0, consoleWarning_1.consoleWarning)(`DataGrid: Column with id "${id}" not found in column definitions. Please check your columnDisplay configuration.`);
58
+ }
59
+ if (col && visible) {
60
+ acc.push(col);
61
+ }
62
+ return acc;
63
+ }, []);
64
+ }
50
65
  //# sourceMappingURL=useColumnOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useColumnOptions.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useColumnOptions.ts"],"names":[],"mappings":";;AA6FS,4CAAgB;AA7FzB,iCAAgC;AAKhC,mDAAsD;AA8BtD,SAAS,gBAAgB,CACvB,iBAAuC,EACvC,OAAyB;IAEzB,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAEzE,MAAM,cAAc,GAAG,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,KAAK,MAAK,GAAG,CAAC;IAEpD,MAAM,eAAe,GAAG,cAAc,IAAI,eAAe,CAAC;IAC1D,MAAM,eAAe,GAAG,cAAc,IAAI,YAAY,CAAC;IAEvD,MAAM,qBAAqB,GAAG,eAAe,CAAC,CAAC,CAAC,+BAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,MAAM,uBAAuB,GAC3B,CAAC,eAAe,CAAC,CAAC,CAAC,+BAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC,eAAe,CAAC,CAAC,CAAC,+BAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE5C,MAAM,OAAO,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;QAC3B,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC7C,MAAM,aAAa,GAAG,cAAc,IAAI,KAAK,KAAK,CAAC,CAAC;YACpD,MAAM,YAAY,GAChB,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,GAAG,MAAK,GAAG,IAAI,KAAK,KAAK,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;YAEvE,OAAO;gBACL,QAAQ,EAAE,aAAa;oBACrB,CAAC,CAAE,OAAiB;oBACpB,CAAC,CAAC,YAAY;wBACZ,CAAC,CAAE,KAAe;wBAClB,CAAC,CAAE,KAAe;gBACtB,YAAY,EAAE,aAAa,IAAI,CAAC,YAAY;gBAC5C,gBAAgB,EAAE,aAAa,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,SAAS;gBACrE,MAAM;aACP,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,EAAE;QACD,iBAAiB;QACjB,cAAc;QACd,aAAa;QACb,uBAAuB;KACxB,CAAC,CAAC;IAEH,MAAM,YAAY,GAChB,OAAO,CAAC,MAAM;QACd,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE5B,OAAO;QACL,WAAW,EAAE;YACX,SAAS,EAAE,eAAe;YAC1B,SAAS,EAAE,eAAe;YAC1B,eAAe,EAAE,qBAAqB;YACtC,iBAAiB,EAAE,uBAAuB;SAC3C;QACD,OAAO;QACP,YAAY;KACb,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"useColumnOptions.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useColumnOptions.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import React from "react";
2
- import type { TableRowEntryId } from "../root/DataTable.types";
3
2
  type DetailsPanelProps<T> = {
4
3
  /**
5
4
  * Function to get the content to show in the details panel for a given row.
@@ -13,18 +12,18 @@ type DetailsPanelProps<T> = {
13
12
  isRowExpandable?: (rowData: T) => boolean;
14
13
  /**
15
14
  * Controlled list of expanded row IDs.
16
- * Use with `onDetailsPanelChange` for controlled usage, or `defaultDetailsPanelRowIds` for uncontrolled.
15
+ * Use with `onExpandedRowIdsChange` for controlled usage, or `defaultExpandedRowIds` for uncontrolled.
17
16
  */
18
- expandedRowIds?: TableRowEntryId[];
17
+ expandedRowIds?: string[];
19
18
  /**
20
19
  * Initial list of expanded row IDs for uncontrolled usage.
21
20
  * @default []
22
21
  */
23
- defaultExpandedRowIds?: TableRowEntryId[];
22
+ defaultExpandedRowIds?: string[];
24
23
  /**
25
24
  * Called when the list of expanded row IDs changes.
26
25
  */
27
- onExpandedRowIdsChange?: (ids: TableRowEntryId[]) => void;
26
+ onExpandedRowIdsChange?: (ids: string[]) => void;
28
27
  /**
29
28
  * Returns the height (in px) or `"auto"` for a row's details panel.
30
29
  * When a number is returned, the panel scrolls within that fixed height.
@@ -38,9 +37,9 @@ type DetailsPanelProps<T> = {
38
37
  showExpandAll?: boolean;
39
38
  };
40
39
  type DataTableDetailsPanelContextT = {
41
- isExpanded: (id: TableRowEntryId) => boolean;
42
- isDetailsPanelExpandable: (id: TableRowEntryId) => boolean;
43
- toggleExpansion: (id: TableRowEntryId) => void;
40
+ isExpanded: (id: string) => boolean;
41
+ isDetailsPanelExpandable: (id: string) => boolean;
42
+ toggleExpansion: (id: string) => void;
44
43
  toggleAll: () => void;
45
44
  isAllExpanded: boolean;
46
45
  getDetailsPanelContent?: (row: unknown) => React.ReactNode;
@@ -54,6 +53,6 @@ declare function DataTableDetailsPanelProvider<T>({ children, detailsPanel, }: {
54
53
  } & {
55
54
  children: React.ReactNode;
56
55
  }): React.JSX.Element;
57
- declare function getDataTableDetailsPanelId(tableId: string, rowId: TableRowEntryId): string;
56
+ declare function getDataTableDetailsPanelId(tableId: string, rowId: string): string;
58
57
  export { DataTableDetailsPanelProvider, getDataTableDetailsPanelId, useDataTableDetailsPanel, };
59
58
  export type { DetailsPanelProps };