From aa51ae523dd548de8c695e840d0295edf9825c60 Mon Sep 17 00:00:00 2001 From: Nathan Lamy Date: Tue, 19 Aug 2025 17:03:36 +0200 Subject: [PATCH] fix: filter disappearing --- app/components/home/index.tsx | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/app/components/home/index.tsx b/app/components/home/index.tsx index 5439708..371894c 100644 --- a/app/components/home/index.tsx +++ b/app/components/home/index.tsx @@ -103,12 +103,21 @@ export default function Home({ user }: { user: User }) { setSort(newSort); }; - const keepUnique = (arr: any[]) => { - return [...new Set(arr)]; + const generateFilter = (arr: string[], value: string) => { + const unique = [...new Set(arr)]; + if (value && !unique.includes(value)) { + unique.push(value); + } + unique.sort((a, b) => a.localeCompare(b)); + return unique; }; - const subjects = keepUnique(classColles.map((colle) => colle.subject?.name)); - const examiners = keepUnique( - classColles.map((colle) => colle.examiner?.name) + const subjects = generateFilter( + classColles.map((colle) => colle.subject?.name), + subjectFilter + ); + const examiners = generateFilter( + classColles.map((colle) => colle.examiner?.name), + examinerFilter ); const applyFilters = (colles: any[]) => { @@ -198,7 +207,6 @@ export default function Home({ user }: { user: User }) { Tous - {/* TODO: */} {examiners.map((examiner) => ( {examiner}