ActionBarDropdownMenuItem
ActionBarDropdownMenuItem
A dropdown menu item in the ActionBar area at the top of one of the list or detail views.
interface ActionBarDropdownMenuItem {
    id: string;
    label: string;
    locationId: ActionBarLocationId;
    hasDivider?: boolean;
    buttonState?: (context: ActionBarContext) => Observable<ActionBarButtonState | undefined>;
    onClick?: (event: MouseEvent, context: ActionBarContext) => void;
    routerLink?: RouterLinkDefinition;
    icon?: string;
    requiresPermission?: string | string[];
}
id
stringA unique identifier for the item.
label
stringThe label to display for the item. This can also be a translation token,
e.g. invoice-plugin.print-invoice.
locationId
The location in the UI where this menu item should be displayed.
hasDivider
booleanWhether to render a divider above this item.
buttonState
(context: ActionBarContext) => Observable<ActionBarButtonState | undefined>A function which returns an observable of the button state, allowing you to dynamically enable/disable or show/hide the button.
onClick
(event: MouseEvent, context: ActionBarContext) => voidrouterLink
icon
stringAn optional icon to display with the item. The icon should be a valid shape name from the Clarity Icons set.
requiresPermission
string | string[]Control the display of this item based on the user permissions. Note: if you attempt to pass a PermissionDefinition object, you will get a compilation error. Instead, pass the plain string version. For example, if the permission is defined as:
export const MyPermission = new PermissionDefinition('ProductReview');
then the generated permission strings will be:
- CreateProductReview
- ReadProductReview
- UpdateProductReview
- DeleteProductReview