@tanstack/table-core 9.0.0-beta.7 → 9.0.0-beta.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/dist/core/cells/constructCell.d.ts +4 -6
- package/dist/core/cells/constructCell.js +4 -6
- package/dist/core/cells/coreCellsFeature.d.ts +1 -3
- package/dist/core/cells/coreCellsFeature.js +1 -2
- package/dist/core/cells/coreCellsFeature.types.d.ts +7 -9
- package/dist/core/cells/coreCellsFeature.utils.d.ts +5 -5
- package/dist/core/cells/coreCellsFeature.utils.js +1 -2
- package/dist/core/columns/constructColumn.d.ts +4 -6
- package/dist/core/columns/constructColumn.js +8 -9
- package/dist/core/columns/coreColumnsFeature.d.ts +1 -3
- package/dist/core/columns/coreColumnsFeature.js +13 -20
- package/dist/core/columns/coreColumnsFeature.types.d.ts +13 -15
- package/dist/core/columns/coreColumnsFeature.utils.d.ts +10 -12
- package/dist/core/columns/coreColumnsFeature.utils.js +19 -20
- package/dist/core/coreFeatures.d.ts +3 -3
- package/dist/core/coreFeatures.js +1 -2
- package/dist/core/headers/buildHeaderGroups.d.ts +3 -5
- package/dist/core/headers/buildHeaderGroups.js +99 -85
- package/dist/core/headers/constructHeader.d.ts +3 -5
- package/dist/core/headers/constructHeader.js +4 -6
- package/dist/core/headers/coreHeadersFeature.d.ts +1 -3
- package/dist/core/headers/coreHeadersFeature.js +9 -13
- package/dist/core/headers/coreHeadersFeature.types.d.ts +21 -11
- package/dist/core/headers/coreHeadersFeature.utils.d.ts +8 -8
- package/dist/core/headers/coreHeadersFeature.utils.js +14 -17
- package/dist/core/reactivity/coreReactivityFeature.types.d.ts +8 -3
- package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +1 -3
- package/dist/core/reactivity/coreReactivityFeature.utils.js +1 -2
- package/dist/core/reactivity/renderPhaseReactivity.d.ts +80 -0
- package/dist/core/reactivity/renderPhaseReactivity.js +95 -0
- package/dist/core/row-models/coreRowModelsFeature.d.ts +1 -3
- package/dist/core/row-models/coreRowModelsFeature.js +1 -2
- package/dist/core/row-models/coreRowModelsFeature.types.d.ts +7 -17
- package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +17 -19
- package/dist/core/row-models/coreRowModelsFeature.utils.js +9 -28
- package/dist/core/row-models/createCoreRowModel.d.ts +3 -5
- package/dist/core/row-models/createCoreRowModel.js +27 -24
- package/dist/core/rows/constructRow.d.ts +3 -5
- package/dist/core/rows/constructRow.js +9 -13
- package/dist/core/rows/coreRowsFeature.d.ts +1 -3
- package/dist/core/rows/coreRowsFeature.js +20 -5
- package/dist/core/rows/coreRowsFeature.types.d.ts +42 -10
- package/dist/core/rows/coreRowsFeature.utils.d.ts +26 -9
- package/dist/core/rows/coreRowsFeature.utils.js +65 -14
- package/dist/core/table/constructTable.d.ts +2 -4
- package/dist/core/table/constructTable.js +52 -23
- package/dist/core/table/coreTablesFeature.d.ts +1 -3
- package/dist/core/table/coreTablesFeature.js +1 -2
- package/dist/core/table/coreTablesFeature.types.d.ts +56 -25
- package/dist/core/table/coreTablesFeature.utils.d.ts +34 -12
- package/dist/core/table/coreTablesFeature.utils.js +69 -24
- package/dist/experimental-worker-plugin.d.ts +5 -0
- package/dist/experimental-worker-plugin.js +6 -0
- package/dist/features/cell-selection/cellSelectionFeature.d.ts +8 -0
- package/dist/features/cell-selection/cellSelectionFeature.js +128 -0
- package/dist/features/cell-selection/cellSelectionFeature.types.d.ts +296 -0
- package/dist/features/cell-selection/cellSelectionFeature.utils.d.ts +306 -0
- package/dist/features/cell-selection/cellSelectionFeature.utils.js +873 -0
- package/dist/features/cell-selection/cellSelectionGeometry.js +121 -0
- package/dist/features/cell-spanning/cellSpanningFeature.d.ts +13 -0
- package/dist/features/cell-spanning/cellSpanningFeature.js +47 -0
- package/dist/features/cell-spanning/cellSpanningFeature.types.d.ts +150 -0
- package/dist/features/cell-spanning/cellSpanningFeature.utils.d.ts +74 -0
- package/dist/features/cell-spanning/cellSpanningFeature.utils.js +262 -0
- package/dist/features/column-faceting/columnFacetingFeature.d.ts +1 -3
- package/dist/features/column-faceting/columnFacetingFeature.js +13 -20
- package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +15 -35
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +10 -12
- package/dist/features/column-faceting/columnFacetingFeature.utils.js +25 -14
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +2 -4
- package/dist/features/column-faceting/createFacetedMinMaxValues.js +9 -7
- package/dist/features/column-faceting/createFacetedRowModel.d.ts +3 -5
- package/dist/features/column-faceting/createFacetedRowModel.js +12 -17
- package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +2 -4
- package/dist/features/column-faceting/createFacetedUniqueValues.js +12 -9
- package/dist/features/column-filtering/columnFilteringFeature.d.ts +1 -3
- package/dist/features/column-filtering/columnFilteringFeature.js +4 -5
- package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +85 -33
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +19 -17
- package/dist/features/column-filtering/columnFilteringFeature.utils.js +33 -21
- package/dist/features/column-filtering/createFilteredRowModel.d.ts +11 -7
- package/dist/features/column-filtering/createFilteredRowModel.js +33 -29
- package/dist/features/column-filtering/filterFns.d.ts +208 -0
- package/dist/features/column-filtering/filterFns.js +374 -0
- package/dist/features/column-filtering/filterRowsUtils.js +4 -4
- package/dist/features/column-grouping/columnGroupingFeature.d.ts +2 -4
- package/dist/features/column-grouping/columnGroupingFeature.js +7 -20
- package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +14 -52
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +12 -51
- package/dist/features/column-grouping/columnGroupingFeature.utils.js +8 -61
- package/dist/features/column-grouping/createGroupedRowModel.d.ts +7 -7
- package/dist/features/column-grouping/createGroupedRowModel.js +69 -38
- package/dist/features/column-ordering/columnOrderingFeature.d.ts +1 -3
- package/dist/features/column-ordering/columnOrderingFeature.js +19 -24
- package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +28 -5
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +26 -16
- package/dist/features/column-ordering/columnOrderingFeature.utils.js +36 -18
- package/dist/features/column-pinning/columnPinningFeature.d.ts +7 -4
- package/dist/features/column-pinning/columnPinningFeature.js +126 -146
- package/dist/features/column-pinning/columnPinningFeature.types.d.ts +53 -44
- package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +100 -93
- package/dist/features/column-pinning/columnPinningFeature.utils.js +148 -150
- package/dist/features/column-resizing/columnResizingFeature.d.ts +1 -3
- package/dist/features/column-resizing/columnResizingFeature.js +1 -2
- package/dist/features/column-resizing/columnResizingFeature.types.d.ts +2 -7
- package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +7 -9
- package/dist/features/column-resizing/columnResizingFeature.utils.js +86 -48
- package/dist/features/column-sizing/columnSizingFeature.d.ts +1 -3
- package/dist/features/column-sizing/columnSizingFeature.js +35 -70
- package/dist/features/column-sizing/columnSizingFeature.types.d.ts +52 -11
- package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +43 -27
- package/dist/features/column-sizing/columnSizingFeature.utils.js +95 -54
- package/dist/features/column-visibility/columnVisibilityFeature.d.ts +1 -3
- package/dist/features/column-visibility/columnVisibilityFeature.js +26 -38
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +4 -6
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +20 -20
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js +32 -32
- package/dist/features/global-filtering/globalFilteringFeature.d.ts +1 -3
- package/dist/features/global-filtering/globalFilteringFeature.js +3 -4
- package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +4 -6
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +10 -13
- package/dist/features/global-filtering/globalFilteringFeature.utils.js +7 -8
- package/dist/features/row-aggregation/aggregationFns.d.ts +66 -0
- package/dist/features/row-aggregation/aggregationFns.js +279 -0
- package/dist/features/row-aggregation/rowAggregationFeature.d.ts +8 -0
- package/dist/features/row-aggregation/rowAggregationFeature.js +35 -0
- package/dist/features/row-aggregation/rowAggregationFeature.types.d.ts +193 -0
- package/dist/features/row-aggregation/rowAggregationFeature.types.js +11 -0
- package/dist/features/row-aggregation/rowAggregationFeature.utils.d.ts +46 -0
- package/dist/features/row-aggregation/rowAggregationFeature.utils.js +235 -0
- package/dist/features/row-expanding/createExpandedRowModel.d.ts +3 -5
- package/dist/features/row-expanding/createExpandedRowModel.js +9 -13
- package/dist/features/row-expanding/rowExpandingFeature.d.ts +1 -3
- package/dist/features/row-expanding/rowExpandingFeature.js +1 -2
- package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +6 -17
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +11 -16
- package/dist/features/row-expanding/rowExpandingFeature.utils.js +30 -33
- package/dist/features/row-pagination/createPaginatedRowModel.d.ts +3 -5
- package/dist/features/row-pagination/createPaginatedRowModel.js +7 -12
- package/dist/features/row-pagination/rowPaginationFeature.d.ts +1 -3
- package/dist/features/row-pagination/rowPaginationFeature.js +1 -2
- package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +5 -16
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +18 -20
- package/dist/features/row-pagination/rowPaginationFeature.utils.js +10 -17
- package/dist/features/row-pinning/rowPinningFeature.d.ts +1 -3
- package/dist/features/row-pinning/rowPinningFeature.js +5 -18
- package/dist/features/row-pinning/rowPinningFeature.types.d.ts +3 -5
- package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +8 -10
- package/dist/features/row-pinning/rowPinningFeature.utils.js +10 -16
- package/dist/features/row-selection/rowSelectionFeature.d.ts +1 -3
- package/dist/features/row-selection/rowSelectionFeature.js +68 -25
- package/dist/features/row-selection/rowSelectionFeature.types.d.ts +51 -15
- package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +60 -35
- package/dist/features/row-selection/rowSelectionFeature.utils.js +142 -89
- package/dist/features/row-sorting/createSortedRowModel.d.ts +11 -7
- package/dist/features/row-sorting/createSortedRowModel.js +71 -53
- package/dist/features/row-sorting/rowSortingFeature.d.ts +1 -3
- package/dist/features/row-sorting/rowSortingFeature.js +2 -2
- package/dist/features/row-sorting/rowSortingFeature.types.d.ts +61 -24
- package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +31 -22
- package/dist/features/row-sorting/rowSortingFeature.utils.js +51 -25
- package/dist/features/row-sorting/sortFns.d.ts +96 -0
- package/dist/features/row-sorting/sortFns.js +216 -0
- package/dist/features/stockFeatures.d.ts +7 -3
- package/dist/features/stockFeatures.js +7 -2
- package/dist/flex-render.d.ts +2 -4
- package/dist/flex-render.js +10 -3
- package/dist/helpers/columnHelper.d.ts +3 -5
- package/dist/helpers/columnHelper.js +1 -2
- package/dist/helpers/metaHelper.d.ts +25 -0
- package/dist/helpers/metaHelper.js +28 -0
- package/dist/helpers/tableFeatures.d.ts +35 -8
- package/dist/helpers/tableFeatures.js +33 -5
- package/dist/helpers/tableOptions.d.ts +1 -3
- package/dist/helpers/tableOptions.js +1 -2
- package/dist/index.d.ts +34 -27
- package/dist/index.js +10 -5
- package/dist/reactivity.d.ts +2 -1
- package/dist/reactivity.js +2 -1
- package/dist/static-functions.d.ts +12 -9
- package/dist/static-functions.js +12 -9
- package/dist/store-reactivity-bindings.d.ts +2 -4
- package/dist/store-reactivity-bindings.js +4 -5
- package/dist/types/Cell.d.ts +9 -5
- package/dist/types/Column.d.ts +13 -15
- package/dist/types/ColumnDef.d.ts +39 -21
- package/dist/types/Header.d.ts +3 -5
- package/dist/types/HeaderGroup.d.ts +3 -5
- package/dist/types/Row.d.ts +7 -7
- package/dist/types/RowModel.d.ts +11 -25
- package/dist/types/RowModelFns.d.ts +5 -7
- package/dist/types/Table.d.ts +29 -32
- package/dist/types/TableFeatures.d.ts +388 -24
- package/dist/types/TableOptions.d.ts +24 -14
- package/dist/types/TableState.d.ts +8 -8
- package/dist/types/type-utils.d.ts +10 -4
- package/dist/utils.d.ts +32 -26
- package/dist/utils.js +52 -32
- package/dist/worker/createTableWorker.d.ts +100 -0
- package/dist/worker/createTableWorker.js +185 -0
- package/dist/worker/createWorkerRowModel.d.ts +40 -0
- package/dist/worker/createWorkerRowModel.js +77 -0
- package/dist/worker/initTableWorker.d.ts +31 -0
- package/dist/worker/initTableWorker.js +99 -0
- package/dist/worker/rebuildRowModel.d.ts +11 -0
- package/dist/worker/rebuildRowModel.js +71 -0
- package/dist/worker/serializeRowModel.js +51 -0
- package/dist/worker/tableWorkerProtocol.d.ts +88 -0
- package/dist/worker/tableWorkerProtocol.js +26 -0
- package/package.json +12 -28
- package/skills/aggregation/SKILL.md +141 -0
- package/skills/api-not-found/SKILL.md +113 -0
- package/skills/cell-selection/SKILL.md +204 -0
- package/skills/cell-spanning/SKILL.md +162 -0
- package/skills/client-vs-server/SKILL.md +164 -0
- package/skills/column-faceting/SKILL.md +97 -0
- package/skills/column-filtering/SKILL.md +87 -0
- package/skills/column-ordering/SKILL.md +75 -0
- package/skills/column-pinning/SKILL.md +89 -0
- package/skills/column-resizing/SKILL.md +91 -0
- package/skills/column-sizing/SKILL.md +72 -0
- package/skills/column-visibility/SKILL.md +75 -0
- package/skills/core/SKILL.md +175 -0
- package/skills/custom-features/SKILL.md +235 -0
- package/skills/expanding/SKILL.md +80 -0
- package/skills/global-filtering/SKILL.md +84 -0
- package/skills/grouping/SKILL.md +51 -401
- package/skills/migrate-v8-to-v9/SKILL.md +275 -416
- package/skills/pagination/SKILL.md +37 -344
- package/skills/row-pinning/SKILL.md +47 -234
- package/skills/row-selection/SKILL.md +75 -302
- package/skills/sorting/SKILL.md +45 -303
- package/skills/table-features/SKILL.md +159 -0
- package/skills/typescript/SKILL.md +126 -0
- package/dist/core/cells/constructCell.cjs +0 -34
- package/dist/core/cells/constructCell.cjs.map +0 -1
- package/dist/core/cells/constructCell.d.cts +0 -17
- package/dist/core/cells/constructCell.js.map +0 -1
- package/dist/core/cells/coreCellsFeature.cjs +0 -21
- package/dist/core/cells/coreCellsFeature.cjs.map +0 -1
- package/dist/core/cells/coreCellsFeature.d.cts +0 -10
- package/dist/core/cells/coreCellsFeature.js.map +0 -1
- package/dist/core/cells/coreCellsFeature.types.d.cts +0 -57
- package/dist/core/cells/coreCellsFeature.utils.cjs +0 -57
- package/dist/core/cells/coreCellsFeature.utils.cjs.map +0 -1
- package/dist/core/cells/coreCellsFeature.utils.d.cts +0 -53
- package/dist/core/cells/coreCellsFeature.utils.js.map +0 -1
- package/dist/core/columns/constructColumn.cjs +0 -61
- package/dist/core/columns/constructColumn.cjs.map +0 -1
- package/dist/core/columns/constructColumn.d.cts +0 -16
- package/dist/core/columns/constructColumn.js.map +0 -1
- package/dist/core/columns/coreColumnsFeature.cjs +0 -70
- package/dist/core/columns/coreColumnsFeature.cjs.map +0 -1
- package/dist/core/columns/coreColumnsFeature.d.cts +0 -10
- package/dist/core/columns/coreColumnsFeature.js.map +0 -1
- package/dist/core/columns/coreColumnsFeature.types.d.cts +0 -94
- package/dist/core/columns/coreColumnsFeature.utils.cjs +0 -187
- package/dist/core/columns/coreColumnsFeature.utils.cjs.map +0 -1
- package/dist/core/columns/coreColumnsFeature.utils.d.cts +0 -119
- package/dist/core/columns/coreColumnsFeature.utils.js.map +0 -1
- package/dist/core/coreFeatures.cjs +0 -25
- package/dist/core/coreFeatures.cjs.map +0 -1
- package/dist/core/coreFeatures.d.cts +0 -26
- package/dist/core/coreFeatures.js.map +0 -1
- package/dist/core/headers/buildHeaderGroups.cjs +0 -103
- package/dist/core/headers/buildHeaderGroups.cjs.map +0 -1
- package/dist/core/headers/buildHeaderGroups.d.cts +0 -16
- package/dist/core/headers/buildHeaderGroups.js.map +0 -1
- package/dist/core/headers/constructHeader.cjs +0 -41
- package/dist/core/headers/constructHeader.cjs.map +0 -1
- package/dist/core/headers/constructHeader.d.cts +0 -22
- package/dist/core/headers/constructHeader.js.map +0 -1
- package/dist/core/headers/coreHeadersFeature.cjs +0 -55
- package/dist/core/headers/coreHeadersFeature.cjs.map +0 -1
- package/dist/core/headers/coreHeadersFeature.d.cts +0 -10
- package/dist/core/headers/coreHeadersFeature.js.map +0 -1
- package/dist/core/headers/coreHeadersFeature.types.d.cts +0 -106
- package/dist/core/headers/coreHeadersFeature.utils.cjs +0 -142
- package/dist/core/headers/coreHeadersFeature.utils.cjs.map +0 -1
- package/dist/core/headers/coreHeadersFeature.utils.d.cts +0 -85
- package/dist/core/headers/coreHeadersFeature.utils.js.map +0 -1
- package/dist/core/reactivity/coreReactivityFeature.types.d.cts +0 -48
- package/dist/core/reactivity/coreReactivityFeature.utils.cjs +0 -24
- package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +0 -1
- package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +0 -24
- package/dist/core/reactivity/coreReactivityFeature.utils.js.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.cjs +0 -27
- package/dist/core/row-models/coreRowModelsFeature.cjs.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.d.cts +0 -10
- package/dist/core/row-models/coreRowModelsFeature.js.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.types.d.cts +0 -41
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs +0 -215
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +0 -1
- package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +0 -153
- package/dist/core/row-models/coreRowModelsFeature.utils.js.map +0 -1
- package/dist/core/row-models/createCoreRowModel.cjs +0 -52
- package/dist/core/row-models/createCoreRowModel.cjs.map +0 -1
- package/dist/core/row-models/createCoreRowModel.d.cts +0 -15
- package/dist/core/row-models/createCoreRowModel.js.map +0 -1
- package/dist/core/rows/constructRow.cjs +0 -44
- package/dist/core/rows/constructRow.cjs.map +0 -1
- package/dist/core/rows/constructRow.d.cts +0 -15
- package/dist/core/rows/constructRow.js.map +0 -1
- package/dist/core/rows/coreRowsFeature.cjs +0 -37
- package/dist/core/rows/coreRowsFeature.cjs.map +0 -1
- package/dist/core/rows/coreRowsFeature.d.cts +0 -10
- package/dist/core/rows/coreRowsFeature.js.map +0 -1
- package/dist/core/rows/coreRowsFeature.types.d.cts +0 -99
- package/dist/core/rows/coreRowsFeature.utils.cjs +0 -192
- package/dist/core/rows/coreRowsFeature.utils.cjs.map +0 -1
- package/dist/core/rows/coreRowsFeature.utils.d.cts +0 -127
- package/dist/core/rows/coreRowsFeature.utils.js.map +0 -1
- package/dist/core/table/constructTable.cjs +0 -118
- package/dist/core/table/constructTable.cjs.map +0 -1
- package/dist/core/table/constructTable.d.cts +0 -22
- package/dist/core/table/constructTable.js.map +0 -1
- package/dist/core/table/coreTablesFeature.cjs +0 -17
- package/dist/core/table/coreTablesFeature.cjs.map +0 -1
- package/dist/core/table/coreTablesFeature.d.cts +0 -10
- package/dist/core/table/coreTablesFeature.js.map +0 -1
- package/dist/core/table/coreTablesFeature.types.d.cts +0 -186
- package/dist/core/table/coreTablesFeature.utils.cjs +0 -96
- package/dist/core/table/coreTablesFeature.utils.cjs.map +0 -1
- package/dist/core/table/coreTablesFeature.utils.d.cts +0 -57
- package/dist/core/table/coreTablesFeature.utils.js.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.cjs +0 -61
- package/dist/features/column-faceting/columnFacetingFeature.cjs.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.d.cts +0 -10
- package/dist/features/column-faceting/columnFacetingFeature.js.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +0 -85
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +0 -103
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +0 -1
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +0 -84
- package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +0 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +0 -44
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +0 -14
- package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +0 -1
- package/dist/features/column-faceting/createFacetedRowModel.cjs +0 -50
- package/dist/features/column-faceting/createFacetedRowModel.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedRowModel.d.cts +0 -15
- package/dist/features/column-faceting/createFacetedRowModel.js.map +0 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs +0 -41
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +0 -1
- package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +0 -14
- package/dist/features/column-faceting/createFacetedUniqueValues.js.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.cjs +0 -50
- package/dist/features/column-filtering/columnFilteringFeature.cjs.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.d.cts +0 -10
- package/dist/features/column-filtering/columnFilteringFeature.js.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +0 -160
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +0 -212
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +0 -1
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +0 -143
- package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +0 -1
- package/dist/features/column-filtering/createFilteredRowModel.cjs +0 -110
- package/dist/features/column-filtering/createFilteredRowModel.cjs.map +0 -1
- package/dist/features/column-filtering/createFilteredRowModel.d.cts +0 -16
- package/dist/features/column-filtering/createFilteredRowModel.js.map +0 -1
- package/dist/features/column-filtering/filterRowsUtils.cjs +0 -81
- package/dist/features/column-filtering/filterRowsUtils.cjs.map +0 -1
- package/dist/features/column-filtering/filterRowsUtils.js.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.cjs +0 -67
- package/dist/features/column-grouping/columnGroupingFeature.cjs.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.d.cts +0 -10
- package/dist/features/column-grouping/columnGroupingFeature.js.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +0 -165
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +0 -250
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +0 -1
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +0 -190
- package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +0 -1
- package/dist/features/column-grouping/createGroupedRowModel.cjs +0 -119
- package/dist/features/column-grouping/createGroupedRowModel.cjs.map +0 -1
- package/dist/features/column-grouping/createGroupedRowModel.d.cts +0 -16
- package/dist/features/column-grouping/createGroupedRowModel.js.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.cjs +0 -58
- package/dist/features/column-ordering/columnOrderingFeature.cjs.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.d.cts +0 -10
- package/dist/features/column-ordering/columnOrderingFeature.js.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +0 -56
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +0 -172
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +0 -1
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +0 -107
- package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.cjs +0 -221
- package/dist/features/column-pinning/columnPinningFeature.cjs.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.d.cts +0 -10
- package/dist/features/column-pinning/columnPinningFeature.js.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.types.d.cts +0 -178
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs +0 -585
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +0 -1
- package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +0 -375
- package/dist/features/column-pinning/columnPinningFeature.utils.js.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.cjs +0 -41
- package/dist/features/column-resizing/columnResizingFeature.cjs.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.d.cts +0 -10
- package/dist/features/column-resizing/columnResizingFeature.js.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.types.d.cts +0 -81
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs +0 -246
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +0 -1
- package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +0 -109
- package/dist/features/column-resizing/columnResizingFeature.utils.js.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.cjs +0 -124
- package/dist/features/column-sizing/columnSizingFeature.cjs.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.d.cts +0 -10
- package/dist/features/column-sizing/columnSizingFeature.js.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.types.d.cts +0 -96
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs +0 -256
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +0 -1
- package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +0 -182
- package/dist/features/column-sizing/columnSizingFeature.utils.js.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.cjs +0 -94
- package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.d.cts +0 -10
- package/dist/features/column-visibility/columnVisibilityFeature.js.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +0 -97
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +0 -283
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +0 -1
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +0 -189
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.cjs +0 -41
- package/dist/features/global-filtering/globalFilteringFeature.cjs.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.d.cts +0 -10
- package/dist/features/global-filtering/globalFilteringFeature.js.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +0 -71
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +0 -88
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +0 -1
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +0 -74
- package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +0 -1
- package/dist/features/row-expanding/createExpandedRowModel.cjs +0 -59
- package/dist/features/row-expanding/createExpandedRowModel.cjs.map +0 -1
- package/dist/features/row-expanding/createExpandedRowModel.d.cts +0 -21
- package/dist/features/row-expanding/createExpandedRowModel.js.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.cjs +0 -47
- package/dist/features/row-expanding/rowExpandingFeature.cjs.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.d.cts +0 -10
- package/dist/features/row-expanding/rowExpandingFeature.js.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +0 -127
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +0 -281
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +0 -1
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +0 -191
- package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +0 -1
- package/dist/features/row-pagination/createPaginatedRowModel.cjs +0 -62
- package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +0 -1
- package/dist/features/row-pagination/createPaginatedRowModel.d.cts +0 -15
- package/dist/features/row-pagination/createPaginatedRowModel.js.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.cjs +0 -45
- package/dist/features/row-pagination/rowPaginationFeature.cjs.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.d.cts +0 -10
- package/dist/features/row-pagination/rowPaginationFeature.js.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +0 -135
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +0 -312
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +0 -1
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +0 -218
- package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.cjs +0 -67
- package/dist/features/row-pinning/rowPinningFeature.cjs.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.d.cts +0 -10
- package/dist/features/row-pinning/rowPinningFeature.js.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.types.d.cts +0 -83
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs +0 -229
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +0 -1
- package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +0 -143
- package/dist/features/row-pinning/rowPinningFeature.utils.js.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.cjs +0 -75
- package/dist/features/row-selection/rowSelectionFeature.cjs.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.d.cts +0 -10
- package/dist/features/row-selection/rowSelectionFeature.js.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.types.d.cts +0 -136
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs +0 -514
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +0 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +0 -318
- package/dist/features/row-selection/rowSelectionFeature.utils.js.map +0 -1
- package/dist/features/row-sorting/createSortedRowModel.cjs +0 -95
- package/dist/features/row-sorting/createSortedRowModel.cjs.map +0 -1
- package/dist/features/row-sorting/createSortedRowModel.d.cts +0 -16
- package/dist/features/row-sorting/createSortedRowModel.js.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.cjs +0 -55
- package/dist/features/row-sorting/rowSortingFeature.cjs.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.d.cts +0 -10
- package/dist/features/row-sorting/rowSortingFeature.js.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.types.d.cts +0 -188
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs +0 -305
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +0 -1
- package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +0 -193
- package/dist/features/row-sorting/rowSortingFeature.utils.js.map +0 -1
- package/dist/features/stockFeatures.cjs +0 -41
- package/dist/features/stockFeatures.cjs.map +0 -1
- package/dist/features/stockFeatures.d.cts +0 -41
- package/dist/features/stockFeatures.js.map +0 -1
- package/dist/flex-render.cjs +0 -29
- package/dist/flex-render.cjs.map +0 -1
- package/dist/flex-render.d.cts +0 -34
- package/dist/flex-render.js.map +0 -1
- package/dist/fns/aggregationFns.cjs +0 -161
- package/dist/fns/aggregationFns.cjs.map +0 -1
- package/dist/fns/aggregationFns.d.cts +0 -85
- package/dist/fns/aggregationFns.d.ts +0 -85
- package/dist/fns/aggregationFns.js +0 -151
- package/dist/fns/aggregationFns.js.map +0 -1
- package/dist/fns/filterFns.cjs +0 -201
- package/dist/fns/filterFns.cjs.map +0 -1
- package/dist/fns/filterFns.d.cts +0 -167
- package/dist/fns/filterFns.d.ts +0 -167
- package/dist/fns/filterFns.js +0 -185
- package/dist/fns/filterFns.js.map +0 -1
- package/dist/fns/sortFns.cjs +0 -130
- package/dist/fns/sortFns.cjs.map +0 -1
- package/dist/fns/sortFns.d.cts +0 -65
- package/dist/fns/sortFns.d.ts +0 -65
- package/dist/fns/sortFns.js +0 -122
- package/dist/fns/sortFns.js.map +0 -1
- package/dist/helpers/columnHelper.cjs +0 -41
- package/dist/helpers/columnHelper.cjs.map +0 -1
- package/dist/helpers/columnHelper.d.cts +0 -71
- package/dist/helpers/columnHelper.js.map +0 -1
- package/dist/helpers/tableFeatures.cjs +0 -20
- package/dist/helpers/tableFeatures.cjs.map +0 -1
- package/dist/helpers/tableFeatures.d.cts +0 -18
- package/dist/helpers/tableFeatures.js.map +0 -1
- package/dist/helpers/tableOptions.cjs +0 -15
- package/dist/helpers/tableOptions.cjs.map +0 -1
- package/dist/helpers/tableOptions.d.cts +0 -57
- package/dist/helpers/tableOptions.js.map +0 -1
- package/dist/index.cjs +0 -133
- package/dist/index.d.cts +0 -78
- package/dist/reactivity.cjs +0 -4
- package/dist/reactivity.d.cts +0 -3
- package/dist/static-functions.cjs +0 -263
- package/dist/static-functions.d.cts +0 -21
- package/dist/store-reactivity-bindings.cjs +0 -44
- package/dist/store-reactivity-bindings.cjs.map +0 -1
- package/dist/store-reactivity-bindings.d.cts +0 -22
- package/dist/store-reactivity-bindings.js.map +0 -1
- package/dist/types/Cell.d.cts +0 -14
- package/dist/types/Column.d.cts +0 -36
- package/dist/types/ColumnDef.d.cts +0 -109
- package/dist/types/Header.d.cts +0 -16
- package/dist/types/HeaderGroup.d.cts +0 -10
- package/dist/types/Row.d.cts +0 -26
- package/dist/types/RowModel.d.cts +0 -36
- package/dist/types/RowModelFns.d.cts +0 -18
- package/dist/types/Table.d.cts +0 -70
- package/dist/types/TableFeatures.d.cts +0 -53
- package/dist/types/TableOptions.d.cts +0 -69
- package/dist/types/TableState.d.cts +0 -48
- package/dist/types/type-utils.d.cts +0 -23
- package/dist/utils.cjs +0 -243
- package/dist/utils.cjs.map +0 -1
- package/dist/utils.d.cts +0 -114
- package/dist/utils.js.map +0 -1
- package/skills/column-definitions/SKILL.md +0 -333
- package/skills/column-layout/SKILL.md +0 -328
- package/skills/column-layout/references/subsystems.md +0 -220
- package/skills/customizing-feature-behavior/SKILL.md +0 -416
- package/skills/filtering/SKILL.md +0 -357
- package/skills/filtering/references/faceting-and-fuzzy.md +0 -191
- package/skills/row-expanding/SKILL.md +0 -348
- package/skills/setup/SKILL.md +0 -400
- package/skills/state-management/SKILL.md +0 -388
- package/src/core/cells/constructCell.ts +0 -55
- package/src/core/cells/coreCellsFeature.ts +0 -27
- package/src/core/cells/coreCellsFeature.types.ts +0 -68
- package/src/core/cells/coreCellsFeature.utils.ts +0 -68
- package/src/core/columns/constructColumn.ts +0 -119
- package/src/core/columns/coreColumnsFeature.ts +0 -73
- package/src/core/columns/coreColumnsFeature.types.ts +0 -108
- package/src/core/columns/coreColumnsFeature.utils.ts +0 -275
- package/src/core/coreFeatures.ts +0 -31
- package/src/core/headers/buildHeaderGroups.ts +0 -182
- package/src/core/headers/constructHeader.ts +0 -67
- package/src/core/headers/coreHeadersFeature.ts +0 -56
- package/src/core/headers/coreHeadersFeature.types.ts +0 -125
- package/src/core/headers/coreHeadersFeature.utils.ts +0 -200
- package/src/core/reactivity/coreReactivityFeature.types.ts +0 -56
- package/src/core/reactivity/coreReactivityFeature.utils.ts +0 -44
- package/src/core/row-models/coreRowModelsFeature.ts +0 -62
- package/src/core/row-models/coreRowModelsFeature.types.ts +0 -64
- package/src/core/row-models/coreRowModelsFeature.utils.ts +0 -272
- package/src/core/row-models/createCoreRowModel.ts +0 -93
- package/src/core/rows/constructRow.ts +0 -66
- package/src/core/rows/coreRowsFeature.ts +0 -62
- package/src/core/rows/coreRowsFeature.types.ts +0 -117
- package/src/core/rows/coreRowsFeature.utils.ts +0 -264
- package/src/core/table/constructTable.ts +0 -172
- package/src/core/table/coreTablesFeature.ts +0 -19
- package/src/core/table/coreTablesFeature.types.ts +0 -216
- package/src/core/table/coreTablesFeature.utils.ts +0 -131
- package/src/features/column-faceting/columnFacetingFeature.ts +0 -89
- package/src/features/column-faceting/columnFacetingFeature.types.ts +0 -109
- package/src/features/column-faceting/columnFacetingFeature.utils.ts +0 -145
- package/src/features/column-faceting/createFacetedMinMaxValues.ts +0 -66
- package/src/features/column-faceting/createFacetedRowModel.ts +0 -85
- package/src/features/column-faceting/createFacetedUniqueValues.ts +0 -66
- package/src/features/column-filtering/columnFilteringFeature.ts +0 -86
- package/src/features/column-filtering/columnFilteringFeature.types.ts +0 -232
- package/src/features/column-filtering/columnFilteringFeature.utils.ts +0 -331
- package/src/features/column-filtering/createFilteredRowModel.ts +0 -183
- package/src/features/column-filtering/filterRowsUtils.ts +0 -157
- package/src/features/column-grouping/columnGroupingFeature.ts +0 -115
- package/src/features/column-grouping/columnGroupingFeature.types.ts +0 -226
- package/src/features/column-grouping/columnGroupingFeature.utils.ts +0 -354
- package/src/features/column-grouping/createGroupedRowModel.ts +0 -220
- package/src/features/column-ordering/columnOrderingFeature.ts +0 -73
- package/src/features/column-ordering/columnOrderingFeature.types.ts +0 -60
- package/src/features/column-ordering/columnOrderingFeature.utils.ts +0 -241
- package/src/features/column-pinning/columnPinningFeature.ts +0 -316
- package/src/features/column-pinning/columnPinningFeature.types.ts +0 -192
- package/src/features/column-pinning/columnPinningFeature.utils.ts +0 -908
- package/src/features/column-resizing/columnResizingFeature.ts +0 -65
- package/src/features/column-resizing/columnResizingFeature.types.ts +0 -89
- package/src/features/column-resizing/columnResizingFeature.utils.ts +0 -364
- package/src/features/column-sizing/columnSizingFeature.ts +0 -145
- package/src/features/column-sizing/columnSizingFeature.types.ts +0 -102
- package/src/features/column-sizing/columnSizingFeature.utils.ts +0 -381
- package/src/features/column-visibility/columnVisibilityFeature.ts +0 -122
- package/src/features/column-visibility/columnVisibilityFeature.types.ts +0 -112
- package/src/features/column-visibility/columnVisibilityFeature.utils.ts +0 -384
- package/src/features/global-filtering/globalFilteringFeature.ts +0 -65
- package/src/features/global-filtering/globalFilteringFeature.types.ts +0 -91
- package/src/features/global-filtering/globalFilteringFeature.utils.ts +0 -118
- package/src/features/row-expanding/createExpandedRowModel.ts +0 -82
- package/src/features/row-expanding/rowExpandingFeature.ts +0 -94
- package/src/features/row-expanding/rowExpandingFeature.types.ts +0 -147
- package/src/features/row-expanding/rowExpandingFeature.utils.ts +0 -374
- package/src/features/row-pagination/createPaginatedRowModel.ts +0 -83
- package/src/features/row-pagination/rowPaginationFeature.ts +0 -95
- package/src/features/row-pagination/rowPaginationFeature.types.ts +0 -152
- package/src/features/row-pagination/rowPaginationFeature.utils.ts +0 -400
- package/src/features/row-pinning/rowPinningFeature.ts +0 -97
- package/src/features/row-pinning/rowPinningFeature.types.ts +0 -95
- package/src/features/row-pinning/rowPinningFeature.utils.ts +0 -323
- package/src/features/row-selection/rowSelectionFeature.ts +0 -140
- package/src/features/row-selection/rowSelectionFeature.types.ts +0 -151
- package/src/features/row-selection/rowSelectionFeature.utils.ts +0 -745
- package/src/features/row-sorting/createSortedRowModel.ts +0 -157
- package/src/features/row-sorting/rowSortingFeature.ts +0 -103
- package/src/features/row-sorting/rowSortingFeature.types.ts +0 -235
- package/src/features/row-sorting/rowSortingFeature.utils.ts +0 -489
- package/src/features/stockFeatures.ts +0 -53
- package/src/flex-render.ts +0 -70
- package/src/fns/aggregationFns.ts +0 -245
- package/src/fns/filterFns.ts +0 -382
- package/src/fns/sortFns.ts +0 -240
- package/src/helpers/columnHelper.ts +0 -122
- package/src/helpers/tableFeatures.ts +0 -24
- package/src/helpers/tableOptions.ts +0 -117
- package/src/index.ts +0 -138
- package/src/process-env.d.ts +0 -6
- package/src/reactivity.ts +0 -2
- package/src/static-functions.ts +0 -31
- package/src/store-reactivity-bindings.ts +0 -47
- package/src/types/Cell.ts +0 -21
- package/src/types/Column.ts +0 -51
- package/src/types/ColumnDef.ts +0 -228
- package/src/types/Header.ts +0 -23
- package/src/types/HeaderGroup.ts +0 -13
- package/src/types/Row.ts +0 -34
- package/src/types/RowModel.ts +0 -98
- package/src/types/RowModelFns.ts +0 -32
- package/src/types/Table.ts +0 -91
- package/src/types/TableFeatures.ts +0 -101
- package/src/types/TableOptions.ts +0 -101
- package/src/types/TableState.ts +0 -47
- package/src/types/type-utils.ts +0 -84
- package/src/utils.ts +0 -441
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
import type { Table_Internal } from '../../types/Table'
|
|
2
|
-
import type { RowData } from '../../types/type-utils'
|
|
3
|
-
import type { TableFeatures } from '../../types/TableFeatures'
|
|
4
|
-
import type { Row } from '../../types/Row'
|
|
5
|
-
import type { Cell } from '../../types/Cell'
|
|
6
|
-
|
|
7
|
-
export interface Row_CoreProperties<
|
|
8
|
-
TFeatures extends TableFeatures,
|
|
9
|
-
TData extends RowData,
|
|
10
|
-
> {
|
|
11
|
-
_uniqueValuesCache: Record<string, unknown>
|
|
12
|
-
_valuesCache: Record<string, unknown>
|
|
13
|
-
/**
|
|
14
|
-
* The depth of the row (if nested or grouped) relative to the root row array.
|
|
15
|
-
*/
|
|
16
|
-
depth: number
|
|
17
|
-
/**
|
|
18
|
-
* The resolved unique identifier for the row resolved via the `options.getRowId` option. Defaults to the row's index (or relative index if it is a subRow).
|
|
19
|
-
*/
|
|
20
|
-
id: string
|
|
21
|
-
/**
|
|
22
|
-
* The index of the row within its parent array (or the root data array).
|
|
23
|
-
*/
|
|
24
|
-
index: number
|
|
25
|
-
/**
|
|
26
|
-
* The original row object provided to the table. If the row is a grouped row, the original row object will be the first original in the group.
|
|
27
|
-
*/
|
|
28
|
-
original: TData
|
|
29
|
-
/**
|
|
30
|
-
* An array of the original subRows as returned by the `options.getSubRows` option.
|
|
31
|
-
*/
|
|
32
|
-
originalSubRows?: ReadonlyArray<TData>
|
|
33
|
-
/**
|
|
34
|
-
* If nested, this row's parent row id.
|
|
35
|
-
*/
|
|
36
|
-
parentId?: string
|
|
37
|
-
/**
|
|
38
|
-
* An array of subRows for the row as returned and created by the `options.getSubRows` option.
|
|
39
|
-
*/
|
|
40
|
-
subRows: Array<Row<TFeatures, TData>>
|
|
41
|
-
/**
|
|
42
|
-
* Reference to the parent table instance.
|
|
43
|
-
*/
|
|
44
|
-
table: Table_Internal<TFeatures, TData>
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export interface Row_Row<
|
|
48
|
-
TFeatures extends TableFeatures,
|
|
49
|
-
TData extends RowData,
|
|
50
|
-
> extends Row_CoreProperties<TFeatures, TData> {
|
|
51
|
-
/**
|
|
52
|
-
* Builds a lookup of this row's cells keyed by leaf column id.
|
|
53
|
-
*/
|
|
54
|
-
getAllCellsByColumnId: () => Record<string, Cell<TFeatures, TData, unknown>>
|
|
55
|
-
/**
|
|
56
|
-
* Builds one cell for each leaf column, including cells for hidden columns.
|
|
57
|
-
*/
|
|
58
|
-
getAllCells: () => Array<Cell<TFeatures, TData, unknown>>
|
|
59
|
-
/**
|
|
60
|
-
* Returns the leaf rows for the row, not including any parent rows.
|
|
61
|
-
*/
|
|
62
|
-
getLeafRows: () => Array<Row<TFeatures, TData>>
|
|
63
|
-
/**
|
|
64
|
-
* Returns the parent row for the row, if it exists.
|
|
65
|
-
*/
|
|
66
|
-
getParentRow: () => Row<TFeatures, TData> | undefined
|
|
67
|
-
/**
|
|
68
|
-
* Returns the parent rows for the row, all the way up to a root row.
|
|
69
|
-
*/
|
|
70
|
-
getParentRows: () => Array<Row<TFeatures, TData>>
|
|
71
|
-
/**
|
|
72
|
-
* Reads the values this row contributes to faceting/grouping for a column.
|
|
73
|
-
*/
|
|
74
|
-
getUniqueValues: <TValue>(columnId: string) => Array<TValue>
|
|
75
|
-
/**
|
|
76
|
-
* Reads this row's accessor value for a column id and caches the result.
|
|
77
|
-
*/
|
|
78
|
-
getValue: <TValue>(columnId: string) => TValue
|
|
79
|
-
/**
|
|
80
|
-
* Renders the value for the row in a given columnId the same as `getValue`, but will return the `renderFallbackValue` if no value is found.
|
|
81
|
-
*/
|
|
82
|
-
renderValue: <TValue>(columnId: string) => TValue
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
export interface TableOptions_Rows<
|
|
86
|
-
TFeatures extends TableFeatures,
|
|
87
|
-
TData extends RowData,
|
|
88
|
-
> {
|
|
89
|
-
/**
|
|
90
|
-
* This optional function is used to derive a unique ID for any given row. If not provided the rows index is used (nested rows join together with `.` using their grandparents' index eg. `index.index.index`). If you need to identify individual rows that are originating from any server-side operations, it's suggested you use this function to return an ID that makes sense regardless of network IO/ambiguity eg. a userId, taskId, database ID field, etc.
|
|
91
|
-
* @example getRowId: row => row.userId
|
|
92
|
-
*/
|
|
93
|
-
getRowId?: (
|
|
94
|
-
originalRow: TData,
|
|
95
|
-
index: number,
|
|
96
|
-
parent?: Row<TFeatures, TData>,
|
|
97
|
-
) => string
|
|
98
|
-
/**
|
|
99
|
-
* This optional function is used to access the sub rows for any given row. If you are using nested rows, you will need to use this function to return the sub rows object (or undefined) from the row.
|
|
100
|
-
* @example getSubRows: row => row.subRows
|
|
101
|
-
*/
|
|
102
|
-
getSubRows?: (
|
|
103
|
-
originalRow: TData,
|
|
104
|
-
index: number,
|
|
105
|
-
) => undefined | ReadonlyArray<TData>
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
export interface Table_Rows<
|
|
109
|
-
TFeatures extends TableFeatures,
|
|
110
|
-
TData extends RowData,
|
|
111
|
-
> {
|
|
112
|
-
getRowId: (_: TData, index: number, parent?: Row<TFeatures, TData>) => string
|
|
113
|
-
/**
|
|
114
|
-
* Returns the row with the given ID.
|
|
115
|
-
*/
|
|
116
|
-
getRow: (id: string, searchAll?: boolean) => Row<TFeatures, TData>
|
|
117
|
-
}
|
|
@@ -1,264 +0,0 @@
|
|
|
1
|
-
import { flattenBy } from '../../utils'
|
|
2
|
-
import { constructCell } from '../cells/constructCell'
|
|
3
|
-
import type { Table_Internal } from '../../types/Table'
|
|
4
|
-
import type { RowData } from '../../types/type-utils'
|
|
5
|
-
import type { TableFeatures } from '../../types/TableFeatures'
|
|
6
|
-
import type { Row } from '../../types/Row'
|
|
7
|
-
import type { Cell } from '../../types/Cell'
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Reads and caches this row's value for a column.
|
|
11
|
-
*
|
|
12
|
-
* The value is produced by the column accessor. Missing columns or display
|
|
13
|
-
* columns without an accessor return `undefined`.
|
|
14
|
-
*
|
|
15
|
-
* @example
|
|
16
|
-
* ```ts
|
|
17
|
-
* const firstName = row_getValue(row, 'firstName')
|
|
18
|
-
* ```
|
|
19
|
-
*/
|
|
20
|
-
export function row_getValue<
|
|
21
|
-
TFeatures extends TableFeatures,
|
|
22
|
-
TData extends RowData,
|
|
23
|
-
>(row: Row<TFeatures, TData>, columnId: string) {
|
|
24
|
-
if (row._valuesCache.hasOwnProperty(columnId)) {
|
|
25
|
-
return row._valuesCache[columnId]
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
const column = row.table.getColumn(columnId)
|
|
29
|
-
|
|
30
|
-
if (!column?.accessorFn) {
|
|
31
|
-
return undefined
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
row._valuesCache[columnId] = column.accessorFn(row.original, row.index)
|
|
35
|
-
|
|
36
|
-
return row._valuesCache[columnId]
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* Reads and caches the values used by faceting/grouping for a column.
|
|
41
|
-
*
|
|
42
|
-
* If the column defines `getUniqueValues`, that result is used. Otherwise the
|
|
43
|
-
* row's accessor value is wrapped in a single-item array.
|
|
44
|
-
*
|
|
45
|
-
* @example
|
|
46
|
-
* ```ts
|
|
47
|
-
* const values = row_getUniqueValues(row, 'tags')
|
|
48
|
-
* ```
|
|
49
|
-
*/
|
|
50
|
-
export function row_getUniqueValues<
|
|
51
|
-
TFeatures extends TableFeatures,
|
|
52
|
-
TData extends RowData,
|
|
53
|
-
>(row: Row<TFeatures, TData>, columnId: string) {
|
|
54
|
-
if (row._uniqueValuesCache.hasOwnProperty(columnId)) {
|
|
55
|
-
return row._uniqueValuesCache[columnId]
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
const column = row.table.getColumn(columnId)
|
|
59
|
-
|
|
60
|
-
if (!column?.accessorFn) {
|
|
61
|
-
return undefined
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
if (!column.columnDef.getUniqueValues) {
|
|
65
|
-
row._uniqueValuesCache[columnId] = [row.getValue(columnId)]
|
|
66
|
-
return row._uniqueValuesCache[columnId]
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
row._uniqueValuesCache[columnId] = column.columnDef.getUniqueValues(
|
|
70
|
-
row.original,
|
|
71
|
-
row.index,
|
|
72
|
-
)
|
|
73
|
-
|
|
74
|
-
return row._uniqueValuesCache[columnId]
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* Returns a renderable row value for a column.
|
|
79
|
-
*
|
|
80
|
-
* If the accessor value is nullish, the table's `renderFallbackValue` is used
|
|
81
|
-
* instead.
|
|
82
|
-
*
|
|
83
|
-
* @example
|
|
84
|
-
* ```ts
|
|
85
|
-
* const value = row_renderValue(row, 'firstName')
|
|
86
|
-
* ```
|
|
87
|
-
*/
|
|
88
|
-
export function row_renderValue<
|
|
89
|
-
TFeatures extends TableFeatures,
|
|
90
|
-
TData extends RowData,
|
|
91
|
-
>(row: Row<TFeatures, TData>, columnId: string) {
|
|
92
|
-
return row.getValue(columnId) ?? row.table.options.renderFallbackValue
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
/**
|
|
96
|
-
* Flattens this row's descendant tree into leaf rows.
|
|
97
|
-
*
|
|
98
|
-
* The row itself is not included; only nested `subRows` are walked.
|
|
99
|
-
*
|
|
100
|
-
* @example
|
|
101
|
-
* ```ts
|
|
102
|
-
* const descendants = row_getLeafRows(row)
|
|
103
|
-
* ```
|
|
104
|
-
*/
|
|
105
|
-
export function row_getLeafRows<
|
|
106
|
-
TFeatures extends TableFeatures,
|
|
107
|
-
TData extends RowData,
|
|
108
|
-
>(row: Row<TFeatures, TData>): Array<Row<TFeatures, TData>> {
|
|
109
|
-
return flattenBy(row.subRows, (d) => d.subRows)
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
/**
|
|
113
|
-
* Looks up this row's direct parent, if it has one.
|
|
114
|
-
*
|
|
115
|
-
* Parent lookup searches the pre-pagination row model so parent relationships
|
|
116
|
-
* are available even when the parent is not on the current page.
|
|
117
|
-
*
|
|
118
|
-
* @example
|
|
119
|
-
* ```ts
|
|
120
|
-
* const parent = row_getParentRow(row)
|
|
121
|
-
* ```
|
|
122
|
-
*/
|
|
123
|
-
export function row_getParentRow<
|
|
124
|
-
TFeatures extends TableFeatures,
|
|
125
|
-
TData extends RowData,
|
|
126
|
-
>(row: Row<TFeatures, TData>) {
|
|
127
|
-
return row.parentId ? row.table.getRow(row.parentId, true) : undefined
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
/**
|
|
131
|
-
* Collects this row's ancestor chain from root to direct parent.
|
|
132
|
-
*
|
|
133
|
-
* The current row is not included. Rows without a parent return an empty array.
|
|
134
|
-
*
|
|
135
|
-
* @example
|
|
136
|
-
* ```ts
|
|
137
|
-
* const ancestors = row_getParentRows(row)
|
|
138
|
-
* ```
|
|
139
|
-
*/
|
|
140
|
-
export function row_getParentRows<
|
|
141
|
-
TFeatures extends TableFeatures,
|
|
142
|
-
TData extends RowData,
|
|
143
|
-
>(row: Row<TFeatures, TData>) {
|
|
144
|
-
const parentRows: Array<Row<TFeatures, TData>> = []
|
|
145
|
-
let currentRow = row
|
|
146
|
-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
147
|
-
while (true) {
|
|
148
|
-
const parentRow = currentRow.getParentRow()
|
|
149
|
-
if (!parentRow) break
|
|
150
|
-
parentRows.push(parentRow)
|
|
151
|
-
currentRow = parentRow
|
|
152
|
-
}
|
|
153
|
-
return parentRows.reverse()
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
/**
|
|
157
|
-
* Constructs one cell for each leaf column in this row.
|
|
158
|
-
*
|
|
159
|
-
* The result follows `table.getAllLeafColumns()` order and includes hidden
|
|
160
|
-
* columns; visibility-specific APIs filter this list later.
|
|
161
|
-
*
|
|
162
|
-
* @example
|
|
163
|
-
* ```ts
|
|
164
|
-
* const cells = row_getAllCells(row)
|
|
165
|
-
* ```
|
|
166
|
-
*/
|
|
167
|
-
export function row_getAllCells<
|
|
168
|
-
TFeatures extends TableFeatures,
|
|
169
|
-
TData extends RowData,
|
|
170
|
-
>(row: Row<TFeatures, TData>): Array<Cell<TFeatures, TData, unknown>> {
|
|
171
|
-
const columns = row.table.getAllLeafColumns()
|
|
172
|
-
const cells: Array<Cell<TFeatures, TData, unknown>> = new Array(
|
|
173
|
-
columns.length,
|
|
174
|
-
)
|
|
175
|
-
for (let i = 0; i < columns.length; i++) {
|
|
176
|
-
cells[i] = constructCell(columns[i]!, row, row.table)
|
|
177
|
-
}
|
|
178
|
-
return cells
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
/**
|
|
182
|
-
* Builds a lookup map of this row's cells keyed by column id.
|
|
183
|
-
*
|
|
184
|
-
* This is the static implementation behind `row.getAllCellsByColumnId()`.
|
|
185
|
-
*
|
|
186
|
-
* @example
|
|
187
|
-
* ```ts
|
|
188
|
-
* const cellsById = row_getAllCellsByColumnId(row)
|
|
189
|
-
* ```
|
|
190
|
-
*/
|
|
191
|
-
export function row_getAllCellsByColumnId<
|
|
192
|
-
TFeatures extends TableFeatures,
|
|
193
|
-
TData extends RowData,
|
|
194
|
-
>(row: Row<TFeatures, TData>) {
|
|
195
|
-
const result: Record<string, Cell<TFeatures, TData, unknown>> = {}
|
|
196
|
-
const cells = row.getAllCells()
|
|
197
|
-
for (let i = 0; i < cells.length; i++) {
|
|
198
|
-
const cell = cells[i]!
|
|
199
|
-
result[cell.column.id] = cell
|
|
200
|
-
}
|
|
201
|
-
return result
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
/**
|
|
205
|
-
* Resolves the stable id for a row.
|
|
206
|
-
*
|
|
207
|
-
* `options.getRowId` wins when provided. Otherwise root rows use their index
|
|
208
|
-
* and child rows append their index to the parent id, such as `0.2`.
|
|
209
|
-
*
|
|
210
|
-
* @example
|
|
211
|
-
* ```ts
|
|
212
|
-
* const id = table_getRowId(originalRow, table, index, parentRow)
|
|
213
|
-
* ```
|
|
214
|
-
*/
|
|
215
|
-
export function table_getRowId<
|
|
216
|
-
TFeatures extends TableFeatures,
|
|
217
|
-
TData extends RowData,
|
|
218
|
-
>(
|
|
219
|
-
originalRow: TData,
|
|
220
|
-
table: Table_Internal<TFeatures, TData>,
|
|
221
|
-
index: number,
|
|
222
|
-
parent?: Row<TFeatures, TData>,
|
|
223
|
-
) {
|
|
224
|
-
return (
|
|
225
|
-
table.options.getRowId?.(originalRow, index, parent) ??
|
|
226
|
-
`${parent ? [parent.id, index].join('.') : index}`
|
|
227
|
-
)
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
/**
|
|
231
|
-
* Looks up a row by id from the current or full row model.
|
|
232
|
-
*
|
|
233
|
-
* By default this searches `table.getRowModel()`. Passing `searchAll` searches
|
|
234
|
-
* the pre-pagination model first, then falls back to the core model.
|
|
235
|
-
*
|
|
236
|
-
* @example
|
|
237
|
-
* ```ts
|
|
238
|
-
* const row = table_getRow(table, rowId, true)
|
|
239
|
-
* ```
|
|
240
|
-
*/
|
|
241
|
-
export function table_getRow<
|
|
242
|
-
TFeatures extends TableFeatures,
|
|
243
|
-
TData extends RowData,
|
|
244
|
-
>(
|
|
245
|
-
table: Table_Internal<TFeatures, TData>,
|
|
246
|
-
rowId: string,
|
|
247
|
-
searchAll?: boolean,
|
|
248
|
-
): Row<TFeatures, TData> {
|
|
249
|
-
// TODO - simplify this across different row models
|
|
250
|
-
let row = (searchAll ? table.getPrePaginatedRowModel() : table.getRowModel())
|
|
251
|
-
.rowsById[rowId]
|
|
252
|
-
|
|
253
|
-
if (!row) {
|
|
254
|
-
row = table.getCoreRowModel().rowsById[rowId]
|
|
255
|
-
if (!row) {
|
|
256
|
-
if (process.env.NODE_ENV === 'development') {
|
|
257
|
-
throw new Error(`getRow could not find row with ID: ${rowId}`)
|
|
258
|
-
}
|
|
259
|
-
throw new Error()
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
return row
|
|
264
|
-
}
|
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
import { coreFeatures } from '../coreFeatures'
|
|
2
|
-
import { cloneState } from '../../utils'
|
|
3
|
-
import { atomToStore } from '../reactivity/coreReactivityFeature.utils'
|
|
4
|
-
import { table_syncExternalStateToBaseAtoms } from './coreTablesFeature.utils'
|
|
5
|
-
import type { Atom } from '@tanstack/store'
|
|
6
|
-
import type { RowData } from '../../types/type-utils'
|
|
7
|
-
import type { TableFeature, TableFeatures } from '../../types/TableFeatures'
|
|
8
|
-
import type { Table, Table_Internal } from '../../types/Table'
|
|
9
|
-
import type { TableOptions } from '../../types/TableOptions'
|
|
10
|
-
import type { TableState, TableState_All } from '../../types/TableState'
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Builds the initial table state from registered features and user initial state.
|
|
14
|
-
*
|
|
15
|
-
* Each feature contributes its default state before user-provided `initialState` values are merged in.
|
|
16
|
-
*/
|
|
17
|
-
export function getInitialTableState<TFeatures extends TableFeatures>(
|
|
18
|
-
features: TFeatures,
|
|
19
|
-
initialState: Partial<TableState<TFeatures>> | undefined = {},
|
|
20
|
-
): TableState<TFeatures> {
|
|
21
|
-
Object.values(features).forEach((feature) => {
|
|
22
|
-
initialState = feature.getInitialState?.(initialState) ?? initialState
|
|
23
|
-
})
|
|
24
|
-
return cloneState(initialState) as TableState<TFeatures>
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* Constructs a table instance from normalized table internals.
|
|
29
|
-
*
|
|
30
|
-
* This wires core properties, feature prototype APIs, and instance data used by table rendering and row-model operations.
|
|
31
|
-
*/
|
|
32
|
-
export function constructTable<
|
|
33
|
-
TFeatures extends TableFeatures,
|
|
34
|
-
TData extends RowData,
|
|
35
|
-
>(tableOptions: TableOptions<TFeatures, TData>): Table<TFeatures, TData> {
|
|
36
|
-
const _reactivity = tableOptions.features.coreReativityFeature!
|
|
37
|
-
|
|
38
|
-
const table = {
|
|
39
|
-
_reactivity,
|
|
40
|
-
_features: { ...coreFeatures, ...tableOptions.features },
|
|
41
|
-
_rowModels: {},
|
|
42
|
-
_rowModelFns: {},
|
|
43
|
-
baseAtoms: {},
|
|
44
|
-
atoms: {},
|
|
45
|
-
} as Table_Internal<TFeatures, TData>
|
|
46
|
-
|
|
47
|
-
const featuresList: Array<TableFeature> = Object.values(table._features)
|
|
48
|
-
|
|
49
|
-
const defaultOptions = featuresList.reduce((obj, feature) => {
|
|
50
|
-
return Object.assign(obj, feature.getDefaultTableOptions?.(table))
|
|
51
|
-
}, {}) as TableOptions<TFeatures, TData>
|
|
52
|
-
|
|
53
|
-
const mergedOptions = { ...defaultOptions, ...tableOptions }
|
|
54
|
-
|
|
55
|
-
if (_reactivity.wrapExternalAtoms && mergedOptions.atoms) {
|
|
56
|
-
for (const [atomKey, _atom] of Object.entries(mergedOptions.atoms)) {
|
|
57
|
-
const atom = _atom as Atom<any>
|
|
58
|
-
const wrappedAtom = _reactivity.createWritableAtom(atom.get(), {
|
|
59
|
-
debugName: `externalAtom/${atomKey}`,
|
|
60
|
-
})
|
|
61
|
-
;(mergedOptions.atoms as any)[atomKey] = wrappedAtom
|
|
62
|
-
// Two-way syncing between the original atom and the wrapped one.
|
|
63
|
-
let syncExternal = false
|
|
64
|
-
const syncAtomToWrappedSub = atom.subscribe((value) => {
|
|
65
|
-
if (syncExternal) return
|
|
66
|
-
wrappedAtom.set(value)
|
|
67
|
-
})
|
|
68
|
-
const syncWrappedToAtomSub = wrappedAtom.subscribe((value) => {
|
|
69
|
-
syncExternal = true
|
|
70
|
-
atom.set(value)
|
|
71
|
-
syncExternal = false
|
|
72
|
-
})
|
|
73
|
-
_reactivity.addSubscription(syncAtomToWrappedSub)
|
|
74
|
-
_reactivity.addSubscription(syncWrappedToAtomSub)
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
if (_reactivity.createOptionsStore) {
|
|
79
|
-
// @ts-ignore - direct set
|
|
80
|
-
table.optionsStore = _reactivity.createWritableAtom<
|
|
81
|
-
TableOptions<TFeatures, TData>
|
|
82
|
-
>(mergedOptions, { debugName: 'table/optionsStore' })
|
|
83
|
-
Object.defineProperty(table, 'options', {
|
|
84
|
-
configurable: true,
|
|
85
|
-
enumerable: true,
|
|
86
|
-
get() {
|
|
87
|
-
return table.optionsStore!.get()
|
|
88
|
-
},
|
|
89
|
-
set(value) {
|
|
90
|
-
table.optionsStore!.set(() => value) // or your real update shape
|
|
91
|
-
},
|
|
92
|
-
})
|
|
93
|
-
} else {
|
|
94
|
-
table.options = mergedOptions
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
table.initialState = getInitialTableState(
|
|
98
|
-
table._features,
|
|
99
|
-
table.options.initialState,
|
|
100
|
-
)
|
|
101
|
-
|
|
102
|
-
const stateKeys = Object.keys(table.initialState) as Array<
|
|
103
|
-
string & keyof TableState_All
|
|
104
|
-
>
|
|
105
|
-
|
|
106
|
-
for (let i = 0; i < stateKeys.length; i++) {
|
|
107
|
-
const key = stateKeys[i]!
|
|
108
|
-
table.baseAtoms[key] = _reactivity.createWritableAtom(
|
|
109
|
-
table.initialState[key],
|
|
110
|
-
{
|
|
111
|
-
debugName: `table/baseAtoms/${key}`,
|
|
112
|
-
},
|
|
113
|
-
) as any
|
|
114
|
-
|
|
115
|
-
// create readonly derived atom: on each get(), read either external atom or base atom
|
|
116
|
-
;(table.atoms as any)[key] = _reactivity.createReadonlyAtom(
|
|
117
|
-
() => {
|
|
118
|
-
const externalAtoms = table.options.atoms as
|
|
119
|
-
| Partial<Record<keyof TableState_All, Atom<unknown>>>
|
|
120
|
-
| undefined
|
|
121
|
-
const externalAtom = externalAtoms?.[key]
|
|
122
|
-
if (externalAtom) {
|
|
123
|
-
return externalAtom.get()
|
|
124
|
-
}
|
|
125
|
-
return table.baseAtoms[key]!.get()
|
|
126
|
-
},
|
|
127
|
-
{ debugName: `table/atoms/${key}` },
|
|
128
|
-
)
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
table_syncExternalStateToBaseAtoms(table)
|
|
132
|
-
|
|
133
|
-
table.store = atomToStore(
|
|
134
|
-
_reactivity.createReadonlyAtom(
|
|
135
|
-
() => {
|
|
136
|
-
const snapshot = {} as TableState<TFeatures> & TableState_All
|
|
137
|
-
for (let i = 0; i < stateKeys.length; i++) {
|
|
138
|
-
const key = stateKeys[i]!
|
|
139
|
-
;(snapshot as Record<string, unknown>)[key] = table.atoms[key]!.get()
|
|
140
|
-
}
|
|
141
|
-
return snapshot
|
|
142
|
-
},
|
|
143
|
-
{ debugName: 'table/store' },
|
|
144
|
-
),
|
|
145
|
-
)
|
|
146
|
-
|
|
147
|
-
if (
|
|
148
|
-
process.env.NODE_ENV === 'development' &&
|
|
149
|
-
(tableOptions.debugAll || tableOptions.debugTable)
|
|
150
|
-
) {
|
|
151
|
-
const features = Object.keys(table._features)
|
|
152
|
-
const rowModels = Object.keys(table.options.rowModels || {})
|
|
153
|
-
const states = Object.keys(table.initialState)
|
|
154
|
-
|
|
155
|
-
console.log(
|
|
156
|
-
`Constructing Table Instance
|
|
157
|
-
|
|
158
|
-
Features: ${features.join('\n ')}
|
|
159
|
-
|
|
160
|
-
Row Models: ${rowModels.length ? rowModels.join('\n ') : '(none)'}
|
|
161
|
-
|
|
162
|
-
States: ${states.join('\n ')}\n`,
|
|
163
|
-
{ table },
|
|
164
|
-
)
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
for (let i = 0; i < featuresList.length; i++) {
|
|
168
|
-
featuresList[i]!.constructTableAPIs?.(table)
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
return table
|
|
172
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { assignTableAPIs } from '../../utils'
|
|
2
|
-
import { table_reset, table_setOptions } from './coreTablesFeature.utils'
|
|
3
|
-
import type { TableFeature } from '../../types/TableFeatures'
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Core feature that adds base table instance APIs such as reset and setOptions.
|
|
7
|
-
*/
|
|
8
|
-
export const coreTablesFeature: TableFeature = {
|
|
9
|
-
constructTableAPIs: (table) => {
|
|
10
|
-
assignTableAPIs('coreTablesFeature', table, {
|
|
11
|
-
table_reset: {
|
|
12
|
-
fn: () => table_reset(table),
|
|
13
|
-
},
|
|
14
|
-
table_setOptions: {
|
|
15
|
-
fn: (updater) => table_setOptions(table, updater),
|
|
16
|
-
},
|
|
17
|
-
})
|
|
18
|
-
},
|
|
19
|
-
}
|