Files
stripstream-librarian/apps/backoffice/app/api/series/mark-read/route.ts
Froidefond Julien 1d25c8869f feat(backoffice): add reading progress management, series page, and live search
- API: add POST /series/mark-read to batch mark all books in a series
- API: add GET /series cross-library endpoint with search, library and status filters
- API: add library_id to SeriesItem response
- Backoffice: mark book as read/unread button on book detail page
- Backoffice: mark series as read/unread button on series cards
- Backoffice: new /series top-level page with search and filters
- Backoffice: new /libraries/[id]/series/[name] series detail page
- Backoffice: opacity on fully read books and series cards
- Backoffice: live search with debounce on books and series pages
- Backoffice: reading status filter on books and series pages
- Fix $2 -> $1 parameter binding in mark-series-read SQL

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 18:17:16 +01:00

14 lines
490 B
TypeScript

import { NextRequest, NextResponse } from "next/server";
import { markSeriesRead } from "@/lib/api";
export async function POST(request: NextRequest) {
try {
const body = await request.json();
const data = await markSeriesRead(body.series, body.status ?? "read");
return NextResponse.json(data);
} catch (error) {
const message = error instanceof Error ? error.message : "Failed to mark series";
return NextResponse.json({ error: message }, { status: 500 });
}
}