From 8a325e53a0cdc87de2b1c51b5e370f3d6a3126e0 Mon Sep 17 00:00:00 2001 From: Daisy Kucharski Date: Thu, 9 Nov 2023 19:57:21 -0500 Subject: [PATCH 1/5] rename nupaths --- packages/common/src/types.ts | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/common/src/types.ts b/packages/common/src/types.ts index 0ca2d54a4..b4c66748b 100644 --- a/packages/common/src/types.ts +++ b/packages/common/src/types.ts @@ -4,19 +4,19 @@ * Northeastern's abbreviation of the requirement. */ export enum NUPathEnum { - ND = "ND", - EI = "EI", - IC = "IC", - FQ = "FQ", - SI = "SI", - AD = "AD", - DD = "DD", - ER = "ER", - WF = "WF", - WD = "WD", - WI = "WI", - EX = "EX", - CE = "CE", + ND = "Natural and Designed World", + EI = "Creative Expression/Innovation", + IC = "Interpreting Culture", + FQ = "Formal and Quantitative Reasoning", + SI = "Societies and Institutions", + AD = "Analyzing/Using Data", + DD = "Difference and Diversity", + ER = "Ethical Reasoning", + WF = "First Year Writing", + WD = "Advanced Writing in the Disciplines", + WI = "Writing Intensive", + EX = "Integration Experience", + CE = "Capstone Experience", } /** From 521681c99e17a76b29634811078a713b0e5ea331 Mon Sep 17 00:00:00 2001 From: Daisy Kucharski Date: Sat, 11 Nov 2023 16:52:56 -0500 Subject: [PATCH 2/5] add nupath types and to fetch course --- packages/api-client/index.ts | 9 ++++++++- packages/common/src/types.ts | 8 +++++--- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/packages/api-client/index.ts b/packages/api-client/index.ts index 6dd100bc9..01413c811 100644 --- a/packages/api-client/index.ts +++ b/packages/api-client/index.ts @@ -20,6 +20,7 @@ import { ForgotPasswordDto, ResetPasswordDto, courseToString, + NUPath, } from "@graduate/common"; import { ClassConstructor, plainToInstance } from "class-transformer"; @@ -131,6 +132,7 @@ interface SearchClass { subject: string; prereqs?: INEUAndReq | INEUOrReq; coreqs?: INEUAndReq | INEUOrReq; + nupaths?: NUPath[]; maxCredits: number; minCredits: number; termId: string; @@ -188,6 +190,7 @@ function occurrenceToCourse(occurrence: SearchClass): ScheduleCourse2 { numCreditsMin: occurrence.minCredits, prereqs: occurrence.prereqs, coreqs: occurrence.coreqs, + nupaths: occurrence.nupaths, id: null, }; } @@ -228,6 +231,7 @@ class SearchAPIClient { minCredits prereqs coreqs + nupath } } }`, @@ -235,6 +239,7 @@ class SearchAPIClient { }); const courseData = await res.data.data; + console.log("test"); if (courseData && courseData.class && courseData.class.allOccurrences) { return occurrencesToCourseByCatalogYear( courseData?.class?.allOccurrences, @@ -268,6 +273,7 @@ class SearchAPIClient { maxCredits prereqs coreqs + nupath termId } } @@ -352,7 +358,7 @@ class SearchAPIClient { search(termId:"${termId}", query: "${searchQuery}", classIdRange: {min: ${minIndex}, max: ${maxIndex}}) { totalCount pageInfo { hasNextPage } - nodes { ... on ClassOccurrence { name subject maxCredits minCredits prereqs coreqs classId + nodes { ... on ClassOccurrence { name subject maxCredits minCredits prereqs coreqs nupath classId } } } @@ -370,6 +376,7 @@ class SearchAPIClient { subject: result.subject, prereqs: result.prereqs, coreqs: result.coreqs, + nupaths: result.nupaths, numCreditsMin: result.minCredits, numCreditsMax: result.maxCredits, }; diff --git a/packages/common/src/types.ts b/packages/common/src/types.ts index b4c66748b..db49d95ec 100644 --- a/packages/common/src/types.ts +++ b/packages/common/src/types.ts @@ -12,8 +12,8 @@ export enum NUPathEnum { AD = "Analyzing/Using Data", DD = "Difference and Diversity", ER = "Ethical Reasoning", - WF = "First Year Writing", - WD = "Advanced Writing in the Disciplines", + WF = "1st Yr Writing", + WD = "Adv Writ Dscpl", WI = "Writing Intensive", EX = "Integration Experience", CE = "Capstone Experience", @@ -170,7 +170,8 @@ export type Requirement2 = | IOrCourse2 | ICourseRange2 | IRequiredCourse - | Section; + | Section + | "nupath"; /** * Represents a requirement where X number of credits need to be completed from @@ -329,6 +330,7 @@ export interface ScheduleCourse2 { subject: string; prereqs?: INEUAndReq | INEUOrReq; coreqs?: INEUAndReq | INEUOrReq; + nupaths?: NUPath[]; numCreditsMin: number; numCreditsMax: number; id: T; From dcaa71b8166d9a4809a9e2ef91b3f836a341fe25 Mon Sep 17 00:00:00 2001 From: Daisy Kucharski Date: Sun, 12 Nov 2023 14:16:56 -0500 Subject: [PATCH 3/5] use searchneu's terms for nupath --- packages/common/src/types.ts | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/packages/common/src/types.ts b/packages/common/src/types.ts index db49d95ec..a01e6e8c4 100644 --- a/packages/common/src/types.ts +++ b/packages/common/src/types.ts @@ -1,7 +1,6 @@ /** - * Describes an abbreviation for one of Northeastern's NUPath academic breadth - * requirements. Each two-character NUPath directly corresponds to - * Northeastern's abbreviation of the requirement. + * Describes the term SearchNEU uses for each of Northeastern's NUPath academic + * breadth requirements. */ export enum NUPathEnum { ND = "Natural and Designed World", @@ -170,8 +169,7 @@ export type Requirement2 = | IOrCourse2 | ICourseRange2 | IRequiredCourse - | Section - | "nupath"; + | Section; /** * Represents a requirement where X number of credits need to be completed from From 22b62894471e065bff765582c227862144ab350f Mon Sep 17 00:00:00 2001 From: Daisy Kucharski Date: Sun, 12 Nov 2023 14:18:17 -0500 Subject: [PATCH 4/5] Remove print --- packages/api-client/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/api-client/index.ts b/packages/api-client/index.ts index 01413c811..bb2c9f69a 100644 --- a/packages/api-client/index.ts +++ b/packages/api-client/index.ts @@ -239,7 +239,6 @@ class SearchAPIClient { }); const courseData = await res.data.data; - console.log("test"); if (courseData && courseData.class && courseData.class.allOccurrences) { return occurrencesToCourseByCatalogYear( courseData?.class?.allOccurrences, From bbde450cddfaf1c69eb79378cea0a45f38692d9f Mon Sep 17 00:00:00 2001 From: Daisy Kucharski Date: Sun, 19 Nov 2023 15:47:54 -0500 Subject: [PATCH 5/5] fix search stuff --- packages/api-client/index.ts | 9 ++++----- packages/common/src/types.ts | 4 ++-- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/packages/api-client/index.ts b/packages/api-client/index.ts index 01413c811..bd3bb8ed8 100644 --- a/packages/api-client/index.ts +++ b/packages/api-client/index.ts @@ -20,7 +20,7 @@ import { ForgotPasswordDto, ResetPasswordDto, courseToString, - NUPath, + NUPathEnum, } from "@graduate/common"; import { ClassConstructor, plainToInstance } from "class-transformer"; @@ -132,7 +132,7 @@ interface SearchClass { subject: string; prereqs?: INEUAndReq | INEUOrReq; coreqs?: INEUAndReq | INEUOrReq; - nupaths?: NUPath[]; + nupath?: NUPathEnum[]; maxCredits: number; minCredits: number; termId: string; @@ -190,7 +190,7 @@ function occurrenceToCourse(occurrence: SearchClass): ScheduleCourse2 { numCreditsMin: occurrence.minCredits, prereqs: occurrence.prereqs, coreqs: occurrence.coreqs, - nupaths: occurrence.nupaths, + nupaths: occurrence.nupath, id: null, }; } @@ -239,7 +239,6 @@ class SearchAPIClient { }); const courseData = await res.data.data; - console.log("test"); if (courseData && courseData.class && courseData.class.allOccurrences) { return occurrencesToCourseByCatalogYear( courseData?.class?.allOccurrences, @@ -376,7 +375,7 @@ class SearchAPIClient { subject: result.subject, prereqs: result.prereqs, coreqs: result.coreqs, - nupaths: result.nupaths, + nupaths: result.nupath, numCreditsMin: result.minCredits, numCreditsMax: result.maxCredits, }; diff --git a/packages/common/src/types.ts b/packages/common/src/types.ts index a01e6e8c4..87dc173fa 100644 --- a/packages/common/src/types.ts +++ b/packages/common/src/types.ts @@ -39,7 +39,6 @@ export enum StatusEnum { HOVERCOOP = "HOVERCOOP", } -export type NUPath = keyof typeof NUPathEnum; export type Status = keyof typeof StatusEnum; export type Season = keyof typeof SeasonEnum; @@ -318,6 +317,7 @@ export interface ScheduleTerm2 { * @param subject The subject of this course (CS, DS, etc) * @param prereqs The prerequisites for this course * @param coreqs The corequisites for this course + * @param nupaths The nupaths this course fulfills * @param numCreditsMin The minimum number of credits this course gives * @param numCreditsMax The maximum number of credits this course gives * @param id Unique id used as a book keeping field for dnd. @@ -328,7 +328,7 @@ export interface ScheduleCourse2 { subject: string; prereqs?: INEUAndReq | INEUOrReq; coreqs?: INEUAndReq | INEUOrReq; - nupaths?: NUPath[]; + nupaths?: NUPathEnum[]; numCreditsMin: number; numCreditsMax: number; id: T;