diff --git a/src/client/DomandeEsamiCourse.tsx b/src/client/DomandeEsamiCourse.tsx index 09ea675..d61d1b6 100644 --- a/src/client/DomandeEsamiCourse.tsx +++ b/src/client/DomandeEsamiCourse.tsx @@ -19,8 +19,6 @@ import type { Database } from '@/data/domande-esami.yaml' const useRemoteValue = (url: string): T | null => { const [value, setValue] = useState(null) - console.log('fetching', url, value) - useEffect(() => { fetch(url) .then(response => response.json()) @@ -55,13 +53,11 @@ export const DomandeEsamiCourse = ({ course }: Props) => { ), ] - const [selectedTags, setSelectedTags] = useState([]) + const [selectedTag, setSelectedTag] = useState(null) const filteredQuestions = database.questions .filter(question => question.course === course) - .filter(question => selectedTags.length === 0 || selectedTags.every(tag => question.tags.includes(tag))) - - console.log('filteredQuestions', filteredQuestions) + .filter(question => (selectedTag ? question.tags.includes(selectedTag) : true)) return ( <> @@ -72,39 +68,34 @@ export const DomandeEsamiCourse = ({ course }: Props) => {

{database.names[course]}

-
-
- - Filtra Tag -
-
- {selectedTags.length === 0 - ? courseTags.map(tag => ( -
setSelectedTags([tag])}> - {tag} -
- )) - : courseTags.map(tag => ( -
- setSelectedTags( - selectedTags.includes(tag) - ? selectedTags.filter(t => t !== tag) - : [...selectedTags, tag], - ) - } - > - {tag} -
- ))} + {courseTags.length > 1 && ( +
+
+ + Filtra Tag +
+
+ {!selectedTag + ? courseTags.map(tag => ( +
setSelectedTag(tag)}> + {tag} +
+ )) + : courseTags.map(tag => ( +
setSelectedTag(tag === selectedTag ? null : tag)} + > + {tag} +
+ ))} +
-
+ )}
{filteredQuestions.length === 0 ? (
No questions found -
) : ( filteredQuestions.map(question => (