[FA-misc] Switches to using DTOs, updates frontend with details and reader page, updates novel import to be an upsert

This commit is contained in:
gamer147
2025-12-08 18:30:00 -05:00
parent c9d93a4e55
commit 81e4e88ad4
48 changed files with 3298 additions and 329 deletions

View File

@@ -29,27 +29,27 @@ export const ApplyPolicy = {
} as const;
export type ApplyPolicy = typeof ApplyPolicy[keyof typeof ApplyPolicy];
export type Chapter = {
body: LocalizationKey;
export type ChapterDto = {
body: Scalars['String']['output'];
createdTime: Scalars['Instant']['output'];
id: Scalars['UnsignedInt']['output'];
images: Array<Image>;
images: Array<ImageDto>;
lastUpdatedTime: Scalars['Instant']['output'];
name: LocalizationKey;
name: Scalars['String']['output'];
order: Scalars['UnsignedInt']['output'];
revision: Scalars['UnsignedInt']['output'];
url: Maybe<Scalars['String']['output']>;
};
export type ChapterFilterInput = {
and?: InputMaybe<Array<ChapterFilterInput>>;
body?: InputMaybe<LocalizationKeyFilterInput>;
export type ChapterDtoFilterInput = {
and?: InputMaybe<Array<ChapterDtoFilterInput>>;
body?: InputMaybe<StringOperationFilterInput>;
createdTime?: InputMaybe<InstantFilterInput>;
id?: InputMaybe<UnsignedIntOperationFilterInputType>;
images?: InputMaybe<ListFilterInputTypeOfImageFilterInput>;
images?: InputMaybe<ListFilterInputTypeOfImageDtoFilterInput>;
lastUpdatedTime?: InputMaybe<InstantFilterInput>;
name?: InputMaybe<LocalizationKeyFilterInput>;
or?: InputMaybe<Array<ChapterFilterInput>>;
name?: InputMaybe<StringOperationFilterInput>;
or?: InputMaybe<Array<ChapterDtoFilterInput>>;
order?: InputMaybe<UnsignedIntOperationFilterInputType>;
revision?: InputMaybe<UnsignedIntOperationFilterInputType>;
url?: InputMaybe<StringOperationFilterInput>;
@@ -60,15 +60,21 @@ export type ChapterPullRequestedEvent = {
novelId: Scalars['UnsignedInt']['output'];
};
export type ChapterSortInput = {
body?: InputMaybe<LocalizationKeySortInput>;
createdTime?: InputMaybe<SortEnumType>;
id?: InputMaybe<SortEnumType>;
lastUpdatedTime?: InputMaybe<SortEnumType>;
name?: InputMaybe<LocalizationKeySortInput>;
order?: InputMaybe<SortEnumType>;
revision?: InputMaybe<SortEnumType>;
url?: InputMaybe<SortEnumType>;
export type ChapterReaderDto = {
body: Scalars['String']['output'];
createdTime: Scalars['Instant']['output'];
id: Scalars['UnsignedInt']['output'];
images: Array<ImageDto>;
lastUpdatedTime: Scalars['Instant']['output'];
name: Scalars['String']['output'];
nextChapterOrder: Maybe<Scalars['UnsignedInt']['output']>;
novelId: Scalars['UnsignedInt']['output'];
novelName: Scalars['String']['output'];
order: Scalars['UnsignedInt']['output'];
prevChapterOrder: Maybe<Scalars['UnsignedInt']['output']>;
revision: Scalars['UnsignedInt']['output'];
totalChapters: Scalars['Int']['output'];
url: Maybe<Scalars['String']['output']>;
};
export type DeleteJobError = KeyNotFoundError;
@@ -103,8 +109,7 @@ export type FormatError = Error & {
message: Scalars['String']['output'];
};
export type Image = {
chapter: Maybe<Chapter>;
export type ImageDto = {
createdTime: Scalars['Instant']['output'];
id: Scalars['UUID']['output'];
lastUpdatedTime: Scalars['Instant']['output'];
@@ -112,19 +117,17 @@ export type Image = {
originalPath: Scalars['String']['output'];
};
export type ImageFilterInput = {
and?: InputMaybe<Array<ImageFilterInput>>;
chapter?: InputMaybe<ChapterFilterInput>;
export type ImageDtoFilterInput = {
and?: InputMaybe<Array<ImageDtoFilterInput>>;
createdTime?: InputMaybe<InstantFilterInput>;
id?: InputMaybe<UuidOperationFilterInput>;
lastUpdatedTime?: InputMaybe<InstantFilterInput>;
newPath?: InputMaybe<StringOperationFilterInput>;
or?: InputMaybe<Array<ImageFilterInput>>;
or?: InputMaybe<Array<ImageDtoFilterInput>>;
originalPath?: InputMaybe<StringOperationFilterInput>;
};
export type ImageSortInput = {
chapter?: InputMaybe<ChapterSortInput>;
export type ImageDtoSortInput = {
createdTime?: InputMaybe<SortEnumType>;
id?: InputMaybe<SortEnumType>;
lastUpdatedTime?: InputMaybe<SortEnumType>;
@@ -178,81 +181,25 @@ export type LanguageOperationFilterInput = {
nin?: InputMaybe<Array<Language>>;
};
export type ListFilterInputTypeOfChapterFilterInput = {
all?: InputMaybe<ChapterFilterInput>;
export type ListFilterInputTypeOfChapterDtoFilterInput = {
all?: InputMaybe<ChapterDtoFilterInput>;
any?: InputMaybe<Scalars['Boolean']['input']>;
none?: InputMaybe<ChapterFilterInput>;
some?: InputMaybe<ChapterFilterInput>;
none?: InputMaybe<ChapterDtoFilterInput>;
some?: InputMaybe<ChapterDtoFilterInput>;
};
export type ListFilterInputTypeOfImageFilterInput = {
all?: InputMaybe<ImageFilterInput>;
export type ListFilterInputTypeOfImageDtoFilterInput = {
all?: InputMaybe<ImageDtoFilterInput>;
any?: InputMaybe<Scalars['Boolean']['input']>;
none?: InputMaybe<ImageFilterInput>;
some?: InputMaybe<ImageFilterInput>;
none?: InputMaybe<ImageDtoFilterInput>;
some?: InputMaybe<ImageDtoFilterInput>;
};
export type ListFilterInputTypeOfLocalizationTextFilterInput = {
all?: InputMaybe<LocalizationTextFilterInput>;
export type ListFilterInputTypeOfNovelTagDtoFilterInput = {
all?: InputMaybe<NovelTagDtoFilterInput>;
any?: InputMaybe<Scalars['Boolean']['input']>;
none?: InputMaybe<LocalizationTextFilterInput>;
some?: InputMaybe<LocalizationTextFilterInput>;
};
export type ListFilterInputTypeOfNovelFilterInput = {
all?: InputMaybe<NovelFilterInput>;
any?: InputMaybe<Scalars['Boolean']['input']>;
none?: InputMaybe<NovelFilterInput>;
some?: InputMaybe<NovelFilterInput>;
};
export type ListFilterInputTypeOfNovelTagFilterInput = {
all?: InputMaybe<NovelTagFilterInput>;
any?: InputMaybe<Scalars['Boolean']['input']>;
none?: InputMaybe<NovelTagFilterInput>;
some?: InputMaybe<NovelTagFilterInput>;
};
export type LocalizationKey = {
createdTime: Scalars['Instant']['output'];
id: Scalars['UUID']['output'];
lastUpdatedTime: Scalars['Instant']['output'];
texts: Array<LocalizationText>;
};
export type LocalizationKeyFilterInput = {
and?: InputMaybe<Array<LocalizationKeyFilterInput>>;
createdTime?: InputMaybe<InstantFilterInput>;
id?: InputMaybe<UuidOperationFilterInput>;
lastUpdatedTime?: InputMaybe<InstantFilterInput>;
or?: InputMaybe<Array<LocalizationKeyFilterInput>>;
texts?: InputMaybe<ListFilterInputTypeOfLocalizationTextFilterInput>;
};
export type LocalizationKeySortInput = {
createdTime?: InputMaybe<SortEnumType>;
id?: InputMaybe<SortEnumType>;
lastUpdatedTime?: InputMaybe<SortEnumType>;
};
export type LocalizationText = {
createdTime: Scalars['Instant']['output'];
id: Scalars['UUID']['output'];
language: Language;
lastUpdatedTime: Scalars['Instant']['output'];
text: Scalars['String']['output'];
translationEngine: Maybe<TranslationEngine>;
};
export type LocalizationTextFilterInput = {
and?: InputMaybe<Array<LocalizationTextFilterInput>>;
createdTime?: InputMaybe<InstantFilterInput>;
id?: InputMaybe<UuidOperationFilterInput>;
language?: InputMaybe<LanguageOperationFilterInput>;
lastUpdatedTime?: InputMaybe<InstantFilterInput>;
or?: InputMaybe<Array<LocalizationTextFilterInput>>;
text?: InputMaybe<StringOperationFilterInput>;
translationEngine?: InputMaybe<TranslationEngineFilterInput>;
none?: InputMaybe<NovelTagDtoFilterInput>;
some?: InputMaybe<NovelTagDtoFilterInput>;
};
export type Mutation = {
@@ -300,56 +247,56 @@ export type MutationTranslateTextArgs = {
input: TranslateTextInput;
};
export type Novel = {
author: Person;
chapters: Array<Chapter>;
coverImage: Maybe<Image>;
export type NovelDto = {
author: PersonDto;
chapters: Array<ChapterDto>;
coverImage: Maybe<ImageDto>;
createdTime: Scalars['Instant']['output'];
description: LocalizationKey;
description: Scalars['String']['output'];
externalId: Scalars['String']['output'];
id: Scalars['UnsignedInt']['output'];
lastUpdatedTime: Scalars['Instant']['output'];
name: LocalizationKey;
name: Scalars['String']['output'];
rawLanguage: Language;
rawStatus: NovelStatus;
source: Source;
source: SourceDto;
statusOverride: Maybe<NovelStatus>;
tags: Array<NovelTag>;
tags: Array<NovelTagDto>;
url: Scalars['String']['output'];
};
export type NovelFilterInput = {
and?: InputMaybe<Array<NovelFilterInput>>;
author?: InputMaybe<PersonFilterInput>;
chapters?: InputMaybe<ListFilterInputTypeOfChapterFilterInput>;
coverImage?: InputMaybe<ImageFilterInput>;
export type NovelDtoFilterInput = {
and?: InputMaybe<Array<NovelDtoFilterInput>>;
author?: InputMaybe<PersonDtoFilterInput>;
chapters?: InputMaybe<ListFilterInputTypeOfChapterDtoFilterInput>;
coverImage?: InputMaybe<ImageDtoFilterInput>;
createdTime?: InputMaybe<InstantFilterInput>;
description?: InputMaybe<LocalizationKeyFilterInput>;
description?: InputMaybe<StringOperationFilterInput>;
externalId?: InputMaybe<StringOperationFilterInput>;
id?: InputMaybe<UnsignedIntOperationFilterInputType>;
lastUpdatedTime?: InputMaybe<InstantFilterInput>;
name?: InputMaybe<LocalizationKeyFilterInput>;
or?: InputMaybe<Array<NovelFilterInput>>;
name?: InputMaybe<StringOperationFilterInput>;
or?: InputMaybe<Array<NovelDtoFilterInput>>;
rawLanguage?: InputMaybe<LanguageOperationFilterInput>;
rawStatus?: InputMaybe<NovelStatusOperationFilterInput>;
source?: InputMaybe<SourceFilterInput>;
source?: InputMaybe<SourceDtoFilterInput>;
statusOverride?: InputMaybe<NullableOfNovelStatusOperationFilterInput>;
tags?: InputMaybe<ListFilterInputTypeOfNovelTagFilterInput>;
tags?: InputMaybe<ListFilterInputTypeOfNovelTagDtoFilterInput>;
url?: InputMaybe<StringOperationFilterInput>;
};
export type NovelSortInput = {
author?: InputMaybe<PersonSortInput>;
coverImage?: InputMaybe<ImageSortInput>;
export type NovelDtoSortInput = {
author?: InputMaybe<PersonDtoSortInput>;
coverImage?: InputMaybe<ImageDtoSortInput>;
createdTime?: InputMaybe<SortEnumType>;
description?: InputMaybe<LocalizationKeySortInput>;
description?: InputMaybe<SortEnumType>;
externalId?: InputMaybe<SortEnumType>;
id?: InputMaybe<SortEnumType>;
lastUpdatedTime?: InputMaybe<SortEnumType>;
name?: InputMaybe<LocalizationKeySortInput>;
name?: InputMaybe<SortEnumType>;
rawLanguage?: InputMaybe<SortEnumType>;
rawStatus?: InputMaybe<SortEnumType>;
source?: InputMaybe<SourceSortInput>;
source?: InputMaybe<SourceDtoSortInput>;
statusOverride?: InputMaybe<SortEnumType>;
url?: InputMaybe<SortEnumType>;
};
@@ -370,27 +317,25 @@ export type NovelStatusOperationFilterInput = {
nin?: InputMaybe<Array<NovelStatus>>;
};
export type NovelTag = {
export type NovelTagDto = {
createdTime: Scalars['Instant']['output'];
displayName: LocalizationKey;
displayName: Scalars['String']['output'];
id: Scalars['UnsignedInt']['output'];
key: Scalars['String']['output'];
lastUpdatedTime: Scalars['Instant']['output'];
novels: Array<Novel>;
source: Maybe<Source>;
source: Maybe<SourceDto>;
tagType: TagType;
};
export type NovelTagFilterInput = {
and?: InputMaybe<Array<NovelTagFilterInput>>;
export type NovelTagDtoFilterInput = {
and?: InputMaybe<Array<NovelTagDtoFilterInput>>;
createdTime?: InputMaybe<InstantFilterInput>;
displayName?: InputMaybe<LocalizationKeyFilterInput>;
displayName?: InputMaybe<StringOperationFilterInput>;
id?: InputMaybe<UnsignedIntOperationFilterInputType>;
key?: InputMaybe<StringOperationFilterInput>;
lastUpdatedTime?: InputMaybe<InstantFilterInput>;
novels?: InputMaybe<ListFilterInputTypeOfNovelFilterInput>;
or?: InputMaybe<Array<NovelTagFilterInput>>;
source?: InputMaybe<SourceFilterInput>;
or?: InputMaybe<Array<NovelTagDtoFilterInput>>;
source?: InputMaybe<SourceDtoFilterInput>;
tagType?: InputMaybe<TagTypeOperationFilterInput>;
};
@@ -403,7 +348,7 @@ export type NovelsConnection = {
/** A list of edges. */
edges: Maybe<Array<NovelsEdge>>;
/** A flattened list of the nodes. */
nodes: Maybe<Array<Novel>>;
nodes: Maybe<Array<NovelDto>>;
/** Information to aid in pagination. */
pageInfo: PageInfo;
};
@@ -413,7 +358,7 @@ export type NovelsEdge = {
/** A cursor for use in pagination. */
cursor: Scalars['String']['output'];
/** The item at the end of the edge. */
node: Novel;
node: NovelDto;
};
export type NullableOfNovelStatusOperationFilterInput = {
@@ -435,38 +380,46 @@ export type PageInfo = {
startCursor: Maybe<Scalars['String']['output']>;
};
export type Person = {
export type PersonDto = {
createdTime: Scalars['Instant']['output'];
externalUrl: Maybe<Scalars['String']['output']>;
id: Scalars['UnsignedInt']['output'];
lastUpdatedTime: Scalars['Instant']['output'];
name: LocalizationKey;
name: Scalars['String']['output'];
};
export type PersonFilterInput = {
and?: InputMaybe<Array<PersonFilterInput>>;
export type PersonDtoFilterInput = {
and?: InputMaybe<Array<PersonDtoFilterInput>>;
createdTime?: InputMaybe<InstantFilterInput>;
externalUrl?: InputMaybe<StringOperationFilterInput>;
id?: InputMaybe<UnsignedIntOperationFilterInputType>;
lastUpdatedTime?: InputMaybe<InstantFilterInput>;
name?: InputMaybe<LocalizationKeyFilterInput>;
or?: InputMaybe<Array<PersonFilterInput>>;
name?: InputMaybe<StringOperationFilterInput>;
or?: InputMaybe<Array<PersonDtoFilterInput>>;
};
export type PersonSortInput = {
export type PersonDtoSortInput = {
createdTime?: InputMaybe<SortEnumType>;
externalUrl?: InputMaybe<SortEnumType>;
id?: InputMaybe<SortEnumType>;
lastUpdatedTime?: InputMaybe<SortEnumType>;
name?: InputMaybe<LocalizationKeySortInput>;
name?: InputMaybe<SortEnumType>;
};
export type Query = {
chapter: Maybe<ChapterReaderDto>;
jobs: Array<SchedulerJob>;
novels: Maybe<NovelsConnection>;
translationEngines: Array<TranslationEngineDescriptor>;
translationRequests: Maybe<TranslationRequestsConnection>;
users: Array<User>;
users: Array<UserDto>;
};
export type QueryChapterArgs = {
chapterOrder: Scalars['UnsignedInt']['input'];
novelId: Scalars['UnsignedInt']['input'];
preferredLanguage?: Language;
};
@@ -475,8 +428,9 @@ export type QueryNovelsArgs = {
before?: InputMaybe<Scalars['String']['input']>;
first?: InputMaybe<Scalars['Int']['input']>;
last?: InputMaybe<Scalars['Int']['input']>;
order?: InputMaybe<Array<NovelSortInput>>;
where?: InputMaybe<NovelFilterInput>;
order?: InputMaybe<Array<NovelDtoSortInput>>;
preferredLanguage?: Language;
where?: InputMaybe<NovelDtoFilterInput>;
};
@@ -491,8 +445,8 @@ export type QueryTranslationRequestsArgs = {
before?: InputMaybe<Scalars['String']['input']>;
first?: InputMaybe<Scalars['Int']['input']>;
last?: InputMaybe<Scalars['Int']['input']>;
order?: InputMaybe<Array<TranslationRequestSortInput>>;
where?: InputMaybe<TranslationRequestFilterInput>;
order?: InputMaybe<Array<TranslationRequestDtoSortInput>>;
where?: InputMaybe<TranslationRequestDtoFilterInput>;
};
export type RegisterUserInput = {
@@ -503,7 +457,7 @@ export type RegisterUserInput = {
};
export type RegisterUserPayload = {
user: Maybe<User>;
userDto: Maybe<UserDto>;
};
export type RunJobError = JobPersistenceError;
@@ -546,7 +500,7 @@ export const SortEnumType = {
} as const;
export type SortEnumType = typeof SortEnumType[keyof typeof SortEnumType];
export type Source = {
export type SourceDto = {
createdTime: Scalars['Instant']['output'];
id: Scalars['UnsignedInt']['output'];
key: Scalars['String']['output'];
@@ -555,18 +509,18 @@ export type Source = {
url: Scalars['String']['output'];
};
export type SourceFilterInput = {
and?: InputMaybe<Array<SourceFilterInput>>;
export type SourceDtoFilterInput = {
and?: InputMaybe<Array<SourceDtoFilterInput>>;
createdTime?: InputMaybe<InstantFilterInput>;
id?: InputMaybe<UnsignedIntOperationFilterInputType>;
key?: InputMaybe<StringOperationFilterInput>;
lastUpdatedTime?: InputMaybe<InstantFilterInput>;
name?: InputMaybe<StringOperationFilterInput>;
or?: InputMaybe<Array<SourceFilterInput>>;
or?: InputMaybe<Array<SourceDtoFilterInput>>;
url?: InputMaybe<StringOperationFilterInput>;
};
export type SourceSortInput = {
export type SourceDtoSortInput = {
createdTime?: InputMaybe<SortEnumType>;
id?: InputMaybe<SortEnumType>;
key?: InputMaybe<SortEnumType>;
@@ -616,13 +570,6 @@ export type TranslateTextPayload = {
translationResult: Maybe<TranslationResult>;
};
export type TranslationEngine = {
createdTime: Scalars['Instant']['output'];
id: Scalars['UnsignedInt']['output'];
key: Scalars['String']['output'];
lastUpdatedTime: Scalars['Instant']['output'];
};
export type TranslationEngineDescriptor = {
displayName: Scalars['String']['output'];
key: Scalars['String']['output'];
@@ -640,16 +587,7 @@ export type TranslationEngineDescriptorSortInput = {
key?: InputMaybe<SortEnumType>;
};
export type TranslationEngineFilterInput = {
and?: InputMaybe<Array<TranslationEngineFilterInput>>;
createdTime?: InputMaybe<InstantFilterInput>;
id?: InputMaybe<UnsignedIntOperationFilterInputType>;
key?: InputMaybe<StringOperationFilterInput>;
lastUpdatedTime?: InputMaybe<InstantFilterInput>;
or?: InputMaybe<Array<TranslationEngineFilterInput>>;
};
export type TranslationRequest = {
export type TranslationRequestDto = {
billedCharacterCount: Scalars['UnsignedInt']['output'];
createdTime: Scalars['Instant']['output'];
from: Language;
@@ -662,14 +600,14 @@ export type TranslationRequest = {
translationEngineKey: Scalars['String']['output'];
};
export type TranslationRequestFilterInput = {
and?: InputMaybe<Array<TranslationRequestFilterInput>>;
export type TranslationRequestDtoFilterInput = {
and?: InputMaybe<Array<TranslationRequestDtoFilterInput>>;
billedCharacterCount?: InputMaybe<UnsignedIntOperationFilterInputType>;
createdTime?: InputMaybe<InstantFilterInput>;
from?: InputMaybe<LanguageOperationFilterInput>;
id?: InputMaybe<UuidOperationFilterInput>;
lastUpdatedTime?: InputMaybe<InstantFilterInput>;
or?: InputMaybe<Array<TranslationRequestFilterInput>>;
or?: InputMaybe<Array<TranslationRequestDtoFilterInput>>;
originalText?: InputMaybe<StringOperationFilterInput>;
status?: InputMaybe<TranslationRequestStatusOperationFilterInput>;
to?: InputMaybe<LanguageOperationFilterInput>;
@@ -677,7 +615,7 @@ export type TranslationRequestFilterInput = {
translationEngineKey?: InputMaybe<StringOperationFilterInput>;
};
export type TranslationRequestSortInput = {
export type TranslationRequestDtoSortInput = {
billedCharacterCount?: InputMaybe<SortEnumType>;
createdTime?: InputMaybe<SortEnumType>;
from?: InputMaybe<SortEnumType>;
@@ -709,7 +647,7 @@ export type TranslationRequestsConnection = {
/** A list of edges. */
edges: Maybe<Array<TranslationRequestsEdge>>;
/** A flattened list of the nodes. */
nodes: Maybe<Array<TranslationRequest>>;
nodes: Maybe<Array<TranslationRequestDto>>;
/** Information to aid in pagination. */
pageInfo: PageInfo;
};
@@ -719,7 +657,7 @@ export type TranslationRequestsEdge = {
/** A cursor for use in pagination. */
cursor: Scalars['String']['output'];
/** The item at the end of the edge. */
node: TranslationRequest;
node: TranslationRequestDto;
};
export type TranslationResult = {
@@ -747,14 +685,13 @@ export type UnsignedIntOperationFilterInputType = {
nlte?: InputMaybe<Scalars['UnsignedInt']['input']>;
};
export type User = {
export type UserDto = {
createdTime: Scalars['Instant']['output'];
disabled: Scalars['Boolean']['output'];
email: Scalars['String']['output'];
id: Scalars['UUID']['output'];
inviter: Maybe<User>;
inviter: Maybe<UserDto>;
lastUpdatedTime: Scalars['Instant']['output'];
oAuthProviderId: Scalars['String']['output'];
username: Scalars['String']['output'];
};
@@ -773,13 +710,31 @@ export type UuidOperationFilterInput = {
nlte?: InputMaybe<Scalars['UUID']['input']>;
};
export type NovelsQueryVariables = Exact<{
first?: InputMaybe<Scalars['Int']['input']>;
after?: InputMaybe<Scalars['String']['input']>;
export type GetChapterQueryVariables = Exact<{
novelId: Scalars['UnsignedInt']['input'];
chapterOrder: Scalars['UnsignedInt']['input'];
}>;
export type NovelsQuery = { novels: { edges: Array<{ cursor: string, node: { id: any, url: string, rawStatus: NovelStatus, lastUpdatedTime: any, name: { texts: Array<{ language: Language, text: string }> }, description: { texts: Array<{ language: Language, text: string }> }, coverImage: { originalPath: string, newPath: string | null } | null, chapters: Array<{ order: any, name: { texts: Array<{ language: Language, text: string }> } }> } }> | null, pageInfo: { hasNextPage: boolean, endCursor: string | null } } | null };
export type GetChapterQuery = { chapter: { id: any, order: any, name: string, body: string, url: string | null, revision: any, createdTime: any, lastUpdatedTime: any, novelId: any, novelName: string, totalChapters: number, prevChapterOrder: any | null, nextChapterOrder: any | null, images: Array<{ id: any, newPath: string | null }> } | null };
export type NovelQueryVariables = Exact<{
id: Scalars['UnsignedInt']['input'];
}>;
export const NovelsDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"Novels"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"first"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"after"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"novels"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"first"},"value":{"kind":"Variable","name":{"kind":"Name","value":"first"}}},{"kind":"Argument","name":{"kind":"Name","value":"after"},"value":{"kind":"Variable","name":{"kind":"Name","value":"after"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"edges"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"cursor"}},{"kind":"Field","name":{"kind":"Name","value":"node"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"url"}},{"kind":"Field","name":{"kind":"Name","value":"name"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"texts"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"language"}},{"kind":"Field","name":{"kind":"Name","value":"text"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"description"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"texts"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"language"}},{"kind":"Field","name":{"kind":"Name","value":"text"}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"coverImage"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"originalPath"}},{"kind":"Field","name":{"kind":"Name","value":"newPath"}}]}},{"kind":"Field","name":{"kind":"Name","value":"rawStatus"}},{"kind":"Field","name":{"kind":"Name","value":"lastUpdatedTime"}},{"kind":"Field","name":{"kind":"Name","value":"chapters"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"name"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"texts"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"language"}},{"kind":"Field","name":{"kind":"Name","value":"text"}}]}}]}}]}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"pageInfo"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasNextPage"}},{"kind":"Field","name":{"kind":"Name","value":"endCursor"}}]}}]}}]}}]} as unknown as DocumentNode<NovelsQuery, NovelsQueryVariables>;
export type NovelQuery = { novels: { nodes: Array<{ id: any, name: string, description: string, url: string, rawLanguage: Language, rawStatus: NovelStatus, statusOverride: NovelStatus | null, externalId: string, createdTime: any, lastUpdatedTime: any, author: { id: any, name: string, externalUrl: string | null }, source: { id: any, name: string, key: string, url: string }, coverImage: { newPath: string | null } | null, tags: Array<{ id: any, key: string, displayName: string, tagType: TagType }>, chapters: Array<{ id: any, order: any, name: string, lastUpdatedTime: any }> }> | null } | null };
export type NovelsQueryVariables = Exact<{
first?: InputMaybe<Scalars['Int']['input']>;
after?: InputMaybe<Scalars['String']['input']>;
where?: InputMaybe<NovelDtoFilterInput>;
}>;
export type NovelsQuery = { novels: { edges: Array<{ cursor: string, node: { id: any, url: string, name: string, description: string, rawStatus: NovelStatus, lastUpdatedTime: any, coverImage: { newPath: string | null } | null, chapters: Array<{ order: any, name: string }>, tags: Array<{ key: string, displayName: string }> } }> | null, pageInfo: { hasNextPage: boolean, endCursor: string | null } } | null };
export const GetChapterDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetChapter"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"novelId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"UnsignedInt"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"chapterOrder"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"UnsignedInt"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"chapter"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"novelId"},"value":{"kind":"Variable","name":{"kind":"Name","value":"novelId"}}},{"kind":"Argument","name":{"kind":"Name","value":"chapterOrder"},"value":{"kind":"Variable","name":{"kind":"Name","value":"chapterOrder"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"body"}},{"kind":"Field","name":{"kind":"Name","value":"url"}},{"kind":"Field","name":{"kind":"Name","value":"revision"}},{"kind":"Field","name":{"kind":"Name","value":"createdTime"}},{"kind":"Field","name":{"kind":"Name","value":"lastUpdatedTime"}},{"kind":"Field","name":{"kind":"Name","value":"images"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"newPath"}}]}},{"kind":"Field","name":{"kind":"Name","value":"novelId"}},{"kind":"Field","name":{"kind":"Name","value":"novelName"}},{"kind":"Field","name":{"kind":"Name","value":"totalChapters"}},{"kind":"Field","name":{"kind":"Name","value":"prevChapterOrder"}},{"kind":"Field","name":{"kind":"Name","value":"nextChapterOrder"}}]}}]}}]} as unknown as DocumentNode<GetChapterQuery, GetChapterQueryVariables>;
export const NovelDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"Novel"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"id"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"UnsignedInt"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"novels"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"where"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"id"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"eq"},"value":{"kind":"Variable","name":{"kind":"Name","value":"id"}}}]}}]}},{"kind":"Argument","name":{"kind":"Name","value":"first"},"value":{"kind":"IntValue","value":"1"}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"nodes"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"url"}},{"kind":"Field","name":{"kind":"Name","value":"rawLanguage"}},{"kind":"Field","name":{"kind":"Name","value":"rawStatus"}},{"kind":"Field","name":{"kind":"Name","value":"statusOverride"}},{"kind":"Field","name":{"kind":"Name","value":"externalId"}},{"kind":"Field","name":{"kind":"Name","value":"createdTime"}},{"kind":"Field","name":{"kind":"Name","value":"lastUpdatedTime"}},{"kind":"Field","name":{"kind":"Name","value":"author"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"externalUrl"}}]}},{"kind":"Field","name":{"kind":"Name","value":"source"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"key"}},{"kind":"Field","name":{"kind":"Name","value":"url"}}]}},{"kind":"Field","name":{"kind":"Name","value":"coverImage"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"newPath"}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"key"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}},{"kind":"Field","name":{"kind":"Name","value":"tagType"}}]}},{"kind":"Field","name":{"kind":"Name","value":"chapters"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"lastUpdatedTime"}}]}}]}}]}}]}}]} as unknown as DocumentNode<NovelQuery, NovelQueryVariables>;
export const NovelsDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"Novels"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"first"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"after"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"where"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"NovelDtoFilterInput"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"novels"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"first"},"value":{"kind":"Variable","name":{"kind":"Name","value":"first"}}},{"kind":"Argument","name":{"kind":"Name","value":"after"},"value":{"kind":"Variable","name":{"kind":"Name","value":"after"}}},{"kind":"Argument","name":{"kind":"Name","value":"where"},"value":{"kind":"Variable","name":{"kind":"Name","value":"where"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"edges"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"cursor"}},{"kind":"Field","name":{"kind":"Name","value":"node"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"url"}},{"kind":"Field","name":{"kind":"Name","value":"name"}},{"kind":"Field","name":{"kind":"Name","value":"description"}},{"kind":"Field","name":{"kind":"Name","value":"coverImage"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"newPath"}}]}},{"kind":"Field","name":{"kind":"Name","value":"rawStatus"}},{"kind":"Field","name":{"kind":"Name","value":"lastUpdatedTime"}},{"kind":"Field","name":{"kind":"Name","value":"chapters"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"order"}},{"kind":"Field","name":{"kind":"Name","value":"name"}}]}},{"kind":"Field","name":{"kind":"Name","value":"tags"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"key"}},{"kind":"Field","name":{"kind":"Name","value":"displayName"}}]}}]}}]}},{"kind":"Field","name":{"kind":"Name","value":"pageInfo"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"hasNextPage"}},{"kind":"Field","name":{"kind":"Name","value":"endCursor"}}]}}]}}]}}]} as unknown as DocumentNode<NovelsQuery, NovelsQueryVariables>;