@graphitation/supermassive 3.0.0-alpha.6 → 3.0.0-alpha.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintcache +1 -1
- package/CHANGELOG.md +18 -2
- package/README.md +137 -26
- package/lib/__testUtils__/execute.d.ts.map +1 -1
- package/lib/__testUtils__/execute.js +2 -5
- package/lib/__testUtils__/execute.js.map +2 -2
- package/lib/__testUtils__/execute.mjs +2 -5
- package/lib/__testUtils__/execute.mjs.map +2 -2
- package/lib/benchmarks/index.js.map +2 -2
- package/lib/benchmarks/index.mjs.map +2 -2
- package/lib/collectFields.d.ts.map +1 -1
- package/lib/collectFields.js +6 -5
- package/lib/collectFields.js.map +2 -2
- package/lib/collectFields.mjs +6 -5
- package/lib/collectFields.mjs.map +2 -2
- package/lib/executeWithSchema.d.ts +1 -1
- package/lib/executeWithSchema.d.ts.map +1 -1
- package/lib/executeWithSchema.js +9 -23
- package/lib/executeWithSchema.js.map +2 -2
- package/lib/executeWithSchema.mjs +9 -26
- package/lib/executeWithSchema.mjs.map +2 -2
- package/lib/executeWithoutSchema.d.ts +1 -3
- package/lib/executeWithoutSchema.d.ts.map +1 -1
- package/lib/executeWithoutSchema.js +154 -69
- package/lib/executeWithoutSchema.js.map +2 -2
- package/lib/executeWithoutSchema.mjs +144 -71
- package/lib/executeWithoutSchema.mjs.map +2 -2
- package/lib/index.d.ts +4 -4
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +5 -1
- package/lib/index.js.map +2 -2
- package/lib/index.mjs +10 -2
- package/lib/index.mjs.map +2 -2
- package/lib/schema/definition.d.ts +43 -33
- package/lib/schema/definition.d.ts.map +1 -1
- package/lib/schema/definition.js +284 -9
- package/lib/schema/definition.js.map +2 -2
- package/lib/schema/definition.mjs +284 -55
- package/lib/schema/definition.mjs.map +3 -3
- package/lib/schema/directives.d.ts.map +1 -1
- package/lib/schema/directives.js +3 -3
- package/lib/schema/directives.js.map +2 -2
- package/lib/schema/directives.mjs +4 -4
- package/lib/schema/directives.mjs.map +2 -2
- package/lib/schema/reference.d.ts +3 -1
- package/lib/schema/reference.d.ts.map +1 -1
- package/lib/schema/reference.js.map +2 -2
- package/lib/schema/reference.mjs.map +2 -2
- package/lib/schema/resolvers.d.ts +10 -4
- package/lib/schema/resolvers.d.ts.map +1 -1
- package/lib/schema/resolvers.js +92 -9
- package/lib/schema/resolvers.js.map +2 -2
- package/lib/schema/resolvers.mjs +99 -9
- package/lib/schema/resolvers.mjs.map +2 -2
- package/lib/subscribeWithSchema.d.ts +1 -1
- package/lib/subscribeWithSchema.d.ts.map +1 -1
- package/lib/subscribeWithSchema.js +9 -23
- package/lib/subscribeWithSchema.js.map +2 -2
- package/lib/subscribeWithSchema.mjs +9 -26
- package/lib/subscribeWithSchema.mjs.map +2 -2
- package/lib/types.d.ts +28 -9
- package/lib/types.d.ts.map +1 -1
- package/lib/types.js.map +1 -1
- package/lib/utilities/coerceInputValue.d.ts +3 -3
- package/lib/utilities/coerceInputValue.d.ts.map +1 -1
- package/lib/utilities/coerceInputValue.js +17 -12
- package/lib/utilities/coerceInputValue.js.map +2 -2
- package/lib/utilities/coerceInputValue.mjs +22 -12
- package/lib/utilities/coerceInputValue.mjs.map +2 -2
- package/lib/utilities/decodeASTSchema.d.ts.map +1 -1
- package/lib/utilities/decodeASTSchema.js +32 -40
- package/lib/utilities/decodeASTSchema.js.map +2 -2
- package/lib/utilities/decodeASTSchema.mjs +51 -49
- package/lib/utilities/decodeASTSchema.mjs.map +2 -2
- package/lib/utilities/encodeASTSchema.d.ts.map +1 -1
- package/lib/utilities/encodeASTSchema.js +16 -20
- package/lib/utilities/encodeASTSchema.js.map +2 -2
- package/lib/utilities/encodeASTSchema.mjs +22 -21
- package/lib/utilities/encodeASTSchema.mjs.map +2 -2
- package/lib/utilities/extractMinimalViableSchemaForRequestDocument.d.ts.map +1 -1
- package/lib/utilities/extractMinimalViableSchemaForRequestDocument.js +20 -22
- package/lib/utilities/extractMinimalViableSchemaForRequestDocument.js.map +2 -2
- package/lib/utilities/extractMinimalViableSchemaForRequestDocument.mjs +35 -29
- package/lib/utilities/extractMinimalViableSchemaForRequestDocument.mjs.map +2 -2
- package/lib/utilities/mergeSchemaDefinitions.d.ts.map +1 -1
- package/lib/utilities/mergeSchemaDefinitions.js +18 -28
- package/lib/utilities/mergeSchemaDefinitions.js.map +2 -2
- package/lib/utilities/mergeSchemaDefinitions.mjs +28 -34
- package/lib/utilities/mergeSchemaDefinitions.mjs.map +2 -2
- package/lib/utilities/valueFromAST.d.ts +3 -3
- package/lib/utilities/valueFromAST.d.ts.map +1 -1
- package/lib/utilities/valueFromAST.js +23 -10
- package/lib/utilities/valueFromAST.js.map +2 -2
- package/lib/utilities/valueFromAST.mjs +13 -10
- package/lib/utilities/valueFromAST.mjs.map +2 -2
- package/lib/values.d.ts +2 -2
- package/lib/values.d.ts.map +1 -1
- package/lib/values.js +14 -14
- package/lib/values.js.map +2 -2
- package/lib/values.mjs +21 -14
- package/lib/values.mjs.map +2 -2
- package/package.json +1 -1
- package/lib/schema/fragment.d.ts +0 -63
- package/lib/schema/fragment.d.ts.map +0 -1
- package/lib/schema/fragment.js +0 -295
- package/lib/schema/fragment.js.map +0 -7
- package/lib/schema/fragment.mjs +0 -292
- package/lib/schema/fragment.mjs.map +0 -7
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/collectFields.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n Kind,\n FieldNode,\n FragmentDefinitionNode,\n FragmentSpreadNode,\n InlineFragmentNode,\n SelectionNode,\n SelectionSetNode,\n} from \"graphql\";\nimport { getDirectiveValues } from \"./values\";\nimport {\n GraphQLSkipDirective,\n GraphQLIncludeDirective,\n GraphQLDeferDirective,\n} from \"./schema/directives\";\n\nimport { AccumulatorMap } from \"./jsutils/AccumulatorMap\";\nimport invariant from \"invariant\";\nimport { ExecutionContext } from \"./executeWithoutSchema\";\nimport {
|
|
5
|
-
"mappings": ";AAAA;AAAA,EACE;AAAA,OAOK;AACP,SAAS,0BAA0B;AACnC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,sBAAsB;AAC/B,OAAO,eAAe;
|
|
4
|
+
"sourcesContent": ["import {\n Kind,\n FieldNode,\n FragmentDefinitionNode,\n FragmentSpreadNode,\n InlineFragmentNode,\n SelectionNode,\n SelectionSetNode,\n} from \"graphql\";\nimport { getDirectiveValues } from \"./values\";\nimport {\n GraphQLSkipDirective,\n GraphQLIncludeDirective,\n GraphQLDeferDirective,\n} from \"./schema/directives\";\n\nimport { AccumulatorMap } from \"./jsutils/AccumulatorMap\";\nimport invariant from \"invariant\";\nimport { ExecutionContext } from \"./executeWithoutSchema\";\nimport { isAbstractType, isSubType } from \"./schema/definition\";\nimport { SchemaFragment } from \"./types\";\n\nexport type FieldGroup = ReadonlyArray<FieldNode>;\n\nexport type GroupedFieldSet = Map<string, FieldGroup>;\n\nexport interface PatchFields {\n label: string | undefined;\n groupedFieldSet: GroupedFieldSet;\n}\n\nexport interface FieldsAndPatches {\n groupedFieldSet: GroupedFieldSet;\n patches: Array<PatchFields>;\n}\n\n/**\n * Given a selectionSet, collects all of the fields and returns them.\n *\n * CollectFields requires the \"runtime type\" of an object. For a field that\n * returns an Interface or Union type, the \"runtime type\" will be the actual\n * object type returned by that field.\n *\n * @internal\n */\nexport function collectFields(\n exeContext: ExecutionContext,\n runtimeTypeName: string,\n): FieldsAndPatches {\n const { operation } = exeContext;\n const groupedFieldSet = new AccumulatorMap<string, FieldNode>();\n const patches: Array<PatchFields> = [];\n collectFieldsImpl(\n exeContext,\n runtimeTypeName,\n operation.selectionSet,\n groupedFieldSet,\n patches,\n new Set(),\n );\n return { groupedFieldSet, patches };\n}\n\n/**\n * Given an array of field nodes, collects all of the subfields of the passed\n * in fields, and returns them at the end.\n *\n * CollectSubFields requires the \"return type\" of an object. For a field that\n * returns an Interface or Union type, the \"return type\" will be the actual\n * object type returned by that field.\n *\n * @internal\n */\n// eslint-disable-next-line max-params\nexport function collectSubfields(\n exeContext: ExecutionContext,\n returnTypeName: string,\n fieldGroup: FieldGroup,\n): FieldsAndPatches {\n const subGroupedFieldSet = new AccumulatorMap<string, FieldNode>();\n const visitedFragmentNames = new Set<string>();\n\n const subPatches: Array<PatchFields> = [];\n const subFieldsAndPatches = {\n groupedFieldSet: subGroupedFieldSet,\n patches: subPatches,\n };\n\n for (const node of fieldGroup) {\n if (node.selectionSet) {\n collectFieldsImpl(\n exeContext,\n returnTypeName,\n node.selectionSet,\n subGroupedFieldSet,\n subPatches,\n visitedFragmentNames,\n );\n }\n }\n return subFieldsAndPatches;\n}\n\n// eslint-disable-next-line max-params\nfunction collectFieldsImpl(\n exeContext: ExecutionContext,\n runtimeTypeName: string,\n selectionSet: SelectionSetNode,\n groupedFieldSet: AccumulatorMap<string, FieldNode>,\n patches: Array<PatchFields>,\n visitedFragmentNames: Set<string>,\n): void {\n for (const selection of selectionSet.selections) {\n switch (selection.kind) {\n case Kind.FIELD: {\n if (!shouldIncludeNode(exeContext, selection)) {\n continue;\n }\n groupedFieldSet.add(getFieldEntryKey(selection), selection);\n break;\n }\n case Kind.INLINE_FRAGMENT: {\n if (\n !shouldIncludeNode(exeContext, selection) ||\n !doesFragmentConditionMatch(\n selection,\n runtimeTypeName,\n exeContext.schemaFragment,\n )\n ) {\n continue;\n }\n\n const defer = getDeferValues(exeContext, selection);\n\n if (defer) {\n const patchFields = new AccumulatorMap<string, FieldNode>();\n collectFieldsImpl(\n exeContext,\n runtimeTypeName,\n selection.selectionSet,\n patchFields,\n patches,\n visitedFragmentNames,\n );\n patches.push({\n label: defer.label,\n groupedFieldSet: patchFields,\n });\n } else {\n collectFieldsImpl(\n exeContext,\n runtimeTypeName,\n selection.selectionSet,\n groupedFieldSet,\n patches,\n visitedFragmentNames,\n );\n }\n break;\n }\n case Kind.FRAGMENT_SPREAD: {\n const fragName = selection.name.value;\n\n if (!shouldIncludeNode(exeContext, selection)) {\n continue;\n }\n\n const defer = getDeferValues(exeContext, selection);\n if (visitedFragmentNames.has(fragName) && !defer) {\n continue;\n }\n\n const fragment = exeContext.fragments[fragName];\n if (\n fragment == null ||\n !doesFragmentConditionMatch(\n fragment,\n runtimeTypeName,\n exeContext.schemaFragment,\n )\n ) {\n continue;\n }\n\n if (!defer) {\n visitedFragmentNames.add(fragName);\n }\n\n if (defer) {\n const patchFields = new AccumulatorMap<string, FieldNode>();\n collectFieldsImpl(\n exeContext,\n runtimeTypeName,\n fragment.selectionSet,\n patchFields,\n patches,\n visitedFragmentNames,\n );\n patches.push({\n label: defer.label,\n groupedFieldSet: patchFields,\n });\n } else {\n collectFieldsImpl(\n exeContext,\n runtimeTypeName,\n fragment.selectionSet,\n groupedFieldSet,\n patches,\n visitedFragmentNames,\n );\n }\n break;\n }\n }\n }\n}\n\n/**\n * Determines if a field should be included based on the @include and @skip\n * directives, where @skip has higher precedence than @include.\n */\nfunction shouldIncludeNode(\n exeContext: ExecutionContext,\n node: SelectionNode,\n): boolean {\n if (!node.directives?.length) {\n return true;\n }\n\n const skip = getDirectiveValues(exeContext, GraphQLSkipDirective, node);\n if (skip?.if === true) {\n return false;\n }\n\n const include = getDirectiveValues(exeContext, GraphQLIncludeDirective, node);\n if (include?.if === false) {\n return false;\n }\n\n return true;\n}\n\n/**\n * Determines if a fragment is applicable to the given type.\n */\nfunction doesFragmentConditionMatch(\n fragment: FragmentDefinitionNode | InlineFragmentNode,\n typeName: string,\n { definitions }: SchemaFragment,\n): boolean {\n const typeConditionNode = fragment.typeCondition;\n if (!typeConditionNode) {\n return true;\n }\n\n const conditionalTypeName = typeConditionNode.name.value;\n\n if (conditionalTypeName === typeName) {\n return true;\n }\n if (isAbstractType(definitions, conditionalTypeName)) {\n return isSubType(definitions, conditionalTypeName, typeName);\n }\n return false;\n}\n\n/**\n * Implements the logic to compute the key of a given field's entry\n */\nfunction getFieldEntryKey(node: FieldNode): string {\n return node.alias ? node.alias.value : node.name.value;\n}\n\n/**\n * Returns an object containing the `@defer` arguments if a field should be\n * deferred based on the experimental flag, defer directive present and\n * not disabled by the \"if\" argument.\n */\nfunction getDeferValues(\n exeContext: ExecutionContext,\n node: FragmentSpreadNode | InlineFragmentNode,\n): undefined | { label: string | undefined } {\n const defer = getDirectiveValues(exeContext, GraphQLDeferDirective, node);\n\n if (!defer) {\n return;\n }\n\n if (defer.if === false) {\n return;\n }\n\n invariant(\n exeContext.operation.operation !== \"subscription\",\n \"`@defer` directive not supported on subscription operations. Disable `@defer` by setting the `if` argument to `false`.\",\n );\n\n return {\n label: typeof defer.label === \"string\" ? defer.label : undefined,\n };\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { PromiseOrValue } from "./jsutils/PromiseOrValue";
|
|
2
2
|
import { ExecutionResult, ExecutionWithSchemaArgs } from "./types";
|
|
3
|
-
export declare function executeWithSchema({
|
|
3
|
+
export declare function executeWithSchema({ document, definitions, resolvers, rootValue, contextValue, variableValues, operationName, fieldResolver, typeResolver, fieldExecutionHooks, }: ExecutionWithSchemaArgs): PromiseOrValue<ExecutionResult>;
|
|
4
4
|
//# sourceMappingURL=executeWithSchema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executeWithSchema.d.ts","sourceRoot":"","sources":["../src/executeWithSchema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAGnE,wBAAgB,iBAAiB,CAAC,EAChC,
|
|
1
|
+
{"version":3,"file":"executeWithSchema.d.ts","sourceRoot":"","sources":["../src/executeWithSchema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAGnE,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,WAAW,EACX,SAAS,EACT,SAAS,EACT,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,EACb,YAAY,EACZ,mBAAmB,GACpB,EAAE,uBAAuB,GAAG,cAAc,CAAC,eAAe,CAAC,CAoB3D"}
|
package/lib/executeWithSchema.js
CHANGED
|
@@ -1,25 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __defProp = Object.defineProperty;
|
|
3
|
-
var __defProps = Object.defineProperties;
|
|
4
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
6
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
8
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
10
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
11
|
-
var __spreadValues = (a, b) => {
|
|
12
|
-
for (var prop in b || (b = {}))
|
|
13
|
-
if (__hasOwnProp.call(b, prop))
|
|
14
|
-
__defNormalProp(a, prop, b[prop]);
|
|
15
|
-
if (__getOwnPropSymbols)
|
|
16
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
17
|
-
if (__propIsEnum.call(b, prop))
|
|
18
|
-
__defNormalProp(a, prop, b[prop]);
|
|
19
|
-
}
|
|
20
|
-
return a;
|
|
21
|
-
};
|
|
22
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
23
6
|
var __export = (target, all) => {
|
|
24
7
|
for (var name in all)
|
|
25
8
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -42,8 +25,9 @@ var import_graphql = require("graphql");
|
|
|
42
25
|
var import_index = require("./index");
|
|
43
26
|
var import_extractMinimalViableSchemaForRequestDocument = require("./utilities/extractMinimalViableSchemaForRequestDocument");
|
|
44
27
|
function executeWithSchema({
|
|
45
|
-
schema,
|
|
46
28
|
document,
|
|
29
|
+
definitions,
|
|
30
|
+
resolvers,
|
|
47
31
|
rootValue,
|
|
48
32
|
contextValue,
|
|
49
33
|
variableValues,
|
|
@@ -52,15 +36,17 @@ function executeWithSchema({
|
|
|
52
36
|
typeResolver,
|
|
53
37
|
fieldExecutionHooks
|
|
54
38
|
}) {
|
|
55
|
-
const
|
|
56
|
-
(0, import_graphql.buildASTSchema)(
|
|
39
|
+
const extracted = (0, import_extractMinimalViableSchemaForRequestDocument.extractMinimalViableSchemaForRequestDocument)(
|
|
40
|
+
(0, import_graphql.buildASTSchema)(definitions),
|
|
57
41
|
document
|
|
58
42
|
);
|
|
59
43
|
return (0, import_index.executeWithoutSchema)({
|
|
60
44
|
document,
|
|
61
|
-
schemaFragment:
|
|
62
|
-
|
|
63
|
-
|
|
45
|
+
schemaFragment: {
|
|
46
|
+
schemaId: "executeWithSchema",
|
|
47
|
+
definitions: extracted.definitions,
|
|
48
|
+
resolvers
|
|
49
|
+
},
|
|
64
50
|
rootValue,
|
|
65
51
|
contextValue,
|
|
66
52
|
variableValues,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/executeWithSchema.ts"],
|
|
4
|
-
"sourcesContent": ["import { buildASTSchema } from \"graphql\";\nimport { executeWithoutSchema } from \"./index\";\nimport { PromiseOrValue } from \"./jsutils/PromiseOrValue\";\nimport { ExecutionResult, ExecutionWithSchemaArgs } from \"./types\";\nimport { extractMinimalViableSchemaForRequestDocument } from \"./utilities/extractMinimalViableSchemaForRequestDocument\";\n\nexport function executeWithSchema({\n
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["import { buildASTSchema } from \"graphql\";\nimport { executeWithoutSchema } from \"./index\";\nimport { PromiseOrValue } from \"./jsutils/PromiseOrValue\";\nimport { ExecutionResult, ExecutionWithSchemaArgs } from \"./types\";\nimport { extractMinimalViableSchemaForRequestDocument } from \"./utilities/extractMinimalViableSchemaForRequestDocument\";\n\nexport function executeWithSchema({\n document,\n definitions,\n resolvers,\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n fieldExecutionHooks,\n}: ExecutionWithSchemaArgs): PromiseOrValue<ExecutionResult> {\n const extracted = extractMinimalViableSchemaForRequestDocument(\n buildASTSchema(definitions),\n document,\n );\n return executeWithoutSchema({\n document,\n schemaFragment: {\n schemaId: \"executeWithSchema\",\n definitions: extracted.definitions,\n resolvers,\n },\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n fieldExecutionHooks,\n });\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA+B;AAC/B,mBAAqC;AAGrC,0DAA6D;AAEtD,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA6D;AAC3D,QAAM,gBAAY;AAAA,QAChB,+BAAe,WAAW;AAAA,IAC1B;AAAA,EACF;AACA,aAAO,mCAAqB;AAAA,IAC1B;AAAA,IACA,gBAAgB;AAAA,MACd,UAAU;AAAA,MACV,aAAa,UAAU;AAAA,MACvB;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,30 +1,11 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __defProps = Object.defineProperties;
|
|
3
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
-
var __spreadValues = (a, b) => {
|
|
9
|
-
for (var prop in b || (b = {}))
|
|
10
|
-
if (__hasOwnProp.call(b, prop))
|
|
11
|
-
__defNormalProp(a, prop, b[prop]);
|
|
12
|
-
if (__getOwnPropSymbols)
|
|
13
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
-
if (__propIsEnum.call(b, prop))
|
|
15
|
-
__defNormalProp(a, prop, b[prop]);
|
|
16
|
-
}
|
|
17
|
-
return a;
|
|
18
|
-
};
|
|
19
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
|
-
|
|
21
1
|
// src/executeWithSchema.ts
|
|
22
2
|
import { buildASTSchema } from "graphql";
|
|
23
3
|
import { executeWithoutSchema } from "./index.mjs";
|
|
24
4
|
import { extractMinimalViableSchemaForRequestDocument } from "./utilities/extractMinimalViableSchemaForRequestDocument.mjs";
|
|
25
5
|
function executeWithSchema({
|
|
26
|
-
schema,
|
|
27
6
|
document,
|
|
7
|
+
definitions,
|
|
8
|
+
resolvers,
|
|
28
9
|
rootValue,
|
|
29
10
|
contextValue,
|
|
30
11
|
variableValues,
|
|
@@ -33,15 +14,17 @@ function executeWithSchema({
|
|
|
33
14
|
typeResolver,
|
|
34
15
|
fieldExecutionHooks
|
|
35
16
|
}) {
|
|
36
|
-
const
|
|
37
|
-
buildASTSchema(
|
|
17
|
+
const extracted = extractMinimalViableSchemaForRequestDocument(
|
|
18
|
+
buildASTSchema(definitions),
|
|
38
19
|
document
|
|
39
20
|
);
|
|
40
21
|
return executeWithoutSchema({
|
|
41
22
|
document,
|
|
42
|
-
schemaFragment:
|
|
43
|
-
|
|
44
|
-
|
|
23
|
+
schemaFragment: {
|
|
24
|
+
schemaId: "executeWithSchema",
|
|
25
|
+
definitions: extracted.definitions,
|
|
26
|
+
resolvers
|
|
27
|
+
},
|
|
45
28
|
rootValue,
|
|
46
29
|
contextValue,
|
|
47
30
|
variableValues,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/executeWithSchema.ts"],
|
|
4
|
-
"sourcesContent": ["import { buildASTSchema } from \"graphql\";\nimport { executeWithoutSchema } from \"./index\";\nimport { PromiseOrValue } from \"./jsutils/PromiseOrValue\";\nimport { ExecutionResult, ExecutionWithSchemaArgs } from \"./types\";\nimport { extractMinimalViableSchemaForRequestDocument } from \"./utilities/extractMinimalViableSchemaForRequestDocument\";\n\nexport function executeWithSchema({\n
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["import { buildASTSchema } from \"graphql\";\nimport { executeWithoutSchema } from \"./index\";\nimport { PromiseOrValue } from \"./jsutils/PromiseOrValue\";\nimport { ExecutionResult, ExecutionWithSchemaArgs } from \"./types\";\nimport { extractMinimalViableSchemaForRequestDocument } from \"./utilities/extractMinimalViableSchemaForRequestDocument\";\n\nexport function executeWithSchema({\n document,\n definitions,\n resolvers,\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n fieldExecutionHooks,\n}: ExecutionWithSchemaArgs): PromiseOrValue<ExecutionResult> {\n const extracted = extractMinimalViableSchemaForRequestDocument(\n buildASTSchema(definitions),\n document,\n );\n return executeWithoutSchema({\n document,\n schemaFragment: {\n schemaId: \"executeWithSchema\",\n definitions: extracted.definitions,\n resolvers,\n },\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n fieldExecutionHooks,\n });\n}\n"],
|
|
5
|
+
"mappings": ";AAAA,SAAS,sBAAsB;AAC/B,SAAS,4BAA4B;AAGrC,SAAS,oDAAoD;AAEtD,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA6D;AAC3D,QAAM,YAAY;AAAA,IAChB,eAAe,WAAW;AAAA,IAC1B;AAAA,EACF;AACA,SAAO,qBAAqB;AAAA,IAC1B;AAAA,IACA,gBAAgB;AAAA,MACd,UAAU;AAAA,MACV,aAAa,UAAU;AAAA,MACvB;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -4,9 +4,8 @@ import type { Maybe } from "./jsutils/Maybe";
|
|
|
4
4
|
import type { ObjMap } from "./jsutils/ObjMap";
|
|
5
5
|
import type { Path } from "./jsutils/Path";
|
|
6
6
|
import type { PromiseOrValue } from "./jsutils/PromiseOrValue";
|
|
7
|
-
import { ExecutionWithoutSchemaArgs, FunctionFieldResolver, ResolveInfo, TypeResolver, ExecutionResult, IncrementalExecutionResult } from "./types";
|
|
7
|
+
import type { ExecutionWithoutSchemaArgs, FunctionFieldResolver, ResolveInfo, TypeResolver, ExecutionResult, IncrementalExecutionResult, SchemaFragment, SchemaFragmentLoader } from "./types";
|
|
8
8
|
import { ExecutionHooks } from "./hooks/types";
|
|
9
|
-
import { PartialSchema, SchemaFragment, SchemaFragmentLoader } from "./schema/fragment";
|
|
10
9
|
/**
|
|
11
10
|
* Terminology
|
|
12
11
|
*
|
|
@@ -33,7 +32,6 @@ import { PartialSchema, SchemaFragment, SchemaFragmentLoader } from "./schema/fr
|
|
|
33
32
|
* and the fragments defined in the query document
|
|
34
33
|
*/
|
|
35
34
|
export interface ExecutionContext {
|
|
36
|
-
partialSchema: PartialSchema;
|
|
37
35
|
schemaFragment: SchemaFragment;
|
|
38
36
|
schemaFragmentLoader?: SchemaFragmentLoader;
|
|
39
37
|
fragments: ObjMap<FragmentDefinitionNode>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executeWithoutSchema.d.ts","sourceRoot":"","sources":["../src/executeWithoutSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAIZ,YAAY,EACZ,sBAAsB,EACtB,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,SAAS,CAAC;AACjB,OAAO,EAGL,UAAU,EAEX,MAAM,iBAAiB,CAAC;AAOzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAG3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,
|
|
1
|
+
{"version":3,"file":"executeWithoutSchema.d.ts","sourceRoot":"","sources":["../src/executeWithoutSchema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
2
3
|
var __defProp = Object.defineProperty;
|
|
3
4
|
var __defProps = Object.defineProperties;
|
|
4
5
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
6
|
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
6
7
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
8
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
9
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
8
10
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
11
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
10
12
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
@@ -32,6 +34,14 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
32
34
|
}
|
|
33
35
|
return to;
|
|
34
36
|
};
|
|
37
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
38
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
39
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
40
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
41
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
42
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
43
|
+
mod
|
|
44
|
+
));
|
|
35
45
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
36
46
|
var __async = (__this, __arguments, generator) => {
|
|
37
47
|
return new Promise((resolve, reject) => {
|
|
@@ -82,14 +92,15 @@ var import_isAsyncIterable = require("./jsutils/isAsyncIterable");
|
|
|
82
92
|
var import_mapAsyncIterator = require("./utilities/mapAsyncIterator");
|
|
83
93
|
var import_directives = require("./schema/directives");
|
|
84
94
|
var import_memoize3 = require("./jsutils/memoize3");
|
|
85
|
-
var import_fragment = require("./schema/fragment");
|
|
86
95
|
var import_reference = require("./schema/reference");
|
|
96
|
+
var Definitions = __toESM(require("./schema/definition"));
|
|
97
|
+
var Resolvers = __toESM(require("./schema/resolvers"));
|
|
87
98
|
const collectSubfields = (0, import_memoize3.memoize3)(
|
|
88
99
|
(exeContext, returnTypeName, fieldGroup) => (0, import_collectFields.collectSubfields)(exeContext, returnTypeName.name, fieldGroup)
|
|
89
100
|
);
|
|
90
101
|
function executeWithoutSchema(args) {
|
|
91
102
|
const exeContext = buildExecutionContext(args);
|
|
92
|
-
if (!("
|
|
103
|
+
if (!("schemaFragment" in exeContext)) {
|
|
93
104
|
return { errors: exeContext };
|
|
94
105
|
} else {
|
|
95
106
|
return executeOperation(exeContext);
|
|
@@ -105,7 +116,6 @@ function assertValidExecutionArguments(document, rawVariableValues) {
|
|
|
105
116
|
function buildExecutionContext(args) {
|
|
106
117
|
var _a, _b;
|
|
107
118
|
const {
|
|
108
|
-
// resolvers,
|
|
109
119
|
schemaFragment,
|
|
110
120
|
schemaFragmentLoader,
|
|
111
121
|
document,
|
|
@@ -150,9 +160,8 @@ function buildExecutionContext(args) {
|
|
|
150
160
|
return [new import_graphql.GraphQLError("Must provide an operation.")];
|
|
151
161
|
}
|
|
152
162
|
const variableDefinitions = (_b = operation.variableDefinitions) != null ? _b : [];
|
|
153
|
-
const partialSchema = new import_fragment.PartialSchema(schemaFragment);
|
|
154
163
|
const coercedVariableValues = (0, import_values.getVariableValues)(
|
|
155
|
-
|
|
164
|
+
schemaFragment,
|
|
156
165
|
variableDefinitions,
|
|
157
166
|
variableValues != null ? variableValues : {},
|
|
158
167
|
{ maxErrors: 50 }
|
|
@@ -161,7 +170,6 @@ function buildExecutionContext(args) {
|
|
|
161
170
|
return coercedVariableValues.errors;
|
|
162
171
|
}
|
|
163
172
|
return {
|
|
164
|
-
partialSchema,
|
|
165
173
|
schemaFragment,
|
|
166
174
|
schemaFragmentLoader,
|
|
167
175
|
fragments,
|
|
@@ -325,8 +333,13 @@ function executeFields(exeContext, parentTypeName, sourceValue, path, groupedFie
|
|
|
325
333
|
return (0, import_promiseForObject.promiseForObject)(results);
|
|
326
334
|
}
|
|
327
335
|
function executeField(exeContext, parentTypeName, source, fieldGroup, path, incrementalDataRecord) {
|
|
336
|
+
const schemaFragment = exeContext.schemaFragment;
|
|
328
337
|
const fieldName = fieldGroup[0].name.value;
|
|
329
|
-
const fieldDef =
|
|
338
|
+
const fieldDef = Definitions.getField(
|
|
339
|
+
schemaFragment.definitions,
|
|
340
|
+
parentTypeName,
|
|
341
|
+
fieldName
|
|
342
|
+
);
|
|
330
343
|
if (fieldDef !== void 0) {
|
|
331
344
|
return resolveAndCompleteField(
|
|
332
345
|
exeContext,
|
|
@@ -338,30 +351,51 @@ function executeField(exeContext, parentTypeName, source, fieldGroup, path, incr
|
|
|
338
351
|
incrementalDataRecord
|
|
339
352
|
);
|
|
340
353
|
}
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
}
|
|
344
|
-
return exeContext.schemaFragmentLoader(exeContext.schemaFragment, exeContext.contextValue, {
|
|
345
|
-
kind: "byField",
|
|
354
|
+
const loading = requestSchemaFragment(exeContext, {
|
|
355
|
+
kind: "ReturnType",
|
|
346
356
|
parentTypeName,
|
|
347
357
|
fieldName
|
|
348
|
-
})
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
358
|
+
});
|
|
359
|
+
if (!loading) {
|
|
360
|
+
return void 0;
|
|
361
|
+
}
|
|
362
|
+
return loading.then(() => {
|
|
363
|
+
const fieldDef2 = Definitions.getField(
|
|
364
|
+
exeContext.schemaFragment.definitions,
|
|
353
365
|
parentTypeName,
|
|
354
366
|
fieldName
|
|
355
367
|
);
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
368
|
+
if (fieldDef2 !== void 0) {
|
|
369
|
+
return resolveAndCompleteField(
|
|
370
|
+
exeContext,
|
|
371
|
+
parentTypeName,
|
|
372
|
+
fieldDef2,
|
|
373
|
+
fieldGroup,
|
|
374
|
+
path,
|
|
375
|
+
source,
|
|
376
|
+
incrementalDataRecord
|
|
377
|
+
);
|
|
378
|
+
}
|
|
379
|
+
return void 0;
|
|
380
|
+
});
|
|
381
|
+
}
|
|
382
|
+
function requestSchemaFragment(exeContext, request) {
|
|
383
|
+
if (!exeContext.schemaFragmentLoader) {
|
|
384
|
+
return;
|
|
385
|
+
}
|
|
386
|
+
const currentSchemaId = exeContext.schemaFragment.schemaId;
|
|
387
|
+
return exeContext.schemaFragmentLoader(
|
|
388
|
+
exeContext.schemaFragment,
|
|
389
|
+
exeContext.contextValue,
|
|
390
|
+
request
|
|
391
|
+
).then(({ mergedFragment, mergedContextValue }) => {
|
|
392
|
+
if (currentSchemaId !== mergedFragment.schemaId) {
|
|
393
|
+
throw new Error(
|
|
394
|
+
`Cannot use new schema fragment: old and new fragments describe different schemas: ${currentSchemaId} vs. ${mergedFragment.schemaId}`
|
|
395
|
+
);
|
|
396
|
+
}
|
|
397
|
+
exeContext.contextValue = mergedContextValue != null ? mergedContextValue : exeContext.contextValue;
|
|
398
|
+
exeContext.schemaFragment = mergedFragment;
|
|
365
399
|
});
|
|
366
400
|
}
|
|
367
401
|
function createSourceEventStream(exeContext) {
|
|
@@ -377,21 +411,29 @@ function createSourceEventStream(exeContext) {
|
|
|
377
411
|
}
|
|
378
412
|
function executeSubscriptionImpl(exeContext) {
|
|
379
413
|
var _a;
|
|
380
|
-
const { operation, rootValue,
|
|
414
|
+
const { operation, rootValue, schemaFragment } = exeContext;
|
|
381
415
|
const rootTypeName = getOperationRootTypeName(operation);
|
|
382
416
|
const { groupedFieldSet } = (0, import_collectFields.collectFields)(exeContext, rootTypeName);
|
|
383
417
|
const firstRootField = groupedFieldSet.entries().next().value;
|
|
384
418
|
const [responseName, fieldGroup] = firstRootField;
|
|
385
419
|
const fieldName = fieldGroup[0].name.value;
|
|
386
|
-
const fieldDef =
|
|
420
|
+
const fieldDef = Definitions.getField(
|
|
421
|
+
schemaFragment.definitions,
|
|
422
|
+
rootTypeName,
|
|
423
|
+
fieldName
|
|
424
|
+
);
|
|
387
425
|
if (!fieldDef) {
|
|
388
426
|
throw new import_graphql.GraphQLError(
|
|
389
427
|
`The subscription field "${fieldName}" is not defined.`,
|
|
390
428
|
{ nodes: fieldGroup }
|
|
391
429
|
);
|
|
392
430
|
}
|
|
393
|
-
const returnTypeRef =
|
|
394
|
-
const resolveFn = (_a =
|
|
431
|
+
const returnTypeRef = Definitions.getFieldTypeReference(fieldDef);
|
|
432
|
+
const resolveFn = (_a = Resolvers.getSubscriptionFieldResolver(
|
|
433
|
+
schemaFragment,
|
|
434
|
+
rootTypeName,
|
|
435
|
+
fieldName
|
|
436
|
+
)) != null ? _a : exeContext.subscribeFieldResolver;
|
|
395
437
|
const path = (0, import_Path.addPath)(void 0, responseName, rootTypeName);
|
|
396
438
|
const info = buildResolveInfo(
|
|
397
439
|
exeContext,
|
|
@@ -485,8 +527,12 @@ function handleFieldError(rawError, exeContext, returnTypeRef, fieldGroup, path,
|
|
|
485
527
|
function resolveAndCompleteField(exeContext, parentTypeName, fieldDefinition, fieldGroup, path, source, incrementalDataRecord) {
|
|
486
528
|
var _a;
|
|
487
529
|
const fieldName = fieldGroup[0].name.value;
|
|
488
|
-
const returnTypeRef =
|
|
489
|
-
const resolveFn = (_a =
|
|
530
|
+
const returnTypeRef = Definitions.getFieldTypeReference(fieldDefinition);
|
|
531
|
+
const resolveFn = (_a = Resolvers.getFieldResolver(
|
|
532
|
+
exeContext.schemaFragment,
|
|
533
|
+
parentTypeName,
|
|
534
|
+
fieldName
|
|
535
|
+
)) != null ? _a : exeContext.fieldResolver;
|
|
490
536
|
const info = buildResolveInfo(
|
|
491
537
|
exeContext,
|
|
492
538
|
fieldName,
|
|
@@ -626,13 +672,13 @@ function completeValue(exeContext, returnTypeRef, fieldGroup, info, path, result
|
|
|
626
672
|
incrementalDataRecord
|
|
627
673
|
);
|
|
628
674
|
}
|
|
629
|
-
const
|
|
675
|
+
const { schemaFragment } = exeContext;
|
|
630
676
|
const returnTypeName = (0, import_reference.typeNameFromReference)(returnTypeRef);
|
|
631
|
-
const leafType =
|
|
677
|
+
const leafType = Resolvers.getLeafTypeResolver(schemaFragment, returnTypeRef);
|
|
632
678
|
if (leafType) {
|
|
633
679
|
return completeLeafValue(leafType, result);
|
|
634
680
|
}
|
|
635
|
-
if (
|
|
681
|
+
if (Definitions.isAbstractType(schemaFragment.definitions, returnTypeRef)) {
|
|
636
682
|
return completeAbstractValue(
|
|
637
683
|
exeContext,
|
|
638
684
|
returnTypeName,
|
|
@@ -643,7 +689,7 @@ function completeValue(exeContext, returnTypeRef, fieldGroup, info, path, result
|
|
|
643
689
|
incrementalDataRecord
|
|
644
690
|
);
|
|
645
691
|
}
|
|
646
|
-
if (
|
|
692
|
+
if (Definitions.isObjectType(schemaFragment.definitions, returnTypeRef)) {
|
|
647
693
|
return completeObjectValue(
|
|
648
694
|
exeContext,
|
|
649
695
|
returnTypeName,
|
|
@@ -894,21 +940,32 @@ function completeLeafValue(returnType, result) {
|
|
|
894
940
|
}
|
|
895
941
|
function completeAbstractValue(exeContext, returnTypeName, fieldGroup, info, path, result, incrementalDataRecord) {
|
|
896
942
|
var _a;
|
|
897
|
-
const
|
|
943
|
+
const { schemaFragment } = exeContext;
|
|
944
|
+
const resolveTypeFn = (_a = Resolvers.getAbstractTypeResolver(schemaFragment, returnTypeName)) != null ? _a : exeContext.typeResolver;
|
|
898
945
|
const contextValue = exeContext.contextValue;
|
|
899
946
|
const runtimeTypeName = resolveTypeFn(result, contextValue, info);
|
|
900
|
-
|
|
901
|
-
|
|
947
|
+
const validatedRuntimeTypeName = (0, import_isPromise.isPromise)(runtimeTypeName) ? runtimeTypeName.then(
|
|
948
|
+
(resolvedRuntimeTypeName) => ensureValidRuntimeType(
|
|
949
|
+
resolvedRuntimeTypeName,
|
|
950
|
+
exeContext,
|
|
951
|
+
returnTypeName,
|
|
952
|
+
fieldGroup,
|
|
953
|
+
info,
|
|
954
|
+
result
|
|
955
|
+
)
|
|
956
|
+
) : ensureValidRuntimeType(
|
|
957
|
+
runtimeTypeName,
|
|
958
|
+
exeContext,
|
|
959
|
+
returnTypeName,
|
|
960
|
+
fieldGroup,
|
|
961
|
+
info,
|
|
962
|
+
result
|
|
963
|
+
);
|
|
964
|
+
if ((0, import_isPromise.isPromise)(validatedRuntimeTypeName)) {
|
|
965
|
+
return validatedRuntimeTypeName.then(
|
|
902
966
|
(resolvedRuntimeTypeName) => completeObjectValue(
|
|
903
967
|
exeContext,
|
|
904
|
-
|
|
905
|
-
resolvedRuntimeTypeName,
|
|
906
|
-
exeContext,
|
|
907
|
-
returnTypeName,
|
|
908
|
-
fieldGroup,
|
|
909
|
-
info,
|
|
910
|
-
result
|
|
911
|
-
),
|
|
968
|
+
resolvedRuntimeTypeName,
|
|
912
969
|
fieldGroup,
|
|
913
970
|
path,
|
|
914
971
|
result,
|
|
@@ -918,14 +975,7 @@ function completeAbstractValue(exeContext, returnTypeName, fieldGroup, info, pat
|
|
|
918
975
|
}
|
|
919
976
|
return completeObjectValue(
|
|
920
977
|
exeContext,
|
|
921
|
-
|
|
922
|
-
runtimeTypeName,
|
|
923
|
-
exeContext,
|
|
924
|
-
returnTypeName,
|
|
925
|
-
fieldGroup,
|
|
926
|
-
info,
|
|
927
|
-
result
|
|
928
|
-
),
|
|
978
|
+
validatedRuntimeTypeName,
|
|
929
979
|
fieldGroup,
|
|
930
980
|
path,
|
|
931
981
|
result,
|
|
@@ -944,37 +994,72 @@ function ensureValidRuntimeType(runtimeTypeName, exeContext, returnTypeName, fie
|
|
|
944
994
|
`Abstract type "${returnTypeName}" must resolve to an Object type at runtime for field "${info.returnTypeName}.${info.fieldName}" with value ${(0, import_inspect.inspect)(result)}, received "${(0, import_inspect.inspect)(runtimeTypeName)}".`
|
|
945
995
|
);
|
|
946
996
|
}
|
|
947
|
-
const
|
|
948
|
-
const
|
|
949
|
-
|
|
950
|
-
|
|
997
|
+
const strictInterfaceValidation = !!exeContext.schemaFragmentLoader;
|
|
998
|
+
const isDefinedType = Definitions.isDefined(
|
|
999
|
+
exeContext.schemaFragment.definitions,
|
|
1000
|
+
runtimeTypeName
|
|
1001
|
+
);
|
|
1002
|
+
const loading = !isDefinedType ? requestSchemaFragment(exeContext, {
|
|
1003
|
+
kind: "RuntimeType",
|
|
1004
|
+
abstractTypeName: returnTypeName,
|
|
1005
|
+
runtimeTypeName
|
|
1006
|
+
}) : void 0;
|
|
1007
|
+
return loading ? loading.then(
|
|
1008
|
+
() => ensureValidRuntimeTypeImpl(
|
|
1009
|
+
runtimeTypeName,
|
|
1010
|
+
exeContext,
|
|
1011
|
+
returnTypeName,
|
|
1012
|
+
fieldGroup,
|
|
1013
|
+
strictInterfaceValidation
|
|
1014
|
+
)
|
|
1015
|
+
) : ensureValidRuntimeTypeImpl(
|
|
1016
|
+
runtimeTypeName,
|
|
1017
|
+
exeContext,
|
|
1018
|
+
returnTypeName,
|
|
1019
|
+
fieldGroup,
|
|
1020
|
+
strictInterfaceValidation
|
|
1021
|
+
);
|
|
1022
|
+
}
|
|
1023
|
+
function ensureValidRuntimeTypeImpl(runtimeTypeName, exeContext, returnTypeName, fieldGroup, strictInterfaceValidation) {
|
|
1024
|
+
const definitions = exeContext.schemaFragment.definitions;
|
|
1025
|
+
const union = Definitions.getUnionType(definitions, returnTypeName);
|
|
1026
|
+
if (union || strictInterfaceValidation) {
|
|
1027
|
+
if (!Definitions.isDefined(definitions, runtimeTypeName)) {
|
|
951
1028
|
throw new import_graphql.GraphQLError(
|
|
952
|
-
`Abstract type "${returnTypeName}" was resolved to a
|
|
1029
|
+
`Abstract type "${returnTypeName}" was resolved to a type "${runtimeTypeName}" that does not exist inside the schema.`,
|
|
953
1030
|
{ nodes: fieldGroup }
|
|
954
1031
|
);
|
|
955
1032
|
}
|
|
956
|
-
|
|
957
|
-
} else {
|
|
958
|
-
if (!partialSchema.isDefined(runtimeTypeName)) {
|
|
1033
|
+
if (!Definitions.isObjectType(definitions, runtimeTypeName)) {
|
|
959
1034
|
throw new import_graphql.GraphQLError(
|
|
960
|
-
`Abstract type "${returnTypeName}" was resolved to a type "${runtimeTypeName}"
|
|
1035
|
+
`Abstract type "${returnTypeName}" was resolved to a non-object type "${runtimeTypeName}".`,
|
|
961
1036
|
{ nodes: fieldGroup }
|
|
962
1037
|
);
|
|
963
1038
|
}
|
|
964
|
-
if (!
|
|
1039
|
+
if (!Definitions.isSubType(definitions, returnTypeName, runtimeTypeName)) {
|
|
965
1040
|
throw new import_graphql.GraphQLError(
|
|
966
|
-
`
|
|
1041
|
+
`Runtime Object type "${runtimeTypeName}" is not a possible type for "${returnTypeName}".`,
|
|
967
1042
|
{ nodes: fieldGroup }
|
|
968
1043
|
);
|
|
969
1044
|
}
|
|
970
|
-
|
|
1045
|
+
return runtimeTypeName;
|
|
1046
|
+
}
|
|
1047
|
+
const iface = Definitions.getInterfaceType(definitions, returnTypeName);
|
|
1048
|
+
if (iface) {
|
|
1049
|
+
if (Definitions.isDefined(definitions, runtimeTypeName) && !Definitions.isObjectType(definitions, runtimeTypeName)) {
|
|
971
1050
|
throw new import_graphql.GraphQLError(
|
|
972
|
-
`
|
|
1051
|
+
`Abstract type "${returnTypeName}" was resolved to a non-object type "${runtimeTypeName}".`,
|
|
973
1052
|
{ nodes: fieldGroup }
|
|
974
1053
|
);
|
|
975
1054
|
}
|
|
1055
|
+
Definitions.addInterfaceImplementation(
|
|
1056
|
+
definitions,
|
|
1057
|
+
returnTypeName,
|
|
1058
|
+
runtimeTypeName
|
|
1059
|
+
);
|
|
1060
|
+
return runtimeTypeName;
|
|
976
1061
|
}
|
|
977
|
-
|
|
1062
|
+
(0, import_invariant.invariant)(false, `${returnTypeName} is not an abstract type`);
|
|
978
1063
|
}
|
|
979
1064
|
function completeObjectValue(exeContext, returnTypeName, fieldGroup, path, result, incrementalDataRecord) {
|
|
980
1065
|
return collectAndExecuteSubfields(
|