Reduce requested updater data in queries

This commit is contained in:
schroda
2024-07-06 15:10:55 +02:00
parent 83be995fb8
commit cb978d9a0e
6 changed files with 92 additions and 128 deletions

View File

@@ -45,15 +45,6 @@ export const FULL_CATEGORY_FIELDS = gql`
}
`;
export const UPDATER_CATEGORY_FIELDS = gql`
fragment UPDATER_CATEGORY_FIELDS on CategoryType {
id
name
includeInUpdate
includeInDownload
}
`;
export const FULL_TRACK_RECORD_FIELDS = gql`
${TRACK_RECORD_BIND_FIELDS}
${TRACKER_BIND_FIELDS}
@@ -177,14 +168,6 @@ export const FULL_MANGA_FIELDS = gql`
}
`;
export const UPDATER_MANGA_FIELDS = gql`
fragment UPDATER_MANGA_FIELDS on MangaType {
id
title
thumbnailUrl
}
`;
export const FULL_EXTENSION_FIELDS = gql`
fragment FULL_EXTENSION_FIELDS on ExtensionType {
apkName
@@ -224,96 +207,6 @@ export const FULL_DOWNLOAD_STATUS = gql`
}
`;
export const PARTIAL_UPDATER_STATUS = gql`
fragment PARTIAL_UPDATER_STATUS on UpdateStatus {
isRunning
}
`;
export const FULL_UPDATER_STATUS = gql`
${UPDATER_MANGA_FIELDS}
${BASE_MANGA_FIELDS}
${PARTIAL_UPDATER_STATUS}
${UPDATER_CATEGORY_FIELDS}
fragment FULL_UPDATER_STATUS on UpdateStatus {
...PARTIAL_UPDATER_STATUS
completeJobs {
mangas {
nodes {
...BASE_MANGA_FIELDS
unreadCount
downloadCount
chapters {
totalCount
}
firstUnreadChapter {
id
chapterNumber
sourceOrder
}
latestUploadedChapter {
id
uploadDate
}
latestFetchedChapter {
id
fetchedAt
}
}
totalCount
}
}
failedJobs {
mangas {
nodes {
...UPDATER_MANGA_FIELDS
}
totalCount
}
}
pendingJobs {
mangas {
nodes {
...UPDATER_MANGA_FIELDS
}
totalCount
}
}
runningJobs {
mangas {
nodes {
...UPDATER_MANGA_FIELDS
}
totalCount
}
}
skippedJobs {
mangas {
nodes {
...UPDATER_MANGA_FIELDS
}
totalCount
}
}
updatingCategories {
categories {
nodes {
...UPDATER_CATEGORY_FIELDS
}
totalCount
}
}
skippedCategories {
categories {
nodes {
...UPDATER_CATEGORY_FIELDS
}
totalCount
}
}
}
`;
export const ABOUT_WEBUI = gql`
fragment ABOUT_WEBUI on AboutWebUI {
channel

View File

@@ -0,0 +1,66 @@
/*
* Copyright (C) Contributors to the Suwayomi project
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
*/
import gql from 'graphql-tag';
import { FULL_MANGA_FIELDS } from '@/lib/graphql/Fragments.ts';
const UPDATER_MANGA_FIELDS = gql`
fragment UPDATER_MANGA_FIELDS on MangaType {
id
title
thumbnailUrl
}
`;
export const UPDATER_SUBSCRIPTION_FIELDS = gql`
${UPDATER_MANGA_FIELDS}
${FULL_MANGA_FIELDS}
fragment UPDATER_SUBSCRIPTION_FIELDS on UpdateStatus {
isRunning
completeJobs {
mangas {
totalCount
nodes {
...FULL_MANGA_FIELDS
}
}
}
failedJobs {
mangas {
totalCount
nodes {
...UPDATER_MANGA_FIELDS
}
}
}
pendingJobs {
mangas {
totalCount
nodes {
...UPDATER_MANGA_FIELDS
}
}
}
runningJobs {
mangas {
totalCount
nodes {
...UPDATER_MANGA_FIELDS
}
}
}
}
`;
export const UPDATER_START_STOP_FIELDS = gql`
fragment UPDATER_START_STOP_FIELDS on UpdateStatus {
isRunning
}
`;

File diff suppressed because one or more lines are too long

View File

@@ -7,27 +7,29 @@
*/
import gql from 'graphql-tag';
import { PARTIAL_UPDATER_STATUS } from '@/lib/graphql/Fragments';
import { UPDATER_START_STOP_FIELDS } from '@/lib/graphql/fragments/UpdaterFragments.ts';
export const UPDATE_CATEGORY_MANGAS = gql`
${PARTIAL_UPDATER_STATUS}
${UPDATER_START_STOP_FIELDS}
mutation UPDATE_CATEGORY_MANGAS($input: UpdateCategoryMangaInput!) {
updateCategoryManga(input: $input) {
clientMutationId
updateStatus {
...PARTIAL_UPDATER_STATUS
...UPDATER_START_STOP_FIELDS
}
}
}
`;
export const UPDATE_LIBRARY_MANGAS = gql`
${PARTIAL_UPDATER_STATUS}
${UPDATER_START_STOP_FIELDS}
mutation UPDATE_LIBRARY_MANGAS($input: UpdateLibraryMangaInput = {}) {
updateLibraryManga(input: $input) {
clientMutationId
updateStatus {
...PARTIAL_UPDATER_STATUS
...UPDATER_START_STOP_FIELDS
}
}
}

View File

@@ -7,13 +7,14 @@
*/
import gql from 'graphql-tag';
import { FULL_UPDATER_STATUS } from '@/lib/graphql/Fragments';
import { UPDATER_SUBSCRIPTION_FIELDS } from '@/lib/graphql/fragments/UpdaterFragments.ts';
export const GET_UPDATE_STATUS = gql`
${FULL_UPDATER_STATUS}
${UPDATER_SUBSCRIPTION_FIELDS}
query GET_UPDATE_STATUS {
updateStatus {
...FULL_UPDATER_STATUS
...UPDATER_SUBSCRIPTION_FIELDS
}
}
`;

View File

@@ -7,13 +7,14 @@
*/
import gql from 'graphql-tag';
import { FULL_UPDATER_STATUS } from '@/lib/graphql/Fragments';
import { UPDATER_SUBSCRIPTION_FIELDS } from '@/lib/graphql/fragments/UpdaterFragments.ts';
export const UPDATER_SUBSCRIPTION = gql`
${FULL_UPDATER_STATUS}
${UPDATER_SUBSCRIPTION_FIELDS}
subscription UPDATER_SUBSCRIPTION {
updateStatusChanged {
...FULL_UPDATER_STATUS
...UPDATER_SUBSCRIPTION_FIELDS
}
}
`;