packages/components/eui-accordion/eui-accordion.component.ts
Accordion container component that manages a collection of expandable panel items. Provides collapsible content sections with automatic expansion state coordination across child items. Supports single or multi-expansion modes to control whether multiple panels can be open simultaneously. Built on Angular CDK Accordion for robust expansion state management and accessibility. Content is projected via ng-content, expecting eui-accordion-item children for proper functionality. Typically used for organizing related content in expandable sections like FAQs, settings panels, or navigation menus.
<eui-accordion>
<eui-accordion-item>
<eui-accordion-item-header>Section 1</eui-accordion-item-header>
Content for section 1
</eui-accordion-item>
<eui-accordion-item>
<eui-accordion-item-header>Section 2</eui-accordion-item-header>
Content for section 2
</eui-accordion-item>
</eui-accordion><eui-accordion isMulti>
<eui-accordion-item (toggleItem)="onToggle($event)">
<eui-accordion-item-header>Item 1</eui-accordion-item-header>
Content 1
</eui-accordion-item>
</eui-accordion>isMulti to allow multiple items to be expanded simultaneously| changeDetection | ChangeDetectionStrategy.OnPush |
| HostDirectives |
CdkAccordion
Inputs : multi: isMulti
|
| host | { |
| selector | eui-accordion |
| template | |
| styleUrl | ./eui-accordion.scss |
Methods |
| cssClasses |
cssClasses()
|
|
Computes and returns the CSS classes for the component based on its current state.
Returns :
string
Space-separated string of CSS class names |