navigationtabs
Tabs
Tabbed navigation component with configurable orientation and variant styles.
Import#
Slot Structure#
Tab list with triggers and associated content panels.
Examples#
Variants#
Pill and link visual variants for the tab list.
Sizes#
Trigger size scale from xs to xl.
Orientations#
Horizontal and vertical orientation with the same items contract.
Controlled + Disabled Items#
Controlled value with disabled tab options and external navigation controls.
API Reference#
Attributes#
Slot
root1 attributeTabs container that owns tab selection and panel rendering.
Data Attributes
| Data Attribute | Description |
|---|---|
| data-orientation | Stores the rendered orientation. |
Props#
| Prop | Type | Default | Description |
|---|---|---|---|
| activationMode | "manual" | "automatic" | undefined | automatic | Whether keyboard navigation activates the tab immediately or waits for confirmation. |
| class | ClassValue | — | Class applied to the component root or trigger element. |
| classes | TabsT.Classes | undefined | — | — |
| defaultValue | string | undefined | — | Default active tab value for uncontrolled usage. |
| disabled | boolean | undefined | false | Whether the tab list is disabled. |
| id | string | undefined | — | Unique identifier for the tabs root element. |
| items | TabsT.Item[] | undefined | — | Array of tabs to display. |
| keyboardLoop | boolean | undefined | true | Whether arrow-key navigation wraps from the ends. |
| onChange | ((value: string) => void) | undefined | — | Callback when the active tab changes. |
| orientation | "horizontal" | "vertical" | undefined | horizontal | The orientation of the tab list. |
| ref | JSX.HTMLElementTags["div"] extends { ref?: infer Ref; } ? Ref : never | undefined | — | — |
| size | "xs" | "sm" | "md" | "lg" | "xl" | undefined | — | — |
| style | JSX.CSSProperties | undefined | — | — |
| styles | TabsT.Styles | undefined | — | — |
| value | string | undefined | — | Controlled active tab value. |
| variant | "link" | "pill" | undefined | — | — |
Items#
An individual tab in the tabs component.
| Prop | Type | Default | Description |
|---|---|---|---|
| content | JSX.Element | — | Content to display when the tab is active. |
| disabled | boolean | undefined | false | Whether the tab is disabled. |
| icon | IconT.Name | — | Icon to display next to the label. |
| label | JSX.Element | — | Label to display on the tab trigger. |
| value | string | undefined | index of the item | Unique value for the tab. |