From 31a73f44502943438b83c5c4130ac2c45b7fb928 Mon Sep 17 00:00:00 2001 From: Ryan Mathis Date: Tue, 5 Nov 2019 08:37:25 -0700 Subject: [PATCH] SHIBUI-1576 Fixed issue with incomplete sources --- .../model/wizards/metadata-source-base.ts | 3 +++ .../effect/draft-collection.effects.ts | 3 +-- .../metadata/resolver/effect/wizard.effect.ts | 23 ++++++++----------- 3 files changed, 14 insertions(+), 15 deletions(-) diff --git a/ui/src/app/metadata/domain/model/wizards/metadata-source-base.ts b/ui/src/app/metadata/domain/model/wizards/metadata-source-base.ts index 360979782..54ad0d58a 100644 --- a/ui/src/app/metadata/domain/model/wizards/metadata-source-base.ts +++ b/ui/src/app/metadata/domain/model/wizards/metadata-source-base.ts @@ -56,6 +56,9 @@ export class MetadataSourceBase implements Wizard { }; parser(changes: Partial, schema?: any): any { + if (!changes.organization) { + changes.organization = {}; + } return changes; } diff --git a/ui/src/app/metadata/resolver/effect/draft-collection.effects.ts b/ui/src/app/metadata/resolver/effect/draft-collection.effects.ts index 41c21aae3..07f2d4d24 100644 --- a/ui/src/app/metadata/resolver/effect/draft-collection.effects.ts +++ b/ui/src/app/metadata/resolver/effect/draft-collection.effects.ts @@ -15,8 +15,7 @@ import * as actions from '../action/draft.action'; import { EntityDraftService } from '../../domain/service/draft.service'; import * as fromResolver from '../reducer'; import { Store } from '@ngrx/store'; -import { Clear } from '../action/entity.action'; -import { ClearWizard } from '../../../wizard/action/wizard.action'; +import { MetadataResolver } from '../../domain/model'; export const getPayload = (action: any) => action.payload; diff --git a/ui/src/app/metadata/resolver/effect/wizard.effect.ts b/ui/src/app/metadata/resolver/effect/wizard.effect.ts index 04dc7ca40..a8523d2c2 100644 --- a/ui/src/app/metadata/resolver/effect/wizard.effect.ts +++ b/ui/src/app/metadata/resolver/effect/wizard.effect.ts @@ -1,8 +1,6 @@ import { Injectable } from '@angular/core'; import { Effect, Actions, ofType } from '@ngrx/effects'; -import { ActivatedRoute, Router } from '@angular/router'; -import { map, filter, tap, withLatestFrom } from 'rxjs/operators'; -import { Store } from '@ngrx/store'; +import { map, filter, withLatestFrom } from 'rxjs/operators'; import { Clear, @@ -13,11 +11,10 @@ import { ResolverCollectionActionTypes, AddResolverSuccess } from '../action/collection.action'; - -import * as fromResolver from '../reducer'; - -import { EntityDraftService } from '../../domain/service/draft.service'; import { UpdateDraftRequest } from '../action/draft.action'; +import * as fromRoot from '../../../app.reducer'; +import { Store } from '@ngrx/store'; +import { getSelectedDraftId } from '../reducer'; @Injectable() export class WizardEffects { @@ -27,7 +24,10 @@ export class WizardEffects { ofType(ResolverEntityActionTypes.UPDATE_CHANGES_SUCCESS), map(action => action.payload), filter(provider => !provider.createdDate), - map((provider) => new UpdateDraftRequest({ ...provider })) + withLatestFrom(this.store.select(getSelectedDraftId)), + map(([provider, id]) => { + return new UpdateDraftRequest({ id, ...provider }); + }) ); @Effect() @@ -38,10 +38,7 @@ export class WizardEffects { ); constructor( - private store: Store, - private actions$: Actions, - private draftService: EntityDraftService, - private activatedRoute: ActivatedRoute, - private router: Router + private store: Store, + private actions$: Actions ) { } }