Skip to content

Commit

Permalink
unreadCount
Browse files Browse the repository at this point in the history
downloadCount
update
  • Loading branch information
Robonau committed Sep 4, 2023
1 parent 1deec01 commit d7a2ae2
Show file tree
Hide file tree
Showing 4 changed files with 502 additions and 55 deletions.
222 changes: 213 additions & 9 deletions schema.graphql
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ type CheckBoxPreference {
summary: String
title: String!
}
type CheckForUpdatesPayload {
type CheckForServerUpdatesPayload {
channel: String!
tag: String!
url: String!
Expand Down Expand Up @@ -254,6 +254,13 @@ type GroupFilter {
type HeaderFilter {
name: String!
}
type InstallExternalExtensionPayload {
clientMutationId: String
extension: ExtensionType!
}
type LastUpdateTimestampPayload {
timestamp: LongString!
}
type ListPreference {
currentValue: String
default: String
Expand Down Expand Up @@ -300,8 +307,11 @@ type MangaType {
categories: CategoryNodeList!
chapters: ChapterNodeList!
chaptersAge: LongString
downloadCount: Int!
lastReadChapter: ChapterType
meta: [MangaMetaType!]!
source: SourceType
unreadCount: Int!
}
type MetaEdge implements Edge {
cursor: Cursor!
Expand Down Expand Up @@ -347,15 +357,19 @@ type Mutation {
startDownloader(input: StartDownloaderInput!): StartDownloaderPayload!
stopDownloader(input: StopDownloaderInput!): StopDownloaderPayload!
fetchExtensions(input: FetchExtensionsInput!): FetchExtensionsPayload!
installExternalExtension(input: InstallExternalExtensionInput!): InstallExternalExtensionPayload!
updateExtension(input: UpdateExtensionInput!): UpdateExtensionPayload!
updateExtensions(input: UpdateExtensionsInput!): UpdateExtensionsPayload!
updateWebUI(input: WebUIUpdateInput!): WebUIUpdatePayload!
deleteMangaMeta(input: DeleteMangaMetaInput!): DeleteMangaMetaPayload!
fetchManga(input: FetchMangaInput!): FetchMangaPayload!
setMangaMeta(input: SetMangaMetaInput!): SetMangaMetaPayload!
updateManga(input: UpdateMangaInput!): UpdateMangaPayload!
updateMangas(input: UpdateMangasInput!): UpdateMangasPayload!
deleteGlobalMeta(input: DeleteGlobalMetaInput!): DeleteGlobalMetaPayload!
setGlobalMeta(input: SetGlobalMetaInput!): SetGlobalMetaPayload!
resetSettings(input: ResetSettingsInput!): ResetSettingsPayload!
setSettings(input: SetSettingsInput!): SetSettingsPayload!
fetchSourceManga(input: FetchSourceMangaInput!): FetchSourceMangaPayload!
updateSourcePreference(input: UpdateSourcePreferenceInput!): UpdateSourcePreferencePayload!
updateCategoryManga(input: UpdateCategoryMangaInput!): UpdateCategoryMangaPayload!
Expand All @@ -372,30 +386,69 @@ type PageInfo {
"When paginating backwards, the cursor to continue."
startCursor: Cursor
}
type PartialSettingsType implements Settings {
autoDownloadNewChapters: Boolean
backupInterval: Int
backupPath: String
backupTTL: Int
backupTime: String
basicAuthEnabled: Boolean
basicAuthPassword: String
basicAuthUsername: String
debugLogsEnabled: Boolean
downloadAsCbz: Boolean
downloadsPath: String
electronPath: String
excludeCompleted: Boolean
excludeNotStarted: Boolean
excludeUnreadChapters: Boolean
globalUpdateInterval: Float
initialOpenInBrowserEnabled: Boolean
ip: String
localSourcePath: String
maxSourcesInParallel: Int
port: Int
socksProxyEnabled: Boolean
socksProxyHost: String
socksProxyPort: String
systemTrayEnabled: Boolean
webUIChannel: WebUIChannel
webUIFlavor: WebUIFlavor
webUIInterface: WebUIInterface
webUIUpdateCheckInterval: Float
}
type Query {
restoreStatus: BackupRestoreStatus!
validateBackup(input: ValidateBackupInput!): ValidateBackupResult!
categories(condition: CategoryConditionInput, filter: CategoryFilterInput, orderBy: CategoryOrderBy, orderByType: SortOrder, before: Cursor, after: Cursor, first: Int, last: Int, offset: Int): CategoryNodeList!
category(id: Int!): CategoryType
chapter(id: Int!): ChapterType
category(id: Int!): CategoryType!
chapter(id: Int!): ChapterType!
chapters(condition: ChapterConditionInput, filter: ChapterFilterInput, orderBy: ChapterOrderBy, orderByType: SortOrder, before: Cursor, after: Cursor, first: Int, last: Int, offset: Int): ChapterNodeList!
downloadStatus: DownloadStatus!
extension(pkgName: String!): ExtensionType
extension(pkgName: String!): ExtensionType!
extensions(condition: ExtensionConditionInput, filter: ExtensionFilterInput, orderBy: ExtensionOrderBy, orderByType: SortOrder, before: Cursor, after: Cursor, first: Int, last: Int, offset: Int): ExtensionNodeList!
about: AboutPayload!
checkForUpdates: [CheckForUpdatesPayload!]!
manga(id: Int!): MangaType
checkForServerUpdates: [CheckForServerUpdatesPayload!]!
checkForWebUIUpdate: WebUIUpdateInfo!
getWebUIUpdateStatus: WebUIUpdateStatus!
manga(id: Int!): MangaType!
mangas(condition: MangaConditionInput, filter: MangaFilterInput, orderBy: MangaOrderBy, orderByType: SortOrder, before: Cursor, after: Cursor, first: Int, last: Int, offset: Int): MangaNodeList!
meta(key: String!): GlobalMetaType
meta(key: String!): GlobalMetaType!
metas(condition: MetaConditionInput, filter: MetaFilterInput, orderBy: MetaOrderBy, orderByType: SortOrder, before: Cursor, after: Cursor, first: Int, last: Int, offset: Int): GlobalMetaNodeList!
source(id: LongString!): SourceType
settings: SettingsType!
source(id: LongString!): SourceType!
sources(condition: SourceConditionInput, filter: SourceFilterInput, orderBy: SourceOrderBy, orderByType: SortOrder, before: Cursor, after: Cursor, first: Int, last: Int, offset: Int): SourceNodeList!
lastUpdateTimestamp: LastUpdateTimestampPayload!
updateStatus: UpdateStatus!
}
type ReorderChapterDownloadPayload {
clientMutationId: String
downloadStatus: DownloadStatus!
}
type ResetSettingsPayload {
clientMutationId: String
settings: SettingsType!
}
type RestoreBackupPayload {
clientMutationId: String
status: BackupRestoreStatus!
Expand Down Expand Up @@ -424,6 +477,41 @@ type SetMangaMetaPayload {
clientMutationId: String
meta: MangaMetaType!
}
type SetSettingsPayload {
clientMutationId: String
settings: SettingsType!
}
type SettingsType implements Settings {
autoDownloadNewChapters: Boolean!
backupInterval: Int!
backupPath: String!
backupTTL: Int!
backupTime: String!
basicAuthEnabled: Boolean!
basicAuthPassword: String!
basicAuthUsername: String!
debugLogsEnabled: Boolean!
downloadAsCbz: Boolean!
downloadsPath: String!
electronPath: String!
excludeCompleted: Boolean!
excludeNotStarted: Boolean!
excludeUnreadChapters: Boolean!
globalUpdateInterval: Float!
initialOpenInBrowserEnabled: Boolean!
ip: String!
localSourcePath: String!
maxSourcesInParallel: Int!
port: Int!
socksProxyEnabled: Boolean!
socksProxyHost: String!
socksProxyPort: String!
systemTrayEnabled: Boolean!
webUIChannel: WebUIChannel!
webUIFlavor: WebUIFlavor!
webUIInterface: WebUIInterface!
webUIUpdateCheckInterval: Float!
}
type SortFilter {
default: SortSelection
name: String!
Expand Down Expand Up @@ -467,6 +555,7 @@ type StopDownloaderPayload {
}
type Subscription {
downloadChanged: DownloadStatus!
webUIUpdateStatusChange: WebUIUpdateStatus!
updateStatusChanged: UpdateStatus!
}
type SwitchPreference {
Expand Down Expand Up @@ -546,6 +635,12 @@ type UpdateStatus {
isRunning: Boolean!
pendingJobs: UpdateStatusType!
runningJobs: UpdateStatusType!
skippedCategories: UpdateStatusCategoryType!
skippedJobs: UpdateStatusType!
updatingCategories: UpdateStatusCategoryType!
}
type UpdateStatusCategoryType {
categories: CategoryNodeList!
}
type UpdateStatusType {
mangas: MangaNodeList!
Expand All @@ -560,6 +655,20 @@ type ValidateBackupSource {
id: LongString!
name: String!
}
type WebUIUpdateInfo {
channel: String!
tag: String!
updateAvailable: Boolean!
}
type WebUIUpdatePayload {
clientMutationId: String
updateStatus: WebUIUpdateStatus!
}
type WebUIUpdateStatus {
info: WebUIUpdateInfo!
progress: Int!
state: UpdateState!
}
interface Edge {
"A cursor for use in pagination."
cursor: Cursor!
Expand All @@ -580,8 +689,39 @@ interface NodeList {
"The count of all nodes you could get from the connection."
totalCount: Int!
}
interface Settings {
autoDownloadNewChapters: Boolean
backupInterval: Int
backupPath: String
backupTTL: Int
backupTime: String
basicAuthEnabled: Boolean
basicAuthPassword: String
basicAuthUsername: String
debugLogsEnabled: Boolean
downloadAsCbz: Boolean
downloadsPath: String
electronPath: String
excludeCompleted: Boolean
excludeNotStarted: Boolean
excludeUnreadChapters: Boolean
globalUpdateInterval: Float
initialOpenInBrowserEnabled: Boolean
ip: String
localSourcePath: String
maxSourcesInParallel: Int
port: Int
socksProxyEnabled: Boolean
socksProxyHost: String
socksProxyPort: String
systemTrayEnabled: Boolean
webUIChannel: WebUIChannel
webUIFlavor: WebUIFlavor
webUIInterface: WebUIInterface
webUIUpdateCheckInterval: Float
}
union Filter = CheckBoxFilter | GroupFilter | HeaderFilter | SelectFilter | SeparatorFilter | SortFilter | TextFilter | TriStateFilter
union Node = CategoryMetaType | CategoryType | ChapterMetaType | ChapterType | DownloadType | ExtensionType | GlobalMetaType | MangaMetaType | MangaType | SourceType
union Node = CategoryMetaType | CategoryType | ChapterMetaType | ChapterType | DownloadType | ExtensionType | GlobalMetaType | MangaMetaType | MangaType | PartialSettingsType | SettingsType | SourceType
union Preference = CheckBoxPreference | EditTextPreference | ListPreference | MultiSelectListPreference | SwitchPreference
enum BackupRestoreState {
IDLE
Expand Down Expand Up @@ -664,6 +804,25 @@ enum TriState {
INCLUDE
EXCLUDE
}
enum UpdateState {
STOPPED
DOWNLOADING
FINISHED
ERROR
}
enum WebUIChannel {
BUNDLED
STABLE
PREVIEW
}
enum WebUIFlavor {
WEBUI
CUSTOM
}
enum WebUIInterface {
BROWSER
ELECTRON
}
input BooleanFilterInput {
distinctFrom: Boolean
equalTo: Boolean
Expand Down Expand Up @@ -882,6 +1041,10 @@ input GlobalMetaTypeInput {
key: String!
value: String!
}
input InstallExternalExtensionInput {
clientMutationId: String
extensionFile: Upload!
}
input IntFilterInput {
distinctFrom: Int
equalTo: Int
Expand Down Expand Up @@ -975,11 +1138,45 @@ input MetaFilterInput {
or: [MetaFilterInput!]
value: StringFilterInput
}
input PartialSettingsTypeInput {
autoDownloadNewChapters: Boolean
backupInterval: Int
backupPath: String
backupTTL: Int
backupTime: String
basicAuthEnabled: Boolean
basicAuthPassword: String
basicAuthUsername: String
debugLogsEnabled: Boolean
downloadAsCbz: Boolean
downloadsPath: String
electronPath: String
excludeCompleted: Boolean
excludeNotStarted: Boolean
excludeUnreadChapters: Boolean
globalUpdateInterval: Float
initialOpenInBrowserEnabled: Boolean
ip: String
localSourcePath: String
maxSourcesInParallel: Int
port: Int
socksProxyEnabled: Boolean
socksProxyHost: String
socksProxyPort: String
systemTrayEnabled: Boolean
webUIChannel: WebUIChannel
webUIFlavor: WebUIFlavor
webUIInterface: WebUIInterface
webUIUpdateCheckInterval: Float
}
input ReorderChapterDownloadInput {
chapterId: Int!
clientMutationId: String
to: Int!
}
input ResetSettingsInput {
clientMutationId: String
}
input RestoreBackupInput {
backup: Upload!
clientMutationId: String
Expand All @@ -1000,6 +1197,10 @@ input SetMangaMetaInput {
clientMutationId: String
meta: MangaMetaTypeInput!
}
input SetSettingsInput {
clientMutationId: String
settings: PartialSettingsTypeInput!
}
input SortSelectionInput {
ascending: Boolean!
index: Int!
Expand Down Expand Up @@ -1166,6 +1367,9 @@ input UpdateStopInput {
input ValidateBackupInput {
backup: Upload!
}
input WebUIUpdateInput {
clientMutationId: String
}
"Exposes a URL that specifies the behaviour of this scalar."
directive @specifiedBy(
"The URL that specifies the behaviour of this scalar."
Expand Down
10 changes: 5 additions & 5 deletions src/gql/Queries.gql
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ query category($id: Int!) {
title
inLibrary
thumbnailUrl
unreadCount
downloadCount
lastReadChapter {
lastReadAt
}
chapters {
totalCount
nodes {
isDownloaded
isRead
lastReadAt
}
}
}
}
Expand Down
Loading

0 comments on commit d7a2ae2

Please sign in to comment.