diff --git a/src/app/core/models/degree-plan.ts b/src/app/core/models/degree-plan.ts index 0238487e4d21a755da1f1bc9a471b25bb4d1f402..830d7000736f39f2da6f214fe04f08111d4a7da0 100644 --- a/src/app/core/models/degree-plan.ts +++ b/src/app/core/models/degree-plan.ts @@ -1,6 +1,6 @@ export interface DegreePlan { - roadmapId: number; - pvi: string; - name: string; - primary: boolean; + roadmapId: number; + pvi: string; + name: string; + primary: boolean; } diff --git a/src/app/dars/store/effects.ts b/src/app/dars/store/effects.ts index 6e1940735f5440b3423f46a7152d9a6c2f954f7b..1feb061c9741a0de34f11b2b0cb9af191c4fd509 100644 --- a/src/app/dars/store/effects.ts +++ b/src/app/dars/store/effects.ts @@ -36,13 +36,14 @@ export class DARSEffects { flatMap(() => { return forkJoinWithKeys({ + degreePlans: this.degreeAPI.getAllDegreePlans(), degreePrograms: this.api.getStudentDegreePrograms(), metadata: this.api.getAudits(), userPreferences: this.degreeAPI.getUserPreferences(), }); }), - map(({ degreePrograms, metadata, userPreferences }) => { + map(({ degreePlans, degreePrograms, metadata, userPreferences }) => { const alerts: Alert[] = []; if (userPreferences.darsHasDismissedDisclaimer !== true) { alerts.push( @@ -68,6 +69,7 @@ export class DARSEffects { }); return new darsActions.PopulateDarsState({ + degreePlans, metadata: { status: 'Loaded', programMetadata, diff --git a/src/app/dars/store/selectors.ts b/src/app/dars/store/selectors.ts index 37792d138d8f90e1ac90e465a4a144b524cffe6f..c8c3d7b93f00a224ad174bb8967ca014724be31f 100644 --- a/src/app/dars/store/selectors.ts +++ b/src/app/dars/store/selectors.ts @@ -11,6 +11,11 @@ export const alerts = createSelector( (state: DARSState) => state.alerts, ); +export const degreePlans = createSelector( + getDARSState, + (state: DARSState) => state.degreePlans, +); + export const metadataStatus = createSelector( getDARSState, (state: DARSState) => state.metadata.status, diff --git a/src/app/dars/store/state.ts b/src/app/dars/store/state.ts index d46c39069e9263883bad93627352d65963159dc0..8adfeb8a4563937ba17b00ba9df30dc71416a95c 100644 --- a/src/app/dars/store/state.ts +++ b/src/app/dars/store/state.ts @@ -1,8 +1,10 @@ import { Alert } from './../../core/models/alert'; import { AuditMetadata } from '../models/audit-metadata'; import { Audit } from '../models/audit'; +import { DegreePlan } from '@app/core/models/degree-plan'; export interface DARSState { + degreePlans: DegreePlan[]; metadata: | { status: 'Error'; message: string } | { status: 'Loading' } @@ -20,6 +22,7 @@ export interface DARSState { } export const INITIAL_DARS_STATE: DARSState = { + degreePlans: [], metadata: { status: 'Loading' }, visibleAudit: { status: 'NotLoaded' }, alerts: [],