@@ -10,6 +10,8 @@ import {
1010 hasPersistedQueryError ,
1111 mergeHeaders ,
1212} from "./helpers" ;
13+ import { print } from "graphql/language/printer" ;
14+ import { ASTNode } from "graphql" ;
1315
1416type Options = {
1517 /**
@@ -26,16 +28,15 @@ type Options = {
2628 defaultTimeout ?: number ;
2729} ;
2830
29-
3031type RequestOptions = {
3132 signal ?: AbortSignal ;
3233 headers ?: Headers | Record < string , string > ;
33- }
34+ } ;
3435
3536export type ClientFetcher = < TResponse , TVariables > (
3637 astNode : DocumentTypeDecoration < TResponse , TVariables > ,
3738 variables ?: TVariables ,
38- options ?: RequestOptions | AbortSignal // Backwards compatibility
39+ options ?: RequestOptions | AbortSignal // Backwards compatibility
3940) => Promise < GqlResponse < TResponse > > ;
4041
4142export const initClientFetcher =
@@ -53,25 +54,23 @@ export const initClientFetcher =
5354 astNode : DocumentTypeDecoration < TResponse , TVariables > ,
5455 variables ?: TVariables ,
5556 optionsOrSignal : RequestOptions | AbortSignal = {
56- signal : AbortSignal . timeout ( defaultTimeout )
57+ signal : AbortSignal . timeout ( defaultTimeout ) ,
5758 } satisfies RequestOptions
5859 ) : Promise < GqlResponse < TResponse > > => {
59-
6060 // For backwards compatibility, when options is an AbortSignal we transform
6161 // it into a RequestOptions object
62- const options : RequestOptions = { }
62+ const options : RequestOptions = { } ;
6363 if ( optionsOrSignal instanceof AbortSignal ) {
64- options . signal = optionsOrSignal
64+ options . signal = optionsOrSignal ;
6565 } else {
66- Object . assign ( options , optionsOrSignal )
66+ Object . assign ( options , optionsOrSignal ) ;
6767 }
6868
6969 // Make sure that we always have a default signal set
7070 if ( ! options . signal ) {
7171 options . signal = AbortSignal . timeout ( defaultTimeout ) ;
7272 }
73-
74- const query = astNode . toString ( ) ;
73+ const query = print ( astNode as ASTNode ) ;
7574 const operationName = extractOperationName ( query ) ;
7675
7776 let hash = "" ;
@@ -92,7 +91,7 @@ export const initClientFetcher =
9291
9392 let response : GqlResponse < TResponse > | undefined = undefined ;
9493
95- const headers = mergeHeaders ( options . headers )
94+ const headers = mergeHeaders ( options . headers ) ;
9695
9796 // For queries we can use GET requests if persisted queries are enabled
9897 if ( persistedQueries && getQueryType ( query ) === "query" ) {
0 commit comments