src/app/api/search/route.ts
Linked repository file from this build.
import { NextResponse } from "next/server";
import { apiRoute } from "@/lib/api-route";
import { getActor } from "@/lib/auth/server";
import { querySearchPage, searchSchema } from "@/lib/db/search-store";
export const dynamic = "force-dynamic";
export const GET = apiRoute("Unable to search reviews. Please retry.", async (request) => {
const parsed = searchSchema.safeParse(Object.fromEntries(new URL(request.url).searchParams));
if (!parsed.success)
return NextResponse.json({ error: "Check your search filters." }, { status: 400 });
return NextResponse.json(await querySearchPage(await getActor(request), parsed.data));
});