Components

Tree Table

Tree Table component with multiple variants and sizes.

Client Only

Installation

pnpm dlx @docyrus/cli add @docyrus/ui-tree-table
Required Packages(2 packages)
pnpm add @dnd-kit/core @dnd-kit/utilities
UI Primitives(4 components)
npx shadcn@latest add button dropdown-menu input table

Usage

import {
  TreeTable
} from "@docyrus/ui/components/tree-table";

<TreeTable
  ref={...}
  data={TreeViewItem[]}
  columns={TreeTableColumn[]}
  nameColumnHeader={...}
  getIcon={() => {}}
  showExpandAll
  searchPlaceholder="..."
  emptyText="..."
  draggable
  canDropInside={() => {}}
  onDataChange={(nextData: TreeViewItem, details: TreeViewMoveDetails) = void[]}
  maxHeight="..."
/>

API Reference

PropTypeDefault
refRef<HTMLDivElement>—
dataTreeViewItem[]—
columnsTreeTableColumn[]—
nameColumnHeaderReactNode—
getIcon(item: TreeViewItem, depth: number) => ReactNode—
showExpandAllboolean—
searchPlaceholderstring—
emptyTextstring—
draggableboolean—
canDropInside(item: TreeViewItem) => boolean—
onDataChange(nextData: TreeViewItem[], details: TreeViewMoveDetails) => void—
maxHeightstring—
classNamestring—

On this page