UNPKG

graphql-mocks

Version:
82 lines (69 loc) 2.54 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); require('graphql'); var constants = require('../resolver/constants.js'); var createWrapper = require('../resolver/create-wrapper.js'); var isFieldResolver = require('../resolver/utils/is-field-resolver.js'); var isTypeResolver = require('../resolver/utils/is-type-resolver.js'); const logWrapper = createWrapper.createWrapper('log-wrapper', constants.WrapperFor.ANY, async function (originalResolver, options) { const { type, field } = options; if (isFieldResolver.isFieldResolver(options.type, originalResolver)) { const resolver = async function (parent, args, context, info) { const [parentOut, argsOut] = [parent, args].map(out => { try { return JSON.stringify(out, null, 2); } catch { return 'Unable to JSON.stringify'; } }); console.log(`--- START: field resolver on ${type.name}.${field === null || field === void 0 ? void 0 : field.name} ---`); console.log(''); console.log(`parent:`); console.log(parentOut); console.log(''); console.log('args:'); console.log(argsOut); console.log(''); const result = await originalResolver(parent, args, context, info); const resultOut = JSON.stringify(result, null, 2); console.log('result:'); console.log(resultOut); console.log(''); console.log(`--- END: field resolver on ${type.name}.${field === null || field === void 0 ? void 0 : field.name} ---`); return result; }; return resolver; } if (isTypeResolver.isTypeResolver(options.type, originalResolver)) { const resolver = async (value, context, info, abstractType) => { const [valueOut] = [value].map(out => { try { return JSON.stringify(out, null, 2); } catch { return 'Unable to JSON.stringify'; } }); console.log(`--- START: type resolver on ${type.name} ---`); console.log(''); console.log('value:'); console.log(valueOut); console.log(''); const result = await originalResolver(value, context, info, abstractType); const resultOut = JSON.stringify(result, null, 2); console.log('result:'); console.log(resultOut); console.log(''); console.log(`--- END: type resolver on ${type.name} ---`); return result; }; return resolver; } return originalResolver; }); exports.logWrapper = logWrapper; //# sourceMappingURL=log.js.map