import { NextRequest, NextResponse } from 'next/server' import { auth } from '@/auth' import { bridgeNotesService } from '@/lib/ai/services/bridge-notes.service' /** * GET /api/bridge-notes/suggestions * Get AI-powered bridge note suggestions for unconnected clusters. */ export async function GET(request: NextRequest) { try { const session = await auth() if (!session?.user?.id) { return NextResponse.json({ error: 'Unauthorized' }, { status: 401 }) } const userId = session.user.id const { searchParams } = new URL(request.url) const includeDismissed = searchParams.get('dismissed') === 'true' const suggestions = await bridgeNotesService.getBridgeSuggestions(userId, includeDismissed) return NextResponse.json({ suggestions, count: suggestions.length }) } catch (error) { console.error('Error fetching bridge suggestions:', error) return NextResponse.json( { error: 'Failed to fetch suggestions' }, { status: 500 } ) } } /** * POST /api/bridge-notes/suggestions/generate * Generate new bridge suggestions (force regeneration). */ export async function POST(request: NextRequest) { try { const session = await auth() if (!session?.user?.id) { return NextResponse.json({ error: 'Unauthorized' }, { status: 401 }) } const userId = session.user.id // Generate new suggestions const suggestions = await bridgeNotesService.generateBridgeSuggestions(userId) // Save to database await bridgeNotesService.saveBridgeSuggestions(userId, suggestions) return NextResponse.json({ suggestions, count: suggestions.length, message: `Generated ${suggestions.length} bridge suggestions` }) } catch (error) { console.error('Error generating bridge suggestions:', error) return NextResponse.json( { error: 'Failed to generate suggestions' }, { status: 500 } ) } }