Skip to content

Commit ed1bfa6

Browse files
committed
fix: update styles
1 parent 77afa88 commit ed1bfa6

23 files changed

+80
-66
lines changed

website/src/apis/optimiser.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import axios, { AxiosError } from 'axios';
22

3-
const api = '/api/optimiser/optimise';
3+
const api = 'https://nusmods.com/api/optimiser/optimise';
44

55
export interface OptimiseRequest {
66
modules: string[];

website/src/utils/optimiser.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,8 @@ export function getOptimiserAcadYear(acadYear: AcadYear): string {
4949
}
5050

5151
export function getOptimiserTime(time: LessonTime): string {
52-
const hh = padStart(`${getLessonTimeHours(time)}`, 2, '0');
53-
const mm = padStart(`${getLessonTimeMinutes(time)}`, 2, '0');
52+
const hh = padStart(String(getLessonTimeHours(time)), 2, '0');
53+
const mm = padStart(String(getLessonTimeMinutes(time)), 2, '0');
5454
return `${hh}:${mm}`;
5555
}
5656

website/src/views/hooks/useOptimiserForm.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,11 @@ export type OptimiserFormFields = {
2727
setMaxConsecutiveHours: Dispatch<SetStateAction<number>>;
2828
};
2929

30+
// TODO: leslieyip02 - consider using react-hook-form
31+
// https://github.com/nusmodifications/nusmods/pull/4094#discussion_r2209166244
3032
export default function useOptimiserForm(): OptimiserFormFields {
3133
const [liveLessonOptions, setLiveLessonOptions] = useState<LessonOption[]>([]);
32-
const [freeDays, setFreeDays] = useState<Set<DayText>>(new Set());
34+
const [freeDays, setFreeDays] = useState(new Set<DayText>());
3335
const [lessonTimeRange, setLessonTimeRange] = useState(defaultLessonTimeRange);
3436
const [maxConsecutiveHours, setMaxConsecutiveHours] = useState(defaultMaxConsecutiveHours);
3537
const [lunchTimeRange, setLunchTimeRange] = useState(defaultLunchTimeRange);

website/src/views/optimiser/OptimiserButton.scss

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
@import '~styles/utils/modules-entry.scss';
22

33
@keyframes grow {
4-
0%, 100% {
5-
opacity: 0.5;
4+
0%,
5+
100% {
6+
opacity: 0.5;
67
transform: scale(0.8);
78
}
89
50% {
9-
opacity: 1;
10+
opacity: 1;
1011
transform: scale(1.2);
1112
}
1213
}
@@ -19,7 +20,6 @@
1920
animation: grow 1s ease-in-out infinite;
2021
}
2122

22-
// Optimize button section
2323
.optimizeButtonSection {
2424
display: flex;
2525
flex-direction: column;
@@ -90,4 +90,12 @@
9090

9191
.estimateTimeValue {
9292
font-weight: bold;
93-
}
93+
}
94+
95+
.zapIcon {
96+
fill: #ff5138;
97+
98+
&.disabled {
99+
fill: #69707a;
100+
}
101+
}

website/src/views/optimiser/OptimiserButton.tsx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ const OptimiserButton: React.FC<OptimiserButtonProps> = ({
1818
onClick,
1919
}) => {
2020
const isDisabled = isOptimising || isEmpty(lessonOptions) || !isEmpty(freeDayConflicts);
21-
const zapFill = isEmpty(lessonOptions) || !isEmpty(freeDayConflicts) ? '#69707a' : '#ff5138';
2221

2322
return (
2423
<div className={styles.optimizeButtonSection}>
@@ -39,7 +38,12 @@ const OptimiserButton: React.FC<OptimiserButtonProps> = ({
3938
</span>
4039
) : (
4140
<>
42-
<Zap size={20} fill={zapFill} />
41+
<Zap
42+
size={20}
43+
className={classnames(styles.zapIcon, {
44+
[styles.disabled]: isDisabled,
45+
})}
46+
/>
4347
Optimise Timetable
4448
</>
4549
)}
File renamed without changes.

website/src/views/optimiser/OptimiserContent.tsx renamed to website/src/views/optimiser/OptimiserContainer/OptimiserContent.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ import {
1919
import { FreeDayConflict, LessonOption } from 'types/optimiser';
2020
import useOptimiserForm from 'views/hooks/useOptimiserForm';
2121
import styles from './OptimiserContent.scss';
22-
import OptimiserHeader from './OptimiserHeader';
23-
import OptimiserForm from './OptimiserForm/OptimiserForm';
24-
import OptimiserButton from './OptimiserButton';
25-
import OptimiserResults from './OptimiserResults';
22+
import OptimiserHeader from '../OptimiserHeader';
23+
import OptimiserForm from '../OptimiserForm/OptimiserForm';
24+
import OptimiserButton from '../OptimiserButton';
25+
import OptimiserResults from '../OptimiserResults';
2626

2727
const OptimiserContent: React.FC = () => {
2828
const activeSemester = useSelector(({ app }: State) => app.activeSemester);
File renamed without changes.

website/src/views/optimiser/OptimiserForm/OptimiserForm.scss

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -39,22 +39,11 @@
3939
}
4040

4141
.optimiserDropdown {
42-
width: 6.4rem;
43-
padding: 0.25rem 0.75rem;
44-
padding-left: 0.9rem;
42+
composes: custom-select from global;
43+
padding: 0.5rem;
4544
border: 1px solid var(--gray-lighter);
4645
border-radius: 0.25rem;
47-
outline: none;
48-
font-size: 1.1rem;
49-
font-family: monospace;
5046
color: inherit;
51-
background-image: url("data:image/svg+xml;charset=US-ASCII,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'><path fill='%23666' d='M2 0L0 2h4zm0 5L0 3h4z'/></svg>");
52-
background-position: right 0.7rem center;
53-
background-size: 0.85rem;
54-
background-repeat: no-repeat;
55-
background-color: transparent;
56-
appearance: none;
57-
cursor: pointer;
5847

5948
@include night-mode {
6049
background-color: var(--gray-lightest);

website/src/views/optimiser/OptimiserForm/OptimiserFormTooltip.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ type Props = {
99

1010
const OptimiserFormTooltip: React.FC<Props> = ({ content }) => (
1111
<Tooltip content={content} placement="right">
12-
<Info className={styles.optimiserTooltipIcon} />
12+
<Info className={styles.optimiserTooltipIcon} tabIndex={0} />
1313
</Tooltip>
1414
);
1515

0 commit comments

Comments
 (0)