IconButton
Icon-only button with tooltip, badge, toggle and FAB support. 6 variants, 5 sizes.
Variants
6 emphasis levels — filled · outlined · tonal · ghost · standard · destructive. gradient is a boolean prop applied on top of a variant.
Sizes
xs · sm · md · lg · xl — all sizes keep a 44 × 44 px minimum touch target
Shape
circle (default) or square — square pairs well with FAB
Toggle
toggle enables a pressed / unpressed state with aria-pressed — click to switch
With badge
badge={true} shows a red dot · badge={n} shows a count (capped at 99+)
Loading
loading replaces the icon with a spinner and disables interaction
FAB (Floating Action Button)
fab adds an elevation shadow — pair with size='xl' and shape='square' for the classic Material FAB
Gradient
gradient is a boolean prop — applies a brand gradient on filled and destructive variants
Disabled
disabled reduces opacity and prevents all interaction
Props