Smart Overflow

Use Smart Overflow when a compact product action group needs to preserve its most important actions as available width decreases. Lower-priority actions move into an accessible three-dot menu instead of wrapping or requiring horizontal scrolling.

Preview

Reduce motion:Off
Tune:Off
Inspect

Installation

Basic usage

TypeScript
document-actions.tsx

Examples

Assign primary to actions that should remain visible longest. secondary actions move into the menu before primary actions, starting from the end of the child order. Use overflow for actions that should always live in the three-dot menu.

Use destructive for actions such as Archive or Delete. They retain their own visual treatment in the menu. Keep destructive actions in overflow unless they are genuinely the user's main next step.

Usage

API

PropertyTypeDefaultDescription
childrenReactNoderequiredPriority-aware action declarations. Only direct SmartOverflowAction children are rendered.
ariaLabelstring"Actions"Accessible label for the action group.
moreLabelstring"More actions"Accessible label for the three-dot trigger.
disabledbooleanfalseWhether every action is unavailable.
classNamestringundefinedAdditional CSS classes for the group container.
actionClassNamestringundefinedAdditional CSS classes applied to each visible action.
moreButtonClassNamestringundefinedAdditional CSS classes applied to the three-dot trigger.
menuClassNamestringundefinedAdditional CSS classes for the overflow menu.

Accessibility

The visible controls use button semantics. Hidden actions remain available through an accessible three-dot menu with Base UI menu keyboard navigation and focus management. If a focused action moves into overflow after a resize, focus returns to the three-dot trigger. Layout motion is disabled for people who prefer reduced motion.

Styling

The component uses the consumer's semantic tokens for surfaces, text, focus, and destructive menu actions. Use the class name props to adapt the action buttons, trigger, or menu surface without changing its responsive priority behavior.

Contact

Found a bug or need help using this component? Open an issue on GitHub.

License & Usage

Sona UI is available under the MIT license. You may use, modify, and distribute this component in personal and commercial projects.

Was this page helpful?

Your response helps us improve component docs.