import { NextRequest, NextResponse } from 'next/server' import prisma from '@/lib/prisma' import { getMobileUserId } from '@/lib/mobile-auth' export async function GET(req: NextRequest) { const userId = getMobileUserId(req) if (!userId) return NextResponse.json({ error: 'Unauthorized' }, { status: 401 }) const { searchParams } = new URL(req.url) const deckId = searchParams.get('deckId') const limit = Math.min(parseInt(searchParams.get('limit') ?? '20', 10), 50) if (!deckId) return NextResponse.json({ error: 'deckId required' }, { status: 400 }) // Vérifier ownership const deck = await prisma.flashcardDeck.findFirst({ where: { id: deckId, userId }, select: { id: true, name: true }, }) if (!deck) return NextResponse.json({ error: 'Deck not found' }, { status: 404 }) const now = new Date() const cards = await prisma.flashcard.findMany({ where: { deckId, nextReviewAt: { lte: now } }, select: { id: true, front: true, back: true, interval: true, easinessFactor: true, type: true, }, orderBy: { nextReviewAt: 'asc' }, take: limit, }) return NextResponse.json({ deck: { id: deck.id, name: deck.name }, cards }) }