@tanstack/table-core 9.0.0-alpha.6 → 9.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +127 -0
- package/dist/core/cells/constructCell.cjs +34 -0
- package/dist/core/cells/constructCell.cjs.map +1 -0
- package/dist/core/cells/constructCell.d.cts +17 -0
- package/dist/core/cells/constructCell.d.ts +17 -0
- package/dist/core/cells/constructCell.js +33 -0
- package/dist/core/cells/constructCell.js.map +1 -0
- package/dist/core/cells/coreCellsFeature.cjs +30 -0
- package/dist/core/cells/coreCellsFeature.cjs.map +1 -0
- package/dist/core/cells/coreCellsFeature.d.cts +18 -0
- package/dist/core/cells/coreCellsFeature.d.ts +18 -0
- package/dist/core/cells/coreCellsFeature.js +29 -0
- package/dist/core/cells/coreCellsFeature.js.map +1 -0
- package/dist/core/cells/coreCellsFeature.types.d.cts +57 -0
- package/dist/core/cells/coreCellsFeature.types.d.ts +57 -0
- package/dist/core/cells/coreCellsFeature.utils.cjs +57 -0
- package/dist/core/cells/coreCellsFeature.utils.cjs.map +1 -0
- package/dist/core/cells/coreCellsFeature.utils.d.cts +53 -0
- package/dist/core/cells/coreCellsFeature.utils.d.ts +53 -0
- package/dist/core/cells/coreCellsFeature.utils.js +54 -0
- package/dist/core/cells/coreCellsFeature.utils.js.map +1 -0
- package/dist/core/columns/constructColumn.cjs +61 -0
- package/dist/core/columns/constructColumn.cjs.map +1 -0
- package/dist/core/columns/constructColumn.d.cts +16 -0
- package/dist/core/columns/constructColumn.d.ts +16 -0
- package/dist/core/columns/constructColumn.js +60 -0
- package/dist/core/columns/constructColumn.js.map +1 -0
- package/dist/core/columns/coreColumnsFeature.cjs +79 -0
- package/dist/core/columns/coreColumnsFeature.cjs.map +1 -0
- package/dist/core/columns/coreColumnsFeature.d.cts +18 -0
- package/dist/core/columns/coreColumnsFeature.d.ts +18 -0
- package/dist/core/columns/coreColumnsFeature.js +78 -0
- package/dist/core/columns/coreColumnsFeature.js.map +1 -0
- package/dist/core/columns/coreColumnsFeature.types.d.cts +94 -0
- package/dist/core/columns/coreColumnsFeature.types.d.ts +94 -0
- package/dist/core/columns/coreColumnsFeature.utils.cjs +187 -0
- package/dist/core/columns/coreColumnsFeature.utils.cjs.map +1 -0
- package/dist/core/columns/coreColumnsFeature.utils.d.cts +119 -0
- package/dist/core/columns/coreColumnsFeature.utils.d.ts +119 -0
- package/dist/core/columns/coreColumnsFeature.utils.js +179 -0
- package/dist/core/columns/coreColumnsFeature.utils.js.map +1 -0
- package/dist/core/coreFeatures.cjs +25 -0
- package/dist/core/coreFeatures.cjs.map +1 -0
- package/dist/core/coreFeatures.d.cts +26 -0
- package/dist/core/coreFeatures.d.ts +26 -0
- package/dist/core/coreFeatures.js +25 -0
- package/dist/core/coreFeatures.js.map +1 -0
- package/dist/core/headers/buildHeaderGroups.cjs +103 -0
- package/dist/core/headers/buildHeaderGroups.cjs.map +1 -0
- package/dist/core/headers/buildHeaderGroups.d.cts +16 -0
- package/dist/core/headers/buildHeaderGroups.d.ts +16 -0
- package/dist/core/headers/buildHeaderGroups.js +103 -0
- package/dist/core/headers/buildHeaderGroups.js.map +1 -0
- package/dist/core/headers/constructHeader.cjs +41 -0
- package/dist/core/headers/constructHeader.cjs.map +1 -0
- package/dist/core/headers/constructHeader.d.cts +22 -0
- package/dist/core/headers/constructHeader.d.ts +22 -0
- package/dist/core/headers/constructHeader.js +40 -0
- package/dist/core/headers/constructHeader.js.map +1 -0
- package/dist/core/headers/coreHeadersFeature.cjs +64 -0
- package/dist/core/headers/coreHeadersFeature.cjs.map +1 -0
- package/dist/core/headers/coreHeadersFeature.d.cts +18 -0
- package/dist/core/headers/coreHeadersFeature.d.ts +18 -0
- package/dist/core/headers/coreHeadersFeature.js +63 -0
- package/dist/core/headers/coreHeadersFeature.js.map +1 -0
- package/dist/core/headers/coreHeadersFeature.types.d.cts +106 -0
- package/dist/core/headers/coreHeadersFeature.types.d.ts +106 -0
- package/dist/core/headers/coreHeadersFeature.utils.cjs +142 -0
- package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -0
- package/dist/core/headers/coreHeadersFeature.utils.d.cts +85 -0
- package/dist/core/headers/coreHeadersFeature.utils.d.ts +85 -0
- package/dist/core/headers/coreHeadersFeature.utils.js +137 -0
- package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -0
- package/dist/core/reactivity/coreReactivityFeature.types.d.cts +48 -0
- package/dist/core/reactivity/coreReactivityFeature.types.d.ts +48 -0
- package/dist/core/reactivity/coreReactivityFeature.utils.cjs +24 -0
- package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +1 -0
- package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +24 -0
- package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +24 -0
- package/dist/core/reactivity/coreReactivityFeature.utils.js +23 -0
- package/dist/core/reactivity/coreReactivityFeature.utils.js.map +1 -0
- package/dist/core/row-models/coreRowModelsFeature.cjs +36 -0
- package/dist/core/row-models/coreRowModelsFeature.cjs.map +1 -0
- package/dist/core/row-models/coreRowModelsFeature.d.cts +18 -0
- package/dist/core/row-models/coreRowModelsFeature.d.ts +18 -0
- package/dist/core/row-models/coreRowModelsFeature.js +35 -0
- package/dist/core/row-models/coreRowModelsFeature.js.map +1 -0
- package/dist/core/row-models/coreRowModelsFeature.types.d.cts +43 -0
- package/dist/core/row-models/coreRowModelsFeature.types.d.ts +43 -0
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs +215 -0
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -0
- package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +153 -0
- package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +153 -0
- package/dist/core/row-models/coreRowModelsFeature.utils.js +204 -0
- package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -0
- package/dist/core/row-models/createCoreRowModel.cjs +52 -0
- package/dist/core/row-models/createCoreRowModel.cjs.map +1 -0
- package/dist/core/row-models/createCoreRowModel.d.cts +15 -0
- package/dist/core/row-models/createCoreRowModel.d.ts +15 -0
- package/dist/core/row-models/createCoreRowModel.js +52 -0
- package/dist/core/row-models/createCoreRowModel.js.map +1 -0
- package/dist/core/rows/constructRow.cjs +44 -0
- package/dist/core/rows/constructRow.cjs.map +1 -0
- package/dist/core/rows/constructRow.d.cts +15 -0
- package/dist/core/rows/constructRow.d.ts +15 -0
- package/dist/core/rows/constructRow.js +43 -0
- package/dist/core/rows/constructRow.js.map +1 -0
- package/dist/core/rows/coreRowsFeature.cjs +46 -0
- package/dist/core/rows/coreRowsFeature.cjs.map +1 -0
- package/dist/core/rows/coreRowsFeature.d.cts +18 -0
- package/dist/core/rows/coreRowsFeature.d.ts +18 -0
- package/dist/core/rows/coreRowsFeature.js +45 -0
- package/dist/core/rows/coreRowsFeature.js.map +1 -0
- package/dist/core/rows/coreRowsFeature.types.d.cts +99 -0
- package/dist/core/rows/coreRowsFeature.types.d.ts +99 -0
- package/dist/core/rows/coreRowsFeature.utils.cjs +192 -0
- package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -0
- package/dist/core/rows/coreRowsFeature.utils.d.cts +127 -0
- package/dist/core/rows/coreRowsFeature.utils.d.ts +127 -0
- package/dist/core/rows/coreRowsFeature.utils.js +183 -0
- package/dist/core/rows/coreRowsFeature.utils.js.map +1 -0
- package/dist/core/table/constructTable.cjs +118 -0
- package/dist/core/table/constructTable.cjs.map +1 -0
- package/dist/core/table/constructTable.d.cts +22 -0
- package/dist/core/table/constructTable.d.ts +22 -0
- package/dist/core/table/constructTable.js +117 -0
- package/dist/core/table/constructTable.js.map +1 -0
- package/dist/core/table/coreTablesFeature.cjs +26 -0
- package/dist/core/table/coreTablesFeature.cjs.map +1 -0
- package/dist/core/table/coreTablesFeature.d.cts +18 -0
- package/dist/core/table/coreTablesFeature.d.ts +18 -0
- package/dist/core/table/coreTablesFeature.js +25 -0
- package/dist/core/table/coreTablesFeature.js.map +1 -0
- package/dist/core/table/coreTablesFeature.types.d.cts +186 -0
- package/dist/core/table/coreTablesFeature.types.d.ts +186 -0
- package/dist/core/table/coreTablesFeature.utils.cjs +96 -0
- package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -0
- package/dist/core/table/coreTablesFeature.utils.d.cts +57 -0
- package/dist/core/table/coreTablesFeature.utils.d.ts +57 -0
- package/dist/core/table/coreTablesFeature.utils.js +93 -0
- package/dist/core/table/coreTablesFeature.utils.js.map +1 -0
- package/dist/features/column-faceting/columnFacetingFeature.cjs +73 -0
- package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -0
- package/dist/features/column-faceting/columnFacetingFeature.d.cts +21 -0
- package/dist/features/column-faceting/columnFacetingFeature.d.ts +21 -0
- package/dist/features/column-faceting/columnFacetingFeature.js +72 -0
- package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -0
- package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +85 -0
- package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +85 -0
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +103 -0
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -0
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +84 -0
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +84 -0
- package/dist/features/column-faceting/columnFacetingFeature.utils.js +97 -0
- package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -0
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +44 -0
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +1 -0
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +14 -0
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +14 -0
- package/dist/features/column-faceting/createFacetedMinMaxValues.js +44 -0
- package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +1 -0
- package/dist/features/column-faceting/createFacetedRowModel.cjs +50 -0
- package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -0
- package/dist/features/column-faceting/createFacetedRowModel.d.cts +15 -0
- package/dist/features/column-faceting/createFacetedRowModel.d.ts +15 -0
- package/dist/features/column-faceting/createFacetedRowModel.js +50 -0
- package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -0
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs +41 -0
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -0
- package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +14 -0
- package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +14 -0
- package/dist/features/column-faceting/createFacetedUniqueValues.js +41 -0
- package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -0
- package/dist/features/column-filtering/columnFilteringFeature.cjs +63 -0
- package/dist/features/column-filtering/columnFilteringFeature.cjs.map +1 -0
- package/dist/features/column-filtering/columnFilteringFeature.d.cts +22 -0
- package/dist/features/column-filtering/columnFilteringFeature.d.ts +22 -0
- package/dist/features/column-filtering/columnFilteringFeature.js +62 -0
- package/dist/features/column-filtering/columnFilteringFeature.js.map +1 -0
- package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +160 -0
- package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +160 -0
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +212 -0
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -0
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +143 -0
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +143 -0
- package/dist/features/column-filtering/columnFilteringFeature.utils.js +202 -0
- package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -0
- package/dist/features/column-filtering/createFilteredRowModel.cjs +110 -0
- package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -0
- package/dist/features/column-filtering/createFilteredRowModel.d.cts +16 -0
- package/dist/features/column-filtering/createFilteredRowModel.d.ts +16 -0
- package/dist/features/column-filtering/createFilteredRowModel.js +110 -0
- package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -0
- package/dist/features/column-filtering/filterRowsUtils.cjs +81 -0
- package/dist/features/column-filtering/filterRowsUtils.cjs.map +1 -0
- package/dist/features/column-filtering/filterRowsUtils.js +81 -0
- package/dist/features/column-filtering/filterRowsUtils.js.map +1 -0
- package/dist/features/column-grouping/columnGroupingFeature.cjs +79 -0
- package/dist/features/column-grouping/columnGroupingFeature.cjs.map +1 -0
- package/dist/features/column-grouping/columnGroupingFeature.d.cts +21 -0
- package/dist/features/column-grouping/columnGroupingFeature.d.ts +21 -0
- package/dist/features/column-grouping/columnGroupingFeature.js +78 -0
- package/dist/features/column-grouping/columnGroupingFeature.js.map +1 -0
- package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +165 -0
- package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +165 -0
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +250 -0
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -0
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +190 -0
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +190 -0
- package/dist/features/column-grouping/columnGroupingFeature.utils.js +236 -0
- package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -0
- package/dist/features/column-grouping/createGroupedRowModel.cjs +119 -0
- package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -0
- package/dist/features/column-grouping/createGroupedRowModel.d.cts +16 -0
- package/dist/features/column-grouping/createGroupedRowModel.d.ts +16 -0
- package/dist/features/column-grouping/createGroupedRowModel.js +119 -0
- package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -0
- package/dist/features/column-ordering/columnOrderingFeature.cjs +70 -0
- package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -0
- package/dist/features/column-ordering/columnOrderingFeature.d.cts +21 -0
- package/dist/features/column-ordering/columnOrderingFeature.d.ts +21 -0
- package/dist/features/column-ordering/columnOrderingFeature.js +69 -0
- package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -0
- package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +56 -0
- package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +56 -0
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +172 -0
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +1 -0
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +107 -0
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +107 -0
- package/dist/features/column-ordering/columnOrderingFeature.utils.js +165 -0
- package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -0
- package/dist/features/column-pinning/columnPinningFeature.cjs +233 -0
- package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -0
- package/dist/features/column-pinning/columnPinningFeature.d.cts +21 -0
- package/dist/features/column-pinning/columnPinningFeature.d.ts +21 -0
- package/dist/features/column-pinning/columnPinningFeature.js +232 -0
- package/dist/features/column-pinning/columnPinningFeature.js.map +1 -0
- package/dist/features/column-pinning/columnPinningFeature.types.d.cts +178 -0
- package/dist/features/column-pinning/columnPinningFeature.types.d.ts +178 -0
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs +585 -0
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -0
- package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +375 -0
- package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +375 -0
- package/dist/features/column-pinning/columnPinningFeature.utils.js +555 -0
- package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -0
- package/dist/features/column-resizing/columnResizingFeature.cjs +53 -0
- package/dist/features/column-resizing/columnResizingFeature.cjs.map +1 -0
- package/dist/features/column-resizing/columnResizingFeature.d.cts +21 -0
- package/dist/features/column-resizing/columnResizingFeature.d.ts +21 -0
- package/dist/features/column-resizing/columnResizingFeature.js +52 -0
- package/dist/features/column-resizing/columnResizingFeature.js.map +1 -0
- package/dist/features/column-resizing/columnResizingFeature.types.d.cts +81 -0
- package/dist/features/column-resizing/columnResizingFeature.types.d.ts +81 -0
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs +246 -0
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -0
- package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +109 -0
- package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +109 -0
- package/dist/features/column-resizing/columnResizingFeature.utils.js +239 -0
- package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -0
- package/dist/features/column-sizing/columnSizingFeature.cjs +137 -0
- package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -0
- package/dist/features/column-sizing/columnSizingFeature.d.cts +22 -0
- package/dist/features/column-sizing/columnSizingFeature.d.ts +22 -0
- package/dist/features/column-sizing/columnSizingFeature.js +136 -0
- package/dist/features/column-sizing/columnSizingFeature.js.map +1 -0
- package/dist/features/column-sizing/columnSizingFeature.types.d.cts +96 -0
- package/dist/features/column-sizing/columnSizingFeature.types.d.ts +96 -0
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs +256 -0
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -0
- package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +182 -0
- package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +182 -0
- package/dist/features/column-sizing/columnSizingFeature.utils.js +243 -0
- package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -0
- package/dist/features/column-visibility/columnVisibilityFeature.cjs +106 -0
- package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -0
- package/dist/features/column-visibility/columnVisibilityFeature.d.cts +21 -0
- package/dist/features/column-visibility/columnVisibilityFeature.d.ts +21 -0
- package/dist/features/column-visibility/columnVisibilityFeature.js +105 -0
- package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -0
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +97 -0
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +97 -0
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +283 -0
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -0
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +189 -0
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +189 -0
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js +269 -0
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -0
- package/dist/features/global-filtering/globalFilteringFeature.cjs +53 -0
- package/dist/features/global-filtering/globalFilteringFeature.cjs.map +1 -0
- package/dist/features/global-filtering/globalFilteringFeature.d.cts +21 -0
- package/dist/features/global-filtering/globalFilteringFeature.d.ts +21 -0
- package/dist/features/global-filtering/globalFilteringFeature.js +52 -0
- package/dist/features/global-filtering/globalFilteringFeature.js.map +1 -0
- package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +71 -0
- package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +71 -0
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +88 -0
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -0
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +72 -0
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +72 -0
- package/dist/features/global-filtering/globalFilteringFeature.utils.js +84 -0
- package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -0
- package/dist/features/row-expanding/createExpandedRowModel.cjs +59 -0
- package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -0
- package/dist/features/row-expanding/createExpandedRowModel.d.cts +21 -0
- package/dist/features/row-expanding/createExpandedRowModel.d.ts +21 -0
- package/dist/features/row-expanding/createExpandedRowModel.js +58 -0
- package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -0
- package/dist/features/row-expanding/rowExpandingFeature.cjs +59 -0
- package/dist/features/row-expanding/rowExpandingFeature.cjs.map +1 -0
- package/dist/features/row-expanding/rowExpandingFeature.d.cts +21 -0
- package/dist/features/row-expanding/rowExpandingFeature.d.ts +21 -0
- package/dist/features/row-expanding/rowExpandingFeature.js +58 -0
- package/dist/features/row-expanding/rowExpandingFeature.js.map +1 -0
- package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +127 -0
- package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +127 -0
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +281 -0
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -0
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +191 -0
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +191 -0
- package/dist/features/row-expanding/rowExpandingFeature.utils.js +267 -0
- package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -0
- package/dist/features/row-pagination/createPaginatedRowModel.cjs +62 -0
- package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -0
- package/dist/features/row-pagination/createPaginatedRowModel.d.cts +15 -0
- package/dist/features/row-pagination/createPaginatedRowModel.d.ts +15 -0
- package/dist/features/row-pagination/createPaginatedRowModel.js +62 -0
- package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -0
- package/dist/features/row-pagination/rowPaginationFeature.cjs +57 -0
- package/dist/features/row-pagination/rowPaginationFeature.cjs.map +1 -0
- package/dist/features/row-pagination/rowPaginationFeature.d.cts +21 -0
- package/dist/features/row-pagination/rowPaginationFeature.d.ts +21 -0
- package/dist/features/row-pagination/rowPaginationFeature.js +56 -0
- package/dist/features/row-pagination/rowPaginationFeature.js.map +1 -0
- package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +135 -0
- package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +135 -0
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +312 -0
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +1 -0
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +218 -0
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +218 -0
- package/dist/features/row-pagination/rowPaginationFeature.utils.js +296 -0
- package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -0
- package/dist/features/row-pinning/rowPinningFeature.cjs +79 -0
- package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -0
- package/dist/features/row-pinning/rowPinningFeature.d.cts +21 -0
- package/dist/features/row-pinning/rowPinningFeature.d.ts +21 -0
- package/dist/features/row-pinning/rowPinningFeature.js +78 -0
- package/dist/features/row-pinning/rowPinningFeature.js.map +1 -0
- package/dist/features/row-pinning/rowPinningFeature.types.d.cts +83 -0
- package/dist/features/row-pinning/rowPinningFeature.types.d.ts +83 -0
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs +229 -0
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -0
- package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +143 -0
- package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +143 -0
- package/dist/features/row-pinning/rowPinningFeature.utils.js +219 -0
- package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -0
- package/dist/features/row-selection/rowSelectionFeature.cjs +87 -0
- package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -0
- package/dist/features/row-selection/rowSelectionFeature.d.cts +21 -0
- package/dist/features/row-selection/rowSelectionFeature.d.ts +21 -0
- package/dist/features/row-selection/rowSelectionFeature.js +86 -0
- package/dist/features/row-selection/rowSelectionFeature.js.map +1 -0
- package/dist/features/row-selection/rowSelectionFeature.types.d.cts +136 -0
- package/dist/features/row-selection/rowSelectionFeature.types.d.ts +136 -0
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs +514 -0
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -0
- package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +318 -0
- package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +318 -0
- package/dist/features/row-selection/rowSelectionFeature.utils.js +489 -0
- package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -0
- package/dist/features/row-sorting/createSortedRowModel.cjs +95 -0
- package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -0
- package/dist/features/row-sorting/createSortedRowModel.d.cts +16 -0
- package/dist/features/row-sorting/createSortedRowModel.d.ts +16 -0
- package/dist/features/row-sorting/createSortedRowModel.js +95 -0
- package/dist/features/row-sorting/createSortedRowModel.js.map +1 -0
- package/dist/features/row-sorting/rowSortingFeature.cjs +67 -0
- package/dist/features/row-sorting/rowSortingFeature.cjs.map +1 -0
- package/dist/features/row-sorting/rowSortingFeature.d.cts +21 -0
- package/dist/features/row-sorting/rowSortingFeature.d.ts +21 -0
- package/dist/features/row-sorting/rowSortingFeature.js +66 -0
- package/dist/features/row-sorting/rowSortingFeature.js.map +1 -0
- package/dist/features/row-sorting/rowSortingFeature.types.d.cts +188 -0
- package/dist/features/row-sorting/rowSortingFeature.types.d.ts +188 -0
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs +302 -0
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -0
- package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +193 -0
- package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +193 -0
- package/dist/features/row-sorting/rowSortingFeature.utils.js +288 -0
- package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -0
- package/dist/features/stockFeatures.cjs +41 -0
- package/dist/features/stockFeatures.cjs.map +1 -0
- package/dist/features/stockFeatures.d.cts +41 -0
- package/dist/features/stockFeatures.d.ts +41 -0
- package/dist/features/stockFeatures.js +41 -0
- package/dist/features/stockFeatures.js.map +1 -0
- package/dist/flex-render.cjs +29 -0
- package/dist/flex-render.cjs.map +1 -0
- package/dist/flex-render.d.cts +34 -0
- package/dist/flex-render.d.ts +34 -0
- package/dist/flex-render.js +26 -0
- package/dist/flex-render.js.map +1 -0
- package/dist/fns/aggregationFns.cjs +161 -0
- package/dist/fns/aggregationFns.cjs.map +1 -0
- package/dist/fns/aggregationFns.d.cts +83 -0
- package/dist/fns/aggregationFns.d.ts +83 -0
- package/dist/fns/aggregationFns.js +151 -0
- package/dist/fns/aggregationFns.js.map +1 -0
- package/dist/fns/filterFns.cjs +215 -0
- package/dist/fns/filterFns.cjs.map +1 -0
- package/dist/fns/filterFns.d.cts +113 -0
- package/dist/fns/filterFns.d.ts +113 -0
- package/dist/fns/filterFns.js +199 -0
- package/dist/fns/filterFns.js.map +1 -0
- package/dist/fns/sortFns.cjs +118 -0
- package/dist/fns/sortFns.cjs.map +1 -0
- package/dist/fns/sortFns.d.cts +63 -0
- package/dist/fns/sortFns.d.ts +63 -0
- package/dist/fns/sortFns.js +110 -0
- package/dist/fns/sortFns.js.map +1 -0
- package/dist/helpers/columnHelper.cjs +41 -0
- package/dist/helpers/columnHelper.cjs.map +1 -0
- package/dist/helpers/columnHelper.d.cts +71 -0
- package/dist/helpers/columnHelper.d.ts +71 -0
- package/dist/helpers/columnHelper.js +40 -0
- package/dist/helpers/columnHelper.js.map +1 -0
- package/dist/helpers/tableFeatures.cjs +20 -0
- package/dist/helpers/tableFeatures.cjs.map +1 -0
- package/dist/helpers/tableFeatures.d.cts +18 -0
- package/dist/helpers/tableFeatures.d.ts +18 -0
- package/dist/helpers/tableFeatures.js +19 -0
- package/dist/helpers/tableFeatures.js.map +1 -0
- package/dist/helpers/tableOptions.cjs +15 -0
- package/dist/helpers/tableOptions.cjs.map +1 -0
- package/dist/helpers/tableOptions.d.cts +57 -0
- package/dist/helpers/tableOptions.d.ts +57 -0
- package/dist/helpers/tableOptions.js +14 -0
- package/dist/helpers/tableOptions.js.map +1 -0
- package/dist/index.cjs +153 -0
- package/dist/index.d.cts +78 -0
- package/dist/index.d.ts +78 -0
- package/dist/index.js +46 -0
- package/dist/reactivity.cjs +4 -0
- package/dist/reactivity.d.cts +3 -0
- package/dist/reactivity.d.ts +3 -0
- package/dist/reactivity.js +3 -0
- package/dist/static-functions.cjs +263 -0
- package/dist/static-functions.d.cts +21 -0
- package/dist/static-functions.d.ts +21 -0
- package/dist/static-functions.js +22 -0
- package/dist/store-reactivity-bindings.cjs +44 -0
- package/dist/store-reactivity-bindings.cjs.map +1 -0
- package/dist/store-reactivity-bindings.d.cts +22 -0
- package/dist/store-reactivity-bindings.d.ts +22 -0
- package/dist/store-reactivity-bindings.js +43 -0
- package/dist/store-reactivity-bindings.js.map +1 -0
- package/dist/types/Cell.d.cts +16 -0
- package/dist/types/Cell.d.ts +16 -0
- package/dist/types/Column.d.cts +29 -0
- package/dist/types/Column.d.ts +29 -0
- package/dist/types/ColumnDef.d.cts +104 -0
- package/dist/types/ColumnDef.d.ts +104 -0
- package/dist/types/Header.d.cts +17 -0
- package/dist/types/Header.d.ts +17 -0
- package/dist/types/HeaderGroup.d.cts +15 -0
- package/dist/types/HeaderGroup.d.ts +15 -0
- package/dist/types/Row.d.cts +22 -0
- package/dist/types/Row.d.ts +22 -0
- package/dist/types/RowModel.d.cts +26 -0
- package/dist/types/RowModel.d.ts +26 -0
- package/dist/types/RowModelFns.d.cts +18 -0
- package/dist/types/RowModelFns.d.ts +18 -0
- package/dist/types/Table.d.cts +59 -0
- package/dist/types/Table.d.ts +59 -0
- package/dist/types/TableFeatures.d.cts +77 -0
- package/dist/types/TableFeatures.d.ts +77 -0
- package/dist/types/TableOptions.d.cts +54 -0
- package/dist/types/TableOptions.d.ts +54 -0
- package/dist/types/TableState.d.cts +39 -0
- package/dist/types/TableState.d.ts +39 -0
- package/dist/types/type-utils.d.cts +23 -0
- package/dist/types/type-utils.d.ts +23 -0
- package/dist/utils.cjs +243 -0
- package/dist/utils.cjs.map +1 -0
- package/dist/utils.d.cts +114 -0
- package/dist/utils.d.ts +114 -0
- package/dist/utils.js +232 -0
- package/dist/utils.js.map +1 -0
- package/package.json +43 -16
- package/skills/column-definitions/SKILL.md +333 -0
- package/skills/column-layout/SKILL.md +328 -0
- package/skills/column-layout/references/subsystems.md +220 -0
- package/skills/customizing-feature-behavior/SKILL.md +416 -0
- package/skills/filtering/SKILL.md +357 -0
- package/skills/filtering/references/faceting-and-fuzzy.md +191 -0
- package/skills/grouping/SKILL.md +448 -0
- package/skills/migrate-v8-to-v9/SKILL.md +495 -0
- package/skills/pagination/SKILL.md +385 -0
- package/skills/row-expanding/SKILL.md +348 -0
- package/skills/row-pinning/SKILL.md +269 -0
- package/skills/row-selection/SKILL.md +391 -0
- package/skills/setup/SKILL.md +400 -0
- package/skills/sorting/SKILL.md +344 -0
- package/skills/state-management/SKILL.md +388 -0
- package/src/core/cells/constructCell.ts +55 -0
- package/src/core/cells/coreCellsFeature.ts +49 -0
- package/src/core/cells/coreCellsFeature.types.ts +68 -0
- package/src/core/cells/coreCellsFeature.utils.ts +68 -0
- package/src/core/columns/constructColumn.ts +119 -0
- package/src/core/columns/coreColumnsFeature.ts +100 -0
- package/src/core/columns/coreColumnsFeature.types.ts +108 -0
- package/src/core/columns/coreColumnsFeature.utils.ts +275 -0
- package/src/core/coreFeatures.ts +31 -0
- package/src/core/headers/buildHeaderGroups.ts +182 -0
- package/src/core/headers/constructHeader.ts +67 -0
- package/src/core/headers/coreHeadersFeature.ts +78 -0
- package/src/core/headers/coreHeadersFeature.types.ts +125 -0
- package/src/core/headers/coreHeadersFeature.utils.ts +200 -0
- package/src/core/reactivity/coreReactivityFeature.types.ts +56 -0
- package/src/core/reactivity/coreReactivityFeature.utils.ts +44 -0
- package/src/core/row-models/coreRowModelsFeature.ts +83 -0
- package/src/core/row-models/coreRowModelsFeature.types.ts +68 -0
- package/src/core/row-models/coreRowModelsFeature.utils.ts +272 -0
- package/src/core/row-models/createCoreRowModel.ts +93 -0
- package/src/core/rows/constructRow.ts +66 -0
- package/src/core/rows/coreRowsFeature.ts +89 -0
- package/src/core/rows/coreRowsFeature.types.ts +117 -0
- package/src/core/rows/coreRowsFeature.utils.ts +264 -0
- package/src/core/table/constructTable.ts +169 -0
- package/src/core/table/coreTablesFeature.ts +41 -0
- package/src/core/table/coreTablesFeature.types.ts +216 -0
- package/src/core/table/coreTablesFeature.utils.ts +131 -0
- package/src/features/column-faceting/columnFacetingFeature.ts +120 -0
- package/src/features/column-faceting/columnFacetingFeature.types.ts +109 -0
- package/src/features/column-faceting/columnFacetingFeature.utils.ts +145 -0
- package/src/features/column-faceting/createFacetedMinMaxValues.ts +66 -0
- package/src/features/column-faceting/createFacetedRowModel.ts +85 -0
- package/src/features/column-faceting/createFacetedUniqueValues.ts +66 -0
- package/src/features/column-filtering/columnFilteringFeature.ts +129 -0
- package/src/features/column-filtering/columnFilteringFeature.types.ts +232 -0
- package/src/features/column-filtering/columnFilteringFeature.utils.ts +331 -0
- package/src/features/column-filtering/createFilteredRowModel.ts +183 -0
- package/src/features/column-filtering/filterRowsUtils.ts +157 -0
- package/src/features/column-grouping/columnGroupingFeature.ts +159 -0
- package/src/features/column-grouping/columnGroupingFeature.types.ts +226 -0
- package/src/features/column-grouping/columnGroupingFeature.utils.ts +354 -0
- package/src/features/column-grouping/createGroupedRowModel.ts +220 -0
- package/src/features/column-ordering/columnOrderingFeature.ts +105 -0
- package/src/features/column-ordering/columnOrderingFeature.types.ts +60 -0
- package/src/features/column-ordering/columnOrderingFeature.utils.ts +241 -0
- package/src/features/column-pinning/columnPinningFeature.ts +352 -0
- package/src/features/column-pinning/columnPinningFeature.types.ts +192 -0
- package/src/features/column-pinning/columnPinningFeature.utils.ts +908 -0
- package/src/features/column-resizing/columnResizingFeature.ts +99 -0
- package/src/features/column-resizing/columnResizingFeature.types.ts +89 -0
- package/src/features/column-resizing/columnResizingFeature.utils.ts +364 -0
- package/src/features/column-sizing/columnSizingFeature.ts +182 -0
- package/src/features/column-sizing/columnSizingFeature.types.ts +102 -0
- package/src/features/column-sizing/columnSizingFeature.utils.ts +381 -0
- package/src/features/column-visibility/columnVisibilityFeature.ts +159 -0
- package/src/features/column-visibility/columnVisibilityFeature.types.ts +112 -0
- package/src/features/column-visibility/columnVisibilityFeature.utils.ts +384 -0
- package/src/features/global-filtering/globalFilteringFeature.ts +99 -0
- package/src/features/global-filtering/globalFilteringFeature.types.ts +91 -0
- package/src/features/global-filtering/globalFilteringFeature.utils.ts +116 -0
- package/src/features/row-expanding/createExpandedRowModel.ts +82 -0
- package/src/features/row-expanding/rowExpandingFeature.ts +130 -0
- package/src/features/row-expanding/rowExpandingFeature.types.ts +147 -0
- package/src/features/row-expanding/rowExpandingFeature.utils.ts +374 -0
- package/src/features/row-pagination/createPaginatedRowModel.ts +83 -0
- package/src/features/row-pagination/rowPaginationFeature.ts +129 -0
- package/src/features/row-pagination/rowPaginationFeature.types.ts +152 -0
- package/src/features/row-pagination/rowPaginationFeature.utils.ts +400 -0
- package/src/features/row-pinning/rowPinningFeature.ts +129 -0
- package/src/features/row-pinning/rowPinningFeature.types.ts +95 -0
- package/src/features/row-pinning/rowPinningFeature.utils.ts +323 -0
- package/src/features/row-selection/rowSelectionFeature.ts +172 -0
- package/src/features/row-selection/rowSelectionFeature.types.ts +151 -0
- package/src/features/row-selection/rowSelectionFeature.utils.ts +745 -0
- package/src/features/row-sorting/createSortedRowModel.ts +157 -0
- package/src/features/row-sorting/rowSortingFeature.ts +144 -0
- package/src/features/row-sorting/rowSortingFeature.types.ts +235 -0
- package/src/features/row-sorting/rowSortingFeature.utils.ts +487 -0
- package/src/features/stockFeatures.ts +53 -0
- package/src/flex-render.ts +70 -0
- package/src/fns/aggregationFns.ts +261 -0
- package/src/fns/filterFns.ts +415 -0
- package/src/fns/sortFns.ts +218 -0
- package/src/helpers/columnHelper.ts +122 -0
- package/src/helpers/tableFeatures.ts +24 -0
- package/src/helpers/tableOptions.ts +117 -0
- package/src/index.ts +137 -42
- package/src/process-env.d.ts +6 -0
- package/src/reactivity.ts +2 -0
- package/src/static-functions.ts +31 -0
- package/src/store-reactivity-bindings.ts +47 -0
- package/src/types/Cell.ts +41 -0
- package/src/types/Column.ts +86 -0
- package/src/types/ColumnDef.ts +255 -0
- package/src/types/Header.ts +45 -0
- package/src/types/HeaderGroup.ts +24 -0
- package/src/types/Row.ts +55 -0
- package/src/types/RowModel.ts +137 -0
- package/src/types/RowModelFns.ts +51 -0
- package/src/types/Table.ts +132 -0
- package/src/types/TableFeatures.ts +150 -0
- package/src/types/TableOptions.ts +140 -0
- package/src/types/TableState.ts +100 -0
- package/src/types/type-utils.ts +84 -0
- package/src/utils.ts +388 -166
- package/dist/cjs/aggregationFns.cjs +0 -94
- package/dist/cjs/aggregationFns.cjs.map +0 -1
- package/dist/cjs/aggregationFns.d.cts +0 -14
- package/dist/cjs/columnHelper.cjs +0 -19
- package/dist/cjs/columnHelper.cjs.map +0 -1
- package/dist/cjs/columnHelper.d.cts +0 -9
- package/dist/cjs/core/cell.cjs +0 -38
- package/dist/cjs/core/cell.cjs.map +0 -1
- package/dist/cjs/core/cell.d.cts +0 -50
- package/dist/cjs/core/column.cjs +0 -81
- package/dist/cjs/core/column.cjs.map +0 -1
- package/dist/cjs/core/column.d.cts +0 -56
- package/dist/cjs/core/headers.cjs +0 -310
- package/dist/cjs/core/headers.cjs.map +0 -1
- package/dist/cjs/core/headers.d.cts +0 -195
- package/dist/cjs/core/row.cjs +0 -92
- package/dist/cjs/core/row.cjs.map +0 -1
- package/dist/cjs/core/row.d.cts +0 -92
- package/dist/cjs/core/table.cjs +0 -232
- package/dist/cjs/core/table.cjs.map +0 -1
- package/dist/cjs/core/table.d.cts +0 -229
- package/dist/cjs/features/ColumnFaceting.cjs +0 -29
- package/dist/cjs/features/ColumnFaceting.cjs.map +0 -1
- package/dist/cjs/features/ColumnFaceting.d.cts +0 -35
- package/dist/cjs/features/ColumnFiltering.cjs +0 -137
- package/dist/cjs/features/ColumnFiltering.cjs.map +0 -1
- package/dist/cjs/features/ColumnFiltering.d.cts +0 -195
- package/dist/cjs/features/ColumnGrouping.cjs +0 -133
- package/dist/cjs/features/ColumnGrouping.cjs.map +0 -1
- package/dist/cjs/features/ColumnGrouping.d.cts +0 -202
- package/dist/cjs/features/ColumnOrdering.cjs +0 -76
- package/dist/cjs/features/ColumnOrdering.cjs.map +0 -1
- package/dist/cjs/features/ColumnOrdering.d.cts +0 -54
- package/dist/cjs/features/ColumnPinning.cjs +0 -145
- package/dist/cjs/features/ColumnPinning.cjs.map +0 -1
- package/dist/cjs/features/ColumnPinning.d.cts +0 -127
- package/dist/cjs/features/ColumnSizing.cjs +0 -307
- package/dist/cjs/features/ColumnSizing.cjs.map +0 -1
- package/dist/cjs/features/ColumnSizing.d.cts +0 -194
- package/dist/cjs/features/ColumnVisibility.cjs +0 -144
- package/dist/cjs/features/ColumnVisibility.cjs.map +0 -1
- package/dist/cjs/features/ColumnVisibility.d.cts +0 -130
- package/dist/cjs/features/GlobalFaceting.cjs +0 -29
- package/dist/cjs/features/GlobalFaceting.cjs.map +0 -1
- package/dist/cjs/features/GlobalFaceting.d.cts +0 -27
- package/dist/cjs/features/GlobalFiltering.cjs +0 -50
- package/dist/cjs/features/GlobalFiltering.cjs.map +0 -1
- package/dist/cjs/features/GlobalFiltering.d.cts +0 -80
- package/dist/cjs/features/RowExpanding.cjs +0 -152
- package/dist/cjs/features/RowExpanding.cjs.map +0 -1
- package/dist/cjs/features/RowExpanding.d.cts +0 -155
- package/dist/cjs/features/RowPagination.cjs +0 -161
- package/dist/cjs/features/RowPagination.cjs.map +0 -1
- package/dist/cjs/features/RowPagination.d.cts +0 -166
- package/dist/cjs/features/RowPinning.cjs +0 -132
- package/dist/cjs/features/RowPinning.cjs.map +0 -1
- package/dist/cjs/features/RowPinning.d.cts +0 -99
- package/dist/cjs/features/RowSelection.cjs +0 -296
- package/dist/cjs/features/RowSelection.cjs.map +0 -1
- package/dist/cjs/features/RowSelection.d.cts +0 -177
- package/dist/cjs/features/RowSorting.cjs +0 -200
- package/dist/cjs/features/RowSorting.cjs.map +0 -1
- package/dist/cjs/features/RowSorting.d.cts +0 -238
- package/dist/cjs/filterFns.cjs +0 -88
- package/dist/cjs/filterFns.cjs.map +0 -1
- package/dist/cjs/filterFns.d.cts +0 -14
- package/dist/cjs/index.cjs +0 -88
- package/dist/cjs/index.cjs.map +0 -1
- package/dist/cjs/index.d.cts +0 -34
- package/dist/cjs/sortingFns.cjs +0 -91
- package/dist/cjs/sortingFns.cjs.map +0 -1
- package/dist/cjs/sortingFns.d.cts +0 -12
- package/dist/cjs/types.d.cts +0 -120
- package/dist/cjs/utils/filterRowsUtils.cjs +0 -99
- package/dist/cjs/utils/filterRowsUtils.cjs.map +0 -1
- package/dist/cjs/utils/filterRowsUtils.d.cts +0 -3
- package/dist/cjs/utils/getCoreRowModel.cjs +0 -54
- package/dist/cjs/utils/getCoreRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getCoreRowModel.d.cts +0 -3
- package/dist/cjs/utils/getExpandedRowModel.cjs +0 -41
- package/dist/cjs/utils/getExpandedRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getExpandedRowModel.d.cts +0 -8
- package/dist/cjs/utils/getFacetedMinMaxValues.cjs +0 -35
- package/dist/cjs/utils/getFacetedMinMaxValues.cjs.map +0 -1
- package/dist/cjs/utils/getFacetedMinMaxValues.d.cts +0 -3
- package/dist/cjs/utils/getFacetedRowModel.cjs +0 -35
- package/dist/cjs/utils/getFacetedRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getFacetedRowModel.d.cts +0 -3
- package/dist/cjs/utils/getFacetedUniqueValues.cjs +0 -37
- package/dist/cjs/utils/getFacetedUniqueValues.cjs.map +0 -1
- package/dist/cjs/utils/getFacetedUniqueValues.d.cts +0 -3
- package/dist/cjs/utils/getFilteredRowModel.cjs +0 -116
- package/dist/cjs/utils/getFilteredRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getFilteredRowModel.d.cts +0 -3
- package/dist/cjs/utils/getGroupedRowModel.cjs +0 -118
- package/dist/cjs/utils/getGroupedRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getGroupedRowModel.d.cts +0 -3
- package/dist/cjs/utils/getPaginationRowModel.cjs +0 -49
- package/dist/cjs/utils/getPaginationRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getPaginationRowModel.d.cts +0 -5
- package/dist/cjs/utils/getSortedRowModel.cjs +0 -88
- package/dist/cjs/utils/getSortedRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getSortedRowModel.d.cts +0 -3
- package/dist/cjs/utils.cjs +0 -98
- package/dist/cjs/utils.cjs.map +0 -1
- package/dist/cjs/utils.d.cts +0 -39
- package/dist/esm/aggregationFns.d.ts +0 -14
- package/dist/esm/aggregationFns.js +0 -94
- package/dist/esm/aggregationFns.js.map +0 -1
- package/dist/esm/columnHelper.d.ts +0 -9
- package/dist/esm/columnHelper.js +0 -19
- package/dist/esm/columnHelper.js.map +0 -1
- package/dist/esm/core/cell.d.ts +0 -50
- package/dist/esm/core/cell.js +0 -38
- package/dist/esm/core/cell.js.map +0 -1
- package/dist/esm/core/column.d.ts +0 -56
- package/dist/esm/core/column.js +0 -81
- package/dist/esm/core/column.js.map +0 -1
- package/dist/esm/core/headers.d.ts +0 -195
- package/dist/esm/core/headers.js +0 -310
- package/dist/esm/core/headers.js.map +0 -1
- package/dist/esm/core/row.d.ts +0 -92
- package/dist/esm/core/row.js +0 -92
- package/dist/esm/core/row.js.map +0 -1
- package/dist/esm/core/table.d.ts +0 -229
- package/dist/esm/core/table.js +0 -232
- package/dist/esm/core/table.js.map +0 -1
- package/dist/esm/features/ColumnFaceting.d.ts +0 -35
- package/dist/esm/features/ColumnFaceting.js +0 -29
- package/dist/esm/features/ColumnFaceting.js.map +0 -1
- package/dist/esm/features/ColumnFiltering.d.ts +0 -195
- package/dist/esm/features/ColumnFiltering.js +0 -137
- package/dist/esm/features/ColumnFiltering.js.map +0 -1
- package/dist/esm/features/ColumnGrouping.d.ts +0 -202
- package/dist/esm/features/ColumnGrouping.js +0 -133
- package/dist/esm/features/ColumnGrouping.js.map +0 -1
- package/dist/esm/features/ColumnOrdering.d.ts +0 -54
- package/dist/esm/features/ColumnOrdering.js +0 -76
- package/dist/esm/features/ColumnOrdering.js.map +0 -1
- package/dist/esm/features/ColumnPinning.d.ts +0 -127
- package/dist/esm/features/ColumnPinning.js +0 -145
- package/dist/esm/features/ColumnPinning.js.map +0 -1
- package/dist/esm/features/ColumnSizing.d.ts +0 -194
- package/dist/esm/features/ColumnSizing.js +0 -307
- package/dist/esm/features/ColumnSizing.js.map +0 -1
- package/dist/esm/features/ColumnVisibility.d.ts +0 -130
- package/dist/esm/features/ColumnVisibility.js +0 -144
- package/dist/esm/features/ColumnVisibility.js.map +0 -1
- package/dist/esm/features/GlobalFaceting.d.ts +0 -27
- package/dist/esm/features/GlobalFaceting.js +0 -29
- package/dist/esm/features/GlobalFaceting.js.map +0 -1
- package/dist/esm/features/GlobalFiltering.d.ts +0 -80
- package/dist/esm/features/GlobalFiltering.js +0 -50
- package/dist/esm/features/GlobalFiltering.js.map +0 -1
- package/dist/esm/features/RowExpanding.d.ts +0 -155
- package/dist/esm/features/RowExpanding.js +0 -152
- package/dist/esm/features/RowExpanding.js.map +0 -1
- package/dist/esm/features/RowPagination.d.ts +0 -166
- package/dist/esm/features/RowPagination.js +0 -161
- package/dist/esm/features/RowPagination.js.map +0 -1
- package/dist/esm/features/RowPinning.d.ts +0 -99
- package/dist/esm/features/RowPinning.js +0 -132
- package/dist/esm/features/RowPinning.js.map +0 -1
- package/dist/esm/features/RowSelection.d.ts +0 -177
- package/dist/esm/features/RowSelection.js +0 -296
- package/dist/esm/features/RowSelection.js.map +0 -1
- package/dist/esm/features/RowSorting.d.ts +0 -238
- package/dist/esm/features/RowSorting.js +0 -200
- package/dist/esm/features/RowSorting.js.map +0 -1
- package/dist/esm/filterFns.d.ts +0 -14
- package/dist/esm/filterFns.js +0 -88
- package/dist/esm/filterFns.js.map +0 -1
- package/dist/esm/index.d.ts +0 -34
- package/dist/esm/index.js +0 -88
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/sortingFns.d.ts +0 -12
- package/dist/esm/sortingFns.js +0 -91
- package/dist/esm/sortingFns.js.map +0 -1
- package/dist/esm/types.d.ts +0 -120
- package/dist/esm/utils/filterRowsUtils.d.ts +0 -3
- package/dist/esm/utils/filterRowsUtils.js +0 -99
- package/dist/esm/utils/filterRowsUtils.js.map +0 -1
- package/dist/esm/utils/getCoreRowModel.d.ts +0 -3
- package/dist/esm/utils/getCoreRowModel.js +0 -54
- package/dist/esm/utils/getCoreRowModel.js.map +0 -1
- package/dist/esm/utils/getExpandedRowModel.d.ts +0 -8
- package/dist/esm/utils/getExpandedRowModel.js +0 -41
- package/dist/esm/utils/getExpandedRowModel.js.map +0 -1
- package/dist/esm/utils/getFacetedMinMaxValues.d.ts +0 -3
- package/dist/esm/utils/getFacetedMinMaxValues.js +0 -35
- package/dist/esm/utils/getFacetedMinMaxValues.js.map +0 -1
- package/dist/esm/utils/getFacetedRowModel.d.ts +0 -3
- package/dist/esm/utils/getFacetedRowModel.js +0 -35
- package/dist/esm/utils/getFacetedRowModel.js.map +0 -1
- package/dist/esm/utils/getFacetedUniqueValues.d.ts +0 -3
- package/dist/esm/utils/getFacetedUniqueValues.js +0 -37
- package/dist/esm/utils/getFacetedUniqueValues.js.map +0 -1
- package/dist/esm/utils/getFilteredRowModel.d.ts +0 -3
- package/dist/esm/utils/getFilteredRowModel.js +0 -116
- package/dist/esm/utils/getFilteredRowModel.js.map +0 -1
- package/dist/esm/utils/getGroupedRowModel.d.ts +0 -3
- package/dist/esm/utils/getGroupedRowModel.js +0 -118
- package/dist/esm/utils/getGroupedRowModel.js.map +0 -1
- package/dist/esm/utils/getPaginationRowModel.d.ts +0 -5
- package/dist/esm/utils/getPaginationRowModel.js +0 -49
- package/dist/esm/utils/getPaginationRowModel.js.map +0 -1
- package/dist/esm/utils/getSortedRowModel.d.ts +0 -3
- package/dist/esm/utils/getSortedRowModel.js +0 -88
- package/dist/esm/utils/getSortedRowModel.js.map +0 -1
- package/dist/esm/utils.d.ts +0 -39
- package/dist/esm/utils.js +0 -98
- package/dist/esm/utils.js.map +0 -1
- package/src/aggregationFns.ts +0 -123
- package/src/columnHelper.ts +0 -91
- package/src/core/cell.ts +0 -91
- package/src/core/column.ts +0 -165
- package/src/core/headers.ts +0 -639
- package/src/core/row.ts +0 -201
- package/src/core/table.ts +0 -563
- package/src/features/ColumnFaceting.ts +0 -84
- package/src/features/ColumnFiltering.ts +0 -429
- package/src/features/ColumnGrouping.ts +0 -422
- package/src/features/ColumnOrdering.ts +0 -161
- package/src/features/ColumnPinning.ts +0 -336
- package/src/features/ColumnSizing.ts +0 -579
- package/src/features/ColumnVisibility.ts +0 -317
- package/src/features/GlobalFaceting.ts +0 -66
- package/src/features/GlobalFiltering.ts +0 -162
- package/src/features/RowExpanding.ts +0 -355
- package/src/features/RowPagination.ts +0 -396
- package/src/features/RowPinning.ts +0 -273
- package/src/features/RowSelection.ts +0 -668
- package/src/features/RowSorting.ts +0 -542
- package/src/filterFns.ts +0 -150
- package/src/sortingFns.ts +0 -128
- package/src/types.ts +0 -361
- package/src/utils/filterRowsUtils.ts +0 -130
- package/src/utils/getCoreRowModel.ts +0 -82
- package/src/utils/getExpandedRowModel.ts +0 -51
- package/src/utils/getFacetedMinMaxValues.ts +0 -42
- package/src/utils/getFacetedRowModel.ts +0 -44
- package/src/utils/getFacetedUniqueValues.ts +0 -42
- package/src/utils/getFilteredRowModel.ts +0 -151
- package/src/utils/getGroupedRowModel.ts +0 -181
- package/src/utils/getPaginationRowModel.ts +0 -60
- package/src/utils/getSortedRowModel.ts +0 -121
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rowPaginationFeature.js","names":[],"sources":["../../../src/features/row-pagination/rowPaginationFeature.ts"],"sourcesContent":["import { assignTableAPIs, makeStateUpdater } from '../../utils'\nimport {\n getDefaultPaginationState,\n table_autoResetPageIndex,\n table_firstPage,\n table_getCanNextPage,\n table_getCanPreviousPage,\n table_getPageCount,\n table_getPageOptions,\n table_getRowCount,\n table_lastPage,\n table_nextPage,\n table_previousPage,\n table_resetPageIndex,\n table_resetPageSize,\n table_resetPagination,\n table_setPageIndex,\n table_setPageSize,\n table_setPagination,\n} from './rowPaginationFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// CachedRowModel_Paginated,\n// CreateRowModel_Paginated,\n// TableOptions_RowPagination,\n// TableState_RowPagination,\n// Table_RowPagination,\n// } from './rowPaginationFeature.types'\n\nexport interface RowPaginationFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // CachedRowModel: CachedRowModel_Paginated<TFeatures, TData>\n // CreateRowModels: CreateRowModel_Paginated<TFeatures, TData>\n // Table: Table_RowPagination<TFeatures, TData>\n // TableOptions: TableOptions_RowPagination<TFeatures, TData>\n // TableState: TableState_RowPagination\n}\n\n/**\n * Creates the stock row pagination feature.\n *\n * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.\n */\nexport function constructRowPaginationFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<RowPaginationFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n ...initialState,\n pagination: {\n ...getDefaultPaginationState(),\n ...initialState.pagination,\n },\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onPaginationChange: makeStateUpdater('pagination', table),\n }\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('rowPaginationFeature', table, {\n table_autoResetPageIndex: {\n fn: () => table_autoResetPageIndex(table),\n },\n table_setPagination: {\n fn: (updater) => table_setPagination(table, updater),\n },\n table_resetPagination: {\n fn: (defaultState) => table_resetPagination(table, defaultState),\n },\n table_setPageIndex: {\n fn: (updater) => table_setPageIndex(table, updater),\n },\n table_resetPageIndex: {\n fn: (defaultState) => table_resetPageIndex(table, defaultState),\n },\n table_setPageSize: {\n fn: (updater) => table_setPageSize(table, updater),\n },\n table_getPageCount: {\n fn: () => table_getPageCount(table),\n },\n table_resetPageSize: {\n fn: (defaultState) => table_resetPageSize(table, defaultState),\n },\n table_getPageOptions: {\n fn: () => table_getPageOptions(table),\n },\n table_getCanPreviousPage: {\n fn: () => table_getCanPreviousPage(table),\n },\n table_getCanNextPage: {\n fn: () => table_getCanNextPage(table),\n },\n table_previousPage: {\n fn: () => table_previousPage(table),\n },\n table_nextPage: {\n fn: () => table_nextPage(table),\n },\n table_firstPage: {\n fn: () => table_firstPage(table),\n },\n table_lastPage: {\n fn: () => table_lastPage(table),\n },\n table_getRowCount: {\n fn: () => table_getRowCount(table),\n },\n })\n },\n }\n}\n\n/**\n * The stock row pagination feature.\n *\n * Register this feature to add pagination state, page navigation APIs, and\n * pagination-aware row model helpers to a table.\n */\nexport const rowPaginationFeature = constructRowPaginationFeature()\n"],"mappings":";;;;;;;;;AA8CA,SAAgB,gCAGsD;CACpE,OAAO;EACL,kBAAkB,iBAAiB;GACjC,OAAO;IACL,GAAG;IACH,YAAY;KACV,GAAG,0BAA0B;KAC7B,GAAG,aAAa;IAClB;GACF;EACF;EAEA,yBAAyB,UAAU;GACjC,OAAO,EACL,oBAAoB,iBAAiB,cAAc,KAAK,EAC1D;EACF;EAEA,qBAAqB,UAAU;GAC7B,gBAAgB,wBAAwB,OAAO;IAC7C,0BAA0B,EACxB,UAAU,yBAAyB,KAAK,EAC1C;IACA,qBAAqB,EACnB,KAAK,YAAY,oBAAoB,OAAO,OAAO,EACrD;IACA,uBAAuB,EACrB,KAAK,iBAAiB,sBAAsB,OAAO,YAAY,EACjE;IACA,oBAAoB,EAClB,KAAK,YAAY,mBAAmB,OAAO,OAAO,EACpD;IACA,sBAAsB,EACpB,KAAK,iBAAiB,qBAAqB,OAAO,YAAY,EAChE;IACA,mBAAmB,EACjB,KAAK,YAAY,kBAAkB,OAAO,OAAO,EACnD;IACA,oBAAoB,EAClB,UAAU,mBAAmB,KAAK,EACpC;IACA,qBAAqB,EACnB,KAAK,iBAAiB,oBAAoB,OAAO,YAAY,EAC/D;IACA,sBAAsB,EACpB,UAAU,qBAAqB,KAAK,EACtC;IACA,0BAA0B,EACxB,UAAU,yBAAyB,KAAK,EAC1C;IACA,sBAAsB,EACpB,UAAU,qBAAqB,KAAK,EACtC;IACA,oBAAoB,EAClB,UAAU,mBAAmB,KAAK,EACpC;IACA,gBAAgB,EACd,UAAU,eAAe,KAAK,EAChC;IACA,iBAAiB,EACf,UAAU,gBAAgB,KAAK,EACjC;IACA,gBAAgB,EACd,UAAU,eAAe,KAAK,EAChC;IACA,mBAAmB,EACjB,UAAU,kBAAkB,KAAK,EACnC;GACF,CAAC;EACH;CACF;AACF;;;;;;;AAQA,MAAa,uBAAuB,8BAA8B"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { OnChangeFn, RowData, Updater } from "../../types/type-utils.cjs";
|
|
2
|
+
import { TableFeatures } from "../../types/TableFeatures.cjs";
|
|
3
|
+
import { Table } from "../../types/Table.cjs";
|
|
4
|
+
import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.cjs";
|
|
5
|
+
|
|
6
|
+
//#region src/features/row-pagination/rowPaginationFeature.types.d.ts
|
|
7
|
+
interface PaginationState {
|
|
8
|
+
pageIndex: number;
|
|
9
|
+
pageSize: number;
|
|
10
|
+
}
|
|
11
|
+
interface TableState_RowPagination {
|
|
12
|
+
pagination: PaginationState;
|
|
13
|
+
}
|
|
14
|
+
interface TableOptions_RowPagination {
|
|
15
|
+
/**
|
|
16
|
+
* If set to `true`, pagination will be reset to the first page when page-altering state changes eg. `data` is updated, filters change, grouping changes, etc.
|
|
17
|
+
*/
|
|
18
|
+
autoResetPageIndex?: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Enables manual pagination. If this option is set to `true`, the table will not automatically paginate rows using `getPaginatedRowModel()` and instead will expect you to manually paginate the rows before passing them to the table. This is useful if you are doing server-side pagination and aggregation.
|
|
21
|
+
*/
|
|
22
|
+
manualPagination?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Called with an updater when pagination state changes. Pair this with
|
|
25
|
+
* `state.pagination` when using external state; external atoms can own the
|
|
26
|
+
* slice without this callback.
|
|
27
|
+
*/
|
|
28
|
+
onPaginationChange?: OnChangeFn<PaginationState>;
|
|
29
|
+
/**
|
|
30
|
+
* When manually controlling pagination, you can supply a total `pageCount` value to the table if you know it (Or supply a `rowCount` and `pageCount` will be calculated). If you do not know how many pages there are, you can set this to `-1`.
|
|
31
|
+
*/
|
|
32
|
+
pageCount?: number;
|
|
33
|
+
/**
|
|
34
|
+
* When manually controlling pagination, you can supply a total `rowCount` value to the table if you know it. The `pageCount` can be calculated from this value and the `pageSize`.
|
|
35
|
+
*/
|
|
36
|
+
rowCount?: number;
|
|
37
|
+
}
|
|
38
|
+
interface PaginationDefaultOptions {
|
|
39
|
+
onPaginationChange: OnChangeFn<PaginationState>;
|
|
40
|
+
}
|
|
41
|
+
interface Table_RowPagination<TFeatures extends TableFeatures, TData extends RowData> {
|
|
42
|
+
_autoResetPageIndex: () => void;
|
|
43
|
+
/**
|
|
44
|
+
* Checks whether the current page index can move forward.
|
|
45
|
+
*/
|
|
46
|
+
getCanNextPage: () => boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Checks whether the current page index can move backward.
|
|
49
|
+
*/
|
|
50
|
+
getCanPreviousPage: () => boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Resolves the current page count from `options.pageCount` or row count and
|
|
53
|
+
* page size.
|
|
54
|
+
*/
|
|
55
|
+
getPageCount: () => number;
|
|
56
|
+
/**
|
|
57
|
+
* Resolves the row count used for pagination math.
|
|
58
|
+
*
|
|
59
|
+
* `options.rowCount` wins; otherwise the pre-paginated row model is counted.
|
|
60
|
+
*/
|
|
61
|
+
getRowCount: () => number;
|
|
62
|
+
/**
|
|
63
|
+
* Builds zero-based page indexes for the current page count.
|
|
64
|
+
*/
|
|
65
|
+
getPageOptions: () => Array<number>;
|
|
66
|
+
/**
|
|
67
|
+
* Increments the page index by one, if possible.
|
|
68
|
+
*/
|
|
69
|
+
nextPage: () => void;
|
|
70
|
+
/**
|
|
71
|
+
* Decrements the page index by one, if possible.
|
|
72
|
+
*/
|
|
73
|
+
previousPage: () => void;
|
|
74
|
+
/**
|
|
75
|
+
* Sets the page index to `0`.
|
|
76
|
+
*/
|
|
77
|
+
firstPage: () => void;
|
|
78
|
+
/**
|
|
79
|
+
* Sets the page index to the last page.
|
|
80
|
+
*/
|
|
81
|
+
lastPage: () => void;
|
|
82
|
+
/**
|
|
83
|
+
* Resets `pagination.pageIndex` to initial state, or to `0` when
|
|
84
|
+
* `defaultState` is `true`.
|
|
85
|
+
*/
|
|
86
|
+
resetPageIndex: (defaultState?: boolean) => void;
|
|
87
|
+
/**
|
|
88
|
+
* Resets `pagination.pageSize` to initial state, or to `10` when
|
|
89
|
+
* `defaultState` is `true`.
|
|
90
|
+
*/
|
|
91
|
+
resetPageSize: (defaultState?: boolean) => void;
|
|
92
|
+
/**
|
|
93
|
+
* Resets `pagination` to `initialState.pagination`.
|
|
94
|
+
*
|
|
95
|
+
* Pass `true` to ignore initial state and reset to
|
|
96
|
+
* `{ pageIndex: 0, pageSize: 10 }`.
|
|
97
|
+
*/
|
|
98
|
+
resetPagination: (defaultState?: boolean) => void;
|
|
99
|
+
/**
|
|
100
|
+
* Updates `pagination.pageIndex` using a value or updater.
|
|
101
|
+
*/
|
|
102
|
+
setPageIndex: (updater: Updater<number>) => void;
|
|
103
|
+
/**
|
|
104
|
+
* Updates `pagination.pageSize` using a value or updater.
|
|
105
|
+
*/
|
|
106
|
+
setPageSize: (updater: Updater<number>) => void;
|
|
107
|
+
/**
|
|
108
|
+
* Updates pagination state with a next state or updater function.
|
|
109
|
+
*/
|
|
110
|
+
setPagination: (updater: Updater<PaginationState>) => void;
|
|
111
|
+
}
|
|
112
|
+
interface Table_RowModels_Paginated<TFeatures extends TableFeatures, TData extends RowData> {
|
|
113
|
+
/**
|
|
114
|
+
* Resolves the row model after pagination has sliced the current page.
|
|
115
|
+
*/
|
|
116
|
+
getPaginatedRowModel: () => RowModel<TFeatures, TData>;
|
|
117
|
+
/**
|
|
118
|
+
* Reads the row model immediately before pagination.
|
|
119
|
+
*/
|
|
120
|
+
getPrePaginatedRowModel: () => RowModel<TFeatures, TData>;
|
|
121
|
+
}
|
|
122
|
+
interface CreateRowModel_Paginated<TFeatures extends TableFeatures, TData extends RowData> {
|
|
123
|
+
/**
|
|
124
|
+
* Factory used to retrieve the paginated row model. If using server-side
|
|
125
|
+
* pagination, this is not required. To use client-side pagination, pass
|
|
126
|
+
* `createPaginatedRowModel()` or implement your own factory.
|
|
127
|
+
*/
|
|
128
|
+
paginatedRowModel?: (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
|
|
129
|
+
}
|
|
130
|
+
interface CachedRowModel_Paginated<TFeatures extends TableFeatures, TData extends RowData> {
|
|
131
|
+
paginatedRowModel: () => RowModel<TFeatures, TData>;
|
|
132
|
+
}
|
|
133
|
+
//#endregion
|
|
134
|
+
export { CachedRowModel_Paginated, CreateRowModel_Paginated, PaginationDefaultOptions, PaginationState, TableOptions_RowPagination, TableState_RowPagination, Table_RowModels_Paginated, Table_RowPagination };
|
|
135
|
+
//# sourceMappingURL=rowPaginationFeature.types.d.cts.map
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { OnChangeFn, RowData, Updater } from "../../types/type-utils.js";
|
|
2
|
+
import { TableFeatures } from "../../types/TableFeatures.js";
|
|
3
|
+
import { Table } from "../../types/Table.js";
|
|
4
|
+
import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
|
|
5
|
+
|
|
6
|
+
//#region src/features/row-pagination/rowPaginationFeature.types.d.ts
|
|
7
|
+
interface PaginationState {
|
|
8
|
+
pageIndex: number;
|
|
9
|
+
pageSize: number;
|
|
10
|
+
}
|
|
11
|
+
interface TableState_RowPagination {
|
|
12
|
+
pagination: PaginationState;
|
|
13
|
+
}
|
|
14
|
+
interface TableOptions_RowPagination {
|
|
15
|
+
/**
|
|
16
|
+
* If set to `true`, pagination will be reset to the first page when page-altering state changes eg. `data` is updated, filters change, grouping changes, etc.
|
|
17
|
+
*/
|
|
18
|
+
autoResetPageIndex?: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Enables manual pagination. If this option is set to `true`, the table will not automatically paginate rows using `getPaginatedRowModel()` and instead will expect you to manually paginate the rows before passing them to the table. This is useful if you are doing server-side pagination and aggregation.
|
|
21
|
+
*/
|
|
22
|
+
manualPagination?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Called with an updater when pagination state changes. Pair this with
|
|
25
|
+
* `state.pagination` when using external state; external atoms can own the
|
|
26
|
+
* slice without this callback.
|
|
27
|
+
*/
|
|
28
|
+
onPaginationChange?: OnChangeFn<PaginationState>;
|
|
29
|
+
/**
|
|
30
|
+
* When manually controlling pagination, you can supply a total `pageCount` value to the table if you know it (Or supply a `rowCount` and `pageCount` will be calculated). If you do not know how many pages there are, you can set this to `-1`.
|
|
31
|
+
*/
|
|
32
|
+
pageCount?: number;
|
|
33
|
+
/**
|
|
34
|
+
* When manually controlling pagination, you can supply a total `rowCount` value to the table if you know it. The `pageCount` can be calculated from this value and the `pageSize`.
|
|
35
|
+
*/
|
|
36
|
+
rowCount?: number;
|
|
37
|
+
}
|
|
38
|
+
interface PaginationDefaultOptions {
|
|
39
|
+
onPaginationChange: OnChangeFn<PaginationState>;
|
|
40
|
+
}
|
|
41
|
+
interface Table_RowPagination<TFeatures extends TableFeatures, TData extends RowData> {
|
|
42
|
+
_autoResetPageIndex: () => void;
|
|
43
|
+
/**
|
|
44
|
+
* Checks whether the current page index can move forward.
|
|
45
|
+
*/
|
|
46
|
+
getCanNextPage: () => boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Checks whether the current page index can move backward.
|
|
49
|
+
*/
|
|
50
|
+
getCanPreviousPage: () => boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Resolves the current page count from `options.pageCount` or row count and
|
|
53
|
+
* page size.
|
|
54
|
+
*/
|
|
55
|
+
getPageCount: () => number;
|
|
56
|
+
/**
|
|
57
|
+
* Resolves the row count used for pagination math.
|
|
58
|
+
*
|
|
59
|
+
* `options.rowCount` wins; otherwise the pre-paginated row model is counted.
|
|
60
|
+
*/
|
|
61
|
+
getRowCount: () => number;
|
|
62
|
+
/**
|
|
63
|
+
* Builds zero-based page indexes for the current page count.
|
|
64
|
+
*/
|
|
65
|
+
getPageOptions: () => Array<number>;
|
|
66
|
+
/**
|
|
67
|
+
* Increments the page index by one, if possible.
|
|
68
|
+
*/
|
|
69
|
+
nextPage: () => void;
|
|
70
|
+
/**
|
|
71
|
+
* Decrements the page index by one, if possible.
|
|
72
|
+
*/
|
|
73
|
+
previousPage: () => void;
|
|
74
|
+
/**
|
|
75
|
+
* Sets the page index to `0`.
|
|
76
|
+
*/
|
|
77
|
+
firstPage: () => void;
|
|
78
|
+
/**
|
|
79
|
+
* Sets the page index to the last page.
|
|
80
|
+
*/
|
|
81
|
+
lastPage: () => void;
|
|
82
|
+
/**
|
|
83
|
+
* Resets `pagination.pageIndex` to initial state, or to `0` when
|
|
84
|
+
* `defaultState` is `true`.
|
|
85
|
+
*/
|
|
86
|
+
resetPageIndex: (defaultState?: boolean) => void;
|
|
87
|
+
/**
|
|
88
|
+
* Resets `pagination.pageSize` to initial state, or to `10` when
|
|
89
|
+
* `defaultState` is `true`.
|
|
90
|
+
*/
|
|
91
|
+
resetPageSize: (defaultState?: boolean) => void;
|
|
92
|
+
/**
|
|
93
|
+
* Resets `pagination` to `initialState.pagination`.
|
|
94
|
+
*
|
|
95
|
+
* Pass `true` to ignore initial state and reset to
|
|
96
|
+
* `{ pageIndex: 0, pageSize: 10 }`.
|
|
97
|
+
*/
|
|
98
|
+
resetPagination: (defaultState?: boolean) => void;
|
|
99
|
+
/**
|
|
100
|
+
* Updates `pagination.pageIndex` using a value or updater.
|
|
101
|
+
*/
|
|
102
|
+
setPageIndex: (updater: Updater<number>) => void;
|
|
103
|
+
/**
|
|
104
|
+
* Updates `pagination.pageSize` using a value or updater.
|
|
105
|
+
*/
|
|
106
|
+
setPageSize: (updater: Updater<number>) => void;
|
|
107
|
+
/**
|
|
108
|
+
* Updates pagination state with a next state or updater function.
|
|
109
|
+
*/
|
|
110
|
+
setPagination: (updater: Updater<PaginationState>) => void;
|
|
111
|
+
}
|
|
112
|
+
interface Table_RowModels_Paginated<TFeatures extends TableFeatures, TData extends RowData> {
|
|
113
|
+
/**
|
|
114
|
+
* Resolves the row model after pagination has sliced the current page.
|
|
115
|
+
*/
|
|
116
|
+
getPaginatedRowModel: () => RowModel<TFeatures, TData>;
|
|
117
|
+
/**
|
|
118
|
+
* Reads the row model immediately before pagination.
|
|
119
|
+
*/
|
|
120
|
+
getPrePaginatedRowModel: () => RowModel<TFeatures, TData>;
|
|
121
|
+
}
|
|
122
|
+
interface CreateRowModel_Paginated<TFeatures extends TableFeatures, TData extends RowData> {
|
|
123
|
+
/**
|
|
124
|
+
* Factory used to retrieve the paginated row model. If using server-side
|
|
125
|
+
* pagination, this is not required. To use client-side pagination, pass
|
|
126
|
+
* `createPaginatedRowModel()` or implement your own factory.
|
|
127
|
+
*/
|
|
128
|
+
paginatedRowModel?: (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
|
|
129
|
+
}
|
|
130
|
+
interface CachedRowModel_Paginated<TFeatures extends TableFeatures, TData extends RowData> {
|
|
131
|
+
paginatedRowModel: () => RowModel<TFeatures, TData>;
|
|
132
|
+
}
|
|
133
|
+
//#endregion
|
|
134
|
+
export { CachedRowModel_Paginated, CreateRowModel_Paginated, PaginationDefaultOptions, PaginationState, TableOptions_RowPagination, TableState_RowPagination, Table_RowModels_Paginated, Table_RowPagination };
|
|
135
|
+
//# sourceMappingURL=rowPaginationFeature.types.d.ts.map
|
|
@@ -0,0 +1,312 @@
|
|
|
1
|
+
const require_utils = require('../../utils.cjs');
|
|
2
|
+
|
|
3
|
+
//#region src/features/row-pagination/rowPaginationFeature.utils.ts
|
|
4
|
+
const defaultPageIndex = 0;
|
|
5
|
+
const defaultPageSize = 10;
|
|
6
|
+
/**
|
|
7
|
+
* Creates the default pagination state used by the pagination feature.
|
|
8
|
+
*
|
|
9
|
+
* The feature default starts at the first page with a page size of 10. Reset
|
|
10
|
+
* APIs use this value when `defaultState` is `true`.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* const pagination = getDefaultPaginationState()
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
function getDefaultPaginationState() {
|
|
18
|
+
return {
|
|
19
|
+
pageIndex: defaultPageIndex,
|
|
20
|
+
pageSize: defaultPageSize
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Resets the page index when a page-altering change should return to page 0.
|
|
25
|
+
*
|
|
26
|
+
* The reset runs when `autoResetAll`, `autoResetPageIndex`, or the default
|
|
27
|
+
* client-side pagination behavior allows it. Manual pagination opts out unless
|
|
28
|
+
* the reset options explicitly opt back in.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```ts
|
|
32
|
+
* table_autoResetPageIndex(table)
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
function table_autoResetPageIndex(table) {
|
|
36
|
+
if (table.options.autoResetAll ?? table.options.autoResetPageIndex ?? !table.options.manualPagination) table_resetPageIndex(table);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Routes a pagination updater through the table's pagination change handler.
|
|
40
|
+
*
|
|
41
|
+
* The updater may be a next state object or a function of the previous
|
|
42
|
+
* `PaginationState`; controlled state and external atoms observe the same
|
|
43
|
+
* updater path as the instance API.
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```ts
|
|
47
|
+
* table_setPagination(table, (old) => old)
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
function table_setPagination(table, updater) {
|
|
51
|
+
var _table$options$onPagi, _table$options;
|
|
52
|
+
const safeUpdater = (old) => {
|
|
53
|
+
return require_utils.functionalUpdate(updater, old);
|
|
54
|
+
};
|
|
55
|
+
return (_table$options$onPagi = (_table$options = table.options).onPaginationChange) === null || _table$options$onPagi === void 0 ? void 0 : _table$options$onPagi.call(_table$options, safeUpdater);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Resets `pagination` to the configured initial state or feature default.
|
|
59
|
+
*
|
|
60
|
+
* With no argument, the reset clones `table.initialState.pagination` when it
|
|
61
|
+
* exists. Passing `true` ignores initial state and resets to
|
|
62
|
+
* `{ pageIndex: 0, pageSize: 10 }`.
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* ```ts
|
|
66
|
+
* table_resetPagination(table)
|
|
67
|
+
* table_resetPagination(table, true)
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
function table_resetPagination(table, defaultState) {
|
|
71
|
+
table_setPagination(table, defaultState ? getDefaultPaginationState() : require_utils.cloneState(table.initialState.pagination ?? getDefaultPaginationState()));
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Updates `pagination.pageIndex` and clamps it to the known page range.
|
|
75
|
+
*
|
|
76
|
+
* Unknown page counts (`undefined` or `-1`) allow any non-negative page index.
|
|
77
|
+
* Known page counts clamp the index between `0` and `pageCount - 1`.
|
|
78
|
+
*
|
|
79
|
+
* @example
|
|
80
|
+
* ```ts
|
|
81
|
+
* table_setPageIndex(table, (old) => old)
|
|
82
|
+
* ```
|
|
83
|
+
*/
|
|
84
|
+
function table_setPageIndex(table, updater) {
|
|
85
|
+
table_setPagination(table, (old) => {
|
|
86
|
+
let pageIndex = require_utils.functionalUpdate(updater, old.pageIndex);
|
|
87
|
+
const maxPageIndex = typeof table.options.pageCount === "undefined" || table.options.pageCount === -1 ? Number.MAX_SAFE_INTEGER : table.options.pageCount - 1;
|
|
88
|
+
pageIndex = Math.max(0, Math.min(pageIndex, maxPageIndex));
|
|
89
|
+
return {
|
|
90
|
+
...old,
|
|
91
|
+
pageIndex
|
|
92
|
+
};
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Resets only `pagination.pageIndex`.
|
|
97
|
+
*
|
|
98
|
+
* With no argument, the reset uses `table.initialState.pagination?.pageIndex`
|
|
99
|
+
* or `0`. Passing `true` always resets the page index to `0`.
|
|
100
|
+
*
|
|
101
|
+
* @example
|
|
102
|
+
* ```ts
|
|
103
|
+
* table_resetPageIndex(table)
|
|
104
|
+
* table_resetPageIndex(table, true)
|
|
105
|
+
* ```
|
|
106
|
+
*/
|
|
107
|
+
function table_resetPageIndex(table, defaultState) {
|
|
108
|
+
var _table$atoms$paginati, _table$initialState$p;
|
|
109
|
+
const currentPageIndex = ((_table$atoms$paginati = table.atoms.pagination) === null || _table$atoms$paginati === void 0 || (_table$atoms$paginati = _table$atoms$paginati.get()) === null || _table$atoms$paginati === void 0 ? void 0 : _table$atoms$paginati.pageIndex) ?? defaultPageIndex;
|
|
110
|
+
const newPageIndex = defaultState ? defaultPageIndex : ((_table$initialState$p = table.initialState.pagination) === null || _table$initialState$p === void 0 ? void 0 : _table$initialState$p.pageIndex) ?? defaultPageIndex;
|
|
111
|
+
if (newPageIndex === currentPageIndex) return;
|
|
112
|
+
table_setPageIndex(table, newPageIndex);
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Resets only `pagination.pageSize`.
|
|
116
|
+
*
|
|
117
|
+
* With no argument, the reset uses `table.initialState.pagination?.pageSize`
|
|
118
|
+
* or `10`. Passing `true` always resets the page size to `10`.
|
|
119
|
+
*
|
|
120
|
+
* @example
|
|
121
|
+
* ```ts
|
|
122
|
+
* table_resetPageSize(table)
|
|
123
|
+
* table_resetPageSize(table, true)
|
|
124
|
+
* ```
|
|
125
|
+
*/
|
|
126
|
+
function table_resetPageSize(table, defaultState) {
|
|
127
|
+
var _table$atoms$paginati2, _table$initialState$p2;
|
|
128
|
+
const currentPageSize = ((_table$atoms$paginati2 = table.atoms.pagination) === null || _table$atoms$paginati2 === void 0 || (_table$atoms$paginati2 = _table$atoms$paginati2.get()) === null || _table$atoms$paginati2 === void 0 ? void 0 : _table$atoms$paginati2.pageSize) ?? defaultPageSize;
|
|
129
|
+
const newPageSize = defaultState ? defaultPageSize : ((_table$initialState$p2 = table.initialState.pagination) === null || _table$initialState$p2 === void 0 ? void 0 : _table$initialState$p2.pageSize) ?? defaultPageSize;
|
|
130
|
+
if (newPageSize === currentPageSize) return;
|
|
131
|
+
table_setPageSize(table, newPageSize);
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Updates `pagination.pageSize` while preserving the current top row.
|
|
135
|
+
*
|
|
136
|
+
* The new size is clamped to at least `1`, and `pageIndex` is recalculated so
|
|
137
|
+
* the row that was previously at the top of the page remains in view.
|
|
138
|
+
*
|
|
139
|
+
* @example
|
|
140
|
+
* ```ts
|
|
141
|
+
* table_setPageSize(table, (old) => old)
|
|
142
|
+
* ```
|
|
143
|
+
*/
|
|
144
|
+
function table_setPageSize(table, updater) {
|
|
145
|
+
table_setPagination(table, (old) => {
|
|
146
|
+
const pageSize = Math.max(1, require_utils.functionalUpdate(updater, old.pageSize));
|
|
147
|
+
const topRowIndex = old.pageSize * old.pageIndex;
|
|
148
|
+
const pageIndex = Math.floor(topRowIndex / pageSize);
|
|
149
|
+
return {
|
|
150
|
+
...old,
|
|
151
|
+
pageIndex,
|
|
152
|
+
pageSize
|
|
153
|
+
};
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Builds the zero-based page indexes available for the current page count.
|
|
158
|
+
*
|
|
159
|
+
* Unknown or empty page counts return an empty array; otherwise the result is
|
|
160
|
+
* `[0, 1, ...pageCount - 1]`.
|
|
161
|
+
*
|
|
162
|
+
* @example
|
|
163
|
+
* ```ts
|
|
164
|
+
* const pageIndexes = table_getPageOptions(table)
|
|
165
|
+
* ```
|
|
166
|
+
*/
|
|
167
|
+
function table_getPageOptions(table) {
|
|
168
|
+
const pageCount = table_getPageCount(table);
|
|
169
|
+
let pageOptions = [];
|
|
170
|
+
if (pageCount && pageCount > 0) pageOptions = [...new Array(pageCount)].fill(null).map((_, i) => i);
|
|
171
|
+
return pageOptions;
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Checks whether the current page index can move backward.
|
|
175
|
+
*
|
|
176
|
+
* The first page is page index `0`, so only positive page indexes can navigate
|
|
177
|
+
* to a previous page.
|
|
178
|
+
*
|
|
179
|
+
* @example
|
|
180
|
+
* ```ts
|
|
181
|
+
* const canGoBack = table_getCanPreviousPage(table)
|
|
182
|
+
* ```
|
|
183
|
+
*/
|
|
184
|
+
function table_getCanPreviousPage(table) {
|
|
185
|
+
var _table$atoms$paginati3;
|
|
186
|
+
return (((_table$atoms$paginati3 = table.atoms.pagination) === null || _table$atoms$paginati3 === void 0 || (_table$atoms$paginati3 = _table$atoms$paginati3.get()) === null || _table$atoms$paginati3 === void 0 ? void 0 : _table$atoms$paginati3.pageIndex) ?? 0) > 0;
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Checks whether the current page index can move forward.
|
|
190
|
+
*
|
|
191
|
+
* A `pageCount` of `-1` means the caller does not know the total page count, so
|
|
192
|
+
* this returns `true`. A page count of `0` returns `false`.
|
|
193
|
+
*
|
|
194
|
+
* @example
|
|
195
|
+
* ```ts
|
|
196
|
+
* const canGoForward = table_getCanNextPage(table)
|
|
197
|
+
* ```
|
|
198
|
+
*/
|
|
199
|
+
function table_getCanNextPage(table) {
|
|
200
|
+
var _table$atoms$paginati4;
|
|
201
|
+
const pageIndex = ((_table$atoms$paginati4 = table.atoms.pagination) === null || _table$atoms$paginati4 === void 0 || (_table$atoms$paginati4 = _table$atoms$paginati4.get()) === null || _table$atoms$paginati4 === void 0 ? void 0 : _table$atoms$paginati4.pageIndex) ?? defaultPageIndex;
|
|
202
|
+
const pageCount = table_getPageCount(table);
|
|
203
|
+
if (pageCount === -1) return true;
|
|
204
|
+
if (pageCount === 0) return false;
|
|
205
|
+
return pageIndex < pageCount - 1;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Moves the table to the previous page.
|
|
209
|
+
*
|
|
210
|
+
* This delegates to `table_setPageIndex` so pagination state ownership and
|
|
211
|
+
* updater semantics remain consistent.
|
|
212
|
+
*
|
|
213
|
+
* @example
|
|
214
|
+
* ```ts
|
|
215
|
+
* table_previousPage(table)
|
|
216
|
+
* ```
|
|
217
|
+
*/
|
|
218
|
+
function table_previousPage(table) {
|
|
219
|
+
return table_setPageIndex(table, (old) => old - 1);
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Moves the table to the next page.
|
|
223
|
+
*
|
|
224
|
+
* This delegates to `table_setPageIndex` so pagination state ownership and
|
|
225
|
+
* updater semantics remain consistent.
|
|
226
|
+
*
|
|
227
|
+
* @example
|
|
228
|
+
* ```ts
|
|
229
|
+
* table_nextPage(table)
|
|
230
|
+
* ```
|
|
231
|
+
*/
|
|
232
|
+
function table_nextPage(table) {
|
|
233
|
+
return table_setPageIndex(table, (old) => {
|
|
234
|
+
return old + 1;
|
|
235
|
+
});
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Moves the table to the first page.
|
|
239
|
+
*
|
|
240
|
+
* This is a convenience wrapper around `table_setPageIndex(table, 0)`.
|
|
241
|
+
*
|
|
242
|
+
* @example
|
|
243
|
+
* ```ts
|
|
244
|
+
* table_firstPage(table)
|
|
245
|
+
* ```
|
|
246
|
+
*/
|
|
247
|
+
function table_firstPage(table) {
|
|
248
|
+
return table_setPageIndex(table, 0);
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* Moves the table to the last known page.
|
|
252
|
+
*
|
|
253
|
+
* The target page is derived from `table_getPageCount(table) - 1`.
|
|
254
|
+
*
|
|
255
|
+
* @example
|
|
256
|
+
* ```ts
|
|
257
|
+
* table_lastPage(table)
|
|
258
|
+
* ```
|
|
259
|
+
*/
|
|
260
|
+
function table_lastPage(table) {
|
|
261
|
+
return table_setPageIndex(table, table_getPageCount(table) - 1);
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Resolves the number of pages for the current pagination state.
|
|
265
|
+
*
|
|
266
|
+
* `options.pageCount` wins for manual pagination. Otherwise the value is
|
|
267
|
+
* calculated from `table_getRowCount(table)` and the current `pageSize`.
|
|
268
|
+
*
|
|
269
|
+
* @example
|
|
270
|
+
* ```ts
|
|
271
|
+
* const pages = table_getPageCount(table)
|
|
272
|
+
* ```
|
|
273
|
+
*/
|
|
274
|
+
function table_getPageCount(table) {
|
|
275
|
+
var _table$atoms$paginati5;
|
|
276
|
+
return table.options.pageCount ?? Math.ceil(table_getRowCount(table) / (((_table$atoms$paginati5 = table.atoms.pagination) === null || _table$atoms$paginati5 === void 0 || (_table$atoms$paginati5 = _table$atoms$paginati5.get()) === null || _table$atoms$paginati5 === void 0 ? void 0 : _table$atoms$paginati5.pageSize) ?? defaultPageSize));
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* Resolves the total row count used for pagination math.
|
|
280
|
+
*
|
|
281
|
+
* `options.rowCount` wins for manual pagination. Otherwise the count comes
|
|
282
|
+
* from the pre-paginated row model so filtering, grouping, sorting, and
|
|
283
|
+
* expansion are reflected before the page slice is applied.
|
|
284
|
+
*
|
|
285
|
+
* @example
|
|
286
|
+
* ```ts
|
|
287
|
+
* const rows = table_getRowCount(table)
|
|
288
|
+
* ```
|
|
289
|
+
*/
|
|
290
|
+
function table_getRowCount(table) {
|
|
291
|
+
return table.options.rowCount ?? table.getPrePaginatedRowModel().rows.length;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
//#endregion
|
|
295
|
+
exports.getDefaultPaginationState = getDefaultPaginationState;
|
|
296
|
+
exports.table_autoResetPageIndex = table_autoResetPageIndex;
|
|
297
|
+
exports.table_firstPage = table_firstPage;
|
|
298
|
+
exports.table_getCanNextPage = table_getCanNextPage;
|
|
299
|
+
exports.table_getCanPreviousPage = table_getCanPreviousPage;
|
|
300
|
+
exports.table_getPageCount = table_getPageCount;
|
|
301
|
+
exports.table_getPageOptions = table_getPageOptions;
|
|
302
|
+
exports.table_getRowCount = table_getRowCount;
|
|
303
|
+
exports.table_lastPage = table_lastPage;
|
|
304
|
+
exports.table_nextPage = table_nextPage;
|
|
305
|
+
exports.table_previousPage = table_previousPage;
|
|
306
|
+
exports.table_resetPageIndex = table_resetPageIndex;
|
|
307
|
+
exports.table_resetPageSize = table_resetPageSize;
|
|
308
|
+
exports.table_resetPagination = table_resetPagination;
|
|
309
|
+
exports.table_setPageIndex = table_setPageIndex;
|
|
310
|
+
exports.table_setPageSize = table_setPageSize;
|
|
311
|
+
exports.table_setPagination = table_setPagination;
|
|
312
|
+
//# sourceMappingURL=rowPaginationFeature.utils.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rowPaginationFeature.utils.cjs","names":["functionalUpdate","cloneState"],"sources":["../../../src/features/row-pagination/rowPaginationFeature.utils.ts"],"sourcesContent":["import { cloneState, functionalUpdate } from '../../utils'\nimport type { RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { PaginationState } from './rowPaginationFeature.types'\n\nconst defaultPageIndex = 0\nconst defaultPageSize = 10\n\n/**\n * Creates the default pagination state used by the pagination feature.\n *\n * The feature default starts at the first page with a page size of 10. Reset\n * APIs use this value when `defaultState` is `true`.\n *\n * @example\n * ```ts\n * const pagination = getDefaultPaginationState()\n * ```\n */\nexport function getDefaultPaginationState(): PaginationState {\n return {\n pageIndex: defaultPageIndex,\n pageSize: defaultPageSize,\n }\n}\n\n/**\n * Resets the page index when a page-altering change should return to page 0.\n *\n * The reset runs when `autoResetAll`, `autoResetPageIndex`, or the default\n * client-side pagination behavior allows it. Manual pagination opts out unless\n * the reset options explicitly opt back in.\n *\n * @example\n * ```ts\n * table_autoResetPageIndex(table)\n * ```\n */\nexport function table_autoResetPageIndex<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n if (\n table.options.autoResetAll ??\n table.options.autoResetPageIndex ??\n !table.options.manualPagination\n ) {\n table_resetPageIndex(table)\n }\n}\n\n/**\n * Routes a pagination updater through the table's pagination change handler.\n *\n * The updater may be a next state object or a function of the previous\n * `PaginationState`; controlled state and external atoms observe the same\n * updater path as the instance API.\n *\n * @example\n * ```ts\n * table_setPagination(table, (old) => old)\n * ```\n */\nexport function table_setPagination<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, updater: Updater<PaginationState>) {\n const safeUpdater: Updater<PaginationState> = (old) => {\n const newState = functionalUpdate(updater, old)\n\n return newState\n }\n\n return table.options.onPaginationChange?.(safeUpdater)\n}\n\n/**\n * Resets `pagination` to the configured initial state or feature default.\n *\n * With no argument, the reset clones `table.initialState.pagination` when it\n * exists. Passing `true` ignores initial state and resets to\n * `{ pageIndex: 0, pageSize: 10 }`.\n *\n * @example\n * ```ts\n * table_resetPagination(table)\n * table_resetPagination(table, true)\n * ```\n */\nexport function table_resetPagination<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n table_setPagination(\n table,\n defaultState\n ? getDefaultPaginationState()\n : cloneState(\n table.initialState.pagination ?? getDefaultPaginationState(),\n ),\n )\n}\n\n/**\n * Updates `pagination.pageIndex` and clamps it to the known page range.\n *\n * Unknown page counts (`undefined` or `-1`) allow any non-negative page index.\n * Known page counts clamp the index between `0` and `pageCount - 1`.\n *\n * @example\n * ```ts\n * table_setPageIndex(table, (old) => old)\n * ```\n */\nexport function table_setPageIndex<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, updater: Updater<number>) {\n table_setPagination(table, (old) => {\n let pageIndex = functionalUpdate(updater, old.pageIndex)\n\n const maxPageIndex =\n typeof table.options.pageCount === 'undefined' ||\n table.options.pageCount === -1\n ? Number.MAX_SAFE_INTEGER\n : table.options.pageCount - 1\n\n pageIndex = Math.max(0, Math.min(pageIndex, maxPageIndex))\n\n return {\n ...old,\n pageIndex,\n }\n })\n}\n\n/**\n * Resets only `pagination.pageIndex`.\n *\n * With no argument, the reset uses `table.initialState.pagination?.pageIndex`\n * or `0`. Passing `true` always resets the page index to `0`.\n *\n * @example\n * ```ts\n * table_resetPageIndex(table)\n * table_resetPageIndex(table, true)\n * ```\n */\nexport function table_resetPageIndex<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n const currentPageIndex =\n table.atoms.pagination?.get()?.pageIndex ?? defaultPageIndex\n const newPageIndex = defaultState\n ? defaultPageIndex\n : (table.initialState.pagination?.pageIndex ?? defaultPageIndex)\n if (newPageIndex === currentPageIndex) return\n table_setPageIndex(table, newPageIndex)\n}\n\n/**\n * Resets only `pagination.pageSize`.\n *\n * With no argument, the reset uses `table.initialState.pagination?.pageSize`\n * or `10`. Passing `true` always resets the page size to `10`.\n *\n * @example\n * ```ts\n * table_resetPageSize(table)\n * table_resetPageSize(table, true)\n * ```\n */\nexport function table_resetPageSize<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n const currentPageSize =\n table.atoms.pagination?.get()?.pageSize ?? defaultPageSize\n const newPageSize = defaultState\n ? defaultPageSize\n : (table.initialState.pagination?.pageSize ?? defaultPageSize)\n if (newPageSize === currentPageSize) return\n table_setPageSize(table, newPageSize)\n}\n\n/**\n * Updates `pagination.pageSize` while preserving the current top row.\n *\n * The new size is clamped to at least `1`, and `pageIndex` is recalculated so\n * the row that was previously at the top of the page remains in view.\n *\n * @example\n * ```ts\n * table_setPageSize(table, (old) => old)\n * ```\n */\nexport function table_setPageSize<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, updater: Updater<number>) {\n table_setPagination(table, (old) => {\n const pageSize = Math.max(1, functionalUpdate(updater, old.pageSize))\n const topRowIndex = old.pageSize * old.pageIndex\n const pageIndex = Math.floor(topRowIndex / pageSize)\n\n return {\n ...old,\n pageIndex,\n pageSize,\n }\n })\n}\n\n/**\n * Builds the zero-based page indexes available for the current page count.\n *\n * Unknown or empty page counts return an empty array; otherwise the result is\n * `[0, 1, ...pageCount - 1]`.\n *\n * @example\n * ```ts\n * const pageIndexes = table_getPageOptions(table)\n * ```\n */\nexport function table_getPageOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const pageCount = table_getPageCount(table)\n let pageOptions: Array<number> = []\n if (pageCount && pageCount > 0) {\n pageOptions = [...new Array(pageCount)].fill(null).map((_, i) => i)\n }\n return pageOptions\n}\n\n/**\n * Checks whether the current page index can move backward.\n *\n * The first page is page index `0`, so only positive page indexes can navigate\n * to a previous page.\n *\n * @example\n * ```ts\n * const canGoBack = table_getCanPreviousPage(table)\n * ```\n */\nexport function table_getCanPreviousPage<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return (table.atoms.pagination?.get()?.pageIndex ?? 0) > 0\n}\n\n/**\n * Checks whether the current page index can move forward.\n *\n * A `pageCount` of `-1` means the caller does not know the total page count, so\n * this returns `true`. A page count of `0` returns `false`.\n *\n * @example\n * ```ts\n * const canGoForward = table_getCanNextPage(table)\n * ```\n */\nexport function table_getCanNextPage<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const pageIndex = table.atoms.pagination?.get()?.pageIndex ?? defaultPageIndex\n\n const pageCount = table_getPageCount(table)\n\n if (pageCount === -1) {\n return true\n }\n\n if (pageCount === 0) {\n return false\n }\n\n return pageIndex < pageCount - 1\n}\n\n/**\n * Moves the table to the previous page.\n *\n * This delegates to `table_setPageIndex` so pagination state ownership and\n * updater semantics remain consistent.\n *\n * @example\n * ```ts\n * table_previousPage(table)\n * ```\n */\nexport function table_previousPage<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return table_setPageIndex(table, (old) => old - 1)\n}\n\n/**\n * Moves the table to the next page.\n *\n * This delegates to `table_setPageIndex` so pagination state ownership and\n * updater semantics remain consistent.\n *\n * @example\n * ```ts\n * table_nextPage(table)\n * ```\n */\nexport function table_nextPage<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return table_setPageIndex(table, (old) => {\n return old + 1\n })\n}\n\n/**\n * Moves the table to the first page.\n *\n * This is a convenience wrapper around `table_setPageIndex(table, 0)`.\n *\n * @example\n * ```ts\n * table_firstPage(table)\n * ```\n */\nexport function table_firstPage<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return table_setPageIndex(table, 0)\n}\n\n/**\n * Moves the table to the last known page.\n *\n * The target page is derived from `table_getPageCount(table) - 1`.\n *\n * @example\n * ```ts\n * table_lastPage(table)\n * ```\n */\nexport function table_lastPage<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return table_setPageIndex(table, table_getPageCount(table) - 1)\n}\n\n/**\n * Resolves the number of pages for the current pagination state.\n *\n * `options.pageCount` wins for manual pagination. Otherwise the value is\n * calculated from `table_getRowCount(table)` and the current `pageSize`.\n *\n * @example\n * ```ts\n * const pages = table_getPageCount(table)\n * ```\n */\nexport function table_getPageCount<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return (\n table.options.pageCount ??\n Math.ceil(\n table_getRowCount(table) /\n (table.atoms.pagination?.get()?.pageSize ?? defaultPageSize),\n )\n )\n}\n\n/**\n * Resolves the total row count used for pagination math.\n *\n * `options.rowCount` wins for manual pagination. Otherwise the count comes\n * from the pre-paginated row model so filtering, grouping, sorting, and\n * expansion are reflected before the page slice is applied.\n *\n * @example\n * ```ts\n * const rows = table_getRowCount(table)\n * ```\n */\nexport function table_getRowCount<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return table.options.rowCount ?? table.getPrePaginatedRowModel().rows.length\n}\n"],"mappings":";;;AAMA,MAAM,mBAAmB;AACzB,MAAM,kBAAkB;;;;;;;;;;;;AAaxB,SAAgB,4BAA6C;CAC3D,OAAO;EACL,WAAW;EACX,UAAU;CACZ;AACF;;;;;;;;;;;;;AAcA,SAAgB,yBAGd,OAAyC;CACzC,IACE,MAAM,QAAQ,gBACd,MAAM,QAAQ,sBACd,CAAC,MAAM,QAAQ,kBAEf,qBAAqB,KAAK;AAE9B;;;;;;;;;;;;;AAcA,SAAgB,oBAGd,OAAyC,SAAmC;;CAC5E,MAAM,eAAyC,QAAQ;EAGrD,OAFiBA,+BAAiB,SAAS,GAE7B;CAChB;CAEA,kDAAO,MAAM,SAAQ,uHAAqB,WAAW;AACvD;;;;;;;;;;;;;;AAeA,SAAgB,sBAGd,OAAyC,cAAwB;CACjE,oBACE,OACA,eACI,0BAA0B,IAC1BC,yBACE,MAAM,aAAa,cAAc,0BAA0B,CAC7D,CACN;AACF;;;;;;;;;;;;AAaA,SAAgB,mBAGd,OAAyC,SAA0B;CACnE,oBAAoB,QAAQ,QAAQ;EAClC,IAAI,YAAYD,+BAAiB,SAAS,IAAI,SAAS;EAEvD,MAAM,eACJ,OAAO,MAAM,QAAQ,cAAc,eACnC,MAAM,QAAQ,cAAc,KACxB,OAAO,mBACP,MAAM,QAAQ,YAAY;EAEhC,YAAY,KAAK,IAAI,GAAG,KAAK,IAAI,WAAW,YAAY,CAAC;EAEzD,OAAO;GACL,GAAG;GACH;EACF;CACF,CAAC;AACH;;;;;;;;;;;;;AAcA,SAAgB,qBAGd,OAAyC,cAAwB;;CACjE,MAAM,6CACJ,MAAM,MAAM,2GAAY,IAAI,iFAAG,cAAa;CAC9C,MAAM,eAAe,eACjB,6CACC,MAAM,aAAa,0FAAY,cAAa;CACjD,IAAI,iBAAiB,kBAAkB;CACvC,mBAAmB,OAAO,YAAY;AACxC;;;;;;;;;;;;;AAcA,SAAgB,oBAGd,OAAyC,cAAwB;;CACjE,MAAM,6CACJ,MAAM,MAAM,8GAAY,IAAI,mFAAG,aAAY;CAC7C,MAAM,cAAc,eAChB,6CACC,MAAM,aAAa,4FAAY,aAAY;CAChD,IAAI,gBAAgB,iBAAiB;CACrC,kBAAkB,OAAO,WAAW;AACtC;;;;;;;;;;;;AAaA,SAAgB,kBAGd,OAAyC,SAA0B;CACnE,oBAAoB,QAAQ,QAAQ;EAClC,MAAM,WAAW,KAAK,IAAI,GAAGA,+BAAiB,SAAS,IAAI,QAAQ,CAAC;EACpE,MAAM,cAAc,IAAI,WAAW,IAAI;EACvC,MAAM,YAAY,KAAK,MAAM,cAAc,QAAQ;EAEnD,OAAO;GACL,GAAG;GACH;GACA;EACF;CACF,CAAC;AACH;;;;;;;;;;;;AAaA,SAAgB,qBAGd,OAAyC;CACzC,MAAM,YAAY,mBAAmB,KAAK;CAC1C,IAAI,cAA6B,CAAC;CAClC,IAAI,aAAa,YAAY,GAC3B,cAAc,CAAC,GAAG,IAAI,MAAM,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC;CAEpE,OAAO;AACT;;;;;;;;;;;;AAaA,SAAgB,yBAGd,OAAyC;;CACzC,mCAAQ,MAAM,MAAM,8GAAY,IAAI,mFAAG,cAAa,KAAK;AAC3D;;;;;;;;;;;;AAaA,SAAgB,qBAGd,OAAyC;;CACzC,MAAM,uCAAY,MAAM,MAAM,8GAAY,IAAI,mFAAG,cAAa;CAE9D,MAAM,YAAY,mBAAmB,KAAK;CAE1C,IAAI,cAAc,IAChB,OAAO;CAGT,IAAI,cAAc,GAChB,OAAO;CAGT,OAAO,YAAY,YAAY;AACjC;;;;;;;;;;;;AAaA,SAAgB,mBAGd,OAAyC;CACzC,OAAO,mBAAmB,QAAQ,QAAQ,MAAM,CAAC;AACnD;;;;;;;;;;;;AAaA,SAAgB,eAGd,OAAyC;CACzC,OAAO,mBAAmB,QAAQ,QAAQ;EACxC,OAAO,MAAM;CACf,CAAC;AACH;;;;;;;;;;;AAYA,SAAgB,gBAGd,OAAyC;CACzC,OAAO,mBAAmB,OAAO,CAAC;AACpC;;;;;;;;;;;AAYA,SAAgB,eAGd,OAAyC;CACzC,OAAO,mBAAmB,OAAO,mBAAmB,KAAK,IAAI,CAAC;AAChE;;;;;;;;;;;;AAaA,SAAgB,mBAGd,OAAyC;;CACzC,OACE,MAAM,QAAQ,aACd,KAAK,KACH,kBAAkB,KAAK,gCACpB,MAAM,MAAM,8GAAY,IAAI,mFAAG,aAAY,gBAChD;AAEJ;;;;;;;;;;;;;AAcA,SAAgB,kBAGd,OAAyC;CACzC,OAAO,MAAM,QAAQ,YAAY,MAAM,wBAAwB,CAAC,CAAC,KAAK;AACxE"}
|