From fb8f64ee5969d21a0202adb9a458eda4b35b437a Mon Sep 17 00:00:00 2001 From: "ext.jeremy.guillot@maxicoffee.domains" Date: Sun, 15 Mar 2026 19:21:02 +0100 Subject: [PATCH] =?UTF-8?q?feat(manga):=20regrouper=20les=20chapitres=20d'?= =?UTF-8?q?un=20volume=20import=C3=A9=20dans=20la=20liste=20API?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Les chapitres partageant le même pagesDirectory non-null et le même volume non-null (import CBZ en bloc) sont fusionnés en un seul item isVolumeGroup=true côté Application, avec volumeChaptersRange et volumeChapterCount. Le frontend affiche "Vol. X — Chapitres Y-Z" à la place de N lignes identiques. --- .../presentation/components/MangaChapter.vue | 15 +- .../QueryHandler/GetMangaChaptersHandler.php | 95 ++++++++++-- .../Application/Response/ChapterResponse.php | 5 +- .../Repository/MangaRepositoryInterface.php | 5 + .../ApiPlatform/Dto/ChapterListItem.php | 5 +- .../GetMangaChaptersStateProvider.php | 5 +- .../Persistence/LegacyMangaRepository.php | 15 ++ .../Manga/Adapter/InMemoryMangaRepository.php | 26 ++++ .../GetMangaChaptersHandlerTest.php | 135 ++++++++++++++++++ 9 files changed, 287 insertions(+), 19 deletions(-) diff --git a/assets/vue/app/domain/manga/presentation/components/MangaChapter.vue b/assets/vue/app/domain/manga/presentation/components/MangaChapter.vue index f68d6e3..feb4cf1 100644 --- a/assets/vue/app/domain/manga/presentation/components/MangaChapter.vue +++ b/assets/vue/app/domain/manga/presentation/components/MangaChapter.vue @@ -1,7 +1,8 @@