Remove apollo-helpers codegen-formatting
This commit is contained in:
@@ -1,9 +1,4 @@
|
|||||||
import {FieldPolicy, FieldReadFunction, Reference, TypePolicies, TypePolicy} from '@apollo/client/cache';
|
import { FieldPolicy, FieldReadFunction, TypePolicies, TypePolicy } from '@apollo/client/cache';
|
||||||
import {
|
|
||||||
GetChaptersMangaQuery, GetDownloadStatusQueryVariables, GetGlobalMetadataQueryVariables,
|
|
||||||
GetMangaScreenQueryVariables, GetSourceBrowseQueryVariables, GetUpdateStatusQueryVariables, GetWebuiUpdateStatusQueryVariables,
|
|
||||||
} from "@/lib/graphql/generated/graphql.ts";
|
|
||||||
import {FieldFunctionOptions} from "@apollo/client/cache";
|
|
||||||
export type AboutServerPayloadKeySpecifier = ('buildTime' | 'buildType' | 'discord' | 'github' | 'name' | 'revision' | 'version' | AboutServerPayloadKeySpecifier)[];
|
export type AboutServerPayloadKeySpecifier = ('buildTime' | 'buildType' | 'discord' | 'github' | 'name' | 'revision' | 'version' | AboutServerPayloadKeySpecifier)[];
|
||||||
export type AboutServerPayloadFieldPolicy = {
|
export type AboutServerPayloadFieldPolicy = {
|
||||||
buildTime?: FieldPolicy<any> | FieldReadFunction<any>,
|
buildTime?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
@@ -734,24 +729,24 @@ export type QueryFieldPolicy = {
|
|||||||
categories?: FieldPolicy<any> | FieldReadFunction<any>,
|
categories?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
category?: FieldPolicy<any> | FieldReadFunction<any>,
|
category?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
chapter?: FieldPolicy<any> | FieldReadFunction<any>,
|
chapter?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
chapters?: FieldPolicy<GetChaptersMangaQuery['chapters']> | FieldReadFunction<GetChaptersMangaQuery['chapters']>,
|
chapters?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
checkForServerUpdates?: FieldPolicy<any> | FieldReadFunction<any>,
|
checkForServerUpdates?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
checkForWebUIUpdate?: FieldPolicy<any> | FieldReadFunction<any>,
|
checkForWebUIUpdate?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
downloadStatus?: FieldPolicy<Reference, Reference, Reference, FieldFunctionOptions<GetDownloadStatusQueryVariables>> | FieldReadFunction<Reference, Reference, FieldFunctionOptions<GetDownloadStatusQueryVariables>>,
|
downloadStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
extension?: FieldPolicy<any> | FieldReadFunction<any>,
|
extension?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
extensions?: FieldPolicy<any> | FieldReadFunction<any>,
|
extensions?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
getWebUIUpdateStatus?: FieldPolicy<Reference, Reference, Reference, FieldFunctionOptions<GetWebuiUpdateStatusQueryVariables>> | FieldReadFunction<Reference, Reference, FieldFunctionOptions<GetWebuiUpdateStatusQueryVariables>>,
|
getWebUIUpdateStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
koSyncStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
koSyncStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
lastUpdateTimestamp?: FieldPolicy<any> | FieldReadFunction<any>,
|
lastUpdateTimestamp?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
libraryUpdateStatus?: FieldPolicy<Reference, Reference, Reference, FieldFunctionOptions<GetUpdateStatusQueryVariables>> | FieldReadFunction<Reference, Reference, FieldFunctionOptions<GetUpdateStatusQueryVariables>>,
|
libraryUpdateStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
manga?: FieldPolicy<Reference, Reference, Reference, FieldFunctionOptions<GetMangaScreenQueryVariables>> | FieldReadFunction<Reference, Reference, FieldFunctionOptions<GetMangaScreenQueryVariables>>,
|
manga?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
mangas?: FieldPolicy<any> | FieldReadFunction<any>,
|
mangas?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
meta?: FieldPolicy<Reference, Reference, Reference, FieldFunctionOptions<GetGlobalMetadataQueryVariables>> | FieldReadFunction<Reference, Reference, FieldFunctionOptions<GetGlobalMetadataQueryVariables>>,
|
meta?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
metas?: FieldPolicy<any> | FieldReadFunction<any>,
|
metas?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
restoreStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
restoreStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
searchTracker?: FieldPolicy<any> | FieldReadFunction<any>,
|
searchTracker?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
settings?: FieldPolicy<any> | FieldReadFunction<any>,
|
settings?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
source?: FieldPolicy<Reference, Reference, Reference, FieldFunctionOptions<GetSourceBrowseQueryVariables>> | FieldReadFunction<Reference, Reference, FieldFunctionOptions<GetSourceBrowseQueryVariables>>,
|
source?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
sources?: FieldPolicy<any> | FieldReadFunction<any>,
|
sources?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
trackRecord?: FieldPolicy<any> | FieldReadFunction<any>,
|
trackRecord?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
trackRecords?: FieldPolicy<any> | FieldReadFunction<any>,
|
trackRecords?: FieldPolicy<any> | FieldReadFunction<any>,
|
||||||
|
|||||||
@@ -10,25 +10,25 @@ import { ErrorLink } from '@apollo/client/link/error';
|
|||||||
import { SetContextLink } from '@apollo/client/link/context';
|
import { SetContextLink } from '@apollo/client/link/context';
|
||||||
import type { ErrorLike } from '@apollo/client';
|
import type { ErrorLike } from '@apollo/client';
|
||||||
import { ApolloClient, ApolloLink, CombinedGraphQLErrors, InMemoryCache, ServerError } from '@apollo/client';
|
import { ApolloClient, ApolloLink, CombinedGraphQLErrors, InMemoryCache, ServerError } from '@apollo/client';
|
||||||
import { from, filter, map, switchMap, firstValueFrom } from 'rxjs';
|
import { filter, firstValueFrom, from, map, switchMap } from 'rxjs';
|
||||||
import UploadHttpLink from 'apollo-upload-client/UploadHttpLink.mjs';
|
import UploadHttpLink from 'apollo-upload-client/UploadHttpLink.mjs';
|
||||||
import { GraphQLWsLink } from '@apollo/client/link/subscriptions';
|
import { GraphQLWsLink } from '@apollo/client/link/subscriptions';
|
||||||
import type { Client } from 'graphql-ws';
|
import type { Client } from 'graphql-ws';
|
||||||
import { createClient } from 'graphql-ws';
|
import { createClient } from 'graphql-ws';
|
||||||
import { getMainDefinition } from '@apollo/client/utilities';
|
import { getMainDefinition } from '@apollo/client/utilities';
|
||||||
import type { TypePolicies } from '@apollo/client/cache';
|
|
||||||
import { RemoveTypenameFromVariablesLink } from '@apollo/client/link/remove-typename';
|
import { RemoveTypenameFromVariablesLink } from '@apollo/client/link/remove-typename';
|
||||||
import { d } from 'koration';
|
import { d } from 'koration';
|
||||||
import { useId } from '@mantine/hooks';
|
import { useId } from '@mantine/hooks';
|
||||||
import { useEffect } from 'react';
|
import { useEffect } from 'react';
|
||||||
import type { GraphQLFormattedError } from 'graphql';
|
import type { GraphQLFormattedError } from 'graphql';
|
||||||
import { BaseClient } from '@/lib/requests/client/BaseClient.ts';
|
import { BaseClient } from '@/lib/requests/client/BaseClient.ts';
|
||||||
import type { StrictTypedTypePolicies } from '@/lib/graphql/generated/apollo-helpers.ts';
|
import type { TypedTypePolicies } from '@/lib/graphql/generated/apollo-helpers.ts';
|
||||||
import { AuthManager } from '@/features/authentication/AuthManager.ts';
|
import { AuthManager } from '@/features/authentication/AuthManager.ts';
|
||||||
import type { UserRefreshMutation } from '@/lib/graphql/generated/graphql.ts';
|
import type { UserRefreshMutation } from '@/lib/graphql/generated/graphql.ts';
|
||||||
import type { AbortableApolloMutationResponse } from '@/lib/requests/RequestManager.ts';
|
import type { AbortableApolloMutationResponse } from '@/lib/requests/RequestManager.ts';
|
||||||
|
import type { ChapterNodeList } from '@/lib/graphql/generated/graphql-base.types.ts';
|
||||||
|
|
||||||
const typePolicies: StrictTypedTypePolicies = {
|
const typePolicies: TypedTypePolicies = {
|
||||||
MangaType: {
|
MangaType: {
|
||||||
fields: {
|
fields: {
|
||||||
trackRecords: {
|
trackRecords: {
|
||||||
@@ -142,7 +142,7 @@ const typePolicies: StrictTypedTypePolicies = {
|
|||||||
|
|
||||||
const replaceExistingItems = isReFetch && hasLessItems;
|
const replaceExistingItems = isReFetch && hasLessItems;
|
||||||
if (replaceExistingItems) {
|
if (replaceExistingItems) {
|
||||||
const existingWithReplacedIncoming: typeof incoming = {
|
const existingWithReplacedIncoming: ChapterNodeList = {
|
||||||
...existing,
|
...existing,
|
||||||
pageInfo: {
|
pageInfo: {
|
||||||
...existing.pageInfo,
|
...existing.pageInfo,
|
||||||
@@ -154,7 +154,7 @@ const typePolicies: StrictTypedTypePolicies = {
|
|||||||
return existingWithReplacedIncoming;
|
return existingWithReplacedIncoming;
|
||||||
}
|
}
|
||||||
|
|
||||||
const existingWithAppendedIncoming: typeof incoming = {
|
const existingWithAppendedIncoming: ChapterNodeList = {
|
||||||
...existing,
|
...existing,
|
||||||
pageInfo: {
|
pageInfo: {
|
||||||
...existing.pageInfo,
|
...existing.pageInfo,
|
||||||
@@ -423,14 +423,7 @@ export class GraphQLClient extends BaseClient<ApolloClient, ApolloClient.Options
|
|||||||
protected createClient(createWsClientLazily?: boolean) {
|
protected createClient(createWsClientLazily?: boolean) {
|
||||||
this.createWSClient(createWsClientLazily);
|
this.createWSClient(createWsClientLazily);
|
||||||
this.client = new ApolloClient({
|
this.client = new ApolloClient({
|
||||||
cache: new InMemoryCache({
|
cache: new InMemoryCache({ typePolicies }),
|
||||||
// for whatever reason there is some weird TypeError complaining that
|
|
||||||
// "FieldReadFunction<Reference, Reference, FieldFunctionOptions<SomeObject, Record<string, any>>"
|
|
||||||
// is not compatible with "FieldReadFunction<any, any, FieldFunctionOptions<Record<string, any, Record<string, any>>"
|
|
||||||
// Since "typePolicies" is correctly typed as StrictTypedTypePolicies, and it is working as expected,
|
|
||||||
// the TypeError can just be ignored
|
|
||||||
typePolicies: typePolicies as TypePolicies,
|
|
||||||
}),
|
|
||||||
devtools: { enabled: true },
|
devtools: { enabled: true },
|
||||||
link: this.createLink(),
|
link: this.createLink(),
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -12,8 +12,8 @@ import * as path from 'path';
|
|||||||
const format = (source: string, regex: RegExp | string, replaceValue: string): string =>
|
const format = (source: string, regex: RegExp | string, replaceValue: string): string =>
|
||||||
source.replace(regex, replaceValue);
|
source.replace(regex, replaceValue);
|
||||||
|
|
||||||
let generatedGraphQLFilePath = path.resolve(import.meta.dirname, '../../src/lib/graphql/generated/graphql.ts');
|
const generatedGraphQLFilePath = path.resolve(import.meta.dirname, '../../src/lib/graphql/generated/graphql.ts');
|
||||||
let generatedGraphQLFile = fs.readFileSync(generatedGraphQLFilePath, 'utf8');
|
const generatedGraphQLFile = fs.readFileSync(generatedGraphQLFilePath, 'utf8');
|
||||||
|
|
||||||
// add logic to format the codegen generated graphql file
|
// add logic to format the codegen generated graphql file
|
||||||
|
|
||||||
@@ -33,86 +33,5 @@ fs.writeFileSync(generatedGraphQLFilePath, fixSubscriptionHookNameSuffix);
|
|||||||
/* */
|
/* */
|
||||||
/* ****************************************** */
|
/* ****************************************** */
|
||||||
|
|
||||||
generatedGraphQLFilePath = path.resolve(import.meta.dirname, '../../src/lib/graphql/generated/apollo-helpers.ts');
|
// generatedGraphQLFilePath = path.resolve(import.meta.dirname, '../../src/lib/graphql/generated/apollo-helpers.ts');
|
||||||
generatedGraphQLFile = fs.readFileSync(generatedGraphQLFilePath, 'utf8');
|
// generatedGraphQLFile = fs.readFileSync(generatedGraphQLFilePath, 'utf8');
|
||||||
|
|
||||||
const addImports = format(
|
|
||||||
generatedGraphQLFile,
|
|
||||||
`import { FieldPolicy, FieldReadFunction, TypePolicies, TypePolicy } from '@apollo/client/cache';`,
|
|
||||||
`import {FieldPolicy, FieldReadFunction, Reference, TypePolicies, TypePolicy} from '@apollo/client/cache';
|
|
||||||
import {
|
|
||||||
\tGetChaptersMangaQuery, GetDownloadStatusQueryVariables, GetGlobalMetadataQueryVariables,
|
|
||||||
\tGetMangaScreenQueryVariables, GetSourceBrowseQueryVariables, GetUpdateStatusQueryVariables, GetWebuiUpdateStatusQueryVariables,
|
|
||||||
} from "@/lib/graphql/generated/graphql.ts";
|
|
||||||
import {FieldFunctionOptions} from "@apollo/client/cache";`,
|
|
||||||
);
|
|
||||||
|
|
||||||
const fixTypingOfQueryTypePolicies = format(
|
|
||||||
addImports,
|
|
||||||
`export type QueryFieldPolicy = {
|
|
||||||
\taboutServer?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\taboutWebUI?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tcategories?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tcategory?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tchapter?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tchapters?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tcheckForServerUpdates?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tcheckForWebUIUpdate?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tdownloadStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\textension?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\textensions?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tgetWebUIUpdateStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tkoSyncStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tlastUpdateTimestamp?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tlibraryUpdateStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tmanga?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tmangas?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tmeta?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tmetas?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\trestoreStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tsearchTracker?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tsettings?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tsource?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tsources?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\ttrackRecord?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\ttrackRecords?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\ttracker?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\ttrackers?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tupdateStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tvalidateBackup?: FieldPolicy<any> | FieldReadFunction<any>
|
|
||||||
};`,
|
|
||||||
`export type QueryFieldPolicy = {
|
|
||||||
\taboutServer?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\taboutWebUI?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tcategories?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tcategory?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tchapter?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tchapters?: FieldPolicy<GetChaptersMangaQuery['chapters']> | FieldReadFunction<GetChaptersMangaQuery['chapters']>,
|
|
||||||
\tcheckForServerUpdates?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tcheckForWebUIUpdate?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tdownloadStatus?: FieldPolicy<Reference, Reference, Reference, FieldFunctionOptions<GetDownloadStatusQueryVariables>> | FieldReadFunction<Reference, Reference, FieldFunctionOptions<GetDownloadStatusQueryVariables>>,
|
|
||||||
\textension?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\textensions?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tgetWebUIUpdateStatus?: FieldPolicy<Reference, Reference, Reference, FieldFunctionOptions<GetWebuiUpdateStatusQueryVariables>> | FieldReadFunction<Reference, Reference, FieldFunctionOptions<GetWebuiUpdateStatusQueryVariables>>,
|
|
||||||
\tkoSyncStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tlastUpdateTimestamp?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tlibraryUpdateStatus?: FieldPolicy<Reference, Reference, Reference, FieldFunctionOptions<GetUpdateStatusQueryVariables>> | FieldReadFunction<Reference, Reference, FieldFunctionOptions<GetUpdateStatusQueryVariables>>,
|
|
||||||
\tmanga?: FieldPolicy<Reference, Reference, Reference, FieldFunctionOptions<GetMangaScreenQueryVariables>> | FieldReadFunction<Reference, Reference, FieldFunctionOptions<GetMangaScreenQueryVariables>>,
|
|
||||||
\tmangas?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tmeta?: FieldPolicy<Reference, Reference, Reference, FieldFunctionOptions<GetGlobalMetadataQueryVariables>> | FieldReadFunction<Reference, Reference, FieldFunctionOptions<GetGlobalMetadataQueryVariables>>,
|
|
||||||
\tmetas?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\trestoreStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tsearchTracker?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tsettings?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tsource?: FieldPolicy<Reference, Reference, Reference, FieldFunctionOptions<GetSourceBrowseQueryVariables>> | FieldReadFunction<Reference, Reference, FieldFunctionOptions<GetSourceBrowseQueryVariables>>,
|
|
||||||
\tsources?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\ttrackRecord?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\ttrackRecords?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\ttracker?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\ttrackers?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tupdateStatus?: FieldPolicy<any> | FieldReadFunction<any>,
|
|
||||||
\tvalidateBackup?: FieldPolicy<any> | FieldReadFunction<any>
|
|
||||||
};`,
|
|
||||||
);
|
|
||||||
|
|
||||||
fs.writeFileSync(generatedGraphQLFilePath, fixTypingOfQueryTypePolicies);
|
|
||||||
|
|||||||
Reference in New Issue
Block a user