Home / File/ data-table-view-options.tsx — ui Source File

data-table-view-options.tsx — ui Source File

Architecture documentation for data-table-view-options.tsx, a tsx file in the ui codebase. 4 imports, 0 dependents.

Entity Profile

Dependency Diagram

graph LR
  d5cc7c10_440d_d182_bb4b_c8ba26f4793c["data-table-view-options.tsx"]
  eff11612_0b61_f7f9_e13e_9117a7062bb3["react-table"]
  d5cc7c10_440d_d182_bb4b_c8ba26f4793c --> eff11612_0b61_f7f9_e13e_9117a7062bb3
  d39cd1e4_1b2d_9aa2_1d29_fd0b4bfb61c3["lucide-react"]
  d5cc7c10_440d_d182_bb4b_c8ba26f4793c --> d39cd1e4_1b2d_9aa2_1d29_fd0b4bfb61c3
  57e86e45_ac6e_7278_be08_9092724e8401["button"]
  d5cc7c10_440d_d182_bb4b_c8ba26f4793c --> 57e86e45_ac6e_7278_be08_9092724e8401
  d1cb37f2_0d1d_01bc_0d60_a15219afac51["dropdown-menu"]
  d5cc7c10_440d_d182_bb4b_c8ba26f4793c --> d1cb37f2_0d1d_01bc_0d60_a15219afac51
  style d5cc7c10_440d_d182_bb4b_c8ba26f4793c fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

"use client"

import { type Table } from "@tanstack/react-table"
import { Settings2 } from "lucide-react"

import { Button } from "@/registry/new-york-v4/ui/button"
import {
  DropdownMenu,
  DropdownMenuCheckboxItem,
  DropdownMenuContent,
  DropdownMenuLabel,
  DropdownMenuSeparator,
  DropdownMenuTrigger,
} from "@/registry/new-york-v4/ui/dropdown-menu"

export function DataTableViewOptions<TData>({
  table,
}: {
  table: Table<TData>
}) {
  return (
    <DropdownMenu>
      <DropdownMenuTrigger asChild>
        <Button
          variant="outline"
          size="sm"
          className="ml-auto hidden h-8 lg:flex"
        >
          <Settings2 />
          View
        </Button>
      </DropdownMenuTrigger>
      <DropdownMenuContent align="end" className="w-[150px]">
        <DropdownMenuLabel>Toggle columns</DropdownMenuLabel>
        <DropdownMenuSeparator />
        {table
          .getAllColumns()
          .filter(
            (column) =>
              typeof column.accessorFn !== "undefined" && column.getCanHide()
          )
          .map((column) => {
            return (
              <DropdownMenuCheckboxItem
                key={column.id}
                className="capitalize"
                checked={column.getIsVisible()}
                onCheckedChange={(value) => column.toggleVisibility(!!value)}
              >
                {column.id}
              </DropdownMenuCheckboxItem>
            )
          })}
      </DropdownMenuContent>
    </DropdownMenu>
  )
}

Subdomains

Dependencies

  • button
  • dropdown-menu
  • lucide-react
  • react-table

Frequently Asked Questions

What does data-table-view-options.tsx do?
data-table-view-options.tsx is a source file in the ui codebase, written in tsx. It belongs to the ApplicationExhibition domain, TaskManagement subdomain.
What functions are defined in data-table-view-options.tsx?
data-table-view-options.tsx defines 1 function(s): DataTableViewOptions.
What does data-table-view-options.tsx depend on?
data-table-view-options.tsx imports 4 module(s): button, dropdown-menu, lucide-react, react-table.
Where is data-table-view-options.tsx in the architecture?
data-table-view-options.tsx is located at apps/v4/app/(app)/examples/tasks/components/data-table-view-options.tsx (domain: ApplicationExhibition, subdomain: TaskManagement, directory: apps/v4/app/(app)/examples/tasks/components).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free