2
2
<div class =" requirementheader" >
3
3
<!-- TODO change for multiple colleges -->
4
4
<h1
5
- v-if =" reqIndex <= numOfColleges || reqIndex == numOfColleges + onboardingData.major.length"
5
+ v-if ="
6
+ reqIndex <= numOfColleges ||
7
+ reqIndex == numOfColleges + onboardingData.major.length ||
8
+ req.groupName === 'Grad'
9
+ "
6
10
class =" col top p-0"
7
11
>
8
12
{{ req.groupName }} Requirements
9
13
</h1 >
10
14
<!-- TODO change for multiple colleges -->
11
- <div v-if =" reqIndex === 0 " class =" college" >
15
+ <div v-if =" req.groupName === 'College' " class =" college" >
12
16
<button
13
17
:style =" {
14
- 'border-bottom': `2px solid #${reqGroupColorMap[ req.groupName][0] }`,
18
+ 'border-bottom': `2px solid #${getReqColor( req.groupName, onboardingData) }`,
15
19
}"
16
20
class =" college-title-button college-title full-opacity-on-hover"
17
21
:disabled =" true"
18
22
>
19
23
<p
20
24
:style =" {
21
25
'font-weight': '500',
22
- color: `#${reqGroupColorMap[ req.groupName][0] }`,
26
+ color: `#${getReqColor( req.groupName, onboardingData) }`,
23
27
}"
24
28
class =" college-title-top"
25
29
>
28
32
</button >
29
33
</div >
30
34
<!-- TODO change for multiple colleges -->
31
- <div v-if =" reqIndex === numOfColleges" class =" major" >
35
+ <div v-if =" reqIndex === numOfColleges && req.groupName === 'Major' " class =" major" >
32
36
<button
33
37
:style =" {
34
38
'border-bottom':
35
- id === displayedMajorIndex ? `2px solid #${reqGroupColorMap[req.groupName][0]}` : '',
39
+ id === displayedMajorIndex
40
+ ? `2px solid #${getReqColor(req.groupName, onboardingData)}`
41
+ : '',
36
42
}"
37
43
@click =" activateMajor(id)"
38
44
:class =" [
46
52
<p
47
53
:style =" {
48
54
'font-weight': id === displayedMajorIndex ? '500' : '',
49
- color: id === displayedMajorIndex ? `#${reqGroupColorMap[req.groupName][0]}` : '',
55
+ color:
56
+ id === displayedMajorIndex ? `#${getReqColor(req.groupName, onboardingData)}` : '',
50
57
}"
51
58
class =" major-title-top"
52
59
data-cyId =" majorTitle"
55
62
</p >
56
63
<p
57
64
:style =" {
58
- color: id === displayedMajorIndex ? `#${reqGroupColorMap[req.groupName][0]}` : '',
65
+ color:
66
+ id === displayedMajorIndex ? `#${getReqColor(req.groupName, onboardingData)}` : '',
59
67
}"
60
68
class =" major-title-bottom"
61
69
data-cyId =" collegeTitle"
64
72
</p >
65
73
</button >
66
74
</div >
67
- <div v-if =" reqIndex == numOfColleges + onboardingData.major.length" class =" minor" >
75
+ <div
76
+ v-if =" reqIndex == numOfColleges + onboardingData.major.length && req.groupName === 'Minor'"
77
+ class =" minor"
78
+ >
68
79
<button
69
80
:style =" {
70
81
'border-bottom':
71
- id === displayedMinorIndex ? `2px solid #${reqGroupColorMap[req.groupName][0]}` : '',
82
+ id === displayedMinorIndex
83
+ ? `2px solid #${getReqColor(req.groupName, onboardingData)}`
84
+ : '',
72
85
}"
73
86
@click =" activateMinor(id)"
74
87
:class =" [
82
95
<p
83
96
:style =" {
84
97
'font-weight': id === displayedMinorIndex ? '500' : '',
85
- color: id === displayedMinorIndex ? `#${reqGroupColorMap[req.groupName][0]}` : '',
98
+ color:
99
+ id === displayedMinorIndex ? `#${getReqColor(req.groupName, onboardingData)}` : '',
86
100
}"
87
101
class =" minor-title-top"
88
102
>
91
105
<!-- <p :style="{'color': minor.display ? `#${reqGroupColorMap[req.group][0]}` : ''}" class="minor-title-bottom">({{user.collegeFN}})</p> Change for multiple colleges -->
92
106
</button >
93
107
</div >
108
+ <div v-if =" req.groupName === 'Grad'" class =" grad" >
109
+ <button
110
+ :style =" {
111
+ 'border-bottom': `2px solid #${getReqColor(req.groupName, onboardingData)}`,
112
+ }"
113
+ class =" grad-title-button grad-title full-opacity-on-hover"
114
+ :disabled =" true"
115
+ >
116
+ <p
117
+ :style =" {
118
+ 'font-weight': '500',
119
+ color: `#${getReqColor(req.groupName, onboardingData)}`,
120
+ }"
121
+ class =" grad-title-top"
122
+ >
123
+ {{ getGradFullName(onboardingData.grad) }}
124
+ </p >
125
+ </button >
126
+ </div >
94
127
95
128
<!-- progress bar settings -->
96
129
<div v-if =" showMajorOrMinorRequirements" >
97
130
<div class =" progress" >
98
131
<div
99
132
class =" progress-bar"
100
133
:style =" {
101
- 'background-color': `#${reqGroupColorMap[ req.groupName][0] }`,
134
+ 'background-color': `#${getReqColor( req.groupName, onboardingData) }`,
102
135
width: progressWidth,
103
136
}"
104
137
role =" progressbar"
124
157
data-toggle =" dropdown"
125
158
data-cyId =" requirements-viewMore"
126
159
>
127
- <div class =" col-1 p-0 btn" :style =" { color: `#${reqGroupColorMap[req.groupName][0]}` }" >
160
+ <div
161
+ class =" col-1 p-0 btn"
162
+ :style =" { color: `#${getReqColor(req.groupName, onboardingData)}` }"
163
+ >
128
164
<drop-down-arrow
129
165
:isFlipped =" displayDetails"
130
- :fillColor =" `#${reqGroupColorMap[ req.groupName][0] }`"
166
+ :fillColor =" `#${getReqColor( req.groupName, onboardingData) }`"
131
167
:isHeader =" true"
132
168
/>
133
169
</div >
134
- <div class =" req-name col p-0" :style =" { color: `#${reqGroupColorMap[req.groupName][0]}` }" >
170
+ <div
171
+ class =" req-name col p-0"
172
+ :style =" { color: `#${getReqColor(req.groupName, onboardingData)}` }"
173
+ >
135
174
{{ displayDetails ? 'Hide' : 'View' }} All {{ req.groupName }} Requirements
136
175
</div >
137
176
</button >
142
181
<script lang="ts">
143
182
import { PropType , defineComponent } from ' vue' ;
144
183
import DropDownArrow from ' @/components/DropDownArrow.vue' ;
145
- import { getCollegeFullName , getMajorFullName , getMinorFullName } from ' @/utilities' ;
184
+ import {
185
+ getCollegeFullName ,
186
+ getMajorFullName ,
187
+ getMinorFullName ,
188
+ getGradFullName ,
189
+ getReqColor ,
190
+ } from ' @/utilities' ;
146
191
147
192
export default defineComponent ({
148
193
components: { DropDownArrow },
@@ -152,10 +197,6 @@ export default defineComponent({
152
197
displayedMajorIndex: { type: Number , required: true },
153
198
displayedMinorIndex: { type: Number , required: true },
154
199
req: { type: Object as PropType <GroupedRequirementFulfillmentReport >, required: true },
155
- reqGroupColorMap: {
156
- type: Object as PropType <Readonly <Record <string , string []>>>,
157
- required: true ,
158
- },
159
200
onboardingData: { type: Object as PropType <AppOnboardingData >, required: true },
160
201
showMajorOrMinorRequirements: { type: Boolean , required: true },
161
202
numOfColleges: { type: Number , required: true },
@@ -212,6 +253,8 @@ export default defineComponent({
212
253
getCollegeFullName ,
213
254
getMajorFullName ,
214
255
getMinorFullName ,
256
+ getGradFullName ,
257
+ getReqColor ,
215
258
toggleDetails() {
216
259
this .$emit (' toggleDetails' );
217
260
},
@@ -230,7 +273,8 @@ export default defineComponent({
230
273
231
274
.college ,
232
275
.major ,
233
- .minor {
276
+ .minor ,
277
+ .grad {
234
278
display : flex ;
235
279
padding-bottom : 25px ;
236
280
& -title {
0 commit comments