86 lines
3.6 KiB
Go
86 lines
3.6 KiB
Go
package manga
|
|
|
|
import (
|
|
"seanime/internal/api/anilist"
|
|
"seanime/internal/hook_resolver"
|
|
)
|
|
|
|
// MangaEntryRequestedEvent is triggered when a manga entry is requested.
|
|
// Prevent default to skip the default behavior and return the modified entry.
|
|
// If the modified entry is nil, an error will be returned.
|
|
type MangaEntryRequestedEvent struct {
|
|
hook_resolver.Event
|
|
MediaId int `json:"mediaId"`
|
|
MangaCollection *anilist.MangaCollection `json:"mangaCollection"`
|
|
// Empty entry object, will be used if the hook prevents the default behavior
|
|
Entry *Entry `json:"entry"`
|
|
}
|
|
|
|
// MangaEntryEvent is triggered when the manga entry is being returned.
|
|
type MangaEntryEvent struct {
|
|
hook_resolver.Event
|
|
Entry *Entry `json:"entry"`
|
|
}
|
|
|
|
// MangaLibraryCollectionRequestedEvent is triggered when the manga library collection is being requested.
|
|
type MangaLibraryCollectionRequestedEvent struct {
|
|
hook_resolver.Event
|
|
MangaCollection *anilist.MangaCollection `json:"mangaCollection"`
|
|
}
|
|
|
|
// MangaLibraryCollectionEvent is triggered when the manga library collection is being returned.
|
|
type MangaLibraryCollectionEvent struct {
|
|
hook_resolver.Event
|
|
LibraryCollection *Collection `json:"libraryCollection"`
|
|
}
|
|
|
|
// MangaDownloadedChapterContainersRequestedEvent is triggered when the manga downloaded chapter containers are being requested.
|
|
// Prevent default to skip the default behavior and return the modified chapter containers.
|
|
// If the modified chapter containers are nil, an error will be returned.
|
|
type MangaDownloadedChapterContainersRequestedEvent struct {
|
|
hook_resolver.Event
|
|
MangaCollection *anilist.MangaCollection `json:"mangaCollection"`
|
|
// Empty chapter containers object, will be used if the hook prevents the default behavior
|
|
ChapterContainers []*ChapterContainer `json:"chapterContainers"`
|
|
}
|
|
|
|
// MangaDownloadedChapterContainersEvent is triggered when the manga downloaded chapter containers are being returned.
|
|
type MangaDownloadedChapterContainersEvent struct {
|
|
hook_resolver.Event
|
|
ChapterContainers []*ChapterContainer `json:"chapterContainers"`
|
|
}
|
|
|
|
// MangaLatestChapterNumbersMapEvent is triggered when the manga latest chapter numbers map is being returned.
|
|
type MangaLatestChapterNumbersMapEvent struct {
|
|
hook_resolver.Event
|
|
LatestChapterNumbersMap map[int][]MangaLatestChapterNumberItem `json:"latestChapterNumbersMap"`
|
|
}
|
|
|
|
// MangaDownloadMapEvent is triggered when the manga download map has been updated.
|
|
// This map is used to tell the client which chapters have been downloaded.
|
|
type MangaDownloadMapEvent struct {
|
|
hook_resolver.Event
|
|
MediaMap *MediaMap `json:"mediaMap"`
|
|
}
|
|
|
|
// MangaChapterContainerRequestedEvent is triggered when the manga chapter container is being requested.
|
|
// This event happens before the chapter container is fetched from the cache or provider.
|
|
// Prevent default to skip the default behavior and return the modified chapter container.
|
|
// If the modified chapter container is nil, an error will be returned.
|
|
type MangaChapterContainerRequestedEvent struct {
|
|
hook_resolver.Event
|
|
Provider string `json:"provider"`
|
|
MediaId int `json:"mediaId"`
|
|
Titles []*string `json:"titles"`
|
|
Year int `json:"year"`
|
|
// Empty chapter container object, will be used if the hook prevents the default behavior
|
|
ChapterContainer *ChapterContainer `json:"chapterContainer"`
|
|
}
|
|
|
|
// MangaChapterContainerEvent is triggered when the manga chapter container is being returned.
|
|
// This event happens after the chapter container is fetched from the cache or provider.
|
|
type MangaChapterContainerEvent struct {
|
|
hook_resolver.Event
|
|
ChapterContainer *ChapterContainer `json:"chapterContainer"`
|
|
}
|