noora/docs/components/buttongroup.md
Groups related controls into a compact segmented surface.
<noora-button-group>
<noora-button-group-item value="day">Day</noora-button-group-item>
<noora-button-group-item value="week">Week</noora-button-group-item>
</noora-button-group>
| Attribute | Type or allowed values | Default | Description |
|---|---|---|---|
size | small, medium, large | "medium" | Controls child dimensions. |
| Property | Type or allowed values | Default | Description |
|---|---|---|---|
items | Array<Record<string, unknown>> | [] | Defines group items programmatically when declarative noora-button-group-item children are not used. |
| Event | Type | Description |
|---|---|---|
noora-select | CustomEvent<{ index: number; item: Record<string, unknown>; value: unknown }> | Emitted when an enabled group item is selected. |
| Slot | Description |
|---|---|
default | Declarative noora-button-group-item children. |
| Part | Description |
|---|---|
group | The group container. |
Use noora-button-group-item children for declarative groups.
The items property remains available for data-driven rendering.
Button groups range from small to large.
<noora-button-group size="small">
<noora-button-group-item>First</noora-button-group-item>
<noora-button-group-item>Second</noora-button-group-item>
<noora-button-group-item>Third</noora-button-group-item>
</noora-button-group>
<noora-button-group size="medium">
<noora-button-group-item>First</noora-button-group-item>
<noora-button-group-item>Second</noora-button-group-item>
<noora-button-group-item>Third</noora-button-group-item>
</noora-button-group>
<noora-button-group size="large">
<noora-button-group-item>First</noora-button-group-item>
<noora-button-group-item>Second</noora-button-group-item>
<noora-button-group-item>Third</noora-button-group-item>
</noora-button-group>
Compare labeled controls with icons, icon-only controls, and a mixture of both.
<noora-button-group size="medium">
<noora-button-group-item icon-left="chevron_left">Previous</noora-button-group-item>
<noora-button-group-item icon-left="chevron_left" icon-right="chevron_right">Both</noora-button-group-item>
<noora-button-group-item icon-right="chevron_right">Next</noora-button-group-item>
</noora-button-group>
<noora-button-group size="medium">
<noora-button-group-item icon="chevron_left" icon-only aria-label="Previous"></noora-button-group-item>
<noora-button-group-item icon="chevron_right" icon-only aria-label="Next"></noora-button-group-item>
</noora-button-group>
<noora-button-group size="medium">
<noora-button-group-item icon="chevron_left" icon-only aria-label="Previous"></noora-button-group-item>
<noora-button-group-item>Page 1</noora-button-group-item>
<noora-button-group-item>Page 2</noora-button-group-item>
<noora-button-group-item icon="chevron_right" icon-only aria-label="Next"></noora-button-group-item>
</noora-button-group>
Compare a partially disabled group with a fully disabled group.
<noora-button-group size="medium">
<noora-button-group-item>Available</noora-button-group-item>
<noora-button-group-item disabled>Disabled</noora-button-group-item>
<noora-button-group-item>Available</noora-button-group-item>
</noora-button-group>
<noora-button-group size="medium">
<noora-button-group-item disabled>First</noora-button-group-item>
<noora-button-group-item disabled>Second</noora-button-group-item>
<noora-button-group-item disabled>Third</noora-button-group-item>
</noora-button-group>
Use groups for pagination controls and view switching.
<noora-button-group size="medium">
<noora-button-group-item icon="chevron_left" icon-only aria-label="Previous"></noora-button-group-item>
<noora-button-group-item selected>1</noora-button-group-item>
<noora-button-group-item>2</noora-button-group-item>
<noora-button-group-item>3</noora-button-group-item>
<noora-button-group-item icon="chevron_right" icon-only aria-label="Next"></noora-button-group-item>
</noora-button-group>
<noora-button-group size="small">
<noora-button-group-item selected>List</noora-button-group-item>
<noora-button-group-item>Grid</noora-button-group-item>
<noora-button-group-item>Card</noora-button-group-item>
</noora-button-group>