Back to Tuist

ButtonDropdown

noora/docs/components/buttondropdown.md

4.204.03.4 KB
Original Source
<!-- Generated by scripts/generate-web-components.js. Do not edit directly. -->

ButtonDropdown

Combines a primary button action with an attached menu.

html
<noora-button-dropdown label="Create">
  <noora-dropdown-item value="project">Project</noora-dropdown-item>
</noora-button-dropdown>

Attributes

AttributeType or allowed valuesDefaultDescription
labelstring""Sets the main action label.
sizemedium, large"large"Controls the dimensions.
disabledbooleanfalseDisables both controls.
openbooleanfalseControls whether the menu is open.
close-on-selectbooleantrueCloses the menu after a selection.
keep-openbooleanfalseKeeps the menu open after selection.
alignstart, end"start"Aligns the menu to the button.

Properties

PropertyType or allowed valuesDefaultDescription
itemsArray<Record<string, unknown>>[]Defines menu items programmatically when declarative noora-dropdown-item children are not used.

Events

EventTypeDescription
noora-actionCustomEvent<Record<string, never>>Emitted when the primary button is activated.
noora-open-changeCustomEvent<{ open: boolean }>Emitted when the menu opens or closes.
noora-selectCustomEvent<{ item: Record<string, unknown>; value: unknown }>Emitted when a menu item is selected.

Slots

SlotDescription
icon-leftAn icon before the main label.
icon-rightAn icon after the main label.
defaultDeclarative noora-dropdown-item children.

Styling parts

PartDescription
main-buttonThe main action.
triggerThe menu trigger.
contentThe menu content.

Selections emit a noora-select event.

Default

Attach related options to a primary action.

html
<noora-button-dropdown label="Button">
  <noora-dropdown-item value="1">Option 1</noora-dropdown-item>
  <noora-dropdown-item value="2">Option 2</noora-dropdown-item>
  <noora-dropdown-item value="3">Option 3</noora-dropdown-item>
</noora-button-dropdown>

Sizes

Button dropdowns are available in medium and large sizes.

html
<noora-button-dropdown label="Button" size="medium">
  <noora-dropdown-item value="1">Option 1</noora-dropdown-item>
  <noora-dropdown-item value="2">Option 2</noora-dropdown-item>
</noora-button-dropdown>
<noora-button-dropdown label="Button" size="large">
  <noora-dropdown-item value="1">Option 1</noora-dropdown-item>
  <noora-dropdown-item value="2">Option 2</noora-dropdown-item>
</noora-button-dropdown>

Icons

Place icons on either side of the main action label.

html
<noora-button-dropdown label="Button">
  <noora-icon slot="icon-left" name="chevron_left"></noora-icon>
  <noora-icon slot="icon-right" name="chevron_right"></noora-icon>
  <noora-dropdown-item value="1">Option 1</noora-dropdown-item>
  <noora-dropdown-item value="2">Option 2</noora-dropdown-item>
</noora-button-dropdown>

Disabled

The disabled state prevents both action and menu interaction.

html
<noora-button-dropdown disabled label="Button">
  <noora-dropdown-item value="1">Option 1</noora-dropdown-item>
  <noora-dropdown-item value="2">Option 2</noora-dropdown-item>
</noora-button-dropdown>