Table Docs
API Reference
Table API Reference
Column API Reference
Row API Reference
Cell API Reference
Header API Reference
Features API Reference
- stockFeatures
- coreFeatures
- coreCellsFeature
- coreColumnsFeature
- coreHeadersFeature
- coreRowModelsFeature
- coreRowsFeature
- coreTablesFeature
- cellSpanningFeature
- columnFilteringFeature
- columnFacetingFeature
- rowAggregationFeature
- columnGroupingFeature
- columnOrderingFeature
- columnPinningFeature
- columnResizingFeature
- columnSizingFeature
- columnVisibilityFeature
- globalFilteringFeature
- rowExpandingFeature
- rowPaginationFeature
- rowPinningFeature
- rowSelectionFeature
- rowSortingFeature
- filterFns
- sortFns
- aggregationFns
- ColumnFilter
- ColumnPinningState
- ColumnSort
- PaginationState
- RowPinningState
- columnResizingState
- FilterFn
- FilterFns
- FilterMeta
- SortFn
- SortFns
- AggregationFns
- AggregationContext
- AggregationMergeContext
- AggregationFnDef
- AggregationFnDescriptor
- AggregationValueContext
- AggregationValueResult
- constructAggregationFn
- ColumnFiltersState
- ColumnOrderState
- ColumnPinningPosition
- ColumnResizeDirection
- ColumnResizeMode
- ColumnSizingState
- ColumnVisibilityState
- ExpandedState
- GroupingState
- RowPinningPosition
- RowSelectionState
- SortDirection
- SortingState
- AggregationFnOption
- AggregationResult
- FilterFnOption
- SortFnOption
- BuiltInAggregationFn
- BuiltInFilterFn
- BuiltInSortFn
Static Functions API Reference
Legacy API Reference
- Legacy API Overview
- useLegacyTable
- legacyCreateColumnHelper
- getCoreRowModel
- getFilteredRowModel
- getSortedRowModel
- getGroupedRowModel
- getExpandedRowModel
- getPaginationRowModel
- getFacetedRowModel
- getFacetedMinMaxValues
- getFacetedUniqueValues
- LegacyRowModelOptions
- LegacyTable
- LegacyTableOptions
- LegacyReactTable
- LegacyColumnDef
AI/LLM: This documentation page is available in plain markdown format at/table/latest/docs/reference/index/functions/constructSortFn.md
constructSortFn
ts
function constructSortFn<TFeatures, TData>(def): CreatedSortFn<TFeatures, TData>;Defined in: features/row-sorting/sortFns.ts:39
Builds a SortFn from a value-level comparator plus an optional resolveDataValue normalizer.
The sort comparator receives both rows' data values, each already passed through resolveDataValue when one is defined. Keeping normalization in the resolver means a variant of an existing sorting function only has to swap the resolver, not re-implement the comparison.
The definition is attached to the returned function, so a variant can be created by spreading a built-in sorting function and overriding what differs:
ts
const stripDiacritics = (value: string) =>
value.normalize('NFD').replace(/\p{Diacritic}/gu, '')
const alphanumericIgnoreDiacritics = constructSortFn({
...sortFn_alphanumeric,
resolveDataValue: (value) =>
stripDiacritics(sortFn_alphanumeric.resolveDataValue!(value)),
})Type Parameters#
TFeatures#
TFeatures extends TableFeatures = any
TData#
TData extends RowData = any
Parameters#
def#
SortFnDef<TFeatures, TData>
Returns#
CreatedSortFn<TFeatures, TData>