Data & Status

Collapsible File Tree

파일과 폴더를 선택하고 접을 수 있는 중첩 파일 트리입니다.

Preview

data structure

Collapsible File Tree

browse nested files

Installation

bash
Copied
1pnpm dlx shadcn@latest add https://ryong.dev/r/file-tree.json

Code

typescript
Copied
1import { Tree, type TreeViewElement } from "@/components/file-tree"23const elements: TreeViewElement[] = [4  {5    id: "1",6    name: "app",7    children: [8      { id: "2", name: "page.tsx" },9      { id: "3", name: "layout.tsx" },10    ],11  },12]1314export default function Example() {15  return <Tree elements={elements} initialExpandedItems={["1"]} />16}

Props

PropTypeDefaultDescription
elementsTreeViewElement[]undefinedTree data rendered recursively.
initialSelectedIdstringundefinedInitially selected file or folder id.
initialExpandedItemsstring[]undefinedFolder ids opened on first render.
indicatorbooleantrueWhether to show nesting guide lines.
openIconReact.ReactNodeFolderOpenIconIcon for expanded folders.
closeIconReact.ReactNodeFolderIconIcon for collapsed folders.
sortTreeSortMode"default"Folder/file sorting behavior.

Reference

Reference Collapsible File Tree