graphql-mocks
Version:
Tools for setting up graphql test resolvers
31 lines (24 loc) • 935 B
JavaScript
import { isObjectType, isInputObjectType } from 'graphql';
import { isTypeReference } from './is-type-reference.js';
import { getTypeForReference } from './get-type-for-reference.js';
import { isFieldReference } from './is-field-reference.js';
import { getFieldForReference } from './get-field-for-reference.js';
function getInstanceForReference(schema, reference) {
if (isTypeReference(reference)) {
return getTypeForReference(schema, reference);
}
if (isFieldReference(reference)) {
var [typeName, fieldName] = reference;
var type = getTypeForReference(schema, typeName);
var field = getFieldForReference(schema, [typeName, fieldName]);
if (isObjectType(type) && field) {
return [type, field];
}
if (isInputObjectType(type) && field) {
return [type, field];
}
}
return undefined;
}
export { getInstanceForReference };
//# sourceMappingURL=get-instance-for-reference.js.map