Use searchBarBtn component

This commit is contained in:
T'JAMPENS QUENTIN p2406187 committed 2026-02-11 15:35:18 +01:00
1 parent ed90671693
commit 171a202859
1 file changed
+3 -26
+3 -26
View File
@@ -1,50 +1,27 @@
import styles from "./ToolBar.module.css" import styles from "./ToolBar.module.css"
import Filter from "../Filter/Filter.jsx"; import Filter from "../Filter/Filter.jsx";
import {useContext, useEffect, useState} from "react"; import {useContext, useEffect, useState} from "react";
import SearchBar from "../SearchBar/SearchBar.jsx"; use import SearchBar from "../SearchBar/SearchBar.tsx";
import CreateEventBtn from "../createEventBtn/CreateEventBtn.jsx"; import CreateEventBtn from "../createEventBtn/CreateEventBtn.jsx";
import Button from "../ui/button/button.tsx"; import Button from "../ui/button/button.tsx";
import {AuthContext} from "../../contexts/auth/AuthContext.js"; import {AuthContext} from "../../contexts/auth/AuthContext.js";
import SearchBtn from "./components/searchBtn/SearchBtn.tsx";
function ToolBar({setFilters, filters, showCreate = true}) { function ToolBar({setFilters, filters, showCreate = true}) {
const { user } = useContext(AuthContext); const { user } = useContext(AuthContext);
const [isFilterVisible, setIsFilterVisible] = useState(false); const [isFilterVisible, setIsFilterVisible] = useState(false);
const [isSearchVisible, setIsSearchVisible] = useState(false);
const toggleFilters = () => { const toggleFilters = () => {
setIsFilterVisible(prev => !prev); setIsFilterVisible(prev => !prev);
}; };
useEffect(() => {
if (isSearchVisible) {
document.documentElement.style.overflow = 'hidden';
} else {
document.documentElement.style.overflow = '';
}
return () => {
document.documentElement.style.overflow = '';
};
}, [isSearchVisible]);
return ( return (
<div> <div>
{isSearchVisible ? (
<div className={styles.searchBarContainer}>
<div className={styles.searchBarOverlay} onClick={() => setIsSearchVisible(false)}></div>
<SearchBar/>
</div>
) : null}
<div className={styles.eventsButtons}> <div className={styles.eventsButtons}>
{showCreate && user.isAdmin ? ( {showCreate && user.isAdmin ? (
<CreateEventBtn /> <CreateEventBtn />
) : null} ) : null}
<Button className={`${styles.searchButton} glassCard`} variant={"default"} onClick={() => setIsSearchVisible(true)}> <SearchBtn />
<img src="search.svg" alt="Rechercher"/>
</Button>
<div className={`${styles.filterContainer} ${isFilterVisible ? "glassCard" : ""}`}> <div className={`${styles.filterContainer} ${isFilterVisible ? "glassCard" : ""}`}>
<Button className={`${isFilterVisible ? "" : styles.mobileFilter} ${styles.sortButton} glassCard`} variant={"default"} onClick={toggleFilters}> <Button className={`${isFilterVisible ? "" : styles.mobileFilter} ${styles.sortButton} glassCard`} variant={"default"} onClick={toggleFilters}>