Reference headless
accordion
# AccordionContext
Type Parameters
V
Members
collapsiblecollapsible: booleanWhen mode='single', whether the only-open panel can be collapsed.
expandedIdsexpandedIds: readonly string[]Item ids currently in the expanded set.
focusedIdfocusedId: string | nullItem id with keyboard focus, or null.
itemsitems: readonly AccordionItem<V>[]modemode: AccordionMode
# AccordionController
Type Parameters
V
Members
contextreadonly context: Readonly<AccordionContext<V>>expandedIdsreadonly expandedIds: readonly string[]focusedIdreadonly focusedId: string | nullidreadonly id: stringmachinereadonly machine: AccordionMachine<V>modereadonly mode: AccordionModerootreadonly root: Attachmentstatereadonly state: "idle"collapse()collapse(id): void###### Parameters
###### id
string###### Returns
voidexpand()expand(id): void###### Parameters
###### id
string###### Returns
voiditem()item(item): Attachmentpanel()panel(item): AttachmentpanelElementId()panelElementId(itemId): string###### Parameters
###### itemId
string###### Returns
stringsetCollapsible()setCollapsible(value): void###### Parameters
###### value
boolean###### Returns
voidsetItems()setItems(items): voidsetMode()setMode(mode): voidsetValue()setValue(value): void###### Parameters
###### value
V| readonlyV[] |null###### Returns
voidsubscribe()subscribe(listener): () => void###### Parameters
###### listener
(
snapshot) =>void###### Returns
() =>
voidtoggle()toggle(id): void###### Parameters
###### id
string###### Returns
voidtrigger()trigger(item): AttachmenttriggerElementId()triggerElementId(itemId): stringDOM ids for ARIA wiring.
###### Parameters
###### itemId
string###### Returns
string
# AccordionItem
Type Parameters
V
Members
disabled?readonly optional disabled?: boolean###### Overrides
CollectionItem.disabledidreadonly id: string###### Overrides
CollectionItem.idlabel?readonly optional label?: string###### Overrides
CollectionItem.labelvaluereadonly value: V
# CreateAccordionOptions
Type Parameters
V
Members
collapsible?optional collapsible?: booleanWhen mode='single' (default), allow closing the only-open. Default true.
###### Inherited from
CreateAccordionInput.collapsibledefaultValue?optional defaultValue?: V | readonly V[] | nullInitial value(s). For
single, V or null; formultiple, V[].###### Inherited from
CreateAccordionInput.defaultValueid?optional id?: stringitemsitems: readonly AccordionItem<V>[]###### Inherited from
CreateAccordionInput.itemsmode?optional mode?: AccordionMode###### Inherited from
CreateAccordionInput.modeonValueChange?optional onValueChange?: (expandedIds) => void###### Parameters
###### expandedIds
readonly
string[]###### Returns
void
# AccordionEvent
AccordionEvent<V> = { id: string; type: "TOGGLE"; } | { id: string; type: "EXPAND"; } | { id: string; type: "COLLAPSE"; } | { id: string; type: "FOCUS"; } | { type: "BLUR"; } | { direction: NavigateDirection; type: "NAVIGATE"; } | { items: ReadonlyArray<AccordionItem<V>>; type: "SET.ITEMS"; } | { type: "SET.VALUE"; value: ReadonlyArray<V> | V | null; } | { mode: AccordionMode; type: "SET.MODE"; } | { type: "SET.COLLAPSIBLE"; value: boolean; }Type Parameters
V
# AccordionMachine
AccordionMachine<V> = Machine<AccordionContext<V>, AccordionEvent<V>, AccordionState>Type Parameters
V
# AccordionMode
AccordionMode = "single" | "multiple"# AccordionState
AccordionState = "idle"# Attachment
Attachment = (node) => void | (() => void)Parameters
nodeHTMLElement
Returns
void | (() => void)# createAccordion ( )
createAccordion<V>(options): AccordionController<V>Type Parameters
V
Parameters
optionsCreateAccordionOptions<V>
Returns
AccordionController<V>