DataTable() — ui Function Reference
Architecture documentation for the DataTable() function in data-table.tsx from the ui codebase.
Entity Profile
Dependency Diagram
graph TD 4fb64577_f10e_f22d_aa0e_954136846bbe["DataTable()"] c4efa45e_6cce_3dec_3c41_b4fbc9755b38["data-table.tsx"] 4fb64577_f10e_f22d_aa0e_954136846bbe -->|defined in| c4efa45e_6cce_3dec_3c41_b4fbc9755b38 style 4fb64577_f10e_f22d_aa0e_954136846bbe fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
deprecated/www/registry/new-york/blocks/dashboard-01/components/data-table.tsx lines 342–642
export function DataTable({
data: initialData,
}: {
data: z.infer<typeof schema>[]
}) {
const [data, setData] = React.useState(() => initialData)
const [rowSelection, setRowSelection] = React.useState({})
const [columnVisibility, setColumnVisibility] =
React.useState<VisibilityState>({})
const [columnFilters, setColumnFilters] = React.useState<ColumnFiltersState>(
[]
)
const [sorting, setSorting] = React.useState<SortingState>([])
const [pagination, setPagination] = React.useState({
pageIndex: 0,
pageSize: 10,
})
const sortableId = React.useId()
const sensors = useSensors(
useSensor(MouseSensor, {}),
useSensor(TouchSensor, {}),
useSensor(KeyboardSensor, {})
)
const dataIds = React.useMemo<UniqueIdentifier[]>(
() => data?.map(({ id }) => id) || [],
[data]
)
const table = useReactTable({
data,
columns,
state: {
sorting,
columnVisibility,
rowSelection,
columnFilters,
pagination,
},
getRowId: (row) => row.id.toString(),
enableRowSelection: true,
onRowSelectionChange: setRowSelection,
onSortingChange: setSorting,
onColumnFiltersChange: setColumnFilters,
onColumnVisibilityChange: setColumnVisibility,
onPaginationChange: setPagination,
getCoreRowModel: getCoreRowModel(),
getFilteredRowModel: getFilteredRowModel(),
getPaginationRowModel: getPaginationRowModel(),
getSortedRowModel: getSortedRowModel(),
getFacetedRowModel: getFacetedRowModel(),
getFacetedUniqueValues: getFacetedUniqueValues(),
})
function handleDragEnd(event: DragEndEvent) {
const { active, over } = event
if (active && over && active.id !== over.id) {
setData((data) => {
const oldIndex = dataIds.indexOf(active.id)
const newIndex = dataIds.indexOf(over.id)
return arrayMove(data, oldIndex, newIndex)
})
}
}
return (
<Tabs
defaultValue="outline"
className="flex w-full flex-col justify-start gap-6"
>
<div className="flex items-center justify-between px-4 lg:px-6">
<Label htmlFor="view-selector" className="sr-only">
View
</Label>
<Select defaultValue="outline">
<SelectTrigger
className="@4xl/main:hidden flex w-fit"
id="view-selector"
>
<SelectValue placeholder="Select a view" />
</SelectTrigger>
Domain
Subdomains
Source
Frequently Asked Questions
What does DataTable() do?
DataTable() is a function in the ui codebase, defined in deprecated/www/registry/new-york/blocks/dashboard-01/components/data-table.tsx.
Where is DataTable() defined?
DataTable() is defined in deprecated/www/registry/new-york/blocks/dashboard-01/components/data-table.tsx at line 342.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free