"use client"; import { MagnifyingGlassIcon } from "@heroicons/react/24/outline"; import { usePathname, useRouter, useSearchParams } from "next/navigation"; import { useDebouncedCallback } from "use-debounce"; var placeholder = ""; export default function Search() { const searchParams = useSearchParams(); const pathname = usePathname(); const { replace } = useRouter(); const handleSearch = useDebouncedCallback((term) => { console.log(`Searching... ${term}`); const params = new URLSearchParams(searchParams); params.set("page", "1"); if (term) { params.set("query", term); } else { params.delete("query"); } replace(`${pathname}?${params.toString()}`); }, 300); return (
{ handleSearch(e.target.value); }} defaultValue={searchParams.get("query")?.toString()} />
); }