import { useEffect, useRef, useState } from "react"; import useDebounce from "react-use/lib/useDebounce"; import { useFilterStore } from "@/store/module"; import { useTranslate } from "@/utils/i18n"; import Icon from "./Icon"; const SearchBar = () => { const t = useTranslate(); const filterStore = useFilterStore(); const [queryText, setQueryText] = useState(""); const inputRef = useRef(null); useEffect(() => { const text = filterStore.getState().text; setQueryText(text === undefined ? "" : text); }, [filterStore.state.text]); useDebounce( () => { filterStore.setTextFilter(queryText.length === 0 ? undefined : queryText); }, 200, [queryText] ); const handleTextQueryInput = (event: React.FormEvent) => { const text = event.currentTarget.value; setQueryText(text); }; return (
); }; export default SearchBar;