grafast 1.0.2 → 1.1.0
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/README.md +0 -1
- package/dist/engine/OperationPlan.d.ts +3 -8
- package/dist/engine/OperationPlan.d.ts.map +1 -1
- package/dist/engine/OperationPlan.js +5 -3
- package/dist/engine/OperationPlan.js.map +1 -1
- package/dist/engine/OutputPlan.d.ts +6 -0
- package/dist/engine/OutputPlan.d.ts.map +1 -1
- package/dist/engine/OutputPlan.js +19 -17
- package/dist/engine/OutputPlan.js.map +1 -1
- package/dist/engine/executeOutputPlan.d.ts.map +1 -1
- package/dist/engine/executeOutputPlan.js.map +1 -1
- package/dist/execute.d.ts.map +1 -1
- package/dist/execute.js +15 -28
- package/dist/execute.js.map +1 -1
- package/dist/global.d.ts +1 -0
- package/dist/global.d.ts.map +1 -1
- package/dist/global.js +4 -0
- package/dist/global.js.map +1 -1
- package/dist/grafastGraphql.d.ts.map +1 -1
- package/dist/grafastGraphql.js +3 -1
- package/dist/grafastGraphql.js.map +1 -1
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/operationPlan-input.d.ts.map +1 -1
- package/dist/operationPlan-input.js +75 -67
- package/dist/operationPlan-input.js.map +1 -1
- package/dist/prepare.js +23 -19
- package/dist/prepare.js.map +1 -1
- package/dist/step.d.ts +1 -1
- package/dist/step.d.ts.map +1 -1
- package/dist/step.js +15 -6
- package/dist/step.js.map +1 -1
- package/dist/steps/__trackedValue.d.ts +2 -1
- package/dist/steps/__trackedValue.d.ts.map +1 -1
- package/dist/steps/__trackedValue.js +3 -0
- package/dist/steps/__trackedValue.js.map +1 -1
- package/dist/steps/coalesce.d.ts +1 -0
- package/dist/steps/coalesce.d.ts.map +1 -1
- package/dist/steps/coalesce.js +30 -5
- package/dist/steps/coalesce.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -82,7 +82,6 @@ requirements:
|
|
|
82
82
|
- for every request:
|
|
83
83
|
- `context` must be an object (anything suitable to be used as the key to a
|
|
84
84
|
`WeakMap`); if you do not need a context then `{}` is perfectly acceptable
|
|
85
|
-
- `rootValue` must be an object or `null`/`undefined`
|
|
86
85
|
- resolver limitations:
|
|
87
86
|
- only explicit field resolvers (baked into the GraphQL schema) are supported,
|
|
88
87
|
i.e. resolvers passed via `rootValue` are not (currently) supported
|
|
@@ -2,7 +2,7 @@ import type { FragmentDefinitionNode, GraphQLField, GraphQLObjectType, GraphQLOu
|
|
|
2
2
|
import { $$timeout, $$ts } from "../constants.ts";
|
|
3
3
|
import type { Constraint } from "../constraints.ts";
|
|
4
4
|
import type { ErrorBehavior, GrafastPlanJSON } from "../index.ts";
|
|
5
|
-
import { Step } from "../index.ts";
|
|
5
|
+
import { __ValueStep, Step } from "../index.ts";
|
|
6
6
|
import type { FieldPlanResolver, LocationDetails, TrackedArguments } from "../interfaces.ts";
|
|
7
7
|
import type { ApplyAfterModeArg } from "../operationPlan-input.ts";
|
|
8
8
|
import type { GrafastOperationOptions } from "../prepare.ts";
|
|
@@ -44,6 +44,8 @@ export declare class OperationPlan {
|
|
|
44
44
|
* Gets updated as we work our way through the plan, useful for making errors more helpful.
|
|
45
45
|
*/
|
|
46
46
|
loc: string[] | null;
|
|
47
|
+
/** Stores the actual value of rootValue. */
|
|
48
|
+
readonly rootValueStep: __ValueStep<any>;
|
|
47
49
|
/**
|
|
48
50
|
* If true, then this operation doesn't use (custom) resolvers.
|
|
49
51
|
*/
|
|
@@ -59,13 +61,6 @@ export declare class OperationPlan {
|
|
|
59
61
|
readonly fragments: {
|
|
60
62
|
[fragmentName: string]: FragmentDefinitionNode;
|
|
61
63
|
};
|
|
62
|
-
readonly variableValues: {
|
|
63
|
-
[key: string]: any;
|
|
64
|
-
};
|
|
65
|
-
readonly context: {
|
|
66
|
-
[key: string]: any;
|
|
67
|
-
};
|
|
68
|
-
readonly rootValue: any;
|
|
69
64
|
readonly errorBehavior: ErrorBehavior;
|
|
70
65
|
private readonly planningTimeout;
|
|
71
66
|
private readonly maxPlanningDepth;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OperationPlan.d.ts","sourceRoot":"","sources":["../../src/engine/OperationPlan.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,sBAAsB,EAEtB,YAAY,EAGZ,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,uBAAuB,EACxB,MAAM,SAAS,CAAC;AAIjB,OAAO,EAIL,SAAS,EACT,IAAI,EAGL,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAMpD,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EAEhB,MAAM,aAAa,CAAC;AACrB,OAAO,
|
|
1
|
+
{"version":3,"file":"OperationPlan.d.ts","sourceRoot":"","sources":["../../src/engine/OperationPlan.ts"],"names":[],"mappings":"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"}
|
|
@@ -138,9 +138,6 @@ class OperationPlan {
|
|
|
138
138
|
this.schema = schema;
|
|
139
139
|
this.operation = operation;
|
|
140
140
|
this.fragments = fragments;
|
|
141
|
-
this.variableValues = variableValues;
|
|
142
|
-
this.context = context;
|
|
143
|
-
this.rootValue = rootValue;
|
|
144
141
|
this.errorBehavior = errorBehavior;
|
|
145
142
|
this.planningTimeout = options?.timeouts?.planning ?? null;
|
|
146
143
|
this.maxPlanningDepth = options?.maxPlanningDepth ?? DEFAULT_MAX_DEPTH;
|
|
@@ -921,6 +918,9 @@ class OperationPlan {
|
|
|
921
918
|
mode: "object",
|
|
922
919
|
deferLabel: deferred.label,
|
|
923
920
|
typeName: objectType.name,
|
|
921
|
+
hasRootBehavior: outputPlan.type.mode === "root" ||
|
|
922
|
+
(outputPlan.type.mode === "object" &&
|
|
923
|
+
outputPlan.type.hasRootBehavior),
|
|
924
924
|
},
|
|
925
925
|
// LOGGING: the location details should be tweaked to reference this
|
|
926
926
|
// fragment
|
|
@@ -1515,6 +1515,7 @@ class OperationPlan {
|
|
|
1515
1515
|
mode: "object",
|
|
1516
1516
|
deferLabel: undefined,
|
|
1517
1517
|
typeName: nullableFieldType.name,
|
|
1518
|
+
hasRootBehavior: false,
|
|
1518
1519
|
}, locationDetails);
|
|
1519
1520
|
parentOutputPlan.addChild(parentObjectType, responseKey, {
|
|
1520
1521
|
type: "outputPlan",
|
|
@@ -1747,6 +1748,7 @@ class OperationPlan {
|
|
|
1747
1748
|
mode: "object",
|
|
1748
1749
|
deferLabel: undefined,
|
|
1749
1750
|
typeName: type.name,
|
|
1751
|
+
hasRootBehavior: false,
|
|
1750
1752
|
}, locationDetails);
|
|
1751
1753
|
this.planSelectionSet({
|
|
1752
1754
|
outputPlan: objectOutputPlan,
|