@tanstack/table-core 9.0.0-alpha.10 → 9.0.0-alpha.11
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/dist/esm/core/cells/constructCell.d.ts +7 -0
- package/dist/esm/core/cells/constructCell.js +21 -0
- package/dist/esm/core/cells/constructCell.js.map +1 -0
- package/dist/esm/core/cells/coreCellsFeature.d.ts +10 -0
- package/dist/esm/core/cells/coreCellsFeature.js +26 -0
- package/dist/esm/core/cells/coreCellsFeature.js.map +1 -0
- package/dist/esm/core/cells/coreCellsFeature.types.d.ts +52 -0
- package/dist/esm/core/cells/coreCellsFeature.utils.d.ts +13 -0
- package/dist/esm/core/cells/coreCellsFeature.utils.js +23 -0
- package/dist/esm/core/cells/coreCellsFeature.utils.js.map +1 -0
- package/dist/esm/core/columns/constructColumn.d.ts +6 -0
- package/dist/esm/core/columns/constructColumn.js +60 -0
- package/dist/esm/core/columns/constructColumn.js.map +1 -0
- package/dist/esm/core/columns/coreColumnsFeature.d.ts +10 -0
- package/dist/esm/core/columns/coreColumnsFeature.js +61 -0
- package/dist/esm/core/columns/coreColumnsFeature.js.map +1 -0
- package/dist/esm/core/columns/coreColumnsFeature.types.d.ts +84 -0
- package/dist/esm/core/columns/coreColumnsFeature.utils.d.ts +13 -0
- package/dist/esm/core/columns/coreColumnsFeature.utils.js +91 -0
- package/dist/esm/core/columns/coreColumnsFeature.utils.js.map +1 -0
- package/dist/esm/core/coreFeatures.d.ts +15 -0
- package/dist/esm/core/coreFeatures.js +18 -0
- package/dist/esm/core/coreFeatures.js.map +1 -0
- package/dist/esm/core/headers/buildHeaderGroups.d.ts +6 -0
- package/dist/esm/core/headers/buildHeaderGroups.js +99 -0
- package/dist/esm/core/headers/buildHeaderGroups.js.map +1 -0
- package/dist/esm/core/headers/constructHeader.d.ts +12 -0
- package/dist/esm/core/headers/constructHeader.js +28 -0
- package/dist/esm/core/headers/constructHeader.js.map +1 -0
- package/dist/esm/core/headers/coreHeadersFeature.d.ts +10 -0
- package/dist/esm/core/headers/coreHeadersFeature.js +68 -0
- package/dist/esm/core/headers/coreHeadersFeature.js.map +1 -0
- package/dist/esm/core/headers/coreHeadersFeature.types.d.ts +99 -0
- package/dist/esm/core/headers/coreHeadersFeature.utils.d.ts +15 -0
- package/dist/esm/core/headers/coreHeadersFeature.utils.js +85 -0
- package/dist/esm/core/headers/coreHeadersFeature.utils.js.map +1 -0
- package/dist/esm/core/row-models/coreRowModelsFeature.d.ts +10 -0
- package/dist/esm/core/row-models/coreRowModelsFeature.js +52 -0
- package/dist/esm/core/row-models/coreRowModelsFeature.js.map +1 -0
- package/dist/esm/core/row-models/coreRowModelsFeature.types.d.ts +39 -0
- package/dist/esm/core/row-models/coreRowModelsFeature.utils.d.ts +16 -0
- package/dist/esm/core/row-models/coreRowModelsFeature.utils.js +85 -0
- package/dist/esm/core/row-models/coreRowModelsFeature.utils.js.map +1 -0
- package/dist/esm/core/row-models/createCoreRowModel.d.ts +5 -0
- package/dist/esm/core/row-models/createCoreRowModel.js +54 -0
- package/dist/esm/core/row-models/createCoreRowModel.js.map +1 -0
- package/dist/esm/core/rows/constructRow.d.ts +5 -0
- package/dist/esm/core/rows/constructRow.js +29 -0
- package/dist/esm/core/rows/constructRow.js.map +1 -0
- package/dist/esm/core/rows/coreRowsFeature.d.ts +10 -0
- package/dist/esm/core/rows/coreRowsFeature.js +52 -0
- package/dist/esm/core/rows/coreRowsFeature.js.map +1 -0
- package/dist/esm/core/rows/coreRowsFeature.types.d.ts +91 -0
- package/dist/esm/core/rows/coreRowsFeature.utils.d.ts +15 -0
- package/dist/esm/core/rows/coreRowsFeature.utils.js +94 -0
- package/dist/esm/core/rows/coreRowsFeature.utils.js.map +1 -0
- package/dist/esm/core/table/constructTable.d.ts +9 -0
- package/dist/esm/core/table/constructTable.js +65 -0
- package/dist/esm/core/table/constructTable.js.map +1 -0
- package/dist/esm/core/table/coreTablesFeature.d.ts +10 -0
- package/dist/esm/core/table/coreTablesFeature.js +22 -0
- package/dist/esm/core/table/coreTablesFeature.js.map +1 -0
- package/dist/esm/core/table/coreTablesFeature.types.d.ts +105 -0
- package/dist/esm/core/table/coreTablesFeature.utils.d.ts +7 -0
- package/dist/esm/core/table/coreTablesFeature.utils.js +23 -0
- package/dist/esm/core/table/coreTablesFeature.utils.js.map +1 -0
- package/dist/esm/features/column-faceting/columnFacetingFeature.d.ts +10 -0
- package/dist/esm/features/column-faceting/columnFacetingFeature.js +80 -0
- package/dist/esm/features/column-faceting/columnFacetingFeature.js.map +1 -0
- package/dist/esm/features/column-faceting/columnFacetingFeature.types.d.ts +68 -0
- package/dist/esm/features/column-faceting/columnFacetingFeature.utils.d.ts +11 -0
- package/dist/esm/features/column-faceting/columnFacetingFeature.utils.js +33 -0
- package/dist/esm/features/column-faceting/columnFacetingFeature.utils.js.map +1 -0
- package/dist/esm/features/column-faceting/createFacetedMinMaxValues.d.ts +4 -0
- package/dist/esm/features/column-faceting/createFacetedMinMaxValues.js +41 -0
- package/dist/esm/features/column-faceting/createFacetedMinMaxValues.js.map +1 -0
- package/dist/esm/features/column-faceting/createFacetedRowModel.d.ts +5 -0
- package/dist/esm/features/column-faceting/createFacetedRowModel.js +47 -0
- package/dist/esm/features/column-faceting/createFacetedRowModel.js.map +1 -0
- package/dist/esm/features/column-faceting/createFacetedUniqueValues.d.ts +4 -0
- package/dist/esm/features/column-faceting/createFacetedUniqueValues.js +46 -0
- package/dist/esm/features/column-faceting/createFacetedUniqueValues.js.map +1 -0
- package/dist/esm/features/column-filtering/columnFilteringFeature.d.ts +11 -0
- package/dist/esm/features/column-filtering/columnFilteringFeature.js +69 -0
- package/dist/esm/features/column-filtering/columnFilteringFeature.js.map +1 -0
- package/dist/esm/features/column-filtering/columnFilteringFeature.types.d.ts +145 -0
- package/dist/esm/features/column-filtering/columnFilteringFeature.utils.d.ts +16 -0
- package/dist/esm/features/column-filtering/columnFilteringFeature.utils.js +118 -0
- package/dist/esm/features/column-filtering/columnFilteringFeature.utils.js.map +1 -0
- package/dist/esm/features/column-filtering/createFilteredRowModel.d.ts +6 -0
- package/dist/esm/features/column-filtering/createFilteredRowModel.js +110 -0
- package/dist/esm/features/column-filtering/createFilteredRowModel.js.map +1 -0
- package/dist/esm/features/column-filtering/filterRowsUtils.d.ts +6 -0
- package/dist/esm/{utils → features/column-filtering}/filterRowsUtils.js +15 -19
- package/dist/esm/features/column-filtering/filterRowsUtils.js.map +1 -0
- package/dist/esm/features/column-grouping/columnGroupingFeature.d.ts +10 -0
- package/dist/esm/features/column-grouping/columnGroupingFeature.js +91 -0
- package/dist/esm/features/column-grouping/columnGroupingFeature.js.map +1 -0
- package/dist/esm/features/column-grouping/columnGroupingFeature.types.d.ts +153 -0
- package/dist/esm/features/column-grouping/columnGroupingFeature.utils.d.ts +22 -0
- package/dist/esm/features/column-grouping/columnGroupingFeature.utils.js +99 -0
- package/dist/esm/features/column-grouping/columnGroupingFeature.utils.js.map +1 -0
- package/dist/esm/features/column-grouping/createGroupedRowModel.d.ts +6 -0
- package/dist/esm/features/column-grouping/createGroupedRowModel.js +144 -0
- package/dist/esm/features/column-grouping/createGroupedRowModel.js.map +1 -0
- package/dist/esm/features/column-ordering/columnOrderingFeature.d.ts +10 -0
- package/dist/esm/features/column-ordering/columnOrderingFeature.js +60 -0
- package/dist/esm/features/column-ordering/columnOrderingFeature.js.map +1 -0
- package/dist/{cjs/features/ColumnOrdering.d.cts → esm/features/column-ordering/columnOrderingFeature.types.d.ts} +8 -22
- package/dist/esm/features/column-ordering/columnOrderingFeature.utils.d.ts +14 -0
- package/dist/esm/features/column-ordering/columnOrderingFeature.utils.js +72 -0
- package/dist/esm/features/column-ordering/columnOrderingFeature.utils.js.map +1 -0
- package/dist/esm/features/column-pinning/columnPinningFeature.d.ts +10 -0
- package/dist/esm/features/column-pinning/columnPinningFeature.js +260 -0
- package/dist/esm/features/column-pinning/columnPinningFeature.js.map +1 -0
- package/dist/esm/features/column-pinning/columnPinningFeature.types.d.ts +157 -0
- package/dist/esm/features/column-pinning/columnPinningFeature.utils.d.ts +39 -0
- package/dist/esm/features/column-pinning/columnPinningFeature.utils.js +325 -0
- package/dist/esm/features/column-pinning/columnPinningFeature.utils.js.map +1 -0
- package/dist/esm/features/column-resizing/columnResizingFeature.d.ts +11 -0
- package/dist/esm/features/column-resizing/columnResizingFeature.js +52 -0
- package/dist/esm/features/column-resizing/columnResizingFeature.js.map +1 -0
- package/dist/esm/features/column-resizing/columnResizingFeature.types.d.ts +68 -0
- package/dist/esm/features/column-resizing/columnResizingFeature.utils.d.ts +14 -0
- package/dist/esm/features/column-resizing/columnResizingFeature.utils.js +193 -0
- package/dist/esm/features/column-resizing/columnResizingFeature.utils.js.map +1 -0
- package/dist/esm/features/column-sizing/columnSizingFeature.d.ts +11 -0
- package/dist/esm/features/column-sizing/columnSizingFeature.js +95 -0
- package/dist/esm/features/column-sizing/columnSizingFeature.js.map +1 -0
- package/dist/esm/features/column-sizing/columnSizingFeature.types.d.ts +81 -0
- package/dist/esm/features/column-sizing/columnSizingFeature.utils.d.ts +25 -0
- package/dist/esm/features/column-sizing/columnSizingFeature.utils.js +128 -0
- package/dist/esm/features/column-sizing/columnSizingFeature.utils.js.map +1 -0
- package/dist/esm/features/column-visibility/columnVisibilityFeature.d.ts +10 -0
- package/dist/esm/features/column-visibility/columnVisibilityFeature.js +100 -0
- package/dist/esm/features/column-visibility/columnVisibilityFeature.js.map +1 -0
- package/dist/esm/features/column-visibility/columnVisibilityFeature.types.d.ts +84 -0
- package/dist/esm/features/column-visibility/columnVisibilityFeature.utils.d.ts +22 -0
- package/dist/esm/features/column-visibility/columnVisibilityFeature.utils.js +105 -0
- package/dist/esm/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -0
- package/dist/esm/features/global-filtering/globalFilteringFeature.d.ts +11 -0
- package/dist/esm/features/global-filtering/globalFilteringFeature.js +51 -0
- package/dist/esm/features/global-filtering/globalFilteringFeature.js.map +1 -0
- package/dist/esm/features/global-filtering/globalFilteringFeature.types.d.ts +59 -0
- package/dist/esm/features/global-filtering/globalFilteringFeature.utils.d.ts +10 -0
- package/dist/esm/features/global-filtering/globalFilteringFeature.utils.js +30 -0
- package/dist/esm/features/global-filtering/globalFilteringFeature.utils.js.map +1 -0
- package/dist/esm/features/row-expanding/createExpandedRowModel.d.ts +6 -0
- package/dist/esm/features/row-expanding/createExpandedRowModel.js +49 -0
- package/dist/esm/features/row-expanding/createExpandedRowModel.js.map +1 -0
- package/dist/esm/features/row-expanding/rowExpandingFeature.d.ts +10 -0
- package/dist/esm/features/row-expanding/rowExpandingFeature.js +74 -0
- package/dist/esm/features/row-expanding/rowExpandingFeature.js.map +1 -0
- package/dist/esm/features/row-expanding/rowExpandingFeature.types.d.ts +116 -0
- package/dist/esm/features/row-expanding/rowExpandingFeature.utils.d.ts +20 -0
- package/dist/esm/features/row-expanding/rowExpandingFeature.utils.js +125 -0
- package/dist/esm/features/row-expanding/rowExpandingFeature.utils.js.map +1 -0
- package/dist/esm/features/row-pagination/createPaginatedRowModel.d.ts +5 -0
- package/dist/esm/features/row-pagination/createPaginatedRowModel.js +58 -0
- package/dist/esm/features/row-pagination/createPaginatedRowModel.js.map +1 -0
- package/dist/esm/features/row-pagination/rowPaginationFeature.d.ts +10 -0
- package/dist/esm/features/row-pagination/rowPaginationFeature.js +78 -0
- package/dist/esm/features/row-pagination/rowPaginationFeature.js.map +1 -0
- package/dist/esm/features/row-pagination/rowPaginationFeature.types.d.ts +119 -0
- package/dist/esm/features/row-pagination/rowPaginationFeature.utils.d.ts +21 -0
- package/dist/esm/features/row-pagination/rowPaginationFeature.utils.js +126 -0
- package/dist/esm/features/row-pagination/rowPaginationFeature.utils.js.map +1 -0
- package/dist/esm/features/row-pinning/rowPinningFeature.d.ts +10 -0
- package/dist/esm/features/row-pinning/rowPinningFeature.js +80 -0
- package/dist/esm/features/row-pinning/rowPinningFeature.js.map +1 -0
- package/dist/esm/features/row-pinning/rowPinningFeature.types.d.ts +72 -0
- package/dist/esm/features/row-pinning/rowPinningFeature.utils.d.ts +16 -0
- package/dist/esm/features/row-pinning/rowPinningFeature.utils.js +115 -0
- package/dist/esm/features/row-pinning/rowPinningFeature.utils.js.map +1 -0
- package/dist/esm/features/row-selection/rowSelectionFeature.d.ts +10 -0
- package/dist/esm/features/row-selection/rowSelectionFeature.js +112 -0
- package/dist/esm/features/row-selection/rowSelectionFeature.js.map +1 -0
- package/dist/esm/features/row-selection/rowSelectionFeature.types.d.ts +123 -0
- package/dist/esm/features/row-selection/rowSelectionFeature.utils.d.ts +34 -0
- package/dist/esm/features/row-selection/rowSelectionFeature.utils.js +290 -0
- package/dist/esm/features/row-selection/rowSelectionFeature.utils.js.map +1 -0
- package/dist/esm/features/row-sorting/createSortedRowModel.d.ts +6 -0
- package/dist/esm/features/row-sorting/createSortedRowModel.js +94 -0
- package/dist/esm/features/row-sorting/createSortedRowModel.js.map +1 -0
- package/dist/esm/features/row-sorting/rowSortingFeature.d.ts +10 -0
- package/dist/esm/features/row-sorting/rowSortingFeature.js +82 -0
- package/dist/esm/features/row-sorting/rowSortingFeature.js.map +1 -0
- package/dist/esm/features/row-sorting/rowSortingFeature.types.d.ts +178 -0
- package/dist/esm/features/row-sorting/rowSortingFeature.utils.d.ts +20 -0
- package/dist/esm/features/row-sorting/rowSortingFeature.utils.js +181 -0
- package/dist/esm/features/row-sorting/rowSortingFeature.utils.js.map +1 -0
- package/dist/esm/features/stockFeatures.d.ts +31 -0
- package/dist/esm/features/stockFeatures.js +34 -0
- package/dist/esm/features/stockFeatures.js.map +1 -0
- package/dist/esm/fns/aggregationFns.d.ts +49 -0
- package/dist/esm/fns/aggregationFns.js +110 -0
- package/dist/esm/fns/aggregationFns.js.map +1 -0
- package/dist/esm/fns/filterFns.d.ts +76 -0
- package/dist/esm/fns/filterFns.js +134 -0
- package/dist/esm/fns/filterFns.js.map +1 -0
- package/dist/esm/fns/sortFns.d.ts +17 -0
- package/dist/esm/{sortingFns.js → fns/sortFns.js} +21 -15
- package/dist/esm/fns/sortFns.js.map +1 -0
- package/dist/esm/helpers/columnHelper.d.ts +61 -0
- package/dist/esm/{columnHelper.js → helpers/columnHelper.js} +1 -0
- package/dist/esm/helpers/columnHelper.js.map +1 -0
- package/dist/esm/helpers/tableFeatures.d.ts +13 -0
- package/dist/esm/helpers/tableFeatures.js +7 -0
- package/dist/esm/helpers/tableFeatures.js.map +1 -0
- package/dist/esm/helpers/tableHelper.d.ts +25 -0
- package/dist/esm/helpers/tableHelper.js +13 -0
- package/dist/esm/helpers/tableHelper.js.map +1 -0
- package/dist/esm/helpers/tableOptions.d.ts +23 -0
- package/dist/esm/helpers/tableOptions.js +7 -0
- package/dist/esm/helpers/tableOptions.js.map +1 -0
- package/dist/esm/index.d.ts +109 -33
- package/dist/esm/index.js +397 -66
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/Cell.d.ts +13 -0
- package/dist/esm/types/Column.d.ts +26 -0
- package/dist/esm/types/ColumnDef.d.ts +64 -0
- package/dist/esm/types/Header.d.ts +14 -0
- package/dist/esm/types/HeaderGroup.d.ts +12 -0
- package/dist/esm/types/Row.d.ts +19 -0
- package/dist/esm/types/RowModel.d.ts +23 -0
- package/dist/esm/types/RowModelFns.d.ts +15 -0
- package/dist/esm/types/Table.d.ts +53 -0
- package/dist/esm/types/TableFeatures.d.ts +77 -0
- package/dist/esm/types/TableOptions.d.ts +39 -0
- package/dist/esm/types/TableState.d.ts +23 -0
- package/dist/esm/types/type-utils.d.ts +22 -0
- package/dist/esm/utils.d.ts +66 -33
- package/dist/esm/utils.js +183 -50
- package/dist/esm/utils.js.map +1 -1
- package/package.json +21 -12
- package/src/core/cells/constructCell.ts +49 -0
- package/src/core/cells/coreCellsFeature.ts +44 -0
- package/src/core/cells/coreCellsFeature.types.ts +68 -0
- package/src/core/cells/coreCellsFeature.utils.ts +35 -0
- package/src/core/columns/constructColumn.ts +111 -0
- package/src/core/columns/coreColumnsFeature.ts +90 -0
- package/src/core/columns/coreColumnsFeature.types.ts +103 -0
- package/src/core/columns/coreColumnsFeature.utils.ts +160 -0
- package/src/core/coreFeatures.ts +24 -0
- package/src/core/headers/buildHeaderGroups.ts +177 -0
- package/src/core/headers/constructHeader.ts +61 -0
- package/src/core/headers/coreHeadersFeature.ts +98 -0
- package/src/core/headers/coreHeadersFeature.types.ts +123 -0
- package/src/core/headers/coreHeadersFeature.utils.ts +131 -0
- package/src/core/row-models/coreRowModelsFeature.ts +78 -0
- package/src/core/row-models/coreRowModelsFeature.types.ts +67 -0
- package/src/core/row-models/coreRowModelsFeature.utils.ts +140 -0
- package/src/core/row-models/createCoreRowModel.ts +88 -0
- package/src/core/rows/constructRow.ts +59 -0
- package/src/core/rows/coreRowsFeature.ts +84 -0
- package/src/core/rows/coreRowsFeature.types.ts +111 -0
- package/src/core/rows/coreRowsFeature.utils.ts +152 -0
- package/src/core/table/constructTable.ts +95 -0
- package/src/core/table/coreTablesFeature.ts +36 -0
- package/src/core/table/coreTablesFeature.types.ts +123 -0
- package/src/core/table/coreTablesFeature.utils.ts +40 -0
- package/src/features/column-faceting/columnFacetingFeature.ts +112 -0
- package/src/features/column-faceting/columnFacetingFeature.types.ts +97 -0
- package/src/features/column-faceting/columnFacetingFeature.utils.ts +77 -0
- package/src/features/column-faceting/createFacetedMinMaxValues.ts +63 -0
- package/src/features/column-faceting/createFacetedRowModel.ts +76 -0
- package/src/features/column-faceting/createFacetedUniqueValues.ts +60 -0
- package/src/features/column-filtering/columnFilteringFeature.ts +121 -0
- package/src/features/column-filtering/columnFilteringFeature.types.ts +219 -0
- package/src/features/column-filtering/columnFilteringFeature.utils.ts +213 -0
- package/src/features/column-filtering/createFilteredRowModel.ts +171 -0
- package/src/features/column-filtering/filterRowsUtils.ts +152 -0
- package/src/features/column-grouping/columnGroupingFeature.ts +151 -0
- package/src/features/column-grouping/columnGroupingFeature.types.ts +218 -0
- package/src/features/column-grouping/columnGroupingFeature.utils.ts +192 -0
- package/src/features/column-grouping/createGroupedRowModel.ts +215 -0
- package/src/features/column-ordering/columnOrderingFeature.ts +96 -0
- package/src/features/column-ordering/columnOrderingFeature.types.ts +49 -0
- package/src/features/column-ordering/columnOrderingFeature.utils.ts +133 -0
- package/src/features/column-pinning/columnPinningFeature.ts +324 -0
- package/src/features/column-pinning/columnPinningFeature.types.ts +176 -0
- package/src/features/column-pinning/columnPinningFeature.utils.ts +537 -0
- package/src/features/column-resizing/columnResizingFeature.ts +92 -0
- package/src/features/column-resizing/columnResizingFeature.types.ts +81 -0
- package/src/features/column-resizing/columnResizingFeature.utils.ts +265 -0
- package/src/features/column-sizing/columnSizingFeature.ts +146 -0
- package/src/features/column-sizing/columnSizingFeature.types.ts +92 -0
- package/src/features/column-sizing/columnSizingFeature.utils.ts +211 -0
- package/src/features/column-visibility/columnVisibilityFeature.ts +155 -0
- package/src/features/column-visibility/columnVisibilityFeature.types.ts +101 -0
- package/src/features/column-visibility/columnVisibilityFeature.utils.ts +183 -0
- package/src/features/global-filtering/globalFilteringFeature.ts +92 -0
- package/src/features/global-filtering/globalFilteringFeature.types.ts +84 -0
- package/src/features/global-filtering/globalFilteringFeature.utils.ts +60 -0
- package/src/features/row-expanding/createExpandedRowModel.ts +72 -0
- package/src/features/row-expanding/rowExpandingFeature.ts +122 -0
- package/src/features/row-expanding/rowExpandingFeature.types.ts +141 -0
- package/src/features/row-expanding/rowExpandingFeature.utils.ts +207 -0
- package/src/features/row-pagination/createPaginatedRowModel.ts +78 -0
- package/src/features/row-pagination/rowPaginationFeature.ts +121 -0
- package/src/features/row-pagination/rowPaginationFeature.types.ts +141 -0
- package/src/features/row-pagination/rowPaginationFeature.utils.ts +204 -0
- package/src/features/row-pinning/rowPinningFeature.ts +121 -0
- package/src/features/row-pinning/rowPinningFeature.types.ts +89 -0
- package/src/features/row-pinning/rowPinningFeature.utils.ts +197 -0
- package/src/features/row-selection/rowSelectionFeature.ts +164 -0
- package/src/features/row-selection/rowSelectionFeature.types.ts +143 -0
- package/src/features/row-selection/rowSelectionFeature.utils.ts +464 -0
- package/src/features/row-sorting/createSortedRowModel.ts +147 -0
- package/src/features/row-sorting/rowSortingFeature.ts +136 -0
- package/src/features/row-sorting/rowSortingFeature.types.ts +229 -0
- package/src/features/row-sorting/rowSortingFeature.utils.ts +320 -0
- package/src/features/stockFeatures.ts +48 -0
- package/src/fns/aggregationFns.ts +220 -0
- package/src/fns/filterFns.ts +379 -0
- package/src/{sortingFns.ts → fns/sortFns.ts} +66 -21
- package/src/helpers/columnHelper.ts +117 -0
- package/src/helpers/tableFeatures.ts +24 -0
- package/src/helpers/tableHelper.ts +61 -0
- package/src/helpers/tableOptions.ts +82 -0
- package/src/index.ts +156 -42
- package/src/types/Cell.ts +41 -0
- package/src/types/Column.ts +86 -0
- package/src/types/ColumnDef.ts +217 -0
- package/src/types/Header.ts +45 -0
- package/src/types/HeaderGroup.ts +24 -0
- package/src/types/Row.ts +55 -0
- package/src/types/RowModel.ts +137 -0
- package/src/types/RowModelFns.ts +51 -0
- package/src/types/Table.ts +125 -0
- package/src/types/TableFeatures.ts +150 -0
- package/src/types/TableOptions.ts +125 -0
- package/src/types/TableState.ts +88 -0
- package/src/types/type-utils.ts +84 -0
- package/src/utils.ts +344 -164
- package/dist/cjs/aggregationFns.cjs +0 -94
- package/dist/cjs/aggregationFns.cjs.map +0 -1
- package/dist/cjs/aggregationFns.d.cts +0 -14
- package/dist/cjs/columnHelper.cjs +0 -19
- package/dist/cjs/columnHelper.cjs.map +0 -1
- package/dist/cjs/columnHelper.d.cts +0 -9
- package/dist/cjs/core/cell.cjs +0 -38
- package/dist/cjs/core/cell.cjs.map +0 -1
- package/dist/cjs/core/cell.d.cts +0 -50
- package/dist/cjs/core/column.cjs +0 -81
- package/dist/cjs/core/column.cjs.map +0 -1
- package/dist/cjs/core/column.d.cts +0 -56
- package/dist/cjs/core/headers.cjs +0 -310
- package/dist/cjs/core/headers.cjs.map +0 -1
- package/dist/cjs/core/headers.d.cts +0 -195
- package/dist/cjs/core/row.cjs +0 -92
- package/dist/cjs/core/row.cjs.map +0 -1
- package/dist/cjs/core/row.d.cts +0 -92
- package/dist/cjs/core/table.cjs +0 -232
- package/dist/cjs/core/table.cjs.map +0 -1
- package/dist/cjs/core/table.d.cts +0 -229
- package/dist/cjs/features/ColumnFaceting.cjs +0 -29
- package/dist/cjs/features/ColumnFaceting.cjs.map +0 -1
- package/dist/cjs/features/ColumnFaceting.d.cts +0 -35
- package/dist/cjs/features/ColumnFiltering.cjs +0 -137
- package/dist/cjs/features/ColumnFiltering.cjs.map +0 -1
- package/dist/cjs/features/ColumnFiltering.d.cts +0 -195
- package/dist/cjs/features/ColumnGrouping.cjs +0 -133
- package/dist/cjs/features/ColumnGrouping.cjs.map +0 -1
- package/dist/cjs/features/ColumnGrouping.d.cts +0 -202
- package/dist/cjs/features/ColumnOrdering.cjs +0 -76
- package/dist/cjs/features/ColumnOrdering.cjs.map +0 -1
- package/dist/cjs/features/ColumnPinning.cjs +0 -145
- package/dist/cjs/features/ColumnPinning.cjs.map +0 -1
- package/dist/cjs/features/ColumnPinning.d.cts +0 -127
- package/dist/cjs/features/ColumnSizing.cjs +0 -307
- package/dist/cjs/features/ColumnSizing.cjs.map +0 -1
- package/dist/cjs/features/ColumnSizing.d.cts +0 -194
- package/dist/cjs/features/ColumnVisibility.cjs +0 -144
- package/dist/cjs/features/ColumnVisibility.cjs.map +0 -1
- package/dist/cjs/features/ColumnVisibility.d.cts +0 -130
- package/dist/cjs/features/GlobalFaceting.cjs +0 -29
- package/dist/cjs/features/GlobalFaceting.cjs.map +0 -1
- package/dist/cjs/features/GlobalFaceting.d.cts +0 -27
- package/dist/cjs/features/GlobalFiltering.cjs +0 -50
- package/dist/cjs/features/GlobalFiltering.cjs.map +0 -1
- package/dist/cjs/features/GlobalFiltering.d.cts +0 -80
- package/dist/cjs/features/RowExpanding.cjs +0 -152
- package/dist/cjs/features/RowExpanding.cjs.map +0 -1
- package/dist/cjs/features/RowExpanding.d.cts +0 -155
- package/dist/cjs/features/RowPagination.cjs +0 -161
- package/dist/cjs/features/RowPagination.cjs.map +0 -1
- package/dist/cjs/features/RowPagination.d.cts +0 -166
- package/dist/cjs/features/RowPinning.cjs +0 -132
- package/dist/cjs/features/RowPinning.cjs.map +0 -1
- package/dist/cjs/features/RowPinning.d.cts +0 -99
- package/dist/cjs/features/RowSelection.cjs +0 -296
- package/dist/cjs/features/RowSelection.cjs.map +0 -1
- package/dist/cjs/features/RowSelection.d.cts +0 -177
- package/dist/cjs/features/RowSorting.cjs +0 -200
- package/dist/cjs/features/RowSorting.cjs.map +0 -1
- package/dist/cjs/features/RowSorting.d.cts +0 -238
- package/dist/cjs/filterFns.cjs +0 -88
- package/dist/cjs/filterFns.cjs.map +0 -1
- package/dist/cjs/filterFns.d.cts +0 -14
- package/dist/cjs/index.cjs +0 -88
- package/dist/cjs/index.cjs.map +0 -1
- package/dist/cjs/index.d.cts +0 -34
- package/dist/cjs/sortingFns.cjs +0 -91
- package/dist/cjs/sortingFns.cjs.map +0 -1
- package/dist/cjs/sortingFns.d.cts +0 -12
- package/dist/cjs/types.d.cts +0 -120
- package/dist/cjs/utils/filterRowsUtils.cjs +0 -99
- package/dist/cjs/utils/filterRowsUtils.cjs.map +0 -1
- package/dist/cjs/utils/filterRowsUtils.d.cts +0 -3
- package/dist/cjs/utils/getCoreRowModel.cjs +0 -54
- package/dist/cjs/utils/getCoreRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getCoreRowModel.d.cts +0 -3
- package/dist/cjs/utils/getExpandedRowModel.cjs +0 -41
- package/dist/cjs/utils/getExpandedRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getExpandedRowModel.d.cts +0 -8
- package/dist/cjs/utils/getFacetedMinMaxValues.cjs +0 -35
- package/dist/cjs/utils/getFacetedMinMaxValues.cjs.map +0 -1
- package/dist/cjs/utils/getFacetedMinMaxValues.d.cts +0 -3
- package/dist/cjs/utils/getFacetedRowModel.cjs +0 -35
- package/dist/cjs/utils/getFacetedRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getFacetedRowModel.d.cts +0 -3
- package/dist/cjs/utils/getFacetedUniqueValues.cjs +0 -37
- package/dist/cjs/utils/getFacetedUniqueValues.cjs.map +0 -1
- package/dist/cjs/utils/getFacetedUniqueValues.d.cts +0 -3
- package/dist/cjs/utils/getFilteredRowModel.cjs +0 -116
- package/dist/cjs/utils/getFilteredRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getFilteredRowModel.d.cts +0 -3
- package/dist/cjs/utils/getGroupedRowModel.cjs +0 -118
- package/dist/cjs/utils/getGroupedRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getGroupedRowModel.d.cts +0 -3
- package/dist/cjs/utils/getPaginationRowModel.cjs +0 -49
- package/dist/cjs/utils/getPaginationRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getPaginationRowModel.d.cts +0 -5
- package/dist/cjs/utils/getSortedRowModel.cjs +0 -88
- package/dist/cjs/utils/getSortedRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getSortedRowModel.d.cts +0 -3
- package/dist/cjs/utils.cjs +0 -98
- package/dist/cjs/utils.cjs.map +0 -1
- package/dist/cjs/utils.d.cts +0 -39
- package/dist/esm/aggregationFns.d.ts +0 -14
- package/dist/esm/aggregationFns.js +0 -94
- package/dist/esm/aggregationFns.js.map +0 -1
- package/dist/esm/columnHelper.d.ts +0 -9
- package/dist/esm/columnHelper.js.map +0 -1
- package/dist/esm/core/cell.d.ts +0 -50
- package/dist/esm/core/cell.js +0 -38
- package/dist/esm/core/cell.js.map +0 -1
- package/dist/esm/core/column.d.ts +0 -56
- package/dist/esm/core/column.js +0 -81
- package/dist/esm/core/column.js.map +0 -1
- package/dist/esm/core/headers.d.ts +0 -195
- package/dist/esm/core/headers.js +0 -310
- package/dist/esm/core/headers.js.map +0 -1
- package/dist/esm/core/row.d.ts +0 -92
- package/dist/esm/core/row.js +0 -92
- package/dist/esm/core/row.js.map +0 -1
- package/dist/esm/core/table.d.ts +0 -229
- package/dist/esm/core/table.js +0 -232
- package/dist/esm/core/table.js.map +0 -1
- package/dist/esm/features/ColumnFaceting.d.ts +0 -35
- package/dist/esm/features/ColumnFaceting.js +0 -29
- package/dist/esm/features/ColumnFaceting.js.map +0 -1
- package/dist/esm/features/ColumnFiltering.d.ts +0 -195
- package/dist/esm/features/ColumnFiltering.js +0 -137
- package/dist/esm/features/ColumnFiltering.js.map +0 -1
- package/dist/esm/features/ColumnGrouping.d.ts +0 -202
- package/dist/esm/features/ColumnGrouping.js +0 -133
- package/dist/esm/features/ColumnGrouping.js.map +0 -1
- package/dist/esm/features/ColumnOrdering.d.ts +0 -54
- package/dist/esm/features/ColumnOrdering.js +0 -76
- package/dist/esm/features/ColumnOrdering.js.map +0 -1
- package/dist/esm/features/ColumnPinning.d.ts +0 -127
- package/dist/esm/features/ColumnPinning.js +0 -145
- package/dist/esm/features/ColumnPinning.js.map +0 -1
- package/dist/esm/features/ColumnSizing.d.ts +0 -194
- package/dist/esm/features/ColumnSizing.js +0 -307
- package/dist/esm/features/ColumnSizing.js.map +0 -1
- package/dist/esm/features/ColumnVisibility.d.ts +0 -130
- package/dist/esm/features/ColumnVisibility.js +0 -144
- package/dist/esm/features/ColumnVisibility.js.map +0 -1
- package/dist/esm/features/GlobalFaceting.d.ts +0 -27
- package/dist/esm/features/GlobalFaceting.js +0 -29
- package/dist/esm/features/GlobalFaceting.js.map +0 -1
- package/dist/esm/features/GlobalFiltering.d.ts +0 -80
- package/dist/esm/features/GlobalFiltering.js +0 -50
- package/dist/esm/features/GlobalFiltering.js.map +0 -1
- package/dist/esm/features/RowExpanding.d.ts +0 -155
- package/dist/esm/features/RowExpanding.js +0 -152
- package/dist/esm/features/RowExpanding.js.map +0 -1
- package/dist/esm/features/RowPagination.d.ts +0 -166
- package/dist/esm/features/RowPagination.js +0 -161
- package/dist/esm/features/RowPagination.js.map +0 -1
- package/dist/esm/features/RowPinning.d.ts +0 -99
- package/dist/esm/features/RowPinning.js +0 -132
- package/dist/esm/features/RowPinning.js.map +0 -1
- package/dist/esm/features/RowSelection.d.ts +0 -177
- package/dist/esm/features/RowSelection.js +0 -296
- package/dist/esm/features/RowSelection.js.map +0 -1
- package/dist/esm/features/RowSorting.d.ts +0 -238
- package/dist/esm/features/RowSorting.js +0 -200
- package/dist/esm/features/RowSorting.js.map +0 -1
- package/dist/esm/filterFns.d.ts +0 -14
- package/dist/esm/filterFns.js +0 -88
- package/dist/esm/filterFns.js.map +0 -1
- package/dist/esm/sortingFns.d.ts +0 -12
- package/dist/esm/sortingFns.js.map +0 -1
- package/dist/esm/types.d.ts +0 -120
- package/dist/esm/utils/filterRowsUtils.d.ts +0 -3
- package/dist/esm/utils/filterRowsUtils.js.map +0 -1
- package/dist/esm/utils/getCoreRowModel.d.ts +0 -3
- package/dist/esm/utils/getCoreRowModel.js +0 -54
- package/dist/esm/utils/getCoreRowModel.js.map +0 -1
- package/dist/esm/utils/getExpandedRowModel.d.ts +0 -8
- package/dist/esm/utils/getExpandedRowModel.js +0 -41
- package/dist/esm/utils/getExpandedRowModel.js.map +0 -1
- package/dist/esm/utils/getFacetedMinMaxValues.d.ts +0 -3
- package/dist/esm/utils/getFacetedMinMaxValues.js +0 -35
- package/dist/esm/utils/getFacetedMinMaxValues.js.map +0 -1
- package/dist/esm/utils/getFacetedRowModel.d.ts +0 -3
- package/dist/esm/utils/getFacetedRowModel.js +0 -35
- package/dist/esm/utils/getFacetedRowModel.js.map +0 -1
- package/dist/esm/utils/getFacetedUniqueValues.d.ts +0 -3
- package/dist/esm/utils/getFacetedUniqueValues.js +0 -37
- package/dist/esm/utils/getFacetedUniqueValues.js.map +0 -1
- package/dist/esm/utils/getFilteredRowModel.d.ts +0 -3
- package/dist/esm/utils/getFilteredRowModel.js +0 -116
- package/dist/esm/utils/getFilteredRowModel.js.map +0 -1
- package/dist/esm/utils/getGroupedRowModel.d.ts +0 -3
- package/dist/esm/utils/getGroupedRowModel.js +0 -118
- package/dist/esm/utils/getGroupedRowModel.js.map +0 -1
- package/dist/esm/utils/getPaginationRowModel.d.ts +0 -5
- package/dist/esm/utils/getPaginationRowModel.js +0 -49
- package/dist/esm/utils/getPaginationRowModel.js.map +0 -1
- package/dist/esm/utils/getSortedRowModel.d.ts +0 -3
- package/dist/esm/utils/getSortedRowModel.js +0 -88
- package/dist/esm/utils/getSortedRowModel.js.map +0 -1
- package/src/aggregationFns.ts +0 -123
- package/src/columnHelper.ts +0 -91
- package/src/core/cell.ts +0 -91
- package/src/core/column.ts +0 -165
- package/src/core/headers.ts +0 -639
- package/src/core/row.ts +0 -201
- package/src/core/table.ts +0 -563
- package/src/features/ColumnFaceting.ts +0 -84
- package/src/features/ColumnFiltering.ts +0 -429
- package/src/features/ColumnGrouping.ts +0 -422
- package/src/features/ColumnOrdering.ts +0 -161
- package/src/features/ColumnPinning.ts +0 -336
- package/src/features/ColumnSizing.ts +0 -579
- package/src/features/ColumnVisibility.ts +0 -317
- package/src/features/GlobalFaceting.ts +0 -66
- package/src/features/GlobalFiltering.ts +0 -162
- package/src/features/RowExpanding.ts +0 -355
- package/src/features/RowPagination.ts +0 -396
- package/src/features/RowPinning.ts +0 -277
- package/src/features/RowSelection.ts +0 -668
- package/src/features/RowSorting.ts +0 -542
- package/src/filterFns.ts +0 -150
- package/src/types.ts +0 -361
- package/src/utils/filterRowsUtils.ts +0 -130
- package/src/utils/getCoreRowModel.ts +0 -82
- package/src/utils/getExpandedRowModel.ts +0 -51
- package/src/utils/getFacetedMinMaxValues.ts +0 -42
- package/src/utils/getFacetedRowModel.ts +0 -44
- package/src/utils/getFacetedUniqueValues.ts +0 -42
- package/src/utils/getFilteredRowModel.ts +0 -151
- package/src/utils/getGroupedRowModel.ts +0 -181
- package/src/utils/getPaginationRowModel.ts +0 -60
- package/src/utils/getSortedRowModel.ts +0 -121
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import type { Column_RowSorting } from '../features/row-sorting/rowSortingFeature.types'
|
|
2
|
+
import type { Column_ColumnFaceting } from '../features/column-faceting/columnFacetingFeature.types'
|
|
3
|
+
import type { Column_ColumnFiltering } from '../features/column-filtering/columnFilteringFeature.types'
|
|
4
|
+
import type { Column_ColumnGrouping } from '../features/column-grouping/columnGroupingFeature.types'
|
|
5
|
+
import type { Column_ColumnOrdering } from '../features/column-ordering/columnOrderingFeature.types'
|
|
6
|
+
import type { Column_GlobalFiltering } from '../features/global-filtering/globalFilteringFeature.types'
|
|
7
|
+
import type { Column_ColumnPinning } from '../features/column-pinning/columnPinningFeature.types'
|
|
8
|
+
import type { Column_ColumnResizing } from '../features/column-resizing/columnResizingFeature.types'
|
|
9
|
+
import type { Column_ColumnSizing } from '../features/column-sizing/columnSizingFeature.types'
|
|
10
|
+
import type { Column_ColumnVisibility } from '../features/column-visibility/columnVisibilityFeature.types'
|
|
11
|
+
import type { ColumnDefBase_All } from './ColumnDef'
|
|
12
|
+
import type { RowData, UnionToIntersection } from './type-utils'
|
|
13
|
+
import type { ExtractFeatureTypes, TableFeatures } from './TableFeatures'
|
|
14
|
+
import type { Column_Column } from '../core/columns/coreColumnsFeature.types'
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Use this interface as a target for declaration merging to add your own plugin properties.
|
|
18
|
+
* Note: This will affect the types of all tables in your project.
|
|
19
|
+
*/
|
|
20
|
+
export interface Column_Plugins<
|
|
21
|
+
TFeatures extends TableFeatures,
|
|
22
|
+
TData extends RowData,
|
|
23
|
+
TValue = unknown,
|
|
24
|
+
> {}
|
|
25
|
+
|
|
26
|
+
export interface Column_Core<
|
|
27
|
+
TFeatures extends TableFeatures,
|
|
28
|
+
TData extends RowData,
|
|
29
|
+
TValue = unknown,
|
|
30
|
+
> extends Column_Column<TFeatures, TData, TValue> {}
|
|
31
|
+
|
|
32
|
+
export type Column<
|
|
33
|
+
TFeatures extends TableFeatures,
|
|
34
|
+
TData extends RowData,
|
|
35
|
+
TValue = unknown,
|
|
36
|
+
> = Column_Core<TFeatures, TData, TValue> &
|
|
37
|
+
UnionToIntersection<
|
|
38
|
+
| ('columnFacetingFeature' extends keyof TFeatures
|
|
39
|
+
? Column_ColumnFaceting<TFeatures, TData>
|
|
40
|
+
: never)
|
|
41
|
+
| ('columnFilteringFeature' extends keyof TFeatures
|
|
42
|
+
? Column_ColumnFiltering<TFeatures, TData>
|
|
43
|
+
: never)
|
|
44
|
+
| ('columnGroupingFeature' extends keyof TFeatures
|
|
45
|
+
? Column_ColumnGrouping<TFeatures, TData>
|
|
46
|
+
: never)
|
|
47
|
+
| ('columnOrderingFeature' extends keyof TFeatures
|
|
48
|
+
? Column_ColumnOrdering
|
|
49
|
+
: never)
|
|
50
|
+
| ('columnPinningFeature' extends keyof TFeatures
|
|
51
|
+
? Column_ColumnPinning
|
|
52
|
+
: never)
|
|
53
|
+
| ('columnResizingFeature' extends keyof TFeatures
|
|
54
|
+
? Column_ColumnResizing
|
|
55
|
+
: never)
|
|
56
|
+
| ('columnSizingFeature' extends keyof TFeatures
|
|
57
|
+
? Column_ColumnSizing
|
|
58
|
+
: never)
|
|
59
|
+
| ('columnVisibilityFeature' extends keyof TFeatures
|
|
60
|
+
? Column_ColumnVisibility
|
|
61
|
+
: never)
|
|
62
|
+
| ('globalFilteringFeature' extends keyof TFeatures
|
|
63
|
+
? Column_GlobalFiltering
|
|
64
|
+
: never)
|
|
65
|
+
| ('rowSortingFeature' extends keyof TFeatures
|
|
66
|
+
? Column_RowSorting<TFeatures, TData>
|
|
67
|
+
: never)
|
|
68
|
+
> &
|
|
69
|
+
ExtractFeatureTypes<'Column', TFeatures> &
|
|
70
|
+
Column_Plugins<TFeatures, TData, TValue>
|
|
71
|
+
|
|
72
|
+
// export type Column<
|
|
73
|
+
// TFeatures extends TableFeatures,
|
|
74
|
+
// TData extends RowData,
|
|
75
|
+
// TValue = unknown,
|
|
76
|
+
// > = Column_Core<TFeatures, TData, TValue> &
|
|
77
|
+
// ExtractFeatureTypes<'Column', TFeatures> &
|
|
78
|
+
// Column_Plugins<TFeatures, TData, TValue>
|
|
79
|
+
|
|
80
|
+
export type Column_Internal<
|
|
81
|
+
TFeatures extends TableFeatures,
|
|
82
|
+
TData extends RowData,
|
|
83
|
+
TValue = unknown,
|
|
84
|
+
> = Column<TFeatures, TData, TValue> & {
|
|
85
|
+
columnDef: ColumnDefBase_All<TFeatures, TData, TValue>
|
|
86
|
+
}
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import type { CellData, RowData, UnionToIntersection } from './type-utils'
|
|
2
|
+
import type { ExtractFeatureTypes, TableFeatures } from './TableFeatures'
|
|
3
|
+
import type { CellContext } from '../core/cells/coreCellsFeature.types'
|
|
4
|
+
import type { HeaderContext } from '../core/headers/coreHeadersFeature.types'
|
|
5
|
+
import type { ColumnDef_ColumnFiltering } from '../features/column-filtering/columnFilteringFeature.types'
|
|
6
|
+
import type { ColumnDef_ColumnGrouping } from '../features/column-grouping/columnGroupingFeature.types'
|
|
7
|
+
import type { ColumnDef_ColumnPinning } from '../features/column-pinning/columnPinningFeature.types'
|
|
8
|
+
import type { ColumnDef_ColumnResizing } from '../features/column-resizing/columnResizingFeature.types'
|
|
9
|
+
import type { ColumnDef_ColumnSizing } from '../features/column-sizing/columnSizingFeature.types'
|
|
10
|
+
import type { ColumnDef_ColumnVisibility } from '../features/column-visibility/columnVisibilityFeature.types'
|
|
11
|
+
import type { ColumnDef_GlobalFiltering } from '../features/global-filtering/globalFilteringFeature.types'
|
|
12
|
+
import type { ColumnDef_RowSorting } from '../features/row-sorting/rowSortingFeature.types'
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Use this interface as a target for declaration merging to add your own plugin properties.
|
|
16
|
+
* Note: This will affect the types of all tables in your project.
|
|
17
|
+
*/
|
|
18
|
+
export interface ColumnDef_Plugins<
|
|
19
|
+
TFeatures extends TableFeatures,
|
|
20
|
+
TData extends RowData,
|
|
21
|
+
TValue extends CellData = CellData,
|
|
22
|
+
> {}
|
|
23
|
+
|
|
24
|
+
export interface ColumnMeta<
|
|
25
|
+
TFeatures extends TableFeatures,
|
|
26
|
+
TData extends RowData,
|
|
27
|
+
TValue extends CellData = CellData,
|
|
28
|
+
> {}
|
|
29
|
+
|
|
30
|
+
export type AccessorFn<
|
|
31
|
+
TData extends RowData,
|
|
32
|
+
TValue extends CellData = CellData,
|
|
33
|
+
> = (originalRow: TData, index: number) => TValue
|
|
34
|
+
|
|
35
|
+
export type ColumnDefTemplate<TProps extends object> =
|
|
36
|
+
| string
|
|
37
|
+
| ((props: TProps) => any)
|
|
38
|
+
|
|
39
|
+
export type StringOrTemplateHeader<
|
|
40
|
+
TFeatures extends TableFeatures,
|
|
41
|
+
TData extends RowData,
|
|
42
|
+
TValue extends CellData = CellData,
|
|
43
|
+
> = string | ColumnDefTemplate<HeaderContext<TFeatures, TData, TValue>>
|
|
44
|
+
|
|
45
|
+
export interface StringHeaderIdentifier {
|
|
46
|
+
header: string
|
|
47
|
+
id?: string
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export interface IdIdentifier<
|
|
51
|
+
TFeatures extends TableFeatures,
|
|
52
|
+
TData extends RowData,
|
|
53
|
+
TValue extends CellData = CellData,
|
|
54
|
+
> {
|
|
55
|
+
id: string
|
|
56
|
+
header?: StringOrTemplateHeader<TFeatures, TData, TValue>
|
|
57
|
+
}
|
|
58
|
+
type ColumnIdentifiers<
|
|
59
|
+
TFeatures extends TableFeatures,
|
|
60
|
+
TData extends RowData,
|
|
61
|
+
TValue extends CellData = CellData,
|
|
62
|
+
> = IdIdentifier<TFeatures, TData, TValue> | StringHeaderIdentifier
|
|
63
|
+
|
|
64
|
+
interface ColumnDefBase_Core<
|
|
65
|
+
TFeatures extends TableFeatures,
|
|
66
|
+
TData extends RowData,
|
|
67
|
+
TValue extends CellData = CellData,
|
|
68
|
+
> {
|
|
69
|
+
getUniqueValues?: AccessorFn<TData, Array<unknown>>
|
|
70
|
+
footer?: ColumnDefTemplate<HeaderContext<TFeatures, TData, TValue>>
|
|
71
|
+
cell?: ColumnDefTemplate<CellContext<TFeatures, TData, TValue>>
|
|
72
|
+
meta?: ColumnMeta<TFeatures, TData, TValue>
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export type ColumnDefBase<
|
|
76
|
+
TFeatures extends TableFeatures,
|
|
77
|
+
TData extends RowData,
|
|
78
|
+
TValue extends CellData = CellData,
|
|
79
|
+
> = ColumnDefBase_Core<TFeatures, TData, TValue> &
|
|
80
|
+
UnionToIntersection<
|
|
81
|
+
| ('columnVisibilityFeature' extends keyof TFeatures
|
|
82
|
+
? ColumnDef_ColumnVisibility
|
|
83
|
+
: never)
|
|
84
|
+
| ('columnPinningFeature' extends keyof TFeatures
|
|
85
|
+
? ColumnDef_ColumnPinning
|
|
86
|
+
: never)
|
|
87
|
+
| ('columnFilteringFeature' extends keyof TFeatures
|
|
88
|
+
? ColumnDef_ColumnFiltering<TFeatures, TData>
|
|
89
|
+
: never)
|
|
90
|
+
| ('globalFilteringFeature' extends keyof TFeatures
|
|
91
|
+
? ColumnDef_GlobalFiltering
|
|
92
|
+
: never)
|
|
93
|
+
| ('rowSortingFeature' extends keyof TFeatures
|
|
94
|
+
? ColumnDef_RowSorting<TFeatures, TData>
|
|
95
|
+
: never)
|
|
96
|
+
| ('columnGroupingFeature' extends keyof TFeatures
|
|
97
|
+
? ColumnDef_ColumnGrouping<TFeatures, TData, TValue>
|
|
98
|
+
: never)
|
|
99
|
+
| ('columnSizingFeature' extends keyof TFeatures
|
|
100
|
+
? ColumnDef_ColumnSizing
|
|
101
|
+
: never)
|
|
102
|
+
| ('columnResizingFeature' extends keyof TFeatures
|
|
103
|
+
? ColumnDef_ColumnResizing
|
|
104
|
+
: never)
|
|
105
|
+
> &
|
|
106
|
+
ExtractFeatureTypes<'ColumnDef', TFeatures> &
|
|
107
|
+
ColumnDef_Plugins<TFeatures, TData, TValue>
|
|
108
|
+
|
|
109
|
+
// export type ColumnDefBase<
|
|
110
|
+
// TFeatures extends TableFeatures,
|
|
111
|
+
// TData extends RowData,
|
|
112
|
+
// TValue extends CellData = CellData,
|
|
113
|
+
// > = ColumnDefBase_Core<TFeatures, TData, TValue> &
|
|
114
|
+
// ExtractFeatureTypes<'ColumnDef', TFeatures> &
|
|
115
|
+
// ColumnDef_Plugins<TFeatures, TData, TValue>
|
|
116
|
+
|
|
117
|
+
export type ColumnDefBase_All<
|
|
118
|
+
TFeatures extends TableFeatures,
|
|
119
|
+
TData extends RowData,
|
|
120
|
+
TValue extends CellData = CellData,
|
|
121
|
+
> = ColumnDefBase_Core<TFeatures, TData, TValue> &
|
|
122
|
+
Partial<
|
|
123
|
+
ColumnDef_ColumnVisibility &
|
|
124
|
+
ColumnDef_ColumnPinning &
|
|
125
|
+
ColumnDef_ColumnFiltering<TFeatures, TData> &
|
|
126
|
+
ColumnDef_GlobalFiltering &
|
|
127
|
+
ColumnDef_RowSorting<TFeatures, TData> &
|
|
128
|
+
ColumnDef_ColumnGrouping<TFeatures, TData, TValue> &
|
|
129
|
+
ColumnDef_ColumnSizing &
|
|
130
|
+
ColumnDef_ColumnResizing
|
|
131
|
+
>
|
|
132
|
+
|
|
133
|
+
export type IdentifiedColumnDef<
|
|
134
|
+
TFeatures extends TableFeatures,
|
|
135
|
+
TData extends RowData,
|
|
136
|
+
TValue extends CellData = CellData,
|
|
137
|
+
> = ColumnDefBase<TFeatures, TData, TValue> & {
|
|
138
|
+
id?: string
|
|
139
|
+
header?: StringOrTemplateHeader<TFeatures, TData, TValue>
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
export type DisplayColumnDef<
|
|
143
|
+
TFeatures extends TableFeatures,
|
|
144
|
+
TData extends RowData,
|
|
145
|
+
TValue extends CellData = CellData,
|
|
146
|
+
> = ColumnDefBase<TFeatures, TData, TValue> &
|
|
147
|
+
ColumnIdentifiers<TFeatures, TData, TValue>
|
|
148
|
+
type GroupColumnDefBase<
|
|
149
|
+
TFeatures extends TableFeatures,
|
|
150
|
+
TData extends RowData,
|
|
151
|
+
TValue extends CellData = CellData,
|
|
152
|
+
> = ColumnDefBase<TFeatures, TData, TValue> & {
|
|
153
|
+
columns?: Array<ColumnDef<TFeatures, TData, unknown>>
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
export type GroupColumnDef<
|
|
157
|
+
TFeatures extends TableFeatures,
|
|
158
|
+
TData extends RowData,
|
|
159
|
+
TValue extends CellData = CellData,
|
|
160
|
+
> = GroupColumnDefBase<TFeatures, TData, TValue> &
|
|
161
|
+
ColumnIdentifiers<TFeatures, TData, TValue>
|
|
162
|
+
|
|
163
|
+
export type AccessorFnColumnDefBase<
|
|
164
|
+
TFeatures extends TableFeatures,
|
|
165
|
+
TData extends RowData,
|
|
166
|
+
TValue extends CellData = CellData,
|
|
167
|
+
> = ColumnDefBase<TFeatures, TData, TValue> & {
|
|
168
|
+
accessorFn: AccessorFn<TData, TValue>
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
export type AccessorFnColumnDef<
|
|
172
|
+
TFeatures extends TableFeatures,
|
|
173
|
+
TData extends RowData,
|
|
174
|
+
TValue extends CellData = CellData,
|
|
175
|
+
> = AccessorFnColumnDefBase<TFeatures, TData, TValue> &
|
|
176
|
+
ColumnIdentifiers<TFeatures, TData, TValue>
|
|
177
|
+
|
|
178
|
+
export type AccessorKeyColumnDefBase<
|
|
179
|
+
TFeatures extends TableFeatures,
|
|
180
|
+
TData extends RowData,
|
|
181
|
+
TValue extends CellData = CellData,
|
|
182
|
+
> = ColumnDefBase<TFeatures, TData, TValue> & {
|
|
183
|
+
id?: string
|
|
184
|
+
accessorKey: (string & {}) | keyof TData
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
export type AccessorKeyColumnDef<
|
|
188
|
+
TFeatures extends TableFeatures,
|
|
189
|
+
TData extends RowData,
|
|
190
|
+
TValue extends CellData = CellData,
|
|
191
|
+
> = AccessorKeyColumnDefBase<TFeatures, TData, TValue> &
|
|
192
|
+
Partial<ColumnIdentifiers<TFeatures, TData, TValue>>
|
|
193
|
+
|
|
194
|
+
export type AccessorColumnDef<
|
|
195
|
+
TFeatures extends TableFeatures,
|
|
196
|
+
TData extends RowData,
|
|
197
|
+
TValue extends CellData = CellData,
|
|
198
|
+
> =
|
|
199
|
+
| AccessorKeyColumnDef<TFeatures, TData, TValue>
|
|
200
|
+
| AccessorFnColumnDef<TFeatures, TData, TValue>
|
|
201
|
+
|
|
202
|
+
export type ColumnDef<
|
|
203
|
+
TFeatures extends TableFeatures,
|
|
204
|
+
TData extends RowData,
|
|
205
|
+
TValue extends CellData = CellData,
|
|
206
|
+
> =
|
|
207
|
+
| DisplayColumnDef<TFeatures, TData, TValue>
|
|
208
|
+
| GroupColumnDef<TFeatures, TData, TValue>
|
|
209
|
+
| AccessorColumnDef<TFeatures, TData, TValue>
|
|
210
|
+
|
|
211
|
+
export type ColumnDefResolved<
|
|
212
|
+
TFeatures extends TableFeatures,
|
|
213
|
+
TData extends RowData,
|
|
214
|
+
TValue extends CellData = CellData,
|
|
215
|
+
> = Partial<UnionToIntersection<ColumnDef<TFeatures, TData, TValue>>> & {
|
|
216
|
+
accessorKey?: string
|
|
217
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { Header_ColumnSizing } from '../features/column-sizing/columnSizingFeature.types'
|
|
2
|
+
import type { CellData, RowData, UnionToIntersection } from './type-utils'
|
|
3
|
+
import type { ExtractFeatureTypes, TableFeatures } from './TableFeatures'
|
|
4
|
+
import type { Header_Header } from '../core/headers/coreHeadersFeature.types'
|
|
5
|
+
import type { Header_ColumnResizing } from '../features/column-resizing/columnResizingFeature.types'
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Use this interface as a target for declaration merging to add your own plugin properties.
|
|
9
|
+
* Note: This will affect the types of all tables in your project.
|
|
10
|
+
*/
|
|
11
|
+
export interface Header_Plugins<
|
|
12
|
+
TFeatures extends TableFeatures,
|
|
13
|
+
TData extends RowData,
|
|
14
|
+
TValue extends CellData = CellData,
|
|
15
|
+
> {}
|
|
16
|
+
|
|
17
|
+
export interface Header_Core<
|
|
18
|
+
TFeatures extends TableFeatures,
|
|
19
|
+
TData extends RowData,
|
|
20
|
+
TValue extends CellData = CellData,
|
|
21
|
+
> extends Header_Header<TFeatures, TData, TValue> {}
|
|
22
|
+
|
|
23
|
+
export type Header<
|
|
24
|
+
TFeatures extends TableFeatures,
|
|
25
|
+
TData extends RowData,
|
|
26
|
+
TValue extends CellData = CellData,
|
|
27
|
+
> = Header_Core<TFeatures, TData, TValue> &
|
|
28
|
+
UnionToIntersection<
|
|
29
|
+
| ('columnSizingFeature' extends keyof TFeatures
|
|
30
|
+
? Header_ColumnSizing
|
|
31
|
+
: never)
|
|
32
|
+
| ('columnResizingFeature' extends keyof TFeatures
|
|
33
|
+
? Header_ColumnResizing
|
|
34
|
+
: never)
|
|
35
|
+
> &
|
|
36
|
+
ExtractFeatureTypes<'Header', TFeatures> &
|
|
37
|
+
Header_Plugins<TFeatures, TData, TValue>
|
|
38
|
+
|
|
39
|
+
// export type Header<
|
|
40
|
+
// TFeatures extends TableFeatures,
|
|
41
|
+
// TData extends RowData,
|
|
42
|
+
// TValue extends CellData = CellData,
|
|
43
|
+
// > = Header_Core<TFeatures, TData, TValue> &
|
|
44
|
+
// ExtractFeatureTypes<'Header', TFeatures> &
|
|
45
|
+
// Header_Plugins<TFeatures, TData, TValue>
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { HeaderGroup_Header } from '../core/headers/coreHeadersFeature.types'
|
|
2
|
+
import type { ExtractFeatureTypes, TableFeatures } from './TableFeatures'
|
|
3
|
+
import type { RowData } from './type-utils'
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Use this interface as a target for declaration merging to add your own plugin properties.
|
|
7
|
+
* Note: This will affect the types of all tables in your project.
|
|
8
|
+
*/
|
|
9
|
+
export interface HeaderGroup_Plugins<
|
|
10
|
+
TFeatures extends TableFeatures,
|
|
11
|
+
TData extends RowData,
|
|
12
|
+
> {}
|
|
13
|
+
|
|
14
|
+
export interface HeaderGroup_Core<
|
|
15
|
+
TFeatures extends TableFeatures,
|
|
16
|
+
TData extends RowData,
|
|
17
|
+
> extends HeaderGroup_Header<TFeatures, TData> {}
|
|
18
|
+
|
|
19
|
+
export type HeaderGroup<
|
|
20
|
+
TFeatures extends TableFeatures,
|
|
21
|
+
TData extends RowData,
|
|
22
|
+
> = HeaderGroup_Core<TFeatures, TData> &
|
|
23
|
+
ExtractFeatureTypes<'HeaderGroup', TFeatures> &
|
|
24
|
+
HeaderGroup_Plugins<TFeatures, TData>
|
package/src/types/Row.ts
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { Row_ColumnVisibility } from '../features/column-visibility/columnVisibilityFeature.types'
|
|
2
|
+
import type { Row_ColumnPinning } from '../features/column-pinning/columnPinningFeature.types'
|
|
3
|
+
import type { Row_ColumnGrouping } from '../features/column-grouping/columnGroupingFeature.types'
|
|
4
|
+
import type { Row_ColumnFiltering } from '../features/column-filtering/columnFilteringFeature.types'
|
|
5
|
+
import type { RowData, UnionToIntersection } from './type-utils'
|
|
6
|
+
import type { Row_RowExpanding } from '../features/row-expanding/rowExpandingFeature.types'
|
|
7
|
+
import type { Row_RowPinning } from '../features/row-pinning/rowPinningFeature.types'
|
|
8
|
+
import type { Row_RowSelection } from '../features/row-selection/rowSelectionFeature.types'
|
|
9
|
+
import type { ExtractFeatureTypes, TableFeatures } from './TableFeatures'
|
|
10
|
+
import type { Row_Row } from '../core/rows/coreRowsFeature.types'
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Use this interface as a target for declaration merging to add your own plugin properties.
|
|
14
|
+
* Note: This will affect the types of all tables in your project.
|
|
15
|
+
*/
|
|
16
|
+
export interface Row_Plugins<
|
|
17
|
+
TFeatures extends TableFeatures,
|
|
18
|
+
TData extends RowData,
|
|
19
|
+
> {}
|
|
20
|
+
|
|
21
|
+
export interface Row_Core<
|
|
22
|
+
TFeatures extends TableFeatures,
|
|
23
|
+
TData extends RowData,
|
|
24
|
+
> extends Row_Row<TFeatures, TData> {}
|
|
25
|
+
|
|
26
|
+
export type Row<
|
|
27
|
+
TFeatures extends TableFeatures,
|
|
28
|
+
TData extends RowData,
|
|
29
|
+
> = Row_Core<TFeatures, TData> &
|
|
30
|
+
UnionToIntersection<
|
|
31
|
+
| ('columnFilteringFeature' extends keyof TFeatures
|
|
32
|
+
? Row_ColumnFiltering<TFeatures, TData>
|
|
33
|
+
: never)
|
|
34
|
+
| ('columnGroupingFeature' extends keyof TFeatures
|
|
35
|
+
? Row_ColumnGrouping
|
|
36
|
+
: never)
|
|
37
|
+
| ('columnPinningFeature' extends keyof TFeatures
|
|
38
|
+
? Row_ColumnPinning<TFeatures, TData>
|
|
39
|
+
: never)
|
|
40
|
+
| ('columnVisibilityFeature' extends keyof TFeatures
|
|
41
|
+
? Row_ColumnVisibility<TFeatures, TData>
|
|
42
|
+
: never)
|
|
43
|
+
| ('rowExpandingFeature' extends keyof TFeatures ? Row_RowExpanding : never)
|
|
44
|
+
| ('rowPinningFeature' extends keyof TFeatures ? Row_RowPinning : never)
|
|
45
|
+
| ('rowSelectionFeature' extends keyof TFeatures ? Row_RowSelection : never)
|
|
46
|
+
> &
|
|
47
|
+
ExtractFeatureTypes<'Row', TFeatures> &
|
|
48
|
+
Row_Plugins<TFeatures, TData>
|
|
49
|
+
|
|
50
|
+
// export type Row<
|
|
51
|
+
// TFeatures extends TableFeatures,
|
|
52
|
+
// TData extends RowData,
|
|
53
|
+
// > = Row_Core<TFeatures, TData> &
|
|
54
|
+
// ExtractFeatureTypes<'Row', TFeatures> &
|
|
55
|
+
// Row_Plugins<TFeatures, TData>
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
CachedRowModel_Faceted,
|
|
3
|
+
CreateRowModel_Faceted,
|
|
4
|
+
} from '../features/column-faceting/columnFacetingFeature.types'
|
|
5
|
+
import type {
|
|
6
|
+
CachedRowModel_Grouped,
|
|
7
|
+
CreateRowModel_Grouped,
|
|
8
|
+
} from '../features/column-grouping/columnGroupingFeature.types'
|
|
9
|
+
import type {
|
|
10
|
+
CachedRowModel_Filtered,
|
|
11
|
+
CreateRowModel_Filtered,
|
|
12
|
+
} from '../features/column-filtering/columnFilteringFeature.types'
|
|
13
|
+
import type {
|
|
14
|
+
CachedRowModel_Core,
|
|
15
|
+
CreateRowModel_Core,
|
|
16
|
+
RowModel,
|
|
17
|
+
} from '../core/row-models/coreRowModelsFeature.types'
|
|
18
|
+
import type {
|
|
19
|
+
CachedRowModel_Expanded,
|
|
20
|
+
CreateRowModel_Expanded,
|
|
21
|
+
} from '../features/row-expanding/rowExpandingFeature.types'
|
|
22
|
+
import type {
|
|
23
|
+
CachedRowModel_Paginated,
|
|
24
|
+
CreateRowModel_Paginated,
|
|
25
|
+
} from '../features/row-pagination/rowPaginationFeature.types'
|
|
26
|
+
import type {
|
|
27
|
+
CachedRowModel_Sorted,
|
|
28
|
+
CreateRowModel_Sorted,
|
|
29
|
+
} from '../features/row-sorting/rowSortingFeature.types'
|
|
30
|
+
import type { RowData, UnionToIntersection } from './type-utils'
|
|
31
|
+
import type { ExtractFeatureTypes, TableFeatures } from './TableFeatures'
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Use this interface as a target for declaration merging to add your own plugin properties.
|
|
35
|
+
* Note: This will affect the types of all tables in your project.
|
|
36
|
+
*/
|
|
37
|
+
export interface CreateRowModels_Plugins<
|
|
38
|
+
TFeatures extends TableFeatures,
|
|
39
|
+
TData extends RowData,
|
|
40
|
+
> {}
|
|
41
|
+
|
|
42
|
+
export type CreateRowModels<
|
|
43
|
+
TFeatures extends TableFeatures,
|
|
44
|
+
TData extends RowData,
|
|
45
|
+
> = CreateRowModel_Core<TFeatures, TData> &
|
|
46
|
+
UnionToIntersection<
|
|
47
|
+
| ('columnFacetingFeature' extends keyof TFeatures
|
|
48
|
+
? CreateRowModel_Faceted<TFeatures, TData>
|
|
49
|
+
: never)
|
|
50
|
+
| ('columnFilteringFeature' extends keyof TFeatures
|
|
51
|
+
? CreateRowModel_Filtered<TFeatures, TData>
|
|
52
|
+
: never)
|
|
53
|
+
| ('rowExpandingFeature' extends keyof TFeatures
|
|
54
|
+
? CreateRowModel_Expanded<TFeatures, TData>
|
|
55
|
+
: never)
|
|
56
|
+
| ('columnGroupingFeature' extends keyof TFeatures
|
|
57
|
+
? CreateRowModel_Grouped<TFeatures, TData>
|
|
58
|
+
: never)
|
|
59
|
+
| ('rowPaginationFeature' extends keyof TFeatures
|
|
60
|
+
? CreateRowModel_Paginated<TFeatures, TData>
|
|
61
|
+
: never)
|
|
62
|
+
| ('rowSortingFeature' extends keyof TFeatures
|
|
63
|
+
? CreateRowModel_Sorted<TFeatures, TData>
|
|
64
|
+
: never)
|
|
65
|
+
> &
|
|
66
|
+
ExtractFeatureTypes<'CreateRowModels', TFeatures> &
|
|
67
|
+
CreateRowModels_Plugins<TFeatures, TData>
|
|
68
|
+
|
|
69
|
+
// export type CreateRowModels<
|
|
70
|
+
// TFeatures extends TableFeatures,
|
|
71
|
+
// TData extends RowData,
|
|
72
|
+
// > = CreateRowModel_Core<TFeatures, TData> &
|
|
73
|
+
// ExtractFeatureTypes<'CreateRowModels', TFeatures> &
|
|
74
|
+
// CreateRowModels_Plugins<TFeatures, TData>
|
|
75
|
+
|
|
76
|
+
export type CreateRowModels_All<
|
|
77
|
+
TFeatures extends TableFeatures,
|
|
78
|
+
TData extends RowData,
|
|
79
|
+
> = CreateRowModel_Core<TFeatures, TData> &
|
|
80
|
+
CreateRowModel_Expanded<TFeatures, TData> &
|
|
81
|
+
CreateRowModel_Faceted<TFeatures, TData> &
|
|
82
|
+
CreateRowModel_Filtered<TFeatures, TData> &
|
|
83
|
+
CreateRowModel_Grouped<TFeatures, TData> &
|
|
84
|
+
CreateRowModel_Paginated<TFeatures, TData> &
|
|
85
|
+
CreateRowModel_Sorted<TFeatures, TData>
|
|
86
|
+
|
|
87
|
+
export interface CachedRowModels_Plugins<
|
|
88
|
+
TFeatures extends TableFeatures,
|
|
89
|
+
TData extends RowData,
|
|
90
|
+
> {}
|
|
91
|
+
|
|
92
|
+
export type CachedRowModels<
|
|
93
|
+
TFeatures extends TableFeatures,
|
|
94
|
+
TData extends RowData,
|
|
95
|
+
> = {
|
|
96
|
+
CachedRowModel_Core: () => RowModel<TFeatures, TData>
|
|
97
|
+
} & UnionToIntersection<
|
|
98
|
+
| ('columnFacetingFeature' extends keyof TFeatures
|
|
99
|
+
? CachedRowModel_Faceted<TFeatures, TData>
|
|
100
|
+
: never)
|
|
101
|
+
| ('columnFilteringFeature' extends keyof TFeatures
|
|
102
|
+
? CachedRowModel_Filtered<TFeatures, TData>
|
|
103
|
+
: never)
|
|
104
|
+
| ('rowExpandingFeature' extends keyof TFeatures
|
|
105
|
+
? CachedRowModel_Expanded<TFeatures, TData>
|
|
106
|
+
: never)
|
|
107
|
+
| ('columnGroupingFeature' extends keyof TFeatures
|
|
108
|
+
? CachedRowModel_Grouped<TFeatures, TData>
|
|
109
|
+
: never)
|
|
110
|
+
| ('rowPaginationFeature' extends keyof TFeatures
|
|
111
|
+
? CachedRowModel_Paginated<TFeatures, TData>
|
|
112
|
+
: never)
|
|
113
|
+
| ('rowSortingFeature' extends keyof TFeatures
|
|
114
|
+
? CachedRowModel_Sorted<TFeatures, TData>
|
|
115
|
+
: never)
|
|
116
|
+
> &
|
|
117
|
+
ExtractFeatureTypes<'CachedRowModel', TFeatures> &
|
|
118
|
+
CachedRowModels_Plugins<TFeatures, TData>
|
|
119
|
+
|
|
120
|
+
// export type CachedRowModels<
|
|
121
|
+
// TFeatures extends TableFeatures,
|
|
122
|
+
// TData extends RowData,
|
|
123
|
+
// > = ExtractFeatureTypes<'CachedRowModel', TFeatures> &
|
|
124
|
+
// CachedRowModels_Plugins<TFeatures, TData>
|
|
125
|
+
|
|
126
|
+
export type CachedRowModel_All<
|
|
127
|
+
TFeatures extends TableFeatures,
|
|
128
|
+
TData extends RowData = any,
|
|
129
|
+
> = Partial<
|
|
130
|
+
CachedRowModel_Core<TFeatures, TData> &
|
|
131
|
+
CachedRowModel_Expanded<TFeatures, TData> &
|
|
132
|
+
CachedRowModel_Faceted<TFeatures, TData> &
|
|
133
|
+
CachedRowModel_Filtered<TFeatures, TData> &
|
|
134
|
+
CachedRowModel_Grouped<TFeatures, TData> &
|
|
135
|
+
CachedRowModel_Paginated<TFeatures, TData> &
|
|
136
|
+
CachedRowModel_Sorted<TFeatures, TData>
|
|
137
|
+
>
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { RowModelFns_RowSorting } from '../features/row-sorting/rowSortingFeature.types'
|
|
2
|
+
import type { RowModelFns_ColumnGrouping } from '../features/column-grouping/columnGroupingFeature.types'
|
|
3
|
+
import type { RowData, UnionToIntersection } from './type-utils'
|
|
4
|
+
import type { RowModelFns_ColumnFiltering } from '../features/column-filtering/columnFilteringFeature.types'
|
|
5
|
+
import type { ExtractFeatureTypes, TableFeatures } from './TableFeatures'
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Use this interface as a target for declaration merging to add your own plugin properties.
|
|
9
|
+
* Note: This will affect the types of all tables in your project.
|
|
10
|
+
*/
|
|
11
|
+
export interface RowModelFns_Plugins<
|
|
12
|
+
TFeatures extends TableFeatures,
|
|
13
|
+
TData extends RowData,
|
|
14
|
+
> {}
|
|
15
|
+
|
|
16
|
+
export interface RowModelFns_Core {}
|
|
17
|
+
|
|
18
|
+
export type RowModelFns<
|
|
19
|
+
TFeatures extends TableFeatures,
|
|
20
|
+
TData extends RowData,
|
|
21
|
+
> = Partial<
|
|
22
|
+
UnionToIntersection<
|
|
23
|
+
| ('columnFilteringFeature' extends keyof TFeatures
|
|
24
|
+
? RowModelFns_ColumnFiltering<TFeatures, TData>
|
|
25
|
+
: never)
|
|
26
|
+
| ('columnGroupingFeature' extends keyof TFeatures
|
|
27
|
+
? RowModelFns_ColumnGrouping<TFeatures, TData>
|
|
28
|
+
: never)
|
|
29
|
+
| ('rowSortingFeature' extends keyof TFeatures
|
|
30
|
+
? RowModelFns_RowSorting<TFeatures, TData>
|
|
31
|
+
: never)
|
|
32
|
+
> &
|
|
33
|
+
ExtractFeatureTypes<'RowModelFns', TFeatures> &
|
|
34
|
+
RowModelFns_Plugins<TFeatures, TData>
|
|
35
|
+
>
|
|
36
|
+
|
|
37
|
+
// export type RowModelFns<
|
|
38
|
+
// TFeatures extends TableFeatures,
|
|
39
|
+
// TData extends RowData,
|
|
40
|
+
// > = RowModelFns_Core &
|
|
41
|
+
// ExtractFeatureTypes<'RowModelFns', TFeatures> &
|
|
42
|
+
// RowModelFns_Plugins<TFeatures, TData>
|
|
43
|
+
|
|
44
|
+
export type RowModelFns_All<
|
|
45
|
+
TFeatures extends TableFeatures,
|
|
46
|
+
TData extends RowData,
|
|
47
|
+
> = Partial<
|
|
48
|
+
RowModelFns_ColumnFiltering<TFeatures, TData> &
|
|
49
|
+
RowModelFns_ColumnGrouping<TFeatures, TData> &
|
|
50
|
+
RowModelFns_RowSorting<TFeatures, TData>
|
|
51
|
+
>
|