import { NextRequest, NextResponse } from "next/server";
import { searchHorses } from "@/lib/search";

export async function GET(request: NextRequest) {
  const query = request.nextUrl.searchParams.get("q") ?? "";
  const term = query.trim();

if (term.length < 2) {
    return NextResponse.json({ results: [] });
  }

if (term.length > 100) {
    return NextResponse.json(
      { error: "Search query is too long." },
      { status: 400 }
    );
  }

try {
    const results = await searchHorses(term);
    return NextResponse.json({ results });
  } catch (error) {
    console.error("[Search] Database search failed:", error);

return NextResponse.json(
      { error: "Search is temporarily unavailable." },
      { status: 500 }
    );
  }
}