Skip to content
Snippets Groups Projects
Commit 5ca3c9e9 authored by Isaac Evavold's avatar Isaac Evavold
Browse files

load degree plans into dars view

parent c80c9a1c
No related branches found
No related tags found
No related merge requests found
export interface DegreePlan { export interface DegreePlan {
roadmapId: number; roadmapId: number;
pvi: string; pvi: string;
name: string; name: string;
primary: boolean; primary: boolean;
} }
...@@ -36,13 +36,14 @@ export class DARSEffects { ...@@ -36,13 +36,14 @@ export class DARSEffects {
flatMap(() => { flatMap(() => {
return forkJoinWithKeys({ return forkJoinWithKeys({
degreePlans: this.degreeAPI.getAllDegreePlans(),
degreePrograms: this.api.getStudentDegreePrograms(), degreePrograms: this.api.getStudentDegreePrograms(),
metadata: this.api.getAudits(), metadata: this.api.getAudits(),
userPreferences: this.degreeAPI.getUserPreferences(), userPreferences: this.degreeAPI.getUserPreferences(),
}); });
}), }),
map(({ degreePrograms, metadata, userPreferences }) => { map(({ degreePlans, degreePrograms, metadata, userPreferences }) => {
const alerts: Alert[] = []; const alerts: Alert[] = [];
if (userPreferences.darsHasDismissedDisclaimer !== true) { if (userPreferences.darsHasDismissedDisclaimer !== true) {
alerts.push( alerts.push(
...@@ -68,6 +69,7 @@ export class DARSEffects { ...@@ -68,6 +69,7 @@ export class DARSEffects {
}); });
return new darsActions.PopulateDarsState({ return new darsActions.PopulateDarsState({
degreePlans,
metadata: { metadata: {
status: 'Loaded', status: 'Loaded',
programMetadata, programMetadata,
......
...@@ -11,6 +11,11 @@ export const alerts = createSelector( ...@@ -11,6 +11,11 @@ export const alerts = createSelector(
(state: DARSState) => state.alerts, (state: DARSState) => state.alerts,
); );
export const degreePlans = createSelector(
getDARSState,
(state: DARSState) => state.degreePlans,
);
export const metadataStatus = createSelector( export const metadataStatus = createSelector(
getDARSState, getDARSState,
(state: DARSState) => state.metadata.status, (state: DARSState) => state.metadata.status,
......
import { Alert } from './../../core/models/alert'; import { Alert } from './../../core/models/alert';
import { AuditMetadata } from '../models/audit-metadata'; import { AuditMetadata } from '../models/audit-metadata';
import { Audit } from '../models/audit'; import { Audit } from '../models/audit';
import { DegreePlan } from '@app/core/models/degree-plan';
export interface DARSState { export interface DARSState {
degreePlans: DegreePlan[];
metadata: metadata:
| { status: 'Error'; message: string } | { status: 'Error'; message: string }
| { status: 'Loading' } | { status: 'Loading' }
...@@ -20,6 +22,7 @@ export interface DARSState { ...@@ -20,6 +22,7 @@ export interface DARSState {
} }
export const INITIAL_DARS_STATE: DARSState = { export const INITIAL_DARS_STATE: DARSState = {
degreePlans: [],
metadata: { status: 'Loading' }, metadata: { status: 'Loading' },
visibleAudit: { status: 'NotLoaded' }, visibleAudit: { status: 'NotLoaded' },
alerts: [], alerts: [],
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment