API and Development
SplitButton renders a Button for the main label (children) and a Menu triggered by a chevron Interactable. Pass sibling menu content with the menuContent prop using SplitButtonItem, SplitButtonSeparator, SplitButtonLabel, and grouped variants (SplitButtonCheckbox, SplitButtonRadio, SplitButtonSwitch) as needed. Optional menuOpen / onMenuOpenChange control the menu; menuSide and menuAlign position the popover.
Name | Type | Default | Description |
|---|---|---|---|
|
| — | Additional CSS class name(s) applied to the element. |
|
|
| When true, disables interaction and applies a disabled visual state. |
|
| — | Accessible title for |
|
| — | SVG icon displayed before the button label. Overridden by |
|
|
| Alignment of the dropdown menu relative to the split button. |
|
| — | — |
|
| — | Controlled open state of the dropdown menu. |
|
|
| Side of the trigger where the dropdown menu opens. |
|
| — | Callback fired when the dropdown menu open state changes. |
|
| — | Ref forwarded to the primary action button element. |
|
|
| Button size variant. Takes precedence over |
|
| — | Button state (Loading/Success/Error). When set, overrides the leadIcon. |
|
|
| Enum for button appearance variants, don't use the string value. always use the enum |
Interactive examples and edge cases for this component are in Storybook.