Skip to content

Commit 79f5589

Browse files
kevin-lanngithub-actions[bot]
authored andcommitted
Auto-formatted the code using Prettier
1 parent 2b969b6 commit 79f5589

File tree

2 files changed

+95
-64
lines changed

2 files changed

+95
-64
lines changed

course-matrix/frontend/src/pages/Compare/CompareTimetables.tsx

Lines changed: 92 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1-
import { useGetTimetableQuery, useGetTimetablesQuery } from "@/api/timetableApiSlice";
1+
import {
2+
useGetTimetableQuery,
3+
useGetTimetablesQuery,
4+
} from "@/api/timetableApiSlice";
25
import { Button } from "@/components/ui/button";
36
import { Timetable, TimetableEvents } from "@/utils/type-utils";
47
import { useEffect, useState } from "react";
@@ -11,13 +14,25 @@ import { useForm } from "react-hook-form";
1114
import { z } from "zod";
1215
import { CompareFormSchema } from "../Home/TimetableCompareButton";
1316
import { format } from "path";
14-
import { Form, FormControl, FormField, FormItem, FormLabel, FormMessage } from "@/components/ui/form";
15-
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select";
17+
import {
18+
Form,
19+
FormControl,
20+
FormField,
21+
FormItem,
22+
FormLabel,
23+
FormMessage,
24+
} from "@/components/ui/form";
25+
import {
26+
Select,
27+
SelectContent,
28+
SelectItem,
29+
SelectTrigger,
30+
SelectValue,
31+
} from "@/components/ui/select";
1632
import { SemesterIcon } from "@/components/semester-icon";
1733
import { GitCompareArrows } from "lucide-react";
1834

1935
export const CompareTimetables = () => {
20-
2136
const [timetable1, setTimetable1] = useState<Timetable>();
2237
const [timetable2, setTimetable2] = useState<Timetable>();
2338
const [offeringIds1, setOfferingIds1] = useState<number[]>();
@@ -27,55 +42,55 @@ export const CompareTimetables = () => {
2742
const compareForm = useForm<z.infer<typeof CompareFormSchema>>({
2843
resolver: zodResolver(CompareFormSchema),
2944
});
30-
45+
3146
const onSubmit = (values: z.infer<typeof CompareFormSchema>) => {
3247
console.log("Compare Form submitted:", values);
3348
const timetableId1 = compareForm.getValues("timetable1");
3449
const timetableId2 = compareForm.getValues("timetable2");
35-
setTimetable1(timetables.find(t => t.id === timetableId1))
36-
refetchEvents1()
37-
setTimetable2(timetables.find(t => t.id === timetableId2))
38-
refetchEvents2()
50+
setTimetable1(timetables.find((t) => t.id === timetableId1));
51+
refetchEvents1();
52+
setTimetable2(timetables.find((t) => t.id === timetableId2));
53+
refetchEvents2();
3954
};
4055

41-
const { data: timetables, isLoading, refetch } = useGetTimetablesQuery() as {
42-
data: Timetable[];
43-
isLoading: boolean;
44-
refetch: () => void;
45-
};
46-
47-
const { data: timetableEventsData1, refetch: refetchEvents1 } = useGetEventsQuery(
48-
compareForm.getValues("timetable1") ?? undefined,
49-
{
50-
skip: compareForm.getValues("timetable1") === undefined
51-
}
52-
) as {
53-
data: TimetableEvents;
54-
refetch: () => void;
55-
};
56-
const { data: timetableEventsData2, refetch: refetchEvents2 } = useGetEventsQuery(
57-
compareForm.getValues("timetable2"),
58-
{
59-
skip: compareForm.getValues("timetable2") === undefined
60-
}
61-
) as {
62-
data: TimetableEvents;
56+
const {
57+
data: timetables,
58+
isLoading,
59+
refetch,
60+
} = useGetTimetablesQuery() as {
61+
data: Timetable[];
62+
isLoading: boolean;
6363
refetch: () => void;
6464
};
6565

66+
const { data: timetableEventsData1, refetch: refetchEvents1 } =
67+
useGetEventsQuery(compareForm.getValues("timetable1") ?? undefined, {
68+
skip: compareForm.getValues("timetable1") === undefined,
69+
}) as {
70+
data: TimetableEvents;
71+
refetch: () => void;
72+
};
73+
const { data: timetableEventsData2, refetch: refetchEvents2 } =
74+
useGetEventsQuery(compareForm.getValues("timetable2"), {
75+
skip: compareForm.getValues("timetable2") === undefined,
76+
}) as {
77+
data: TimetableEvents;
78+
refetch: () => void;
79+
};
80+
6681
useEffect(() => {
6782
if (queryParams.has("id1") && timetables) {
6883
const id = parseInt(queryParams.get("id1") || "0");
6984
compareForm.setValue("timetable1", id);
70-
setTimetable1(timetables.find(t => t.id === id));
85+
setTimetable1(timetables.find((t) => t.id === id));
7186
}
7287
}, [timetables]);
7388

7489
useEffect(() => {
7590
if (queryParams.has("id2") && timetables) {
7691
const id = parseInt(queryParams.get("id2") || "0");
7792
compareForm.setValue("timetable2", id);
78-
setTimetable2(timetables.find(t => t.id === id));
93+
setTimetable2(timetables.find((t) => t.id === id));
7994
}
8095
}, [timetables]);
8196

@@ -131,20 +146,21 @@ export const CompareTimetables = () => {
131146
</SelectTrigger>
132147
</FormControl>
133148
<SelectContent>
134-
{timetables && timetables.map((timetable) => (
135-
<SelectItem
136-
key={timetable.id}
137-
value={timetable.id.toString()}
138-
>
139-
<div className="flex items-center gap-2">
140-
<SemesterIcon
141-
semester={timetable.semester}
142-
size={18}
143-
/>
144-
<span>{timetable.timetable_title}</span>
145-
</div>
146-
</SelectItem>
147-
))}
149+
{timetables &&
150+
timetables.map((timetable) => (
151+
<SelectItem
152+
key={timetable.id}
153+
value={timetable.id.toString()}
154+
>
155+
<div className="flex items-center gap-2">
156+
<SemesterIcon
157+
semester={timetable.semester}
158+
size={18}
159+
/>
160+
<span>{timetable.timetable_title}</span>
161+
</div>
162+
</SelectItem>
163+
))}
148164
</SelectContent>
149165
</Select>
150166
<FormMessage />
@@ -169,20 +185,21 @@ export const CompareTimetables = () => {
169185
</SelectTrigger>
170186
</FormControl>
171187
<SelectContent>
172-
{timetables && timetables.map((timetable) => (
173-
<SelectItem
174-
key={timetable.id}
175-
value={timetable.id.toString()}
176-
>
177-
<div className="flex items-center gap-2">
178-
<SemesterIcon
179-
semester={timetable.semester}
180-
size={18}
181-
/>
182-
<span>{timetable.timetable_title}</span>
183-
</div>
184-
</SelectItem>
185-
))}
188+
{timetables &&
189+
timetables.map((timetable) => (
190+
<SelectItem
191+
key={timetable.id}
192+
value={timetable.id.toString()}
193+
>
194+
<div className="flex items-center gap-2">
195+
<SemesterIcon
196+
semester={timetable.semester}
197+
size={18}
198+
/>
199+
<span>{timetable.timetable_title}</span>
200+
</div>
201+
</SelectItem>
202+
))}
186203
</SelectContent>
187204
</Select>
188205
<FormMessage />
@@ -204,7 +221,13 @@ export const CompareTimetables = () => {
204221
<div className="w-1/2">
205222
{!offeringIds1 ? (
206223
<>
207-
{queryParams.has("id1") ? <Spinner /> : <div className="w-full text-center py-[8rem] text-sm bg-gray-100/50 rounded">Select a timetable to compare</div>}
224+
{queryParams.has("id1") ? (
225+
<Spinner />
226+
) : (
227+
<div className="w-full text-center py-[8rem] text-sm bg-gray-100/50 rounded">
228+
Select a timetable to compare
229+
</div>
230+
)}
208231
</>
209232
) : (
210233
<Calendar
@@ -221,7 +244,13 @@ export const CompareTimetables = () => {
221244
<div className="w-1/2">
222245
{!offeringIds2 ? (
223246
<>
224-
{queryParams.has("id2") ? <Spinner /> : <div className="w-full text-center py-[8rem] text-sm bg-gray-100/50 rounded">Select a timetable to compare</div>}
247+
{queryParams.has("id2") ? (
248+
<Spinner />
249+
) : (
250+
<div className="w-full text-center py-[8rem] text-sm bg-gray-100/50 rounded">
251+
Select a timetable to compare
252+
</div>
253+
)}
225254
</>
226255
) : (
227256
<Calendar

course-matrix/frontend/src/pages/Dashboard/Dashboard.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,9 @@ const Dashboard = () => {
6565
) : location.pathname.startsWith(
6666
"/dashboard/compare",
6767
) ? (
68-
<Link to="/dashboard/compare">Timetable Compare</Link>
68+
<Link to="/dashboard/compare">
69+
Timetable Compare
70+
</Link>
6971
) : (
7072
<></>
7173
)}

0 commit comments

Comments
 (0)