"use client"; import { useState, useEffect } from "react"; import { useSearchParams } from "next/navigation"; import { SearchFilters } from "@/components/search/filters"; import { SearchResults } from "@/components/search/results"; import { searchApi } from "@/lib/api/search"; import { SearchResult, SearchFilters as FilterType } from "@/types/search"; export default function SearchPage() { const searchParams = useSearchParams(); const query = searchParams.get("q") || ""; const [results, setResults] = useState([]); const [filters, setFilters] = useState({}); const [loading, setLoading] = useState(false); useEffect(() => { const fetchResults = async () => { setLoading(true); try { const data = await searchApi.search({ query, ...filters }); setResults(data); } catch (error) { console.error("Search failed", error); } finally { setLoading(false); } }; fetchResults(); }, [query, filters]); return (

Search Results

{loading ? "Searching..." : `Found ${results.length} results for "${query}"` }

); }