(this page was created automatically. In case of formatting issues, please visit the official Wiki Page)

Overflow Menu

Overview

Example Overflow Menu

Specs

Tokens

Token Description
iconName Icon shown for the menu button
placement Position of the dropdown relative to the button
options List of menu items displayed in the dropdown
text Label for a menu item
showMenuLinkIcon Whether to show an icon with a menu item
iconPositionKey Where to place the item icon (left or right)
menuLinkLeftIconName Icon shown on the left of a menu item
menuLinkRightIconName Icon shown on the right of a menu item
paddingClass CSS classes that define padding
displayName Display name in the structure panel
events Configurable events for the component
ON_INIT (Events) Event fired when the component is initialized
ON_DESTROY (Events) Event fired when the component is removed
ON_OPTION_CLICK (Events) Event fired when a menu option is clicked
visibilityPolicySetId Controls visibility based on policy sets
displayConditions Conditions for when the menu is shown
id Unique identifier for the component
dataTestId Identifier for automated tests
enableAsHotspot Enables the component as a guided tour hotspot
guidedTourHotSpotTitle Title for guided tour highlight
guidedTourHotSpotDescription Description for guided tour highlight

Structure

(Configured in General Properties)

(Configured in Visibility)

(Configured in Visual Properties)

Variants of the layout

[
  {
    "text": "Edit Item",
    "type": "menu-link",
    "showMenuLinkIcon": true,
    "iconPositionKey": "menuLinkLeftIconName",
    "menuLinkLeftIconName": "edit-outline",
    "events": [
      {
        "type": "ON_OPTION_CLICK",
        "actions": [
          {
            "type": "NAVIGATE_TO_URL",
            "configuration": {
              "url": "/edit/{id}"
            }
          }
        ]
      }
    ]
  },
  {
    "text": "Delete Item",
    "type": "menu-link",
    "showMenuLinkIcon": true,
    "iconPositionKey": "menuLinkLeftIconName",
    "menuLinkLeftIconName": "delete-outline",
    "events": [
      {
        "type": "ON_OPTION_CLICK",
        "actions": [
          {
            "type": "SHOW_CONFIRMATION_DIALOG",
            "configuration": {
              "title": "Confirm Deletion",
              "message": "Are you sure you want to delete this item?"
            }
          }
        ]
      }
    ]
  }
]

Styling

(Configured in Visual Properties)

Icon selection

Placement menu

Actions & Variants

(Configured in Events)

Tests

(Configured in Testing Hooks)

Authorization

(Configured in Authorization)

Links

Guidelines

Usage

Sizing & Layout

States & Feedback

Interactions & Events

Data-Driven / Conditional Behavior

Visibility & Authorization

Dos & Don’ts

Do Don’t Article setting(s)
Use placement="bottom" when the trigger is near the top edge so the menu opens into available space. Use placement="top" in the same case, causing the menu to clip against the top edge. placement
Keep labels short and action-oriented by writing options[].text like “Edit item.” Use vague options[].text such as “Done,” which obscures intent. options[].text
Pair icons with labels by enabling options[].showMenuLinkIcon and setting options[].menuLinkLeftIconName. Rely on icons without options[].text, reducing clarity. options[].showMenuLinkIcon, options[].menuLinkLeftIconName
Confirm risky actions by routing ON_OPTION_CLICK through a confirmation step in options[].events. Execute destructive actions immediately on ON_OPTION_CLICK without confirmation. options[].events, ON_OPTION_CLICK
Keep the menu scannable by limiting the options array to a manageable size. Overload options with long lists that slow scanning and selection. options
Use paddingClass to ensure the trigger has a comfortable hit area next to other controls. Leave paddingClass unset so the trigger feels cramped or hard to tap. paddingClass
Place item icons consistently with options[].iconPositionKey="menuLinkLeftIconName" across all entries. Mix left and right icon positions arbitrarily, causing alignment jitter. options[].iconPositionKey

Accessibility