DataTableResetButton.tsx 1021 B

12345678910111213141516171819202122232425262728293031
  1. import { X } from 'lucide-react'
  2. import { Button, Tooltip, TooltipContent, TooltipTrigger } from 'ui'
  3. import { Kbd } from './primitives/Kbd'
  4. import { useDataTable } from './providers/DataTableProvider'
  5. import { SHORTCUT_IDS } from '@/state/shortcuts/registry'
  6. import { useShortcut } from '@/state/shortcuts/useShortcut'
  7. export function DataTableResetButton() {
  8. const { table } = useDataTable()
  9. useShortcut(SHORTCUT_IDS.DATA_TABLE_RESET_FILTERS, () => table.resetColumnFilters())
  10. return (
  11. <Tooltip>
  12. <TooltipTrigger asChild>
  13. <Button type="default" size="tiny" onClick={() => table.resetColumnFilters()} icon={<X />}>
  14. Reset
  15. </Button>
  16. </TooltipTrigger>
  17. <TooltipContent side="left">
  18. <p>
  19. Reset filters with{' '}
  20. <Kbd className="ml-1 text-muted-foreground group-hover:text-accent-foreground">
  21. <span className="mr-1">⌘</span>
  22. <span>Esc</span>
  23. </Kbd>
  24. </p>
  25. </TooltipContent>
  26. </Tooltip>
  27. )
  28. }