@tanstack/table-core 9.0.0-beta.9 → 9.0.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 +27 -9
- package/dist/core/cells/constructCell.d.ts +4 -6
- package/dist/core/cells/constructCell.js +4 -6
- package/dist/core/cells/coreCellsFeature.d.ts +1 -3
- package/dist/core/cells/coreCellsFeature.js +1 -2
- package/dist/core/cells/coreCellsFeature.types.d.ts +7 -9
- package/dist/core/cells/coreCellsFeature.utils.d.ts +5 -5
- package/dist/core/cells/coreCellsFeature.utils.js +1 -2
- package/dist/core/columns/constructColumn.d.ts +4 -6
- package/dist/core/columns/constructColumn.js +8 -9
- package/dist/core/columns/coreColumnsFeature.d.ts +2 -4
- package/dist/core/columns/coreColumnsFeature.js +14 -21
- package/dist/core/columns/coreColumnsFeature.types.d.ts +13 -15
- package/dist/core/columns/coreColumnsFeature.utils.d.ts +10 -12
- package/dist/core/columns/coreColumnsFeature.utils.js +19 -20
- package/dist/core/coreFeatures.d.ts +2 -2
- package/dist/core/coreFeatures.js +1 -2
- package/dist/core/headers/buildHeaderGroups.d.ts +3 -5
- package/dist/core/headers/buildHeaderGroups.js +99 -85
- package/dist/core/headers/constructHeader.d.ts +3 -5
- package/dist/core/headers/constructHeader.js +4 -6
- package/dist/core/headers/coreHeadersFeature.d.ts +1 -3
- package/dist/core/headers/coreHeadersFeature.js +9 -13
- package/dist/core/headers/coreHeadersFeature.types.d.ts +22 -12
- package/dist/core/headers/coreHeadersFeature.utils.d.ts +8 -8
- package/dist/core/headers/coreHeadersFeature.utils.js +14 -17
- package/dist/core/reactivity/coreReactivityFeature.types.d.ts +8 -3
- package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +1 -3
- package/dist/core/reactivity/coreReactivityFeature.utils.js +1 -2
- package/dist/core/reactivity/renderPhaseReactivity.d.ts +80 -0
- package/dist/core/reactivity/renderPhaseReactivity.js +95 -0
- package/dist/core/row-models/coreRowModelsFeature.d.ts +1 -3
- package/dist/core/row-models/coreRowModelsFeature.js +1 -2
- package/dist/core/row-models/coreRowModelsFeature.types.d.ts +7 -17
- package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +17 -19
- package/dist/core/row-models/coreRowModelsFeature.utils.js +9 -28
- package/dist/core/row-models/createCoreRowModel.d.ts +3 -5
- package/dist/core/row-models/createCoreRowModel.js +29 -24
- package/dist/core/rows/constructRow.d.ts +3 -5
- package/dist/core/rows/constructRow.js +9 -13
- package/dist/core/rows/coreRowsFeature.d.ts +1 -3
- package/dist/core/rows/coreRowsFeature.js +20 -5
- package/dist/core/rows/coreRowsFeature.types.d.ts +43 -11
- package/dist/core/rows/coreRowsFeature.utils.d.ts +26 -9
- package/dist/core/rows/coreRowsFeature.utils.js +65 -14
- package/dist/core/table/constructTable.d.ts +2 -4
- package/dist/core/table/constructTable.js +54 -22
- package/dist/core/table/coreTablesFeature.d.ts +1 -3
- package/dist/core/table/coreTablesFeature.js +1 -2
- package/dist/core/table/coreTablesFeature.types.d.ts +41 -24
- package/dist/core/table/coreTablesFeature.utils.d.ts +34 -12
- package/dist/core/table/coreTablesFeature.utils.js +71 -25
- package/dist/experimental-worker-plugin.d.ts +5 -0
- package/dist/experimental-worker-plugin.js +6 -0
- package/dist/features/cell-selection/cellSelectionFeature.d.ts +8 -0
- package/dist/features/cell-selection/cellSelectionFeature.js +128 -0
- package/dist/features/cell-selection/cellSelectionFeature.types.d.ts +296 -0
- package/dist/features/cell-selection/cellSelectionFeature.utils.d.ts +306 -0
- package/dist/features/cell-selection/cellSelectionFeature.utils.js +879 -0
- package/dist/features/cell-selection/cellSelectionGeometry.js +121 -0
- package/dist/features/cell-spanning/cellSpanningFeature.d.ts +13 -0
- package/dist/features/cell-spanning/cellSpanningFeature.js +47 -0
- package/dist/features/cell-spanning/cellSpanningFeature.types.d.ts +150 -0
- package/dist/features/cell-spanning/cellSpanningFeature.utils.d.ts +74 -0
- package/dist/features/cell-spanning/cellSpanningFeature.utils.js +262 -0
- package/dist/features/column-faceting/columnFacetingFeature.d.ts +7 -3
- package/dist/features/column-faceting/columnFacetingFeature.js +14 -43
- package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +15 -35
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +10 -12
- package/dist/features/column-faceting/columnFacetingFeature.utils.js +29 -14
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +2 -4
- package/dist/features/column-faceting/createFacetedMinMaxValues.js +9 -7
- package/dist/features/column-faceting/createFacetedRowModel.d.ts +3 -5
- package/dist/features/column-faceting/createFacetedRowModel.js +12 -17
- package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +2 -4
- package/dist/features/column-faceting/createFacetedUniqueValues.js +12 -9
- package/dist/features/column-filtering/columnFilteringFeature.d.ts +1 -3
- package/dist/features/column-filtering/columnFilteringFeature.js +4 -5
- package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +90 -33
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +25 -18
- package/dist/features/column-filtering/columnFilteringFeature.utils.js +42 -23
- package/dist/features/column-filtering/createFilteredRowModel.d.ts +11 -7
- package/dist/features/column-filtering/createFilteredRowModel.js +34 -30
- package/dist/features/column-filtering/filterFns.d.ts +210 -0
- package/dist/features/column-filtering/filterFns.js +377 -0
- package/dist/features/column-filtering/filterRowsUtils.js +12 -4
- package/dist/features/column-grouping/columnGroupingFeature.d.ts +2 -4
- package/dist/features/column-grouping/columnGroupingFeature.js +7 -20
- package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +14 -52
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +12 -51
- package/dist/features/column-grouping/columnGroupingFeature.utils.js +8 -61
- package/dist/features/column-grouping/createGroupedRowModel.d.ts +7 -7
- package/dist/features/column-grouping/createGroupedRowModel.js +79 -43
- package/dist/features/column-ordering/columnOrderingFeature.d.ts +1 -3
- package/dist/features/column-ordering/columnOrderingFeature.js +19 -24
- package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +28 -5
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +26 -16
- package/dist/features/column-ordering/columnOrderingFeature.utils.js +36 -18
- package/dist/features/column-pinning/columnPinningFeature.d.ts +7 -4
- package/dist/features/column-pinning/columnPinningFeature.js +126 -146
- package/dist/features/column-pinning/columnPinningFeature.types.d.ts +53 -44
- package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +100 -93
- package/dist/features/column-pinning/columnPinningFeature.utils.js +148 -150
- package/dist/features/column-resizing/columnResizingFeature.d.ts +1 -3
- package/dist/features/column-resizing/columnResizingFeature.js +1 -2
- package/dist/features/column-resizing/columnResizingFeature.types.d.ts +2 -7
- package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +7 -9
- package/dist/features/column-resizing/columnResizingFeature.utils.js +86 -48
- package/dist/features/column-sizing/columnSizingFeature.d.ts +1 -3
- package/dist/features/column-sizing/columnSizingFeature.js +35 -70
- package/dist/features/column-sizing/columnSizingFeature.types.d.ts +52 -11
- package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +43 -27
- package/dist/features/column-sizing/columnSizingFeature.utils.js +95 -54
- package/dist/features/column-visibility/columnVisibilityFeature.d.ts +1 -3
- package/dist/features/column-visibility/columnVisibilityFeature.js +26 -38
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +4 -6
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +22 -20
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js +39 -32
- package/dist/features/global-filtering/globalFilteringFeature.d.ts +1 -3
- package/dist/features/global-filtering/globalFilteringFeature.js +3 -4
- package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +4 -6
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +10 -13
- package/dist/features/global-filtering/globalFilteringFeature.utils.js +7 -8
- package/dist/features/row-aggregation/aggregationFns.d.ts +67 -0
- package/dist/features/row-aggregation/aggregationFns.js +279 -0
- package/dist/features/row-aggregation/rowAggregationFeature.d.ts +8 -0
- package/dist/features/row-aggregation/rowAggregationFeature.js +35 -0
- package/dist/features/row-aggregation/rowAggregationFeature.types.d.ts +193 -0
- package/dist/features/row-aggregation/rowAggregationFeature.types.js +11 -0
- package/dist/features/row-aggregation/rowAggregationFeature.utils.d.ts +46 -0
- package/dist/features/row-aggregation/rowAggregationFeature.utils.js +235 -0
- package/dist/features/row-expanding/createExpandedRowModel.d.ts +3 -5
- package/dist/features/row-expanding/createExpandedRowModel.js +9 -13
- package/dist/features/row-expanding/rowExpandingFeature.d.ts +1 -3
- package/dist/features/row-expanding/rowExpandingFeature.js +1 -2
- package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +7 -18
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +26 -22
- package/dist/features/row-expanding/rowExpandingFeature.utils.js +66 -45
- package/dist/features/row-pagination/createPaginatedRowModel.d.ts +3 -5
- package/dist/features/row-pagination/createPaginatedRowModel.js +10 -12
- package/dist/features/row-pagination/rowPaginationFeature.d.ts +1 -3
- package/dist/features/row-pagination/rowPaginationFeature.js +1 -2
- package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +6 -17
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +18 -20
- package/dist/features/row-pagination/rowPaginationFeature.utils.js +10 -17
- package/dist/features/row-pinning/rowPinningFeature.d.ts +1 -3
- package/dist/features/row-pinning/rowPinningFeature.js +5 -18
- package/dist/features/row-pinning/rowPinningFeature.types.d.ts +3 -5
- package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +8 -10
- package/dist/features/row-pinning/rowPinningFeature.utils.js +12 -18
- package/dist/features/row-selection/rowSelectionFeature.d.ts +1 -3
- package/dist/features/row-selection/rowSelectionFeature.js +70 -25
- package/dist/features/row-selection/rowSelectionFeature.types.d.ts +69 -16
- package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +70 -38
- package/dist/features/row-selection/rowSelectionFeature.utils.js +229 -108
- package/dist/features/row-sorting/createSortedRowModel.d.ts +11 -7
- package/dist/features/row-sorting/createSortedRowModel.js +72 -54
- package/dist/features/row-sorting/rowSortingFeature.d.ts +1 -3
- package/dist/features/row-sorting/rowSortingFeature.js +2 -2
- package/dist/features/row-sorting/rowSortingFeature.types.d.ts +74 -31
- package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +39 -27
- package/dist/features/row-sorting/rowSortingFeature.utils.js +66 -33
- package/dist/features/row-sorting/sortFns.d.ts +96 -0
- package/dist/features/row-sorting/sortFns.js +216 -0
- package/dist/features/stockFeatures.d.ts +7 -3
- package/dist/features/stockFeatures.js +7 -2
- package/dist/flex-render.d.ts +2 -4
- package/dist/flex-render.js +10 -3
- package/dist/helpers/columnHelper.d.ts +3 -5
- package/dist/helpers/columnHelper.js +1 -2
- package/dist/helpers/metaHelper.d.ts +1 -2
- package/dist/helpers/metaHelper.js +1 -2
- package/dist/helpers/tableFeatures.d.ts +30 -13
- package/dist/helpers/tableFeatures.js +28 -10
- package/dist/helpers/tableOptions.d.ts +1 -3
- package/dist/helpers/tableOptions.js +1 -2
- package/dist/index.d.ts +32 -26
- package/dist/index.js +9 -5
- package/dist/reactivity.d.ts +2 -1
- package/dist/reactivity.js +2 -1
- package/dist/static-functions.d.ts +12 -9
- package/dist/static-functions.js +13 -10
- package/dist/store-reactivity-bindings.d.ts +1 -3
- package/dist/store-reactivity-bindings.js +3 -4
- package/dist/types/Cell.d.ts +9 -5
- package/dist/types/Column.d.ts +13 -15
- package/dist/types/ColumnDef.d.ts +23 -19
- package/dist/types/Header.d.ts +3 -5
- package/dist/types/HeaderGroup.d.ts +3 -5
- package/dist/types/Row.d.ts +7 -7
- package/dist/types/RowModel.d.ts +11 -25
- package/dist/types/RowModelFns.d.ts +5 -7
- package/dist/types/Table.d.ts +29 -32
- package/dist/types/TableFeatures.d.ts +372 -30
- package/dist/types/TableOptions.d.ts +24 -14
- package/dist/types/TableState.d.ts +8 -8
- package/dist/types/type-utils.d.ts +10 -4
- package/dist/utils.d.ts +42 -27
- package/dist/utils.js +71 -33
- package/dist/worker/createTableWorker.d.ts +102 -0
- package/dist/worker/createTableWorker.js +188 -0
- package/dist/worker/createWorkerRowModel.d.ts +40 -0
- package/dist/worker/createWorkerRowModel.js +77 -0
- package/dist/worker/initTableWorker.d.ts +31 -0
- package/dist/worker/initTableWorker.js +99 -0
- package/dist/worker/rebuildRowModel.d.ts +11 -0
- package/dist/worker/rebuildRowModel.js +71 -0
- package/dist/worker/serializeRowModel.js +51 -0
- package/dist/worker/tableWorkerProtocol.d.ts +88 -0
- package/dist/worker/tableWorkerProtocol.js +26 -0
- package/package.json +12 -28
- package/skills/aggregation/SKILL.md +137 -0
- package/skills/api-not-found/SKILL.md +113 -0
- package/skills/cell-selection/SKILL.md +200 -0
- package/skills/cell-spanning/SKILL.md +158 -0
- package/skills/client-vs-server/SKILL.md +164 -0
- package/skills/column-faceting/SKILL.md +93 -0
- package/skills/column-filtering/SKILL.md +83 -0
- package/skills/column-ordering/SKILL.md +71 -0
- package/skills/column-pinning/SKILL.md +85 -0
- package/skills/column-resizing/SKILL.md +87 -0
- package/skills/column-sizing/SKILL.md +68 -0
- package/skills/column-visibility/SKILL.md +71 -0
- package/skills/core/SKILL.md +175 -0
- package/skills/custom-features/SKILL.md +235 -0
- package/skills/expanding/SKILL.md +76 -0
- package/skills/global-filtering/SKILL.md +80 -0
- package/skills/grouping/SKILL.md +47 -401
- package/skills/migrate-v8-to-v9/SKILL.md +275 -416
- package/skills/pagination/SKILL.md +33 -344
- package/skills/row-pinning/SKILL.md +43 -234
- package/skills/row-selection/SKILL.md +79 -296
- package/skills/sorting/SKILL.md +41 -303
- package/skills/table-features/SKILL.md +159 -0
- package/skills/typescript/SKILL.md +126 -0
- package/dist/core/cells/constructCell.cjs +0 -34
- package/dist/core/cells/constructCell.cjs.map +0 -1
- package/dist/core/cells/constructCell.d.cts +0 -17
- package/dist/core/cells/constructCell.js.map +0 -1
- package/dist/core/cells/coreCellsFeature.cjs +0 -21
- package/dist/core/cells/coreCellsFeature.cjs.map +0 -1
- package/dist/core/cells/coreCellsFeature.d.cts +0 -10
- package/dist/core/cells/coreCellsFeature.js.map +0 -1
- package/dist/core/cells/coreCellsFeature.types.d.cts +0 -57
- package/dist/core/cells/coreCellsFeature.utils.cjs +0 -57
- package/dist/core/cells/coreCellsFeature.utils.cjs.map +0 -1
- package/dist/core/cells/coreCellsFeature.utils.d.cts +0 -53
- package/dist/core/cells/coreCellsFeature.utils.js.map +0 -1
- package/dist/core/columns/constructColumn.cjs +0 -61
- package/dist/core/columns/constructColumn.cjs.map +0 -1
- package/dist/core/columns/constructColumn.d.cts +0 -16
- package/dist/core/columns/constructColumn.js.map +0 -1
- package/dist/core/columns/coreColumnsFeature.cjs +0 -70
- package/dist/core/columns/coreColumnsFeature.cjs.map +0 -1
- package/dist/core/columns/coreColumnsFeature.d.cts +0 -10
- package/dist/core/columns/coreColumnsFeature.js.map +0 -1
- package/dist/core/columns/coreColumnsFeature.types.d.cts +0 -94
- package/dist/core/columns/coreColumnsFeature.utils.cjs +0 -187
- package/dist/core/columns/coreColumnsFeature.utils.cjs.map +0 -1
- package/dist/core/columns/coreColumnsFeature.utils.d.cts +0 -119
- package/dist/core/columns/coreColumnsFeature.utils.js.map +0 -1
- package/dist/core/coreFeatures.cjs +0 -25
- package/dist/core/coreFeatures.cjs.map +0 -1
- package/dist/core/coreFeatures.d.cts +0 -26
- package/dist/core/coreFeatures.js.map +0 -1
- package/dist/core/headers/buildHeaderGroups.cjs +0 -103
- package/dist/core/headers/buildHeaderGroups.cjs.map +0 -1
- package/dist/core/headers/buildHeaderGroups.d.cts +0 -16
- package/dist/core/headers/buildHeaderGroups.js.map +0 -1
- package/dist/core/headers/constructHeader.cjs +0 -41
- package/dist/core/headers/constructHeader.cjs.map +0 -1
- package/dist/core/headers/constructHeader.d.cts +0 -22
- package/dist/core/headers/constructHeader.js.map +0 -1
- package/dist/core/headers/coreHeadersFeature.cjs +0 -55
- package/dist/core/headers/coreHeadersFeature.cjs.map +0 -1
- package/dist/core/headers/coreHeadersFeature.d.cts +0 -10
- package/dist/core/headers/coreHeadersFeature.js.map +0 -1
- package/dist/core/headers/coreHeadersFeature.types.d.cts +0 -106
- package/dist/core/headers/coreHeadersFeature.utils.cjs +0 -142
- package/dist/core/headers/coreHeadersFeature.utils.cjs.map +0 -1
- package/dist/core/headers/coreHeadersFeature.utils.d.cts +0 -85
- package/dist/core/headers/coreHeadersFeature.utils.js.map +0 -1
- package/dist/core/reactivity/coreReactivityFeature.types.d.cts +0 -48
- package/dist/core/reactivity/coreReactivityFeature.utils.cjs +0 -24
- package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +0 -1
- package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +0 -24
- package/dist/core/reactivity/coreReactivityFeature.utils.js.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.cjs +0 -27
- package/dist/core/row-models/coreRowModelsFeature.cjs.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.d.cts +0 -10
- package/dist/core/row-models/coreRowModelsFeature.js.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.types.d.cts +0 -41
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs +0 -215
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +0 -153
- package/dist/core/row-models/coreRowModelsFeature.utils.js.map +0 -1
- package/dist/core/row-models/createCoreRowModel.cjs +0 -52
- package/dist/core/row-models/createCoreRowModel.cjs.map +0 -1
- package/dist/core/row-models/createCoreRowModel.d.cts +0 -15
- package/dist/core/row-models/createCoreRowModel.js.map +0 -1
- package/dist/core/rows/constructRow.cjs +0 -44
- package/dist/core/rows/constructRow.cjs.map +0 -1
- package/dist/core/rows/constructRow.d.cts +0 -15
- package/dist/core/rows/constructRow.js.map +0 -1
- package/dist/core/rows/coreRowsFeature.cjs +0 -37
- package/dist/core/rows/coreRowsFeature.cjs.map +0 -1
- package/dist/core/rows/coreRowsFeature.d.cts +0 -10
- package/dist/core/rows/coreRowsFeature.js.map +0 -1
- package/dist/core/rows/coreRowsFeature.types.d.cts +0 -99
- package/dist/core/rows/coreRowsFeature.utils.cjs +0 -192
- package/dist/core/rows/coreRowsFeature.utils.cjs.map +0 -1
- package/dist/core/rows/coreRowsFeature.utils.d.cts +0 -127
- package/dist/core/rows/coreRowsFeature.utils.js.map +0 -1
- package/dist/core/table/constructTable.cjs +0 -119
- package/dist/core/table/constructTable.cjs.map +0 -1
- package/dist/core/table/constructTable.d.cts +0 -22
- package/dist/core/table/constructTable.js.map +0 -1
- package/dist/core/table/coreTablesFeature.cjs +0 -17
- package/dist/core/table/coreTablesFeature.cjs.map +0 -1
- package/dist/core/table/coreTablesFeature.d.cts +0 -10
- package/dist/core/table/coreTablesFeature.js.map +0 -1
- package/dist/core/table/coreTablesFeature.types.d.cts +0 -200
- package/dist/core/table/coreTablesFeature.utils.cjs +0 -96
- package/dist/core/table/coreTablesFeature.utils.cjs.map +0 -1
- package/dist/core/table/coreTablesFeature.utils.d.cts +0 -57
- package/dist/core/table/coreTablesFeature.utils.js.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.cjs +0 -61
- package/dist/features/column-faceting/columnFacetingFeature.cjs.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.d.cts +0 -10
- package/dist/features/column-faceting/columnFacetingFeature.js.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +0 -85
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +0 -103
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +0 -84
- package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +0 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +0 -44
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +0 -14
- package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +0 -1
- package/dist/features/column-faceting/createFacetedRowModel.cjs +0 -50
- package/dist/features/column-faceting/createFacetedRowModel.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedRowModel.d.cts +0 -15
- package/dist/features/column-faceting/createFacetedRowModel.js.map +0 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs +0 -41
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +0 -14
- package/dist/features/column-faceting/createFacetedUniqueValues.js.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.cjs +0 -50
- package/dist/features/column-filtering/columnFilteringFeature.cjs.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.d.cts +0 -10
- package/dist/features/column-filtering/columnFilteringFeature.js.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +0 -160
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +0 -212
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +0 -143
- package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +0 -1
- package/dist/features/column-filtering/createFilteredRowModel.cjs +0 -110
- package/dist/features/column-filtering/createFilteredRowModel.cjs.map +0 -1
- package/dist/features/column-filtering/createFilteredRowModel.d.cts +0 -16
- package/dist/features/column-filtering/createFilteredRowModel.js.map +0 -1
- package/dist/features/column-filtering/filterRowsUtils.cjs +0 -81
- package/dist/features/column-filtering/filterRowsUtils.cjs.map +0 -1
- package/dist/features/column-filtering/filterRowsUtils.js.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.cjs +0 -67
- package/dist/features/column-grouping/columnGroupingFeature.cjs.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.d.cts +0 -10
- package/dist/features/column-grouping/columnGroupingFeature.js.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +0 -165
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +0 -250
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +0 -190
- package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +0 -1
- package/dist/features/column-grouping/createGroupedRowModel.cjs +0 -119
- package/dist/features/column-grouping/createGroupedRowModel.cjs.map +0 -1
- package/dist/features/column-grouping/createGroupedRowModel.d.cts +0 -16
- package/dist/features/column-grouping/createGroupedRowModel.js.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.cjs +0 -58
- package/dist/features/column-ordering/columnOrderingFeature.cjs.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.d.cts +0 -10
- package/dist/features/column-ordering/columnOrderingFeature.js.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +0 -56
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +0 -172
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +0 -107
- package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.cjs +0 -221
- package/dist/features/column-pinning/columnPinningFeature.cjs.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.d.cts +0 -10
- package/dist/features/column-pinning/columnPinningFeature.js.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.types.d.cts +0 -178
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs +0 -585
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +0 -375
- package/dist/features/column-pinning/columnPinningFeature.utils.js.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.cjs +0 -41
- package/dist/features/column-resizing/columnResizingFeature.cjs.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.d.cts +0 -10
- package/dist/features/column-resizing/columnResizingFeature.js.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.types.d.cts +0 -81
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs +0 -246
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +0 -109
- package/dist/features/column-resizing/columnResizingFeature.utils.js.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.cjs +0 -124
- package/dist/features/column-sizing/columnSizingFeature.cjs.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.d.cts +0 -10
- package/dist/features/column-sizing/columnSizingFeature.js.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.types.d.cts +0 -96
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs +0 -256
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +0 -182
- package/dist/features/column-sizing/columnSizingFeature.utils.js.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.cjs +0 -94
- package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.d.cts +0 -10
- package/dist/features/column-visibility/columnVisibilityFeature.js.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +0 -97
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +0 -283
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +0 -189
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.cjs +0 -41
- package/dist/features/global-filtering/globalFilteringFeature.cjs.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.d.cts +0 -10
- package/dist/features/global-filtering/globalFilteringFeature.js.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +0 -71
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +0 -88
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +0 -74
- package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +0 -1
- package/dist/features/row-expanding/createExpandedRowModel.cjs +0 -59
- package/dist/features/row-expanding/createExpandedRowModel.cjs.map +0 -1
- package/dist/features/row-expanding/createExpandedRowModel.d.cts +0 -21
- package/dist/features/row-expanding/createExpandedRowModel.js.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.cjs +0 -47
- package/dist/features/row-expanding/rowExpandingFeature.cjs.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.d.cts +0 -10
- package/dist/features/row-expanding/rowExpandingFeature.js.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +0 -127
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +0 -281
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +0 -191
- package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +0 -1
- package/dist/features/row-pagination/createPaginatedRowModel.cjs +0 -62
- package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +0 -1
- package/dist/features/row-pagination/createPaginatedRowModel.d.cts +0 -15
- package/dist/features/row-pagination/createPaginatedRowModel.js.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.cjs +0 -45
- package/dist/features/row-pagination/rowPaginationFeature.cjs.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.d.cts +0 -10
- package/dist/features/row-pagination/rowPaginationFeature.js.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +0 -135
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +0 -312
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +0 -218
- package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.cjs +0 -67
- package/dist/features/row-pinning/rowPinningFeature.cjs.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.d.cts +0 -10
- package/dist/features/row-pinning/rowPinningFeature.js.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.types.d.cts +0 -83
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs +0 -229
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +0 -143
- package/dist/features/row-pinning/rowPinningFeature.utils.js.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.cjs +0 -75
- package/dist/features/row-selection/rowSelectionFeature.cjs.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.d.cts +0 -10
- package/dist/features/row-selection/rowSelectionFeature.js.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.types.d.cts +0 -136
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs +0 -518
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +0 -318
- package/dist/features/row-selection/rowSelectionFeature.utils.js.map +0 -1
- package/dist/features/row-sorting/createSortedRowModel.cjs +0 -95
- package/dist/features/row-sorting/createSortedRowModel.cjs.map +0 -1
- package/dist/features/row-sorting/createSortedRowModel.d.cts +0 -16
- package/dist/features/row-sorting/createSortedRowModel.js.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.cjs +0 -55
- package/dist/features/row-sorting/rowSortingFeature.cjs.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.d.cts +0 -10
- package/dist/features/row-sorting/rowSortingFeature.js.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.types.d.cts +0 -188
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs +0 -305
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +0 -193
- package/dist/features/row-sorting/rowSortingFeature.utils.js.map +0 -1
- package/dist/features/stockFeatures.cjs +0 -41
- package/dist/features/stockFeatures.cjs.map +0 -1
- package/dist/features/stockFeatures.d.cts +0 -41
- package/dist/features/stockFeatures.js.map +0 -1
- package/dist/flex-render.cjs +0 -29
- package/dist/flex-render.cjs.map +0 -1
- package/dist/flex-render.d.cts +0 -34
- package/dist/flex-render.js.map +0 -1
- package/dist/fns/aggregationFns.cjs +0 -161
- package/dist/fns/aggregationFns.cjs.map +0 -1
- package/dist/fns/aggregationFns.d.cts +0 -85
- package/dist/fns/aggregationFns.d.ts +0 -85
- package/dist/fns/aggregationFns.js +0 -151
- package/dist/fns/aggregationFns.js.map +0 -1
- package/dist/fns/filterFns.cjs +0 -201
- package/dist/fns/filterFns.cjs.map +0 -1
- package/dist/fns/filterFns.d.cts +0 -167
- package/dist/fns/filterFns.d.ts +0 -167
- package/dist/fns/filterFns.js +0 -185
- package/dist/fns/filterFns.js.map +0 -1
- package/dist/fns/sortFns.cjs +0 -130
- package/dist/fns/sortFns.cjs.map +0 -1
- package/dist/fns/sortFns.d.cts +0 -65
- package/dist/fns/sortFns.d.ts +0 -65
- package/dist/fns/sortFns.js +0 -122
- package/dist/fns/sortFns.js.map +0 -1
- package/dist/helpers/columnHelper.cjs +0 -41
- package/dist/helpers/columnHelper.cjs.map +0 -1
- package/dist/helpers/columnHelper.d.cts +0 -71
- package/dist/helpers/columnHelper.js.map +0 -1
- package/dist/helpers/metaHelper.cjs +0 -30
- package/dist/helpers/metaHelper.cjs.map +0 -1
- package/dist/helpers/metaHelper.d.cts +0 -26
- package/dist/helpers/metaHelper.js.map +0 -1
- package/dist/helpers/tableFeatures.cjs +0 -30
- package/dist/helpers/tableFeatures.cjs.map +0 -1
- package/dist/helpers/tableFeatures.d.cts +0 -28
- package/dist/helpers/tableFeatures.js.map +0 -1
- package/dist/helpers/tableOptions.cjs +0 -15
- package/dist/helpers/tableOptions.cjs.map +0 -1
- package/dist/helpers/tableOptions.d.cts +0 -57
- package/dist/helpers/tableOptions.js.map +0 -1
- package/dist/index.cjs +0 -135
- package/dist/index.d.cts +0 -79
- package/dist/reactivity.cjs +0 -4
- package/dist/reactivity.d.cts +0 -3
- package/dist/static-functions.cjs +0 -263
- package/dist/static-functions.d.cts +0 -21
- package/dist/store-reactivity-bindings.cjs +0 -44
- package/dist/store-reactivity-bindings.cjs.map +0 -1
- package/dist/store-reactivity-bindings.d.cts +0 -22
- package/dist/store-reactivity-bindings.js.map +0 -1
- package/dist/types/Cell.d.cts +0 -14
- package/dist/types/Column.d.cts +0 -36
- package/dist/types/ColumnDef.d.cts +0 -123
- package/dist/types/Header.d.cts +0 -16
- package/dist/types/HeaderGroup.d.cts +0 -10
- package/dist/types/Row.d.cts +0 -26
- package/dist/types/RowModel.d.cts +0 -36
- package/dist/types/RowModelFns.d.cts +0 -18
- package/dist/types/Table.d.cts +0 -70
- package/dist/types/TableFeatures.d.cts +0 -75
- package/dist/types/TableOptions.d.cts +0 -69
- package/dist/types/TableState.d.cts +0 -48
- package/dist/types/type-utils.d.cts +0 -23
- package/dist/utils.cjs +0 -243
- package/dist/utils.cjs.map +0 -1
- package/dist/utils.d.cts +0 -114
- package/dist/utils.js.map +0 -1
- package/skills/column-definitions/SKILL.md +0 -333
- package/skills/column-layout/SKILL.md +0 -328
- package/skills/column-layout/references/subsystems.md +0 -220
- package/skills/customizing-feature-behavior/SKILL.md +0 -416
- package/skills/filtering/SKILL.md +0 -357
- package/skills/filtering/references/faceting-and-fuzzy.md +0 -191
- package/skills/row-expanding/SKILL.md +0 -348
- package/skills/setup/SKILL.md +0 -400
- package/skills/state-management/SKILL.md +0 -388
- package/src/core/cells/constructCell.ts +0 -55
- package/src/core/cells/coreCellsFeature.ts +0 -27
- package/src/core/cells/coreCellsFeature.types.ts +0 -68
- package/src/core/cells/coreCellsFeature.utils.ts +0 -68
- package/src/core/columns/constructColumn.ts +0 -119
- package/src/core/columns/coreColumnsFeature.ts +0 -73
- package/src/core/columns/coreColumnsFeature.types.ts +0 -108
- package/src/core/columns/coreColumnsFeature.utils.ts +0 -275
- package/src/core/coreFeatures.ts +0 -31
- package/src/core/headers/buildHeaderGroups.ts +0 -182
- package/src/core/headers/constructHeader.ts +0 -67
- package/src/core/headers/coreHeadersFeature.ts +0 -56
- package/src/core/headers/coreHeadersFeature.types.ts +0 -125
- package/src/core/headers/coreHeadersFeature.utils.ts +0 -200
- package/src/core/reactivity/coreReactivityFeature.types.ts +0 -56
- package/src/core/reactivity/coreReactivityFeature.utils.ts +0 -44
- package/src/core/row-models/coreRowModelsFeature.ts +0 -62
- package/src/core/row-models/coreRowModelsFeature.types.ts +0 -64
- package/src/core/row-models/coreRowModelsFeature.utils.ts +0 -272
- package/src/core/row-models/createCoreRowModel.ts +0 -93
- package/src/core/rows/constructRow.ts +0 -66
- package/src/core/rows/coreRowsFeature.ts +0 -62
- package/src/core/rows/coreRowsFeature.types.ts +0 -117
- package/src/core/rows/coreRowsFeature.utils.ts +0 -264
- package/src/core/table/constructTable.ts +0 -179
- package/src/core/table/coreTablesFeature.ts +0 -19
- package/src/core/table/coreTablesFeature.types.ts +0 -237
- package/src/core/table/coreTablesFeature.utils.ts +0 -131
- package/src/features/column-faceting/columnFacetingFeature.ts +0 -89
- package/src/features/column-faceting/columnFacetingFeature.types.ts +0 -109
- package/src/features/column-faceting/columnFacetingFeature.utils.ts +0 -145
- package/src/features/column-faceting/createFacetedMinMaxValues.ts +0 -66
- package/src/features/column-faceting/createFacetedRowModel.ts +0 -85
- package/src/features/column-faceting/createFacetedUniqueValues.ts +0 -66
- package/src/features/column-filtering/columnFilteringFeature.ts +0 -86
- package/src/features/column-filtering/columnFilteringFeature.types.ts +0 -232
- package/src/features/column-filtering/columnFilteringFeature.utils.ts +0 -331
- package/src/features/column-filtering/createFilteredRowModel.ts +0 -183
- package/src/features/column-filtering/filterRowsUtils.ts +0 -157
- package/src/features/column-grouping/columnGroupingFeature.ts +0 -115
- package/src/features/column-grouping/columnGroupingFeature.types.ts +0 -226
- package/src/features/column-grouping/columnGroupingFeature.utils.ts +0 -354
- package/src/features/column-grouping/createGroupedRowModel.ts +0 -220
- package/src/features/column-ordering/columnOrderingFeature.ts +0 -73
- package/src/features/column-ordering/columnOrderingFeature.types.ts +0 -60
- package/src/features/column-ordering/columnOrderingFeature.utils.ts +0 -241
- package/src/features/column-pinning/columnPinningFeature.ts +0 -316
- package/src/features/column-pinning/columnPinningFeature.types.ts +0 -192
- package/src/features/column-pinning/columnPinningFeature.utils.ts +0 -908
- package/src/features/column-resizing/columnResizingFeature.ts +0 -65
- package/src/features/column-resizing/columnResizingFeature.types.ts +0 -89
- package/src/features/column-resizing/columnResizingFeature.utils.ts +0 -364
- package/src/features/column-sizing/columnSizingFeature.ts +0 -145
- package/src/features/column-sizing/columnSizingFeature.types.ts +0 -102
- package/src/features/column-sizing/columnSizingFeature.utils.ts +0 -381
- package/src/features/column-visibility/columnVisibilityFeature.ts +0 -122
- package/src/features/column-visibility/columnVisibilityFeature.types.ts +0 -112
- package/src/features/column-visibility/columnVisibilityFeature.utils.ts +0 -384
- package/src/features/global-filtering/globalFilteringFeature.ts +0 -65
- package/src/features/global-filtering/globalFilteringFeature.types.ts +0 -91
- package/src/features/global-filtering/globalFilteringFeature.utils.ts +0 -118
- package/src/features/row-expanding/createExpandedRowModel.ts +0 -82
- package/src/features/row-expanding/rowExpandingFeature.ts +0 -94
- package/src/features/row-expanding/rowExpandingFeature.types.ts +0 -147
- package/src/features/row-expanding/rowExpandingFeature.utils.ts +0 -374
- package/src/features/row-pagination/createPaginatedRowModel.ts +0 -83
- package/src/features/row-pagination/rowPaginationFeature.ts +0 -95
- package/src/features/row-pagination/rowPaginationFeature.types.ts +0 -152
- package/src/features/row-pagination/rowPaginationFeature.utils.ts +0 -400
- package/src/features/row-pinning/rowPinningFeature.ts +0 -97
- package/src/features/row-pinning/rowPinningFeature.types.ts +0 -95
- package/src/features/row-pinning/rowPinningFeature.utils.ts +0 -323
- package/src/features/row-selection/rowSelectionFeature.ts +0 -140
- package/src/features/row-selection/rowSelectionFeature.types.ts +0 -151
- package/src/features/row-selection/rowSelectionFeature.utils.ts +0 -750
- package/src/features/row-sorting/createSortedRowModel.ts +0 -157
- package/src/features/row-sorting/rowSortingFeature.ts +0 -103
- package/src/features/row-sorting/rowSortingFeature.types.ts +0 -235
- package/src/features/row-sorting/rowSortingFeature.utils.ts +0 -489
- package/src/features/stockFeatures.ts +0 -53
- package/src/flex-render.ts +0 -70
- package/src/fns/aggregationFns.ts +0 -245
- package/src/fns/filterFns.ts +0 -382
- package/src/fns/sortFns.ts +0 -240
- package/src/helpers/columnHelper.ts +0 -122
- package/src/helpers/metaHelper.ts +0 -24
- package/src/helpers/tableFeatures.ts +0 -34
- package/src/helpers/tableOptions.ts +0 -117
- package/src/index.ts +0 -139
- package/src/process-env.d.ts +0 -6
- package/src/reactivity.ts +0 -2
- package/src/static-functions.ts +0 -31
- package/src/store-reactivity-bindings.ts +0 -47
- package/src/types/Cell.ts +0 -21
- package/src/types/Column.ts +0 -51
- package/src/types/ColumnDef.ts +0 -254
- package/src/types/Header.ts +0 -23
- package/src/types/HeaderGroup.ts +0 -13
- package/src/types/Row.ts +0 -34
- package/src/types/RowModel.ts +0 -98
- package/src/types/RowModelFns.ts +0 -32
- package/src/types/Table.ts +0 -91
- package/src/types/TableFeatures.ts +0 -123
- package/src/types/TableOptions.ts +0 -104
- package/src/types/TableState.ts +0 -47
- package/src/types/type-utils.ts +0 -84
- package/src/utils.ts +0 -441
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { tableMemo } from "../../utils.js";
|
|
1
|
+
import { copyInstancePropertiesWithoutMemos, skipFirstRun, tableMemo } from "../../utils.js";
|
|
2
2
|
import { table_autoResetPageIndex } from "../row-pagination/rowPaginationFeature.utils.js";
|
|
3
3
|
import { column_getCanSort, column_getSortFn } from "./rowSortingFeature.utils.js";
|
|
4
4
|
|
|
@@ -7,89 +7,107 @@ import { column_getCanSort, column_getSortFn } from "./rowSortingFeature.utils.j
|
|
|
7
7
|
* Creates a memoized sorted row model factory.
|
|
8
8
|
*
|
|
9
9
|
* The factory reads the relevant table state atoms and options, then returns a row model function used by the table row-model pipeline.
|
|
10
|
+
*
|
|
11
|
+
* Register the sorting functions you use with the `sortFns` slot on the
|
|
12
|
+
* `features` option:
|
|
13
|
+
* `tableFeatures({ rowSortingFeature, sortedRowModel: createSortedRowModel(), sortFns: { alphanumeric: sortFn_alphanumeric } })`.
|
|
14
|
+
* Importing individual `sortFn_*` functions keeps unused built-ins out of
|
|
15
|
+
* your bundle; sorting functions passed directly to the `sortFn` column
|
|
16
|
+
* option need no registration at all.
|
|
10
17
|
*/
|
|
11
|
-
function createSortedRowModel(
|
|
18
|
+
function createSortedRowModel() {
|
|
12
19
|
return (_table) => {
|
|
13
20
|
const table = _table;
|
|
14
|
-
if (!table._rowModelFns.sortFns) table._rowModelFns.sortFns = sortFns;
|
|
15
21
|
return tableMemo({
|
|
16
22
|
feature: "rowSortingFeature",
|
|
17
23
|
table,
|
|
18
24
|
fnName: "table.getSortedRowModel",
|
|
19
|
-
memoDeps: () =>
|
|
20
|
-
var _table$atoms$sorting;
|
|
21
|
-
return [(_table$atoms$sorting = table.atoms.sorting) === null || _table$atoms$sorting === void 0 ? void 0 : _table$atoms$sorting.get(), table.getPreSortedRowModel()];
|
|
22
|
-
},
|
|
25
|
+
memoDeps: () => [table.atoms.sorting?.get(), table.getPreSortedRowModel()],
|
|
23
26
|
fn: () => _createSortedRowModel(table),
|
|
24
|
-
onAfterUpdate: () => table_autoResetPageIndex(table)
|
|
27
|
+
onAfterUpdate: skipFirstRun(() => table_autoResetPageIndex(table))
|
|
25
28
|
});
|
|
26
29
|
};
|
|
27
30
|
}
|
|
28
31
|
function _createSortedRowModel(table) {
|
|
29
|
-
var _table$atoms$sorting2;
|
|
30
32
|
const preSortedRowModel = table.getPreSortedRowModel();
|
|
31
|
-
const sorting =
|
|
32
|
-
if (!preSortedRowModel.rows.length || !
|
|
33
|
+
const sorting = table.atoms.sorting?.get();
|
|
34
|
+
if (!preSortedRowModel.rows.length || !sorting?.length) return preSortedRowModel;
|
|
33
35
|
const sortedFlatRows = [];
|
|
34
|
-
const availableSorting = sorting.filter((sort) =>
|
|
35
|
-
|
|
36
|
-
|
|
36
|
+
const availableSorting = sorting.filter((sort) => {
|
|
37
|
+
const column = table.getColumn(sort.id);
|
|
38
|
+
return column ? column_getCanSort(column) : false;
|
|
39
|
+
});
|
|
40
|
+
if (!availableSorting.length) return preSortedRowModel;
|
|
41
|
+
const resolvedSorting = [];
|
|
42
|
+
for (let i = 0; i < availableSorting.length; i++) {
|
|
43
|
+
const sortEntry = availableSorting[i];
|
|
37
44
|
const column = table.getColumn(sortEntry.id);
|
|
38
|
-
if (!column)
|
|
39
|
-
|
|
45
|
+
if (!column) continue;
|
|
46
|
+
resolvedSorting.push({
|
|
47
|
+
id: sortEntry.id,
|
|
48
|
+
desc: sortEntry.desc,
|
|
40
49
|
sortUndefined: column.columnDef.sortUndefined,
|
|
41
50
|
invertSorting: column.columnDef.invertSorting,
|
|
42
51
|
sortFn: column_getSortFn(column)
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
if (
|
|
60
|
-
|
|
61
|
-
if (sortUndefined === "last") return aUndefined ? 1 : -1;
|
|
62
|
-
sortInt = aUndefined && bUndefined ? 0 : aUndefined ? sortUndefined : -sortUndefined;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
if (sortInt === 0) sortInt = columnInfo.sortFn(rowA, rowB, sortEntry.id);
|
|
66
|
-
if (sortInt !== 0) {
|
|
67
|
-
if (isDesc) sortInt *= -1;
|
|
68
|
-
if (columnInfo.invertSorting) sortInt *= -1;
|
|
69
|
-
return sortInt;
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
const compareRows = (rowA, rowB) => {
|
|
55
|
+
for (let i = 0; i < resolvedSorting.length; i++) {
|
|
56
|
+
const sortEntry = resolvedSorting[i];
|
|
57
|
+
const sortUndefined = sortEntry.sortUndefined;
|
|
58
|
+
const isDesc = sortEntry.desc;
|
|
59
|
+
let sortInt = 0;
|
|
60
|
+
if (sortUndefined) {
|
|
61
|
+
const aValue = rowA.getValue(sortEntry.id);
|
|
62
|
+
const bValue = rowB.getValue(sortEntry.id);
|
|
63
|
+
const aUndefined = aValue === void 0;
|
|
64
|
+
const bUndefined = bValue === void 0;
|
|
65
|
+
if (aUndefined && bUndefined) continue;
|
|
66
|
+
if (aUndefined || bUndefined) {
|
|
67
|
+
if (sortUndefined === "first") return aUndefined ? -1 : 1;
|
|
68
|
+
if (sortUndefined === "last") return aUndefined ? 1 : -1;
|
|
69
|
+
sortInt = aUndefined ? sortUndefined : -sortUndefined;
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
|
-
|
|
73
|
-
|
|
72
|
+
if (sortInt === 0) sortInt = sortEntry.sortFn(rowA, rowB, sortEntry.id);
|
|
73
|
+
if (sortInt !== 0) {
|
|
74
|
+
if (isDesc) sortInt *= -1;
|
|
75
|
+
if (sortEntry.invertSorting) sortInt *= -1;
|
|
76
|
+
return sortInt;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return rowA.index - rowB.index;
|
|
80
|
+
};
|
|
81
|
+
const sortData = (rows) => {
|
|
82
|
+
const sortedData = rows.slice();
|
|
83
|
+
sortedData.sort(compareRows);
|
|
84
|
+
let changed = false;
|
|
74
85
|
for (let i = 0; i < sortedData.length; i++) {
|
|
75
86
|
const row = sortedData[i];
|
|
87
|
+
if (row !== rows[i]) changed = true;
|
|
76
88
|
if (row.subRows.length) {
|
|
77
|
-
const
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
89
|
+
const sortedSubRows = sortData(row.subRows);
|
|
90
|
+
if (sortedSubRows.changed) {
|
|
91
|
+
const cloned = Object.create(Object.getPrototypeOf(row));
|
|
92
|
+
copyInstancePropertiesWithoutMemos(cloned, row);
|
|
93
|
+
cloned.subRows = sortedSubRows.rows;
|
|
94
|
+
sortedData[i] = cloned;
|
|
95
|
+
sortedFlatRows.push(cloned);
|
|
96
|
+
changed = true;
|
|
97
|
+
} else sortedFlatRows.push(row);
|
|
82
98
|
} else sortedFlatRows.push(row);
|
|
83
99
|
}
|
|
84
|
-
return
|
|
100
|
+
return {
|
|
101
|
+
rows: sortedData,
|
|
102
|
+
changed
|
|
103
|
+
};
|
|
85
104
|
};
|
|
86
105
|
return {
|
|
87
|
-
rows: sortData(preSortedRowModel.rows),
|
|
106
|
+
rows: sortData(preSortedRowModel.rows).rows,
|
|
88
107
|
flatRows: sortedFlatRows,
|
|
89
108
|
rowsById: preSortedRowModel.rowsById
|
|
90
109
|
};
|
|
91
110
|
}
|
|
92
111
|
|
|
93
112
|
//#endregion
|
|
94
|
-
export { createSortedRowModel };
|
|
95
|
-
//# sourceMappingURL=createSortedRowModel.js.map
|
|
113
|
+
export { createSortedRowModel };
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import { TableFeature } from "../../types/TableFeatures.js";
|
|
2
|
-
|
|
3
2
|
//#region src/features/row-sorting/rowSortingFeature.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* Feature that adds row sorting state, defaults, and column/table sorting APIs.
|
|
6
5
|
*/
|
|
7
6
|
declare const rowSortingFeature: TableFeature;
|
|
8
7
|
//#endregion
|
|
9
|
-
export { rowSortingFeature };
|
|
10
|
-
//# sourceMappingURL=rowSortingFeature.d.ts.map
|
|
8
|
+
export { rowSortingFeature };
|
|
@@ -20,6 +20,7 @@ const rowSortingFeature = {
|
|
|
20
20
|
},
|
|
21
21
|
getDefaultTableOptions(table) {
|
|
22
22
|
return {
|
|
23
|
+
autoResetSorting: false,
|
|
23
24
|
onSortingChange: makeStateUpdater("sorting", table),
|
|
24
25
|
isMultiSortEvent: (e) => {
|
|
25
26
|
return e.shiftKey;
|
|
@@ -51,5 +52,4 @@ const rowSortingFeature = {
|
|
|
51
52
|
};
|
|
52
53
|
|
|
53
54
|
//#endregion
|
|
54
|
-
export { rowSortingFeature };
|
|
55
|
-
//# sourceMappingURL=rowSortingFeature.js.map
|
|
55
|
+
export { rowSortingFeature };
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import { OnChangeFn, RowData, Updater } from "../../types/type-utils.js";
|
|
2
|
-
import { BuiltInSortFn } from "
|
|
1
|
+
import { OnChangeFn, RowData, TransformDataValueFn, Updater } from "../../types/type-utils.js";
|
|
2
|
+
import { BuiltInSortFn } from "./sortFns.js";
|
|
3
3
|
import { Row } from "../../types/Row.js";
|
|
4
|
-
import { TableFeatures } from "../../types/TableFeatures.js";
|
|
5
|
-
import { Table } from "../../types/Table.js";
|
|
6
4
|
import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
|
|
7
|
-
|
|
5
|
+
import { IsAny, TableFeatures } from "../../types/TableFeatures.js";
|
|
8
6
|
//#region src/features/row-sorting/rowSortingFeature.types.d.ts
|
|
9
7
|
type SortDirection = 'asc' | 'desc';
|
|
10
8
|
interface ColumnSort {
|
|
@@ -15,16 +13,57 @@ type SortingState = Array<ColumnSort>;
|
|
|
15
13
|
interface TableState_RowSorting {
|
|
16
14
|
sorting: SortingState;
|
|
17
15
|
}
|
|
18
|
-
interface RowModelFns_RowSorting<TFeatures extends TableFeatures, TData extends RowData> {
|
|
19
|
-
sortFns: Record<
|
|
16
|
+
interface RowModelFns_RowSorting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
17
|
+
sortFns: Record<string, SortFn<TFeatures, TData>>;
|
|
20
18
|
}
|
|
21
19
|
interface SortFns {}
|
|
22
|
-
interface SortFn<TFeatures extends TableFeatures, TData extends RowData> {
|
|
20
|
+
interface SortFn<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
23
21
|
(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string): number;
|
|
22
|
+
/**
|
|
23
|
+
* Normalizes each row's value before the two sides are compared. Only
|
|
24
|
+
* honored by sorting functions built with `constructSortFn` (including all
|
|
25
|
+
* built-in sorting functions).
|
|
26
|
+
*/
|
|
27
|
+
resolveDataValue?: TransformDataValueFn;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* The definition object accepted by `constructSortFn`.
|
|
31
|
+
*
|
|
32
|
+
* `sort` is a value-level comparator: it receives both rows' (resolved) data
|
|
33
|
+
* values instead of the whole rows, so normalization concerns stay in
|
|
34
|
+
* `resolveDataValue`.
|
|
35
|
+
*/
|
|
36
|
+
interface SortFnDef<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
37
|
+
sort: (dataValueA: any, dataValueB: any, rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
|
|
38
|
+
resolveDataValue?: TransformDataValueFn;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* The shape returned by `constructSortFn`: a `SortFn` with its definition
|
|
42
|
+
* attached, so variants can be built by spreading it into another
|
|
43
|
+
* `constructSortFn` call.
|
|
44
|
+
*
|
|
45
|
+
* The call signature is generic so a created sorting function can be used
|
|
46
|
+
* with any table's rows, regardless of the feature set it was defined
|
|
47
|
+
* against.
|
|
48
|
+
*/
|
|
49
|
+
interface CreatedSortFn<in out TFeatures extends TableFeatures, in out TData extends RowData> extends SortFnDef<TFeatures, TData> {
|
|
50
|
+
<TRowFeatures extends TableFeatures, TRowData extends RowData>(rowA: Row<TRowFeatures, TRowData>, rowB: Row<TRowFeatures, TRowData>, columnId: string): number;
|
|
24
51
|
}
|
|
25
52
|
type CustomSortFns<TFeatures extends TableFeatures, TData extends RowData> = Record<string, SortFn<TFeatures, TData>>;
|
|
26
|
-
|
|
27
|
-
|
|
53
|
+
/**
|
|
54
|
+
* Resolves the valid string names for `columnDef.sortFn` for a feature set.
|
|
55
|
+
*
|
|
56
|
+
* When the features object declares a `sortFns` registry
|
|
57
|
+
* (`tableFeatures({ ..., sortFns })`), its keys are the only valid names; a
|
|
58
|
+
* name is only assignable if a sorting function is actually registered for it.
|
|
59
|
+
* Otherwise this falls back to the global declaration-merged `SortFns`
|
|
60
|
+
* interface.
|
|
61
|
+
*/
|
|
62
|
+
type ExtractSortFnKeys<TFeatures extends TableFeatures> = IsAny<TFeatures> extends true ? keyof SortFns | BuiltInSortFn : TFeatures extends {
|
|
63
|
+
sortFns: infer TSortFns extends object;
|
|
64
|
+
} ? Extract<keyof TSortFns, string> : keyof SortFns;
|
|
65
|
+
type SortFnOption<TFeatures extends TableFeatures, TData extends RowData> = 'auto' | ExtractSortFnKeys<TFeatures> | SortFn<TFeatures, TData>;
|
|
66
|
+
interface ColumnDef_RowSorting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
28
67
|
/**
|
|
29
68
|
* Enables/Disables multi-sorting for this column.
|
|
30
69
|
*/
|
|
@@ -34,7 +73,7 @@ interface ColumnDef_RowSorting<TFeatures extends TableFeatures, TData extends Ro
|
|
|
34
73
|
*/
|
|
35
74
|
enableSorting?: boolean;
|
|
36
75
|
/**
|
|
37
|
-
* Inverts the order of the sorting for this column. This is useful for values that have an inverted best/worst scale where lower numbers are better,
|
|
76
|
+
* Inverts the order of the sorting for this column. This is useful for values that have an inverted best/worst scale where lower numbers are better, e.g. a ranking (1st, 2nd, 3rd) or golf-like scoring
|
|
38
77
|
*/
|
|
39
78
|
invertSorting?: boolean;
|
|
40
79
|
/**
|
|
@@ -50,15 +89,19 @@ interface ColumnDef_RowSorting<TFeatures extends TableFeatures, TData extends Ro
|
|
|
50
89
|
/**
|
|
51
90
|
* The priority of undefined values when sorting this column.
|
|
52
91
|
* - `false`
|
|
53
|
-
* - Undefined values will be
|
|
92
|
+
* - Undefined values will be passed to the sorting function like any other value with no special handling; the sorting function is responsible for handling them
|
|
54
93
|
* - `-1`
|
|
55
94
|
* - Undefined values will be sorted with higher priority (ascending) (if ascending, undefined will appear on the beginning of the list)
|
|
56
95
|
* - `1`
|
|
57
96
|
* - Undefined values will be sorted with lower priority (descending) (if ascending, undefined will appear on the end of the list)
|
|
97
|
+
* - `'first'`
|
|
98
|
+
* - Undefined values will be pushed to the beginning of the list regardless of sort direction
|
|
99
|
+
* - `'last'`
|
|
100
|
+
* - Undefined values will be pushed to the end of the list regardless of sort direction
|
|
58
101
|
*/
|
|
59
102
|
sortUndefined?: false | -1 | 1 | 'first' | 'last';
|
|
60
103
|
}
|
|
61
|
-
interface Column_RowSorting<TFeatures extends TableFeatures, TData extends RowData> {
|
|
104
|
+
interface Column_RowSorting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
62
105
|
/**
|
|
63
106
|
* Removes this column from the table's sorting state
|
|
64
107
|
*/
|
|
@@ -88,9 +131,11 @@ interface Column_RowSorting<TFeatures extends TableFeatures, TData extends RowDa
|
|
|
88
131
|
*/
|
|
89
132
|
getIsSorted: () => false | SortDirection;
|
|
90
133
|
/**
|
|
91
|
-
* Returns the next sorting order.
|
|
134
|
+
* Returns the next sorting order. Pass `multi` to resolve the order for a
|
|
135
|
+
* multi-sort toggle, where `enableMultiRemove` governs whether the cycle can
|
|
136
|
+
* remove the sort.
|
|
92
137
|
*/
|
|
93
|
-
getNextSortingOrder: () => SortDirection | false;
|
|
138
|
+
getNextSortingOrder: (multi?: boolean) => SortDirection | false;
|
|
94
139
|
/**
|
|
95
140
|
* Finds this column's position in the ordered sorting state.
|
|
96
141
|
*/
|
|
@@ -104,11 +149,18 @@ interface Column_RowSorting<TFeatures extends TableFeatures, TData extends RowDa
|
|
|
104
149
|
*/
|
|
105
150
|
getToggleSortingHandler: () => undefined | ((event: unknown) => void);
|
|
106
151
|
/**
|
|
107
|
-
* Toggles this
|
|
152
|
+
* Toggles this column's sorting state. If `desc` is provided, it will force the sort direction to that value. If `isMulti` is provided, it will additively multi-sort the column (or toggle it if it is already sorted).
|
|
108
153
|
*/
|
|
109
154
|
toggleSorting: (desc?: boolean, isMulti?: boolean) => void;
|
|
110
155
|
}
|
|
111
156
|
interface TableOptions_RowSorting {
|
|
157
|
+
/**
|
|
158
|
+
* Resets sorting to its initial state when the `data` option changes.
|
|
159
|
+
*
|
|
160
|
+
* This is disabled by default. `autoResetAll` overrides this option when it
|
|
161
|
+
* is explicitly set.
|
|
162
|
+
*/
|
|
163
|
+
autoResetSorting?: boolean;
|
|
112
164
|
/**
|
|
113
165
|
* Allows multi-sort toggles to remove a column from sorting state.
|
|
114
166
|
*/
|
|
@@ -123,8 +175,8 @@ interface TableOptions_RowSorting {
|
|
|
123
175
|
enableSorting?: boolean;
|
|
124
176
|
/**
|
|
125
177
|
* Enables/Disables the ability to remove sorting for the table.
|
|
126
|
-
* - If `true` then changing sort order will
|
|
127
|
-
* - If `false` then changing sort order will
|
|
178
|
+
* - If `true` then changing sort order will cycle like: 'none' -> 'desc' -> 'asc' -> 'none' -> ...
|
|
179
|
+
* - If `false` then changing sort order will cycle like: 'none' -> 'desc' -> 'asc' -> 'desc' -> 'asc' -> ...
|
|
128
180
|
*/
|
|
129
181
|
enableSortingRemoval?: boolean;
|
|
130
182
|
/**
|
|
@@ -150,7 +202,7 @@ interface TableOptions_RowSorting {
|
|
|
150
202
|
*/
|
|
151
203
|
sortDescFirst?: boolean;
|
|
152
204
|
}
|
|
153
|
-
interface Table_RowSorting<
|
|
205
|
+
interface Table_RowSorting<in out _TFeatures extends TableFeatures, in out _TData extends RowData> {
|
|
154
206
|
/**
|
|
155
207
|
* Resets `sorting` to `initialState.sorting`.
|
|
156
208
|
*
|
|
@@ -162,7 +214,7 @@ interface Table_RowSorting<TFeatures extends TableFeatures, TData extends RowDat
|
|
|
162
214
|
*/
|
|
163
215
|
setSorting: (updater: Updater<SortingState>) => void;
|
|
164
216
|
}
|
|
165
|
-
interface Table_RowModels_Sorted<TFeatures extends TableFeatures, TData extends RowData> {
|
|
217
|
+
interface Table_RowModels_Sorted<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
166
218
|
/**
|
|
167
219
|
* Reads the row model immediately before sorting.
|
|
168
220
|
*/
|
|
@@ -172,17 +224,8 @@ interface Table_RowModels_Sorted<TFeatures extends TableFeatures, TData extends
|
|
|
172
224
|
*/
|
|
173
225
|
getSortedRowModel: () => RowModel<TFeatures, TData>;
|
|
174
226
|
}
|
|
175
|
-
interface
|
|
176
|
-
/**
|
|
177
|
-
* Factory used to retrieve the sorted row model. If using server-side
|
|
178
|
-
* sorting, this is not required. To use client-side sorting, pass the
|
|
179
|
-
* exported `createSortedRowModel()` or implement your own factory.
|
|
180
|
-
*/
|
|
181
|
-
sortedRowModel?: (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
|
|
182
|
-
}
|
|
183
|
-
interface CachedRowModel_Sorted<TFeatures extends TableFeatures, TData extends RowData> {
|
|
227
|
+
interface CachedRowModel_Sorted<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
184
228
|
sortedRowModel: () => RowModel<TFeatures, TData>;
|
|
185
229
|
}
|
|
186
230
|
//#endregion
|
|
187
|
-
export { CachedRowModel_Sorted, ColumnDef_RowSorting, ColumnSort, Column_RowSorting,
|
|
188
|
-
//# sourceMappingURL=rowSortingFeature.types.d.ts.map
|
|
231
|
+
export { CachedRowModel_Sorted, ColumnDef_RowSorting, ColumnSort, Column_RowSorting, CreatedSortFn, CustomSortFns, ExtractSortFnKeys, RowModelFns_RowSorting, SortDirection, SortFn, SortFnDef, SortFnOption, SortFns, SortingState, TableOptions_RowSorting, TableState_RowSorting, Table_RowModels_Sorted, Table_RowSorting };
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { CellData, RowData, Updater } from "../../types/type-utils.js";
|
|
2
2
|
import { SortDirection, SortFn, SortingState } from "./rowSortingFeature.types.js";
|
|
3
|
-
import {
|
|
3
|
+
import { Column } from "../../types/Column.js";
|
|
4
|
+
import { Table } from "../../types/Table.js";
|
|
4
5
|
import { TableFeatures } from "../../types/TableFeatures.js";
|
|
5
|
-
import { Table_Internal } from "../../types/Table.js";
|
|
6
|
-
|
|
7
6
|
//#region src/features/row-sorting/rowSortingFeature.utils.d.ts
|
|
8
7
|
/**
|
|
9
8
|
* Creates the default sorting state.
|
|
@@ -28,7 +27,7 @@ declare function getDefaultSortingState(): SortingState;
|
|
|
28
27
|
* table_setSorting(table, (old) => [...old, { id: 'age', desc: true }])
|
|
29
28
|
* ```
|
|
30
29
|
*/
|
|
31
|
-
declare function table_setSorting<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
30
|
+
declare function table_setSorting<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>, updater: Updater<SortingState>): void;
|
|
32
31
|
/**
|
|
33
32
|
* Resets `sorting` to the configured initial state or feature default.
|
|
34
33
|
*
|
|
@@ -41,7 +40,19 @@ declare function table_setSorting<TFeatures extends TableFeatures, TData extends
|
|
|
41
40
|
* table_resetSorting(table, true)
|
|
42
41
|
* ```
|
|
43
42
|
*/
|
|
44
|
-
declare function table_resetSorting<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
43
|
+
declare function table_resetSorting<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>, defaultState?: boolean): void;
|
|
44
|
+
/**
|
|
45
|
+
* Resets sorting after the table data changes when explicitly enabled.
|
|
46
|
+
*
|
|
47
|
+
* Unlike other auto-reset behaviors, sorting is preserved by default. An
|
|
48
|
+
* explicit `autoResetAll` value takes precedence over `autoResetSorting`.
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```ts
|
|
52
|
+
* table_autoResetSorting(table)
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
declare function table_autoResetSorting<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>): void;
|
|
45
56
|
/**
|
|
46
57
|
* Chooses a built-in sorting function from sampled filtered row values.
|
|
47
58
|
*
|
|
@@ -54,19 +65,22 @@ declare function table_resetSorting<TFeatures extends TableFeatures, TData exten
|
|
|
54
65
|
* const sortFn = column_getAutoSortFn(column)
|
|
55
66
|
* ```
|
|
56
67
|
*/
|
|
57
|
-
declare function column_getAutoSortFn<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
68
|
+
declare function column_getAutoSortFn<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): SortFn<TFeatures, TData>;
|
|
58
69
|
/**
|
|
59
|
-
* Chooses the default first sort direction from
|
|
70
|
+
* Chooses the default first sort direction from sampled filtered row values.
|
|
60
71
|
*
|
|
61
|
-
*
|
|
62
|
-
* types
|
|
72
|
+
* The first non-nullish value among the sampled rows decides: string columns
|
|
73
|
+
* start ascending so alphabetical order is natural; other value types (or
|
|
74
|
+
* columns with no non-nullish sample) start descending. Sampling past leading
|
|
75
|
+
* nullish values keeps the toggle cycle stable when sorting or a data swap
|
|
76
|
+
* moves an empty value into the first row.
|
|
63
77
|
*
|
|
64
78
|
* @example
|
|
65
79
|
* ```ts
|
|
66
80
|
* const direction = column_getAutoSortDir(column)
|
|
67
81
|
* ```
|
|
68
82
|
*/
|
|
69
|
-
declare function column_getAutoSortDir<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
83
|
+
declare function column_getAutoSortDir<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): "asc" | "desc";
|
|
70
84
|
/**
|
|
71
85
|
* Resolves the sorting function configured for a column.
|
|
72
86
|
*
|
|
@@ -79,20 +93,20 @@ declare function column_getAutoSortDir<TFeatures extends TableFeatures, TData ex
|
|
|
79
93
|
* const sortFn = column_getSortFn(column)
|
|
80
94
|
* ```
|
|
81
95
|
*/
|
|
82
|
-
declare function column_getSortFn<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
96
|
+
declare function column_getSortFn<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): SortFn<TFeatures, TData>;
|
|
83
97
|
/**
|
|
84
98
|
* Applies the next sorting state for this column.
|
|
85
99
|
*
|
|
86
100
|
* The toggle can add, replace, flip, or remove this column's sort entry. Multi
|
|
87
|
-
* sorting respects `enableMultiSort`, `
|
|
88
|
-
* argument.
|
|
101
|
+
* sorting respects `enableMultiSort`, `enableMultiRemove`,
|
|
102
|
+
* `maxMultiSortColCount`, and the `multi` argument.
|
|
89
103
|
*
|
|
90
104
|
* @example
|
|
91
105
|
* ```ts
|
|
92
106
|
* column_toggleSorting(column, undefined, true)
|
|
93
107
|
* ```
|
|
94
108
|
*/
|
|
95
|
-
declare function column_toggleSorting<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
109
|
+
declare function column_toggleSorting<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>, desc?: boolean, multi?: boolean): void;
|
|
96
110
|
/**
|
|
97
111
|
* Resolves the first direction used when this column begins sorting.
|
|
98
112
|
*
|
|
@@ -104,7 +118,7 @@ declare function column_toggleSorting<TFeatures extends TableFeatures, TData ext
|
|
|
104
118
|
* const firstDirection = column_getFirstSortDir(column)
|
|
105
119
|
* ```
|
|
106
120
|
*/
|
|
107
|
-
declare function column_getFirstSortDir<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
121
|
+
declare function column_getFirstSortDir<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): "asc" | "desc";
|
|
108
122
|
/**
|
|
109
123
|
* Resolves the next sort order for this column's toggle cycle.
|
|
110
124
|
*
|
|
@@ -116,7 +130,7 @@ declare function column_getFirstSortDir<TFeatures extends TableFeatures, TData e
|
|
|
116
130
|
* const nextOrder = column_getNextSortingOrder(column)
|
|
117
131
|
* ```
|
|
118
132
|
*/
|
|
119
|
-
declare function column_getNextSortingOrder<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
133
|
+
declare function column_getNextSortingOrder<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>, multi?: boolean): false | "asc" | "desc";
|
|
120
134
|
/**
|
|
121
135
|
* Checks whether this accessor column can participate in sorting.
|
|
122
136
|
*
|
|
@@ -128,7 +142,7 @@ declare function column_getNextSortingOrder<TFeatures extends TableFeatures, TDa
|
|
|
128
142
|
* const canSort = column_getCanSort(column)
|
|
129
143
|
* ```
|
|
130
144
|
*/
|
|
131
|
-
declare function column_getCanSort<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
145
|
+
declare function column_getCanSort<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): boolean;
|
|
132
146
|
/**
|
|
133
147
|
* Checks whether this column can be added to a multi-sort state.
|
|
134
148
|
*
|
|
@@ -140,7 +154,7 @@ declare function column_getCanSort<TFeatures extends TableFeatures, TData extend
|
|
|
140
154
|
* const canMultiSort = column_getCanMultiSort(column)
|
|
141
155
|
* ```
|
|
142
156
|
*/
|
|
143
|
-
declare function column_getCanMultiSort<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
157
|
+
declare function column_getCanMultiSort<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): boolean;
|
|
144
158
|
/**
|
|
145
159
|
* Reads this column's current sort direction.
|
|
146
160
|
*
|
|
@@ -152,7 +166,7 @@ declare function column_getCanMultiSort<TFeatures extends TableFeatures, TData e
|
|
|
152
166
|
* const direction = column_getIsSorted(column)
|
|
153
167
|
* ```
|
|
154
168
|
*/
|
|
155
|
-
declare function column_getIsSorted<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
169
|
+
declare function column_getIsSorted<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): false | SortDirection;
|
|
156
170
|
/**
|
|
157
171
|
* Finds this column's position in the ordered `state.sorting` array.
|
|
158
172
|
*
|
|
@@ -163,7 +177,7 @@ declare function column_getIsSorted<TFeatures extends TableFeatures, TData exten
|
|
|
163
177
|
* const index = column_getSortIndex(column)
|
|
164
178
|
* ```
|
|
165
179
|
*/
|
|
166
|
-
declare function column_getSortIndex<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
180
|
+
declare function column_getSortIndex<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): number;
|
|
167
181
|
/**
|
|
168
182
|
* Removes this column from the sorting state.
|
|
169
183
|
*
|
|
@@ -174,20 +188,18 @@ declare function column_getSortIndex<TFeatures extends TableFeatures, TData exte
|
|
|
174
188
|
* column_clearSorting(column)
|
|
175
189
|
* ```
|
|
176
190
|
*/
|
|
177
|
-
declare function column_clearSorting<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
191
|
+
declare function column_clearSorting<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): void;
|
|
178
192
|
/**
|
|
179
193
|
* Creates a header event handler that toggles this column's sorting.
|
|
180
194
|
*
|
|
181
|
-
* The handler ignores events when the column cannot sort,
|
|
182
|
-
*
|
|
183
|
-
* the event should add to a multi-sort.
|
|
195
|
+
* The handler ignores events when the column cannot sort, and asks
|
|
196
|
+
* `options.isMultiSortEvent` whether the event should add to a multi-sort.
|
|
184
197
|
*
|
|
185
198
|
* @example
|
|
186
199
|
* ```ts
|
|
187
200
|
* const onClick = column_getToggleSortingHandler(column)
|
|
188
201
|
* ```
|
|
189
202
|
*/
|
|
190
|
-
declare function column_getToggleSortingHandler<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
203
|
+
declare function column_getToggleSortingHandler<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): (e: unknown) => void;
|
|
191
204
|
//#endregion
|
|
192
|
-
export { column_clearSorting, column_getAutoSortDir, column_getAutoSortFn, column_getCanMultiSort, column_getCanSort, column_getFirstSortDir, column_getIsSorted, column_getNextSortingOrder, column_getSortFn, column_getSortIndex, column_getToggleSortingHandler, column_toggleSorting, getDefaultSortingState, table_resetSorting, table_setSorting };
|
|
193
|
-
//# sourceMappingURL=rowSortingFeature.utils.d.ts.map
|
|
205
|
+
export { column_clearSorting, column_getAutoSortDir, column_getAutoSortFn, column_getCanMultiSort, column_getCanSort, column_getFirstSortDir, column_getIsSorted, column_getNextSortingOrder, column_getSortFn, column_getSortIndex, column_getToggleSortingHandler, column_toggleSorting, getDefaultSortingState, table_autoResetSorting, table_resetSorting, table_setSorting };
|