@tanstack/table-core 9.0.0-beta.7 → 9.0.0-beta.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/dist/core/cells/constructCell.d.ts +4 -6
- package/dist/core/cells/constructCell.js +4 -6
- package/dist/core/cells/coreCellsFeature.d.ts +1 -3
- package/dist/core/cells/coreCellsFeature.js +1 -2
- package/dist/core/cells/coreCellsFeature.types.d.ts +7 -9
- package/dist/core/cells/coreCellsFeature.utils.d.ts +5 -5
- package/dist/core/cells/coreCellsFeature.utils.js +1 -2
- package/dist/core/columns/constructColumn.d.ts +4 -6
- package/dist/core/columns/constructColumn.js +8 -9
- package/dist/core/columns/coreColumnsFeature.d.ts +1 -3
- package/dist/core/columns/coreColumnsFeature.js +13 -20
- package/dist/core/columns/coreColumnsFeature.types.d.ts +13 -15
- package/dist/core/columns/coreColumnsFeature.utils.d.ts +10 -12
- package/dist/core/columns/coreColumnsFeature.utils.js +19 -20
- package/dist/core/coreFeatures.d.ts +3 -3
- package/dist/core/coreFeatures.js +1 -2
- package/dist/core/headers/buildHeaderGroups.d.ts +3 -5
- package/dist/core/headers/buildHeaderGroups.js +99 -85
- package/dist/core/headers/constructHeader.d.ts +3 -5
- package/dist/core/headers/constructHeader.js +4 -6
- package/dist/core/headers/coreHeadersFeature.d.ts +1 -3
- package/dist/core/headers/coreHeadersFeature.js +9 -13
- package/dist/core/headers/coreHeadersFeature.types.d.ts +21 -11
- package/dist/core/headers/coreHeadersFeature.utils.d.ts +8 -8
- package/dist/core/headers/coreHeadersFeature.utils.js +14 -17
- package/dist/core/reactivity/coreReactivityFeature.types.d.ts +8 -3
- package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +1 -3
- package/dist/core/reactivity/coreReactivityFeature.utils.js +1 -2
- package/dist/core/reactivity/renderPhaseReactivity.d.ts +80 -0
- package/dist/core/reactivity/renderPhaseReactivity.js +95 -0
- package/dist/core/row-models/coreRowModelsFeature.d.ts +1 -3
- package/dist/core/row-models/coreRowModelsFeature.js +1 -2
- package/dist/core/row-models/coreRowModelsFeature.types.d.ts +7 -17
- package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +17 -19
- package/dist/core/row-models/coreRowModelsFeature.utils.js +9 -28
- package/dist/core/row-models/createCoreRowModel.d.ts +3 -5
- package/dist/core/row-models/createCoreRowModel.js +27 -24
- package/dist/core/rows/constructRow.d.ts +3 -5
- package/dist/core/rows/constructRow.js +9 -13
- package/dist/core/rows/coreRowsFeature.d.ts +1 -3
- package/dist/core/rows/coreRowsFeature.js +20 -5
- package/dist/core/rows/coreRowsFeature.types.d.ts +42 -10
- package/dist/core/rows/coreRowsFeature.utils.d.ts +26 -9
- package/dist/core/rows/coreRowsFeature.utils.js +65 -14
- package/dist/core/table/constructTable.d.ts +2 -4
- package/dist/core/table/constructTable.js +52 -23
- package/dist/core/table/coreTablesFeature.d.ts +1 -3
- package/dist/core/table/coreTablesFeature.js +1 -2
- package/dist/core/table/coreTablesFeature.types.d.ts +56 -25
- package/dist/core/table/coreTablesFeature.utils.d.ts +34 -12
- package/dist/core/table/coreTablesFeature.utils.js +69 -24
- package/dist/experimental-worker-plugin.d.ts +5 -0
- package/dist/experimental-worker-plugin.js +6 -0
- package/dist/features/cell-selection/cellSelectionFeature.d.ts +8 -0
- package/dist/features/cell-selection/cellSelectionFeature.js +128 -0
- package/dist/features/cell-selection/cellSelectionFeature.types.d.ts +296 -0
- package/dist/features/cell-selection/cellSelectionFeature.utils.d.ts +306 -0
- package/dist/features/cell-selection/cellSelectionFeature.utils.js +873 -0
- package/dist/features/cell-selection/cellSelectionGeometry.js +121 -0
- package/dist/features/cell-spanning/cellSpanningFeature.d.ts +13 -0
- package/dist/features/cell-spanning/cellSpanningFeature.js +47 -0
- package/dist/features/cell-spanning/cellSpanningFeature.types.d.ts +150 -0
- package/dist/features/cell-spanning/cellSpanningFeature.utils.d.ts +74 -0
- package/dist/features/cell-spanning/cellSpanningFeature.utils.js +262 -0
- package/dist/features/column-faceting/columnFacetingFeature.d.ts +1 -3
- package/dist/features/column-faceting/columnFacetingFeature.js +13 -20
- package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +15 -35
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +10 -12
- package/dist/features/column-faceting/columnFacetingFeature.utils.js +25 -14
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +2 -4
- package/dist/features/column-faceting/createFacetedMinMaxValues.js +9 -7
- package/dist/features/column-faceting/createFacetedRowModel.d.ts +3 -5
- package/dist/features/column-faceting/createFacetedRowModel.js +12 -17
- package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +2 -4
- package/dist/features/column-faceting/createFacetedUniqueValues.js +12 -9
- package/dist/features/column-filtering/columnFilteringFeature.d.ts +1 -3
- package/dist/features/column-filtering/columnFilteringFeature.js +4 -5
- package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +85 -33
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +19 -17
- package/dist/features/column-filtering/columnFilteringFeature.utils.js +33 -21
- package/dist/features/column-filtering/createFilteredRowModel.d.ts +11 -7
- package/dist/features/column-filtering/createFilteredRowModel.js +33 -29
- package/dist/features/column-filtering/filterFns.d.ts +208 -0
- package/dist/features/column-filtering/filterFns.js +374 -0
- package/dist/features/column-filtering/filterRowsUtils.js +4 -4
- package/dist/features/column-grouping/columnGroupingFeature.d.ts +2 -4
- package/dist/features/column-grouping/columnGroupingFeature.js +7 -20
- package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +14 -52
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +12 -51
- package/dist/features/column-grouping/columnGroupingFeature.utils.js +8 -61
- package/dist/features/column-grouping/createGroupedRowModel.d.ts +7 -7
- package/dist/features/column-grouping/createGroupedRowModel.js +69 -38
- package/dist/features/column-ordering/columnOrderingFeature.d.ts +1 -3
- package/dist/features/column-ordering/columnOrderingFeature.js +19 -24
- package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +28 -5
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +26 -16
- package/dist/features/column-ordering/columnOrderingFeature.utils.js +36 -18
- package/dist/features/column-pinning/columnPinningFeature.d.ts +7 -4
- package/dist/features/column-pinning/columnPinningFeature.js +126 -146
- package/dist/features/column-pinning/columnPinningFeature.types.d.ts +53 -44
- package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +100 -93
- package/dist/features/column-pinning/columnPinningFeature.utils.js +148 -150
- package/dist/features/column-resizing/columnResizingFeature.d.ts +1 -3
- package/dist/features/column-resizing/columnResizingFeature.js +1 -2
- package/dist/features/column-resizing/columnResizingFeature.types.d.ts +2 -7
- package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +7 -9
- package/dist/features/column-resizing/columnResizingFeature.utils.js +86 -48
- package/dist/features/column-sizing/columnSizingFeature.d.ts +1 -3
- package/dist/features/column-sizing/columnSizingFeature.js +35 -70
- package/dist/features/column-sizing/columnSizingFeature.types.d.ts +52 -11
- package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +43 -27
- package/dist/features/column-sizing/columnSizingFeature.utils.js +95 -54
- package/dist/features/column-visibility/columnVisibilityFeature.d.ts +1 -3
- package/dist/features/column-visibility/columnVisibilityFeature.js +26 -38
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +4 -6
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +20 -20
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js +32 -32
- package/dist/features/global-filtering/globalFilteringFeature.d.ts +1 -3
- package/dist/features/global-filtering/globalFilteringFeature.js +3 -4
- package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +4 -6
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +10 -13
- package/dist/features/global-filtering/globalFilteringFeature.utils.js +7 -8
- package/dist/features/row-aggregation/aggregationFns.d.ts +66 -0
- package/dist/features/row-aggregation/aggregationFns.js +279 -0
- package/dist/features/row-aggregation/rowAggregationFeature.d.ts +8 -0
- package/dist/features/row-aggregation/rowAggregationFeature.js +35 -0
- package/dist/features/row-aggregation/rowAggregationFeature.types.d.ts +193 -0
- package/dist/features/row-aggregation/rowAggregationFeature.types.js +11 -0
- package/dist/features/row-aggregation/rowAggregationFeature.utils.d.ts +46 -0
- package/dist/features/row-aggregation/rowAggregationFeature.utils.js +235 -0
- package/dist/features/row-expanding/createExpandedRowModel.d.ts +3 -5
- package/dist/features/row-expanding/createExpandedRowModel.js +9 -13
- package/dist/features/row-expanding/rowExpandingFeature.d.ts +1 -3
- package/dist/features/row-expanding/rowExpandingFeature.js +1 -2
- package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +6 -17
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +11 -16
- package/dist/features/row-expanding/rowExpandingFeature.utils.js +30 -33
- package/dist/features/row-pagination/createPaginatedRowModel.d.ts +3 -5
- package/dist/features/row-pagination/createPaginatedRowModel.js +7 -12
- package/dist/features/row-pagination/rowPaginationFeature.d.ts +1 -3
- package/dist/features/row-pagination/rowPaginationFeature.js +1 -2
- package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +5 -16
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +18 -20
- package/dist/features/row-pagination/rowPaginationFeature.utils.js +10 -17
- package/dist/features/row-pinning/rowPinningFeature.d.ts +1 -3
- package/dist/features/row-pinning/rowPinningFeature.js +5 -18
- package/dist/features/row-pinning/rowPinningFeature.types.d.ts +3 -5
- package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +8 -10
- package/dist/features/row-pinning/rowPinningFeature.utils.js +10 -16
- package/dist/features/row-selection/rowSelectionFeature.d.ts +1 -3
- package/dist/features/row-selection/rowSelectionFeature.js +68 -25
- package/dist/features/row-selection/rowSelectionFeature.types.d.ts +51 -15
- package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +60 -35
- package/dist/features/row-selection/rowSelectionFeature.utils.js +142 -89
- package/dist/features/row-sorting/createSortedRowModel.d.ts +11 -7
- package/dist/features/row-sorting/createSortedRowModel.js +71 -53
- package/dist/features/row-sorting/rowSortingFeature.d.ts +1 -3
- package/dist/features/row-sorting/rowSortingFeature.js +2 -2
- package/dist/features/row-sorting/rowSortingFeature.types.d.ts +61 -24
- package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +31 -22
- package/dist/features/row-sorting/rowSortingFeature.utils.js +51 -25
- package/dist/features/row-sorting/sortFns.d.ts +96 -0
- package/dist/features/row-sorting/sortFns.js +216 -0
- package/dist/features/stockFeatures.d.ts +7 -3
- package/dist/features/stockFeatures.js +7 -2
- package/dist/flex-render.d.ts +2 -4
- package/dist/flex-render.js +10 -3
- package/dist/helpers/columnHelper.d.ts +3 -5
- package/dist/helpers/columnHelper.js +1 -2
- package/dist/helpers/metaHelper.d.ts +25 -0
- package/dist/helpers/metaHelper.js +28 -0
- package/dist/helpers/tableFeatures.d.ts +35 -8
- package/dist/helpers/tableFeatures.js +33 -5
- package/dist/helpers/tableOptions.d.ts +1 -3
- package/dist/helpers/tableOptions.js +1 -2
- package/dist/index.d.ts +34 -27
- package/dist/index.js +10 -5
- package/dist/reactivity.d.ts +2 -1
- package/dist/reactivity.js +2 -1
- package/dist/static-functions.d.ts +12 -9
- package/dist/static-functions.js +12 -9
- package/dist/store-reactivity-bindings.d.ts +2 -4
- package/dist/store-reactivity-bindings.js +4 -5
- package/dist/types/Cell.d.ts +9 -5
- package/dist/types/Column.d.ts +13 -15
- package/dist/types/ColumnDef.d.ts +39 -21
- package/dist/types/Header.d.ts +3 -5
- package/dist/types/HeaderGroup.d.ts +3 -5
- package/dist/types/Row.d.ts +7 -7
- package/dist/types/RowModel.d.ts +11 -25
- package/dist/types/RowModelFns.d.ts +5 -7
- package/dist/types/Table.d.ts +29 -32
- package/dist/types/TableFeatures.d.ts +388 -24
- package/dist/types/TableOptions.d.ts +24 -14
- package/dist/types/TableState.d.ts +8 -8
- package/dist/types/type-utils.d.ts +10 -4
- package/dist/utils.d.ts +32 -26
- package/dist/utils.js +52 -32
- package/dist/worker/createTableWorker.d.ts +100 -0
- package/dist/worker/createTableWorker.js +185 -0
- package/dist/worker/createWorkerRowModel.d.ts +40 -0
- package/dist/worker/createWorkerRowModel.js +77 -0
- package/dist/worker/initTableWorker.d.ts +31 -0
- package/dist/worker/initTableWorker.js +99 -0
- package/dist/worker/rebuildRowModel.d.ts +11 -0
- package/dist/worker/rebuildRowModel.js +71 -0
- package/dist/worker/serializeRowModel.js +51 -0
- package/dist/worker/tableWorkerProtocol.d.ts +88 -0
- package/dist/worker/tableWorkerProtocol.js +26 -0
- package/package.json +12 -28
- package/skills/aggregation/SKILL.md +141 -0
- package/skills/api-not-found/SKILL.md +113 -0
- package/skills/cell-selection/SKILL.md +204 -0
- package/skills/cell-spanning/SKILL.md +162 -0
- package/skills/client-vs-server/SKILL.md +164 -0
- package/skills/column-faceting/SKILL.md +97 -0
- package/skills/column-filtering/SKILL.md +87 -0
- package/skills/column-ordering/SKILL.md +75 -0
- package/skills/column-pinning/SKILL.md +89 -0
- package/skills/column-resizing/SKILL.md +91 -0
- package/skills/column-sizing/SKILL.md +72 -0
- package/skills/column-visibility/SKILL.md +75 -0
- package/skills/core/SKILL.md +175 -0
- package/skills/custom-features/SKILL.md +235 -0
- package/skills/expanding/SKILL.md +80 -0
- package/skills/global-filtering/SKILL.md +84 -0
- package/skills/grouping/SKILL.md +51 -401
- package/skills/migrate-v8-to-v9/SKILL.md +275 -416
- package/skills/pagination/SKILL.md +37 -344
- package/skills/row-pinning/SKILL.md +47 -234
- package/skills/row-selection/SKILL.md +75 -302
- package/skills/sorting/SKILL.md +45 -303
- package/skills/table-features/SKILL.md +159 -0
- package/skills/typescript/SKILL.md +126 -0
- package/dist/core/cells/constructCell.cjs +0 -34
- package/dist/core/cells/constructCell.cjs.map +0 -1
- package/dist/core/cells/constructCell.d.cts +0 -17
- package/dist/core/cells/constructCell.js.map +0 -1
- package/dist/core/cells/coreCellsFeature.cjs +0 -21
- package/dist/core/cells/coreCellsFeature.cjs.map +0 -1
- package/dist/core/cells/coreCellsFeature.d.cts +0 -10
- package/dist/core/cells/coreCellsFeature.js.map +0 -1
- package/dist/core/cells/coreCellsFeature.types.d.cts +0 -57
- package/dist/core/cells/coreCellsFeature.utils.cjs +0 -57
- package/dist/core/cells/coreCellsFeature.utils.cjs.map +0 -1
- package/dist/core/cells/coreCellsFeature.utils.d.cts +0 -53
- package/dist/core/cells/coreCellsFeature.utils.js.map +0 -1
- package/dist/core/columns/constructColumn.cjs +0 -61
- package/dist/core/columns/constructColumn.cjs.map +0 -1
- package/dist/core/columns/constructColumn.d.cts +0 -16
- package/dist/core/columns/constructColumn.js.map +0 -1
- package/dist/core/columns/coreColumnsFeature.cjs +0 -70
- package/dist/core/columns/coreColumnsFeature.cjs.map +0 -1
- package/dist/core/columns/coreColumnsFeature.d.cts +0 -10
- package/dist/core/columns/coreColumnsFeature.js.map +0 -1
- package/dist/core/columns/coreColumnsFeature.types.d.cts +0 -94
- package/dist/core/columns/coreColumnsFeature.utils.cjs +0 -187
- package/dist/core/columns/coreColumnsFeature.utils.cjs.map +0 -1
- package/dist/core/columns/coreColumnsFeature.utils.d.cts +0 -119
- package/dist/core/columns/coreColumnsFeature.utils.js.map +0 -1
- package/dist/core/coreFeatures.cjs +0 -25
- package/dist/core/coreFeatures.cjs.map +0 -1
- package/dist/core/coreFeatures.d.cts +0 -26
- package/dist/core/coreFeatures.js.map +0 -1
- package/dist/core/headers/buildHeaderGroups.cjs +0 -103
- package/dist/core/headers/buildHeaderGroups.cjs.map +0 -1
- package/dist/core/headers/buildHeaderGroups.d.cts +0 -16
- package/dist/core/headers/buildHeaderGroups.js.map +0 -1
- package/dist/core/headers/constructHeader.cjs +0 -41
- package/dist/core/headers/constructHeader.cjs.map +0 -1
- package/dist/core/headers/constructHeader.d.cts +0 -22
- package/dist/core/headers/constructHeader.js.map +0 -1
- package/dist/core/headers/coreHeadersFeature.cjs +0 -55
- package/dist/core/headers/coreHeadersFeature.cjs.map +0 -1
- package/dist/core/headers/coreHeadersFeature.d.cts +0 -10
- package/dist/core/headers/coreHeadersFeature.js.map +0 -1
- package/dist/core/headers/coreHeadersFeature.types.d.cts +0 -106
- package/dist/core/headers/coreHeadersFeature.utils.cjs +0 -142
- package/dist/core/headers/coreHeadersFeature.utils.cjs.map +0 -1
- package/dist/core/headers/coreHeadersFeature.utils.d.cts +0 -85
- package/dist/core/headers/coreHeadersFeature.utils.js.map +0 -1
- package/dist/core/reactivity/coreReactivityFeature.types.d.cts +0 -48
- package/dist/core/reactivity/coreReactivityFeature.utils.cjs +0 -24
- package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +0 -1
- package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +0 -24
- package/dist/core/reactivity/coreReactivityFeature.utils.js.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.cjs +0 -27
- package/dist/core/row-models/coreRowModelsFeature.cjs.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.d.cts +0 -10
- package/dist/core/row-models/coreRowModelsFeature.js.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.types.d.cts +0 -41
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs +0 -215
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +0 -153
- package/dist/core/row-models/coreRowModelsFeature.utils.js.map +0 -1
- package/dist/core/row-models/createCoreRowModel.cjs +0 -52
- package/dist/core/row-models/createCoreRowModel.cjs.map +0 -1
- package/dist/core/row-models/createCoreRowModel.d.cts +0 -15
- package/dist/core/row-models/createCoreRowModel.js.map +0 -1
- package/dist/core/rows/constructRow.cjs +0 -44
- package/dist/core/rows/constructRow.cjs.map +0 -1
- package/dist/core/rows/constructRow.d.cts +0 -15
- package/dist/core/rows/constructRow.js.map +0 -1
- package/dist/core/rows/coreRowsFeature.cjs +0 -37
- package/dist/core/rows/coreRowsFeature.cjs.map +0 -1
- package/dist/core/rows/coreRowsFeature.d.cts +0 -10
- package/dist/core/rows/coreRowsFeature.js.map +0 -1
- package/dist/core/rows/coreRowsFeature.types.d.cts +0 -99
- package/dist/core/rows/coreRowsFeature.utils.cjs +0 -192
- package/dist/core/rows/coreRowsFeature.utils.cjs.map +0 -1
- package/dist/core/rows/coreRowsFeature.utils.d.cts +0 -127
- package/dist/core/rows/coreRowsFeature.utils.js.map +0 -1
- package/dist/core/table/constructTable.cjs +0 -118
- package/dist/core/table/constructTable.cjs.map +0 -1
- package/dist/core/table/constructTable.d.cts +0 -22
- package/dist/core/table/constructTable.js.map +0 -1
- package/dist/core/table/coreTablesFeature.cjs +0 -17
- package/dist/core/table/coreTablesFeature.cjs.map +0 -1
- package/dist/core/table/coreTablesFeature.d.cts +0 -10
- package/dist/core/table/coreTablesFeature.js.map +0 -1
- package/dist/core/table/coreTablesFeature.types.d.cts +0 -186
- package/dist/core/table/coreTablesFeature.utils.cjs +0 -96
- package/dist/core/table/coreTablesFeature.utils.cjs.map +0 -1
- package/dist/core/table/coreTablesFeature.utils.d.cts +0 -57
- package/dist/core/table/coreTablesFeature.utils.js.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.cjs +0 -61
- package/dist/features/column-faceting/columnFacetingFeature.cjs.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.d.cts +0 -10
- package/dist/features/column-faceting/columnFacetingFeature.js.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +0 -85
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +0 -103
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +0 -84
- package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +0 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +0 -44
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +0 -14
- package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +0 -1
- package/dist/features/column-faceting/createFacetedRowModel.cjs +0 -50
- package/dist/features/column-faceting/createFacetedRowModel.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedRowModel.d.cts +0 -15
- package/dist/features/column-faceting/createFacetedRowModel.js.map +0 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs +0 -41
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +0 -14
- package/dist/features/column-faceting/createFacetedUniqueValues.js.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.cjs +0 -50
- package/dist/features/column-filtering/columnFilteringFeature.cjs.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.d.cts +0 -10
- package/dist/features/column-filtering/columnFilteringFeature.js.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +0 -160
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +0 -212
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +0 -143
- package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +0 -1
- package/dist/features/column-filtering/createFilteredRowModel.cjs +0 -110
- package/dist/features/column-filtering/createFilteredRowModel.cjs.map +0 -1
- package/dist/features/column-filtering/createFilteredRowModel.d.cts +0 -16
- package/dist/features/column-filtering/createFilteredRowModel.js.map +0 -1
- package/dist/features/column-filtering/filterRowsUtils.cjs +0 -81
- package/dist/features/column-filtering/filterRowsUtils.cjs.map +0 -1
- package/dist/features/column-filtering/filterRowsUtils.js.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.cjs +0 -67
- package/dist/features/column-grouping/columnGroupingFeature.cjs.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.d.cts +0 -10
- package/dist/features/column-grouping/columnGroupingFeature.js.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +0 -165
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +0 -250
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +0 -190
- package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +0 -1
- package/dist/features/column-grouping/createGroupedRowModel.cjs +0 -119
- package/dist/features/column-grouping/createGroupedRowModel.cjs.map +0 -1
- package/dist/features/column-grouping/createGroupedRowModel.d.cts +0 -16
- package/dist/features/column-grouping/createGroupedRowModel.js.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.cjs +0 -58
- package/dist/features/column-ordering/columnOrderingFeature.cjs.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.d.cts +0 -10
- package/dist/features/column-ordering/columnOrderingFeature.js.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +0 -56
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +0 -172
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +0 -107
- package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.cjs +0 -221
- package/dist/features/column-pinning/columnPinningFeature.cjs.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.d.cts +0 -10
- package/dist/features/column-pinning/columnPinningFeature.js.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.types.d.cts +0 -178
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs +0 -585
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +0 -375
- package/dist/features/column-pinning/columnPinningFeature.utils.js.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.cjs +0 -41
- package/dist/features/column-resizing/columnResizingFeature.cjs.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.d.cts +0 -10
- package/dist/features/column-resizing/columnResizingFeature.js.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.types.d.cts +0 -81
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs +0 -246
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +0 -109
- package/dist/features/column-resizing/columnResizingFeature.utils.js.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.cjs +0 -124
- package/dist/features/column-sizing/columnSizingFeature.cjs.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.d.cts +0 -10
- package/dist/features/column-sizing/columnSizingFeature.js.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.types.d.cts +0 -96
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs +0 -256
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +0 -182
- package/dist/features/column-sizing/columnSizingFeature.utils.js.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.cjs +0 -94
- package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.d.cts +0 -10
- package/dist/features/column-visibility/columnVisibilityFeature.js.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +0 -97
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +0 -283
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +0 -189
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.cjs +0 -41
- package/dist/features/global-filtering/globalFilteringFeature.cjs.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.d.cts +0 -10
- package/dist/features/global-filtering/globalFilteringFeature.js.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +0 -71
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +0 -88
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +0 -74
- package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +0 -1
- package/dist/features/row-expanding/createExpandedRowModel.cjs +0 -59
- package/dist/features/row-expanding/createExpandedRowModel.cjs.map +0 -1
- package/dist/features/row-expanding/createExpandedRowModel.d.cts +0 -21
- package/dist/features/row-expanding/createExpandedRowModel.js.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.cjs +0 -47
- package/dist/features/row-expanding/rowExpandingFeature.cjs.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.d.cts +0 -10
- package/dist/features/row-expanding/rowExpandingFeature.js.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +0 -127
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +0 -281
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +0 -191
- package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +0 -1
- package/dist/features/row-pagination/createPaginatedRowModel.cjs +0 -62
- package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +0 -1
- package/dist/features/row-pagination/createPaginatedRowModel.d.cts +0 -15
- package/dist/features/row-pagination/createPaginatedRowModel.js.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.cjs +0 -45
- package/dist/features/row-pagination/rowPaginationFeature.cjs.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.d.cts +0 -10
- package/dist/features/row-pagination/rowPaginationFeature.js.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +0 -135
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +0 -312
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +0 -218
- package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.cjs +0 -67
- package/dist/features/row-pinning/rowPinningFeature.cjs.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.d.cts +0 -10
- package/dist/features/row-pinning/rowPinningFeature.js.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.types.d.cts +0 -83
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs +0 -229
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +0 -143
- package/dist/features/row-pinning/rowPinningFeature.utils.js.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.cjs +0 -75
- package/dist/features/row-selection/rowSelectionFeature.cjs.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.d.cts +0 -10
- package/dist/features/row-selection/rowSelectionFeature.js.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.types.d.cts +0 -136
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs +0 -514
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +0 -318
- package/dist/features/row-selection/rowSelectionFeature.utils.js.map +0 -1
- package/dist/features/row-sorting/createSortedRowModel.cjs +0 -95
- package/dist/features/row-sorting/createSortedRowModel.cjs.map +0 -1
- package/dist/features/row-sorting/createSortedRowModel.d.cts +0 -16
- package/dist/features/row-sorting/createSortedRowModel.js.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.cjs +0 -55
- package/dist/features/row-sorting/rowSortingFeature.cjs.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.d.cts +0 -10
- package/dist/features/row-sorting/rowSortingFeature.js.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.types.d.cts +0 -188
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs +0 -305
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +0 -193
- package/dist/features/row-sorting/rowSortingFeature.utils.js.map +0 -1
- package/dist/features/stockFeatures.cjs +0 -41
- package/dist/features/stockFeatures.cjs.map +0 -1
- package/dist/features/stockFeatures.d.cts +0 -41
- package/dist/features/stockFeatures.js.map +0 -1
- package/dist/flex-render.cjs +0 -29
- package/dist/flex-render.cjs.map +0 -1
- package/dist/flex-render.d.cts +0 -34
- package/dist/flex-render.js.map +0 -1
- package/dist/fns/aggregationFns.cjs +0 -161
- package/dist/fns/aggregationFns.cjs.map +0 -1
- package/dist/fns/aggregationFns.d.cts +0 -85
- package/dist/fns/aggregationFns.d.ts +0 -85
- package/dist/fns/aggregationFns.js +0 -151
- package/dist/fns/aggregationFns.js.map +0 -1
- package/dist/fns/filterFns.cjs +0 -201
- package/dist/fns/filterFns.cjs.map +0 -1
- package/dist/fns/filterFns.d.cts +0 -167
- package/dist/fns/filterFns.d.ts +0 -167
- package/dist/fns/filterFns.js +0 -185
- package/dist/fns/filterFns.js.map +0 -1
- package/dist/fns/sortFns.cjs +0 -130
- package/dist/fns/sortFns.cjs.map +0 -1
- package/dist/fns/sortFns.d.cts +0 -65
- package/dist/fns/sortFns.d.ts +0 -65
- package/dist/fns/sortFns.js +0 -122
- package/dist/fns/sortFns.js.map +0 -1
- package/dist/helpers/columnHelper.cjs +0 -41
- package/dist/helpers/columnHelper.cjs.map +0 -1
- package/dist/helpers/columnHelper.d.cts +0 -71
- package/dist/helpers/columnHelper.js.map +0 -1
- package/dist/helpers/tableFeatures.cjs +0 -20
- package/dist/helpers/tableFeatures.cjs.map +0 -1
- package/dist/helpers/tableFeatures.d.cts +0 -18
- package/dist/helpers/tableFeatures.js.map +0 -1
- package/dist/helpers/tableOptions.cjs +0 -15
- package/dist/helpers/tableOptions.cjs.map +0 -1
- package/dist/helpers/tableOptions.d.cts +0 -57
- package/dist/helpers/tableOptions.js.map +0 -1
- package/dist/index.cjs +0 -133
- package/dist/index.d.cts +0 -78
- package/dist/reactivity.cjs +0 -4
- package/dist/reactivity.d.cts +0 -3
- package/dist/static-functions.cjs +0 -263
- package/dist/static-functions.d.cts +0 -21
- package/dist/store-reactivity-bindings.cjs +0 -44
- package/dist/store-reactivity-bindings.cjs.map +0 -1
- package/dist/store-reactivity-bindings.d.cts +0 -22
- package/dist/store-reactivity-bindings.js.map +0 -1
- package/dist/types/Cell.d.cts +0 -14
- package/dist/types/Column.d.cts +0 -36
- package/dist/types/ColumnDef.d.cts +0 -109
- package/dist/types/Header.d.cts +0 -16
- package/dist/types/HeaderGroup.d.cts +0 -10
- package/dist/types/Row.d.cts +0 -26
- package/dist/types/RowModel.d.cts +0 -36
- package/dist/types/RowModelFns.d.cts +0 -18
- package/dist/types/Table.d.cts +0 -70
- package/dist/types/TableFeatures.d.cts +0 -53
- package/dist/types/TableOptions.d.cts +0 -69
- package/dist/types/TableState.d.cts +0 -48
- package/dist/types/type-utils.d.cts +0 -23
- package/dist/utils.cjs +0 -243
- package/dist/utils.cjs.map +0 -1
- package/dist/utils.d.cts +0 -114
- package/dist/utils.js.map +0 -1
- package/skills/column-definitions/SKILL.md +0 -333
- package/skills/column-layout/SKILL.md +0 -328
- package/skills/column-layout/references/subsystems.md +0 -220
- package/skills/customizing-feature-behavior/SKILL.md +0 -416
- package/skills/filtering/SKILL.md +0 -357
- package/skills/filtering/references/faceting-and-fuzzy.md +0 -191
- package/skills/row-expanding/SKILL.md +0 -348
- package/skills/setup/SKILL.md +0 -400
- package/skills/state-management/SKILL.md +0 -388
- package/src/core/cells/constructCell.ts +0 -55
- package/src/core/cells/coreCellsFeature.ts +0 -27
- package/src/core/cells/coreCellsFeature.types.ts +0 -68
- package/src/core/cells/coreCellsFeature.utils.ts +0 -68
- package/src/core/columns/constructColumn.ts +0 -119
- package/src/core/columns/coreColumnsFeature.ts +0 -73
- package/src/core/columns/coreColumnsFeature.types.ts +0 -108
- package/src/core/columns/coreColumnsFeature.utils.ts +0 -275
- package/src/core/coreFeatures.ts +0 -31
- package/src/core/headers/buildHeaderGroups.ts +0 -182
- package/src/core/headers/constructHeader.ts +0 -67
- package/src/core/headers/coreHeadersFeature.ts +0 -56
- package/src/core/headers/coreHeadersFeature.types.ts +0 -125
- package/src/core/headers/coreHeadersFeature.utils.ts +0 -200
- package/src/core/reactivity/coreReactivityFeature.types.ts +0 -56
- package/src/core/reactivity/coreReactivityFeature.utils.ts +0 -44
- package/src/core/row-models/coreRowModelsFeature.ts +0 -62
- package/src/core/row-models/coreRowModelsFeature.types.ts +0 -64
- package/src/core/row-models/coreRowModelsFeature.utils.ts +0 -272
- package/src/core/row-models/createCoreRowModel.ts +0 -93
- package/src/core/rows/constructRow.ts +0 -66
- package/src/core/rows/coreRowsFeature.ts +0 -62
- package/src/core/rows/coreRowsFeature.types.ts +0 -117
- package/src/core/rows/coreRowsFeature.utils.ts +0 -264
- package/src/core/table/constructTable.ts +0 -172
- package/src/core/table/coreTablesFeature.ts +0 -19
- package/src/core/table/coreTablesFeature.types.ts +0 -216
- package/src/core/table/coreTablesFeature.utils.ts +0 -131
- package/src/features/column-faceting/columnFacetingFeature.ts +0 -89
- package/src/features/column-faceting/columnFacetingFeature.types.ts +0 -109
- package/src/features/column-faceting/columnFacetingFeature.utils.ts +0 -145
- package/src/features/column-faceting/createFacetedMinMaxValues.ts +0 -66
- package/src/features/column-faceting/createFacetedRowModel.ts +0 -85
- package/src/features/column-faceting/createFacetedUniqueValues.ts +0 -66
- package/src/features/column-filtering/columnFilteringFeature.ts +0 -86
- package/src/features/column-filtering/columnFilteringFeature.types.ts +0 -232
- package/src/features/column-filtering/columnFilteringFeature.utils.ts +0 -331
- package/src/features/column-filtering/createFilteredRowModel.ts +0 -183
- package/src/features/column-filtering/filterRowsUtils.ts +0 -157
- package/src/features/column-grouping/columnGroupingFeature.ts +0 -115
- package/src/features/column-grouping/columnGroupingFeature.types.ts +0 -226
- package/src/features/column-grouping/columnGroupingFeature.utils.ts +0 -354
- package/src/features/column-grouping/createGroupedRowModel.ts +0 -220
- package/src/features/column-ordering/columnOrderingFeature.ts +0 -73
- package/src/features/column-ordering/columnOrderingFeature.types.ts +0 -60
- package/src/features/column-ordering/columnOrderingFeature.utils.ts +0 -241
- package/src/features/column-pinning/columnPinningFeature.ts +0 -316
- package/src/features/column-pinning/columnPinningFeature.types.ts +0 -192
- package/src/features/column-pinning/columnPinningFeature.utils.ts +0 -908
- package/src/features/column-resizing/columnResizingFeature.ts +0 -65
- package/src/features/column-resizing/columnResizingFeature.types.ts +0 -89
- package/src/features/column-resizing/columnResizingFeature.utils.ts +0 -364
- package/src/features/column-sizing/columnSizingFeature.ts +0 -145
- package/src/features/column-sizing/columnSizingFeature.types.ts +0 -102
- package/src/features/column-sizing/columnSizingFeature.utils.ts +0 -381
- package/src/features/column-visibility/columnVisibilityFeature.ts +0 -122
- package/src/features/column-visibility/columnVisibilityFeature.types.ts +0 -112
- package/src/features/column-visibility/columnVisibilityFeature.utils.ts +0 -384
- package/src/features/global-filtering/globalFilteringFeature.ts +0 -65
- package/src/features/global-filtering/globalFilteringFeature.types.ts +0 -91
- package/src/features/global-filtering/globalFilteringFeature.utils.ts +0 -118
- package/src/features/row-expanding/createExpandedRowModel.ts +0 -82
- package/src/features/row-expanding/rowExpandingFeature.ts +0 -94
- package/src/features/row-expanding/rowExpandingFeature.types.ts +0 -147
- package/src/features/row-expanding/rowExpandingFeature.utils.ts +0 -374
- package/src/features/row-pagination/createPaginatedRowModel.ts +0 -83
- package/src/features/row-pagination/rowPaginationFeature.ts +0 -95
- package/src/features/row-pagination/rowPaginationFeature.types.ts +0 -152
- package/src/features/row-pagination/rowPaginationFeature.utils.ts +0 -400
- package/src/features/row-pinning/rowPinningFeature.ts +0 -97
- package/src/features/row-pinning/rowPinningFeature.types.ts +0 -95
- package/src/features/row-pinning/rowPinningFeature.utils.ts +0 -323
- package/src/features/row-selection/rowSelectionFeature.ts +0 -140
- package/src/features/row-selection/rowSelectionFeature.types.ts +0 -151
- package/src/features/row-selection/rowSelectionFeature.utils.ts +0 -745
- package/src/features/row-sorting/createSortedRowModel.ts +0 -157
- package/src/features/row-sorting/rowSortingFeature.ts +0 -103
- package/src/features/row-sorting/rowSortingFeature.types.ts +0 -235
- package/src/features/row-sorting/rowSortingFeature.utils.ts +0 -489
- package/src/features/stockFeatures.ts +0 -53
- package/src/flex-render.ts +0 -70
- package/src/fns/aggregationFns.ts +0 -245
- package/src/fns/filterFns.ts +0 -382
- package/src/fns/sortFns.ts +0 -240
- package/src/helpers/columnHelper.ts +0 -122
- package/src/helpers/tableFeatures.ts +0 -24
- package/src/helpers/tableOptions.ts +0 -117
- package/src/index.ts +0 -138
- package/src/process-env.d.ts +0 -6
- package/src/reactivity.ts +0 -2
- package/src/static-functions.ts +0 -31
- package/src/store-reactivity-bindings.ts +0 -47
- package/src/types/Cell.ts +0 -21
- package/src/types/Column.ts +0 -51
- package/src/types/ColumnDef.ts +0 -228
- package/src/types/Header.ts +0 -23
- package/src/types/HeaderGroup.ts +0 -13
- package/src/types/Row.ts +0 -34
- package/src/types/RowModel.ts +0 -98
- package/src/types/RowModelFns.ts +0 -32
- package/src/types/Table.ts +0 -91
- package/src/types/TableFeatures.ts +0 -101
- package/src/types/TableOptions.ts +0 -101
- package/src/types/TableState.ts +0 -47
- package/src/types/type-utils.ts +0 -84
- package/src/utils.ts +0 -441
|
@@ -1,33 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { OnChangeFn, RowData, Updater } from "../../types/type-utils.js";
|
|
2
2
|
import { Row } from "../../types/Row.js";
|
|
3
|
-
import { ColumnDefTemplate } from "../../types/ColumnDef.js";
|
|
4
|
-
import { TableFeatures } from "../../types/TableFeatures.js";
|
|
5
|
-
import { Table } from "../../types/Table.js";
|
|
6
3
|
import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
|
|
7
|
-
import {
|
|
8
|
-
import { Cell } from "../../types/Cell.js";
|
|
9
|
-
|
|
4
|
+
import { TableFeatures } from "../../types/TableFeatures.js";
|
|
10
5
|
//#region src/features/column-grouping/columnGroupingFeature.types.d.ts
|
|
11
6
|
type GroupingState = Array<string>;
|
|
12
7
|
interface TableState_ColumnGrouping {
|
|
13
8
|
grouping: GroupingState;
|
|
14
9
|
}
|
|
15
|
-
interface
|
|
16
|
-
aggregationFns: Record<keyof AggregationFns, AggregationFn<TFeatures, TData>>;
|
|
17
|
-
}
|
|
18
|
-
interface AggregationFns {}
|
|
19
|
-
type AggregationFn<TFeatures extends TableFeatures, TData extends RowData> = (columnId: string, leafRows: Array<Row<TFeatures, TData>>, childRows: Array<Row<TFeatures, TData>>) => any;
|
|
20
|
-
type CustomAggregationFns<TFeatures extends TableFeatures, TData extends RowData> = Record<string, AggregationFn<TFeatures, TData>>;
|
|
21
|
-
type AggregationFnOption<TFeatures extends TableFeatures, TData extends RowData> = 'auto' | keyof AggregationFns | BuiltInAggregationFn | AggregationFn<TFeatures, TData>;
|
|
22
|
-
interface ColumnDef_ColumnGrouping<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData> {
|
|
23
|
-
/**
|
|
24
|
-
* The cell to display each row for the column if the cell is an aggregate. If a function is passed, it will be passed a props object with the context of the cell and should return the property type for your adapter (the exact type depends on the adapter being used).
|
|
25
|
-
*/
|
|
26
|
-
aggregatedCell?: ColumnDefTemplate<ReturnType<Cell<TFeatures, TData, TValue>['getContext']>>;
|
|
27
|
-
/**
|
|
28
|
-
* The resolved aggregation function for the column.
|
|
29
|
-
*/
|
|
30
|
-
aggregationFn?: AggregationFnOption<TFeatures, TData>;
|
|
10
|
+
interface ColumnDef_ColumnGrouping<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
31
11
|
/**
|
|
32
12
|
* Allows this column to be added to grouping state.
|
|
33
13
|
*
|
|
@@ -35,19 +15,14 @@ interface ColumnDef_ColumnGrouping<TFeatures extends TableFeatures, TData extend
|
|
|
35
15
|
*/
|
|
36
16
|
enableGrouping?: boolean;
|
|
37
17
|
/**
|
|
38
|
-
*
|
|
18
|
+
* Returns the value used to group rows for this column.
|
|
19
|
+
*
|
|
20
|
+
* When omitted, grouping uses the value derived from this column's
|
|
21
|
+
* `accessorKey` or `accessorFn`.
|
|
39
22
|
*/
|
|
40
|
-
getGroupingValue?: (row: TData) => any;
|
|
23
|
+
getGroupingValue?: (originalRow: TData, index: number, row: Row<TFeatures, TData>) => any;
|
|
41
24
|
}
|
|
42
|
-
interface Column_ColumnGrouping
|
|
43
|
-
/**
|
|
44
|
-
* Returns the aggregation function for the column.
|
|
45
|
-
*/
|
|
46
|
-
getAggregationFn: () => AggregationFn<TFeatures, TData> | undefined;
|
|
47
|
-
/**
|
|
48
|
-
* Returns the automatically inferred aggregation function for the column.
|
|
49
|
-
*/
|
|
50
|
-
getAutoAggregationFn: () => AggregationFn<TFeatures, TData> | undefined;
|
|
25
|
+
interface Column_ColumnGrouping {
|
|
51
26
|
/**
|
|
52
27
|
* Checks whether this column can currently be grouped.
|
|
53
28
|
*/
|
|
@@ -89,10 +64,6 @@ interface Row_ColumnGrouping {
|
|
|
89
64
|
groupingValue?: unknown;
|
|
90
65
|
}
|
|
91
66
|
interface Cell_ColumnGrouping {
|
|
92
|
-
/**
|
|
93
|
-
* Checks whether this cell should render an aggregated value.
|
|
94
|
-
*/
|
|
95
|
-
getIsAggregated: () => boolean;
|
|
96
67
|
/**
|
|
97
68
|
* Checks whether this cell represents the active grouping column.
|
|
98
69
|
*/
|
|
@@ -127,7 +98,7 @@ interface TableOptions_ColumnGrouping {
|
|
|
127
98
|
onGroupingChange?: OnChangeFn<GroupingState>;
|
|
128
99
|
}
|
|
129
100
|
type GroupingColumnMode = false | 'reorder' | 'remove';
|
|
130
|
-
interface Table_ColumnGrouping<
|
|
101
|
+
interface Table_ColumnGrouping<in out _TFeatures extends TableFeatures, in out _TData extends RowData> {
|
|
131
102
|
/**
|
|
132
103
|
* Resets `grouping` to `initialState.grouping`.
|
|
133
104
|
*
|
|
@@ -139,9 +110,9 @@ interface Table_ColumnGrouping<TFeatures extends TableFeatures, TData extends Ro
|
|
|
139
110
|
*/
|
|
140
111
|
setGrouping: (updater: Updater<GroupingState>) => void;
|
|
141
112
|
}
|
|
142
|
-
interface Table_RowModels_Grouped<TFeatures extends TableFeatures, TData extends RowData> {
|
|
113
|
+
interface Table_RowModels_Grouped<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
143
114
|
/**
|
|
144
|
-
* Resolves the row model after grouping
|
|
115
|
+
* Resolves the row model after grouping has been applied.
|
|
145
116
|
*/
|
|
146
117
|
getGroupedRowModel: () => RowModel<TFeatures, TData>;
|
|
147
118
|
/**
|
|
@@ -149,17 +120,8 @@ interface Table_RowModels_Grouped<TFeatures extends TableFeatures, TData extends
|
|
|
149
120
|
*/
|
|
150
121
|
getPreGroupedRowModel: () => RowModel<TFeatures, TData>;
|
|
151
122
|
}
|
|
152
|
-
interface
|
|
153
|
-
/**
|
|
154
|
-
* Factory used to retrieve the grouped row model. If using server-side
|
|
155
|
-
* grouping, this is not required. To use client-side grouping, pass
|
|
156
|
-
* `createGroupedRowModel()` or implement your own factory.
|
|
157
|
-
*/
|
|
158
|
-
groupedRowModel?: (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
|
|
159
|
-
}
|
|
160
|
-
interface CachedRowModel_Grouped<TFeatures extends TableFeatures, TData extends RowData> {
|
|
123
|
+
interface CachedRowModel_Grouped<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
161
124
|
groupedRowModel: () => RowModel<TFeatures, TData>;
|
|
162
125
|
}
|
|
163
126
|
//#endregion
|
|
164
|
-
export {
|
|
165
|
-
//# sourceMappingURL=columnGroupingFeature.types.d.ts.map
|
|
127
|
+
export { CachedRowModel_Grouped, Cell_ColumnGrouping, ColumnDef_ColumnGrouping, ColumnDefaultOptions, Column_ColumnGrouping, GroupingColumnMode, GroupingState, Row_ColumnGrouping, TableOptions_ColumnGrouping, TableState_ColumnGrouping, Table_ColumnGrouping, Table_RowModels_Grouped };
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { CellData, RowData, Updater } from "../../types/type-utils.js";
|
|
2
|
-
import {
|
|
2
|
+
import { GroupingState, Row_ColumnGrouping } from "./columnGroupingFeature.types.js";
|
|
3
|
+
import { Column } from "../../types/Column.js";
|
|
3
4
|
import { Row } from "../../types/Row.js";
|
|
4
|
-
import {
|
|
5
|
-
import { Table_Internal } from "../../types/Table.js";
|
|
6
|
-
import { AggregationFn, GroupingState, Row_ColumnGrouping } from "./columnGroupingFeature.types.js";
|
|
5
|
+
import { Table } from "../../types/Table.js";
|
|
7
6
|
import { Cell } from "../../types/Cell.js";
|
|
8
|
-
|
|
7
|
+
import { TableFeatures } from "../../types/TableFeatures.js";
|
|
9
8
|
//#region src/features/column-grouping/columnGroupingFeature.utils.d.ts
|
|
10
9
|
/**
|
|
11
10
|
* Creates the default grouping state.
|
|
@@ -30,7 +29,7 @@ declare function getDefaultGroupingState(): GroupingState;
|
|
|
30
29
|
* column_toggleGrouping(column)
|
|
31
30
|
* ```
|
|
32
31
|
*/
|
|
33
|
-
declare function column_toggleGrouping<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
32
|
+
declare function column_toggleGrouping<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): void;
|
|
34
33
|
/**
|
|
35
34
|
* Checks whether this column can be used for grouping.
|
|
36
35
|
*
|
|
@@ -42,7 +41,7 @@ declare function column_toggleGrouping<TFeatures extends TableFeatures, TData ex
|
|
|
42
41
|
* const canGroup = column_getCanGroup(column)
|
|
43
42
|
* ```
|
|
44
43
|
*/
|
|
45
|
-
declare function column_getCanGroup<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
44
|
+
declare function column_getCanGroup<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): boolean;
|
|
46
45
|
/**
|
|
47
46
|
* Checks whether this column id is present in `state.grouping`.
|
|
48
47
|
*
|
|
@@ -54,7 +53,7 @@ declare function column_getCanGroup<TFeatures extends TableFeatures, TData exten
|
|
|
54
53
|
* const isGrouped = column_getIsGrouped(column)
|
|
55
54
|
* ```
|
|
56
55
|
*/
|
|
57
|
-
declare function column_getIsGrouped<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
56
|
+
declare function column_getIsGrouped<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): boolean;
|
|
58
57
|
/**
|
|
59
58
|
* Finds this column's position in the ordered grouping state.
|
|
60
59
|
*
|
|
@@ -65,7 +64,7 @@ declare function column_getIsGrouped<TFeatures extends TableFeatures, TData exte
|
|
|
65
64
|
* const index = column_getGroupedIndex(column)
|
|
66
65
|
* ```
|
|
67
66
|
*/
|
|
68
|
-
declare function column_getGroupedIndex<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
67
|
+
declare function column_getGroupedIndex<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): number;
|
|
69
68
|
/**
|
|
70
69
|
* Creates a header/control handler that toggles grouping for this column.
|
|
71
70
|
*
|
|
@@ -76,32 +75,7 @@ declare function column_getGroupedIndex<TFeatures extends TableFeatures, TData e
|
|
|
76
75
|
* const onClick = column_getToggleGroupingHandler(column)
|
|
77
76
|
* ```
|
|
78
77
|
*/
|
|
79
|
-
declare function column_getToggleGroupingHandler<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column:
|
|
80
|
-
/**
|
|
81
|
-
* Chooses a built-in aggregation function from the first core row value.
|
|
82
|
-
*
|
|
83
|
-
* Numeric columns default to `sum`, date-like values default to `extent`, and
|
|
84
|
-
* other value types leave aggregation unspecified.
|
|
85
|
-
*
|
|
86
|
-
* @example
|
|
87
|
-
* ```ts
|
|
88
|
-
* const aggregationFn = column_getAutoAggregationFn(column)
|
|
89
|
-
* ```
|
|
90
|
-
*/
|
|
91
|
-
declare function column_getAutoAggregationFn<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column_Internal<TFeatures, TData, TValue>): AggregationFn<TFeatures, TData> | undefined;
|
|
92
|
-
/**
|
|
93
|
-
* Resolves the aggregation function configured for a column.
|
|
94
|
-
*
|
|
95
|
-
* Function-valued `columnDef.aggregationFn` is returned directly, `'auto'`
|
|
96
|
-
* delegates to `column_getAutoAggregationFn`, and string values are looked up in
|
|
97
|
-
* the table's aggregation function registry.
|
|
98
|
-
*
|
|
99
|
-
* @example
|
|
100
|
-
* ```ts
|
|
101
|
-
* const aggregationFn = column_getAggregationFn(column)
|
|
102
|
-
* ```
|
|
103
|
-
*/
|
|
104
|
-
declare function column_getAggregationFn<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column_Internal<TFeatures, TData, TValue>): AggregationFn<TFeatures, TData> | undefined;
|
|
78
|
+
declare function column_getToggleGroupingHandler<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(column: Column<TFeatures, TData, TValue>): () => void;
|
|
105
79
|
/**
|
|
106
80
|
* Routes a grouping updater through the table's grouping change handler.
|
|
107
81
|
*
|
|
@@ -113,7 +87,7 @@ declare function column_getAggregationFn<TFeatures extends TableFeatures, TData
|
|
|
113
87
|
* table_setGrouping(table, (old) => [...old, 'status'])
|
|
114
88
|
* ```
|
|
115
89
|
*/
|
|
116
|
-
declare function table_setGrouping<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
90
|
+
declare function table_setGrouping<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>, updater: Updater<GroupingState>): void;
|
|
117
91
|
/**
|
|
118
92
|
* Resets `grouping` to the configured initial state or feature default.
|
|
119
93
|
*
|
|
@@ -126,7 +100,7 @@ declare function table_setGrouping<TFeatures extends TableFeatures, TData extend
|
|
|
126
100
|
* table_resetGrouping(table, true)
|
|
127
101
|
* ```
|
|
128
102
|
*/
|
|
129
|
-
declare function table_resetGrouping<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
103
|
+
declare function table_resetGrouping<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>, defaultState?: boolean): void;
|
|
130
104
|
/**
|
|
131
105
|
* Checks whether this row was created as a grouped row.
|
|
132
106
|
*
|
|
@@ -173,18 +147,5 @@ declare function cell_getIsGrouped<TFeatures extends TableFeatures, TData extend
|
|
|
173
147
|
* ```
|
|
174
148
|
*/
|
|
175
149
|
declare function cell_getIsPlaceholder<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(cell: Cell<TFeatures, TData, TValue>): boolean;
|
|
176
|
-
/**
|
|
177
|
-
* Checks whether this cell should render an aggregated value.
|
|
178
|
-
*
|
|
179
|
-
* Aggregated cells are non-placeholder, non-grouped cells on rows that have
|
|
180
|
-
* subRows.
|
|
181
|
-
*
|
|
182
|
-
* @example
|
|
183
|
-
* ```ts
|
|
184
|
-
* const isAggregated = cell_getIsAggregated(cell)
|
|
185
|
-
* ```
|
|
186
|
-
*/
|
|
187
|
-
declare function cell_getIsAggregated<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData>(cell: Cell<TFeatures, TData, TValue>): boolean;
|
|
188
150
|
//#endregion
|
|
189
|
-
export {
|
|
190
|
-
//# sourceMappingURL=columnGroupingFeature.utils.d.ts.map
|
|
151
|
+
export { cell_getIsGrouped, cell_getIsPlaceholder, column_getCanGroup, column_getGroupedIndex, column_getIsGrouped, column_getToggleGroupingHandler, column_toggleGrouping, getDefaultGroupingState, row_getGroupingValue, row_getIsGrouped, table_resetGrouping, table_setGrouping };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cloneState,
|
|
1
|
+
import { cloneState, hasOwn } from "../../utils.js";
|
|
2
2
|
|
|
3
3
|
//#region src/features/column-grouping/columnGroupingFeature.utils.ts
|
|
4
4
|
/**
|
|
@@ -58,8 +58,7 @@ function column_getCanGroup(column) {
|
|
|
58
58
|
* ```
|
|
59
59
|
*/
|
|
60
60
|
function column_getIsGrouped(column) {
|
|
61
|
-
|
|
62
|
-
return !!((_column$table$atoms$g = column.table.atoms.grouping) === null || _column$table$atoms$g === void 0 || (_column$table$atoms$g = _column$table$atoms$g.get()) === null || _column$table$atoms$g === void 0 ? void 0 : _column$table$atoms$g.includes(column.id));
|
|
61
|
+
return !!column.table.atoms.grouping?.get()?.includes(column.id);
|
|
63
62
|
}
|
|
64
63
|
/**
|
|
65
64
|
* Finds this column's position in the ordered grouping state.
|
|
@@ -72,8 +71,7 @@ function column_getIsGrouped(column) {
|
|
|
72
71
|
* ```
|
|
73
72
|
*/
|
|
74
73
|
function column_getGroupedIndex(column) {
|
|
75
|
-
|
|
76
|
-
return ((_column$table$atoms$g2 = column.table.atoms.grouping) === null || _column$table$atoms$g2 === void 0 || (_column$table$atoms$g2 = _column$table$atoms$g2.get()) === null || _column$table$atoms$g2 === void 0 ? void 0 : _column$table$atoms$g2.indexOf(column.id)) ?? -1;
|
|
74
|
+
return column.table.atoms.grouping?.get()?.indexOf(column.id) ?? -1;
|
|
77
75
|
}
|
|
78
76
|
/**
|
|
79
77
|
* Creates a header/control handler that toggles grouping for this column.
|
|
@@ -93,40 +91,6 @@ function column_getToggleGroupingHandler(column) {
|
|
|
93
91
|
};
|
|
94
92
|
}
|
|
95
93
|
/**
|
|
96
|
-
* Chooses a built-in aggregation function from the first core row value.
|
|
97
|
-
*
|
|
98
|
-
* Numeric columns default to `sum`, date-like values default to `extent`, and
|
|
99
|
-
* other value types leave aggregation unspecified.
|
|
100
|
-
*
|
|
101
|
-
* @example
|
|
102
|
-
* ```ts
|
|
103
|
-
* const aggregationFn = column_getAutoAggregationFn(column)
|
|
104
|
-
* ```
|
|
105
|
-
*/
|
|
106
|
-
function column_getAutoAggregationFn(column) {
|
|
107
|
-
const aggregationFns = column.table._rowModelFns.aggregationFns;
|
|
108
|
-
const firstRow = column.table.getCoreRowModel().flatRows[0];
|
|
109
|
-
const value = firstRow === null || firstRow === void 0 ? void 0 : firstRow.getValue(column.id);
|
|
110
|
-
if (typeof value === "number") return aggregationFns === null || aggregationFns === void 0 ? void 0 : aggregationFns.sum;
|
|
111
|
-
if (Object.prototype.toString.call(value) === "[object Date]") return aggregationFns === null || aggregationFns === void 0 ? void 0 : aggregationFns.extent;
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Resolves the aggregation function configured for a column.
|
|
115
|
-
*
|
|
116
|
-
* Function-valued `columnDef.aggregationFn` is returned directly, `'auto'`
|
|
117
|
-
* delegates to `column_getAutoAggregationFn`, and string values are looked up in
|
|
118
|
-
* the table's aggregation function registry.
|
|
119
|
-
*
|
|
120
|
-
* @example
|
|
121
|
-
* ```ts
|
|
122
|
-
* const aggregationFn = column_getAggregationFn(column)
|
|
123
|
-
* ```
|
|
124
|
-
*/
|
|
125
|
-
function column_getAggregationFn(column) {
|
|
126
|
-
const aggregationFns = column.table._rowModelFns.aggregationFns;
|
|
127
|
-
return isFunction(column.columnDef.aggregationFn) ? column.columnDef.aggregationFn : column.columnDef.aggregationFn === "auto" ? column_getAutoAggregationFn(column) : aggregationFns === null || aggregationFns === void 0 ? void 0 : aggregationFns[column.columnDef.aggregationFn];
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
94
|
* Routes a grouping updater through the table's grouping change handler.
|
|
131
95
|
*
|
|
132
96
|
* The updater may be a next `GroupingState` array or a function of the previous
|
|
@@ -138,8 +102,7 @@ function column_getAggregationFn(column) {
|
|
|
138
102
|
* ```
|
|
139
103
|
*/
|
|
140
104
|
function table_setGrouping(table, updater) {
|
|
141
|
-
|
|
142
|
-
(_table$options$onGrou = (_table$options = table.options).onGroupingChange) === null || _table$options$onGrou === void 0 || _table$options$onGrou.call(_table$options, updater);
|
|
105
|
+
table.options.onGroupingChange?.(updater);
|
|
143
106
|
}
|
|
144
107
|
/**
|
|
145
108
|
* Resets `grouping` to the configured initial state or feature default.
|
|
@@ -181,12 +144,11 @@ function row_getIsGrouped(row) {
|
|
|
181
144
|
* ```
|
|
182
145
|
*/
|
|
183
146
|
function row_getGroupingValue(row, columnId) {
|
|
184
|
-
|
|
185
|
-
if ((_row$_groupingValuesC = row._groupingValuesCache) === null || _row$_groupingValuesC === void 0 ? void 0 : _row$_groupingValuesC.hasOwnProperty(columnId)) return row._groupingValuesCache[columnId];
|
|
147
|
+
if (row._groupingValuesCache && hasOwn(row._groupingValuesCache, columnId)) return row._groupingValuesCache[columnId];
|
|
186
148
|
const column = row.table.getColumn(columnId);
|
|
187
149
|
if (!column.columnDef.getGroupingValue) return row.getValue(columnId);
|
|
188
|
-
if (row._groupingValuesCache) row._groupingValuesCache[columnId] = column.columnDef.getGroupingValue(row.original);
|
|
189
|
-
return
|
|
150
|
+
if (row._groupingValuesCache) row._groupingValuesCache[columnId] = column.columnDef.getGroupingValue(row.original, row.index, row);
|
|
151
|
+
return row._groupingValuesCache?.[columnId];
|
|
190
152
|
}
|
|
191
153
|
/**
|
|
192
154
|
* Checks whether this cell represents the grouped column for a grouped row.
|
|
@@ -216,21 +178,6 @@ function cell_getIsGrouped(cell) {
|
|
|
216
178
|
function cell_getIsPlaceholder(cell) {
|
|
217
179
|
return !cell_getIsGrouped(cell) && column_getIsGrouped(cell.column);
|
|
218
180
|
}
|
|
219
|
-
/**
|
|
220
|
-
* Checks whether this cell should render an aggregated value.
|
|
221
|
-
*
|
|
222
|
-
* Aggregated cells are non-placeholder, non-grouped cells on rows that have
|
|
223
|
-
* subRows.
|
|
224
|
-
*
|
|
225
|
-
* @example
|
|
226
|
-
* ```ts
|
|
227
|
-
* const isAggregated = cell_getIsAggregated(cell)
|
|
228
|
-
* ```
|
|
229
|
-
*/
|
|
230
|
-
function cell_getIsAggregated(cell) {
|
|
231
|
-
return !cell_getIsGrouped(cell) && !cell_getIsPlaceholder(cell) && !!cell.row.subRows.length;
|
|
232
|
-
}
|
|
233
181
|
|
|
234
182
|
//#endregion
|
|
235
|
-
export {
|
|
236
|
-
//# sourceMappingURL=columnGroupingFeature.utils.js.map
|
|
183
|
+
export { cell_getIsGrouped, cell_getIsPlaceholder, column_getCanGroup, column_getGroupedIndex, column_getIsGrouped, column_getToggleGroupingHandler, column_toggleGrouping, getDefaultGroupingState, row_getGroupingValue, row_getIsGrouped, table_resetGrouping, table_setGrouping };
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { RowData } from "../../types/type-utils.js";
|
|
2
|
-
import { TableFeatures } from "../../types/TableFeatures.js";
|
|
3
|
-
import { Table } from "../../types/Table.js";
|
|
4
2
|
import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
|
|
5
|
-
import {
|
|
6
|
-
|
|
3
|
+
import { Table } from "../../types/Table.js";
|
|
4
|
+
import { TableFeatures } from "../../types/TableFeatures.js";
|
|
7
5
|
//#region src/features/column-grouping/createGroupedRowModel.d.ts
|
|
8
6
|
/**
|
|
9
7
|
* Creates a memoized grouped row model factory.
|
|
10
8
|
*
|
|
11
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
|
+
* When rowAggregationFeature is also registered, grouped rows use its shared
|
|
12
|
+
* executor for non-group values. Grouping remains useful without aggregation.
|
|
12
13
|
*/
|
|
13
|
-
declare function createGroupedRowModel<TFeatures extends TableFeatures, TData extends RowData = any>(
|
|
14
|
+
declare function createGroupedRowModel<TFeatures extends TableFeatures, TData extends RowData = any>(): (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
|
|
14
15
|
//#endregion
|
|
15
|
-
export { createGroupedRowModel };
|
|
16
|
-
//# sourceMappingURL=createGroupedRowModel.d.ts.map
|
|
16
|
+
export { createGroupedRowModel };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { hasOwn, makeObjectMap, tableMemo } from "../../utils.js";
|
|
2
2
|
import { table_getColumn } from "../../core/columns/coreColumnsFeature.utils.js";
|
|
3
3
|
import { constructRow } from "../../core/rows/constructRow.js";
|
|
4
4
|
import { table_autoResetPageIndex } from "../row-pagination/rowPaginationFeature.utils.js";
|
|
5
|
-
import {
|
|
5
|
+
import { aggregateColumnValue, normalizeUniqueAggregationRows } from "../row-aggregation/rowAggregationFeature.utils.js";
|
|
6
6
|
import { table_autoResetExpanded } from "../row-expanding/rowExpandingFeature.utils.js";
|
|
7
7
|
|
|
8
8
|
//#region src/features/column-grouping/createGroupedRowModel.ts
|
|
@@ -10,32 +10,45 @@ import { table_autoResetExpanded } from "../row-expanding/rowExpandingFeature.ut
|
|
|
10
10
|
* Creates a memoized grouped row model factory.
|
|
11
11
|
*
|
|
12
12
|
* The factory reads the relevant table state atoms and options, then returns a row model function used by the table row-model pipeline.
|
|
13
|
+
*
|
|
14
|
+
* When rowAggregationFeature is also registered, grouped rows use its shared
|
|
15
|
+
* executor for non-group values. Grouping remains useful without aggregation.
|
|
13
16
|
*/
|
|
14
|
-
function createGroupedRowModel(
|
|
17
|
+
function createGroupedRowModel() {
|
|
15
18
|
return (_table) => {
|
|
16
19
|
const table = _table;
|
|
17
|
-
|
|
20
|
+
let hasAutoResetDependencies = false;
|
|
21
|
+
let previousGrouping;
|
|
22
|
+
let previousPreGroupedRowModel;
|
|
18
23
|
return tableMemo({
|
|
19
24
|
feature: "columnGroupingFeature",
|
|
20
25
|
table,
|
|
21
26
|
fnName: "table.getGroupedRowModel",
|
|
22
|
-
memoDeps: () =>
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
27
|
+
memoDeps: () => [
|
|
28
|
+
table.atoms.grouping?.get(),
|
|
29
|
+
table.getPreGroupedRowModel(),
|
|
30
|
+
table.options.columns
|
|
31
|
+
],
|
|
26
32
|
fn: () => _createGroupedRowModel(table),
|
|
27
33
|
onAfterUpdate: () => {
|
|
28
|
-
|
|
29
|
-
|
|
34
|
+
const grouping = table.atoms.grouping?.get();
|
|
35
|
+
const preGroupedRowModel = table.getPreGroupedRowModel();
|
|
36
|
+
const rowInputsChanged = !hasAutoResetDependencies || grouping !== previousGrouping || preGroupedRowModel !== previousPreGroupedRowModel;
|
|
37
|
+
previousGrouping = grouping;
|
|
38
|
+
previousPreGroupedRowModel = preGroupedRowModel;
|
|
39
|
+
hasAutoResetDependencies = true;
|
|
40
|
+
if (rowInputsChanged) {
|
|
41
|
+
table_autoResetExpanded(table);
|
|
42
|
+
table_autoResetPageIndex(table);
|
|
43
|
+
}
|
|
30
44
|
}
|
|
31
45
|
});
|
|
32
46
|
};
|
|
33
47
|
}
|
|
34
48
|
function _createGroupedRowModel(table) {
|
|
35
|
-
var _table$atoms$grouping2;
|
|
36
49
|
const rowModel = table.getPreGroupedRowModel();
|
|
37
|
-
const grouping =
|
|
38
|
-
if (!rowModel.rows.length || !
|
|
50
|
+
const grouping = table.atoms.grouping?.get();
|
|
51
|
+
if (!rowModel.rows.length || !grouping?.length) {
|
|
39
52
|
rowModel.rows.forEach((row) => {
|
|
40
53
|
row.depth = 0;
|
|
41
54
|
row.parentId = void 0;
|
|
@@ -44,17 +57,22 @@ function _createGroupedRowModel(table) {
|
|
|
44
57
|
}
|
|
45
58
|
const existingGrouping = grouping.filter((columnId) => table_getColumn(table, columnId));
|
|
46
59
|
const groupedFlatRows = [];
|
|
47
|
-
const groupedRowsById =
|
|
60
|
+
const groupedRowsById = makeObjectMap();
|
|
48
61
|
const groupUpRecursively = (rows, depth = 0, parentId) => {
|
|
49
62
|
if (depth >= existingGrouping.length) return rows.map((row) => {
|
|
50
63
|
row.depth = depth;
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
64
|
+
if (row.subRows.length) {
|
|
65
|
+
row.subRows = groupUpRecursively(row.subRows, depth + 1, row.id);
|
|
66
|
+
for (let i = 0; i < row.subRows.length; i++) {
|
|
67
|
+
const subRow = row.subRows[i];
|
|
68
|
+
groupedFlatRows.push(subRow);
|
|
69
|
+
groupedRowsById[subRow.id] = subRow;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
54
72
|
return row;
|
|
55
73
|
});
|
|
56
74
|
const columnId = existingGrouping[depth];
|
|
57
|
-
const rowGroupsMap = groupBy(rows, columnId);
|
|
75
|
+
const rowGroupsMap = groupBy(table, rows, columnId);
|
|
58
76
|
return Array.from(rowGroupsMap.entries()).map(([groupingValue, groupedRows], index) => {
|
|
59
77
|
let id = `${columnId}:${groupingValue}`;
|
|
60
78
|
id = parentId ? `${parentId}>${id}` : id;
|
|
@@ -62,7 +80,7 @@ function _createGroupedRowModel(table) {
|
|
|
62
80
|
subRows.forEach((subRow) => {
|
|
63
81
|
subRow.parentId = id;
|
|
64
82
|
});
|
|
65
|
-
const leafRows =
|
|
83
|
+
const leafRows = normalizeUniqueAggregationRows(groupedRows, Infinity);
|
|
66
84
|
const row = constructRow(table, id, leafRows[0].original, index, depth, void 0, parentId);
|
|
67
85
|
Object.assign(row, {
|
|
68
86
|
groupingColumnId: columnId,
|
|
@@ -70,19 +88,25 @@ function _createGroupedRowModel(table) {
|
|
|
70
88
|
subRows,
|
|
71
89
|
leafRows,
|
|
72
90
|
getValue: (colId) => {
|
|
73
|
-
|
|
74
|
-
if (
|
|
75
|
-
if (row._valuesCache
|
|
91
|
+
const groupingIndex = existingGrouping.indexOf(colId);
|
|
92
|
+
if (groupingIndex !== -1 && groupingIndex <= depth) {
|
|
93
|
+
if (hasOwn(row._valuesCache, colId)) return row._valuesCache[colId];
|
|
76
94
|
if (groupedRows[0]) row._valuesCache[colId] = groupedRows[0].getValue(colId) ?? void 0;
|
|
77
95
|
return row._valuesCache[colId];
|
|
78
96
|
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
if (
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
97
|
+
const aggregationCache = row._aggregationValuesCache;
|
|
98
|
+
if (aggregationCache && hasOwn(aggregationCache, colId)) return aggregationCache[colId];
|
|
99
|
+
const column = table.getColumn(colId);
|
|
100
|
+
if (typeof column.getAggregationFns !== "function") return void 0;
|
|
101
|
+
const cache = row._aggregationValuesCache ??= makeObjectMap();
|
|
102
|
+
cache[colId] = aggregateColumnValue({
|
|
103
|
+
subRows,
|
|
104
|
+
column,
|
|
105
|
+
groupingRow: row,
|
|
106
|
+
rows: groupedRows,
|
|
107
|
+
uniqueRows: true
|
|
108
|
+
});
|
|
109
|
+
return cache[colId];
|
|
86
110
|
}
|
|
87
111
|
});
|
|
88
112
|
subRows.forEach((subRow) => {
|
|
@@ -103,17 +127,24 @@ function _createGroupedRowModel(table) {
|
|
|
103
127
|
rowsById: groupedRowsById
|
|
104
128
|
};
|
|
105
129
|
}
|
|
106
|
-
function groupBy(rows, columnId) {
|
|
130
|
+
function groupBy(table, rows, columnId) {
|
|
107
131
|
const groupMap = /* @__PURE__ */ new Map();
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
const
|
|
111
|
-
|
|
132
|
+
const getGroupingValue = table_getColumn(table, columnId)?.columnDef.getGroupingValue;
|
|
133
|
+
for (let i = 0; i < rows.length; i++) {
|
|
134
|
+
const row = rows[i];
|
|
135
|
+
let groupingValue;
|
|
136
|
+
if (getGroupingValue) {
|
|
137
|
+
const cache = row._groupingValuesCache;
|
|
138
|
+
if (cache && hasOwn(cache, columnId)) groupingValue = cache[columnId];
|
|
139
|
+
else if (cache) groupingValue = cache[columnId] = getGroupingValue(row.original, row.index, row);
|
|
140
|
+
} else groupingValue = row.getValue(columnId);
|
|
141
|
+
const resKey = `${groupingValue}`;
|
|
142
|
+
const previous = groupMap.get(resKey);
|
|
143
|
+
if (!previous) groupMap.set(resKey, [row]);
|
|
112
144
|
else previous.push(row);
|
|
113
|
-
|
|
114
|
-
|
|
145
|
+
}
|
|
146
|
+
return groupMap;
|
|
115
147
|
}
|
|
116
148
|
|
|
117
149
|
//#endregion
|
|
118
|
-
export { createGroupedRowModel };
|
|
119
|
-
//# sourceMappingURL=createGroupedRowModel.js.map
|
|
150
|
+
export { createGroupedRowModel };
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import { TableFeature } from "../../types/TableFeatures.js";
|
|
2
|
-
|
|
3
2
|
//#region src/features/column-ordering/columnOrderingFeature.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* Feature that adds column ordering state and APIs for ordering leaf columns.
|
|
6
5
|
*/
|
|
7
6
|
declare const columnOrderingFeature: TableFeature;
|
|
8
7
|
//#endregion
|
|
9
|
-
export { columnOrderingFeature };
|
|
10
|
-
//# sourceMappingURL=columnOrderingFeature.d.ts.map
|
|
8
|
+
export { columnOrderingFeature };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { assignPrototypeAPIs, assignTableAPIs, makeStateUpdater } from "../../utils.js";
|
|
2
|
-
import { column_getIndex, column_getIsFirstColumn, column_getIsLastColumn, getDefaultColumnOrderState, table_getOrderColumnsFn, table_resetColumnOrder, table_setColumnOrder } from "./columnOrderingFeature.utils.js";
|
|
2
|
+
import { column_getIndex, column_getIsFirstColumn, column_getIsLastColumn, getDefaultColumnOrderState, table_getColumnIndexes, table_getOrderColumnsFn, table_resetColumnOrder, table_setColumnOrder } from "./columnOrderingFeature.utils.js";
|
|
3
3
|
|
|
4
4
|
//#region src/features/column-ordering/columnOrderingFeature.ts
|
|
5
5
|
/**
|
|
@@ -17,42 +17,37 @@ const columnOrderingFeature = {
|
|
|
17
17
|
},
|
|
18
18
|
assignColumnPrototype: (prototype, table) => {
|
|
19
19
|
assignPrototypeAPIs("columnOrderingFeature", prototype, table, {
|
|
20
|
-
column_getIndex: {
|
|
21
|
-
fn: (column, position) => column_getIndex(column, position),
|
|
22
|
-
memoDeps: (column, position) => {
|
|
23
|
-
var _column$table$atoms$c, _column$table$atoms$c2, _column$table$atoms$g, _column$table$atoms$c3;
|
|
24
|
-
return [
|
|
25
|
-
position,
|
|
26
|
-
(_column$table$atoms$c = column.table.atoms.columnOrder) === null || _column$table$atoms$c === void 0 ? void 0 : _column$table$atoms$c.get(),
|
|
27
|
-
(_column$table$atoms$c2 = column.table.atoms.columnPinning) === null || _column$table$atoms$c2 === void 0 ? void 0 : _column$table$atoms$c2.get(),
|
|
28
|
-
(_column$table$atoms$g = column.table.atoms.grouping) === null || _column$table$atoms$g === void 0 ? void 0 : _column$table$atoms$g.get(),
|
|
29
|
-
(_column$table$atoms$c3 = column.table.atoms.columnVisibility) === null || _column$table$atoms$c3 === void 0 ? void 0 : _column$table$atoms$c3.get()
|
|
30
|
-
];
|
|
31
|
-
}
|
|
32
|
-
},
|
|
20
|
+
column_getIndex: { fn: (column, position) => column_getIndex(column, position) },
|
|
33
21
|
column_getIsFirstColumn: { fn: (column, position) => column_getIsFirstColumn(column, position) },
|
|
34
22
|
column_getIsLastColumn: { fn: (column, position) => column_getIsLastColumn(column, position) }
|
|
35
23
|
});
|
|
36
24
|
},
|
|
37
25
|
constructTableAPIs: (table) => {
|
|
38
26
|
assignTableAPIs("columnOrderingFeature", table, {
|
|
27
|
+
table_getColumnIndexes: {
|
|
28
|
+
fn: () => table_getColumnIndexes(table),
|
|
29
|
+
memoDeps: () => [
|
|
30
|
+
table.options.columns,
|
|
31
|
+
table.atoms.columnOrder?.get(),
|
|
32
|
+
table.atoms.columnPinning?.get(),
|
|
33
|
+
table.atoms.columnVisibility?.get(),
|
|
34
|
+
table.atoms.grouping?.get(),
|
|
35
|
+
table.options.groupedColumnMode
|
|
36
|
+
]
|
|
37
|
+
},
|
|
39
38
|
table_setColumnOrder: { fn: (updater) => table_setColumnOrder(table, updater) },
|
|
40
39
|
table_resetColumnOrder: { fn: (defaultState) => table_resetColumnOrder(table, defaultState) },
|
|
41
40
|
table_getOrderColumnsFn: {
|
|
42
41
|
fn: () => table_getOrderColumnsFn(table),
|
|
43
|
-
memoDeps: () =>
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
table.options.groupedColumnMode
|
|
49
|
-
];
|
|
50
|
-
}
|
|
42
|
+
memoDeps: () => [
|
|
43
|
+
table.atoms.columnOrder?.get(),
|
|
44
|
+
table.atoms.grouping?.get(),
|
|
45
|
+
table.options.groupedColumnMode
|
|
46
|
+
]
|
|
51
47
|
}
|
|
52
48
|
});
|
|
53
49
|
}
|
|
54
50
|
};
|
|
55
51
|
|
|
56
52
|
//#endregion
|
|
57
|
-
export { columnOrderingFeature };
|
|
58
|
-
//# sourceMappingURL=columnOrderingFeature.js.map
|
|
53
|
+
export { columnOrderingFeature };
|