UNPKG

wgc

Version:

The official CLI tool to manage the GraphQL Federation Platform Cosmo

31 lines 1.52 kB
import { compressionBrotli, compressionGzip, createConnectTransport } from '@connectrpc/connect-node'; import { createPromiseClient } from '@connectrpc/connect'; import { PlatformService } from '@wundergraph/cosmo-connect/dist/platform/v1/platform_connect'; import { NodeService } from '@wundergraph/cosmo-connect/dist/node/v1/node_connect'; import { HttpsProxyAgent } from 'https-proxy-agent'; export const CreateClient = (opts) => { const transport = createConnectTransport({ // Requests will be made to <baseUrl>/<package>.<service>/method baseUrl: opts.baseUrl, // You have to tell the Node.js http API which HTTP version to use. httpVersion: '1.1', nodeOptions: { ...(opts.proxyUrl ? { agent: new HttpsProxyAgent(opts.proxyUrl) } : {}), }, // Avoid compression for small requests compressMinBytes: 1024, acceptCompression: [compressionBrotli, compressionGzip], // The default limit is the maximum supported value of ~4GiB // We go with 32MiB to avoid allocating too much memory for large requests writeMaxBytes: 32 * 1024 * 1024, sendCompression: compressionBrotli, // Interceptors apply to all calls running through this transport. interceptors: [], defaultTimeoutMs: 75000, }); return { platform: createPromiseClient(PlatformService, transport), node: createPromiseClient(NodeService, transport), }; }; //# sourceMappingURL=client.js.map