From fecec0e32ef40f5e190463eddd41a42bedecfa51 Mon Sep 17 00:00:00 2001 From: Valentin Mihai Date: Fri, 25 Feb 2022 12:45:34 +0200 Subject: [PATCH] updated base dialog to not verify the changes on closing the window when it's on edit mode --- apps/red-ui/src/app/modules/admin/admin-routing.module.ts | 1 - .../add-edit-dictionary-dialog.component.ts | 2 +- .../add-edit-dossier-attribute-dialog.component.ts | 2 +- .../add-edit-dossier-state-dialog.component.ts | 2 +- .../add-edit-dossier-template-dialog.component.ts | 2 +- .../add-edit-file-attribute-dialog.component.ts | 2 +- .../add-edit-user-dialog/add-edit-user-dialog.component.ts | 4 ++-- .../dialogs/edit-color-dialog/edit-color-dialog.component.ts | 2 +- .../file-attributes-configurations-dialog.component.ts | 2 +- .../add-edit-justification-dialog.component.ts | 2 +- .../src/app/modules/admin/screens/rules/rules.module.ts | 3 ++- .../change-legal-basis-dialog.component.ts | 2 +- .../edit-dossier-dialog/edit-dossier-dialog.component.ts | 2 +- libs/common-ui | 2 +- 14 files changed, 15 insertions(+), 15 deletions(-) diff --git a/apps/red-ui/src/app/modules/admin/admin-routing.module.ts b/apps/red-ui/src/app/modules/admin/admin-routing.module.ts index bb0a2a0e8..96fe292f5 100644 --- a/apps/red-ui/src/app/modules/admin/admin-routing.module.ts +++ b/apps/red-ui/src/app/modules/admin/admin-routing.module.ts @@ -75,7 +75,6 @@ const routes: Routes = [ path: 'rules', component: BaseDossierTemplateScreenComponent, canActivate: [CompositeRouteGuard], - canDeactivate: [PendingChangesGuard], data: { routeGuards: [AuthGuard, RedRoleGuard], }, diff --git a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dictionary-dialog/add-edit-dictionary-dialog.component.ts b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dictionary-dialog/add-edit-dictionary-dialog.component.ts index 1e713ac18..c1748e7f8 100644 --- a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dictionary-dialog/add-edit-dictionary-dialog.component.ts +++ b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dictionary-dialog/add-edit-dictionary-dialog.component.ts @@ -41,7 +41,7 @@ export class AddEditDictionaryDialogComponent extends BaseDialogComponent { @Inject(MAT_DIALOG_DATA) private readonly _data: { readonly dictionary: Dictionary; readonly dossierTemplateId: string }, ) { - super(_injector, _dialogRef); + super(_injector, _dialogRef, !!_data.dictionary); this.form = this._getForm(this.dictionary); this.initialFormValue = this.form.getRawValue(); this.hasColor$ = this._colorEmpty$; diff --git a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-attribute-dialog/add-edit-dossier-attribute-dialog.component.ts b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-attribute-dialog/add-edit-dossier-attribute-dialog.component.ts index 94dd875f6..1c1e6b7ee 100644 --- a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-attribute-dialog/add-edit-dossier-attribute-dialog.component.ts +++ b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-attribute-dialog/add-edit-dossier-attribute-dialog.component.ts @@ -27,7 +27,7 @@ export class AddEditDossierAttributeDialogComponent extends BaseDialogComponent @Inject(MAT_DIALOG_DATA) readonly data: { readonly dossierAttribute: IDossierAttributeConfig; dossierTemplateId: string }, ) { - super(_injector, _dialogRef); + super(_injector, _dialogRef, !!data.dossierAttribute); this.form = this._getForm(this.dossierAttribute); this.initialFormValue = this.form.getRawValue(); } diff --git a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-state-dialog/add-edit-dossier-state-dialog.component.ts b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-state-dialog/add-edit-dossier-state-dialog.component.ts index 0a3ec2ad4..55a44ba00 100644 --- a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-state-dialog/add-edit-dossier-state-dialog.component.ts +++ b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-state-dialog/add-edit-dossier-state-dialog.component.ts @@ -22,7 +22,7 @@ export class AddEditDossierStateDialogComponent extends BaseDialogComponent { protected readonly _dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) readonly data: DialogData, ) { - super(_injector, _dialogRef); + super(_injector, _dialogRef, !!data.dossierState); this.form = this.#getForm(); this.initialFormValue = this.form.getRawValue(); } diff --git a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-template-dialog/add-edit-dossier-template-dialog.component.ts b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-template-dialog/add-edit-dossier-template-dialog.component.ts index 5973b7db4..6297f906f 100644 --- a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-template-dialog/add-edit-dossier-template-dialog.component.ts +++ b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-template-dialog/add-edit-dossier-template-dialog.component.ts @@ -41,7 +41,7 @@ export class AddEditDossierTemplateDialogComponent extends BaseDialogComponent { private readonly _loadingService: LoadingService, @Inject(MAT_DIALOG_DATA) readonly dossierTemplateId: string, ) { - super(_injector, _dialogRef); + super(_injector, _dialogRef, !!dossierTemplateId); this.dossierTemplate = this._dossierTemplatesService.find(this.dossierTemplateId); this.form = this._getForm(); this.initialFormValue = this.form.getRawValue(); diff --git a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-file-attribute-dialog/add-edit-file-attribute-dialog.component.ts b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-file-attribute-dialog/add-edit-file-attribute-dialog.component.ts index 413cdc418..dbd272169 100644 --- a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-file-attribute-dialog/add-edit-file-attribute-dialog.component.ts +++ b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-file-attribute-dialog/add-edit-file-attribute-dialog.component.ts @@ -34,7 +34,7 @@ export class AddEditFileAttributeDialogComponent extends BaseDialogComponent { numberOfFilterableAttrs: number; }, ) { - super(_injector, _dialogRef); + super(_injector, _dialogRef, !!data.fileAttribute); this.canSetDisplayed = data.numberOfDisplayedAttrs < this.DISPLAYED_FILTERABLE_LIMIT || data.fileAttribute?.displayedInFileList; this.canSetFilterable = data.numberOfFilterableAttrs < this.DISPLAYED_FILTERABLE_LIMIT || data.fileAttribute?.filterable; this.form = this._getForm(this.fileAttribute); diff --git a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-user-dialog/add-edit-user-dialog.component.ts b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-user-dialog/add-edit-user-dialog.component.ts index a35e42d2e..ea8f17e66 100644 --- a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-user-dialog/add-edit-user-dialog.component.ts +++ b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-user-dialog/add-edit-user-dialog.component.ts @@ -19,9 +19,9 @@ export class AddEditUserDialogComponent extends BaseDialogComponent { protected readonly _dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) readonly user: User, ) { - super(_injector, _dialogRef); + super(_injector, _dialogRef, !!user); } - + X; toggleResetPassword() { this.resettingPassword = !this.resettingPassword; } diff --git a/apps/red-ui/src/app/modules/admin/dialogs/edit-color-dialog/edit-color-dialog.component.ts b/apps/red-ui/src/app/modules/admin/dialogs/edit-color-dialog/edit-color-dialog.component.ts index 2f544c1d0..d10739d47 100644 --- a/apps/red-ui/src/app/modules/admin/dialogs/edit-color-dialog/edit-color-dialog.component.ts +++ b/apps/red-ui/src/app/modules/admin/dialogs/edit-color-dialog/edit-color-dialog.component.ts @@ -33,7 +33,7 @@ export class EditColorDialogComponent extends BaseDialogComponent { @Inject(MAT_DIALOG_DATA) readonly data: IEditColorData, ) { - super(_injector, _dialogRef); + super(_injector, _dialogRef, true); this._dossierTemplateId = data.dossierTemplateId; this.form = this._getForm(); diff --git a/apps/red-ui/src/app/modules/admin/dialogs/file-attributes-configurations-dialog/file-attributes-configurations-dialog.component.ts b/apps/red-ui/src/app/modules/admin/dialogs/file-attributes-configurations-dialog/file-attributes-configurations-dialog.component.ts index 37bb5c850..6c20af995 100644 --- a/apps/red-ui/src/app/modules/admin/dialogs/file-attributes-configurations-dialog/file-attributes-configurations-dialog.component.ts +++ b/apps/red-ui/src/app/modules/admin/dialogs/file-attributes-configurations-dialog/file-attributes-configurations-dialog.component.ts @@ -28,7 +28,7 @@ export class FileAttributesConfigurationsDialogComponent extends BaseDialogCompo protected readonly _dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) private _data: { config: IFileAttributesConfig; dossierTemplateId: string }, ) { - super(_injector, _dialogRef); + super(_injector, _dialogRef, true); this.form = this._getForm(); this.initialFormValue = this.form.getRawValue(); } diff --git a/apps/red-ui/src/app/modules/admin/screens/justifications/add-edit-justification-dialog/add-edit-justification-dialog.component.ts b/apps/red-ui/src/app/modules/admin/screens/justifications/add-edit-justification-dialog/add-edit-justification-dialog.component.ts index c19723be9..5a53c1d98 100644 --- a/apps/red-ui/src/app/modules/admin/screens/justifications/add-edit-justification-dialog/add-edit-justification-dialog.component.ts +++ b/apps/red-ui/src/app/modules/admin/screens/justifications/add-edit-justification-dialog/add-edit-justification-dialog.component.ts @@ -23,7 +23,7 @@ export class AddEditJustificationDialogComponent extends BaseDialogComponent { protected readonly _dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data: { justification?: Justification; dossierTemplateId: string }, ) { - super(_injector, _dialogRef); + super(_injector, _dialogRef, !!data.justification); this.form = this._getForm(); this.initialFormValue = this.form.getRawValue(); diff --git a/apps/red-ui/src/app/modules/admin/screens/rules/rules.module.ts b/apps/red-ui/src/app/modules/admin/screens/rules/rules.module.ts index e2824d79e..9e7d816ba 100644 --- a/apps/red-ui/src/app/modules/admin/screens/rules/rules.module.ts +++ b/apps/red-ui/src/app/modules/admin/screens/rules/rules.module.ts @@ -4,8 +4,9 @@ import { RouterModule } from '@angular/router'; import { SharedModule } from '../../../shared/shared.module'; import { RulesScreenComponent } from './rules-screen/rules-screen.component'; import { MonacoEditorModule } from '@materia-ui/ngx-monaco-editor'; +import { PendingChangesGuard } from '../../../../guards/can-deactivate.guard'; -const routes = [{ path: '', component: RulesScreenComponent }]; +const routes = [{ path: '', component: RulesScreenComponent, canDeactivate: [PendingChangesGuard] }]; @NgModule({ declarations: [RulesScreenComponent], diff --git a/apps/red-ui/src/app/modules/dossier/dialogs/change-legal-basis-dialog/change-legal-basis-dialog.component.ts b/apps/red-ui/src/app/modules/dossier/dialogs/change-legal-basis-dialog/change-legal-basis-dialog.component.ts index 350bba3e4..94d74dffd 100644 --- a/apps/red-ui/src/app/modules/dossier/dialogs/change-legal-basis-dialog/change-legal-basis-dialog.component.ts +++ b/apps/red-ui/src/app/modules/dossier/dialogs/change-legal-basis-dialog/change-legal-basis-dialog.component.ts @@ -31,7 +31,7 @@ export class ChangeLegalBasisDialogComponent extends BaseDialogComponent impleme protected readonly _dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) private readonly _data: { annotations: AnnotationWrapper[]; dossier: Dossier }, ) { - super(_injector, _dialogRef); + super(_injector, _dialogRef, true); this.form = this._getForm(); } diff --git a/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/edit-dossier-dialog.component.ts b/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/edit-dossier-dialog.component.ts index 8b0b8eb1a..943d1cbe5 100644 --- a/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/edit-dossier-dialog.component.ts +++ b/apps/red-ui/src/app/modules/dossier/dialogs/edit-dossier-dialog/edit-dossier-dialog.component.ts @@ -53,7 +53,7 @@ export class EditDossierDialogComponent extends BaseDialogComponent implements A section?: Section; }, ) { - super(_injector, _dialogRef); + super(_injector, _dialogRef, true); this.navItems = [ { key: 'dossierInfo', diff --git a/libs/common-ui b/libs/common-ui index 8f8ce778b..6c82fe505 160000 --- a/libs/common-ui +++ b/libs/common-ui @@ -1 +1 @@ -Subproject commit 8f8ce778bd78a42076db33c886b4e623a17d4f15 +Subproject commit 6c82fe505b7495d06bec21acbc2a20b653a791ed