From 09008130e81e3ddf1a7434c9ef14e41678f6e2a9 Mon Sep 17 00:00:00 2001 From: Valentin Date: Mon, 20 Dec 2021 10:26:17 +0200 Subject: [PATCH 1/5] updated confirmation dialog component to include 'dischard changes' action --- .../confirmation-dialog.component.html | 12 +++++++++--- .../confirmation-dialog.component.ts | 12 +++++++++++- src/lib/services/dialog.service.ts | 2 ++ 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/src/lib/misc/confirmation-dialog/confirmation-dialog.component.html b/src/lib/misc/confirmation-dialog/confirmation-dialog.component.html index f94bfb0..8efd2b9 100644 --- a/src/lib/misc/confirmation-dialog/confirmation-dialog.component.html +++ b/src/lib/misc/confirmation-dialog/confirmation-dialog.component.html @@ -15,7 +15,7 @@
-
+
+ {{ config.discardChangesText }} +
+ +
{{ config.denyText }}
diff --git a/src/lib/misc/confirmation-dialog/confirmation-dialog.component.ts b/src/lib/misc/confirmation-dialog/confirmation-dialog.component.ts index ae4d744..417ded5 100644 --- a/src/lib/misc/confirmation-dialog/confirmation-dialog.component.ts +++ b/src/lib/misc/confirmation-dialog/confirmation-dialog.component.ts @@ -10,6 +10,12 @@ export enum TitleColors { WARN = 'warn', } +export enum ConfirmOptions { + CONFIRM = 1, + SECOND_CONFIRM = 2, + DISCARD_CHANGES = 3, +} + export class ConfirmationDialogInput { title?: string; titleColor?: TitleColor; @@ -17,6 +23,7 @@ export class ConfirmationDialogInput { details?: string; confirmationText?: string; alternativeConfirmationText?: string; + discardChangesText?: string; requireInput?: boolean; denyText?: string; translateParams?: Record; @@ -28,6 +35,7 @@ export class ConfirmationDialogInput { this.details = options?.details || ''; this.confirmationText = options?.confirmationText || _('common.confirmation-dialog.confirm'); this.alternativeConfirmationText = options?.alternativeConfirmationText; + this.discardChangesText = options?.discardChangesText; this.requireInput = options?.requireInput || false; this.denyText = options?.denyText || _('common.confirmation-dialog.deny'); this.translateParams = options?.translateParams || {}; @@ -43,6 +51,7 @@ export class ConfirmationDialogComponent { config: ConfirmationDialogInput; inputValue = ''; readonly inputLabel: string; + readonly ConfirmOptions = ConfirmOptions; constructor( private readonly _dialogRef: MatDialogRef, @@ -75,7 +84,7 @@ export class ConfirmationDialogComponent { this._dialogRef.close(); } - confirm(option: number): void { + confirm(option: ConfirmOptions): void { this._dialogRef.close(option); } @@ -86,6 +95,7 @@ export class ConfirmationDialogComponent { 'details', 'confirmationText', 'alternativeConfirmationText', + 'discardChangesText', 'denyText', ]; diff --git a/src/lib/services/dialog.service.ts b/src/lib/services/dialog.service.ts index 58647ca..a63ff35 100644 --- a/src/lib/services/dialog.service.ts +++ b/src/lib/services/dialog.service.ts @@ -9,6 +9,7 @@ export const largeDialogConfig: MatDialogConfig = { maxWidth: '90vw', maxHeight: '90vh', autoFocus: false, + disableClose: true, } as const; export const defaultDialogConfig: MatDialogConfig = { @@ -16,6 +17,7 @@ export const defaultDialogConfig: MatDialogConfig = { maxWidth: '90vw', maxHeight: '90vh', autoFocus: false, + disableClose: true, } as const; export type DialogConfig = { From b3a820ca960c4cb5d8afa6b4949a720b3075fb85 Mon Sep 17 00:00:00 2001 From: Valentin Date: Tue, 4 Jan 2022 20:32:13 +0200 Subject: [PATCH 2/5] added 'disableConfirm' property to confirmation dialog component --- .../misc/confirmation-dialog/confirmation-dialog.component.html | 2 +- .../misc/confirmation-dialog/confirmation-dialog.component.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lib/misc/confirmation-dialog/confirmation-dialog.component.html b/src/lib/misc/confirmation-dialog/confirmation-dialog.component.html index 8efd2b9..7b2f309 100644 --- a/src/lib/misc/confirmation-dialog/confirmation-dialog.component.html +++ b/src/lib/misc/confirmation-dialog/confirmation-dialog.component.html @@ -16,7 +16,7 @@