The Menu component displays a vertical list of actions with support for groups, separators, and destructive items.
Basic Usage
import { Menu, MenuItem, MenuSeparator } from "@paramanu/navigation-react"
export default function App() {
<MenuItem>Copy</MenuItem>
<MenuItem>Paste</MenuItem>
<MenuItem destructive>Delete</MenuItem>
<ul class="pm-menu pm-menu--md" role="menu">
<li class="pm-menu__item" role="menuitem">Cut</li>
<li class="pm-menu__item" role="menuitem">Copy</li>
<li class="pm-menu__item" role="menuitem">Paste</li>
<li class="pm-menu__separator" role="separator"></li>
<li class="pm-menu__item pm-menu__item--destructive" role="menuitem">Delete</li>
Accessibility
| Key | Action |
|---|
ArrowDown | Move to next item |
ArrowUp | Move to previous item |
Enter | Activate focused item |
Escape | Close menu |
- Uses
role="menu" on the container and role="menuitem" on items.
- Disabled items use
aria-disabled="true".
| Prop | Type | Default | Description |
|---|
size | "sm" | "md" | "lg" | "md" | Size preset |
| Prop | Type | Default | Description |
|---|
active | boolean | false | Active state |
disabled | boolean | false | Disabled state |
destructive | boolean | false | Destructive action style |
CSS Classes
| Class | Description |
|---|
pm-menu | Root element |
pm-menu__item | Menu item |
pm-menu__item--destructive | Destructive item |
pm-menu__separator | Visual separator |
pm-menu__group | Group container |
pm-menu__group-label | Group label |