graphql-mocks
Version:
Tools for setting up graphql test resolvers
41 lines (28 loc) • 1.13 kB
JavaScript
Object.defineProperty(exports, '__esModule', {
value: true
});
var graphql = require('graphql');
var isTypeReference = require('./is-type-reference.js');
var getTypeForReference = require('./get-type-for-reference.js');
var isFieldReference = require('./is-field-reference.js');
var getFieldForReference = require('./get-field-for-reference.js');
function getInstanceForReference(schema, reference) {
if (isTypeReference.isTypeReference(reference)) {
return getTypeForReference.getTypeForReference(schema, reference);
}
if (isFieldReference.isFieldReference(reference)) {
const [typeName, fieldName] = reference;
const type = getTypeForReference.getTypeForReference(schema, typeName);
const field = getFieldForReference.getFieldForReference(schema, [typeName, fieldName]);
if (graphql.isObjectType(type) && field) {
return [type, field];
}
if (graphql.isInputObjectType(type) && field) {
return [type, field];
}
}
return undefined;
}
exports.getInstanceForReference = getInstanceForReference;
//# sourceMappingURL=get-instance-for-reference.js.map
;