children-
ReactNodeThe label. Text or richer content (a count, an icon) flips alike.
flipLabelchildren
ReactNodeThe label that rolls in. Defaults to a copy of children.
flipped-
booleanHolds the flip from state instead of hover: true shows flipLabel (Copied, Saved). Once passed, hover and focus no longer flip.
flipDirection"up"
"up" | "down"Which way the label rolls.
variant"primary"
"primary" | "secondary" | "outline" | "glass" | "inverse" | "ghost"Color scheme. glass is for busy grounds such as images; inverse is the opposite of the page (dark on light, light on dark).
size"md"
"sm" | "md" | "lg" | "xl" | "icon" | "icon-lg"Height: 40, 48, 64 or 64px with larger text; icon and icon-lg are 40 and 48px squares.
fullWidthfalse
booleanStretches to the container; the label stays centred and the badge pins to the trailing edge.
asChildfalse
booleanRenders its only child (a link, Next's Link) with the button's look instead of a button.
loadingfalse
booleanShows a spinner in the badge, or in place of the leading icon when there is no badge, and disables the button.
iconLeft-
ReactNodeLeading icon, static.
iconRight-
ReactNodeTrailing icon, set in a colored disc that rolls on hover.
iconMotion"slide"
"slide" | "rotate" | "none"How the disc's icon moves on hover: slides out as its copy enters, turns 90 degrees, or stays put.
disabledfalse
booleanDisables interaction.
className-
stringButton classes, merged last.