import { NextRequest, NextResponse } from 'next/server'; import { getProjects } from '@/lib/directus'; export async function GET(request: NextRequest) { try { const { searchParams } = new URL(request.url); const slug = searchParams.get('slug'); const search = searchParams.get('search'); const category = searchParams.get('category'); const locale = searchParams.get('locale') || 'en'; // Use Directus instead of Prisma const projects = await getProjects(locale, { featured: undefined, published: true, category: category && category !== 'All' ? category : undefined, search: search || undefined, }); if (!projects) { // Directus not available or no projects found return NextResponse.json({ projects: [] }); } // Filter by slug if provided (since Directus query doesn't support slug filter directly) if (slug) { const project = projects.find(p => p.slug === slug); return NextResponse.json({ projects: project ? [project] : [] }); } return NextResponse.json({ projects }); } catch (error) { console.error('Error searching projects:', error); return NextResponse.json( { error: 'Failed to search projects' }, { status: 500 } ); } }