Reference headless
tabs
# CreateTabsOptions
Members
activation?optional activation?: TabsActivation###### Inherited from
CreateTabsInput.activationdefaultValue?optional defaultValue?: string | null###### Inherited from
CreateTabsInput.defaultValuedirection?optional direction?: TabsDirectiondisabled?optional disabled?: boolean###### Inherited from
CreateTabsInput.disabledid?optional id?: stringitemsitems: readonly TabItem[]###### Inherited from
CreateTabsInput.itemsonValueChange?optional onValueChange?: (value) => void###### Parameters
###### value
string|null###### Returns
voidorientation?optional orientation?: TabsOrientation
# TabItem
Members
disabled?readonly optional disabled?: boolean###### Overrides
CollectionItem.disabledidreadonly id: string###### Overrides
CollectionItem.idlabel?readonly optional label?: string###### Overrides
CollectionItem.labelvaluereadonly value: string
# TabsContext
Members
activationactivation: TabsActivationfocusedIdfocusedId: string | nullitemsitems: readonly TabItem[]valuevalue: string | null
# TabsController
Members
activationreadonly activation: TabsActivationcontextreadonly context: Readonly<TabsContext>disabledreadonly disabled: booleanfocusedIdreadonly focusedId: string | nullidreadonly id: stringitemsreadonly items: readonly TabItem[]listreadonly list: AttachmentAttach to the tablist container.
machinereadonly machine: TabsMachinestatereadonly state: TabsStatevaluereadonly value: string | nullpanel()panel(item): AttachmentpanelElementId()panelElementId(itemId): stringDOM id for a panel by its item id.
###### Parameters
###### itemId
string###### Returns
stringselect()select(id): void###### Parameters
###### id
string###### Returns
voidsetActivation()setActivation(activation): voidsetDirection()setDirection(direction): voidUpdate writing direction. RTL only affects horizontal orientation: ArrowLeft becomes
next, ArrowRight becomesprev.###### Parameters
###### direction
###### Returns
voidsetDisabled()setDisabled(disabled): void###### Parameters
###### disabled
boolean###### Returns
voidsetItems()setItems(items): voidsetOrientation()setOrientation(orientation): voidUpdate the visual orientation. The machine doesn't care; this only changes which arrow keys the controller listens for.
###### Parameters
###### orientation
###### Returns
voidsetValue()setValue(value): void###### Parameters
###### value
string|null###### Returns
voidsubscribe()subscribe(listener): () => void###### Parameters
###### listener
(
snapshot) =>void###### Returns
() =>
voidtab()tab(item): AttachmenttabElementId()tabElementId(itemId): stringDOM id for a tab button by its item id.
###### Parameters
###### itemId
string###### Returns
string
# Attachment
Attachment = (node) => void | (() => void)Parameters
nodeHTMLElement
Returns
void | (() => void)# TabsActivation
TabsActivation = "automatic" | "manual"# TabsDirection
TabsDirection = "ltr" | "rtl"# TabsEvent
TabsEvent = { id: string; type: "SELECT"; } | { id: string; type: "FOCUS"; } | { type: "BLUR"; } | { direction: NavigateDirection; type: "NAVIGATE"; } | { type: "ACTIVATE_FOCUSED"; } | { type: "SET.VALUE"; value: string | null; } | { items: ReadonlyArray<TabItem>; type: "SET.ITEMS"; } | { activation: TabsActivation; type: "SET.ACTIVATION"; } | { type: "DISABLE"; } | { type: "ENABLE"; }# TabsMachine
TabsMachine = Machine<TabsContext, TabsEvent, TabsState># TabsOrientation
TabsOrientation = "horizontal" | "vertical"# TabsState
TabsState = "idle" | "disabled"# createTabs ( )
createTabs(options): TabsControllerCreate a Tabs controller plus list / tab / panel attachment factories.
Parameters
optionsCreateTabsOptions
Returns
TabsController