From bf1bdd85e608d0381e64235bae14318893abc21f Mon Sep 17 00:00:00 2001 From: Nicolas Rod <Nicolas.Rod@unige.ch> Date: Fri, 19 Mar 2021 09:24:53 +0100 Subject: [PATCH] fix(DepositFormPresentational): do not multiplicate contributors if clicking many times on import metadata button --- .../deposit-form/deposit-form.presentational.ts | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/app/features/deposit/components/presentationals/deposit-form/deposit-form.presentational.ts b/src/app/features/deposit/components/presentationals/deposit-form/deposit-form.presentational.ts index 4b82e0727..ba6b06ed3 100644 --- a/src/app/features/deposit/components/presentationals/deposit-form/deposit-form.presentational.ts +++ b/src/app/features/deposit/components/presentationals/deposit-form/deposit-form.presentational.ts @@ -21,10 +21,6 @@ import { import {MatDialog} from "@angular/material/dialog"; import {ActivatedRoute} from "@angular/router"; import {DepositTableContributorContainer} from "@app/features/deposit/components/containers/deposit-table-contributor/deposit-table-contributor.container"; -import { - ValidationStructureDialog, - ValidationStructureDialogData, -} from "@app/features/deposit/components/dialogs/validation-structure/validation-structure.dialog"; import {DepositFormDescriptionAcademicStructurePresentational} from "@app/features/deposit/components/presentationals/deposit-form-description-academic-structure/deposit-form-description-academic-structure.presentational"; import {DepositFormDescriptionClassificationPresentational} from "@app/features/deposit/components/presentationals/deposit-form-description-classification/deposit-form-description-classification.presentational"; import {DepositFormDescriptionCollectionPresentational} from "@app/features/deposit/components/presentationals/deposit-form-description-collection/deposit-form-description-collection.presentational"; @@ -93,16 +89,13 @@ import { debounceTime, distinctUntilChanged, map, - take, tap, } from "rxjs/operators"; import { AbstractPresentational, ConfirmDialog, ConfirmDialogData, - DateUtil, isArray, - isFalse, isNonEmptyArray, isNonEmptyString, isNotNullNorUndefined, @@ -555,8 +548,11 @@ export class DepositFormPresentational extends AbstractPresentational implements if (!isArray(listContributors)) { return; } + + const formArray = this.formGroupThirdStepContributors.get(formArrayKey) as FormArray; + formArray.clear(); + listContributors.forEach(contributor => { - const formArray = this.formGroupThirdStepContributors.get(formArrayKey) as FormArray; formArray.push(DepositTableContributorContainer.restoreContributorFromAbstractContributor(this._fb, this.formDefinitionDepositFormContributor, contributor)); }); } -- GitLab