Hooks
How to use hooks
AnilistPlatform
onGetAnime
Can prevent default: No
Event Interface:
interface GetAnimeEvent {
next();
anime?: AL_BaseAnime;
}
Referenced types:
Example:
$app.onGetAnime((e) => {
// console.log(e.anime);
e.next();
});
onGetAnimeDetails
Can prevent default: No
Event Interface:
interface GetAnimeDetailsEvent {
next();
anime?: AL_AnimeDetailsById_Media;
}
Referenced types:
Example:
$app.onGetAnimeDetails((e) => {
// console.log(e.anime);
e.next();
});
onGetManga
Can prevent default: No
Event Interface:
interface GetMangaEvent {
next();
manga?: AL_BaseManga;
}
Referenced types:
Example:
$app.onGetManga((e) => {
// console.log(e.manga);
e.next();
});
onGetMangaDetails
Can prevent default: No
Event Interface:
interface GetMangaDetailsEvent {
next();
manga?: AL_MangaDetailsById_Media;
}
Referenced types:
Example:
$app.onGetMangaDetails((e) => {
// console.log(e.manga);
e.next();
});
onGetAnimeCollection
Can prevent default: No
Event Interface:
interface GetAnimeCollectionEvent {
next();
animeCollection?: AL_AnimeCollection;
}
Referenced types:
Example:
$app.onGetAnimeCollection((e) => {
// console.log(e.animeCollection);
e.next();
});
onGetMangaCollection
Can prevent default: No
Event Interface:
interface GetMangaCollectionEvent {
next();
mangaCollection?: AL_MangaCollection;
}
Referenced types:
Example:
$app.onGetMangaCollection((e) => {
// console.log(e.mangaCollection);
e.next();
});
onGetRawAnimeCollection
Can prevent default: No
Event Interface:
interface GetRawAnimeCollectionEvent {
next();
animeCollection?: AL_AnimeCollection;
}
Referenced types:
Example:
$app.onGetRawAnimeCollection((e) => {
// console.log(e.animeCollection);
e.next();
});
onGetRawMangaCollection
Can prevent default: No
Event Interface:
interface GetRawMangaCollectionEvent {
next();
mangaCollection?: AL_MangaCollection;
}
Referenced types:
Example:
$app.onGetRawMangaCollection((e) => {
// console.log(e.mangaCollection);
e.next();
});
onGetStudioDetails
Can prevent default: No
Event Interface:
interface GetStudioDetailsEvent {
next();
studio?: AL_StudioDetails;
}
Referenced types:
Example:
$app.onGetStudioDetails((e) => {
// console.log(e.studio);
e.next();
});
onPreUpdateEntry
PreUpdateEntryEvent is triggered when an entry is about to be updated. Prevent default to skip the default update and override the update.
Can prevent default: Yes
Event Interface:
interface PreUpdateEntryEvent {
next();
preventDefault();
mediaId?: number;
status?: AL_MediaListStatus;
scoreRaw?: number;
progress?: number;
startedAt?: AL_FuzzyDateInput;
completedAt?: AL_FuzzyDateInput;
}
Referenced types:
Example:
$app.onPreUpdateEntry((e) => {
// console.log(e.mediaId);
// console.log(e.status);
// console.log(e.scoreRaw);
// console.log(e.progress);
// console.log(e.startedAt);
// console.log(e.completedAt);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onPostUpdateEntry
Can prevent default: No
Event Interface:
interface PostUpdateEntryEvent {
next();
mediaId?: number;
}
Referenced types:
Example:
$app.onPostUpdateEntry((e) => {
// console.log(e.mediaId);
e.next();
});
onPreUpdateEntryProgress
PreUpdateEntryProgressEvent is triggered when an entry's progress is about to be updated. Prevent default to skip the default update and override the update.
Can prevent default: Yes
Event Interface:
interface PreUpdateEntryProgressEvent {
next();
preventDefault();
mediaId?: number;
progress?: number;
totalCount?: number;
status?: AL_MediaListStatus;
}
Referenced types:
Example:
$app.onPreUpdateEntryProgress((e) => {
// console.log(e.mediaId);
// console.log(e.progress);
// console.log(e.totalCount);
// console.log(e.status);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onPostUpdateEntryProgress
Can prevent default: No
Event Interface:
interface PostUpdateEntryProgressEvent {
next();
mediaId?: number;
}
Referenced types:
Example:
$app.onPostUpdateEntryProgress((e) => {
// console.log(e.mediaId);
e.next();
});
onPreUpdateEntryRepeat
PreUpdateEntryRepeatEvent is triggered when an entry's repeat is about to be updated. Prevent default to skip the default update and override the update.
Can prevent default: Yes
Event Interface:
interface PreUpdateEntryRepeatEvent {
next();
preventDefault();
mediaId?: number;
repeat?: number;
}
Referenced types:
Example:
$app.onPreUpdateEntryRepeat((e) => {
// console.log(e.mediaId);
// console.log(e.repeat);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onPostUpdateEntryRepeat
Can prevent default: No
Event Interface:
interface PostUpdateEntryRepeatEvent {
next();
mediaId?: number;
}
Referenced types:
Example:
$app.onPostUpdateEntryRepeat((e) => {
// console.log(e.mediaId);
e.next();
});
Anime
onAnimeEntryRequested
AnimeEntryRequestedEvent is triggered when an anime entry is requested. Prevent default to skip the default behavior and return the modified entry. This event is triggered before [AnimeEntryEvent]. If the modified entry is nil, an error will be returned.
Can prevent default: Yes
Event Interface:
interface AnimeEntryRequestedEvent {
next();
preventDefault();
mediaId: number;
localFiles?: Array<Anime_LocalFile>;
animeCollection?: AL_AnimeCollection;
entry?: Anime_Entry;
}
Referenced types:
Example:
$app.onAnimeEntryRequested((e) => {
// console.log(e.mediaId);
// console.log(e.localFiles);
// console.log(e.animeCollection);
// console.log(e.entry);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onAnimeEntry
AnimeEntryEvent is triggered when the media entry is being returned. This event is triggered after [AnimeEntryRequestedEvent].
Can prevent default: No
Event Interface:
interface AnimeEntryEvent {
next();
entry?: Anime_Entry;
}
Referenced types:
Example:
$app.onAnimeEntry((e) => {
// console.log(e.entry);
e.next();
});
onAnimeEntryFillerHydration
AnimeEntryFillerHydrationEvent is triggered when the filler data is being added to the media entry. This event is triggered after [AnimeEntryEvent]. Prevent default to skip the filler data.
Can prevent default: Yes
Event Interface:
interface AnimeEntryFillerHydrationEvent {
next();
preventDefault();
entry?: Anime_Entry;
}
Referenced types:
Example:
$app.onAnimeEntryFillerHydration((e) => {
// console.log(e.entry);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onAnimeEntryLibraryDataRequested
AnimeEntryLibraryDataRequestedEvent is triggered when the app requests the library data for a media entry. This is triggered before [AnimeEntryLibraryDataEvent].
Can prevent default: No
Event Interface:
interface AnimeEntryLibraryDataRequestedEvent {
next();
entryLocalFiles?: Array<Anime_LocalFile>;
mediaId: number;
currentProgress: number;
}
Referenced types:
Example:
$app.onAnimeEntryLibraryDataRequested((e) => {
// console.log(e.entryLocalFiles);
// console.log(e.mediaId);
// console.log(e.currentProgress);
e.next();
});
onAnimeEntryLibraryData
AnimeEntryLibraryDataEvent is triggered when the library data is being added to the media entry. This is triggered after [AnimeEntryLibraryDataRequestedEvent].
Can prevent default: No
Event Interface:
interface AnimeEntryLibraryDataEvent {
next();
entryLibraryData?: Anime_EntryLibraryData;
}
Referenced types:
Example:
$app.onAnimeEntryLibraryData((e) => {
// console.log(e.entryLibraryData);
e.next();
});
onAnimeEntryManualMatchBeforeSave
AnimeEntryManualMatchBeforeSaveEvent is triggered when the user manually matches local files to a media entry. Prevent default to skip saving the local files.
Can prevent default: Yes
Event Interface:
interface AnimeEntryManualMatchBeforeSaveEvent {
next();
preventDefault();
mediaId: number;
paths?: Array<string>;
matchedLocalFiles?: Array<Anime_LocalFile>;
}
Referenced types:
Example:
$app.onAnimeEntryManualMatchBeforeSave((e) => {
// console.log(e.mediaId);
// console.log(e.paths);
// console.log(e.matchedLocalFiles);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onMissingEpisodesRequested
MissingEpisodesRequestedEvent is triggered when the user requests the missing episodes for the entire library. Prevent default to skip the default process and return the modified missing episodes.
Can prevent default: Yes
Event Interface:
interface MissingEpisodesRequestedEvent {
next();
preventDefault();
animeCollection?: AL_AnimeCollection;
localFiles?: Array<Anime_LocalFile>;
silencedMediaIds?: Array<number>;
missingEpisodes?: Anime_MissingEpisodes;
}
Referenced types:
Example:
$app.onMissingEpisodesRequested((e) => {
// console.log(e.animeCollection);
// console.log(e.localFiles);
// console.log(e.silencedMediaIds);
// console.log(e.missingEpisodes);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onMissingEpisodes
MissingEpisodesEvent is triggered when the missing episodes are being returned.
Can prevent default: No
Event Interface:
interface MissingEpisodesEvent {
next();
missingEpisodes?: Anime_MissingEpisodes;
}
Referenced types:
Example:
$app.onMissingEpisodes((e) => {
// console.log(e.missingEpisodes);
e.next();
});
onAnimeLibraryCollectionRequested
AnimeLibraryCollectionRequestedEvent is triggered when the user requests the library collection. Prevent default to skip the default process and return the modified library collection. If the modified library collection is nil, an error will be returned.
Can prevent default: Yes
Event Interface:
interface AnimeLibraryCollectionRequestedEvent {
next();
preventDefault();
animeCollection?: AL_AnimeCollection;
localFiles?: Array<Anime_LocalFile>;
libraryCollection?: Anime_LibraryCollection;
}
Referenced types:
Example:
$app.onAnimeLibraryCollectionRequested((e) => {
// console.log(e.animeCollection);
// console.log(e.localFiles);
// console.log(e.libraryCollection);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onAnimeLibraryCollection
AnimeLibraryCollectionRequestedEvent is triggered when the user requests the library collection.
Can prevent default: No
Event Interface:
interface AnimeLibraryCollectionEvent {
next();
libraryCollection?: Anime_LibraryCollection;
}
Referenced types:
Example:
$app.onAnimeLibraryCollection((e) => {
// console.log(e.libraryCollection);
e.next();
});
onAnimeLibraryStreamCollectionRequested
AnimeLibraryStreamCollectionRequestedEvent is triggered when the user requests the library stream collection. This is called when the user enables "Include in library" for either debrid/online/torrent streamings.
Can prevent default: No
Event Interface:
interface AnimeLibraryStreamCollectionRequestedEvent {
next();
animeCollection?: AL_AnimeCollection;
libraryCollection?: Anime_LibraryCollection;
}
Referenced types:
Example:
$app.onAnimeLibraryStreamCollectionRequested((e) => {
// console.log(e.animeCollection);
// console.log(e.libraryCollection);
e.next();
});
onAnimeLibraryStreamCollection
AnimeLibraryStreamCollectionEvent is triggered when the library stream collection is being returned.
Can prevent default: No
Event Interface:
interface AnimeLibraryStreamCollectionEvent {
next();
streamCollection?: Anime_StreamCollection;
}
Referenced types:
Example:
$app.onAnimeLibraryStreamCollection((e) => {
// console.log(e.streamCollection);
e.next();
});
Autodownloader
onAutoDownloaderRunStarted
AutoDownloaderRunStartedEvent is triggered when the autodownloader starts checking for new episodes. Prevent default to abort the run.
Can prevent default: Yes
Event Interface:
interface AutoDownloaderRunStartedEvent {
next();
preventDefault();
rules?: Array<Anime_AutoDownloaderRule>;
}
Referenced types:
Example:
$app.onAutoDownloaderRunStarted((e) => {
// console.log(e.rules);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onAutoDownloaderTorrentsFetched
AutoDownloaderTorrentsFetchedEvent is triggered when the autodownloader fetches torrents from the provider.
Can prevent default: No
Event Interface:
interface AutoDownloaderTorrentsFetchedEvent {
next();
torrents?: Array<AutoDownloader_NormalizedTorrent>;
}
Referenced types:
Example:
$app.onAutoDownloaderTorrentsFetched((e) => {
// console.log(e.torrents);
e.next();
});
onAutoDownloaderMatchVerified
AutoDownloaderMatchVerifiedEvent is triggered when a torrent is verified to follow a rule.
Can prevent default: No
Event Interface:
interface AutoDownloaderMatchVerifiedEvent {
next();
torrent?: AutoDownloader_NormalizedTorrent;
rule?: Anime_AutoDownloaderRule;
listEntry?: AL_AnimeListEntry;
localEntry?: Anime_LocalFileWrapperEntry;
episode: number;
ok: boolean;
}
Referenced types:
- AutoDownloader_NormalizedTorrent
- Anime_AutoDownloaderRule
- AL_AnimeListEntry
- Anime_LocalFileWrapperEntry
Example:
$app.onAutoDownloaderMatchVerified((e) => {
// console.log(e.torrent);
// console.log(e.rule);
// console.log(e.listEntry);
// console.log(e.localEntry);
// console.log(e.episode);
// console.log(e.ok);
e.next();
});
onAutoDownloaderSettingsUpdated
AutoDownloaderSettingsUpdatedEvent is triggered when the autodownloader settings are updated
Can prevent default: No
Event Interface:
interface AutoDownloaderSettingsUpdatedEvent {
next();
settings?: Models_AutoDownloaderSettings;
}
Referenced types:
Example:
$app.onAutoDownloaderSettingsUpdated((e) => {
// console.log(e.settings);
e.next();
});
Continuity
onWatchHistoryItemRequested
WatchHistoryItemRequestedEvent is triggered when a watch history item is requested. Prevent default to skip getting the watch history item from the file cache, in this case the event should have a valid WatchHistoryItem object or set it to nil to indicate that the watch history item was not found.
Can prevent default: Yes
Event Interface:
interface WatchHistoryItemRequestedEvent {
next();
preventDefault();
mediaId: number;
watchHistoryItem?: Continuity_WatchHistoryItem;
}
Referenced types:
Example:
$app.onWatchHistoryItemRequested((e) => {
// console.log(e.mediaId);
// console.log(e.watchHistoryItem);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onWatchHistoryLocalFileEpisodeItemRequested
Can prevent default: No
Event Interface:
interface WatchHistoryLocalFileEpisodeItemRequestedEvent {
next();
Path: string;
LocalFiles?: Array<Anime_LocalFile>;
watchHistoryItem?: Continuity_WatchHistoryItem;
}
Referenced types:
Example:
$app.onWatchHistoryLocalFileEpisodeItemRequested((e) => {
// console.log(e.Path);
// console.log(e.LocalFiles);
// console.log(e.watchHistoryItem);
e.next();
});
onWatchHistoryStreamEpisodeItemRequested
Can prevent default: No
Event Interface:
interface WatchHistoryStreamEpisodeItemRequestedEvent {
next();
Episode: number;
MediaId: number;
watchHistoryItem?: Continuity_WatchHistoryItem;
}
Referenced types:
Example:
$app.onWatchHistoryStreamEpisodeItemRequested((e) => {
// console.log(e.Episode);
// console.log(e.MediaId);
// console.log(e.watchHistoryItem);
e.next();
});
DebridClient
onDebridSendStreamToMediaPlayer
DebridSendStreamToMediaPlayerEvent is triggered when the debrid client is about to send a stream to the media player. Prevent default to skip the playback.
Can prevent default: Yes
Event Interface:
interface DebridSendStreamToMediaPlayerEvent {
next();
preventDefault();
windowTitle: string;
streamURL: string;
media?: AL_BaseAnime;
aniDbEpisode: string;
playbackType: string;
}
Referenced types:
Example:
$app.onDebridSendStreamToMediaPlayer((e) => {
// console.log(e.windowTitle);
// console.log(e.streamURL);
// console.log(e.media);
// console.log(e.aniDbEpisode);
// console.log(e.playbackType);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onDebridLocalDownloadRequested
DebridLocalDownloadRequestedEvent is triggered when Seanime is about to download a debrid torrent locally. Prevent default to skip the default download and override the download.
Can prevent default: Yes
Event Interface:
interface DebridLocalDownloadRequestedEvent {
next();
preventDefault();
torrentName: string;
destination: string;
downloadUrl: string;
}
Referenced types:
Example:
$app.onDebridLocalDownloadRequested((e) => {
// console.log(e.torrentName);
// console.log(e.destination);
// console.log(e.downloadUrl);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
Manga
onMangaEntryRequested
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.
Can prevent default: Yes
Event Interface:
interface MangaEntryRequestedEvent {
next();
preventDefault();
mediaId: number;
mangaCollection?: AL_MangaCollection;
entry?: Manga_Entry;
}
Referenced types:
Example:
$app.onMangaEntryRequested((e) => {
// console.log(e.mediaId);
// console.log(e.mangaCollection);
// console.log(e.entry);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onMangaEntry
MangaEntryEvent is triggered when the manga entry is being returned.
Can prevent default: No
Event Interface:
interface MangaEntryEvent {
next();
entry?: Manga_Entry;
}
Referenced types:
Example:
$app.onMangaEntry((e) => {
// console.log(e.entry);
e.next();
});
onMangaLibraryCollectionRequested
MangaLibraryCollectionRequestedEvent is triggered when the manga library collection is being requested.
Can prevent default: No
Event Interface:
interface MangaLibraryCollectionRequestedEvent {
next();
mangaCollection?: AL_MangaCollection;
}
Referenced types:
Example:
$app.onMangaLibraryCollectionRequested((e) => {
// console.log(e.mangaCollection);
e.next();
});
onMangaLibraryCollection
MangaLibraryCollectionEvent is triggered when the manga library collection is being returned.
Can prevent default: No
Event Interface:
interface MangaLibraryCollectionEvent {
next();
libraryCollection?: Manga_Collection;
}
Referenced types:
Example:
$app.onMangaLibraryCollection((e) => {
// console.log(e.libraryCollection);
e.next();
});
onMangaDownloadedChapterContainersRequested
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.
Can prevent default: Yes
Event Interface:
interface MangaDownloadedChapterContainersRequestedEvent {
next();
preventDefault();
mangaCollection?: AL_MangaCollection;
chapterContainers?: Array<Manga_ChapterContainer>;
}
Referenced types:
Example:
$app.onMangaDownloadedChapterContainersRequested((e) => {
// console.log(e.mangaCollection);
// console.log(e.chapterContainers);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onMangaDownloadedChapterContainers
MangaDownloadedChapterContainersEvent is triggered when the manga downloaded chapter containers are being returned.
Can prevent default: No
Event Interface:
interface MangaDownloadedChapterContainersEvent {
next();
chapterContainers?: Array<Manga_ChapterContainer>;
}
Referenced types:
Example:
$app.onMangaDownloadedChapterContainers((e) => {
// console.log(e.chapterContainers);
e.next();
});
onMangaLatestChapterNumbersMap
MangaLatestChapterNumbersMapEvent is triggered when the manga latest chapter numbers map is being returned.
Can prevent default: No
Event Interface:
interface MangaLatestChapterNumbersMapEvent {
next();
latestChapterNumbersMap?: Record<number, Array<Manga_MangaLatestChapterNumberItem>>;
}
Referenced types:
Example:
$app.onMangaLatestChapterNumbersMap((e) => {
// console.log(e.latestChapterNumbersMap);
e.next();
});
onMangaDownloadMap
MangaDownloadMapEvent is triggered when the manga download map has been updated. This map is used to tell the client which chapters have been downloaded.
Can prevent default: No
Event Interface:
interface MangaDownloadMapEvent {
next();
mediaMap?: Manga_MediaMap;
}
Referenced types:
Example:
$app.onMangaDownloadMap((e) => {
// console.log(e.mediaMap);
e.next();
});
onMangaChapterContainerRequested
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.
Can prevent default: Yes
Event Interface:
interface MangaChapterContainerRequestedEvent {
next();
preventDefault();
provider: string;
mediaId: number;
titles?: Array<string>;
year: number;
chapterContainer?: Manga_ChapterContainer;
}
Referenced types:
Example:
$app.onMangaChapterContainerRequested((e) => {
// console.log(e.provider);
// console.log(e.mediaId);
// console.log(e.titles);
// console.log(e.year);
// console.log(e.chapterContainer);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onMangaChapterContainer
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.
Can prevent default: No
Event Interface:
interface MangaChapterContainerEvent {
next();
chapterContainer?: Manga_ChapterContainer;
}
Referenced types:
Example:
$app.onMangaChapterContainer((e) => {
// console.log(e.chapterContainer);
e.next();
});
Mediaplayer
onMediaPlayerLocalFileTrackingRequested
MediaPlayerLocalFileTrackingRequestedEvent is triggered when the playback manager wants to track the progress of a local file
Can prevent default: No
Event Interface:
interface MediaPlayerLocalFileTrackingRequestedEvent {
next();
/**
* Refresh the status of the player each x seconds
*/
refreshDelay: number;
/**
* Maximum number of retries
*/
maxRetries: number;
}
Referenced types:
Example:
$app.onMediaPlayerLocalFileTrackingRequested((e) => {
// console.log(e.refreshDelay);
// console.log(e.maxRetries);
e.next();
});
onMediaPlayerStreamTrackingRequested
MediaPlayerStreamTrackingRequestedEvent is triggered when the playback manager wants to track the progress of a stream
Can prevent default: No
Event Interface:
interface MediaPlayerStreamTrackingRequestedEvent {
next();
/**
* Refresh the status of the player each x seconds
*/
refreshDelay: number;
/**
* Maximum number of retries
*/
maxRetries: number;
/**
* Maximum number of retries after the player has started
*/
maxRetriesAfterStart: number;
}
Referenced types:
Example:
$app.onMediaPlayerStreamTrackingRequested((e) => {
// console.log(e.refreshDelay);
// console.log(e.maxRetries);
// console.log(e.maxRetriesAfterStart);
e.next();
});
Metadata
onAnimeMetadataRequested
AnimeMetadataRequestedEvent is triggered when anime metadata is requested and right before the metadata is processed. This event is followed by [AnimeMetadataEvent] which is triggered when the metadata is available. Prevent default to skip the default behavior and return the modified metadata. If the modified metadata is nil, an error will be returned.
Can prevent default: Yes
Event Interface:
interface AnimeMetadataRequestedEvent {
next();
preventDefault();
mediaId: number;
animeMetadata?: Metadata_AnimeMetadata;
}
Referenced types:
Example:
$app.onAnimeMetadataRequested((e) => {
// console.log(e.mediaId);
// console.log(e.animeMetadata);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onAnimeMetadata
AnimeMetadataEvent is triggered when anime metadata is available and is about to be returned. Anime metadata can be requested in many places, ranging from displaying the anime entry to starting a torrent stream. This event is triggered after [AnimeMetadataRequestedEvent]. If the modified metadata is nil, an error will be returned.
Can prevent default: No
Event Interface:
interface AnimeMetadataEvent {
next();
mediaId: number;
animeMetadata?: Metadata_AnimeMetadata;
}
Referenced types:
Example:
$app.onAnimeMetadata((e) => {
// console.log(e.mediaId);
// console.log(e.animeMetadata);
e.next();
});
onAnimeEpisodeMetadataRequested
AnimeEpisodeMetadataRequestedEvent is triggered when anime episode metadata is requested. Prevent default to skip the default behavior and return the overridden metadata. This event is triggered before [AnimeEpisodeMetadataEvent]. If the modified episode metadata is nil, an empty EpisodeMetadata object will be returned.
Can prevent default: Yes
Event Interface:
interface AnimeEpisodeMetadataRequestedEvent {
next();
preventDefault();
animeEpisodeMetadata?: Metadata_EpisodeMetadata;
episodeNumber: number;
mediaId: number;
}
Referenced types:
Example:
$app.onAnimeEpisodeMetadataRequested((e) => {
// console.log(e.animeEpisodeMetadata);
// console.log(e.episodeNumber);
// console.log(e.mediaId);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onAnimeEpisodeMetadata
AnimeEpisodeMetadataEvent is triggered when anime episode metadata is available and is about to be returned. In the current implementation, episode metadata is requested for display purposes. It is used to get a more complete metadata object since the original AnimeMetadata object is not complete. This event is triggered after [AnimeEpisodeMetadataRequestedEvent]. If the modified episode metadata is nil, an empty EpisodeMetadata object will be returned.
Can prevent default: No
Event Interface:
interface AnimeEpisodeMetadataEvent {
next();
animeEpisodeMetadata?: Metadata_EpisodeMetadata;
episodeNumber: number;
mediaId: number;
}
Referenced types:
Example:
$app.onAnimeEpisodeMetadata((e) => {
// console.log(e.animeEpisodeMetadata);
// console.log(e.episodeNumber);
// console.log(e.mediaId);
e.next();
});
PlaybackManager
onLocalFilePlaybackRequested
LocalFilePlaybackRequestedEvent is triggered when a local file is requested to be played. Prevent default to skip the default playback and override the playback.
Can prevent default: Yes
Event Interface:
interface LocalFilePlaybackRequestedEvent {
next();
preventDefault();
path: string;
}
Referenced types:
Example:
$app.onLocalFilePlaybackRequested((e) => {
// console.log(e.path);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onStreamPlaybackRequested
StreamPlaybackRequestedEvent is triggered when a stream is requested to be played. Prevent default to skip the default playback and override the playback.
Can prevent default: Yes
Event Interface:
interface StreamPlaybackRequestedEvent {
next();
preventDefault();
windowTitle: string;
payload: string;
media?: AL_BaseAnime;
aniDbEpisode: string;
}
Referenced types:
Example:
$app.onStreamPlaybackRequested((e) => {
// console.log(e.windowTitle);
// console.log(e.payload);
// console.log(e.media);
// console.log(e.aniDbEpisode);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onPlaybackBeforeTracking
PlaybackBeforeTrackingEvent is triggered just before the playback tracking starts. Prevent default to skip playback tracking.
Can prevent default: Yes
Event Interface:
interface PlaybackBeforeTrackingEvent {
next();
preventDefault();
isStream: boolean;
}
Referenced types:
Example:
$app.onPlaybackBeforeTracking((e) => {
// console.log(e.isStream);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onPlaybackLocalFileDetailsRequested
PlaybackLocalFileDetailsRequestedEvent is triggered when the local files details for a specific path are requested. This event is triggered right after the media player loads an episode. The playback manager uses the local files details to track the progress, propose next episodes, etc. In the current implementation, the details are fetched by selecting the local file from the database and making requests to retrieve the media and anime list entry. Prevent default to skip the default fetching and override the details.
Can prevent default: Yes
Event Interface:
interface PlaybackLocalFileDetailsRequestedEvent {
next();
preventDefault();
path: string;
localFiles?: Array<Anime_LocalFile>;
animeListEntry?: AL_AnimeListEntry;
localFile?: Anime_LocalFile;
localFileWrapperEntry?: Anime_LocalFileWrapperEntry;
}
Referenced types:
Example:
$app.onPlaybackLocalFileDetailsRequested((e) => {
// console.log(e.path);
// console.log(e.localFiles);
// console.log(e.animeListEntry);
// console.log(e.localFile);
// console.log(e.localFileWrapperEntry);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onPlaybackStreamDetailsRequested
PlaybackStreamDetailsRequestedEvent is triggered when the stream details are requested. Prevent default to skip the default fetching and override the details. In the current implementation, the details are fetched by selecting the anime from the anime collection. If nothing is found, the stream is still tracked.
Can prevent default: Yes
Event Interface:
interface PlaybackStreamDetailsRequestedEvent {
next();
preventDefault();
animeCollection?: AL_AnimeCollection;
mediaId: number;
animeListEntry?: AL_AnimeListEntry;
}
Referenced types:
Example:
$app.onPlaybackStreamDetailsRequested((e) => {
// console.log(e.animeCollection);
// console.log(e.mediaId);
// console.log(e.animeListEntry);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
Scanner
onScanStarted
ScanStartedEvent is triggered when the scanning process begins. Prevent default to skip the rest of the scanning process and return the local files.
Can prevent default: Yes
Event Interface:
interface ScanStartedEvent {
next();
preventDefault();
libraryPath: string;
otherLibraryPaths?: Array<string>;
enhanced: boolean;
skipLocked: boolean;
skipIgnored: boolean;
localFiles?: Array<Anime_LocalFile>;
}
Referenced types:
Example:
$app.onScanStarted((e) => {
// console.log(e.libraryPath);
// console.log(e.otherLibraryPaths);
// console.log(e.enhanced);
// console.log(e.skipLocked);
// console.log(e.skipIgnored);
// console.log(e.localFiles);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onScanFilePathsRetrieved
ScanFilePathsRetrievedEvent is triggered when the file paths to scan are retrieved. The event includes file paths from all directories to scan. The event includes file paths of local files that will be skipped.
Can prevent default: No
Event Interface:
interface ScanFilePathsRetrievedEvent {
next();
filePaths?: Array<string>;
}
Referenced types:
Example:
$app.onScanFilePathsRetrieved((e) => {
// console.log(e.filePaths);
e.next();
});
onScanLocalFilesParsed
ScanLocalFilesParsedEvent is triggered right after the file paths are parsed into local file objects. The event does not include local files that are skipped.
Can prevent default: No
Event Interface:
interface ScanLocalFilesParsedEvent {
next();
localFiles?: Array<Anime_LocalFile>;
}
Referenced types:
Example:
$app.onScanLocalFilesParsed((e) => {
// console.log(e.localFiles);
e.next();
});
onScanCompleted
ScanCompletedEvent is triggered when the scanning process finishes. The event includes all the local files (skipped and scanned) to be inserted as a new entry. Right after this event, the local files will be inserted as a new entry.
Can prevent default: No
Event Interface:
interface ScanCompletedEvent {
next();
localFiles?: Array<Anime_LocalFile>;
/**
* in milliseconds
*/
duration: number;
}
Referenced types:
Example:
$app.onScanCompleted((e) => {
// console.log(e.localFiles);
// console.log(e.duration);
e.next();
});
onScanMediaFetcherStarted
ScanMediaFetcherStartedEvent is triggered right before Seanime starts fetching media to be matched against the local files.
Can prevent default: No
Event Interface:
interface ScanMediaFetcherStartedEvent {
next();
enhanced: boolean;
}
Referenced types:
Example:
$app.onScanMediaFetcherStarted((e) => {
// console.log(e.enhanced);
e.next();
});
onScanMediaFetcherCompleted
ScanMediaFetcherCompletedEvent is triggered when the media fetcher completes. The event includes all the media fetched from AniList. The event includes the media IDs that are not in the user's collection.
Can prevent default: No
Event Interface:
interface ScanMediaFetcherCompletedEvent {
next();
allMedia?: Array<AL_CompleteAnime>;
unknownMediaIds?: Array<number>;
}
Referenced types:
Example:
$app.onScanMediaFetcherCompleted((e) => {
// console.log(e.allMedia);
// console.log(e.unknownMediaIds);
e.next();
});
onScanMatchingStarted
ScanMatchingStartedEvent is triggered when the matching process begins. Prevent default to skip the default matching, in which case modified local files will be used.
Can prevent default: Yes
Event Interface:
interface ScanMatchingStartedEvent {
next();
preventDefault();
localFiles?: Array<Anime_LocalFile>;
normalizedMedia?: Array<Anime_NormalizedMedia>;
algorithm: string;
threshold: number;
}
Referenced types:
Example:
$app.onScanMatchingStarted((e) => {
// console.log(e.localFiles);
// console.log(e.normalizedMedia);
// console.log(e.algorithm);
// console.log(e.threshold);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onScanLocalFileMatched
ScanLocalFileMatchedEvent is triggered when a local file is matched with media and before the match is analyzed. Prevent default to skip the default analysis and override the match.
Can prevent default: Yes
Event Interface:
interface ScanLocalFileMatchedEvent {
next();
preventDefault();
match?: Anime_NormalizedMedia;
found: boolean;
localFile?: Anime_LocalFile;
score: number;
}
Referenced types:
Example:
$app.onScanLocalFileMatched((e) => {
// console.log(e.match);
// console.log(e.found);
// console.log(e.localFile);
// console.log(e.score);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onScanMatchingCompleted
ScanMatchingCompletedEvent is triggered when the matching process completes.
Can prevent default: No
Event Interface:
interface ScanMatchingCompletedEvent {
next();
localFiles?: Array<Anime_LocalFile>;
}
Referenced types:
Example:
$app.onScanMatchingCompleted((e) => {
// console.log(e.localFiles);
e.next();
});
onScanHydrationStarted
ScanHydrationStartedEvent is triggered when the file hydration process begins. Prevent default to skip the rest of the hydration process, in which case the event's local files will be used.
Can prevent default: Yes
Event Interface:
interface ScanHydrationStartedEvent {
next();
preventDefault();
localFiles?: Array<Anime_LocalFile>;
allMedia?: Array<Anime_NormalizedMedia>;
}
Referenced types:
Example:
$app.onScanHydrationStarted((e) => {
// console.log(e.localFiles);
// console.log(e.allMedia);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onScanLocalFileHydrationStarted
ScanLocalFileHydrationStartedEvent is triggered when a local file's metadata is about to be hydrated. Prevent default to skip the default hydration and override the hydration.
Can prevent default: Yes
Event Interface:
interface ScanLocalFileHydrationStartedEvent {
next();
preventDefault();
localFile?: Anime_LocalFile;
media?: Anime_NormalizedMedia;
}
Referenced types:
Example:
$app.onScanLocalFileHydrationStarted((e) => {
// console.log(e.localFile);
// console.log(e.media);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
onScanLocalFileHydrated
ScanLocalFileHydratedEvent is triggered when a local file's metadata is hydrated
Can prevent default: No
Event Interface:
interface ScanLocalFileHydratedEvent {
next();
localFile?: Anime_LocalFile;
mediaId: number;
episode: number;
}
Referenced types:
Example:
$app.onScanLocalFileHydrated((e) => {
// console.log(e.localFile);
// console.log(e.mediaId);
// console.log(e.episode);
e.next();
});
Torrentstream
onTorrentStreamSendStreamToMediaPlayer
TorrentStreamSendStreamToMediaPlayerEvent is triggered when the torrent stream is about to send a stream to the media player. Prevent default to skip the default playback and override the playback.
Can prevent default: Yes
Event Interface:
interface TorrentStreamSendStreamToMediaPlayerEvent {
next();
preventDefault();
windowTitle: string;
streamURL: string;
media?: AL_BaseAnime;
aniDbEpisode: string;
playbackType: string;
}
Referenced types:
Example:
$app.onTorrentStreamSendStreamToMediaPlayer((e) => {
// console.log(e.windowTitle);
// console.log(e.streamURL);
// console.log(e.media);
// console.log(e.aniDbEpisode);
// console.log(e.playbackType);
// Prevent default behavior if needed
// e.preventDefault();
e.next();
});
Referenced Types
AL_AnimeCollection
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
MediaListCollection | AL_AnimeCollection_MediaListCollection | - |
AL_AnimeCollection_MediaListCollection
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
lists | Array<AL_AnimeCollection_MediaListCollection_Lists> | - |
AL_AnimeCollection_MediaListCollection_Lists
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
status | AL_MediaListStatus | - |
name | string | - |
isCustomList | boolean | - |
entries | Array<AL_AnimeCollection_MediaListCollection_Lists_Entries> | - |
AL_AnimeCollection_MediaListCollection_Lists_Entries
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | number | - |
score | number | - |
progress | number | - |
status | AL_MediaListStatus | - |
notes | string | - |
repeat | number | - |
private | boolean | - |
startedAt | AL_AnimeCollection_MediaListCollection_Lists_Entries_StartedAt | - |
completedAt | AL_AnimeCollection_MediaListCollection_Lists_Entries_CompletedAt | - |
media | AL_BaseAnime | - |
AL_AnimeCollection_MediaListCollection_Lists_Entries_CompletedAt
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_AnimeCollection_MediaListCollection_Lists_Entries_StartedAt
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_AnimeDetailsById_Media
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
siteUrl | string | - |
id | number | - |
duration | number | - |
genres | Array<string> | - |
averageScore | number | - |
popularity | number | - |
meanScore | number | - |
description | string | - |
trailer | AL_AnimeDetailsById_Media_Trailer | - |
startDate | AL_AnimeDetailsById_Media_StartDate | - |
endDate | AL_AnimeDetailsById_Media_EndDate | - |
studios | AL_AnimeDetailsById_Media_Studios | - |
characters | AL_AnimeDetailsById_Media_Characters | - |
staff | AL_AnimeDetailsById_Media_Staff | - |
rankings | Array<AL_AnimeDetailsById_Media_Rankings> | - |
recommendations | AL_AnimeDetailsById_Media_Recommendations | - |
relations | AL_AnimeDetailsById_Media_Relations | - |
AL_AnimeDetailsById_Media_Characters
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
edges | Array<AL_AnimeDetailsById_Media_Characters_Edges> | - |
AL_AnimeDetailsById_Media_Characters_Edges
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | number | - |
role | AL_CharacterRole | - |
name | string | - |
node | AL_BaseCharacter | - |
AL_AnimeDetailsById_Media_EndDate
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_AnimeDetailsById_Media_Rankings
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
context | string | - |
type | AL_MediaRankType | - |
rank | number | - |
year | number | - |
format | AL_MediaFormat | - |
allTime | boolean | - |
season | AL_MediaSeason | - |
AL_AnimeDetailsById_Media_Recommendations
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
edges | Array<AL_AnimeDetailsById_Media_Recommendations_Edges> | - |
AL_AnimeDetailsById_Media_Recommendations_Edges
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
node | AL_AnimeDetailsById_Media_Recommendations_Edges_Node | - |
AL_AnimeDetailsById_Media_Recommendations_Edges_Node
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
mediaRecommendation | AL_AnimeDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation | - |
AL_AnimeDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | number | - |
idMal | number | - |
siteUrl | string | - |
status | AL_MediaStatus | - |
isAdult | boolean | - |
season | AL_MediaSeason | - |
type | AL_MediaType | - |
format | AL_MediaFormat | - |
meanScore | number | - |
description | string | - |
episodes | number | - |
trailer | AL_AnimeDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_Trailer | - |
startDate | AL_AnimeDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_StartDate | - |
coverImage | AL_AnimeDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_CoverImage | - |
bannerImage | string | - |
title | AL_AnimeDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_Title | - |
AL_AnimeDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_CoverImage
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
extraLarge | string | - |
large | string | - |
medium | string | - |
color | string | - |
AL_AnimeDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_StartDate
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_AnimeDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_Title
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
romaji | string | - |
english | string | - |
native | string | - |
userPreferred | string | - |
AL_AnimeDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_Trailer
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | string | - |
site | string | - |
thumbnail | string | - |
AL_AnimeDetailsById_Media_Relations
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
edges | Array<AL_AnimeDetailsById_Media_Relations_Edges> | - |
AL_AnimeDetailsById_Media_Relations_Edges
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
relationType | AL_MediaRelation | - |
node | AL_BaseAnime | - |
AL_AnimeDetailsById_Media_Staff
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
edges | Array<AL_AnimeDetailsById_Media_Staff_Edges> | - |
AL_AnimeDetailsById_Media_Staff_Edges
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
role | string | - |
node | AL_AnimeDetailsById_Media_Staff_Edges_Node | - |
AL_AnimeDetailsById_Media_Staff_Edges_Node
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
name | AL_AnimeDetailsById_Media_Staff_Edges_Node_Name | - |
id | number | - |
AL_AnimeDetailsById_Media_Staff_Edges_Node_Name
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
full | string | - |
AL_AnimeDetailsById_Media_StartDate
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_AnimeDetailsById_Media_Studios
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
nodes | Array<AL_AnimeDetailsById_Media_Studios_Nodes> | - |
AL_AnimeDetailsById_Media_Studios_Nodes
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
name | string | - |
id | number | - |
AL_AnimeDetailsById_Media_Trailer
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | string | - |
site | string | - |
thumbnail | string | - |
AL_AnimeListEntry
Filepath: internal/api/anilist/collection_helper.go
AL_AnimeCollection_MediaListCollection_Lists_Entries
AL_BaseAnime
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | number | - |
idMal | number | - |
siteUrl | string | - |
status | AL_MediaStatus | - |
season | AL_MediaSeason | - |
type | AL_MediaType | - |
format | AL_MediaFormat | - |
seasonYear | number | - |
bannerImage | string | - |
episodes | number | - |
synonyms | Array<string> | - |
isAdult | boolean | - |
countryOfOrigin | string | - |
meanScore | number | - |
description | string | - |
genres | Array<string> | - |
duration | number | - |
trailer | AL_BaseAnime_Trailer | - |
title | AL_BaseAnime_Title | - |
coverImage | AL_BaseAnime_CoverImage | - |
startDate | AL_BaseAnime_StartDate | - |
endDate | AL_BaseAnime_EndDate | - |
nextAiringEpisode | AL_BaseAnime_NextAiringEpisode | - |
AL_BaseAnime_CoverImage
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
extraLarge | string | - |
large | string | - |
medium | string | - |
color | string | - |
AL_BaseAnime_EndDate
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_BaseAnime_NextAiringEpisode
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
airingAt | number | - |
timeUntilAiring | number | - |
episode | number | - |
AL_BaseAnime_StartDate
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_BaseAnime_Title
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
userPreferred | string | - |
romaji | string | - |
english | string | - |
native | string | - |
AL_BaseAnime_Trailer
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | string | - |
site | string | - |
thumbnail | string | - |
AL_BaseCharacter
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | number | - |
isFavourite | boolean | - |
gender | string | - |
age | string | - |
dateOfBirth | AL_BaseCharacter_DateOfBirth | - |
name | AL_BaseCharacter_Name | - |
image | AL_BaseCharacter_Image | - |
description | string | - |
siteUrl | string | - |
AL_BaseCharacter_DateOfBirth
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_BaseCharacter_Image
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
large | string | - |
AL_BaseCharacter_Name
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
full | string | - |
native | string | - |
alternative | Array<string> | - |
AL_BaseManga
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | number | - |
idMal | number | - |
siteUrl | string | - |
status | AL_MediaStatus | - |
season | AL_MediaSeason | - |
type | AL_MediaType | - |
format | AL_MediaFormat | - |
bannerImage | string | - |
chapters | number | - |
volumes | number | - |
synonyms | Array<string> | - |
isAdult | boolean | - |
countryOfOrigin | string | - |
meanScore | number | - |
description | string | - |
genres | Array<string> | - |
title | AL_BaseManga_Title | - |
coverImage | AL_BaseManga_CoverImage | - |
startDate | AL_BaseManga_StartDate | - |
endDate | AL_BaseManga_EndDate | - |
AL_BaseManga_CoverImage
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
extraLarge | string | - |
large | string | - |
medium | string | - |
color | string | - |
AL_BaseManga_EndDate
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_BaseManga_StartDate
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_BaseManga_Title
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
userPreferred | string | - |
romaji | string | - |
english | string | - |
native | string | - |
AL_CharacterRole
Filepath: internal/api/anilist/models_gen.go
"MAIN" | "SUPPORTING" | "BACKGROUND"
AL_CompleteAnime
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | number | - |
idMal | number | - |
siteUrl | string | - |
status | AL_MediaStatus | - |
season | AL_MediaSeason | - |
seasonYear | number | - |
type | AL_MediaType | - |
format | AL_MediaFormat | - |
bannerImage | string | - |
episodes | number | - |
synonyms | Array<string> | - |
isAdult | boolean | - |
countryOfOrigin | string | - |
meanScore | number | - |
description | string | - |
genres | Array<string> | - |
duration | number | - |
trailer | AL_CompleteAnime_Trailer | - |
title | AL_CompleteAnime_Title | - |
coverImage | AL_CompleteAnime_CoverImage | - |
startDate | AL_CompleteAnime_StartDate | - |
endDate | AL_CompleteAnime_EndDate | - |
nextAiringEpisode | AL_CompleteAnime_NextAiringEpisode | - |
relations | AL_CompleteAnime_Relations | - |
AL_CompleteAnime_CoverImage
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
extraLarge | string | - |
large | string | - |
medium | string | - |
color | string | - |
AL_CompleteAnime_EndDate
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_CompleteAnime_NextAiringEpisode
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
airingAt | number | - |
timeUntilAiring | number | - |
episode | number | - |
AL_CompleteAnime_Relations
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
edges | Array<AL_CompleteAnime_Relations_Edges> | - |
AL_CompleteAnime_Relations_Edges
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
relationType | AL_MediaRelation | - |
node | AL_BaseAnime | - |
AL_CompleteAnime_StartDate
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_CompleteAnime_Title
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
userPreferred | string | - |
romaji | string | - |
english | string | - |
native | string | - |
AL_CompleteAnime_Trailer
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | string | - |
site | string | - |
thumbnail | string | - |
AL_FuzzyDateInput
Filepath: internal/api/anilist/models_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_MangaCollection
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
MediaListCollection | AL_MangaCollection_MediaListCollection | - |
AL_MangaCollection_MediaListCollection
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
lists | Array<AL_MangaCollection_MediaListCollection_Lists> | - |
AL_MangaCollection_MediaListCollection_Lists
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
status | AL_MediaListStatus | - |
name | string | - |
isCustomList | boolean | - |
entries | Array<AL_MangaCollection_MediaListCollection_Lists_Entries> | - |
AL_MangaCollection_MediaListCollection_Lists_Entries
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | number | - |
score | number | - |
progress | number | - |
status | AL_MediaListStatus | - |
notes | string | - |
repeat | number | - |
private | boolean | - |
startedAt | AL_MangaCollection_MediaListCollection_Lists_Entries_StartedAt | - |
completedAt | AL_MangaCollection_MediaListCollection_Lists_Entries_CompletedAt | - |
media | AL_BaseManga | - |
AL_MangaCollection_MediaListCollection_Lists_Entries_CompletedAt
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_MangaCollection_MediaListCollection_Lists_Entries_StartedAt
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_MangaDetailsById_Media
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
siteUrl | string | - |
id | number | - |
duration | number | - |
genres | Array<string> | - |
rankings | Array<AL_MangaDetailsById_Media_Rankings> | - |
characters | AL_MangaDetailsById_Media_Characters | - |
recommendations | AL_MangaDetailsById_Media_Recommendations | - |
relations | AL_MangaDetailsById_Media_Relations | - |
AL_MangaDetailsById_Media_Characters
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
edges | Array<AL_MangaDetailsById_Media_Characters_Edges> | - |
AL_MangaDetailsById_Media_Characters_Edges
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | number | - |
role | AL_CharacterRole | - |
name | string | - |
node | AL_BaseCharacter | - |
AL_MangaDetailsById_Media_Rankings
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
context | string | - |
type | AL_MediaRankType | - |
rank | number | - |
year | number | - |
format | AL_MediaFormat | - |
allTime | boolean | - |
season | AL_MediaSeason | - |
AL_MangaDetailsById_Media_Recommendations
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
edges | Array<AL_MangaDetailsById_Media_Recommendations_Edges> | - |
AL_MangaDetailsById_Media_Recommendations_Edges
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
node | AL_MangaDetailsById_Media_Recommendations_Edges_Node | - |
AL_MangaDetailsById_Media_Recommendations_Edges_Node
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
mediaRecommendation | AL_MangaDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation | - |
AL_MangaDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | number | - |
idMal | number | - |
siteUrl | string | - |
status | AL_MediaStatus | - |
season | AL_MediaSeason | - |
type | AL_MediaType | - |
format | AL_MediaFormat | - |
bannerImage | string | - |
chapters | number | - |
volumes | number | - |
synonyms | Array<string> | - |
isAdult | boolean | - |
countryOfOrigin | string | - |
meanScore | number | - |
description | string | - |
title | AL_MangaDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_Title | - |
coverImage | AL_MangaDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_CoverImage | - |
startDate | AL_MangaDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_StartDate | - |
endDate | AL_MangaDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_EndDate | - |
AL_MangaDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_CoverImage
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
extraLarge | string | - |
large | string | - |
medium | string | - |
color | string | - |
AL_MangaDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_EndDate
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_MangaDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_StartDate
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
year | number | - |
month | number | - |
day | number | - |
AL_MangaDetailsById_Media_Recommendations_Edges_Node_MediaRecommendation_Title
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
userPreferred | string | - |
romaji | string | - |
english | string | - |
native | string | - |
AL_MangaDetailsById_Media_Relations
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
edges | Array<AL_MangaDetailsById_Media_Relations_Edges> | - |
AL_MangaDetailsById_Media_Relations_Edges
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
relationType | AL_MediaRelation | - |
node | AL_BaseManga | - |
AL_MediaFormat
Filepath: internal/api/anilist/models_gen.go
"TV" | "TV_SHORT" | "MOVIE" | "SPECIAL" | "OVA" | "ONA" | "MUSIC" | "MANGA" | "NOVEL" | "ONE_SHOT"
AL_MediaListStatus
Filepath: internal/api/anilist/models_gen.go
"CURRENT" | "PLANNING" | "COMPLETED" | "DROPPED" | "PAUSED" | "REPEATING"
AL_MediaRankType
Filepath: internal/api/anilist/models_gen.go
"RATED" | "POPULAR"
AL_MediaRelation
Filepath: internal/api/anilist/models_gen.go
"ADAPTATION" | "PREQUEL" | "SEQUEL" | "PARENT" | "SIDE_STORY" | "CHARACTER" | "SUMMARY" | "ALTERNATIVE" | "SPIN_OFF" | "OTHER" | "SOURCE" | "COMPILATION" | "CONTAINS"
AL_MediaSeason
Filepath: internal/api/anilist/models_gen.go
"WINTER" | "SPRING" | "SUMMER" | "FALL"
AL_MediaStatus
Filepath: internal/api/anilist/models_gen.go
"FINISHED" | "RELEASING" | "NOT_YET_RELEASED" | "CANCELLED" | "HIATUS"
AL_MediaType
Filepath: internal/api/anilist/models_gen.go
"ANIME" | "MANGA"
AL_StudioDetails
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
Studio | AL_StudioDetails_Studio | - |
AL_StudioDetails_Studio
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
id | number | - |
isAnimationStudio | boolean | - |
name | string | - |
media | AL_StudioDetails_Studio_Media | - |
AL_StudioDetails_Studio_Media
Filepath: internal/api/anilist/client_gen.go
Fields:
Property | Type | Description |
---|---|---|
nodes | Array<AL_BaseAnime> | - |
Anime_AutoDownloaderRule
Filepath: internal/library/anime/autodownloader_rule.go
Fields:
Property | Type | Description |
---|---|---|
dbId | number | Will be set when fetched from the database |
enabled | boolean | - |
mediaId | number | - |
releaseGroups | Array<string> | - |
resolutions | Array<string> | - |
comparisonTitle | string | - |
titleComparisonType | Anime_AutoDownloaderRuleTitleComparisonType | - |
episodeType | Anime_AutoDownloaderRuleEpisodeType | - |
episodeNumbers | Array<number> | - |
destination | string | - |
additionalTerms | Array<string> | - |
Anime_AutoDownloaderRuleEpisodeType
Filepath: internal/library/anime/autodownloader_rule.go
"recent" | "selected"
Anime_AutoDownloaderRuleTitleComparisonType
Filepath: internal/library/anime/autodownloader_rule.go
"contains" | "likely"
Anime_Entry
Filepath: internal/library/anime/entry.go
Fields:
Property | Type | Description |
---|---|---|
mediaId | number | - |
media | AL_BaseAnime | - |
listData | Anime_EntryListData | - |
libraryData | Anime_EntryLibraryData | - |
downloadInfo | Anime_EntryDownloadInfo | - |
episodes | Array<Anime_Episode> | - |
nextEpisode | Anime_Episode | - |
localFiles | Array<Anime_LocalFile> | - |
anidbId | number | - |
currentEpisodeCount | number | - |
Anime_EntryDownloadEpisode
Filepath: internal/library/anime/entry_download_info.go
Fields:
Property | Type | Description |
---|---|---|
episodeNumber | number | - |
aniDBEpisode | string | - |
episode | Anime_Episode | - |
Anime_EntryDownloadInfo
Filepath: internal/library/anime/entry_download_info.go
Fields:
Property | Type | Description |
---|---|---|
episodesToDownload | Array<Anime_EntryDownloadEpisode> | - |
canBatch | boolean | - |
batchAll | boolean | - |
hasInaccurateSchedule | boolean | - |
rewatch | boolean | - |
absoluteOffset | number | - |
Anime_EntryLibraryData
Filepath: internal/library/anime/entry_library_data.go
Fields:
Property | Type | Description |
---|---|---|
allFilesLocked | boolean | - |
sharedPath | string | - |
unwatchedCount | number | - |
mainFileCount | number | - |
Anime_EntryListData
Filepath: internal/library/anime/entry.go
Fields:
Property | Type | Description |
---|---|---|
progress | number | - |
score | number | - |
status | AL_MediaListStatus | - |
repeat | number | - |
startedAt | string | - |
completedAt | string | - |
Anime_Episode
Filepath: internal/library/anime/episode.go
Fields:
Property | Type | Description |
---|---|---|
type | Anime_LocalFileType | - |
displayTitle | string | e.g, Show: "Episode 1", Movie: "Violet Evergarden The Movie" |
episodeTitle | string | e.g, "Shibuya Incident - Gate, Open" |
episodeNumber | number | - |
aniDBEpisode | string | AniDB episode number |
absoluteEpisodeNumber | number | - |
progressNumber | number | Usually the same as EpisodeNumber, unless there is a discrepancy between AniList and AniDB |
localFile | Anime_LocalFile | - |
isDownloaded | boolean | Is in the local files |
episodeMetadata | Anime_EpisodeMetadata | (image, airDate, length, summary, overview) |
fileMetadata | Anime_LocalFileMetadata | (episode, aniDBEpisode, type...) |
isInvalid | boolean | No AniDB data |
metadataIssue | string | Alerts the user that there is a discrepancy between AniList and AniDB |
baseAnime | AL_BaseAnime | - |
Anime_EpisodeMetadata
Filepath: internal/library/anime/episode.go
Fields:
Property | Type | Description |
---|---|---|
anidbId | number | - |
image | string | - |
airDate | string | - |
length | number | - |
summary | string | - |
overview | string | - |
isFiller | boolean | - |
Anime_LibraryCollection
Filepath: internal/library/anime/collection.go
Fields:
Property | Type | Description |
---|---|---|
continueWatchingList | Array<Anime_Episode> | - |
lists | Array<Anime_LibraryCollectionList> | - |
unmatchedLocalFiles | Array<Anime_LocalFile> | - |
unmatchedGroups | Array<Anime_UnmatchedGroup> | - |
ignoredLocalFiles | Array<Anime_LocalFile> | - |
unknownGroups | Array<Anime_UnknownGroup> | - |
stats | Anime_LibraryCollectionStats | - |
stream | Anime_StreamCollection | Hydrated by the route handler |
Anime_LibraryCollectionEntry
Filepath: internal/library/anime/collection.go
Fields:
Property | Type | Description |
---|---|---|
media | AL_BaseAnime | - |
mediaId | number | - |
libraryData | Anime_EntryLibraryData | Library data |
listData | Anime_EntryListData | AniList list data |
Anime_LibraryCollectionList
Filepath: internal/library/anime/collection.go
Fields:
Property | Type | Description |
---|---|---|
type | AL_MediaListStatus | - |
status | AL_MediaListStatus | - |
entries | Array<Anime_LibraryCollectionEntry> | - |
Anime_LibraryCollectionStats
Filepath: internal/library/anime/collection.go
Fields:
Property | Type | Description |
---|---|---|
totalEntries | number | - |
totalFiles | number | - |
totalShows | number | - |
totalMovies | number | - |
totalSpecials | number | - |
totalSize | string | - |
Anime_LocalFile
Filepath: internal/library/anime/localfile.go
Fields:
Property | Type | Description |
---|---|---|
path | string | - |
name | string | - |
parsedInfo | Anime_LocalFileParsedData | - |
parsedFolderInfo | Array<Anime_LocalFileParsedData> | - |
metadata | Anime_LocalFileMetadata | - |
locked | boolean | - |
ignored | boolean | Unused for now |
mediaId | number | - |
Anime_LocalFileMetadata
Filepath: internal/library/anime/localfile.go
Fields:
Property | Type | Description |
---|---|---|
episode | number | - |
aniDBEpisode | string | - |
type | Anime_LocalFileType | - |
Anime_LocalFileParsedData
Filepath: internal/library/anime/localfile.go
Fields:
Property | Type | Description |
---|---|---|
original | string | - |
title | string | - |
releaseGroup | string | - |
season | string | - |
seasonRange | Array<string> | - |
part | string | - |
partRange | Array<string> | - |
episode | string | - |
episodeRange | Array<string> | - |
episodeTitle | string | - |
year | string | - |
Anime_LocalFileType
Filepath: internal/library/anime/localfile.go
"main" | "special" | "nc"
Anime_LocalFileWrapperEntry
Filepath: internal/library/anime/localfile_wrapper.go
Fields:
Property | Type | Description |
---|---|---|
mediaId | number | - |
localFiles | Array<Anime_LocalFile> | - |
Anime_MissingEpisodes
Filepath: internal/library/anime/missing_episodes.go
Fields:
Property | Type | Description |
---|---|---|
episodes | Array<Anime_Episode> | - |
silencedEpisodes | Array<Anime_Episode> | - |
Anime_NormalizedMedia
Filepath: internal/library/anime/normalized_media.go
Fields:
Property | Type | Description |
---|---|---|
id | number | - |
idMal | number | - |
siteUrl | string | - |
status | AL_MediaStatus | - |
season | AL_MediaSeason | - |
type | AL_MediaType | - |
format | AL_MediaFormat | - |
seasonYear | number | - |
bannerImage | string | - |
episodes | number | - |
synonyms | Array<string> | - |
isAdult | boolean | - |
countryOfOrigin | string | - |
meanScore | number | - |
description | string | - |
genres | Array<string> | - |
duration | number | - |
trailer | AL_BaseAnime_Trailer | - |
title | AL_BaseAnime_Title | - |
coverImage | AL_BaseAnime_CoverImage | - |
startDate | AL_BaseAnime_StartDate | - |
endDate | AL_BaseAnime_EndDate | - |
nextAiringEpisode | AL_BaseAnime_NextAiringEpisode | - |
Anime_StreamCollection
Filepath: internal/library/anime/collection.go
Fields:
Property | Type | Description |
---|---|---|
continueWatchingList | Array<Anime_Episode> | - |
anime | Array<AL_BaseAnime> | - |
listData | Record<number, Anime_EntryListData> | - |
Anime_UnknownGroup
Filepath: internal/library/anime/collection.go
Fields:
Property | Type | Description |
---|---|---|
mediaId | number | - |
localFiles | Array<Anime_LocalFile> | - |
Anime_UnmatchedGroup
Filepath: internal/library/anime/collection.go
Fields:
Property | Type | Description |
---|---|---|
dir | string | - |
localFiles | Array<Anime_LocalFile> | - |
suggestions | Array<AL_BaseAnime> | - |
AutoDownloader_NormalizedTorrent
Filepath: internal/library/autodownloader/autodownloader_torrent.go
Fields:
Property | Type | Description |
---|---|---|
parsedData | Metadata | - |
magnet | string | Access using GetMagnet() |
provider | string | - |
name | string | - |
date | string | - |
size | number | - |
formattedSize | string | - |
seeders | number | - |
leechers | number | - |
downloadCount | number | - |
link | string | - |
downloadUrl | string | - |
magnetLink | string | - |
infoHash | string | - |
resolution | string | - |
isBatch | boolean | - |
episodeNumber | number | - |
releaseGroup | string | - |
isBestRelease | boolean | - |
confirmed | boolean | - |
Continuity_Kind
Filepath: internal/continuity/manager.go
"onlinestream" | "mediastream" | "external_player"
Continuity_WatchHistoryItem
Filepath: internal/continuity/history.go
Fields:
Property | Type | Description |
---|---|---|
kind | Continuity_Kind | - |
filepath | string | - |
mediaId | number | - |
episodeNumber | number | - |
currentTime | number | - |
duration | number | - |
timeAdded | string | - |
timeUpdated | string | - |
HibikeManga_ChapterDetails
Filepath: internal/extension/hibike/manga/types.go
Fields:
Property | Type | Description |
---|---|---|
provider | string | - |
id | string | - |
url | string | - |
title | string | - |
chapter | string | - |
index | number | - |
scanlator | string | - |
language | string | - |
rating | number | - |
updatedAt | string | - |
Manga_ChapterContainer
Filepath: internal/manga/chapter_container.go
Fields:
Property | Type | Description |
---|---|---|
mediaId | number | - |
provider | string | - |
chapters | Array<HibikeManga_ChapterDetails> | - |
Manga_Collection
Filepath: internal/manga/collection.go
Fields:
Property | Type | Description |
---|---|---|
lists | Array<Manga_CollectionList> | - |
Manga_CollectionEntry
Filepath: internal/manga/collection.go
Fields:
Property | Type | Description |
---|---|---|
media | AL_BaseManga | - |
mediaId | number | - |
listData | Manga_EntryListData | AniList list data |
Manga_CollectionList
Filepath: internal/manga/collection.go
Fields:
Property | Type | Description |
---|---|---|
type | AL_MediaListStatus | - |
status | AL_MediaListStatus | - |
entries | Array<Manga_CollectionEntry> | - |
Manga_Entry
Filepath: internal/manga/manga_entry.go
Fields:
Property | Type | Description |
---|---|---|
mediaId | number | - |
media | AL_BaseManga | - |
listData | Manga_EntryListData | - |
Manga_EntryListData
Filepath: internal/manga/manga_entry.go
Fields:
Property | Type | Description |
---|---|---|
progress | number | - |
score | number | - |
status | AL_MediaListStatus | - |
repeat | number | - |
startedAt | string | - |
completedAt | string | - |
Manga_MangaLatestChapterNumberItem
Filepath: internal/manga/chapter_container.go
Fields:
Property | Type | Description |
---|---|---|
provider | string | - |
scanlator | string | - |
language | string | - |
number | number | - |
Manga_MediaMap
Filepath: internal/manga/download.go
Record<number, Manga_ProviderDownloadMap>
Manga_ProviderDownloadMap
Filepath: internal/manga/download.go
Record<string, Array<Manga_ProviderDownloadMapChapterInfo>>
Manga_ProviderDownloadMapChapterInfo
Filepath: internal/manga/download.go
Fields:
Property | Type | Description |
---|---|---|
chapterId | string | - |
chapterNumber | string | - |
Metadata_AnimeMappings
Filepath: internal/api/metadata/types.go
Fields:
Property | Type | Description |
---|---|---|
animeplanetId | string | - |
kitsuId | number | - |
malId | number | - |
type | string | - |
anilistId | number | - |
anisearchId | number | - |
anidbId | number | - |
notifymoeId | string | - |
livechartId | number | - |
thetvdbId | number | - |
imdbId | string | - |
themoviedbId | string | - |
Metadata_AnimeMetadata
Filepath: internal/api/metadata/types.go
Fields:
Property | Type | Description |
---|---|---|
titles | Record<string, string> | - |
episodes | Record<string, Metadata_EpisodeMetadata> | - |
episodeCount | number | - |
specialCount | number | - |
mappings | Metadata_AnimeMappings | - |
Metadata_EpisodeMetadata
Filepath: internal/api/metadata/types.go
Fields:
Property | Type | Description |
---|---|---|
anidbId | number | - |
tvdbId | number | - |
title | string | - |
image | string | - |
airDate | string | - |
length | number | - |
summary | string | - |
overview | string | - |
episodeNumber | number | - |
episode | string | - |
seasonNumber | number | - |
absoluteEpisodeNumber | number | - |
anidbEid | number | - |
Models_AutoDownloaderSettings
Filepath: internal/database/models/models.go
Fields:
Property | Type | Description |
---|---|---|
provider | string | - |
interval | number | - |
enabled | boolean | - |
downloadAutomatically | boolean | - |
enableEnhancedQueries | boolean | - |
enableSeasonCheck | boolean | - |
useDebrid | boolean | - |