Dropdown menu — dir/ui
Present actions and checkable items in a button-triggered menu.
# Dropdown menu
Present actions and checkable items in a button-triggered menu.
## Install
```sh
npx shadcn@4.21.0 add lr-run/dir-ui/dropdown-menu#v0.1.2
```
[Registry item with source and dependencies](https://github.com/lr-run/dir-ui/blob/v0.1.2/registry.json)
Requires React 19, Tailwind CSS 4 and shadcn initialized with Base UI. Registry target placeholders resolve through components.json: @ui, @components, @hooks and @lib. Imports below use the conventional @/ prefix for illustration; the CLI rewrites them to your configured aliases. Shared components are installed once through registryDependencies. Theme CSS is imported by the UI modules. Existing files are never forcibly overwritten; review CLI conflicts before accepting changes. No Dir runtime is required.
## DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem
```tsx
import { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem } from '@/components/ui/dropdown-menu.tsx'
```
| Prop | Type | Default / required | Notes |
| --- | --- | --- | --- |
| DropdownMenu.open / defaultOpen | boolean | false | |
| DropdownMenu.onOpenChange | (open, details) => void | — | |
| DropdownMenuTrigger.render | ReactElement | — | Pass a Button element. |
| DropdownMenuContent.align | 'start' \| 'center' \| 'end' | 'start' | |
| DropdownMenuItem.onClick | MouseEventHandler | — | |
| DropdownMenuItem.disabled | boolean | false | |
| DropdownMenuCheckboxItem.checked / onCheckedChange | boolean / callback | — | |
Compose items, checkbox items, radio items, separators, and submenus. Use PopoverPanel for arbitrary forms and editors.