@wundergraph/composition 0.5.3 → 0.6.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/dist/ast/ast.d.ts +21 -3
- package/dist/ast/ast.js +23 -11
- package/dist/ast/ast.js.map +1 -1
- package/dist/ast/utils.d.ts +16 -103
- package/dist/ast/utils.js +132 -16
- package/dist/ast/utils.js.map +1 -1
- package/dist/errors/errors.d.ts +16 -4
- package/dist/errors/errors.js +97 -21
- package/dist/errors/errors.js.map +1 -1
- package/dist/federation/federation-factory.d.ts +28 -24
- package/dist/federation/federation-factory.js +610 -446
- package/dist/federation/federation-factory.js.map +1 -1
- package/dist/federation/utils.d.ts +130 -0
- package/dist/federation/utils.js +15 -0
- package/dist/federation/utils.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/normalization/normalization-factory.d.ts +9 -3
- package/dist/normalization/normalization-factory.js +221 -75
- package/dist/normalization/normalization-factory.js.map +1 -1
- package/dist/normalization/utils.d.ts +4 -0
- package/dist/normalization/utils.js +12 -5
- package/dist/normalization/utils.js.map +1 -1
- package/dist/subgraph/field-configuration.d.ts +12 -1
- package/dist/subgraph/subgraph.d.ts +2 -2
- package/dist/subgraph/subgraph.js +45 -82
- package/dist/subgraph/subgraph.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/constants.js +26 -8
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/string-constants.d.ts +12 -1
- package/dist/utils/string-constants.js +14 -2
- package/dist/utils/string-constants.js.map +1 -1
- package/dist/utils/utils.d.ts +15 -3
- package/dist/utils/utils.js +58 -23
- package/dist/utils/utils.js.map +1 -1
- package/package.json +4 -3
- package/dist/federation/federation-result.d.ts +0 -6
- package/dist/federation/federation-result.js +0 -3
- package/dist/federation/federation-result.js.map +0 -1
package/dist/ast/ast.d.ts
CHANGED
|
@@ -1,9 +1,18 @@
|
|
|
1
|
-
import { BooleanValueNode, ConstValueNode, DirectiveDefinitionNode, EnumTypeDefinitionNode, EnumValueDefinitionNode, EnumValueNode, FieldDefinitionNode, FloatValueNode, InputObjectTypeDefinitionNode, InputValueDefinitionNode, InterfaceTypeDefinitionNode, IntValueNode, Kind, NamedTypeNode, NameNode, ObjectTypeDefinitionNode, ObjectTypeExtensionNode, ScalarTypeDefinitionNode, StringValueNode, TypeNode, UnionTypeDefinitionNode } from 'graphql';
|
|
2
|
-
import { InterfaceTypeExtensionNode } from 'graphql/index';
|
|
1
|
+
import { BooleanValueNode, ConstDirectiveNode, ConstValueNode, DirectiveDefinitionNode, EnumTypeDefinitionNode, EnumValueDefinitionNode, EnumValueNode, FieldDefinitionNode, FloatValueNode, InputObjectTypeDefinitionNode, InputValueDefinitionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, IntValueNode, Kind, NamedTypeNode, NameNode, ObjectTypeDefinitionNode, ObjectTypeExtensionNode, ScalarTypeDefinitionNode, StringValueNode, TypeNode, UnionTypeDefinitionNode } from 'graphql';
|
|
3
2
|
export type ConstValueNodeWithValue = IntValueNode | FloatValueNode | StringValueNode | BooleanValueNode | EnumValueNode;
|
|
4
3
|
export declare function deepCopyTypeNode(node: TypeNode, parentName: string, fieldName: string): TypeNode;
|
|
4
|
+
export type MutableDirectiveDefinitionNode = {
|
|
5
|
+
arguments?: InputValueDefinitionNode[];
|
|
6
|
+
description?: StringValueNode;
|
|
7
|
+
kind: Kind.DIRECTIVE_DEFINITION;
|
|
8
|
+
locations: NameNode[];
|
|
9
|
+
name: NameNode;
|
|
10
|
+
repeatable: boolean;
|
|
11
|
+
};
|
|
12
|
+
export declare function directiveDefinitionNodeToMutable(node: DirectiveDefinitionNode): MutableDirectiveDefinitionNode;
|
|
5
13
|
export type MutableEnumTypeDefinitionNode = {
|
|
6
14
|
description?: StringValueNode;
|
|
15
|
+
directives?: ConstDirectiveNode[];
|
|
7
16
|
kind: Kind.ENUM_TYPE_DEFINITION;
|
|
8
17
|
name: NameNode;
|
|
9
18
|
values: MutableEnumValueDefinitionNode[];
|
|
@@ -11,6 +20,7 @@ export type MutableEnumTypeDefinitionNode = {
|
|
|
11
20
|
export declare function enumTypeDefinitionNodeToMutable(node: EnumTypeDefinitionNode): MutableEnumTypeDefinitionNode;
|
|
12
21
|
export type MutableEnumValueDefinitionNode = {
|
|
13
22
|
description?: StringValueNode;
|
|
23
|
+
directives?: ConstDirectiveNode[];
|
|
14
24
|
kind: Kind.ENUM_VALUE_DEFINITION;
|
|
15
25
|
name: NameNode;
|
|
16
26
|
};
|
|
@@ -18,6 +28,7 @@ export declare function enumValueDefinitionNodeToMutable(node: EnumValueDefiniti
|
|
|
18
28
|
export type MutableFieldDefinitionNode = {
|
|
19
29
|
arguments: MutableInputValueDefinitionNode[];
|
|
20
30
|
description?: StringValueNode;
|
|
31
|
+
directives?: ConstDirectiveNode[];
|
|
21
32
|
kind: Kind.FIELD_DEFINITION;
|
|
22
33
|
name: NameNode;
|
|
23
34
|
type: TypeNode;
|
|
@@ -25,6 +36,7 @@ export type MutableFieldDefinitionNode = {
|
|
|
25
36
|
export declare function fieldDefinitionNodeToMutable(node: FieldDefinitionNode, parentName: string): MutableFieldDefinitionNode;
|
|
26
37
|
export type MutableInputObjectTypeDefinitionNode = {
|
|
27
38
|
description?: StringValueNode;
|
|
39
|
+
directives?: ConstDirectiveNode[];
|
|
28
40
|
fields: InputValueDefinitionNode[];
|
|
29
41
|
kind: Kind.INPUT_OBJECT_TYPE_DEFINITION;
|
|
30
42
|
name: NameNode;
|
|
@@ -33,6 +45,7 @@ export declare function inputObjectTypeDefinitionNodeToMutable(node: InputObject
|
|
|
33
45
|
export type MutableInputValueDefinitionNode = {
|
|
34
46
|
defaultValue?: ConstValueNode;
|
|
35
47
|
description?: StringValueNode;
|
|
48
|
+
directives?: ConstDirectiveNode[];
|
|
36
49
|
kind: Kind.INPUT_VALUE_DEFINITION;
|
|
37
50
|
name: NameNode;
|
|
38
51
|
type: TypeNode;
|
|
@@ -40,6 +53,7 @@ export type MutableInputValueDefinitionNode = {
|
|
|
40
53
|
export declare function inputValueDefinitionNodeToMutable(node: InputValueDefinitionNode, parentName: string): MutableInputValueDefinitionNode;
|
|
41
54
|
export type MutableInterfaceTypeDefinitionNode = {
|
|
42
55
|
description?: StringValueNode;
|
|
56
|
+
directives?: ConstDirectiveNode[];
|
|
43
57
|
fields: FieldDefinitionNode[];
|
|
44
58
|
interfaces: NamedTypeNode[];
|
|
45
59
|
kind: Kind.INTERFACE_TYPE_DEFINITION;
|
|
@@ -48,6 +62,7 @@ export type MutableInterfaceTypeDefinitionNode = {
|
|
|
48
62
|
export declare function interfaceTypeDefinitionNodeToMutable(node: InterfaceTypeDefinitionNode): MutableInterfaceTypeDefinitionNode;
|
|
49
63
|
export type MutableObjectTypeDefinitionNode = {
|
|
50
64
|
description?: StringValueNode;
|
|
65
|
+
directives?: ConstDirectiveNode[];
|
|
51
66
|
fields: FieldDefinitionNode[];
|
|
52
67
|
interfaces: NamedTypeNode[];
|
|
53
68
|
kind: Kind.OBJECT_TYPE_DEFINITION;
|
|
@@ -56,6 +71,7 @@ export type MutableObjectTypeDefinitionNode = {
|
|
|
56
71
|
export declare function objectTypeDefinitionNodeToMutable(node: ObjectTypeDefinitionNode): MutableObjectTypeDefinitionNode;
|
|
57
72
|
export type MutableObjectTypeExtensionNode = {
|
|
58
73
|
description?: StringValueNode;
|
|
74
|
+
directives?: ConstDirectiveNode[];
|
|
59
75
|
fields: FieldDefinitionNode[];
|
|
60
76
|
interfaces: NamedTypeNode[];
|
|
61
77
|
kind: Kind.OBJECT_TYPE_EXTENSION;
|
|
@@ -65,6 +81,7 @@ export declare function objectTypeExtensionNodeToMutable(node: ObjectTypeExtensi
|
|
|
65
81
|
export declare function objectTypeExtensionNodeToMutableDefinitionNode(node: ObjectTypeExtensionNode): MutableObjectTypeDefinitionNode;
|
|
66
82
|
export type MutableScalarTypeDefinitionNode = {
|
|
67
83
|
description?: StringValueNode;
|
|
84
|
+
directives?: ConstDirectiveNode[];
|
|
68
85
|
kind: Kind.SCALAR_TYPE_DEFINITION;
|
|
69
86
|
name: NameNode;
|
|
70
87
|
};
|
|
@@ -77,10 +94,11 @@ export type MutableTypeNode = {
|
|
|
77
94
|
export declare const maximumTypeNesting = 30;
|
|
78
95
|
export type MutableUnionTypeDefinitionNode = {
|
|
79
96
|
description?: StringValueNode;
|
|
97
|
+
directives?: ConstDirectiveNode[];
|
|
80
98
|
kind: Kind.UNION_TYPE_DEFINITION;
|
|
81
99
|
name: NameNode;
|
|
82
100
|
types: NamedTypeNode[];
|
|
83
101
|
};
|
|
84
102
|
export declare function unionTypeDefinitionNodeToMutable(node: UnionTypeDefinitionNode): MutableUnionTypeDefinitionNode;
|
|
85
|
-
export type MutableTypeDefinitionNode =
|
|
103
|
+
export type MutableTypeDefinitionNode = MutableDirectiveDefinitionNode | MutableEnumTypeDefinitionNode | MutableInputObjectTypeDefinitionNode | MutableInterfaceTypeDefinitionNode | MutableObjectTypeDefinitionNode | MutableScalarTypeDefinitionNode | MutableUnionTypeDefinitionNode;
|
|
86
104
|
export type ObjectLikeTypeDefinitionNode = InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode | ObjectTypeDefinitionNode | ObjectTypeExtensionNode;
|
package/dist/ast/ast.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.unionTypeDefinitionNodeToMutable = exports.maximumTypeNesting = exports.scalarTypeDefinitionNodeToMutable = exports.objectTypeExtensionNodeToMutableDefinitionNode = exports.objectTypeExtensionNodeToMutable = exports.objectTypeDefinitionNodeToMutable = exports.interfaceTypeDefinitionNodeToMutable = exports.inputValueDefinitionNodeToMutable = exports.inputObjectTypeDefinitionNodeToMutable = exports.fieldDefinitionNodeToMutable = exports.enumValueDefinitionNodeToMutable = exports.enumTypeDefinitionNodeToMutable = exports.deepCopyTypeNode = void 0;
|
|
3
|
+
exports.unionTypeDefinitionNodeToMutable = exports.maximumTypeNesting = exports.scalarTypeDefinitionNodeToMutable = exports.objectTypeExtensionNodeToMutableDefinitionNode = exports.objectTypeExtensionNodeToMutable = exports.objectTypeDefinitionNodeToMutable = exports.interfaceTypeDefinitionNodeToMutable = exports.inputValueDefinitionNodeToMutable = exports.inputObjectTypeDefinitionNodeToMutable = exports.fieldDefinitionNodeToMutable = exports.enumValueDefinitionNodeToMutable = exports.enumTypeDefinitionNodeToMutable = exports.directiveDefinitionNodeToMutable = exports.deepCopyTypeNode = void 0;
|
|
4
4
|
const graphql_1 = require("graphql");
|
|
5
5
|
const errors_1 = require("../errors/errors");
|
|
6
|
+
const utils_1 = require("./utils");
|
|
6
7
|
function deepCopyFieldsAndInterfaces(node, fields, interfaces) {
|
|
7
8
|
if (node.fields) {
|
|
8
9
|
for (const field of node.fields) {
|
|
@@ -42,6 +43,17 @@ function deepCopyTypeNode(node, parentName, fieldName) {
|
|
|
42
43
|
throw new Error(`Field ${parentName}.${fieldName} has more than 30 layers of nesting, or there is a cyclical error.`);
|
|
43
44
|
}
|
|
44
45
|
exports.deepCopyTypeNode = deepCopyTypeNode;
|
|
46
|
+
function directiveDefinitionNodeToMutable(node) {
|
|
47
|
+
return {
|
|
48
|
+
arguments: node.arguments ? [...node.arguments] : undefined,
|
|
49
|
+
description: (0, utils_1.formatDescription)(node.description),
|
|
50
|
+
kind: node.kind,
|
|
51
|
+
locations: [...node.locations],
|
|
52
|
+
name: { ...node.name },
|
|
53
|
+
repeatable: node.repeatable,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
exports.directiveDefinitionNodeToMutable = directiveDefinitionNodeToMutable;
|
|
45
57
|
function enumTypeDefinitionNodeToMutable(node) {
|
|
46
58
|
const values = [];
|
|
47
59
|
if (node.values) {
|
|
@@ -50,7 +62,7 @@ function enumTypeDefinitionNodeToMutable(node) {
|
|
|
50
62
|
}
|
|
51
63
|
}
|
|
52
64
|
return {
|
|
53
|
-
description:
|
|
65
|
+
description: (0, utils_1.formatDescription)(node.description),
|
|
54
66
|
kind: node.kind,
|
|
55
67
|
name: { ...node.name },
|
|
56
68
|
values,
|
|
@@ -59,7 +71,7 @@ function enumTypeDefinitionNodeToMutable(node) {
|
|
|
59
71
|
exports.enumTypeDefinitionNodeToMutable = enumTypeDefinitionNodeToMutable;
|
|
60
72
|
function enumValueDefinitionNodeToMutable(node) {
|
|
61
73
|
return {
|
|
62
|
-
description:
|
|
74
|
+
description: (0, utils_1.formatDescription)(node.description),
|
|
63
75
|
kind: node.kind,
|
|
64
76
|
name: { ...node.name },
|
|
65
77
|
};
|
|
@@ -69,12 +81,12 @@ function fieldDefinitionNodeToMutable(node, parentName) {
|
|
|
69
81
|
const args = [];
|
|
70
82
|
if (node.arguments) {
|
|
71
83
|
for (const argument of node.arguments) {
|
|
72
|
-
args.push(inputValueDefinitionNodeToMutable(argument, node.name.value));
|
|
84
|
+
args.push(inputValueDefinitionNodeToMutable(argument, node.name.value));
|
|
73
85
|
}
|
|
74
86
|
}
|
|
75
87
|
return {
|
|
76
88
|
arguments: args,
|
|
77
|
-
description:
|
|
89
|
+
description: (0, utils_1.formatDescription)(node.description),
|
|
78
90
|
kind: node.kind,
|
|
79
91
|
name: { ...node.name },
|
|
80
92
|
type: deepCopyTypeNode(node.type, parentName, node.name.value),
|
|
@@ -89,7 +101,7 @@ function inputObjectTypeDefinitionNodeToMutable(node) {
|
|
|
89
101
|
}
|
|
90
102
|
}
|
|
91
103
|
return {
|
|
92
|
-
description:
|
|
104
|
+
description: (0, utils_1.formatDescription)(node.description),
|
|
93
105
|
fields,
|
|
94
106
|
kind: node.kind,
|
|
95
107
|
name: { ...node.name },
|
|
@@ -99,7 +111,7 @@ exports.inputObjectTypeDefinitionNodeToMutable = inputObjectTypeDefinitionNodeTo
|
|
|
99
111
|
function inputValueDefinitionNodeToMutable(node, parentName) {
|
|
100
112
|
return {
|
|
101
113
|
defaultValue: node.defaultValue ? { ...node.defaultValue } : undefined,
|
|
102
|
-
description:
|
|
114
|
+
description: (0, utils_1.formatDescription)(node.description),
|
|
103
115
|
kind: node.kind,
|
|
104
116
|
name: { ...node.name },
|
|
105
117
|
type: deepCopyTypeNode(node.type, parentName, node.name.value),
|
|
@@ -111,7 +123,7 @@ function interfaceTypeDefinitionNodeToMutable(node) {
|
|
|
111
123
|
const interfaces = [];
|
|
112
124
|
deepCopyFieldsAndInterfaces(node, fields, interfaces);
|
|
113
125
|
return {
|
|
114
|
-
description:
|
|
126
|
+
description: (0, utils_1.formatDescription)(node.description),
|
|
115
127
|
fields,
|
|
116
128
|
interfaces,
|
|
117
129
|
kind: node.kind,
|
|
@@ -124,7 +136,7 @@ function objectTypeDefinitionNodeToMutable(node) {
|
|
|
124
136
|
const interfaces = [];
|
|
125
137
|
deepCopyFieldsAndInterfaces(node, fields, interfaces);
|
|
126
138
|
return {
|
|
127
|
-
description:
|
|
139
|
+
description: (0, utils_1.formatDescription)(node.description),
|
|
128
140
|
fields,
|
|
129
141
|
interfaces,
|
|
130
142
|
kind: node.kind,
|
|
@@ -158,7 +170,7 @@ function objectTypeExtensionNodeToMutableDefinitionNode(node) {
|
|
|
158
170
|
exports.objectTypeExtensionNodeToMutableDefinitionNode = objectTypeExtensionNodeToMutableDefinitionNode;
|
|
159
171
|
function scalarTypeDefinitionNodeToMutable(node) {
|
|
160
172
|
return {
|
|
161
|
-
description:
|
|
173
|
+
description: (0, utils_1.formatDescription)(node.description),
|
|
162
174
|
kind: graphql_1.Kind.SCALAR_TYPE_DEFINITION,
|
|
163
175
|
name: { ...node.name },
|
|
164
176
|
};
|
|
@@ -173,7 +185,7 @@ function unionTypeDefinitionNodeToMutable(node) {
|
|
|
173
185
|
}
|
|
174
186
|
}
|
|
175
187
|
return {
|
|
176
|
-
description:
|
|
188
|
+
description: (0, utils_1.formatDescription)(node.description),
|
|
177
189
|
kind: node.kind,
|
|
178
190
|
name: { ...node.name },
|
|
179
191
|
types,
|
package/dist/ast/ast.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ast.js","sourceRoot":"","sources":["../../src/ast/ast.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"ast.js","sourceRoot":"","sources":["../../src/ast/ast.ts"],"names":[],"mappings":"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"}
|
package/dist/ast/utils.d.ts
CHANGED
|
@@ -1,107 +1,10 @@
|
|
|
1
|
-
import { FieldDefinitionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, Kind, NamedTypeNode, NameNode, ObjectTypeDefinitionNode, ObjectTypeExtensionNode, OperationTypeNode } from 'graphql';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
INTERSECTION = 1,
|
|
6
|
-
CONSISTENT = 2
|
|
7
|
-
}
|
|
8
|
-
export type EntityContainer = {
|
|
9
|
-
fields: Set<string>;
|
|
10
|
-
keys: Set<string>;
|
|
11
|
-
subgraphs: Set<string>;
|
|
12
|
-
};
|
|
13
|
-
export type EnumContainer = {
|
|
14
|
-
appearances: number;
|
|
15
|
-
values: EnumValueMap;
|
|
16
|
-
kind: Kind.ENUM_TYPE_DEFINITION;
|
|
17
|
-
node: MutableEnumTypeDefinitionNode;
|
|
18
|
-
};
|
|
19
|
-
export type EnumValueContainer = {
|
|
20
|
-
appearances: number;
|
|
21
|
-
node: MutableEnumValueDefinitionNode;
|
|
22
|
-
};
|
|
23
|
-
export type EnumValueMap = Map<string, EnumValueContainer>;
|
|
24
|
-
export type FieldContainer = {
|
|
25
|
-
appearances: number;
|
|
26
|
-
arguments: InputValueMap;
|
|
27
|
-
isShareable: boolean;
|
|
28
|
-
node: MutableFieldDefinitionNode;
|
|
29
|
-
rootTypeName: string;
|
|
30
|
-
subgraphs: Set<string>;
|
|
31
|
-
subgraphsByShareable: Map<string, boolean>;
|
|
32
|
-
};
|
|
33
|
-
export type FieldMap = Map<string, FieldContainer>;
|
|
34
|
-
export type InputValueContainer = {
|
|
35
|
-
appearances: number;
|
|
36
|
-
includeDefaultValue: boolean;
|
|
37
|
-
node: MutableInputValueDefinitionNode;
|
|
38
|
-
};
|
|
39
|
-
export type InputValueMap = Map<string, InputValueContainer>;
|
|
40
|
-
export type InputObjectContainer = {
|
|
41
|
-
appearances: number;
|
|
42
|
-
fields: InputValueMap;
|
|
43
|
-
kind: Kind.INPUT_OBJECT_TYPE_DEFINITION;
|
|
44
|
-
node: MutableInputObjectTypeDefinitionNode;
|
|
45
|
-
};
|
|
46
|
-
export type InterfaceContainer = {
|
|
47
|
-
appearances: number;
|
|
48
|
-
fields: FieldMap;
|
|
49
|
-
interfaces: Set<string>;
|
|
50
|
-
kind: Kind.INTERFACE_TYPE_DEFINITION;
|
|
51
|
-
node: MutableInterfaceTypeDefinitionNode;
|
|
52
|
-
subgraphs: Set<string>;
|
|
53
|
-
};
|
|
54
|
-
export type ObjectContainer = {
|
|
55
|
-
appearances: number;
|
|
56
|
-
fields: FieldMap;
|
|
57
|
-
entityKeys: Set<string>;
|
|
58
|
-
interfaces: Set<string>;
|
|
59
|
-
isRootType: boolean;
|
|
60
|
-
kind: Kind.OBJECT_TYPE_DEFINITION;
|
|
61
|
-
node: MutableObjectTypeDefinitionNode;
|
|
62
|
-
subgraphs: Set<string>;
|
|
63
|
-
};
|
|
64
|
-
export type ObjectExtensionContainer = {
|
|
65
|
-
appearances: number;
|
|
66
|
-
fields: FieldMap;
|
|
67
|
-
entityKeys: Set<string>;
|
|
68
|
-
interfaces: Set<string>;
|
|
69
|
-
isRootType: boolean;
|
|
70
|
-
kind: Kind.OBJECT_TYPE_EXTENSION;
|
|
71
|
-
node: MutableObjectTypeExtensionNode;
|
|
72
|
-
subgraphs: Set<string>;
|
|
73
|
-
};
|
|
74
|
-
export type RootTypeField = {
|
|
75
|
-
inlineFragment: string;
|
|
76
|
-
path: string;
|
|
77
|
-
name: string;
|
|
78
|
-
parentTypeName: string;
|
|
79
|
-
responseType: string;
|
|
80
|
-
rootTypeName: string;
|
|
81
|
-
subgraphs: Set<string>;
|
|
82
|
-
};
|
|
83
|
-
export type PotentiallyUnresolvableField = {
|
|
84
|
-
fieldContainer: FieldContainer;
|
|
85
|
-
fullResolverPaths: string[];
|
|
86
|
-
rootTypeField: RootTypeField;
|
|
87
|
-
};
|
|
88
|
-
export type ScalarContainer = {
|
|
89
|
-
appearances: number;
|
|
90
|
-
kind: Kind.SCALAR_TYPE_DEFINITION;
|
|
91
|
-
node: MutableScalarTypeDefinitionNode;
|
|
92
|
-
};
|
|
93
|
-
export type UnionContainer = {
|
|
94
|
-
appearances: number;
|
|
95
|
-
kind: Kind.UNION_TYPE_DEFINITION;
|
|
96
|
-
members: Set<string>;
|
|
97
|
-
node: MutableUnionTypeDefinitionNode;
|
|
98
|
-
};
|
|
99
|
-
export type ParentContainer = EnumContainer | InputObjectContainer | InterfaceContainer | ObjectContainer | UnionContainer | ScalarContainer;
|
|
100
|
-
export type ExtensionContainer = ObjectExtensionContainer;
|
|
101
|
-
export type ParentMap = Map<string, ParentContainer>;
|
|
1
|
+
import { FieldDefinitionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, Kind, NamedTypeNode, NameNode, ObjectTypeDefinitionNode, ObjectTypeExtensionNode, OperationTypeNode, StringValueNode, UnionTypeExtensionNode } from 'graphql';
|
|
2
|
+
import { MutableEnumValueDefinitionNode, MutableFieldDefinitionNode, MutableInputValueDefinitionNode, MutableTypeDefinitionNode, ObjectLikeTypeDefinitionNode } from './ast';
|
|
3
|
+
import { UnionTypeDefinitionNode } from 'graphql/index';
|
|
4
|
+
import { DirectiveContainer, NodeContainer, ParentContainer } from '../federation/utils';
|
|
102
5
|
export declare function isObjectLikeNodeEntity(node: ObjectLikeTypeDefinitionNode): boolean;
|
|
103
6
|
export declare function isNodeExtension(node: ObjectTypeDefinitionNode | InterfaceTypeDefinitionNode): boolean;
|
|
104
|
-
export declare function extractEntityKeys(node: ObjectTypeDefinitionNode | ObjectTypeExtensionNode, keySet: Set<string
|
|
7
|
+
export declare function extractEntityKeys(node: ObjectTypeDefinitionNode | ObjectTypeExtensionNode, keySet: Set<string>, errors: Error[]): Set<string>;
|
|
105
8
|
export type EntityKey = {
|
|
106
9
|
nestedKeys?: EntityKey[];
|
|
107
10
|
parent: string;
|
|
@@ -121,10 +24,20 @@ export declare function extractInterfaces(node: InterfaceTypeDefinitionNode | In
|
|
|
121
24
|
export declare function isNodeShareable(node: ObjectTypeDefinitionNode | ObjectTypeExtensionNode | FieldDefinitionNode): boolean;
|
|
122
25
|
export declare function areBaseAndExtensionKindsCompatible(baseKind: Kind, extensionKind: Kind, typeName: string): boolean;
|
|
123
26
|
export declare function stringToNameNode(value: string): NameNode;
|
|
124
|
-
export declare function
|
|
27
|
+
export declare function stringArrayToNameNodeArray(values: string[]): NameNode[];
|
|
28
|
+
export declare function setToNameNodeArray(set: Set<string>): NameNode[];
|
|
125
29
|
export declare function stringToNamedTypeNode(value: string): NamedTypeNode;
|
|
126
30
|
export declare function setToNamedTypeNodeArray(set: Set<string>): NamedTypeNode[];
|
|
127
31
|
export declare function nodeKindToDirectiveLocation(kind: Kind): string;
|
|
128
32
|
export declare const operationTypeNodeToDefaultType: Map<OperationTypeNode, string>;
|
|
129
33
|
export declare function isKindAbstract(kind: Kind): boolean;
|
|
130
34
|
export declare function getInlineFragmentString(parentTypeName: string): string;
|
|
35
|
+
export declare function extractNameNodeStringsToSet(nodes: readonly NameNode[] | NameNode[], set: Set<string>): Set<string>;
|
|
36
|
+
export declare function extractExecutableDirectiveLocations(nodes: readonly NameNode[] | NameNode[], set: Set<string>): Set<string>;
|
|
37
|
+
export declare function mergeExecutableDirectiveLocations(nodes: readonly NameNode[] | NameNode[], directiveContainer: DirectiveContainer): Set<string>;
|
|
38
|
+
export declare function pushPersistedDirectivesToNode(container: NodeContainer): MutableInputValueDefinitionNode | import("./ast").MutableEnumTypeDefinitionNode | MutableEnumValueDefinitionNode | MutableFieldDefinitionNode | import("./ast").MutableInputObjectTypeDefinitionNode | import("./ast").MutableInterfaceTypeDefinitionNode | import("./ast").MutableObjectTypeDefinitionNode | import("./ast").MutableScalarTypeDefinitionNode | import("./ast").MutableUnionTypeDefinitionNode;
|
|
39
|
+
export declare function getNodeWithPersistedDirectives(container: ParentContainer): import("./ast").MutableEnumTypeDefinitionNode | import("./ast").MutableInputObjectTypeDefinitionNode | import("./ast").MutableInterfaceTypeDefinitionNode | import("./ast").MutableObjectTypeDefinitionNode | import("./ast").MutableScalarTypeDefinitionNode | import("./ast").MutableUnionTypeDefinitionNode;
|
|
40
|
+
export declare function addConcreteTypesForImplementedInterfaces(node: ObjectTypeDefinitionNode | ObjectTypeExtensionNode | InterfaceTypeDefinitionNode, abstractToConcreteTypeNames: Map<string, Set<string>>): void;
|
|
41
|
+
export declare function addConcreteTypesForUnion(node: UnionTypeDefinitionNode | UnionTypeExtensionNode, abstractToConcreteTypeNames: Map<string, Set<string>>): void;
|
|
42
|
+
export declare function formatDescription(description?: StringValueNode): StringValueNode | undefined;
|
|
43
|
+
export declare function setLongestDescriptionForNode(existingNode: MutableFieldDefinitionNode | MutableEnumValueDefinitionNode | MutableInputValueDefinitionNode | MutableTypeDefinitionNode, newDescription?: StringValueNode): void;
|
package/dist/ast/utils.js
CHANGED
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getInlineFragmentString = exports.isKindAbstract = exports.operationTypeNodeToDefaultType = exports.nodeKindToDirectiveLocation = exports.setToNamedTypeNodeArray = exports.stringToNamedTypeNode = exports.
|
|
3
|
+
exports.setLongestDescriptionForNode = exports.formatDescription = exports.addConcreteTypesForUnion = exports.addConcreteTypesForImplementedInterfaces = exports.getNodeWithPersistedDirectives = exports.pushPersistedDirectivesToNode = exports.mergeExecutableDirectiveLocations = exports.extractExecutableDirectiveLocations = exports.extractNameNodeStringsToSet = exports.getInlineFragmentString = exports.isKindAbstract = exports.operationTypeNodeToDefaultType = exports.nodeKindToDirectiveLocation = exports.setToNamedTypeNodeArray = exports.stringToNamedTypeNode = exports.setToNameNodeArray = exports.stringArrayToNameNodeArray = exports.stringToNameNode = exports.areBaseAndExtensionKindsCompatible = exports.isNodeShareable = exports.extractInterfaces = exports.getEntityKeyExtractionResults = exports.getEntityKeyExtractionResult = exports.extractEntityKeys = exports.isNodeExtension = exports.isObjectLikeNodeEntity = void 0;
|
|
4
4
|
const graphql_1 = require("graphql");
|
|
5
5
|
const string_constants_1 = require("../utils/string-constants");
|
|
6
6
|
const errors_1 = require("../errors/errors");
|
|
7
7
|
const utils_1 = require("../utils/utils");
|
|
8
|
-
|
|
9
|
-
(function (MergeMethod) {
|
|
10
|
-
MergeMethod[MergeMethod["UNION"] = 0] = "UNION";
|
|
11
|
-
MergeMethod[MergeMethod["INTERSECTION"] = 1] = "INTERSECTION";
|
|
12
|
-
MergeMethod[MergeMethod["CONSISTENT"] = 2] = "CONSISTENT";
|
|
13
|
-
})(MergeMethod || (exports.MergeMethod = MergeMethod = {}));
|
|
8
|
+
const utils_2 = require("../federation/utils");
|
|
14
9
|
function isObjectLikeNodeEntity(node) {
|
|
15
10
|
// Interface entities are currently unsupported
|
|
16
11
|
if (node.kind === graphql_1.Kind.INTERFACE_TYPE_DEFINITION
|
|
@@ -38,14 +33,18 @@ function isNodeExtension(node) {
|
|
|
38
33
|
return false;
|
|
39
34
|
}
|
|
40
35
|
exports.isNodeExtension = isNodeExtension;
|
|
41
|
-
function extractEntityKeys(node, keySet) {
|
|
36
|
+
function extractEntityKeys(node, keySet, errors) {
|
|
42
37
|
if (!node.directives?.length) {
|
|
43
38
|
return keySet;
|
|
44
39
|
}
|
|
40
|
+
const typeName = node.name.value;
|
|
45
41
|
for (const directive of node.directives) {
|
|
46
42
|
if (directive.name.value === string_constants_1.KEY) {
|
|
47
43
|
if (!directive.arguments) {
|
|
48
|
-
|
|
44
|
+
errors.push((0, errors_1.invalidKeyDirectiveError)(typeName, [
|
|
45
|
+
(0, errors_1.undefinedRequiredArgumentsErrorMessage)(string_constants_1.KEY, typeName, [string_constants_1.NAME])
|
|
46
|
+
]));
|
|
47
|
+
continue;
|
|
49
48
|
}
|
|
50
49
|
for (const arg of directive.arguments) {
|
|
51
50
|
if (arg.name.value !== string_constants_1.FIELDS) {
|
|
@@ -68,8 +67,9 @@ function getEntityKeyExtractionResult(rawEntityKey, parentTypeName) {
|
|
|
68
67
|
let currentSegment = '';
|
|
69
68
|
let segmentEnded = true;
|
|
70
69
|
let currentKey;
|
|
70
|
+
rawEntityKey = rawEntityKey.replaceAll(',', ' ');
|
|
71
71
|
for (const char of rawEntityKey) {
|
|
72
|
-
currentKey = (0, utils_1.getOrThrowError)(entityKeyMap, keyPath.join('.'));
|
|
72
|
+
currentKey = (0, utils_1.getOrThrowError)(entityKeyMap, keyPath.join('.'), 'entityKeyMap');
|
|
73
73
|
switch (char) {
|
|
74
74
|
case ' ':
|
|
75
75
|
segmentEnded = true;
|
|
@@ -131,10 +131,10 @@ function getEntityKeyExtractionResult(rawEntityKey, parentTypeName) {
|
|
|
131
131
|
}
|
|
132
132
|
exports.getEntityKeyExtractionResult = getEntityKeyExtractionResult;
|
|
133
133
|
function getEntityKeyExtractionResults(node, entityKeyMap) {
|
|
134
|
+
const parentTypeName = node.name.value;
|
|
134
135
|
if (!node.directives?.length) {
|
|
135
|
-
return { entityKeyMap, errors: [
|
|
136
|
+
return { entityKeyMap, errors: [(0, errors_1.expectedEntityError)(parentTypeName)] };
|
|
136
137
|
}
|
|
137
|
-
const parentTypeName = node.name.value;
|
|
138
138
|
const rawEntityKeys = new Set();
|
|
139
139
|
const errorMessages = [];
|
|
140
140
|
for (const directive of node.directives) {
|
|
@@ -234,14 +234,22 @@ function stringToNameNode(value) {
|
|
|
234
234
|
};
|
|
235
235
|
}
|
|
236
236
|
exports.stringToNameNode = stringToNameNode;
|
|
237
|
-
function
|
|
237
|
+
function stringArrayToNameNodeArray(values) {
|
|
238
238
|
const nameNodes = [];
|
|
239
239
|
for (const value of values) {
|
|
240
240
|
nameNodes.push(stringToNameNode(value));
|
|
241
241
|
}
|
|
242
242
|
return nameNodes;
|
|
243
243
|
}
|
|
244
|
-
exports.
|
|
244
|
+
exports.stringArrayToNameNodeArray = stringArrayToNameNodeArray;
|
|
245
|
+
function setToNameNodeArray(set) {
|
|
246
|
+
const nameNodes = [];
|
|
247
|
+
for (const value of set) {
|
|
248
|
+
nameNodes.push(stringToNameNode(value));
|
|
249
|
+
}
|
|
250
|
+
return nameNodes;
|
|
251
|
+
}
|
|
252
|
+
exports.setToNameNodeArray = setToNameNodeArray;
|
|
245
253
|
function stringToNamedTypeNode(value) {
|
|
246
254
|
return {
|
|
247
255
|
kind: graphql_1.Kind.NAMED_TYPE,
|
|
@@ -267,6 +275,14 @@ function nodeKindToDirectiveLocation(kind) {
|
|
|
267
275
|
return string_constants_1.ENUM_VALUE_UPPER;
|
|
268
276
|
case graphql_1.Kind.FIELD_DEFINITION:
|
|
269
277
|
return string_constants_1.FIELD_DEFINITION_UPPER;
|
|
278
|
+
case graphql_1.Kind.FRAGMENT_DEFINITION:
|
|
279
|
+
return string_constants_1.FRAGMENT_DEFINITION_UPPER;
|
|
280
|
+
case graphql_1.Kind.FRAGMENT_SPREAD:
|
|
281
|
+
return string_constants_1.FRAGMENT_SPREAD_UPPER;
|
|
282
|
+
case graphql_1.Kind.INLINE_FRAGMENT:
|
|
283
|
+
return string_constants_1.INLINE_FRAGMENT_UPPER;
|
|
284
|
+
case graphql_1.Kind.INPUT_VALUE_DEFINITION:
|
|
285
|
+
return string_constants_1.INPUT_FIELD_DEFINITION_UPPER;
|
|
270
286
|
case graphql_1.Kind.INPUT_OBJECT_TYPE_DEFINITION:
|
|
271
287
|
// intentional fallthrough
|
|
272
288
|
case graphql_1.Kind.INPUT_OBJECT_TYPE_EXTENSION:
|
|
@@ -290,9 +306,9 @@ function nodeKindToDirectiveLocation(kind) {
|
|
|
290
306
|
case graphql_1.Kind.UNION_TYPE_DEFINITION:
|
|
291
307
|
// intentional fallthrough
|
|
292
308
|
case graphql_1.Kind.UNION_TYPE_EXTENSION:
|
|
293
|
-
return string_constants_1.
|
|
309
|
+
return string_constants_1.UNION_UPPER;
|
|
294
310
|
default:
|
|
295
|
-
|
|
311
|
+
return kind;
|
|
296
312
|
}
|
|
297
313
|
}
|
|
298
314
|
exports.nodeKindToDirectiveLocation = nodeKindToDirectiveLocation;
|
|
@@ -309,4 +325,104 @@ function getInlineFragmentString(parentTypeName) {
|
|
|
309
325
|
return ` ... on ${parentTypeName} `;
|
|
310
326
|
}
|
|
311
327
|
exports.getInlineFragmentString = getInlineFragmentString;
|
|
328
|
+
function extractNameNodeStringsToSet(nodes, set) {
|
|
329
|
+
for (const node of nodes) {
|
|
330
|
+
set.add(node.value);
|
|
331
|
+
}
|
|
332
|
+
return set;
|
|
333
|
+
}
|
|
334
|
+
exports.extractNameNodeStringsToSet = extractNameNodeStringsToSet;
|
|
335
|
+
function extractExecutableDirectiveLocations(nodes, set) {
|
|
336
|
+
for (const node of nodes) {
|
|
337
|
+
const name = node.value;
|
|
338
|
+
if (utils_2.EXECUTABLE_DIRECTIVE_LOCATIONS.has(name)) {
|
|
339
|
+
set.add(name);
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
return set;
|
|
343
|
+
}
|
|
344
|
+
exports.extractExecutableDirectiveLocations = extractExecutableDirectiveLocations;
|
|
345
|
+
function mergeExecutableDirectiveLocations(nodes, directiveContainer) {
|
|
346
|
+
const mergedSet = new Set();
|
|
347
|
+
for (const node of nodes) {
|
|
348
|
+
const name = node.value;
|
|
349
|
+
if (directiveContainer.executableLocations.has(name)) {
|
|
350
|
+
mergedSet.add(name);
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
directiveContainer.executableLocations = mergedSet;
|
|
354
|
+
return mergedSet;
|
|
355
|
+
}
|
|
356
|
+
exports.mergeExecutableDirectiveLocations = mergeExecutableDirectiveLocations;
|
|
357
|
+
function pushPersistedDirectivesToNode(container) {
|
|
358
|
+
const persistedDirectives = [...container.directives.tags.values()];
|
|
359
|
+
for (const directives of container.directives.directives.values()) {
|
|
360
|
+
persistedDirectives.push(...directives);
|
|
361
|
+
}
|
|
362
|
+
container.node.directives = persistedDirectives;
|
|
363
|
+
return container.node;
|
|
364
|
+
}
|
|
365
|
+
exports.pushPersistedDirectivesToNode = pushPersistedDirectivesToNode;
|
|
366
|
+
function getNodeWithPersistedDirectives(container) {
|
|
367
|
+
pushPersistedDirectivesToNode(container);
|
|
368
|
+
return container.node;
|
|
369
|
+
}
|
|
370
|
+
exports.getNodeWithPersistedDirectives = getNodeWithPersistedDirectives;
|
|
371
|
+
function addConcreteTypesForImplementedInterfaces(node, abstractToConcreteTypeNames) {
|
|
372
|
+
if (!node.interfaces || node.interfaces.length < 1) {
|
|
373
|
+
return;
|
|
374
|
+
}
|
|
375
|
+
const concreteTypeName = node.name.value;
|
|
376
|
+
for (const iFace of node.interfaces) {
|
|
377
|
+
const interfaceName = iFace.name.value;
|
|
378
|
+
const concreteTypes = abstractToConcreteTypeNames.get(interfaceName);
|
|
379
|
+
if (concreteTypes) {
|
|
380
|
+
concreteTypes.add(concreteTypeName);
|
|
381
|
+
}
|
|
382
|
+
else {
|
|
383
|
+
abstractToConcreteTypeNames.set(interfaceName, new Set([concreteTypeName]));
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
exports.addConcreteTypesForImplementedInterfaces = addConcreteTypesForImplementedInterfaces;
|
|
388
|
+
function addConcreteTypesForUnion(node, abstractToConcreteTypeNames) {
|
|
389
|
+
if (!node.types || node.types.length < 1) {
|
|
390
|
+
return;
|
|
391
|
+
}
|
|
392
|
+
const unionName = node.name.value;
|
|
393
|
+
for (const member of node.types) {
|
|
394
|
+
const memberName = member.name.value;
|
|
395
|
+
const concreteTypes = abstractToConcreteTypeNames.get(unionName);
|
|
396
|
+
if (concreteTypes) {
|
|
397
|
+
concreteTypes.add(memberName);
|
|
398
|
+
}
|
|
399
|
+
else {
|
|
400
|
+
abstractToConcreteTypeNames.set(unionName, new Set([memberName]));
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
exports.addConcreteTypesForUnion = addConcreteTypesForUnion;
|
|
405
|
+
function formatDescription(description) {
|
|
406
|
+
if (!description) {
|
|
407
|
+
return description;
|
|
408
|
+
}
|
|
409
|
+
let value = description.value;
|
|
410
|
+
if (description.block) {
|
|
411
|
+
const lines = value.split('\n');
|
|
412
|
+
if (lines.length > 1) {
|
|
413
|
+
value = lines.map((line) => line.trimStart()).join('\n');
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
return { ...description, value: value, block: true };
|
|
417
|
+
}
|
|
418
|
+
exports.formatDescription = formatDescription;
|
|
419
|
+
function setLongestDescriptionForNode(existingNode, newDescription) {
|
|
420
|
+
if (!newDescription) {
|
|
421
|
+
return;
|
|
422
|
+
}
|
|
423
|
+
if (!existingNode.description || newDescription.value.length > existingNode.description.value.length) {
|
|
424
|
+
existingNode.description = { ...newDescription, block: true };
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
exports.setLongestDescriptionForNode = setLongestDescriptionForNode;
|
|
312
428
|
//# sourceMappingURL=utils.js.map
|
package/dist/ast/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/ast/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/ast/utils.ts"],"names":[],"mappings":"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"}
|