mirror of
https://github.com/supabase/supabase.git
synced 2026-05-08 18:00:20 -04:00
cca4e52dd0
## What kind of change does this PR introduce? Component update. ## What is the current behaviour? TanStack tables in the repo are split between the shared `TableHeadSort` primitive and the older Studio-local `DataTableColumnHeader` helper, which makes the sorting UI and integration path inconsistent. If you were to just use `DataTableColumnHeader` in `ui-patterns/Table`, you’d get a very different visual result to the `TableHeadSort` UI you see in most other tables. ## What is the new behaviour? Adds a shared `TanStackTableHeadSort` adapter in `ui-patterns/Table`, backed by the existing `TableHeadSort` primitive, and switches the webhook table plus the design-system TanStack demo to that canonical path. `DataTableColumnHeader` stays as a deprecated wrapper for now, Studio gets a lint guard to block new imports of it, and the table docs now point TanStack tables at the shared adapter explicitly. ## To test Check out column sorting on the Platform Webhook endpoint deliveries table.
24 lines
586 B
TypeScript
24 lines
586 B
TypeScript
import { type Column } from '@tanstack/react-table'
|
|
import { TanStackTableHeadSort } from 'ui-patterns/Table'
|
|
|
|
interface DataTableColumnHeaderProps<TData, TValue> {
|
|
column: Column<TData, TValue>
|
|
title: string
|
|
className?: string
|
|
}
|
|
|
|
/**
|
|
* @deprecated Use `TanStackTableHeadSort` from `ui-patterns/Table` instead.
|
|
*/
|
|
export const DataTableColumnHeader = <TData, TValue>({
|
|
column,
|
|
title,
|
|
className,
|
|
}: DataTableColumnHeaderProps<TData, TValue>) => {
|
|
return (
|
|
<TanStackTableHeadSort column={column} className={className}>
|
|
{title}
|
|
</TanStackTableHeadSort>
|
|
)
|
|
}
|