@wundergraph/composition 0.18.4 → 0.19.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/utils.d.ts +2 -9
- package/dist/ast/utils.js +2 -73
- package/dist/ast/utils.js.map +1 -1
- package/dist/errors/errors.d.ts +13 -19
- package/dist/errors/errors.js +50 -67
- package/dist/errors/errors.js.map +1 -1
- package/dist/federation/federation-factory.d.ts +17 -46
- package/dist/federation/federation-factory.js +391 -1002
- package/dist/federation/federation-factory.js.map +1 -1
- package/dist/federation/utils.d.ts +1 -115
- package/dist/federation/utils.js +0 -29
- package/dist/federation/utils.js.map +1 -1
- package/dist/federation/walkers.d.ts +3 -0
- package/dist/federation/walkers.js +120 -0
- package/dist/federation/walkers.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 +26 -18
- package/dist/normalization/normalization-factory.js +139 -141
- package/dist/normalization/normalization-factory.js.map +1 -1
- package/dist/normalization/utils.js +53 -54
- package/dist/normalization/utils.js.map +1 -1
- package/dist/normalization/walkers.js +156 -128
- package/dist/normalization/walkers.js.map +1 -1
- package/dist/router-configuration/router-configuration.d.ts +0 -1
- package/dist/schema-building/ast.d.ts +17 -5
- package/dist/schema-building/ast.js +32 -17
- package/dist/schema-building/ast.js.map +1 -1
- package/dist/schema-building/type-definition-data.d.ts +51 -25
- package/dist/schema-building/type-extension-data.d.ts +11 -7
- package/dist/schema-building/type-merging.d.ts +2 -4
- package/dist/schema-building/type-merging.js +8 -27
- package/dist/schema-building/type-merging.js.map +1 -1
- package/dist/schema-building/utils.d.ts +41 -18
- package/dist/schema-building/utils.js +855 -111
- package/dist/schema-building/utils.js.map +1 -1
- package/dist/subgraph/subgraph.d.ts +8 -10
- package/dist/subgraph/subgraph.js +1 -237
- package/dist/subgraph/subgraph.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/constants.d.ts +8 -1
- package/dist/utils/constants.js +47 -19
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/string-constants.d.ts +10 -4
- package/dist/utils/string-constants.js +20 -6
- package/dist/utils/string-constants.js.map +1 -1
- package/dist/utils/utils.d.ts +4 -4
- package/dist/utils/utils.js +10 -4
- package/dist/utils/utils.js.map +1 -1
- package/package.json +4 -3
- package/dist/ast/ast.d.ts +0 -97
- package/dist/ast/ast.js +0 -168
- package/dist/ast/ast.js.map +0 -1
|
@@ -1,23 +1,28 @@
|
|
|
1
|
-
import { ConstDirectiveNode, DirectiveDefinitionNode, DirectiveNode, DocumentNode, FieldDefinitionNode, GraphQLSchema, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, Kind, ObjectTypeDefinitionNode, ObjectTypeExtensionNode, OperationTypeNode
|
|
1
|
+
import { ConstDirectiveNode, DirectiveDefinitionNode, DirectiveNode, DocumentNode, FieldDefinitionNode, GraphQLSchema, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, Kind, ObjectTypeDefinitionNode, ObjectTypeExtensionNode, OperationTypeNode } from 'graphql';
|
|
2
2
|
import { EnumTypeNode, InterfaceTypeNode, ObjectTypeNode, ScalarTypeNode } from '../ast/utils';
|
|
3
3
|
import { FieldSetContainer, InputValidationContainer } from './utils';
|
|
4
4
|
import { AuthorizationData, EntityContainerByTypeName, EntityInterfaceSubgraphData, FieldAuthorizationData } from '../utils/utils';
|
|
5
|
-
import { ConfigurationData,
|
|
6
|
-
import { MutableInputValueDefinitionNode, ObjectLikeTypeNode } from '../ast/ast';
|
|
5
|
+
import { ConfigurationData, EventConfiguration } from '../router-configuration/router-configuration';
|
|
7
6
|
import { InternalSubgraph, Subgraph } from '../subgraph/subgraph';
|
|
8
|
-
import { FieldData, ParentDefinitionData, ParentWithFieldsData, SchemaData } from '../schema-building/type-definition-data';
|
|
9
|
-
import { ParentExtensionData } from '../schema-building/type-extension-data';
|
|
7
|
+
import { FieldData, ParentDefinitionData, ParentWithFieldsData, PersistedDirectiveDefinitionData, SchemaData } from '../schema-building/type-definition-data';
|
|
8
|
+
import { ObjectExtensionData, ParentExtensionData } from '../schema-building/type-extension-data';
|
|
9
|
+
import { MultiGraph } from 'graphology';
|
|
10
|
+
import { ObjectLikeTypeNode } from '../schema-building/ast';
|
|
10
11
|
export type NormalizationResult = {
|
|
11
12
|
authorizationDataByParentTypeName: Map<string, AuthorizationData>;
|
|
12
|
-
|
|
13
|
+
concreteTypeNamesByAbstractTypeName: Map<string, Set<string>>;
|
|
14
|
+
configurationDataByParentTypeName: Map<string, ConfigurationData>;
|
|
13
15
|
entityInterfaces: Map<string, EntityInterfaceSubgraphData>;
|
|
14
16
|
entityContainerByTypeName: EntityContainerByTypeName;
|
|
15
|
-
|
|
17
|
+
parentDefinitionDataByTypeName: Map<string, ParentDefinitionData>;
|
|
18
|
+
parentExtensionDataByTypeName: Map<string, ObjectExtensionData>;
|
|
19
|
+
originalTypeNameByRenamedTypeName: Map<string, string>;
|
|
16
20
|
isVersionTwo: boolean;
|
|
17
21
|
keyFieldNamesByParentTypeName: Map<string, Set<string>>;
|
|
18
22
|
operationTypes: Map<string, OperationTypeNode>;
|
|
19
23
|
overridesByTargetSubgraphName: Map<string, Map<string, Set<string>>>;
|
|
20
24
|
parentDataByTypeName: Map<string, ParentDefinitionData>;
|
|
25
|
+
persistedDirectiveDefinitionDataByDirectiveName: Map<string, PersistedDirectiveDefinitionData>;
|
|
21
26
|
schema: GraphQLSchema;
|
|
22
27
|
subgraphAST: DocumentNode;
|
|
23
28
|
subgraphString: string;
|
|
@@ -28,24 +33,27 @@ export type NormalizationResultContainer = {
|
|
|
28
33
|
};
|
|
29
34
|
export type BatchNormalizationContainer = {
|
|
30
35
|
authorizationDataByParentTypeName: Map<string, AuthorizationData>;
|
|
36
|
+
concreteTypeNamesByAbstractTypeName: Map<string, Set<string>>;
|
|
31
37
|
entityContainerByTypeName: EntityContainerByTypeName;
|
|
38
|
+
graph: MultiGraph;
|
|
32
39
|
internalSubgraphBySubgraphName: Map<string, InternalSubgraph>;
|
|
33
40
|
errors?: Error[];
|
|
34
41
|
warnings?: string[];
|
|
35
42
|
};
|
|
36
43
|
export declare function normalizeSubgraphFromString(subgraphSDL: string): NormalizationResultContainer;
|
|
37
|
-
export declare function normalizeSubgraph(document: DocumentNode, subgraphName?: string): NormalizationResultContainer;
|
|
44
|
+
export declare function normalizeSubgraph(document: DocumentNode, graph?: MultiGraph, subgraphName?: string): NormalizationResultContainer;
|
|
38
45
|
export declare class NormalizationFactory {
|
|
39
|
-
abstractToConcreteTypeNames: Map<string, Set<string>>;
|
|
40
|
-
directiveDefinitionByDirectiveName: Map<string, DirectiveDefinitionNode>;
|
|
41
46
|
argumentName: string;
|
|
42
47
|
authorizationDataByParentTypeName: Map<string, AuthorizationData>;
|
|
43
48
|
childName: string;
|
|
44
|
-
|
|
49
|
+
concreteTypeNamesByAbstractTypeName: Map<string, Set<string>>;
|
|
50
|
+
configurationDataByParentTypeName: Map<string, ConfigurationData>;
|
|
45
51
|
customDirectiveDefinitions: Map<string, DirectiveDefinitionNode>;
|
|
52
|
+
directiveDefinitionByDirectiveName: Map<string, DirectiveDefinitionNode>;
|
|
46
53
|
errors: Error[];
|
|
47
54
|
entityContainerByTypeName: EntityContainerByTypeName;
|
|
48
55
|
entityInterfaces: Map<string, EntityInterfaceSubgraphData>;
|
|
56
|
+
graph: MultiGraph;
|
|
49
57
|
parentExtensionDataByTypeName: Map<string, ParentExtensionData>;
|
|
50
58
|
interfaceTypeNamesWithAuthorizationDirectives: Set<string>;
|
|
51
59
|
isCurrentParentExtension: boolean;
|
|
@@ -57,9 +65,10 @@ export declare class NormalizationFactory {
|
|
|
57
65
|
lastChildNodeKind: Kind;
|
|
58
66
|
leafTypeNamesWithAuthorizationDirectives: Set<string>;
|
|
59
67
|
keyFieldNamesByParentTypeName: Map<string, Set<string>>;
|
|
60
|
-
|
|
68
|
+
operationTypeNodeByTypeName: Map<string, OperationTypeNode>;
|
|
69
|
+
originalTypeNameByRenamedTypeName: Map<string, string>;
|
|
61
70
|
parentDefinitionDataByTypeName: Map<string, ParentDefinitionData>;
|
|
62
|
-
|
|
71
|
+
originalParentTypeName: string;
|
|
63
72
|
parentsWithChildArguments: Set<string>;
|
|
64
73
|
eventsConfigurations: Map<string, EventConfiguration[]>;
|
|
65
74
|
overridesByTargetSubgraphName: Map<string, Map<string, Set<string>>>;
|
|
@@ -67,18 +76,17 @@ export declare class NormalizationFactory {
|
|
|
67
76
|
schemaDefinition: SchemaData;
|
|
68
77
|
referencedDirectiveNames: Set<string>;
|
|
69
78
|
referencedTypeNames: Set<string>;
|
|
79
|
+
renamedParentTypeName: string;
|
|
70
80
|
warnings: string[];
|
|
71
|
-
subgraphName
|
|
72
|
-
constructor(subgraphName?: string);
|
|
81
|
+
subgraphName: string;
|
|
82
|
+
constructor(graph: MultiGraph, subgraphName?: string);
|
|
73
83
|
validateInputNamedType(namedType: string): InputValidationContainer;
|
|
74
|
-
extractArguments(node: FieldDefinitionNode, argumentDataByArgumentName: Map<string, MutableInputValueDefinitionNode>, fieldPath: string): Map<string, MutableInputValueDefinitionNode>;
|
|
75
84
|
validateArguments(fieldData: FieldData, fieldPath: string): void;
|
|
76
85
|
getAuthorizationData(node: InterfaceTypeNode | ObjectTypeNode): AuthorizationData | undefined;
|
|
77
86
|
extractDirectivesAndAuthorization(node: EnumTypeNode | FieldDefinitionNode | ScalarTypeNode, directivesByDirectiveName: Map<string, ConstDirectiveNode[]>): Map<string, ConstDirectiveNode[]>;
|
|
78
87
|
mergeUniqueInterfaces(extensionInterfaces: Set<string>, interfaces: Set<string>, typeName: string): void;
|
|
79
88
|
handleInterfaceObject(node: ObjectTypeDefinitionNode): void;
|
|
80
|
-
handleExtensionWithFields(node: InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode | ObjectTypeDefinitionNode | ObjectTypeExtensionNode): false | void;
|
|
81
|
-
isTypeValidImplementation(originalType: TypeNode, implementationType: TypeNode): boolean;
|
|
89
|
+
handleExtensionWithFields(node: InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode | ObjectTypeDefinitionNode | ObjectTypeExtensionNode, isRootType?: boolean): false | void;
|
|
82
90
|
extractKeyFieldSets(node: ObjectLikeTypeNode, fieldSetContainer: FieldSetContainer): void;
|
|
83
91
|
validateInterfaceImplementations(container: ParentWithFieldsData): void;
|
|
84
92
|
handleOverrideDeclaration(node: DirectiveNode, hostPath: string, errorMessages: string[]): void;
|