diff --git a/src/components/home/HomeContent.tsx b/src/components/home/HomeContent.tsx index c16fa89..bb51aa2 100644 --- a/src/components/home/HomeContent.tsx +++ b/src/components/home/HomeContent.tsx @@ -7,6 +7,7 @@ interface HomeData { ongoing: KomgaSeries[]; recentlyRead: KomgaBook[]; onDeck: KomgaBook[]; + latestSeries: KomgaSeries[]; } interface HomeContentProps { @@ -68,6 +69,10 @@ export function HomeContent({ data, refreshHome }: HomeContentProps) { )} + {data.latestSeries && data.latestSeries.length > 0 && ( + + )} + {data.recentlyRead && data.recentlyRead.length > 0 && ( )} diff --git a/src/lib/services/home.service.ts b/src/lib/services/home.service.ts index 3c331db..066a75e 100644 --- a/src/lib/services/home.service.ts +++ b/src/lib/services/home.service.ts @@ -7,13 +7,14 @@ interface HomeData { ongoing: KomgaSeries[]; recentlyRead: KomgaBook[]; onDeck: KomgaBook[]; + latestSeries: KomgaSeries[]; } export class HomeService extends BaseApiService { static async getHomeData(): Promise { try { // Appels API parallèles avec cache individuel - const [ongoing, recentlyRead, onDeck] = await Promise.all([ + const [ongoing, recentlyRead, onDeck, latestSeries] = await Promise.all([ this.fetchWithCache>( "home-ongoing", async () => @@ -55,12 +56,26 @@ export class HomeService extends BaseApiService { }), "HOME" ), + this.fetchWithCache>( + "home-latest-series", + async () => + this.fetchFromApi>({ + path: "series/latest", + params: { + page: "0", + size: "10", + media_status: "READY", + }, + }), + "HOME" + ), ]); return { ongoing: ongoing.content || [], recentlyRead: recentlyRead.content || [], onDeck: onDeck.content || [], + latestSeries: latestSeries.content || [], }; } catch (error) { return this.handleError(error, "Impossible de récupérer les données de la page d'accueil");