@@ -8,12 +8,11 @@ const glossarySearch = (query) => {
11−export default function Search() {
11+export default function Search(props) {
12 const searchRef = useRef(null);
12 const searchRef = useRef(null);
13 const [query, SetQuery] = useState("");
13 const [query, SetQuery] = useState("");
14 const [active, setActive] = useState(false);
14 const [active, setActive] = useState(false);
15 const [results, setResults] = useState([]);
15 const [results, setResults] = useState([]);
16− const [hidden, toggle] = useState(true);
17 const searchEndpoint = (query) => `/api/search?q=${query}`;
16 const searchEndpoint = (query) => `/api/search?q=${query}`;
19 const onChange = useCallback((event) => {
18 const onChange = useCallback((event) => {
@@ -39,6 +38,7 @@ export default function Search() {
39 if (searchRef.current && !searchRef.current.contains(event.target)) {
38 if (searchRef.current && !searchRef.current.contains(event.target)) {
40 setActive(false);
39 setActive(false);
41 window.removeEventListener("click", onClick);
40 window.removeEventListener("click", onClick);
41+ props.toggleSearch();
@@ -52,15 +52,9 @@ export default function Search() {
57− "fixed w-screen h-screen bg-black bg-opacity-30 z-50 flex flex-col " +
55+ <div className="fixed w-screen h-screen bg-black bg-opacity-30 z-50 flex flex-col">
58− (hidden ? "hidden" : "")
62 <div className="p-12 w-100 flex flex-col min-h-0">
56 <div className="p-12 w-100 flex flex-col min-h-0">
63− <div className="relative flex flex-col">
57+ <div className="relative flex flex-col" ref={searchRef}>
65 className="bg-white type-ui text-green rounded-xl border-transparent p-2 outline-none relative"
59 className="bg-white type-ui text-green rounded-xl border-transparent p-2 outline-none relative"
66 onChange={onChange}
60 onChange={onChange}
@@ -68,6 +62,7 @@ export default function Search() {
68 placeholder="Search..."
62 placeholder="Search..."
69 type="text"
63 type="text"
70 value={query}
64 value={query}
72 {query.length > 0 && (
67 {query.length > 0 && (