import { NextRequest, NextResponse } from 'next/server'; import { getSession } from '@/lib/session'; import { listPasskeys, deletePasskey } from '@/lib/passkeys'; // Liste der registrierten Passkeys (ohne öffentlichen Schlüssel). export async function GET() { const session = await getSession(); if (!session) return NextResponse.json({ error: 'Nicht angemeldet' }, { status: 401 }); const passkeys = listPasskeys().map((pk) => ({ credentialId: pk.credentialId, label: pk.label, createdAt: pk.createdAt, lastUsedAt: pk.lastUsedAt, })); return NextResponse.json({ passkeys }); } // Löscht einen Passkey anhand seiner credentialId (?id=...). export async function DELETE(request: NextRequest) { const session = await getSession(); if (!session) return NextResponse.json({ error: 'Nicht angemeldet' }, { status: 401 }); const id = request.nextUrl.searchParams.get('id'); if (!id) return NextResponse.json({ error: 'Keine ID angegeben.' }, { status: 400 }); const removed = deletePasskey(id); if (!removed) return NextResponse.json({ error: 'Passkey nicht gefunden.' }, { status: 404 }); return NextResponse.json({ ok: true }); }