← back to Homesonspec
apps/web/src/app/search/page.tsx
22 lines
import SearchClient from "./SearchClient";
export const dynamic = "force-dynamic";
// Pass the FULL query string through so the grid's drill atoms are URL-addressable:
// /search?city=Austin&status=MOVE_IN_READY&st=TX deep-links straight into a
// pre-filtered grid (href-drill rule: URL-addressable filters).
export default async function SearchPage({
searchParams,
}: {
searchParams: Promise<Record<string, string | string[] | undefined>>;
}) {
const sp = await searchParams;
const params = new URLSearchParams();
for (const [k, v] of Object.entries(sp)) {
if (Array.isArray(v)) v.forEach((x) => params.append(k, x));
else if (v !== undefined) params.set(k, v);
}
const q = typeof sp.q === "string" ? sp.q : "";
return <SearchClient initialQuery={q} initialParams={params.toString()} />;
}