@tanstack/table-core 9.0.0-beta.1 → 9.0.0-beta.11
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/dist/core/cells/constructCell.d.cts +1 -1
- package/dist/core/cells/constructCell.d.ts +1 -1
- package/dist/core/cells/coreCellsFeature.cjs +11 -20
- package/dist/core/cells/coreCellsFeature.cjs.map +1 -1
- package/dist/core/cells/coreCellsFeature.d.cts +4 -12
- package/dist/core/cells/coreCellsFeature.d.ts +4 -12
- package/dist/core/cells/coreCellsFeature.js +12 -20
- package/dist/core/cells/coreCellsFeature.js.map +1 -1
- package/dist/core/cells/coreCellsFeature.types.d.cts +4 -4
- package/dist/core/cells/coreCellsFeature.types.d.ts +4 -4
- package/dist/core/cells/coreCellsFeature.utils.d.cts +1 -1
- package/dist/core/cells/coreCellsFeature.utils.d.ts +1 -1
- package/dist/core/columns/constructColumn.d.cts +1 -1
- package/dist/core/columns/constructColumn.d.ts +1 -1
- package/dist/core/columns/coreColumnsFeature.cjs +59 -68
- package/dist/core/columns/coreColumnsFeature.cjs.map +1 -1
- package/dist/core/columns/coreColumnsFeature.d.cts +4 -12
- package/dist/core/columns/coreColumnsFeature.d.ts +4 -12
- package/dist/core/columns/coreColumnsFeature.js +60 -68
- package/dist/core/columns/coreColumnsFeature.js.map +1 -1
- package/dist/core/columns/coreColumnsFeature.types.d.cts +5 -5
- package/dist/core/columns/coreColumnsFeature.types.d.ts +5 -5
- package/dist/core/columns/coreColumnsFeature.utils.d.cts +1 -1
- package/dist/core/columns/coreColumnsFeature.utils.d.ts +1 -1
- package/dist/core/coreFeatures.cjs.map +1 -1
- package/dist/core/coreFeatures.d.cts +1 -1
- package/dist/core/coreFeatures.d.ts +1 -1
- package/dist/core/coreFeatures.js.map +1 -1
- package/dist/core/headers/buildHeaderGroups.cjs.map +1 -1
- package/dist/core/headers/buildHeaderGroups.d.cts +1 -1
- package/dist/core/headers/buildHeaderGroups.d.ts +1 -1
- package/dist/core/headers/buildHeaderGroups.js.map +1 -1
- package/dist/core/headers/constructHeader.d.cts +1 -1
- package/dist/core/headers/constructHeader.d.ts +1 -1
- package/dist/core/headers/coreHeadersFeature.cjs +44 -53
- package/dist/core/headers/coreHeadersFeature.cjs.map +1 -1
- package/dist/core/headers/coreHeadersFeature.d.cts +4 -12
- package/dist/core/headers/coreHeadersFeature.d.ts +4 -12
- package/dist/core/headers/coreHeadersFeature.js +45 -53
- package/dist/core/headers/coreHeadersFeature.js.map +1 -1
- package/dist/core/headers/coreHeadersFeature.types.d.cts +6 -6
- package/dist/core/headers/coreHeadersFeature.types.d.ts +6 -6
- package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -1
- package/dist/core/headers/coreHeadersFeature.utils.d.cts +1 -1
- package/dist/core/headers/coreHeadersFeature.utils.d.ts +1 -1
- package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -1
- package/dist/core/row-models/coreRowModelsFeature.cjs +17 -26
- package/dist/core/row-models/coreRowModelsFeature.cjs.map +1 -1
- package/dist/core/row-models/coreRowModelsFeature.d.cts +4 -12
- package/dist/core/row-models/coreRowModelsFeature.d.ts +4 -12
- package/dist/core/row-models/coreRowModelsFeature.js +18 -26
- package/dist/core/row-models/coreRowModelsFeature.js.map +1 -1
- package/dist/core/row-models/coreRowModelsFeature.types.d.cts +5 -15
- package/dist/core/row-models/coreRowModelsFeature.types.d.ts +5 -15
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs +13 -13
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -1
- package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +2 -2
- package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +2 -2
- package/dist/core/row-models/coreRowModelsFeature.utils.js +13 -13
- package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -1
- package/dist/core/row-models/createCoreRowModel.cjs +1 -2
- package/dist/core/row-models/createCoreRowModel.cjs.map +1 -1
- package/dist/core/row-models/createCoreRowModel.d.cts +2 -2
- package/dist/core/row-models/createCoreRowModel.d.ts +2 -2
- package/dist/core/row-models/createCoreRowModel.js +1 -2
- package/dist/core/row-models/createCoreRowModel.js.map +1 -1
- package/dist/core/rows/constructRow.d.cts +1 -1
- package/dist/core/rows/constructRow.d.ts +1 -1
- package/dist/core/rows/coreRowsFeature.cjs +27 -36
- package/dist/core/rows/coreRowsFeature.cjs.map +1 -1
- package/dist/core/rows/coreRowsFeature.d.cts +4 -12
- package/dist/core/rows/coreRowsFeature.d.ts +4 -12
- package/dist/core/rows/coreRowsFeature.js +28 -36
- package/dist/core/rows/coreRowsFeature.js.map +1 -1
- package/dist/core/rows/coreRowsFeature.types.d.cts +5 -5
- package/dist/core/rows/coreRowsFeature.types.d.ts +5 -5
- package/dist/core/rows/coreRowsFeature.utils.d.cts +1 -1
- package/dist/core/rows/coreRowsFeature.utils.d.ts +1 -1
- package/dist/core/table/constructTable.cjs +21 -6
- package/dist/core/table/constructTable.cjs.map +1 -1
- package/dist/core/table/constructTable.d.cts +1 -1
- package/dist/core/table/constructTable.d.ts +1 -1
- package/dist/core/table/constructTable.js +21 -6
- package/dist/core/table/constructTable.js.map +1 -1
- package/dist/core/table/coreTablesFeature.cjs +7 -16
- package/dist/core/table/coreTablesFeature.cjs.map +1 -1
- package/dist/core/table/coreTablesFeature.d.cts +4 -12
- package/dist/core/table/coreTablesFeature.d.ts +4 -12
- package/dist/core/table/coreTablesFeature.js +8 -16
- package/dist/core/table/coreTablesFeature.js.map +1 -1
- package/dist/core/table/coreTablesFeature.types.d.cts +27 -15
- package/dist/core/table/coreTablesFeature.types.d.ts +27 -15
- package/dist/core/table/coreTablesFeature.utils.cjs +1 -2
- package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -1
- package/dist/core/table/coreTablesFeature.utils.d.cts +1 -1
- package/dist/core/table/coreTablesFeature.utils.d.ts +1 -1
- package/dist/core/table/coreTablesFeature.utils.js +1 -2
- package/dist/core/table/coreTablesFeature.utils.js.map +1 -1
- package/dist/features/column-faceting/columnFacetingFeature.cjs +49 -61
- package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -1
- package/dist/features/column-faceting/columnFacetingFeature.d.cts +4 -15
- package/dist/features/column-faceting/columnFacetingFeature.d.ts +4 -15
- package/dist/features/column-faceting/columnFacetingFeature.js +50 -61
- package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -1
- package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +8 -29
- package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +8 -29
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +12 -12
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -1
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +1 -1
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +1 -1
- package/dist/features/column-faceting/columnFacetingFeature.utils.js +12 -12
- package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +1 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +1 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +1 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +1 -1
- package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -1
- package/dist/features/column-faceting/createFacetedRowModel.d.cts +1 -1
- package/dist/features/column-faceting/createFacetedRowModel.d.ts +1 -1
- package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +1 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +1 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -1
- package/dist/features/column-filtering/columnFilteringFeature.cjs +40 -53
- package/dist/features/column-filtering/columnFilteringFeature.cjs.map +1 -1
- package/dist/features/column-filtering/columnFilteringFeature.d.cts +4 -16
- package/dist/features/column-filtering/columnFilteringFeature.d.ts +4 -16
- package/dist/features/column-filtering/columnFilteringFeature.js +41 -53
- package/dist/features/column-filtering/columnFilteringFeature.js.map +1 -1
- package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +40 -26
- package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +40 -26
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +1 -1
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -1
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +2 -2
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +2 -2
- package/dist/features/column-filtering/columnFilteringFeature.utils.js +1 -1
- package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -1
- package/dist/features/column-filtering/createFilteredRowModel.cjs +4 -2
- package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -1
- package/dist/features/column-filtering/createFilteredRowModel.d.cts +5 -3
- package/dist/features/column-filtering/createFilteredRowModel.d.ts +5 -3
- package/dist/features/column-filtering/createFilteredRowModel.js +4 -2
- package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -1
- package/dist/features/column-grouping/columnGroupingFeature.cjs +57 -69
- package/dist/features/column-grouping/columnGroupingFeature.cjs.map +1 -1
- package/dist/features/column-grouping/columnGroupingFeature.d.cts +4 -15
- package/dist/features/column-grouping/columnGroupingFeature.d.ts +4 -15
- package/dist/features/column-grouping/columnGroupingFeature.js +58 -69
- package/dist/features/column-grouping/columnGroupingFeature.js.map +1 -1
- package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +23 -19
- package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +23 -19
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +1 -1
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +1 -1
- package/dist/features/column-grouping/createGroupedRowModel.cjs +5 -2
- package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -1
- package/dist/features/column-grouping/createGroupedRowModel.d.cts +6 -3
- package/dist/features/column-grouping/createGroupedRowModel.d.ts +6 -3
- package/dist/features/column-grouping/createGroupedRowModel.js +5 -2
- package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -1
- package/dist/features/column-ordering/columnOrderingFeature.cjs +47 -59
- package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -1
- package/dist/features/column-ordering/columnOrderingFeature.d.cts +4 -15
- package/dist/features/column-ordering/columnOrderingFeature.d.ts +4 -15
- package/dist/features/column-ordering/columnOrderingFeature.js +48 -59
- package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -1
- package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +1 -1
- package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +1 -1
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +1 -1
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +1 -1
- package/dist/features/column-pinning/columnPinningFeature.cjs +209 -221
- package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -1
- package/dist/features/column-pinning/columnPinningFeature.d.cts +4 -15
- package/dist/features/column-pinning/columnPinningFeature.d.ts +4 -15
- package/dist/features/column-pinning/columnPinningFeature.js +210 -221
- package/dist/features/column-pinning/columnPinningFeature.js.map +1 -1
- package/dist/features/column-pinning/columnPinningFeature.types.d.cts +2 -2
- package/dist/features/column-pinning/columnPinningFeature.types.d.ts +2 -2
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -1
- package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +13 -13
- package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +13 -13
- package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -1
- package/dist/features/column-resizing/columnResizingFeature.cjs +31 -43
- package/dist/features/column-resizing/columnResizingFeature.cjs.map +1 -1
- package/dist/features/column-resizing/columnResizingFeature.d.cts +4 -15
- package/dist/features/column-resizing/columnResizingFeature.d.ts +4 -15
- package/dist/features/column-resizing/columnResizingFeature.js +32 -43
- package/dist/features/column-resizing/columnResizingFeature.js.map +1 -1
- package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +1 -1
- package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +1 -1
- package/dist/features/column-sizing/columnSizingFeature.cjs +112 -125
- package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -1
- package/dist/features/column-sizing/columnSizingFeature.d.cts +4 -16
- package/dist/features/column-sizing/columnSizingFeature.d.ts +4 -16
- package/dist/features/column-sizing/columnSizingFeature.js +113 -125
- package/dist/features/column-sizing/columnSizingFeature.js.map +1 -1
- package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +4 -4
- package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +4 -4
- package/dist/features/column-visibility/columnVisibilityFeature.cjs +83 -95
- package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -1
- package/dist/features/column-visibility/columnVisibilityFeature.d.cts +4 -15
- package/dist/features/column-visibility/columnVisibilityFeature.d.ts +4 -15
- package/dist/features/column-visibility/columnVisibilityFeature.js +84 -95
- package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -1
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +2 -2
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +2 -2
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +1 -1
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +1 -1
- package/dist/features/global-filtering/globalFilteringFeature.cjs +31 -43
- package/dist/features/global-filtering/globalFilteringFeature.cjs.map +1 -1
- package/dist/features/global-filtering/globalFilteringFeature.d.cts +4 -15
- package/dist/features/global-filtering/globalFilteringFeature.d.ts +4 -15
- package/dist/features/global-filtering/globalFilteringFeature.js +32 -43
- package/dist/features/global-filtering/globalFilteringFeature.js.map +1 -1
- package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +3 -3
- package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +3 -3
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -1
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +7 -5
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +7 -5
- package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -1
- package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -1
- package/dist/features/row-expanding/createExpandedRowModel.d.cts +1 -1
- package/dist/features/row-expanding/createExpandedRowModel.d.ts +1 -1
- package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -1
- package/dist/features/row-expanding/rowExpandingFeature.cjs +37 -49
- package/dist/features/row-expanding/rowExpandingFeature.cjs.map +1 -1
- package/dist/features/row-expanding/rowExpandingFeature.d.cts +4 -15
- package/dist/features/row-expanding/rowExpandingFeature.d.ts +4 -15
- package/dist/features/row-expanding/rowExpandingFeature.js +38 -49
- package/dist/features/row-expanding/rowExpandingFeature.js.map +1 -1
- package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +5 -14
- package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +5 -14
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +1 -1
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +1 -1
- package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -1
- package/dist/features/row-pagination/createPaginatedRowModel.d.cts +1 -1
- package/dist/features/row-pagination/createPaginatedRowModel.d.ts +1 -1
- package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -1
- package/dist/features/row-pagination/rowPaginationFeature.cjs +35 -47
- package/dist/features/row-pagination/rowPaginationFeature.cjs.map +1 -1
- package/dist/features/row-pagination/rowPaginationFeature.d.cts +4 -15
- package/dist/features/row-pagination/rowPaginationFeature.d.ts +4 -15
- package/dist/features/row-pagination/rowPaginationFeature.js +36 -47
- package/dist/features/row-pagination/rowPaginationFeature.js.map +1 -1
- package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +4 -13
- package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +4 -13
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +1 -1
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +1 -1
- package/dist/features/row-pinning/rowPinningFeature.cjs +55 -67
- package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -1
- package/dist/features/row-pinning/rowPinningFeature.d.cts +4 -15
- package/dist/features/row-pinning/rowPinningFeature.d.ts +4 -15
- package/dist/features/row-pinning/rowPinningFeature.js +56 -67
- package/dist/features/row-pinning/rowPinningFeature.js.map +1 -1
- package/dist/features/row-pinning/rowPinningFeature.types.d.cts +2 -2
- package/dist/features/row-pinning/rowPinningFeature.types.d.ts +2 -2
- package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +1 -1
- package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +1 -1
- package/dist/features/row-selection/rowSelectionFeature.cjs +65 -77
- package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -1
- package/dist/features/row-selection/rowSelectionFeature.d.cts +4 -15
- package/dist/features/row-selection/rowSelectionFeature.d.ts +4 -15
- package/dist/features/row-selection/rowSelectionFeature.js +66 -77
- package/dist/features/row-selection/rowSelectionFeature.js.map +1 -1
- package/dist/features/row-selection/rowSelectionFeature.types.d.cts +2 -2
- package/dist/features/row-selection/rowSelectionFeature.types.d.ts +2 -2
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs +10 -6
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +1 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +1 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.js +10 -6
- package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -1
- package/dist/features/row-sorting/createSortedRowModel.cjs +4 -2
- package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -1
- package/dist/features/row-sorting/createSortedRowModel.d.cts +5 -3
- package/dist/features/row-sorting/createSortedRowModel.d.ts +5 -3
- package/dist/features/row-sorting/createSortedRowModel.js +4 -2
- package/dist/features/row-sorting/createSortedRowModel.js.map +1 -1
- package/dist/features/row-sorting/rowSortingFeature.cjs +45 -57
- package/dist/features/row-sorting/rowSortingFeature.cjs.map +1 -1
- package/dist/features/row-sorting/rowSortingFeature.d.cts +4 -15
- package/dist/features/row-sorting/rowSortingFeature.d.ts +4 -15
- package/dist/features/row-sorting/rowSortingFeature.js +46 -57
- package/dist/features/row-sorting/rowSortingFeature.js.map +1 -1
- package/dist/features/row-sorting/rowSortingFeature.types.d.cts +23 -20
- package/dist/features/row-sorting/rowSortingFeature.types.d.ts +23 -20
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs +8 -5
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -1
- package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +1 -1
- package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +1 -1
- package/dist/features/row-sorting/rowSortingFeature.utils.js +8 -5
- package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -1
- package/dist/fns/aggregationFns.cjs +18 -18
- package/dist/fns/aggregationFns.cjs.map +1 -1
- package/dist/fns/aggregationFns.d.cts +21 -19
- package/dist/fns/aggregationFns.d.ts +21 -19
- package/dist/fns/aggregationFns.js +18 -18
- package/dist/fns/aggregationFns.js.map +1 -1
- package/dist/fns/filterFns.cjs +51 -65
- package/dist/fns/filterFns.cjs.map +1 -1
- package/dist/fns/filterFns.d.cts +82 -28
- package/dist/fns/filterFns.d.ts +82 -28
- package/dist/fns/filterFns.js +51 -65
- package/dist/fns/filterFns.js.map +1 -1
- package/dist/fns/sortFns.cjs +18 -6
- package/dist/fns/sortFns.cjs.map +1 -1
- package/dist/fns/sortFns.d.cts +15 -13
- package/dist/fns/sortFns.d.ts +15 -13
- package/dist/fns/sortFns.js +18 -6
- package/dist/fns/sortFns.js.map +1 -1
- package/dist/helpers/metaHelper.cjs +30 -0
- package/dist/helpers/metaHelper.cjs.map +1 -0
- package/dist/helpers/metaHelper.d.cts +26 -0
- package/dist/helpers/metaHelper.d.ts +26 -0
- package/dist/helpers/metaHelper.js +29 -0
- package/dist/helpers/metaHelper.js.map +1 -0
- package/dist/helpers/tableFeatures.cjs +31 -3
- package/dist/helpers/tableFeatures.cjs.map +1 -1
- package/dist/helpers/tableFeatures.d.cts +33 -5
- package/dist/helpers/tableFeatures.d.ts +33 -5
- package/dist/helpers/tableFeatures.js +31 -3
- package/dist/helpers/tableFeatures.js.map +1 -1
- package/dist/index.cjs +2 -20
- package/dist/index.d.cts +44 -43
- package/dist/index.d.ts +44 -43
- package/dist/index.js +22 -21
- package/dist/store-reactivity-bindings.cjs +1 -1
- package/dist/store-reactivity-bindings.cjs.map +1 -1
- package/dist/store-reactivity-bindings.d.cts +1 -1
- package/dist/store-reactivity-bindings.d.ts +1 -1
- package/dist/store-reactivity-bindings.js +1 -1
- package/dist/store-reactivity-bindings.js.map +1 -1
- package/dist/types/Cell.d.cts +8 -10
- package/dist/types/Cell.d.ts +8 -10
- package/dist/types/Column.d.cts +19 -12
- package/dist/types/Column.d.ts +19 -12
- package/dist/types/ColumnDef.d.cts +30 -11
- package/dist/types/ColumnDef.d.ts +30 -11
- package/dist/types/Header.d.cts +10 -11
- package/dist/types/Header.d.ts +10 -11
- package/dist/types/HeaderGroup.d.cts +4 -9
- package/dist/types/HeaderGroup.d.ts +4 -9
- package/dist/types/Row.d.cts +15 -11
- package/dist/types/Row.d.ts +15 -11
- package/dist/types/RowModel.d.cts +19 -19
- package/dist/types/RowModel.d.ts +19 -19
- package/dist/types/RowModelFns.d.cts +9 -9
- package/dist/types/RowModelFns.d.ts +9 -9
- package/dist/types/Table.d.cts +52 -24
- package/dist/types/Table.d.ts +52 -24
- package/dist/types/TableFeatures.d.cts +178 -41
- package/dist/types/TableFeatures.d.ts +178 -41
- package/dist/types/TableOptions.d.cts +31 -10
- package/dist/types/TableOptions.d.ts +31 -10
- package/dist/types/TableState.d.cts +22 -13
- package/dist/types/TableState.d.ts +22 -13
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.d.cts +8 -3
- package/dist/utils.d.ts +8 -3
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
- package/skills/column-definitions/SKILL.md +3 -6
- package/skills/column-layout/SKILL.md +0 -2
- package/skills/customizing-feature-behavior/SKILL.md +63 -56
- package/skills/filtering/SKILL.md +60 -42
- package/skills/filtering/references/faceting-and-fuzzy.md +59 -32
- package/skills/grouping/SKILL.md +49 -54
- package/skills/migrate-v8-to-v9/SKILL.md +30 -33
- package/skills/pagination/SKILL.md +22 -20
- package/skills/row-expanding/SKILL.md +33 -25
- package/skills/row-pinning/SKILL.md +11 -7
- package/skills/row-selection/SKILL.md +0 -3
- package/skills/setup/SKILL.md +55 -65
- package/skills/sorting/SKILL.md +21 -21
- package/skills/state-management/SKILL.md +40 -25
- package/src/core/cells/coreCellsFeature.ts +17 -39
- package/src/core/cells/coreCellsFeature.types.ts +6 -6
- package/src/core/columns/coreColumnsFeature.ts +56 -83
- package/src/core/columns/coreColumnsFeature.types.ts +8 -8
- package/src/core/coreFeatures.ts +1 -1
- package/src/core/headers/buildHeaderGroups.ts +1 -1
- package/src/core/headers/coreHeadersFeature.ts +42 -64
- package/src/core/headers/coreHeadersFeature.types.ts +10 -10
- package/src/core/headers/coreHeadersFeature.utils.ts +1 -1
- package/src/core/row-models/coreRowModelsFeature.ts +43 -64
- package/src/core/row-models/coreRowModelsFeature.types.ts +7 -24
- package/src/core/row-models/coreRowModelsFeature.utils.ts +7 -7
- package/src/core/row-models/createCoreRowModel.ts +5 -4
- package/src/core/rows/coreRowsFeature.ts +45 -72
- package/src/core/rows/coreRowsFeature.types.ts +8 -8
- package/src/core/table/constructTable.ts +50 -13
- package/src/core/table/coreTablesFeature.ts +13 -35
- package/src/core/table/coreTablesFeature.types.ts +40 -17
- package/src/core/table/coreTablesFeature.utils.ts +10 -5
- package/src/features/column-faceting/columnFacetingFeature.ts +71 -102
- package/src/features/column-faceting/columnFacetingFeature.types.ts +11 -44
- package/src/features/column-faceting/columnFacetingFeature.utils.ts +6 -6
- package/src/features/column-faceting/createFacetedMinMaxValues.ts +1 -1
- package/src/features/column-faceting/createFacetedRowModel.ts +1 -1
- package/src/features/column-faceting/createFacetedUniqueValues.ts +1 -1
- package/src/features/column-filtering/columnFilteringFeature.ts +60 -103
- package/src/features/column-filtering/columnFilteringFeature.types.ts +55 -39
- package/src/features/column-filtering/columnFilteringFeature.utils.ts +2 -2
- package/src/features/column-filtering/createFilteredRowModel.ts +5 -7
- package/src/features/column-grouping/columnGroupingFeature.ts +82 -126
- package/src/features/column-grouping/columnGroupingFeature.types.ts +32 -31
- package/src/features/column-grouping/createGroupedRowModel.ts +7 -11
- package/src/features/column-ordering/columnOrderingFeature.ts +52 -84
- package/src/features/column-ordering/columnOrderingFeature.types.ts +2 -2
- package/src/features/column-pinning/columnPinningFeature.ts +268 -304
- package/src/features/column-pinning/columnPinningFeature.types.ts +4 -4
- package/src/features/column-pinning/columnPinningFeature.utils.ts +5 -5
- package/src/features/column-resizing/columnResizingFeature.ts +44 -78
- package/src/features/column-sizing/columnSizingFeature.ts +115 -152
- package/src/features/column-visibility/columnVisibilityFeature.ts +92 -129
- package/src/features/column-visibility/columnVisibilityFeature.types.ts +4 -4
- package/src/features/global-filtering/globalFilteringFeature.ts +45 -79
- package/src/features/global-filtering/globalFilteringFeature.types.ts +4 -4
- package/src/features/global-filtering/globalFilteringFeature.utils.ts +4 -2
- package/src/features/row-expanding/createExpandedRowModel.ts +1 -1
- package/src/features/row-expanding/rowExpandingFeature.ts +65 -101
- package/src/features/row-expanding/rowExpandingFeature.types.ts +8 -22
- package/src/features/row-pagination/createPaginatedRowModel.ts +1 -1
- package/src/features/row-pagination/rowPaginationFeature.ts +69 -103
- package/src/features/row-pagination/rowPaginationFeature.types.ts +6 -20
- package/src/features/row-pinning/rowPinningFeature.ts +72 -104
- package/src/features/row-pinning/rowPinningFeature.types.ts +4 -4
- package/src/features/row-selection/rowSelectionFeature.ts +103 -135
- package/src/features/row-selection/rowSelectionFeature.types.ts +4 -4
- package/src/features/row-selection/rowSelectionFeature.utils.ts +12 -7
- package/src/features/row-sorting/createSortedRowModel.ts +6 -6
- package/src/features/row-sorting/rowSortingFeature.ts +73 -114
- package/src/features/row-sorting/rowSortingFeature.types.ts +33 -32
- package/src/features/row-sorting/rowSortingFeature.utils.ts +8 -6
- package/src/fns/aggregationFns.ts +26 -42
- package/src/fns/filterFns.ts +231 -264
- package/src/fns/sortFns.ts +51 -29
- package/src/helpers/metaHelper.ts +24 -0
- package/src/helpers/tableFeatures.ts +36 -5
- package/src/index.ts +1 -0
- package/src/store-reactivity-bindings.ts +1 -1
- package/src/types/Cell.ts +10 -30
- package/src/types/Column.ts +21 -56
- package/src/types/ColumnDef.ts +48 -49
- package/src/types/Header.ts +10 -32
- package/src/types/HeaderGroup.ts +4 -15
- package/src/types/Row.ts +18 -39
- package/src/types/RowModel.ts +24 -114
- package/src/types/RowModelFns.ts +12 -31
- package/src/types/Table.ts +85 -80
- package/src/types/TableFeatures.ts +253 -108
- package/src/types/TableOptions.ts +70 -60
- package/src/types/TableState.ts +20 -73
- package/src/utils.ts +16 -6
|
@@ -36,14 +36,16 @@ import {
|
|
|
36
36
|
sortFns,
|
|
37
37
|
} from '@tanstack/table-core'
|
|
38
38
|
|
|
39
|
-
const features = tableFeatures({
|
|
39
|
+
const features = tableFeatures({
|
|
40
|
+
rowSortingFeature,
|
|
41
|
+
rowPaginationFeature,
|
|
42
|
+
sortedRowModel: createSortedRowModel(),
|
|
43
|
+
paginatedRowModel: createPaginatedRowModel(),
|
|
44
|
+
sortFns,
|
|
45
|
+
})
|
|
40
46
|
|
|
41
47
|
const table = constructTable({
|
|
42
48
|
features,
|
|
43
|
-
rowModels: {
|
|
44
|
-
sortedRowModel: createSortedRowModel(sortFns),
|
|
45
|
-
paginatedRowModel: createPaginatedRowModel(),
|
|
46
|
-
},
|
|
47
49
|
columns,
|
|
48
50
|
data,
|
|
49
51
|
// 1. initialState — set starting values; read once at construction
|
|
@@ -79,7 +81,6 @@ The four ownership patterns per slice:
|
|
|
79
81
|
```ts
|
|
80
82
|
const table = constructTable({
|
|
81
83
|
features,
|
|
82
|
-
rowModels: { sortedRowModel: createSortedRowModel(sortFns) },
|
|
83
84
|
columns,
|
|
84
85
|
data,
|
|
85
86
|
initialState: { sorting: [{ id: 'age', desc: false }] },
|
|
@@ -95,7 +96,6 @@ const [sorting, setSorting] = React.useState<SortingState>([])
|
|
|
95
96
|
|
|
96
97
|
const table = useTable({
|
|
97
98
|
features,
|
|
98
|
-
rowModels: { sortedRowModel: createSortedRowModel(sortFns) },
|
|
99
99
|
columns,
|
|
100
100
|
data,
|
|
101
101
|
state: { sorting },
|
|
@@ -119,7 +119,6 @@ function MyTable() {
|
|
|
119
119
|
|
|
120
120
|
const table = useTable({
|
|
121
121
|
features,
|
|
122
|
-
rowModels: { paginatedRowModel: createPaginatedRowModel() },
|
|
123
122
|
columns,
|
|
124
123
|
data,
|
|
125
124
|
atoms: { pagination: paginationAtom },
|
|
@@ -146,7 +145,7 @@ const dataQuery = useQuery({
|
|
|
146
145
|
|
|
147
146
|
const table = useTable({
|
|
148
147
|
features: tableFeatures({ rowPaginationFeature }),
|
|
149
|
-
|
|
148
|
+
// no paginatedRowModel registered — server paginates
|
|
150
149
|
columns,
|
|
151
150
|
data: dataQuery.data?.rows ?? EMPTY,
|
|
152
151
|
rowCount: dataQuery.data?.rowCount, // server tells the table the total
|
|
@@ -170,7 +169,9 @@ const paginationAtom = useCreateAtom<PaginationState>({ pageIndex: 0, pageSize:
|
|
|
170
169
|
const [pagination, setPagination] = React.useState(...)
|
|
171
170
|
|
|
172
171
|
const table = useTable({
|
|
173
|
-
features,
|
|
172
|
+
features,
|
|
173
|
+
columns,
|
|
174
|
+
data,
|
|
174
175
|
state: { pagination }, // ignored
|
|
175
176
|
onPaginationChange: setPagination,
|
|
176
177
|
atoms: { pagination: paginationAtom }, // wins
|
|
@@ -181,10 +182,15 @@ Correct:
|
|
|
181
182
|
|
|
182
183
|
```tsx
|
|
183
184
|
// pick one ownership path per slice — here, external atoms
|
|
184
|
-
const paginationAtom = useCreateAtom<PaginationState>({
|
|
185
|
+
const paginationAtom = useCreateAtom<PaginationState>({
|
|
186
|
+
pageIndex: 0,
|
|
187
|
+
pageSize: 10,
|
|
188
|
+
})
|
|
185
189
|
|
|
186
190
|
const table = useTable({
|
|
187
|
-
features,
|
|
191
|
+
features,
|
|
192
|
+
columns,
|
|
193
|
+
data,
|
|
188
194
|
atoms: { pagination: paginationAtom },
|
|
189
195
|
})
|
|
190
196
|
```
|
|
@@ -201,7 +207,6 @@ Wrong:
|
|
|
201
207
|
const [sorting, setSorting] = React.useState<SortingState>([])
|
|
202
208
|
const table = useTable({
|
|
203
209
|
features,
|
|
204
|
-
rowModels: { sortedRowModel: createSortedRowModel(sortFns) },
|
|
205
210
|
columns,
|
|
206
211
|
data,
|
|
207
212
|
state: { sorting }, // no onSortingChange
|
|
@@ -214,7 +219,6 @@ Correct:
|
|
|
214
219
|
const [sorting, setSorting] = React.useState<SortingState>([])
|
|
215
220
|
const table = useTable({
|
|
216
221
|
features,
|
|
217
|
-
rowModels: { sortedRowModel: createSortedRowModel(sortFns) },
|
|
218
222
|
columns,
|
|
219
223
|
data,
|
|
220
224
|
state: { sorting },
|
|
@@ -235,7 +239,6 @@ Wrong:
|
|
|
235
239
|
function MyTable({ defaultSort }: { defaultSort: SortingState }) {
|
|
236
240
|
const table = useTable({
|
|
237
241
|
features,
|
|
238
|
-
rowModels: { sortedRowModel: createSortedRowModel(sortFns) },
|
|
239
242
|
columns,
|
|
240
243
|
data,
|
|
241
244
|
initialState: { sorting: defaultSort }, // later changes never sync
|
|
@@ -250,7 +253,6 @@ function MyTable({ defaultSort }: { defaultSort: SortingState }) {
|
|
|
250
253
|
const [sorting, setSorting] = React.useState(defaultSort)
|
|
251
254
|
const table = useTable({
|
|
252
255
|
features,
|
|
253
|
-
rowModels: { sortedRowModel: createSortedRowModel(sortFns) },
|
|
254
256
|
columns,
|
|
255
257
|
data,
|
|
256
258
|
state: { sorting },
|
|
@@ -268,8 +270,16 @@ Source: docs/framework/vanilla/guide/table-state.md; docs/framework/react/guide/
|
|
|
268
270
|
Wrong:
|
|
269
271
|
|
|
270
272
|
```ts
|
|
271
|
-
const paginationAtom = useCreateAtom<PaginationState>({
|
|
272
|
-
|
|
273
|
+
const paginationAtom = useCreateAtom<PaginationState>({
|
|
274
|
+
pageIndex: 0,
|
|
275
|
+
pageSize: 10,
|
|
276
|
+
})
|
|
277
|
+
const table = useTable({
|
|
278
|
+
features,
|
|
279
|
+
columns,
|
|
280
|
+
data,
|
|
281
|
+
atoms: { pagination: paginationAtom },
|
|
282
|
+
})
|
|
273
283
|
|
|
274
284
|
table.baseAtoms.pagination.set((old) => ({ ...old, pageIndex: 0 }))
|
|
275
285
|
// baseAtom updated, but table.atoms.pagination still reads from paginationAtom
|
|
@@ -298,9 +308,9 @@ const dataQuery = useQuery({
|
|
|
298
308
|
queryKey: ['data', pagination],
|
|
299
309
|
queryFn: fetchPage,
|
|
300
310
|
})
|
|
311
|
+
// features has paginatedRowModel registered
|
|
301
312
|
const table = useTable({
|
|
302
313
|
features,
|
|
303
|
-
rowModels: { paginatedRowModel: createPaginatedRowModel() },
|
|
304
314
|
columns,
|
|
305
315
|
data: dataQuery.data?.rows ?? [],
|
|
306
316
|
rowCount: dataQuery.data?.rowCount,
|
|
@@ -312,9 +322,9 @@ const table = useTable({
|
|
|
312
322
|
Correct:
|
|
313
323
|
|
|
314
324
|
```tsx
|
|
325
|
+
// Use features WITHOUT paginatedRowModel for fully server-side pagination
|
|
315
326
|
const table = useTable({
|
|
316
|
-
features,
|
|
317
|
-
rowModels: {}, // drop paginatedRowModel if fully server-side
|
|
327
|
+
features: tableFeatures({ rowPaginationFeature }),
|
|
318
328
|
columns,
|
|
319
329
|
data: dataQuery.data?.rows ?? [],
|
|
320
330
|
rowCount: dataQuery.data?.rowCount,
|
|
@@ -335,7 +345,9 @@ Wrong:
|
|
|
335
345
|
// external atom keeps its current value; only baseAtoms reset
|
|
336
346
|
const sortingAtom = useCreateAtom<SortingState>([])
|
|
337
347
|
const table = useTable({
|
|
338
|
-
features,
|
|
348
|
+
features,
|
|
349
|
+
columns,
|
|
350
|
+
data,
|
|
339
351
|
atoms: { sorting: sortingAtom },
|
|
340
352
|
})
|
|
341
353
|
table.reset() // sortingAtom is NOT cleared
|
|
@@ -369,8 +381,11 @@ Correct:
|
|
|
369
381
|
|
|
370
382
|
```ts
|
|
371
383
|
const table = useTable({
|
|
372
|
-
features: tableFeatures({
|
|
373
|
-
|
|
384
|
+
features: tableFeatures({
|
|
385
|
+
rowSortingFeature,
|
|
386
|
+
sortedRowModel: createSortedRowModel(),
|
|
387
|
+
sortFns,
|
|
388
|
+
}),
|
|
374
389
|
columns,
|
|
375
390
|
data,
|
|
376
391
|
})
|
|
@@ -383,6 +398,6 @@ Source: maintainer interview (Phase 4, 2026-05-17)
|
|
|
383
398
|
|
|
384
399
|
## See also
|
|
385
400
|
|
|
386
|
-
- `tanstack-table/setup` — how `features` and
|
|
401
|
+
- `tanstack-table/setup` — how `features` (with row model factory and fn slots) is wired
|
|
387
402
|
- `tanstack-table/pagination`, `tanstack-table/sorting`, `tanstack-table/filtering` — feature-specific `manual*` and reset semantics
|
|
388
403
|
- `tanstack-table/migrate-v8-to-v9` — `table.getState()` → `table.store.state` / `table.atoms.<slice>.get()`
|
|
@@ -4,46 +4,24 @@ import {
|
|
|
4
4
|
cell_getValue,
|
|
5
5
|
cell_renderValue,
|
|
6
6
|
} from './coreCellsFeature.utils'
|
|
7
|
-
import type {
|
|
8
|
-
import type { TableFeature, TableFeatures } from '../../types/TableFeatures'
|
|
9
|
-
// import type { Cell_Cell, TableOptions_Cell } from './coreCellsFeature.types'
|
|
10
|
-
|
|
11
|
-
export interface CoreCellsFeatureConstructors<
|
|
12
|
-
TFeatures extends TableFeatures,
|
|
13
|
-
TData extends RowData,
|
|
14
|
-
> {
|
|
15
|
-
// Cell: Cell_Cell<TableFeatures, RowData>
|
|
16
|
-
// TableOptions: TableOptions_Cell
|
|
17
|
-
}
|
|
7
|
+
import type { TableFeature } from '../../types/TableFeatures'
|
|
18
8
|
|
|
19
9
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
* The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
|
|
10
|
+
* Core feature that adds cell value, render, and context APIs.
|
|
23
11
|
*/
|
|
24
|
-
export
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
memoDeps: (cell) => [cell],
|
|
40
|
-
},
|
|
41
|
-
})
|
|
42
|
-
},
|
|
43
|
-
}
|
|
12
|
+
export const coreCellsFeature: TableFeature = {
|
|
13
|
+
assignCellPrototype: (prototype, table) => {
|
|
14
|
+
assignPrototypeAPIs('coreCellsFeature', prototype, table, {
|
|
15
|
+
cell_getValue: {
|
|
16
|
+
fn: (cell) => cell_getValue(cell),
|
|
17
|
+
},
|
|
18
|
+
cell_renderValue: {
|
|
19
|
+
fn: (cell) => cell_renderValue(cell),
|
|
20
|
+
},
|
|
21
|
+
cell_getContext: {
|
|
22
|
+
fn: (cell) => cell_getContext(cell),
|
|
23
|
+
memoDeps: (cell) => [cell],
|
|
24
|
+
},
|
|
25
|
+
})
|
|
26
|
+
},
|
|
44
27
|
}
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* The Core Cells feature provides the core cell functionality.
|
|
48
|
-
*/
|
|
49
|
-
export const coreCellsFeature = constructCoreCellsFeature()
|
|
@@ -6,8 +6,8 @@ import type { Cell } from '../../types/Cell'
|
|
|
6
6
|
import type { Column } from '../../types/Column'
|
|
7
7
|
|
|
8
8
|
export interface CellContext<
|
|
9
|
-
TFeatures extends TableFeatures,
|
|
10
|
-
TData extends RowData,
|
|
9
|
+
in out TFeatures extends TableFeatures,
|
|
10
|
+
in out TData extends RowData,
|
|
11
11
|
TValue extends CellData = CellData,
|
|
12
12
|
> {
|
|
13
13
|
cell: Cell<TFeatures, TData, TValue>
|
|
@@ -19,8 +19,8 @@ export interface CellContext<
|
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
export interface Cell_CoreProperties<
|
|
22
|
-
TFeatures extends TableFeatures,
|
|
23
|
-
TData extends RowData,
|
|
22
|
+
in out TFeatures extends TableFeatures,
|
|
23
|
+
in out TData extends RowData,
|
|
24
24
|
TValue extends CellData = CellData,
|
|
25
25
|
> {
|
|
26
26
|
/**
|
|
@@ -42,8 +42,8 @@ export interface Cell_CoreProperties<
|
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
export interface Cell_Cell<
|
|
45
|
-
TFeatures extends TableFeatures,
|
|
46
|
-
TData extends RowData,
|
|
45
|
+
in out TFeatures extends TableFeatures,
|
|
46
|
+
in out TData extends RowData,
|
|
47
47
|
TValue extends CellData = CellData,
|
|
48
48
|
> extends Cell_CoreProperties<TFeatures, TData, TValue> {
|
|
49
49
|
/**
|
|
@@ -10,91 +10,64 @@ import {
|
|
|
10
10
|
table_getColumn,
|
|
11
11
|
table_getDefaultColumnDef,
|
|
12
12
|
} from './coreColumnsFeature.utils'
|
|
13
|
-
import type {
|
|
14
|
-
import type { TableFeature, TableFeatures } from '../../types/TableFeatures'
|
|
15
|
-
// import type {
|
|
16
|
-
// Column_Column,
|
|
17
|
-
// TableOptions_Columns,
|
|
18
|
-
// Table_Columns,
|
|
19
|
-
// } from './coreColumnsFeature.types'
|
|
20
|
-
|
|
21
|
-
export interface CoreColumnsFeatureConstructors<
|
|
22
|
-
TFeatures extends TableFeatures,
|
|
23
|
-
TData extends RowData,
|
|
24
|
-
> {
|
|
25
|
-
// Column: Column_Column<TFeatures, TData>
|
|
26
|
-
// Table: Table_Columns<TFeatures, TData>
|
|
27
|
-
// TableOptions: TableOptions_Columns<TFeatures, TData>
|
|
28
|
-
}
|
|
13
|
+
import type { TableFeature } from '../../types/TableFeatures'
|
|
29
14
|
|
|
30
15
|
/**
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
* The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
|
|
16
|
+
* Core feature that builds the column tree and exposes table/column column APIs.
|
|
34
17
|
*/
|
|
35
|
-
export
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
],
|
|
54
|
-
},
|
|
55
|
-
})
|
|
56
|
-
},
|
|
18
|
+
export const coreColumnsFeature: TableFeature = {
|
|
19
|
+
assignColumnPrototype: (prototype, table) => {
|
|
20
|
+
assignPrototypeAPIs('coreColumnsFeature', prototype, table, {
|
|
21
|
+
column_getFlatColumns: {
|
|
22
|
+
fn: (column) => column_getFlatColumns(column),
|
|
23
|
+
memoDeps: (column) => [column.table.options.columns],
|
|
24
|
+
},
|
|
25
|
+
column_getLeafColumns: {
|
|
26
|
+
fn: (column) => column_getLeafColumns(column),
|
|
27
|
+
memoDeps: (column) => [
|
|
28
|
+
column.table.atoms.columnOrder?.get(),
|
|
29
|
+
column.table.atoms.grouping?.get(),
|
|
30
|
+
column.table.options.columns,
|
|
31
|
+
column.table.options.groupedColumnMode,
|
|
32
|
+
],
|
|
33
|
+
},
|
|
34
|
+
})
|
|
35
|
+
},
|
|
57
36
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
}
|
|
37
|
+
constructTableAPIs: (table) => {
|
|
38
|
+
assignTableAPIs('coreColumnsFeature', table, {
|
|
39
|
+
table_getDefaultColumnDef: {
|
|
40
|
+
fn: () => table_getDefaultColumnDef(table),
|
|
41
|
+
memoDeps: () => [table.options.defaultColumn],
|
|
42
|
+
},
|
|
43
|
+
table_getAllColumns: {
|
|
44
|
+
fn: () => table_getAllColumns(table),
|
|
45
|
+
memoDeps: () => [table.options.columns],
|
|
46
|
+
},
|
|
47
|
+
table_getAllFlatColumns: {
|
|
48
|
+
fn: () => table_getAllFlatColumns(table),
|
|
49
|
+
memoDeps: () => [table.options.columns],
|
|
50
|
+
},
|
|
51
|
+
table_getAllFlatColumnsById: {
|
|
52
|
+
fn: () => table_getAllFlatColumnsById(table),
|
|
53
|
+
memoDeps: () => [table.options.columns],
|
|
54
|
+
},
|
|
55
|
+
table_getAllLeafColumns: {
|
|
56
|
+
fn: () => table_getAllLeafColumns(table),
|
|
57
|
+
memoDeps: () => [
|
|
58
|
+
table.atoms.columnOrder?.get(),
|
|
59
|
+
table.atoms.grouping?.get(),
|
|
60
|
+
table.options.columns,
|
|
61
|
+
table.options.groupedColumnMode,
|
|
62
|
+
],
|
|
63
|
+
},
|
|
64
|
+
table_getAllLeafColumnsById: {
|
|
65
|
+
fn: () => table_getAllLeafColumnsById(table),
|
|
66
|
+
memoDeps: () => [table.getAllLeafColumns()],
|
|
67
|
+
},
|
|
68
|
+
table_getColumn: {
|
|
69
|
+
fn: (columnId) => table_getColumn(table, columnId),
|
|
70
|
+
},
|
|
71
|
+
})
|
|
72
|
+
},
|
|
95
73
|
}
|
|
96
|
-
|
|
97
|
-
/**
|
|
98
|
-
* The Core Columns feature provides the core column functionality.
|
|
99
|
-
*/
|
|
100
|
-
export const coreColumnsFeature = constructCoreColumnsFeature()
|
|
@@ -5,8 +5,8 @@ import type { AccessorFn, ColumnDef } from '../../types/ColumnDef'
|
|
|
5
5
|
import type { Column } from '../../types/Column'
|
|
6
6
|
|
|
7
7
|
export interface Column_CoreProperties<
|
|
8
|
-
TFeatures extends TableFeatures,
|
|
9
|
-
TData extends RowData,
|
|
8
|
+
in out TFeatures extends TableFeatures,
|
|
9
|
+
in out TData extends RowData,
|
|
10
10
|
TValue extends CellData = CellData,
|
|
11
11
|
> {
|
|
12
12
|
/**
|
|
@@ -43,8 +43,8 @@ export interface Column_CoreProperties<
|
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
export interface Column_Column<
|
|
46
|
-
TFeatures extends TableFeatures,
|
|
47
|
-
TData extends RowData,
|
|
46
|
+
in out TFeatures extends TableFeatures,
|
|
47
|
+
in out TData extends RowData,
|
|
48
48
|
TValue extends CellData = CellData,
|
|
49
49
|
> extends Column_CoreProperties<TFeatures, TData, TValue> {
|
|
50
50
|
/**
|
|
@@ -59,8 +59,8 @@ export interface Column_Column<
|
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
export interface TableOptions_Columns<
|
|
62
|
-
TFeatures extends TableFeatures,
|
|
63
|
-
TData extends RowData,
|
|
62
|
+
in out TFeatures extends TableFeatures,
|
|
63
|
+
in out TData extends RowData,
|
|
64
64
|
TValue extends CellData = CellData,
|
|
65
65
|
> {
|
|
66
66
|
/**
|
|
@@ -74,8 +74,8 @@ export interface TableOptions_Columns<
|
|
|
74
74
|
}
|
|
75
75
|
|
|
76
76
|
export interface Table_Columns<
|
|
77
|
-
TFeatures extends TableFeatures,
|
|
78
|
-
TData extends RowData,
|
|
77
|
+
in out TFeatures extends TableFeatures,
|
|
78
|
+
in out TData extends RowData,
|
|
79
79
|
> {
|
|
80
80
|
/**
|
|
81
81
|
* Returns a map of all flat columns by their ID.
|
package/src/core/coreFeatures.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { coreTablesFeature } from './table/coreTablesFeature'
|
|
|
7
7
|
import type { TableReactivityBindings } from '../reactivity'
|
|
8
8
|
|
|
9
9
|
export interface CoreFeatures {
|
|
10
|
-
|
|
10
|
+
coreReactivityFeature?: TableReactivityBindings
|
|
11
11
|
coreCellsFeature: typeof coreCellsFeature
|
|
12
12
|
coreColumnsFeature: typeof coreColumnsFeature
|
|
13
13
|
coreHeadersFeature: typeof coreHeadersFeature
|
|
@@ -60,7 +60,7 @@ export function buildHeaderGroups<
|
|
|
60
60
|
depth,
|
|
61
61
|
id: [headerFamily, `${depth}`].filter(Boolean).join('_'),
|
|
62
62
|
headers: [],
|
|
63
|
-
}
|
|
63
|
+
}
|
|
64
64
|
|
|
65
65
|
// The parent columns we're going to scan next
|
|
66
66
|
const pendingParentHeaders: Array<Header<TFeatures, TData, TValue>> = []
|
|
@@ -7,72 +7,50 @@ import {
|
|
|
7
7
|
table_getHeaderGroups,
|
|
8
8
|
table_getLeafHeaders,
|
|
9
9
|
} from './coreHeadersFeature.utils'
|
|
10
|
-
import type {
|
|
11
|
-
import type { TableFeature, TableFeatures } from '../../types/TableFeatures'
|
|
12
|
-
// import type { Header_Header, Table_Headers } from './coreHeadersFeature.types'
|
|
13
|
-
|
|
14
|
-
export interface CoreHeadersFeatureConstructors<
|
|
15
|
-
TFeatures extends TableFeatures,
|
|
16
|
-
TData extends RowData,
|
|
17
|
-
> {
|
|
18
|
-
// Header: Header_Header<TFeatures, TData>
|
|
19
|
-
// Table: Table_Headers<TFeatures, TData>
|
|
20
|
-
}
|
|
10
|
+
import type { TableFeature } from '../../types/TableFeatures'
|
|
21
11
|
|
|
22
12
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
* The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
|
|
13
|
+
* Core feature that builds header groups and exposes header context APIs.
|
|
26
14
|
*/
|
|
27
|
-
export
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
memoDeps: (header) => [header.column.table.options.columns],
|
|
41
|
-
},
|
|
42
|
-
})
|
|
43
|
-
},
|
|
15
|
+
export const coreHeadersFeature: TableFeature = {
|
|
16
|
+
assignHeaderPrototype: (prototype, table) => {
|
|
17
|
+
assignPrototypeAPIs('coreHeadersFeature', prototype, table, {
|
|
18
|
+
header_getLeafHeaders: {
|
|
19
|
+
fn: (header) => header_getLeafHeaders(header),
|
|
20
|
+
memoDeps: (header) => [header.column.table.options.columns],
|
|
21
|
+
},
|
|
22
|
+
header_getContext: {
|
|
23
|
+
fn: (header) => header_getContext(header),
|
|
24
|
+
memoDeps: (header) => [header.column.table.options.columns],
|
|
25
|
+
},
|
|
26
|
+
})
|
|
27
|
+
},
|
|
44
28
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}
|
|
29
|
+
constructTableAPIs: (table) => {
|
|
30
|
+
assignTableAPIs('coreHeadersFeature', table, {
|
|
31
|
+
table_getHeaderGroups: {
|
|
32
|
+
fn: () => table_getHeaderGroups(table),
|
|
33
|
+
memoDeps: () => [
|
|
34
|
+
table.options.columns,
|
|
35
|
+
table.atoms.columnOrder?.get(),
|
|
36
|
+
table.atoms.grouping?.get(),
|
|
37
|
+
table.atoms.columnPinning?.get(),
|
|
38
|
+
table.atoms.columnVisibility?.get(),
|
|
39
|
+
table.options.groupedColumnMode,
|
|
40
|
+
],
|
|
41
|
+
},
|
|
42
|
+
table_getFooterGroups: {
|
|
43
|
+
fn: () => table_getFooterGroups(table),
|
|
44
|
+
memoDeps: () => [table.getHeaderGroups()],
|
|
45
|
+
},
|
|
46
|
+
table_getFlatHeaders: {
|
|
47
|
+
fn: () => table_getFlatHeaders(table),
|
|
48
|
+
memoDeps: () => [table.getHeaderGroups()],
|
|
49
|
+
},
|
|
50
|
+
table_getLeafHeaders: {
|
|
51
|
+
fn: () => table_getLeafHeaders(table),
|
|
52
|
+
memoDeps: () => [table.getHeaderGroups()],
|
|
53
|
+
},
|
|
54
|
+
})
|
|
55
|
+
},
|
|
73
56
|
}
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* The Core Headers feature provides the core header functionality.
|
|
77
|
-
*/
|
|
78
|
-
export const coreHeadersFeature = constructCoreHeadersFeature()
|
|
@@ -6,8 +6,8 @@ import type { HeaderGroup } from '../../types/HeaderGroup'
|
|
|
6
6
|
import type { Column } from '../../types/Column'
|
|
7
7
|
|
|
8
8
|
export interface Table_Headers<
|
|
9
|
-
TFeatures extends TableFeatures,
|
|
10
|
-
TData extends RowData,
|
|
9
|
+
in out TFeatures extends TableFeatures,
|
|
10
|
+
in out TData extends RowData,
|
|
11
11
|
> {
|
|
12
12
|
/**
|
|
13
13
|
* Builds the visible header groups for the current column tree, visibility,
|
|
@@ -30,8 +30,8 @@ export interface Table_Headers<
|
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
export interface HeaderContext<
|
|
33
|
-
TFeatures extends TableFeatures,
|
|
34
|
-
TData extends RowData,
|
|
33
|
+
in out TFeatures extends TableFeatures,
|
|
34
|
+
in out TData extends RowData,
|
|
35
35
|
TValue extends CellData = CellData,
|
|
36
36
|
> {
|
|
37
37
|
/**
|
|
@@ -49,8 +49,8 @@ export interface HeaderContext<
|
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
export interface Header_CoreProperties<
|
|
52
|
-
TFeatures extends TableFeatures,
|
|
53
|
-
TData extends RowData,
|
|
52
|
+
in out TFeatures extends TableFeatures,
|
|
53
|
+
in out TData extends RowData,
|
|
54
54
|
TValue extends CellData = CellData,
|
|
55
55
|
> {
|
|
56
56
|
/**
|
|
@@ -100,8 +100,8 @@ export interface Header_CoreProperties<
|
|
|
100
100
|
}
|
|
101
101
|
|
|
102
102
|
export interface Header_Header<
|
|
103
|
-
TFeatures extends TableFeatures,
|
|
104
|
-
TData extends RowData,
|
|
103
|
+
in out TFeatures extends TableFeatures,
|
|
104
|
+
in out TData extends RowData,
|
|
105
105
|
TValue extends CellData = CellData,
|
|
106
106
|
> extends Header_CoreProperties<TFeatures, TData, TValue> {
|
|
107
107
|
/**
|
|
@@ -115,8 +115,8 @@ export interface Header_Header<
|
|
|
115
115
|
}
|
|
116
116
|
|
|
117
117
|
export interface HeaderGroup_Header<
|
|
118
|
-
TFeatures extends TableFeatures,
|
|
119
|
-
TData extends RowData,
|
|
118
|
+
in out TFeatures extends TableFeatures,
|
|
119
|
+
in out TData extends RowData,
|
|
120
120
|
TValue extends CellData = CellData,
|
|
121
121
|
> {
|
|
122
122
|
depth: number
|
|
@@ -86,7 +86,7 @@ export function table_getHeaderGroups<
|
|
|
86
86
|
table,
|
|
87
87
|
'getVisibleLeafColumns',
|
|
88
88
|
table_getVisibleLeafColumns,
|
|
89
|
-
)
|
|
89
|
+
)
|
|
90
90
|
|
|
91
91
|
// Fast path: no columns are pinned — skip per-side lookups, partition, and spread.
|
|
92
92
|
if (!left.length && !right.length) {
|