@graphitation/supermassive 4.0.1 → 4.2.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/CHANGELOG.md CHANGED
@@ -1,12 +1,28 @@
1
1
  # Change Log - @graphitation/supermassive
2
2
 
3
- <!-- This log was last generated on Mon, 10 Aug 2026 13:59:04 GMT and should not be manually modified. -->
3
+ <!-- This log was last generated on Mon, 14 Sep 2026 08:05:49 GMT and should not be manually modified. -->
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 4.2.0
8
+
9
+ Mon, 14 Sep 2026 08:05:49 GMT
10
+
11
+ ### Minor changes
12
+
13
+ - feat: add schemaFragmentLoader support for input variable types (dsamsonov@microsoft.com)
14
+
15
+ ## 4.1.0
16
+
17
+ Tue, 01 Sep 2026 11:12:33 GMT
18
+
19
+ ### Minor changes
20
+
21
+ - feat: do not mutate nested objects on resolver merge (dsamsonov@microsoft.com)
22
+
7
23
  ## 4.0.1
8
24
 
9
- Mon, 10 Aug 2026 13:59:04 GMT
25
+ Mon, 10 Aug 2026 14:26:56 GMT
10
26
 
11
27
  ### Patches
12
28
 
@@ -1,10 +1,9 @@
1
- import { GraphQLError, DocumentNode, FragmentDefinitionNode, OperationDefinitionNode, OperationTypeDefinitionNode } from "graphql";
1
+ import { GraphQLError, FragmentDefinitionNode, OperationDefinitionNode, OperationTypeDefinitionNode } from "graphql";
2
2
  import { FieldGroup } from "./collectFields";
3
- import type { Maybe } from "./jsutils/Maybe";
4
3
  import type { ObjMap } from "./jsutils/ObjMap";
5
4
  import type { Path } from "./jsutils/Path";
6
5
  import type { PromiseOrValue } from "./jsutils/PromiseOrValue";
7
- import type { ExecutionWithoutSchemaArgs, FunctionFieldResolver, ResolveInfo, TypeResolver, ExecutionResult, TotalExecutionResult, IncrementalExecutionResult, SchemaFragment, SchemaFragmentLoader } from "./types";
6
+ import type { ExecutionWithoutSchemaArgs, FunctionFieldResolver, ResolveInfo, TypeResolver, ExecutionResult, TotalExecutionResult, IncrementalExecutionResult, SchemaFragment, SchemaFragmentLoader, SchemaFragmentRequest } from "./types";
8
7
  import type { ExecutionHooks } from "./hooks/types";
9
8
  /**
10
9
  * Terminology
@@ -39,9 +38,7 @@ export interface ExecutionContext {
39
38
  contextValue: unknown;
40
39
  buildContextValue?: (contextValue?: unknown) => unknown;
41
40
  operation: OperationDefinitionNode;
42
- variableValues: {
43
- [variable: string]: unknown;
44
- };
41
+ variableValues: VariableValues;
45
42
  fieldResolver: FunctionFieldResolver<unknown, unknown>;
46
43
  typeResolver: TypeResolver<unknown, unknown>;
47
44
  subscribeFieldResolver: FunctionFieldResolver<unknown, unknown>;
@@ -51,6 +48,9 @@ export interface ExecutionContext {
51
48
  enablePerEventContext: boolean;
52
49
  enableEarlyExecution: boolean;
53
50
  }
51
+ type VariableValues = {
52
+ [variable: string]: unknown;
53
+ };
54
54
  /**
55
55
  * Implements the "Executing requests" section of the GraphQL specification.
56
56
  *
@@ -62,15 +62,12 @@ export interface ExecutionContext {
62
62
  * a GraphQLError will be thrown immediately explaining the invalid input.
63
63
  */
64
64
  export declare function executeWithoutSchema(args: ExecutionWithoutSchemaArgs): PromiseOrValue<ExecutionResult>;
65
- /**
66
- * Essential assertions before executing to provide developer feedback for
67
- * improper use of the GraphQL library.
68
- *
69
- * @internal
70
- */
71
- export declare function assertValidExecutionArguments(document: DocumentNode, rawVariableValues: Maybe<{
72
- [variable: string]: unknown;
73
- }>): void;
65
+ export interface SchemaFragmentLoaderContext {
66
+ contextValue: unknown;
67
+ schemaFragment: SchemaFragment;
68
+ schemaFragmentLoader?: SchemaFragmentLoader;
69
+ }
70
+ export declare function requestSchemaFragment(exeContext: SchemaFragmentLoaderContext, request: SchemaFragmentRequest): PromiseOrValue<void>;
74
71
  /**
75
72
  * @internal
76
73
  */
@@ -1 +1 @@
1
- {"version":3,"file":"executeWithoutSchema.d.ts","sourceRoot":"","sources":["../src/executeWithoutSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executeWithoutSchema.d.ts","sourceRoot":"","sources":["../src/executeWithoutSchema.ts"],"names":[],"mappings":"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"}
@@ -28,14 +28,14 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
29
  var executeWithoutSchema_exports = {};
30
30
  __export(executeWithoutSchema_exports, {
31
- assertValidExecutionArguments: () => assertValidExecutionArguments,
32
31
  buildResolveInfo: () => buildResolveInfo,
33
32
  defaultFieldResolver: () => defaultFieldResolver,
34
33
  defaultTypeResolver: () => defaultTypeResolver,
35
34
  executeWithoutSchema: () => executeWithoutSchema,
36
35
  getOperationRootTypeName: () => getOperationRootTypeName,
37
36
  isIncrementalExecutionResult: () => isIncrementalExecutionResult,
38
- isTotalExecutionResult: () => isTotalExecutionResult
37
+ isTotalExecutionResult: () => isTotalExecutionResult,
38
+ requestSchemaFragment: () => requestSchemaFragment
39
39
  });
40
40
  module.exports = __toCommonJS(executeWithoutSchema_exports);
41
41
  var import_graphql = require("graphql");
@@ -62,12 +62,26 @@ const collectSubfields = (0, import_memoize3.memoize3)(
62
62
  (exeContext, returnTypeName, fieldGroup) => (0, import_collectFields.collectSubfields)(exeContext, returnTypeName.name, fieldGroup)
63
63
  );
64
64
  function executeWithoutSchema(args) {
65
+ const { document, variableValues } = args;
66
+ assertValidExecutionArguments(document, variableValues);
65
67
  const exeContext = buildExecutionContext(args);
66
- if (!("schemaFragment" in exeContext)) {
68
+ if (Array.isArray(exeContext)) {
67
69
  return { errors: exeContext };
68
- } else {
70
+ }
71
+ const coersionResult = populateVariableValuesInContext(
72
+ exeContext,
73
+ variableValues
74
+ );
75
+ const handleCoersionResult = (coersionErrors) => {
76
+ if (Array.isArray(coersionErrors)) {
77
+ return { errors: coersionErrors };
78
+ }
69
79
  return executeOperationWithBeforeHook(exeContext);
80
+ };
81
+ if ((0, import_isPromise.isPromise)(coersionResult)) {
82
+ return coersionResult.then(handleCoersionResult);
70
83
  }
84
+ return handleCoersionResult(coersionResult);
71
85
  }
72
86
  function assertValidExecutionArguments(document, rawVariableValues) {
73
87
  (0, import_devAssert.devAssert)(document, "Must provide document.");
@@ -76,8 +90,39 @@ function assertValidExecutionArguments(document, rawVariableValues) {
76
90
  "Variables must be provided as an Object where each property is a variable value. Perhaps look to see if an unparsed JSON string was provided."
77
91
  );
78
92
  }
93
+ function populateVariableValuesInContext(exeContext, rawVariableValues) {
94
+ var _a;
95
+ const { operation, schemaFragment } = exeContext;
96
+ const variableDefinitions = (_a = operation.variableDefinitions) != null ? _a : [];
97
+ const missingTypes = (0, import_values.getMissingVariableTypes)(
98
+ variableDefinitions,
99
+ schemaFragment
100
+ );
101
+ const coerce = () => {
102
+ const coercedVariableValues = (0, import_values.getVariableValues)(
103
+ schemaFragment,
104
+ variableDefinitions,
105
+ rawVariableValues != null ? rawVariableValues : {},
106
+ { maxErrors: 50 }
107
+ );
108
+ if (coercedVariableValues.errors) {
109
+ return coercedVariableValues.errors;
110
+ }
111
+ exeContext.variableValues = coercedVariableValues.coerced;
112
+ };
113
+ if (missingTypes.length) {
114
+ const pendingSchemaLoad = requestSchemaFragment(exeContext, {
115
+ kind: "InputVariables",
116
+ typeNames: missingTypes
117
+ });
118
+ if ((0, import_isPromise.isPromise)(pendingSchemaLoad)) {
119
+ return pendingSchemaLoad.then(coerce);
120
+ }
121
+ }
122
+ return coerce();
123
+ }
79
124
  function buildExecutionContext(args) {
80
- var _a, _b;
125
+ var _a;
81
126
  const {
82
127
  schemaFragment,
83
128
  schemaFragmentLoader,
@@ -85,7 +130,6 @@ function buildExecutionContext(args) {
85
130
  rootValue,
86
131
  contextValue,
87
132
  buildContextValue,
88
- variableValues,
89
133
  operationName,
90
134
  fieldResolver,
91
135
  typeResolver,
@@ -94,7 +138,6 @@ function buildExecutionContext(args) {
94
138
  enablePerEventContext,
95
139
  enableEarlyExecution
96
140
  } = args;
97
- assertValidExecutionArguments(document, variableValues);
98
141
  let operation;
99
142
  const fragments = /* @__PURE__ */ Object.create(null);
100
143
  for (const definition of document.definitions) {
@@ -125,16 +168,6 @@ function buildExecutionContext(args) {
125
168
  }
126
169
  return [(0, import_graphql.locatedError)("Must provide an operation.", [])];
127
170
  }
128
- const variableDefinitions = (_b = operation.variableDefinitions) != null ? _b : [];
129
- const coercedVariableValues = (0, import_values.getVariableValues)(
130
- schemaFragment,
131
- variableDefinitions,
132
- variableValues != null ? variableValues : {},
133
- { maxErrors: 50 }
134
- );
135
- if (coercedVariableValues.errors) {
136
- return coercedVariableValues.errors;
137
- }
138
171
  return {
139
172
  schemaFragment,
140
173
  schemaFragmentLoader,
@@ -143,7 +176,7 @@ function buildExecutionContext(args) {
143
176
  contextValue: buildContextValue ? buildContextValue(contextValue) : contextValue,
144
177
  buildContextValue,
145
178
  operation,
146
- variableValues: coercedVariableValues.coerced,
179
+ variableValues: {},
147
180
  fieldResolver: fieldResolver != null ? fieldResolver : defaultFieldResolver,
148
181
  typeResolver: typeResolver != null ? typeResolver : defaultTypeResolver,
149
182
  subscribeFieldResolver: subscribeFieldResolver != null ? subscribeFieldResolver : defaultFieldResolver,