UNPKG

@omnigraph/soap

Version:

31 lines (30 loc) 1.16 kB
import { defaultImportFn, DefaultLogger, readFileOrUrl } from '@graphql-mesh/utils'; import { SOAPLoader } from './SOAPLoader.js'; export * from './SOAPLoader.js'; export * from './types.js'; export * from '@graphql-mesh/transport-soap'; export function loadSOAPSubgraph(subgraphName, options) { return ({ cwd, fetch }) => { const soapLoader = new SOAPLoader({ subgraphName, fetch: options.fetch || fetch, schemaHeaders: options.schemaHeaders, operationHeaders: options.operationHeaders, }); return { name: subgraphName, schema$: readFileOrUrl(options.source, { allowUnknownExtensions: true, cwd, fetch: options.fetch || fetch, importFn: defaultImportFn, logger: new DefaultLogger(`SOAP Subgraph ${subgraphName}`), }) .then(wsdl => soapLoader.loadWSDL(wsdl)) .then(object => { soapLoader.loadedLocations.set(options.source, object); return soapLoader.buildSchema(); }), }; }; }