@tanstack/table-core 9.0.0-beta.7 → 9.0.0-beta.70
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/dist/core/cells/constructCell.d.ts +4 -6
- package/dist/core/cells/constructCell.js +4 -6
- package/dist/core/cells/coreCellsFeature.d.ts +1 -3
- package/dist/core/cells/coreCellsFeature.js +1 -2
- package/dist/core/cells/coreCellsFeature.types.d.ts +7 -9
- package/dist/core/cells/coreCellsFeature.utils.d.ts +5 -5
- package/dist/core/cells/coreCellsFeature.utils.js +1 -2
- package/dist/core/columns/constructColumn.d.ts +4 -6
- package/dist/core/columns/constructColumn.js +8 -9
- package/dist/core/columns/coreColumnsFeature.d.ts +1 -3
- package/dist/core/columns/coreColumnsFeature.js +13 -20
- package/dist/core/columns/coreColumnsFeature.types.d.ts +13 -15
- package/dist/core/columns/coreColumnsFeature.utils.d.ts +10 -12
- package/dist/core/columns/coreColumnsFeature.utils.js +19 -20
- package/dist/core/coreFeatures.d.ts +3 -3
- package/dist/core/coreFeatures.js +1 -2
- package/dist/core/headers/buildHeaderGroups.d.ts +3 -5
- package/dist/core/headers/buildHeaderGroups.js +99 -85
- package/dist/core/headers/constructHeader.d.ts +3 -5
- package/dist/core/headers/constructHeader.js +4 -6
- package/dist/core/headers/coreHeadersFeature.d.ts +1 -3
- package/dist/core/headers/coreHeadersFeature.js +9 -13
- package/dist/core/headers/coreHeadersFeature.types.d.ts +21 -11
- package/dist/core/headers/coreHeadersFeature.utils.d.ts +8 -8
- package/dist/core/headers/coreHeadersFeature.utils.js +14 -17
- package/dist/core/reactivity/coreReactivityFeature.types.d.ts +8 -3
- package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +1 -3
- package/dist/core/reactivity/coreReactivityFeature.utils.js +1 -2
- package/dist/core/reactivity/renderPhaseReactivity.d.ts +80 -0
- package/dist/core/reactivity/renderPhaseReactivity.js +95 -0
- package/dist/core/row-models/coreRowModelsFeature.d.ts +1 -3
- package/dist/core/row-models/coreRowModelsFeature.js +1 -2
- package/dist/core/row-models/coreRowModelsFeature.types.d.ts +7 -17
- package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +17 -19
- package/dist/core/row-models/coreRowModelsFeature.utils.js +9 -28
- package/dist/core/row-models/createCoreRowModel.d.ts +3 -5
- package/dist/core/row-models/createCoreRowModel.js +25 -24
- package/dist/core/rows/constructRow.d.ts +3 -5
- package/dist/core/rows/constructRow.js +9 -13
- package/dist/core/rows/coreRowsFeature.d.ts +1 -3
- package/dist/core/rows/coreRowsFeature.js +20 -5
- package/dist/core/rows/coreRowsFeature.types.d.ts +42 -10
- package/dist/core/rows/coreRowsFeature.utils.d.ts +26 -9
- package/dist/core/rows/coreRowsFeature.utils.js +65 -14
- package/dist/core/table/constructTable.d.ts +2 -4
- package/dist/core/table/constructTable.js +52 -23
- package/dist/core/table/coreTablesFeature.d.ts +1 -3
- package/dist/core/table/coreTablesFeature.js +1 -2
- package/dist/core/table/coreTablesFeature.types.d.ts +56 -25
- package/dist/core/table/coreTablesFeature.utils.d.ts +34 -12
- package/dist/core/table/coreTablesFeature.utils.js +69 -24
- package/dist/experimental-worker-plugin.d.ts +5 -0
- package/dist/experimental-worker-plugin.js +6 -0
- package/dist/features/cell-selection/cellSelectionFeature.d.ts +8 -0
- package/dist/features/cell-selection/cellSelectionFeature.js +128 -0
- package/dist/features/cell-selection/cellSelectionFeature.types.d.ts +296 -0
- package/dist/features/cell-selection/cellSelectionFeature.utils.d.ts +306 -0
- package/dist/features/cell-selection/cellSelectionFeature.utils.js +873 -0
- package/dist/features/cell-selection/cellSelectionGeometry.js +121 -0
- package/dist/features/cell-spanning/cellSpanningFeature.d.ts +13 -0
- package/dist/features/cell-spanning/cellSpanningFeature.js +47 -0
- package/dist/features/cell-spanning/cellSpanningFeature.types.d.ts +150 -0
- package/dist/features/cell-spanning/cellSpanningFeature.utils.d.ts +74 -0
- package/dist/features/cell-spanning/cellSpanningFeature.utils.js +262 -0
- package/dist/features/column-faceting/columnFacetingFeature.d.ts +1 -3
- package/dist/features/column-faceting/columnFacetingFeature.js +13 -20
- package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +15 -35
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +10 -12
- package/dist/features/column-faceting/columnFacetingFeature.utils.js +25 -14
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +2 -4
- package/dist/features/column-faceting/createFacetedMinMaxValues.js +9 -7
- package/dist/features/column-faceting/createFacetedRowModel.d.ts +3 -5
- package/dist/features/column-faceting/createFacetedRowModel.js +12 -17
- package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +2 -4
- package/dist/features/column-faceting/createFacetedUniqueValues.js +12 -9
- package/dist/features/column-filtering/columnFilteringFeature.d.ts +1 -3
- package/dist/features/column-filtering/columnFilteringFeature.js +4 -5
- package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +85 -33
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +19 -17
- package/dist/features/column-filtering/columnFilteringFeature.utils.js +33 -21
- package/dist/features/column-filtering/createFilteredRowModel.d.ts +11 -7
- package/dist/features/column-filtering/createFilteredRowModel.js +33 -29
- package/dist/features/column-filtering/filterFns.d.ts +208 -0
- package/dist/features/column-filtering/filterFns.js +374 -0
- package/dist/features/column-filtering/filterRowsUtils.js +4 -4
- package/dist/features/column-grouping/columnGroupingFeature.d.ts +2 -4
- package/dist/features/column-grouping/columnGroupingFeature.js +7 -20
- package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +14 -52
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +12 -51
- package/dist/features/column-grouping/columnGroupingFeature.utils.js +8 -61
- package/dist/features/column-grouping/createGroupedRowModel.d.ts +7 -7
- package/dist/features/column-grouping/createGroupedRowModel.js +69 -38
- package/dist/features/column-ordering/columnOrderingFeature.d.ts +1 -3
- package/dist/features/column-ordering/columnOrderingFeature.js +19 -24
- package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +28 -5
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +26 -16
- package/dist/features/column-ordering/columnOrderingFeature.utils.js +36 -18
- package/dist/features/column-pinning/columnPinningFeature.d.ts +7 -4
- package/dist/features/column-pinning/columnPinningFeature.js +126 -146
- package/dist/features/column-pinning/columnPinningFeature.types.d.ts +53 -44
- package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +100 -93
- package/dist/features/column-pinning/columnPinningFeature.utils.js +148 -150
- package/dist/features/column-resizing/columnResizingFeature.d.ts +1 -3
- package/dist/features/column-resizing/columnResizingFeature.js +1 -2
- package/dist/features/column-resizing/columnResizingFeature.types.d.ts +2 -7
- package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +7 -9
- package/dist/features/column-resizing/columnResizingFeature.utils.js +86 -48
- package/dist/features/column-sizing/columnSizingFeature.d.ts +1 -3
- package/dist/features/column-sizing/columnSizingFeature.js +35 -70
- package/dist/features/column-sizing/columnSizingFeature.types.d.ts +52 -11
- package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +43 -27
- package/dist/features/column-sizing/columnSizingFeature.utils.js +95 -54
- package/dist/features/column-visibility/columnVisibilityFeature.d.ts +1 -3
- package/dist/features/column-visibility/columnVisibilityFeature.js +26 -38
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +4 -6
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +20 -20
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js +32 -32
- package/dist/features/global-filtering/globalFilteringFeature.d.ts +1 -3
- package/dist/features/global-filtering/globalFilteringFeature.js +3 -4
- package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +4 -6
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +10 -13
- package/dist/features/global-filtering/globalFilteringFeature.utils.js +7 -8
- package/dist/features/row-aggregation/aggregationFns.d.ts +66 -0
- package/dist/features/row-aggregation/aggregationFns.js +279 -0
- package/dist/features/row-aggregation/rowAggregationFeature.d.ts +8 -0
- package/dist/features/row-aggregation/rowAggregationFeature.js +35 -0
- package/dist/features/row-aggregation/rowAggregationFeature.types.d.ts +193 -0
- package/dist/features/row-aggregation/rowAggregationFeature.types.js +11 -0
- package/dist/features/row-aggregation/rowAggregationFeature.utils.d.ts +46 -0
- package/dist/features/row-aggregation/rowAggregationFeature.utils.js +235 -0
- package/dist/features/row-expanding/createExpandedRowModel.d.ts +3 -5
- package/dist/features/row-expanding/createExpandedRowModel.js +9 -13
- package/dist/features/row-expanding/rowExpandingFeature.d.ts +1 -3
- package/dist/features/row-expanding/rowExpandingFeature.js +1 -2
- package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +6 -17
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +11 -16
- package/dist/features/row-expanding/rowExpandingFeature.utils.js +30 -33
- package/dist/features/row-pagination/createPaginatedRowModel.d.ts +3 -5
- package/dist/features/row-pagination/createPaginatedRowModel.js +7 -12
- package/dist/features/row-pagination/rowPaginationFeature.d.ts +1 -3
- package/dist/features/row-pagination/rowPaginationFeature.js +1 -2
- package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +5 -16
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +18 -20
- package/dist/features/row-pagination/rowPaginationFeature.utils.js +10 -17
- package/dist/features/row-pinning/rowPinningFeature.d.ts +1 -3
- package/dist/features/row-pinning/rowPinningFeature.js +5 -18
- package/dist/features/row-pinning/rowPinningFeature.types.d.ts +3 -5
- package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +8 -10
- package/dist/features/row-pinning/rowPinningFeature.utils.js +10 -16
- package/dist/features/row-selection/rowSelectionFeature.d.ts +1 -3
- package/dist/features/row-selection/rowSelectionFeature.js +68 -25
- package/dist/features/row-selection/rowSelectionFeature.types.d.ts +51 -15
- package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +60 -35
- package/dist/features/row-selection/rowSelectionFeature.utils.js +142 -89
- package/dist/features/row-sorting/createSortedRowModel.d.ts +11 -7
- package/dist/features/row-sorting/createSortedRowModel.js +71 -53
- package/dist/features/row-sorting/rowSortingFeature.d.ts +1 -3
- package/dist/features/row-sorting/rowSortingFeature.js +1 -2
- package/dist/features/row-sorting/rowSortingFeature.types.d.ts +54 -24
- package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +19 -22
- package/dist/features/row-sorting/rowSortingFeature.utils.js +36 -25
- package/dist/features/row-sorting/sortFns.d.ts +96 -0
- package/dist/features/row-sorting/sortFns.js +216 -0
- package/dist/features/stockFeatures.d.ts +7 -3
- package/dist/features/stockFeatures.js +7 -2
- package/dist/flex-render.d.ts +2 -4
- package/dist/flex-render.js +10 -3
- package/dist/helpers/columnHelper.d.ts +3 -5
- package/dist/helpers/columnHelper.js +1 -2
- package/dist/helpers/metaHelper.d.ts +25 -0
- package/dist/helpers/metaHelper.js +28 -0
- package/dist/helpers/tableFeatures.d.ts +35 -8
- package/dist/helpers/tableFeatures.js +33 -5
- package/dist/helpers/tableOptions.d.ts +1 -3
- package/dist/helpers/tableOptions.js +1 -2
- package/dist/index.d.ts +34 -27
- package/dist/index.js +10 -5
- package/dist/reactivity.d.ts +2 -1
- package/dist/reactivity.js +2 -1
- package/dist/static-functions.d.ts +11 -8
- package/dist/static-functions.js +11 -8
- package/dist/store-reactivity-bindings.d.ts +2 -4
- package/dist/store-reactivity-bindings.js +4 -5
- package/dist/types/Cell.d.ts +9 -5
- package/dist/types/Column.d.ts +13 -15
- package/dist/types/ColumnDef.d.ts +39 -21
- package/dist/types/Header.d.ts +3 -5
- package/dist/types/HeaderGroup.d.ts +3 -5
- package/dist/types/Row.d.ts +7 -7
- package/dist/types/RowModel.d.ts +11 -25
- package/dist/types/RowModelFns.d.ts +5 -7
- package/dist/types/Table.d.ts +29 -32
- package/dist/types/TableFeatures.d.ts +388 -24
- package/dist/types/TableOptions.d.ts +24 -14
- package/dist/types/TableState.d.ts +8 -8
- package/dist/types/type-utils.d.ts +10 -4
- package/dist/utils.d.ts +32 -26
- package/dist/utils.js +52 -32
- package/dist/worker/createTableWorker.d.ts +100 -0
- package/dist/worker/createTableWorker.js +185 -0
- package/dist/worker/createWorkerRowModel.d.ts +40 -0
- package/dist/worker/createWorkerRowModel.js +77 -0
- package/dist/worker/initTableWorker.d.ts +31 -0
- package/dist/worker/initTableWorker.js +99 -0
- package/dist/worker/rebuildRowModel.d.ts +11 -0
- package/dist/worker/rebuildRowModel.js +71 -0
- package/dist/worker/serializeRowModel.js +51 -0
- package/dist/worker/tableWorkerProtocol.d.ts +88 -0
- package/dist/worker/tableWorkerProtocol.js +26 -0
- package/package.json +12 -28
- package/skills/aggregation/SKILL.md +141 -0
- package/skills/api-not-found/SKILL.md +113 -0
- package/skills/cell-selection/SKILL.md +204 -0
- package/skills/cell-spanning/SKILL.md +162 -0
- package/skills/client-vs-server/SKILL.md +164 -0
- package/skills/column-faceting/SKILL.md +97 -0
- package/skills/column-filtering/SKILL.md +87 -0
- package/skills/column-ordering/SKILL.md +75 -0
- package/skills/column-pinning/SKILL.md +89 -0
- package/skills/column-resizing/SKILL.md +91 -0
- package/skills/column-sizing/SKILL.md +72 -0
- package/skills/column-visibility/SKILL.md +75 -0
- package/skills/core/SKILL.md +175 -0
- package/skills/custom-features/SKILL.md +235 -0
- package/skills/expanding/SKILL.md +80 -0
- package/skills/global-filtering/SKILL.md +84 -0
- package/skills/grouping/SKILL.md +51 -401
- package/skills/migrate-v8-to-v9/SKILL.md +275 -416
- package/skills/pagination/SKILL.md +37 -344
- package/skills/row-pinning/SKILL.md +47 -234
- package/skills/row-selection/SKILL.md +75 -302
- package/skills/sorting/SKILL.md +45 -303
- package/skills/table-features/SKILL.md +159 -0
- package/skills/typescript/SKILL.md +126 -0
- package/dist/core/cells/constructCell.cjs +0 -34
- package/dist/core/cells/constructCell.cjs.map +0 -1
- package/dist/core/cells/constructCell.d.cts +0 -17
- package/dist/core/cells/constructCell.js.map +0 -1
- package/dist/core/cells/coreCellsFeature.cjs +0 -21
- package/dist/core/cells/coreCellsFeature.cjs.map +0 -1
- package/dist/core/cells/coreCellsFeature.d.cts +0 -10
- package/dist/core/cells/coreCellsFeature.js.map +0 -1
- package/dist/core/cells/coreCellsFeature.types.d.cts +0 -57
- package/dist/core/cells/coreCellsFeature.utils.cjs +0 -57
- package/dist/core/cells/coreCellsFeature.utils.cjs.map +0 -1
- package/dist/core/cells/coreCellsFeature.utils.d.cts +0 -53
- package/dist/core/cells/coreCellsFeature.utils.js.map +0 -1
- package/dist/core/columns/constructColumn.cjs +0 -61
- package/dist/core/columns/constructColumn.cjs.map +0 -1
- package/dist/core/columns/constructColumn.d.cts +0 -16
- package/dist/core/columns/constructColumn.js.map +0 -1
- package/dist/core/columns/coreColumnsFeature.cjs +0 -70
- package/dist/core/columns/coreColumnsFeature.cjs.map +0 -1
- package/dist/core/columns/coreColumnsFeature.d.cts +0 -10
- package/dist/core/columns/coreColumnsFeature.js.map +0 -1
- package/dist/core/columns/coreColumnsFeature.types.d.cts +0 -94
- package/dist/core/columns/coreColumnsFeature.utils.cjs +0 -187
- package/dist/core/columns/coreColumnsFeature.utils.cjs.map +0 -1
- package/dist/core/columns/coreColumnsFeature.utils.d.cts +0 -119
- package/dist/core/columns/coreColumnsFeature.utils.js.map +0 -1
- package/dist/core/coreFeatures.cjs +0 -25
- package/dist/core/coreFeatures.cjs.map +0 -1
- package/dist/core/coreFeatures.d.cts +0 -26
- package/dist/core/coreFeatures.js.map +0 -1
- package/dist/core/headers/buildHeaderGroups.cjs +0 -103
- package/dist/core/headers/buildHeaderGroups.cjs.map +0 -1
- package/dist/core/headers/buildHeaderGroups.d.cts +0 -16
- package/dist/core/headers/buildHeaderGroups.js.map +0 -1
- package/dist/core/headers/constructHeader.cjs +0 -41
- package/dist/core/headers/constructHeader.cjs.map +0 -1
- package/dist/core/headers/constructHeader.d.cts +0 -22
- package/dist/core/headers/constructHeader.js.map +0 -1
- package/dist/core/headers/coreHeadersFeature.cjs +0 -55
- package/dist/core/headers/coreHeadersFeature.cjs.map +0 -1
- package/dist/core/headers/coreHeadersFeature.d.cts +0 -10
- package/dist/core/headers/coreHeadersFeature.js.map +0 -1
- package/dist/core/headers/coreHeadersFeature.types.d.cts +0 -106
- package/dist/core/headers/coreHeadersFeature.utils.cjs +0 -142
- package/dist/core/headers/coreHeadersFeature.utils.cjs.map +0 -1
- package/dist/core/headers/coreHeadersFeature.utils.d.cts +0 -85
- package/dist/core/headers/coreHeadersFeature.utils.js.map +0 -1
- package/dist/core/reactivity/coreReactivityFeature.types.d.cts +0 -48
- package/dist/core/reactivity/coreReactivityFeature.utils.cjs +0 -24
- package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +0 -1
- package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +0 -24
- package/dist/core/reactivity/coreReactivityFeature.utils.js.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.cjs +0 -27
- package/dist/core/row-models/coreRowModelsFeature.cjs.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.d.cts +0 -10
- package/dist/core/row-models/coreRowModelsFeature.js.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.types.d.cts +0 -41
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs +0 -215
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +0 -153
- package/dist/core/row-models/coreRowModelsFeature.utils.js.map +0 -1
- package/dist/core/row-models/createCoreRowModel.cjs +0 -52
- package/dist/core/row-models/createCoreRowModel.cjs.map +0 -1
- package/dist/core/row-models/createCoreRowModel.d.cts +0 -15
- package/dist/core/row-models/createCoreRowModel.js.map +0 -1
- package/dist/core/rows/constructRow.cjs +0 -44
- package/dist/core/rows/constructRow.cjs.map +0 -1
- package/dist/core/rows/constructRow.d.cts +0 -15
- package/dist/core/rows/constructRow.js.map +0 -1
- package/dist/core/rows/coreRowsFeature.cjs +0 -37
- package/dist/core/rows/coreRowsFeature.cjs.map +0 -1
- package/dist/core/rows/coreRowsFeature.d.cts +0 -10
- package/dist/core/rows/coreRowsFeature.js.map +0 -1
- package/dist/core/rows/coreRowsFeature.types.d.cts +0 -99
- package/dist/core/rows/coreRowsFeature.utils.cjs +0 -192
- package/dist/core/rows/coreRowsFeature.utils.cjs.map +0 -1
- package/dist/core/rows/coreRowsFeature.utils.d.cts +0 -127
- package/dist/core/rows/coreRowsFeature.utils.js.map +0 -1
- package/dist/core/table/constructTable.cjs +0 -118
- package/dist/core/table/constructTable.cjs.map +0 -1
- package/dist/core/table/constructTable.d.cts +0 -22
- package/dist/core/table/constructTable.js.map +0 -1
- package/dist/core/table/coreTablesFeature.cjs +0 -17
- package/dist/core/table/coreTablesFeature.cjs.map +0 -1
- package/dist/core/table/coreTablesFeature.d.cts +0 -10
- package/dist/core/table/coreTablesFeature.js.map +0 -1
- package/dist/core/table/coreTablesFeature.types.d.cts +0 -186
- package/dist/core/table/coreTablesFeature.utils.cjs +0 -96
- package/dist/core/table/coreTablesFeature.utils.cjs.map +0 -1
- package/dist/core/table/coreTablesFeature.utils.d.cts +0 -57
- package/dist/core/table/coreTablesFeature.utils.js.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.cjs +0 -61
- package/dist/features/column-faceting/columnFacetingFeature.cjs.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.d.cts +0 -10
- package/dist/features/column-faceting/columnFacetingFeature.js.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +0 -85
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +0 -103
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +0 -84
- package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +0 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +0 -44
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +0 -14
- package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +0 -1
- package/dist/features/column-faceting/createFacetedRowModel.cjs +0 -50
- package/dist/features/column-faceting/createFacetedRowModel.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedRowModel.d.cts +0 -15
- package/dist/features/column-faceting/createFacetedRowModel.js.map +0 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs +0 -41
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +0 -14
- package/dist/features/column-faceting/createFacetedUniqueValues.js.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.cjs +0 -50
- package/dist/features/column-filtering/columnFilteringFeature.cjs.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.d.cts +0 -10
- package/dist/features/column-filtering/columnFilteringFeature.js.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +0 -160
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +0 -212
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +0 -143
- package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +0 -1
- package/dist/features/column-filtering/createFilteredRowModel.cjs +0 -110
- package/dist/features/column-filtering/createFilteredRowModel.cjs.map +0 -1
- package/dist/features/column-filtering/createFilteredRowModel.d.cts +0 -16
- package/dist/features/column-filtering/createFilteredRowModel.js.map +0 -1
- package/dist/features/column-filtering/filterRowsUtils.cjs +0 -81
- package/dist/features/column-filtering/filterRowsUtils.cjs.map +0 -1
- package/dist/features/column-filtering/filterRowsUtils.js.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.cjs +0 -67
- package/dist/features/column-grouping/columnGroupingFeature.cjs.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.d.cts +0 -10
- package/dist/features/column-grouping/columnGroupingFeature.js.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +0 -165
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +0 -250
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +0 -190
- package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +0 -1
- package/dist/features/column-grouping/createGroupedRowModel.cjs +0 -119
- package/dist/features/column-grouping/createGroupedRowModel.cjs.map +0 -1
- package/dist/features/column-grouping/createGroupedRowModel.d.cts +0 -16
- package/dist/features/column-grouping/createGroupedRowModel.js.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.cjs +0 -58
- package/dist/features/column-ordering/columnOrderingFeature.cjs.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.d.cts +0 -10
- package/dist/features/column-ordering/columnOrderingFeature.js.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +0 -56
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +0 -172
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +0 -107
- package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.cjs +0 -221
- package/dist/features/column-pinning/columnPinningFeature.cjs.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.d.cts +0 -10
- package/dist/features/column-pinning/columnPinningFeature.js.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.types.d.cts +0 -178
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs +0 -585
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +0 -375
- package/dist/features/column-pinning/columnPinningFeature.utils.js.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.cjs +0 -41
- package/dist/features/column-resizing/columnResizingFeature.cjs.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.d.cts +0 -10
- package/dist/features/column-resizing/columnResizingFeature.js.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.types.d.cts +0 -81
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs +0 -246
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +0 -109
- package/dist/features/column-resizing/columnResizingFeature.utils.js.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.cjs +0 -124
- package/dist/features/column-sizing/columnSizingFeature.cjs.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.d.cts +0 -10
- package/dist/features/column-sizing/columnSizingFeature.js.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.types.d.cts +0 -96
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs +0 -256
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +0 -182
- package/dist/features/column-sizing/columnSizingFeature.utils.js.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.cjs +0 -94
- package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.d.cts +0 -10
- package/dist/features/column-visibility/columnVisibilityFeature.js.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +0 -97
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +0 -283
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +0 -189
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.cjs +0 -41
- package/dist/features/global-filtering/globalFilteringFeature.cjs.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.d.cts +0 -10
- package/dist/features/global-filtering/globalFilteringFeature.js.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +0 -71
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +0 -88
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +0 -74
- package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +0 -1
- package/dist/features/row-expanding/createExpandedRowModel.cjs +0 -59
- package/dist/features/row-expanding/createExpandedRowModel.cjs.map +0 -1
- package/dist/features/row-expanding/createExpandedRowModel.d.cts +0 -21
- package/dist/features/row-expanding/createExpandedRowModel.js.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.cjs +0 -47
- package/dist/features/row-expanding/rowExpandingFeature.cjs.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.d.cts +0 -10
- package/dist/features/row-expanding/rowExpandingFeature.js.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +0 -127
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +0 -281
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +0 -191
- package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +0 -1
- package/dist/features/row-pagination/createPaginatedRowModel.cjs +0 -62
- package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +0 -1
- package/dist/features/row-pagination/createPaginatedRowModel.d.cts +0 -15
- package/dist/features/row-pagination/createPaginatedRowModel.js.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.cjs +0 -45
- package/dist/features/row-pagination/rowPaginationFeature.cjs.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.d.cts +0 -10
- package/dist/features/row-pagination/rowPaginationFeature.js.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +0 -135
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +0 -312
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +0 -218
- package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.cjs +0 -67
- package/dist/features/row-pinning/rowPinningFeature.cjs.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.d.cts +0 -10
- package/dist/features/row-pinning/rowPinningFeature.js.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.types.d.cts +0 -83
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs +0 -229
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +0 -143
- package/dist/features/row-pinning/rowPinningFeature.utils.js.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.cjs +0 -75
- package/dist/features/row-selection/rowSelectionFeature.cjs.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.d.cts +0 -10
- package/dist/features/row-selection/rowSelectionFeature.js.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.types.d.cts +0 -136
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs +0 -514
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +0 -318
- package/dist/features/row-selection/rowSelectionFeature.utils.js.map +0 -1
- package/dist/features/row-sorting/createSortedRowModel.cjs +0 -95
- package/dist/features/row-sorting/createSortedRowModel.cjs.map +0 -1
- package/dist/features/row-sorting/createSortedRowModel.d.cts +0 -16
- package/dist/features/row-sorting/createSortedRowModel.js.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.cjs +0 -55
- package/dist/features/row-sorting/rowSortingFeature.cjs.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.d.cts +0 -10
- package/dist/features/row-sorting/rowSortingFeature.js.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.types.d.cts +0 -188
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs +0 -305
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +0 -193
- package/dist/features/row-sorting/rowSortingFeature.utils.js.map +0 -1
- package/dist/features/stockFeatures.cjs +0 -41
- package/dist/features/stockFeatures.cjs.map +0 -1
- package/dist/features/stockFeatures.d.cts +0 -41
- package/dist/features/stockFeatures.js.map +0 -1
- package/dist/flex-render.cjs +0 -29
- package/dist/flex-render.cjs.map +0 -1
- package/dist/flex-render.d.cts +0 -34
- package/dist/flex-render.js.map +0 -1
- package/dist/fns/aggregationFns.cjs +0 -161
- package/dist/fns/aggregationFns.cjs.map +0 -1
- package/dist/fns/aggregationFns.d.cts +0 -85
- package/dist/fns/aggregationFns.d.ts +0 -85
- package/dist/fns/aggregationFns.js +0 -151
- package/dist/fns/aggregationFns.js.map +0 -1
- package/dist/fns/filterFns.cjs +0 -201
- package/dist/fns/filterFns.cjs.map +0 -1
- package/dist/fns/filterFns.d.cts +0 -167
- package/dist/fns/filterFns.d.ts +0 -167
- package/dist/fns/filterFns.js +0 -185
- package/dist/fns/filterFns.js.map +0 -1
- package/dist/fns/sortFns.cjs +0 -130
- package/dist/fns/sortFns.cjs.map +0 -1
- package/dist/fns/sortFns.d.cts +0 -65
- package/dist/fns/sortFns.d.ts +0 -65
- package/dist/fns/sortFns.js +0 -122
- package/dist/fns/sortFns.js.map +0 -1
- package/dist/helpers/columnHelper.cjs +0 -41
- package/dist/helpers/columnHelper.cjs.map +0 -1
- package/dist/helpers/columnHelper.d.cts +0 -71
- package/dist/helpers/columnHelper.js.map +0 -1
- package/dist/helpers/tableFeatures.cjs +0 -20
- package/dist/helpers/tableFeatures.cjs.map +0 -1
- package/dist/helpers/tableFeatures.d.cts +0 -18
- package/dist/helpers/tableFeatures.js.map +0 -1
- package/dist/helpers/tableOptions.cjs +0 -15
- package/dist/helpers/tableOptions.cjs.map +0 -1
- package/dist/helpers/tableOptions.d.cts +0 -57
- package/dist/helpers/tableOptions.js.map +0 -1
- package/dist/index.cjs +0 -133
- package/dist/index.d.cts +0 -78
- package/dist/reactivity.cjs +0 -4
- package/dist/reactivity.d.cts +0 -3
- package/dist/static-functions.cjs +0 -263
- package/dist/static-functions.d.cts +0 -21
- package/dist/store-reactivity-bindings.cjs +0 -44
- package/dist/store-reactivity-bindings.cjs.map +0 -1
- package/dist/store-reactivity-bindings.d.cts +0 -22
- package/dist/store-reactivity-bindings.js.map +0 -1
- package/dist/types/Cell.d.cts +0 -14
- package/dist/types/Column.d.cts +0 -36
- package/dist/types/ColumnDef.d.cts +0 -109
- package/dist/types/Header.d.cts +0 -16
- package/dist/types/HeaderGroup.d.cts +0 -10
- package/dist/types/Row.d.cts +0 -26
- package/dist/types/RowModel.d.cts +0 -36
- package/dist/types/RowModelFns.d.cts +0 -18
- package/dist/types/Table.d.cts +0 -70
- package/dist/types/TableFeatures.d.cts +0 -53
- package/dist/types/TableOptions.d.cts +0 -69
- package/dist/types/TableState.d.cts +0 -48
- package/dist/types/type-utils.d.cts +0 -23
- package/dist/utils.cjs +0 -243
- package/dist/utils.cjs.map +0 -1
- package/dist/utils.d.cts +0 -114
- package/dist/utils.js.map +0 -1
- package/skills/column-definitions/SKILL.md +0 -333
- package/skills/column-layout/SKILL.md +0 -328
- package/skills/column-layout/references/subsystems.md +0 -220
- package/skills/customizing-feature-behavior/SKILL.md +0 -416
- package/skills/filtering/SKILL.md +0 -357
- package/skills/filtering/references/faceting-and-fuzzy.md +0 -191
- package/skills/row-expanding/SKILL.md +0 -348
- package/skills/setup/SKILL.md +0 -400
- package/skills/state-management/SKILL.md +0 -388
- package/src/core/cells/constructCell.ts +0 -55
- package/src/core/cells/coreCellsFeature.ts +0 -27
- package/src/core/cells/coreCellsFeature.types.ts +0 -68
- package/src/core/cells/coreCellsFeature.utils.ts +0 -68
- package/src/core/columns/constructColumn.ts +0 -119
- package/src/core/columns/coreColumnsFeature.ts +0 -73
- package/src/core/columns/coreColumnsFeature.types.ts +0 -108
- package/src/core/columns/coreColumnsFeature.utils.ts +0 -275
- package/src/core/coreFeatures.ts +0 -31
- package/src/core/headers/buildHeaderGroups.ts +0 -182
- package/src/core/headers/constructHeader.ts +0 -67
- package/src/core/headers/coreHeadersFeature.ts +0 -56
- package/src/core/headers/coreHeadersFeature.types.ts +0 -125
- package/src/core/headers/coreHeadersFeature.utils.ts +0 -200
- package/src/core/reactivity/coreReactivityFeature.types.ts +0 -56
- package/src/core/reactivity/coreReactivityFeature.utils.ts +0 -44
- package/src/core/row-models/coreRowModelsFeature.ts +0 -62
- package/src/core/row-models/coreRowModelsFeature.types.ts +0 -64
- package/src/core/row-models/coreRowModelsFeature.utils.ts +0 -272
- package/src/core/row-models/createCoreRowModel.ts +0 -93
- package/src/core/rows/constructRow.ts +0 -66
- package/src/core/rows/coreRowsFeature.ts +0 -62
- package/src/core/rows/coreRowsFeature.types.ts +0 -117
- package/src/core/rows/coreRowsFeature.utils.ts +0 -264
- package/src/core/table/constructTable.ts +0 -172
- package/src/core/table/coreTablesFeature.ts +0 -19
- package/src/core/table/coreTablesFeature.types.ts +0 -216
- package/src/core/table/coreTablesFeature.utils.ts +0 -131
- package/src/features/column-faceting/columnFacetingFeature.ts +0 -89
- package/src/features/column-faceting/columnFacetingFeature.types.ts +0 -109
- package/src/features/column-faceting/columnFacetingFeature.utils.ts +0 -145
- package/src/features/column-faceting/createFacetedMinMaxValues.ts +0 -66
- package/src/features/column-faceting/createFacetedRowModel.ts +0 -85
- package/src/features/column-faceting/createFacetedUniqueValues.ts +0 -66
- package/src/features/column-filtering/columnFilteringFeature.ts +0 -86
- package/src/features/column-filtering/columnFilteringFeature.types.ts +0 -232
- package/src/features/column-filtering/columnFilteringFeature.utils.ts +0 -331
- package/src/features/column-filtering/createFilteredRowModel.ts +0 -183
- package/src/features/column-filtering/filterRowsUtils.ts +0 -157
- package/src/features/column-grouping/columnGroupingFeature.ts +0 -115
- package/src/features/column-grouping/columnGroupingFeature.types.ts +0 -226
- package/src/features/column-grouping/columnGroupingFeature.utils.ts +0 -354
- package/src/features/column-grouping/createGroupedRowModel.ts +0 -220
- package/src/features/column-ordering/columnOrderingFeature.ts +0 -73
- package/src/features/column-ordering/columnOrderingFeature.types.ts +0 -60
- package/src/features/column-ordering/columnOrderingFeature.utils.ts +0 -241
- package/src/features/column-pinning/columnPinningFeature.ts +0 -316
- package/src/features/column-pinning/columnPinningFeature.types.ts +0 -192
- package/src/features/column-pinning/columnPinningFeature.utils.ts +0 -908
- package/src/features/column-resizing/columnResizingFeature.ts +0 -65
- package/src/features/column-resizing/columnResizingFeature.types.ts +0 -89
- package/src/features/column-resizing/columnResizingFeature.utils.ts +0 -364
- package/src/features/column-sizing/columnSizingFeature.ts +0 -145
- package/src/features/column-sizing/columnSizingFeature.types.ts +0 -102
- package/src/features/column-sizing/columnSizingFeature.utils.ts +0 -381
- package/src/features/column-visibility/columnVisibilityFeature.ts +0 -122
- package/src/features/column-visibility/columnVisibilityFeature.types.ts +0 -112
- package/src/features/column-visibility/columnVisibilityFeature.utils.ts +0 -384
- package/src/features/global-filtering/globalFilteringFeature.ts +0 -65
- package/src/features/global-filtering/globalFilteringFeature.types.ts +0 -91
- package/src/features/global-filtering/globalFilteringFeature.utils.ts +0 -118
- package/src/features/row-expanding/createExpandedRowModel.ts +0 -82
- package/src/features/row-expanding/rowExpandingFeature.ts +0 -94
- package/src/features/row-expanding/rowExpandingFeature.types.ts +0 -147
- package/src/features/row-expanding/rowExpandingFeature.utils.ts +0 -374
- package/src/features/row-pagination/createPaginatedRowModel.ts +0 -83
- package/src/features/row-pagination/rowPaginationFeature.ts +0 -95
- package/src/features/row-pagination/rowPaginationFeature.types.ts +0 -152
- package/src/features/row-pagination/rowPaginationFeature.utils.ts +0 -400
- package/src/features/row-pinning/rowPinningFeature.ts +0 -97
- package/src/features/row-pinning/rowPinningFeature.types.ts +0 -95
- package/src/features/row-pinning/rowPinningFeature.utils.ts +0 -323
- package/src/features/row-selection/rowSelectionFeature.ts +0 -140
- package/src/features/row-selection/rowSelectionFeature.types.ts +0 -151
- package/src/features/row-selection/rowSelectionFeature.utils.ts +0 -745
- package/src/features/row-sorting/createSortedRowModel.ts +0 -157
- package/src/features/row-sorting/rowSortingFeature.ts +0 -103
- package/src/features/row-sorting/rowSortingFeature.types.ts +0 -235
- package/src/features/row-sorting/rowSortingFeature.utils.ts +0 -489
- package/src/features/stockFeatures.ts +0 -53
- package/src/flex-render.ts +0 -70
- package/src/fns/aggregationFns.ts +0 -245
- package/src/fns/filterFns.ts +0 -382
- package/src/fns/sortFns.ts +0 -240
- package/src/helpers/columnHelper.ts +0 -122
- package/src/helpers/tableFeatures.ts +0 -24
- package/src/helpers/tableOptions.ts +0 -117
- package/src/index.ts +0 -138
- package/src/process-env.d.ts +0 -6
- package/src/reactivity.ts +0 -2
- package/src/static-functions.ts +0 -31
- package/src/store-reactivity-bindings.ts +0 -47
- package/src/types/Cell.ts +0 -21
- package/src/types/Column.ts +0 -51
- package/src/types/ColumnDef.ts +0 -228
- package/src/types/Header.ts +0 -23
- package/src/types/HeaderGroup.ts +0 -13
- package/src/types/Row.ts +0 -34
- package/src/types/RowModel.ts +0 -98
- package/src/types/RowModelFns.ts +0 -32
- package/src/types/Table.ts +0 -91
- package/src/types/TableFeatures.ts +0 -101
- package/src/types/TableOptions.ts +0 -101
- package/src/types/TableState.ts +0 -47
- package/src/types/type-utils.ts +0 -84
- package/src/utils.ts +0 -441
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
import { hasOwn, makeObjectMap } from "../../utils.js";
|
|
2
|
+
|
|
3
|
+
//#region src/features/row-aggregation/rowAggregationFeature.utils.ts
|
|
4
|
+
function isAggregationFnDef(value) {
|
|
5
|
+
return !!value && typeof value === "object" && "aggregate" in value;
|
|
6
|
+
}
|
|
7
|
+
function isAggregationFnDescriptor(value) {
|
|
8
|
+
return !!value && typeof value === "object" && "id" in value && "aggregationFn" in value;
|
|
9
|
+
}
|
|
10
|
+
function warn(message) {
|
|
11
|
+
if (process.env.NODE_ENV === "development") console.warn(message);
|
|
12
|
+
}
|
|
13
|
+
function resolveMaxAggregationDepth(maxDepth) {
|
|
14
|
+
return maxDepth === void 0 || Number.isNaN(maxDepth) ? 0 : Math.max(0, Math.floor(maxDepth));
|
|
15
|
+
}
|
|
16
|
+
function collectNormalizedAggregationRow(row, depth, maxDepth, seen, result) {
|
|
17
|
+
if (row.subRows.length && depth < maxDepth) {
|
|
18
|
+
for (let i = 0; i < row.subRows.length; i++) collectNormalizedAggregationRow(row.subRows[i], depth + 1, maxDepth, seen, result);
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
if (!seen.has(row.id)) {
|
|
22
|
+
seen.add(row.id);
|
|
23
|
+
result.push(row);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
function collectUniqueAggregationRow(row, depth, maxDepth, result) {
|
|
27
|
+
if (row.subRows.length && depth < maxDepth) {
|
|
28
|
+
for (let i = 0; i < row.subRows.length; i++) collectUniqueAggregationRow(row.subRows[i], depth + 1, maxDepth, result);
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
result.push(row);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Selects unique rows at a maximum relative depth in encounter order.
|
|
35
|
+
* Branches that end before the requested depth contribute their deepest row.
|
|
36
|
+
*/
|
|
37
|
+
function normalizeAggregationRows(rows, maxDepth = 0) {
|
|
38
|
+
const result = [];
|
|
39
|
+
const seen = /* @__PURE__ */ new Set();
|
|
40
|
+
const normalizedMaxDepth = resolveMaxAggregationDepth(maxDepth);
|
|
41
|
+
for (let i = 0; i < rows.length; i++) collectNormalizedAggregationRow(rows[i], 0, normalizedMaxDepth, seen, result);
|
|
42
|
+
return result;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Frontier selection for rows that are distinct nodes of a single row tree —
|
|
46
|
+
* the row models the table builds itself. Skips `normalizeAggregationRows`'
|
|
47
|
+
* duplicate-id guard (disjoint subtrees cannot revisit a row) and returns
|
|
48
|
+
* `rows` unchanged when no row descends, so the default `maxDepth: 0` case
|
|
49
|
+
* costs nothing per aggregation.
|
|
50
|
+
*/
|
|
51
|
+
function normalizeUniqueAggregationRows(rows, maxDepth = 0) {
|
|
52
|
+
const normalizedMaxDepth = resolveMaxAggregationDepth(maxDepth);
|
|
53
|
+
let needsDescent = false;
|
|
54
|
+
if (normalizedMaxDepth > 0) {
|
|
55
|
+
for (let i = 0; i < rows.length; i++) if (rows[i].subRows.length) {
|
|
56
|
+
needsDescent = true;
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
if (!needsDescent) return rows;
|
|
61
|
+
const result = [];
|
|
62
|
+
for (let i = 0; i < rows.length; i++) collectUniqueAggregationRow(rows[i], 0, normalizedMaxDepth, result);
|
|
63
|
+
return result;
|
|
64
|
+
}
|
|
65
|
+
function getAutoAggregationFnName(value) {
|
|
66
|
+
if (typeof value === "number") return "sum";
|
|
67
|
+
if (value instanceof Date && !Number.isNaN(value.getTime())) return "extent";
|
|
68
|
+
}
|
|
69
|
+
/** Resolves the `sum` or `extent` definition inferred from the first core row. */
|
|
70
|
+
function column_getAutoAggregationFn(column) {
|
|
71
|
+
const value = column.table.getCoreRowModel().flatRows[0]?.getValue(column.id);
|
|
72
|
+
const name = getAutoAggregationFnName(value);
|
|
73
|
+
if (!name) return void 0;
|
|
74
|
+
const aggregationFn = column.table._rowModelFns.aggregationFns?.[name];
|
|
75
|
+
if (!aggregationFn) warn(`aggregationFn '${name}' (auto) for column '${column.id}' is not registered`);
|
|
76
|
+
return aggregationFn;
|
|
77
|
+
}
|
|
78
|
+
function resolveAggregationFn(column, ref) {
|
|
79
|
+
if (isAggregationFnDef(ref)) return ref;
|
|
80
|
+
if (ref === "auto") return column_getAutoAggregationFn(column);
|
|
81
|
+
const aggregationFn = column.table._rowModelFns.aggregationFns?.[ref];
|
|
82
|
+
if (!aggregationFn) warn(`aggregationFn '${String(ref)}' for column '${column.id}' is not registered`);
|
|
83
|
+
return aggregationFn;
|
|
84
|
+
}
|
|
85
|
+
/** Resolves and validates a column's scalar or multiple aggregation option. */
|
|
86
|
+
function column_getAggregationFns(column) {
|
|
87
|
+
const option = column.columnDef.aggregationFn;
|
|
88
|
+
const registry = column.table._rowModelFns.aggregationFns;
|
|
89
|
+
const coreRowModel = column.table.getCoreRowModel();
|
|
90
|
+
const previous = column._resolvedAggregationFnsCache;
|
|
91
|
+
if (previous && previous.option === option && previous.registry === registry && previous.coreRowModel === coreRowModel) return previous.value;
|
|
92
|
+
const finish = (value) => {
|
|
93
|
+
column._resolvedAggregationFnsCache = {
|
|
94
|
+
coreRowModel,
|
|
95
|
+
option,
|
|
96
|
+
registry,
|
|
97
|
+
value
|
|
98
|
+
};
|
|
99
|
+
return value;
|
|
100
|
+
};
|
|
101
|
+
if (option == null) return finish([]);
|
|
102
|
+
if (!Array.isArray(option)) return finish([{
|
|
103
|
+
aggregationFn: resolveAggregationFn(column, option),
|
|
104
|
+
id: typeof option === "string" ? option : void 0
|
|
105
|
+
}]);
|
|
106
|
+
const ids = makeObjectMap();
|
|
107
|
+
for (let i = 0; i < option.length; i++) {
|
|
108
|
+
const item = option[i];
|
|
109
|
+
const id = typeof item === "string" ? item : isAggregationFnDescriptor(item) ? item.id : void 0;
|
|
110
|
+
if (id !== void 0) ids[id] = (ids[id] ?? 0) + 1;
|
|
111
|
+
}
|
|
112
|
+
const resolved = [];
|
|
113
|
+
for (let i = 0; i < option.length; i++) {
|
|
114
|
+
const item = option[i];
|
|
115
|
+
const id = typeof item === "string" ? item : isAggregationFnDescriptor(item) ? item.id : void 0;
|
|
116
|
+
if (id === void 0) {
|
|
117
|
+
warn(`aggregationFn at index ${i} for column '${column.id}' needs a stable id`);
|
|
118
|
+
resolved.push({
|
|
119
|
+
aggregationFn: void 0,
|
|
120
|
+
id: void 0
|
|
121
|
+
});
|
|
122
|
+
continue;
|
|
123
|
+
}
|
|
124
|
+
if (ids[id] > 1) {
|
|
125
|
+
warn(`aggregationFn id '${id}' for column '${column.id}' is duplicated`);
|
|
126
|
+
resolved.push({
|
|
127
|
+
aggregationFn: void 0,
|
|
128
|
+
id
|
|
129
|
+
});
|
|
130
|
+
continue;
|
|
131
|
+
}
|
|
132
|
+
const ref = isAggregationFnDescriptor(item) ? item.aggregationFn : item;
|
|
133
|
+
resolved.push({
|
|
134
|
+
aggregationFn: resolveAggregationFn(column, ref),
|
|
135
|
+
id
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
return finish(resolved);
|
|
139
|
+
}
|
|
140
|
+
function getSubRowResult(subRowValue, isMultiple, id) {
|
|
141
|
+
if (!isMultiple) return subRowValue;
|
|
142
|
+
if (!id || !subRowValue || typeof subRowValue !== "object") return void 0;
|
|
143
|
+
return hasOwn(subRowValue, id) ? subRowValue[id] : void 0;
|
|
144
|
+
}
|
|
145
|
+
/** Executes every configured aggregation over a depth-selected row frontier. */
|
|
146
|
+
function aggregateColumnValue(args) {
|
|
147
|
+
const { subRows, column, groupingRow, rows, uniqueRows } = args;
|
|
148
|
+
const internalColumn = column;
|
|
149
|
+
const maxDepth = resolveMaxAggregationDepth(args.maxDepth ?? internalColumn.columnDef.maxAggregationDepth);
|
|
150
|
+
const aggregationRows = uniqueRows ? normalizeUniqueAggregationRows(rows, maxDepth) : normalizeAggregationRows(rows, maxDepth);
|
|
151
|
+
const entries = column_getAggregationFns(internalColumn);
|
|
152
|
+
const isMultiple = Array.isArray(internalColumn.columnDef.aggregationFn);
|
|
153
|
+
const canMerge = !!subRows?.length && subRows.every((row) => !!row.groupingColumnId && row.groupingColumnId !== column.id);
|
|
154
|
+
const getValue = (row) => row.getValue(column.id);
|
|
155
|
+
const execute = (entry) => {
|
|
156
|
+
const definition = entry.aggregationFn;
|
|
157
|
+
if (!definition) return void 0;
|
|
158
|
+
const context = {
|
|
159
|
+
...subRows ? { subRows } : {},
|
|
160
|
+
column,
|
|
161
|
+
columnId: column.id,
|
|
162
|
+
getValue,
|
|
163
|
+
...groupingRow ? { groupingRow } : {},
|
|
164
|
+
maxDepth,
|
|
165
|
+
rows: aggregationRows,
|
|
166
|
+
table: column.table
|
|
167
|
+
};
|
|
168
|
+
if (canMerge && definition.merge) return definition.merge({
|
|
169
|
+
...context,
|
|
170
|
+
subRowResults: subRows.map((row) => getSubRowResult(row.getValue(column.id), isMultiple, entry.id)),
|
|
171
|
+
subRows
|
|
172
|
+
});
|
|
173
|
+
return definition.aggregate(context);
|
|
174
|
+
};
|
|
175
|
+
if (!isMultiple) return entries[0] ? execute(entries[0]) : void 0;
|
|
176
|
+
const result = makeObjectMap();
|
|
177
|
+
for (let i = 0; i < entries.length; i++) {
|
|
178
|
+
const entry = entries[i];
|
|
179
|
+
if (entry.id !== void 0) result[entry.id] = execute(entry);
|
|
180
|
+
}
|
|
181
|
+
return result;
|
|
182
|
+
}
|
|
183
|
+
/** Implements `column.getAggregationValue(options?)` and its default cache. */
|
|
184
|
+
function column_getAggregationValue(column, options) {
|
|
185
|
+
const rows = options?.rows;
|
|
186
|
+
const resolvedMaxDepth = resolveMaxAggregationDepth(options?.maxDepth ?? column.columnDef.maxAggregationDepth);
|
|
187
|
+
const providedResult = column.columnDef.getAggregationValue?.({
|
|
188
|
+
column,
|
|
189
|
+
maxDepth: resolvedMaxDepth,
|
|
190
|
+
rows,
|
|
191
|
+
table: column.table
|
|
192
|
+
});
|
|
193
|
+
if (providedResult) return providedResult.value;
|
|
194
|
+
if (column.table.options.manualAggregation) return void 0;
|
|
195
|
+
if (rows !== void 0) return aggregateColumnValue({
|
|
196
|
+
column,
|
|
197
|
+
maxDepth: resolvedMaxDepth,
|
|
198
|
+
rows
|
|
199
|
+
});
|
|
200
|
+
const model = column.table.getPreGroupedRowModel();
|
|
201
|
+
const previous = column._aggregationValueCache;
|
|
202
|
+
const registry = column.table._rowModelFns.aggregationFns;
|
|
203
|
+
const aggregationFnOption = column.columnDef.aggregationFn;
|
|
204
|
+
if (previous && previous.dependency === model && previous.maxDepth === resolvedMaxDepth && previous.registry === registry && previous.aggregationFnOption === aggregationFnOption) return previous.value;
|
|
205
|
+
const value = aggregateColumnValue({
|
|
206
|
+
column,
|
|
207
|
+
maxDepth: resolvedMaxDepth,
|
|
208
|
+
rows: model.rows,
|
|
209
|
+
uniqueRows: true
|
|
210
|
+
});
|
|
211
|
+
column._aggregationValueCache = {
|
|
212
|
+
aggregationFnOption,
|
|
213
|
+
dependency: model,
|
|
214
|
+
maxDepth: resolvedMaxDepth,
|
|
215
|
+
registry,
|
|
216
|
+
value
|
|
217
|
+
};
|
|
218
|
+
return value;
|
|
219
|
+
}
|
|
220
|
+
/** Implements `cell.getIsAggregated()` for synthetic grouped rows. */
|
|
221
|
+
function cell_getIsAggregated(cell) {
|
|
222
|
+
const groupingColumnId = cell.row.groupingColumnId;
|
|
223
|
+
if (!groupingColumnId || groupingColumnId === cell.column.id) return false;
|
|
224
|
+
if ((cell.column.table.atoms.grouping?.get?.())?.includes(cell.column.id)) return false;
|
|
225
|
+
return column_getAggregationFns(cell.column).some((entry) => !!entry.aggregationFn);
|
|
226
|
+
}
|
|
227
|
+
/** Formats the default scalar or keyed aggregated-cell representation. */
|
|
228
|
+
function formatAggregatedCellValue(value, option) {
|
|
229
|
+
if (value == null) return null;
|
|
230
|
+
if (Array.isArray(option) && typeof value === "object") return Object.keys(value).map((key) => `${key}: ${String(value[key])}`).join(", ");
|
|
231
|
+
return String(value);
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
//#endregion
|
|
235
|
+
export { aggregateColumnValue, cell_getIsAggregated, column_getAggregationFns, column_getAggregationValue, column_getAutoAggregationFn, formatAggregatedCellValue, normalizeAggregationRows, normalizeUniqueAggregationRows };
|
|
@@ -1,8 +1,7 @@
|
|
|
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
|
-
|
|
3
|
+
import { Table } from "../../types/Table.js";
|
|
4
|
+
import { TableFeatures } from "../../types/TableFeatures.js";
|
|
6
5
|
//#region src/features/row-expanding/createExpandedRowModel.d.ts
|
|
7
6
|
/**
|
|
8
7
|
* Creates a memoized expanded row model factory.
|
|
@@ -17,5 +16,4 @@ declare function createExpandedRowModel<TFeatures extends TableFeatures, TData e
|
|
|
17
16
|
*/
|
|
18
17
|
declare function expandRows<TFeatures extends TableFeatures, TData extends RowData = any>(rowModel: RowModel<TFeatures, TData>): RowModel<TFeatures, TData>;
|
|
19
18
|
//#endregion
|
|
20
|
-
export { createExpandedRowModel, expandRows };
|
|
21
|
-
//# sourceMappingURL=createExpandedRowModel.d.ts.map
|
|
19
|
+
export { createExpandedRowModel, expandRows };
|
|
@@ -14,24 +14,21 @@ function createExpandedRowModel() {
|
|
|
14
14
|
feature: "rowExpandingFeature",
|
|
15
15
|
table,
|
|
16
16
|
fnName: "table.getExpandedRowModel",
|
|
17
|
-
memoDeps: () =>
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
];
|
|
24
|
-
},
|
|
17
|
+
memoDeps: () => [
|
|
18
|
+
table.atoms.expanded?.get(),
|
|
19
|
+
table.getPreExpandedRowModel(),
|
|
20
|
+
table.options.paginateExpandedRows,
|
|
21
|
+
table.options.manualPagination
|
|
22
|
+
],
|
|
25
23
|
fn: () => _createExpandedRowModel(table)
|
|
26
24
|
});
|
|
27
25
|
};
|
|
28
26
|
}
|
|
29
27
|
function _createExpandedRowModel(table) {
|
|
30
|
-
var _table$atoms$expanded2;
|
|
31
28
|
const rowModel = table.getPreExpandedRowModel();
|
|
32
|
-
const expanded =
|
|
29
|
+
const expanded = table.atoms.expanded?.get();
|
|
33
30
|
if (!rowModel.rows.length || expanded !== true && !Object.keys(expanded ?? {}).length) return rowModel;
|
|
34
|
-
if (!table.options.paginateExpandedRows) return rowModel;
|
|
31
|
+
if (!table.options.paginateExpandedRows && !table.options.manualPagination) return rowModel;
|
|
35
32
|
return expandRows(rowModel);
|
|
36
33
|
}
|
|
37
34
|
/**
|
|
@@ -54,5 +51,4 @@ function expandRows(rowModel) {
|
|
|
54
51
|
}
|
|
55
52
|
|
|
56
53
|
//#endregion
|
|
57
|
-
export { createExpandedRowModel, expandRows };
|
|
58
|
-
//# sourceMappingURL=createExpandedRowModel.js.map
|
|
54
|
+
export { createExpandedRowModel, expandRows };
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import { TableFeature } from "../../types/TableFeatures.js";
|
|
2
|
-
|
|
3
2
|
//#region src/features/row-expanding/rowExpandingFeature.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* Feature that adds row expansion state and APIs for expandable row trees.
|
|
6
5
|
*/
|
|
7
6
|
declare const rowExpandingFeature: TableFeature;
|
|
8
7
|
//#endregion
|
|
9
|
-
export { rowExpandingFeature };
|
|
10
|
-
//# sourceMappingURL=rowExpandingFeature.d.ts.map
|
|
8
|
+
export { rowExpandingFeature };
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import { OnChangeFn, RowData, Updater } from "../../types/type-utils.js";
|
|
2
2
|
import { Row } from "../../types/Row.js";
|
|
3
|
-
import { TableFeatures } from "../../types/TableFeatures.js";
|
|
4
|
-
import { Table } from "../../types/Table.js";
|
|
5
3
|
import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
|
|
6
|
-
|
|
4
|
+
import { TableFeatures } from "../../types/TableFeatures.js";
|
|
7
5
|
//#region src/features/row-expanding/rowExpandingFeature.types.d.ts
|
|
8
6
|
type ExpandedStateList = Record<string, boolean>;
|
|
9
7
|
type ExpandedState = true | Record<string, boolean>;
|
|
@@ -32,7 +30,7 @@ interface Row_RowExpanding {
|
|
|
32
30
|
*/
|
|
33
31
|
toggleExpanded: (expanded?: boolean) => void;
|
|
34
32
|
}
|
|
35
|
-
interface TableOptions_RowExpanding<TFeatures extends TableFeatures, TData extends RowData> {
|
|
33
|
+
interface TableOptions_RowExpanding<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
36
34
|
/**
|
|
37
35
|
* Enables automatic expanded-state resets when page-altering table state changes.
|
|
38
36
|
*/
|
|
@@ -64,7 +62,7 @@ interface TableOptions_RowExpanding<TFeatures extends TableFeatures, TData exten
|
|
|
64
62
|
*/
|
|
65
63
|
paginateExpandedRows?: boolean;
|
|
66
64
|
}
|
|
67
|
-
interface Table_RowExpanding<
|
|
65
|
+
interface Table_RowExpanding<in out _TFeatures extends TableFeatures, in out _TData extends RowData> {
|
|
68
66
|
autoResetExpanded: () => void;
|
|
69
67
|
/**
|
|
70
68
|
* Checks whether at least one row can be expanded.
|
|
@@ -101,7 +99,7 @@ interface Table_RowExpanding<TFeatures extends TableFeatures, TData extends RowD
|
|
|
101
99
|
*/
|
|
102
100
|
toggleAllRowsExpanded: (expanded?: boolean) => void;
|
|
103
101
|
}
|
|
104
|
-
interface Table_RowModels_Expanded<TFeatures extends TableFeatures, TData extends RowData> {
|
|
102
|
+
interface Table_RowModels_Expanded<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
105
103
|
/**
|
|
106
104
|
* Resolves the row model after expanded rows have been flattened into view.
|
|
107
105
|
*/
|
|
@@ -111,17 +109,8 @@ interface Table_RowModels_Expanded<TFeatures extends TableFeatures, TData extend
|
|
|
111
109
|
*/
|
|
112
110
|
getPreExpandedRowModel: () => RowModel<TFeatures, TData>;
|
|
113
111
|
}
|
|
114
|
-
interface
|
|
115
|
-
/**
|
|
116
|
-
* Factory used to retrieve the expanded row model. If this function is not
|
|
117
|
-
* provided, the table will not expand rows. To use client-side expansion,
|
|
118
|
-
* pass `createExpandedRowModel()` or implement your own factory.
|
|
119
|
-
*/
|
|
120
|
-
expandedRowModel?: (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
|
|
121
|
-
}
|
|
122
|
-
interface CachedRowModel_Expanded<TFeatures extends TableFeatures, TData extends RowData> {
|
|
112
|
+
interface CachedRowModel_Expanded<in out TFeatures extends TableFeatures, in out TData extends RowData> {
|
|
123
113
|
expandedRowModel: () => RowModel<TFeatures, TData>;
|
|
124
114
|
}
|
|
125
115
|
//#endregion
|
|
126
|
-
export { CachedRowModel_Expanded,
|
|
127
|
-
//# sourceMappingURL=rowExpandingFeature.types.d.ts.map
|
|
116
|
+
export { CachedRowModel_Expanded, ExpandedState, ExpandedStateList, Row_RowExpanding, TableOptions_RowExpanding, TableState_RowExpanding, Table_RowExpanding, Table_RowModels_Expanded };
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { RowData, Updater } from "../../types/type-utils.js";
|
|
2
2
|
import { ExpandedState } from "./rowExpandingFeature.types.js";
|
|
3
3
|
import { Row } from "../../types/Row.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-expanding/rowExpandingFeature.utils.d.ts
|
|
8
7
|
/**
|
|
9
8
|
* Creates the default expanded state.
|
|
@@ -29,7 +28,7 @@ declare function getDefaultExpandedState(): ExpandedState;
|
|
|
29
28
|
* table_autoResetExpanded(table)
|
|
30
29
|
* ```
|
|
31
30
|
*/
|
|
32
|
-
declare function table_autoResetExpanded<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
31
|
+
declare function table_autoResetExpanded<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>): void;
|
|
33
32
|
/**
|
|
34
33
|
* Routes an expanded-state updater through the table's expanded change handler.
|
|
35
34
|
*
|
|
@@ -41,7 +40,7 @@ declare function table_autoResetExpanded<TFeatures extends TableFeatures, TData
|
|
|
41
40
|
* table_setExpanded(table, (old) => ({ ...old, [rowId]: true }))
|
|
42
41
|
* ```
|
|
43
42
|
*/
|
|
44
|
-
declare function table_setExpanded<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
43
|
+
declare function table_setExpanded<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>, updater: Updater<ExpandedState>): void;
|
|
45
44
|
/**
|
|
46
45
|
* Expands or collapses every row.
|
|
47
46
|
*
|
|
@@ -54,7 +53,7 @@ declare function table_setExpanded<TFeatures extends TableFeatures, TData extend
|
|
|
54
53
|
* table_toggleAllRowsExpanded(table)
|
|
55
54
|
* ```
|
|
56
55
|
*/
|
|
57
|
-
declare function table_toggleAllRowsExpanded<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
56
|
+
declare function table_toggleAllRowsExpanded<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>, expanded?: boolean): void;
|
|
58
57
|
/**
|
|
59
58
|
* Resets `expanded` to the configured initial state or feature default.
|
|
60
59
|
*
|
|
@@ -67,7 +66,7 @@ declare function table_toggleAllRowsExpanded<TFeatures extends TableFeatures, TD
|
|
|
67
66
|
* table_resetExpanded(table, true)
|
|
68
67
|
* ```
|
|
69
68
|
*/
|
|
70
|
-
declare function table_resetExpanded<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
69
|
+
declare function table_resetExpanded<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>, defaultState?: boolean): void;
|
|
71
70
|
/**
|
|
72
71
|
* Checks whether at least one pre-paginated row can expand.
|
|
73
72
|
*
|
|
@@ -79,19 +78,16 @@ declare function table_resetExpanded<TFeatures extends TableFeatures, TData exte
|
|
|
79
78
|
* const canExpand = table_getCanSomeRowsExpand(table)
|
|
80
79
|
* ```
|
|
81
80
|
*/
|
|
82
|
-
declare function table_getCanSomeRowsExpand<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
81
|
+
declare function table_getCanSomeRowsExpand<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>): boolean;
|
|
83
82
|
/**
|
|
84
83
|
* Creates an event handler that toggles all rows expanded.
|
|
85
84
|
*
|
|
86
|
-
* React-style synthetic events are persisted when present before the table state
|
|
87
|
-
* is toggled.
|
|
88
|
-
*
|
|
89
85
|
* @example
|
|
90
86
|
* ```ts
|
|
91
87
|
* const onClick = table_getToggleAllRowsExpandedHandler(table)
|
|
92
88
|
* ```
|
|
93
89
|
*/
|
|
94
|
-
declare function table_getToggleAllRowsExpandedHandler<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
90
|
+
declare function table_getToggleAllRowsExpandedHandler<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>): (_e: unknown) => void;
|
|
95
91
|
/**
|
|
96
92
|
* Checks whether any row is expanded.
|
|
97
93
|
*
|
|
@@ -102,7 +98,7 @@ declare function table_getToggleAllRowsExpandedHandler<TFeatures extends TableFe
|
|
|
102
98
|
* const someExpanded = table_getIsSomeRowsExpanded(table)
|
|
103
99
|
* ```
|
|
104
100
|
*/
|
|
105
|
-
declare function table_getIsSomeRowsExpanded<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
101
|
+
declare function table_getIsSomeRowsExpanded<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>): boolean;
|
|
106
102
|
/**
|
|
107
103
|
* Checks whether every row in the current row model is expanded.
|
|
108
104
|
*
|
|
@@ -114,7 +110,7 @@ declare function table_getIsSomeRowsExpanded<TFeatures extends TableFeatures, TD
|
|
|
114
110
|
* const allExpanded = table_getIsAllRowsExpanded(table)
|
|
115
111
|
* ```
|
|
116
112
|
*/
|
|
117
|
-
declare function table_getIsAllRowsExpanded<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
113
|
+
declare function table_getIsAllRowsExpanded<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>): boolean;
|
|
118
114
|
/**
|
|
119
115
|
* Computes the deepest expanded row id depth.
|
|
120
116
|
*
|
|
@@ -126,7 +122,7 @@ declare function table_getIsAllRowsExpanded<TFeatures extends TableFeatures, TDa
|
|
|
126
122
|
* const depth = table_getExpandedDepth(table)
|
|
127
123
|
* ```
|
|
128
124
|
*/
|
|
129
|
-
declare function table_getExpandedDepth<TFeatures extends TableFeatures, TData extends RowData>(table:
|
|
125
|
+
declare function table_getExpandedDepth<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>): number;
|
|
130
126
|
/**
|
|
131
127
|
* Expands or collapses this row.
|
|
132
128
|
*
|
|
@@ -187,5 +183,4 @@ declare function row_getIsAllParentsExpanded<TFeatures extends TableFeatures, TD
|
|
|
187
183
|
*/
|
|
188
184
|
declare function row_getToggleExpandedHandler<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>): () => void;
|
|
189
185
|
//#endregion
|
|
190
|
-
export { getDefaultExpandedState, row_getCanExpand, row_getIsAllParentsExpanded, row_getIsExpanded, row_getToggleExpandedHandler, row_toggleExpanded, table_autoResetExpanded, table_getCanSomeRowsExpand, table_getExpandedDepth, table_getIsAllRowsExpanded, table_getIsSomeRowsExpanded, table_getToggleAllRowsExpandedHandler, table_resetExpanded, table_setExpanded, table_toggleAllRowsExpanded };
|
|
191
|
-
//# sourceMappingURL=rowExpandingFeature.utils.d.ts.map
|
|
186
|
+
export { getDefaultExpandedState, row_getCanExpand, row_getIsAllParentsExpanded, row_getIsExpanded, row_getToggleExpandedHandler, row_toggleExpanded, table_autoResetExpanded, table_getCanSomeRowsExpand, table_getExpandedDepth, table_getIsAllRowsExpanded, table_getIsSomeRowsExpanded, table_getToggleAllRowsExpandedHandler, table_resetExpanded, table_setExpanded, table_toggleAllRowsExpanded };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cloneState } from "../../utils.js";
|
|
1
|
+
import { cloneState, hasOwn, makeObjectMap } from "../../utils.js";
|
|
2
2
|
|
|
3
3
|
//#region src/features/row-expanding/rowExpandingFeature.utils.ts
|
|
4
4
|
/**
|
|
@@ -13,7 +13,7 @@ import { cloneState } from "../../utils.js";
|
|
|
13
13
|
* ```
|
|
14
14
|
*/
|
|
15
15
|
function getDefaultExpandedState() {
|
|
16
|
-
return
|
|
16
|
+
return makeObjectMap();
|
|
17
17
|
}
|
|
18
18
|
/**
|
|
19
19
|
* Schedules an expanded-state reset after row-structure changes.
|
|
@@ -42,8 +42,7 @@ function table_autoResetExpanded(table) {
|
|
|
42
42
|
* ```
|
|
43
43
|
*/
|
|
44
44
|
function table_setExpanded(table, updater) {
|
|
45
|
-
|
|
46
|
-
(_table$options$onExpa = (_table$options = table.options).onExpandedChange) === null || _table$options$onExpa === void 0 || _table$options$onExpa.call(_table$options, updater);
|
|
45
|
+
table.options.onExpandedChange?.(updater);
|
|
47
46
|
}
|
|
48
47
|
/**
|
|
49
48
|
* Expands or collapses every row.
|
|
@@ -59,7 +58,7 @@ function table_setExpanded(table, updater) {
|
|
|
59
58
|
*/
|
|
60
59
|
function table_toggleAllRowsExpanded(table, expanded) {
|
|
61
60
|
if (expanded ?? !table_getIsAllRowsExpanded(table)) table_setExpanded(table, true);
|
|
62
|
-
else table_setExpanded(table,
|
|
61
|
+
else table_setExpanded(table, makeObjectMap());
|
|
63
62
|
}
|
|
64
63
|
/**
|
|
65
64
|
* Resets `expanded` to the configured initial state or feature default.
|
|
@@ -74,7 +73,8 @@ function table_toggleAllRowsExpanded(table, expanded) {
|
|
|
74
73
|
* ```
|
|
75
74
|
*/
|
|
76
75
|
function table_resetExpanded(table, defaultState) {
|
|
77
|
-
|
|
76
|
+
const initialExpanded = table.initialState.expanded;
|
|
77
|
+
table_setExpanded(table, defaultState ? makeObjectMap() : initialExpanded === true ? true : Object.assign(makeObjectMap(), cloneState(initialExpanded ?? {})));
|
|
78
78
|
}
|
|
79
79
|
/**
|
|
80
80
|
* Checks whether at least one pre-paginated row can expand.
|
|
@@ -93,18 +93,13 @@ function table_getCanSomeRowsExpand(table) {
|
|
|
93
93
|
/**
|
|
94
94
|
* Creates an event handler that toggles all rows expanded.
|
|
95
95
|
*
|
|
96
|
-
* React-style synthetic events are persisted when present before the table state
|
|
97
|
-
* is toggled.
|
|
98
|
-
*
|
|
99
96
|
* @example
|
|
100
97
|
* ```ts
|
|
101
98
|
* const onClick = table_getToggleAllRowsExpandedHandler(table)
|
|
102
99
|
* ```
|
|
103
100
|
*/
|
|
104
101
|
function table_getToggleAllRowsExpandedHandler(table) {
|
|
105
|
-
return (
|
|
106
|
-
var _persist;
|
|
107
|
-
(_persist = e.persist) === null || _persist === void 0 || _persist.call(e);
|
|
102
|
+
return (_e) => {
|
|
108
103
|
table_toggleAllRowsExpanded(table);
|
|
109
104
|
};
|
|
110
105
|
}
|
|
@@ -119,8 +114,7 @@ function table_getToggleAllRowsExpandedHandler(table) {
|
|
|
119
114
|
* ```
|
|
120
115
|
*/
|
|
121
116
|
function table_getIsSomeRowsExpanded(table) {
|
|
122
|
-
|
|
123
|
-
const expanded = ((_table$atoms$expanded = table.atoms.expanded) === null || _table$atoms$expanded === void 0 ? void 0 : _table$atoms$expanded.get()) ?? {};
|
|
117
|
+
const expanded = table.atoms.expanded?.get() ?? {};
|
|
124
118
|
return expanded === true || Object.values(expanded).some(Boolean);
|
|
125
119
|
}
|
|
126
120
|
/**
|
|
@@ -135,8 +129,7 @@ function table_getIsSomeRowsExpanded(table) {
|
|
|
135
129
|
* ```
|
|
136
130
|
*/
|
|
137
131
|
function table_getIsAllRowsExpanded(table) {
|
|
138
|
-
|
|
139
|
-
const expanded = ((_table$atoms$expanded2 = table.atoms.expanded) === null || _table$atoms$expanded2 === void 0 ? void 0 : _table$atoms$expanded2.get()) ?? {};
|
|
132
|
+
const expanded = table.atoms.expanded?.get() ?? {};
|
|
140
133
|
if (expanded === true) return true;
|
|
141
134
|
if (!Object.keys(expanded).length) return false;
|
|
142
135
|
if (table.getRowModel().flatRows.some((row) => !row_getIsExpanded(row))) return false;
|
|
@@ -154,9 +147,8 @@ function table_getIsAllRowsExpanded(table) {
|
|
|
154
147
|
* ```
|
|
155
148
|
*/
|
|
156
149
|
function table_getExpandedDepth(table) {
|
|
157
|
-
var _table$atoms$expanded3, _table$atoms$expanded4;
|
|
158
150
|
let maxDepth = 0;
|
|
159
|
-
(
|
|
151
|
+
(table.atoms.expanded?.get() === true ? Object.keys(table.getRowModel().rowsById) : Object.keys(table.atoms.expanded?.get() ?? {})).forEach((id) => {
|
|
160
152
|
const splitId = id.split(".");
|
|
161
153
|
maxDepth = Math.max(maxDepth, splitId.length);
|
|
162
154
|
});
|
|
@@ -176,19 +168,24 @@ function table_getExpandedDepth(table) {
|
|
|
176
168
|
*/
|
|
177
169
|
function row_toggleExpanded(row, expanded) {
|
|
178
170
|
table_setExpanded(row.table, (old) => {
|
|
179
|
-
const exists = old === true ? true :
|
|
180
|
-
let oldExpanded =
|
|
171
|
+
const exists = old === true ? true : isExpandedRowId(old, row.id);
|
|
172
|
+
let oldExpanded = makeObjectMap();
|
|
181
173
|
if (old === true) Object.keys(row.table.getRowModel().rowsById).forEach((rowId) => {
|
|
182
174
|
oldExpanded[rowId] = true;
|
|
183
175
|
});
|
|
184
|
-
else oldExpanded = old;
|
|
176
|
+
else oldExpanded = Object.assign(makeObjectMap(), old);
|
|
185
177
|
expanded = expanded ?? !exists;
|
|
186
|
-
if (!exists && expanded)
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
}
|
|
178
|
+
if (!exists && expanded) {
|
|
179
|
+
oldExpanded[row.id] = true;
|
|
180
|
+
return oldExpanded;
|
|
181
|
+
}
|
|
190
182
|
if (exists && !expanded) {
|
|
191
|
-
const
|
|
183
|
+
const rest = makeObjectMap();
|
|
184
|
+
const rowIds = Object.keys(oldExpanded);
|
|
185
|
+
for (let i = 0; i < rowIds.length; i++) {
|
|
186
|
+
const rowId = rowIds[i];
|
|
187
|
+
if (rowId !== row.id && oldExpanded[rowId]) rest[rowId] = true;
|
|
188
|
+
}
|
|
192
189
|
return rest;
|
|
193
190
|
}
|
|
194
191
|
return old;
|
|
@@ -206,9 +203,11 @@ function row_toggleExpanded(row, expanded) {
|
|
|
206
203
|
* ```
|
|
207
204
|
*/
|
|
208
205
|
function row_getIsExpanded(row) {
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
206
|
+
const expanded = row.table.atoms.expanded?.get() ?? {};
|
|
207
|
+
return !!(row.table.options.getIsRowExpanded?.(row) ?? (expanded === true || isExpandedRowId(expanded, row.id)));
|
|
208
|
+
}
|
|
209
|
+
function isExpandedRowId(expanded, rowId) {
|
|
210
|
+
return !!(expanded && expanded !== true && hasOwn(expanded, rowId) && expanded[rowId]);
|
|
212
211
|
}
|
|
213
212
|
/**
|
|
214
213
|
* Checks whether this row can be expanded.
|
|
@@ -222,8 +221,7 @@ function row_getIsExpanded(row) {
|
|
|
222
221
|
* ```
|
|
223
222
|
*/
|
|
224
223
|
function row_getCanExpand(row) {
|
|
225
|
-
|
|
226
|
-
return ((_row$table$options$ge2 = (_row$table$options2 = row.table.options).getRowCanExpand) === null || _row$table$options$ge2 === void 0 ? void 0 : _row$table$options$ge2.call(_row$table$options2, row)) ?? ((row.table.options.enableExpanding ?? true) && !!row.subRows.length);
|
|
224
|
+
return row.table.options.getRowCanExpand?.(row) ?? ((row.table.options.enableExpanding ?? true) && !!row.subRows.length);
|
|
227
225
|
}
|
|
228
226
|
/**
|
|
229
227
|
* Checks whether every ancestor of this row is expanded.
|
|
@@ -263,5 +261,4 @@ function row_getToggleExpandedHandler(row) {
|
|
|
263
261
|
}
|
|
264
262
|
|
|
265
263
|
//#endregion
|
|
266
|
-
export { getDefaultExpandedState, row_getCanExpand, row_getIsAllParentsExpanded, row_getIsExpanded, row_getToggleExpandedHandler, row_toggleExpanded, table_autoResetExpanded, table_getCanSomeRowsExpand, table_getExpandedDepth, table_getIsAllRowsExpanded, table_getIsSomeRowsExpanded, table_getToggleAllRowsExpandedHandler, table_resetExpanded, table_setExpanded, table_toggleAllRowsExpanded };
|
|
267
|
-
//# sourceMappingURL=rowExpandingFeature.utils.js.map
|
|
264
|
+
export { getDefaultExpandedState, row_getCanExpand, row_getIsAllParentsExpanded, row_getIsExpanded, row_getToggleExpandedHandler, row_toggleExpanded, table_autoResetExpanded, table_getCanSomeRowsExpand, table_getExpandedDepth, table_getIsAllRowsExpanded, table_getIsSomeRowsExpanded, table_getToggleAllRowsExpandedHandler, table_resetExpanded, table_setExpanded, table_toggleAllRowsExpanded };
|
|
@@ -1,8 +1,7 @@
|
|
|
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
|
-
|
|
3
|
+
import { Table } from "../../types/Table.js";
|
|
4
|
+
import { TableFeatures } from "../../types/TableFeatures.js";
|
|
6
5
|
//#region src/features/row-pagination/createPaginatedRowModel.d.ts
|
|
7
6
|
/**
|
|
8
7
|
* Creates a memoized paginated row model factory.
|
|
@@ -11,5 +10,4 @@ import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
|
|
|
11
10
|
*/
|
|
12
11
|
declare function createPaginatedRowModel<TFeatures extends TableFeatures, TData extends RowData = any>(): (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
|
|
13
12
|
//#endregion
|
|
14
|
-
export { createPaginatedRowModel };
|
|
15
|
-
//# sourceMappingURL=createPaginatedRowModel.d.ts.map
|
|
13
|
+
export { createPaginatedRowModel };
|