UNPKG

graphql-mocks

Version:

Tools for setting up graphql test resolvers

37 lines (35 loc) 1.35 kB
'use strict'; var graphql = require('graphql'); function createFieldResolverRouter(resolverMap) { return (parent, args, context, info) => { var _resolverMap$parentTy; const { fieldName, parentType } = info; const resolver = (_resolverMap$parentTy = resolverMap[parentType.name]) === null || _resolverMap$parentTy === void 0 ? void 0 : _resolverMap$parentTy[fieldName]; let result; if (resolver) { result = resolver(parent, args, context, info); } else { result = graphql.defaultFieldResolver(parent, args, context, info); } if (typeof result === 'function') { result = result(parent, args, context, info); } return result; }; } function createTypeResolverRouter(resolverMap) { return function (value, context, info, abstractType) { var _resolverMap$abstract; const resolver = (_resolverMap$abstract = resolverMap[abstractType.name]) === null || _resolverMap$abstract === void 0 ? void 0 : _resolverMap$abstract.__resolveType; if (resolver) { return resolver(value, context, info, abstractType); } return graphql.defaultTypeResolver(value, context, info, abstractType); }; } exports.createFieldResolverRouter = createFieldResolverRouter; exports.createTypeResolverRouter = createTypeResolverRouter; //# sourceMappingURL=resolver-router.js.map