import { Column } from '@tanstack/react-table'; import { ArrowDownIcon, ArrowUpIcon, CaretSortIcon, EyeNoneIcon } from '@radix-ui/react-icons'; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, } from './DropdownMenu'; import { useLocalize } from '~/hooks'; import { Button } from './Button'; import { cn } from '~/utils'; interface DataTableColumnHeaderProps extends React.HTMLAttributes { column: Column; title: string; } export function DataTableColumnHeader({ column, title, className = '', }: DataTableColumnHeaderProps) { const localize = useLocalize(); const getSortIcon = () => { const sortDirection = column.getIsSorted(); if (sortDirection === 'desc') { return ; } if (sortDirection === 'asc') { return ; } return ; }; if (!column.getCanSort()) { return
{title}
; } return (
column.toggleSorting(false)}> Asc column.toggleSorting(true)}> Desc column.toggleVisibility(false)}> Hide
); }