@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
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import {} from '../../utils'
|
|
2
|
-
import type { Table_Internal } from '../../types/Table'
|
|
3
|
-
import type { CellData, RowData } from '../../types/type-utils'
|
|
4
|
-
import type { TableFeatures } from '../../types/TableFeatures'
|
|
5
|
-
import type {
|
|
6
|
-
AccessorFn,
|
|
7
|
-
ColumnDef,
|
|
8
|
-
ColumnDefResolved,
|
|
9
|
-
} from '../../types/ColumnDef'
|
|
10
|
-
import type { Column } from '../../types/Column'
|
|
11
|
-
import type { Column_CoreProperties } from './coreColumnsFeature.types'
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Creates or retrieves the column prototype for a table.
|
|
15
|
-
* The prototype is cached on the table and shared by all column instances.
|
|
16
|
-
*/
|
|
17
|
-
function getColumnPrototype<
|
|
18
|
-
TFeatures extends TableFeatures,
|
|
19
|
-
TData extends RowData,
|
|
20
|
-
>(table: Table_Internal<TFeatures, TData>): object {
|
|
21
|
-
if (!table._columnPrototype) {
|
|
22
|
-
table._columnPrototype = { table }
|
|
23
|
-
const features = Object.values(table._features)
|
|
24
|
-
for (let i = 0; i < features.length; i++) {
|
|
25
|
-
features[i]!.assignColumnPrototype?.(table._columnPrototype, table)
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
return table._columnPrototype
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* Constructs a column instance from normalized table internals.
|
|
33
|
-
*
|
|
34
|
-
* This wires core properties, feature prototype APIs, and instance data used by table rendering and row-model operations.
|
|
35
|
-
*/
|
|
36
|
-
export function constructColumn<
|
|
37
|
-
TFeatures extends TableFeatures,
|
|
38
|
-
TData extends RowData,
|
|
39
|
-
TValue extends CellData = CellData,
|
|
40
|
-
>(
|
|
41
|
-
table: Table_Internal<TFeatures, TData>,
|
|
42
|
-
columnDef: ColumnDef<TFeatures, TData, TValue>,
|
|
43
|
-
depth: number,
|
|
44
|
-
parent?: Column<TFeatures, TData, TValue>,
|
|
45
|
-
): Column<TFeatures, TData, TValue> {
|
|
46
|
-
const defaultColumn = table.getDefaultColumnDef()
|
|
47
|
-
|
|
48
|
-
const resolvedColumnDef = {
|
|
49
|
-
...defaultColumn,
|
|
50
|
-
...columnDef,
|
|
51
|
-
} as ColumnDefResolved<{}, TData, TValue>
|
|
52
|
-
|
|
53
|
-
const accessorKey = resolvedColumnDef.accessorKey
|
|
54
|
-
|
|
55
|
-
const id =
|
|
56
|
-
resolvedColumnDef.id ??
|
|
57
|
-
(accessorKey ? accessorKey.replaceAll('.', '_') : undefined) ??
|
|
58
|
-
(typeof resolvedColumnDef.header === 'string'
|
|
59
|
-
? resolvedColumnDef.header
|
|
60
|
-
: undefined)
|
|
61
|
-
|
|
62
|
-
let accessorFn: AccessorFn<TData, TValue> | undefined
|
|
63
|
-
|
|
64
|
-
if (resolvedColumnDef.accessorFn) {
|
|
65
|
-
accessorFn = resolvedColumnDef.accessorFn
|
|
66
|
-
} else if (accessorKey) {
|
|
67
|
-
// Support deep accessor keys
|
|
68
|
-
if (accessorKey.includes('.')) {
|
|
69
|
-
const keys = accessorKey.split('.')
|
|
70
|
-
accessorFn = (originalRow: TData) => {
|
|
71
|
-
let result = originalRow as Record<string, any> | undefined
|
|
72
|
-
|
|
73
|
-
for (let i = 0; i < keys.length; i++) {
|
|
74
|
-
const key = keys[i]!
|
|
75
|
-
result = result?.[key]
|
|
76
|
-
if (process.env.NODE_ENV === 'development' && result === undefined) {
|
|
77
|
-
console.warn(
|
|
78
|
-
`"${key}" in deeply nested key "${accessorKey}" returned undefined.`,
|
|
79
|
-
)
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
return result as TValue
|
|
84
|
-
}
|
|
85
|
-
} else {
|
|
86
|
-
accessorFn = (originalRow: TData) =>
|
|
87
|
-
(originalRow as any)[resolvedColumnDef.accessorKey]
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
if (!id) {
|
|
92
|
-
if (process.env.NODE_ENV === 'development') {
|
|
93
|
-
throw new Error(
|
|
94
|
-
resolvedColumnDef.accessorFn
|
|
95
|
-
? `coreColumnsFeature require an id when using an accessorFn`
|
|
96
|
-
: `coreColumnsFeature require an id when using a non-string header`,
|
|
97
|
-
)
|
|
98
|
-
}
|
|
99
|
-
throw new Error()
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
// Create column with shared prototype for memory efficiency
|
|
103
|
-
const columnPrototype = getColumnPrototype(table)
|
|
104
|
-
const column = Object.create(columnPrototype) as Column_CoreProperties<
|
|
105
|
-
TFeatures,
|
|
106
|
-
TData,
|
|
107
|
-
TValue
|
|
108
|
-
>
|
|
109
|
-
|
|
110
|
-
// Only assign instance-specific properties
|
|
111
|
-
column.accessorFn = accessorFn
|
|
112
|
-
column.columnDef = resolvedColumnDef as ColumnDef<TFeatures, TData, TValue>
|
|
113
|
-
column.columns = []
|
|
114
|
-
column.depth = depth
|
|
115
|
-
column.id = `${String(id)}`
|
|
116
|
-
column.parent = parent
|
|
117
|
-
|
|
118
|
-
return column as Column<TFeatures, TData, TValue>
|
|
119
|
-
}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { assignPrototypeAPIs, assignTableAPIs } from '../../utils'
|
|
2
|
-
import {
|
|
3
|
-
column_getFlatColumns,
|
|
4
|
-
column_getLeafColumns,
|
|
5
|
-
table_getAllColumns,
|
|
6
|
-
table_getAllFlatColumns,
|
|
7
|
-
table_getAllFlatColumnsById,
|
|
8
|
-
table_getAllLeafColumns,
|
|
9
|
-
table_getAllLeafColumnsById,
|
|
10
|
-
table_getColumn,
|
|
11
|
-
table_getDefaultColumnDef,
|
|
12
|
-
} from './coreColumnsFeature.utils'
|
|
13
|
-
import type { TableFeature } from '../../types/TableFeatures'
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Core feature that builds the column tree and exposes table/column column APIs.
|
|
17
|
-
*/
|
|
18
|
-
export const coreColumnsFeature: TableFeature = {
|
|
19
|
-
assignColumnPrototype: (prototype, table) => {
|
|
20
|
-
assignPrototypeAPIs('coreColumnsFeature', prototype, table, {
|
|
21
|
-
column_getFlatColumns: {
|
|
22
|
-
fn: (column) => column_getFlatColumns(column),
|
|
23
|
-
memoDeps: (column) => [column.table.options.columns],
|
|
24
|
-
},
|
|
25
|
-
column_getLeafColumns: {
|
|
26
|
-
fn: (column) => column_getLeafColumns(column),
|
|
27
|
-
memoDeps: (column) => [
|
|
28
|
-
column.table.atoms.columnOrder?.get(),
|
|
29
|
-
column.table.atoms.grouping?.get(),
|
|
30
|
-
column.table.options.columns,
|
|
31
|
-
column.table.options.groupedColumnMode,
|
|
32
|
-
],
|
|
33
|
-
},
|
|
34
|
-
})
|
|
35
|
-
},
|
|
36
|
-
|
|
37
|
-
constructTableAPIs: (table) => {
|
|
38
|
-
assignTableAPIs('coreColumnsFeature', table, {
|
|
39
|
-
table_getDefaultColumnDef: {
|
|
40
|
-
fn: () => table_getDefaultColumnDef(table),
|
|
41
|
-
memoDeps: () => [table.options.defaultColumn],
|
|
42
|
-
},
|
|
43
|
-
table_getAllColumns: {
|
|
44
|
-
fn: () => table_getAllColumns(table),
|
|
45
|
-
memoDeps: () => [table.options.columns],
|
|
46
|
-
},
|
|
47
|
-
table_getAllFlatColumns: {
|
|
48
|
-
fn: () => table_getAllFlatColumns(table),
|
|
49
|
-
memoDeps: () => [table.options.columns],
|
|
50
|
-
},
|
|
51
|
-
table_getAllFlatColumnsById: {
|
|
52
|
-
fn: () => table_getAllFlatColumnsById(table),
|
|
53
|
-
memoDeps: () => [table.options.columns],
|
|
54
|
-
},
|
|
55
|
-
table_getAllLeafColumns: {
|
|
56
|
-
fn: () => table_getAllLeafColumns(table),
|
|
57
|
-
memoDeps: () => [
|
|
58
|
-
table.atoms.columnOrder?.get(),
|
|
59
|
-
table.atoms.grouping?.get(),
|
|
60
|
-
table.options.columns,
|
|
61
|
-
table.options.groupedColumnMode,
|
|
62
|
-
],
|
|
63
|
-
},
|
|
64
|
-
table_getAllLeafColumnsById: {
|
|
65
|
-
fn: () => table_getAllLeafColumnsById(table),
|
|
66
|
-
memoDeps: () => [table.getAllLeafColumns()],
|
|
67
|
-
},
|
|
68
|
-
table_getColumn: {
|
|
69
|
-
fn: (columnId) => table_getColumn(table, columnId),
|
|
70
|
-
},
|
|
71
|
-
})
|
|
72
|
-
},
|
|
73
|
-
}
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import type { Table_Internal } from '../../types/Table'
|
|
2
|
-
import type { CellData, RowData } from '../../types/type-utils'
|
|
3
|
-
import type { TableFeatures } from '../../types/TableFeatures'
|
|
4
|
-
import type { AccessorFn, ColumnDef } from '../../types/ColumnDef'
|
|
5
|
-
import type { Column } from '../../types/Column'
|
|
6
|
-
|
|
7
|
-
export interface Column_CoreProperties<
|
|
8
|
-
TFeatures extends TableFeatures,
|
|
9
|
-
TData extends RowData,
|
|
10
|
-
TValue extends CellData = CellData,
|
|
11
|
-
> {
|
|
12
|
-
/**
|
|
13
|
-
* The resolved accessor function to use when extracting the value for the column from each row. Will only be defined if the column def has a valid accessor key or function defined.
|
|
14
|
-
*/
|
|
15
|
-
accessorFn?: AccessorFn<TData, TValue>
|
|
16
|
-
/**
|
|
17
|
-
* The original column def used to create the column.
|
|
18
|
-
*/
|
|
19
|
-
columnDef: ColumnDef<TFeatures, TData, TValue>
|
|
20
|
-
/**
|
|
21
|
-
* The child column (if the column is a group column). Will be an empty array if the column is not a group column.
|
|
22
|
-
*/
|
|
23
|
-
columns: Array<Column<TFeatures, TData, TValue>>
|
|
24
|
-
/**
|
|
25
|
-
* The depth of the column (if grouped) relative to the root column def array.
|
|
26
|
-
*/
|
|
27
|
-
depth: number
|
|
28
|
-
/**
|
|
29
|
-
* The resolved unique identifier for the column resolved in this priority:
|
|
30
|
-
- A manual `id` property from the column def
|
|
31
|
-
- The accessor key from the column def
|
|
32
|
-
- The header string from the column def
|
|
33
|
-
*/
|
|
34
|
-
id: string
|
|
35
|
-
/**
|
|
36
|
-
* The parent column for this column. Will be undefined if this is a root column.
|
|
37
|
-
*/
|
|
38
|
-
parent?: Column<TFeatures, TData, TValue>
|
|
39
|
-
/**
|
|
40
|
-
* Reference to the parent table instance.
|
|
41
|
-
*/
|
|
42
|
-
table: Table_Internal<TFeatures, TData>
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export interface Column_Column<
|
|
46
|
-
TFeatures extends TableFeatures,
|
|
47
|
-
TData extends RowData,
|
|
48
|
-
TValue extends CellData = CellData,
|
|
49
|
-
> extends Column_CoreProperties<TFeatures, TData, TValue> {
|
|
50
|
-
/**
|
|
51
|
-
* Flattens this column and every descendant column into a single array.
|
|
52
|
-
*/
|
|
53
|
-
getFlatColumns: () => Array<Column<TFeatures, TData, TValue>>
|
|
54
|
-
/**
|
|
55
|
-
* Collects the terminal leaf columns below this column, or the column itself
|
|
56
|
-
* when it has no children.
|
|
57
|
-
*/
|
|
58
|
-
getLeafColumns: () => Array<Column<TFeatures, TData, TValue>>
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
export interface TableOptions_Columns<
|
|
62
|
-
TFeatures extends TableFeatures,
|
|
63
|
-
TData extends RowData,
|
|
64
|
-
TValue extends CellData = CellData,
|
|
65
|
-
> {
|
|
66
|
-
/**
|
|
67
|
-
* The array of column defs to use for the table.
|
|
68
|
-
*/
|
|
69
|
-
columns: ReadonlyArray<ColumnDef<TFeatures, TData, TValue>>
|
|
70
|
-
/**
|
|
71
|
-
* Default column options to use for all column defs supplied to the table.
|
|
72
|
-
*/
|
|
73
|
-
defaultColumn?: Partial<ColumnDef<TFeatures, TData, TValue>>
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
export interface Table_Columns<
|
|
77
|
-
TFeatures extends TableFeatures,
|
|
78
|
-
TData extends RowData,
|
|
79
|
-
> {
|
|
80
|
-
/**
|
|
81
|
-
* Returns a map of all flat columns by their ID.
|
|
82
|
-
*/
|
|
83
|
-
getAllFlatColumnsById: () => Record<string, Column<TFeatures, TData, unknown>>
|
|
84
|
-
/**
|
|
85
|
-
* Resolves built-in, feature-level, and user-defined default column options.
|
|
86
|
-
*/
|
|
87
|
-
getDefaultColumnDef: () => Partial<ColumnDef<TFeatures, TData, unknown>>
|
|
88
|
-
/**
|
|
89
|
-
* Normalizes `options.columns` into the table's nested column hierarchy.
|
|
90
|
-
*/
|
|
91
|
-
getAllColumns: () => Array<Column<TFeatures, TData, unknown>>
|
|
92
|
-
/**
|
|
93
|
-
* Flattens the nested column hierarchy, including parent/group columns.
|
|
94
|
-
*/
|
|
95
|
-
getAllFlatColumns: () => Array<Column<TFeatures, TData, unknown>>
|
|
96
|
-
/**
|
|
97
|
-
* Collects all terminal leaf columns, excluding parent/group columns.
|
|
98
|
-
*/
|
|
99
|
-
getAllLeafColumns: () => Array<Column<TFeatures, TData, unknown>>
|
|
100
|
-
/**
|
|
101
|
-
* Returns a map of all leaf-node columns by their ID. This does not include parent columns.
|
|
102
|
-
*/
|
|
103
|
-
getAllLeafColumnsById: () => Record<string, Column<TFeatures, TData, unknown>>
|
|
104
|
-
/**
|
|
105
|
-
* Returns a single column by its ID.
|
|
106
|
-
*/
|
|
107
|
-
getColumn: (columnId: string) => Column<TFeatures, TData, unknown> | undefined
|
|
108
|
-
}
|
|
@@ -1,275 +0,0 @@
|
|
|
1
|
-
import { callMemoOrStaticFn } from '../../utils'
|
|
2
|
-
import { table_getOrderColumnsFn } from '../../features/column-ordering/columnOrderingFeature.utils'
|
|
3
|
-
import { constructColumn } from './constructColumn'
|
|
4
|
-
import type { Table_Internal } from '../../types/Table'
|
|
5
|
-
import type { CellData, RowData } from '../../types/type-utils'
|
|
6
|
-
import type { TableFeatures } from '../../types/TableFeatures'
|
|
7
|
-
import type {
|
|
8
|
-
ColumnDef,
|
|
9
|
-
ColumnDefResolved,
|
|
10
|
-
GroupColumnDef,
|
|
11
|
-
} from '../../types/ColumnDef'
|
|
12
|
-
import type { Column } from '../../types/Column'
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Flattens this column and every descendant column into a single array.
|
|
16
|
-
*
|
|
17
|
-
* Group columns appear before their child columns, which matches the normalized
|
|
18
|
-
* column hierarchy produced during table construction.
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* ```ts
|
|
22
|
-
* const flatColumns = column_getFlatColumns(column)
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
export function column_getFlatColumns<
|
|
26
|
-
TFeatures extends TableFeatures,
|
|
27
|
-
TData extends RowData,
|
|
28
|
-
TValue extends CellData = CellData,
|
|
29
|
-
>(
|
|
30
|
-
column: Column<TFeatures, TData, TValue>,
|
|
31
|
-
): Array<Column<TFeatures, TData, TValue>> {
|
|
32
|
-
return [column, ...column.columns.flatMap((col) => col.getFlatColumns())]
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Collects the terminal leaf columns below this column.
|
|
37
|
-
*
|
|
38
|
-
* Group columns return their ordered descendants. Non-group columns return an
|
|
39
|
-
* array containing only the column itself.
|
|
40
|
-
*
|
|
41
|
-
* @example
|
|
42
|
-
* ```ts
|
|
43
|
-
* const leafColumns = column_getLeafColumns(column)
|
|
44
|
-
* ```
|
|
45
|
-
*/
|
|
46
|
-
export function column_getLeafColumns<
|
|
47
|
-
TFeatures extends TableFeatures,
|
|
48
|
-
TData extends RowData,
|
|
49
|
-
TValue extends CellData = CellData,
|
|
50
|
-
>(
|
|
51
|
-
column: Column<TFeatures, TData, TValue>,
|
|
52
|
-
): Array<Column<TFeatures, TData, TValue>> {
|
|
53
|
-
if (column.columns.length) {
|
|
54
|
-
const leafColumns = column.columns.flatMap(
|
|
55
|
-
(col) => col.getLeafColumns(), // recursive
|
|
56
|
-
)
|
|
57
|
-
|
|
58
|
-
return callMemoOrStaticFn(
|
|
59
|
-
column.table,
|
|
60
|
-
'getOrderColumns',
|
|
61
|
-
table_getOrderColumnsFn,
|
|
62
|
-
)(leafColumns as any) as any
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
return [column]
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* Merges built-in, feature, and user default column definitions.
|
|
70
|
-
*
|
|
71
|
-
* Built-in defaults provide a header and fallback cell renderer, feature
|
|
72
|
-
* defaults can add feature-specific column options, and
|
|
73
|
-
* `options.defaultColumn` wins last.
|
|
74
|
-
*
|
|
75
|
-
* @example
|
|
76
|
-
* ```ts
|
|
77
|
-
* const defaultColumn = table_getDefaultColumnDef(table)
|
|
78
|
-
* ```
|
|
79
|
-
*/
|
|
80
|
-
export function table_getDefaultColumnDef<
|
|
81
|
-
TFeatures extends TableFeatures,
|
|
82
|
-
TData extends RowData,
|
|
83
|
-
>(
|
|
84
|
-
table: Table_Internal<TFeatures, TData>,
|
|
85
|
-
): Partial<ColumnDef<TFeatures, TData, unknown>> {
|
|
86
|
-
return {
|
|
87
|
-
header: (props) => {
|
|
88
|
-
const resolvedColumnDef = props.header.column
|
|
89
|
-
.columnDef as ColumnDefResolved<{}, TData>
|
|
90
|
-
|
|
91
|
-
if (resolvedColumnDef.accessorKey) {
|
|
92
|
-
return resolvedColumnDef.accessorKey
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
if (resolvedColumnDef.accessorFn) {
|
|
96
|
-
return resolvedColumnDef.id
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
return null
|
|
100
|
-
},
|
|
101
|
-
cell: (props) => props.renderValue<any>()?.toString?.() ?? null,
|
|
102
|
-
...Object.values(table._features).reduce((obj, feature) => {
|
|
103
|
-
return Object.assign(obj, feature.getDefaultColumnDef?.())
|
|
104
|
-
}, {}),
|
|
105
|
-
...table.options.defaultColumn,
|
|
106
|
-
} as Partial<ColumnDef<TFeatures, TData, unknown>>
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
/**
|
|
110
|
-
* Normalizes `options.columns` into the table's nested column tree.
|
|
111
|
-
*
|
|
112
|
-
* Each column definition is constructed with its parent and depth, and group
|
|
113
|
-
* column children are recursively constructed.
|
|
114
|
-
*
|
|
115
|
-
* @example
|
|
116
|
-
* ```ts
|
|
117
|
-
* const columns = table_getAllColumns(table)
|
|
118
|
-
* ```
|
|
119
|
-
*/
|
|
120
|
-
export function table_getAllColumns<
|
|
121
|
-
TFeatures extends TableFeatures,
|
|
122
|
-
TData extends RowData,
|
|
123
|
-
>(
|
|
124
|
-
table: Table_Internal<TFeatures, TData>,
|
|
125
|
-
): Array<Column<TFeatures, TData, unknown>> {
|
|
126
|
-
const recurseColumns = (
|
|
127
|
-
colDefs: ReadonlyArray<ColumnDef<TFeatures, TData, unknown>>,
|
|
128
|
-
parent?: Column<TFeatures, TData, unknown>,
|
|
129
|
-
depth = 0,
|
|
130
|
-
): Array<Column<TFeatures, TData, unknown>> => {
|
|
131
|
-
return colDefs.map((columnDef) => {
|
|
132
|
-
const column = constructColumn(table, columnDef, depth, parent)
|
|
133
|
-
|
|
134
|
-
const groupingColumnDef = columnDef as GroupColumnDef<
|
|
135
|
-
TFeatures,
|
|
136
|
-
TData,
|
|
137
|
-
unknown
|
|
138
|
-
>
|
|
139
|
-
|
|
140
|
-
column.columns = groupingColumnDef.columns
|
|
141
|
-
? recurseColumns(groupingColumnDef.columns, column, depth + 1)
|
|
142
|
-
: []
|
|
143
|
-
|
|
144
|
-
return column
|
|
145
|
-
})
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
return recurseColumns(table.options.columns)
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
/**
|
|
152
|
-
* Flattens every table column, including group columns and leaf columns.
|
|
153
|
-
*
|
|
154
|
-
* Use this when parent/group columns must be included in addition to data leaf
|
|
155
|
-
* columns.
|
|
156
|
-
*
|
|
157
|
-
* @example
|
|
158
|
-
* ```ts
|
|
159
|
-
* const flatColumns = table_getAllFlatColumns(table)
|
|
160
|
-
* ```
|
|
161
|
-
*/
|
|
162
|
-
export function table_getAllFlatColumns<
|
|
163
|
-
TFeatures extends TableFeatures,
|
|
164
|
-
TData extends RowData,
|
|
165
|
-
>(
|
|
166
|
-
table: Table_Internal<TFeatures, TData>,
|
|
167
|
-
): Array<Column<TFeatures, TData, unknown>> {
|
|
168
|
-
return table.getAllColumns().flatMap((column) => column.getFlatColumns())
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
/**
|
|
172
|
-
* Builds an id lookup for every flat column in the table.
|
|
173
|
-
*
|
|
174
|
-
* Group columns and leaf columns are included. Later columns with the same id
|
|
175
|
-
* replace earlier entries.
|
|
176
|
-
*
|
|
177
|
-
* @example
|
|
178
|
-
* ```ts
|
|
179
|
-
* const columnsById = table_getAllFlatColumnsById(table)
|
|
180
|
-
* ```
|
|
181
|
-
*/
|
|
182
|
-
export function table_getAllFlatColumnsById<
|
|
183
|
-
TFeatures extends TableFeatures,
|
|
184
|
-
TData extends RowData,
|
|
185
|
-
>(
|
|
186
|
-
table: Table_Internal<TFeatures, TData>,
|
|
187
|
-
): Record<string, Column<TFeatures, TData, unknown>> {
|
|
188
|
-
const result: Record<string, Column<TFeatures, TData, unknown>> = {}
|
|
189
|
-
const flatColumns = table.getAllFlatColumns()
|
|
190
|
-
for (let i = 0; i < flatColumns.length; i++) {
|
|
191
|
-
const column = flatColumns[i]!
|
|
192
|
-
result[column.id] = column
|
|
193
|
-
}
|
|
194
|
-
return result
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
/**
|
|
198
|
-
* Collects all terminal leaf columns in their current table order.
|
|
199
|
-
*
|
|
200
|
-
* Column ordering features can reorder the collected leaves before the result
|
|
201
|
-
* is returned.
|
|
202
|
-
*
|
|
203
|
-
* @example
|
|
204
|
-
* ```ts
|
|
205
|
-
* const leafColumns = table_getAllLeafColumns(table)
|
|
206
|
-
* ```
|
|
207
|
-
*/
|
|
208
|
-
export function table_getAllLeafColumns<
|
|
209
|
-
TFeatures extends TableFeatures,
|
|
210
|
-
TData extends RowData,
|
|
211
|
-
>(
|
|
212
|
-
table: Table_Internal<TFeatures, TData>,
|
|
213
|
-
): Array<Column<TFeatures, TData, unknown>> {
|
|
214
|
-
const leafColumns = table.getAllColumns().flatMap(
|
|
215
|
-
(c) => c.getLeafColumns(), // recursive
|
|
216
|
-
)
|
|
217
|
-
return callMemoOrStaticFn(
|
|
218
|
-
table,
|
|
219
|
-
'getOrderColumns',
|
|
220
|
-
table_getOrderColumnsFn,
|
|
221
|
-
)(leafColumns)
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
/**
|
|
225
|
-
* Builds an id lookup for terminal leaf columns only.
|
|
226
|
-
*
|
|
227
|
-
* Parent/group columns are excluded, making this lookup appropriate for row
|
|
228
|
-
* cells and feature state keyed by data columns.
|
|
229
|
-
*
|
|
230
|
-
* @example
|
|
231
|
-
* ```ts
|
|
232
|
-
* const leavesById = table_getAllLeafColumnsById(table)
|
|
233
|
-
* ```
|
|
234
|
-
*/
|
|
235
|
-
export function table_getAllLeafColumnsById<
|
|
236
|
-
TFeatures extends TableFeatures,
|
|
237
|
-
TData extends RowData,
|
|
238
|
-
>(
|
|
239
|
-
table: Table_Internal<TFeatures, TData>,
|
|
240
|
-
): Record<string, Column<TFeatures, TData, unknown>> {
|
|
241
|
-
const result: Record<string, Column<TFeatures, TData, unknown>> = {}
|
|
242
|
-
const leafColumns = table.getAllLeafColumns()
|
|
243
|
-
for (let i = 0; i < leafColumns.length; i++) {
|
|
244
|
-
const column = leafColumns[i]!
|
|
245
|
-
result[column.id] = column
|
|
246
|
-
}
|
|
247
|
-
return result
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
/**
|
|
251
|
-
* Looks up a column by id from the flat column map.
|
|
252
|
-
*
|
|
253
|
-
* The lookup can return group columns or leaf columns. In development, a
|
|
254
|
-
* missing id logs a warning to help catch stale column references.
|
|
255
|
-
*
|
|
256
|
-
* @example
|
|
257
|
-
* ```ts
|
|
258
|
-
* const column = table_getColumn(table, 'firstName')
|
|
259
|
-
* ```
|
|
260
|
-
*/
|
|
261
|
-
export function table_getColumn<
|
|
262
|
-
TFeatures extends TableFeatures,
|
|
263
|
-
TData extends RowData,
|
|
264
|
-
>(
|
|
265
|
-
table: Table_Internal<TFeatures, TData>,
|
|
266
|
-
columnId: string,
|
|
267
|
-
): Column<TFeatures, TData, unknown> | undefined {
|
|
268
|
-
const column = table.getAllFlatColumnsById()[columnId]
|
|
269
|
-
|
|
270
|
-
if (process.env.NODE_ENV === 'development' && !column) {
|
|
271
|
-
console.warn(`[Table] Column with id '${columnId}' does not exist.`)
|
|
272
|
-
}
|
|
273
|
-
|
|
274
|
-
return column
|
|
275
|
-
}
|
package/src/core/coreFeatures.ts
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { coreCellsFeature } from './cells/coreCellsFeature'
|
|
2
|
-
import { coreColumnsFeature } from './columns/coreColumnsFeature'
|
|
3
|
-
import { coreHeadersFeature } from './headers/coreHeadersFeature'
|
|
4
|
-
import { coreRowModelsFeature } from './row-models/coreRowModelsFeature'
|
|
5
|
-
import { coreRowsFeature } from './rows/coreRowsFeature'
|
|
6
|
-
import { coreTablesFeature } from './table/coreTablesFeature'
|
|
7
|
-
import type { TableReactivityBindings } from '../reactivity'
|
|
8
|
-
|
|
9
|
-
export interface CoreFeatures {
|
|
10
|
-
coreReativityFeature?: TableReactivityBindings
|
|
11
|
-
coreCellsFeature: typeof coreCellsFeature
|
|
12
|
-
coreColumnsFeature: typeof coreColumnsFeature
|
|
13
|
-
coreHeadersFeature: typeof coreHeadersFeature
|
|
14
|
-
coreRowModelsFeature: typeof coreRowModelsFeature
|
|
15
|
-
coreRowsFeature: typeof coreRowsFeature
|
|
16
|
-
coreTablesFeature: typeof coreTablesFeature
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* The built-in core feature set required by every table.
|
|
21
|
-
*
|
|
22
|
-
* These features provide table, column, row, header, cell, and core row-model behavior before optional feature plugins are added.
|
|
23
|
-
*/
|
|
24
|
-
export const coreFeatures: CoreFeatures = {
|
|
25
|
-
coreCellsFeature,
|
|
26
|
-
coreColumnsFeature,
|
|
27
|
-
coreHeadersFeature,
|
|
28
|
-
coreRowModelsFeature,
|
|
29
|
-
coreRowsFeature,
|
|
30
|
-
coreTablesFeature,
|
|
31
|
-
}
|