feat(front): Remove __typename from variables

When reusing data from a query as an argument to another GraphQL operation, __typename fields can cause errors. To avoid this, you can use the removeTypenameFromVariables link to automatically remove __typename fields from variables in operations.

https://www.apollographql.com/docs/react/api/link/apollo-link-remove-typename
This commit is contained in:
Massedil
2025-07-02 21:24:56 +02:00
parent 3f078fa96f
commit 5b77cc17d2

View File

@@ -1,10 +1,11 @@
import { split } from "@apollo/client/core";
import { from, split } from "@apollo/client/core";
import { RetryLink } from "@apollo/client/link/retry";
import { getMainDefinition } from "@apollo/client/utilities";
import absintheSocketLink from "./absinthe-socket-link";
import { authMiddleware } from "./auth";
import errorLink from "./error-link";
import { uploadLink } from "./absinthe-upload-socket-link";
import { removeTypenameFromVariables } from "@apollo/client/link/remove-typename";
let link;
@@ -34,7 +35,10 @@ if (!import.meta.env.VITE_HISTOIRE_ENV) {
const retryLink = new RetryLink();
export const fullLink = retryLink
.concat(errorLink)
.concat(authMiddleware)
.concat(link ?? uploadLink);
export const fullLink = from([
removeTypenameFromVariables(),
retryLink,
errorLink,
authMiddleware,
link ?? uploadLink,
]);