diff --git a/src/app/api/komga/images/books/[bookId]/pages/[pageNumber]/thumbnail/route.ts b/src/app/api/komga/images/books/[bookId]/pages/[pageNumber]/thumbnail/route.ts index 88031e6..380cb50 100644 --- a/src/app/api/komga/images/books/[bookId]/pages/[pageNumber]/thumbnail/route.ts +++ b/src/app/api/komga/images/books/[bookId]/pages/[pageNumber]/thumbnail/route.ts @@ -15,15 +15,7 @@ export async function GET( } const response = await BookService.getPageThumbnail(params.bookId, pageNumber); - const buffer = await response.arrayBuffer(); - const headers = new Headers(); - headers.set("Content-Type", response.headers.get("Content-Type") || "image/jpeg"); - headers.set("Cache-Control", "public, max-age=31536000"); // Cache for 1 year - - return new NextResponse(buffer, { - status: 200, - headers, - }); + return response; } catch (error) { console.error("API Book Page Thumbnail - Erreur:", error); return NextResponse.json( diff --git a/src/app/api/komga/images/books/[bookId]/thumbnail/route.ts b/src/app/api/komga/images/books/[bookId]/thumbnail/route.ts index 0c9831e..ef228fe 100644 --- a/src/app/api/komga/images/books/[bookId]/thumbnail/route.ts +++ b/src/app/api/komga/images/books/[bookId]/thumbnail/route.ts @@ -3,7 +3,7 @@ import { BookService } from "@/lib/services/book.service"; export async function GET(request: NextRequest, { params }: { params: { bookId: string } }) { try { - const response = await BookService.getThumbnail(params.bookId); + const response = await BookService.getCover(params.bookId); return response; } catch (error) { console.error("Erreur lors de la récupération de la miniature du livre:", error); diff --git a/src/app/api/komga/images/series/[seriesId]/first-page/route.ts b/src/app/api/komga/images/series/[seriesId]/first-page/route.ts index 5d2bf80..a8b62fc 100644 --- a/src/app/api/komga/images/series/[seriesId]/first-page/route.ts +++ b/src/app/api/komga/images/series/[seriesId]/first-page/route.ts @@ -5,10 +5,10 @@ export const dynamic = "force-dynamic"; export async function GET(request: NextRequest, { params }: { params: { seriesId: string } }) { try { - const response = await SeriesService.getFirstPage(params.seriesId); + const response = await SeriesService.getCover(params.seriesId); return response; } catch (error) { - console.error("Erreur lors de la récupération de la première page de la série:", error); - return new NextResponse("Erreur lors de la récupération de l'image", { status: 500 }); + console.error("Erreur lors de la récupération de la couverture de la série:", error); + return new NextResponse("Erreur lors de la récupération de la couverture", { status: 500 }); } } diff --git a/src/app/api/komga/images/series/[seriesId]/thumbnail/route.ts b/src/app/api/komga/images/series/[seriesId]/thumbnail/route.ts index bf568cd..23472d9 100644 --- a/src/app/api/komga/images/series/[seriesId]/thumbnail/route.ts +++ b/src/app/api/komga/images/series/[seriesId]/thumbnail/route.ts @@ -3,7 +3,7 @@ import { SeriesService } from "@/lib/services/series.service"; export async function GET(request: NextRequest, { params }: { params: { seriesId: string } }) { try { - const response = await SeriesService.getThumbnail(params.seriesId); + const response = await SeriesService.getCover(params.seriesId); return response; } catch (error) { console.error("Erreur lors de la récupération de la miniature de la série:", error); diff --git a/src/components/home/HeroSection.tsx b/src/components/home/HeroSection.tsx index 92f7e25..c537b13 100644 --- a/src/components/home/HeroSection.tsx +++ b/src/components/home/HeroSection.tsx @@ -1,11 +1,7 @@ "use client"; import { KomgaSeries } from "@/types/komga"; -import Image from "next/image"; -import { useState } from "react"; -import { ImageOff } from "lucide-react"; -import { cn } from "@/lib/utils"; -import { ImageLoader } from "@/components/ui/image-loader"; +import { Cover } from "@/components/ui/cover"; interface HeroSectionProps { series: KomgaSeries[]; @@ -22,7 +18,18 @@ export function HeroSection({ series }: HeroSectionProps) { {/* Grille de couvertures en arrière-plan */}
{book.metadata.title || `Tome ${book.metadata.number}`} @@ -79,131 +80,3 @@ export function BookGrid({ books, onBookClick }: BookGridProps) {