@neynar/ui
Version:
React UI component library built on shadcn/ui and Tailwind CSS
74 lines (65 loc) • 2.28 kB
Markdown
# DropdownMenuSub
**Type**: component
Container for creating nested submenus Wraps a submenu trigger and content to create hierarchical menu structures. Enables multi-level navigation within dropdown menus. Use with DropdownMenuSubTrigger and DropdownMenuSubContent to build complex menu hierarchies with proper focus management and keyboard navigation.
## JSX Usage
```jsx
import { DropdownMenuSub } from '@neynar/ui';
<DropdownMenuSub
...props={value}
/>
```
## Component Props
### ...props
- **Type**: `unknown`
- **Required**: Yes
- **Description**: No description available
## Examples
### Example 1
```tsx
// Basic submenu structure
<DropdownMenuSub>
<DropdownMenuSubTrigger>
<Share className="mr-2 h-4 w-4" />
Share Options
</DropdownMenuSubTrigger>
<DropdownMenuSubContent>
<DropdownMenuItem>Email Link</DropdownMenuItem>
<DropdownMenuItem>Copy to Clipboard</DropdownMenuItem>
<DropdownMenuItem>Generate QR Code</DropdownMenuItem>
</DropdownMenuSubContent>
</DropdownMenuSub>
```
### Example 2
```tsx
// Controlled submenu with state management
const [isShareOpen, setIsShareOpen] = useState(false);
<DropdownMenuSub open={isShareOpen} onOpenChange={setIsShareOpen}>
<DropdownMenuSubTrigger>Share</DropdownMenuSubTrigger>
<DropdownMenuSubContent>
<DropdownMenuItem onSelect={() => handleShare('email')}>Email</DropdownMenuItem>
<DropdownMenuItem onSelect={() => handleShare('link')}>Copy Link</DropdownMenuItem>
</DropdownMenuSubContent>
</DropdownMenuSub>
```
### Example 3
```tsx
// Complex nested menu structure
<DropdownMenuContent>
<DropdownMenuItem>Edit</DropdownMenuItem>
<DropdownMenuSeparator />
<DropdownMenuSub>
<DropdownMenuSubTrigger>Export</DropdownMenuSubTrigger>
<DropdownMenuSubContent>
<DropdownMenuItem>Export as PDF</DropdownMenuItem>
<DropdownMenuItem>Export as PNG</DropdownMenuItem>
<DropdownMenuSub>
<DropdownMenuSubTrigger>Advanced Export</DropdownMenuSubTrigger>
<DropdownMenuSubContent>
<DropdownMenuItem>Custom Resolution</DropdownMenuItem>
<DropdownMenuItem>Batch Export</DropdownMenuItem>
</DropdownMenuSubContent>
</DropdownMenuSub>
</DropdownMenuSubContent>
</DropdownMenuSub>
</DropdownMenuContent>
```