compote-ui
Version:
An opinionated UI component library for Svelte, built on top of [Ark UI](https://ark-ui.com) with additional components and features not available in the core Ark UI library.
25 lines (24 loc) • 1.32 kB
JavaScript
import { tableFeatures, metaHelper, rowSortingFeature, rowSelectionFeature, columnFilteringFeature, columnFacetingFeature, globalFilteringFeature, columnVisibilityFeature, columnPinningFeature, columnSizingFeature, columnResizingFeature, createSortedRowModel, createFilteredRowModel, createFacetedRowModel, createFacetedUniqueValues, createFacetedMinMaxValues, sortFns, filterFns } from '@tanstack/svelte-table';
// Fixed feature registry for the data table. Declared once at module scope so the
// reference is stable across instances (v9 requires a stable `features` object).
export const dataTableFeatures = tableFeatures({
rowSortingFeature,
rowSelectionFeature,
columnFilteringFeature,
columnFacetingFeature,
globalFilteringFeature,
columnVisibilityFeature,
columnPinningFeature,
columnSizingFeature,
columnResizingFeature,
sortedRowModel: createSortedRowModel(),
filteredRowModel: createFilteredRowModel(),
facetedRowModel: createFacetedRowModel(),
facetedUniqueValues: createFacetedUniqueValues(),
facetedMinMaxValues: createFacetedMinMaxValues(),
sortFns,
filterFns,
// Type-only slot: types `columnDef.meta` as DataTableColumnMeta wherever
// DataTableFeatures flows. Stripped at runtime by constructTable.
columnMeta: metaHelper()
});