Components / Library Version 5.23.0
Action Menu
This component provides a dropdown menu of action items. When closed, it displays a text-only button, icon-only button, or a selector box. Selecting a menuitem completes the associated action and closes the menu. It should have at least one wm-menuitem component as a child.
After an action is executed make sure to properly handle focus for keyboard users.
** Required in certain cases
Properties of the parent element wm-action-menu
action-menu-type
icon | text | selector | selector-primary
Indicates whether the anchoring button should be an icon, text, or style of selector box. Defaults to
icon.
Properties for each Action Menu type:
button-text **
string
Indicates the text to display for the
text or selector action menu.
Required when button-type is text or
selector.
tooltip **
string
Indicates the text to display in the tooltip for the
icon action menu.
Required when button-type is icon. It should indicate the
name or purpose of the menu.
dark-mode
booleanSet dark mode for selector and selector-primary.
disabled
boolean
The
selector menu can be disabled as a whole (rather than just individual menuitems).
label-for-identical-buttons
string
Use only in this specific case:
If a page has several
If a page has several
icon action menus with an identical tooltips, the aria-label of
the button needs to include more descriptive information than the tooltip displayed. In that case, set this prop
to the more descriptive name, and leave the tooltip prop unchanged.
tooltip-position
top | bottom | left | right | top-left | top-right | bottom-left | bottom-right
Sets the position of the tooltip. Defaults to
left. If there is not enough space to display the
tooltip at the indicated position, the component will automatically reposition it.
Properties of the children elements wm-menuitem
description
string
Provides descriptive text for the menuitem. Description text has a character limit of 100 characters, and
disallows use of the
icon property.
icon
string
Sets the icon displayed.
Required if
button-type is set to icononly. Accepts the
following formats to reference different icon sources.
- The name of a commonly-used icon listed on our Icons guidelines. Value must begin with ”#”. For example,
#add-person - A local file path pointing to an svg symbol. For example:
"/icons/icons.svg#pencil". Learn more on adding SVGs in our Component Usage section. - A Material Design Icon character code. For example:
"f3eb". See the complete list of character codes on the Material Design Icon CDN (opens a new window). (Deprecated)
Usage in HTML
Edit the code below to see changes reflected in the example above.
Usage in Elm
Code generated from HTML.
wmActionMenuLoaded
Emitted when the menu has finished loading.
General
The "tooltip" property required for icon action menus ensures that the name or purpose of the menu is apparent on hover and announced by screenreaders.
Keyboard Support
Menu Button
| Key | Function |
|---|---|
| Down Arrow Space Enter | Opens menu and moves focus to first menuitem. |
| Down Arrow Space Enter | Opens menu and moves focus to last menuitem. |
Menu
| Key | Function |
|---|---|
| Enter |
|
| Escape |
|
| Up Arrow |
|
| Down Arrow |
|
| Home | Moves focus to the first menuitem. |
| End | Moves focus to the last menuitem. |
| A-Z a-z |
|
- When a menuitem is clicked, an attribute is temporarily added to the body. The attribute is used to reapply focus when a new menu is loaded with updated menuitems.
- Depending on context, screen readers may not announce the expanded state. This is normal behavior and does not constitutes an accessibility issue.