@tanstack/table-core 9.0.0-beta.7 → 9.0.0-beta.70
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/README.md +5 -1
- package/dist/core/cells/constructCell.d.ts +4 -6
- package/dist/core/cells/constructCell.js +4 -6
- package/dist/core/cells/coreCellsFeature.d.ts +1 -3
- package/dist/core/cells/coreCellsFeature.js +1 -2
- package/dist/core/cells/coreCellsFeature.types.d.ts +7 -9
- package/dist/core/cells/coreCellsFeature.utils.d.ts +5 -5
- package/dist/core/cells/coreCellsFeature.utils.js +1 -2
- package/dist/core/columns/constructColumn.d.ts +4 -6
- package/dist/core/columns/constructColumn.js +8 -9
- package/dist/core/columns/coreColumnsFeature.d.ts +1 -3
- package/dist/core/columns/coreColumnsFeature.js +13 -20
- package/dist/core/columns/coreColumnsFeature.types.d.ts +13 -15
- package/dist/core/columns/coreColumnsFeature.utils.d.ts +10 -12
- package/dist/core/columns/coreColumnsFeature.utils.js +19 -20
- package/dist/core/coreFeatures.d.ts +3 -3
- package/dist/core/coreFeatures.js +1 -2
- package/dist/core/headers/buildHeaderGroups.d.ts +3 -5
- package/dist/core/headers/buildHeaderGroups.js +99 -85
- package/dist/core/headers/constructHeader.d.ts +3 -5
- package/dist/core/headers/constructHeader.js +4 -6
- package/dist/core/headers/coreHeadersFeature.d.ts +1 -3
- package/dist/core/headers/coreHeadersFeature.js +9 -13
- package/dist/core/headers/coreHeadersFeature.types.d.ts +21 -11
- package/dist/core/headers/coreHeadersFeature.utils.d.ts +8 -8
- package/dist/core/headers/coreHeadersFeature.utils.js +14 -17
- package/dist/core/reactivity/coreReactivityFeature.types.d.ts +8 -3
- package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +1 -3
- package/dist/core/reactivity/coreReactivityFeature.utils.js +1 -2
- package/dist/core/reactivity/renderPhaseReactivity.d.ts +80 -0
- package/dist/core/reactivity/renderPhaseReactivity.js +95 -0
- package/dist/core/row-models/coreRowModelsFeature.d.ts +1 -3
- package/dist/core/row-models/coreRowModelsFeature.js +1 -2
- package/dist/core/row-models/coreRowModelsFeature.types.d.ts +7 -17
- package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +17 -19
- package/dist/core/row-models/coreRowModelsFeature.utils.js +9 -28
- package/dist/core/row-models/createCoreRowModel.d.ts +3 -5
- package/dist/core/row-models/createCoreRowModel.js +25 -24
- package/dist/core/rows/constructRow.d.ts +3 -5
- package/dist/core/rows/constructRow.js +9 -13
- package/dist/core/rows/coreRowsFeature.d.ts +1 -3
- package/dist/core/rows/coreRowsFeature.js +20 -5
- package/dist/core/rows/coreRowsFeature.types.d.ts +42 -10
- package/dist/core/rows/coreRowsFeature.utils.d.ts +26 -9
- package/dist/core/rows/coreRowsFeature.utils.js +65 -14
- package/dist/core/table/constructTable.d.ts +2 -4
- package/dist/core/table/constructTable.js +52 -23
- package/dist/core/table/coreTablesFeature.d.ts +1 -3
- package/dist/core/table/coreTablesFeature.js +1 -2
- package/dist/core/table/coreTablesFeature.types.d.ts +56 -25
- package/dist/core/table/coreTablesFeature.utils.d.ts +34 -12
- package/dist/core/table/coreTablesFeature.utils.js +69 -24
- package/dist/experimental-worker-plugin.d.ts +5 -0
- package/dist/experimental-worker-plugin.js +6 -0
- package/dist/features/cell-selection/cellSelectionFeature.d.ts +8 -0
- package/dist/features/cell-selection/cellSelectionFeature.js +128 -0
- package/dist/features/cell-selection/cellSelectionFeature.types.d.ts +296 -0
- package/dist/features/cell-selection/cellSelectionFeature.utils.d.ts +306 -0
- package/dist/features/cell-selection/cellSelectionFeature.utils.js +873 -0
- package/dist/features/cell-selection/cellSelectionGeometry.js +121 -0
- package/dist/features/cell-spanning/cellSpanningFeature.d.ts +13 -0
- package/dist/features/cell-spanning/cellSpanningFeature.js +47 -0
- package/dist/features/cell-spanning/cellSpanningFeature.types.d.ts +150 -0
- package/dist/features/cell-spanning/cellSpanningFeature.utils.d.ts +74 -0
- package/dist/features/cell-spanning/cellSpanningFeature.utils.js +262 -0
- package/dist/features/column-faceting/columnFacetingFeature.d.ts +1 -3
- package/dist/features/column-faceting/columnFacetingFeature.js +13 -20
- package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +15 -35
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +10 -12
- package/dist/features/column-faceting/columnFacetingFeature.utils.js +25 -14
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +2 -4
- package/dist/features/column-faceting/createFacetedMinMaxValues.js +9 -7
- package/dist/features/column-faceting/createFacetedRowModel.d.ts +3 -5
- package/dist/features/column-faceting/createFacetedRowModel.js +12 -17
- package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +2 -4
- package/dist/features/column-faceting/createFacetedUniqueValues.js +12 -9
- package/dist/features/column-filtering/columnFilteringFeature.d.ts +1 -3
- package/dist/features/column-filtering/columnFilteringFeature.js +4 -5
- package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +85 -33
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +19 -17
- package/dist/features/column-filtering/columnFilteringFeature.utils.js +33 -21
- package/dist/features/column-filtering/createFilteredRowModel.d.ts +11 -7
- package/dist/features/column-filtering/createFilteredRowModel.js +33 -29
- package/dist/features/column-filtering/filterFns.d.ts +208 -0
- package/dist/features/column-filtering/filterFns.js +374 -0
- package/dist/features/column-filtering/filterRowsUtils.js +4 -4
- package/dist/features/column-grouping/columnGroupingFeature.d.ts +2 -4
- package/dist/features/column-grouping/columnGroupingFeature.js +7 -20
- package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +14 -52
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +12 -51
- package/dist/features/column-grouping/columnGroupingFeature.utils.js +8 -61
- package/dist/features/column-grouping/createGroupedRowModel.d.ts +7 -7
- package/dist/features/column-grouping/createGroupedRowModel.js +69 -38
- package/dist/features/column-ordering/columnOrderingFeature.d.ts +1 -3
- package/dist/features/column-ordering/columnOrderingFeature.js +19 -24
- package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +28 -5
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +26 -16
- package/dist/features/column-ordering/columnOrderingFeature.utils.js +36 -18
- package/dist/features/column-pinning/columnPinningFeature.d.ts +7 -4
- package/dist/features/column-pinning/columnPinningFeature.js +126 -146
- package/dist/features/column-pinning/columnPinningFeature.types.d.ts +53 -44
- package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +100 -93
- package/dist/features/column-pinning/columnPinningFeature.utils.js +148 -150
- package/dist/features/column-resizing/columnResizingFeature.d.ts +1 -3
- package/dist/features/column-resizing/columnResizingFeature.js +1 -2
- package/dist/features/column-resizing/columnResizingFeature.types.d.ts +2 -7
- package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +7 -9
- package/dist/features/column-resizing/columnResizingFeature.utils.js +86 -48
- package/dist/features/column-sizing/columnSizingFeature.d.ts +1 -3
- package/dist/features/column-sizing/columnSizingFeature.js +35 -70
- package/dist/features/column-sizing/columnSizingFeature.types.d.ts +52 -11
- package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +43 -27
- package/dist/features/column-sizing/columnSizingFeature.utils.js +95 -54
- package/dist/features/column-visibility/columnVisibilityFeature.d.ts +1 -3
- package/dist/features/column-visibility/columnVisibilityFeature.js +26 -38
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +4 -6
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +20 -20
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js +32 -32
- package/dist/features/global-filtering/globalFilteringFeature.d.ts +1 -3
- package/dist/features/global-filtering/globalFilteringFeature.js +3 -4
- package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +4 -6
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +10 -13
- package/dist/features/global-filtering/globalFilteringFeature.utils.js +7 -8
- package/dist/features/row-aggregation/aggregationFns.d.ts +66 -0
- package/dist/features/row-aggregation/aggregationFns.js +279 -0
- package/dist/features/row-aggregation/rowAggregationFeature.d.ts +8 -0
- package/dist/features/row-aggregation/rowAggregationFeature.js +35 -0
- package/dist/features/row-aggregation/rowAggregationFeature.types.d.ts +193 -0
- package/dist/features/row-aggregation/rowAggregationFeature.types.js +11 -0
- package/dist/features/row-aggregation/rowAggregationFeature.utils.d.ts +46 -0
- package/dist/features/row-aggregation/rowAggregationFeature.utils.js +235 -0
- package/dist/features/row-expanding/createExpandedRowModel.d.ts +3 -5
- package/dist/features/row-expanding/createExpandedRowModel.js +9 -13
- package/dist/features/row-expanding/rowExpandingFeature.d.ts +1 -3
- package/dist/features/row-expanding/rowExpandingFeature.js +1 -2
- package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +6 -17
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +11 -16
- package/dist/features/row-expanding/rowExpandingFeature.utils.js +30 -33
- package/dist/features/row-pagination/createPaginatedRowModel.d.ts +3 -5
- package/dist/features/row-pagination/createPaginatedRowModel.js +7 -12
- package/dist/features/row-pagination/rowPaginationFeature.d.ts +1 -3
- package/dist/features/row-pagination/rowPaginationFeature.js +1 -2
- package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +5 -16
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +18 -20
- package/dist/features/row-pagination/rowPaginationFeature.utils.js +10 -17
- package/dist/features/row-pinning/rowPinningFeature.d.ts +1 -3
- package/dist/features/row-pinning/rowPinningFeature.js +5 -18
- package/dist/features/row-pinning/rowPinningFeature.types.d.ts +3 -5
- package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +8 -10
- package/dist/features/row-pinning/rowPinningFeature.utils.js +10 -16
- package/dist/features/row-selection/rowSelectionFeature.d.ts +1 -3
- package/dist/features/row-selection/rowSelectionFeature.js +68 -25
- package/dist/features/row-selection/rowSelectionFeature.types.d.ts +51 -15
- package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +60 -35
- package/dist/features/row-selection/rowSelectionFeature.utils.js +142 -89
- package/dist/features/row-sorting/createSortedRowModel.d.ts +11 -7
- package/dist/features/row-sorting/createSortedRowModel.js +71 -53
- package/dist/features/row-sorting/rowSortingFeature.d.ts +1 -3
- package/dist/features/row-sorting/rowSortingFeature.js +1 -2
- package/dist/features/row-sorting/rowSortingFeature.types.d.ts +54 -24
- package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +19 -22
- package/dist/features/row-sorting/rowSortingFeature.utils.js +36 -25
- package/dist/features/row-sorting/sortFns.d.ts +96 -0
- package/dist/features/row-sorting/sortFns.js +216 -0
- package/dist/features/stockFeatures.d.ts +7 -3
- package/dist/features/stockFeatures.js +7 -2
- package/dist/flex-render.d.ts +2 -4
- package/dist/flex-render.js +10 -3
- package/dist/helpers/columnHelper.d.ts +3 -5
- package/dist/helpers/columnHelper.js +1 -2
- package/dist/helpers/metaHelper.d.ts +25 -0
- package/dist/helpers/metaHelper.js +28 -0
- package/dist/helpers/tableFeatures.d.ts +35 -8
- package/dist/helpers/tableFeatures.js +33 -5
- package/dist/helpers/tableOptions.d.ts +1 -3
- package/dist/helpers/tableOptions.js +1 -2
- package/dist/index.d.ts +34 -27
- package/dist/index.js +10 -5
- package/dist/reactivity.d.ts +2 -1
- package/dist/reactivity.js +2 -1
- package/dist/static-functions.d.ts +11 -8
- package/dist/static-functions.js +11 -8
- package/dist/store-reactivity-bindings.d.ts +2 -4
- package/dist/store-reactivity-bindings.js +4 -5
- package/dist/types/Cell.d.ts +9 -5
- package/dist/types/Column.d.ts +13 -15
- package/dist/types/ColumnDef.d.ts +39 -21
- package/dist/types/Header.d.ts +3 -5
- package/dist/types/HeaderGroup.d.ts +3 -5
- package/dist/types/Row.d.ts +7 -7
- package/dist/types/RowModel.d.ts +11 -25
- package/dist/types/RowModelFns.d.ts +5 -7
- package/dist/types/Table.d.ts +29 -32
- package/dist/types/TableFeatures.d.ts +388 -24
- package/dist/types/TableOptions.d.ts +24 -14
- package/dist/types/TableState.d.ts +8 -8
- package/dist/types/type-utils.d.ts +10 -4
- package/dist/utils.d.ts +32 -26
- package/dist/utils.js +52 -32
- package/dist/worker/createTableWorker.d.ts +100 -0
- package/dist/worker/createTableWorker.js +185 -0
- package/dist/worker/createWorkerRowModel.d.ts +40 -0
- package/dist/worker/createWorkerRowModel.js +77 -0
- package/dist/worker/initTableWorker.d.ts +31 -0
- package/dist/worker/initTableWorker.js +99 -0
- package/dist/worker/rebuildRowModel.d.ts +11 -0
- package/dist/worker/rebuildRowModel.js +71 -0
- package/dist/worker/serializeRowModel.js +51 -0
- package/dist/worker/tableWorkerProtocol.d.ts +88 -0
- package/dist/worker/tableWorkerProtocol.js +26 -0
- package/package.json +12 -28
- package/skills/aggregation/SKILL.md +141 -0
- package/skills/api-not-found/SKILL.md +113 -0
- package/skills/cell-selection/SKILL.md +204 -0
- package/skills/cell-spanning/SKILL.md +162 -0
- package/skills/client-vs-server/SKILL.md +164 -0
- package/skills/column-faceting/SKILL.md +97 -0
- package/skills/column-filtering/SKILL.md +87 -0
- package/skills/column-ordering/SKILL.md +75 -0
- package/skills/column-pinning/SKILL.md +89 -0
- package/skills/column-resizing/SKILL.md +91 -0
- package/skills/column-sizing/SKILL.md +72 -0
- package/skills/column-visibility/SKILL.md +75 -0
- package/skills/core/SKILL.md +175 -0
- package/skills/custom-features/SKILL.md +235 -0
- package/skills/expanding/SKILL.md +80 -0
- package/skills/global-filtering/SKILL.md +84 -0
- package/skills/grouping/SKILL.md +51 -401
- package/skills/migrate-v8-to-v9/SKILL.md +275 -416
- package/skills/pagination/SKILL.md +37 -344
- package/skills/row-pinning/SKILL.md +47 -234
- package/skills/row-selection/SKILL.md +75 -302
- package/skills/sorting/SKILL.md +45 -303
- package/skills/table-features/SKILL.md +159 -0
- package/skills/typescript/SKILL.md +126 -0
- package/dist/core/cells/constructCell.cjs +0 -34
- package/dist/core/cells/constructCell.cjs.map +0 -1
- package/dist/core/cells/constructCell.d.cts +0 -17
- package/dist/core/cells/constructCell.js.map +0 -1
- package/dist/core/cells/coreCellsFeature.cjs +0 -21
- package/dist/core/cells/coreCellsFeature.cjs.map +0 -1
- package/dist/core/cells/coreCellsFeature.d.cts +0 -10
- package/dist/core/cells/coreCellsFeature.js.map +0 -1
- package/dist/core/cells/coreCellsFeature.types.d.cts +0 -57
- package/dist/core/cells/coreCellsFeature.utils.cjs +0 -57
- package/dist/core/cells/coreCellsFeature.utils.cjs.map +0 -1
- package/dist/core/cells/coreCellsFeature.utils.d.cts +0 -53
- package/dist/core/cells/coreCellsFeature.utils.js.map +0 -1
- package/dist/core/columns/constructColumn.cjs +0 -61
- package/dist/core/columns/constructColumn.cjs.map +0 -1
- package/dist/core/columns/constructColumn.d.cts +0 -16
- package/dist/core/columns/constructColumn.js.map +0 -1
- package/dist/core/columns/coreColumnsFeature.cjs +0 -70
- package/dist/core/columns/coreColumnsFeature.cjs.map +0 -1
- package/dist/core/columns/coreColumnsFeature.d.cts +0 -10
- package/dist/core/columns/coreColumnsFeature.js.map +0 -1
- package/dist/core/columns/coreColumnsFeature.types.d.cts +0 -94
- package/dist/core/columns/coreColumnsFeature.utils.cjs +0 -187
- package/dist/core/columns/coreColumnsFeature.utils.cjs.map +0 -1
- package/dist/core/columns/coreColumnsFeature.utils.d.cts +0 -119
- package/dist/core/columns/coreColumnsFeature.utils.js.map +0 -1
- package/dist/core/coreFeatures.cjs +0 -25
- package/dist/core/coreFeatures.cjs.map +0 -1
- package/dist/core/coreFeatures.d.cts +0 -26
- package/dist/core/coreFeatures.js.map +0 -1
- package/dist/core/headers/buildHeaderGroups.cjs +0 -103
- package/dist/core/headers/buildHeaderGroups.cjs.map +0 -1
- package/dist/core/headers/buildHeaderGroups.d.cts +0 -16
- package/dist/core/headers/buildHeaderGroups.js.map +0 -1
- package/dist/core/headers/constructHeader.cjs +0 -41
- package/dist/core/headers/constructHeader.cjs.map +0 -1
- package/dist/core/headers/constructHeader.d.cts +0 -22
- package/dist/core/headers/constructHeader.js.map +0 -1
- package/dist/core/headers/coreHeadersFeature.cjs +0 -55
- package/dist/core/headers/coreHeadersFeature.cjs.map +0 -1
- package/dist/core/headers/coreHeadersFeature.d.cts +0 -10
- package/dist/core/headers/coreHeadersFeature.js.map +0 -1
- package/dist/core/headers/coreHeadersFeature.types.d.cts +0 -106
- package/dist/core/headers/coreHeadersFeature.utils.cjs +0 -142
- package/dist/core/headers/coreHeadersFeature.utils.cjs.map +0 -1
- package/dist/core/headers/coreHeadersFeature.utils.d.cts +0 -85
- package/dist/core/headers/coreHeadersFeature.utils.js.map +0 -1
- package/dist/core/reactivity/coreReactivityFeature.types.d.cts +0 -48
- package/dist/core/reactivity/coreReactivityFeature.utils.cjs +0 -24
- package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +0 -1
- package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +0 -24
- package/dist/core/reactivity/coreReactivityFeature.utils.js.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.cjs +0 -27
- package/dist/core/row-models/coreRowModelsFeature.cjs.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.d.cts +0 -10
- package/dist/core/row-models/coreRowModelsFeature.js.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.types.d.cts +0 -41
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs +0 -215
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +0 -153
- package/dist/core/row-models/coreRowModelsFeature.utils.js.map +0 -1
- package/dist/core/row-models/createCoreRowModel.cjs +0 -52
- package/dist/core/row-models/createCoreRowModel.cjs.map +0 -1
- package/dist/core/row-models/createCoreRowModel.d.cts +0 -15
- package/dist/core/row-models/createCoreRowModel.js.map +0 -1
- package/dist/core/rows/constructRow.cjs +0 -44
- package/dist/core/rows/constructRow.cjs.map +0 -1
- package/dist/core/rows/constructRow.d.cts +0 -15
- package/dist/core/rows/constructRow.js.map +0 -1
- package/dist/core/rows/coreRowsFeature.cjs +0 -37
- package/dist/core/rows/coreRowsFeature.cjs.map +0 -1
- package/dist/core/rows/coreRowsFeature.d.cts +0 -10
- package/dist/core/rows/coreRowsFeature.js.map +0 -1
- package/dist/core/rows/coreRowsFeature.types.d.cts +0 -99
- package/dist/core/rows/coreRowsFeature.utils.cjs +0 -192
- package/dist/core/rows/coreRowsFeature.utils.cjs.map +0 -1
- package/dist/core/rows/coreRowsFeature.utils.d.cts +0 -127
- package/dist/core/rows/coreRowsFeature.utils.js.map +0 -1
- package/dist/core/table/constructTable.cjs +0 -118
- package/dist/core/table/constructTable.cjs.map +0 -1
- package/dist/core/table/constructTable.d.cts +0 -22
- package/dist/core/table/constructTable.js.map +0 -1
- package/dist/core/table/coreTablesFeature.cjs +0 -17
- package/dist/core/table/coreTablesFeature.cjs.map +0 -1
- package/dist/core/table/coreTablesFeature.d.cts +0 -10
- package/dist/core/table/coreTablesFeature.js.map +0 -1
- package/dist/core/table/coreTablesFeature.types.d.cts +0 -186
- package/dist/core/table/coreTablesFeature.utils.cjs +0 -96
- package/dist/core/table/coreTablesFeature.utils.cjs.map +0 -1
- package/dist/core/table/coreTablesFeature.utils.d.cts +0 -57
- package/dist/core/table/coreTablesFeature.utils.js.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.cjs +0 -61
- package/dist/features/column-faceting/columnFacetingFeature.cjs.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.d.cts +0 -10
- package/dist/features/column-faceting/columnFacetingFeature.js.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +0 -85
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +0 -103
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +0 -84
- package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +0 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +0 -44
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +0 -14
- package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +0 -1
- package/dist/features/column-faceting/createFacetedRowModel.cjs +0 -50
- package/dist/features/column-faceting/createFacetedRowModel.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedRowModel.d.cts +0 -15
- package/dist/features/column-faceting/createFacetedRowModel.js.map +0 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs +0 -41
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +0 -14
- package/dist/features/column-faceting/createFacetedUniqueValues.js.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.cjs +0 -50
- package/dist/features/column-filtering/columnFilteringFeature.cjs.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.d.cts +0 -10
- package/dist/features/column-filtering/columnFilteringFeature.js.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +0 -160
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +0 -212
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +0 -143
- package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +0 -1
- package/dist/features/column-filtering/createFilteredRowModel.cjs +0 -110
- package/dist/features/column-filtering/createFilteredRowModel.cjs.map +0 -1
- package/dist/features/column-filtering/createFilteredRowModel.d.cts +0 -16
- package/dist/features/column-filtering/createFilteredRowModel.js.map +0 -1
- package/dist/features/column-filtering/filterRowsUtils.cjs +0 -81
- package/dist/features/column-filtering/filterRowsUtils.cjs.map +0 -1
- package/dist/features/column-filtering/filterRowsUtils.js.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.cjs +0 -67
- package/dist/features/column-grouping/columnGroupingFeature.cjs.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.d.cts +0 -10
- package/dist/features/column-grouping/columnGroupingFeature.js.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +0 -165
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +0 -250
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +0 -190
- package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +0 -1
- package/dist/features/column-grouping/createGroupedRowModel.cjs +0 -119
- package/dist/features/column-grouping/createGroupedRowModel.cjs.map +0 -1
- package/dist/features/column-grouping/createGroupedRowModel.d.cts +0 -16
- package/dist/features/column-grouping/createGroupedRowModel.js.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.cjs +0 -58
- package/dist/features/column-ordering/columnOrderingFeature.cjs.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.d.cts +0 -10
- package/dist/features/column-ordering/columnOrderingFeature.js.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +0 -56
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +0 -172
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +0 -107
- package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.cjs +0 -221
- package/dist/features/column-pinning/columnPinningFeature.cjs.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.d.cts +0 -10
- package/dist/features/column-pinning/columnPinningFeature.js.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.types.d.cts +0 -178
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs +0 -585
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +0 -375
- package/dist/features/column-pinning/columnPinningFeature.utils.js.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.cjs +0 -41
- package/dist/features/column-resizing/columnResizingFeature.cjs.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.d.cts +0 -10
- package/dist/features/column-resizing/columnResizingFeature.js.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.types.d.cts +0 -81
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs +0 -246
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +0 -109
- package/dist/features/column-resizing/columnResizingFeature.utils.js.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.cjs +0 -124
- package/dist/features/column-sizing/columnSizingFeature.cjs.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.d.cts +0 -10
- package/dist/features/column-sizing/columnSizingFeature.js.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.types.d.cts +0 -96
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs +0 -256
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +0 -182
- package/dist/features/column-sizing/columnSizingFeature.utils.js.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.cjs +0 -94
- package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.d.cts +0 -10
- package/dist/features/column-visibility/columnVisibilityFeature.js.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +0 -97
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +0 -283
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +0 -189
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.cjs +0 -41
- package/dist/features/global-filtering/globalFilteringFeature.cjs.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.d.cts +0 -10
- package/dist/features/global-filtering/globalFilteringFeature.js.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +0 -71
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +0 -88
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +0 -74
- package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +0 -1
- package/dist/features/row-expanding/createExpandedRowModel.cjs +0 -59
- package/dist/features/row-expanding/createExpandedRowModel.cjs.map +0 -1
- package/dist/features/row-expanding/createExpandedRowModel.d.cts +0 -21
- package/dist/features/row-expanding/createExpandedRowModel.js.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.cjs +0 -47
- package/dist/features/row-expanding/rowExpandingFeature.cjs.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.d.cts +0 -10
- package/dist/features/row-expanding/rowExpandingFeature.js.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +0 -127
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +0 -281
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +0 -191
- package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +0 -1
- package/dist/features/row-pagination/createPaginatedRowModel.cjs +0 -62
- package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +0 -1
- package/dist/features/row-pagination/createPaginatedRowModel.d.cts +0 -15
- package/dist/features/row-pagination/createPaginatedRowModel.js.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.cjs +0 -45
- package/dist/features/row-pagination/rowPaginationFeature.cjs.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.d.cts +0 -10
- package/dist/features/row-pagination/rowPaginationFeature.js.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +0 -135
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +0 -312
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +0 -218
- package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.cjs +0 -67
- package/dist/features/row-pinning/rowPinningFeature.cjs.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.d.cts +0 -10
- package/dist/features/row-pinning/rowPinningFeature.js.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.types.d.cts +0 -83
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs +0 -229
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +0 -143
- package/dist/features/row-pinning/rowPinningFeature.utils.js.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.cjs +0 -75
- package/dist/features/row-selection/rowSelectionFeature.cjs.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.d.cts +0 -10
- package/dist/features/row-selection/rowSelectionFeature.js.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.types.d.cts +0 -136
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs +0 -514
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +0 -318
- package/dist/features/row-selection/rowSelectionFeature.utils.js.map +0 -1
- package/dist/features/row-sorting/createSortedRowModel.cjs +0 -95
- package/dist/features/row-sorting/createSortedRowModel.cjs.map +0 -1
- package/dist/features/row-sorting/createSortedRowModel.d.cts +0 -16
- package/dist/features/row-sorting/createSortedRowModel.js.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.cjs +0 -55
- package/dist/features/row-sorting/rowSortingFeature.cjs.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.d.cts +0 -10
- package/dist/features/row-sorting/rowSortingFeature.js.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.types.d.cts +0 -188
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs +0 -305
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +0 -193
- package/dist/features/row-sorting/rowSortingFeature.utils.js.map +0 -1
- package/dist/features/stockFeatures.cjs +0 -41
- package/dist/features/stockFeatures.cjs.map +0 -1
- package/dist/features/stockFeatures.d.cts +0 -41
- package/dist/features/stockFeatures.js.map +0 -1
- package/dist/flex-render.cjs +0 -29
- package/dist/flex-render.cjs.map +0 -1
- package/dist/flex-render.d.cts +0 -34
- package/dist/flex-render.js.map +0 -1
- package/dist/fns/aggregationFns.cjs +0 -161
- package/dist/fns/aggregationFns.cjs.map +0 -1
- package/dist/fns/aggregationFns.d.cts +0 -85
- package/dist/fns/aggregationFns.d.ts +0 -85
- package/dist/fns/aggregationFns.js +0 -151
- package/dist/fns/aggregationFns.js.map +0 -1
- package/dist/fns/filterFns.cjs +0 -201
- package/dist/fns/filterFns.cjs.map +0 -1
- package/dist/fns/filterFns.d.cts +0 -167
- package/dist/fns/filterFns.d.ts +0 -167
- package/dist/fns/filterFns.js +0 -185
- package/dist/fns/filterFns.js.map +0 -1
- package/dist/fns/sortFns.cjs +0 -130
- package/dist/fns/sortFns.cjs.map +0 -1
- package/dist/fns/sortFns.d.cts +0 -65
- package/dist/fns/sortFns.d.ts +0 -65
- package/dist/fns/sortFns.js +0 -122
- package/dist/fns/sortFns.js.map +0 -1
- package/dist/helpers/columnHelper.cjs +0 -41
- package/dist/helpers/columnHelper.cjs.map +0 -1
- package/dist/helpers/columnHelper.d.cts +0 -71
- package/dist/helpers/columnHelper.js.map +0 -1
- package/dist/helpers/tableFeatures.cjs +0 -20
- package/dist/helpers/tableFeatures.cjs.map +0 -1
- package/dist/helpers/tableFeatures.d.cts +0 -18
- package/dist/helpers/tableFeatures.js.map +0 -1
- package/dist/helpers/tableOptions.cjs +0 -15
- package/dist/helpers/tableOptions.cjs.map +0 -1
- package/dist/helpers/tableOptions.d.cts +0 -57
- package/dist/helpers/tableOptions.js.map +0 -1
- package/dist/index.cjs +0 -133
- package/dist/index.d.cts +0 -78
- package/dist/reactivity.cjs +0 -4
- package/dist/reactivity.d.cts +0 -3
- package/dist/static-functions.cjs +0 -263
- package/dist/static-functions.d.cts +0 -21
- package/dist/store-reactivity-bindings.cjs +0 -44
- package/dist/store-reactivity-bindings.cjs.map +0 -1
- package/dist/store-reactivity-bindings.d.cts +0 -22
- package/dist/store-reactivity-bindings.js.map +0 -1
- package/dist/types/Cell.d.cts +0 -14
- package/dist/types/Column.d.cts +0 -36
- package/dist/types/ColumnDef.d.cts +0 -109
- package/dist/types/Header.d.cts +0 -16
- package/dist/types/HeaderGroup.d.cts +0 -10
- package/dist/types/Row.d.cts +0 -26
- package/dist/types/RowModel.d.cts +0 -36
- package/dist/types/RowModelFns.d.cts +0 -18
- package/dist/types/Table.d.cts +0 -70
- package/dist/types/TableFeatures.d.cts +0 -53
- package/dist/types/TableOptions.d.cts +0 -69
- package/dist/types/TableState.d.cts +0 -48
- package/dist/types/type-utils.d.cts +0 -23
- package/dist/utils.cjs +0 -243
- package/dist/utils.cjs.map +0 -1
- package/dist/utils.d.cts +0 -114
- package/dist/utils.js.map +0 -1
- package/skills/column-definitions/SKILL.md +0 -333
- package/skills/column-layout/SKILL.md +0 -328
- package/skills/column-layout/references/subsystems.md +0 -220
- package/skills/customizing-feature-behavior/SKILL.md +0 -416
- package/skills/filtering/SKILL.md +0 -357
- package/skills/filtering/references/faceting-and-fuzzy.md +0 -191
- package/skills/row-expanding/SKILL.md +0 -348
- package/skills/setup/SKILL.md +0 -400
- package/skills/state-management/SKILL.md +0 -388
- package/src/core/cells/constructCell.ts +0 -55
- package/src/core/cells/coreCellsFeature.ts +0 -27
- package/src/core/cells/coreCellsFeature.types.ts +0 -68
- package/src/core/cells/coreCellsFeature.utils.ts +0 -68
- package/src/core/columns/constructColumn.ts +0 -119
- package/src/core/columns/coreColumnsFeature.ts +0 -73
- package/src/core/columns/coreColumnsFeature.types.ts +0 -108
- package/src/core/columns/coreColumnsFeature.utils.ts +0 -275
- package/src/core/coreFeatures.ts +0 -31
- package/src/core/headers/buildHeaderGroups.ts +0 -182
- package/src/core/headers/constructHeader.ts +0 -67
- package/src/core/headers/coreHeadersFeature.ts +0 -56
- package/src/core/headers/coreHeadersFeature.types.ts +0 -125
- package/src/core/headers/coreHeadersFeature.utils.ts +0 -200
- package/src/core/reactivity/coreReactivityFeature.types.ts +0 -56
- package/src/core/reactivity/coreReactivityFeature.utils.ts +0 -44
- package/src/core/row-models/coreRowModelsFeature.ts +0 -62
- package/src/core/row-models/coreRowModelsFeature.types.ts +0 -64
- package/src/core/row-models/coreRowModelsFeature.utils.ts +0 -272
- package/src/core/row-models/createCoreRowModel.ts +0 -93
- package/src/core/rows/constructRow.ts +0 -66
- package/src/core/rows/coreRowsFeature.ts +0 -62
- package/src/core/rows/coreRowsFeature.types.ts +0 -117
- package/src/core/rows/coreRowsFeature.utils.ts +0 -264
- package/src/core/table/constructTable.ts +0 -172
- package/src/core/table/coreTablesFeature.ts +0 -19
- package/src/core/table/coreTablesFeature.types.ts +0 -216
- package/src/core/table/coreTablesFeature.utils.ts +0 -131
- package/src/features/column-faceting/columnFacetingFeature.ts +0 -89
- package/src/features/column-faceting/columnFacetingFeature.types.ts +0 -109
- package/src/features/column-faceting/columnFacetingFeature.utils.ts +0 -145
- package/src/features/column-faceting/createFacetedMinMaxValues.ts +0 -66
- package/src/features/column-faceting/createFacetedRowModel.ts +0 -85
- package/src/features/column-faceting/createFacetedUniqueValues.ts +0 -66
- package/src/features/column-filtering/columnFilteringFeature.ts +0 -86
- package/src/features/column-filtering/columnFilteringFeature.types.ts +0 -232
- package/src/features/column-filtering/columnFilteringFeature.utils.ts +0 -331
- package/src/features/column-filtering/createFilteredRowModel.ts +0 -183
- package/src/features/column-filtering/filterRowsUtils.ts +0 -157
- package/src/features/column-grouping/columnGroupingFeature.ts +0 -115
- package/src/features/column-grouping/columnGroupingFeature.types.ts +0 -226
- package/src/features/column-grouping/columnGroupingFeature.utils.ts +0 -354
- package/src/features/column-grouping/createGroupedRowModel.ts +0 -220
- package/src/features/column-ordering/columnOrderingFeature.ts +0 -73
- package/src/features/column-ordering/columnOrderingFeature.types.ts +0 -60
- package/src/features/column-ordering/columnOrderingFeature.utils.ts +0 -241
- package/src/features/column-pinning/columnPinningFeature.ts +0 -316
- package/src/features/column-pinning/columnPinningFeature.types.ts +0 -192
- package/src/features/column-pinning/columnPinningFeature.utils.ts +0 -908
- package/src/features/column-resizing/columnResizingFeature.ts +0 -65
- package/src/features/column-resizing/columnResizingFeature.types.ts +0 -89
- package/src/features/column-resizing/columnResizingFeature.utils.ts +0 -364
- package/src/features/column-sizing/columnSizingFeature.ts +0 -145
- package/src/features/column-sizing/columnSizingFeature.types.ts +0 -102
- package/src/features/column-sizing/columnSizingFeature.utils.ts +0 -381
- package/src/features/column-visibility/columnVisibilityFeature.ts +0 -122
- package/src/features/column-visibility/columnVisibilityFeature.types.ts +0 -112
- package/src/features/column-visibility/columnVisibilityFeature.utils.ts +0 -384
- package/src/features/global-filtering/globalFilteringFeature.ts +0 -65
- package/src/features/global-filtering/globalFilteringFeature.types.ts +0 -91
- package/src/features/global-filtering/globalFilteringFeature.utils.ts +0 -118
- package/src/features/row-expanding/createExpandedRowModel.ts +0 -82
- package/src/features/row-expanding/rowExpandingFeature.ts +0 -94
- package/src/features/row-expanding/rowExpandingFeature.types.ts +0 -147
- package/src/features/row-expanding/rowExpandingFeature.utils.ts +0 -374
- package/src/features/row-pagination/createPaginatedRowModel.ts +0 -83
- package/src/features/row-pagination/rowPaginationFeature.ts +0 -95
- package/src/features/row-pagination/rowPaginationFeature.types.ts +0 -152
- package/src/features/row-pagination/rowPaginationFeature.utils.ts +0 -400
- package/src/features/row-pinning/rowPinningFeature.ts +0 -97
- package/src/features/row-pinning/rowPinningFeature.types.ts +0 -95
- package/src/features/row-pinning/rowPinningFeature.utils.ts +0 -323
- package/src/features/row-selection/rowSelectionFeature.ts +0 -140
- package/src/features/row-selection/rowSelectionFeature.types.ts +0 -151
- package/src/features/row-selection/rowSelectionFeature.utils.ts +0 -745
- package/src/features/row-sorting/createSortedRowModel.ts +0 -157
- package/src/features/row-sorting/rowSortingFeature.ts +0 -103
- package/src/features/row-sorting/rowSortingFeature.types.ts +0 -235
- package/src/features/row-sorting/rowSortingFeature.utils.ts +0 -489
- package/src/features/stockFeatures.ts +0 -53
- package/src/flex-render.ts +0 -70
- package/src/fns/aggregationFns.ts +0 -245
- package/src/fns/filterFns.ts +0 -382
- package/src/fns/sortFns.ts +0 -240
- package/src/helpers/columnHelper.ts +0 -122
- package/src/helpers/tableFeatures.ts +0 -24
- package/src/helpers/tableOptions.ts +0 -117
- package/src/index.ts +0 -138
- package/src/process-env.d.ts +0 -6
- package/src/reactivity.ts +0 -2
- package/src/static-functions.ts +0 -31
- package/src/store-reactivity-bindings.ts +0 -47
- package/src/types/Cell.ts +0 -21
- package/src/types/Column.ts +0 -51
- package/src/types/ColumnDef.ts +0 -228
- package/src/types/Header.ts +0 -23
- package/src/types/HeaderGroup.ts +0 -13
- package/src/types/Row.ts +0 -34
- package/src/types/RowModel.ts +0 -98
- package/src/types/RowModelFns.ts +0 -32
- package/src/types/Table.ts +0 -91
- package/src/types/TableFeatures.ts +0 -101
- package/src/types/TableOptions.ts +0 -101
- package/src/types/TableState.ts +0 -47
- package/src/types/type-utils.ts +0 -84
- package/src/utils.ts +0 -441
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import type { OnChangeFn, Updater } from '../../types/type-utils'
|
|
2
|
-
import type { ColumnPinningPosition } from '../column-pinning/columnPinningFeature.types'
|
|
3
|
-
|
|
4
|
-
export interface TableState_ColumnSizing {
|
|
5
|
-
columnSizing: ColumnSizingState
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export type ColumnSizingState = Record<string, number>
|
|
9
|
-
|
|
10
|
-
export interface TableOptions_ColumnSizing {
|
|
11
|
-
/**
|
|
12
|
-
* Called with an updater when committed column sizing state changes. Pair
|
|
13
|
-
* this with `state.columnSizing` when using external state; external atoms
|
|
14
|
-
* can own the slice without this callback.
|
|
15
|
-
*/
|
|
16
|
-
onColumnSizingChange?: OnChangeFn<ColumnSizingState>
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export type ColumnSizingDefaultOptions = Pick<
|
|
20
|
-
TableOptions_ColumnSizing,
|
|
21
|
-
'onColumnSizingChange'
|
|
22
|
-
>
|
|
23
|
-
|
|
24
|
-
export interface Table_ColumnSizing {
|
|
25
|
-
/**
|
|
26
|
-
* Sums the current sizes of visible center-region leaf columns.
|
|
27
|
-
*/
|
|
28
|
-
getCenterTotalSize: () => number
|
|
29
|
-
/**
|
|
30
|
-
* Sums the current sizes of visible left-pinned leaf columns.
|
|
31
|
-
*/
|
|
32
|
-
getLeftTotalSize: () => number
|
|
33
|
-
/**
|
|
34
|
-
* Sums the current sizes of visible right-pinned leaf columns.
|
|
35
|
-
*/
|
|
36
|
-
getRightTotalSize: () => number
|
|
37
|
-
/**
|
|
38
|
-
* Sums the current sizes of all visible leaf columns.
|
|
39
|
-
*/
|
|
40
|
-
getTotalSize: () => number
|
|
41
|
-
/**
|
|
42
|
-
* Resets column sizing to `initialState.columnSizing`. Pass `true` to reset
|
|
43
|
-
* to the feature default of `{}`.
|
|
44
|
-
*/
|
|
45
|
-
resetColumnSizing: (defaultState?: boolean) => void
|
|
46
|
-
/**
|
|
47
|
-
* Updates committed column sizing state with a next map or updater function.
|
|
48
|
-
*/
|
|
49
|
-
setColumnSizing: (updater: Updater<ColumnSizingState>) => void
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
export interface ColumnDef_ColumnSizing {
|
|
53
|
-
/**
|
|
54
|
-
* Upper bound used when resolving this column's size.
|
|
55
|
-
*/
|
|
56
|
-
maxSize?: number
|
|
57
|
-
/**
|
|
58
|
-
* Lower bound used when resolving this column's size.
|
|
59
|
-
*/
|
|
60
|
-
minSize?: number
|
|
61
|
-
/**
|
|
62
|
-
* Initial size used before column sizing state overrides it.
|
|
63
|
-
*/
|
|
64
|
-
size?: number
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
export interface Column_ColumnSizing {
|
|
68
|
-
/**
|
|
69
|
-
* Measures the offset from this column's end edge to the end of its region.
|
|
70
|
-
*
|
|
71
|
-
* Pass a pinned region to measure within that region. The value is the sum
|
|
72
|
-
* of visible leaf column sizes after this column.
|
|
73
|
-
*/
|
|
74
|
-
getAfter: (position?: ColumnPinningPosition | 'center') => number
|
|
75
|
-
/**
|
|
76
|
-
* Resolves the column's current size after state and min/max constraints.
|
|
77
|
-
*/
|
|
78
|
-
getSize: () => number
|
|
79
|
-
/**
|
|
80
|
-
* Measures the offset from the start of this column's region to its start
|
|
81
|
-
* edge.
|
|
82
|
-
*
|
|
83
|
-
* Pass a pinned region to measure within that region. The value is the sum
|
|
84
|
-
* of visible leaf column sizes before this column.
|
|
85
|
-
*/
|
|
86
|
-
getStart: (position?: ColumnPinningPosition | 'center') => number
|
|
87
|
-
/**
|
|
88
|
-
* Resets the column to its initial size.
|
|
89
|
-
*/
|
|
90
|
-
resetSize: () => void
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
export interface Header_ColumnSizing {
|
|
94
|
-
/**
|
|
95
|
-
* Computes this header's rendered size from its leaf columns.
|
|
96
|
-
*/
|
|
97
|
-
getSize: () => number
|
|
98
|
-
/**
|
|
99
|
-
* Returns the offset measurement along the row-axis (usually the x-axis for standard tables) for the header. This is effectively a sum of the offset measurements of all preceding headers.
|
|
100
|
-
*/
|
|
101
|
-
getStart: (position?: ColumnPinningPosition) => number
|
|
102
|
-
}
|
|
@@ -1,381 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
table_getCenterHeaderGroups,
|
|
3
|
-
table_getLeftHeaderGroups,
|
|
4
|
-
table_getPinnedVisibleLeafColumns,
|
|
5
|
-
table_getRightHeaderGroups,
|
|
6
|
-
} from '../column-pinning/columnPinningFeature.utils'
|
|
7
|
-
import { column_getIndex } from '../column-ordering/columnOrderingFeature.utils'
|
|
8
|
-
import { callMemoOrStaticFn, cloneState } from '../../utils'
|
|
9
|
-
import type { ColumnPinningPosition } from '../column-pinning/columnPinningFeature.types'
|
|
10
|
-
import type { CellData, RowData, Updater } from '../../types/type-utils'
|
|
11
|
-
import type { TableFeatures } from '../../types/TableFeatures'
|
|
12
|
-
import type { Table_Internal } from '../../types/Table'
|
|
13
|
-
import type { Header } from '../../types/Header'
|
|
14
|
-
import type { Column_Internal } from '../../types/Column'
|
|
15
|
-
import type { ColumnSizingState } from './columnSizingFeature.types'
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Creates the default committed column sizing state.
|
|
19
|
-
*
|
|
20
|
-
* The feature default is an empty map, so columns fall back to their column def
|
|
21
|
-
* size or the built-in sizing defaults.
|
|
22
|
-
*
|
|
23
|
-
* @example
|
|
24
|
-
* ```ts
|
|
25
|
-
* const sizing = getDefaultColumnSizingState()
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
28
|
-
export function getDefaultColumnSizingState(): ColumnSizingState {
|
|
29
|
-
return {}
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Creates the built-in sizing defaults for column definitions.
|
|
34
|
-
*
|
|
35
|
-
* Columns default to `size: 150`, `minSize: 20`, and
|
|
36
|
-
* `maxSize: Number.MAX_SAFE_INTEGER` unless overridden by column definitions or
|
|
37
|
-
* table defaults.
|
|
38
|
-
*
|
|
39
|
-
* @example
|
|
40
|
-
* ```ts
|
|
41
|
-
* const defaults = getDefaultColumnSizingColumnDef()
|
|
42
|
-
* ```
|
|
43
|
-
*/
|
|
44
|
-
export function getDefaultColumnSizingColumnDef() {
|
|
45
|
-
return {
|
|
46
|
-
size: 150,
|
|
47
|
-
minSize: 20,
|
|
48
|
-
maxSize: Number.MAX_SAFE_INTEGER,
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Resolves a column's current pixel size.
|
|
54
|
-
*
|
|
55
|
-
* Committed `state.columnSizing[column.id]` wins over `columnDef.size`, then the
|
|
56
|
-
* built-in default size. The result is clamped between min and max size.
|
|
57
|
-
*
|
|
58
|
-
* @example
|
|
59
|
-
* ```ts
|
|
60
|
-
* const width = column_getSize(column)
|
|
61
|
-
* ```
|
|
62
|
-
*/
|
|
63
|
-
export function column_getSize<
|
|
64
|
-
TFeatures extends TableFeatures,
|
|
65
|
-
TData extends RowData,
|
|
66
|
-
TValue extends CellData = CellData,
|
|
67
|
-
>(column: Column_Internal<TFeatures, TData, TValue>): number {
|
|
68
|
-
const defaultSizes = getDefaultColumnSizingColumnDef()
|
|
69
|
-
const columnSize = column.table.atoms.columnSizing?.get()?.[column.id]
|
|
70
|
-
|
|
71
|
-
return Math.min(
|
|
72
|
-
Math.max(
|
|
73
|
-
column.columnDef.minSize ?? defaultSizes.minSize,
|
|
74
|
-
columnSize ?? column.columnDef.size ?? defaultSizes.size,
|
|
75
|
-
),
|
|
76
|
-
column.columnDef.maxSize ?? defaultSizes.maxSize,
|
|
77
|
-
)
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
/**
|
|
81
|
-
* Computes the offset from the start edge of a pinning region to this column.
|
|
82
|
-
*
|
|
83
|
-
* The value is the sum of all previous visible leaf column sizes in the
|
|
84
|
-
* requested `'left'`, `'center'`, or `'right'` region.
|
|
85
|
-
*
|
|
86
|
-
* @example
|
|
87
|
-
* ```ts
|
|
88
|
-
* const leftOffset = column_getStart(column, 'left')
|
|
89
|
-
* ```
|
|
90
|
-
*/
|
|
91
|
-
export function column_getStart<
|
|
92
|
-
TFeatures extends TableFeatures,
|
|
93
|
-
TData extends RowData,
|
|
94
|
-
TValue extends CellData = CellData,
|
|
95
|
-
>(
|
|
96
|
-
column: Column_Internal<TFeatures, TData, TValue>,
|
|
97
|
-
position: ColumnPinningPosition | 'center',
|
|
98
|
-
): number {
|
|
99
|
-
const index = callMemoOrStaticFn(
|
|
100
|
-
column,
|
|
101
|
-
'getIndex',
|
|
102
|
-
column_getIndex,
|
|
103
|
-
position,
|
|
104
|
-
)
|
|
105
|
-
if (index <= 0) return 0
|
|
106
|
-
|
|
107
|
-
const visibleLeafColumns = callMemoOrStaticFn(
|
|
108
|
-
column.table,
|
|
109
|
-
'getPinnedVisibleLeafColumns',
|
|
110
|
-
table_getPinnedVisibleLeafColumns,
|
|
111
|
-
position,
|
|
112
|
-
)
|
|
113
|
-
|
|
114
|
-
const prevColumn = visibleLeafColumns[index - 1]!
|
|
115
|
-
return (
|
|
116
|
-
callMemoOrStaticFn(prevColumn, 'getStart', column_getStart, position) +
|
|
117
|
-
callMemoOrStaticFn(prevColumn, 'getSize', column_getSize)
|
|
118
|
-
)
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
/**
|
|
122
|
-
* Computes the offset from the end edge of a pinning region after this column.
|
|
123
|
-
*
|
|
124
|
-
* The value is the sum of all following visible leaf column sizes in the
|
|
125
|
-
* requested region.
|
|
126
|
-
*
|
|
127
|
-
* @example
|
|
128
|
-
* ```ts
|
|
129
|
-
* const rightOffset = column_getAfter(column, 'right')
|
|
130
|
-
* ```
|
|
131
|
-
*/
|
|
132
|
-
export function column_getAfter<
|
|
133
|
-
TFeatures extends TableFeatures,
|
|
134
|
-
TData extends RowData,
|
|
135
|
-
TValue extends CellData = CellData,
|
|
136
|
-
>(
|
|
137
|
-
column: Column_Internal<TFeatures, TData, TValue>,
|
|
138
|
-
position: ColumnPinningPosition | 'center',
|
|
139
|
-
): number {
|
|
140
|
-
const visibleLeafColumns = callMemoOrStaticFn(
|
|
141
|
-
column.table,
|
|
142
|
-
'getPinnedVisibleLeafColumns',
|
|
143
|
-
table_getPinnedVisibleLeafColumns,
|
|
144
|
-
position,
|
|
145
|
-
)
|
|
146
|
-
const index = callMemoOrStaticFn(
|
|
147
|
-
column,
|
|
148
|
-
'getIndex',
|
|
149
|
-
column_getIndex,
|
|
150
|
-
position,
|
|
151
|
-
)
|
|
152
|
-
if (index < 0 || index >= visibleLeafColumns.length - 1) return 0
|
|
153
|
-
|
|
154
|
-
const nextColumn = visibleLeafColumns[index + 1]!
|
|
155
|
-
return (
|
|
156
|
-
callMemoOrStaticFn(nextColumn, 'getSize', column_getSize) +
|
|
157
|
-
callMemoOrStaticFn(nextColumn, 'getAfter', column_getAfter, position)
|
|
158
|
-
)
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
/**
|
|
162
|
-
* Removes this column's committed size override.
|
|
163
|
-
*
|
|
164
|
-
* After reset, the column resolves size from `columnDef.size` or built-in
|
|
165
|
-
* defaults again.
|
|
166
|
-
*
|
|
167
|
-
* @example
|
|
168
|
-
* ```ts
|
|
169
|
-
* column_resetSize(column)
|
|
170
|
-
* ```
|
|
171
|
-
*/
|
|
172
|
-
export function column_resetSize<
|
|
173
|
-
TFeatures extends TableFeatures,
|
|
174
|
-
TData extends RowData,
|
|
175
|
-
TValue extends CellData = CellData,
|
|
176
|
-
>(column: Column_Internal<TFeatures, TData, TValue>) {
|
|
177
|
-
table_setColumnSizing(column.table, ({ [column.id]: _, ...rest }) => {
|
|
178
|
-
return rest
|
|
179
|
-
})
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
/**
|
|
183
|
-
* Computes a header's rendered size from its leaf headers.
|
|
184
|
-
*
|
|
185
|
-
* Group headers sum the sizes of all descendant leaf columns. Leaf headers use
|
|
186
|
-
* their column's current size.
|
|
187
|
-
*
|
|
188
|
-
* @example
|
|
189
|
-
* ```ts
|
|
190
|
-
* const width = header_getSize(header)
|
|
191
|
-
* ```
|
|
192
|
-
*/
|
|
193
|
-
export function header_getSize<
|
|
194
|
-
TFeatures extends TableFeatures,
|
|
195
|
-
TData extends RowData,
|
|
196
|
-
TValue extends CellData = CellData,
|
|
197
|
-
>(header: Header<TFeatures, TData, TValue>) {
|
|
198
|
-
let sum = 0
|
|
199
|
-
|
|
200
|
-
const recurse = (h: Header<TFeatures, TData, TValue>) => {
|
|
201
|
-
if (h.subHeaders.length) {
|
|
202
|
-
h.subHeaders.forEach(recurse)
|
|
203
|
-
} else {
|
|
204
|
-
sum += column_getSize(h.column)
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
recurse(header)
|
|
209
|
-
|
|
210
|
-
return sum
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
/**
|
|
214
|
-
* Computes a header's offset from the start of its header group.
|
|
215
|
-
*
|
|
216
|
-
* The offset is the previous sibling header's start plus size, or `0` for the
|
|
217
|
-
* first header in the group.
|
|
218
|
-
*
|
|
219
|
-
* @example
|
|
220
|
-
* ```ts
|
|
221
|
-
* const offset = header_getStart(header)
|
|
222
|
-
* ```
|
|
223
|
-
*/
|
|
224
|
-
export function header_getStart<
|
|
225
|
-
TFeatures extends TableFeatures,
|
|
226
|
-
TData extends RowData,
|
|
227
|
-
TValue extends CellData = CellData,
|
|
228
|
-
>(header: Header<TFeatures, TData, TValue>): number {
|
|
229
|
-
if (header.index > 0) {
|
|
230
|
-
const prevSiblingHeader = header.headerGroup?.headers[header.index - 1]
|
|
231
|
-
if (prevSiblingHeader) {
|
|
232
|
-
return (
|
|
233
|
-
callMemoOrStaticFn(prevSiblingHeader, 'getStart', header_getStart) +
|
|
234
|
-
callMemoOrStaticFn(prevSiblingHeader, 'getSize', header_getSize)
|
|
235
|
-
)
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
return 0
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
// Table APIs
|
|
243
|
-
|
|
244
|
-
/**
|
|
245
|
-
* Routes a committed column sizing updater through the table's sizing handler.
|
|
246
|
-
*
|
|
247
|
-
* The updater may be a next size map or a function of the previous map,
|
|
248
|
-
* matching the instance `table.setColumnSizing` behavior.
|
|
249
|
-
*
|
|
250
|
-
* @example
|
|
251
|
-
* ```ts
|
|
252
|
-
* table_setColumnSizing(table, (old) => ({ ...old, age: 96 }))
|
|
253
|
-
* ```
|
|
254
|
-
*/
|
|
255
|
-
export function table_setColumnSizing<
|
|
256
|
-
TFeatures extends TableFeatures,
|
|
257
|
-
TData extends RowData,
|
|
258
|
-
>(
|
|
259
|
-
table: Table_Internal<TFeatures, TData>,
|
|
260
|
-
updater: Updater<ColumnSizingState>,
|
|
261
|
-
) {
|
|
262
|
-
table.options.onColumnSizingChange?.(updater)
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
/**
|
|
266
|
-
* Resets `columnSizing` to the configured initial state or feature default.
|
|
267
|
-
*
|
|
268
|
-
* With no argument, the reset clones `table.initialState.columnSizing` when it
|
|
269
|
-
* exists. Passing `true` ignores initial state and resets to `{}`.
|
|
270
|
-
*
|
|
271
|
-
* @example
|
|
272
|
-
* ```ts
|
|
273
|
-
* table_resetColumnSizing(table)
|
|
274
|
-
* table_resetColumnSizing(table, true)
|
|
275
|
-
* ```
|
|
276
|
-
*/
|
|
277
|
-
export function table_resetColumnSizing<
|
|
278
|
-
TFeatures extends TableFeatures,
|
|
279
|
-
TData extends RowData,
|
|
280
|
-
>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {
|
|
281
|
-
table_setColumnSizing(
|
|
282
|
-
table,
|
|
283
|
-
defaultState ? {} : cloneState(table.initialState.columnSizing ?? {}),
|
|
284
|
-
)
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
/**
|
|
288
|
-
* Sums the rendered size of the full table header row.
|
|
289
|
-
*
|
|
290
|
-
* This includes left, center, and right columns in the main header group.
|
|
291
|
-
*
|
|
292
|
-
* @example
|
|
293
|
-
* ```ts
|
|
294
|
-
* const width = table_getTotalSize(table)
|
|
295
|
-
* ```
|
|
296
|
-
*/
|
|
297
|
-
export function table_getTotalSize<
|
|
298
|
-
TFeatures extends TableFeatures,
|
|
299
|
-
TData extends RowData,
|
|
300
|
-
>(table: Table_Internal<TFeatures, TData>) {
|
|
301
|
-
return (
|
|
302
|
-
table.getHeaderGroups()[0]?.headers.reduce((sum, header) => {
|
|
303
|
-
return sum + header_getSize(header)
|
|
304
|
-
}, 0) ?? 0
|
|
305
|
-
)
|
|
306
|
-
}
|
|
307
|
-
|
|
308
|
-
/**
|
|
309
|
-
* Sums the rendered size of the left pinned header region.
|
|
310
|
-
*
|
|
311
|
-
* An empty left pinning region returns `0`.
|
|
312
|
-
*
|
|
313
|
-
* @example
|
|
314
|
-
* ```ts
|
|
315
|
-
* const width = table_getLeftTotalSize(table)
|
|
316
|
-
* ```
|
|
317
|
-
*/
|
|
318
|
-
export function table_getLeftTotalSize<
|
|
319
|
-
TFeatures extends TableFeatures,
|
|
320
|
-
TData extends RowData,
|
|
321
|
-
>(table: Table_Internal<TFeatures, TData>) {
|
|
322
|
-
return (
|
|
323
|
-
callMemoOrStaticFn(
|
|
324
|
-
table,
|
|
325
|
-
'getLeftHeaderGroups',
|
|
326
|
-
table_getLeftHeaderGroups,
|
|
327
|
-
)[0]?.headers.reduce((sum: number, header: Header<TFeatures, TData>) => {
|
|
328
|
-
return sum + header_getSize(header)
|
|
329
|
-
}, 0) ?? 0
|
|
330
|
-
)
|
|
331
|
-
}
|
|
332
|
-
|
|
333
|
-
/**
|
|
334
|
-
* Sums the rendered size of the center, unpinned header region.
|
|
335
|
-
*
|
|
336
|
-
* An empty center region returns `0`.
|
|
337
|
-
*
|
|
338
|
-
* @example
|
|
339
|
-
* ```ts
|
|
340
|
-
* const width = table_getCenterTotalSize(table)
|
|
341
|
-
* ```
|
|
342
|
-
*/
|
|
343
|
-
export function table_getCenterTotalSize<
|
|
344
|
-
TFeatures extends TableFeatures,
|
|
345
|
-
TData extends RowData,
|
|
346
|
-
>(table: Table_Internal<TFeatures, TData>) {
|
|
347
|
-
return (
|
|
348
|
-
callMemoOrStaticFn(
|
|
349
|
-
table,
|
|
350
|
-
'getCenterHeaderGroups',
|
|
351
|
-
table_getCenterHeaderGroups,
|
|
352
|
-
)[0]?.headers.reduce((sum: number, header: Header<TFeatures, TData>) => {
|
|
353
|
-
return sum + header_getSize(header)
|
|
354
|
-
}, 0) ?? 0
|
|
355
|
-
)
|
|
356
|
-
}
|
|
357
|
-
|
|
358
|
-
/**
|
|
359
|
-
* Sums the rendered size of the right pinned header region.
|
|
360
|
-
*
|
|
361
|
-
* An empty right pinning region returns `0`.
|
|
362
|
-
*
|
|
363
|
-
* @example
|
|
364
|
-
* ```ts
|
|
365
|
-
* const width = table_getRightTotalSize(table)
|
|
366
|
-
* ```
|
|
367
|
-
*/
|
|
368
|
-
export function table_getRightTotalSize<
|
|
369
|
-
TFeatures extends TableFeatures,
|
|
370
|
-
TData extends RowData,
|
|
371
|
-
>(table: Table_Internal<TFeatures, TData>) {
|
|
372
|
-
return (
|
|
373
|
-
callMemoOrStaticFn(
|
|
374
|
-
table,
|
|
375
|
-
'getRightHeaderGroups',
|
|
376
|
-
table_getRightHeaderGroups,
|
|
377
|
-
)[0]?.headers.reduce((sum: number, header: Header<TFeatures, TData>) => {
|
|
378
|
-
return sum + header_getSize(header)
|
|
379
|
-
}, 0) ?? 0
|
|
380
|
-
)
|
|
381
|
-
}
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
assignPrototypeAPIs,
|
|
3
|
-
assignTableAPIs,
|
|
4
|
-
makeStateUpdater,
|
|
5
|
-
} from '../../utils'
|
|
6
|
-
import {
|
|
7
|
-
column_getCanHide,
|
|
8
|
-
column_getIsVisible,
|
|
9
|
-
column_getToggleVisibilityHandler,
|
|
10
|
-
column_toggleVisibility,
|
|
11
|
-
getDefaultColumnVisibilityState,
|
|
12
|
-
row_getVisibleCells,
|
|
13
|
-
row_getVisibleCellsByColumnId,
|
|
14
|
-
table_getIsAllColumnsVisible,
|
|
15
|
-
table_getIsSomeColumnsVisible,
|
|
16
|
-
table_getToggleAllColumnsVisibilityHandler,
|
|
17
|
-
table_getVisibleFlatColumns,
|
|
18
|
-
table_getVisibleLeafColumns,
|
|
19
|
-
table_resetColumnVisibility,
|
|
20
|
-
table_setColumnVisibility,
|
|
21
|
-
table_toggleAllColumnsVisible,
|
|
22
|
-
} from './columnVisibilityFeature.utils'
|
|
23
|
-
import type { TableFeature } from '../../types/TableFeatures'
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Feature that adds column visibility state and APIs for hiding and showing columns.
|
|
27
|
-
*/
|
|
28
|
-
export const columnVisibilityFeature: TableFeature = {
|
|
29
|
-
getInitialState: (initialState) => {
|
|
30
|
-
return {
|
|
31
|
-
columnVisibility: getDefaultColumnVisibilityState(),
|
|
32
|
-
...initialState,
|
|
33
|
-
}
|
|
34
|
-
},
|
|
35
|
-
|
|
36
|
-
getDefaultTableOptions: (table) => {
|
|
37
|
-
return {
|
|
38
|
-
onColumnVisibilityChange: makeStateUpdater('columnVisibility', table),
|
|
39
|
-
}
|
|
40
|
-
},
|
|
41
|
-
|
|
42
|
-
assignColumnPrototype: (prototype, table) => {
|
|
43
|
-
assignPrototypeAPIs('columnVisibilityFeature', prototype, table, {
|
|
44
|
-
column_getIsVisible: {
|
|
45
|
-
fn: (column) => column_getIsVisible(column),
|
|
46
|
-
memoDeps: (column) => [
|
|
47
|
-
table.options.columns,
|
|
48
|
-
table.atoms.columnVisibility?.get(),
|
|
49
|
-
column.columns,
|
|
50
|
-
],
|
|
51
|
-
},
|
|
52
|
-
column_getCanHide: {
|
|
53
|
-
fn: (column) => column_getCanHide(column),
|
|
54
|
-
},
|
|
55
|
-
column_getToggleVisibilityHandler: {
|
|
56
|
-
fn: (column) => column_getToggleVisibilityHandler(column),
|
|
57
|
-
},
|
|
58
|
-
column_toggleVisibility: {
|
|
59
|
-
fn: (column, visible) => column_toggleVisibility(column, visible),
|
|
60
|
-
},
|
|
61
|
-
})
|
|
62
|
-
},
|
|
63
|
-
|
|
64
|
-
assignRowPrototype: (prototype, table) => {
|
|
65
|
-
assignPrototypeAPIs('columnVisibilityFeature', prototype, table, {
|
|
66
|
-
row_getVisibleCells: {
|
|
67
|
-
fn: (row) => row_getVisibleCells(row),
|
|
68
|
-
memoDeps: (row) => [
|
|
69
|
-
row.getAllCells(),
|
|
70
|
-
table.atoms.columnPinning?.get(),
|
|
71
|
-
table.atoms.columnVisibility?.get(),
|
|
72
|
-
],
|
|
73
|
-
},
|
|
74
|
-
row_getVisibleCellsByColumnId: {
|
|
75
|
-
fn: (row) => row_getVisibleCellsByColumnId(row),
|
|
76
|
-
memoDeps: (row) => [
|
|
77
|
-
row.getAllCells(),
|
|
78
|
-
table.atoms.columnVisibility?.get(),
|
|
79
|
-
],
|
|
80
|
-
},
|
|
81
|
-
})
|
|
82
|
-
},
|
|
83
|
-
|
|
84
|
-
constructTableAPIs: (table) => {
|
|
85
|
-
assignTableAPIs('columnVisibilityFeature', table, {
|
|
86
|
-
table_getVisibleFlatColumns: {
|
|
87
|
-
fn: () => table_getVisibleFlatColumns(table),
|
|
88
|
-
memoDeps: () => [
|
|
89
|
-
table.atoms.columnVisibility?.get(),
|
|
90
|
-
table.atoms.columnOrder?.get(),
|
|
91
|
-
table.options.columns,
|
|
92
|
-
],
|
|
93
|
-
},
|
|
94
|
-
table_getVisibleLeafColumns: {
|
|
95
|
-
fn: () => table_getVisibleLeafColumns(table),
|
|
96
|
-
memoDeps: () => [
|
|
97
|
-
table.atoms.columnVisibility?.get(),
|
|
98
|
-
table.atoms.columnOrder?.get(),
|
|
99
|
-
table.options.columns,
|
|
100
|
-
],
|
|
101
|
-
},
|
|
102
|
-
table_setColumnVisibility: {
|
|
103
|
-
fn: (updater) => table_setColumnVisibility(table, updater),
|
|
104
|
-
},
|
|
105
|
-
table_resetColumnVisibility: {
|
|
106
|
-
fn: (defaultState) => table_resetColumnVisibility(table, defaultState),
|
|
107
|
-
},
|
|
108
|
-
table_toggleAllColumnsVisible: {
|
|
109
|
-
fn: (value) => table_toggleAllColumnsVisible(table, value),
|
|
110
|
-
},
|
|
111
|
-
table_getIsAllColumnsVisible: {
|
|
112
|
-
fn: () => table_getIsAllColumnsVisible(table),
|
|
113
|
-
},
|
|
114
|
-
table_getIsSomeColumnsVisible: {
|
|
115
|
-
fn: () => table_getIsSomeColumnsVisible(table),
|
|
116
|
-
},
|
|
117
|
-
table_getToggleAllColumnsVisibilityHandler: {
|
|
118
|
-
fn: () => table_getToggleAllColumnsVisibilityHandler(table),
|
|
119
|
-
},
|
|
120
|
-
})
|
|
121
|
-
},
|
|
122
|
-
}
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import type { OnChangeFn, RowData, Updater } from '../../types/type-utils'
|
|
2
|
-
import type { TableFeatures } from '../../types/TableFeatures'
|
|
3
|
-
import type { Cell } from '../../types/Cell'
|
|
4
|
-
import type { Column } from '../../types/Column'
|
|
5
|
-
|
|
6
|
-
export type ColumnVisibilityState = Record<string, boolean>
|
|
7
|
-
|
|
8
|
-
export interface TableState_ColumnVisibility {
|
|
9
|
-
columnVisibility: ColumnVisibilityState
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export interface TableOptions_ColumnVisibility {
|
|
13
|
-
/**
|
|
14
|
-
* Whether to enable column hiding. Defaults to `true`.
|
|
15
|
-
*/
|
|
16
|
-
enableHiding?: boolean
|
|
17
|
-
/**
|
|
18
|
-
* Called with an updater when column visibility state changes. Pair this with
|
|
19
|
-
* `state.columnVisibility` when using external state; external atoms can own
|
|
20
|
-
* the slice without this callback.
|
|
21
|
-
*/
|
|
22
|
-
onColumnVisibilityChange?: OnChangeFn<ColumnVisibilityState>
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export type VisibilityDefaultOptions = Pick<
|
|
26
|
-
TableOptions_ColumnVisibility,
|
|
27
|
-
'onColumnVisibilityChange'
|
|
28
|
-
>
|
|
29
|
-
|
|
30
|
-
export interface Table_ColumnVisibility<
|
|
31
|
-
TFeatures extends TableFeatures,
|
|
32
|
-
TData extends RowData,
|
|
33
|
-
> {
|
|
34
|
-
/**
|
|
35
|
-
* Checks whether every leaf column is currently visible.
|
|
36
|
-
*/
|
|
37
|
-
getIsAllColumnsVisible: () => boolean
|
|
38
|
-
/**
|
|
39
|
-
* Checks whether at least one leaf column is currently visible.
|
|
40
|
-
*/
|
|
41
|
-
getIsSomeColumnsVisible: () => boolean
|
|
42
|
-
/**
|
|
43
|
-
* Creates a checkbox-style handler that shows or hides all columns.
|
|
44
|
-
*/
|
|
45
|
-
getToggleAllColumnsVisibilityHandler: () => (event: unknown) => void
|
|
46
|
-
/**
|
|
47
|
-
* Lists visible columns in flat table order, including parent columns that
|
|
48
|
-
* have visible descendants.
|
|
49
|
-
*/
|
|
50
|
-
getVisibleFlatColumns: () => Array<Column<TFeatures, TData, unknown>>
|
|
51
|
-
/**
|
|
52
|
-
* Lists visible leaf columns in the order used for row cells and headers.
|
|
53
|
-
*/
|
|
54
|
-
getVisibleLeafColumns: () => Array<Column<TFeatures, TData, unknown>>
|
|
55
|
-
/**
|
|
56
|
-
* Resets `columnVisibility` to `initialState.columnVisibility`.
|
|
57
|
-
*
|
|
58
|
-
* Pass `true` to ignore initial state and reset to `{}`.
|
|
59
|
-
*/
|
|
60
|
-
resetColumnVisibility: (defaultState?: boolean) => void
|
|
61
|
-
/**
|
|
62
|
-
* Updates column visibility state with a next map or updater function.
|
|
63
|
-
*/
|
|
64
|
-
setColumnVisibility: (updater: Updater<ColumnVisibilityState>) => void
|
|
65
|
-
/**
|
|
66
|
-
* Toggles the visibility of all columns.
|
|
67
|
-
*/
|
|
68
|
-
toggleAllColumnsVisible: (value?: boolean) => void
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
export interface ColumnDef_ColumnVisibility {
|
|
72
|
-
/**
|
|
73
|
-
* Allows this column to be hidden. Defaults to `true`.
|
|
74
|
-
*/
|
|
75
|
-
enableHiding?: boolean
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
export interface Row_ColumnVisibility<
|
|
79
|
-
TFeatures extends TableFeatures,
|
|
80
|
-
TData extends RowData,
|
|
81
|
-
> {
|
|
82
|
-
/**
|
|
83
|
-
* Gets this row's cells for currently visible columns.
|
|
84
|
-
*/
|
|
85
|
-
getVisibleCells: () => Array<Cell<TFeatures, TData, unknown>>
|
|
86
|
-
/**
|
|
87
|
-
* Maps this row's currently visible cells by column id.
|
|
88
|
-
*/
|
|
89
|
-
getVisibleCellsByColumnId: () => Record<
|
|
90
|
-
string,
|
|
91
|
-
Cell<TFeatures, TData, unknown>
|
|
92
|
-
>
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
export interface Column_ColumnVisibility {
|
|
96
|
-
/**
|
|
97
|
-
* Checks whether this column is allowed to be hidden.
|
|
98
|
-
*/
|
|
99
|
-
getCanHide: () => boolean
|
|
100
|
-
/**
|
|
101
|
-
* Checks whether this column is currently visible.
|
|
102
|
-
*/
|
|
103
|
-
getIsVisible: () => boolean
|
|
104
|
-
/**
|
|
105
|
-
* Creates a checkbox-style handler that toggles this column's visibility.
|
|
106
|
-
*/
|
|
107
|
-
getToggleVisibilityHandler: () => (event: unknown) => void
|
|
108
|
-
/**
|
|
109
|
-
* Toggles the visibility of the column.
|
|
110
|
-
*/
|
|
111
|
-
toggleVisibility: (value?: boolean) => void
|
|
112
|
-
}
|