import { flexRender, type Header } from "@tanstack/react-table"; import clsx from "clsx"; import { getComponent, registerComponent } from "../../../registries/components"; import type { DefaultArrowSort } from "./DefaultArrowSort"; import type { DefaultFilter } from "./DefaultFilter"; export interface DefaultCellHeaderProps { header: Header; i18n?: (f: string) => string; } export function DefaultCellHeader(props: DefaultCellHeaderProps) { const { header, i18n } = props; const ArrowSort = getComponent("ArrowSort"); const Filter = getComponent("Filter"); const canSort = header.column.getCanSort(); const canFilter = header.column.getCanFilter(); return (
{flexRender(header.column.columnDef.header, header.getContext())}
{canFilter && }
); } registerComponent("CellHeader", DefaultCellHeader);