UNPKG

@engie-group/fluid-design-system-angular

Version:

Fluid Design System Angular

43 lines (39 loc) 1.41 kB
import { Dialog, DialogModule, DialogRef } from '@angular/cdk/dialog'; import { ChangeDetectionStrategy, Component, inject, TemplateRef } from '@angular/core'; import { ButtonComponent, ModalComponent } from '../../public-api'; @Component({ selector: 'nj-modal-wrapper', template: ` <nj-button (buttonClick)="_openModal(modalToOpen)">Open Modal</nj-button> <ng-template #modalToOpen> <nj-modal [hasCloseIcon]="hasCloseIcon" [modalId]="modalId" [closeLabel]="closeLabel" [isVerticallyCentered]="isVerticallyCentered" > <span njModalTitle>Modal Title</span> <div njModalContent> <p>Modal content</p> </div> <ng-container njModalFooter> <nj-button emphasis="subtle" (buttonClick)="_closeModal()">Cancel </nj-button> <nj-button (buttonClick)="_closeModal()">Submit</nj-button> </ng-container> </nj-modal> </ng-template> `, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [ModalComponent, ButtonComponent, DialogModule] }) export class ModalWrapperStoryComponent extends ModalComponent { private _dialog = inject(Dialog); private _dialogRef: DialogRef; protected _openModal(modalToOpen: TemplateRef<any>) { this._dialogRef = this._dialog.open(modalToOpen); } protected _closeModal() { this._dialogRef?.close(); } }