From f7f959c426898575d629929cd2395fd45fdb944b Mon Sep 17 00:00:00 2001 From: Josh Date: Mon, 31 Mar 2025 14:57:06 +0000 Subject: [PATCH] Built skeleton MilestonePromptData --- src/utils/buildMilestonePromptData.js | 61 +++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 src/utils/buildMilestonePromptData.js diff --git a/src/utils/buildMilestonePromptData.js b/src/utils/buildMilestonePromptData.js new file mode 100644 index 0000000..2313594 --- /dev/null +++ b/src/utils/buildMilestonePromptData.js @@ -0,0 +1,61 @@ +export function buildMilestonePromptData({ + selectedCareer, + careerCluster, + existingMilestones, + financialMilestones, + retirementMilestones, + salaryProjections, + educationDetails, + expectedSalaryByRegion, + financialGoals, + retirementGoals, + userPreferences, + popoutPanelData, + isCollegeMode + }) { + return { + careerPath: { + name: selectedCareer?.career_name, + socCode: selectedCareer?.soc_code, + cluster: careerCluster, + }, + existingMilestones: { + career: existingMilestones, + financial: financialMilestones, + retirement: retirementMilestones, + }, + salaryProjection: { + startingSalary: salaryProjections.starting, + annualIncreaseRate: salaryProjections.growthRate, + earningHorizonYears: salaryProjections.horizon, + }, + education: { + degreeType: educationDetails.degreeType, + programLength: educationDetails.programLength, + costOfAttendance: educationDetails.cost, + loanRepayment: educationDetails.loanRepayment, + interestRate: educationDetails.interestRate, + expectedGraduationDate: educationDetails.graduationDate, + isInCollege: isCollegeMode === true, + }, + regionalSalary: { + zipCode: expectedSalaryByRegion.zipCode, + salaryData: expectedSalaryByRegion.salaryInfo, + }, + goals: { + financial: financialGoals, + retirement: retirementGoals, + }, + userPreferences, // work style, motivations, values + popoutPanel: { + commuteDistanceMiles: popoutPanelData.commuteDistance, + schoolName: popoutPanelData.schoolName, + website: popoutPanelData.website, + region: popoutPanelData.region, + }, + economicOutlook: { + projections: popoutPanelData.economicProjections, + } + }; + } + \ No newline at end of file