{"version":3,"file":"buildResolveInfo.js","sourceRoot":"","sources":["../../src/execution/buildResolveInfo.ts"],"names":[],"mappings":"AA8BA,MAAM,UAAU,gBAAgB,CAC9B,sBAAqD,EACrD,QAAwC,EACxC,UAAoC,EACpC,UAA6B,EAC7B,IAAU,EACV,cAA6C,EAC7C,eAAgD;IAEhD,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,GACzE,sBAAsB,CAAC;IAGzB,OAAO;QACL,SAAS,EAAE,QAAQ,CAAC,IAAI;QACxB,UAAU;QACV,UAAU,EAAE,QAAQ,CAAC,IAAI;QACzB,UAAU;QACV,IAAI;QACJ,MAAM;QACN,SAAS,EAAE,mBAAmB;QAC9B,SAAS;QACT,SAAS;QACT,cAAc;QACd,cAAc;QACd,eAAe;KAChB,CAAC;AACJ,CAAC","sourcesContent":["import type { ObjMap } from '../jsutils/ObjMap.ts';\nimport type { Path } from '../jsutils/Path.ts';\n\nimport type {\n  FieldNode,\n  FragmentDefinitionNode,\n  OperationDefinitionNode,\n} from '../language/ast.ts';\n\nimport type {\n  GraphQLField,\n  GraphQLObjectType,\n  GraphQLResolveInfo,\n  GraphQLResolveInfoHelpers,\n} from '../type/index.ts';\nimport type { GraphQLSchema } from '../type/schema.ts';\n\nimport type { VariableValues } from './values.ts';\n\n/** @internal */\nexport interface BuildResolveInfoExecutionArgs {\n  schema: GraphQLSchema;\n  fragmentDefinitions: ObjMap<FragmentDefinitionNode>;\n  rootValue: unknown;\n  operation: OperationDefinitionNode;\n  variableValues: VariableValues;\n}\n\n/** @internal */\n// eslint-disable-next-line max-params\nexport function buildResolveInfo(\n  validatedExecutionArgs: BuildResolveInfoExecutionArgs,\n  fieldDef: GraphQLField<unknown, unknown>,\n  fieldNodes: ReadonlyArray<FieldNode>,\n  parentType: GraphQLObjectType,\n  path: Path,\n  getAbortSignal: () => AbortSignal | undefined,\n  getAsyncHelpers: () => GraphQLResolveInfoHelpers,\n): GraphQLResolveInfo {\n  const { schema, fragmentDefinitions, rootValue, operation, variableValues } =\n    validatedExecutionArgs;\n  // The resolve function's optional fourth argument is a collection of\n  // information about the current execution state.\n  return {\n    fieldName: fieldDef.name,\n    fieldNodes,\n    returnType: fieldDef.type,\n    parentType,\n    path,\n    schema,\n    fragments: fragmentDefinitions,\n    rootValue,\n    operation,\n    variableValues,\n    getAbortSignal,\n    getAsyncHelpers,\n  };\n}\n"]}