Summary
Update `` to implement the PatternFly v6 Tabs component.
Tabbed content panels with horizontal or vertical orientation, supporting default, box, and filled variants.
Prior Art
| Source |
Element |
Status |
| PFE v4 |
`` |
Exists |
| cem |
`` |
Exists |
| cockpit |
`` |
Exists |
| chickadee |
`` |
Exists |
Sub-components
- `` - Individual tab trigger
- `` - Content panel associated with a tab
Requirements
- MUST implement PFv6 visual designs
- MUST provide end-user feature parity with `@patternfly/react-core` Tabs
- MAY adjust element API to leverage web platform strengths
- SHOULD maintain CSS custom property theming compatibility
- SHOULD expose useful CSS shadow parts
Element-specific considerations
- React `variant`: `default`, `box`, `vertical`, `horizontal` - and combinations like `box vertical`; verify v6 variant names
- React `isBox`, `isVertical`, `isSecondary`, `isFilled` - map to boolean attributes
- React `activeKey` (controlled) vs `defaultActiveKey` (uncontrolled) - reflect as `active-key` attribute
- React `onSelect` - fires with tab key and event - emit `tab-select` or `change` custom event
- React `mountOnEnter`, `unmountOnExit` - lazy content mounting; may not apply to web component slots
- React `inset`, `usePageInsets` - padding tokens
- React `overflow menu` - tabs that overflow collapse into a dropdown; complex, verify v6 scope
- ARIA: `role="tablist"`, tabs have `role="tab"` + `aria-selected` + `aria-controls`; panels have `role="tabpanel"` + `aria-labelledby`
- RTI (Roving Tab Index) controller for keyboard navigation (← → arrow keys)
Checklist
Rename
Implementation
Demos
Tests
Reviews
Ship
Summary
Update `` to implement the PatternFly v6 Tabs component.
Tabbed content panels with horizontal or vertical orientation, supporting default, box, and filled variants.
Prior Art
Sub-components
Requirements
Element-specific considerations
Checklist
Rename
Implementation
Demos
Tests
Reviews
Ship