packages/components/layout/eui-toolbar/toolbar.component.ts
Toolbar component providing a horizontal container for navigation, branding, and action items. Supports primary and secondary visual variants with automatic theme inheritance from parent eui-app-toolbar. Integrates with EuiAppShellService for layout coordination and responsive behavior. Provides content projection areas for logo, environment indicator, app name, menu items, and user profile. Detects and adapts to mega menu presence for enhanced navigation capabilities.
Example :<!-- Basic toolbar within app structure -->
<eui-app>
<eui-app-toolbar>
<eui-toolbar>
<eui-toolbar-mega-menu [items]="menuItems"></eui-toolbar-mega-menu>
<eui-toolbar-items euiPositionRight>
<eui-toolbar-item-notifications>
<eui-notifications [count]="5" [items]="notifications"></eui-notifications>
</eui-toolbar-item-notifications>
</eui-toolbar-items>
</eui-toolbar>
</eui-app-toolbar>
</eui-app>
<!-- Secondary toolbar variant -->
<eui-toolbar [euiSecondary]="true">
<eui-toolbar-mega-menu [items]="menuItems"></eui-toolbar-mega-menu>
</eui-toolbar>
| encapsulation | ViewEncapsulation.None |
| selector | eui-toolbar |
| imports |
AsyncPipe
NgTemplateOutlet
EuiToolbarLogoComponent
EuiToolbarEnvironmentComponent
EuiToolbarAppComponent
EuiToolbarItemsComponent
EuiToolbarItemComponent
EUI_USER_PROFILE
|
| templateUrl | ./toolbar.component.html |
| styleUrl | ./toolbar.component.scss |
Properties |
Inputs |
HostBindings |
Accessors |
| euiPrimary |
Default value : true, { transform: booleanAttribute }
|
|
Applies primary theme styling to the toolbar. When true, uses primary brand colors. Automatically disabled when euiSecondary is true. |
| class |
Type : string
|
| asService |
Type : unknown
|
Default value : inject(EuiAppShellService)
|
| hasMegaMenu |
Type : EuiToolbarMegaMenuComponent
|
Decorators :
@ContentChild(undefined)
|
| cssClasses |
getcssClasses()
|