@tanstack/table-core 9.0.0-alpha.4 → 9.0.0-alpha.41
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 +117 -0
- package/dist/core/cells/constructCell.cjs +28 -0
- package/dist/core/cells/constructCell.cjs.map +1 -0
- package/dist/core/cells/constructCell.d.cts +12 -0
- package/dist/core/cells/constructCell.d.ts +12 -0
- package/dist/core/cells/constructCell.js +27 -0
- package/dist/core/cells/constructCell.js.map +1 -0
- package/dist/core/cells/coreCellsFeature.cjs +25 -0
- package/dist/core/cells/coreCellsFeature.cjs.map +1 -0
- package/dist/core/cells/coreCellsFeature.d.cts +13 -0
- package/dist/core/cells/coreCellsFeature.d.ts +13 -0
- package/dist/core/cells/coreCellsFeature.js +24 -0
- package/dist/core/cells/coreCellsFeature.js.map +1 -0
- package/dist/core/cells/coreCellsFeature.types.d.cts +57 -0
- package/dist/core/cells/coreCellsFeature.types.d.ts +57 -0
- package/dist/core/cells/coreCellsFeature.utils.cjs +24 -0
- package/dist/core/cells/coreCellsFeature.utils.cjs.map +1 -0
- package/dist/core/cells/coreCellsFeature.utils.d.cts +20 -0
- package/dist/core/cells/coreCellsFeature.utils.d.ts +20 -0
- package/dist/core/cells/coreCellsFeature.utils.js +21 -0
- package/dist/core/cells/coreCellsFeature.utils.js.map +1 -0
- package/dist/core/columns/constructColumn.cjs +52 -0
- package/dist/core/columns/constructColumn.cjs.map +1 -0
- package/dist/core/columns/constructColumn.d.cts +11 -0
- package/dist/core/columns/constructColumn.d.ts +11 -0
- package/dist/core/columns/constructColumn.js +51 -0
- package/dist/core/columns/constructColumn.js.map +1 -0
- package/dist/core/columns/coreColumnsFeature.cjs +70 -0
- package/dist/core/columns/coreColumnsFeature.cjs.map +1 -0
- package/dist/core/columns/coreColumnsFeature.d.cts +13 -0
- package/dist/core/columns/coreColumnsFeature.d.ts +13 -0
- package/dist/core/columns/coreColumnsFeature.js +69 -0
- package/dist/core/columns/coreColumnsFeature.js.map +1 -0
- package/dist/core/columns/coreColumnsFeature.types.d.cts +89 -0
- package/dist/core/columns/coreColumnsFeature.types.d.ts +89 -0
- package/dist/core/columns/coreColumnsFeature.utils.cjs +74 -0
- package/dist/core/columns/coreColumnsFeature.utils.cjs.map +1 -0
- package/dist/core/columns/coreColumnsFeature.utils.d.cts +18 -0
- package/dist/core/columns/coreColumnsFeature.utils.d.ts +18 -0
- package/dist/core/columns/coreColumnsFeature.utils.js +67 -0
- package/dist/core/columns/coreColumnsFeature.utils.js.map +1 -0
- package/dist/core/coreFeatures.cjs +20 -0
- package/dist/core/coreFeatures.cjs.map +1 -0
- package/dist/core/coreFeatures.d.cts +20 -0
- package/dist/core/coreFeatures.d.ts +20 -0
- package/dist/core/coreFeatures.js +20 -0
- package/dist/core/coreFeatures.js.map +1 -0
- package/dist/core/headers/buildHeaderGroups.cjs +90 -0
- package/dist/core/headers/buildHeaderGroups.cjs.map +1 -0
- package/dist/core/headers/buildHeaderGroups.d.cts +11 -0
- package/dist/core/headers/buildHeaderGroups.d.ts +11 -0
- package/dist/core/headers/buildHeaderGroups.js +90 -0
- package/dist/core/headers/buildHeaderGroups.js.map +1 -0
- package/dist/core/headers/constructHeader.cjs +35 -0
- package/dist/core/headers/constructHeader.cjs.map +1 -0
- package/dist/core/headers/constructHeader.d.cts +17 -0
- package/dist/core/headers/constructHeader.d.ts +17 -0
- package/dist/core/headers/constructHeader.js +34 -0
- package/dist/core/headers/constructHeader.js.map +1 -0
- package/dist/core/headers/coreHeadersFeature.cjs +64 -0
- package/dist/core/headers/coreHeadersFeature.cjs.map +1 -0
- package/dist/core/headers/coreHeadersFeature.d.cts +13 -0
- package/dist/core/headers/coreHeadersFeature.d.ts +13 -0
- package/dist/core/headers/coreHeadersFeature.js +63 -0
- package/dist/core/headers/coreHeadersFeature.js.map +1 -0
- package/dist/core/headers/coreHeadersFeature.types.d.cts +104 -0
- package/dist/core/headers/coreHeadersFeature.types.d.ts +104 -0
- package/dist/core/headers/coreHeadersFeature.utils.cjs +66 -0
- package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -0
- package/dist/core/headers/coreHeadersFeature.utils.d.cts +20 -0
- package/dist/core/headers/coreHeadersFeature.utils.d.ts +20 -0
- package/dist/core/headers/coreHeadersFeature.utils.js +61 -0
- package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -0
- package/dist/core/row-models/coreRowModelsFeature.cjs +31 -0
- package/dist/core/row-models/coreRowModelsFeature.cjs.map +1 -0
- package/dist/core/row-models/coreRowModelsFeature.d.cts +13 -0
- package/dist/core/row-models/coreRowModelsFeature.d.ts +13 -0
- package/dist/core/row-models/coreRowModelsFeature.js +30 -0
- package/dist/core/row-models/coreRowModelsFeature.js.map +1 -0
- package/dist/core/row-models/coreRowModelsFeature.types.d.cts +42 -0
- package/dist/core/row-models/coreRowModelsFeature.types.d.ts +42 -0
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs +83 -0
- package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -0
- package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +21 -0
- package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +21 -0
- package/dist/core/row-models/coreRowModelsFeature.utils.js +72 -0
- package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -0
- package/dist/core/row-models/createCoreRowModel.cjs +47 -0
- package/dist/core/row-models/createCoreRowModel.cjs.map +1 -0
- package/dist/core/row-models/createCoreRowModel.d.cts +10 -0
- package/dist/core/row-models/createCoreRowModel.d.ts +10 -0
- package/dist/core/row-models/createCoreRowModel.js +47 -0
- package/dist/core/row-models/createCoreRowModel.js.map +1 -0
- package/dist/core/rows/constructRow.cjs +37 -0
- package/dist/core/rows/constructRow.cjs.map +1 -0
- package/dist/core/rows/constructRow.d.cts +10 -0
- package/dist/core/rows/constructRow.d.ts +10 -0
- package/dist/core/rows/constructRow.js +36 -0
- package/dist/core/rows/constructRow.js.map +1 -0
- package/dist/core/rows/coreRowsFeature.cjs +41 -0
- package/dist/core/rows/coreRowsFeature.cjs.map +1 -0
- package/dist/core/rows/coreRowsFeature.d.cts +13 -0
- package/dist/core/rows/coreRowsFeature.d.ts +13 -0
- package/dist/core/rows/coreRowsFeature.js +40 -0
- package/dist/core/rows/coreRowsFeature.js.map +1 -0
- package/dist/core/rows/coreRowsFeature.types.d.cts +96 -0
- package/dist/core/rows/coreRowsFeature.types.d.ts +96 -0
- package/dist/core/rows/coreRowsFeature.utils.cjs +81 -0
- package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -0
- package/dist/core/rows/coreRowsFeature.utils.d.cts +20 -0
- package/dist/core/rows/coreRowsFeature.utils.d.ts +20 -0
- package/dist/core/rows/coreRowsFeature.utils.js +72 -0
- package/dist/core/rows/coreRowsFeature.utils.js.map +1 -0
- package/dist/core/table/constructTable.cjs +79 -0
- package/dist/core/table/constructTable.cjs.map +1 -0
- package/dist/core/table/constructTable.d.cts +12 -0
- package/dist/core/table/constructTable.d.ts +12 -0
- package/dist/core/table/constructTable.js +78 -0
- package/dist/core/table/constructTable.js.map +1 -0
- package/dist/core/table/coreTablesFeature.cjs +21 -0
- package/dist/core/table/coreTablesFeature.cjs.map +1 -0
- package/dist/core/table/coreTablesFeature.d.cts +13 -0
- package/dist/core/table/coreTablesFeature.d.ts +13 -0
- package/dist/core/table/coreTablesFeature.js +20 -0
- package/dist/core/table/coreTablesFeature.js.map +1 -0
- package/dist/core/table/coreTablesFeature.types.d.cts +157 -0
- package/dist/core/table/coreTablesFeature.types.d.ts +157 -0
- package/dist/core/table/coreTablesFeature.utils.cjs +27 -0
- package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -0
- package/dist/core/table/coreTablesFeature.utils.d.cts +12 -0
- package/dist/core/table/coreTablesFeature.utils.d.ts +12 -0
- package/dist/core/table/coreTablesFeature.utils.js +25 -0
- package/dist/core/table/coreTablesFeature.utils.js.map +1 -0
- package/dist/features/column-faceting/columnFacetingFeature.cjs +65 -0
- package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -0
- package/dist/features/column-faceting/columnFacetingFeature.d.cts +13 -0
- package/dist/features/column-faceting/columnFacetingFeature.d.ts +13 -0
- package/dist/features/column-faceting/columnFacetingFeature.js +64 -0
- package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -0
- package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +73 -0
- package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +73 -0
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +35 -0
- package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -0
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +16 -0
- package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +16 -0
- package/dist/features/column-faceting/columnFacetingFeature.utils.js +29 -0
- package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -0
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +36 -0
- package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +1 -0
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +9 -0
- package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +9 -0
- package/dist/features/column-faceting/createFacetedMinMaxValues.js +36 -0
- package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +1 -0
- package/dist/features/column-faceting/createFacetedRowModel.cjs +40 -0
- package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -0
- package/dist/features/column-faceting/createFacetedRowModel.d.cts +10 -0
- package/dist/features/column-faceting/createFacetedRowModel.d.ts +10 -0
- package/dist/features/column-faceting/createFacetedRowModel.js +40 -0
- package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -0
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs +33 -0
- package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -0
- package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +9 -0
- package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +9 -0
- package/dist/features/column-faceting/createFacetedUniqueValues.js +33 -0
- package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -0
- package/dist/features/column-filtering/columnFilteringFeature.cjs +55 -0
- package/dist/features/column-filtering/columnFilteringFeature.cjs.map +1 -0
- package/dist/features/column-filtering/columnFilteringFeature.d.cts +14 -0
- package/dist/features/column-filtering/columnFilteringFeature.d.ts +14 -0
- package/dist/features/column-filtering/columnFilteringFeature.js +54 -0
- package/dist/features/column-filtering/columnFilteringFeature.js.map +1 -0
- package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +147 -0
- package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +147 -0
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +90 -0
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -0
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +21 -0
- package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +21 -0
- package/dist/features/column-filtering/columnFilteringFeature.utils.js +80 -0
- package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -0
- package/dist/features/column-filtering/createFilteredRowModel.cjs +99 -0
- package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -0
- package/dist/features/column-filtering/createFilteredRowModel.d.cts +11 -0
- package/dist/features/column-filtering/createFilteredRowModel.d.ts +11 -0
- package/dist/features/column-filtering/createFilteredRowModel.js +99 -0
- package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -0
- package/dist/features/column-filtering/filterRowsUtils.cjs +76 -0
- package/dist/features/column-filtering/filterRowsUtils.cjs.map +1 -0
- package/dist/features/column-filtering/filterRowsUtils.js +76 -0
- package/dist/features/column-filtering/filterRowsUtils.js.map +1 -0
- package/dist/features/column-grouping/columnGroupingFeature.cjs +71 -0
- package/dist/features/column-grouping/columnGroupingFeature.cjs.map +1 -0
- package/dist/features/column-grouping/columnGroupingFeature.d.cts +13 -0
- package/dist/features/column-grouping/columnGroupingFeature.d.ts +13 -0
- package/dist/features/column-grouping/columnGroupingFeature.js +70 -0
- package/dist/features/column-grouping/columnGroupingFeature.js.map +1 -0
- package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +157 -0
- package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +157 -0
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +88 -0
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -0
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +27 -0
- package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +27 -0
- package/dist/features/column-grouping/columnGroupingFeature.utils.js +74 -0
- package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -0
- package/dist/features/column-grouping/createGroupedRowModel.cjs +114 -0
- package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -0
- package/dist/features/column-grouping/createGroupedRowModel.d.cts +11 -0
- package/dist/features/column-grouping/createGroupedRowModel.d.ts +11 -0
- package/dist/features/column-grouping/createGroupedRowModel.js +114 -0
- package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -0
- package/dist/features/column-ordering/columnOrderingFeature.cjs +61 -0
- package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -0
- package/dist/features/column-ordering/columnOrderingFeature.d.cts +13 -0
- package/dist/features/column-ordering/columnOrderingFeature.d.ts +13 -0
- package/dist/features/column-ordering/columnOrderingFeature.js +60 -0
- package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -0
- package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +45 -0
- package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +45 -0
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +65 -0
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +1 -0
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +19 -0
- package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +19 -0
- package/dist/features/column-ordering/columnOrderingFeature.utils.js +58 -0
- package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -0
- package/dist/features/column-pinning/columnPinningFeature.cjs +231 -0
- package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -0
- package/dist/features/column-pinning/columnPinningFeature.d.cts +13 -0
- package/dist/features/column-pinning/columnPinningFeature.d.ts +13 -0
- package/dist/features/column-pinning/columnPinningFeature.js +230 -0
- package/dist/features/column-pinning/columnPinningFeature.js.map +1 -0
- package/dist/features/column-pinning/columnPinningFeature.types.d.cts +162 -0
- package/dist/features/column-pinning/columnPinningFeature.types.d.ts +162 -0
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs +205 -0
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -0
- package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +43 -0
- package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +43 -0
- package/dist/features/column-pinning/columnPinningFeature.utils.js +175 -0
- package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -0
- package/dist/features/column-resizing/columnResizingFeature.cjs +46 -0
- package/dist/features/column-resizing/columnResizingFeature.cjs.map +1 -0
- package/dist/features/column-resizing/columnResizingFeature.d.cts +14 -0
- package/dist/features/column-resizing/columnResizingFeature.d.ts +14 -0
- package/dist/features/column-resizing/columnResizingFeature.js +45 -0
- package/dist/features/column-resizing/columnResizingFeature.js.map +1 -0
- package/dist/features/column-resizing/columnResizingFeature.types.d.cts +73 -0
- package/dist/features/column-resizing/columnResizingFeature.types.d.ts +73 -0
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs +157 -0
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -0
- package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +19 -0
- package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +19 -0
- package/dist/features/column-resizing/columnResizingFeature.utils.js +150 -0
- package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -0
- package/dist/features/column-sizing/columnSizingFeature.cjs +75 -0
- package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -0
- package/dist/features/column-sizing/columnSizingFeature.d.cts +14 -0
- package/dist/features/column-sizing/columnSizingFeature.d.ts +14 -0
- package/dist/features/column-sizing/columnSizingFeature.js +74 -0
- package/dist/features/column-sizing/columnSizingFeature.js.map +1 -0
- package/dist/features/column-sizing/columnSizingFeature.types.d.cts +86 -0
- package/dist/features/column-sizing/columnSizingFeature.types.d.ts +86 -0
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs +97 -0
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -0
- package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +30 -0
- package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +30 -0
- package/dist/features/column-sizing/columnSizingFeature.utils.js +84 -0
- package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -0
- package/dist/features/column-visibility/columnVisibilityFeature.cjs +96 -0
- package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -0
- package/dist/features/column-visibility/columnVisibilityFeature.d.cts +13 -0
- package/dist/features/column-visibility/columnVisibilityFeature.d.ts +13 -0
- package/dist/features/column-visibility/columnVisibilityFeature.js +95 -0
- package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -0
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +89 -0
- package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +89 -0
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +84 -0
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -0
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +26 -0
- package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +26 -0
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js +70 -0
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -0
- package/dist/features/global-filtering/globalFilteringFeature.cjs +46 -0
- package/dist/features/global-filtering/globalFilteringFeature.cjs.map +1 -0
- package/dist/features/global-filtering/globalFilteringFeature.d.cts +14 -0
- package/dist/features/global-filtering/globalFilteringFeature.d.ts +14 -0
- package/dist/features/global-filtering/globalFilteringFeature.js +45 -0
- package/dist/features/global-filtering/globalFilteringFeature.js.map +1 -0
- package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +64 -0
- package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +64 -0
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +31 -0
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -0
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +15 -0
- package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +15 -0
- package/dist/features/global-filtering/globalFilteringFeature.utils.js +27 -0
- package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -0
- package/dist/features/row-expanding/createExpandedRowModel.cjs +49 -0
- package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -0
- package/dist/features/row-expanding/createExpandedRowModel.d.cts +11 -0
- package/dist/features/row-expanding/createExpandedRowModel.d.ts +11 -0
- package/dist/features/row-expanding/createExpandedRowModel.js +48 -0
- package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -0
- package/dist/features/row-expanding/rowExpandingFeature.cjs +51 -0
- package/dist/features/row-expanding/rowExpandingFeature.cjs.map +1 -0
- package/dist/features/row-expanding/rowExpandingFeature.d.cts +13 -0
- package/dist/features/row-expanding/rowExpandingFeature.d.ts +13 -0
- package/dist/features/row-expanding/rowExpandingFeature.js +50 -0
- package/dist/features/row-expanding/rowExpandingFeature.js.map +1 -0
- package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +121 -0
- package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +121 -0
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +115 -0
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -0
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +25 -0
- package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +25 -0
- package/dist/features/row-expanding/rowExpandingFeature.utils.js +101 -0
- package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -0
- package/dist/features/row-pagination/createPaginatedRowModel.cjs +57 -0
- package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -0
- package/dist/features/row-pagination/createPaginatedRowModel.d.cts +10 -0
- package/dist/features/row-pagination/createPaginatedRowModel.d.ts +10 -0
- package/dist/features/row-pagination/createPaginatedRowModel.js +57 -0
- package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -0
- package/dist/features/row-pagination/rowPaginationFeature.cjs +49 -0
- package/dist/features/row-pagination/rowPaginationFeature.cjs.map +1 -0
- package/dist/features/row-pagination/rowPaginationFeature.d.cts +13 -0
- package/dist/features/row-pagination/rowPaginationFeature.d.ts +13 -0
- package/dist/features/row-pagination/rowPaginationFeature.js +48 -0
- package/dist/features/row-pagination/rowPaginationFeature.js.map +1 -0
- package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +124 -0
- package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +124 -0
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +120 -0
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +1 -0
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +26 -0
- package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +26 -0
- package/dist/features/row-pagination/rowPaginationFeature.utils.js +104 -0
- package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -0
- package/dist/features/row-pinning/rowPinningFeature.cjs +71 -0
- package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -0
- package/dist/features/row-pinning/rowPinningFeature.d.cts +13 -0
- package/dist/features/row-pinning/rowPinningFeature.d.ts +13 -0
- package/dist/features/row-pinning/rowPinningFeature.js +70 -0
- package/dist/features/row-pinning/rowPinningFeature.js.map +1 -0
- package/dist/features/row-pinning/rowPinningFeature.types.d.cts +77 -0
- package/dist/features/row-pinning/rowPinningFeature.types.d.ts +77 -0
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs +101 -0
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -0
- package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +21 -0
- package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +21 -0
- package/dist/features/row-pinning/rowPinningFeature.utils.js +91 -0
- package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -0
- package/dist/features/row-selection/rowSelectionFeature.cjs +79 -0
- package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -0
- package/dist/features/row-selection/rowSelectionFeature.d.cts +13 -0
- package/dist/features/row-selection/rowSelectionFeature.d.ts +13 -0
- package/dist/features/row-selection/rowSelectionFeature.js +78 -0
- package/dist/features/row-selection/rowSelectionFeature.js.map +1 -0
- package/dist/features/row-selection/rowSelectionFeature.types.d.cts +128 -0
- package/dist/features/row-selection/rowSelectionFeature.types.d.ts +128 -0
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs +232 -0
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -0
- package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +39 -0
- package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +39 -0
- package/dist/features/row-selection/rowSelectionFeature.utils.js +207 -0
- package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -0
- package/dist/features/row-sorting/createSortedRowModel.cjs +85 -0
- package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -0
- package/dist/features/row-sorting/createSortedRowModel.d.cts +11 -0
- package/dist/features/row-sorting/createSortedRowModel.d.ts +11 -0
- package/dist/features/row-sorting/createSortedRowModel.js +85 -0
- package/dist/features/row-sorting/createSortedRowModel.js.map +1 -0
- package/dist/features/row-sorting/rowSortingFeature.cjs +59 -0
- package/dist/features/row-sorting/rowSortingFeature.cjs.map +1 -0
- package/dist/features/row-sorting/rowSortingFeature.d.cts +13 -0
- package/dist/features/row-sorting/rowSortingFeature.d.ts +13 -0
- package/dist/features/row-sorting/rowSortingFeature.js +58 -0
- package/dist/features/row-sorting/rowSortingFeature.js.map +1 -0
- package/dist/features/row-sorting/rowSortingFeature.types.d.cts +182 -0
- package/dist/features/row-sorting/rowSortingFeature.types.d.ts +182 -0
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs +134 -0
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -0
- package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +25 -0
- package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +25 -0
- package/dist/features/row-sorting/rowSortingFeature.utils.js +120 -0
- package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -0
- package/dist/features/stockFeatures.cjs +36 -0
- package/dist/features/stockFeatures.cjs.map +1 -0
- package/dist/features/stockFeatures.d.cts +36 -0
- package/dist/features/stockFeatures.d.ts +36 -0
- package/dist/features/stockFeatures.js +36 -0
- package/dist/features/stockFeatures.js.map +1 -0
- package/dist/features/table-reactivity/tableReactivityFeature.cjs +46 -0
- package/dist/features/table-reactivity/tableReactivityFeature.cjs.map +1 -0
- package/dist/features/table-reactivity/tableReactivityFeature.d.cts +12 -0
- package/dist/features/table-reactivity/tableReactivityFeature.d.ts +12 -0
- package/dist/features/table-reactivity/tableReactivityFeature.js +45 -0
- package/dist/features/table-reactivity/tableReactivityFeature.js.map +1 -0
- package/dist/flex-render.cjs +19 -0
- package/dist/flex-render.cjs.map +1 -0
- package/dist/flex-render.d.cts +24 -0
- package/dist/flex-render.d.ts +24 -0
- package/dist/flex-render.js +16 -0
- package/dist/flex-render.js.map +1 -0
- package/dist/fns/aggregationFns.cjs +125 -0
- package/dist/fns/aggregationFns.cjs.map +1 -0
- package/dist/fns/aggregationFns.d.cts +54 -0
- package/dist/fns/aggregationFns.d.ts +54 -0
- package/dist/fns/aggregationFns.js +116 -0
- package/dist/fns/aggregationFns.js.map +1 -0
- package/dist/fns/filterFns.cjs +179 -0
- package/dist/fns/filterFns.cjs.map +1 -0
- package/dist/fns/filterFns.d.cts +81 -0
- package/dist/fns/filterFns.d.ts +81 -0
- package/dist/fns/filterFns.js +163 -0
- package/dist/fns/filterFns.js.map +1 -0
- package/dist/fns/sortFns.cjs +73 -0
- package/dist/fns/sortFns.cjs.map +1 -0
- package/dist/fns/sortFns.d.cts +22 -0
- package/dist/fns/sortFns.d.ts +22 -0
- package/dist/fns/sortFns.js +65 -0
- package/dist/fns/sortFns.js.map +1 -0
- package/dist/helpers/columnHelper.cjs +36 -0
- package/dist/helpers/columnHelper.cjs.map +1 -0
- package/dist/helpers/columnHelper.d.cts +66 -0
- package/dist/helpers/columnHelper.d.ts +66 -0
- package/dist/helpers/columnHelper.js +35 -0
- package/dist/helpers/columnHelper.js.map +1 -0
- package/dist/helpers/tableFeatures.cjs +20 -0
- package/dist/helpers/tableFeatures.cjs.map +1 -0
- package/dist/helpers/tableFeatures.d.cts +18 -0
- package/dist/helpers/tableFeatures.d.ts +18 -0
- package/dist/helpers/tableFeatures.js +19 -0
- package/dist/helpers/tableFeatures.js.map +1 -0
- package/dist/helpers/tableOptions.cjs +9 -0
- package/dist/helpers/tableOptions.cjs.map +1 -0
- package/dist/helpers/tableOptions.d.cts +28 -0
- package/dist/helpers/tableOptions.d.ts +28 -0
- package/dist/helpers/tableOptions.js +8 -0
- package/dist/helpers/tableOptions.js.map +1 -0
- package/dist/index.cjs +159 -0
- package/dist/index.d.cts +79 -0
- package/dist/index.d.ts +79 -0
- package/dist/index.js +47 -0
- package/dist/static-functions.cjs +261 -0
- package/dist/static-functions.d.cts +21 -0
- package/dist/static-functions.d.ts +21 -0
- package/dist/static-functions.js +22 -0
- package/dist/types/Cell.d.cts +16 -0
- package/dist/types/Cell.d.ts +16 -0
- package/dist/types/Column.d.cts +29 -0
- package/dist/types/Column.d.ts +29 -0
- package/dist/types/ColumnDef.d.cts +66 -0
- package/dist/types/ColumnDef.d.ts +66 -0
- package/dist/types/Header.d.cts +17 -0
- package/dist/types/Header.d.ts +17 -0
- package/dist/types/HeaderGroup.d.cts +15 -0
- package/dist/types/HeaderGroup.d.ts +15 -0
- package/dist/types/Row.d.cts +22 -0
- package/dist/types/Row.d.ts +22 -0
- package/dist/types/RowModel.d.cts +26 -0
- package/dist/types/RowModel.d.ts +26 -0
- package/dist/types/RowModelFns.d.cts +18 -0
- package/dist/types/RowModelFns.d.ts +18 -0
- package/dist/types/Table.d.cts +59 -0
- package/dist/types/Table.d.ts +59 -0
- package/dist/types/TableFeatures.d.cts +77 -0
- package/dist/types/TableFeatures.d.ts +77 -0
- package/dist/types/TableOptions.d.cts +39 -0
- package/dist/types/TableOptions.d.ts +39 -0
- package/dist/types/TableState.d.cts +27 -0
- package/dist/types/TableState.d.ts +27 -0
- package/dist/types/type-utils.d.cts +23 -0
- package/dist/types/type-utils.d.ts +23 -0
- package/dist/utils.cjs +218 -0
- package/dist/utils.cjs.map +1 -0
- package/dist/utils.d.cts +91 -0
- package/dist/utils.d.ts +91 -0
- package/dist/utils.js +203 -0
- package/dist/utils.js.map +1 -0
- package/package.json +31 -14
- 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 +114 -0
- package/src/core/rows/coreRowsFeature.utils.ts +152 -0
- package/src/core/table/constructTable.ts +110 -0
- package/src/core/table/coreTablesFeature.ts +36 -0
- package/src/core/table/coreTablesFeature.types.ts +187 -0
- package/src/core/table/coreTablesFeature.utils.ts +47 -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 +209 -0
- package/src/features/column-filtering/createFilteredRowModel.ts +172 -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 +134 -0
- package/src/features/column-pinning/columnPinningFeature.ts +347 -0
- package/src/features/column-pinning/columnPinningFeature.types.ts +176 -0
- package/src/features/column-pinning/columnPinningFeature.utils.ts +539 -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 +276 -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 +157 -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 +59 -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 +208 -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 +208 -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 +199 -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 +465 -0
- package/src/features/row-sorting/createSortedRowModel.ts +149 -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 +319 -0
- package/src/features/stockFeatures.ts +48 -0
- package/src/features/table-reactivity/tableReactivityFeature.ts +92 -0
- package/src/flex-render.ts +60 -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/tableOptions.ts +82 -0
- package/src/index.ts +140 -42
- package/src/process-env.d.ts +6 -0
- package/src/static-functions.ts +31 -0
- 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 +132 -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 +361 -161
- package/dist/cjs/aggregationFns.cjs +0 -98
- 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 -93
- 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 -228
- package/dist/cjs/core/table.cjs.map +0 -1
- package/dist/cjs/core/table.d.cts +0 -221
- 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 -134
- 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/ColumnOrdering.d.cts +0 -54
- 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 -308
- 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 -154
- 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 -162
- 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 -133
- 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 -298
- 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 -201
- 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 -87
- 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 -36
- 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 -38
- 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 -91
- package/dist/cjs/utils/getSortedRowModel.cjs.map +0 -1
- package/dist/cjs/utils/getSortedRowModel.d.cts +0 -3
- package/dist/cjs/utils.cjs +0 -100
- 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 -98
- package/dist/esm/aggregationFns.js.map +0 -1
- package/dist/esm/columnHelper.d.ts +0 -9
- package/dist/esm/columnHelper.js +0 -19
- 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 -93
- package/dist/esm/core/row.js.map +0 -1
- package/dist/esm/core/table.d.ts +0 -221
- package/dist/esm/core/table.js +0 -228
- 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 -134
- 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 -308
- 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 -154
- 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 -162
- 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 -133
- 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 -298
- 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 -201
- 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/index.d.ts +0 -34
- package/dist/esm/index.js +0 -87
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/sortingFns.d.ts +0 -12
- package/dist/esm/sortingFns.js +0 -91
- 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 +0 -99
- 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 -36
- 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 -38
- 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 -91
- package/dist/esm/utils/getSortedRowModel.js.map +0 -1
- package/dist/esm/utils.d.ts +0 -39
- package/dist/esm/utils.js +0 -100
- package/dist/esm/utils.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 -527
- 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 -273
- 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,187 @@
|
|
|
1
|
+
import type { Atom, ReadonlyAtom, ReadonlyStore, Store } from '@tanstack/store'
|
|
2
|
+
import type { CoreFeatures } from '../coreFeatures'
|
|
3
|
+
import type { RowModelFns } from '../../types/RowModelFns'
|
|
4
|
+
import type { RowData, Updater } from '../../types/type-utils'
|
|
5
|
+
import type { TableFeatures } from '../../types/TableFeatures'
|
|
6
|
+
import type { CachedRowModels, CreateRowModels_All } from '../../types/RowModel'
|
|
7
|
+
import type { TableOptions } from '../../types/TableOptions'
|
|
8
|
+
import type { TableState, TableState_All } from '../../types/TableState'
|
|
9
|
+
|
|
10
|
+
export interface TableMeta<
|
|
11
|
+
TFeatures extends TableFeatures,
|
|
12
|
+
TData extends RowData,
|
|
13
|
+
> {}
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* A map of writable atoms, one per `TableState` slice. These are the internal
|
|
17
|
+
* writable atoms that the library always writes to via `makeStateUpdater`.
|
|
18
|
+
*/
|
|
19
|
+
export type BaseAtoms<TFeatures extends TableFeatures> = {
|
|
20
|
+
[K in keyof TableState<TFeatures>]-?: Atom<TableState<TFeatures>[K]>
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* A map of readonly derived atoms, one per `TableState` slice. Each derives
|
|
25
|
+
* from its corresponding `baseAtom` plus, optionally, a per-slice external
|
|
26
|
+
* atom or external state value.
|
|
27
|
+
*
|
|
28
|
+
* Precedence: `options.atoms[key]` > `options.state[key]` > `baseAtoms[key]`.
|
|
29
|
+
*/
|
|
30
|
+
export type Atoms<TFeatures extends TableFeatures> = {
|
|
31
|
+
[K in keyof TableState<TFeatures>]-?: ReadonlyAtom<TableState<TFeatures>[K]>
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* A map of optional external atoms, one per `TableState` slice. Consumers can
|
|
36
|
+
* provide their own writable atom for any state slice to take over ownership
|
|
37
|
+
* of that slice.
|
|
38
|
+
*/
|
|
39
|
+
export type ExternalAtoms<TFeatures extends TableFeatures> = Partial<{
|
|
40
|
+
[K in keyof TableState<TFeatures>]: Atom<TableState<TFeatures>[K]>
|
|
41
|
+
}>
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Internal "all features" flat variants of the atom types. `Table_Internal`
|
|
45
|
+
* uses these so feature code (written generically over `TFeatures`) can access
|
|
46
|
+
* any slice atom (e.g. `table.atoms.columnPinning`) without TypeScript
|
|
47
|
+
* narrowing away slices that aren't in the current `TFeatures` union.
|
|
48
|
+
*
|
|
49
|
+
* Keys are optional: feature code can read atoms from slices it doesn't own,
|
|
50
|
+
* but those slices may not be registered on the current table. Consumers must
|
|
51
|
+
* use optional chaining (`table.atoms.columnPinning?.get() ?? default`).
|
|
52
|
+
*/
|
|
53
|
+
export type BaseAtoms_All = {
|
|
54
|
+
[K in keyof TableState_All]?: Atom<TableState_All[K]>
|
|
55
|
+
}
|
|
56
|
+
export type Atoms_All = {
|
|
57
|
+
[K in keyof TableState_All]?: ReadonlyAtom<TableState_All[K]>
|
|
58
|
+
}
|
|
59
|
+
export type ExternalAtoms_All = Partial<{
|
|
60
|
+
[K in keyof TableState_All]: Atom<TableState_All[K]>
|
|
61
|
+
}>
|
|
62
|
+
|
|
63
|
+
export interface TableOptions_Table<
|
|
64
|
+
TFeatures extends TableFeatures,
|
|
65
|
+
TData extends RowData,
|
|
66
|
+
> {
|
|
67
|
+
/**
|
|
68
|
+
* The features that you want to enable for the table.
|
|
69
|
+
*/
|
|
70
|
+
_features: TFeatures
|
|
71
|
+
/**
|
|
72
|
+
* The row model options that you want to enable for the table.
|
|
73
|
+
*/
|
|
74
|
+
_rowModels?: CreateRowModels_All<TFeatures, TData>
|
|
75
|
+
/**
|
|
76
|
+
* Optionally, provide your own external writable atoms for individual state slices.
|
|
77
|
+
* When an atom is provided for a given slice, it takes precedence over `options.state[key]`
|
|
78
|
+
* and the internal base atom for that slice. Writes originating from the library are
|
|
79
|
+
* still routed through the internal base atom; consumers are responsible for
|
|
80
|
+
* mirroring changes back to their external atom via the corresponding `onXChange` callback.
|
|
81
|
+
*/
|
|
82
|
+
atoms?: ExternalAtoms<TFeatures>
|
|
83
|
+
/**
|
|
84
|
+
* Set this option to override any of the `autoReset...` feature options.
|
|
85
|
+
*/
|
|
86
|
+
autoResetAll?: boolean
|
|
87
|
+
/**
|
|
88
|
+
* The data for the table to display. When the `data` option changes reference, the table will reprocess the data.
|
|
89
|
+
*/
|
|
90
|
+
data: ReadonlyArray<TData>
|
|
91
|
+
/**
|
|
92
|
+
* Use this option to optionally pass initial state to the table. This state will be used when resetting various table states either automatically by the table (eg. `options.autoResetPageIndex`) or via functions like `table.resetRowSelection()`. Most reset function allow you optionally pass a flag to reset to a blank/default state instead of the initial state.
|
|
93
|
+
* Table state will not be reset when this object changes, which also means that the initial state object does not need to be stable.
|
|
94
|
+
*/
|
|
95
|
+
initialState?: Partial<TableState<TFeatures>>
|
|
96
|
+
/**
|
|
97
|
+
* This option is used to optionally implement the merging of table options.
|
|
98
|
+
*/
|
|
99
|
+
mergeOptions?: (
|
|
100
|
+
defaultOptions: TableOptions<TFeatures, TData>,
|
|
101
|
+
options: Partial<TableOptions<TFeatures, TData>>,
|
|
102
|
+
) => TableOptions<TFeatures, TData>
|
|
103
|
+
/**
|
|
104
|
+
* You can pass any object to `options.meta` and access it anywhere the `table` is available via `table.options.meta`.
|
|
105
|
+
*/
|
|
106
|
+
meta?: TableMeta<TFeatures, TData>
|
|
107
|
+
/**
|
|
108
|
+
* Pass in individual self-managed state to the table.
|
|
109
|
+
*/
|
|
110
|
+
state?: Partial<TableState<TFeatures>>
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export interface Table_CoreProperties<
|
|
114
|
+
TFeatures extends TableFeatures,
|
|
115
|
+
TData extends RowData,
|
|
116
|
+
> {
|
|
117
|
+
/**
|
|
118
|
+
* The features that are enabled for the table.
|
|
119
|
+
*/
|
|
120
|
+
_features: Partial<CoreFeatures> & TFeatures
|
|
121
|
+
/**
|
|
122
|
+
* Prototype cache for Cell objects - shared by all cells in this table
|
|
123
|
+
*/
|
|
124
|
+
_cellPrototype?: object
|
|
125
|
+
/**
|
|
126
|
+
* Prototype cache for Column objects - shared by all columns in this table
|
|
127
|
+
*/
|
|
128
|
+
_columnPrototype?: object
|
|
129
|
+
/**
|
|
130
|
+
* Prototype cache for Header objects - shared by all headers in this table
|
|
131
|
+
*/
|
|
132
|
+
_headerPrototype?: object
|
|
133
|
+
/**
|
|
134
|
+
* The row model processing functions that are used to process the data by features.
|
|
135
|
+
*/
|
|
136
|
+
_rowModelFns: RowModelFns<TFeatures, TData>
|
|
137
|
+
/**
|
|
138
|
+
* The row models that are enabled for the table.
|
|
139
|
+
*/
|
|
140
|
+
_rowModels: CachedRowModels<TFeatures, TData>
|
|
141
|
+
/**
|
|
142
|
+
* Prototype cache for Row objects - shared by all rows in this table
|
|
143
|
+
*/
|
|
144
|
+
_rowPrototype?: object
|
|
145
|
+
/**
|
|
146
|
+
* The internal writable atoms for each `TableState` slice. This is the library's
|
|
147
|
+
* single write surface — all state mutations from features land here.
|
|
148
|
+
*/
|
|
149
|
+
baseAtoms: BaseAtoms<TFeatures>
|
|
150
|
+
/**
|
|
151
|
+
* The readonly derived atoms for each `TableState` slice. Each derives from
|
|
152
|
+
* its corresponding `baseAtom` plus, optionally, a per-slice external atom or
|
|
153
|
+
* external state value (precedence: external atom > external state > base atom).
|
|
154
|
+
*/
|
|
155
|
+
atoms: Atoms<TFeatures>
|
|
156
|
+
/**
|
|
157
|
+
* The base store for the table options.
|
|
158
|
+
*/
|
|
159
|
+
optionsStore: Store<TableOptions<TFeatures, TData>>
|
|
160
|
+
/**
|
|
161
|
+
* This is the resolved initial state of the table.
|
|
162
|
+
*/
|
|
163
|
+
initialState: TableState<TFeatures>
|
|
164
|
+
/**
|
|
165
|
+
* A read-only reference to the table's current options.
|
|
166
|
+
*/
|
|
167
|
+
readonly options: TableOptions<TFeatures, TData>
|
|
168
|
+
/**
|
|
169
|
+
* The readonly flat store for the table state. Derives from `table.atoms`
|
|
170
|
+
* only; never reads external state directly.
|
|
171
|
+
*/
|
|
172
|
+
store: ReadonlyStore<TableState<TFeatures>>
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
export interface Table_Table<
|
|
176
|
+
TFeatures extends TableFeatures,
|
|
177
|
+
TData extends RowData,
|
|
178
|
+
> extends Table_CoreProperties<TFeatures, TData> {
|
|
179
|
+
/**
|
|
180
|
+
* Call this function to reset the table state to the initial state.
|
|
181
|
+
*/
|
|
182
|
+
reset: () => void
|
|
183
|
+
/**
|
|
184
|
+
* This function can be used to update the table options.
|
|
185
|
+
*/
|
|
186
|
+
setOptions: (newOptions: Updater<TableOptions<TFeatures, TData>>) => void
|
|
187
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { batch } from '@tanstack/store'
|
|
2
|
+
import { cloneState, functionalUpdate } from '../../utils'
|
|
3
|
+
import type { RowData, Updater } from '../../types/type-utils'
|
|
4
|
+
import type { TableFeatures } from '../../types/TableFeatures'
|
|
5
|
+
import type { Table_Internal } from '../../types/Table'
|
|
6
|
+
import type { TableOptions } from '../../types/TableOptions'
|
|
7
|
+
|
|
8
|
+
export function table_reset<
|
|
9
|
+
TFeatures extends TableFeatures,
|
|
10
|
+
TData extends RowData,
|
|
11
|
+
>(table: Table_Internal<TFeatures, TData>): void {
|
|
12
|
+
const snap = cloneState(table.initialState)
|
|
13
|
+
batch(() => {
|
|
14
|
+
for (const key of Object.keys(snap) as Array<keyof typeof snap>) {
|
|
15
|
+
;(table.baseAtoms as any)[key].set(snap[key] as any)
|
|
16
|
+
}
|
|
17
|
+
})
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export function table_mergeOptions<
|
|
21
|
+
TFeatures extends TableFeatures,
|
|
22
|
+
TData extends RowData,
|
|
23
|
+
>(
|
|
24
|
+
table: Table_Internal<TFeatures, TData>,
|
|
25
|
+
newOptions: TableOptions<TFeatures, TData>,
|
|
26
|
+
) {
|
|
27
|
+
if (table.options.mergeOptions) {
|
|
28
|
+
return table.options.mergeOptions(table.options, newOptions)
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
return {
|
|
32
|
+
...table.options,
|
|
33
|
+
...newOptions,
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export function table_setOptions<
|
|
38
|
+
TFeatures extends TableFeatures,
|
|
39
|
+
TData extends RowData,
|
|
40
|
+
>(
|
|
41
|
+
table: Table_Internal<TFeatures, TData>,
|
|
42
|
+
updater: Updater<TableOptions<TFeatures, TData>>,
|
|
43
|
+
): void {
|
|
44
|
+
const newOptions = functionalUpdate(updater, table.options)
|
|
45
|
+
const mergedOptions = table_mergeOptions(table, newOptions)
|
|
46
|
+
table.optionsStore.setState(() => mergedOptions)
|
|
47
|
+
}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import {
|
|
2
|
+
assignPrototypeAPIs,
|
|
3
|
+
assignTableAPIs,
|
|
4
|
+
callMemoOrStaticFn,
|
|
5
|
+
} from '../../utils'
|
|
6
|
+
import {
|
|
7
|
+
column_getFacetedMinMaxValues,
|
|
8
|
+
column_getFacetedRowModel,
|
|
9
|
+
column_getFacetedUniqueValues,
|
|
10
|
+
table_getGlobalFacetedMinMaxValues,
|
|
11
|
+
table_getGlobalFacetedRowModel,
|
|
12
|
+
table_getGlobalFacetedUniqueValues,
|
|
13
|
+
} from './columnFacetingFeature.utils'
|
|
14
|
+
import type { RowData } from '../../types/type-utils'
|
|
15
|
+
import type { TableFeature, TableFeatures } from '../../types/TableFeatures'
|
|
16
|
+
import type { Column_Internal } from '../../types/Column'
|
|
17
|
+
// import type {
|
|
18
|
+
// CachedRowModel_Faceted,
|
|
19
|
+
// Column_ColumnFaceting,
|
|
20
|
+
// CreateRowModel_Faceted,
|
|
21
|
+
// } from './columnFacetingFeature.types'
|
|
22
|
+
|
|
23
|
+
export interface ColumnFacetingFeatureConstructors<
|
|
24
|
+
TFeatures extends TableFeatures,
|
|
25
|
+
TData extends RowData,
|
|
26
|
+
> {
|
|
27
|
+
// CachedRowModel: CachedRowModel_Faceted<TFeatures, TData>
|
|
28
|
+
// Column: Column_ColumnFaceting<TFeatures, TData>
|
|
29
|
+
// CreateRowModels: CreateRowModel_Faceted<TFeatures, TData>
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export function constructColumnFacetingFeature<
|
|
33
|
+
TFeatures extends TableFeatures,
|
|
34
|
+
TData extends RowData,
|
|
35
|
+
>(): TableFeature<ColumnFacetingFeatureConstructors<TFeatures, TData>> {
|
|
36
|
+
return {
|
|
37
|
+
assignColumnPrototype: (prototype, table) => {
|
|
38
|
+
assignPrototypeAPIs('columnFacetingFeature', prototype, table, {
|
|
39
|
+
column_getFacetedRowModel: {
|
|
40
|
+
memoDeps: () => [
|
|
41
|
+
table.getPreFilteredRowModel().rows,
|
|
42
|
+
table.atoms.columnFilters?.get(),
|
|
43
|
+
table.atoms.globalFilter?.get(),
|
|
44
|
+
table.getFilteredRowModel().rows,
|
|
45
|
+
],
|
|
46
|
+
fn: (column) => column_getFacetedRowModel(column, column.table),
|
|
47
|
+
},
|
|
48
|
+
column_getFacetedMinMaxValues: {
|
|
49
|
+
memoDeps: (column: Column_Internal<TFeatures, TData>) => [
|
|
50
|
+
callMemoOrStaticFn(
|
|
51
|
+
column,
|
|
52
|
+
'getFacetedRowModel',
|
|
53
|
+
column_getFacetedRowModel,
|
|
54
|
+
column.table,
|
|
55
|
+
).flatRows,
|
|
56
|
+
],
|
|
57
|
+
fn: (column) => column_getFacetedMinMaxValues(column, column.table),
|
|
58
|
+
},
|
|
59
|
+
column_getFacetedUniqueValues: {
|
|
60
|
+
memoDeps: (column: Column_Internal<TFeatures, TData>) => [
|
|
61
|
+
callMemoOrStaticFn(
|
|
62
|
+
column,
|
|
63
|
+
'getFacetedRowModel',
|
|
64
|
+
column_getFacetedRowModel,
|
|
65
|
+
column.table,
|
|
66
|
+
).flatRows,
|
|
67
|
+
],
|
|
68
|
+
fn: (column) => column_getFacetedUniqueValues(column, column.table),
|
|
69
|
+
},
|
|
70
|
+
})
|
|
71
|
+
},
|
|
72
|
+
|
|
73
|
+
constructTableAPIs: (table) => {
|
|
74
|
+
assignTableAPIs('columnFacetingFeature', table, {
|
|
75
|
+
table_getGlobalFacetedRowModel: {
|
|
76
|
+
memoDeps: () => [
|
|
77
|
+
table.getPreFilteredRowModel().rows,
|
|
78
|
+
table.atoms.columnFilters?.get(),
|
|
79
|
+
table.atoms.globalFilter?.get(),
|
|
80
|
+
table.getFilteredRowModel().rows,
|
|
81
|
+
],
|
|
82
|
+
fn: () => table_getGlobalFacetedRowModel(table),
|
|
83
|
+
},
|
|
84
|
+
table_getGlobalFacetedMinMaxValues: {
|
|
85
|
+
memoDeps: () => [
|
|
86
|
+
callMemoOrStaticFn(
|
|
87
|
+
table,
|
|
88
|
+
'getGlobalFacetedRowModel',
|
|
89
|
+
table_getGlobalFacetedRowModel,
|
|
90
|
+
).flatRows,
|
|
91
|
+
],
|
|
92
|
+
fn: () => table_getGlobalFacetedMinMaxValues(table),
|
|
93
|
+
},
|
|
94
|
+
table_getGlobalFacetedUniqueValues: {
|
|
95
|
+
memoDeps: () => [
|
|
96
|
+
callMemoOrStaticFn(
|
|
97
|
+
table,
|
|
98
|
+
'getGlobalFacetedRowModel',
|
|
99
|
+
table_getGlobalFacetedRowModel,
|
|
100
|
+
).flatRows,
|
|
101
|
+
],
|
|
102
|
+
fn: () => table_getGlobalFacetedUniqueValues(table),
|
|
103
|
+
},
|
|
104
|
+
})
|
|
105
|
+
},
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* The Column Faceting feature adds column faceting APIs to the column objects.
|
|
111
|
+
*/
|
|
112
|
+
export const columnFacetingFeature = constructColumnFacetingFeature()
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import type { Table } from '../../types/Table'
|
|
2
|
+
import type { RowData } from '../../types/type-utils'
|
|
3
|
+
import type { TableFeatures } from '../../types/TableFeatures'
|
|
4
|
+
import type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'
|
|
5
|
+
|
|
6
|
+
export interface Column_ColumnFaceting<
|
|
7
|
+
TFeatures extends TableFeatures,
|
|
8
|
+
TData extends RowData,
|
|
9
|
+
> {
|
|
10
|
+
/**
|
|
11
|
+
* A function that **computes and returns** a min/max tuple derived from `column.getFacetedRowModel`. Useful for displaying faceted result values.
|
|
12
|
+
*/
|
|
13
|
+
getFacetedMinMaxValues: () => undefined | [number, number]
|
|
14
|
+
/**
|
|
15
|
+
* A function that **computes and returns** a row model with all other column filters applied, excluding its own filter. Useful for displaying faceted result counts.
|
|
16
|
+
*/
|
|
17
|
+
getFacetedRowModel: () => RowModel<TFeatures, TData>
|
|
18
|
+
/**
|
|
19
|
+
* Returns a `Map` of unique values and their occurrences derived from `column.getFacetedRowModel`. Useful for displaying faceted result values.
|
|
20
|
+
*/
|
|
21
|
+
getFacetedUniqueValues: () => Map<any, number>
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export interface Table_RowModels_Faceted<
|
|
25
|
+
TFeatures extends TableFeatures,
|
|
26
|
+
TData extends RowData,
|
|
27
|
+
> {
|
|
28
|
+
/**
|
|
29
|
+
* A function that **computes and returns** a min/max tuple derived from `column.getFacetedRowModel`. Useful for displaying faceted result values.
|
|
30
|
+
* > ⚠️ Requires that you pass a valid `getFacetedMinMaxValues` function to `options.getFacetedMinMaxValues`. A default implementation is provided via the exported `getFacetedMinMaxValues` function.
|
|
31
|
+
*/
|
|
32
|
+
getFacetedMinMaxValues: () => undefined | [number, number]
|
|
33
|
+
/**
|
|
34
|
+
* Returns the row model with all other column filters applied, excluding its own filter. Useful for displaying faceted result counts.
|
|
35
|
+
* > ⚠️ Requires that you pass a valid `getFacetedRowModel` function to `options.facetedRowModel`. A default implementation is provided via the exported `getFacetedRowModel` function.
|
|
36
|
+
*/
|
|
37
|
+
getFacetedRowModel: () => RowModel<TFeatures, TData>
|
|
38
|
+
/**
|
|
39
|
+
* A function that **computes and returns** a `Map` of unique values and their occurrences derived from `column.getFacetedRowModel`. Useful for displaying faceted result values.
|
|
40
|
+
* > ⚠️ Requires that you pass a valid `getFacetedUniqueValues` function to `options.getFacetedUniqueValues`. A default implementation is provided via the exported `getFacetedUniqueValues` function.
|
|
41
|
+
*/
|
|
42
|
+
getFacetedUniqueValues: () => Map<any, number>
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export interface CreateRowModel_Faceted<
|
|
46
|
+
TFeatures extends TableFeatures,
|
|
47
|
+
TData extends RowData,
|
|
48
|
+
> {
|
|
49
|
+
/**
|
|
50
|
+
* This function is used to retrieve the faceted min/max values. If using server-side faceting, this function is not required. To use client-side faceting, pass the exported `getFacetedMinMaxValues()` from your adapter to your table or implement your own.
|
|
51
|
+
*/
|
|
52
|
+
facetedMinMaxValues?: (
|
|
53
|
+
table: Table<TFeatures, TData>,
|
|
54
|
+
columnId: string,
|
|
55
|
+
) => () => [number, number] | undefined
|
|
56
|
+
/**
|
|
57
|
+
* This function is used to retrieve the faceted row model. If using server-side faceting, this function is not required. To use client-side faceting, pass the exported `getFacetedRowModel()` from your adapter to your table or implement your own.
|
|
58
|
+
*/
|
|
59
|
+
facetedRowModel?: (
|
|
60
|
+
table: Table<TFeatures, TData>,
|
|
61
|
+
columnId: string,
|
|
62
|
+
) => () => RowModel<TFeatures, TData>
|
|
63
|
+
/**
|
|
64
|
+
* This function is used to retrieve the faceted unique values. If using server-side faceting, this function is not required. To use client-side faceting, pass the exported `getFacetedUniqueValues()` from your adapter to your table or implement your own.
|
|
65
|
+
*/
|
|
66
|
+
facetedUniqueValues?: (
|
|
67
|
+
table: Table<TFeatures, TData>,
|
|
68
|
+
columnId: string,
|
|
69
|
+
) => () => Map<any, number>
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export interface CachedRowModel_Faceted<
|
|
73
|
+
TFeatures extends TableFeatures,
|
|
74
|
+
TData extends RowData,
|
|
75
|
+
> {
|
|
76
|
+
facetedRowModel?: (columnId: string) => () => RowModel<TFeatures, TData>
|
|
77
|
+
facetedMinMaxValues?: (columnId: string) => [number, number]
|
|
78
|
+
facetedUniqueValues?: (columnId: string) => Map<any, number>
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export interface Table_ColumnFaceting<
|
|
82
|
+
TFeatures extends TableFeatures,
|
|
83
|
+
TData extends RowData,
|
|
84
|
+
> {
|
|
85
|
+
/**
|
|
86
|
+
* Returns the min and max values for the global filter.
|
|
87
|
+
*/
|
|
88
|
+
getGlobalFacetedMinMaxValues: () => undefined | [number, number]
|
|
89
|
+
/**
|
|
90
|
+
* Returns the row model for the table after **global** filtering has been applied.
|
|
91
|
+
*/
|
|
92
|
+
getGlobalFacetedRowModel: () => RowModel<TFeatures, TData>
|
|
93
|
+
/**
|
|
94
|
+
* Returns the faceted unique values for the global filter.
|
|
95
|
+
*/
|
|
96
|
+
getGlobalFacetedUniqueValues: () => Map<any, number>
|
|
97
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import type { CellData, RowData } from '../../types/type-utils'
|
|
2
|
+
import type { TableFeatures } from '../../types/TableFeatures'
|
|
3
|
+
import type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'
|
|
4
|
+
import type { Table_Internal } from '../../types/Table'
|
|
5
|
+
import type { Column_Internal } from '../../types/Column'
|
|
6
|
+
|
|
7
|
+
export function column_getFacetedMinMaxValues<
|
|
8
|
+
TFeatures extends TableFeatures,
|
|
9
|
+
TData extends RowData,
|
|
10
|
+
TValue extends CellData = CellData,
|
|
11
|
+
>(
|
|
12
|
+
column: Column_Internal<TFeatures, TData, TValue>,
|
|
13
|
+
table: Table_Internal<TFeatures, TData>,
|
|
14
|
+
): [number, number] | undefined {
|
|
15
|
+
const facetedMinMaxValuesFn =
|
|
16
|
+
table.options._rowModels?.facetedMinMaxValues?.(table, column.id) ??
|
|
17
|
+
(() => undefined)
|
|
18
|
+
return facetedMinMaxValuesFn()
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export function column_getFacetedRowModel<
|
|
22
|
+
TFeatures extends TableFeatures,
|
|
23
|
+
TData extends RowData,
|
|
24
|
+
TValue extends CellData = CellData,
|
|
25
|
+
>(
|
|
26
|
+
column: Column_Internal<TFeatures, TData, TValue> | undefined,
|
|
27
|
+
table: Table_Internal<TFeatures, TData>,
|
|
28
|
+
): RowModel<TFeatures, TData> {
|
|
29
|
+
const facetedRowModelFn =
|
|
30
|
+
table.options._rowModels?.facetedRowModel?.(table, column?.id ?? '') ??
|
|
31
|
+
(() => table.getPreFilteredRowModel())
|
|
32
|
+
return facetedRowModelFn()
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export function column_getFacetedUniqueValues<
|
|
36
|
+
TFeatures extends TableFeatures,
|
|
37
|
+
TData extends RowData,
|
|
38
|
+
TValue extends CellData = CellData,
|
|
39
|
+
>(
|
|
40
|
+
column: Column_Internal<TFeatures, TData, TValue>,
|
|
41
|
+
table: Table_Internal<TFeatures, TData>,
|
|
42
|
+
): Map<any, number> {
|
|
43
|
+
const facetedUniqueValuesFn =
|
|
44
|
+
table.options._rowModels?.facetedUniqueValues?.(table, column.id) ??
|
|
45
|
+
(() => new Map<any, number>())
|
|
46
|
+
return facetedUniqueValuesFn()
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export function table_getGlobalFacetedMinMaxValues<
|
|
50
|
+
TFeatures extends TableFeatures,
|
|
51
|
+
TData extends RowData,
|
|
52
|
+
>(table: Table_Internal<TFeatures, TData>): undefined | [number, number] {
|
|
53
|
+
const facetedMinMaxValuesFn =
|
|
54
|
+
table.options._rowModels?.facetedMinMaxValues?.(table, '__global__') ??
|
|
55
|
+
(() => undefined)
|
|
56
|
+
return facetedMinMaxValuesFn()
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export function table_getGlobalFacetedRowModel<
|
|
60
|
+
TFeatures extends TableFeatures,
|
|
61
|
+
TData extends RowData,
|
|
62
|
+
>(table: Table_Internal<TFeatures, TData>): RowModel<TFeatures, TData> {
|
|
63
|
+
const facetedRowModelFn =
|
|
64
|
+
table.options._rowModels?.facetedRowModel?.(table, '__global__') ??
|
|
65
|
+
(() => table.getPreFilteredRowModel())
|
|
66
|
+
return facetedRowModelFn()
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
export function table_getGlobalFacetedUniqueValues<
|
|
70
|
+
TFeatures extends TableFeatures,
|
|
71
|
+
TData extends RowData,
|
|
72
|
+
>(table: Table_Internal<TFeatures, TData>): Map<any, number> {
|
|
73
|
+
const facetedUniqueValuesFn =
|
|
74
|
+
table.options._rowModels?.facetedUniqueValues?.(table, '__global__') ??
|
|
75
|
+
(() => new Map())
|
|
76
|
+
return facetedUniqueValuesFn()
|
|
77
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { callMemoOrStaticFn, tableMemo } from '../../utils'
|
|
2
|
+
import { column_getFacetedRowModel } from './columnFacetingFeature.utils'
|
|
3
|
+
import type { Row } from '../../types/Row'
|
|
4
|
+
import type { Table, Table_Internal } from '../../types/Table'
|
|
5
|
+
import type { TableFeatures } from '../../types/TableFeatures'
|
|
6
|
+
import type { RowData } from '../../types/type-utils'
|
|
7
|
+
|
|
8
|
+
export function createFacetedMinMaxValues<
|
|
9
|
+
TFeatures extends TableFeatures,
|
|
10
|
+
TData extends RowData = any,
|
|
11
|
+
>(): (
|
|
12
|
+
table: Table<TFeatures, TData>,
|
|
13
|
+
columnId: string,
|
|
14
|
+
) => () => undefined | [number, number] {
|
|
15
|
+
return (_table, columnId) => {
|
|
16
|
+
const table: Table_Internal<TFeatures, TData> = _table
|
|
17
|
+
return tableMemo({
|
|
18
|
+
feature: 'columnFacetingFeature',
|
|
19
|
+
fn: (flatRows) => _createFacetedMinMaxValues(columnId, flatRows),
|
|
20
|
+
fnName: 'table.getFacetedMinMaxValues',
|
|
21
|
+
memoDeps: () => {
|
|
22
|
+
const column = table.getColumn(columnId)
|
|
23
|
+
if (!column) return [table.getPreFilteredRowModel().flatRows]
|
|
24
|
+
return [
|
|
25
|
+
callMemoOrStaticFn(
|
|
26
|
+
column,
|
|
27
|
+
'getFacetedRowModel',
|
|
28
|
+
column_getFacetedRowModel,
|
|
29
|
+
table,
|
|
30
|
+
).flatRows,
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
table,
|
|
34
|
+
})
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function _createFacetedMinMaxValues<
|
|
39
|
+
TFeatures extends TableFeatures,
|
|
40
|
+
TData extends RowData = any,
|
|
41
|
+
>(
|
|
42
|
+
columnId: string,
|
|
43
|
+
flatRows: Array<Row<TFeatures, TData>>,
|
|
44
|
+
): undefined | [number, number] {
|
|
45
|
+
if (!flatRows.length) return undefined
|
|
46
|
+
|
|
47
|
+
const numericValues = flatRows
|
|
48
|
+
.map((flatRow) => flatRow.getValue(columnId))
|
|
49
|
+
.map(Number)
|
|
50
|
+
.filter((value) => !Number.isNaN(value))
|
|
51
|
+
|
|
52
|
+
if (!numericValues.length) return undefined
|
|
53
|
+
|
|
54
|
+
let facetedMinValue = numericValues[0]!
|
|
55
|
+
let facetedMaxValue = numericValues[0]!
|
|
56
|
+
|
|
57
|
+
for (const value of numericValues) {
|
|
58
|
+
if (value < facetedMinValue) facetedMinValue = value
|
|
59
|
+
if (value > facetedMaxValue) facetedMaxValue = value
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
return [facetedMinValue, facetedMaxValue]
|
|
63
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { tableMemo } from '../../utils'
|
|
2
|
+
import { filterRows } from '../column-filtering/filterRowsUtils'
|
|
3
|
+
import type { Table, Table_Internal } from '../../types/Table'
|
|
4
|
+
import type {
|
|
5
|
+
ColumnFiltersState,
|
|
6
|
+
Row_ColumnFiltering,
|
|
7
|
+
} from '../column-filtering/columnFilteringFeature.types'
|
|
8
|
+
import type { TableFeatures } from '../../types/TableFeatures'
|
|
9
|
+
import type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'
|
|
10
|
+
import type { Row } from '../../types/Row'
|
|
11
|
+
import type { RowData } from '../../types/type-utils'
|
|
12
|
+
|
|
13
|
+
export function createFacetedRowModel<
|
|
14
|
+
TFeatures extends TableFeatures,
|
|
15
|
+
TData extends RowData = any,
|
|
16
|
+
>(): (
|
|
17
|
+
table: Table<TFeatures, TData>,
|
|
18
|
+
columnId: string,
|
|
19
|
+
) => () => RowModel<TFeatures, TData> {
|
|
20
|
+
return (_table, columnId) => {
|
|
21
|
+
const table: Table_Internal<TFeatures, TData> = _table
|
|
22
|
+
return tableMemo({
|
|
23
|
+
feature: 'columnFacetingFeature',
|
|
24
|
+
table,
|
|
25
|
+
fnName: 'createFacetedRowModel',
|
|
26
|
+
memoDeps: () => [
|
|
27
|
+
table.getPreFilteredRowModel(),
|
|
28
|
+
table.atoms.columnFilters?.get(),
|
|
29
|
+
table.atoms.globalFilter?.get(),
|
|
30
|
+
table.getFilteredRowModel(),
|
|
31
|
+
],
|
|
32
|
+
fn: (preRowModel, columnFilters, globalFilter) =>
|
|
33
|
+
_createFacetedRowModel(
|
|
34
|
+
table,
|
|
35
|
+
columnId,
|
|
36
|
+
preRowModel,
|
|
37
|
+
columnFilters,
|
|
38
|
+
globalFilter,
|
|
39
|
+
),
|
|
40
|
+
})
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
function _createFacetedRowModel<
|
|
45
|
+
TFeatures extends TableFeatures,
|
|
46
|
+
TData extends RowData = any,
|
|
47
|
+
>(
|
|
48
|
+
table: Table_Internal<TFeatures, TData>,
|
|
49
|
+
columnId: string,
|
|
50
|
+
preRowModel: RowModel<TFeatures, TData>,
|
|
51
|
+
columnFilters?: ColumnFiltersState,
|
|
52
|
+
globalFilter?: string,
|
|
53
|
+
) {
|
|
54
|
+
if (!preRowModel.rows.length || (!columnFilters?.length && !globalFilter)) {
|
|
55
|
+
return preRowModel
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
const filterableIds = [
|
|
59
|
+
...(columnFilters?.map((d) => d.id).filter((d) => d !== columnId) ?? []),
|
|
60
|
+
globalFilter ? '__global__' : undefined,
|
|
61
|
+
].filter(Boolean) as Array<string>
|
|
62
|
+
|
|
63
|
+
const filterRowsImpl = (
|
|
64
|
+
row: Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>,
|
|
65
|
+
) => {
|
|
66
|
+
// Horizontally filter rows through each column
|
|
67
|
+
for (const colId of filterableIds) {
|
|
68
|
+
if (row.columnFilters?.[colId] === false) {
|
|
69
|
+
return false
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return true
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
return filterRows(preRowModel.rows, filterRowsImpl, table)
|
|
76
|
+
}
|