Skip to content

Commit bf5ff5f

Browse files
committed
fixed pagination issues
1 parent b31697c commit bf5ff5f

3 files changed

Lines changed: 33 additions & 19 deletions

File tree

next.config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ await import("./src/env.js");
88
const config = {
99
swcMinify: false,
1010
images: {
11-
domains: ["storage.googleapis.com"],
11+
domains: ["storage.googleapis.com", "res.cloudinary.com"],
1212
},
1313
async headers() {
1414
return [

src/components/CatalogueContent.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,6 @@ const CatalogueContentInner = ({ subject }: { subject: string | null }) => {
207207
answerkeyCondition
208208
);
209209
});
210-
setCurrentPage(1);
211210
setFilteredPapers(filtered);
212211
setAppliedFilters(
213212
selectedExams.length > 0 ||

src/components/SideBar.tsx

Lines changed: 32 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,18 @@ function SideBar() {
1717
selectedAnswerKeyIncluded,
1818
filterOptions,
1919
handleApplyFilters,
20+
setCurrentPage,
2021
} = useFilters();
2122
const exams =
22-
filterOptions?.unique_exams.map((exam) => ({ label: exam, value: exam })) ?? [];
23+
filterOptions?.unique_exams.map((exam) => ({ label: exam, value: exam })) ??
24+
[];
2325
const slots =
2426
filterOptions?.unique_slots
2527
.sort((a, b) => a.localeCompare(b, undefined, { numeric: true }))
2628
.map((slot) => ({ label: slot, value: slot })) ?? [];
2729
const years =
2830
filterOptions?.unique_years
29-
.sort((a, b) => b.localeCompare(a))
31+
.sort((a, b) => b.localeCompare(a))
3032
.map((year) => ({ label: year, value: year })) ?? [];
3133
const semesters =
3234
filterOptions?.unique_semesters.map((semester) => ({
@@ -39,57 +41,69 @@ function SideBar() {
3941
label: "Exams",
4042
data: exams,
4143
selected: selectedExams,
42-
updater: (newVal: string[]) =>
44+
updater: (newVal: string[]) => {
4345
handleApplyFilters(
4446
newVal,
4547
selectedSlots,
4648
selectedYears,
4749
selectedCampuses,
4850
selectedSemesters,
49-
selectedAnswerKeyIncluded
50-
),
51+
selectedAnswerKeyIncluded,
52+
);
53+
setCurrentPage(1);
54+
console.log("Filtered Papers");
55+
},
5156
},
5257
{
5358
label: "Slots",
5459
data: slots,
5560
selected: selectedSlots,
56-
updater: (newVal: string[]) =>
61+
updater: (newVal: string[]) => {
5762
handleApplyFilters(
5863
selectedExams,
5964
newVal,
6065
selectedYears,
6166
selectedCampuses,
6267
selectedSemesters,
63-
selectedAnswerKeyIncluded
64-
),
68+
selectedAnswerKeyIncluded,
69+
);
70+
setCurrentPage(1);
71+
console.log("Filtered Papers");
72+
},
6573
},
6674
{
6775
label: "Years",
6876
data: years,
6977
selected: selectedYears,
70-
updater: (newVal: string[]) =>
78+
updater: (newVal: string[]) => {
7179
handleApplyFilters(
7280
selectedExams,
7381
selectedSlots,
7482
newVal,
7583
selectedCampuses,
7684
selectedSemesters,
77-
selectedAnswerKeyIncluded
78-
),
85+
selectedAnswerKeyIncluded,
86+
);
87+
setCurrentPage(1);
88+
console.log("Filtered Papers");
89+
},
7990
},
8091
{
8192
label: "Semesters",
8293
data: semesters,
8394
selected: selectedSemesters,
84-
updater: (newVal: string[]) =>
95+
updater: (newVal: string[]) => {
8596
handleApplyFilters(
8697
selectedExams,
8798
selectedSlots,
8899
selectedYears,
89100
selectedCampuses,
90101
newVal,
91-
selectedAnswerKeyIncluded
92-
),
102+
selectedAnswerKeyIncluded,
103+
);
104+
setCurrentPage(1);
105+
console.log("Filtered Papers");
106+
},
93107
},
94108
];
95109

@@ -100,7 +114,9 @@ function SideBar() {
100114
<Filter size={24} />
101115
<div className="font-play text-xl font-bold">Filters</div>
102116
</div>
103-
<SidebarButton onClick={() => handleApplyFilters([], [], [], [], [], false)}>
117+
<SidebarButton
118+
onClick={() => handleApplyFilters([], [], [], [], [], false)}
119+
>
104120
Reset Filters
105121
</SidebarButton>
106122
</div>
@@ -115,15 +131,14 @@ function SideBar() {
115131
selectedYears,
116132
selectedCampuses,
117133
selectedSemesters,
118-
!selectedAnswerKeyIncluded
134+
!selectedAnswerKeyIncluded,
119135
)
120136
}
121137
>
122138
Answer Key Available
123139
</SidebarButton>
124140
</div>
125141

126-
127142
{filtersForSidebar.map((section) => (
128143
<SidebarSection
129144
key={section.label}

0 commit comments

Comments
 (0)