@wundergraph/composition 0.20.0 → 0.20.2
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/dist/ast/utils.js +1 -1
- package/dist/ast/utils.js.map +1 -1
- package/dist/errors/errors.d.ts +8 -3
- package/dist/errors/errors.js +62 -19
- package/dist/errors/errors.js.map +1 -1
- package/dist/federation/federation-factory.js +10 -9
- package/dist/federation/federation-factory.js.map +1 -1
- package/dist/federation/walkers.js +8 -0
- package/dist/federation/walkers.js.map +1 -1
- package/dist/normalization/normalization-factory.d.ts +2 -2
- package/dist/normalization/normalization-factory.js +40 -38
- package/dist/normalization/normalization-factory.js.map +1 -1
- package/dist/normalization/walkers.js +19 -15
- package/dist/normalization/walkers.js.map +1 -1
- package/dist/schema-building/ast.d.ts +3 -4
- package/dist/schema-building/ast.js +9 -32
- package/dist/schema-building/ast.js.map +1 -1
- package/dist/schema-building/type-merging.d.ts +4 -2
- package/dist/schema-building/type-merging.js +25 -8
- package/dist/schema-building/type-merging.js.map +1 -1
- package/dist/schema-building/utils.d.ts +1 -1
- package/dist/schema-building/utils.js +21 -15
- package/dist/schema-building/utils.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/string-constants.d.ts +4 -1
- package/dist/utils/string-constants.js +5 -2
- package/dist/utils/string-constants.js.map +1 -1
- package/package.json +3 -3
|
@@ -31,7 +31,7 @@ export type MutableFieldNode = {
|
|
|
31
31
|
type: MutableTypeNode;
|
|
32
32
|
description?: StringValueNode;
|
|
33
33
|
};
|
|
34
|
-
export declare function getMutableFieldNode(node: FieldDefinitionNode, hostPath: string): MutableFieldNode;
|
|
34
|
+
export declare function getMutableFieldNode(node: FieldDefinitionNode, hostPath: string, errors: Error[]): MutableFieldNode;
|
|
35
35
|
export type MutableInputObjectNode = {
|
|
36
36
|
kind: Kind.INPUT_OBJECT_TYPE_DEFINITION;
|
|
37
37
|
name: NameNode;
|
|
@@ -48,7 +48,7 @@ export type MutableInputValueNode = {
|
|
|
48
48
|
defaultValue?: ConstValueNode;
|
|
49
49
|
description?: StringValueNode;
|
|
50
50
|
};
|
|
51
|
-
export declare function getMutableInputValueNode(node: InputValueDefinitionNode, hostPath: string): MutableInputValueNode;
|
|
51
|
+
export declare function getMutableInputValueNode(node: InputValueDefinitionNode, hostPath: string, errors: Error[]): MutableInputValueNode;
|
|
52
52
|
export type MutableInterfaceNode = {
|
|
53
53
|
kind: Kind.INTERFACE_TYPE_DEFINITION;
|
|
54
54
|
name: NameNode;
|
|
@@ -101,7 +101,7 @@ export type MutableNonNullTypeNode = {
|
|
|
101
101
|
kind: Kind.NON_NULL_TYPE;
|
|
102
102
|
type: MutableNamedTypeNode | MutableListTypeNode;
|
|
103
103
|
};
|
|
104
|
-
export declare function getMutableTypeNode(node: TypeNode, typePath: string): MutableTypeNode;
|
|
104
|
+
export declare function getMutableTypeNode(node: TypeNode, typePath: string, errors: Error[]): MutableTypeNode;
|
|
105
105
|
export type MutableUnionNode = {
|
|
106
106
|
kind: Kind.UNION_TYPE_DEFINITION;
|
|
107
107
|
name: NameNode;
|
|
@@ -110,7 +110,6 @@ export type MutableUnionNode = {
|
|
|
110
110
|
types?: NamedTypeNode[];
|
|
111
111
|
};
|
|
112
112
|
export declare function getMutableUnionNode(node: UnionTypeDefinitionNode): MutableUnionNode;
|
|
113
|
-
export declare function deepCopyTypeNode(node: TypeNode, hostPath: string): TypeNode;
|
|
114
113
|
export type MutableTypeDefinitionNode = MutableDirectiveDefinitionNode | MutableEnumNode | MutableInputObjectNode | MutableInterfaceNode | MutableObjectNode | MutableScalarNode | MutableUnionNode;
|
|
115
114
|
export type ObjectLikeTypeNode = InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode | ObjectTypeDefinitionNode | ObjectTypeExtensionNode;
|
|
116
115
|
export declare function getTypeNodeNamedTypeName(typeNode: TypeNode): string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getTypeNodeNamedTypeName = exports.
|
|
3
|
+
exports.getTypeNodeNamedTypeName = exports.getMutableUnionNode = exports.getMutableTypeNode = exports.getMutableScalarNode = exports.getMutableObjectExtensionNode = exports.getMutableObjectNode = exports.getMutableInterfaceNode = exports.getMutableInputValueNode = exports.getMutableInputObjectNode = exports.getMutableFieldNode = exports.getMutableEnumValueNode = exports.getMutableEnumNode = exports.getMutableDirectiveDefinitionNode = void 0;
|
|
4
4
|
const graphql_1 = require("graphql");
|
|
5
5
|
const utils_1 = require("../ast/utils");
|
|
6
6
|
const errors_1 = require("../errors/errors");
|
|
@@ -34,13 +34,13 @@ function getMutableEnumValueNode(node) {
|
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
36
|
exports.getMutableEnumValueNode = getMutableEnumValueNode;
|
|
37
|
-
function getMutableFieldNode(node, hostPath) {
|
|
37
|
+
function getMutableFieldNode(node, hostPath, errors) {
|
|
38
38
|
return {
|
|
39
39
|
arguments: [],
|
|
40
40
|
directives: [],
|
|
41
41
|
kind: node.kind,
|
|
42
42
|
name: { ...node.name },
|
|
43
|
-
type:
|
|
43
|
+
type: getMutableTypeNode(node.type, hostPath, errors),
|
|
44
44
|
description: (0, utils_1.formatDescription)(node.description),
|
|
45
45
|
};
|
|
46
46
|
}
|
|
@@ -53,12 +53,12 @@ function getMutableInputObjectNode(node) {
|
|
|
53
53
|
};
|
|
54
54
|
}
|
|
55
55
|
exports.getMutableInputObjectNode = getMutableInputObjectNode;
|
|
56
|
-
function getMutableInputValueNode(node, hostPath) {
|
|
56
|
+
function getMutableInputValueNode(node, hostPath, errors) {
|
|
57
57
|
return {
|
|
58
58
|
directives: [],
|
|
59
59
|
kind: node.kind,
|
|
60
60
|
name: { ...node.name },
|
|
61
|
-
type:
|
|
61
|
+
type: getMutableTypeNode(node.type, hostPath, errors),
|
|
62
62
|
defaultValue: node.defaultValue,
|
|
63
63
|
description: (0, utils_1.formatDescription)(node.description),
|
|
64
64
|
};
|
|
@@ -97,7 +97,7 @@ function getMutableScalarNode(node) {
|
|
|
97
97
|
};
|
|
98
98
|
}
|
|
99
99
|
exports.getMutableScalarNode = getMutableScalarNode;
|
|
100
|
-
function getMutableTypeNode(node, typePath) {
|
|
100
|
+
function getMutableTypeNode(node, typePath, errors) {
|
|
101
101
|
const deepCopy = { kind: node.kind };
|
|
102
102
|
let lastTypeNode = deepCopy;
|
|
103
103
|
for (let i = 0; i < constants_1.MAXIMUM_TYPE_NESTING; i++) {
|
|
@@ -121,7 +121,9 @@ function getMutableTypeNode(node, typePath) {
|
|
|
121
121
|
throw (0, errors_1.unexpectedTypeNodeKindFatalError)(typePath);
|
|
122
122
|
}
|
|
123
123
|
}
|
|
124
|
-
|
|
124
|
+
errors.push((0, errors_1.maximumTypeNestingExceededError)(typePath, constants_1.MAXIMUM_TYPE_NESTING));
|
|
125
|
+
// Return a dummy type when the type has exceeded nesting
|
|
126
|
+
return { kind: graphql_1.Kind.NAMED_TYPE, name: (0, utils_1.stringToNameNode)(getTypeNodeNamedTypeName(node)) };
|
|
125
127
|
}
|
|
126
128
|
exports.getMutableTypeNode = getMutableTypeNode;
|
|
127
129
|
function getMutableUnionNode(node) {
|
|
@@ -132,31 +134,6 @@ function getMutableUnionNode(node) {
|
|
|
132
134
|
};
|
|
133
135
|
}
|
|
134
136
|
exports.getMutableUnionNode = getMutableUnionNode;
|
|
135
|
-
function deepCopyTypeNode(node, hostPath) {
|
|
136
|
-
const deepCopy = { kind: node.kind };
|
|
137
|
-
let lastTypeNode = deepCopy;
|
|
138
|
-
for (let i = 0; i < constants_1.MAXIMUM_TYPE_NESTING; i++) {
|
|
139
|
-
switch (node.kind) {
|
|
140
|
-
case graphql_1.Kind.NAMED_TYPE:
|
|
141
|
-
lastTypeNode.name = { ...node.name };
|
|
142
|
-
return deepCopy;
|
|
143
|
-
case graphql_1.Kind.LIST_TYPE:
|
|
144
|
-
lastTypeNode.kind = node.kind;
|
|
145
|
-
lastTypeNode.type = { kind: node.type.kind };
|
|
146
|
-
lastTypeNode = lastTypeNode.type;
|
|
147
|
-
node = node.type;
|
|
148
|
-
continue;
|
|
149
|
-
case graphql_1.Kind.NON_NULL_TYPE:
|
|
150
|
-
lastTypeNode.kind = node.kind;
|
|
151
|
-
lastTypeNode.type = { kind: node.type.kind };
|
|
152
|
-
lastTypeNode = lastTypeNode.type;
|
|
153
|
-
node = node.type;
|
|
154
|
-
continue;
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
throw (0, errors_1.maximumTypeNestingExceededFatalError)(hostPath, constants_1.MAXIMUM_TYPE_NESTING);
|
|
158
|
-
}
|
|
159
|
-
exports.deepCopyTypeNode = deepCopyTypeNode;
|
|
160
137
|
function getTypeNodeNamedTypeName(typeNode) {
|
|
161
138
|
switch (typeNode.kind) {
|
|
162
139
|
case graphql_1.Kind.NAMED_TYPE:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ast.js","sourceRoot":"","sources":["../../src/schema-building/ast.ts"],"names":[],"mappings":";;;AAAA,qCAoBiB;AACjB,
|
|
1
|
+
{"version":3,"file":"ast.js","sourceRoot":"","sources":["../../src/schema-building/ast.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { TypeNode } from 'graphql';
|
|
2
|
+
import { FieldData } from './type-definition-data';
|
|
2
3
|
export type MergedTypeResult = {
|
|
3
4
|
typeErrors?: string[];
|
|
4
5
|
typeNode?: TypeNode;
|
|
5
6
|
};
|
|
6
|
-
export declare function getLeastRestrictiveMergedTypeNode(current: TypeNode, other: TypeNode, hostPath: string): MergedTypeResult;
|
|
7
|
-
export declare function getMostRestrictiveMergedTypeNode(current: TypeNode, other: TypeNode, hostPath: string): MergedTypeResult;
|
|
7
|
+
export declare function getLeastRestrictiveMergedTypeNode(current: TypeNode, other: TypeNode, hostPath: string, errors: Error[]): MergedTypeResult;
|
|
8
|
+
export declare function getMostRestrictiveMergedTypeNode(current: TypeNode, other: TypeNode, hostPath: string, errors: Error[]): MergedTypeResult;
|
|
9
|
+
export declare function renameNamedTypeName(fieldData: FieldData, newNamedTypeName: string, errors: Error[]): void;
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getMostRestrictiveMergedTypeNode = exports.getLeastRestrictiveMergedTypeNode = void 0;
|
|
3
|
+
exports.renameNamedTypeName = exports.getMostRestrictiveMergedTypeNode = exports.getLeastRestrictiveMergedTypeNode = void 0;
|
|
4
4
|
const graphql_1 = require("graphql");
|
|
5
5
|
const errors_1 = require("../errors/errors");
|
|
6
6
|
const ast_1 = require("./ast");
|
|
7
7
|
const constants_1 = require("../utils/constants");
|
|
8
|
+
const utils_1 = require("../ast/utils");
|
|
8
9
|
var DivergentType;
|
|
9
10
|
(function (DivergentType) {
|
|
10
11
|
DivergentType[DivergentType["NONE"] = 0] = "NONE";
|
|
11
12
|
DivergentType[DivergentType["CURRENT"] = 1] = "CURRENT";
|
|
12
13
|
DivergentType[DivergentType["OTHER"] = 2] = "OTHER";
|
|
13
14
|
})(DivergentType || (DivergentType = {}));
|
|
14
|
-
function getMergedTypeNode(current, other, hostPath, mostRestrictive) {
|
|
15
|
-
other = (0, ast_1.
|
|
15
|
+
function getMergedTypeNode(current, other, hostPath, mostRestrictive, errors) {
|
|
16
|
+
other = (0, ast_1.getMutableTypeNode)(other, hostPath, errors); // current is already a deep copy
|
|
16
17
|
// The first type of the pair to diverge in restriction takes precedence in all future differences.
|
|
17
18
|
// If the other type of the pair also diverges, it's a src error.
|
|
18
19
|
// To keep the output link intact, it is not possible to spread assign "lastTypeNode".
|
|
@@ -81,14 +82,30 @@ function getMergedTypeNode(current, other, hostPath, mostRestrictive) {
|
|
|
81
82
|
// At least one of the types must be a non-null wrapper, or the types are inconsistent
|
|
82
83
|
return { typeErrors: [current.kind, other.kind] };
|
|
83
84
|
}
|
|
84
|
-
|
|
85
|
+
errors.push((0, errors_1.maximumTypeNestingExceededError)(hostPath, constants_1.MAXIMUM_TYPE_NESTING));
|
|
86
|
+
return { typeNode: current };
|
|
85
87
|
}
|
|
86
|
-
function getLeastRestrictiveMergedTypeNode(current, other, hostPath) {
|
|
87
|
-
return getMergedTypeNode(current, other, hostPath, false);
|
|
88
|
+
function getLeastRestrictiveMergedTypeNode(current, other, hostPath, errors) {
|
|
89
|
+
return getMergedTypeNode(current, other, hostPath, false, errors);
|
|
88
90
|
}
|
|
89
91
|
exports.getLeastRestrictiveMergedTypeNode = getLeastRestrictiveMergedTypeNode;
|
|
90
|
-
function getMostRestrictiveMergedTypeNode(current, other, hostPath) {
|
|
91
|
-
return getMergedTypeNode(current, other, hostPath, true);
|
|
92
|
+
function getMostRestrictiveMergedTypeNode(current, other, hostPath, errors) {
|
|
93
|
+
return getMergedTypeNode(current, other, hostPath, true, errors);
|
|
92
94
|
}
|
|
93
95
|
exports.getMostRestrictiveMergedTypeNode = getMostRestrictiveMergedTypeNode;
|
|
96
|
+
function renameNamedTypeName(fieldData, newNamedTypeName, errors) {
|
|
97
|
+
let typeNode = fieldData.type;
|
|
98
|
+
for (let i = 0; i < constants_1.MAXIMUM_TYPE_NESTING; i++) {
|
|
99
|
+
if (typeNode.kind === graphql_1.Kind.NAMED_TYPE) {
|
|
100
|
+
fieldData.namedTypeName = newNamedTypeName;
|
|
101
|
+
typeNode.name = (0, utils_1.stringToNameNode)(newNamedTypeName);
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
typeNode = typeNode.type;
|
|
105
|
+
}
|
|
106
|
+
// Use a dummy renamed type if the traversal fails
|
|
107
|
+
fieldData.type = { kind: graphql_1.Kind.NAMED_TYPE, name: (0, utils_1.stringToNameNode)(newNamedTypeName) };
|
|
108
|
+
errors.push((0, errors_1.maximumTypeNestingExceededError)(`${fieldData.originalParentTypeName}.${fieldData.name}`, constants_1.MAXIMUM_TYPE_NESTING));
|
|
109
|
+
}
|
|
110
|
+
exports.renameNamedTypeName = renameNamedTypeName;
|
|
94
111
|
//# sourceMappingURL=type-merging.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-merging.js","sourceRoot":"","sources":["../../src/schema-building/type-merging.ts"],"names":[],"mappings":";;;AAAA,qCAAuF;AACvF,
|
|
1
|
+
{"version":3,"file":"type-merging.js","sourceRoot":"","sources":["../../src/schema-building/type-merging.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ export declare function addEnumDefinitionDataByNode(parentDefinitionDataByTypeNa
|
|
|
20
20
|
export declare function addEnumExtensionDataByNode(parentExtensionDataByTypeName: Map<string, ParentExtensionData>, node: EnumTypeExtensionNode, directivesByDirectiveName: Map<string, ConstDirectiveNode[]>): void;
|
|
21
21
|
export declare function addEnumValueDataByNode(enumValueDataByValueName: Map<string, EnumValueData>, node: EnumValueDefinitionNode, errors: Error[], directiveDefinitionByDirectiveName: Map<string, DirectiveDefinitionNode>, handledRepeatedDirectivesByHostPath: Map<string, Set<string>>, parentTypeName: string): void;
|
|
22
22
|
export declare function addInheritedDirectivesToFieldData(parentDirectivesByDirectiveName: Map<string, ConstDirectiveNode[]>, fieldDirectivesByDirectiveName: Map<string, ConstDirectiveNode[]>): Map<string, ConstDirectiveNode[]>;
|
|
23
|
-
export declare function addFieldDataByNode(fieldDataByFieldName: Map<string, FieldData>, node: FieldDefinitionNode,
|
|
23
|
+
export declare function addFieldDataByNode(fieldDataByFieldName: Map<string, FieldData>, node: FieldDefinitionNode, argumentDataByArgumentName: Map<string, InputValueData>, directivesByDirectiveName: Map<string, ConstDirectiveNode[]>, originalParentTypeName: string, renamedParentTypeName: string, subgraphName: string, isSubgraphVersionTwo: boolean, errors: Error[]): FieldData;
|
|
24
24
|
export declare function addExtensionWithFieldsDataByNode(parentExtensionDataByTypeName: Map<string, ParentExtensionData>, node: InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode | ObjectTypeDefinitionNode | ObjectTypeExtensionNode, errors: Error[], directiveDefinitionByDirectiveName: Map<string, DirectiveDefinitionNode>, handledRepeatedDirectivesByHostPath: Map<string, Set<string>>, isEntity: boolean, isRootType: boolean, subgraphName: string, renamedTypeName?: string): void;
|
|
25
25
|
export declare function addInputObjectDefinitionDataByNode(parentDefinitionDataByTypeName: Map<string, ParentDefinitionData>, node: InputObjectTypeDefinitionNode, directiveDefinitionByDirectiveName: Map<string, DirectiveDefinitionNode>, handledRepeatedDirectivesByHostPath: Map<string, Set<string>>, subgraphName: string, errors: Error[]): void;
|
|
26
26
|
export declare function addInputObjectExtensionDataByNode(parentExtensionDataByTypeName: Map<string, ParentExtensionData>, node: InputObjectTypeExtensionNode, directiveDefinitionByDirectiveName: Map<string, DirectiveDefinitionNode>, handledRepeatedDirectivesByHostPath: Map<string, Set<string>>, errors: Error[]): void;
|
|
@@ -44,21 +44,19 @@ function getDefinedArgumentsForDirective(directiveNode, argumentTypeNodeByArgume
|
|
|
44
44
|
const directiveArguments = directiveNode.arguments || [];
|
|
45
45
|
const directiveName = directiveNode.name.value;
|
|
46
46
|
const definedArguments = new Set();
|
|
47
|
-
const
|
|
47
|
+
const duplicateArgumentNames = new Set();
|
|
48
|
+
const unexpectedArgumentNames = new Set();
|
|
48
49
|
for (const argument of directiveArguments) {
|
|
49
50
|
const argumentName = argument.name.value;
|
|
50
51
|
// If an argument is observed more than once, it is a duplication error.
|
|
51
52
|
// However, the error should only propagate once.
|
|
52
53
|
if (definedArguments.has(argumentName)) {
|
|
53
|
-
|
|
54
|
-
handledDuplicateArguments.add(argumentName);
|
|
55
|
-
errorMessages.push((0, errors_1.duplicateDirectiveArgumentDefinitionErrorMessage)(directiveName, hostPath, argumentName));
|
|
56
|
-
}
|
|
54
|
+
duplicateArgumentNames.add(argumentName);
|
|
57
55
|
continue;
|
|
58
56
|
}
|
|
59
57
|
const argumentTypeNode = argumentTypeNodeByArgumentName.get(argumentName);
|
|
60
58
|
if (!argumentTypeNode) {
|
|
61
|
-
|
|
59
|
+
unexpectedArgumentNames.add(argumentName);
|
|
62
60
|
continue;
|
|
63
61
|
}
|
|
64
62
|
// TODO validate argument values
|
|
@@ -69,6 +67,12 @@ function getDefinedArgumentsForDirective(directiveNode, argumentTypeNodeByArgume
|
|
|
69
67
|
// }
|
|
70
68
|
definedArguments.add(argumentName);
|
|
71
69
|
}
|
|
70
|
+
if (duplicateArgumentNames.size > 0) {
|
|
71
|
+
errorMessages.push((0, errors_1.duplicateDirectiveArgumentDefinitionsErrorMessage)(directiveName, hostPath, [...duplicateArgumentNames]));
|
|
72
|
+
}
|
|
73
|
+
if (unexpectedArgumentNames.size > 0) {
|
|
74
|
+
errorMessages.push((0, errors_1.unexpectedDirectiveArgumentErrorMessage)(directiveName, [...unexpectedArgumentNames]));
|
|
75
|
+
}
|
|
72
76
|
return definedArguments;
|
|
73
77
|
}
|
|
74
78
|
exports.getDefinedArgumentsForDirective = getDefinedArgumentsForDirective;
|
|
@@ -268,7 +272,7 @@ function addInheritedDirectivesToFieldData(parentDirectivesByDirectiveName, fiel
|
|
|
268
272
|
return fieldDirectivesByDirectiveName;
|
|
269
273
|
}
|
|
270
274
|
exports.addInheritedDirectivesToFieldData = addInheritedDirectivesToFieldData;
|
|
271
|
-
function addFieldDataByNode(fieldDataByFieldName, node,
|
|
275
|
+
function addFieldDataByNode(fieldDataByFieldName, node, argumentDataByArgumentName, directivesByDirectiveName, originalParentTypeName, renamedParentTypeName, subgraphName, isSubgraphVersionTwo, errors) {
|
|
272
276
|
const name = node.name.value;
|
|
273
277
|
const fieldPath = `${originalParentTypeName}.${name}`;
|
|
274
278
|
const isNodeExternalOrShareableResult = isNodeExternalOrShareable(node, !isSubgraphVersionTwo, directivesByDirectiveName);
|
|
@@ -277,14 +281,14 @@ function addFieldDataByNode(fieldDataByFieldName, node, errors, argumentDataByAr
|
|
|
277
281
|
isExternalBySubgraphName: new Map([[subgraphName, isNodeExternalOrShareableResult.isExternal]]),
|
|
278
282
|
isInaccessible: directivesByDirectiveName.has(string_constants_1.INACCESSIBLE),
|
|
279
283
|
isShareableBySubgraphName: new Map([[subgraphName, isNodeExternalOrShareableResult.isShareable]]),
|
|
280
|
-
node: (0, ast_1.getMutableFieldNode)(node, fieldPath),
|
|
284
|
+
node: (0, ast_1.getMutableFieldNode)(node, fieldPath, errors),
|
|
281
285
|
name,
|
|
282
286
|
namedTypeName: (0, ast_1.getTypeNodeNamedTypeName)(node.type),
|
|
283
287
|
originalParentTypeName,
|
|
284
288
|
persistedDirectivesData: newPersistedDirectivesData(),
|
|
285
289
|
renamedParentTypeName,
|
|
286
290
|
subgraphNames: new Set([subgraphName]),
|
|
287
|
-
type: (0, ast_1.getMutableTypeNode)(node.type, fieldPath),
|
|
291
|
+
type: (0, ast_1.getMutableTypeNode)(node.type, fieldPath, errors),
|
|
288
292
|
directivesByDirectiveName,
|
|
289
293
|
description: (0, utils_1.formatDescription)(node.description),
|
|
290
294
|
};
|
|
@@ -359,13 +363,13 @@ function addInputValueDataByNode(inputValueDataByValueName, node, directiveDefin
|
|
|
359
363
|
includeDefaultValue: !!node.defaultValue,
|
|
360
364
|
isArgument,
|
|
361
365
|
name,
|
|
362
|
-
node: (0, ast_1.getMutableInputValueNode)(node, originalPath),
|
|
366
|
+
node: (0, ast_1.getMutableInputValueNode)(node, originalPath, errors),
|
|
363
367
|
originalPath,
|
|
364
368
|
persistedDirectivesData: newPersistedDirectivesData(),
|
|
365
369
|
renamedPath: renamedPath || originalPath,
|
|
366
370
|
requiredSubgraphNames: new Set(isTypeRequired(node.type) ? [subgraphName] : []),
|
|
367
371
|
subgraphNames: new Set([subgraphName]),
|
|
368
|
-
type: (0, ast_1.getMutableTypeNode)(node.type, originalPath),
|
|
372
|
+
type: (0, ast_1.getMutableTypeNode)(node.type, originalPath, errors),
|
|
369
373
|
defaultValue: node.defaultValue,
|
|
370
374
|
description: (0, utils_1.formatDescription)(node.description),
|
|
371
375
|
});
|
|
@@ -842,7 +846,7 @@ function upsertFieldData(fieldDataByFieldName, incomingData, persistedDirectiveD
|
|
|
842
846
|
return;
|
|
843
847
|
}
|
|
844
848
|
const fieldPath = `${existingData.renamedParentTypeName}.${existingData.name}`;
|
|
845
|
-
const { typeErrors, typeNode } = (0, type_merging_1.getLeastRestrictiveMergedTypeNode)(existingData.type, incomingData.type, fieldPath);
|
|
849
|
+
const { typeErrors, typeNode } = (0, type_merging_1.getLeastRestrictiveMergedTypeNode)(existingData.type, incomingData.type, fieldPath, errors);
|
|
846
850
|
if (typeNode) {
|
|
847
851
|
existingData.type = typeNode;
|
|
848
852
|
}
|
|
@@ -879,7 +883,7 @@ function upsertInputValueData(inputValueDataByValueName, incomingData, persisted
|
|
|
879
883
|
(0, utils_3.addIterableValuesToSet)(incomingData.requiredSubgraphNames, existingData.requiredSubgraphNames);
|
|
880
884
|
(0, utils_3.addIterableValuesToSet)(incomingData.subgraphNames, existingData.subgraphNames);
|
|
881
885
|
// TODO refactor type merging
|
|
882
|
-
const { typeErrors, typeNode } = (0, type_merging_1.getMostRestrictiveMergedTypeNode)(existingData.type, incomingData.type, existingData.originalPath);
|
|
886
|
+
const { typeErrors, typeNode } = (0, type_merging_1.getMostRestrictiveMergedTypeNode)(existingData.type, incomingData.type, existingData.originalPath, errors);
|
|
883
887
|
if (typeNode) {
|
|
884
888
|
existingData.type = typeNode;
|
|
885
889
|
}
|
|
@@ -965,7 +969,8 @@ function upsertParentDefinitionData(parentDefinitionDataByTypeName, incomingData
|
|
|
965
969
|
!entityInterfaceData.interfaceObjectSubgraphs.has(subgraphName) ||
|
|
966
970
|
existingData.kind !== graphql_1.Kind.INTERFACE_TYPE_DEFINITION ||
|
|
967
971
|
incomingData.kind !== graphql_1.Kind.OBJECT_TYPE_DEFINITION) {
|
|
968
|
-
|
|
972
|
+
errors.push((0, errors_1.incompatibleParentKindMergeError)(existingData.name, (0, utils_3.kindToTypeString)(existingData.kind), (0, utils_3.kindToTypeString)(incomingData.kind)));
|
|
973
|
+
return;
|
|
969
974
|
}
|
|
970
975
|
}
|
|
971
976
|
switch (existingData.kind) {
|
|
@@ -1107,7 +1112,8 @@ function upsertValidObjectExtensionData(parentDefinitionDataByTypeName, incoming
|
|
|
1107
1112
|
return;
|
|
1108
1113
|
}
|
|
1109
1114
|
if (existingData.kind !== graphql_1.Kind.OBJECT_TYPE_DEFINITION) {
|
|
1110
|
-
|
|
1115
|
+
errors.push((0, errors_1.incompatibleObjectExtensionOrphanBaseTypeError)(existingData.name, (0, utils_3.kindToTypeString)(existingData.kind)));
|
|
1116
|
+
return;
|
|
1111
1117
|
}
|
|
1112
1118
|
upsertPersistedDirectivesData(existingData.persistedDirectivesData, incomingData.persistedDirectivesData);
|
|
1113
1119
|
(0, utils_3.addIterableValuesToSet)(incomingData.implementedInterfaceTypeNames, existingData.implementedInterfaceTypeNames);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/schema-building/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/schema-building/utils.ts"],"names":[],"mappings":"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"}
|