UnreviewedUnreviewedtitleSummary (header) content. A string is rendered with the level
type scale; pass a node (e.g. a <Title>) for full control or real
heading semantics in the document outline.
Optional UnreviewedlevelHeading type scale applied to a string title (mirrors <Title>'s
levels). Visual only — for outline semantics, pass a <Title> as
the title.
Optional UnreviewedtoneSemantic tone, or any literal CSS color ('#ff1493', 'rebeccapurple')
for a one-off custom tone. Named tones re-point the text and (on filled
priorities) the surface to the matching palette; a custom color keeps
its hue while lightness/chroma are pinned. 'neutral' (the default) is
the same as omitting it.
Optional UnreviewedprioritySurface emphasis. secondary (the default) is a subtle fill;
primary is a more pronounced card; tertiary is transparent (the
bare disclosure).
Optional UnreviewedoutdentAlign the title and body with surrounding content on a tertiary expander. With the default start indicator, the mark hangs in the gutter; an end indicator stays inside its edge.
Optional UnreviewedactionsHeader actions rendered outside the toggle trigger. With an end indicator, actions sit between the title and indicator.
Optional UnreviewedindicatorBuilt-in disclosure mark, a decorative node, or separate closed/open
visuals. Other primitive values leave the indicator empty. Custom nodes
are passive; use actions for controls.
Optional UnreviewedindicatorPlace the disclosure mark before the title or after the actions.
Optional UnrevieweddisabledDisables the header: not clickable or focusable, hover affordance
off, text dimmed. The open state freezes as-is — disabling an open
expander keeps it open. actions stay live; disable them
separately if needed.
Optional UnreviewedroundRound corners sized to half the folded (header) height: a pill when folded,
and — when expanded — the same corner radius rather than a bigger stadium.
The element measures the header, so it tracks custom header content. Pass a
number (px) or CSS length string for a fixed radius that overrides the
measurement (and skips it) in both states.
Optional UnreviewedopenControlled open state. When provided, the consumer owns open/close. Selecting
the summary requests a change through onStateChange; omit open for
uncontrolled use.
Optional UnrevieweddefaultInitial open state for the uncontrolled case.
Optional UnreviewedonFired before the open state changes. event is the cancelable
statechange — call event.preventDefault() to veto an uncontrolled
toggle (e.g. confirm before closing). detail.next is the requested
open state, detail.prev the current one (booleans). In controlled
mode, apply detail.next to open to accept, or do nothing to reject.
Optional UnreviewedclassCSS class on the component's root element (merged with the component's own
classes). Use it directly for layout and positioning — grid/flex placement,
margins, alignment — rather than wrapping the component in a <div>/<span>.
Optional UnreviewedstyleInline styles on the component's root element. Set layout/positioning here
(or via className) directly on the component instead of adding a wrapper.
Optional UnreviewedchildrenChild elements. When provided, replaces the component's default label/content.
Optional UnreviewedidHTML id attribute.
Optional UnreviewedslotAssigns the element to a named <slot> of a parent web component (e.g.
slot="header" inside a <Card>, slot="footer" inside a <Dialog>).
Optional UnreviewedtabTab order. Set to -1 to skip the element when tabbing.
Optional UnreviewedkeyReact/Preact reconciliation key when rendered inside a list. Consumed by the JSX runtime (not forwarded as a DOM attribute).
Public props for the
<Expander>disclosure.titleis the always- visible summary;childrenis the collapsible body.