mirror of
https://github.com/moku-project/Moku.git
synced 2026-06-13 09:19:56 -05:00
Feat: Reworked ENTIRE Project for Readability
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
export interface DownloadQueueItem {
|
||||
progress: number;
|
||||
state: "QUEUED" | "DOWNLOADING" | "FINISHED" | "ERROR";
|
||||
chapter: {
|
||||
id: number;
|
||||
name: string;
|
||||
mangaId: number;
|
||||
pageCount: number;
|
||||
manga: { id: number; title: string; thumbnailUrl: string } | null;
|
||||
};
|
||||
}
|
||||
|
||||
export interface DownloadStatus {
|
||||
state: "STARTED" | "STOPPED";
|
||||
queue: DownloadQueueItem[];
|
||||
}
|
||||
|
||||
export interface Connection<T> {
|
||||
nodes: T[];
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
export interface Chapter {
|
||||
id: number;
|
||||
name: string;
|
||||
chapterNumber: number;
|
||||
sourceOrder: number;
|
||||
isRead: boolean;
|
||||
isDownloaded: boolean;
|
||||
isBookmarked: boolean;
|
||||
pageCount: number;
|
||||
mangaId: number;
|
||||
uploadDate?: string | null;
|
||||
realUrl?: string | null;
|
||||
lastPageRead?: number;
|
||||
scanlator?: string | null;
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
export interface Source {
|
||||
id: string;
|
||||
name: string;
|
||||
lang: string;
|
||||
displayName: string;
|
||||
iconUrl: string;
|
||||
isNsfw: boolean;
|
||||
}
|
||||
|
||||
export interface Extension {
|
||||
apkName: string;
|
||||
pkgName: string;
|
||||
name: string;
|
||||
lang: string;
|
||||
versionName: string;
|
||||
isInstalled: boolean;
|
||||
isObsolete: boolean;
|
||||
hasUpdate: boolean;
|
||||
iconUrl: string;
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
export * from "./manga";
|
||||
export * from "./chapter";
|
||||
export * from "./extension";
|
||||
export * from "./tracking";
|
||||
export * from "./api";
|
||||
@@ -0,0 +1,34 @@
|
||||
export interface Category {
|
||||
id: number;
|
||||
name: string;
|
||||
order: number;
|
||||
default: boolean;
|
||||
includeInUpdate: string;
|
||||
includeInDownload: string;
|
||||
mangas?: { nodes: Manga[] };
|
||||
}
|
||||
|
||||
export interface Manga {
|
||||
id: number;
|
||||
title: string;
|
||||
thumbnailUrl: string;
|
||||
inLibrary: boolean;
|
||||
downloadCount?: number;
|
||||
unreadCount?: number;
|
||||
chapterCount?: number;
|
||||
description?: string | null;
|
||||
status?: string | null;
|
||||
author?: string | null;
|
||||
artist?: string | null;
|
||||
genre?: string[];
|
||||
realUrl?: string | null;
|
||||
source?: { id: string; name: string; displayName: string } | null;
|
||||
}
|
||||
|
||||
export interface MangaDetail extends Manga {
|
||||
description: string | null;
|
||||
author: string | null;
|
||||
artist: string | null;
|
||||
status: string | null;
|
||||
genre: string[];
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
export interface TrackerStatus {
|
||||
value: number;
|
||||
name: string;
|
||||
}
|
||||
|
||||
export interface Tracker {
|
||||
id: number;
|
||||
name: string;
|
||||
icon: string;
|
||||
isLoggedIn: boolean;
|
||||
authUrl: string | null;
|
||||
supportsPrivateTracking: boolean;
|
||||
scores: string[];
|
||||
statuses: TrackerStatus[];
|
||||
}
|
||||
|
||||
export interface TrackRecord {
|
||||
id: number;
|
||||
trackerId: number;
|
||||
remoteId: string;
|
||||
title: string;
|
||||
status: number;
|
||||
score: number;
|
||||
displayScore: string;
|
||||
lastChapterRead: number;
|
||||
totalChapters: number;
|
||||
remoteUrl: string | null;
|
||||
startDate: string | null;
|
||||
finishDate: string | null;
|
||||
private: boolean;
|
||||
}
|
||||
|
||||
export interface TrackSearch {
|
||||
id: number;
|
||||
trackerId: number;
|
||||
remoteId: string;
|
||||
title: string;
|
||||
coverUrl: string | null;
|
||||
summary: string | null;
|
||||
publishingStatus: string | null;
|
||||
publishingType: string | null;
|
||||
startDate: string | null;
|
||||
totalChapters: number;
|
||||
trackingUrl: string | null;
|
||||
}
|
||||
Reference in New Issue
Block a user