feat: ajout du lecteur de chapitres avec gestion des pages, des modes de lecture et des paramètres de zoom
This commit is contained in:
parent
bf8ca79290
commit
85abca7906
@@ -0,0 +1,29 @@
|
||||
import { ChapterRepositoryInterface } from '../../domain/repository/ChapterRepositoryInterface';
|
||||
|
||||
export class ApiChapterRepository extends ChapterRepositoryInterface {
|
||||
async getChapter(chapterId) {
|
||||
const response = await fetch(`/api/reader/chapter/${chapterId}`);
|
||||
if (!response.ok) {
|
||||
throw new Error('Failed to fetch chapter');
|
||||
}
|
||||
return response.json();
|
||||
}
|
||||
|
||||
async getChapterPages(chapterId, page = 1, itemsPerPage = 20) {
|
||||
const response = await fetch(
|
||||
`/api/reader/chapter/${chapterId}/pages?page=${page}&itemsPerPage=${itemsPerPage}`
|
||||
);
|
||||
if (!response.ok) {
|
||||
throw new Error('Failed to fetch chapter pages');
|
||||
}
|
||||
return response.json();
|
||||
}
|
||||
|
||||
async getChapterPage(chapterId, pageNumber) {
|
||||
const response = await fetch(`/api/reader/chapter/${chapterId}/page/${pageNumber}`);
|
||||
if (!response.ok) {
|
||||
throw new Error('Failed to fetch chapter page');
|
||||
}
|
||||
return response.json();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user