22import { resolveRequestDocument } from './resolveRequestDocument.js'
33import type { RequestDocument , Variables } from './types.js'
44import { ClientError } from './types.js'
5+ import { TypedDocumentNode } from '@graphql-typed-document-node/core'
56// import type WebSocket from 'ws'
67
78const CONNECTION_INIT = `connection_init`
@@ -159,7 +160,7 @@ export class GraphQLWebSocketClient {
159160 case ERROR : {
160161 subscriber . error &&
161162 subscriber . error (
162- new ClientError ( { errors : message . payload , status : 200 } , { query, variables } )
163+ new ClientError ( { errors : message . payload , status : 200 } , { query, variables } ) ,
163164 )
164165 return
165166 }
@@ -183,7 +184,7 @@ export class GraphQLWebSocketClient {
183184 query : string ,
184185 operationName : string | undefined ,
185186 subscriber : GraphQLSubscriber < T , E > ,
186- variables ?: V
187+ variables ?: V ,
187188 ) : UnsubscribeCallback {
188189 const subscriptionId = ( this . socketState . lastRequestId ++ ) . toString ( )
189190 this . socketState . subscriptions [ subscriptionId ] = { query, variables, subscriber }
@@ -196,7 +197,7 @@ export class GraphQLWebSocketClient {
196197
197198 rawRequest < T = any , V extends Variables = Variables , E = any > (
198199 query : string ,
199- variables ?: V
200+ variables ?: V ,
200201 ) : Promise < { data : T ; extensions ?: E } > {
201202 return new Promise < { data : T ; extensions ?: E ; headers ?: Headers ; status ?: number } > ( ( resolve , reject ) => {
202203 let result : { data : T ; extensions ?: E }
@@ -207,12 +208,15 @@ export class GraphQLWebSocketClient {
207208 error : reject ,
208209 complete : ( ) => resolve ( result ) ,
209210 } ,
210- variables
211+ variables ,
211212 )
212213 } )
213214 }
214215
215- request < T = any , V extends Variables = Variables > ( document : RequestDocument , variables ?: V ) : Promise < T > {
216+ request < T = any , V extends Variables = Variables > (
217+ document : RequestDocument | TypedDocumentNode < T , V > ,
218+ variables ?: V ,
219+ ) : Promise < T > {
216220 return new Promise < T > ( ( resolve , reject ) => {
217221 let result : T
218222 this . subscribe (
@@ -222,15 +226,15 @@ export class GraphQLWebSocketClient {
222226 error : reject ,
223227 complete : ( ) => resolve ( result ) ,
224228 } ,
225- variables
229+ variables ,
226230 )
227231 } )
228232 }
229233
230234 subscribe < T = any , V extends Variables = Variables , E = any > (
231- document : RequestDocument ,
235+ document : RequestDocument | TypedDocumentNode < T , V > ,
232236 subscriber : GraphQLSubscriber < T , E > ,
233- variables ?: V
237+ variables ?: V ,
234238 ) : UnsubscribeCallback {
235239 const { query, operationName } = resolveRequestDocument ( document )
236240 return this . makeSubscribe ( query , operationName , subscriber , variables )
@@ -239,7 +243,7 @@ export class GraphQLWebSocketClient {
239243 rawSubscribe < T = any , V extends Variables = Variables , E = any > (
240244 query : string ,
241245 subscriber : GraphQLSubscriber < T , E > ,
242- variables ?: V
246+ variables ?: V ,
243247 ) : UnsubscribeCallback {
244248 return this . makeSubscribe ( query , undefined , subscriber , variables )
245249 }
0 commit comments