@navikt/ds-react 8.10.3 → 8.10.5
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.
- package/cjs/action-menu/ActionMenu.js +1 -1
- package/cjs/action-menu/ActionMenu.js.map +1 -1
- package/cjs/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js +11 -12
- package/cjs/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js.map +1 -1
- package/cjs/data/drag-and-drop/root/DragAndDrop.context.d.ts +4 -2
- package/cjs/data/drag-and-drop/root/DragAndDrop.context.js.map +1 -1
- package/cjs/data/drag-and-drop/root/DragAndDropRoot.d.ts +5 -5
- package/cjs/data/drag-and-drop/root/DragAndDropRoot.js +49 -28
- package/cjs/data/drag-and-drop/root/DragAndDropRoot.js.map +1 -1
- package/cjs/data/drag-and-drop/types.d.ts +0 -4
- package/cjs/data/{drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.d.ts → drag-and-drop-legacy/drag-handler/DragAndDropDragHandlerLegacy.d.ts} +3 -3
- package/cjs/data/{drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.js → drag-and-drop-legacy/drag-handler/DragAndDropDragHandlerLegacy.js} +5 -5
- package/cjs/data/drag-and-drop-legacy/drag-handler/DragAndDropDragHandlerLegacy.js.map +1 -0
- package/cjs/data/drag-and-drop-legacy/item/DragAndDropItemLegacy.d.ts +27 -0
- package/cjs/data/{drag-and-drop-old/item/DataDragAndDropItem.js → drag-and-drop-legacy/item/DragAndDropItemLegacy.js} +12 -12
- package/cjs/data/drag-and-drop-legacy/item/DragAndDropItemLegacy.js.map +1 -0
- package/cjs/data/drag-and-drop-legacy/root/DragAndDropLegacy.context.d.ts +5 -0
- package/cjs/data/drag-and-drop-legacy/root/DragAndDropLegacy.context.js +6 -0
- package/cjs/data/drag-and-drop-legacy/root/DragAndDropLegacy.context.js.map +1 -0
- package/cjs/data/drag-and-drop-legacy/root/DragAndDropLegacyRoot.d.ts +24 -0
- package/cjs/data/{drag-and-drop-old/root/DataDragAndDropRoot.js → drag-and-drop-legacy/root/DragAndDropLegacyRoot.js} +10 -10
- package/cjs/data/drag-and-drop-legacy/root/DragAndDropLegacyRoot.js.map +1 -0
- package/cjs/data/stories/Data.test-data.d.ts +24 -0
- package/cjs/data/stories/Data.test-data.js +1615 -0
- package/cjs/data/stories/Data.test-data.js.map +1 -0
- package/cjs/data/table/column-header/DataTableColumnHeader.d.ts +4 -1
- package/cjs/data/table/column-header/DataTableColumnHeader.js +4 -4
- package/cjs/data/table/column-header/DataTableColumnHeader.js.map +1 -1
- package/cjs/data/table/column-header/useTableColumnResize.d.ts +21 -18
- package/cjs/data/table/column-header/useTableColumnResize.js +7 -25
- package/cjs/data/table/column-header/useTableColumnResize.js.map +1 -1
- package/cjs/data/table/details-panel-row/DataTableDetailsPanelRow.d.ts +6 -0
- package/cjs/data/table/details-panel-row/DataTableDetailsPanelRow.js +32 -0
- package/cjs/data/table/details-panel-row/DataTableDetailsPanelRow.js.map +1 -0
- package/cjs/data/table/helpers/collectTableRowEntries.d.ts +9 -7
- package/cjs/data/table/helpers/collectTableRowEntries.js +21 -14
- package/cjs/data/table/helpers/collectTableRowEntries.js.map +1 -1
- package/cjs/data/table/helpers/table-focus.d.ts +0 -3
- package/cjs/data/table/helpers/table-focus.js +38 -8
- package/cjs/data/table/helpers/table-focus.js.map +1 -1
- package/cjs/data/table/hooks/useColumnOptions.js +18 -5
- package/cjs/data/table/hooks/useColumnOptions.js.map +1 -1
- package/cjs/data/table/hooks/useGridCache.js +2 -2
- package/cjs/data/table/hooks/useGridCache.js.map +1 -1
- package/cjs/data/table/hooks/useTableDetailsPanel.d.ts +62 -0
- package/cjs/data/table/hooks/{useTableExpansion.js → useTableDetailsPanel.js} +21 -20
- package/cjs/data/table/hooks/useTableDetailsPanel.js.map +1 -0
- package/cjs/data/table/hooks/useTableItems.d.ts +14 -17
- package/cjs/data/table/hooks/useTableItems.js +17 -16
- package/cjs/data/table/hooks/useTableItems.js.map +1 -1
- package/cjs/data/table/hooks/useTableKeyboardNav.js +5 -1
- package/cjs/data/table/hooks/useTableKeyboardNav.js.map +1 -1
- package/cjs/data/table/hooks/useTableSelection.d.ts +4 -2
- package/cjs/data/table/hooks/useTableSelection.js +6 -1
- package/cjs/data/table/hooks/useTableSelection.js.map +1 -1
- package/cjs/data/table/index.d.ts +1 -2
- package/cjs/data/table/index.js +22 -12
- package/cjs/data/table/index.js.map +1 -1
- package/cjs/data/table/root/DataTable.types.d.ts +7 -9
- package/cjs/data/table/root/DataTableRoot.context.d.ts +5 -1
- package/cjs/data/table/root/DataTableRoot.context.js.map +1 -1
- package/cjs/data/table/root/DataTableRoot.d.ts +79 -115
- package/cjs/data/table/root/DataTableRoot.js +163 -38
- package/cjs/data/table/root/DataTableRoot.js.map +1 -1
- package/cjs/data/table/root/DataTableRoot.legacy.d.ts +177 -0
- package/cjs/data/table/root/DataTableRoot.legacy.js +104 -0
- package/cjs/data/table/root/DataTableRoot.legacy.js.map +1 -0
- package/cjs/data/table/sub-row-toggle/DataTableSubRowToggle.d.ts +6 -0
- package/cjs/data/table/sub-row-toggle/DataTableSubRowToggle.js +21 -0
- package/cjs/data/table/sub-row-toggle/DataTableSubRowToggle.js.map +1 -0
- package/cjs/data/table/tr/DataTableTr.js +11 -11
- package/cjs/data/table/tr/DataTableTr.js.map +1 -1
- package/cjs/utils/components/dismissablelayer/DismissableLayer.js +1 -1
- package/cjs/utils/components/dismissablelayer/DismissableLayer.js.map +1 -1
- package/cjs/utils/components/floating/Floating.d.ts +16 -1
- package/cjs/utils/components/floating/Floating.js +50 -13
- package/cjs/utils/components/floating/Floating.js.map +1 -1
- package/cjs/utils/components/floating-menu/Menu.js +1 -1
- package/cjs/utils/components/floating-menu/Menu.js.map +1 -1
- package/cjs/utils/helpers/create-strict-context.js +1 -1
- package/cjs/utils/helpers/create-strict-context.js.map +1 -1
- package/cjs/utils/hooks/useControllableState.d.ts +5 -5
- package/cjs/utils/hooks/useControllableState.js.map +1 -1
- package/cjs/utils/hooks/useValueAsRef.js +1 -1
- package/cjs/utils/hooks/useValueAsRef.js.map +1 -1
- package/cjs/utils-external/hooks/useId.js +1 -1
- package/cjs/utils-external/hooks/useId.js.map +1 -1
- package/esm/action-menu/ActionMenu.js +1 -1
- package/esm/action-menu/ActionMenu.js.map +1 -1
- package/esm/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js +11 -12
- package/esm/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js.map +1 -1
- package/esm/data/drag-and-drop/root/DragAndDrop.context.d.ts +4 -2
- package/esm/data/drag-and-drop/root/DragAndDrop.context.js.map +1 -1
- package/esm/data/drag-and-drop/root/DragAndDropRoot.d.ts +5 -5
- package/esm/data/drag-and-drop/root/DragAndDropRoot.js +49 -28
- package/esm/data/drag-and-drop/root/DragAndDropRoot.js.map +1 -1
- package/esm/data/drag-and-drop/types.d.ts +0 -4
- package/esm/data/{drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.d.ts → drag-and-drop-legacy/drag-handler/DragAndDropDragHandlerLegacy.d.ts} +3 -3
- package/esm/data/{drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.js → drag-and-drop-legacy/drag-handler/DragAndDropDragHandlerLegacy.js} +4 -4
- package/esm/data/drag-and-drop-legacy/drag-handler/DragAndDropDragHandlerLegacy.js.map +1 -0
- package/esm/data/drag-and-drop-legacy/item/DragAndDropItemLegacy.d.ts +27 -0
- package/esm/data/{drag-and-drop-old/item/DataDragAndDropItem.js → drag-and-drop-legacy/item/DragAndDropItemLegacy.js} +11 -11
- package/esm/data/drag-and-drop-legacy/item/DragAndDropItemLegacy.js.map +1 -0
- package/esm/data/drag-and-drop-legacy/root/DragAndDropLegacy.context.d.ts +5 -0
- package/esm/data/drag-and-drop-legacy/root/DragAndDropLegacy.context.js +3 -0
- package/esm/data/drag-and-drop-legacy/root/DragAndDropLegacy.context.js.map +1 -0
- package/esm/data/drag-and-drop-legacy/root/DragAndDropLegacyRoot.d.ts +24 -0
- package/esm/data/{drag-and-drop-old/root/DataDragAndDropRoot.js → drag-and-drop-legacy/root/DragAndDropLegacyRoot.js} +8 -8
- package/esm/data/drag-and-drop-legacy/root/DragAndDropLegacyRoot.js.map +1 -0
- package/esm/data/stories/Data.test-data.d.ts +24 -0
- package/esm/data/stories/Data.test-data.js +1606 -0
- package/esm/data/stories/Data.test-data.js.map +1 -0
- package/esm/data/table/column-header/DataTableColumnHeader.d.ts +4 -1
- package/esm/data/table/column-header/DataTableColumnHeader.js +4 -4
- package/esm/data/table/column-header/DataTableColumnHeader.js.map +1 -1
- package/esm/data/table/column-header/useTableColumnResize.d.ts +21 -18
- package/esm/data/table/column-header/useTableColumnResize.js +7 -25
- package/esm/data/table/column-header/useTableColumnResize.js.map +1 -1
- package/esm/data/table/details-panel-row/DataTableDetailsPanelRow.d.ts +6 -0
- package/esm/data/table/details-panel-row/DataTableDetailsPanelRow.js +27 -0
- package/esm/data/table/details-panel-row/DataTableDetailsPanelRow.js.map +1 -0
- package/esm/data/table/helpers/collectTableRowEntries.d.ts +9 -7
- package/esm/data/table/helpers/collectTableRowEntries.js +21 -14
- package/esm/data/table/helpers/collectTableRowEntries.js.map +1 -1
- package/esm/data/table/helpers/table-focus.d.ts +0 -3
- package/esm/data/table/helpers/table-focus.js +38 -8
- package/esm/data/table/helpers/table-focus.js.map +1 -1
- package/esm/data/table/hooks/useColumnOptions.js +18 -5
- package/esm/data/table/hooks/useColumnOptions.js.map +1 -1
- package/esm/data/table/hooks/useGridCache.js +2 -2
- package/esm/data/table/hooks/useGridCache.js.map +1 -1
- package/esm/data/table/hooks/useTableDetailsPanel.d.ts +62 -0
- package/esm/data/table/hooks/{useTableExpansion.js → useTableDetailsPanel.js} +18 -17
- package/esm/data/table/hooks/useTableDetailsPanel.js.map +1 -0
- package/esm/data/table/hooks/useTableItems.d.ts +14 -17
- package/esm/data/table/hooks/useTableItems.js +17 -16
- package/esm/data/table/hooks/useTableItems.js.map +1 -1
- package/esm/data/table/hooks/useTableKeyboardNav.js +6 -2
- package/esm/data/table/hooks/useTableKeyboardNav.js.map +1 -1
- package/esm/data/table/hooks/useTableSelection.d.ts +4 -2
- package/esm/data/table/hooks/useTableSelection.js +6 -1
- package/esm/data/table/hooks/useTableSelection.js.map +1 -1
- package/esm/data/table/index.d.ts +1 -2
- package/esm/data/table/index.js +21 -1
- package/esm/data/table/index.js.map +1 -1
- package/esm/data/table/root/DataTable.types.d.ts +7 -9
- package/esm/data/table/root/DataTableRoot.context.d.ts +5 -1
- package/esm/data/table/root/DataTableRoot.context.js.map +1 -1
- package/esm/data/table/root/DataTableRoot.d.ts +79 -115
- package/esm/data/table/root/DataTableRoot.js +170 -36
- package/esm/data/table/root/DataTableRoot.js.map +1 -1
- package/esm/data/table/root/DataTableRoot.legacy.d.ts +177 -0
- package/esm/data/table/root/DataTableRoot.legacy.js +59 -0
- package/esm/data/table/root/DataTableRoot.legacy.js.map +1 -0
- package/esm/data/table/sub-row-toggle/DataTableSubRowToggle.d.ts +6 -0
- package/esm/data/table/sub-row-toggle/DataTableSubRowToggle.js +16 -0
- package/esm/data/table/sub-row-toggle/DataTableSubRowToggle.js.map +1 -0
- package/esm/data/table/tr/DataTableTr.js +11 -11
- package/esm/data/table/tr/DataTableTr.js.map +1 -1
- package/esm/utils/components/dismissablelayer/DismissableLayer.js +1 -1
- package/esm/utils/components/dismissablelayer/DismissableLayer.js.map +1 -1
- package/esm/utils/components/floating/Floating.d.ts +16 -1
- package/esm/utils/components/floating/Floating.js +48 -13
- package/esm/utils/components/floating/Floating.js.map +1 -1
- package/esm/utils/components/floating-menu/Menu.js +2 -2
- package/esm/utils/components/floating-menu/Menu.js.map +1 -1
- package/esm/utils/helpers/create-strict-context.js +1 -1
- package/esm/utils/helpers/create-strict-context.js.map +1 -1
- package/esm/utils/hooks/useControllableState.d.ts +5 -5
- package/esm/utils/hooks/useControllableState.js.map +1 -1
- package/esm/utils/hooks/useValueAsRef.js +1 -1
- package/esm/utils/hooks/useValueAsRef.js.map +1 -1
- package/esm/utils-external/hooks/useId.js +1 -1
- package/esm/utils-external/hooks/useId.js.map +1 -1
- package/package.json +8 -7
- package/src/action-menu/ActionMenu.tsx +1 -1
- package/src/data/drag-and-drop/drag-handler/DragAndDropDragHandler.tsx +11 -16
- package/src/data/drag-and-drop/root/DragAndDrop.context.tsx +4 -2
- package/src/data/drag-and-drop/root/DragAndDropRoot.tsx +85 -40
- package/src/data/drag-and-drop/types.ts +0 -5
- package/src/data/{drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.tsx → drag-and-drop-legacy/drag-handler/DragAndDropDragHandlerLegacy.tsx} +5 -5
- package/src/data/{drag-and-drop-old/item/DataDragAndDropItem.tsx → drag-and-drop-legacy/item/DragAndDropItemLegacy.tsx} +13 -13
- package/src/data/{drag-and-drop-old/root/DataDragAndDrop.context.tsx → drag-and-drop-legacy/root/DragAndDropLegacy.context.tsx} +3 -3
- package/src/data/{drag-and-drop-old/root/DataDragAndDropRoot.tsx → drag-and-drop-legacy/root/DragAndDropLegacyRoot.tsx} +19 -21
- package/src/data/stories/Data.test-data.tsx +1702 -0
- package/src/data/table/column-header/DataTableColumnHeader.tsx +8 -6
- package/src/data/table/column-header/useTableColumnResize.ts +29 -44
- package/src/data/table/details-panel-row/DataTableDetailsPanelRow.tsx +57 -0
- package/src/data/table/helpers/collectTableRowEntries.ts +36 -30
- package/src/data/table/helpers/table-focus.ts +63 -9
- package/src/data/table/hooks/__tests__/useTableItems.test.ts +58 -12
- package/src/data/table/hooks/__tests__/useTableSelection.test.ts +57 -44
- package/src/data/table/hooks/useColumnOptions.ts +19 -5
- package/src/data/table/hooks/useGridCache.ts +3 -2
- package/src/data/table/hooks/useTableDetailsPanel.tsx +185 -0
- package/src/data/table/hooks/useTableItems.ts +44 -52
- package/src/data/table/hooks/useTableKeyboardNav.ts +6 -2
- package/src/data/table/hooks/useTableSelection.ts +17 -6
- package/src/data/table/index.tsx +5 -3
- package/src/data/table/root/DataTable.types.ts +20 -9
- package/src/data/table/root/DataTableRoot.context.ts +5 -1
- package/src/data/table/root/DataTableRoot.legacy.tsx +297 -0
- package/src/data/table/root/DataTableRoot.tsx +484 -219
- package/src/data/table/root/agent-feature-gap.md +96 -0
- package/src/data/table/sub-row-toggle/DataTableSubRowToggle.tsx +39 -0
- package/src/data/table/tr/DataTableTr.tsx +14 -13
- package/src/utils/components/dismissablelayer/DismissableLayer.tsx +1 -1
- package/src/utils/components/floating/Floating.tsx +56 -13
- package/src/utils/components/floating-menu/Menu.tsx +4 -1
- package/src/utils/helpers/create-strict-context.tsx +1 -1
- package/src/utils/hooks/useControllableState.ts +11 -8
- package/src/utils/hooks/useValueAsRef.ts +1 -1
- package/src/utils-external/hooks/useId.ts +1 -1
- package/cjs/data/drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.js.map +0 -1
- package/cjs/data/drag-and-drop-old/item/DataDragAndDropItem.d.ts +0 -27
- package/cjs/data/drag-and-drop-old/item/DataDragAndDropItem.js.map +0 -1
- package/cjs/data/drag-and-drop-old/root/DataDragAndDrop.context.d.ts +0 -5
- package/cjs/data/drag-and-drop-old/root/DataDragAndDrop.context.js +0 -6
- package/cjs/data/drag-and-drop-old/root/DataDragAndDrop.context.js.map +0 -1
- package/cjs/data/drag-and-drop-old/root/DataDragAndDropRoot.d.ts +0 -24
- package/cjs/data/drag-and-drop-old/root/DataDragAndDropRoot.js.map +0 -1
- package/cjs/data/table/hooks/useTableExpansion.d.ts +0 -27
- package/cjs/data/table/hooks/useTableExpansion.js.map +0 -1
- package/cjs/data/table/root/DataTableAuto.d.ts +0 -182
- package/cjs/data/table/root/DataTableAuto.js +0 -206
- package/cjs/data/table/root/DataTableAuto.js.map +0 -1
- package/esm/data/drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.js.map +0 -1
- package/esm/data/drag-and-drop-old/item/DataDragAndDropItem.d.ts +0 -27
- package/esm/data/drag-and-drop-old/item/DataDragAndDropItem.js.map +0 -1
- package/esm/data/drag-and-drop-old/root/DataDragAndDrop.context.d.ts +0 -5
- package/esm/data/drag-and-drop-old/root/DataDragAndDrop.context.js +0 -3
- package/esm/data/drag-and-drop-old/root/DataDragAndDrop.context.js.map +0 -1
- package/esm/data/drag-and-drop-old/root/DataDragAndDropRoot.d.ts +0 -24
- package/esm/data/drag-and-drop-old/root/DataDragAndDropRoot.js.map +0 -1
- package/esm/data/table/hooks/useTableExpansion.d.ts +0 -27
- package/esm/data/table/hooks/useTableExpansion.js.map +0 -1
- package/esm/data/table/root/DataTableAuto.d.ts +0 -182
- package/esm/data/table/root/DataTableAuto.js +0 -170
- package/esm/data/table/root/DataTableAuto.js.map +0 -1
- package/src/data/table/hooks/useTableExpansion.tsx +0 -146
- package/src/data/table/root/DataTableAuto.test.tsx +0 -244
- package/src/data/table/root/DataTableAuto.tsx +0 -612
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGridCache.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useGridCache.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"useGridCache.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useGridCache.ts"],"names":[],"mappings":";;AAyES,oCAAY;AAzErB,iCAAiE;AACjE,gDAAqD;AACrD,8DAA8E;AAE9E;;;;GAIG;AACH,SAAS,YAAY,CAAC,QAAiC,EAAE,OAAgB;IACvE,MAAM,YAAY,GAAG,IAAA,cAAM,EAAY;QACrC,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,IAAI;KACZ,CAAC,CAAC;IAEH,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAiB,IAAI,CAAC,CAAC;IACnE,MAAM,aAAa,GAAG,IAAA,qBAAa,EAAC,UAAU,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,IAAA,cAAM,EAA0B,IAAI,CAAC,CAAC;IAE1D,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;YAC1B,OAAO;QACT,CAAC;QAED,WAAW,CAAC,OAAO,GAAG,IAAI,gBAAgB,CAAC,GAAG,EAAE;YAC9C,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;YAElC,IAAI,aAAa,CAAC,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBAChE,aAAa,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE;YACpC,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC;SAC3D,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE;YACV,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBACxB,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;gBACjC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;IAEvC;;;OAGG;IACH,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,OAAO,EAAE,CAAC;YACZ,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;QACpC,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,MAAM,YAAY,GAAG,IAAA,mBAAW,EAAC,CAAC,SAA2B,EAAE,EAAE;QAC/D,IAAI,YAAY,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAC7D,YAAY,CAAC,OAAO,CAAC,IAAI,GAAG,IAAA,kCAAiB,EAAC,SAAS,CAAC,CAAC;YACzD,YAAY,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;QACrC,CAAC;QAED,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC;IACnC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,YAAY;QACZ,UAAU;QACV,aAAa;KACd,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
type DetailsPanelProps<T> = {
|
|
3
|
+
/**
|
|
4
|
+
* Renders a details panel below the row when expanded.
|
|
5
|
+
* When provided, an expand toggle column is added automatically.
|
|
6
|
+
*/
|
|
7
|
+
getContent?: (rowData: T) => React.ReactNode;
|
|
8
|
+
/**
|
|
9
|
+
* Determines whether a row can be expanded to show details panel content.
|
|
10
|
+
* @default () => true
|
|
11
|
+
*/
|
|
12
|
+
isRowExpandable?: (rowData: T) => boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Controlled list of expanded row IDs.
|
|
15
|
+
* Use with `onDetailsPanelChange` for controlled usage, or `defaultDetailsPanelRowIds` for uncontrolled.
|
|
16
|
+
*/
|
|
17
|
+
expandedRowIds?: (string | number)[];
|
|
18
|
+
/**
|
|
19
|
+
* Initial list of expanded row IDs for uncontrolled usage.
|
|
20
|
+
* @default []
|
|
21
|
+
*/
|
|
22
|
+
defaultExpandedRowIds?: (string | number)[];
|
|
23
|
+
/**
|
|
24
|
+
* Called when the list of expanded row IDs changes.
|
|
25
|
+
*
|
|
26
|
+
*
|
|
27
|
+
* TODO:
|
|
28
|
+
* - Docs: This pattern is called "Master / Detail" in general terms
|
|
29
|
+
*/
|
|
30
|
+
onExpandedRowIdsChange?: (ids: (string | number)[]) => void;
|
|
31
|
+
/**
|
|
32
|
+
* Returns the height (in px) or `"auto"` for a row's details panel.
|
|
33
|
+
* When a number is returned, the panel scrolls within that fixed height.
|
|
34
|
+
* @default "auto"
|
|
35
|
+
*/
|
|
36
|
+
getHeight?: (rowData: T) => number | "auto";
|
|
37
|
+
/**
|
|
38
|
+
* Shows an expand-all toggle button in the expand column header.
|
|
39
|
+
* @default false
|
|
40
|
+
*/
|
|
41
|
+
showExpandAll?: boolean;
|
|
42
|
+
};
|
|
43
|
+
type DataTableDetailsPanelContextT = {
|
|
44
|
+
isExpanded: (id: string | number) => boolean;
|
|
45
|
+
isDetailsPanelExpandable: (id: string | number) => boolean;
|
|
46
|
+
toggleExpansion: (id: string | number) => void;
|
|
47
|
+
toggleAll: () => void;
|
|
48
|
+
isAllExpanded: boolean;
|
|
49
|
+
getDetailsPanelContent?: (row: unknown) => React.ReactNode;
|
|
50
|
+
getDetailsPanelHeight?: (row: unknown) => number | "auto";
|
|
51
|
+
showExpandAll: boolean;
|
|
52
|
+
enableDetailsPanel: boolean;
|
|
53
|
+
};
|
|
54
|
+
declare const useDataTableDetailsPanel: <S extends boolean = true>(strict?: S | undefined) => S extends true ? DataTableDetailsPanelContextT : DataTableDetailsPanelContextT | undefined;
|
|
55
|
+
declare function DataTableDetailsPanelProvider<T>({ children, detailsPanel, }: {
|
|
56
|
+
detailsPanel?: DetailsPanelProps<T>;
|
|
57
|
+
} & {
|
|
58
|
+
children: React.ReactNode;
|
|
59
|
+
}): React.JSX.Element;
|
|
60
|
+
declare function getDataTableDetailsPanelId(tableId: string, rowId: string | number): string;
|
|
61
|
+
export { DataTableDetailsPanelProvider, getDataTableDetailsPanelId, useDataTableDetailsPanel, };
|
|
62
|
+
export type { DetailsPanelProps };
|
|
@@ -33,26 +33,24 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.
|
|
37
|
-
exports.
|
|
38
|
-
exports.
|
|
36
|
+
exports.useDataTableDetailsPanel = void 0;
|
|
37
|
+
exports.DataTableDetailsPanelProvider = DataTableDetailsPanelProvider;
|
|
38
|
+
exports.getDataTableDetailsPanelId = getDataTableDetailsPanelId;
|
|
39
39
|
const react_1 = __importStar(require("react"));
|
|
40
40
|
const helpers_1 = require("../../../utils/helpers");
|
|
41
41
|
const hooks_1 = require("../../../utils/hooks");
|
|
42
42
|
const useTableItems_1 = require("./useTableItems");
|
|
43
|
-
const { Provider:
|
|
44
|
-
name: "
|
|
45
|
-
errorMessage: "
|
|
43
|
+
const { Provider: DataTableDetailsPanelContextProvider, useContext: useDataTableDetailsPanel, } = (0, helpers_1.createStrictContext)({
|
|
44
|
+
name: "DataTableDetailsPanelContext",
|
|
45
|
+
errorMessage: "useDataTableDetailsPanel must be used within a DataTableDetailsPanelProvider.",
|
|
46
46
|
});
|
|
47
|
-
exports.
|
|
48
|
-
function
|
|
49
|
-
|
|
50
|
-
}
|
|
51
|
-
function DataTableExpansionProvider({ children, detailsPanelRowIds, defaultDetailsPanelRowIds = [], onDetailsPanelChange, getDetailsPanelContent, isDetailsPanelExpandable, getDetailsPanelHeight, showExpandAll = false, }) {
|
|
47
|
+
exports.useDataTableDetailsPanel = useDataTableDetailsPanel;
|
|
48
|
+
function DataTableDetailsPanelProvider({ children, detailsPanel = {}, }) {
|
|
49
|
+
const { expandedRowIds, defaultExpandedRowIds = [], onExpandedRowIdsChange, getContent, isRowExpandable, getHeight, showExpandAll = false, } = detailsPanel;
|
|
52
50
|
const [expandedIds, setExpandedIds] = (0, hooks_1.useControllableState)({
|
|
53
|
-
value:
|
|
54
|
-
defaultValue:
|
|
55
|
-
onChange:
|
|
51
|
+
value: expandedRowIds,
|
|
52
|
+
defaultValue: defaultExpandedRowIds,
|
|
53
|
+
onChange: onExpandedRowIdsChange,
|
|
56
54
|
});
|
|
57
55
|
/* TODO: False is just fallback until auto and root is merged */
|
|
58
56
|
const tableItemsContext = (0, useTableItems_1.useTableItemsContext)(false);
|
|
@@ -60,21 +58,21 @@ function DataTableExpansionProvider({ children, detailsPanelRowIds, defaultDetai
|
|
|
60
58
|
itemDetails: new Map(),
|
|
61
59
|
};
|
|
62
60
|
const expandableIds = react_1.default.useMemo(() => {
|
|
63
|
-
if (!
|
|
61
|
+
if (!getContent) {
|
|
64
62
|
return new Set();
|
|
65
63
|
}
|
|
66
64
|
const ids = new Set();
|
|
67
|
-
for (const
|
|
65
|
+
for (const { rowData, id, level } of itemDetails.values()) {
|
|
68
66
|
/* We only allow Master - Details pattern on top level rows */
|
|
69
67
|
if (level > 0) {
|
|
70
68
|
continue;
|
|
71
69
|
}
|
|
72
|
-
if (!
|
|
70
|
+
if (!isRowExpandable || isRowExpandable(rowData)) {
|
|
73
71
|
ids.add(id);
|
|
74
72
|
}
|
|
75
73
|
}
|
|
76
74
|
return ids;
|
|
77
|
-
}, [
|
|
75
|
+
}, [getContent, isRowExpandable, itemDetails]);
|
|
78
76
|
const isDetailsPanelExpandableById = (0, react_1.useCallback)((id) => expandableIds.has(id), [expandableIds]);
|
|
79
77
|
const isExpanded = (0, react_1.useCallback)((id) => isDetailsPanelExpandableById(id) && expandedIds.includes(id), [expandedIds, isDetailsPanelExpandableById]);
|
|
80
78
|
const toggleExpansion = (0, react_1.useCallback)((id) => {
|
|
@@ -90,6 +88,9 @@ function DataTableExpansionProvider({ children, detailsPanelRowIds, defaultDetai
|
|
|
90
88
|
const toggleAll = (0, react_1.useCallback)(() => {
|
|
91
89
|
setExpandedIds(isAllExpanded ? [] : Array.from(expandableIds));
|
|
92
90
|
}, [expandableIds, isAllExpanded, setExpandedIds]);
|
|
93
|
-
return (react_1.default.createElement(
|
|
91
|
+
return (react_1.default.createElement(DataTableDetailsPanelContextProvider, { isExpanded: isExpanded, isDetailsPanelExpandable: isDetailsPanelExpandableById, toggleExpansion: toggleExpansion, toggleAll: toggleAll, isAllExpanded: isAllExpanded, getDetailsPanelContent: getContent, getDetailsPanelHeight: getHeight, showExpandAll: showExpandAll, enableDetailsPanel: !!getContent }, children));
|
|
92
|
+
}
|
|
93
|
+
function getDataTableDetailsPanelId(tableId, rowId) {
|
|
94
|
+
return `${tableId}-expansion-${rowId}`;
|
|
94
95
|
}
|
|
95
|
-
//# sourceMappingURL=
|
|
96
|
+
//# sourceMappingURL=useTableDetailsPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTableDetailsPanel.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useTableDetailsPanel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,33 +1,30 @@
|
|
|
1
1
|
import { type ItemDetail, type TableRowEntryId } from "../helpers/collectTableRowEntries";
|
|
2
|
+
type SubRowsProps<T> = {
|
|
3
|
+
getRows?: (rowData: T) => T[];
|
|
4
|
+
expandedRowIds?: (string | number)[];
|
|
5
|
+
defaultExpandedRowIds?: (string | number)[];
|
|
6
|
+
isRowExpandable?: (rowData: T) => boolean;
|
|
7
|
+
onExpandedRowIdsChange?: (ids: (string | number)[]) => void;
|
|
8
|
+
};
|
|
2
9
|
type UseTableItemsArgs<T> = {
|
|
3
10
|
items: T[];
|
|
4
|
-
getRowId?: (rowData: T
|
|
5
|
-
|
|
6
|
-
* Master - Detail pattern props
|
|
7
|
-
*/
|
|
8
|
-
/**
|
|
9
|
-
* Expanded/Nested rows pattern props
|
|
10
|
-
*/
|
|
11
|
-
getSubRows?: (rowData: T) => T[];
|
|
12
|
-
expandedSubRowIds?: (string | number)[];
|
|
13
|
-
defaultExpandedSubRowIds?: (string | number)[];
|
|
14
|
-
isSubRowExpandable?: (rowData: T) => boolean;
|
|
15
|
-
onExpandedSubRowIdsChange?: (ids: (string | number)[]) => void;
|
|
11
|
+
getRowId?: (rowData: T) => TableRowEntryId;
|
|
12
|
+
subRows?: SubRowsProps<T>;
|
|
16
13
|
};
|
|
17
14
|
type useTableItemsReturn<T> = {
|
|
18
15
|
items: T[];
|
|
19
|
-
itemDetails: Map<
|
|
16
|
+
itemDetails: Map<TableRowEntryId, ItemDetail<T>>;
|
|
20
17
|
/** Row ids for the rows currently rendered in the table body. */
|
|
21
18
|
visibleRowIds: TableRowEntryId[];
|
|
22
19
|
/** Direct child ids for each row, used to traverse selection groups lazily. */
|
|
23
20
|
childRowIdsById: Map<TableRowEntryId, TableRowEntryId[]>;
|
|
24
|
-
|
|
21
|
+
onExpandedRowIdsChange: (id: string | number) => void;
|
|
25
22
|
isSubRowExpanded: (id: string | number) => boolean;
|
|
26
23
|
};
|
|
27
24
|
declare function useTableItems<T>(args: UseTableItemsArgs<T>): useTableItemsReturn<T>;
|
|
28
|
-
declare const TableItemsProvider: import("react").FC<Omit<useTableItemsReturn<any>, "
|
|
25
|
+
declare const TableItemsProvider: import("react").FC<Omit<useTableItemsReturn<any>, "childRowIdsById"> & {
|
|
29
26
|
children: React.ReactNode;
|
|
30
27
|
ref?: never;
|
|
31
|
-
}>, useTableItemsContext: <S extends boolean = true>(strict?: S | undefined) => S extends true ? Omit<useTableItemsReturn<any>, "
|
|
28
|
+
}>, useTableItemsContext: <S extends boolean = true>(strict?: S | undefined) => S extends true ? Omit<useTableItemsReturn<any>, "childRowIdsById"> : Omit<useTableItemsReturn<any>, "childRowIdsById"> | undefined;
|
|
32
29
|
export { useTableItems, TableItemsProvider, useTableItemsContext };
|
|
33
|
-
export type { ItemDetail };
|
|
30
|
+
export type { ItemDetail, SubRowsProps };
|
|
@@ -7,40 +7,41 @@ const helpers_1 = require("../../../utils/helpers");
|
|
|
7
7
|
const hooks_1 = require("../../../utils/hooks");
|
|
8
8
|
const collectTableRowEntries_1 = require("../helpers/collectTableRowEntries");
|
|
9
9
|
function useTableItems(args) {
|
|
10
|
-
const { items,
|
|
10
|
+
const { items, subRows = {}, getRowId } = args;
|
|
11
|
+
const { expandedRowIds, defaultExpandedRowIds, getRows, onExpandedRowIdsChange, isRowExpandable, } = subRows;
|
|
11
12
|
const [nestedSubRowsExpandedIds, setNestedSubRowsExpandedIds] = (0, hooks_1.useControllableState)({
|
|
12
|
-
value:
|
|
13
|
-
defaultValue:
|
|
14
|
-
onChange:
|
|
13
|
+
value: expandedRowIds,
|
|
14
|
+
defaultValue: defaultExpandedRowIds !== null && defaultExpandedRowIds !== void 0 ? defaultExpandedRowIds : [],
|
|
15
|
+
onChange: onExpandedRowIdsChange,
|
|
15
16
|
});
|
|
16
17
|
const expandedIdsSet = (0, react_1.useMemo)(() => new Set(nestedSubRowsExpandedIds), [nestedSubRowsExpandedIds]);
|
|
17
18
|
const { itemDetails, visibleItems, visibleRowIds, childRowIdsById } = (0, react_1.useMemo)(() => {
|
|
18
|
-
const { itemDetails: rowEntriesMap, childRowIdsById: _childRowIdsById } = (0, collectTableRowEntries_1.collectTableRowEntries)({
|
|
19
|
+
const { itemDetails: rowEntriesMap, rootRowIds, childRowIdsById: _childRowIdsById, } = (0, collectTableRowEntries_1.collectTableRowEntries)({
|
|
19
20
|
items,
|
|
20
21
|
getRowId,
|
|
21
|
-
|
|
22
|
-
|
|
22
|
+
getRows,
|
|
23
|
+
isRowExpandable,
|
|
23
24
|
});
|
|
24
25
|
const localVisibleItems = [];
|
|
25
26
|
const localVisibleRowIds = [];
|
|
26
|
-
const addVisibleRows = (
|
|
27
|
-
const details = rowEntriesMap.get(
|
|
27
|
+
const addVisibleRows = (rowId) => {
|
|
28
|
+
const details = rowEntriesMap.get(rowId);
|
|
28
29
|
if (!details) {
|
|
29
30
|
return [];
|
|
30
31
|
}
|
|
31
|
-
localVisibleItems.push(rowData);
|
|
32
|
+
localVisibleItems.push(details.rowData);
|
|
32
33
|
localVisibleRowIds.push(details.id);
|
|
33
34
|
const visibleDescendantRowIds = [];
|
|
34
35
|
if (expandedIdsSet.has(details.id)) {
|
|
35
|
-
for (const
|
|
36
|
-
const childVisibleRowIds = addVisibleRows(
|
|
36
|
+
for (const childRowId of details.children) {
|
|
37
|
+
const childVisibleRowIds = addVisibleRows(childRowId);
|
|
37
38
|
visibleDescendantRowIds.push(...childVisibleRowIds);
|
|
38
39
|
}
|
|
39
40
|
}
|
|
40
41
|
return [details.id, ...visibleDescendantRowIds];
|
|
41
42
|
};
|
|
42
|
-
for (const
|
|
43
|
-
addVisibleRows(
|
|
43
|
+
for (const rowId of rootRowIds) {
|
|
44
|
+
addVisibleRows(rowId);
|
|
44
45
|
}
|
|
45
46
|
return {
|
|
46
47
|
visibleItems: localVisibleItems,
|
|
@@ -48,7 +49,7 @@ function useTableItems(args) {
|
|
|
48
49
|
childRowIdsById: _childRowIdsById,
|
|
49
50
|
itemDetails: rowEntriesMap,
|
|
50
51
|
};
|
|
51
|
-
}, [
|
|
52
|
+
}, [getRows, items, getRowId, isRowExpandable, expandedIdsSet]);
|
|
52
53
|
const handleExpandedSubRowIdChange = (0, react_1.useCallback)((id) => {
|
|
53
54
|
setNestedSubRowsExpandedIds((prev) => prev.includes(id)
|
|
54
55
|
? prev.filter((expandedId) => expandedId !== id)
|
|
@@ -59,7 +60,7 @@ function useTableItems(args) {
|
|
|
59
60
|
itemDetails,
|
|
60
61
|
visibleRowIds,
|
|
61
62
|
childRowIdsById,
|
|
62
|
-
|
|
63
|
+
onExpandedRowIdsChange: handleExpandedSubRowIdChange,
|
|
63
64
|
isSubRowExpanded: (id) => expandedIdsSet.has(id),
|
|
64
65
|
};
|
|
65
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTableItems.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useTableItems.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"useTableItems.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useTableItems.ts"],"names":[],"mappings":"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"}
|
|
@@ -90,6 +90,10 @@ function useTableKeyboardNav({ enabled, shouldBlockNavigation: customBlockFn, })
|
|
|
90
90
|
var _a;
|
|
91
91
|
const target = event.target;
|
|
92
92
|
if (tableRef && target === tableRef) {
|
|
93
|
+
if (activeCell) {
|
|
94
|
+
(0, table_focus_1.focusCell)(activeCell);
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
93
97
|
(0, table_cell_1.focusInitialTableTarget)(tableRef);
|
|
94
98
|
return;
|
|
95
99
|
}
|
|
@@ -120,7 +124,7 @@ function useTableKeyboardNav({ enabled, shouldBlockNavigation: customBlockFn, })
|
|
|
120
124
|
}, [tableRef, handleTableKeyDown, handleTableFocusIn, enabled]);
|
|
121
125
|
return {
|
|
122
126
|
/* Table should only have tabIndex until the focus is moved inside and is enabled */
|
|
123
|
-
tabIndex: enabled ?
|
|
127
|
+
tabIndex: enabled ? 0 : undefined,
|
|
124
128
|
setTableRef,
|
|
125
129
|
};
|
|
126
130
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTableKeyboardNav.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useTableKeyboardNav.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"useTableKeyboardNav.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useTableKeyboardNav.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import type { SelectionProps, TableSelection } from "../helpers/selection/selection.types";
|
|
2
|
-
type UseTableSelectionArgs =
|
|
2
|
+
type UseTableSelectionArgs = {
|
|
3
|
+
selection?: SelectionProps;
|
|
3
4
|
visibleRowIds: (string | number)[];
|
|
4
5
|
childRowIdsById?: Map<string | number, (string | number)[]>;
|
|
5
6
|
};
|
|
6
7
|
type UseTableSelectionReturn = {
|
|
7
8
|
selection: TableSelection;
|
|
8
9
|
renderSelection: boolean;
|
|
10
|
+
disableRowSelectionOnClick: boolean;
|
|
9
11
|
};
|
|
10
|
-
declare function useTableSelection({
|
|
12
|
+
declare function useTableSelection({ selection, visibleRowIds, childRowIdsById, }: UseTableSelectionArgs): UseTableSelectionReturn;
|
|
11
13
|
/**
|
|
12
14
|
* TODO: Only temp needed to keep Root happy
|
|
13
15
|
*/
|
|
@@ -7,7 +7,8 @@ const utils_external_1 = require("../../../utils-external");
|
|
|
7
7
|
const hooks_1 = require("../../../utils/hooks");
|
|
8
8
|
const getMultipleSelectProps_1 = require("../helpers/selection/getMultipleSelectProps");
|
|
9
9
|
const getSingleSelectProps_1 = require("../helpers/selection/getSingleSelectProps");
|
|
10
|
-
function useTableSelection({
|
|
10
|
+
function useTableSelection({ selection = {}, visibleRowIds = [], childRowIdsById, }) {
|
|
11
|
+
const { selectionMode = "none", defaultSelectedKeys, selectedKeys: selectedKeysProp, onSelectionChange, disabledSelectionKeys = [], disableRowSelectionOnClick = false, } = selection;
|
|
11
12
|
const radioGroupName = (0, utils_external_1.useId)();
|
|
12
13
|
const [selectedKeys, setSelectedKeys] = (0, hooks_1.useControllableState)({
|
|
13
14
|
value: selectionMode !== "none" ? selectedKeysProp : undefined,
|
|
@@ -21,6 +22,7 @@ function useTableSelection({ selectionMode = "none", defaultSelectedKeys, select
|
|
|
21
22
|
if (selectionMode === "none") {
|
|
22
23
|
return {
|
|
23
24
|
selection: Object.assign(Object.assign({ selectionMode }, baseSelection), { selectedKeys: [] }),
|
|
25
|
+
disableRowSelectionOnClick,
|
|
24
26
|
renderSelection: false,
|
|
25
27
|
};
|
|
26
28
|
}
|
|
@@ -32,6 +34,7 @@ function useTableSelection({ selectionMode = "none", defaultSelectedKeys, select
|
|
|
32
34
|
disabledKeysSet,
|
|
33
35
|
name: radioGroupName,
|
|
34
36
|
})),
|
|
37
|
+
disableRowSelectionOnClick,
|
|
35
38
|
renderSelection: visibleRowIds.length !== 0,
|
|
36
39
|
};
|
|
37
40
|
}
|
|
@@ -44,6 +47,7 @@ function useTableSelection({ selectionMode = "none", defaultSelectedKeys, select
|
|
|
44
47
|
visibleRowIds,
|
|
45
48
|
childRowIdsById,
|
|
46
49
|
})),
|
|
50
|
+
disableRowSelectionOnClick,
|
|
47
51
|
renderSelection: visibleRowIds.length !== 0,
|
|
48
52
|
};
|
|
49
53
|
}
|
|
@@ -57,6 +61,7 @@ const noSelectionState = {
|
|
|
57
61
|
disabledSelectionKeys: [],
|
|
58
62
|
isRowSelected: () => false,
|
|
59
63
|
},
|
|
64
|
+
disableRowSelectionOnClick: false,
|
|
60
65
|
renderSelection: false,
|
|
61
66
|
};
|
|
62
67
|
exports.noSelectionState = noSelectionState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTableSelection.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useTableSelection.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"useTableSelection.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useTableSelection.ts"],"names":[],"mappings":";;;AA0HS,8CAAiB;AA1H1B,iCAA6C;AAC7C,4DAAgD;AAChD,gDAA4D;AAC5D,wFAAqF;AACrF,oFAAiF;AAqBjF,SAAS,iBAAiB,CAAC,EACzB,SAAS,GAAG,EAAE,EACd,aAAa,GAAG,EAAE,EAClB,eAAe,GACO;IACtB,MAAM,EACJ,aAAa,GAAG,MAAM,EACtB,mBAAmB,EACnB,YAAY,EAAE,gBAAgB,EAC9B,iBAAiB,EACjB,qBAAqB,GAAG,EAAE,EAC1B,0BAA0B,GAAG,KAAK,GACnC,GAAG,SAAS,CAAC;IAEd,MAAM,cAAc,GAAG,IAAA,sBAAK,GAAE,CAAC;IAE/B,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,IAAA,4BAAoB,EAAgB;QAC1E,KAAK,EAAE,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;QAC9D,YAAY,EAAE,mBAAmB,aAAnB,mBAAmB,cAAnB,mBAAmB,GAAI,EAAE;QACvC,QAAQ,EAAE,iBAAiB;KAC5B,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAE7E,MAAM,eAAe,GAAG,IAAA,eAAO,EAC7B,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,qBAAqB,CAAC,EACpC,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,MAAM,aAAa,GAAG,IAAA,mBAAW,EAC/B,CAAC,KAAsB,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EACtD,CAAC,eAAe,CAAC,CAClB,CAAC;IAEF,MAAM,aAAa,GAAG,EAAE,YAAY,EAAE,qBAAqB,EAAE,aAAa,EAAE,CAAC;IAE7E,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;QAC7B,OAAO;YACL,SAAS,gCACP,aAAa,IACV,aAAa,KAChB,YAAY,EAAE,EAAE,GACjB;YACD,0BAA0B;YAC1B,eAAe,EAAE,KAAK;SACvB,CAAC;IACJ,CAAC;IAED,IAAI,aAAa,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO;YACL,SAAS,gCACP,aAAa,IACV,aAAa,GACb,IAAA,2CAAoB,EAAC;gBACtB,eAAe;gBACf,eAAe;gBACf,eAAe;gBACf,IAAI,EAAE,cAAc;aACrB,CAAC,CACH;YACD,0BAA0B;YAC1B,eAAe,EAAE,aAAa,CAAC,MAAM,KAAK,CAAC;SAC5C,CAAC;IACJ,CAAC;IAED,OAAO;QACL,SAAS,gCACP,aAAa,IACV,aAAa,GACb,IAAA,+CAAsB,EAAC;YACxB,eAAe;YACf,YAAY;YACZ,eAAe;YACf,eAAe;YACf,aAAa;YACb,eAAe;SAChB,CAAC,CACH;QACD,0BAA0B;QAC1B,eAAe,EAAE,aAAa,CAAC,MAAM,KAAK,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,gBAAgB,GAA4B;IAChD,SAAS,EAAE;QACT,aAAa,EAAE,MAAM;QACrB,YAAY,EAAE,EAAE;QAChB,qBAAqB,EAAE,EAAE;QACzB,aAAa,EAAE,GAAG,EAAE,CAAC,KAAK;KAC3B;IACD,0BAA0B,EAAE,KAAK;IACjC,eAAe,EAAE,KAAK;CACvB,CAAC;AAE0B,4CAAgB"}
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export type { DataTableProps, DataTableCaptionProps, DataTableTheadProps, DataTableTbodyProps, DataTableTrProps, DataTableThProps, DataTableTdProps, DataTableTfootProps, } from "./root/DataTableRoot";
|
|
1
|
+
export { DataTable, type DataTableProps } from "./root/DataTableRoot";
|
package/cjs/data/table/index.js
CHANGED
|
@@ -1,17 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
"use client";
|
|
3
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
-
};
|
|
6
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.
|
|
4
|
+
exports.DataTable = void 0;
|
|
5
|
+
/* export {
|
|
6
|
+
default as DataTable,
|
|
7
|
+
DataTableCaption,
|
|
8
|
+
DataTableThead,
|
|
9
|
+
DataTableTbody,
|
|
10
|
+
DataTableTr,
|
|
11
|
+
DataTableTh,
|
|
12
|
+
DataTableTd,
|
|
13
|
+
DataTableTfoot,
|
|
14
|
+
} from "./root/DataTableRoot.legacy";
|
|
15
|
+
export type {
|
|
16
|
+
DataTableProps,
|
|
17
|
+
DataTableCaptionProps,
|
|
18
|
+
DataTableTheadProps,
|
|
19
|
+
DataTableTbodyProps,
|
|
20
|
+
DataTableTrProps,
|
|
21
|
+
DataTableThProps,
|
|
22
|
+
DataTableTdProps,
|
|
23
|
+
DataTableTfootProps,
|
|
24
|
+
} from "./root/DataTableRoot.legacy"; */
|
|
8
25
|
var DataTableRoot_1 = require("./root/DataTableRoot");
|
|
9
|
-
Object.defineProperty(exports, "DataTable", { enumerable: true, get: function () { return
|
|
10
|
-
Object.defineProperty(exports, "DataTableCaption", { enumerable: true, get: function () { return DataTableRoot_1.DataTableCaption; } });
|
|
11
|
-
Object.defineProperty(exports, "DataTableThead", { enumerable: true, get: function () { return DataTableRoot_1.DataTableThead; } });
|
|
12
|
-
Object.defineProperty(exports, "DataTableTbody", { enumerable: true, get: function () { return DataTableRoot_1.DataTableTbody; } });
|
|
13
|
-
Object.defineProperty(exports, "DataTableTr", { enumerable: true, get: function () { return DataTableRoot_1.DataTableTr; } });
|
|
14
|
-
Object.defineProperty(exports, "DataTableTh", { enumerable: true, get: function () { return DataTableRoot_1.DataTableTh; } });
|
|
15
|
-
Object.defineProperty(exports, "DataTableTd", { enumerable: true, get: function () { return DataTableRoot_1.DataTableTd; } });
|
|
16
|
-
Object.defineProperty(exports, "DataTableTfoot", { enumerable: true, get: function () { return DataTableRoot_1.DataTableTfoot; } });
|
|
26
|
+
Object.defineProperty(exports, "DataTable", { enumerable: true, get: function () { return DataTableRoot_1.DataTable; } });
|
|
17
27
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/data/table/index.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/data/table/index.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;AACb;;;;;;;;;;;;;;;;;;;wCAmBwC;AAExC,sDAAsE;AAA7D,0GAAA,SAAS,OAAA"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
+
import type { ResizeProps } from "../column-header/useTableColumnResize";
|
|
1
2
|
type SortDirection = "asc" | "desc" | "none";
|
|
2
3
|
/**
|
|
3
4
|
* TODO:
|
|
4
5
|
* - Consider "accessorKey" or similar to allow simple column definitions without a cell function.
|
|
5
6
|
* - Add "align" property for better control over text alignment in cells.
|
|
6
7
|
*/
|
|
7
|
-
type ColumnDefinition<T
|
|
8
|
+
type ColumnDefinition<T, DetailsT = Record<string, any>> = Pick<ResizeProps, "resizable" | "width" | "defaultWidth" | "autoWidth" | "minWidth" | "maxWidth" | "onWidthChange"> & {
|
|
8
9
|
id: string;
|
|
9
|
-
width?: number | string;
|
|
10
|
-
defaultWidth?: number | string;
|
|
11
|
-
minWidth?: number | string;
|
|
12
|
-
maxWidth?: number | string;
|
|
13
10
|
/**
|
|
14
11
|
* Text alignment for cells in this column.
|
|
15
12
|
*
|
|
@@ -21,9 +18,6 @@ type ColumnDefinition<T> = {
|
|
|
21
18
|
* Assigned to the cell's `th` element instead of `td` if true.
|
|
22
19
|
*
|
|
23
20
|
* Should be used for cells that act as row headers. Each row should have one rowheader, and only have one cell with `isRowHeader: true`,
|
|
24
|
-
*
|
|
25
|
-
* TODO: Not implemented
|
|
26
|
-
* - Add a generic tablecell component that can render either a td or th based on context or this prop.
|
|
27
21
|
*/
|
|
28
22
|
isRowHeader?: boolean;
|
|
29
23
|
/**
|
|
@@ -43,8 +37,12 @@ type ColumnDefinition<T> = {
|
|
|
43
37
|
* Use `sort` and `onSortChange` on the root component to control sort state.
|
|
44
38
|
*/
|
|
45
39
|
sortable?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Additional metadata that can be used for filtering or other purposes. Not used by the table itself.
|
|
42
|
+
*/
|
|
43
|
+
details?: DetailsT;
|
|
46
44
|
};
|
|
47
|
-
type ColumnDefinitions<T
|
|
45
|
+
type ColumnDefinitions<T, DetailsT = Record<string, any>> = ColumnDefinition<T, DetailsT>[];
|
|
48
46
|
/**
|
|
49
47
|
* A single sort entry representing a column's current sort state.
|
|
50
48
|
* Absent from the `sort` array means the column is unsorted.
|
|
@@ -9,10 +9,14 @@ type DataTableContextProps<T> = {
|
|
|
9
9
|
tableId: string;
|
|
10
10
|
showLoadingSkeletons: boolean;
|
|
11
11
|
onRowClick?: (rowId: string | number, event: React.MouseEvent<HTMLTableRowElement>) => void;
|
|
12
|
-
disableRowSelectionOnClick: boolean;
|
|
13
12
|
isLoading?: boolean;
|
|
14
13
|
showLoadingOverlay: boolean;
|
|
15
14
|
columns: UseColumnOptionsResult<T>["columns"];
|
|
15
|
+
/**
|
|
16
|
+
* Used to set exact colspan for detailsPanel, loadingState and emptyState.
|
|
17
|
+
* This is necessary to ensure that these components span the entire width of the table.
|
|
18
|
+
*/
|
|
19
|
+
fullWidthColSpan: number;
|
|
16
20
|
};
|
|
17
21
|
declare const DataTableContextProvider: import("react").FC<DataTableContextProps<any> & {
|
|
18
22
|
children: React.ReactNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTableRoot.context.js","sourceRoot":"","sources":["../../../../src/data/table/root/DataTableRoot.context.ts"],"names":[],"mappings":";;;AAAA,oDAA6D;
|
|
1
|
+
{"version":3,"file":"DataTableRoot.context.js","sourceRoot":"","sources":["../../../../src/data/table/root/DataTableRoot.context.ts"],"names":[],"mappings":";;;AAAA,oDAA6D;AA0B7D,MAAM,EAAE,QAAQ,EAAE,wBAAwB,EAAE,UAAU,EAAE,mBAAmB,EAAE,GAC3E,IAAA,6BAAmB,EAA6B;IAC9C,IAAI,EAAE,kBAAkB;IACxB,YAAY,EAAE,mDAAmD;CAClE,CAAC,CAAC;AAcH,4DAAwB;AAExB,kDAAmB;AAZrB,MAAM,EACJ,QAAQ,EAAE,yBAAyB,EACnC,UAAU,EAAE,oBAAoB,GACjC,GAAG,IAAA,6BAAmB,EAAkC;IACvD,IAAI,EAAE,mBAAmB;IACzB,YAAY,EACV,mIAAmI;CACtI,CAAC,CAAC;AAID,8DAAyB;AAEzB,oDAAoB"}
|