apollo-graphql-ws-link
Version:
The graphql-ws apollo link recipe as package
3 lines (2 loc) • 663 B
JavaScript
var e=require("@apollo/client/core"),r=require("graphql"),t=require("graphql-ws");exports.WebSocketLink=class extends e.ApolloLink{constructor(e){super(),this.client=void 0,this.client=t.createClient(e)}request(t){return new e.Observable(e=>this.client.subscribe({...t,query:r.print(t.query)},{next:e.next.bind(e),complete:e.complete.bind(e),error:r=>{if(Array.isArray(r))return e.error(new Error(r.map(e=>{let{message:r}=e;return r}).join(", ")));if(r instanceof CloseEvent){const t=new Error("Socket closed with event "+r.code+" "+(r.reason||""));return t.name="CloseEvent",e.error(t)}return e.error(r)}}))}};
//# sourceMappingURL=apollo-graphql-ws-link.js.map