packages/components/eui-block-document/eui-block-document.component.ts
EuiBlockDocumentComponent creates a document overlay that can be toggled into a blocked state. When blocked, a loading indicator is displayed. Uses OnPush change detection strategy for better performance.
<eui-block-document [isBlocked]="isProcessing"></eui-block-document><button euiButton (click)="blockDocument()">Process Data</button>import { EuiAppShellService } from '@eui/core';
private appShellService = inject(EuiAppShellService);
isProcessing = false;
blockDocument(): void {
this.appShellService.isBlockDocumentActive = true;
// Simulate async operation
setTimeout(() => {
this.appShellService.isBlockDocumentActive = false;
}, 2000);
}| changeDetection | ChangeDetectionStrategy.OnPush |
| selector | eui-block-document |
| styleUrls | ./eui-block-document.scss |
| templateUrl | ./eui-block-document.component.html |
Properties |
Inputs |
HostBindings |
Accessors |
| ariaLabel |
Type : string
|
Default value : 'eUI Block Document'
|
|
ARIA label for the document component. |
| isBlocked |
Type : boolean
|
Default value : false
|
|
Controls whether the document is in blocked state. When true, displays the loading indicator. |
| attr.role |
Type : string
|
Default value : 'region'
|
|
ARIA role for the document component. |
| class |
Type : string
|
|
Applies CSS classes to the host element. Always includes 'eui-block-document' and conditionally adds 'eui-block-document--blocked' when isBlocked is true. |
| role |
Type : string
|
Default value : 'region'
|
Decorators :
@HostBinding('attr.role')
|
|
ARIA role for the document component. |
| cssClasses |
getcssClasses()
|
|
Applies CSS classes to the host element. Always includes 'eui-block-document' and conditionally adds 'eui-block-document--blocked' when isBlocked is true.
Returns :
string
|