Reference headless
radioGroup
# CreateRadioGroupOptions
Type Parameters
V
Members
defaultValue?optional defaultValue?: V | null###### Inherited from
CreateRadioGroupInput.defaultValuedisabled?optional disabled?: boolean###### Inherited from
CreateRadioGroupInput.disabledid?optional id?: stringitemsitems: readonly RadioItem<V>[]###### Inherited from
CreateRadioGroupInput.itemsonValueChange?optional onValueChange?: (value) => void###### Parameters
###### value
V|null###### Returns
void
# RadioGroupContext
Type Parameters
V
Members
focusedIdfocusedId: string | nullitemsitems: readonly RadioItem<V>[]valuevalue: V | null
# RadioGroupController
Type Parameters
V
Members
contextreadonly context: Readonly<RadioGroupContext<V>>disabledreadonly disabled: booleanfocusedIdreadonly focusedId: string | nullidreadonly id: stringitemsreadonly items: readonly RadioItem<V>[]machinereadonly machine: RadioGroupMachine<V>Underlying machine — exposed for advanced use, debugging, tests.
rootreadonly root: AttachmentAttach to the group container.
statereadonly state: RadioGroupStatevaluereadonly value: V | nullitem()item(item): AttachmentAttach to one item element. Returns an attachment closure that wires click + keyboard for that specific item.
###### Parameters
###### item
RadioItem<V>###### Returns
itemElementId()itemElementId(itemId): stringCompute the DOM id for a given item.
###### Parameters
###### itemId
string###### Returns
stringselect()select(id): voidUser-action selection.
###### Parameters
###### id
string###### Returns
voidsetDisabled()setDisabled(disabled): void###### Parameters
###### disabled
boolean###### Returns
voidsetItems()setItems(items): voidReplace the group's items (e.g., when filtered).
###### Parameters
###### items
readonly
RadioItem<V>[]###### Returns
voidsetValue()setValue(value): voidProgrammatic value update.
###### Parameters
###### value
V|null###### Returns
voidsubscribe()subscribe(listener): () => void###### Parameters
###### listener
(
snapshot) =>void###### Returns
() =>
void
# RadioItem
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
# Attachment
Attachment = (node) => void | (() => void)Parameters
nodeHTMLElement
Returns
void | (() => void)# RadioGroupEvent
RadioGroupEvent<V> = { id: string; type: "SELECT"; } | { id: string; type: "FOCUS"; } | { type: "BLUR"; } | { direction: NavigateDirection; type: "NAVIGATE"; } | { type: "SET.VALUE"; value: V | null; } | { items: ReadonlyArray<RadioItem<V>>; type: "SET.ITEMS"; } | { type: "DISABLE"; } | { type: "ENABLE"; }Type Parameters
V
# RadioGroupMachine
RadioGroupMachine<V> = Machine<RadioGroupContext<V>, RadioGroupEvent<V>, RadioGroupState>Type Parameters
V
# RadioGroupState
RadioGroupState = "idle" | "disabled"# createRadioGroup ( )
createRadioGroup<V>(options): RadioGroupController<V>Create a RadioGroup controller plus the group + item attachment factories.
Type Parameters
V
Parameters
optionsCreateRadioGroupOptions<V>
Returns
RadioGroupController<V>