INNER CODE UNIT · JavaScript
findScopeNode
cjoudrey/graphql-schema-linter · src/find_schema_nodes.js:24
function findScopeNode(scope, schema) {
const [typeName, fieldName, argumentName] = scope.split('.');
const type = schema.getType(typeName);
let astNode = type?.astNode;
if (fieldName === undefined) {
return astNode;
}
const field =
astNode?.kind === 'EnumTypeDefinition'
? type?.getValue(fieldName)
: type?.getFields()[fieldName];
astNode = field?.astNode;
if (argumentName === undefined) {
return astNode;
}
const argument = field?.args.find((arg) => arg.name === argumentName);