2023-08-07 23:32:36 +02:00
export type Maybe < T > = T | null ;
export type InputMaybe < T > = Maybe < T > ;
export type Exact < T extends { [ key : string ] : unknown } > = { [ K in keyof T ] : T [ K ] } ;
export type MakeOptional < T , K extends keyof T > = Omit < T , K > & { [ SubKey in K ] ? : Maybe < T [ SubKey ] > } ;
export type MakeMaybe < T , K extends keyof T > = Omit < T , K > & { [ SubKey in K ] : Maybe < T [ SubKey ] > } ;
export type MakeEmpty < T extends { [ key : string ] : unknown } , K extends keyof T > = { [ _ in K ] ? : never } ;
export type Incremental < T > = T | { [ P in keyof T ] ? : P extends ' $fragmentName' | '__typename' ? T [ P ] : never } ;
/** All built-in and custom scalars, mapped to their actual values */
export type Scalars = {
ID : { input : string ; output : string ; }
String : { input : string ; output : string ; }
Boolean : { input : boolean ; output : boolean ; }
Int : { input : number ; output : number ; }
Float : { input : number ; output : number ; }
Cursor : { input : string ; output : string ; }
2025-09-18 22:27:19 +02:00
Duration : { input : string ; output : string ; }
2023-08-07 23:32:36 +02:00
LongString : { input : string ; output : string ; }
Upload : { input : any ; output : any ; }
} ;
2023-11-24 01:33:56 +01:00
export type AboutServerPayload = {
__typename ? : 'AboutServerPayload' ;
2023-08-07 23:32:36 +02:00
buildTime : Scalars [ 'LongString' ] [ 'output' ] ;
buildType : Scalars [ 'String' ] [ 'output' ] ;
discord : Scalars [ 'String' ] [ 'output' ] ;
github : Scalars [ 'String' ] [ 'output' ] ;
name : Scalars [ 'String' ] [ 'output' ] ;
2025-04-06 23:58:58 +02:00
/** @deprecated The version includes the revision as the patch number */
2023-08-07 23:32:36 +02:00
revision : Scalars [ 'String' ] [ 'output' ] ;
version : Scalars [ 'String' ] [ 'output' ] ;
} ;
2023-12-05 22:20:13 +01:00
export type AboutWebUi = {
__typename ? : 'AboutWebUI' ;
2025-04-06 23:58:58 +02:00
channel : WebUiChannel ;
2023-12-05 22:20:13 +01:00
tag : Scalars [ 'String' ] [ 'output' ] ;
} ;
2025-07-12 01:08:40 +02:00
export enum AuthMode {
BasicAuth = 'BASIC_AUTH' ,
None = 'NONE' ,
2025-07-27 00:03:51 +02:00
SimpleLogin = 'SIMPLE_LOGIN' ,
UiLogin = 'UI_LOGIN'
2025-07-12 01:08:40 +02:00
}
2023-08-07 23:32:36 +02:00
export enum BackupRestoreState {
2023-11-02 13:01:01 +01:00
Failure = 'FAILURE' ,
2023-08-07 23:32:36 +02:00
Idle = 'IDLE' ,
RestoringCategories = 'RESTORING_CATEGORIES' ,
2023-11-02 13:01:01 +01:00
RestoringManga = 'RESTORING_MANGA' ,
2025-07-12 01:08:40 +02:00
RestoringMeta = 'RESTORING_META' ,
RestoringSettings = 'RESTORING_SETTINGS' ,
2023-11-02 13:01:01 +01:00
Success = 'SUCCESS'
2023-08-07 23:32:36 +02:00
}
export type BackupRestoreStatus = {
__typename ? : 'BackupRestoreStatus' ;
mangaProgress : Scalars [ 'Int' ] [ 'output' ] ;
state : BackupRestoreState ;
totalManga : Scalars [ 'Int' ] [ 'output' ] ;
} ;
2024-01-11 03:53:06 +01:00
export type BindTrackInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
mangaId : Scalars [ 'Int' ] [ 'input' ] ;
2025-07-12 01:08:40 +02:00
/** This will only work if the tracker of the track record supports private tracking */
private ? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2024-01-26 20:50:51 +01:00
remoteId : Scalars [ 'LongString' ] [ 'input' ] ;
trackerId : Scalars [ 'Int' ] [ 'input' ] ;
2024-01-11 03:53:06 +01:00
} ;
export type BindTrackPayload = {
__typename ? : 'BindTrackPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
trackRecord : TrackRecordType ;
} ;
2023-08-07 23:32:36 +02:00
export type BooleanFilterInput = {
distinctFrom? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
distinctFromAll? : InputMaybe < Array < Scalars [ 'Boolean' ] [ 'input' ] > > ;
distinctFromAny? : InputMaybe < Array < Scalars [ 'Boolean' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
equalTo? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
greaterThan? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
greaterThanOrEqualTo? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
in ? : InputMaybe < Array < Scalars [ 'Boolean' ] [ 'input' ] > > ;
isNull? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lessThan? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lessThanOrEqualTo? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
notDistinctFrom? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
notEqualTo? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notEqualToAll? : InputMaybe < Array < Scalars [ 'Boolean' ] [ 'input' ] > > ;
notEqualToAny? : InputMaybe < Array < Scalars [ 'Boolean' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notIn? : InputMaybe < Array < Scalars [ 'Boolean' ] [ 'input' ] > > ;
} ;
export type CategoryConditionInput = {
default ? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
id? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
name? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
order? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
} ;
export type CategoryEdge = Edge & {
__typename ? : 'CategoryEdge' ;
cursor : Scalars [ 'Cursor' ] [ 'output' ] ;
node : CategoryType ;
} ;
export type CategoryFilterInput = {
and? : InputMaybe < Array < CategoryFilterInput > > ;
default ? : InputMaybe < BooleanFilterInput > ;
id? : InputMaybe < IntFilterInput > ;
name? : InputMaybe < StringFilterInput > ;
not? : InputMaybe < CategoryFilterInput > ;
or? : InputMaybe < Array < CategoryFilterInput > > ;
order? : InputMaybe < IntFilterInput > ;
} ;
2025-03-16 21:01:24 +01:00
export enum CategoryJobStatus {
Skipped = 'SKIPPED' ,
Updating = 'UPDATING'
}
2023-08-07 23:32:36 +02:00
export type CategoryMetaType = MetaType & {
__typename ? : 'CategoryMetaType' ;
category : CategoryType ;
categoryId : Scalars [ 'Int' ] [ 'output' ] ;
key : Scalars [ 'String' ] [ 'output' ] ;
value : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type CategoryMetaTypeInput = {
categoryId : Scalars [ 'Int' ] [ 'input' ] ;
key : Scalars [ 'String' ] [ 'input' ] ;
value : Scalars [ 'String' ] [ 'input' ] ;
} ;
export type CategoryNodeList = NodeList & {
__typename ? : 'CategoryNodeList' ;
edges : Array < CategoryEdge > ;
nodes : Array < CategoryType > ;
pageInfo : PageInfo ;
totalCount : Scalars [ 'Int' ] [ 'output' ] ;
} ;
export enum CategoryOrderBy {
Id = 'ID' ,
Name = 'NAME' ,
Order = 'ORDER'
}
2024-07-11 18:13:51 +02:00
export type CategoryOrderInput = {
by : CategoryOrderBy ;
byType? : InputMaybe < SortOrder > ;
} ;
2023-08-07 23:32:36 +02:00
export type CategoryType = {
__typename ? : 'CategoryType' ;
default : Scalars [ 'Boolean' ] [ 'output' ] ;
id : Scalars [ 'Int' ] [ 'output' ] ;
2024-01-21 13:31:04 -08:00
includeInDownload : IncludeOrExclude ;
includeInUpdate : IncludeOrExclude ;
2023-08-07 23:32:36 +02:00
mangas : MangaNodeList ;
meta : Array < CategoryMetaType > ;
name : Scalars [ 'String' ] [ 'output' ] ;
order : Scalars [ 'Int' ] [ 'output' ] ;
} ;
2025-03-16 21:01:24 +01:00
export type CategoryUpdateType = {
__typename ? : 'CategoryUpdateType' ;
category : CategoryType ;
status : CategoryJobStatus ;
} ;
2023-08-07 23:32:36 +02:00
export type ChapterConditionInput = {
chapterNumber? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
fetchedAt? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
id? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
isBookmarked? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
isDownloaded? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
isRead? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lastPageRead? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
lastReadAt? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
mangaId? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
name? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
pageCount? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
realUrl? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
scanlator? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
sourceOrder? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
uploadDate? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
url? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type ChapterEdge = Edge & {
__typename ? : 'ChapterEdge' ;
cursor : Scalars [ 'Cursor' ] [ 'output' ] ;
node : ChapterType ;
} ;
export type ChapterFilterInput = {
and? : InputMaybe < Array < ChapterFilterInput > > ;
chapterNumber? : InputMaybe < FloatFilterInput > ;
fetchedAt? : InputMaybe < LongFilterInput > ;
id? : InputMaybe < IntFilterInput > ;
inLibrary? : InputMaybe < BooleanFilterInput > ;
isBookmarked? : InputMaybe < BooleanFilterInput > ;
isDownloaded? : InputMaybe < BooleanFilterInput > ;
isRead? : InputMaybe < BooleanFilterInput > ;
lastPageRead? : InputMaybe < IntFilterInput > ;
lastReadAt? : InputMaybe < LongFilterInput > ;
mangaId? : InputMaybe < IntFilterInput > ;
name? : InputMaybe < StringFilterInput > ;
not? : InputMaybe < ChapterFilterInput > ;
or? : InputMaybe < Array < ChapterFilterInput > > ;
pageCount? : InputMaybe < IntFilterInput > ;
realUrl? : InputMaybe < StringFilterInput > ;
scanlator? : InputMaybe < StringFilterInput > ;
sourceOrder? : InputMaybe < IntFilterInput > ;
uploadDate? : InputMaybe < LongFilterInput > ;
url? : InputMaybe < StringFilterInput > ;
} ;
export type ChapterMetaType = MetaType & {
__typename ? : 'ChapterMetaType' ;
chapter : ChapterType ;
chapterId : Scalars [ 'Int' ] [ 'output' ] ;
key : Scalars [ 'String' ] [ 'output' ] ;
value : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type ChapterMetaTypeInput = {
chapterId : Scalars [ 'Int' ] [ 'input' ] ;
key : Scalars [ 'String' ] [ 'input' ] ;
value : Scalars [ 'String' ] [ 'input' ] ;
} ;
export type ChapterNodeList = NodeList & {
__typename ? : 'ChapterNodeList' ;
edges : Array < ChapterEdge > ;
nodes : Array < ChapterType > ;
pageInfo : PageInfo ;
totalCount : Scalars [ 'Int' ] [ 'output' ] ;
} ;
export enum ChapterOrderBy {
ChapterNumber = 'CHAPTER_NUMBER' ,
FetchedAt = 'FETCHED_AT' ,
Id = 'ID' ,
LastReadAt = 'LAST_READ_AT' ,
Name = 'NAME' ,
SourceOrder = 'SOURCE_ORDER' ,
UploadDate = 'UPLOAD_DATE'
}
2024-07-11 18:13:51 +02:00
export type ChapterOrderInput = {
by : ChapterOrderBy ;
byType? : InputMaybe < SortOrder > ;
} ;
2023-08-07 23:32:36 +02:00
export type ChapterType = {
__typename ? : 'ChapterType' ;
chapterNumber : Scalars [ 'Float' ] [ 'output' ] ;
fetchedAt : Scalars [ 'LongString' ] [ 'output' ] ;
id : Scalars [ 'Int' ] [ 'output' ] ;
isBookmarked : Scalars [ 'Boolean' ] [ 'output' ] ;
isDownloaded : Scalars [ 'Boolean' ] [ 'output' ] ;
isRead : Scalars [ 'Boolean' ] [ 'output' ] ;
lastPageRead : Scalars [ 'Int' ] [ 'output' ] ;
lastReadAt : Scalars [ 'LongString' ] [ 'output' ] ;
manga : MangaType ;
mangaId : Scalars [ 'Int' ] [ 'output' ] ;
meta : Array < ChapterMetaType > ;
name : Scalars [ 'String' ] [ 'output' ] ;
pageCount : Scalars [ 'Int' ] [ 'output' ] ;
realUrl? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
scanlator? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
sourceOrder : Scalars [ 'Int' ] [ 'output' ] ;
uploadDate : Scalars [ 'LongString' ] [ 'output' ] ;
url : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type CheckBoxFilter = {
__typename ? : 'CheckBoxFilter' ;
default : Scalars [ 'Boolean' ] [ 'output' ] ;
name : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type CheckBoxPreference = {
__typename ? : 'CheckBoxPreference' ;
currentValue? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
default : Scalars [ 'Boolean' ] [ 'output' ] ;
2025-07-27 00:03:51 +02:00
enabled : Scalars [ 'Boolean' ] [ 'output' ] ;
2025-09-08 00:24:32 +02:00
key? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
summary? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-03-16 21:01:24 +01:00
title? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
visible : Scalars [ 'Boolean' ] [ 'output' ] ;
} ;
export type CheckForServerUpdatesPayload = {
__typename ? : 'CheckForServerUpdatesPayload' ;
channel : Scalars [ 'String' ] [ 'output' ] ;
tag : Scalars [ 'String' ] [ 'output' ] ;
url : Scalars [ 'String' ] [ 'output' ] ;
} ;
2023-12-05 22:20:13 +01:00
export type ClearCachedImagesInput = {
cachedPages? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
cachedThumbnails? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
downloadedThumbnails? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
} ;
export type ClearCachedImagesPayload = {
__typename ? : 'ClearCachedImagesPayload' ;
cachedPages? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
cachedThumbnails? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
downloadedThumbnails? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
} ;
2023-08-07 23:32:36 +02:00
export type ClearDownloaderInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type ClearDownloaderPayload = {
__typename ? : 'ClearDownloaderPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
downloadStatus : DownloadStatus ;
} ;
2025-07-27 00:03:51 +02:00
export type ConnectKoSyncAccountInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
password : Scalars [ 'String' ] [ 'input' ] ;
username : Scalars [ 'String' ] [ 'input' ] ;
} ;
2023-08-07 23:32:36 +02:00
export type CreateBackupInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2025-10-04 21:48:44 +02:00
flags? : InputMaybe < PartialBackupFlagsInput > ;
2023-08-07 23:32:36 +02:00
} ;
export type CreateBackupPayload = {
__typename ? : 'CreateBackupPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
url : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type CreateCategoryInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
default ? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2024-01-21 13:31:04 -08:00
includeInDownload? : InputMaybe < IncludeOrExclude > ;
includeInUpdate? : InputMaybe < IncludeOrExclude > ;
2023-08-07 23:32:36 +02:00
name : Scalars [ 'String' ] [ 'input' ] ;
order? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
} ;
export type CreateCategoryPayload = {
__typename ? : 'CreateCategoryPayload' ;
category : CategoryType ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
2025-09-08 00:24:32 +02:00
export enum DatabaseType {
H2 = 'H2' ,
Postgresql = 'POSTGRESQL'
}
2023-08-07 23:32:36 +02:00
export type DeleteCategoryInput = {
categoryId : Scalars [ 'Int' ] [ 'input' ] ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type DeleteCategoryMetaInput = {
categoryId : Scalars [ 'Int' ] [ 'input' ] ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
key : Scalars [ 'String' ] [ 'input' ] ;
} ;
export type DeleteCategoryMetaPayload = {
__typename ? : 'DeleteCategoryMetaPayload' ;
category : CategoryType ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
meta? : Maybe < CategoryMetaType > ;
} ;
export type DeleteCategoryPayload = {
__typename ? : 'DeleteCategoryPayload' ;
category? : Maybe < CategoryType > ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
mangas : Array < MangaType > ;
} ;
export type DeleteChapterMetaInput = {
chapterId : Scalars [ 'Int' ] [ 'input' ] ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
key : Scalars [ 'String' ] [ 'input' ] ;
} ;
export type DeleteChapterMetaPayload = {
__typename ? : 'DeleteChapterMetaPayload' ;
chapter : ChapterType ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
meta? : Maybe < ChapterMetaType > ;
} ;
export type DeleteDownloadedChapterInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
id : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type DeleteDownloadedChapterPayload = {
__typename ? : 'DeleteDownloadedChapterPayload' ;
chapters : ChapterType ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
export type DeleteDownloadedChaptersInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
ids : Array < Scalars [ 'Int' ] [ 'input' ] > ;
} ;
export type DeleteDownloadedChaptersPayload = {
__typename ? : 'DeleteDownloadedChaptersPayload' ;
chapters : Array < ChapterType > ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
export type DeleteGlobalMetaInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
key : Scalars [ 'String' ] [ 'input' ] ;
} ;
export type DeleteGlobalMetaPayload = {
__typename ? : 'DeleteGlobalMetaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
meta? : Maybe < GlobalMetaType > ;
} ;
export type DeleteMangaMetaInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
key : Scalars [ 'String' ] [ 'input' ] ;
mangaId : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type DeleteMangaMetaPayload = {
__typename ? : 'DeleteMangaMetaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
manga : MangaType ;
meta? : Maybe < MangaMetaType > ;
} ;
2024-02-17 20:16:51 +01:00
export type DeleteSourceMetaInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
key : Scalars [ 'String' ] [ 'input' ] ;
sourceId : Scalars [ 'LongString' ] [ 'input' ] ;
} ;
export type DeleteSourceMetaPayload = {
__typename ? : 'DeleteSourceMetaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
meta? : Maybe < SourceMetaType > ;
source? : Maybe < SourceType > ;
} ;
2023-08-07 23:32:36 +02:00
export type DequeueChapterDownloadInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
id : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type DequeueChapterDownloadPayload = {
__typename ? : 'DequeueChapterDownloadPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
downloadStatus : DownloadStatus ;
} ;
export type DequeueChapterDownloadsInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
ids : Array < Scalars [ 'Int' ] [ 'input' ] > ;
} ;
export type DequeueChapterDownloadsPayload = {
__typename ? : 'DequeueChapterDownloadsPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
downloadStatus : DownloadStatus ;
} ;
2024-01-11 03:53:06 +01:00
export type DoubleFilterInput = {
distinctFrom? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
distinctFromAll? : InputMaybe < Array < Scalars [ 'Float' ] [ 'input' ] > > ;
distinctFromAny? : InputMaybe < Array < Scalars [ 'Float' ] [ 'input' ] > > ;
2024-01-11 03:53:06 +01:00
equalTo? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
greaterThan? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
greaterThanOrEqualTo? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
in ? : InputMaybe < Array < Scalars [ 'Float' ] [ 'input' ] > > ;
isNull? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lessThan? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
lessThanOrEqualTo? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
notDistinctFrom? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
notEqualTo? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notEqualToAll? : InputMaybe < Array < Scalars [ 'Float' ] [ 'input' ] > > ;
notEqualToAny? : InputMaybe < Array < Scalars [ 'Float' ] [ 'input' ] > > ;
2024-01-11 03:53:06 +01:00
notIn? : InputMaybe < Array < Scalars [ 'Float' ] [ 'input' ] > > ;
} ;
2024-08-21 21:29:01 +02:00
export type DownloadChangedInput = {
/** Sets a max number of updates that can be contained in a download update message.Everything above this limit will be omitted and the "downloadStatus" should be re-fetched via the corresponding query. Due to the graphql subscription execution strategy not supporting batching for data loaders, the data loaders run into the n+1 problem, which can cause the server to get unresponsive until the status update has been handled. This is an issue e.g. when mass en- or dequeuing downloads. */
maxUpdates? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
} ;
2023-08-07 23:32:36 +02:00
export type DownloadEdge = Edge & {
__typename ? : 'DownloadEdge' ;
cursor : Scalars [ 'Cursor' ] [ 'output' ] ;
node : DownloadType ;
} ;
export type DownloadNodeList = NodeList & {
__typename ? : 'DownloadNodeList' ;
edges : Array < DownloadEdge > ;
nodes : Array < DownloadType > ;
pageInfo : PageInfo ;
totalCount : Scalars [ 'Int' ] [ 'output' ] ;
} ;
export enum DownloadState {
Downloading = 'DOWNLOADING' ,
Error = 'ERROR' ,
Finished = 'FINISHED' ,
Queued = 'QUEUED'
}
export type DownloadStatus = {
__typename ? : 'DownloadStatus' ;
queue : Array < DownloadType > ;
state : DownloaderState ;
} ;
export type DownloadType = {
__typename ? : 'DownloadType' ;
chapter : ChapterType ;
manga : MangaType ;
2024-08-21 21:29:01 +02:00
position : Scalars [ 'Int' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
progress : Scalars [ 'Float' ] [ 'output' ] ;
state : DownloadState ;
tries : Scalars [ 'Int' ] [ 'output' ] ;
} ;
2024-08-21 21:29:01 +02:00
export type DownloadUpdate = {
__typename ? : 'DownloadUpdate' ;
download : DownloadType ;
type : DownloadUpdateType ;
} ;
export enum DownloadUpdateType {
Dequeued = 'DEQUEUED' ,
Error = 'ERROR' ,
Finished = 'FINISHED' ,
2024-11-28 12:20:36 +01:00
Paused = 'PAUSED' ,
2024-08-21 21:29:01 +02:00
Position = 'POSITION' ,
Progress = 'PROGRESS' ,
2024-11-28 12:20:36 +01:00
Queued = 'QUEUED' ,
Stopped = 'STOPPED'
2024-08-21 21:29:01 +02:00
}
export type DownloadUpdates = {
__typename ? : 'DownloadUpdates' ;
/** The current download queue at the time of sending initial message. Is null for all following messages */
initial? : Maybe < Array < DownloadType > > ;
/** Indicates whether updates have been omitted based on the "maxUpdates" subscription variable. In case updates have been omitted, the "downloadStatus" query should be re-fetched. */
omittedUpdates : Scalars [ 'Boolean' ] [ 'output' ] ;
state : DownloaderState ;
updates : Array < DownloadUpdate > ;
} ;
2023-08-07 23:32:36 +02:00
export enum DownloaderState {
Started = 'STARTED' ,
Stopped = 'STOPPED'
}
export type Edge = {
/** A cursor for use in pagination. */
cursor : Scalars [ 'Cursor' ] [ 'output' ] ;
/** The [T] at the end of the edge. */
node : Node ;
} ;
export type EditTextPreference = {
__typename ? : 'EditTextPreference' ;
currentValue? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
default ? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
dialogMessage? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
dialogTitle? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-07-27 00:03:51 +02:00
enabled : Scalars [ 'Boolean' ] [ 'output' ] ;
2025-09-08 00:24:32 +02:00
key? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
summary? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
text? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
title? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
visible : Scalars [ 'Boolean' ] [ 'output' ] ;
} ;
export type EnqueueChapterDownloadInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
id : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type EnqueueChapterDownloadPayload = {
__typename ? : 'EnqueueChapterDownloadPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
downloadStatus : DownloadStatus ;
} ;
export type EnqueueChapterDownloadsInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
ids : Array < Scalars [ 'Int' ] [ 'input' ] > ;
} ;
export type EnqueueChapterDownloadsPayload = {
__typename ? : 'EnqueueChapterDownloadsPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
downloadStatus : DownloadStatus ;
} ;
export type ExtensionConditionInput = {
apkName? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
hasUpdate? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
iconUrl? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
isInstalled? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
isNsfw? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
isObsolete? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lang? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
name? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
pkgName? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-01-06 18:38:16 +01:00
repo? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
versionCode? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
versionName? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type ExtensionEdge = Edge & {
__typename ? : 'ExtensionEdge' ;
cursor : Scalars [ 'Cursor' ] [ 'output' ] ;
node : ExtensionType ;
} ;
export type ExtensionFilterInput = {
and? : InputMaybe < Array < ExtensionFilterInput > > ;
apkName? : InputMaybe < StringFilterInput > ;
hasUpdate? : InputMaybe < BooleanFilterInput > ;
iconUrl? : InputMaybe < StringFilterInput > ;
isInstalled? : InputMaybe < BooleanFilterInput > ;
isNsfw? : InputMaybe < BooleanFilterInput > ;
isObsolete? : InputMaybe < BooleanFilterInput > ;
lang? : InputMaybe < StringFilterInput > ;
name? : InputMaybe < StringFilterInput > ;
not? : InputMaybe < ExtensionFilterInput > ;
or? : InputMaybe < Array < ExtensionFilterInput > > ;
pkgName? : InputMaybe < StringFilterInput > ;
2024-01-06 18:38:16 +01:00
repo? : InputMaybe < StringFilterInput > ;
2023-08-07 23:32:36 +02:00
versionCode? : InputMaybe < IntFilterInput > ;
versionName? : InputMaybe < StringFilterInput > ;
} ;
export type ExtensionNodeList = NodeList & {
__typename ? : 'ExtensionNodeList' ;
edges : Array < ExtensionEdge > ;
nodes : Array < ExtensionType > ;
pageInfo : PageInfo ;
totalCount : Scalars [ 'Int' ] [ 'output' ] ;
} ;
export enum ExtensionOrderBy {
ApkName = 'APK_NAME' ,
Name = 'NAME' ,
PkgName = 'PKG_NAME'
}
2024-07-11 18:13:51 +02:00
export type ExtensionOrderInput = {
by : ExtensionOrderBy ;
byType? : InputMaybe < SortOrder > ;
} ;
2023-08-07 23:32:36 +02:00
export type ExtensionType = {
__typename ? : 'ExtensionType' ;
apkName : Scalars [ 'String' ] [ 'output' ] ;
hasUpdate : Scalars [ 'Boolean' ] [ 'output' ] ;
iconUrl : Scalars [ 'String' ] [ 'output' ] ;
isInstalled : Scalars [ 'Boolean' ] [ 'output' ] ;
isNsfw : Scalars [ 'Boolean' ] [ 'output' ] ;
isObsolete : Scalars [ 'Boolean' ] [ 'output' ] ;
lang : Scalars [ 'String' ] [ 'output' ] ;
name : Scalars [ 'String' ] [ 'output' ] ;
pkgName : Scalars [ 'String' ] [ 'output' ] ;
2024-01-06 18:38:16 +01:00
repo? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
source : SourceNodeList ;
versionCode : Scalars [ 'Int' ] [ 'output' ] ;
versionName : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type FetchChapterPagesInput = {
chapterId : Scalars [ 'Int' ] [ 'input' ] ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2025-07-19 16:26:05 +02:00
format? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
} ;
export type FetchChapterPagesPayload = {
__typename ? : 'FetchChapterPagesPayload' ;
chapter : ChapterType ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
pages : Array < Scalars [ 'String' ] [ 'output' ] > ;
2025-07-27 00:03:51 +02:00
syncConflict? : Maybe < SyncConflictInfoType > ;
2023-08-07 23:32:36 +02:00
} ;
export type FetchChaptersInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
mangaId : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type FetchChaptersPayload = {
__typename ? : 'FetchChaptersPayload' ;
chapters : Array < ChapterType > ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
export type FetchExtensionsInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type FetchExtensionsPayload = {
__typename ? : 'FetchExtensionsPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
extensions : Array < ExtensionType > ;
} ;
export type FetchMangaInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
id : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type FetchMangaPayload = {
__typename ? : 'FetchMangaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
manga : MangaType ;
} ;
export type FetchSourceMangaInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
filters? : InputMaybe < Array < FilterChangeInput > > ;
page : Scalars [ 'Int' ] [ 'input' ] ;
query? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
source : Scalars [ 'LongString' ] [ 'input' ] ;
type : FetchSourceMangaType ;
} ;
export type FetchSourceMangaPayload = {
__typename ? : 'FetchSourceMangaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
hasNextPage : Scalars [ 'Boolean' ] [ 'output' ] ;
mangas : Array < MangaType > ;
} ;
export enum FetchSourceMangaType {
Latest = 'LATEST' ,
Popular = 'POPULAR' ,
Search = 'SEARCH'
}
2024-04-01 00:45:44 +02:00
export type FetchTrackInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
recordId : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type FetchTrackPayload = {
__typename ? : 'FetchTrackPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
trackRecord : TrackRecordType ;
} ;
2023-08-07 23:32:36 +02:00
export type Filter = CheckBoxFilter | GroupFilter | HeaderFilter | SelectFilter | SeparatorFilter | SortFilter | TextFilter | TriStateFilter ;
export type FilterChangeInput = {
checkBoxState? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
groupChange? : InputMaybe < FilterChangeInput > ;
position : Scalars [ 'Int' ] [ 'input' ] ;
selectState? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
sortState? : InputMaybe < SortSelectionInput > ;
textState? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
triState? : InputMaybe < TriState > ;
} ;
export type FloatFilterInput = {
distinctFrom? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
distinctFromAll? : InputMaybe < Array < Scalars [ 'Float' ] [ 'input' ] > > ;
distinctFromAny? : InputMaybe < Array < Scalars [ 'Float' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
equalTo? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
greaterThan? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
greaterThanOrEqualTo? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
in ? : InputMaybe < Array < Scalars [ 'Float' ] [ 'input' ] > > ;
isNull? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lessThan? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
lessThanOrEqualTo? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
notDistinctFrom? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
notEqualTo? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notEqualToAll? : InputMaybe < Array < Scalars [ 'Float' ] [ 'input' ] > > ;
notEqualToAny? : InputMaybe < Array < Scalars [ 'Float' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notIn? : InputMaybe < Array < Scalars [ 'Float' ] [ 'input' ] > > ;
} ;
export type GlobalMetaNodeList = NodeList & {
__typename ? : 'GlobalMetaNodeList' ;
edges : Array < MetaEdge > ;
nodes : Array < GlobalMetaType > ;
pageInfo : PageInfo ;
totalCount : Scalars [ 'Int' ] [ 'output' ] ;
} ;
export type GlobalMetaType = MetaType & {
__typename ? : 'GlobalMetaType' ;
key : Scalars [ 'String' ] [ 'output' ] ;
value : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type GlobalMetaTypeInput = {
key : Scalars [ 'String' ] [ 'input' ] ;
value : Scalars [ 'String' ] [ 'input' ] ;
} ;
export type GroupFilter = {
__typename ? : 'GroupFilter' ;
filters : Array < Filter > ;
name : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type HeaderFilter = {
__typename ? : 'HeaderFilter' ;
name : Scalars [ 'String' ] [ 'output' ] ;
} ;
2024-01-21 13:31:04 -08:00
export enum IncludeOrExclude {
2023-08-07 23:32:36 +02:00
Exclude = 'EXCLUDE' ,
Include = 'INCLUDE' ,
Unset = 'UNSET'
}
export type InstallExternalExtensionInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
extensionFile : Scalars [ 'Upload' ] [ 'input' ] ;
} ;
export type InstallExternalExtensionPayload = {
__typename ? : 'InstallExternalExtensionPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
extension : ExtensionType ;
} ;
export type IntFilterInput = {
distinctFrom? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
distinctFromAll? : InputMaybe < Array < Scalars [ 'Int' ] [ 'input' ] > > ;
distinctFromAny? : InputMaybe < Array < Scalars [ 'Int' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
equalTo? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
greaterThan? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
greaterThanOrEqualTo? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
in ? : InputMaybe < Array < Scalars [ 'Int' ] [ 'input' ] > > ;
isNull? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lessThan? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
lessThanOrEqualTo? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
notDistinctFrom? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
notEqualTo? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notEqualToAll? : InputMaybe < Array < Scalars [ 'Int' ] [ 'input' ] > > ;
notEqualToAny? : InputMaybe < Array < Scalars [ 'Int' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notIn? : InputMaybe < Array < Scalars [ 'Int' ] [ 'input' ] > > ;
} ;
2025-07-27 00:03:51 +02:00
export type KoSyncConnectPayload = {
__typename ? : 'KoSyncConnectPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
message? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
settings : SettingsType ;
success : Scalars [ 'Boolean' ] [ 'output' ] ;
username? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
export type KoSyncStatusPayload = {
__typename ? : 'KoSyncStatusPayload' ;
isLoggedIn : Scalars [ 'Boolean' ] [ 'output' ] ;
username? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
export enum KoreaderSyncChecksumMethod {
Binary = 'BINARY' ,
Filename = 'FILENAME'
}
2025-09-18 20:37:51 +02:00
export enum KoreaderSyncConflictStrategy {
Disabled = 'DISABLED' ,
KeepLocal = 'KEEP_LOCAL' ,
KeepRemote = 'KEEP_REMOTE' ,
Prompt = 'PROMPT'
}
export enum KoreaderSyncLegacyStrategy {
2025-07-27 00:03:51 +02:00
Disabled = 'DISABLED' ,
Prompt = 'PROMPT' ,
Receive = 'RECEIVE' ,
Send = 'SEND' ,
Silent = 'SILENT'
}
2023-08-07 23:32:36 +02:00
export type LastUpdateTimestampPayload = {
__typename ? : 'LastUpdateTimestampPayload' ;
timestamp : Scalars [ 'LongString' ] [ 'output' ] ;
} ;
2025-03-16 21:01:24 +01:00
export type LibraryUpdateStatus = {
__typename ? : 'LibraryUpdateStatus' ;
categoryUpdates : Array < CategoryUpdateType > ;
jobsInfo : UpdaterJobsInfoType ;
mangaUpdates : Array < MangaUpdateType > ;
} ;
export type LibraryUpdateStatusChangedInput = {
/** Sets a max number of updates that can be contained in a updater update message.Everything above this limit will be omitted and the "updateStatus" should be re-fetched via the corresponding query. Due to the graphql subscription execution strategy not supporting batching for data loaders, the data loaders run into the n+1 problem, which can cause the server to get unresponsive until the status update has been handled. This is an issue e.g. when starting an update. */
maxUpdates? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
} ;
2023-08-07 23:32:36 +02:00
export type ListPreference = {
__typename ? : 'ListPreference' ;
currentValue? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
default ? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-07-27 00:03:51 +02:00
enabled : Scalars [ 'Boolean' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
entries : Array < Scalars [ 'String' ] [ 'output' ] > ;
entryValues : Array < Scalars [ 'String' ] [ 'output' ] > ;
2025-09-08 00:24:32 +02:00
key? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
summary? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
title? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
visible : Scalars [ 'Boolean' ] [ 'output' ] ;
} ;
2025-07-27 00:03:51 +02:00
export type LoginInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
password : Scalars [ 'String' ] [ 'input' ] ;
username : Scalars [ 'String' ] [ 'input' ] ;
} ;
export type LoginPayload = {
__typename ? : 'LoginPayload' ;
accessToken : Scalars [ 'String' ] [ 'output' ] ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
refreshToken : Scalars [ 'String' ] [ 'output' ] ;
} ;
2024-01-11 03:53:06 +01:00
export type LoginTrackerCredentialsInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
password : Scalars [ 'String' ] [ 'input' ] ;
trackerId : Scalars [ 'Int' ] [ 'input' ] ;
username : Scalars [ 'String' ] [ 'input' ] ;
} ;
export type LoginTrackerCredentialsPayload = {
__typename ? : 'LoginTrackerCredentialsPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
isLoggedIn : Scalars [ 'Boolean' ] [ 'output' ] ;
tracker : TrackerType ;
} ;
export type LoginTrackerOAuthInput = {
callbackUrl : Scalars [ 'String' ] [ 'input' ] ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
trackerId : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type LoginTrackerOAuthPayload = {
__typename ? : 'LoginTrackerOAuthPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
isLoggedIn : Scalars [ 'Boolean' ] [ 'output' ] ;
tracker : TrackerType ;
} ;
2025-07-27 00:03:51 +02:00
export type LogoutKoSyncAccountInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type LogoutKoSyncAccountPayload = {
__typename ? : 'LogoutKoSyncAccountPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
settings : SettingsType ;
success : Scalars [ 'Boolean' ] [ 'output' ] ;
} ;
2024-01-11 03:53:06 +01:00
export type LogoutTrackerInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
trackerId : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type LogoutTrackerPayload = {
__typename ? : 'LogoutTrackerPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
isLoggedIn : Scalars [ 'Boolean' ] [ 'output' ] ;
tracker : TrackerType ;
} ;
2023-08-07 23:32:36 +02:00
export type LongFilterInput = {
distinctFrom? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
distinctFromAll? : InputMaybe < Array < Scalars [ 'LongString' ] [ 'input' ] > > ;
distinctFromAny? : InputMaybe < Array < Scalars [ 'LongString' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
equalTo? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
greaterThan? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
greaterThanOrEqualTo? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
in ? : InputMaybe < Array < Scalars [ 'LongString' ] [ 'input' ] > > ;
isNull? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lessThan? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
lessThanOrEqualTo? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
notDistinctFrom? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
notEqualTo? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notEqualToAll? : InputMaybe < Array < Scalars [ 'LongString' ] [ 'input' ] > > ;
notEqualToAny? : InputMaybe < Array < Scalars [ 'LongString' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notIn? : InputMaybe < Array < Scalars [ 'LongString' ] [ 'input' ] > > ;
} ;
export type MangaConditionInput = {
artist? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
author? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
categoryIds? : InputMaybe < Array < Scalars [ 'Int' ] [ 'input' ] > > ;
chaptersLastFetchedAt? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
description? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
genre? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
id? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
inLibrary? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
inLibraryAt? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
initialized? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lastFetchedAt? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
realUrl? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
sourceId? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
status? : InputMaybe < MangaStatus > ;
thumbnailUrl? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
title? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
url? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type MangaEdge = Edge & {
__typename ? : 'MangaEdge' ;
cursor : Scalars [ 'Cursor' ] [ 'output' ] ;
node : MangaType ;
} ;
export type MangaFilterInput = {
and? : InputMaybe < Array < MangaFilterInput > > ;
artist? : InputMaybe < StringFilterInput > ;
author? : InputMaybe < StringFilterInput > ;
categoryId? : InputMaybe < IntFilterInput > ;
chaptersLastFetchedAt? : InputMaybe < LongFilterInput > ;
description? : InputMaybe < StringFilterInput > ;
genre? : InputMaybe < StringFilterInput > ;
id? : InputMaybe < IntFilterInput > ;
inLibrary? : InputMaybe < BooleanFilterInput > ;
inLibraryAt? : InputMaybe < LongFilterInput > ;
initialized? : InputMaybe < BooleanFilterInput > ;
lastFetchedAt? : InputMaybe < LongFilterInput > ;
not? : InputMaybe < MangaFilterInput > ;
or? : InputMaybe < Array < MangaFilterInput > > ;
realUrl? : InputMaybe < StringFilterInput > ;
sourceId? : InputMaybe < LongFilterInput > ;
status? : InputMaybe < MangaStatusFilterInput > ;
thumbnailUrl? : InputMaybe < StringFilterInput > ;
title? : InputMaybe < StringFilterInput > ;
url? : InputMaybe < StringFilterInput > ;
} ;
2025-03-16 21:01:24 +01:00
export enum MangaJobStatus {
Complete = 'COMPLETE' ,
Failed = 'FAILED' ,
Pending = 'PENDING' ,
Running = 'RUNNING' ,
Skipped = 'SKIPPED'
}
2023-08-07 23:32:36 +02:00
export type MangaMetaType = MetaType & {
__typename ? : 'MangaMetaType' ;
key : Scalars [ 'String' ] [ 'output' ] ;
manga : MangaType ;
mangaId : Scalars [ 'Int' ] [ 'output' ] ;
value : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type MangaMetaTypeInput = {
key : Scalars [ 'String' ] [ 'input' ] ;
mangaId : Scalars [ 'Int' ] [ 'input' ] ;
value : Scalars [ 'String' ] [ 'input' ] ;
} ;
export type MangaNodeList = NodeList & {
__typename ? : 'MangaNodeList' ;
edges : Array < MangaEdge > ;
nodes : Array < MangaType > ;
pageInfo : PageInfo ;
totalCount : Scalars [ 'Int' ] [ 'output' ] ;
} ;
export enum MangaOrderBy {
Id = 'ID' ,
InLibraryAt = 'IN_LIBRARY_AT' ,
LastFetchedAt = 'LAST_FETCHED_AT' ,
Title = 'TITLE'
}
2024-07-11 18:13:51 +02:00
export type MangaOrderInput = {
by : MangaOrderBy ;
byType? : InputMaybe < SortOrder > ;
} ;
2023-08-07 23:32:36 +02:00
export enum MangaStatus {
Cancelled = 'CANCELLED' ,
Completed = 'COMPLETED' ,
Licensed = 'LICENSED' ,
Ongoing = 'ONGOING' ,
OnHiatus = 'ON_HIATUS' ,
PublishingFinished = 'PUBLISHING_FINISHED' ,
Unknown = 'UNKNOWN'
}
export type MangaStatusFilterInput = {
distinctFrom? : InputMaybe < MangaStatus > ;
2024-07-11 18:13:51 +02:00
distinctFromAll? : InputMaybe < Array < MangaStatus > > ;
distinctFromAny? : InputMaybe < Array < MangaStatus > > ;
2023-08-07 23:32:36 +02:00
equalTo? : InputMaybe < MangaStatus > ;
greaterThan? : InputMaybe < MangaStatus > ;
greaterThanOrEqualTo? : InputMaybe < MangaStatus > ;
in ? : InputMaybe < Array < MangaStatus > > ;
isNull? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lessThan? : InputMaybe < MangaStatus > ;
lessThanOrEqualTo? : InputMaybe < MangaStatus > ;
notDistinctFrom? : InputMaybe < MangaStatus > ;
notEqualTo? : InputMaybe < MangaStatus > ;
2024-07-11 18:13:51 +02:00
notEqualToAll? : InputMaybe < Array < MangaStatus > > ;
notEqualToAny? : InputMaybe < Array < MangaStatus > > ;
2023-08-07 23:32:36 +02:00
notIn? : InputMaybe < Array < MangaStatus > > ;
} ;
export type MangaType = {
__typename ? : 'MangaType' ;
age? : Maybe < Scalars [ 'LongString' ] [ 'output' ] > ;
artist? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
author? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2024-04-01 00:45:44 +02:00
bookmarkCount : Scalars [ 'Int' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
categories : CategoryNodeList ;
chapters : ChapterNodeList ;
chaptersAge? : Maybe < Scalars [ 'LongString' ] [ 'output' ] > ;
chaptersLastFetchedAt? : Maybe < Scalars [ 'LongString' ] [ 'output' ] > ;
description? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
downloadCount : Scalars [ 'Int' ] [ 'output' ] ;
2024-03-16 13:45:54 +01:00
firstUnreadChapter? : Maybe < ChapterType > ;
2023-08-07 23:32:36 +02:00
genre : Array < Scalars [ 'String' ] [ 'output' ] > ;
2024-07-28 22:47:03 +02:00
hasDuplicateChapters : Scalars [ 'Boolean' ] [ 'output' ] ;
2025-07-12 01:08:40 +02:00
highestNumberedChapter? : Maybe < ChapterType > ;
2023-08-07 23:32:36 +02:00
id : Scalars [ 'Int' ] [ 'output' ] ;
inLibrary : Scalars [ 'Boolean' ] [ 'output' ] ;
inLibraryAt : Scalars [ 'LongString' ] [ 'output' ] ;
initialized : Scalars [ 'Boolean' ] [ 'output' ] ;
lastFetchedAt? : Maybe < Scalars [ 'LongString' ] [ 'output' ] > ;
lastReadChapter? : Maybe < ChapterType > ;
2024-01-11 03:53:06 +01:00
latestFetchedChapter? : Maybe < ChapterType > ;
latestReadChapter? : Maybe < ChapterType > ;
latestUploadedChapter? : Maybe < ChapterType > ;
2023-08-07 23:32:36 +02:00
meta : Array < MangaMetaType > ;
realUrl? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
source? : Maybe < SourceType > ;
sourceId : Scalars [ 'LongString' ] [ 'output' ] ;
status : MangaStatus ;
thumbnailUrl? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2024-02-17 20:16:51 +01:00
thumbnailUrlLastFetched? : Maybe < Scalars [ 'LongString' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
title : Scalars [ 'String' ] [ 'output' ] ;
2024-01-11 03:53:06 +01:00
trackRecords : TrackRecordNodeList ;
2023-08-07 23:32:36 +02:00
unreadCount : Scalars [ 'Int' ] [ 'output' ] ;
2024-01-06 18:38:16 +01:00
updateStrategy : UpdateStrategy ;
2023-08-07 23:32:36 +02:00
url : Scalars [ 'String' ] [ 'output' ] ;
} ;
2025-03-16 21:01:24 +01:00
export type MangaUpdateType = {
__typename ? : 'MangaUpdateType' ;
manga : MangaType ;
status : MangaJobStatus ;
} ;
2023-08-07 23:32:36 +02:00
export type MetaConditionInput = {
key? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
value? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type MetaEdge = Edge & {
__typename ? : 'MetaEdge' ;
cursor : Scalars [ 'Cursor' ] [ 'output' ] ;
node : GlobalMetaType ;
} ;
export type MetaFilterInput = {
and? : InputMaybe < Array < MetaFilterInput > > ;
key? : InputMaybe < StringFilterInput > ;
not? : InputMaybe < MetaFilterInput > ;
or? : InputMaybe < Array < MetaFilterInput > > ;
value? : InputMaybe < StringFilterInput > ;
} ;
export enum MetaOrderBy {
Key = 'KEY' ,
Value = 'VALUE'
}
2024-07-11 18:13:51 +02:00
export type MetaOrderInput = {
by : MetaOrderBy ;
byType? : InputMaybe < SortOrder > ;
} ;
2023-08-07 23:32:36 +02:00
export type MetaType = {
key : Scalars [ 'String' ] [ 'output' ] ;
value : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type MultiSelectListPreference = {
__typename ? : 'MultiSelectListPreference' ;
currentValue? : Maybe < Array < Scalars [ 'String' ] [ 'output' ] > > ;
default ? : Maybe < Array < Scalars [ 'String' ] [ 'output' ] > > ;
dialogMessage? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
dialogTitle? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-07-27 00:03:51 +02:00
enabled : Scalars [ 'Boolean' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
entries : Array < Scalars [ 'String' ] [ 'output' ] > ;
entryValues : Array < Scalars [ 'String' ] [ 'output' ] > ;
2025-09-08 00:24:32 +02:00
key? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
summary? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
title? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
visible : Scalars [ 'Boolean' ] [ 'output' ] ;
} ;
export type Mutation = {
__typename ? : 'Mutation' ;
2024-01-11 03:53:06 +01:00
bindTrack : BindTrackPayload ;
2023-12-05 22:20:13 +01:00
clearCachedImages : ClearCachedImagesPayload ;
2024-06-02 15:24:29 +02:00
clearDownloader? : Maybe < ClearDownloaderPayload > ;
2025-07-27 00:03:51 +02:00
connectKoSyncAccount : KoSyncConnectPayload ;
2023-08-07 23:32:36 +02:00
createBackup : CreateBackupPayload ;
2024-06-02 15:24:29 +02:00
createCategory? : Maybe < CreateCategoryPayload > ;
deleteCategory? : Maybe < DeleteCategoryPayload > ;
deleteCategoryMeta? : Maybe < DeleteCategoryMetaPayload > ;
deleteChapterMeta? : Maybe < DeleteChapterMetaPayload > ;
deleteDownloadedChapter? : Maybe < DeleteDownloadedChapterPayload > ;
deleteDownloadedChapters? : Maybe < DeleteDownloadedChaptersPayload > ;
deleteGlobalMeta? : Maybe < DeleteGlobalMetaPayload > ;
deleteMangaMeta? : Maybe < DeleteMangaMetaPayload > ;
deleteSourceMeta? : Maybe < DeleteSourceMetaPayload > ;
dequeueChapterDownload? : Maybe < DequeueChapterDownloadPayload > ;
dequeueChapterDownloads? : Maybe < DequeueChapterDownloadsPayload > ;
enqueueChapterDownload? : Maybe < EnqueueChapterDownloadPayload > ;
enqueueChapterDownloads? : Maybe < EnqueueChapterDownloadsPayload > ;
fetchChapterPages? : Maybe < FetchChapterPagesPayload > ;
fetchChapters? : Maybe < FetchChaptersPayload > ;
fetchExtensions? : Maybe < FetchExtensionsPayload > ;
fetchManga? : Maybe < FetchMangaPayload > ;
fetchSourceManga? : Maybe < FetchSourceMangaPayload > ;
2024-04-01 00:45:44 +02:00
fetchTrack : FetchTrackPayload ;
2024-06-02 15:24:29 +02:00
installExternalExtension? : Maybe < InstallExternalExtensionPayload > ;
2025-07-27 00:03:51 +02:00
login : LoginPayload ;
2024-01-11 03:53:06 +01:00
loginTrackerCredentials : LoginTrackerCredentialsPayload ;
loginTrackerOAuth : LoginTrackerOAuthPayload ;
2025-07-27 00:03:51 +02:00
logoutKoSyncAccount : LogoutKoSyncAccountPayload ;
2024-01-11 03:53:06 +01:00
logoutTracker : LogoutTrackerPayload ;
2025-09-18 20:37:51 +02:00
pullKoSyncProgress? : Maybe < PullKoSyncProgressPayload > ;
pushKoSyncProgress? : Maybe < PushKoSyncProgressPayload > ;
2025-07-27 00:03:51 +02:00
refreshToken : RefreshTokenPayload ;
2024-06-02 15:24:29 +02:00
reorderChapterDownload? : Maybe < ReorderChapterDownloadPayload > ;
2023-08-07 23:32:36 +02:00
resetSettings : ResetSettingsPayload ;
2024-06-02 15:24:29 +02:00
resetWebUIUpdateStatus? : Maybe < WebUiUpdateStatus > ;
2023-08-07 23:32:36 +02:00
restoreBackup : RestoreBackupPayload ;
2024-06-02 15:24:29 +02:00
setCategoryMeta? : Maybe < SetCategoryMetaPayload > ;
setChapterMeta? : Maybe < SetChapterMetaPayload > ;
setGlobalMeta? : Maybe < SetGlobalMetaPayload > ;
setMangaMeta? : Maybe < SetMangaMetaPayload > ;
2023-08-07 23:32:36 +02:00
setSettings : SetSettingsPayload ;
2024-06-02 15:24:29 +02:00
setSourceMeta? : Maybe < SetSourceMetaPayload > ;
startDownloader? : Maybe < StartDownloaderPayload > ;
stopDownloader? : Maybe < StopDownloaderPayload > ;
trackProgress? : Maybe < TrackProgressPayload > ;
2024-04-01 00:45:44 +02:00
unbindTrack : UnbindTrackPayload ;
2024-06-02 15:24:29 +02:00
updateCategories? : Maybe < UpdateCategoriesPayload > ;
updateCategory? : Maybe < UpdateCategoryPayload > ;
updateCategoryManga? : Maybe < UpdateCategoryMangaPayload > ;
updateCategoryOrder? : Maybe < UpdateCategoryOrderPayload > ;
updateChapter? : Maybe < UpdateChapterPayload > ;
updateChapters? : Maybe < UpdateChaptersPayload > ;
updateExtension? : Maybe < UpdateExtensionPayload > ;
updateExtensions? : Maybe < UpdateExtensionsPayload > ;
2025-03-16 21:01:24 +01:00
updateLibrary? : Maybe < UpdateLibraryPayload > ;
2024-06-02 15:24:29 +02:00
updateLibraryManga? : Maybe < UpdateLibraryMangaPayload > ;
updateManga? : Maybe < UpdateMangaPayload > ;
updateMangaCategories? : Maybe < UpdateMangaCategoriesPayload > ;
updateMangas? : Maybe < UpdateMangasPayload > ;
updateMangasCategories? : Maybe < UpdateMangasCategoriesPayload > ;
updateSourcePreference? : Maybe < UpdateSourcePreferencePayload > ;
2023-08-07 23:32:36 +02:00
updateStop : UpdateStopPayload ;
2024-01-11 03:53:06 +01:00
updateTrack : UpdateTrackPayload ;
2024-06-02 15:24:29 +02:00
updateWebUI? : Maybe < WebUiUpdatePayload > ;
2023-08-07 23:32:36 +02:00
} ;
2024-01-11 03:53:06 +01:00
export type MutationBindTrackArgs = {
input : BindTrackInput ;
} ;
2023-12-05 22:20:13 +01:00
export type MutationClearCachedImagesArgs = {
input : ClearCachedImagesInput ;
} ;
2023-08-07 23:32:36 +02:00
export type MutationClearDownloaderArgs = {
input : ClearDownloaderInput ;
} ;
2025-07-27 00:03:51 +02:00
export type MutationConnectKoSyncAccountArgs = {
input : ConnectKoSyncAccountInput ;
} ;
2023-08-07 23:32:36 +02:00
export type MutationCreateBackupArgs = {
input? : InputMaybe < CreateBackupInput > ;
} ;
export type MutationCreateCategoryArgs = {
input : CreateCategoryInput ;
} ;
export type MutationDeleteCategoryArgs = {
input : DeleteCategoryInput ;
} ;
export type MutationDeleteCategoryMetaArgs = {
input : DeleteCategoryMetaInput ;
} ;
export type MutationDeleteChapterMetaArgs = {
input : DeleteChapterMetaInput ;
} ;
export type MutationDeleteDownloadedChapterArgs = {
input : DeleteDownloadedChapterInput ;
} ;
export type MutationDeleteDownloadedChaptersArgs = {
input : DeleteDownloadedChaptersInput ;
} ;
export type MutationDeleteGlobalMetaArgs = {
input : DeleteGlobalMetaInput ;
} ;
export type MutationDeleteMangaMetaArgs = {
input : DeleteMangaMetaInput ;
} ;
2024-02-17 20:16:51 +01:00
export type MutationDeleteSourceMetaArgs = {
input : DeleteSourceMetaInput ;
} ;
2023-08-07 23:32:36 +02:00
export type MutationDequeueChapterDownloadArgs = {
input : DequeueChapterDownloadInput ;
} ;
export type MutationDequeueChapterDownloadsArgs = {
input : DequeueChapterDownloadsInput ;
} ;
export type MutationEnqueueChapterDownloadArgs = {
input : EnqueueChapterDownloadInput ;
} ;
export type MutationEnqueueChapterDownloadsArgs = {
input : EnqueueChapterDownloadsInput ;
} ;
export type MutationFetchChapterPagesArgs = {
input : FetchChapterPagesInput ;
} ;
export type MutationFetchChaptersArgs = {
input : FetchChaptersInput ;
} ;
export type MutationFetchExtensionsArgs = {
input : FetchExtensionsInput ;
} ;
export type MutationFetchMangaArgs = {
input : FetchMangaInput ;
} ;
export type MutationFetchSourceMangaArgs = {
input : FetchSourceMangaInput ;
} ;
2024-04-01 00:45:44 +02:00
export type MutationFetchTrackArgs = {
input : FetchTrackInput ;
} ;
2023-08-07 23:32:36 +02:00
export type MutationInstallExternalExtensionArgs = {
input : InstallExternalExtensionInput ;
} ;
2025-07-27 00:03:51 +02:00
export type MutationLoginArgs = {
input : LoginInput ;
} ;
2024-01-11 03:53:06 +01:00
export type MutationLoginTrackerCredentialsArgs = {
input : LoginTrackerCredentialsInput ;
} ;
export type MutationLoginTrackerOAuthArgs = {
input : LoginTrackerOAuthInput ;
} ;
2025-07-27 00:03:51 +02:00
export type MutationLogoutKoSyncAccountArgs = {
input : LogoutKoSyncAccountInput ;
} ;
2024-01-11 03:53:06 +01:00
export type MutationLogoutTrackerArgs = {
input : LogoutTrackerInput ;
} ;
2025-09-18 20:37:51 +02:00
export type MutationPullKoSyncProgressArgs = {
input : PullKoSyncProgressInput ;
} ;
export type MutationPushKoSyncProgressArgs = {
input : PushKoSyncProgressInput ;
} ;
2025-07-27 00:03:51 +02:00
export type MutationRefreshTokenArgs = {
input : RefreshTokenInput ;
} ;
2023-08-07 23:32:36 +02:00
export type MutationReorderChapterDownloadArgs = {
input : ReorderChapterDownloadInput ;
} ;
export type MutationResetSettingsArgs = {
input : ResetSettingsInput ;
} ;
export type MutationRestoreBackupArgs = {
input : RestoreBackupInput ;
} ;
export type MutationSetCategoryMetaArgs = {
input : SetCategoryMetaInput ;
} ;
export type MutationSetChapterMetaArgs = {
input : SetChapterMetaInput ;
} ;
export type MutationSetGlobalMetaArgs = {
input : SetGlobalMetaInput ;
} ;
export type MutationSetMangaMetaArgs = {
input : SetMangaMetaInput ;
} ;
export type MutationSetSettingsArgs = {
input : SetSettingsInput ;
} ;
2024-02-17 20:16:51 +01:00
export type MutationSetSourceMetaArgs = {
input : SetSourceMetaInput ;
} ;
2023-08-07 23:32:36 +02:00
export type MutationStartDownloaderArgs = {
input : StartDownloaderInput ;
} ;
export type MutationStopDownloaderArgs = {
input : StopDownloaderInput ;
} ;
2024-04-01 00:45:44 +02:00
export type MutationTrackProgressArgs = {
input : TrackProgressInput ;
} ;
export type MutationUnbindTrackArgs = {
input : UnbindTrackInput ;
} ;
2023-08-07 23:32:36 +02:00
export type MutationUpdateCategoriesArgs = {
input : UpdateCategoriesInput ;
} ;
export type MutationUpdateCategoryArgs = {
input : UpdateCategoryInput ;
} ;
export type MutationUpdateCategoryMangaArgs = {
input : UpdateCategoryMangaInput ;
} ;
export type MutationUpdateCategoryOrderArgs = {
input : UpdateCategoryOrderInput ;
} ;
export type MutationUpdateChapterArgs = {
input : UpdateChapterInput ;
} ;
export type MutationUpdateChaptersArgs = {
input : UpdateChaptersInput ;
} ;
export type MutationUpdateExtensionArgs = {
input : UpdateExtensionInput ;
} ;
export type MutationUpdateExtensionsArgs = {
input : UpdateExtensionsInput ;
} ;
2025-03-16 21:01:24 +01:00
export type MutationUpdateLibraryArgs = {
input : UpdateLibraryInput ;
} ;
2023-08-07 23:32:36 +02:00
export type MutationUpdateLibraryMangaArgs = {
input : UpdateLibraryMangaInput ;
} ;
export type MutationUpdateMangaArgs = {
input : UpdateMangaInput ;
} ;
export type MutationUpdateMangaCategoriesArgs = {
input : UpdateMangaCategoriesInput ;
} ;
export type MutationUpdateMangasArgs = {
input : UpdateMangasInput ;
} ;
export type MutationUpdateMangasCategoriesArgs = {
input : UpdateMangasCategoriesInput ;
} ;
export type MutationUpdateSourcePreferenceArgs = {
input : UpdateSourcePreferenceInput ;
} ;
export type MutationUpdateStopArgs = {
input : UpdateStopInput ;
} ;
2024-01-11 03:53:06 +01:00
export type MutationUpdateTrackArgs = {
input : UpdateTrackInput ;
} ;
2023-08-07 23:32:36 +02:00
export type MutationUpdateWebUiArgs = {
input : WebUiUpdateInput ;
} ;
2024-08-21 21:29:01 +02:00
export type Node = CategoryMetaType | CategoryType | ChapterMetaType | ChapterType | DownloadType | DownloadUpdate | ExtensionType | GlobalMetaType | MangaMetaType | MangaType | PartialSettingsType | SettingsType | SourceMetaType | SourceType | TrackRecordType | TrackerType ;
2023-08-07 23:32:36 +02:00
export type NodeList = {
/** A list of edges which contains the [T] and cursor to aid in pagination. */
edges : Array < Edge > ;
/** A list of [T] objects. */
nodes : Array < Node > ;
/** Information to aid in pagination. */
pageInfo : PageInfo ;
/** The count of all nodes you could get from the connection. */
totalCount : Scalars [ 'Int' ] [ 'output' ] ;
} ;
export type PageInfo = {
__typename ? : 'PageInfo' ;
/** When paginating forwards, the cursor to continue. */
endCursor? : Maybe < Scalars [ 'Cursor' ] [ 'output' ] > ;
/** When paginating forwards, are there more items? */
hasNextPage : Scalars [ 'Boolean' ] [ 'output' ] ;
/** When paginating backwards, are there more items? */
hasPreviousPage : Scalars [ 'Boolean' ] [ 'output' ] ;
/** When paginating backwards, the cursor to continue. */
startCursor? : Maybe < Scalars [ 'Cursor' ] [ 'output' ] > ;
} ;
2025-10-04 21:48:44 +02:00
export type PartialBackupFlagsInput = {
includeCategories? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
includeChapters? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
includeClientData? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
includeHistory? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
includeManga? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
includeServerSettings? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
includeTracking? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
} ;
2023-08-07 23:32:36 +02:00
export type PartialSettingsType = Settings & {
__typename ? : 'PartialSettingsType' ;
2025-07-12 01:08:40 +02:00
authMode? : Maybe < AuthMode > ;
authPassword? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
authUsername? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2024-02-17 20:16:51 +01:00
/** @deprecated Replaced with autoDownloadNewChaptersLimit, replace with autoDownloadNewChaptersLimit */
2023-11-02 13:01:01 +01:00
autoDownloadAheadLimit? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
2024-04-07 21:47:07 +02:00
autoDownloadIgnoreReUploads? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
autoDownloadNewChapters? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2024-02-17 20:16:51 +01:00
autoDownloadNewChaptersLimit? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
backupInterval? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
backupPath? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
backupTTL? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
backupTime? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-09-08 00:24:32 +02:00
/** @deprecated Removed - prefer authMode, replace with authMode */
2023-08-07 23:32:36 +02:00
basicAuthEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2025-09-08 00:24:32 +02:00
/** @deprecated Removed - prefer authPassword, replace with authPassword */
2023-08-07 23:32:36 +02:00
basicAuthPassword? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-09-08 00:24:32 +02:00
/** @deprecated Removed - prefer authUsername, replace with authUsername */
2023-08-07 23:32:36 +02:00
basicAuthUsername? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-09-08 00:24:32 +02:00
databasePassword? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
databaseType? : Maybe < DatabaseType > ;
databaseUrl? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
databaseUsername? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
debugLogsEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
downloadAsCbz? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2025-07-19 16:26:05 +02:00
downloadConversions? : Maybe < Array < SettingsDownloadConversionType > > ;
2023-08-07 23:32:36 +02:00
downloadsPath? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
electronPath? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
excludeCompleted? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-11-02 13:01:01 +01:00
excludeEntryWithUnreadChapters? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
excludeNotStarted? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
excludeUnreadChapters? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2024-01-06 18:38:16 +01:00
extensionRepos? : Maybe < Array < Scalars [ 'String' ] [ 'output' ] > > ;
2024-07-28 22:47:03 +02:00
flareSolverrAsResponseFallback? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2024-01-26 20:50:51 +01:00
flareSolverrEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
flareSolverrSessionName? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
flareSolverrSessionTtl? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
flareSolverrTimeout? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
flareSolverrUrl? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
globalUpdateInterval? : Maybe < Scalars [ 'Float' ] [ 'output' ] > ;
2024-11-28 12:20:36 +01:00
/** @deprecated Removed - does not do anything */
2023-11-02 13:01:01 +01:00
gqlDebugLogsEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
initialOpenInBrowserEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
ip? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-07-27 00:03:51 +02:00
jwtAudience? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
jwtRefreshExpiry? : Maybe < Scalars [ 'Duration' ] [ 'output' ] > ;
jwtTokenExpiry? : Maybe < Scalars [ 'Duration' ] [ 'output' ] > ;
koreaderSyncChecksumMethod? : Maybe < KoreaderSyncChecksumMethod > ;
koreaderSyncDeviceId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
koreaderSyncPercentageTolerance? : Maybe < Scalars [ 'Float' ] [ 'output' ] > ;
koreaderSyncServerUrl? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-09-18 20:37:51 +02:00
/** @deprecated Replaced with koreaderSyncStrategyForward and koreaderSyncStrategyBackward, replace with koreaderSyncStrategyForward, koreaderSyncStrategyBackward */
koreaderSyncStrategy? : Maybe < KoreaderSyncLegacyStrategy > ;
koreaderSyncStrategyBackward? : Maybe < KoreaderSyncConflictStrategy > ;
koreaderSyncStrategyForward? : Maybe < KoreaderSyncConflictStrategy > ;
2025-07-27 00:03:51 +02:00
koreaderSyncUserkey? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
koreaderSyncUsername? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
localSourcePath? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2024-09-01 03:04:34 +02:00
maxLogFileSize? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
maxLogFiles? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
maxLogFolderSize? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
maxSourcesInParallel? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
2025-07-12 04:11:59 +05:30
opdsChapterSortOrder? : Maybe < SortOrder > ;
opdsEnablePageReadProgress? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
opdsItemsPerPage? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
opdsMarkAsReadOnDownload? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
opdsShowOnlyDownloadedChapters? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
opdsShowOnlyUnreadChapters? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
opdsUseBinaryFileSizes? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
port? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
socksProxyEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
socksProxyHost? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2024-02-22 00:25:12 +01:00
socksProxyPassword? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
socksProxyPort? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2024-02-22 00:25:12 +01:00
socksProxyUsername? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
socksProxyVersion? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
systemTrayEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-11-02 13:01:01 +01:00
updateMangas? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
webUIChannel? : Maybe < WebUiChannel > ;
webUIFlavor? : Maybe < WebUiFlavor > ;
webUIInterface? : Maybe < WebUiInterface > ;
webUIUpdateCheckInterval? : Maybe < Scalars [ 'Float' ] [ 'output' ] > ;
} ;
export type PartialSettingsTypeInput = {
2025-07-12 01:08:40 +02:00
authMode? : InputMaybe < AuthMode > ;
authPassword? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
authUsername? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-04-07 21:47:07 +02:00
autoDownloadIgnoreReUploads? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
autoDownloadNewChapters? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2024-02-17 20:16:51 +01:00
autoDownloadNewChaptersLimit? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
backupInterval? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
backupPath? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
backupTTL? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
backupTime? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2025-09-08 00:24:32 +02:00
databasePassword? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
databaseType? : InputMaybe < DatabaseType > ;
databaseUrl? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
databaseUsername? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
debugLogsEnabled? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
downloadAsCbz? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2025-07-19 16:26:05 +02:00
downloadConversions? : InputMaybe < Array < SettingsDownloadConversionTypeInput > > ;
2023-08-07 23:32:36 +02:00
downloadsPath? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
electronPath? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
excludeCompleted? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2023-11-02 13:01:01 +01:00
excludeEntryWithUnreadChapters? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
excludeNotStarted? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
excludeUnreadChapters? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2024-01-06 18:38:16 +01:00
extensionRepos? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2024-07-28 22:47:03 +02:00
flareSolverrAsResponseFallback? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2024-01-26 20:50:51 +01:00
flareSolverrEnabled? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
flareSolverrSessionName? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
flareSolverrSessionTtl? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
flareSolverrTimeout? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
flareSolverrUrl? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
globalUpdateInterval? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
initialOpenInBrowserEnabled? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
ip? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2025-07-27 00:03:51 +02:00
jwtAudience? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
jwtRefreshExpiry? : InputMaybe < Scalars [ 'Duration' ] [ 'input' ] > ;
jwtTokenExpiry? : InputMaybe < Scalars [ 'Duration' ] [ 'input' ] > ;
koreaderSyncChecksumMethod? : InputMaybe < KoreaderSyncChecksumMethod > ;
koreaderSyncDeviceId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
koreaderSyncPercentageTolerance? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
koreaderSyncServerUrl? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2025-09-18 20:37:51 +02:00
koreaderSyncStrategyBackward? : InputMaybe < KoreaderSyncConflictStrategy > ;
koreaderSyncStrategyForward? : InputMaybe < KoreaderSyncConflictStrategy > ;
2025-07-27 00:03:51 +02:00
koreaderSyncUserkey? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
koreaderSyncUsername? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
localSourcePath? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-09-01 03:04:34 +02:00
maxLogFileSize? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
maxLogFiles? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
maxLogFolderSize? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
maxSourcesInParallel? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2025-07-12 04:11:59 +05:30
opdsChapterSortOrder? : InputMaybe < SortOrder > ;
opdsEnablePageReadProgress? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
opdsItemsPerPage? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
opdsMarkAsReadOnDownload? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
opdsShowOnlyDownloadedChapters? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
opdsShowOnlyUnreadChapters? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
opdsUseBinaryFileSizes? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
port? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
socksProxyEnabled? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
socksProxyHost? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-02-22 00:25:12 +01:00
socksProxyPassword? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
socksProxyPort? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-02-22 00:25:12 +01:00
socksProxyUsername? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
socksProxyVersion? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
systemTrayEnabled? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2023-11-02 13:01:01 +01:00
updateMangas? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2023-08-07 23:32:36 +02:00
webUIChannel? : InputMaybe < WebUiChannel > ;
webUIFlavor? : InputMaybe < WebUiFlavor > ;
webUIInterface? : InputMaybe < WebUiInterface > ;
webUIUpdateCheckInterval? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
} ;
export type Preference = CheckBoxPreference | EditTextPreference | ListPreference | MultiSelectListPreference | SwitchPreference ;
2025-09-18 20:37:51 +02:00
export type PullKoSyncProgressInput = {
chapterId : Scalars [ 'Int' ] [ 'input' ] ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type PullKoSyncProgressPayload = {
__typename ? : 'PullKoSyncProgressPayload' ;
chapter? : Maybe < ChapterType > ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
syncConflict? : Maybe < SyncConflictInfoType > ;
} ;
export type PushKoSyncProgressInput = {
chapterId : Scalars [ 'Int' ] [ 'input' ] ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type PushKoSyncProgressPayload = {
__typename ? : 'PushKoSyncProgressPayload' ;
chapter? : Maybe < ChapterType > ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
success : Scalars [ 'Boolean' ] [ 'output' ] ;
} ;
2023-08-07 23:32:36 +02:00
export type Query = {
__typename ? : 'Query' ;
2023-11-24 01:33:56 +01:00
aboutServer : AboutServerPayload ;
2023-12-05 22:20:13 +01:00
aboutWebUI : AboutWebUi ;
2023-08-07 23:32:36 +02:00
categories : CategoryNodeList ;
category : CategoryType ;
chapter : ChapterType ;
chapters : ChapterNodeList ;
checkForServerUpdates : Array < CheckForServerUpdatesPayload > ;
2023-12-05 22:20:13 +01:00
checkForWebUIUpdate : WebUiUpdateCheck ;
2023-08-07 23:32:36 +02:00
downloadStatus : DownloadStatus ;
extension : ExtensionType ;
extensions : ExtensionNodeList ;
getWebUIUpdateStatus : WebUiUpdateStatus ;
2025-07-27 00:03:51 +02:00
koSyncStatus : KoSyncStatusPayload ;
2023-08-07 23:32:36 +02:00
lastUpdateTimestamp : LastUpdateTimestampPayload ;
2025-03-16 21:01:24 +01:00
libraryUpdateStatus : LibraryUpdateStatus ;
2023-08-07 23:32:36 +02:00
manga : MangaType ;
mangas : MangaNodeList ;
meta : GlobalMetaType ;
metas : GlobalMetaNodeList ;
2023-11-02 13:01:01 +01:00
restoreStatus? : Maybe < BackupRestoreStatus > ;
2024-01-11 03:53:06 +01:00
searchTracker : SearchTrackerPayload ;
2023-08-07 23:32:36 +02:00
settings : SettingsType ;
source : SourceType ;
sources : SourceNodeList ;
2024-01-11 03:53:06 +01:00
trackRecord : TrackRecordType ;
trackRecords : TrackRecordNodeList ;
tracker : TrackerType ;
trackers : TrackerNodeList ;
2025-03-16 21:01:24 +01:00
/** @deprecated Replaced with libraryUpdateStatus, replace with libraryUpdateStatus */
2023-08-07 23:32:36 +02:00
updateStatus : UpdateStatus ;
validateBackup : ValidateBackupResult ;
} ;
export type QueryCategoriesArgs = {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < CategoryConditionInput > ;
filter? : InputMaybe < CategoryFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
order? : InputMaybe < Array < CategoryOrderInput > > ;
2025-07-12 01:08:40 +02:00
orderBy? : InputMaybe < CategoryOrderBy > ;
orderByType? : InputMaybe < SortOrder > ;
2023-08-07 23:32:36 +02:00
} ;
export type QueryCategoryArgs = {
id : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type QueryChapterArgs = {
id : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type QueryChaptersArgs = {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < ChapterConditionInput > ;
filter? : InputMaybe < ChapterFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
order? : InputMaybe < Array < ChapterOrderInput > > ;
2025-07-12 01:08:40 +02:00
orderBy? : InputMaybe < ChapterOrderBy > ;
orderByType? : InputMaybe < SortOrder > ;
2023-08-07 23:32:36 +02:00
} ;
export type QueryExtensionArgs = {
pkgName : Scalars [ 'String' ] [ 'input' ] ;
} ;
export type QueryExtensionsArgs = {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < ExtensionConditionInput > ;
filter? : InputMaybe < ExtensionFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
order? : InputMaybe < Array < ExtensionOrderInput > > ;
2025-07-12 01:08:40 +02:00
orderBy? : InputMaybe < ExtensionOrderBy > ;
orderByType? : InputMaybe < SortOrder > ;
2023-08-07 23:32:36 +02:00
} ;
export type QueryMangaArgs = {
id : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type QueryMangasArgs = {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < MangaConditionInput > ;
filter? : InputMaybe < MangaFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
order? : InputMaybe < Array < MangaOrderInput > > ;
2025-07-12 01:08:40 +02:00
orderBy? : InputMaybe < MangaOrderBy > ;
orderByType? : InputMaybe < SortOrder > ;
2023-08-07 23:32:36 +02:00
} ;
export type QueryMetaArgs = {
key : Scalars [ 'String' ] [ 'input' ] ;
} ;
export type QueryMetasArgs = {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < MetaConditionInput > ;
filter? : InputMaybe < MetaFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
order? : InputMaybe < Array < MetaOrderInput > > ;
2025-07-12 01:08:40 +02:00
orderBy? : InputMaybe < MetaOrderBy > ;
orderByType? : InputMaybe < SortOrder > ;
2023-08-07 23:32:36 +02:00
} ;
2023-11-02 13:01:01 +01:00
export type QueryRestoreStatusArgs = {
id : Scalars [ 'String' ] [ 'input' ] ;
} ;
2024-01-11 03:53:06 +01:00
export type QuerySearchTrackerArgs = {
input : SearchTrackerInput ;
} ;
2023-08-07 23:32:36 +02:00
export type QuerySourceArgs = {
id : Scalars [ 'LongString' ] [ 'input' ] ;
} ;
export type QuerySourcesArgs = {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < SourceConditionInput > ;
filter? : InputMaybe < SourceFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
order? : InputMaybe < Array < SourceOrderInput > > ;
2025-07-12 01:08:40 +02:00
orderBy? : InputMaybe < SourceOrderBy > ;
orderByType? : InputMaybe < SortOrder > ;
2023-08-07 23:32:36 +02:00
} ;
2024-01-11 03:53:06 +01:00
export type QueryTrackRecordArgs = {
id : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type QueryTrackRecordsArgs = {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < TrackRecordConditionInput > ;
filter? : InputMaybe < TrackRecordFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
order? : InputMaybe < Array < TrackRecordOrderInput > > ;
2025-07-12 01:08:40 +02:00
orderBy? : InputMaybe < TrackRecordOrderBy > ;
orderByType? : InputMaybe < SortOrder > ;
2024-01-11 03:53:06 +01:00
} ;
export type QueryTrackerArgs = {
id : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type QueryTrackersArgs = {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < TrackerConditionInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
order? : InputMaybe < Array < TrackerOrderInput > > ;
2025-07-12 01:08:40 +02:00
orderBy? : InputMaybe < TrackerOrderBy > ;
orderByType? : InputMaybe < SortOrder > ;
2024-01-11 03:53:06 +01:00
} ;
2023-08-07 23:32:36 +02:00
export type QueryValidateBackupArgs = {
input : ValidateBackupInput ;
} ;
2025-07-27 00:03:51 +02:00
export type RefreshTokenInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
refreshToken : Scalars [ 'String' ] [ 'input' ] ;
} ;
export type RefreshTokenPayload = {
__typename ? : 'RefreshTokenPayload' ;
accessToken : Scalars [ 'String' ] [ 'output' ] ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
2023-08-07 23:32:36 +02:00
export type ReorderChapterDownloadInput = {
chapterId : Scalars [ 'Int' ] [ 'input' ] ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
to : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type ReorderChapterDownloadPayload = {
__typename ? : 'ReorderChapterDownloadPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
downloadStatus : DownloadStatus ;
} ;
export type ResetSettingsInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type ResetSettingsPayload = {
__typename ? : 'ResetSettingsPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
settings : SettingsType ;
} ;
export type RestoreBackupInput = {
backup : Scalars [ 'Upload' ] [ 'input' ] ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2025-10-04 21:48:44 +02:00
flags? : InputMaybe < PartialBackupFlagsInput > ;
2023-08-07 23:32:36 +02:00
} ;
export type RestoreBackupPayload = {
__typename ? : 'RestoreBackupPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-11-02 13:01:01 +01:00
id : Scalars [ 'String' ] [ 'output' ] ;
status? : Maybe < BackupRestoreStatus > ;
2023-08-07 23:32:36 +02:00
} ;
2024-01-11 03:53:06 +01:00
export type SearchTrackerInput = {
query : Scalars [ 'String' ] [ 'input' ] ;
trackerId : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type SearchTrackerPayload = {
__typename ? : 'SearchTrackerPayload' ;
trackSearches : Array < TrackSearchType > ;
} ;
2023-08-07 23:32:36 +02:00
export type SelectFilter = {
__typename ? : 'SelectFilter' ;
default : Scalars [ 'Int' ] [ 'output' ] ;
name : Scalars [ 'String' ] [ 'output' ] ;
values : Array < Scalars [ 'String' ] [ 'output' ] > ;
} ;
export type SeparatorFilter = {
__typename ? : 'SeparatorFilter' ;
name : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type SetCategoryMetaInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
meta : CategoryMetaTypeInput ;
} ;
export type SetCategoryMetaPayload = {
__typename ? : 'SetCategoryMetaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
meta : CategoryMetaType ;
} ;
export type SetChapterMetaInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
meta : ChapterMetaTypeInput ;
} ;
export type SetChapterMetaPayload = {
__typename ? : 'SetChapterMetaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
meta : ChapterMetaType ;
} ;
export type SetGlobalMetaInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
meta : GlobalMetaTypeInput ;
} ;
export type SetGlobalMetaPayload = {
__typename ? : 'SetGlobalMetaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
meta : GlobalMetaType ;
} ;
export type SetMangaMetaInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
meta : MangaMetaTypeInput ;
} ;
export type SetMangaMetaPayload = {
__typename ? : 'SetMangaMetaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
meta : MangaMetaType ;
} ;
export type SetSettingsInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
settings : PartialSettingsTypeInput ;
} ;
export type SetSettingsPayload = {
__typename ? : 'SetSettingsPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
settings : SettingsType ;
} ;
2024-02-17 20:16:51 +01:00
export type SetSourceMetaInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
meta : SourceMetaTypeInput ;
} ;
export type SetSourceMetaPayload = {
__typename ? : 'SetSourceMetaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
meta : SourceMetaType ;
} ;
2023-08-07 23:32:36 +02:00
export type Settings = {
2025-07-12 01:08:40 +02:00
authMode? : Maybe < AuthMode > ;
authPassword? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
authUsername? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2024-02-17 20:16:51 +01:00
/** @deprecated Replaced with autoDownloadNewChaptersLimit, replace with autoDownloadNewChaptersLimit */
2023-11-02 13:01:01 +01:00
autoDownloadAheadLimit? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
2024-04-07 21:47:07 +02:00
autoDownloadIgnoreReUploads? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
autoDownloadNewChapters? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2024-02-17 20:16:51 +01:00
autoDownloadNewChaptersLimit? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
backupInterval? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
backupPath? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
backupTTL? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
backupTime? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-09-08 00:24:32 +02:00
/** @deprecated Removed - prefer authMode, replace with authMode */
2023-08-07 23:32:36 +02:00
basicAuthEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2025-09-08 00:24:32 +02:00
/** @deprecated Removed - prefer authPassword, replace with authPassword */
2023-08-07 23:32:36 +02:00
basicAuthPassword? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-09-08 00:24:32 +02:00
/** @deprecated Removed - prefer authUsername, replace with authUsername */
2023-08-07 23:32:36 +02:00
basicAuthUsername? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-09-08 00:24:32 +02:00
databasePassword? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
databaseType? : Maybe < DatabaseType > ;
databaseUrl? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
databaseUsername? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
debugLogsEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
downloadAsCbz? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2025-07-19 16:26:05 +02:00
downloadConversions? : Maybe < Array < SettingsDownloadConversion > > ;
2023-08-07 23:32:36 +02:00
downloadsPath? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
electronPath? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
excludeCompleted? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-11-02 13:01:01 +01:00
excludeEntryWithUnreadChapters? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
excludeNotStarted? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
excludeUnreadChapters? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2024-01-06 18:38:16 +01:00
extensionRepos? : Maybe < Array < Scalars [ 'String' ] [ 'output' ] > > ;
2024-07-28 22:47:03 +02:00
flareSolverrAsResponseFallback? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2024-01-26 20:50:51 +01:00
flareSolverrEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
flareSolverrSessionName? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
flareSolverrSessionTtl? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
flareSolverrTimeout? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
flareSolverrUrl? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
globalUpdateInterval? : Maybe < Scalars [ 'Float' ] [ 'output' ] > ;
2024-11-28 12:20:36 +01:00
/** @deprecated Removed - does not do anything */
2023-11-02 13:01:01 +01:00
gqlDebugLogsEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
initialOpenInBrowserEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
ip? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-07-27 00:03:51 +02:00
jwtAudience? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
jwtRefreshExpiry? : Maybe < Scalars [ 'Duration' ] [ 'output' ] > ;
jwtTokenExpiry? : Maybe < Scalars [ 'Duration' ] [ 'output' ] > ;
koreaderSyncChecksumMethod? : Maybe < KoreaderSyncChecksumMethod > ;
koreaderSyncDeviceId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
koreaderSyncPercentageTolerance? : Maybe < Scalars [ 'Float' ] [ 'output' ] > ;
koreaderSyncServerUrl? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-09-18 20:37:51 +02:00
/** @deprecated Replaced with koreaderSyncStrategyForward and koreaderSyncStrategyBackward, replace with koreaderSyncStrategyForward, koreaderSyncStrategyBackward */
koreaderSyncStrategy? : Maybe < KoreaderSyncLegacyStrategy > ;
koreaderSyncStrategyBackward? : Maybe < KoreaderSyncConflictStrategy > ;
koreaderSyncStrategyForward? : Maybe < KoreaderSyncConflictStrategy > ;
2025-07-27 00:03:51 +02:00
koreaderSyncUserkey? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
koreaderSyncUsername? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
localSourcePath? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2024-09-01 03:04:34 +02:00
maxLogFileSize? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
maxLogFiles? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
maxLogFolderSize? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
maxSourcesInParallel? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
2025-07-12 04:11:59 +05:30
opdsChapterSortOrder? : Maybe < SortOrder > ;
opdsEnablePageReadProgress? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
opdsItemsPerPage? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
opdsMarkAsReadOnDownload? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
opdsShowOnlyDownloadedChapters? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
opdsShowOnlyUnreadChapters? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
opdsUseBinaryFileSizes? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
port? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
socksProxyEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
socksProxyHost? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2024-02-22 00:25:12 +01:00
socksProxyPassword? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
socksProxyPort? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2024-02-22 00:25:12 +01:00
socksProxyUsername? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
socksProxyVersion? : Maybe < Scalars [ 'Int' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
systemTrayEnabled? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-11-02 13:01:01 +01:00
updateMangas? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
webUIChannel? : Maybe < WebUiChannel > ;
webUIFlavor? : Maybe < WebUiFlavor > ;
webUIInterface? : Maybe < WebUiInterface > ;
webUIUpdateCheckInterval? : Maybe < Scalars [ 'Float' ] [ 'output' ] > ;
} ;
2025-07-19 16:26:05 +02:00
export type SettingsDownloadConversion = {
compressionLevel? : Maybe < Scalars [ 'Float' ] [ 'output' ] > ;
mimeType : Scalars [ 'String' ] [ 'output' ] ;
target : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type SettingsDownloadConversionType = SettingsDownloadConversion & {
__typename ? : 'SettingsDownloadConversionType' ;
compressionLevel? : Maybe < Scalars [ 'Float' ] [ 'output' ] > ;
mimeType : Scalars [ 'String' ] [ 'output' ] ;
target : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type SettingsDownloadConversionTypeInput = {
compressionLevel? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
mimeType : Scalars [ 'String' ] [ 'input' ] ;
target : Scalars [ 'String' ] [ 'input' ] ;
} ;
2023-08-07 23:32:36 +02:00
export type SettingsType = Settings & {
__typename ? : 'SettingsType' ;
2025-07-12 01:08:40 +02:00
authMode : AuthMode ;
authPassword : Scalars [ 'String' ] [ 'output' ] ;
authUsername : Scalars [ 'String' ] [ 'output' ] ;
2024-02-17 20:16:51 +01:00
/** @deprecated Replaced with autoDownloadNewChaptersLimit, replace with autoDownloadNewChaptersLimit */
2023-11-02 13:01:01 +01:00
autoDownloadAheadLimit : Scalars [ 'Int' ] [ 'output' ] ;
2025-07-19 16:26:05 +02:00
autoDownloadIgnoreReUploads : Scalars [ 'Boolean' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
autoDownloadNewChapters : Scalars [ 'Boolean' ] [ 'output' ] ;
2024-02-17 20:16:51 +01:00
autoDownloadNewChaptersLimit : Scalars [ 'Int' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
backupInterval : Scalars [ 'Int' ] [ 'output' ] ;
backupPath : Scalars [ 'String' ] [ 'output' ] ;
backupTTL : Scalars [ 'Int' ] [ 'output' ] ;
backupTime : Scalars [ 'String' ] [ 'output' ] ;
2025-09-08 00:24:32 +02:00
/** @deprecated Removed - prefer authMode, replace with authMode */
2023-08-07 23:32:36 +02:00
basicAuthEnabled : Scalars [ 'Boolean' ] [ 'output' ] ;
2025-09-08 00:24:32 +02:00
/** @deprecated Removed - prefer authPassword, replace with authPassword */
2023-08-07 23:32:36 +02:00
basicAuthPassword : Scalars [ 'String' ] [ 'output' ] ;
2025-09-08 00:24:32 +02:00
/** @deprecated Removed - prefer authUsername, replace with authUsername */
2023-08-07 23:32:36 +02:00
basicAuthUsername : Scalars [ 'String' ] [ 'output' ] ;
2025-09-08 00:24:32 +02:00
databasePassword : Scalars [ 'String' ] [ 'output' ] ;
databaseType : DatabaseType ;
databaseUrl : Scalars [ 'String' ] [ 'output' ] ;
databaseUsername : Scalars [ 'String' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
debugLogsEnabled : Scalars [ 'Boolean' ] [ 'output' ] ;
downloadAsCbz : Scalars [ 'Boolean' ] [ 'output' ] ;
2025-07-19 16:26:05 +02:00
downloadConversions : Array < SettingsDownloadConversionType > ;
2023-08-07 23:32:36 +02:00
downloadsPath : Scalars [ 'String' ] [ 'output' ] ;
electronPath : Scalars [ 'String' ] [ 'output' ] ;
excludeCompleted : Scalars [ 'Boolean' ] [ 'output' ] ;
2023-11-02 13:01:01 +01:00
excludeEntryWithUnreadChapters : Scalars [ 'Boolean' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
excludeNotStarted : Scalars [ 'Boolean' ] [ 'output' ] ;
excludeUnreadChapters : Scalars [ 'Boolean' ] [ 'output' ] ;
2024-01-06 18:38:16 +01:00
extensionRepos : Array < Scalars [ 'String' ] [ 'output' ] > ;
2024-07-28 22:47:03 +02:00
flareSolverrAsResponseFallback : Scalars [ 'Boolean' ] [ 'output' ] ;
2024-01-26 20:50:51 +01:00
flareSolverrEnabled : Scalars [ 'Boolean' ] [ 'output' ] ;
flareSolverrSessionName : Scalars [ 'String' ] [ 'output' ] ;
flareSolverrSessionTtl : Scalars [ 'Int' ] [ 'output' ] ;
flareSolverrTimeout : Scalars [ 'Int' ] [ 'output' ] ;
flareSolverrUrl : Scalars [ 'String' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
globalUpdateInterval : Scalars [ 'Float' ] [ 'output' ] ;
2024-11-28 12:20:36 +01:00
/** @deprecated Removed - does not do anything */
2023-11-02 13:01:01 +01:00
gqlDebugLogsEnabled : Scalars [ 'Boolean' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
initialOpenInBrowserEnabled : Scalars [ 'Boolean' ] [ 'output' ] ;
ip : Scalars [ 'String' ] [ 'output' ] ;
2025-07-27 00:03:51 +02:00
jwtAudience : Scalars [ 'String' ] [ 'output' ] ;
jwtRefreshExpiry : Scalars [ 'Duration' ] [ 'output' ] ;
jwtTokenExpiry : Scalars [ 'Duration' ] [ 'output' ] ;
koreaderSyncChecksumMethod : KoreaderSyncChecksumMethod ;
koreaderSyncDeviceId : Scalars [ 'String' ] [ 'output' ] ;
koreaderSyncPercentageTolerance : Scalars [ 'Float' ] [ 'output' ] ;
koreaderSyncServerUrl : Scalars [ 'String' ] [ 'output' ] ;
2025-09-18 20:37:51 +02:00
/** @deprecated Replaced with koreaderSyncStrategyForward and koreaderSyncStrategyBackward, replace with koreaderSyncStrategyForward, koreaderSyncStrategyBackward */
koreaderSyncStrategy : KoreaderSyncLegacyStrategy ;
koreaderSyncStrategyBackward : KoreaderSyncConflictStrategy ;
koreaderSyncStrategyForward : KoreaderSyncConflictStrategy ;
2025-07-27 00:03:51 +02:00
koreaderSyncUserkey : Scalars [ 'String' ] [ 'output' ] ;
koreaderSyncUsername : Scalars [ 'String' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
localSourcePath : Scalars [ 'String' ] [ 'output' ] ;
2024-09-01 03:04:34 +02:00
maxLogFileSize : Scalars [ 'String' ] [ 'output' ] ;
maxLogFiles : Scalars [ 'Int' ] [ 'output' ] ;
maxLogFolderSize : Scalars [ 'String' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
maxSourcesInParallel : Scalars [ 'Int' ] [ 'output' ] ;
2025-07-12 04:11:59 +05:30
opdsChapterSortOrder : SortOrder ;
opdsEnablePageReadProgress : Scalars [ 'Boolean' ] [ 'output' ] ;
opdsItemsPerPage : Scalars [ 'Int' ] [ 'output' ] ;
opdsMarkAsReadOnDownload : Scalars [ 'Boolean' ] [ 'output' ] ;
opdsShowOnlyDownloadedChapters : Scalars [ 'Boolean' ] [ 'output' ] ;
opdsShowOnlyUnreadChapters : Scalars [ 'Boolean' ] [ 'output' ] ;
opdsUseBinaryFileSizes : Scalars [ 'Boolean' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
port : Scalars [ 'Int' ] [ 'output' ] ;
socksProxyEnabled : Scalars [ 'Boolean' ] [ 'output' ] ;
socksProxyHost : Scalars [ 'String' ] [ 'output' ] ;
2024-02-22 00:25:12 +01:00
socksProxyPassword : Scalars [ 'String' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
socksProxyPort : Scalars [ 'String' ] [ 'output' ] ;
2024-02-22 00:25:12 +01:00
socksProxyUsername : Scalars [ 'String' ] [ 'output' ] ;
socksProxyVersion : Scalars [ 'Int' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
systemTrayEnabled : Scalars [ 'Boolean' ] [ 'output' ] ;
2023-11-02 13:01:01 +01:00
updateMangas : Scalars [ 'Boolean' ] [ 'output' ] ;
2023-08-07 23:32:36 +02:00
webUIChannel : WebUiChannel ;
webUIFlavor : WebUiFlavor ;
webUIInterface : WebUiInterface ;
webUIUpdateCheckInterval : Scalars [ 'Float' ] [ 'output' ] ;
} ;
export type SortFilter = {
__typename ? : 'SortFilter' ;
default ? : Maybe < SortSelection > ;
name : Scalars [ 'String' ] [ 'output' ] ;
values : Array < Scalars [ 'String' ] [ 'output' ] > ;
} ;
export enum SortOrder {
Asc = 'ASC' ,
AscNullsFirst = 'ASC_NULLS_FIRST' ,
AscNullsLast = 'ASC_NULLS_LAST' ,
Desc = 'DESC' ,
DescNullsFirst = 'DESC_NULLS_FIRST' ,
DescNullsLast = 'DESC_NULLS_LAST'
}
export type SortSelection = {
__typename ? : 'SortSelection' ;
ascending : Scalars [ 'Boolean' ] [ 'output' ] ;
index : Scalars [ 'Int' ] [ 'output' ] ;
} ;
export type SortSelectionInput = {
ascending : Scalars [ 'Boolean' ] [ 'input' ] ;
index : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type SourceConditionInput = {
id? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
isNsfw? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lang? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
name? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type SourceEdge = Edge & {
__typename ? : 'SourceEdge' ;
cursor : Scalars [ 'Cursor' ] [ 'output' ] ;
node : SourceType ;
} ;
export type SourceFilterInput = {
and? : InputMaybe < Array < SourceFilterInput > > ;
id? : InputMaybe < LongFilterInput > ;
isNsfw? : InputMaybe < BooleanFilterInput > ;
lang? : InputMaybe < StringFilterInput > ;
name? : InputMaybe < StringFilterInput > ;
not? : InputMaybe < SourceFilterInput > ;
or? : InputMaybe < Array < SourceFilterInput > > ;
} ;
2024-02-17 20:16:51 +01:00
export type SourceMetaType = MetaType & {
__typename ? : 'SourceMetaType' ;
key : Scalars [ 'String' ] [ 'output' ] ;
source : SourceType ;
sourceId : Scalars [ 'LongString' ] [ 'output' ] ;
value : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type SourceMetaTypeInput = {
key : Scalars [ 'String' ] [ 'input' ] ;
sourceId : Scalars [ 'LongString' ] [ 'input' ] ;
value : Scalars [ 'String' ] [ 'input' ] ;
} ;
2023-08-07 23:32:36 +02:00
export type SourceNodeList = NodeList & {
__typename ? : 'SourceNodeList' ;
edges : Array < SourceEdge > ;
nodes : Array < SourceType > ;
pageInfo : PageInfo ;
totalCount : Scalars [ 'Int' ] [ 'output' ] ;
} ;
export enum SourceOrderBy {
Id = 'ID' ,
Lang = 'LANG' ,
Name = 'NAME'
}
2024-07-11 18:13:51 +02:00
export type SourceOrderInput = {
by : SourceOrderBy ;
byType? : InputMaybe < SortOrder > ;
} ;
2023-08-07 23:32:36 +02:00
export type SourcePreferenceChangeInput = {
checkBoxState? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
editTextState? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
listState? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
multiSelectState? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
position : Scalars [ 'Int' ] [ 'input' ] ;
switchState? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
} ;
export type SourceType = {
__typename ? : 'SourceType' ;
2025-07-27 00:03:51 +02:00
baseUrl? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
displayName : Scalars [ 'String' ] [ 'output' ] ;
extension : ExtensionType ;
filters : Array < Filter > ;
iconUrl : Scalars [ 'String' ] [ 'output' ] ;
id : Scalars [ 'LongString' ] [ 'output' ] ;
isConfigurable : Scalars [ 'Boolean' ] [ 'output' ] ;
isNsfw : Scalars [ 'Boolean' ] [ 'output' ] ;
lang : Scalars [ 'String' ] [ 'output' ] ;
manga : MangaNodeList ;
2024-02-17 20:16:51 +01:00
meta : Array < SourceMetaType > ;
2023-08-07 23:32:36 +02:00
name : Scalars [ 'String' ] [ 'output' ] ;
preferences : Array < Preference > ;
supportsLatest : Scalars [ 'Boolean' ] [ 'output' ] ;
} ;
export type StartDownloaderInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type StartDownloaderPayload = {
__typename ? : 'StartDownloaderPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
downloadStatus : DownloadStatus ;
} ;
export type StopDownloaderInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type StopDownloaderPayload = {
__typename ? : 'StopDownloaderPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
downloadStatus : DownloadStatus ;
} ;
export type StringFilterInput = {
distinctFrom? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
distinctFromAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
distinctFromAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
distinctFromInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
distinctFromInsensitiveAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
distinctFromInsensitiveAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
endsWith? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
endsWithAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
endsWithAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
endsWithInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
endsWithInsensitiveAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
endsWithInsensitiveAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
equalTo? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
greaterThan? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
greaterThanInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
greaterThanOrEqualTo? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
greaterThanOrEqualToInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
in ? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
inInsensitive? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
includes? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
includesAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
includesAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
includesInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
includesInsensitiveAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
includesInsensitiveAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
isNull? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lessThan? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
lessThanInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
lessThanOrEqualTo? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
lessThanOrEqualToInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
like? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
likeAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
likeAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
likeInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
likeInsensitiveAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
likeInsensitiveAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notDistinctFrom? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
notDistinctFromInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
notEndsWith? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notEndsWithAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
notEndsWithAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notEndsWithInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notEndsWithInsensitiveAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
notEndsWithInsensitiveAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notEqualTo? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notEqualToAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
notEqualToAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notIn? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
notInInsensitive? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
notIncludes? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notIncludesAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
notIncludesAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notIncludesInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notIncludesInsensitiveAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
notIncludesInsensitiveAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notLike? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notLikeAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
notLikeAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notLikeInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notLikeInsensitiveAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
notLikeInsensitiveAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notStartsWith? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notStartsWithAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
notStartsWithAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
notStartsWithInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
notStartsWithInsensitiveAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
notStartsWithInsensitiveAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
startsWith? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
startsWithAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
startsWithAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
startsWithInsensitive? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2024-07-11 18:13:51 +02:00
startsWithInsensitiveAll? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
startsWithInsensitiveAny? : InputMaybe < Array < Scalars [ 'String' ] [ 'input' ] > > ;
2023-08-07 23:32:36 +02:00
} ;
export type Subscription = {
__typename ? : 'Subscription' ;
2025-03-16 21:01:24 +01:00
/** @deprecated Replaced with downloadStatusChanged, replace with downloadStatusChanged(input) */
2023-08-07 23:32:36 +02:00
downloadChanged : DownloadStatus ;
2024-08-21 21:29:01 +02:00
downloadStatusChanged : DownloadUpdates ;
2025-03-16 21:01:24 +01:00
libraryUpdateStatusChanged : UpdaterUpdates ;
/** @deprecated Replaced with updates, replace with updates(input) */
2023-08-07 23:32:36 +02:00
updateStatusChanged : UpdateStatus ;
webUIUpdateStatusChange : WebUiUpdateStatus ;
} ;
2024-08-21 21:29:01 +02:00
export type SubscriptionDownloadStatusChangedArgs = {
input : DownloadChangedInput ;
} ;
2025-03-16 21:01:24 +01:00
export type SubscriptionLibraryUpdateStatusChangedArgs = {
input : LibraryUpdateStatusChangedInput ;
} ;
2023-08-07 23:32:36 +02:00
export type SwitchPreference = {
__typename ? : 'SwitchPreference' ;
currentValue? : Maybe < Scalars [ 'Boolean' ] [ 'output' ] > ;
default : Scalars [ 'Boolean' ] [ 'output' ] ;
2025-07-27 00:03:51 +02:00
enabled : Scalars [ 'Boolean' ] [ 'output' ] ;
2025-09-08 00:24:32 +02:00
key? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
summary? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2025-03-16 21:01:24 +01:00
title? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2023-08-07 23:32:36 +02:00
visible : Scalars [ 'Boolean' ] [ 'output' ] ;
} ;
2025-07-27 00:03:51 +02:00
export type SyncConflictInfoType = {
__typename ? : 'SyncConflictInfoType' ;
deviceName : Scalars [ 'String' ] [ 'output' ] ;
remotePage : Scalars [ 'Int' ] [ 'output' ] ;
} ;
2023-08-07 23:32:36 +02:00
export type TextFilter = {
__typename ? : 'TextFilter' ;
default : Scalars [ 'String' ] [ 'output' ] ;
name : Scalars [ 'String' ] [ 'output' ] ;
} ;
2024-04-01 00:45:44 +02:00
export type TrackProgressInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
mangaId : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type TrackProgressPayload = {
__typename ? : 'TrackProgressPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
trackRecords : Array < TrackRecordType > ;
} ;
2024-01-11 03:53:06 +01:00
export type TrackRecordConditionInput = {
finishDate? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
id? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
lastChapterRead? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
libraryId? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
mangaId? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2025-07-12 01:08:40 +02:00
private ? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2024-01-11 03:53:06 +01:00
remoteId? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
remoteUrl? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
score? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
startDate? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
status? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
title? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
totalChapters? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-01-26 20:50:51 +01:00
trackerId? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-01-11 03:53:06 +01:00
} ;
2024-01-09 22:09:31 +01:00
export type TrackRecordEdge = Edge & {
__typename ? : 'TrackRecordEdge' ;
cursor : Scalars [ 'Cursor' ] [ 'output' ] ;
node : TrackRecordType ;
} ;
2024-01-11 03:53:06 +01:00
export type TrackRecordFilterInput = {
and? : InputMaybe < Array < TrackRecordFilterInput > > ;
finishDate? : InputMaybe < LongFilterInput > ;
id? : InputMaybe < IntFilterInput > ;
lastChapterRead? : InputMaybe < DoubleFilterInput > ;
libraryId? : InputMaybe < LongFilterInput > ;
mangaId? : InputMaybe < IntFilterInput > ;
not? : InputMaybe < TrackRecordFilterInput > ;
or? : InputMaybe < Array < TrackRecordFilterInput > > ;
2025-07-12 01:08:40 +02:00
private ? : InputMaybe < BooleanFilterInput > ;
2024-01-11 03:53:06 +01:00
remoteId? : InputMaybe < LongFilterInput > ;
remoteUrl? : InputMaybe < StringFilterInput > ;
score? : InputMaybe < DoubleFilterInput > ;
startDate? : InputMaybe < LongFilterInput > ;
status? : InputMaybe < IntFilterInput > ;
title? : InputMaybe < StringFilterInput > ;
totalChapters? : InputMaybe < IntFilterInput > ;
2024-01-26 20:50:51 +01:00
trackerId? : InputMaybe < IntFilterInput > ;
2024-01-11 03:53:06 +01:00
} ;
2024-01-09 22:09:31 +01:00
export type TrackRecordNodeList = NodeList & {
__typename ? : 'TrackRecordNodeList' ;
edges : Array < TrackRecordEdge > ;
nodes : Array < TrackRecordType > ;
pageInfo : PageInfo ;
totalCount : Scalars [ 'Int' ] [ 'output' ] ;
} ;
2024-01-11 03:53:06 +01:00
export enum TrackRecordOrderBy {
FinishDate = 'FINISH_DATE' ,
Id = 'ID' ,
LastChapterRead = 'LAST_CHAPTER_READ' ,
MangaId = 'MANGA_ID' ,
2025-07-12 01:08:40 +02:00
Private = 'PRIVATE' ,
2024-01-11 03:53:06 +01:00
RemoteId = 'REMOTE_ID' ,
Score = 'SCORE' ,
StartDate = 'START_DATE' ,
Title = 'TITLE' ,
2024-01-26 20:50:51 +01:00
TotalChapters = 'TOTAL_CHAPTERS' ,
TrackerId = 'TRACKER_ID'
2024-01-11 03:53:06 +01:00
}
2024-07-11 18:13:51 +02:00
export type TrackRecordOrderInput = {
by : TrackRecordOrderBy ;
byType? : InputMaybe < SortOrder > ;
} ;
2024-01-09 22:09:31 +01:00
export type TrackRecordType = {
__typename ? : 'TrackRecordType' ;
displayScore : Scalars [ 'String' ] [ 'output' ] ;
finishDate : Scalars [ 'LongString' ] [ 'output' ] ;
id : Scalars [ 'Int' ] [ 'output' ] ;
lastChapterRead : Scalars [ 'Float' ] [ 'output' ] ;
libraryId? : Maybe < Scalars [ 'LongString' ] [ 'output' ] > ;
manga : MangaType ;
mangaId : Scalars [ 'Int' ] [ 'output' ] ;
2025-07-12 01:08:40 +02:00
private : Scalars [ 'Boolean' ] [ 'output' ] ;
2024-01-09 22:09:31 +01:00
remoteId : Scalars [ 'LongString' ] [ 'output' ] ;
remoteUrl : Scalars [ 'String' ] [ 'output' ] ;
score : Scalars [ 'Float' ] [ 'output' ] ;
startDate : Scalars [ 'LongString' ] [ 'output' ] ;
status : Scalars [ 'Int' ] [ 'output' ] ;
title : Scalars [ 'String' ] [ 'output' ] ;
totalChapters : Scalars [ 'Int' ] [ 'output' ] ;
tracker : TrackerType ;
2024-01-26 20:50:51 +01:00
trackerId : Scalars [ 'Int' ] [ 'output' ] ;
2024-01-09 22:09:31 +01:00
} ;
2024-01-11 03:53:06 +01:00
export type TrackSearchType = {
__typename ? : 'TrackSearchType' ;
coverUrl : Scalars [ 'String' ] [ 'output' ] ;
2025-07-12 01:08:40 +02:00
displayScore : Scalars [ 'String' ] [ 'output' ] ;
finishedReadingDate : Scalars [ 'LongString' ] [ 'output' ] ;
2024-01-26 20:50:51 +01:00
id : Scalars [ 'Int' ] [ 'output' ] ;
2025-07-12 01:08:40 +02:00
lastChapterRead : Scalars [ 'Float' ] [ 'output' ] ;
libraryId? : Maybe < Scalars [ 'LongString' ] [ 'output' ] > ;
private : Scalars [ 'Boolean' ] [ 'output' ] ;
2024-01-11 03:53:06 +01:00
publishingStatus : Scalars [ 'String' ] [ 'output' ] ;
publishingType : Scalars [ 'String' ] [ 'output' ] ;
2024-01-26 20:50:51 +01:00
remoteId : Scalars [ 'LongString' ] [ 'output' ] ;
2025-07-12 01:08:40 +02:00
score : Scalars [ 'Float' ] [ 'output' ] ;
2024-01-11 03:53:06 +01:00
startDate : Scalars [ 'String' ] [ 'output' ] ;
2025-07-12 01:08:40 +02:00
startedReadingDate : Scalars [ 'LongString' ] [ 'output' ] ;
status : Scalars [ 'Int' ] [ 'output' ] ;
2024-01-11 03:53:06 +01:00
summary : Scalars [ 'String' ] [ 'output' ] ;
title : Scalars [ 'String' ] [ 'output' ] ;
totalChapters : Scalars [ 'Int' ] [ 'output' ] ;
tracker : TrackerType ;
2024-01-26 20:50:51 +01:00
trackerId : Scalars [ 'Int' ] [ 'output' ] ;
2024-01-11 03:53:06 +01:00
trackingUrl : Scalars [ 'String' ] [ 'output' ] ;
} ;
2024-01-26 20:50:51 +01:00
export type TrackStatusType = {
__typename ? : 'TrackStatusType' ;
name : Scalars [ 'String' ] [ 'output' ] ;
value : Scalars [ 'Int' ] [ 'output' ] ;
2024-01-11 03:53:06 +01:00
} ;
export type TrackerConditionInput = {
icon? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
id? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
isLoggedIn? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
name? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
2024-01-09 22:09:31 +01:00
export type TrackerEdge = Edge & {
__typename ? : 'TrackerEdge' ;
cursor : Scalars [ 'Cursor' ] [ 'output' ] ;
node : TrackerType ;
} ;
export type TrackerNodeList = NodeList & {
__typename ? : 'TrackerNodeList' ;
edges : Array < TrackerEdge > ;
nodes : Array < TrackerType > ;
pageInfo : PageInfo ;
totalCount : Scalars [ 'Int' ] [ 'output' ] ;
} ;
2024-01-11 03:53:06 +01:00
export enum TrackerOrderBy {
Id = 'ID' ,
IsLoggedIn = 'IS_LOGGED_IN' ,
Name = 'NAME'
}
2024-07-11 18:13:51 +02:00
export type TrackerOrderInput = {
by : TrackerOrderBy ;
byType? : InputMaybe < SortOrder > ;
} ;
2024-01-09 22:09:31 +01:00
export type TrackerType = {
__typename ? : 'TrackerType' ;
authUrl? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
icon : Scalars [ 'String' ] [ 'output' ] ;
id : Scalars [ 'Int' ] [ 'output' ] ;
isLoggedIn : Scalars [ 'Boolean' ] [ 'output' ] ;
2024-02-22 00:25:12 +01:00
isTokenExpired : Scalars [ 'Boolean' ] [ 'output' ] ;
2024-01-09 22:09:31 +01:00
name : Scalars [ 'String' ] [ 'output' ] ;
2024-01-26 20:50:51 +01:00
scores : Array < Scalars [ 'String' ] [ 'output' ] > ;
statuses : Array < TrackStatusType > ;
2025-07-12 01:08:40 +02:00
supportsPrivateTracking : Scalars [ 'Boolean' ] [ 'output' ] ;
supportsReadingDates : Scalars [ 'Boolean' ] [ 'output' ] ;
supportsTrackDeletion : Scalars [ 'Boolean' ] [ 'output' ] ;
2024-01-09 22:09:31 +01:00
trackRecords : TrackRecordNodeList ;
} ;
2023-08-07 23:32:36 +02:00
export enum TriState {
Exclude = 'EXCLUDE' ,
Ignore = 'IGNORE' ,
Include = 'INCLUDE'
}
export type TriStateFilter = {
__typename ? : 'TriStateFilter' ;
default : TriState ;
name : Scalars [ 'String' ] [ 'output' ] ;
} ;
2024-04-01 00:45:44 +02:00
export type UnbindTrackInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
/** This will only work if the tracker of the track record supports deleting tracks */
deleteRemoteTrack? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
recordId : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type UnbindTrackPayload = {
__typename ? : 'UnbindTrackPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
trackRecord? : Maybe < TrackRecordType > ;
} ;
2023-08-07 23:32:36 +02:00
export type UpdateCategoriesInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
ids : Array < Scalars [ 'Int' ] [ 'input' ] > ;
patch : UpdateCategoryPatchInput ;
} ;
export type UpdateCategoriesPayload = {
__typename ? : 'UpdateCategoriesPayload' ;
categories : Array < CategoryType > ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
export type UpdateCategoryInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
id : Scalars [ 'Int' ] [ 'input' ] ;
patch : UpdateCategoryPatchInput ;
} ;
export type UpdateCategoryMangaInput = {
categories : Array < Scalars [ 'Int' ] [ 'input' ] > ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type UpdateCategoryMangaPayload = {
__typename ? : 'UpdateCategoryMangaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
updateStatus : UpdateStatus ;
} ;
export type UpdateCategoryOrderInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
id : Scalars [ 'Int' ] [ 'input' ] ;
position : Scalars [ 'Int' ] [ 'input' ] ;
} ;
export type UpdateCategoryOrderPayload = {
__typename ? : 'UpdateCategoryOrderPayload' ;
categories : Array < CategoryType > ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
export type UpdateCategoryPatchInput = {
default ? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2024-01-21 13:31:04 -08:00
includeInDownload? : InputMaybe < IncludeOrExclude > ;
includeInUpdate? : InputMaybe < IncludeOrExclude > ;
2023-08-07 23:32:36 +02:00
name? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type UpdateCategoryPayload = {
__typename ? : 'UpdateCategoryPayload' ;
category : CategoryType ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
export type UpdateChapterInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
id : Scalars [ 'Int' ] [ 'input' ] ;
patch : UpdateChapterPatchInput ;
} ;
export type UpdateChapterPatchInput = {
isBookmarked? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
isRead? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
lastPageRead? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
} ;
export type UpdateChapterPayload = {
__typename ? : 'UpdateChapterPayload' ;
chapter : ChapterType ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
export type UpdateChaptersInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
ids : Array < Scalars [ 'Int' ] [ 'input' ] > ;
patch : UpdateChapterPatchInput ;
} ;
export type UpdateChaptersPayload = {
__typename ? : 'UpdateChaptersPayload' ;
chapters : Array < ChapterType > ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
export type UpdateExtensionInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
id : Scalars [ 'String' ] [ 'input' ] ;
patch : UpdateExtensionPatchInput ;
} ;
export type UpdateExtensionPatchInput = {
install? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
uninstall? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
update? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
} ;
export type UpdateExtensionPayload = {
__typename ? : 'UpdateExtensionPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
2024-01-06 18:38:16 +01:00
extension? : Maybe < ExtensionType > ;
2023-08-07 23:32:36 +02:00
} ;
export type UpdateExtensionsInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
ids : Array < Scalars [ 'String' ] [ 'input' ] > ;
patch : UpdateExtensionPatchInput ;
} ;
export type UpdateExtensionsPayload = {
__typename ? : 'UpdateExtensionsPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
extensions : Array < ExtensionType > ;
} ;
2025-03-16 21:01:24 +01:00
export type UpdateLibraryInput = {
categories? : InputMaybe < Array < Scalars [ 'Int' ] [ 'input' ] > > ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
2023-08-07 23:32:36 +02:00
export type UpdateLibraryMangaInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type UpdateLibraryMangaPayload = {
__typename ? : 'UpdateLibraryMangaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
updateStatus : UpdateStatus ;
} ;
2025-03-16 21:01:24 +01:00
export type UpdateLibraryPayload = {
__typename ? : 'UpdateLibraryPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
updateStatus : LibraryUpdateStatus ;
} ;
2023-08-07 23:32:36 +02:00
export type UpdateMangaCategoriesInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
id : Scalars [ 'Int' ] [ 'input' ] ;
patch : UpdateMangaCategoriesPatchInput ;
} ;
export type UpdateMangaCategoriesPatchInput = {
addToCategories? : InputMaybe < Array < Scalars [ 'Int' ] [ 'input' ] > > ;
clearCategories? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
removeFromCategories? : InputMaybe < Array < Scalars [ 'Int' ] [ 'input' ] > > ;
} ;
export type UpdateMangaCategoriesPayload = {
__typename ? : 'UpdateMangaCategoriesPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
manga : MangaType ;
} ;
export type UpdateMangaInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
id : Scalars [ 'Int' ] [ 'input' ] ;
patch : UpdateMangaPatchInput ;
} ;
export type UpdateMangaPatchInput = {
inLibrary? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
} ;
export type UpdateMangaPayload = {
__typename ? : 'UpdateMangaPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
manga : MangaType ;
} ;
export type UpdateMangasCategoriesInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
ids : Array < Scalars [ 'Int' ] [ 'input' ] > ;
patch : UpdateMangaCategoriesPatchInput ;
} ;
export type UpdateMangasCategoriesPayload = {
__typename ? : 'UpdateMangasCategoriesPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
mangas : Array < MangaType > ;
} ;
export type UpdateMangasInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
ids : Array < Scalars [ 'Int' ] [ 'input' ] > ;
patch : UpdateMangaPatchInput ;
} ;
export type UpdateMangasPayload = {
__typename ? : 'UpdateMangasPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
mangas : Array < MangaType > ;
} ;
export type UpdateSourcePreferenceInput = {
change : SourcePreferenceChangeInput ;
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
source : Scalars [ 'LongString' ] [ 'input' ] ;
} ;
export type UpdateSourcePreferencePayload = {
__typename ? : 'UpdateSourcePreferencePayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
preferences : Array < Preference > ;
source : SourceType ;
} ;
export enum UpdateState {
Downloading = 'DOWNLOADING' ,
Error = 'ERROR' ,
Finished = 'FINISHED' ,
2023-12-09 14:16:52 +01:00
Idle = 'IDLE'
2023-08-07 23:32:36 +02:00
}
export type UpdateStatus = {
__typename ? : 'UpdateStatus' ;
completeJobs : UpdateStatusType ;
failedJobs : UpdateStatusType ;
isRunning : Scalars [ 'Boolean' ] [ 'output' ] ;
pendingJobs : UpdateStatusType ;
runningJobs : UpdateStatusType ;
skippedCategories : UpdateStatusCategoryType ;
skippedJobs : UpdateStatusType ;
updatingCategories : UpdateStatusCategoryType ;
} ;
export type UpdateStatusCategoryType = {
__typename ? : 'UpdateStatusCategoryType' ;
categories : CategoryNodeList ;
} ;
export type UpdateStatusType = {
__typename ? : 'UpdateStatusType' ;
mangas : MangaNodeList ;
} ;
export type UpdateStopInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type UpdateStopPayload = {
__typename ? : 'UpdateStopPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
} ;
2024-01-06 18:38:16 +01:00
export enum UpdateStrategy {
AlwaysUpdate = 'ALWAYS_UPDATE' ,
OnlyFetchOnce = 'ONLY_FETCH_ONCE'
}
2024-01-11 03:53:06 +01:00
export type UpdateTrackInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2025-07-12 01:08:40 +02:00
/** This will only work if the tracker of the track record supports reading dates */
2024-01-11 03:53:06 +01:00
finishDate? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
lastChapterRead? : InputMaybe < Scalars [ 'Float' ] [ 'input' ] > ;
2025-07-12 01:08:40 +02:00
/** This will only work if the tracker of the track record supports private tracking */
private ? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
2024-01-11 03:53:06 +01:00
recordId : Scalars [ 'Int' ] [ 'input' ] ;
scoreString? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
2025-07-12 01:08:40 +02:00
/** This will only work if the tracker of the track record supports reading dates */
2024-01-11 03:53:06 +01:00
startDate? : InputMaybe < Scalars [ 'LongString' ] [ 'input' ] > ;
status? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
} ;
export type UpdateTrackPayload = {
__typename ? : 'UpdateTrackPayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
trackRecord? : Maybe < TrackRecordType > ;
} ;
2025-03-16 21:01:24 +01:00
export type UpdaterJobsInfoType = {
__typename ? : 'UpdaterJobsInfoType' ;
finishedJobs : Scalars [ 'Int' ] [ 'output' ] ;
isRunning : Scalars [ 'Boolean' ] [ 'output' ] ;
skippedCategoriesCount : Scalars [ 'Int' ] [ 'output' ] ;
skippedMangasCount : Scalars [ 'Int' ] [ 'output' ] ;
totalJobs : Scalars [ 'Int' ] [ 'output' ] ;
} ;
export type UpdaterUpdates = {
__typename ? : 'UpdaterUpdates' ;
categoryUpdates : Array < CategoryUpdateType > ;
/** The current update status at the time of sending the initial message. Is null for all following messages */
initial? : Maybe < LibraryUpdateStatus > ;
jobsInfo : UpdaterJobsInfoType ;
mangaUpdates : Array < MangaUpdateType > ;
/** Indicates whether updates have been omitted based on the "maxUpdates" subscription variable. In case updates have been omitted, the "updateStatus" query should be re-fetched. */
omittedUpdates : Scalars [ 'Boolean' ] [ 'output' ] ;
} ;
2023-08-07 23:32:36 +02:00
export type ValidateBackupInput = {
backup : Scalars [ 'Upload' ] [ 'input' ] ;
} ;
export type ValidateBackupResult = {
__typename ? : 'ValidateBackupResult' ;
missingSources : Array < ValidateBackupSource > ;
2024-05-01 16:56:18 +02:00
missingTrackers : Array < ValidateBackupTracker > ;
2023-08-07 23:32:36 +02:00
} ;
export type ValidateBackupSource = {
__typename ? : 'ValidateBackupSource' ;
id : Scalars [ 'LongString' ] [ 'output' ] ;
name : Scalars [ 'String' ] [ 'output' ] ;
} ;
2024-05-01 16:56:18 +02:00
export type ValidateBackupTracker = {
__typename ? : 'ValidateBackupTracker' ;
name : Scalars [ 'String' ] [ 'output' ] ;
} ;
2023-08-07 23:32:36 +02:00
export enum WebUiChannel {
Bundled = 'BUNDLED' ,
Preview = 'PREVIEW' ,
Stable = 'STABLE'
}
export enum WebUiFlavor {
Custom = 'CUSTOM' ,
2024-02-17 20:16:51 +01:00
Vui = 'VUI' ,
2023-08-07 23:32:36 +02:00
Webui = 'WEBUI'
}
export enum WebUiInterface {
Browser = 'BROWSER' ,
Electron = 'ELECTRON'
}
2023-12-05 22:20:13 +01:00
export type WebUiUpdateCheck = {
__typename ? : 'WebUIUpdateCheck' ;
2025-04-06 23:58:58 +02:00
channel : WebUiChannel ;
2023-12-05 22:20:13 +01:00
tag : Scalars [ 'String' ] [ 'output' ] ;
updateAvailable : Scalars [ 'Boolean' ] [ 'output' ] ;
} ;
2023-08-07 23:32:36 +02:00
export type WebUiUpdateInfo = {
__typename ? : 'WebUIUpdateInfo' ;
2025-04-06 23:58:58 +02:00
channel : WebUiChannel ;
2023-08-07 23:32:36 +02:00
tag : Scalars [ 'String' ] [ 'output' ] ;
} ;
export type WebUiUpdateInput = {
clientMutationId? : InputMaybe < Scalars [ 'String' ] [ 'input' ] > ;
} ;
export type WebUiUpdatePayload = {
__typename ? : 'WebUIUpdatePayload' ;
clientMutationId? : Maybe < Scalars [ 'String' ] [ 'output' ] > ;
updateStatus : WebUiUpdateStatus ;
} ;
export type WebUiUpdateStatus = {
__typename ? : 'WebUIUpdateStatus' ;
info : WebUiUpdateInfo ;
progress : Scalars [ 'Int' ] [ 'output' ] ;
state : UpdateState ;
} ;
2024-09-22 02:46:01 +02:00
export type CategoryMetaFieldsFragment = { __typename ? : 'CategoryMetaType' , categoryId : number , key : string , value : string } ;
2024-07-01 21:40:27 +02:00
export type CategoryBaseFieldsFragment = { __typename ? : 'CategoryType' , id : number , name : string , default : boolean , order : number } ;
2024-09-21 20:01:06 +02:00
export type CategoryLibraryFieldsFragment = { __typename ? : 'CategoryType' , id : number , name : string , default : boolean , order : number , meta : Array < { __typename ? : 'CategoryMetaType' , categoryId : number , key : string , value : string } > , mangas : { __typename ? : 'MangaNodeList' , totalCount : number } } ;
2024-07-01 21:40:27 +02:00
export type CategorySettingFieldsFragment = { __typename ? : 'CategoryType' , includeInUpdate : IncludeOrExclude , includeInDownload : IncludeOrExclude , id : number , name : string , default : boolean , order : number } ;
2024-09-22 02:46:01 +02:00
export type ChapterMetaFieldsFragment = { __typename ? : 'ChapterMetaType' , chapterId : number , key : string , value : string } ;
2024-07-02 16:20:28 +02:00
export type ChapterBaseFieldsFragment = { __typename ? : 'ChapterType' , id : number , name : string , mangaId : number , scanlator? : string | null , realUrl? : string | null , sourceOrder : number , chapterNumber : number } ;
export type ChapterStateFieldsFragment = { __typename ? : 'ChapterType' , id : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean } ;
2024-09-28 03:24:16 +02:00
export type ChapterReaderFieldsFragment = { __typename ? : 'ChapterType' , uploadDate : string , lastPageRead : number , pageCount : number , id : number , name : string , mangaId : number , scanlator? : string | null , realUrl? : string | null , sourceOrder : number , chapterNumber : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean } ;
2024-07-02 16:20:28 +02:00
2025-03-16 21:01:24 +01:00
export type ChapterListFieldsFragment = { __typename ? : 'ChapterType' , fetchedAt : string , uploadDate : string , lastReadAt : string , id : number , name : string , mangaId : number , scanlator? : string | null , realUrl? : string | null , sourceOrder : number , chapterNumber : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean } ;
2024-07-02 16:20:28 +02:00
2025-03-16 21:01:24 +01:00
export type ChapterUpdateListFieldsFragment = { __typename ? : 'ChapterType' , fetchedAt : string , uploadDate : string , lastReadAt : string , id : number , name : string , mangaId : number , scanlator? : string | null , realUrl? : string | null , sourceOrder : number , chapterNumber : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean , manga : { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string } } ;
2024-07-02 16:20:28 +02:00
2025-03-16 21:01:24 +01:00
export type ChapterHistoryListFieldsFragment = { __typename ? : 'ChapterType' , fetchedAt : string , uploadDate : string , lastReadAt : string , id : number , name : string , mangaId : number , scanlator? : string | null , realUrl? : string | null , sourceOrder : number , chapterNumber : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean , manga : { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string } } ;
Add history page (#897)
* Add History module and integrate it into the app
Introduce the History module with components for displaying chapter updates, including UI for grouped updates by date. Update routing and constants to incorporate the new /history path.
* Replace "Updates" and "History" with unified "Recent" module
Merged the "Updates" and "History" screens into a single unified "Recent" module with corresponding navigation updates. Adjusted GraphQL types and localization files to reflect the changes. This simplifies navigation and improves user experience.
* Refactor History screen to remove unused components.
Removed unused states, layout effects, and props related to last update timestamp. Renamed variables for better clarity and updated labels and error messages to align with the history context. Simplified component structure for improved maintainability.
* ```
Refactor tab handling and integrate dynamic height adjustments.
Renamed enums for better clarity and consistency. Implemented a `tabsMenuHeight` prop to dynamically adjust component layouts based on observed height changes using `useResizeObserver`. Updated the `Updates` component to consider the calculated heights for improved rendering.
```
* Refactor `groupByDate` parameter and add `lastReadAt` field
Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.
* Refactor `groupByDate` parameter and add `lastReadAt` field
Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.
* Refactor `groupByDate` parameter and add `lastReadAt` field
Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.
* Refactor `groupByDate` parameter and add `lastReadAt` field
Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.
* "Optimize GraphQL type definition formatting in generated file
Condensed the formatting of the GetChaptersHistoryQuery type to a single line for improved readability and consistency. This change does not affect functionality but enhances maintainability of the generated code."
* Remove UpdateChecker component from History screen
The UpdateChecker component and its related navbar action have been removed from the History screen. This simplifies the navbar setup and eliminates unused functionality in this context.
* Refactor chapter fragment and type references
Updated `ChapterRecentListFieldsFragment` to `ChapterUpdateListFieldsFragment` for better alignment with naming conventions. Adjusted type imports and query structures to maintain consistency across files. No functional changes introduced.
* Refactor padding calculation logic in Updates screen.
Renamed state variable and refactored its logic for clarity and consistency. The updated logic now uses a more descriptive name, `listPadding`, to enhance code readability and maintainability.
* Pass `tabsMenuHeight` prop to History component
Added `tabsMenuHeight` prop to the `History` component to properly calculate the height for the `StyledGroupedVirtuoso` element. This ensures consistency with other components and improves layout rendering.
* Revert package.json
* Add last page read tracking to chapter history
Introduced "lastPageRead" and "pageCount" fields to track progress in chapter history. Updated UI to display the last page read along with total pages for chapters. Adjusted localization files to support the new "page" label.
* Remove last page read display from ChapterHistoryCard
The "last page read" information was removed from the ChapterHistoryCard component for a cleaner UI. This change simplifies the card's design by showing only the chapter name and relevant download state.
* Forcing an empty commit.
* Replace "Recent" screen with separate "Updates" and "History".
The "Recent" feature has been split into two distinct screens, "Updates" and "History", for improved clarity and functionality. Routes, icons, and components have been updated accordingly, and redundant code related to "Recent" has been removed.
* Clean
* Revert vi.json
* Remove unnecessary `useLocation` hook and update state logic.
The `useLocation` hook was removed as it was not used elsewhere in the component. The state property for the routing logic was updated to use `Chapters.getReaderOpenChapterLocationState` for better encapsulation and clarity.
* Update history localization by removing unused "page" key
Removed the "page" key from the "history" section in the localization file as it is no longer in use. This cleanup helps keep the translation file consistent and easier to maintain.
---------
Co-authored-by: NamNH <namitonguyen@gmail.com>
2025-03-11 03:53:40 +07:00
2024-08-21 21:29:01 +02:00
export type DownloadTypeFieldsFragment = { __typename ? : 'DownloadType' , progress : number , state : DownloadState , tries : number , chapter : { __typename ? : 'ChapterType' , id : number , name : string , sourceOrder : number , isDownloaded : boolean } , manga : { __typename ? : 'MangaType' , id : number , title : string , downloadCount : number } } ;
2024-07-06 15:28:27 +02:00
export type DownloadStatusFieldsFragment = { __typename ? : 'DownloadStatus' , state : DownloaderState , queue : Array < { __typename ? : 'DownloadType' , progress : number , state : DownloadState , tries : number , chapter : { __typename ? : 'ChapterType' , id : number , name : string , sourceOrder : number , isDownloaded : boolean } , manga : { __typename ? : 'MangaType' , id : number , title : string , downloadCount : number } } > } ;
2024-08-21 21:29:01 +02:00
export type DownloadUpdatesFieldsFragment = { __typename ? : 'DownloadUpdates' , state : DownloaderState , omittedUpdates : boolean , updates : Array < { __typename ? : 'DownloadUpdate' , type : DownloadUpdateType , download : { __typename ? : 'DownloadType' , position : number , progress : number , state : DownloadState , tries : number , chapter : { __typename ? : 'ChapterType' , id : number , name : string , sourceOrder : number , isDownloaded : boolean } , manga : { __typename ? : 'MangaType' , id : number , title : string , downloadCount : number } } } > } ;
2024-07-06 15:55:58 +02:00
export type ExtensionListFieldsFragment = { __typename ? : 'ExtensionType' , pkgName : string , name : string , lang : string , versionCode : number , versionName : string , iconUrl : string , repo? : string | null , isNsfw : boolean , isInstalled : boolean , isObsolete : boolean , hasUpdate : boolean } ;
2024-07-09 00:40:35 +02:00
export type PageInfoFragment = { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } ;
export type GlobalMetadataFragment = { __typename ? : 'GlobalMetaType' , key : string , value : string } ;
2025-04-06 23:58:58 +02:00
export type AboutWebuiFragment = { __typename ? : 'AboutWebUI' , channel : WebUiChannel , tag : string } ;
2024-07-09 00:39:41 +02:00
2025-04-06 23:58:58 +02:00
export type WebuiUpdateCheckFragment = { __typename ? : 'WebUIUpdateCheck' , channel : WebUiChannel , tag : string , updateAvailable : boolean } ;
2024-07-09 00:39:41 +02:00
2025-04-06 23:58:58 +02:00
export type WebuiUpdateInfoFragment = { __typename ? : 'WebUIUpdateInfo' , channel : WebUiChannel , tag : string } ;
2024-07-09 00:39:41 +02:00
2025-04-06 23:58:58 +02:00
export type WebuiUpdateStatusFragment = { __typename ? : 'WebUIUpdateStatus' , progress : number , state : UpdateState , info : { __typename ? : 'WebUIUpdateInfo' , channel : WebUiChannel , tag : string } } ;
2024-07-09 00:39:41 +02:00
2024-09-22 02:46:01 +02:00
export type MangaMetaFieldsFragment = { __typename ? : 'MangaMetaType' , mangaId : number , key : string , value : string } ;
2024-08-14 22:40:53 +02:00
export type MangaBaseFieldsFragment = { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string } ;
2024-07-08 18:02:50 +02:00
2024-07-28 23:14:42 +02:00
export type MangaChapterStatFieldsFragment = { __typename ? : 'MangaType' , id : number , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } } ;
2024-07-08 18:02:50 +02:00
2025-09-18 20:37:51 +02:00
export type MangaChapterNodeFieldsFragment = { __typename ? : 'MangaType' , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } ;
2024-07-26 13:42:33 +02:00
2025-04-18 00:17:56 +02:00
export type MangaReaderFieldsFragment = { __typename ? : 'MangaType' , genre : Array < string > , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string , source ? : { __typename ? : 'SourceType' , id : string , name : string , displayName : string , lang : string } | null , meta : Array < { __typename ? : 'MangaMetaType' , mangaId : number , key : string , value : string } > , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , trackRecords : { __typename ? : 'TrackRecordNodeList' , totalCount : number } } ;
2024-07-08 18:02:50 +02:00
2025-09-18 20:37:51 +02:00
export type MangaLibraryFieldsFragment = { __typename ? : 'MangaType' , genre : Array < string > , lastFetchedAt? : string | null , inLibraryAt : string , status : MangaStatus , artist? : string | null , author? : string | null , description? : string | null , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , meta : Array < { __typename ? : 'MangaMetaType' , mangaId : number , key : string , value : string } > , source ? : { __typename ? : 'SourceType' , id : string , displayName : string } | null , trackRecords : { __typename ? : 'TrackRecordNodeList' , totalCount : number , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , trackerId : number } > } , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } ;
2024-07-08 18:02:50 +02:00
2025-09-18 20:37:51 +02:00
export type MangaScreenFieldsFragment = { __typename ? : 'MangaType' , artist? : string | null , author? : string | null , description? : string | null , status : MangaStatus , realUrl? : string | null , sourceId : string , genre : Array < string > , lastFetchedAt? : string | null , inLibraryAt : string , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , meta : Array < { __typename ? : 'MangaMetaType' , mangaId : number , key : string , value : string } > , source ? : { __typename ? : 'SourceType' , id : string , displayName : string } | null , trackRecords : { __typename ? : 'TrackRecordNodeList' , totalCount : number , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , trackerId : number } > } , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } ;
2024-07-08 18:02:50 +02:00
2024-07-28 23:14:42 +02:00
export type MangaLibraryDuplicateScreenFieldsFragment = { __typename ? : 'MangaType' , description? : string | null , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } } ;
2024-07-08 18:02:50 +02:00
2025-09-18 22:27:19 +02:00
export type ServerSettingsFragment = { __typename ? : 'SettingsType' , ip : string , port : number , socksProxyEnabled : boolean , socksProxyVersion : number , socksProxyHost : string , socksProxyPort : string , socksProxyUsername : string , socksProxyPassword : string , webUIFlavor : WebUiFlavor , initialOpenInBrowserEnabled : boolean , webUIInterface : WebUiInterface , electronPath : string , webUIChannel : WebUiChannel , webUIUpdateCheckInterval : number , downloadAsCbz : boolean , downloadsPath : string , autoDownloadNewChapters : boolean , excludeEntryWithUnreadChapters : boolean , autoDownloadNewChaptersLimit : number , autoDownloadIgnoreReUploads : boolean , extensionRepos : Array < string > , maxSourcesInParallel : number , excludeUnreadChapters : boolean , excludeNotStarted : boolean , excludeCompleted : boolean , globalUpdateInterval : number , updateMangas : boolean , authMode : AuthMode , authPassword : string , authUsername : string , jwtAudience : string , jwtTokenExpiry : string , jwtRefreshExpiry : string , debugLogsEnabled : boolean , systemTrayEnabled : boolean , maxLogFileSize : string , maxLogFiles : number , maxLogFolderSize : string , backupPath : string , backupTime : string , backupInterval : number , backupTTL : number , localSourcePath : string , flareSolverrEnabled : boolean , flareSolverrUrl : string , flareSolverrTimeout : number , flareSolverrSessionName : string , flareSolverrSessionTtl : number , flareSolverrAsResponseFallback : boolean , opdsUseBinaryFileSizes : boolean , opdsItemsPerPage : number , opdsEnablePageReadProgress : boolean , opdsMarkAsReadOnDownload : boolean , opdsShowOnlyUnreadChapters : boolean , opdsShowOnlyDownloadedChapters : boolean , opdsChapterSortOrder : SortOrder , koreaderSyncServerUrl : string , koreaderSyncUsername : string , koreaderSyncUserkey : string , koreaderSyncDeviceId : string , koreaderSyncChecksumMethod : KoreaderSyncChecksumMethod , koreaderSyncStrategy : KoreaderSyncLegacyStrategy , koreaderSyncPercentageTolerance : number , databaseType : DatabaseType , databaseUrl : string , databaseUsername : string , databasePassword : string , downloadConversions : Array < { __typename ? : 'SettingsDownloadConversionType' , mimeType : string , target : string , compressionLevel? : number | null } > } ;
2024-07-09 00:37:29 +02:00
2024-09-22 02:46:01 +02:00
export type SourceMetaFieldsFragment = { __typename ? : 'SourceMetaType' , sourceId : string , key : string , value : string } ;
2025-04-18 00:17:56 +02:00
export type SourceBaseFieldsFragment = { __typename ? : 'SourceType' , id : string , name : string , displayName : string , lang : string } ;
2024-07-03 23:15:50 +02:00
export type SourceMigratableFieldsFragment = { __typename ? : 'SourceType' , lang : string , iconUrl : string , id : string , name : string , displayName : string } ;
2025-05-17 22:17:15 +02:00
export type SourceListFieldsFragment = { __typename ? : 'SourceType' , lang : string , iconUrl : string , isNsfw : boolean , isConfigurable : boolean , supportsLatest : boolean , id : string , name : string , displayName : string , meta : Array < { __typename ? : 'SourceMetaType' , sourceId : string , key : string , value : string } > , extension : { __typename ? : 'ExtensionType' , pkgName : string , repo? : string | null } } ;
2024-07-03 23:15:50 +02:00
2025-09-08 00:58:12 +02:00
export type SourceBrowseFieldsFragment = { __typename ? : 'SourceType' , baseUrl? : string | null , isConfigurable : boolean , supportsLatest : boolean , id : string , name : string , displayName : string , lang : string , meta : Array < { __typename ? : 'SourceMetaType' , sourceId : string , key : string , value : string } > , filters : Array < { __typename ? : 'CheckBoxFilter' , name : string , type : 'CheckBoxFilter' , CheckBoxFilterDefault : boolean } | { __typename ? : 'GroupFilter' , name : string , type : 'GroupFilter' , filters : Array < { __typename ? : 'CheckBoxFilter' , name : string , type : 'CheckBoxFilter' , CheckBoxFilterDefault : boolean } | { __typename ? : 'GroupFilter' } | { __typename ? : 'HeaderFilter' , name : string , type : 'HeaderFilter' } | { __typename ? : 'SelectFilter' , name : string , values : Array < string > , type : 'SelectFilter' , SelectFilterDefault : number } | { __typename ? : 'SeparatorFilter' , name : string , type : 'SeparatorFilter' } | { __typename ? : 'SortFilter' , name : string , values : Array < string > , type : 'SortFilter' , SortFilterDefault ? : { __typename ? : 'SortSelection' , ascending : boolean , index : number } | null } | { __typename ? : 'TextFilter' , name : string , type : 'TextFilter' , TextFilterDefault : string } | { __typename ? : 'TriStateFilter' , name : string , type : 'TriStateFilter' , TriStateFilterDefault : TriState } > } | { __typename ? : 'HeaderFilter' , name : string , type : 'HeaderFilter' } | { __typename ? : 'SelectFilter' , name : string , values : Array < string > , type : 'SelectFilter' , SelectFilterDefault : number } | { __typename ? : 'SeparatorFilter' , name : string , type : 'SeparatorFilter' } | { __typename ? : 'SortFilter' , name : string , values : Array < string > , type : 'SortFilter' , SortFilterDefault ? : { __typename ? : 'SortSelection' , ascending : boolean , index : number } | null } | { __typename ? : 'TextFilter' , name : string , type : 'TextFilter' , TextFilterDefault : string } | { __typename ? : 'TriStateFilter' , name : string , type : 'TriStateFilter' , TriStateFilterDefault : TriState } > } ;
2024-07-03 23:15:50 +02:00
2025-09-08 00:24:32 +02:00
export type SourceSettingFieldsFragment = { __typename ? : 'SourceType' , id : string , name : string , displayName : string , lang : string , preferences : Array < { __typename ? : 'CheckBoxPreference' , summary? : string | null , key? : string | null , type : 'CheckBoxPreference' , CheckBoxCheckBoxCurrentValue? : boolean | null , CheckBoxDefault : boolean , CheckBoxTitle? : string | null } | { __typename ? : 'EditTextPreference' , text? : string | null , summary? : string | null , key? : string | null , dialogTitle? : string | null , dialogMessage? : string | null , type : 'EditTextPreference' , EditTextPreferenceCurrentValue? : string | null , EditTextPreferenceDefault? : string | null , EditTextPreferenceTitle? : string | null } | { __typename ? : 'ListPreference' , summary? : string | null , key? : string | null , entryValues : Array < string > , entries : Array < string > , type : 'ListPreference' , ListPreferenceCurrentValue? : string | null , ListPreferenceDefault? : string | null , ListPreferenceTitle? : string | null } | { __typename ? : 'MultiSelectListPreference' , dialogMessage? : string | null , dialogTitle? : string | null , summary? : string | null , key? : string | null , entryValues : Array < string > , entries : Array < string > , type : 'MultiSelectListPreference' , MultiSelectListPreferenceTitle? : string | null , MultiSelectListPreferenceDefault? : Array < string > | null , MultiSelectListPreferenceCurrentValue? : Array < string > | null } | { __typename ? : 'SwitchPreference' , summary? : string | null , key? : string | null , type : 'SwitchPreference' , SwitchPreferenceCurrentValue? : boolean | null , SwitchPreferenceDefault : boolean , SwitchPreferenceTitle? : string | null } > } ;
2024-07-03 23:15:50 +02:00
2024-07-04 22:00:39 +02:00
export type TrackerBaseFieldsFragment = { __typename ? : 'TrackerType' , id : number , name : string , icon : string , isLoggedIn : boolean , isTokenExpired : boolean } ;
export type TrackerSettingFieldsFragment = { __typename ? : 'TrackerType' , authUrl? : string | null , id : number , name : string , icon : string , isLoggedIn : boolean , isTokenExpired : boolean } ;
2025-07-19 18:33:33 +02:00
export type TrackerBindFieldsFragment = { __typename ? : 'TrackerType' , icon : string , supportsPrivateTracking : boolean , supportsTrackDeletion : boolean , scores : Array < string > , id : number , name : string , isLoggedIn : boolean , isTokenExpired : boolean , statuses : Array < { __typename ? : 'TrackStatusType' , name : string , value : number } > , trackRecords : { __typename ? : 'TrackRecordNodeList' , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , remoteId : string , trackerId : number , remoteUrl : string , title : string , status : number , lastChapterRead : number , totalChapters : number , score : number , displayScore : string , startDate : string , finishDate : string , private : boolean } > } } ;
2024-07-04 22:00:39 +02:00
2025-07-19 16:26:05 +02:00
export type TrackRecordSearchFieldsFragment = { __typename ? : 'TrackSearchType' , id : number , remoteId : string , title : string , trackingUrl : string , coverUrl : string , publishingType : string , startDate : string , publishingStatus : string , summary : string , score : number , totalChapters : number } ;
2024-07-04 22:00:39 +02:00
2025-07-19 18:33:33 +02:00
export type TrackRecordBindFieldsFragment = { __typename ? : 'TrackRecordType' , id : number , remoteId : string , trackerId : number , remoteUrl : string , title : string , status : number , lastChapterRead : number , totalChapters : number , score : number , displayScore : string , startDate : string , finishDate : string , private : boolean } ;
2024-07-04 22:00:39 +02:00
2025-09-18 20:37:51 +02:00
export type UpdaterMangaFieldsFragment = { __typename ? : 'MangaUpdateType' , status : MangaJobStatus , manga : { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } } ;
2024-07-06 15:10:55 +02:00
2025-03-16 21:01:24 +01:00
export type UpdaterCategoryFieldsFragment = { __typename ? : 'CategoryUpdateType' , status : CategoryJobStatus , category : { __typename ? : 'CategoryType' , id : number , name : string } } ;
export type UpdaterJobInfoFieldsFragment = { __typename ? : 'UpdaterJobsInfoType' , isRunning : boolean , totalJobs : number , finishedJobs : number , skippedCategoriesCount : number , skippedMangasCount : number } ;
2025-09-18 20:37:51 +02:00
export type UpdaterStatusFieldsFragment = { __typename ? : 'LibraryUpdateStatus' , jobsInfo : { __typename ? : 'UpdaterJobsInfoType' , isRunning : boolean , totalJobs : number , finishedJobs : number , skippedCategoriesCount : number , skippedMangasCount : number } , categoryUpdates : Array < { __typename ? : 'CategoryUpdateType' , status : CategoryJobStatus , category : { __typename ? : 'CategoryType' , id : number , name : string } } > , mangaUpdates : Array < { __typename ? : 'MangaUpdateType' , status : MangaJobStatus , manga : { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } } > } ;
2025-03-16 21:01:24 +01:00
2025-09-18 20:37:51 +02:00
export type UpdaterSubscriptionFieldsFragment = { __typename ? : 'UpdaterUpdates' , omittedUpdates : boolean , jobsInfo : { __typename ? : 'UpdaterJobsInfoType' , isRunning : boolean , totalJobs : number , finishedJobs : number , skippedCategoriesCount : number , skippedMangasCount : number } , categoryUpdates : Array < { __typename ? : 'CategoryUpdateType' , status : CategoryJobStatus , category : { __typename ? : 'CategoryType' , id : number , name : string } } > , mangaUpdates : Array < { __typename ? : 'MangaUpdateType' , status : MangaJobStatus , manga : { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } } > } ;
2024-07-06 15:10:55 +02:00
export type UpdaterStartStopFieldsFragment = { __typename ? : 'UpdateStatus' , isRunning : boolean } ;
2023-08-07 23:32:36 +02:00
export type CreateBackupMutationVariables = Exact < {
input : CreateBackupInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type CreateBackupMutation = { __typename ? : 'Mutation' , createBackup : { __typename ? : 'CreateBackupPayload' , url : string } } ;
2023-08-07 23:32:36 +02:00
export type RestoreBackupMutationVariables = Exact < {
2023-10-29 01:45:08 +02:00
backup : Scalars [ 'Upload' ] [ 'input' ] ;
2025-10-04 21:48:44 +02:00
flags? : InputMaybe < PartialBackupFlagsInput > ;
2023-08-07 23:32:36 +02:00
} > ;
2024-07-11 18:09:47 +02:00
export type RestoreBackupMutation = { __typename ? : 'Mutation' , restoreBackup : { __typename ? : 'RestoreBackupPayload' , id : string , status ? : { __typename ? : 'BackupRestoreStatus' , mangaProgress : number , state : BackupRestoreState , totalManga : number } | null } } ;
2023-08-07 23:32:36 +02:00
export type CreateCategoryMutationVariables = Exact < {
input : CreateCategoryInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type CreateCategoryMutation = { __typename ? : 'Mutation' , createCategory ? : { __typename ? : 'CreateCategoryPayload' , category : { __typename ? : 'CategoryType' , includeInUpdate : IncludeOrExclude , includeInDownload : IncludeOrExclude , id : number , name : string , default : boolean , order : number } } | null } ;
2023-08-07 23:32:36 +02:00
export type DeleteCategoryMutationVariables = Exact < {
input : DeleteCategoryInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type DeleteCategoryMutation = { __typename ? : 'Mutation' , deleteCategory ? : { __typename ? : 'DeleteCategoryPayload' , category ? : { __typename ? : 'CategoryType' , id : number } | null } | null } ;
2023-08-07 23:32:36 +02:00
export type DeleteCategoryMetadataMutationVariables = Exact < {
input : DeleteCategoryMetaInput ;
} > ;
2024-10-26 17:25:04 +02:00
export type DeleteCategoryMetadataMutation = { __typename ? : 'Mutation' , deleteCategoryMeta ? : { __typename ? : 'DeleteCategoryMetaPayload' , meta ? : { __typename ? : 'CategoryMetaType' , categoryId : number , key : string , value : string } | null } | null } ;
2023-08-07 23:32:36 +02:00
export type SetCategoryMetadataMutationVariables = Exact < {
input : SetCategoryMetaInput ;
} > ;
2024-09-21 20:01:06 +02:00
export type SetCategoryMetadataMutation = { __typename ? : 'Mutation' , setCategoryMeta ? : { __typename ? : 'SetCategoryMetaPayload' , meta : { __typename ? : 'CategoryMetaType' , categoryId : number , key : string , value : string } } | null } ;
2023-08-07 23:32:36 +02:00
export type UpdateCategoryMutationVariables = Exact < {
input : UpdateCategoryInput ;
2023-11-24 03:17:49 +01:00
getDefault : Scalars [ 'Boolean' ] [ 'input' ] ;
getIncludeInUpdate : Scalars [ 'Boolean' ] [ 'input' ] ;
2024-01-21 13:31:04 -08:00
getIncludeInDownload : Scalars [ 'Boolean' ] [ 'input' ] ;
2023-11-24 03:17:49 +01:00
getName : Scalars [ 'Boolean' ] [ 'input' ] ;
2023-08-07 23:32:36 +02:00
} > ;
2024-07-11 18:09:47 +02:00
export type UpdateCategoryMutation = { __typename ? : 'Mutation' , updateCategory ? : { __typename ? : 'UpdateCategoryPayload' , category : { __typename ? : 'CategoryType' , id : number , default ? : boolean , includeInUpdate? : IncludeOrExclude , includeInDownload? : IncludeOrExclude , name? : string } } | null } ;
2023-08-07 23:32:36 +02:00
export type UpdateCategoriesMutationVariables = Exact < {
input : UpdateCategoriesInput ;
2023-11-24 03:17:49 +01:00
getDefault : Scalars [ 'Boolean' ] [ 'input' ] ;
getIncludeInUpdate : Scalars [ 'Boolean' ] [ 'input' ] ;
2024-01-21 13:31:04 -08:00
getIncludeInDownload : Scalars [ 'Boolean' ] [ 'input' ] ;
2023-11-24 03:17:49 +01:00
getName : Scalars [ 'Boolean' ] [ 'input' ] ;
2023-08-07 23:32:36 +02:00
} > ;
2024-07-11 18:09:47 +02:00
export type UpdateCategoriesMutation = { __typename ? : 'Mutation' , updateCategories ? : { __typename ? : 'UpdateCategoriesPayload' , categories : Array < { __typename ? : 'CategoryType' , id : number , default ? : boolean , includeInUpdate? : IncludeOrExclude , includeInDownload? : IncludeOrExclude , name? : string } > } | null } ;
2023-08-07 23:32:36 +02:00
export type UpdateCategoryOrderMutationVariables = Exact < {
input : UpdateCategoryOrderInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type UpdateCategoryOrderMutation = { __typename ? : 'Mutation' , updateCategoryOrder ? : { __typename ? : 'UpdateCategoryOrderPayload' , categories : Array < { __typename ? : 'CategoryType' , id : number , order : number } > } | null } ;
2023-08-07 23:32:36 +02:00
export type DeleteChapterMetadataMutationVariables = Exact < {
input : DeleteChapterMetaInput ;
} > ;
2024-10-26 17:25:04 +02:00
export type DeleteChapterMetadataMutation = { __typename ? : 'Mutation' , deleteChapterMeta ? : { __typename ? : 'DeleteChapterMetaPayload' , meta ? : { __typename ? : 'ChapterMetaType' , chapterId : number , key : string , value : string } | null } | null } ;
2023-08-07 23:32:36 +02:00
export type GetChapterPagesFetchMutationVariables = Exact < {
input : FetchChapterPagesInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type GetChapterPagesFetchMutation = { __typename ? : 'Mutation' , fetchChapterPages ? : { __typename ? : 'FetchChapterPagesPayload' , pages : Array < string > , chapter : { __typename ? : 'ChapterType' , id : number , pageCount : number } } | null } ;
2023-08-07 23:32:36 +02:00
export type GetMangaChaptersFetchMutationVariables = Exact < {
input : FetchChaptersInput ;
} > ;
2025-09-18 20:37:51 +02:00
export type GetMangaChaptersFetchMutation = { __typename ? : 'Mutation' , fetchChapters ? : { __typename ? : 'FetchChaptersPayload' , chapters : Array < { __typename ? : 'ChapterType' , fetchedAt : string , uploadDate : string , lastReadAt : string , id : number , name : string , mangaId : number , scanlator? : string | null , realUrl? : string | null , sourceOrder : number , chapterNumber : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean , manga : { __typename ? : 'MangaType' , id : number , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } } > } | null } ;
2023-08-07 23:32:36 +02:00
export type SetChapterMetadataMutationVariables = Exact < {
input : SetChapterMetaInput ;
} > ;
2024-09-21 20:01:06 +02:00
export type SetChapterMetadataMutation = { __typename ? : 'Mutation' , setChapterMeta ? : { __typename ? : 'SetChapterMetaPayload' , meta : { __typename ? : 'ChapterMetaType' , chapterId : number , key : string , value : string } } | null } ;
2023-08-07 23:32:36 +02:00
export type UpdateChapterMutationVariables = Exact < {
input : UpdateChapterInput ;
2023-11-24 03:17:49 +01:00
getBookmarked : Scalars [ 'Boolean' ] [ 'input' ] ;
getRead : Scalars [ 'Boolean' ] [ 'input' ] ;
getLastPageRead : Scalars [ 'Boolean' ] [ 'input' ] ;
2023-12-05 22:20:13 +01:00
chapterIdToDelete : Scalars [ 'Int' ] [ 'input' ] ;
2023-11-24 03:17:49 +01:00
deleteChapter : Scalars [ 'Boolean' ] [ 'input' ] ;
2024-04-01 01:22:49 +02:00
mangaId : Scalars [ 'Int' ] [ 'input' ] ;
trackProgress : Scalars [ 'Boolean' ] [ 'input' ] ;
2023-08-07 23:32:36 +02:00
} > ;
2025-07-19 18:33:33 +02:00
export type UpdateChapterMutation = { __typename ? : 'Mutation' , updateChapter ? : { __typename ? : 'UpdateChapterPayload' , chapter : { __typename ? : 'ChapterType' , id : number , isBookmarked? : boolean , isRead? : boolean , lastReadAt? : string , lastPageRead? : number , manga ? : { __typename ? : 'MangaType' , id : number , unreadCount : number , bookmarkCount : number , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number } | null , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number } | null } } } | null , deleteDownloadedChapter ? : { __typename ? : 'DeleteDownloadedChapterPayload' , chapters : { __typename ? : 'ChapterType' , id : number , isDownloaded : boolean , manga : { __typename ? : 'MangaType' , id : number , downloadCount : number } } } | null , trackProgress ? : { __typename ? : 'TrackProgressPayload' , trackRecords : Array < { __typename ? : 'TrackRecordType' , id : number , remoteId : string , trackerId : number , remoteUrl : string , title : string , status : number , lastChapterRead : number , totalChapters : number , score : number , displayScore : string , startDate : string , finishDate : string , private : boolean } > } | null } ;
2023-08-07 23:32:36 +02:00
export type UpdateChaptersMutationVariables = Exact < {
input : UpdateChaptersInput ;
2023-11-24 03:17:49 +01:00
getBookmarked : Scalars [ 'Boolean' ] [ 'input' ] ;
getRead : Scalars [ 'Boolean' ] [ 'input' ] ;
getLastPageRead : Scalars [ 'Boolean' ] [ 'input' ] ;
chapterIdsToDelete : Array < Scalars [ 'Int' ] [ 'input' ] > | Scalars [ 'Int' ] [ 'input' ] ;
deleteChapters : Scalars [ 'Boolean' ] [ 'input' ] ;
2024-04-20 23:15:02 +02:00
mangaId : Scalars [ 'Int' ] [ 'input' ] ;
trackProgress : Scalars [ 'Boolean' ] [ 'input' ] ;
2023-08-07 23:32:36 +02:00
} > ;
2025-07-19 18:33:33 +02:00
export type UpdateChaptersMutation = { __typename ? : 'Mutation' , updateChapters ? : { __typename ? : 'UpdateChaptersPayload' , chapters : Array < { __typename ? : 'ChapterType' , id : number , isBookmarked? : boolean , isRead? : boolean , lastReadAt? : string , lastPageRead? : number , manga ? : { __typename ? : 'MangaType' , id : number , unreadCount : number , bookmarkCount : number , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number } | null , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number } | null } } > } | null , deleteDownloadedChapters ? : { __typename ? : 'DeleteDownloadedChaptersPayload' , chapters : Array < { __typename ? : 'ChapterType' , id : number , isDownloaded : boolean , manga : { __typename ? : 'MangaType' , id : number , downloadCount : number } } > } | null , trackProgress ? : { __typename ? : 'TrackProgressPayload' , trackRecords : Array < { __typename ? : 'TrackRecordType' , id : number , remoteId : string , trackerId : number , remoteUrl : string , title : string , status : number , lastChapterRead : number , totalChapters : number , score : number , displayScore : string , startDate : string , finishDate : string , private : boolean } > } | null } ;
2023-08-07 23:32:36 +02:00
export type ClearDownloaderMutationVariables = Exact < {
input? : InputMaybe < ClearDownloaderInput > ;
} > ;
2024-07-11 18:09:47 +02:00
export type ClearDownloaderMutation = { __typename ? : 'Mutation' , clearDownloader ? : { __typename ? : 'ClearDownloaderPayload' , downloadStatus : { __typename ? : 'DownloadStatus' , state : DownloaderState , queue : Array < { __typename ? : 'DownloadType' , progress : number , state : DownloadState , tries : number , chapter : { __typename ? : 'ChapterType' , id : number , name : string , sourceOrder : number , isDownloaded : boolean } , manga : { __typename ? : 'MangaType' , id : number , title : string , downloadCount : number } } > } } | null } ;
2023-08-07 23:32:36 +02:00
export type DeleteDownloadedChapterMutationVariables = Exact < {
input : DeleteDownloadedChapterInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type DeleteDownloadedChapterMutation = { __typename ? : 'Mutation' , deleteDownloadedChapter ? : { __typename ? : 'DeleteDownloadedChapterPayload' , chapters : { __typename ? : 'ChapterType' , id : number , isDownloaded : boolean , manga : { __typename ? : 'MangaType' , id : number , downloadCount : number } } } | null } ;
2023-08-07 23:32:36 +02:00
export type DeleteDownloadedChaptersMutationVariables = Exact < {
input : DeleteDownloadedChaptersInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type DeleteDownloadedChaptersMutation = { __typename ? : 'Mutation' , deleteDownloadedChapters ? : { __typename ? : 'DeleteDownloadedChaptersPayload' , chapters : Array < { __typename ? : 'ChapterType' , id : number , isDownloaded : boolean , manga : { __typename ? : 'MangaType' , id : number , downloadCount : number } } > } | null } ;
2023-08-07 23:32:36 +02:00
export type DequeueChapterDownloadMutationVariables = Exact < {
input : DequeueChapterDownloadInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type DequeueChapterDownloadMutation = { __typename ? : 'Mutation' , dequeueChapterDownload ? : { __typename ? : 'DequeueChapterDownloadPayload' , downloadStatus : { __typename ? : 'DownloadStatus' , state : DownloaderState , queue : Array < { __typename ? : 'DownloadType' , progress : number , state : DownloadState , tries : number , chapter : { __typename ? : 'ChapterType' , id : number , name : string , sourceOrder : number , isDownloaded : boolean } , manga : { __typename ? : 'MangaType' , id : number , title : string , downloadCount : number } } > } } | null } ;
2023-08-07 23:32:36 +02:00
export type DequeueChapterDownloadsMutationVariables = Exact < {
input : DequeueChapterDownloadsInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type DequeueChapterDownloadsMutation = { __typename ? : 'Mutation' , dequeueChapterDownloads ? : { __typename ? : 'DequeueChapterDownloadsPayload' , downloadStatus : { __typename ? : 'DownloadStatus' , state : DownloaderState , queue : Array < { __typename ? : 'DownloadType' , progress : number , state : DownloadState , tries : number , chapter : { __typename ? : 'ChapterType' , id : number , name : string , sourceOrder : number , isDownloaded : boolean } , manga : { __typename ? : 'MangaType' , id : number , title : string , downloadCount : number } } > } } | null } ;
2023-08-07 23:32:36 +02:00
export type EnqueueChapterDownloadMutationVariables = Exact < {
input : EnqueueChapterDownloadInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type EnqueueChapterDownloadMutation = { __typename ? : 'Mutation' , enqueueChapterDownload ? : { __typename ? : 'EnqueueChapterDownloadPayload' , downloadStatus : { __typename ? : 'DownloadStatus' , state : DownloaderState , queue : Array < { __typename ? : 'DownloadType' , progress : number , state : DownloadState , tries : number , chapter : { __typename ? : 'ChapterType' , id : number , name : string , sourceOrder : number , isDownloaded : boolean } , manga : { __typename ? : 'MangaType' , id : number , title : string , downloadCount : number } } > } } | null } ;
2023-08-07 23:32:36 +02:00
export type EnqueueChapterDownloadsMutationVariables = Exact < {
input : EnqueueChapterDownloadsInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type EnqueueChapterDownloadsMutation = { __typename ? : 'Mutation' , enqueueChapterDownloads ? : { __typename ? : 'EnqueueChapterDownloadsPayload' , downloadStatus : { __typename ? : 'DownloadStatus' , state : DownloaderState , queue : Array < { __typename ? : 'DownloadType' , progress : number , state : DownloadState , tries : number , chapter : { __typename ? : 'ChapterType' , id : number , name : string , sourceOrder : number , isDownloaded : boolean } , manga : { __typename ? : 'MangaType' , id : number , title : string , downloadCount : number } } > } } | null } ;
2023-08-07 23:32:36 +02:00
export type ReorderChapterDownloadMutationVariables = Exact < {
input : ReorderChapterDownloadInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type ReorderChapterDownloadMutation = { __typename ? : 'Mutation' , reorderChapterDownload ? : { __typename ? : 'ReorderChapterDownloadPayload' , downloadStatus : { __typename ? : 'DownloadStatus' , state : DownloaderState , queue : Array < { __typename ? : 'DownloadType' , progress : number , state : DownloadState , tries : number , chapter : { __typename ? : 'ChapterType' , id : number , name : string , sourceOrder : number , isDownloaded : boolean } , manga : { __typename ? : 'MangaType' , id : number , title : string , downloadCount : number } } > } } | null } ;
2023-08-07 23:32:36 +02:00
export type StartDownloaderMutationVariables = Exact < {
input? : InputMaybe < StartDownloaderInput > ;
} > ;
2024-07-11 18:09:47 +02:00
export type StartDownloaderMutation = { __typename ? : 'Mutation' , startDownloader ? : { __typename ? : 'StartDownloaderPayload' , downloadStatus : { __typename ? : 'DownloadStatus' , state : DownloaderState } } | null } ;
2023-08-07 23:32:36 +02:00
export type StopDownloaderMutationVariables = Exact < {
input? : InputMaybe < StopDownloaderInput > ;
} > ;
2024-07-11 18:09:47 +02:00
export type StopDownloaderMutation = { __typename ? : 'Mutation' , stopDownloader ? : { __typename ? : 'StopDownloaderPayload' , downloadStatus : { __typename ? : 'DownloadStatus' , state : DownloaderState } } | null } ;
2023-08-07 23:32:36 +02:00
export type GetExtensionsFetchMutationVariables = Exact < {
input? : InputMaybe < FetchExtensionsInput > ;
} > ;
2024-07-11 18:09:47 +02:00
export type GetExtensionsFetchMutation = { __typename ? : 'Mutation' , fetchExtensions ? : { __typename ? : 'FetchExtensionsPayload' , extensions : Array < { __typename ? : 'ExtensionType' , pkgName : string , name : string , lang : string , versionCode : number , versionName : string , iconUrl : string , repo? : string | null , isNsfw : boolean , isInstalled : boolean , isObsolete : boolean , hasUpdate : boolean } > } | null } ;
2023-08-07 23:32:36 +02:00
export type UpdateExtensionMutationVariables = Exact < {
input : UpdateExtensionInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type UpdateExtensionMutation = { __typename ? : 'Mutation' , updateExtension ? : { __typename ? : 'UpdateExtensionPayload' , extension ? : { __typename ? : 'ExtensionType' , pkgName : string , name : string , lang : string , versionCode : number , versionName : string , iconUrl : string , repo? : string | null , isNsfw : boolean , isInstalled : boolean , isObsolete : boolean , hasUpdate : boolean } | null } | null } ;
2023-08-07 23:32:36 +02:00
export type UpdateExtensionsMutationVariables = Exact < {
input : UpdateExtensionsInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type UpdateExtensionsMutation = { __typename ? : 'Mutation' , updateExtensions ? : { __typename ? : 'UpdateExtensionsPayload' , extensions : Array < { __typename ? : 'ExtensionType' , pkgName : string , name : string , lang : string , versionCode : number , versionName : string , iconUrl : string , repo? : string | null , isNsfw : boolean , isInstalled : boolean , isObsolete : boolean , hasUpdate : boolean } > } | null } ;
2023-08-07 23:32:36 +02:00
export type InstallExternalExtensionMutationVariables = Exact < {
file : Scalars [ 'Upload' ] [ 'input' ] ;
} > ;
2024-07-11 18:09:47 +02:00
export type InstallExternalExtensionMutation = { __typename ? : 'Mutation' , installExternalExtension ? : { __typename ? : 'InstallExternalExtensionPayload' , extension : { __typename ? : 'ExtensionType' , pkgName : string , name : string , lang : string , versionCode : number , versionName : string , iconUrl : string , repo? : string | null , isNsfw : boolean , isInstalled : boolean , isObsolete : boolean , hasUpdate : boolean } } | null } ;
2023-08-07 23:32:36 +02:00
export type DeleteGlobalMetadataMutationVariables = Exact < {
input : DeleteGlobalMetaInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type DeleteGlobalMetadataMutation = { __typename ? : 'Mutation' , deleteGlobalMeta ? : { __typename ? : 'DeleteGlobalMetaPayload' , meta ? : { __typename ? : 'GlobalMetaType' , key : string , value : string } | null } | null } ;
2023-08-07 23:32:36 +02:00
export type SetGlobalMetadataMutationVariables = Exact < {
input : SetGlobalMetaInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type SetGlobalMetadataMutation = { __typename ? : 'Mutation' , setGlobalMeta ? : { __typename ? : 'SetGlobalMetaPayload' , meta : { __typename ? : 'GlobalMetaType' , key : string , value : string } } | null } ;
2023-08-07 23:32:36 +02:00
2023-12-09 14:16:52 +01:00
export type ClearServerCacheMutationVariables = Exact < {
input : ClearCachedImagesInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type ClearServerCacheMutation = { __typename ? : 'Mutation' , clearCachedImages : { __typename ? : 'ClearCachedImagesPayload' , cachedPages? : boolean | null , cachedThumbnails? : boolean | null , downloadedThumbnails? : boolean | null } } ;
2023-12-09 14:16:52 +01:00
2023-08-07 23:32:36 +02:00
export type DeleteMangaMetadataMutationVariables = Exact < {
input : DeleteMangaMetaInput ;
} > ;
2024-10-26 17:25:04 +02:00
export type DeleteMangaMetadataMutation = { __typename ? : 'Mutation' , deleteMangaMeta ? : { __typename ? : 'DeleteMangaMetaPayload' , meta ? : { __typename ? : 'MangaMetaType' , mangaId : number , key : string , value : string } | null } | null } ;
2023-08-07 23:32:36 +02:00
export type GetMangaFetchMutationVariables = Exact < {
input : FetchMangaInput ;
} > ;
2025-09-18 20:37:51 +02:00
export type GetMangaFetchMutation = { __typename ? : 'Mutation' , fetchManga ? : { __typename ? : 'FetchMangaPayload' , manga : { __typename ? : 'MangaType' , artist? : string | null , author? : string | null , description? : string | null , status : MangaStatus , realUrl? : string | null , sourceId : string , genre : Array < string > , lastFetchedAt? : string | null , inLibraryAt : string , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , meta : Array < { __typename ? : 'MangaMetaType' , mangaId : number , key : string , value : string } > , source ? : { __typename ? : 'SourceType' , id : string , displayName : string } | null , trackRecords : { __typename ? : 'TrackRecordNodeList' , totalCount : number , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , trackerId : number } > } , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } } | null } ;
2023-08-07 23:32:36 +02:00
2024-01-26 20:50:51 +01:00
export type GetMangaToMigrateToFetchMutationVariables = Exact < {
id : Scalars [ 'Int' ] [ 'input' ] ;
migrateChapters : Scalars [ 'Boolean' ] [ 'input' ] ;
migrateCategories : Scalars [ 'Boolean' ] [ 'input' ] ;
2024-04-20 23:51:47 +02:00
migrateTracking : Scalars [ 'Boolean' ] [ 'input' ] ;
2024-01-26 20:50:51 +01:00
} > ;
2024-07-11 18:09:47 +02:00
export type GetMangaToMigrateToFetchMutation = { __typename ? : 'Mutation' , fetchManga ? : { __typename ? : 'FetchMangaPayload' , manga : { __typename ? : 'MangaType' , id : number , title : string , inLibrary : boolean , categories ? : { __typename ? : 'CategoryNodeList' , nodes : Array < { __typename ? : 'CategoryType' , id : number } > } , trackRecords ? : { __typename ? : 'TrackRecordNodeList' , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , remoteId : string , trackerId : number } > } } } | null , fetchChapters ? : { __typename ? : 'FetchChaptersPayload' , chapters : Array < { __typename ? : 'ChapterType' , id : number , chapterNumber : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean , manga : { __typename ? : 'MangaType' , id : number } } > } | null } ;
2024-01-26 20:50:51 +01:00
2023-08-07 23:32:36 +02:00
export type SetMangaMetadataMutationVariables = Exact < {
input : SetMangaMetaInput ;
} > ;
2024-09-21 20:01:06 +02:00
export type SetMangaMetadataMutation = { __typename ? : 'Mutation' , setMangaMeta ? : { __typename ? : 'SetMangaMetaPayload' , meta : { __typename ? : 'MangaMetaType' , mangaId : number , key : string , value : string } } | null } ;
2023-08-07 23:32:36 +02:00
export type UpdateMangaMutationVariables = Exact < {
input : UpdateMangaInput ;
2024-03-02 15:26:15 +01:00
updateCategoryInput : UpdateMangaCategoriesInput ;
updateCategories : Scalars [ 'Boolean' ] [ 'input' ] ;
2023-08-07 23:32:36 +02:00
} > ;
2024-08-05 14:54:24 +02:00
export type UpdateMangaMutation = { __typename ? : 'Mutation' , updateMangaCategories ? : { __typename ? : 'UpdateMangaCategoriesPayload' , manga : { __typename ? : 'MangaType' , id : number , categories : { __typename ? : 'CategoryNodeList' , totalCount : number , nodes : Array < { __typename ? : 'CategoryType' , id : number , mangas : { __typename ? : 'MangaNodeList' , totalCount : number } } > } } } | null , updateManga ? : { __typename ? : 'UpdateMangaPayload' , manga : { __typename ? : 'MangaType' , id : number , inLibrary : boolean , inLibraryAt : string } } | null } ;
2023-08-07 23:32:36 +02:00
2023-11-24 03:17:49 +01:00
export type UpdateMangasMutationVariables = Exact < {
input : UpdateMangasInput ;
2024-03-02 15:28:58 +01:00
updateCategoryInput : UpdateMangasCategoriesInput ;
updateCategories : Scalars [ 'Boolean' ] [ 'input' ] ;
2023-08-07 23:32:36 +02:00
} > ;
2024-08-05 14:54:24 +02:00
export type UpdateMangasMutation = { __typename ? : 'Mutation' , updateMangasCategories ? : { __typename ? : 'UpdateMangasCategoriesPayload' , mangas : Array < { __typename ? : 'MangaType' , id : number , categories : { __typename ? : 'CategoryNodeList' , totalCount : number , nodes : Array < { __typename ? : 'CategoryType' , id : number , mangas : { __typename ? : 'MangaNodeList' , totalCount : number } } > } } > } | null , updateMangas ? : { __typename ? : 'UpdateMangasPayload' , mangas : Array < { __typename ? : 'MangaType' , id : number , inLibrary : boolean , inLibraryAt : string , categories : { __typename ? : 'CategoryNodeList' , totalCount : number , nodes : Array < { __typename ? : 'CategoryType' , id : number , mangas : { __typename ? : 'MangaNodeList' , totalCount : number } } > } } > } | null } ;
2023-08-07 23:32:36 +02:00
2023-11-24 03:17:49 +01:00
export type UpdateMangaCategoriesMutationVariables = Exact < {
input : UpdateMangaCategoriesInput ;
2023-08-07 23:32:36 +02:00
} > ;
2024-07-11 18:09:47 +02:00
export type UpdateMangaCategoriesMutation = { __typename ? : 'Mutation' , updateMangaCategories ? : { __typename ? : 'UpdateMangaCategoriesPayload' , manga : { __typename ? : 'MangaType' , id : number , categories : { __typename ? : 'CategoryNodeList' , totalCount : number , nodes : Array < { __typename ? : 'CategoryType' , id : number , mangas : { __typename ? : 'MangaNodeList' , totalCount : number } } > } } } | null } ;
2023-08-07 23:32:36 +02:00
export type UpdateMangasCategoriesMutationVariables = Exact < {
input : UpdateMangasCategoriesInput ;
} > ;
2024-07-11 18:09:47 +02:00
export type UpdateMangasCategoriesMutation = { __typename ? : 'Mutation' , updateMangasCategories ? : { __typename ? : 'UpdateMangasCategoriesPayload' , mangas : Array < { __typename ? : 'MangaType' , id : number , categories : { __typename ? : 'CategoryNodeList' , totalCount : number , nodes : Array < { __typename ? : 'CategoryType' , id : number , mangas : { __typename ? : 'MangaNodeList' , totalCount : number } } > } } > } | null } ;
2023-08-07 23:32:36 +02:00
export type UpdateWebuiMutationVariables = Exact < {
input? : InputMaybe < WebUiUpdateInput > ;
} > ;
2025-04-06 23:58:58 +02:00
export type UpdateWebuiMutation = { __typename ? : 'Mutation' , updateWebUI ? : { __typename ? : 'WebUIUpdatePayload' , updateStatus : { __typename ? : 'WebUIUpdateStatus' , progress : number , state : UpdateState , info : { __typename ? : 'WebUIUpdateInfo' , channel : WebUiChannel , tag : string } } } | null } ;
2023-08-07 23:32:36 +02:00
2023-12-09 23:08:27 +01:00
export type ResetWebuiUpdateStatusMutationVariables = Exact < { [ key : string ] : never ; } > ;
2025-04-06 23:58:58 +02:00
export type ResetWebuiUpdateStatusMutation = { __typename ? : 'Mutation' , resetWebUIUpdateStatus ? : { __typename ? : 'WebUIUpdateStatus' , state : UpdateState , info : { __typename ? : 'WebUIUpdateInfo' , channel : WebUiChannel , tag : string } } | null } ;
2023-12-09 23:08:27 +01:00
2023-08-07 23:32:36 +02:00
export type ResetServerSettingsMutationVariables = Exact < {
input : ResetSettingsInput ;
} > ;
2025-09-18 22:27:19 +02:00
export type ResetServerSettingsMutation = { __typename ? : 'Mutation' , resetSettings : { __typename ? : 'ResetSettingsPayload' , settings : { __typename ? : 'SettingsType' , ip : string , port : number , socksProxyEnabled : boolean , socksProxyVersion : number , socksProxyHost : string , socksProxyPort : string , socksProxyUsername : string , socksProxyPassword : string , webUIFlavor : WebUiFlavor , initialOpenInBrowserEnabled : boolean , webUIInterface : WebUiInterface , electronPath : string , webUIChannel : WebUiChannel , webUIUpdateCheckInterval : number , downloadAsCbz : boolean , downloadsPath : string , autoDownloadNewChapters : boolean , excludeEntryWithUnreadChapters : boolean , autoDownloadNewChaptersLimit : number , autoDownloadIgnoreReUploads : boolean , extensionRepos : Array < string > , maxSourcesInParallel : number , excludeUnreadChapters : boolean , excludeNotStarted : boolean , excludeCompleted : boolean , globalUpdateInterval : number , updateMangas : boolean , authMode : AuthMode , authPassword : string , authUsername : string , jwtAudience : string , jwtTokenExpiry : string , jwtRefreshExpiry : string , debugLogsEnabled : boolean , systemTrayEnabled : boolean , maxLogFileSize : string , maxLogFiles : number , maxLogFolderSize : string , backupPath : string , backupTime : string , backupInterval : number , backupTTL : number , localSourcePath : string , flareSolverrEnabled : boolean , flareSolverrUrl : string , flareSolverrTimeout : number , flareSolverrSessionName : string , flareSolverrSessionTtl : number , flareSolverrAsResponseFallback : boolean , opdsUseBinaryFileSizes : boolean , opdsItemsPerPage : number , opdsEnablePageReadProgress : boolean , opdsMarkAsReadOnDownload : boolean , opdsShowOnlyUnreadChapters : boolean , opdsShowOnlyDownloadedChapters : boolean , opdsChapterSortOrder : SortOrder , koreaderSyncServerUrl : string , koreaderSyncUsername : string , koreaderSyncUserkey : string , koreaderSyncDeviceId : string , koreaderSyncChecksumMethod : KoreaderSyncChecksumMethod , koreaderSyncStrategy : KoreaderSyncLegacyStrategy , koreaderSyncPercentageTolerance : number , databaseType : DatabaseType , databaseUrl : string , databaseUsername : string , databasePassword : string , downloadConversions : Array < { __typename ? : 'SettingsDownloadConversionType' , mimeType : string , target : string , compressionLevel? : number | null } > } } } ;
2023-08-07 23:32:36 +02:00
export type UpdateServerSettingsMutationVariables = Exact < {
input : SetSettingsInput ;
} > ;
2025-09-18 22:27:19 +02:00
export type UpdateServerSettingsMutation = { __typename ? : 'Mutation' , setSettings : { __typename ? : 'SetSettingsPayload' , settings : { __typename ? : 'SettingsType' , ip : string , port : number , socksProxyEnabled : boolean , socksProxyVersion : number , socksProxyHost : string , socksProxyPort : string , socksProxyUsername : string , socksProxyPassword : string , webUIFlavor : WebUiFlavor , initialOpenInBrowserEnabled : boolean , webUIInterface : WebUiInterface , electronPath : string , webUIChannel : WebUiChannel , webUIUpdateCheckInterval : number , downloadAsCbz : boolean , downloadsPath : string , autoDownloadNewChapters : boolean , excludeEntryWithUnreadChapters : boolean , autoDownloadNewChaptersLimit : number , autoDownloadIgnoreReUploads : boolean , extensionRepos : Array < string > , maxSourcesInParallel : number , excludeUnreadChapters : boolean , excludeNotStarted : boolean , excludeCompleted : boolean , globalUpdateInterval : number , updateMangas : boolean , authMode : AuthMode , authPassword : string , authUsername : string , jwtAudience : string , jwtTokenExpiry : string , jwtRefreshExpiry : string , debugLogsEnabled : boolean , systemTrayEnabled : boolean , maxLogFileSize : string , maxLogFiles : number , maxLogFolderSize : string , backupPath : string , backupTime : string , backupInterval : number , backupTTL : number , localSourcePath : string , flareSolverrEnabled : boolean , flareSolverrUrl : string , flareSolverrTimeout : number , flareSolverrSessionName : string , flareSolverrSessionTtl : number , flareSolverrAsResponseFallback : boolean , opdsUseBinaryFileSizes : boolean , opdsItemsPerPage : number , opdsEnablePageReadProgress : boolean , opdsMarkAsReadOnDownload : boolean , opdsShowOnlyUnreadChapters : boolean , opdsShowOnlyDownloadedChapters : boolean , opdsChapterSortOrder : SortOrder , koreaderSyncServerUrl : string , koreaderSyncUsername : string , koreaderSyncUserkey : string , koreaderSyncDeviceId : string , koreaderSyncChecksumMethod : KoreaderSyncChecksumMethod , koreaderSyncStrategy : KoreaderSyncLegacyStrategy , koreaderSyncPercentageTolerance : number , databaseType : DatabaseType , databaseUrl : string , databaseUsername : string , databasePassword : string , downloadConversions : Array < { __typename ? : 'SettingsDownloadConversionType' , mimeType : string , target : string , compressionLevel? : number | null } > } } } ;
2023-08-07 23:32:36 +02:00
export type GetSourceMangasFetchMutationVariables = Exact < {
input : FetchSourceMangaInput ;
} > ;
2024-08-14 22:40:53 +02:00
export type GetSourceMangasFetchMutation = { __typename ? : 'Mutation' , fetchSourceManga ? : { __typename ? : 'FetchSourceMangaPayload' , hasNextPage : boolean , mangas : Array < { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string } > } | null } ;
2023-08-07 23:32:36 +02:00
export type UpdateSourcePreferencesMutationVariables = Exact < {
input : UpdateSourcePreferenceInput ;
} > ;
2025-09-08 00:24:32 +02:00
export type UpdateSourcePreferencesMutation = { __typename ? : 'Mutation' , updateSourcePreference ? : { __typename ? : 'UpdateSourcePreferencePayload' , source : { __typename ? : 'SourceType' , id : string , name : string , displayName : string , lang : string , preferences : Array < { __typename ? : 'CheckBoxPreference' , summary? : string | null , key? : string | null , type : 'CheckBoxPreference' , CheckBoxCheckBoxCurrentValue? : boolean | null , CheckBoxDefault : boolean , CheckBoxTitle? : string | null } | { __typename ? : 'EditTextPreference' , text? : string | null , summary? : string | null , key? : string | null , dialogTitle? : string | null , dialogMessage? : string | null , type : 'EditTextPreference' , EditTextPreferenceCurrentValue? : string | null , EditTextPreferenceDefault? : string | null , EditTextPreferenceTitle? : string | null } | { __typename ? : 'ListPreference' , summary? : string | null , key? : string | null , entryValues : Array < string > , entries : Array < string > , type : 'ListPreference' , ListPreferenceCurrentValue? : string | null , ListPreferenceDefault? : string | null , ListPreferenceTitle? : string | null } | { __typename ? : 'MultiSelectListPreference' , dialogMessage? : string | null , dialogTitle? : string | null , summary? : string | null , key? : string | null , entryValues : Array < string > , entries : Array < string > , type : 'MultiSelectListPreference' , MultiSelectListPreferenceTitle? : string | null , MultiSelectListPreferenceDefault? : Array < string > | null , MultiSelectListPreferenceCurrentValue? : Array < string > | null } | { __typename ? : 'SwitchPreference' , summary? : string | null , key? : string | null , type : 'SwitchPreference' , SwitchPreferenceCurrentValue? : boolean | null , SwitchPreferenceDefault : boolean , SwitchPreferenceTitle? : string | null } > } } | null } ;
2023-08-07 23:32:36 +02:00
2024-05-08 04:01:23 +02:00
export type SetSourceMetadataMutationVariables = Exact < {
input : SetSourceMetaInput ;
} > ;
2024-09-21 20:01:06 +02:00
export type SetSourceMetadataMutation = { __typename ? : 'Mutation' , setSourceMeta ? : { __typename ? : 'SetSourceMetaPayload' , meta : { __typename ? : 'SourceMetaType' , sourceId : string , key : string , value : string } } | null } ;
2024-05-08 04:01:23 +02:00
2024-10-26 17:25:04 +02:00
export type DeleteSourceMetadataMutationVariables = Exact < {
input : DeleteSourceMetaInput ;
} > ;
export type DeleteSourceMetadataMutation = { __typename ? : 'Mutation' , deleteSourceMeta ? : { __typename ? : 'DeleteSourceMetaPayload' , meta ? : { __typename ? : 'SourceMetaType' , sourceId : string , key : string , value : string } | null } | null } ;
2024-02-16 19:55:54 +01:00
export type TrackerLoginOauthMutationVariables = Exact < {
input : LoginTrackerOAuthInput ;
} > ;
2024-07-06 15:10:55 +02:00
export type TrackerLoginOauthMutation = { __typename ? : 'Mutation' , loginTrackerOAuth : { __typename ? : 'LoginTrackerOAuthPayload' , tracker : { __typename ? : 'TrackerType' , authUrl? : string | null , id : number , name : string , icon : string , isLoggedIn : boolean , isTokenExpired : boolean } } } ;
2024-02-16 19:55:54 +01:00
export type TrackerLoginCredentialsMutationVariables = Exact < {
input : LoginTrackerCredentialsInput ;
} > ;
2024-07-06 15:10:55 +02:00
export type TrackerLoginCredentialsMutation = { __typename ? : 'Mutation' , loginTrackerCredentials : { __typename ? : 'LoginTrackerCredentialsPayload' , isLoggedIn : boolean , tracker : { __typename ? : 'TrackerType' , authUrl? : string | null , id : number , name : string , icon : string , isLoggedIn : boolean , isTokenExpired : boolean } } } ;
2024-02-16 19:55:54 +01:00
export type TrackerLogoutMutationVariables = Exact < {
trackerId : Scalars [ 'Int' ] [ 'input' ] ;
} > ;
2024-07-11 18:09:47 +02:00
export type TrackerLogoutMutation = { __typename ? : 'Mutation' , logoutTracker : { __typename ? : 'LogoutTrackerPayload' , tracker : { __typename ? : 'TrackerType' , authUrl? : string | null , id : number , name : string , icon : string , isLoggedIn : boolean , isTokenExpired : boolean } } } ;
2024-02-16 19:55:54 +01:00
2024-03-10 17:36:22 +01:00
export type TrackerBindMutationVariables = Exact < {
2025-07-19 18:33:33 +02:00
input : BindTrackInput ;
2024-03-10 17:36:22 +01:00
} > ;
2025-07-19 18:33:33 +02:00
export type TrackerBindMutation = { __typename ? : 'Mutation' , bindTrack : { __typename ? : 'BindTrackPayload' , trackRecord : { __typename ? : 'TrackRecordType' , id : number , remoteId : string , trackerId : number , remoteUrl : string , title : string , status : number , lastChapterRead : number , totalChapters : number , score : number , displayScore : string , startDate : string , finishDate : string , private : boolean , manga : { __typename ? : 'MangaType' , id : number , trackRecords : { __typename ? : 'TrackRecordNodeList' , totalCount : number , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , trackerId : number } > } } } } } ;
2024-03-17 18:42:48 +01:00
2024-04-01 00:45:44 +02:00
export type TrackerUnbindMutationVariables = Exact < {
input : UnbindTrackInput ;
} > ;
2024-07-08 18:02:50 +02:00
export type TrackerUnbindMutation = { __typename ? : 'Mutation' , unbindTrack : { __typename ? : 'UnbindTrackPayload' , trackRecord ? : { __typename ? : 'TrackRecordType' , id : number , manga : { __typename ? : 'MangaType' , id : number , trackRecords : { __typename ? : 'TrackRecordNodeList' , totalCount : number , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , trackerId : number } > } } } | null } } ;
2024-04-01 00:45:44 +02:00
2024-03-17 18:42:48 +01:00
export type TrackerUpdateBindMutationVariables = Exact < {
input : UpdateTrackInput ;
} > ;
2025-07-19 18:33:33 +02:00
export type TrackerUpdateBindMutation = { __typename ? : 'Mutation' , updateTrack : { __typename ? : 'UpdateTrackPayload' , trackRecord ? : { __typename ? : 'TrackRecordType' , id : number , remoteId : string , trackerId : number , remoteUrl : string , title : string , status : number , lastChapterRead : number , totalChapters : number , score : number , displayScore : string , startDate : string , finishDate : string , private : boolean , manga : { __typename ? : 'MangaType' , id : number , trackRecords : { __typename ? : 'TrackRecordNodeList' , totalCount : number , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , trackerId : number } > } } } | null } } ;
2024-04-01 01:22:49 +02:00
2024-04-01 02:06:35 +02:00
export type TrackerFetchBindMutationVariables = Exact < {
recordId : Scalars [ 'Int' ] [ 'input' ] ;
2024-04-01 01:22:49 +02:00
} > ;
2025-07-19 18:33:33 +02:00
export type TrackerFetchBindMutation = { __typename ? : 'Mutation' , fetchTrack : { __typename ? : 'FetchTrackPayload' , trackRecord : { __typename ? : 'TrackRecordType' , id : number , remoteId : string , trackerId : number , remoteUrl : string , title : string , status : number , lastChapterRead : number , totalChapters : number , score : number , displayScore : string , startDate : string , finishDate : string , private : boolean } } } ;
2024-03-10 17:36:22 +01:00
2025-03-16 21:01:24 +01:00
export type UpdateLibraryMutationVariables = Exact < {
input? : InputMaybe < UpdateLibraryInput > ;
2023-08-07 23:32:36 +02:00
} > ;
2025-09-18 20:37:51 +02:00
export type UpdateLibraryMutation = { __typename ? : 'Mutation' , updateLibrary ? : { __typename ? : 'UpdateLibraryPayload' , updateStatus : { __typename ? : 'LibraryUpdateStatus' , jobsInfo : { __typename ? : 'UpdaterJobsInfoType' , isRunning : boolean , totalJobs : number , finishedJobs : number , skippedCategoriesCount : number , skippedMangasCount : number } , categoryUpdates : Array < { __typename ? : 'CategoryUpdateType' , status : CategoryJobStatus , category : { __typename ? : 'CategoryType' , id : number , name : string } } > , mangaUpdates : Array < { __typename ? : 'MangaUpdateType' , status : MangaJobStatus , manga : { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } } > } } | null } ;
2023-08-07 23:32:36 +02:00
export type StopUpdaterMutationVariables = Exact < {
input? : InputMaybe < UpdateStopInput > ;
} > ;
export type StopUpdaterMutation = { __typename ? : 'Mutation' , updateStop : { __typename ? : 'UpdateStopPayload' , clientMutationId? : string | null } } ;
2025-07-27 00:03:51 +02:00
export type UserLoginMutationVariables = Exact < {
password : Scalars [ 'String' ] [ 'input' ] ;
username : Scalars [ 'String' ] [ 'input' ] ;
} > ;
export type UserLoginMutation = { __typename ? : 'Mutation' , login : { __typename ? : 'LoginPayload' , accessToken : string , refreshToken : string } } ;
export type UserRefreshMutationVariables = Exact < {
refreshToken : Scalars [ 'String' ] [ 'input' ] ;
} > ;
export type UserRefreshMutation = { __typename ? : 'Mutation' , refreshToken : { __typename ? : 'RefreshTokenPayload' , accessToken : string } } ;
2023-08-07 23:32:36 +02:00
export type ValidateBackupQueryVariables = Exact < {
2023-10-29 01:45:08 +02:00
backup : Scalars [ 'Upload' ] [ 'input' ] ;
2023-08-07 23:32:36 +02:00
} > ;
2024-05-01 16:56:18 +02:00
export type ValidateBackupQuery = { __typename ? : 'Query' , validateBackup : { __typename ? : 'ValidateBackupResult' , missingSources : Array < { __typename ? : 'ValidateBackupSource' , id : string , name : string } > , missingTrackers : Array < { __typename ? : 'ValidateBackupTracker' , name : string } > } } ;
2023-08-07 23:32:36 +02:00
2023-11-02 13:01:01 +01:00
export type GetRestoreStatusQueryVariables = Exact < {
id : Scalars [ 'String' ] [ 'input' ] ;
} > ;
2023-08-07 23:32:36 +02:00
2023-11-02 13:01:01 +01:00
export type GetRestoreStatusQuery = { __typename ? : 'Query' , restoreStatus ? : { __typename ? : 'BackupRestoreStatus' , mangaProgress : number , state : BackupRestoreState , totalManga : number } | null } ;
2023-08-07 23:32:36 +02:00
2024-07-01 21:40:27 +02:00
export type GetCategoriesBaseQueryVariables = Exact < {
2023-08-07 23:32:36 +02:00
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < CategoryConditionInput > ;
filter? : InputMaybe < CategoryFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-28 22:21:11 +02:00
order? : InputMaybe < Array < CategoryOrderInput > | CategoryOrderInput > ;
2023-08-07 23:32:36 +02:00
} > ;
2024-07-01 21:40:27 +02:00
export type GetCategoriesBaseQuery = { __typename ? : 'Query' , categories : { __typename ? : 'CategoryNodeList' , totalCount : number , nodes : Array < { __typename ? : 'CategoryType' , id : number , name : string , default : boolean , order : number } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } ;
2023-08-07 23:32:36 +02:00
2024-07-01 21:40:27 +02:00
export type GetCategoriesLibraryQueryVariables = Exact < {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < CategoryConditionInput > ;
filter? : InputMaybe < CategoryFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-28 22:21:11 +02:00
order? : InputMaybe < Array < CategoryOrderInput > | CategoryOrderInput > ;
2024-07-01 21:40:27 +02:00
} > ;
2024-09-21 20:01:06 +02:00
export type GetCategoriesLibraryQuery = { __typename ? : 'Query' , categories : { __typename ? : 'CategoryNodeList' , totalCount : number , nodes : Array < { __typename ? : 'CategoryType' , id : number , name : string , default : boolean , order : number , meta : Array < { __typename ? : 'CategoryMetaType' , categoryId : number , key : string , value : string } > , mangas : { __typename ? : 'MangaNodeList' , totalCount : number } } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } ;
2024-07-01 21:40:27 +02:00
export type GetCategoriesSettingsQueryVariables = Exact < {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < CategoryConditionInput > ;
filter? : InputMaybe < CategoryFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-28 22:21:11 +02:00
order? : InputMaybe < Array < CategoryOrderInput > | CategoryOrderInput > ;
2023-08-07 23:32:36 +02:00
} > ;
2024-07-01 21:40:27 +02:00
export type GetCategoriesSettingsQuery = { __typename ? : 'Query' , categories : { __typename ? : 'CategoryNodeList' , totalCount : number , nodes : Array < { __typename ? : 'CategoryType' , includeInUpdate : IncludeOrExclude , includeInDownload : IncludeOrExclude , id : number , name : string , default : boolean , order : number } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } ;
2023-08-07 23:32:36 +02:00
export type GetCategoryMangasQueryVariables = Exact < {
id : Scalars [ 'Int' ] [ 'input' ] ;
} > ;
2025-09-18 20:37:51 +02:00
export type GetCategoryMangasQuery = { __typename ? : 'Query' , category : { __typename ? : 'CategoryType' , id : number , mangas : { __typename ? : 'MangaNodeList' , totalCount : number , nodes : Array < { __typename ? : 'MangaType' , genre : Array < string > , lastFetchedAt? : string | null , inLibraryAt : string , status : MangaStatus , artist? : string | null , author? : string | null , description? : string | null , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , meta : Array < { __typename ? : 'MangaMetaType' , mangaId : number , key : string , value : string } > , source ? : { __typename ? : 'SourceType' , id : string , displayName : string } | null , trackRecords : { __typename ? : 'TrackRecordNodeList' , totalCount : number , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , trackerId : number } > } , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } } ;
2023-08-07 23:32:36 +02:00
2024-07-02 16:20:28 +02:00
export type GetChaptersReaderQueryVariables = Exact < {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < ChapterConditionInput > ;
filter? : InputMaybe < ChapterFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-28 22:21:11 +02:00
order? : InputMaybe < Array < ChapterOrderInput > | ChapterOrderInput > ;
2024-07-02 16:20:28 +02:00
} > ;
2024-09-28 03:24:16 +02:00
export type GetChaptersReaderQuery = { __typename ? : 'Query' , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number , nodes : Array < { __typename ? : 'ChapterType' , uploadDate : string , lastPageRead : number , pageCount : number , id : number , name : string , mangaId : number , scanlator? : string | null , realUrl? : string | null , sourceOrder : number , chapterNumber : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } ;
2024-07-02 16:20:28 +02:00
export type GetChaptersMangaQueryVariables = Exact < {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < ChapterConditionInput > ;
filter? : InputMaybe < ChapterFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-28 22:21:11 +02:00
order? : InputMaybe < Array < ChapterOrderInput > | ChapterOrderInput > ;
2023-08-07 23:32:36 +02:00
} > ;
2025-03-16 21:01:24 +01:00
export type GetChaptersMangaQuery = { __typename ? : 'Query' , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number , nodes : Array < { __typename ? : 'ChapterType' , fetchedAt : string , uploadDate : string , lastReadAt : string , id : number , name : string , mangaId : number , scanlator? : string | null , realUrl? : string | null , sourceOrder : number , chapterNumber : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } ;
2023-08-07 23:32:36 +02:00
2024-07-02 16:20:28 +02:00
export type GetChaptersUpdatesQueryVariables = Exact < {
2023-08-07 23:32:36 +02:00
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < ChapterConditionInput > ;
filter? : InputMaybe < ChapterFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-28 22:21:11 +02:00
order? : InputMaybe < Array < ChapterOrderInput > | ChapterOrderInput > ;
2023-08-07 23:32:36 +02:00
} > ;
2025-03-16 21:01:24 +01:00
2025-11-30 18:48:12 +01:00
export type GetChaptersUpdatesQuery = { __typename ? : 'Query' , lastUpdateTimestamp : { __typename ? : 'LastUpdateTimestampPayload' , timestamp : string } , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number , nodes : Array < { __typename ? : 'ChapterType' , fetchedAt : string , uploadDate : string , lastReadAt : string , id : number , name : string , mangaId : number , scanlator? : string | null , realUrl? : string | null , sourceOrder : number , chapterNumber : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean , manga : { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string } } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } ;
2023-08-07 23:32:36 +02:00
Add history page (#897)
* Add History module and integrate it into the app
Introduce the History module with components for displaying chapter updates, including UI for grouped updates by date. Update routing and constants to incorporate the new /history path.
* Replace "Updates" and "History" with unified "Recent" module
Merged the "Updates" and "History" screens into a single unified "Recent" module with corresponding navigation updates. Adjusted GraphQL types and localization files to reflect the changes. This simplifies navigation and improves user experience.
* Refactor History screen to remove unused components.
Removed unused states, layout effects, and props related to last update timestamp. Renamed variables for better clarity and updated labels and error messages to align with the history context. Simplified component structure for improved maintainability.
* ```
Refactor tab handling and integrate dynamic height adjustments.
Renamed enums for better clarity and consistency. Implemented a `tabsMenuHeight` prop to dynamically adjust component layouts based on observed height changes using `useResizeObserver`. Updated the `Updates` component to consider the calculated heights for improved rendering.
```
* Refactor `groupByDate` parameter and add `lastReadAt` field
Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.
* Refactor `groupByDate` parameter and add `lastReadAt` field
Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.
* Refactor `groupByDate` parameter and add `lastReadAt` field
Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.
* Refactor `groupByDate` parameter and add `lastReadAt` field
Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.
* "Optimize GraphQL type definition formatting in generated file
Condensed the formatting of the GetChaptersHistoryQuery type to a single line for improved readability and consistency. This change does not affect functionality but enhances maintainability of the generated code."
* Remove UpdateChecker component from History screen
The UpdateChecker component and its related navbar action have been removed from the History screen. This simplifies the navbar setup and eliminates unused functionality in this context.
* Refactor chapter fragment and type references
Updated `ChapterRecentListFieldsFragment` to `ChapterUpdateListFieldsFragment` for better alignment with naming conventions. Adjusted type imports and query structures to maintain consistency across files. No functional changes introduced.
* Refactor padding calculation logic in Updates screen.
Renamed state variable and refactored its logic for clarity and consistency. The updated logic now uses a more descriptive name, `listPadding`, to enhance code readability and maintainability.
* Pass `tabsMenuHeight` prop to History component
Added `tabsMenuHeight` prop to the `History` component to properly calculate the height for the `StyledGroupedVirtuoso` element. This ensures consistency with other components and improves layout rendering.
* Revert package.json
* Add last page read tracking to chapter history
Introduced "lastPageRead" and "pageCount" fields to track progress in chapter history. Updated UI to display the last page read along with total pages for chapters. Adjusted localization files to support the new "page" label.
* Remove last page read display from ChapterHistoryCard
The "last page read" information was removed from the ChapterHistoryCard component for a cleaner UI. This change simplifies the card's design by showing only the chapter name and relevant download state.
* Forcing an empty commit.
* Replace "Recent" screen with separate "Updates" and "History".
The "Recent" feature has been split into two distinct screens, "Updates" and "History", for improved clarity and functionality. Routes, icons, and components have been updated accordingly, and redundant code related to "Recent" has been removed.
* Clean
* Revert vi.json
* Remove unnecessary `useLocation` hook and update state logic.
The `useLocation` hook was removed as it was not used elsewhere in the component. The state property for the routing logic was updated to use `Chapters.getReaderOpenChapterLocationState` for better encapsulation and clarity.
* Update history localization by removing unused "page" key
Removed the "page" key from the "history" section in the localization file as it is no longer in use. This cleanup helps keep the translation file consistent and easier to maintain.
---------
Co-authored-by: NamNH <namitonguyen@gmail.com>
2025-03-11 03:53:40 +07:00
export type GetChaptersHistoryQueryVariables = Exact < {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < ChapterConditionInput > ;
filter? : InputMaybe < ChapterFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
order? : InputMaybe < Array < ChapterOrderInput > | ChapterOrderInput > ;
} > ;
2025-03-16 21:01:24 +01:00
export type GetChaptersHistoryQuery = { __typename ? : 'Query' , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number , nodes : Array < { __typename ? : 'ChapterType' , fetchedAt : string , uploadDate : string , lastReadAt : string , id : number , name : string , mangaId : number , scanlator? : string | null , realUrl? : string | null , sourceOrder : number , chapterNumber : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean , manga : { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string } } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } ;
Add history page (#897)
* Add History module and integrate it into the app
Introduce the History module with components for displaying chapter updates, including UI for grouped updates by date. Update routing and constants to incorporate the new /history path.
* Replace "Updates" and "History" with unified "Recent" module
Merged the "Updates" and "History" screens into a single unified "Recent" module with corresponding navigation updates. Adjusted GraphQL types and localization files to reflect the changes. This simplifies navigation and improves user experience.
* Refactor History screen to remove unused components.
Removed unused states, layout effects, and props related to last update timestamp. Renamed variables for better clarity and updated labels and error messages to align with the history context. Simplified component structure for improved maintainability.
* ```
Refactor tab handling and integrate dynamic height adjustments.
Renamed enums for better clarity and consistency. Implemented a `tabsMenuHeight` prop to dynamically adjust component layouts based on observed height changes using `useResizeObserver`. Updated the `Updates` component to consider the calculated heights for improved rendering.
```
* Refactor `groupByDate` parameter and add `lastReadAt` field
Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.
* Refactor `groupByDate` parameter and add `lastReadAt` field
Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.
* Refactor `groupByDate` parameter and add `lastReadAt` field
Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.
* Refactor `groupByDate` parameter and add `lastReadAt` field
Renamed `updates` to `histories` in `groupByDate` for clarity and added a debugging log for input data. Updated GraphQL fragment to include the `lastReadAt` field to support additional functionality.
* "Optimize GraphQL type definition formatting in generated file
Condensed the formatting of the GetChaptersHistoryQuery type to a single line for improved readability and consistency. This change does not affect functionality but enhances maintainability of the generated code."
* Remove UpdateChecker component from History screen
The UpdateChecker component and its related navbar action have been removed from the History screen. This simplifies the navbar setup and eliminates unused functionality in this context.
* Refactor chapter fragment and type references
Updated `ChapterRecentListFieldsFragment` to `ChapterUpdateListFieldsFragment` for better alignment with naming conventions. Adjusted type imports and query structures to maintain consistency across files. No functional changes introduced.
* Refactor padding calculation logic in Updates screen.
Renamed state variable and refactored its logic for clarity and consistency. The updated logic now uses a more descriptive name, `listPadding`, to enhance code readability and maintainability.
* Pass `tabsMenuHeight` prop to History component
Added `tabsMenuHeight` prop to the `History` component to properly calculate the height for the `StyledGroupedVirtuoso` element. This ensures consistency with other components and improves layout rendering.
* Revert package.json
* Add last page read tracking to chapter history
Introduced "lastPageRead" and "pageCount" fields to track progress in chapter history. Updated UI to display the last page read along with total pages for chapters. Adjusted localization files to support the new "page" label.
* Remove last page read display from ChapterHistoryCard
The "last page read" information was removed from the ChapterHistoryCard component for a cleaner UI. This change simplifies the card's design by showing only the chapter name and relevant download state.
* Forcing an empty commit.
* Replace "Recent" screen with separate "Updates" and "History".
The "Recent" feature has been split into two distinct screens, "Updates" and "History", for improved clarity and functionality. Routes, icons, and components have been updated accordingly, and redundant code related to "Recent" has been removed.
* Clean
* Revert vi.json
* Remove unnecessary `useLocation` hook and update state logic.
The `useLocation` hook was removed as it was not used elsewhere in the component. The state property for the routing logic was updated to use `Chapters.getReaderOpenChapterLocationState` for better encapsulation and clarity.
* Update history localization by removing unused "page" key
Removed the "page" key from the "history" section in the localization file as it is no longer in use. This cleanup helps keep the translation file consistent and easier to maintain.
---------
Co-authored-by: NamNH <namitonguyen@gmail.com>
2025-03-11 03:53:40 +07:00
2023-12-25 21:37:45 +01:00
export type GetMangasChapterIdsWithStateQueryVariables = Exact < {
mangaIds : Array < Scalars [ 'Int' ] [ 'input' ] > | Scalars [ 'Int' ] [ 'input' ] ;
isDownloaded? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
isRead? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
isBookmarked? : InputMaybe < Scalars [ 'Boolean' ] [ 'input' ] > ;
} > ;
2024-07-02 16:20:28 +02:00
export type GetMangasChapterIdsWithStateQuery = { __typename ? : 'Query' , chapters : { __typename ? : 'ChapterNodeList' , nodes : Array < { __typename ? : 'ChapterType' , mangaId : number , scanlator? : string | null , chapterNumber : number , id : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean } > } } ;
2023-12-25 21:37:45 +01:00
2023-08-07 23:32:36 +02:00
export type GetDownloadStatusQueryVariables = Exact < { [ key : string ] : never ; } > ;
2024-07-06 15:28:27 +02:00
export type GetDownloadStatusQuery = { __typename ? : 'Query' , downloadStatus : { __typename ? : 'DownloadStatus' , state : DownloaderState , queue : Array < { __typename ? : 'DownloadType' , progress : number , state : DownloadState , tries : number , chapter : { __typename ? : 'ChapterType' , id : number , name : string , sourceOrder : number , isDownloaded : boolean } , manga : { __typename ? : 'MangaType' , id : number , title : string , downloadCount : number } } > } } ;
2023-08-07 23:32:36 +02:00
2025-06-22 23:12:54 +02:00
export type GetExtensionQueryVariables = Exact < {
pkgName : Scalars [ 'String' ] [ 'input' ] ;
} > ;
export type GetExtensionQuery = { __typename ? : 'Query' , extension : { __typename ? : 'ExtensionType' , pkgName : string , name : string , lang : string , versionCode : number , versionName : string , iconUrl : string , repo? : string | null , isNsfw : boolean , isInstalled : boolean , isObsolete : boolean , hasUpdate : boolean } } ;
2023-08-07 23:32:36 +02:00
export type GetExtensionsQueryVariables = Exact < {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < ExtensionConditionInput > ;
filter? : InputMaybe < ExtensionFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-28 22:21:11 +02:00
order? : InputMaybe < Array < ExtensionOrderInput > | ExtensionOrderInput > ;
2023-08-07 23:32:36 +02:00
} > ;
2024-07-06 15:55:58 +02:00
export type GetExtensionsQuery = { __typename ? : 'Query' , extensions : { __typename ? : 'ExtensionNodeList' , totalCount : number , nodes : Array < { __typename ? : 'ExtensionType' , pkgName : string , name : string , lang : string , versionCode : number , versionName : string , iconUrl : string , repo? : string | null , isNsfw : boolean , isInstalled : boolean , isObsolete : boolean , hasUpdate : boolean } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } ;
2023-08-07 23:32:36 +02:00
export type GetGlobalMetadataQueryVariables = Exact < {
key : Scalars [ 'String' ] [ 'input' ] ;
} > ;
export type GetGlobalMetadataQuery = { __typename ? : 'Query' , meta : { __typename ? : 'GlobalMetaType' , key : string , value : string } } ;
export type GetGlobalMetadatasQueryVariables = Exact < {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < MetaConditionInput > ;
filter? : InputMaybe < MetaFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-28 22:21:11 +02:00
order? : InputMaybe < Array < MetaOrderInput > | MetaOrderInput > ;
2023-08-07 23:32:36 +02:00
} > ;
2024-03-28 17:30:34 +01:00
export type GetGlobalMetadatasQuery = { __typename ? : 'Query' , metas : { __typename ? : 'GlobalMetaNodeList' , totalCount : number , nodes : Array < { __typename ? : 'GlobalMetaType' , key : string , value : string } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } ;
2023-08-07 23:32:36 +02:00
2024-07-08 18:02:50 +02:00
export type GetMangaScreenQueryVariables = Exact < {
2023-08-07 23:32:36 +02:00
id : Scalars [ 'Int' ] [ 'input' ] ;
} > ;
2025-09-18 20:37:51 +02:00
export type GetMangaScreenQuery = { __typename ? : 'Query' , manga : { __typename ? : 'MangaType' , artist? : string | null , author? : string | null , description? : string | null , status : MangaStatus , realUrl? : string | null , sourceId : string , genre : Array < string > , lastFetchedAt? : string | null , inLibraryAt : string , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , meta : Array < { __typename ? : 'MangaMetaType' , mangaId : number , key : string , value : string } > , source ? : { __typename ? : 'SourceType' , id : string , displayName : string } | null , trackRecords : { __typename ? : 'TrackRecordNodeList' , totalCount : number , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , trackerId : number } > } , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } } ;
2024-07-08 18:02:50 +02:00
export type GetMangaReaderQueryVariables = Exact < {
id : Scalars [ 'Int' ] [ 'input' ] ;
} > ;
2025-04-18 00:17:56 +02:00
export type GetMangaReaderQuery = { __typename ? : 'Query' , manga : { __typename ? : 'MangaType' , genre : Array < string > , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string , source ? : { __typename ? : 'SourceType' , id : string , name : string , displayName : string , lang : string } | null , meta : Array < { __typename ? : 'MangaMetaType' , mangaId : number , key : string , value : string } > , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , trackRecords : { __typename ? : 'TrackRecordNodeList' , totalCount : number } } } ;
2024-07-08 18:02:50 +02:00
export type GetMangaTrackRecordsQueryVariables = Exact < {
id : Scalars [ 'Int' ] [ 'input' ] ;
} > ;
2025-07-19 18:33:33 +02:00
export type GetMangaTrackRecordsQuery = { __typename ? : 'Query' , manga : { __typename ? : 'MangaType' , id : number , trackRecords : { __typename ? : 'TrackRecordNodeList' , totalCount : number , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , remoteId : string , trackerId : number , remoteUrl : string , title : string , status : number , lastChapterRead : number , totalChapters : number , score : number , displayScore : string , startDate : string , finishDate : string , private : boolean } > } } } ;
2024-07-08 18:02:50 +02:00
export type GetMangaCategoriesQueryVariables = Exact < {
id : Scalars [ 'Int' ] [ 'input' ] ;
} > ;
export type GetMangaCategoriesQuery = { __typename ? : 'Query' , manga : { __typename ? : 'MangaType' , id : number , categories : { __typename ? : 'CategoryNodeList' , totalCount : number , nodes : Array < { __typename ? : 'CategoryType' , id : number } > } } } ;
2023-08-07 23:32:36 +02:00
2024-01-26 20:50:51 +01:00
export type GetMangaToMigrateQueryVariables = Exact < {
id : Scalars [ 'Int' ] [ 'input' ] ;
2024-03-16 13:45:54 +01:00
getChapterData : Scalars [ 'Boolean' ] [ 'input' ] ;
2024-01-26 20:50:51 +01:00
migrateCategories : Scalars [ 'Boolean' ] [ 'input' ] ;
2024-04-20 23:51:47 +02:00
migrateTracking : Scalars [ 'Boolean' ] [ 'input' ] ;
2024-01-26 20:50:51 +01:00
} > ;
2025-07-19 18:33:33 +02:00
export type GetMangaToMigrateQuery = { __typename ? : 'Query' , manga : { __typename ? : 'MangaType' , id : number , inLibrary : boolean , title : string , chapters ? : { __typename ? : 'ChapterNodeList' , totalCount : number , nodes : Array < { __typename ? : 'ChapterType' , id : number , chapterNumber : number , isRead : boolean , isDownloaded : boolean , isBookmarked : boolean , manga : { __typename ? : 'MangaType' , id : number } } > } , categories ? : { __typename ? : 'CategoryNodeList' , nodes : Array < { __typename ? : 'CategoryType' , id : number } > } , trackRecords ? : { __typename ? : 'TrackRecordNodeList' , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , remoteId : string , trackerId : number , private : boolean } > } } } ;
2024-01-26 20:50:51 +01:00
2024-07-08 18:02:50 +02:00
export type GetMangasBaseQueryVariables = Exact < {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < MangaConditionInput > ;
filter? : InputMaybe < MangaFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-28 22:21:11 +02:00
order? : InputMaybe < Array < MangaOrderInput > | MangaOrderInput > ;
2024-07-08 18:02:50 +02:00
} > ;
2024-08-14 22:40:53 +02:00
export type GetMangasBaseQuery = { __typename ? : 'Query' , mangas : { __typename ? : 'MangaNodeList' , totalCount : number , nodes : Array < { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } ;
2024-07-08 18:02:50 +02:00
export type GetMangasLibraryQueryVariables = Exact < {
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < MangaConditionInput > ;
filter? : InputMaybe < MangaFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-28 22:21:11 +02:00
order? : InputMaybe < Array < MangaOrderInput > | MangaOrderInput > ;
2024-07-08 18:02:50 +02:00
} > ;
2025-09-18 20:37:51 +02:00
export type GetMangasLibraryQuery = { __typename ? : 'Query' , mangas : { __typename ? : 'MangaNodeList' , totalCount : number , nodes : Array < { __typename ? : 'MangaType' , genre : Array < string > , lastFetchedAt? : string | null , inLibraryAt : string , status : MangaStatus , artist? : string | null , author? : string | null , description? : string | null , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , meta : Array < { __typename ? : 'MangaMetaType' , mangaId : number , key : string , value : string } > , source ? : { __typename ? : 'SourceType' , id : string , displayName : string } | null , trackRecords : { __typename ? : 'TrackRecordNodeList' , totalCount : number , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , trackerId : number } > } , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } ;
2024-07-08 18:02:50 +02:00
export type GetMangasDuplicatesQueryVariables = Exact < {
2023-08-07 23:32:36 +02:00
after? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
before? : InputMaybe < Scalars [ 'Cursor' ] [ 'input' ] > ;
condition? : InputMaybe < MangaConditionInput > ;
filter? : InputMaybe < MangaFilterInput > ;
first? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
last? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
offset? : InputMaybe < Scalars [ 'Int' ] [ 'input' ] > ;
2024-07-28 22:21:11 +02:00
order? : InputMaybe < Array < MangaOrderInput > | MangaOrderInput > ;
2023-08-07 23:32:36 +02:00
} > ;
2024-07-28 23:14:42 +02:00
export type GetMangasDuplicatesQuery = { __typename ? : 'Query' , mangas : { __typename ? : 'MangaNodeList' , totalCount : number , nodes : Array < { __typename ? : 'MangaType' , description? : string | null , id : number , title : string , thumbnailUrl? : string | null , thumbnailUrlLastFetched? : string | null , inLibrary : boolean , initialized : boolean , sourceId : string , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } } > , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } } } ;
2023-08-07 23:32:36 +02:00
2024-01-26 20:50:51 +01:00
export type GetMigratableSourceMangasQueryVariables = Exact < {
sourceId : Scalars [ 'LongString' ] [ 'input' ] ;
} > ;
2024-07-08 18:02:50 +02:00
export type GetMigratableSourceMangasQuery = { __typename ? : 'Query' , mangas : { __typename ? : 'MangaNodeList' , nodes : Array < { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , sourceId : string , categories : { __typename ? : 'CategoryNodeList' , nodes : Array < { __typename ? : 'CategoryType' , id : number } > } } > } } ;
2024-01-26 20:50:51 +01:00
2024-11-28 12:20:36 +01:00
export type GetLibraryMangaCountQueryVariables = Exact < { [ key : string ] : never ; } > ;
export type GetLibraryMangaCountQuery = { __typename ? : 'Query' , mangas : { __typename ? : 'MangaNodeList' , totalCount : number } } ;
2023-08-07 23:32:36 +02:00
export type GetAboutQueryVariables = Exact < { [ key : string ] : never ; } > ;
2025-04-06 23:58:58 +02:00
export type GetAboutQuery = { __typename ? : 'Query' , aboutServer : { __typename ? : 'AboutServerPayload' , buildTime : string , buildType : string , discord : string , github : string , name : string , revision : string , version : string } , aboutWebUI : { __typename ? : 'AboutWebUI' , channel : WebUiChannel , tag : string } } ;
2023-08-07 23:32:36 +02:00
export type CheckForServerUpdatesQueryVariables = Exact < { [ key : string ] : never ; } > ;
export type CheckForServerUpdatesQuery = { __typename ? : 'Query' , checkForServerUpdates : Array < { __typename ? : 'CheckForServerUpdatesPayload' , channel : string , tag : string , url : string } > } ;
export type CheckForWebuiUpdateQueryVariables = Exact < { [ key : string ] : never ; } > ;
2025-04-06 23:58:58 +02:00
export type CheckForWebuiUpdateQuery = { __typename ? : 'Query' , checkForWebUIUpdate : { __typename ? : 'WebUIUpdateCheck' , channel : WebUiChannel , tag : string , updateAvailable : boolean } } ;
2023-08-07 23:32:36 +02:00
export type GetWebuiUpdateStatusQueryVariables = Exact < { [ key : string ] : never ; } > ;
2025-04-06 23:58:58 +02:00
export type GetWebuiUpdateStatusQuery = { __typename ? : 'Query' , getWebUIUpdateStatus : { __typename ? : 'WebUIUpdateStatus' , progress : number , state : UpdateState , info : { __typename ? : 'WebUIUpdateInfo' , channel : WebUiChannel , tag : string } } } ;
2023-08-07 23:32:36 +02:00
export type GetServerSettingsQueryVariables = Exact < { [ key : string ] : never ; } > ;
2025-09-18 22:27:19 +02:00
export type GetServerSettingsQuery = { __typename ? : 'Query' , settings : { __typename ? : 'SettingsType' , ip : string , port : number , socksProxyEnabled : boolean , socksProxyVersion : number , socksProxyHost : string , socksProxyPort : string , socksProxyUsername : string , socksProxyPassword : string , webUIFlavor : WebUiFlavor , initialOpenInBrowserEnabled : boolean , webUIInterface : WebUiInterface , electronPath : string , webUIChannel : WebUiChannel , webUIUpdateCheckInterval : number , downloadAsCbz : boolean , downloadsPath : string , autoDownloadNewChapters : boolean , excludeEntryWithUnreadChapters : boolean , autoDownloadNewChaptersLimit : number , autoDownloadIgnoreReUploads : boolean , extensionRepos : Array < string > , maxSourcesInParallel : number , excludeUnreadChapters : boolean , excludeNotStarted : boolean , excludeCompleted : boolean , globalUpdateInterval : number , updateMangas : boolean , authMode : AuthMode , authPassword : string , authUsername : string , jwtAudience : string , jwtTokenExpiry : string , jwtRefreshExpiry : string , debugLogsEnabled : boolean , systemTrayEnabled : boolean , maxLogFileSize : string , maxLogFiles : number , maxLogFolderSize : string , backupPath : string , backupTime : string , backupInterval : number , backupTTL : number , localSourcePath : string , flareSolverrEnabled : boolean , flareSolverrUrl : string , flareSolverrTimeout : number , flareSolverrSessionName : string , flareSolverrSessionTtl : number , flareSolverrAsResponseFallback : boolean , opdsUseBinaryFileSizes : boolean , opdsItemsPerPage : number , opdsEnablePageReadProgress : boolean , opdsMarkAsReadOnDownload : boolean , opdsShowOnlyUnreadChapters : boolean , opdsShowOnlyDownloadedChapters : boolean , opdsChapterSortOrder : SortOrder , koreaderSyncServerUrl : string , koreaderSyncUsername : string , koreaderSyncUserkey : string , koreaderSyncDeviceId : string , koreaderSyncChecksumMethod : KoreaderSyncChecksumMethod , koreaderSyncStrategy : KoreaderSyncLegacyStrategy , koreaderSyncPercentageTolerance : number , databaseType : DatabaseType , databaseUrl : string , databaseUsername : string , databasePassword : string , downloadConversions : Array < { __typename ? : 'SettingsDownloadConversionType' , mimeType : string , target : string , compressionLevel? : number | null } > } } ;
2023-08-07 23:32:36 +02:00
2024-07-03 23:15:50 +02:00
export type GetSourceBrowseQueryVariables = Exact < {
id : Scalars [ 'LongString' ] [ 'input' ] ;
} > ;
2025-09-08 00:58:12 +02:00
export type GetSourceBrowseQuery = { __typename ? : 'Query' , source : { __typename ? : 'SourceType' , baseUrl? : string | null , isConfigurable : boolean , supportsLatest : boolean , id : string , name : string , displayName : string , lang : string , meta : Array < { __typename ? : 'SourceMetaType' , sourceId : string , key : string , value : string } > , filters : Array < { __typename ? : 'CheckBoxFilter' , name : string , type : 'CheckBoxFilter' , CheckBoxFilterDefault : boolean } | { __typename ? : 'GroupFilter' , name : string , type : 'GroupFilter' , filters : Array < { __typename ? : 'CheckBoxFilter' , name : string , type : 'CheckBoxFilter' , CheckBoxFilterDefault : boolean } | { __typename ? : 'GroupFilter' } | { __typename ? : 'HeaderFilter' , name : string , type : 'HeaderFilter' } | { __typename ? : 'SelectFilter' , name : string , values : Array < string > , type : 'SelectFilter' , SelectFilterDefault : number } | { __typename ? : 'SeparatorFilter' , name : string , type : 'SeparatorFilter' } | { __typename ? : 'SortFilter' , name : string , values : Array < string > , type : 'SortFilter' , SortFilterDefault ? : { __typename ? : 'SortSelection' , ascending : boolean , index : number } | null } | { __typename ? : 'TextFilter' , name : string , type : 'TextFilter' , TextFilterDefault : string } | { __typename ? : 'TriStateFilter' , name : string , type : 'TriStateFilter' , TriStateFilterDefault : TriState } > } | { __typename ? : 'HeaderFilter' , name : string , type : 'HeaderFilter' } | { __typename ? : 'SelectFilter' , name : string , values : Array < string > , type : 'SelectFilter' , SelectFilterDefault : number } | { __typename ? : 'SeparatorFilter' , name : string , type : 'SeparatorFilter' } | { __typename ? : 'SortFilter' , name : string , values : Array < string > , type : 'SortFilter' , SortFilterDefault ? : { __typename ? : 'SortSelection' , ascending : boolean , index : number } | null } | { __typename ? : 'TextFilter' , name : string , type : 'TextFilter' , TextFilterDefault : string } | { __typename ? : 'TriStateFilter' , name : string , type : 'TriStateFilter' , TriStateFilterDefault : TriState } > } } ;
2024-07-03 23:15:50 +02:00
export type GetSourceSettingsQueryVariables = Exact < {
id : Scalars [ 'LongString' ] [ 'input' ] ;
} > ;
2025-09-08 00:24:32 +02:00
export type GetSourceSettingsQuery = { __typename ? : 'Query' , source : { __typename ? : 'SourceType' , id : string , name : string , displayName : string , lang : string , preferences : Array < { __typename ? : 'CheckBoxPreference' , summary? : string | null , key? : string | null , type : 'CheckBoxPreference' , CheckBoxCheckBoxCurrentValue? : boolean | null , CheckBoxDefault : boolean , CheckBoxTitle? : string | null } | { __typename ? : 'EditTextPreference' , text? : string | null , summary? : string | null , key? : string | null , dialogTitle? : string | null , dialogMessage? : string | null , type : 'EditTextPreference' , EditTextPreferenceCurrentValue? : string | null , EditTextPreferenceDefault? : string | null , EditTextPreferenceTitle? : string | null } | { __typename ? : 'ListPreference' , summary? : string | null , key? : string | null , entryValues : Array < string > , entries : Array < string > , type : 'ListPreference' , ListPreferenceCurrentValue? : string | null , ListPreferenceDefault? : string | null , ListPreferenceTitle? : string | null } | { __typename ? : 'MultiSelectListPreference' , dialogMessage? : string | null , dialogTitle? : string | null , summary? : string | null , key? : string | null , entryValues : Array < string > , entries : Array < string > , type : 'MultiSelectListPreference' , MultiSelectListPreferenceTitle? : string | null , MultiSelectListPreferenceDefault? : Array < string > | null , MultiSelectListPreferenceCurrentValue? : Array < string > | null } | { __typename ? : 'SwitchPreference' , summary? : string | null , key? : string | null , type : 'SwitchPreference' , SwitchPreferenceCurrentValue? : boolean | null , SwitchPreferenceDefault : boolean , SwitchPreferenceTitle? : string | null } > } } ;
2024-07-03 23:15:50 +02:00
export type GetSourceMigratableQueryVariables = Exact < {
2023-08-07 23:32:36 +02:00
id : Scalars [ 'LongString' ] [ 'input' ] ;
} > ;
2024-07-03 23:15:50 +02:00
export type GetSourceMigratableQuery = { __typename ? : 'Query' , source : { __typename ? : 'SourceType' , lang : string , iconUrl : string , id : string , name : string , displayName : string } } ;
2023-08-07 23:32:36 +02:00
2024-07-03 23:15:50 +02:00
export type GetSourcesListQueryVariables = Exact < { [ key : string ] : never ; } > ;
2023-08-07 23:32:36 +02:00
2025-05-17 22:17:15 +02:00
export type GetSourcesListQuery = { __typename ? : 'Query' , sources : { __typename ? : 'SourceNodeList' , nodes : Array < { __typename ? : 'SourceType' , lang : string , iconUrl : string , isNsfw : boolean , isConfigurable : boolean , supportsLatest : boolean , id : string , name : string , displayName : string , meta : Array < { __typename ? : 'SourceMetaType' , sourceId : string , key : string , value : string } > , extension : { __typename ? : 'ExtensionType' , pkgName : string , repo? : string | null } } > } } ;
2023-08-07 23:32:36 +02:00
2024-01-26 20:50:51 +01:00
export type GetMigratableSourcesQueryVariables = Exact < { [ key : string ] : never ; } > ;
2024-07-03 23:15:50 +02:00
export type GetMigratableSourcesQuery = { __typename ? : 'Query' , mangas : { __typename ? : 'MangaNodeList' , nodes : Array < { __typename ? : 'MangaType' , sourceId : string , source ? : { __typename ? : 'SourceType' , lang : string , iconUrl : string , id : string , name : string , displayName : string } | null } > } } ;
2024-01-26 20:50:51 +01:00
2024-07-04 22:00:39 +02:00
export type GetTrackersSettingsQueryVariables = Exact < { [ key : string ] : never ; } > ;
export type GetTrackersSettingsQuery = { __typename ? : 'Query' , trackers : { __typename ? : 'TrackerNodeList' , totalCount : number , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } , nodes : Array < { __typename ? : 'TrackerType' , authUrl? : string | null , id : number , name : string , icon : string , isLoggedIn : boolean , isTokenExpired : boolean } > } } ;
export type GetTrackersBindQueryVariables = Exact < { [ key : string ] : never ; } > ;
2024-02-16 19:55:54 +01:00
2025-07-19 18:33:33 +02:00
export type GetTrackersBindQuery = { __typename ? : 'Query' , trackers : { __typename ? : 'TrackerNodeList' , totalCount : number , pageInfo : { __typename ? : 'PageInfo' , endCursor? : string | null , hasNextPage : boolean , hasPreviousPage : boolean , startCursor? : string | null } , nodes : Array < { __typename ? : 'TrackerType' , icon : string , supportsPrivateTracking : boolean , supportsTrackDeletion : boolean , scores : Array < string > , id : number , name : string , isLoggedIn : boolean , isTokenExpired : boolean , statuses : Array < { __typename ? : 'TrackStatusType' , name : string , value : number } > , trackRecords : { __typename ? : 'TrackRecordNodeList' , nodes : Array < { __typename ? : 'TrackRecordType' , id : number , remoteId : string , trackerId : number , remoteUrl : string , title : string , status : number , lastChapterRead : number , totalChapters : number , score : number , displayScore : string , startDate : string , finishDate : string , private : boolean } > } } > } } ;
2024-03-10 17:36:22 +01:00
export type TrackerSearchQueryVariables = Exact < {
query : Scalars [ 'String' ] [ 'input' ] ;
trackerId : Scalars [ 'Int' ] [ 'input' ] ;
} > ;
2025-07-19 16:26:05 +02:00
export type TrackerSearchQuery = { __typename ? : 'Query' , searchTracker : { __typename ? : 'SearchTrackerPayload' , trackSearches : Array < { __typename ? : 'TrackSearchType' , id : number , remoteId : string , title : string , trackingUrl : string , coverUrl : string , publishingType : string , startDate : string , publishingStatus : string , summary : string , score : number , totalChapters : number } > } } ;
2024-02-16 19:55:54 +01:00
2023-08-07 23:32:36 +02:00
export type GetUpdateStatusQueryVariables = Exact < { [ key : string ] : never ; } > ;
2025-09-18 20:37:51 +02:00
export type GetUpdateStatusQuery = { __typename ? : 'Query' , libraryUpdateStatus : { __typename ? : 'LibraryUpdateStatus' , jobsInfo : { __typename ? : 'UpdaterJobsInfoType' , isRunning : boolean , totalJobs : number , finishedJobs : number , skippedCategoriesCount : number , skippedMangasCount : number } , categoryUpdates : Array < { __typename ? : 'CategoryUpdateType' , status : CategoryJobStatus , category : { __typename ? : 'CategoryType' , id : number , name : string } } > , mangaUpdates : Array < { __typename ? : 'MangaUpdateType' , status : MangaJobStatus , manga : { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } } > } } ;
2023-08-07 23:32:36 +02:00
export type GetLastUpdateTimestampQueryVariables = Exact < { [ key : string ] : never ; } > ;
2024-03-28 17:30:34 +01:00
export type GetLastUpdateTimestampQuery = { __typename ? : 'Query' , lastUpdateTimestamp : { __typename ? : 'LastUpdateTimestampPayload' , timestamp : string } } ;
2023-08-07 23:32:36 +02:00
2024-08-21 21:29:01 +02:00
export type DownloadStatusSubscriptionVariables = Exact < {
input : DownloadChangedInput ;
} > ;
2023-08-07 23:32:36 +02:00
2024-08-21 21:29:01 +02:00
export type DownloadStatusSubscription = { __typename ? : 'Subscription' , downloadStatusChanged : { __typename ? : 'DownloadUpdates' , state : DownloaderState , omittedUpdates : boolean , updates : Array < { __typename ? : 'DownloadUpdate' , type : DownloadUpdateType , download : { __typename ? : 'DownloadType' , position : number , progress : number , state : DownloadState , tries : number , chapter : { __typename ? : 'ChapterType' , id : number , name : string , sourceOrder : number , isDownloaded : boolean } , manga : { __typename ? : 'MangaType' , id : number , title : string , downloadCount : number } } } > } } ;
2023-08-07 23:32:36 +02:00
export type WebuiUpdateSubscriptionVariables = Exact < { [ key : string ] : never ; } > ;
2025-04-06 23:58:58 +02:00
export type WebuiUpdateSubscription = { __typename ? : 'Subscription' , webUIUpdateStatusChange : { __typename ? : 'WebUIUpdateStatus' , progress : number , state : UpdateState , info : { __typename ? : 'WebUIUpdateInfo' , channel : WebUiChannel , tag : string } } } ;
2023-08-07 23:32:36 +02:00
2025-03-16 21:01:24 +01:00
export type UpdaterSubscriptionVariables = Exact < {
input : LibraryUpdateStatusChangedInput ;
} > ;
2023-08-07 23:32:36 +02:00
2025-09-18 20:37:51 +02:00
export type UpdaterSubscription = { __typename ? : 'Subscription' , libraryUpdateStatusChanged : { __typename ? : 'UpdaterUpdates' , omittedUpdates : boolean , jobsInfo : { __typename ? : 'UpdaterJobsInfoType' , isRunning : boolean , totalJobs : number , finishedJobs : number , skippedCategoriesCount : number , skippedMangasCount : number } , categoryUpdates : Array < { __typename ? : 'CategoryUpdateType' , status : CategoryJobStatus , category : { __typename ? : 'CategoryType' , id : number , name : string } } > , mangaUpdates : Array < { __typename ? : 'MangaUpdateType' , status : MangaJobStatus , manga : { __typename ? : 'MangaType' , id : number , title : string , thumbnailUrl? : string | null , unreadCount : number , downloadCount : number , bookmarkCount : number , hasDuplicateChapters : boolean , chapters : { __typename ? : 'ChapterNodeList' , totalCount : number } , firstUnreadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , isRead : boolean , mangaId : number , chapterNumber : number , name : string , scanlator? : string | null } | null , lastReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestReadChapter ? : { __typename ? : 'ChapterType' , id : number , sourceOrder : number , lastReadAt : string } | null , latestFetchedChapter ? : { __typename ? : 'ChapterType' , id : number , fetchedAt : string } | null , latestUploadedChapter ? : { __typename ? : 'ChapterType' , id : number , uploadDate : string } | null } } > } } ;