import styles from "./SearchBar.module.css" import {Link} from "react-router"; import {useEffect, useState} from "react"; import searchEvents from "../../utils/events/searchEvents.js"; import searchUsers from "../../utils/users/searchUsers.js"; import { useLocation } from "react-router"; function SearchBar() { const [searchQuery, setSearchQuery] = useState(''); const [searchResults, setSearchResults] = useState([]); const location = useLocation(); useEffect(() => { const performSearch = async (query) => { if (query.trim() === '') { setSearchResults([]); return; } let data; if (location.pathname.includes("events")) { data = await searchEvents(query); } else if (location.pathname.includes("volunteers")) { data = await searchUsers(query); } if (data) { setSearchResults(data); } else { setSearchResults([]); } }; const handler = setTimeout(() => { performSearch(searchQuery); }, 300); return () => { clearTimeout(handler); }; }, [searchQuery]); return (
element.preventDefault()}> Rechercher setSearchQuery(element.target.value)} />
{searchResults.length > 0 ? (
) : null}
{searchResults.map((result, i) => ( (location.pathname.includes("events")) ? (
{result.image == null ? ( Pas de photo de l'événement ) : ( Photo de l'événement )}

{result.name}

) : location.pathname.includes("volunteers") ? (
{result.image == null ? ( Pas de photo de l'événement ) : ( Photo de l'événement )}

{result.name} {result.lastname}

) : null ))}
); } export default SearchBar;