@wundergraph/composition 0.34.0 → 0.36.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.js.map +1 -1
- package/dist/errors/errors.d.ts +16 -16
- package/dist/errors/errors.js +81 -82
- package/dist/errors/errors.js.map +1 -1
- package/dist/federation/federation-factory.d.ts +11 -3
- package/dist/federation/federation-factory.js +137 -10
- package/dist/federation/federation-factory.js.map +1 -1
- package/dist/federation/utils.d.ts +2 -1
- package/dist/federation/utils.js +11 -0
- package/dist/federation/utils.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/normalization/directive-definition-data.d.ts +25 -0
- package/dist/normalization/directive-definition-data.js +559 -0
- package/dist/normalization/directive-definition-data.js.map +1 -0
- package/dist/normalization/normalization-factory.d.ts +36 -11
- package/dist/normalization/normalization-factory.js +678 -124
- package/dist/normalization/normalization-factory.js.map +1 -1
- package/dist/normalization/utils.d.ts +27 -4
- package/dist/normalization/utils.js +31 -114
- package/dist/normalization/utils.js.map +1 -1
- package/dist/normalization/walkers.js +71 -68
- package/dist/normalization/walkers.js.map +1 -1
- package/dist/schema-building/ast.d.ts +1 -0
- package/dist/schema-building/ast.js +9 -0
- package/dist/schema-building/ast.js.map +1 -1
- package/dist/schema-building/type-definition-data.d.ts +36 -2
- package/dist/schema-building/type-definition-data.js.map +1 -1
- package/dist/schema-building/utils.d.ts +10 -20
- package/dist/schema-building/utils.js +54 -333
- package/dist/schema-building/utils.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/composition-version.d.ts +1 -0
- package/dist/utils/composition-version.js +5 -0
- package/dist/utils/composition-version.js.map +1 -0
- package/dist/utils/constants.d.ts +25 -3
- package/dist/utils/constants.js +200 -134
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/string-constants.d.ts +14 -0
- package/dist/utils/string-constants.js +30 -3
- package/dist/utils/string-constants.js.map +1 -1
- package/dist/utils/utils.d.ts +2 -1
- package/dist/utils/utils.js +7 -2
- package/dist/utils/utils.js.map +1 -1
- package/package.json +5 -3
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
import { ConstDirectiveNode, DefinitionNode, DirectiveDefinitionNode,
|
|
2
|
-
import {
|
|
3
|
-
import { FieldSetData, InputValidationContainer, KeyFieldSetData } from './utils';
|
|
1
|
+
import { ConstDirectiveNode, ConstValueNode, DefinitionNode, DirectiveDefinitionNode, DocumentNode, EnumTypeDefinitionNode, EnumTypeExtensionNode, EnumValueDefinitionNode, FieldDefinitionNode, GraphQLSchema, InputObjectTypeExtensionNode, InputValueDefinitionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, Kind, NamedTypeNode, ObjectTypeDefinitionNode, ObjectTypeExtensionNode, OperationTypeNode, ScalarTypeDefinitionNode, ScalarTypeExtensionNode, SchemaDefinitionNode, TypeDefinitionNode, TypeExtensionNode, TypeNode, UnionTypeDefinitionNode, UnionTypeExtensionNode } from 'graphql';
|
|
2
|
+
import { InputObjectTypeNode, InterfaceTypeNode, ObjectTypeNode, SchemaNode } from '../ast/utils';
|
|
3
|
+
import { ExtractArgumentDataResult, FieldSetData, HandleOverrideDirectiveParams, HandleRequiresScopesDirectiveParams, InputValidationContainer, KeyFieldSetData, ValidateDirectiveParams } from './utils';
|
|
4
4
|
import { AuthorizationData, EntityData, EntityInterfaceSubgraphData, FieldAuthorizationData } from '../utils/utils';
|
|
5
5
|
import { ConfigurationData, EventConfiguration, NatsEventType } from '../router-configuration/router-configuration';
|
|
6
6
|
import { InternalSubgraph, Subgraph } from '../subgraph/subgraph';
|
|
7
7
|
import { Warning } from '../warnings/warnings';
|
|
8
|
-
import { CompositeOutputData, ExtensionType, FieldData, InputValueData, ObjectDefinitionData, ParentDefinitionData, PersistedDirectiveDefinitionData, SchemaData, UnionDefinitionData } from '../schema-building/type-definition-data';
|
|
8
|
+
import { CompositeOutputData, EnumDefinitionData, ExtensionType, FieldData, InputObjectDefinitionData, InputValueData, NodeData, ObjectDefinitionData, ParentDefinitionData, PersistedDirectiveDefinitionData, ScalarDefinitionData, SchemaData, UnionDefinitionData } from '../schema-building/type-definition-data';
|
|
9
9
|
import { ConditionalFieldData } from '../schema-building/utils';
|
|
10
10
|
import { CompositeOutputNode } from '../schema-building/ast';
|
|
11
11
|
import { InvalidRootTypeFieldEventsDirectiveData } from '../errors/utils';
|
|
12
12
|
import { Graph } from '../resolvability-graph/graph';
|
|
13
|
-
import { NamedTypeNode, UnionTypeDefinitionNode, UnionTypeExtensionNode } from 'graphql/index';
|
|
14
13
|
export type NormalizationResult = {
|
|
15
14
|
authorizationDataByParentTypeName: Map<string, AuthorizationData>;
|
|
16
15
|
concreteTypeNamesByAbstractTypeName: Map<string, Set<string>>;
|
|
@@ -54,7 +53,9 @@ export declare class NormalizationFactory {
|
|
|
54
53
|
conditionalFieldDataByCoordinates: Map<string, ConditionalFieldData>;
|
|
55
54
|
configurationDataByParentTypeName: Map<string, ConfigurationData>;
|
|
56
55
|
customDirectiveDefinitions: Map<string, DirectiveDefinitionNode>;
|
|
56
|
+
definedDirectiveNames: Set<string>;
|
|
57
57
|
directiveDefinitionByDirectiveName: Map<string, DirectiveDefinitionNode>;
|
|
58
|
+
directiveDefinitionDataByDirectiveName: Map<string, import("../schema-building/type-definition-data").DirectiveDefinitionData>;
|
|
58
59
|
edfsDirectiveReferences: Set<string>;
|
|
59
60
|
errors: Error[];
|
|
60
61
|
entityDataByTypeName: Map<string, EntityData>;
|
|
@@ -63,12 +64,15 @@ export declare class NormalizationFactory {
|
|
|
63
64
|
unvalidatedExternalFieldCoords: Set<string>;
|
|
64
65
|
interfaceTypeNamesWithAuthorizationDirectives: Set<string>;
|
|
65
66
|
internalGraph: Graph;
|
|
67
|
+
invalidConfigureDescriptionNodeDatas: Array<NodeData>;
|
|
68
|
+
invalidRepeatedDirectiveNameByCoords: Map<string, Set<string>>;
|
|
66
69
|
isCurrentParentExtension: boolean;
|
|
70
|
+
isParentObjectExternal: boolean;
|
|
71
|
+
isParentObjectShareable: boolean;
|
|
67
72
|
isSubgraphEventDrivenGraph: boolean;
|
|
68
73
|
isSubgraphVersionTwo: boolean;
|
|
69
74
|
fieldSetDataByTypeName: Map<string, FieldSetData>;
|
|
70
75
|
heirFieldAuthorizationDataByTypeName: Map<string, FieldAuthorizationData[]>;
|
|
71
|
-
handledRepeatedDirectivesByHostPath: Map<string, Set<string>>;
|
|
72
76
|
lastParentNodeKind: Kind;
|
|
73
77
|
lastChildNodeKind: Kind;
|
|
74
78
|
leafTypeNamesWithAuthorizationDirectives: Set<string>;
|
|
@@ -81,7 +85,7 @@ export declare class NormalizationFactory {
|
|
|
81
85
|
parentsWithChildArguments: Set<string>;
|
|
82
86
|
overridesByTargetSubgraphName: Map<string, Map<string, Set<string>>>;
|
|
83
87
|
invalidOrScopesHostPaths: Set<string>;
|
|
84
|
-
|
|
88
|
+
schemaData: SchemaData;
|
|
85
89
|
referencedDirectiveNames: Set<string>;
|
|
86
90
|
referencedTypeNames: Set<string>;
|
|
87
91
|
renamedParentTypeName: string;
|
|
@@ -92,14 +96,26 @@ export declare class NormalizationFactory {
|
|
|
92
96
|
validateInputNamedType(namedType: string): InputValidationContainer;
|
|
93
97
|
validateArguments(fieldData: FieldData, fieldPath: string): void;
|
|
94
98
|
getAuthorizationData(node: InterfaceTypeNode | ObjectTypeNode): AuthorizationData | undefined;
|
|
95
|
-
extractDirectivesAndAuthorization(node: EnumTypeNode | FieldDefinitionNode | ScalarTypeNode, directivesByDirectiveName: Map<string, ConstDirectiveNode[]>): Map<string, ConstDirectiveNode[]>;
|
|
96
99
|
isTypeNameRootType(typeName: string): boolean;
|
|
97
|
-
|
|
100
|
+
isArgumentValueValid(typeNode: TypeNode, argumentValue: ConstValueNode): boolean;
|
|
101
|
+
addInheritedDirectivesToFieldData(fieldDirectivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>): Map<string, ConstDirectiveNode[]>;
|
|
102
|
+
extractDirectives(node: TypeDefinitionNode | TypeExtensionNode | FieldDefinitionNode | InputValueDefinitionNode | EnumValueDefinitionNode | SchemaNode, directivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>): Map<string, ConstDirectiveNode[]>;
|
|
103
|
+
validateDirective({ data, definitionData, directiveCoords, directiveNode, errorMessages, requiredArgumentNames, }: ValidateDirectiveParams): Array<string>;
|
|
104
|
+
validateDirectives(data: NodeData | SchemaData, directiveCoords: string): void;
|
|
98
105
|
getNodeExtensionType(isRealExtension: boolean, directivesByDirectiveName: Map<string, ConstDirectiveNode[]>, isRootType?: boolean): ExtensionType;
|
|
99
106
|
setParentDataExtensionType(parentData: ParentDefinitionData, incomingExtensionType: ExtensionType): void;
|
|
107
|
+
extractConfigureDescriptionData(data: NodeData, directiveNode: ConstDirectiveNode): void;
|
|
108
|
+
extractConfigureDescriptionsData(data: NodeData): void;
|
|
100
109
|
extractImplementedInterfaceTypeNames(node: InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode | ObjectTypeDefinitionNode | ObjectTypeExtensionNode, implementedInterfaceTypeNames: Set<string>): Set<string>;
|
|
101
|
-
updateCompositeOutputDataByNode(node: CompositeOutputNode,
|
|
110
|
+
updateCompositeOutputDataByNode(node: CompositeOutputNode, data: CompositeOutputData, extensionType: ExtensionType): void;
|
|
102
111
|
addConcreteTypeNamesForImplementedInterfaces(interfaceTypeNames: Set<string>, concreteTypeName: string): void;
|
|
112
|
+
extractArguments(argumentDataByArgumentName: Map<string, InputValueData>, node: FieldDefinitionNode): Map<string, InputValueData>;
|
|
113
|
+
addPersistedDirectiveDefinitionDataByNode(persistedDirectiveDefinitionDataByDirectiveName: Map<string, PersistedDirectiveDefinitionData>, node: DirectiveDefinitionNode, executableLocations: Set<string>): void;
|
|
114
|
+
extractDirectiveLocations(node: DirectiveDefinitionNode, errorMessages: Array<string>): Set<string>;
|
|
115
|
+
extractArgumentData(argumentNodes: ReadonlyArray<InputValueDefinitionNode> | Array<InputValueDefinitionNode> | undefined, errorMessages: Array<string>): ExtractArgumentDataResult;
|
|
116
|
+
addDirectiveDefinitionDataByNode(node: DirectiveDefinitionNode): boolean;
|
|
117
|
+
addFieldDataByNode(fieldDataByFieldName: Map<string, FieldData>, node: FieldDefinitionNode, argumentDataByArgumentName: Map<string, InputValueData>, directivesByDirectiveName: Map<string, ConstDirectiveNode[]>): FieldData;
|
|
118
|
+
addInputValueDataByNode(inputValueDataByValueName: Map<string, InputValueData>, node: InputValueDefinitionNode, originalPath: string, renamedPath?: string): void;
|
|
103
119
|
upsertInterfaceDataByNode(node: InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode, isRealExtension?: boolean): void;
|
|
104
120
|
getRenamedRootTypeName(typeName: string): string;
|
|
105
121
|
addInterfaceObjectFieldsByNode(node: ObjectTypeDefinitionNode | ObjectTypeExtensionNode): void;
|
|
@@ -111,7 +127,9 @@ export declare class NormalizationFactory {
|
|
|
111
127
|
upsertUnionByNode(node: UnionTypeDefinitionNode | UnionTypeExtensionNode, isRealExtension?: boolean): void;
|
|
112
128
|
extractKeyFieldSets(node: CompositeOutputNode, keyFieldSetData: KeyFieldSetData): void;
|
|
113
129
|
validateInterfaceImplementations(data: CompositeOutputData): void;
|
|
114
|
-
|
|
130
|
+
handleAuthenticatedDirective(data: NodeData | SchemaData, parentTypeName: string): void;
|
|
131
|
+
handleOverrideDirective({ data, directiveCoords, errorMessages, targetSubgraphName }: HandleOverrideDirectiveParams): void;
|
|
132
|
+
handleRequiresScopesDirective({ directiveCoords, orScopes, requiredScopes }: HandleRequiresScopesDirectiveParams): void;
|
|
115
133
|
getKafkaPublishConfiguration(directive: ConstDirectiveNode, argumentDataByArgumentName: Map<string, InputValueData>, errorMessages: string[]): EventConfiguration | undefined;
|
|
116
134
|
getKafkaSubscribeConfiguration(directive: ConstDirectiveNode, argumentDataByArgumentName: Map<string, InputValueData>, errorMessages: string[]): EventConfiguration | undefined;
|
|
117
135
|
getNatsPublishAndRequestConfiguration(eventType: NatsEventType, directive: ConstDirectiveNode, argumentDataByArgumentName: Map<string, InputValueData>, errorMessages: string[]): EventConfiguration | undefined;
|
|
@@ -130,6 +148,13 @@ export declare class NormalizationFactory {
|
|
|
130
148
|
addConcreteTypeNamesForUnion(node: UnionTypeDefinitionNode | UnionTypeExtensionNode): void;
|
|
131
149
|
validateAndAddKeyToConfiguration(parentData: CompositeOutputData, keyFieldSetData: KeyFieldSetData): void;
|
|
132
150
|
validateAndAddKeysToConfiguration(): void;
|
|
151
|
+
getValidFlattenedDirectiveArray(directivesByDirectiveName: Map<string, ConstDirectiveNode[]>, directiveCoords: string): ConstDirectiveNode[];
|
|
152
|
+
getEnumNodeByData(enumDefinitionData: EnumDefinitionData): import("../schema-building/ast").MutableEnumNode;
|
|
153
|
+
getInputObjectNodeByData(inputObjectDefinitionData: InputObjectDefinitionData): import("../schema-building/ast").MutableInputObjectNode;
|
|
154
|
+
getCompositeOutputNodeByData(compositeOutputData: CompositeOutputData): ObjectTypeDefinitionNode | InterfaceTypeDefinitionNode | ObjectTypeExtensionNode;
|
|
155
|
+
getScalarNodeByData(scalarDefinitionData: ScalarDefinitionData): import("../schema-building/ast").MutableScalarNode;
|
|
156
|
+
getSchemaNodeByData(schemaData: SchemaData): SchemaDefinitionNode;
|
|
157
|
+
getUnionNodeByData(unionDefinitionData: UnionDefinitionData): import("../schema-building/ast").MutableUnionNode;
|
|
133
158
|
normalize(document: DocumentNode): NormalizationResultContainer;
|
|
134
159
|
}
|
|
135
160
|
export declare function batchNormalize(subgraphs: Subgraph[]): BatchNormalizationContainer;
|