From 6831df6ad0677df376e487999d2c9209ce5b3cdb Mon Sep 17 00:00:00 2001 From: Andreas Coroiu Date: Thu, 4 May 2023 13:39:13 +0200 Subject: [PATCH] [PM-2014] feat: disable dialog close button --- .../src/dialog/directives/dialog-close.directive.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/libs/components/src/dialog/directives/dialog-close.directive.ts b/libs/components/src/dialog/directives/dialog-close.directive.ts index a45991bb5e6..c4e44f04968 100644 --- a/libs/components/src/dialog/directives/dialog-close.directive.ts +++ b/libs/components/src/dialog/directives/dialog-close.directive.ts @@ -1,5 +1,5 @@ import { DialogRef } from "@angular/cdk/dialog"; -import { Directive, HostListener, Input, Optional } from "@angular/core"; +import { Directive, HostBinding, HostListener, Input, Optional } from "@angular/core"; @Directive({ selector: "[bitDialogClose]", @@ -9,7 +9,16 @@ export class DialogCloseDirective { constructor(@Optional() public dialogRef: DialogRef) {} + @HostBinding("attr.disabled") + get disableClose() { + return this.dialogRef.disableClose ? true : null; + } + @HostListener("click") close(): void { + if (this.disableClose) { + return; + } + this.dialogRef.close(this.dialogResult); } }