197 lines
5.0 KiB
TypeScript
197 lines
5.0 KiB
TypeScript
/*
|
|
* 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 { MANGA_META_FIELDS, MANGA_SCREEN_FIELDS } from '@/lib/graphql/fragments/MangaFragments.ts';
|
|
|
|
export const DELETE_MANGA_METADATA = gql`
|
|
${MANGA_META_FIELDS}
|
|
|
|
mutation DELETE_MANGA_METADATA($input: DeleteMangaMetaInput!) {
|
|
deleteMangaMeta(input: $input) {
|
|
meta {
|
|
...MANGA_META_FIELDS
|
|
}
|
|
}
|
|
}
|
|
`;
|
|
|
|
// makes the server fetch and return the manga
|
|
export const GET_MANGA_FETCH = gql`
|
|
${MANGA_SCREEN_FIELDS}
|
|
|
|
mutation GET_MANGA_FETCH($input: FetchMangaInput!) {
|
|
fetchManga(input: $input) {
|
|
manga {
|
|
...MANGA_SCREEN_FIELDS
|
|
}
|
|
}
|
|
}
|
|
`;
|
|
|
|
// makes the server fetch and return the manga
|
|
export const GET_MANGA_TO_MIGRATE_TO_FETCH = gql`
|
|
mutation GET_MANGA_TO_MIGRATE_TO_FETCH(
|
|
$id: Int!
|
|
$migrateChapters: Boolean!
|
|
$migrateCategories: Boolean!
|
|
$migrateTracking: Boolean!
|
|
) {
|
|
fetchManga(input: { id: $id }) {
|
|
manga {
|
|
id
|
|
title
|
|
inLibrary
|
|
categories @include(if: $migrateCategories) {
|
|
nodes {
|
|
id
|
|
}
|
|
}
|
|
trackRecords @include(if: $migrateTracking) {
|
|
nodes {
|
|
id
|
|
remoteId
|
|
trackerId
|
|
}
|
|
}
|
|
}
|
|
}
|
|
fetchChapters(input: { mangaId: $id }) @include(if: $migrateChapters) {
|
|
chapters {
|
|
id
|
|
manga {
|
|
id
|
|
}
|
|
chapterNumber
|
|
isRead
|
|
isDownloaded
|
|
isBookmarked
|
|
}
|
|
}
|
|
}
|
|
`;
|
|
|
|
export const SET_MANGA_METADATA = gql`
|
|
${MANGA_META_FIELDS}
|
|
|
|
mutation SET_MANGA_METADATA($input: SetMangaMetaInput!) {
|
|
setMangaMeta(input: $input) {
|
|
meta {
|
|
...MANGA_META_FIELDS
|
|
}
|
|
}
|
|
}
|
|
`;
|
|
|
|
export const UPDATE_MANGA = gql`
|
|
mutation UPDATE_MANGA(
|
|
$input: UpdateMangaInput!
|
|
$updateCategoryInput: UpdateMangaCategoriesInput!
|
|
$updateCategories: Boolean!
|
|
) {
|
|
updateMangaCategories(input: $updateCategoryInput) @include(if: $updateCategories) {
|
|
manga {
|
|
id
|
|
categories {
|
|
nodes {
|
|
id
|
|
mangas {
|
|
totalCount
|
|
}
|
|
}
|
|
totalCount
|
|
}
|
|
}
|
|
}
|
|
updateManga(input: $input) {
|
|
manga {
|
|
id
|
|
inLibrary
|
|
inLibraryAt
|
|
}
|
|
}
|
|
}
|
|
`;
|
|
|
|
export const UPDATE_MANGAS = gql`
|
|
mutation UPDATE_MANGAS(
|
|
$input: UpdateMangasInput!
|
|
$updateCategoryInput: UpdateMangasCategoriesInput!
|
|
$updateCategories: Boolean!
|
|
) {
|
|
updateMangasCategories(input: $updateCategoryInput) @include(if: $updateCategories) {
|
|
mangas {
|
|
id
|
|
categories {
|
|
nodes {
|
|
id
|
|
mangas {
|
|
totalCount
|
|
}
|
|
}
|
|
totalCount
|
|
}
|
|
}
|
|
}
|
|
updateMangas(input: $input) {
|
|
mangas {
|
|
id
|
|
inLibrary
|
|
inLibraryAt
|
|
categories {
|
|
nodes {
|
|
id
|
|
mangas {
|
|
totalCount
|
|
}
|
|
}
|
|
totalCount
|
|
}
|
|
}
|
|
}
|
|
}
|
|
`;
|
|
|
|
export const UPDATE_MANGA_CATEGORIES = gql`
|
|
mutation UPDATE_MANGA_CATEGORIES($input: UpdateMangaCategoriesInput!) {
|
|
updateMangaCategories(input: $input) {
|
|
manga {
|
|
id
|
|
categories {
|
|
nodes {
|
|
id
|
|
mangas {
|
|
totalCount
|
|
}
|
|
}
|
|
totalCount
|
|
}
|
|
}
|
|
}
|
|
}
|
|
`;
|
|
|
|
export const UPDATE_MANGAS_CATEGORIES = gql`
|
|
mutation UPDATE_MANGAS_CATEGORIES($input: UpdateMangasCategoriesInput!) {
|
|
updateMangasCategories(input: $input) {
|
|
mangas {
|
|
id
|
|
categories {
|
|
nodes {
|
|
id
|
|
mangas {
|
|
totalCount
|
|
}
|
|
}
|
|
totalCount
|
|
}
|
|
}
|
|
}
|
|
}
|
|
`;
|