From 067cfacb4496e90a86a115e802ca7c0857322999 Mon Sep 17 00:00:00 2001 From: "jvanboxtel@wisc.edu" <jvanboxtel@wisc.edu> Date: Mon, 10 Jun 2019 14:04:29 -0500 Subject: [PATCH] Adds populate state action --- src/app/dars/store/actions.ts | 10 +++++++++- src/app/dars/store/effects.ts | 10 +++++++--- src/app/dars/store/reducer.ts | 6 +++++- 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/src/app/dars/store/actions.ts b/src/app/dars/store/actions.ts index 3949662..83aba03 100644 --- a/src/app/dars/store/actions.ts +++ b/src/app/dars/store/actions.ts @@ -7,11 +7,14 @@ export enum DarsActionTypes { ErrorLoadingMetadata = '[DARS] Error Loading Metadata', StartLoadingMetadata = '[DARS] Start Loading Metadata', DoneLoadingMetadata = '[DARS] Done Loading Metadata', - ErrorLoadingAudit = '[DARS] Error Loading Audit', AddAuditMetadata = '[DARS] Add Audit Metadata', + + ErrorLoadingAudit = '[DARS] Error Loading Audit', StartLoadingAudit = '[DARS] Start Loading Audit', DoneLoadingAudit = '[DARS] Done Loading Audit', CloseAudit = '[DARS] Close Audit', + + PopulateDarsState = '[DARS] Done Loading state', } export class ErrorLoadingMetadata implements Action { @@ -43,6 +46,11 @@ export class AddAuditMetadata implements Action { ) {} } +export class PopulateDarsState implements Action { + public readonly type = DarsActionTypes.PopulateDarsState; + constructor(public payload: Partial<DARSState>) {} +} + export class StartLoadingAudit implements Action { public readonly type = DarsActionTypes.StartLoadingAudit; constructor(public payload: AuditMetadata) {} diff --git a/src/app/dars/store/effects.ts b/src/app/dars/store/effects.ts index b666170..6e19407 100644 --- a/src/app/dars/store/effects.ts +++ b/src/app/dars/store/effects.ts @@ -67,9 +67,13 @@ export class DARSEffects { } }); - return new darsActions.AddAuditMetadata({ - programMetadata, - whatIfMetadata, + return new darsActions.PopulateDarsState({ + metadata: { + status: 'Loaded', + programMetadata, + whatIfMetadata, + }, + alerts, }); }), diff --git a/src/app/dars/store/reducer.ts b/src/app/dars/store/reducer.ts index 735159c..57cdf97 100644 --- a/src/app/dars/store/reducer.ts +++ b/src/app/dars/store/reducer.ts @@ -1,10 +1,11 @@ import { DARSState, INITIAL_DARS_STATE } from '@app/dars/store/state'; -import { DarsActionTypes } from './actions'; +import { DarsActionTypes, AddAuditMetadata } from './actions'; import * as darsActions from './actions'; type SupportedActions = | darsActions.ErrorLoadingMetadata | darsActions.AddAuditMetadata + | darsActions.PopulateDarsState | darsActions.StartLoadingAudit | darsActions.DoneLoadingAudit | darsActions.CloseAudit; @@ -14,6 +15,9 @@ export function darsReducer( action: SupportedActions, ): DARSState { switch (action.type) { + case DarsActionTypes.PopulateDarsState: { + return { ...state, ...action.payload }; + } case DarsActionTypes.ErrorLoadingMetadata: { return { ...state, -- GitLab