Use gql for "backups"
This commit is contained in:
@@ -26,7 +26,6 @@ import {
|
|||||||
} from '@apollo/client';
|
} from '@apollo/client';
|
||||||
import { OperationVariables } from '@apollo/client/core';
|
import { OperationVariables } from '@apollo/client/core';
|
||||||
import { useEffect, useRef, useState } from 'react';
|
import { useEffect, useRef, useState } from 'react';
|
||||||
import { BackupValidationResult } from '@/typings.ts';
|
|
||||||
import { HttpMethod as DefaultHttpMethod, IRestClient, RestClient } from '@/lib/requests/client/RestClient.ts';
|
import { HttpMethod as DefaultHttpMethod, IRestClient, RestClient } from '@/lib/requests/client/RestClient.ts';
|
||||||
import storage from '@/util/localStorage.tsx';
|
import storage from '@/util/localStorage.tsx';
|
||||||
import { GraphQLClient } from '@/lib/requests/client/GraphQLClient.ts';
|
import { GraphQLClient } from '@/lib/requests/client/GraphQLClient.ts';
|
||||||
@@ -91,6 +90,8 @@ import {
|
|||||||
InstallExternalExtensionMutationVariables,
|
InstallExternalExtensionMutationVariables,
|
||||||
ReorderChapterDownloadMutation,
|
ReorderChapterDownloadMutation,
|
||||||
ReorderChapterDownloadMutationVariables,
|
ReorderChapterDownloadMutationVariables,
|
||||||
|
RestoreBackupMutation,
|
||||||
|
RestoreBackupMutationVariables,
|
||||||
SetCategoryMetadataMutation,
|
SetCategoryMetadataMutation,
|
||||||
SetCategoryMetadataMutationVariables,
|
SetCategoryMetadataMutationVariables,
|
||||||
SetChapterMetadataMutation,
|
SetChapterMetadataMutation,
|
||||||
@@ -130,6 +131,8 @@ import {
|
|||||||
UpdateMangaPatchInput,
|
UpdateMangaPatchInput,
|
||||||
UpdateSourcePreferencesMutation,
|
UpdateSourcePreferencesMutation,
|
||||||
UpdateSourcePreferencesMutationVariables,
|
UpdateSourcePreferencesMutationVariables,
|
||||||
|
ValidateBackupQuery,
|
||||||
|
ValidateBackupQueryVariables,
|
||||||
} from '@/lib/graphql/generated/graphql.ts';
|
} from '@/lib/graphql/generated/graphql.ts';
|
||||||
import { GET_GLOBAL_METADATA, GET_GLOBAL_METADATAS } from '@/lib/graphql/queries/GlobalMetadataQuery.ts';
|
import { GET_GLOBAL_METADATA, GET_GLOBAL_METADATAS } from '@/lib/graphql/queries/GlobalMetadataQuery.ts';
|
||||||
import { SET_GLOBAL_METADATA } from '@/lib/graphql/mutations/GlobalMetadataMutation.ts';
|
import { SET_GLOBAL_METADATA } from '@/lib/graphql/mutations/GlobalMetadataMutation.ts';
|
||||||
@@ -185,6 +188,8 @@ import {
|
|||||||
} from '@/lib/graphql/mutations/UpdaterMutation.ts';
|
} from '@/lib/graphql/mutations/UpdaterMutation.ts';
|
||||||
import { GET_UPDATE_STATUS } from '@/lib/graphql/queries/UpdaterQuery.ts';
|
import { GET_UPDATE_STATUS } from '@/lib/graphql/queries/UpdaterQuery.ts';
|
||||||
import { CustomCache } from '@/lib/requests/CustomCache.ts';
|
import { CustomCache } from '@/lib/requests/CustomCache.ts';
|
||||||
|
import { RESTORE_BACKUP } from '@/lib/graphql/mutations/BackupMutation.ts';
|
||||||
|
import { VALIDATE_BACKUP } from '@/lib/graphql/queries/BackupQuery.ts';
|
||||||
|
|
||||||
enum SWRHttpMethod {
|
enum SWRHttpMethod {
|
||||||
SWR_GET,
|
SWR_GET,
|
||||||
@@ -1615,18 +1620,23 @@ export class RequestManager {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public restoreBackupFile(file: File): AbortableAxiosResponse {
|
public restoreBackupFile(
|
||||||
return this.doRequest(HttpMethod.POST, 'backup/import/file', { formData: { 'backup.proto.gz': file } });
|
file: File,
|
||||||
|
options?: MutationOptions<RestoreBackupMutation, RestoreBackupMutationVariables>,
|
||||||
|
): AbortableApolloMutationResponse<RestoreBackupMutation> {
|
||||||
|
return this.doRequestNew<RestoreBackupMutation, RestoreBackupMutationVariables>(
|
||||||
|
GQLMethod.MUTATION,
|
||||||
|
RESTORE_BACKUP,
|
||||||
|
{ input: { backup: file } },
|
||||||
|
options,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public useValidateBackupFile(
|
public useValidateBackupFile(
|
||||||
file: File,
|
file: File,
|
||||||
swrOptions?: SWROptions<BackupValidationResult>,
|
options?: QueryOptions<ValidateBackupQueryVariables, ValidateBackupQuery>,
|
||||||
): AbortableSWRResponse<BackupValidationResult> {
|
): AbortabaleApolloQueryResponse<ValidateBackupQuery> {
|
||||||
return this.doRequest(HttpMethod.SWR_POST, 'backup/validate/file', {
|
return this.doRequestNew(GQLMethod.QUERY, VALIDATE_BACKUP, { input: { backup: file } }, options);
|
||||||
formData: { 'backup.proto.gz': file },
|
|
||||||
swrOptions,
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public getExportBackupUrl(): string {
|
public getExportBackupUrl(): string {
|
||||||
|
|||||||
Reference in New Issue
Block a user