Skip to content

Commit 98940b4

Browse files
removed old code, added data attribute for max year length, tried to use data attribute to properly size quarters
1 parent 3331b81 commit 98940b4

File tree

4 files changed

+25
-20
lines changed

4 files changed

+25
-20
lines changed

site/src/pages/RoadmapPage/Planner.tsx

+8-1
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import { Button, Modal } from 'react-bootstrap';
2424
import trpc from '../../trpc';
2525
import spawnToast from '../../helpers/toastify';
2626
import { useIsLoggedIn } from '../../hooks/isLoggedIn';
27+
import { PlannerData, PlannerYearData } from '../../types/types';
2728

2829
const Planner: FC = () => {
2930
const dispatch = useAppDispatch();
@@ -140,6 +141,12 @@ const Planner: FC = () => {
140141

141142
const { unitCount, courseCount } = calculatePlannerOverviewStats();
142143

144+
const getMaxYearLen = (years: PlannerData) => {
145+
return years.reduce((maxYearLen: number, year: PlannerYearData) => {
146+
return year.quarters.length > maxYearLen ? year.quarters.length : maxYearLen;
147+
}, 0);
148+
};
149+
143150
return (
144151
<div className="planner">
145152
<Modal
@@ -174,7 +181,7 @@ const Planner: FC = () => {
174181
saveRoadmap={saveRoadmap}
175182
missingPrerequisites={missingPrerequisites}
176183
/>
177-
<section className="years">
184+
<section className="years" data-max-year-len={getMaxYearLen(currentPlanData)}>
178185
{currentPlanData.map((year, yearIndex) => {
179186
return <Year key={yearIndex} yearIndex={yearIndex} data={year} />;
180187
})}

site/src/pages/RoadmapPage/Year.scss

+16-17
Original file line numberDiff line numberDiff line change
@@ -44,33 +44,32 @@
4444
.year-accordion-content {
4545
border-radius: var(--border-radius);
4646
display: grid;
47-
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
4847
gap: 20px;
4948
margin-block: 16px 4px;
5049
}
5150

52-
@media only screen and (min-width: 1648px) {
53-
.year-accordion-content-length-3 {
54-
grid-template-columns: repeat(auto-fill, minmax(333px, 1fr));
55-
}
51+
.years[data-max-year-len='1'] .year-accordion-content {
52+
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
5653
}
5754

58-
@media only screen and (min-width: 1918px) {
59-
.year-accordion-content-length-4 {
60-
grid-template-columns: repeat(auto-fill, minmax(317px, 1fr));
61-
}
55+
.years[data-max-year-len='2'] .year-accordion-content {
56+
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
6257
}
6358

64-
@media only screen and (min-width: 1980px) {
65-
.year-accordion-content-length-3 {
66-
grid-template-columns: repeat(auto-fill, minmax(390px, 1fr));
67-
}
59+
.years[data-max-year-len='3'] .year-accordion-content {
60+
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
6861
}
6962

70-
@media only screen and (min-width: 2194px) {
71-
.year-accordion-content-length-5 {
72-
grid-template-columns: repeat(auto-fill, minmax(304px, 1fr));
73-
}
63+
.years[data-max-year-len='4'] .year-accordion-content {
64+
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
65+
}
66+
67+
.years[data-max-year-len='5'] .year-accordion-content {
68+
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
69+
}
70+
71+
.years[data-max-year-len='6'] .year-accordion-content {
72+
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
7473
}
7574

7675
.year-accordion-title {

site/src/pages/RoadmapPage/Year.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ const Year: FC<YearProps> = ({ yearIndex, data }) => {
169169
{showContent && (
170170
<>
171171
<hr />
172-
<div className={`year-accordion-content year-accordion-content-length-${data.quarters.length}`}>
172+
<div className="year-accordion-content">
173173
{data.quarters.map((quarter, quarterIndex) => {
174174
return (
175175
<Quarter

site/src/pages/RoadmapPage/index.scss

-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212

1313
.main-wrapper {
1414
width: 80%;
15-
max-width: 1640px;
1615
height: 100%;
1716
overflow-y: auto;
1817
}

0 commit comments

Comments
 (0)