A styled dropdown menu component built on Radix UI primitives, providing accessible, animated dropdown menus with support for nested submenus, checkbox/radio items, and portal-aware rendering that inherits the correct stacking context (e.g. inside drawers). ## Key Components | Export | Description | |---|---| | `DropdownMenu` | Root component wrapping the entire menu | | `DropdownMenuTrigger` | Element that toggles the menu open/closed | | `DropdownMenuContent` | Menu panel, portalled into the active container via `usePortalContainer` | | `DropdownMenuItem` | Standard clickable menu item with optional `inset` indent | | `DropdownMenuCheckboxItem` | Item with a checkmark indicator and controlled `checked` state | | `DropdownMenuRadioItem` | Item within a radio group, shows a filled circle when selected | | `DropdownMenuRadioGroup` | Groups `DropdownMenuRadioItem` components for single-selection | | `DropdownMenuSub` | Container for a nested submenu | | `DropdownMenuSubTrigger` | Item that opens a nested submenu, with a `ChevronRight` icon | | `DropdownMenuSubContent` | Panel for the nested submenu | | `DropdownMenuLabel` | Non-interactive section header with optional `inset` | | `DropdownMenuSeparator` | Horizontal divider between menu sections | | `DropdownMenuShortcut` | Right-aligned keyboard shortcut hint text | | `DropdownMenuGroup` | Logical grouping of related items | | `DropdownMenuPortal` | Direct access to Radix's portal primitive | ## Usage Example ```typescript import { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, } from "./dropdown-menu" export function ActionsMenu() { return ( Open Profile ⌘P Show Notifications More Options Settings ) } ``` > **Portal context:** `DropdownMenuContent` uses `usePortalContainer` to render into the nearest active container (e.g. a drawer), preventing z-index stacking issues. It falls back to `document.body` when no container is provided.