@wundergraph/composition 0.18.0 → 0.18.1
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 +2 -9
- package/dist/ast/ast.js +4 -32
- package/dist/ast/ast.js.map +1 -1
- package/dist/ast/utils.d.ts +1 -2
- package/dist/ast/utils.js.map +1 -1
- package/dist/errors/errors.d.ts +6 -11
- package/dist/errors/errors.js +18 -29
- package/dist/errors/errors.js.map +1 -1
- package/dist/federation/federation-factory.d.ts +6 -6
- package/dist/federation/federation-factory.js +19 -18
- package/dist/federation/federation-factory.js.map +1 -1
- package/dist/federation/utils.d.ts +4 -4
- package/dist/federation/utils.js +2 -2
- package/dist/federation/utils.js.map +1 -1
- package/dist/index.d.ts +8 -1
- package/dist/index.js +8 -1
- package/dist/index.js.map +1 -1
- package/dist/normalization/normalization-factory.d.ts +19 -26
- package/dist/normalization/normalization-factory.js +179 -994
- package/dist/normalization/normalization-factory.js.map +1 -1
- package/dist/normalization/utils.d.ts +6 -126
- package/dist/normalization/utils.js +71 -166
- package/dist/normalization/utils.js.map +1 -1
- package/dist/normalization/walkers.d.ts +5 -0
- package/dist/normalization/walkers.js +593 -0
- package/dist/normalization/walkers.js.map +1 -0
- package/dist/schema-building/ast.d.ts +104 -0
- package/dist/schema-building/ast.js +156 -0
- package/dist/schema-building/ast.js.map +1 -0
- package/dist/schema-building/type-definition-data.d.ts +108 -0
- package/dist/schema-building/type-definition-data.js +3 -0
- package/dist/schema-building/type-definition-data.js.map +1 -0
- package/dist/schema-building/type-extension-data.d.ts +45 -0
- package/dist/schema-building/type-extension-data.js +3 -0
- package/dist/schema-building/type-extension-data.js.map +1 -0
- package/dist/{type-merging → schema-building}/type-merging.js +5 -4
- package/dist/schema-building/type-merging.js.map +1 -0
- package/dist/schema-building/utils.d.ts +42 -0
- package/dist/schema-building/utils.js +600 -0
- package/dist/schema-building/utils.js.map +1 -0
- package/dist/subgraph/subgraph.d.ts +4 -5
- package/dist/subgraph/subgraph.js +2 -91
- package/dist/subgraph/subgraph.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/constants.d.ts +4 -2
- package/dist/utils/constants.js +383 -359
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/string-constants.d.ts +4 -0
- package/dist/utils/string-constants.js +6 -2
- package/dist/utils/string-constants.js.map +1 -1
- package/dist/utils/utils.d.ts +2 -4
- package/dist/utils/utils.js +4 -6
- package/dist/utils/utils.js.map +1 -1
- package/package.json +2 -2
- package/dist/type-merging/type-merging.js.map +0 -1
- /package/dist/{type-merging → schema-building}/type-merging.d.ts +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isNodeQuery = exports.validateAndAddDirectivesWithFieldSetToConfigurationData = exports.getNormalizedFieldSet = exports.extractFieldSetValue = exports.addNonExternalFieldsToSet = exports.
|
|
3
|
+
exports.isNodeQuery = exports.validateAndAddDirectivesWithFieldSetToConfigurationData = exports.getNormalizedFieldSet = exports.extractFieldSetValue = exports.addNonExternalFieldsToSet = exports.getDirectiveDefinitionArgumentSets = exports.areNodeKindAndDirectiveLocationCompatible = exports.newFieldSetContainer = void 0;
|
|
4
4
|
const graphql_1 = require("graphql");
|
|
5
5
|
const utils_1 = require("../utils/utils");
|
|
6
6
|
const utils_2 = require("../ast/utils");
|
|
7
7
|
const string_constants_1 = require("../utils/string-constants");
|
|
8
|
-
const type_merging_1 = require("../
|
|
8
|
+
const type_merging_1 = require("../schema-building/type-merging");
|
|
9
9
|
const errors_1 = require("../errors/errors");
|
|
10
10
|
const constants_1 = require("../utils/constants");
|
|
11
11
|
function newFieldSetContainer() {
|
|
@@ -16,86 +16,14 @@ function newFieldSetContainer() {
|
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
18
|
exports.newFieldSetContainer = newFieldSetContainer;
|
|
19
|
-
function
|
|
20
|
-
const valueArray = [];
|
|
21
|
-
for (const childContainer of map.values()) {
|
|
22
|
-
const childPath = `${parentTypeName}.${childContainer.name}`;
|
|
23
|
-
factory.validateChildDirectives(childContainer, childPath);
|
|
24
|
-
valueArray.push(childContainer.node);
|
|
25
|
-
}
|
|
26
|
-
return valueArray;
|
|
27
|
-
}
|
|
28
|
-
function enumContainerToNode(factory, baseEnum, enumExtension) {
|
|
29
|
-
factory.mergeDirectives(baseEnum.directives, enumExtension);
|
|
30
|
-
return {
|
|
31
|
-
description: baseEnum.description,
|
|
32
|
-
directives: factory.getValidatedAndNormalizedParentDirectives(baseEnum),
|
|
33
|
-
kind: baseEnum.kind,
|
|
34
|
-
name: baseEnum.name,
|
|
35
|
-
values: childMapToValueArray(factory, baseEnum.values, baseEnum.name.value),
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
exports.enumContainerToNode = enumContainerToNode;
|
|
39
|
-
function inputObjectContainerToNode(factory, baseInputObject, inputObjectExtension) {
|
|
40
|
-
factory.mergeDirectives(baseInputObject.directives, inputObjectExtension);
|
|
41
|
-
return {
|
|
42
|
-
description: baseInputObject.description,
|
|
43
|
-
directives: factory.getValidatedAndNormalizedParentDirectives(baseInputObject),
|
|
44
|
-
fields: childMapToValueArray(factory, baseInputObject.fields, baseInputObject.name.value),
|
|
45
|
-
kind: baseInputObject.kind,
|
|
46
|
-
name: baseInputObject.name,
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
exports.inputObjectContainerToNode = inputObjectContainerToNode;
|
|
50
|
-
function objectLikeContainerToNode(factory, baseObjectLike, objectLikeExtension) {
|
|
51
|
-
factory.mergeDirectives(baseObjectLike.directives, objectLikeExtension);
|
|
52
|
-
const description = baseObjectLike.kind === graphql_1.Kind.OBJECT_TYPE_EXTENSION ? undefined : baseObjectLike.description;
|
|
53
|
-
return {
|
|
54
|
-
description,
|
|
55
|
-
directives: factory.getValidatedAndNormalizedParentDirectives(baseObjectLike),
|
|
56
|
-
fields: childMapToValueArray(factory, baseObjectLike.fields, baseObjectLike.name.value),
|
|
57
|
-
interfaces: (0, utils_2.setToNamedTypeNodeArray)(baseObjectLike.interfaces),
|
|
58
|
-
kind: baseObjectLike.kind,
|
|
59
|
-
name: baseObjectLike.name,
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
exports.objectLikeContainerToNode = objectLikeContainerToNode;
|
|
63
|
-
function scalarContainerToNode(factory, baseScalar, scalarExtension) {
|
|
64
|
-
factory.mergeDirectives(baseScalar.directives, scalarExtension);
|
|
65
|
-
return {
|
|
66
|
-
description: baseScalar.description,
|
|
67
|
-
directives: factory.getValidatedAndNormalizedParentDirectives(baseScalar),
|
|
68
|
-
kind: baseScalar.kind,
|
|
69
|
-
name: baseScalar.name,
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
exports.scalarContainerToNode = scalarContainerToNode;
|
|
73
|
-
function schemaContainerToNode(factory, baseSchema) {
|
|
74
|
-
return {
|
|
75
|
-
description: baseSchema.description,
|
|
76
|
-
directives: factory.getValidatedAndNormalizedParentDirectives(baseSchema),
|
|
77
|
-
kind: baseSchema.kind,
|
|
78
|
-
operationTypes: (0, utils_1.mapToArrayOfValues)(baseSchema.operationTypes),
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
exports.schemaContainerToNode = schemaContainerToNode;
|
|
82
|
-
function unionContainerToNode(factory, baseUnion, unionExtension) {
|
|
83
|
-
factory.mergeUniqueUnionMembers(baseUnion, unionExtension);
|
|
84
|
-
factory.mergeDirectives(baseUnion.directives, unionExtension);
|
|
85
|
-
return {
|
|
86
|
-
description: baseUnion.description,
|
|
87
|
-
directives: factory.getValidatedAndNormalizedParentDirectives(baseUnion),
|
|
88
|
-
kind: baseUnion.kind,
|
|
89
|
-
name: baseUnion.name,
|
|
90
|
-
types: (0, utils_1.mapToArrayOfValues)(baseUnion.types),
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
exports.unionContainerToNode = unionContainerToNode;
|
|
94
|
-
function areNodeKindAndDirectiveLocationCompatible(kind, directiveDefinitionNode) {
|
|
19
|
+
function areNodeKindAndDirectiveLocationCompatible(kind, directiveDefinitionNode, isArgument = false) {
|
|
95
20
|
for (const location of directiveDefinitionNode.locations) {
|
|
96
21
|
const locationName = location.value.toUpperCase();
|
|
97
22
|
switch (locationName) {
|
|
98
23
|
case string_constants_1.ARGUMENT_DEFINITION_UPPER:
|
|
24
|
+
if (!isArgument) {
|
|
25
|
+
break;
|
|
26
|
+
}
|
|
99
27
|
if (kind === graphql_1.Kind.INPUT_VALUE_DEFINITION) {
|
|
100
28
|
return true;
|
|
101
29
|
}
|
|
@@ -191,10 +119,10 @@ function areNodeKindAndDirectiveLocationCompatible(kind, directiveDefinitionNode
|
|
|
191
119
|
return false;
|
|
192
120
|
}
|
|
193
121
|
exports.areNodeKindAndDirectiveLocationCompatible = areNodeKindAndDirectiveLocationCompatible;
|
|
194
|
-
function getDirectiveDefinitionArgumentSets(args,
|
|
122
|
+
function getDirectiveDefinitionArgumentSets(args, argumentKindByArgumentName, requiredArguments) {
|
|
195
123
|
for (const argument of args) {
|
|
196
124
|
const argumentName = argument.name.value;
|
|
197
|
-
|
|
125
|
+
argumentKindByArgumentName.set(argumentName, argument.type);
|
|
198
126
|
// If the definition defines a default argument, it's not necessary to include it
|
|
199
127
|
if (argument.type.kind === graphql_1.Kind.NON_NULL_TYPE && !argument.defaultValue) {
|
|
200
128
|
requiredArguments.add(argumentName);
|
|
@@ -202,26 +130,9 @@ function getDirectiveDefinitionArgumentSets(args, allArguments, requiredArgument
|
|
|
202
130
|
}
|
|
203
131
|
}
|
|
204
132
|
exports.getDirectiveDefinitionArgumentSets = getDirectiveDefinitionArgumentSets;
|
|
205
|
-
function
|
|
206
|
-
const
|
|
207
|
-
|
|
208
|
-
const argumentName = argument.name.value;
|
|
209
|
-
if (!allArguments.has(argumentName)) {
|
|
210
|
-
errorMessages.push((0, errors_1.unexpectedDirectiveArgumentErrorMessage)(directiveName, argumentName));
|
|
211
|
-
continue;
|
|
212
|
-
}
|
|
213
|
-
if (definedArguments.has(argumentName)) {
|
|
214
|
-
errorMessages.push((0, errors_1.duplicateDirectiveArgumentDefinitionErrorMessage)(directiveName, hostPath, argumentName));
|
|
215
|
-
continue;
|
|
216
|
-
}
|
|
217
|
-
definedArguments.add(argumentName);
|
|
218
|
-
}
|
|
219
|
-
return definedArguments;
|
|
220
|
-
}
|
|
221
|
-
exports.getDefinedArgumentsForDirective = getDefinedArgumentsForDirective;
|
|
222
|
-
function addNonExternalFieldsToSet(fields, fieldNames) {
|
|
223
|
-
for (const [fieldName, fieldContainer] of fields) {
|
|
224
|
-
if (fieldContainer.directives.has(string_constants_1.EXTERNAL)) {
|
|
133
|
+
function addNonExternalFieldsToSet(fieldDataByFieldName, fieldNames) {
|
|
134
|
+
for (const [fieldName, fieldContainer] of fieldDataByFieldName) {
|
|
135
|
+
if (fieldContainer.directivesByDirectiveName.has(string_constants_1.EXTERNAL)) {
|
|
225
136
|
continue;
|
|
226
137
|
}
|
|
227
138
|
fieldNames.add(fieldName);
|
|
@@ -257,42 +168,42 @@ function getNormalizedFieldSet(documentNode) {
|
|
|
257
168
|
return (0, graphql_1.print)((0, utils_2.lexicographicallySortDocumentNode)(documentNode)).replaceAll(/\s+/g, ' ').slice(2, -2);
|
|
258
169
|
}
|
|
259
170
|
exports.getNormalizedFieldSet = getNormalizedFieldSet;
|
|
260
|
-
function validateNonRepeatableFieldSet(factory,
|
|
171
|
+
function validateNonRepeatableFieldSet(factory, parentData, fieldSet, directiveFieldName) {
|
|
261
172
|
// Create a new selection set so that the value can be parsed as a new DocumentNode
|
|
262
173
|
const { error, documentNode } = (0, utils_2.safeParse)('{' + fieldSet + '}');
|
|
263
174
|
if (error || !documentNode) {
|
|
264
175
|
return { errorMessage: (0, errors_1.unparsableFieldSetErrorMessage)(fieldSet, error) };
|
|
265
176
|
}
|
|
266
177
|
let errorMessage;
|
|
267
|
-
const
|
|
178
|
+
const parentDatas = [parentData];
|
|
268
179
|
const definedFields = [];
|
|
269
180
|
let currentDepth = -1;
|
|
270
181
|
let shouldDefineSelectionSet = true;
|
|
271
182
|
let lastFieldName = directiveFieldName;
|
|
272
|
-
let fieldPath =
|
|
183
|
+
let fieldPath = parentData.typeName;
|
|
273
184
|
(0, graphql_1.visit)(documentNode, {
|
|
274
185
|
Argument: {
|
|
275
|
-
enter(
|
|
186
|
+
enter() {
|
|
276
187
|
return false;
|
|
277
188
|
},
|
|
278
189
|
},
|
|
279
190
|
Field: {
|
|
280
191
|
enter(node) {
|
|
281
|
-
const
|
|
282
|
-
const parentTypeName =
|
|
283
|
-
if (
|
|
192
|
+
const parentData = parentDatas[currentDepth];
|
|
193
|
+
const parentTypeName = parentData.typeName;
|
|
194
|
+
if (parentData.kind === graphql_1.Kind.UNION_TYPE_DEFINITION) {
|
|
284
195
|
errorMessage = (0, errors_1.invalidSelectionOnUnionErrorMessage)(fieldSet, fieldPath, parentTypeName);
|
|
285
196
|
return graphql_1.BREAK;
|
|
286
197
|
}
|
|
287
198
|
// If an object-like was just visited, a selection set should have been entered
|
|
288
199
|
if (shouldDefineSelectionSet) {
|
|
289
|
-
errorMessage = (0, errors_1.invalidSelectionSetErrorMessage)(fieldSet, fieldPath, parentTypeName, (0, utils_1.kindToTypeString)(
|
|
200
|
+
errorMessage = (0, errors_1.invalidSelectionSetErrorMessage)(fieldSet, fieldPath, parentTypeName, (0, utils_1.kindToTypeString)(parentData.kind));
|
|
290
201
|
return graphql_1.BREAK;
|
|
291
202
|
}
|
|
292
203
|
const fieldName = node.name.value;
|
|
293
204
|
fieldPath = `${parentTypeName}.${fieldName}`;
|
|
294
205
|
lastFieldName = fieldName;
|
|
295
|
-
const fieldContainer =
|
|
206
|
+
const fieldContainer = parentData.fieldDataByFieldName.get(fieldName);
|
|
296
207
|
// undefined if the field does not exist on the parent
|
|
297
208
|
if (!fieldContainer) {
|
|
298
209
|
errorMessage = (0, errors_1.undefinedFieldInFieldSetErrorMessage)(fieldSet, parentTypeName, fieldName);
|
|
@@ -309,8 +220,8 @@ function validateNonRepeatableFieldSet(factory, parentContainer, fieldSet, direc
|
|
|
309
220
|
return;
|
|
310
221
|
}
|
|
311
222
|
// The child could itself be a parent and could exist as an object extension
|
|
312
|
-
const childContainer = factory.
|
|
313
|
-
factory.
|
|
223
|
+
const childContainer = factory.parentDefinitionDataByTypeName.get(namedTypeName) ||
|
|
224
|
+
factory.parentExtensionDataByTypeName.get(namedTypeName);
|
|
314
225
|
if (!childContainer) {
|
|
315
226
|
// Should not be possible to receive this error
|
|
316
227
|
errorMessage = (0, errors_1.unknownTypeInFieldSetErrorMessage)(fieldSet, fieldPath, namedTypeName);
|
|
@@ -321,15 +232,15 @@ function validateNonRepeatableFieldSet(factory, parentContainer, fieldSet, direc
|
|
|
321
232
|
childContainer.kind === graphql_1.Kind.INTERFACE_TYPE_DEFINITION ||
|
|
322
233
|
childContainer.kind === graphql_1.Kind.UNION_TYPE_DEFINITION) {
|
|
323
234
|
shouldDefineSelectionSet = true;
|
|
324
|
-
|
|
235
|
+
parentDatas.push(childContainer);
|
|
325
236
|
return;
|
|
326
237
|
}
|
|
327
238
|
},
|
|
328
239
|
},
|
|
329
240
|
InlineFragment: {
|
|
330
241
|
enter(node) {
|
|
331
|
-
const
|
|
332
|
-
const parentTypeName =
|
|
242
|
+
const parentData = parentDatas[currentDepth];
|
|
243
|
+
const parentTypeName = parentData.typeName;
|
|
333
244
|
if (!node.typeCondition) {
|
|
334
245
|
errorMessage = (0, errors_1.inlineFragmentWithoutTypeConditionErrorMessage)(fieldSet, fieldPath);
|
|
335
246
|
return graphql_1.BREAK;
|
|
@@ -337,16 +248,16 @@ function validateNonRepeatableFieldSet(factory, parentContainer, fieldSet, direc
|
|
|
337
248
|
const typeConditionName = node.typeCondition.name.value;
|
|
338
249
|
// It's possible to infinitely define fragments
|
|
339
250
|
if (typeConditionName === parentTypeName) {
|
|
340
|
-
|
|
251
|
+
parentDatas.push(parentData);
|
|
341
252
|
shouldDefineSelectionSet = true;
|
|
342
253
|
return;
|
|
343
254
|
}
|
|
344
|
-
if (!(0, utils_2.isKindAbstract)(
|
|
255
|
+
if (!(0, utils_2.isKindAbstract)(parentData.kind)) {
|
|
345
256
|
errorMessage = (0, errors_1.invalidInlineFragmentTypeErrorMessage)(fieldSet, fieldPath, typeConditionName, parentTypeName);
|
|
346
257
|
return graphql_1.BREAK;
|
|
347
258
|
}
|
|
348
|
-
const fragmentTypeContainer = factory.
|
|
349
|
-
factory.
|
|
259
|
+
const fragmentTypeContainer = factory.parentDefinitionDataByTypeName.get(typeConditionName) ||
|
|
260
|
+
factory.parentExtensionDataByTypeName.get(typeConditionName);
|
|
350
261
|
if (!fragmentTypeContainer) {
|
|
351
262
|
errorMessage = (0, errors_1.unknownInlineFragmentTypeConditionErrorMessage)(fieldSet, fieldPath, typeConditionName);
|
|
352
263
|
return graphql_1.BREAK;
|
|
@@ -360,40 +271,40 @@ function validateNonRepeatableFieldSet(factory, parentContainer, fieldSet, direc
|
|
|
360
271
|
}
|
|
361
272
|
const concreteTypeNames = factory.abstractToConcreteTypeNames.get(parentTypeName);
|
|
362
273
|
if (!concreteTypeNames || !concreteTypeNames.has(typeConditionName)) {
|
|
363
|
-
errorMessage = (0, errors_1.invalidInlineFragmentTypeConditionErrorMessage)(fieldSet, fieldPath, typeConditionName, (0, utils_1.kindToTypeString)(
|
|
274
|
+
errorMessage = (0, errors_1.invalidInlineFragmentTypeConditionErrorMessage)(fieldSet, fieldPath, typeConditionName, (0, utils_1.kindToTypeString)(parentData.kind), parentTypeName);
|
|
364
275
|
return graphql_1.BREAK;
|
|
365
276
|
}
|
|
366
277
|
shouldDefineSelectionSet = true;
|
|
367
|
-
|
|
278
|
+
parentDatas.push(fragmentTypeContainer);
|
|
368
279
|
},
|
|
369
280
|
leave() {
|
|
370
|
-
|
|
281
|
+
parentDatas.pop();
|
|
371
282
|
},
|
|
372
283
|
},
|
|
373
284
|
SelectionSet: {
|
|
374
285
|
enter() {
|
|
375
286
|
if (!shouldDefineSelectionSet) {
|
|
376
|
-
const parentContainer =
|
|
287
|
+
const parentContainer = parentDatas[currentDepth];
|
|
377
288
|
if (parentContainer.kind === graphql_1.Kind.UNION_TYPE_DEFINITION) {
|
|
378
289
|
// Should never happen
|
|
379
290
|
errorMessage = (0, errors_1.unparsableFieldSetSelectionErrorMessage)(fieldSet, lastFieldName);
|
|
380
291
|
return graphql_1.BREAK;
|
|
381
292
|
}
|
|
382
|
-
const fieldContainer = parentContainer.
|
|
293
|
+
const fieldContainer = parentContainer.fieldDataByFieldName.get(lastFieldName);
|
|
383
294
|
if (!fieldContainer) {
|
|
384
295
|
errorMessage = (0, errors_1.undefinedFieldInFieldSetErrorMessage)(fieldSet, fieldPath, lastFieldName);
|
|
385
296
|
return graphql_1.BREAK;
|
|
386
297
|
}
|
|
387
298
|
const fieldNamedTypeName = (0, type_merging_1.getNamedTypeForChild)(fieldPath, fieldContainer.node.type);
|
|
388
299
|
// If the child is not found, it's a base scalar. Undefined types would have already been handled.
|
|
389
|
-
const childContainer = factory.
|
|
300
|
+
const childContainer = factory.parentDefinitionDataByTypeName.get(fieldNamedTypeName);
|
|
390
301
|
const childKind = childContainer ? childContainer.kind : graphql_1.Kind.SCALAR_TYPE_DEFINITION;
|
|
391
302
|
errorMessage = (0, errors_1.invalidSelectionSetDefinitionErrorMessage)(fieldSet, fieldPath, fieldNamedTypeName, (0, utils_1.kindToTypeString)(childKind));
|
|
392
303
|
return graphql_1.BREAK;
|
|
393
304
|
}
|
|
394
305
|
currentDepth += 1;
|
|
395
306
|
shouldDefineSelectionSet = false;
|
|
396
|
-
if (currentDepth < 0 || currentDepth >=
|
|
307
|
+
if (currentDepth < 0 || currentDepth >= parentDatas.length) {
|
|
397
308
|
errorMessage = (0, errors_1.unparsableFieldSetSelectionErrorMessage)(fieldSet, lastFieldName);
|
|
398
309
|
return graphql_1.BREAK;
|
|
399
310
|
}
|
|
@@ -401,13 +312,13 @@ function validateNonRepeatableFieldSet(factory, parentContainer, fieldSet, direc
|
|
|
401
312
|
},
|
|
402
313
|
leave() {
|
|
403
314
|
if (shouldDefineSelectionSet) {
|
|
404
|
-
const parentContainer =
|
|
405
|
-
errorMessage = (0, errors_1.invalidSelectionSetErrorMessage)(fieldSet, fieldPath, parentContainer.
|
|
315
|
+
const parentContainer = parentDatas[currentDepth + 1];
|
|
316
|
+
errorMessage = (0, errors_1.invalidSelectionSetErrorMessage)(fieldSet, fieldPath, parentContainer.typeName, (0, utils_1.kindToTypeString)(parentContainer.kind));
|
|
406
317
|
shouldDefineSelectionSet = false;
|
|
407
318
|
}
|
|
408
319
|
// Empty selection sets would be a parse error, so it is unnecessary to handle them
|
|
409
320
|
currentDepth -= 1;
|
|
410
|
-
|
|
321
|
+
parentDatas.pop();
|
|
411
322
|
definedFields.pop();
|
|
412
323
|
},
|
|
413
324
|
},
|
|
@@ -417,11 +328,11 @@ function validateNonRepeatableFieldSet(factory, parentContainer, fieldSet, direc
|
|
|
417
328
|
}
|
|
418
329
|
return { configuration: { fieldName: directiveFieldName, selectionSet: getNormalizedFieldSet(documentNode) } };
|
|
419
330
|
}
|
|
420
|
-
function validateKeyFieldSets(factory,
|
|
421
|
-
const entityTypeName =
|
|
331
|
+
function validateKeyFieldSets(factory, entityParentData, fieldSets, disableEntityResolver) {
|
|
332
|
+
const entityTypeName = entityParentData.typeName;
|
|
422
333
|
const errorMessages = [];
|
|
423
334
|
const configurations = [];
|
|
424
|
-
const keyFieldNames = new Set();
|
|
335
|
+
// const keyFieldNames = new Set<string>();
|
|
425
336
|
for (const fieldSet of fieldSets) {
|
|
426
337
|
// Create a new selection set so that the value can be parsed as a new DocumentNode
|
|
427
338
|
const { error, documentNode } = (0, utils_2.safeParse)('{' + fieldSet + '}');
|
|
@@ -429,7 +340,7 @@ function validateKeyFieldSets(factory, entityContainer, fieldSets, fieldNames, d
|
|
|
429
340
|
errorMessages.push((0, errors_1.unparsableFieldSetErrorMessage)(fieldSet, error));
|
|
430
341
|
continue;
|
|
431
342
|
}
|
|
432
|
-
const
|
|
343
|
+
const parentWithFieldsDatas = [entityParentData];
|
|
433
344
|
const definedFields = [];
|
|
434
345
|
let currentDepth = -1;
|
|
435
346
|
let shouldDefineSelectionSet = true;
|
|
@@ -439,30 +350,30 @@ function validateKeyFieldSets(factory, entityContainer, fieldSets, fieldNames, d
|
|
|
439
350
|
enter(node) {
|
|
440
351
|
// Fields that define arguments are never allowed in a key FieldSet
|
|
441
352
|
// However, at this stage, it actually means the argument is undefined on the field
|
|
442
|
-
errorMessages.push((0, errors_1.unexpectedArgumentErrorMessage)(fieldSet, `${
|
|
353
|
+
errorMessages.push((0, errors_1.unexpectedArgumentErrorMessage)(fieldSet, `${parentWithFieldsDatas[currentDepth].typeName}.${lastFieldName}`, node.name.value));
|
|
443
354
|
return graphql_1.BREAK;
|
|
444
355
|
},
|
|
445
356
|
},
|
|
446
357
|
Field: {
|
|
447
358
|
enter(node) {
|
|
448
|
-
const grandparentContainer =
|
|
449
|
-
const
|
|
450
|
-
const parentTypeName =
|
|
359
|
+
const grandparentContainer = parentWithFieldsDatas[currentDepth - 1];
|
|
360
|
+
const parentData = parentWithFieldsDatas[currentDepth];
|
|
361
|
+
const parentTypeName = parentData.typeName;
|
|
451
362
|
// If an object-like was just visited, a selection set should have been entered
|
|
452
363
|
if (shouldDefineSelectionSet) {
|
|
453
|
-
errorMessages.push((0, errors_1.invalidSelectionSetErrorMessage)(fieldSet, `${grandparentContainer.
|
|
364
|
+
errorMessages.push((0, errors_1.invalidSelectionSetErrorMessage)(fieldSet, `${grandparentContainer.typeName}.${lastFieldName}`, parentTypeName, (0, utils_1.kindToTypeString)(parentData.kind)));
|
|
454
365
|
return graphql_1.BREAK;
|
|
455
366
|
}
|
|
456
367
|
const fieldName = node.name.value;
|
|
457
368
|
const fieldPath = `${parentTypeName}.${fieldName}`;
|
|
458
369
|
lastFieldName = fieldName;
|
|
459
|
-
const
|
|
370
|
+
const fieldData = parentData.fieldDataByFieldName.get(fieldName);
|
|
460
371
|
// undefined if the field does not exist on the parent
|
|
461
|
-
if (!
|
|
372
|
+
if (!fieldData) {
|
|
462
373
|
errorMessages.push((0, errors_1.undefinedFieldInFieldSetErrorMessage)(fieldSet, parentTypeName, fieldName));
|
|
463
374
|
return graphql_1.BREAK;
|
|
464
375
|
}
|
|
465
|
-
if (
|
|
376
|
+
if (fieldData.argumentDataByArgumentName.size) {
|
|
466
377
|
errorMessages.push((0, errors_1.argumentsInKeyFieldSetErrorMessage)(fieldSet, fieldPath));
|
|
467
378
|
return graphql_1.BREAK;
|
|
468
379
|
}
|
|
@@ -471,21 +382,15 @@ function validateKeyFieldSets(factory, entityContainer, fieldSets, fieldNames, d
|
|
|
471
382
|
return graphql_1.BREAK;
|
|
472
383
|
}
|
|
473
384
|
definedFields[currentDepth].add(fieldName);
|
|
474
|
-
// Depth 0 is the original parent type
|
|
475
|
-
// If a field is external, but it's part of a key FieldSet, it will be included in the root configuration
|
|
476
|
-
if (currentDepth === 0) {
|
|
477
|
-
keyFieldNames.add(fieldName);
|
|
478
|
-
fieldNames.add(fieldName);
|
|
479
|
-
}
|
|
480
385
|
(0, utils_1.getValueOrDefault)(factory.keyFieldNamesByParentTypeName, parentTypeName, () => new Set()).add(fieldName);
|
|
481
|
-
const namedTypeName = (0, type_merging_1.getNamedTypeForChild)(fieldPath,
|
|
386
|
+
const namedTypeName = (0, type_merging_1.getNamedTypeForChild)(fieldPath, fieldData.node.type);
|
|
482
387
|
// The base scalars are not in the parents map
|
|
483
388
|
if (constants_1.BASE_SCALARS.has(namedTypeName)) {
|
|
484
389
|
return;
|
|
485
390
|
}
|
|
486
391
|
// The child could itself be a parent and could exist as an object extension
|
|
487
|
-
const childContainer = factory.
|
|
488
|
-
factory.
|
|
392
|
+
const childContainer = factory.parentDefinitionDataByTypeName.get(namedTypeName) ||
|
|
393
|
+
factory.parentExtensionDataByTypeName.get(namedTypeName);
|
|
489
394
|
if (!childContainer) {
|
|
490
395
|
// Should not be possible to receive this error
|
|
491
396
|
errorMessages.push((0, errors_1.unknownTypeInFieldSetErrorMessage)(fieldSet, fieldPath, namedTypeName));
|
|
@@ -494,7 +399,7 @@ function validateKeyFieldSets(factory, entityContainer, fieldSets, fieldNames, d
|
|
|
494
399
|
if (childContainer.kind === graphql_1.Kind.OBJECT_TYPE_DEFINITION ||
|
|
495
400
|
childContainer.kind === graphql_1.Kind.OBJECT_TYPE_EXTENSION) {
|
|
496
401
|
shouldDefineSelectionSet = true;
|
|
497
|
-
|
|
402
|
+
parentWithFieldsDatas.push(childContainer);
|
|
498
403
|
return;
|
|
499
404
|
}
|
|
500
405
|
// interfaces and unions are invalid in a key directive
|
|
@@ -513,25 +418,25 @@ function validateKeyFieldSets(factory, entityContainer, fieldSets, fieldNames, d
|
|
|
513
418
|
SelectionSet: {
|
|
514
419
|
enter() {
|
|
515
420
|
if (!shouldDefineSelectionSet) {
|
|
516
|
-
const
|
|
517
|
-
const parentTypeName =
|
|
421
|
+
const parentData = parentWithFieldsDatas[currentDepth];
|
|
422
|
+
const parentTypeName = parentData.typeName;
|
|
518
423
|
const fieldPath = `${parentTypeName}.${lastFieldName}`;
|
|
519
424
|
// If the last field is not an object-like
|
|
520
|
-
const fieldContainer =
|
|
425
|
+
const fieldContainer = parentData.fieldDataByFieldName.get(lastFieldName);
|
|
521
426
|
if (!fieldContainer) {
|
|
522
427
|
errorMessages.push((0, errors_1.undefinedFieldInFieldSetErrorMessage)(fieldSet, fieldPath, lastFieldName));
|
|
523
428
|
return graphql_1.BREAK;
|
|
524
429
|
}
|
|
525
430
|
const fieldNamedTypeName = (0, type_merging_1.getNamedTypeForChild)(fieldPath, fieldContainer.node.type);
|
|
526
431
|
// If the child is not found, it's a base scalar. Undefined types would have already been handled.
|
|
527
|
-
const childContainer = factory.
|
|
432
|
+
const childContainer = factory.parentDefinitionDataByTypeName.get(fieldNamedTypeName);
|
|
528
433
|
const childKind = childContainer ? childContainer.kind : graphql_1.Kind.SCALAR_TYPE_DEFINITION;
|
|
529
434
|
errorMessages.push((0, errors_1.invalidSelectionSetDefinitionErrorMessage)(fieldSet, fieldPath, fieldNamedTypeName, (0, utils_1.kindToTypeString)(childKind)));
|
|
530
435
|
return graphql_1.BREAK;
|
|
531
436
|
}
|
|
532
437
|
currentDepth += 1;
|
|
533
438
|
shouldDefineSelectionSet = false;
|
|
534
|
-
if (currentDepth < 0 || currentDepth >=
|
|
439
|
+
if (currentDepth < 0 || currentDepth >= parentWithFieldsDatas.length) {
|
|
535
440
|
errorMessages.push((0, errors_1.unparsableFieldSetSelectionErrorMessage)(fieldSet, lastFieldName));
|
|
536
441
|
return graphql_1.BREAK;
|
|
537
442
|
}
|
|
@@ -539,16 +444,16 @@ function validateKeyFieldSets(factory, entityContainer, fieldSets, fieldNames, d
|
|
|
539
444
|
},
|
|
540
445
|
leave() {
|
|
541
446
|
if (shouldDefineSelectionSet) {
|
|
542
|
-
const grandparentContainer =
|
|
543
|
-
const grandparentTypeName = grandparentContainer.
|
|
544
|
-
const
|
|
447
|
+
const grandparentContainer = parentWithFieldsDatas[currentDepth];
|
|
448
|
+
const grandparentTypeName = grandparentContainer.typeName;
|
|
449
|
+
const parentData = parentWithFieldsDatas[currentDepth + 1];
|
|
545
450
|
const fieldPath = `${grandparentTypeName}.${lastFieldName}`;
|
|
546
|
-
errorMessages.push((0, errors_1.invalidSelectionSetErrorMessage)(fieldSet, fieldPath,
|
|
451
|
+
errorMessages.push((0, errors_1.invalidSelectionSetErrorMessage)(fieldSet, fieldPath, parentData.typeName, (0, utils_1.kindToTypeString)(parentData.kind)));
|
|
547
452
|
shouldDefineSelectionSet = false;
|
|
548
453
|
}
|
|
549
454
|
// Empty selection sets would be a parse error, so it is unnecessary to handle them
|
|
550
455
|
currentDepth -= 1;
|
|
551
|
-
|
|
456
|
+
parentWithFieldsDatas.pop();
|
|
552
457
|
definedFields.pop();
|
|
553
458
|
},
|
|
554
459
|
},
|
|
@@ -578,13 +483,13 @@ function getFieldSetParent(factory, fieldSetDirective, parentContainer, fieldNam
|
|
|
578
483
|
if (fieldSetDirective !== FieldSetDirective.PROVIDES) {
|
|
579
484
|
return factory.entityContainerByTypeName.has(parentTypeName) ? { fieldSetParentContainer: parentContainer } : {};
|
|
580
485
|
}
|
|
581
|
-
const fieldContainer = (0, utils_1.getOrThrowError)(parentContainer.
|
|
486
|
+
const fieldContainer = (0, utils_1.getOrThrowError)(parentContainer.fieldDataByFieldName, fieldName, `${parentTypeName}.fields`);
|
|
582
487
|
const fieldNamedTypeName = (0, type_merging_1.getNamedTypeForChild)(`${parentTypeName}.${fieldName}`, fieldContainer.node.type);
|
|
583
488
|
if (!factory.entityContainerByTypeName.has(fieldNamedTypeName)) {
|
|
584
489
|
return {};
|
|
585
490
|
}
|
|
586
|
-
const childContainer = factory.
|
|
587
|
-
factory.
|
|
491
|
+
const childContainer = factory.parentDefinitionDataByTypeName.get(fieldNamedTypeName) ||
|
|
492
|
+
factory.parentExtensionDataByTypeName.get(fieldNamedTypeName);
|
|
588
493
|
if (!childContainer ||
|
|
589
494
|
(childContainer.kind !== graphql_1.Kind.OBJECT_TYPE_DEFINITION && childContainer.kind !== graphql_1.Kind.OBJECT_TYPE_EXTENSION)) {
|
|
590
495
|
return {
|
|
@@ -596,7 +501,7 @@ function getFieldSetParent(factory, fieldSetDirective, parentContainer, fieldNam
|
|
|
596
501
|
function validateProvidesOrRequires(factory, parentContainer, fieldSetByFieldName, fieldSetDirective) {
|
|
597
502
|
const errorMessages = [];
|
|
598
503
|
const configurations = [];
|
|
599
|
-
const parentTypeName = parentContainer.
|
|
504
|
+
const parentTypeName = parentContainer.typeName;
|
|
600
505
|
for (const [fieldName, fieldSet] of fieldSetByFieldName) {
|
|
601
506
|
/* It is possible to encounter a field before encountering the type definition.
|
|
602
507
|
Consequently, at that time, it is unknown whether the named type is an entity.
|
|
@@ -632,8 +537,8 @@ function validateProvidesOrRequires(factory, parentContainer, fieldSetByFieldNam
|
|
|
632
537
|
}
|
|
633
538
|
}
|
|
634
539
|
function validateAndAddDirectivesWithFieldSetToConfigurationData(factory, parentContainer, fieldSetContainer) {
|
|
635
|
-
const configurationData = (0, utils_1.getOrThrowError)(factory.configurationDataMap, parentContainer.
|
|
636
|
-
const keys = validateKeyFieldSets(factory, parentContainer, fieldSetContainer.keys,
|
|
540
|
+
const configurationData = (0, utils_1.getOrThrowError)(factory.configurationDataMap, parentContainer.typeName, 'configurationDataMap');
|
|
541
|
+
const keys = validateKeyFieldSets(factory, parentContainer, fieldSetContainer.keys, fieldSetContainer.disableEntityResolver);
|
|
637
542
|
if (keys) {
|
|
638
543
|
configurationData.keys = keys;
|
|
639
544
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/normalization/utils.ts"],"names":[],"mappings":";;;AAAA,qCAyBiB;AACjB,0CAA0G;AAC1G,wCAAqH;AACrH,gEAuBmC;AAEnC,+DAAoE;AACpE,6CAyB0B;AAC1B,kDAAkD;AA6GlD,SAAgB,oBAAoB;IAClC,OAAO;QACL,IAAI,EAAE,IAAI,GAAG,EAAU;QACvB,QAAQ,EAAE,IAAI,GAAG,EAAkB;QACnC,QAAQ,EAAE,IAAI,GAAG,EAAkB;KACpC,CAAC;AACJ,CAAC;AAND,oDAMC;AAuDD,SAAS,oBAAoB,CAC3B,OAA6B,EAC7B,GAAmB,EACnB,cAAsB;IAEtB,MAAM,UAAU,GAA0B,EAAE,CAAC;IAC7C,KAAK,MAAM,cAAc,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE;QACzC,MAAM,SAAS,GAAG,GAAG,cAAc,IAAI,cAAc,CAAC,IAAI,EAAE,CAAC;QAC7D,OAAO,CAAC,uBAAuB,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QAC3D,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;KACtC;IACD,OAAO,UAAiB,CAAC;AAC3B,CAAC;AAED,SAAgB,mBAAmB,CACjC,OAA6B,EAC7B,QAAuB,EACvB,aAAkC;IAElC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAC5D,OAAO;QACL,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,UAAU,EAAE,OAAO,CAAC,yCAAyC,CAAC,QAAQ,CAAC;QACvE,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,MAAM,EAAE,oBAAoB,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;KAC5E,CAAC;AACJ,CAAC;AAbD,kDAaC;AAED,SAAgB,0BAA0B,CACxC,OAA6B,EAC7B,eAAqC,EACrC,oBAAoD;IAEpD,OAAO,CAAC,eAAe,CAAC,eAAe,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;IAC1E,OAAO;QACL,WAAW,EAAE,eAAe,CAAC,WAAW;QACxC,UAAU,EAAE,OAAO,CAAC,yCAAyC,CAAC,eAAe,CAAC;QAC9E,MAAM,EAAE,oBAAoB,CAAC,OAAO,EAAE,eAAe,CAAC,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;QACzF,IAAI,EAAE,eAAe,CAAC,IAAI;QAC1B,IAAI,EAAE,eAAe,CAAC,IAAI;KAC3B,CAAC;AACJ,CAAC;AAbD,gEAaC;AAED,SAAgB,yBAAyB,CACvC,OAA6B,EAC7B,cAAkE,EAClE,mBAAkD;IAElD,OAAO,CAAC,eAAe,CAAC,cAAc,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IACxE,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,KAAK,cAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC;IAChH,OAAO;QACL,WAAW;QACX,UAAU,EAAE,OAAO,CAAC,yCAAyC,CAAC,cAAc,CAAC;QAC7E,MAAM,EAAE,oBAAoB,CAAC,OAAO,EAAE,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;QACvF,UAAU,EAAE,IAAA,+BAAuB,EAAC,cAAc,CAAC,UAAU,CAAC;QAC9D,IAAI,EAAE,cAAc,CAAC,IAAI;QACzB,IAAI,EAAE,cAAc,CAAC,IAAI;KAC1B,CAAC;AACJ,CAAC;AAfD,8DAeC;AAED,SAAgB,qBAAqB,CACnC,OAA6B,EAC7B,UAA2B,EAC3B,eAA0C;IAE1C,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAChE,OAAO;QACL,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,UAAU,EAAE,OAAO,CAAC,yCAAyC,CAAC,UAAU,CAAC;QACzE,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,IAAI,EAAE,UAAU,CAAC,IAAI;KACtB,CAAC;AACJ,CAAC;AAZD,sDAYC;AAED,SAAgB,qBAAqB,CACnC,OAA6B,EAC7B,UAA2B;IAE3B,OAAO;QACL,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,UAAU,EAAE,OAAO,CAAC,yCAAyC,CAAC,UAAU,CAAC;QACzE,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,cAAc,EAAE,IAAA,0BAAkB,EAAC,UAAU,CAAC,cAAc,CAAC;KAC9D,CAAC;AACJ,CAAC;AAVD,sDAUC;AAED,SAAgB,oBAAoB,CAClC,OAA6B,EAC7B,SAAyB,EACzB,cAAwC;IAExC,OAAO,CAAC,uBAAuB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAC3D,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC9D,OAAO;QACL,WAAW,EAAE,SAAS,CAAC,WAAW;QAClC,UAAU,EAAE,OAAO,CAAC,yCAAyC,CAAC,SAAS,CAAC;QACxE,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,KAAK,EAAE,IAAA,0BAAkB,EAAC,SAAS,CAAC,KAAK,CAAC;KAC3C,CAAC;AACJ,CAAC;AAdD,oDAcC;AAED,SAAgB,yCAAyC,CACvD,IAAU,EACV,uBAAgD;IAEhD,KAAK,MAAM,QAAQ,IAAI,uBAAuB,CAAC,SAAS,EAAE;QACxD,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAClD,QAAQ,YAAY,EAAE;YACpB,KAAK,4CAAyB;gBAC5B,IAAI,IAAI,KAAK,cAAI,CAAC,sBAAsB,EAAE;oBACxC,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,6BAAU;gBACb,IAAI,IAAI,KAAK,cAAI,CAAC,oBAAoB,IAAI,IAAI,KAAK,cAAI,CAAC,mBAAmB,EAAE;oBAC3E,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,mCAAgB;gBACnB,IAAI,IAAI,KAAK,cAAI,CAAC,qBAAqB,EAAE;oBACvC,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,8BAAW;gBACd,IAAI,IAAI,KAAK,cAAI,CAAC,KAAK,EAAE;oBACvB,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,yCAAsB;gBACzB,IAAI,IAAI,KAAK,cAAI,CAAC,gBAAgB,EAAE;oBAClC,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,wCAAqB;gBACxB,IAAI,IAAI,KAAK,cAAI,CAAC,eAAe,EAAE;oBACjC,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,+CAA4B;gBAC/B,IAAI,IAAI,KAAK,cAAI,CAAC,sBAAsB,EAAE;oBACxC,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,qCAAkB;gBACrB,IAAI,IAAI,KAAK,cAAI,CAAC,4BAA4B,IAAI,IAAI,KAAK,cAAI,CAAC,2BAA2B,EAAE;oBAC3F,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,kCAAe;gBAClB,IAAI,IAAI,KAAK,cAAI,CAAC,yBAAyB,IAAI,IAAI,KAAK,cAAI,CAAC,wBAAwB,EAAE;oBACrF,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,+BAAY;gBACf,IAAI,IAAI,KAAK,cAAI,CAAC,sBAAsB,IAAI,IAAI,KAAK,cAAI,CAAC,qBAAqB,EAAE;oBAC/E,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,4CAAyB;gBAC5B,IAAI,IAAI,KAAK,cAAI,CAAC,mBAAmB,EAAE;oBACrC,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,wCAAqB;gBACxB,IAAI,IAAI,KAAK,cAAI,CAAC,eAAe,EAAE;oBACjC,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,+BAAY;gBACf,IAAI,IAAI,KAAK,cAAI,CAAC,sBAAsB,IAAI,IAAI,KAAK,cAAI,CAAC,qBAAqB,EAAE;oBAC/E,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,+BAAY;gBACf,IAAI,IAAI,KAAK,cAAI,CAAC,iBAAiB,IAAI,IAAI,KAAK,cAAI,CAAC,gBAAgB,EAAE;oBACrE,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,8BAAW;gBACd,IAAI,IAAI,KAAK,cAAI,CAAC,qBAAqB,IAAI,IAAI,KAAK,cAAI,CAAC,oBAAoB,EAAE;oBAC7E,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,4CAAyB;gBAC5B,IAAI,IAAI,KAAK,cAAI,CAAC,mBAAmB,EAAE;oBACrC,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR,KAAK,8BAAW,CAAC;YACjB,0BAA0B;YAC1B,KAAK,iCAAc,CAAC;YACpB,0BAA0B;YAC1B,KAAK,qCAAkB;gBACrB,IAAI,IAAI,KAAK,cAAI,CAAC,oBAAoB,EAAE;oBACtC,OAAO,IAAI,CAAC;iBACb;gBACD,MAAM;YACR;gBACE,MAAM,IAAA,yCAAgC,EAAC,YAAY,CAAC,CAAC;SACxD;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AArGD,8FAqGC;AAED,SAAgB,kCAAkC,CAChD,IAAyC,EACzC,YAAyB,EACzB,iBAA8B;IAE9B,KAAK,MAAM,QAAQ,IAAI,IAAI,EAAE;QAC3B,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QACzC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC/B,iFAAiF;QACjF,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,cAAI,CAAC,aAAa,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;YACvE,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;SACrC;KACF;AACH,CAAC;AAbD,gFAaC;AAED,SAAgB,+BAA+B,CAC7C,IAAkC,EAClC,YAAyB,EACzB,aAAqB,EACrB,QAAgB,EAChB,aAAuB;IAEvB,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC3C,KAAK,MAAM,QAAQ,IAAI,IAAI,EAAE;QAC3B,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QACzC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YACnC,aAAa,CAAC,IAAI,CAAC,IAAA,gDAAuC,EAAC,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;YACzF,SAAS;SACV;QACD,IAAI,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YACtC,aAAa,CAAC,IAAI,CAAC,IAAA,yDAAgD,EAAC,aAAa,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;YAC5G,SAAS;SACV;QACD,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;KACpC;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AArBD,0EAqBC;AAOD,SAAgB,yBAAyB,CAAC,MAAmC,EAAE,UAAuB;IACpG,KAAK,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,IAAI,MAAM,EAAE;QAChD,IAAI,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,2BAAQ,CAAC,EAAE;YAC3C,SAAS;SACV;QACD,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;KAC3B;AACH,CAAC;AAPD,8DAOC;AAED,SAAgB,oBAAoB,CAAC,IAAY,EAAE,GAAwB,EAAE,UAAiC;IAC5G,0DAA0D;IAC1D,yFAAyF;IACzF,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;QACxC,OAAO;KACR;IACD,uCAAuC;IACvC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACrC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9B,OAAO;KACR;IACD,sDAAsD;IACtD,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,KAAK,yBAAM,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,KAAK,cAAI,CAAC,MAAM,EAAE;QACrF,OAAO;KACR;IACD,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC5C,CAAC;AAjBD,oDAiBC;AAOD,SAAgB,qBAAqB,CAAC,YAA0B;IAC9D;;;;;OAKG;IACH,OAAO,IAAA,eAAK,EAAC,IAAA,yCAAiC,EAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACrG,CAAC;AARD,sDAQC;AAED,SAAS,6BAA6B,CACpC,OAA6B,EAC7B,eAAoC,EACpC,QAAgB,EAChB,kBAA0B;IAE1B,mFAAmF;IACnF,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,IAAA,iBAAS,EAAC,GAAG,GAAG,QAAQ,GAAG,GAAG,CAAC,CAAC;IAChE,IAAI,KAAK,IAAI,CAAC,YAAY,EAAE;QAC1B,OAAO,EAAE,YAAY,EAAE,IAAA,uCAA8B,EAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;KAC1E;IACD,IAAI,YAAY,CAAC;IACjB,MAAM,gBAAgB,GAA6C,CAAC,eAAe,CAAC,CAAC;IACrF,MAAM,aAAa,GAAkB,EAAE,CAAC;IACxC,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC;IACtB,IAAI,wBAAwB,GAAG,IAAI,CAAC;IACpC,IAAI,aAAa,GAAG,kBAAkB,CAAC;IACvC,IAAI,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;IAC3C,IAAA,eAAK,EAAC,YAAY,EAAE;QAClB,QAAQ,EAAE;YACR,KAAK,CAAC,IAAI;gBACR,OAAO,KAAK,CAAC;YACf,CAAC;SACF;QACD,KAAK,EAAE;YACL,KAAK,CAAC,IAAI;gBACR,MAAM,eAAe,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;gBACvD,MAAM,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;gBAClD,IAAI,eAAe,CAAC,IAAI,KAAK,cAAI,CAAC,qBAAqB,EAAE;oBACvD,YAAY,GAAG,IAAA,4CAAmC,EAAC,QAAQ,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;oBACxF,OAAO,eAAK,CAAC;iBACd;gBACD,+EAA+E;gBAC/E,IAAI,wBAAwB,EAAE;oBAC5B,YAAY,GAAG,IAAA,wCAA+B,EAC5C,QAAQ,EACR,SAAS,EACT,cAAc,EACd,IAAA,wBAAgB,EAAC,eAAe,CAAC,IAAI,CAAC,CACvC,CAAC;oBACF,OAAO,eAAK,CAAC;iBACd;gBACD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;gBAClC,SAAS,GAAG,GAAG,cAAc,IAAI,SAAS,EAAE,CAAC;gBAC7C,aAAa,GAAG,SAAS,CAAC;gBAC1B,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAC7D,sDAAsD;gBACtD,IAAI,CAAC,cAAc,EAAE;oBACnB,YAAY,GAAG,IAAA,6CAAoC,EAAC,QAAQ,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC;oBACzF,OAAO,eAAK,CAAC;iBACd;gBACD,IAAI,aAAa,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;oBAC9C,YAAY,GAAG,IAAA,6CAAoC,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;oBACzE,OAAO,eAAK,CAAC;iBACd;gBACD,aAAa,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAC3C,MAAM,aAAa,GAAG,IAAA,mCAAoB,EAAC,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChF,8CAA8C;gBAC9C,IAAI,wBAAY,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;oBACnC,OAAO;iBACR;gBACD,4EAA4E;gBAC5E,MAAM,cAAc,GAClB,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,aAAa,CAAC;oBACpD,OAAO,CAAC,4BAA4B,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBAC1D,IAAI,CAAC,cAAc,EAAE;oBACnB,+CAA+C;oBAC/C,YAAY,GAAG,IAAA,0CAAiC,EAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;oBACrF,OAAO,eAAK,CAAC;iBACd;gBACD,IACE,cAAc,CAAC,IAAI,KAAK,cAAI,CAAC,sBAAsB;oBACnD,cAAc,CAAC,IAAI,KAAK,cAAI,CAAC,qBAAqB;oBAClD,cAAc,CAAC,IAAI,KAAK,cAAI,CAAC,yBAAyB;oBACtD,cAAc,CAAC,IAAI,KAAK,cAAI,CAAC,qBAAqB,EAClD;oBACA,wBAAwB,GAAG,IAAI,CAAC;oBAChC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBACtC,OAAO;iBACR;YACH,CAAC;SACF;QACD,cAAc,EAAE;YACd,KAAK,CAAC,IAAI;gBACR,MAAM,eAAe,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;gBACvD,MAAM,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;gBAClD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;oBACvB,YAAY,GAAG,IAAA,uDAA8C,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;oBACnF,OAAO,eAAK,CAAC;iBACd;gBACD,MAAM,iBAAiB,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;gBACxD,+CAA+C;gBAC/C,IAAI,iBAAiB,KAAK,cAAc,EAAE;oBACxC,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oBACvC,wBAAwB,GAAG,IAAI,CAAC;oBAChC,OAAO;iBACR;gBACD,IAAI,CAAC,IAAA,sBAAc,EAAC,eAAe,CAAC,IAAI,CAAC,EAAE;oBACzC,YAAY,GAAG,IAAA,8CAAqC,EAAC,QAAQ,EAAE,SAAS,EAAE,iBAAiB,EAAE,cAAc,CAAC,CAAC;oBAC7G,OAAO,eAAK,CAAC;iBACd;gBACD,MAAM,qBAAqB,GACzB,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,iBAAiB,CAAC;oBACxD,OAAO,CAAC,4BAA4B,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;gBAC9D,IAAI,CAAC,qBAAqB,EAAE;oBAC1B,YAAY,GAAG,IAAA,uDAA8C,EAAC,QAAQ,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;oBACtG,OAAO,eAAK,CAAC;iBACd;gBACD,IACE,qBAAqB,CAAC,IAAI,KAAK,cAAI,CAAC,yBAAyB;oBAC7D,qBAAqB,CAAC,IAAI,KAAK,cAAI,CAAC,sBAAsB;oBAC1D,qBAAqB,CAAC,IAAI,KAAK,cAAI,CAAC,qBAAqB;oBACzD,qBAAqB,CAAC,IAAI,KAAK,cAAI,CAAC,qBAAqB,EACzD;oBACA,YAAY,GAAG,IAAA,2DAAkD,EAC/D,QAAQ,EACR,SAAS,EACT,iBAAiB,EACjB,IAAA,wBAAgB,EAAC,qBAAqB,CAAC,IAAI,CAAC,CAC7C,CAAC;oBACF,OAAO,eAAK,CAAC;iBACd;gBACD,MAAM,iBAAiB,GAAG,OAAO,CAAC,2BAA2B,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAClF,IAAI,CAAC,iBAAiB,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE;oBACnE,YAAY,GAAG,IAAA,uDAA8C,EAC3D,QAAQ,EACR,SAAS,EACT,iBAAiB,EACjB,IAAA,wBAAgB,EAAC,eAAe,CAAC,IAAI,CAAC,EACtC,cAAc,CACf,CAAC;oBACF,OAAO,eAAK,CAAC;iBACd;gBACD,wBAAwB,GAAG,IAAI,CAAC;gBAChC,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAC/C,CAAC;YACD,KAAK;gBACH,gBAAgB,CAAC,GAAG,EAAE,CAAC;YACzB,CAAC;SACF;QACD,YAAY,EAAE;YACZ,KAAK;gBACH,IAAI,CAAC,wBAAwB,EAAE;oBAC7B,MAAM,eAAe,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;oBACvD,IAAI,eAAe,CAAC,IAAI,KAAK,cAAI,CAAC,qBAAqB,EAAE;wBACvD,sBAAsB;wBACtB,YAAY,GAAG,IAAA,gDAAuC,EAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;wBAChF,OAAO,eAAK,CAAC;qBACd;oBACD,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;oBACjE,IAAI,CAAC,cAAc,EAAE;wBACnB,YAAY,GAAG,IAAA,6CAAoC,EAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;wBACxF,OAAO,eAAK,CAAC;qBACd;oBACD,MAAM,kBAAkB,GAAG,IAAA,mCAAoB,EAAC,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACrF,kGAAkG;oBAClG,MAAM,cAAc,GAAG,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;oBACjF,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,cAAI,CAAC,sBAAsB,CAAC;oBACrF,YAAY,GAAG,IAAA,kDAAyC,EACtD,QAAQ,EACR,SAAS,EACT,kBAAkB,EAClB,IAAA,wBAAgB,EAAC,SAAS,CAAC,CAC5B,CAAC;oBACF,OAAO,eAAK,CAAC;iBACd;gBACD,YAAY,IAAI,CAAC,CAAC;gBAClB,wBAAwB,GAAG,KAAK,CAAC;gBACjC,IAAI,YAAY,GAAG,CAAC,IAAI,YAAY,IAAI,gBAAgB,CAAC,MAAM,EAAE;oBAC/D,YAAY,GAAG,IAAA,gDAAuC,EAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;oBAChF,OAAO,eAAK,CAAC;iBACd;gBACD,aAAa,CAAC,IAAI,CAAC,IAAI,GAAG,EAAU,CAAC,CAAC;YACxC,CAAC;YACD,KAAK;gBACH,IAAI,wBAAwB,EAAE;oBAC5B,MAAM,eAAe,GAAG,gBAAgB,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;oBAC3D,YAAY,GAAG,IAAA,wCAA+B,EAC5C,QAAQ,EACR,SAAS,EACT,eAAe,CAAC,IAAI,CAAC,KAAK,EAC1B,IAAA,wBAAgB,EAAC,eAAe,CAAC,IAAI,CAAC,CACvC,CAAC;oBACF,wBAAwB,GAAG,KAAK,CAAC;iBAClC;gBACD,mFAAmF;gBACnF,YAAY,IAAI,CAAC,CAAC;gBAClB,gBAAgB,CAAC,GAAG,EAAE,CAAC;gBACvB,aAAa,CAAC,GAAG,EAAE,CAAC;YACtB,CAAC;SACF;KACF,CAAC,CAAC;IACH,IAAI,YAAY,EAAE;QAChB,OAAO,EAAE,YAAY,EAAE,CAAC;KACzB;IACD,OAAO,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,YAAY,EAAE,qBAAqB,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;AACjH,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAA6B,EAC7B,eAAoC,EACpC,SAAsB,EACtB,UAAuB,EACvB,qBAA+B;IAE/B,MAAM,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;IAClD,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,MAAM,cAAc,GAAiC,EAAE,CAAC;IACxD,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IACxC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,mFAAmF;QACnF,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,IAAA,iBAAS,EAAC,GAAG,GAAG,QAAQ,GAAG,GAAG,CAAC,CAAC;QAChE,IAAI,KAAK,IAAI,CAAC,YAAY,EAAE;YAC1B,aAAa,CAAC,IAAI,CAAC,IAAA,uCAA8B,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;YACpE,SAAS;SACV;QACD,MAAM,gBAAgB,GAA0B,CAAC,eAAe,CAAC,CAAC;QAClE,MAAM,aAAa,GAAkB,EAAE,CAAC;QACxC,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC;QACtB,IAAI,wBAAwB,GAAG,IAAI,CAAC;QACpC,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,IAAA,eAAK,EAAC,YAAY,EAAE;YAClB,QAAQ,EAAE;gBACR,KAAK,CAAC,IAAI;oBACR,mEAAmE;oBACnE,mFAAmF;oBACnF,aAAa,CAAC,IAAI,CAChB,IAAA,uCAA8B,EAC5B,QAAQ,EACR,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,aAAa,EAAE,EAC/D,IAAI,CAAC,IAAI,CAAC,KAAK,CAChB,CACF,CAAC;oBACF,OAAO,eAAK,CAAC;gBACf,CAAC;aACF;YACD,KAAK,EAAE;gBACL,KAAK,CAAC,IAAI;oBACR,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;oBAChE,MAAM,eAAe,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;oBACvD,MAAM,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;oBAClD,+EAA+E;oBAC/E,IAAI,wBAAwB,EAAE;wBAC5B,aAAa,CAAC,IAAI,CAChB,IAAA,wCAA+B,EAC7B,QAAQ,EACR,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,IAAI,aAAa,EAAE,EACrD,cAAc,EACd,IAAA,wBAAgB,EAAC,eAAe,CAAC,IAAI,CAAC,CACvC,CACF,CAAC;wBACF,OAAO,eAAK,CAAC;qBACd;oBACD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;oBAClC,MAAM,SAAS,GAAG,GAAG,cAAc,IAAI,SAAS,EAAE,CAAC;oBACnD,aAAa,GAAG,SAAS,CAAC;oBAC1B,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBAC7D,sDAAsD;oBACtD,IAAI,CAAC,cAAc,EAAE;wBACnB,aAAa,CAAC,IAAI,CAAC,IAAA,6CAAoC,EAAC,QAAQ,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC;wBAC9F,OAAO,eAAK,CAAC;qBACd;oBACD,IAAI,cAAc,CAAC,SAAS,CAAC,IAAI,EAAE;wBACjC,aAAa,CAAC,IAAI,CAAC,IAAA,2CAAkC,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;wBAC5E,OAAO,eAAK,CAAC;qBACd;oBACD,IAAI,aAAa,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;wBAC9C,aAAa,CAAC,IAAI,CAAC,IAAA,6CAAoC,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;wBAC9E,OAAO,eAAK,CAAC;qBACd;oBACD,aAAa,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBAC3C,sCAAsC;oBACtC,yGAAyG;oBACzG,IAAI,YAAY,KAAK,CAAC,EAAE;wBACtB,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;wBAC7B,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;qBAC3B;oBACD,IAAA,yBAAiB,EAAC,OAAO,CAAC,6BAA6B,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,EAAU,CAAC,CAAC,GAAG,CACnG,SAAS,CACV,CAAC;oBACF,MAAM,aAAa,GAAG,IAAA,mCAAoB,EAAC,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAChF,8CAA8C;oBAC9C,IAAI,wBAAY,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;wBACnC,OAAO;qBACR;oBACD,4EAA4E;oBAC5E,MAAM,cAAc,GAClB,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,aAAa,CAAC;wBACpD,OAAO,CAAC,4BAA4B,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;oBAC1D,IAAI,CAAC,cAAc,EAAE;wBACnB,+CAA+C;wBAC/C,aAAa,CAAC,IAAI,CAAC,IAAA,0CAAiC,EAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC;wBAC1F,OAAO,eAAK,CAAC;qBACd;oBACD,IACE,cAAc,CAAC,IAAI,KAAK,cAAI,CAAC,sBAAsB;wBACnD,cAAc,CAAC,IAAI,KAAK,cAAI,CAAC,qBAAqB,EAClD;wBACA,wBAAwB,GAAG,IAAI,CAAC;wBAChC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;wBACtC,OAAO;qBACR;oBACD,uDAAuD;oBACvD,IAAI,IAAA,sBAAc,EAAC,cAAc,CAAC,IAAI,CAAC,EAAE;wBACvC,aAAa,CAAC,IAAI,CAChB,IAAA,8CAAqC,EACnC,QAAQ,EACR,SAAS,EACT,aAAa,EACb,IAAA,wBAAgB,EAAC,cAAc,CAAC,IAAI,CAAC,CACtC,CACF,CAAC;wBACF,OAAO,eAAK,CAAC;qBACd;gBACH,CAAC;aACF;YACD,cAAc,EAAE;gBACd,KAAK;oBACH,aAAa,CAAC,IAAI,CAAC,6CAAoC,CAAC,CAAC;oBACzD,OAAO,eAAK,CAAC;gBACf,CAAC;aACF;YACD,YAAY,EAAE;gBACZ,KAAK;oBACH,IAAI,CAAC,wBAAwB,EAAE;wBAC7B,MAAM,eAAe,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;wBACvD,MAAM,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;wBAClD,MAAM,SAAS,GAAG,GAAG,cAAc,IAAI,aAAa,EAAE,CAAC;wBACvD,0CAA0C;wBAC1C,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;wBACjE,IAAI,CAAC,cAAc,EAAE;4BACnB,aAAa,CAAC,IAAI,CAAC,IAAA,6CAAoC,EAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC;4BAC7F,OAAO,eAAK,CAAC;yBACd;wBACD,MAAM,kBAAkB,GAAG,IAAA,mCAAoB,EAAC,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACrF,kGAAkG;wBAClG,MAAM,cAAc,GAAG,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;wBACjF,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,cAAI,CAAC,sBAAsB,CAAC;wBACrF,aAAa,CAAC,IAAI,CAChB,IAAA,kDAAyC,EACvC,QAAQ,EACR,SAAS,EACT,kBAAkB,EAClB,IAAA,wBAAgB,EAAC,SAAS,CAAC,CAC5B,CACF,CAAC;wBACF,OAAO,eAAK,CAAC;qBACd;oBACD,YAAY,IAAI,CAAC,CAAC;oBAClB,wBAAwB,GAAG,KAAK,CAAC;oBACjC,IAAI,YAAY,GAAG,CAAC,IAAI,YAAY,IAAI,gBAAgB,CAAC,MAAM,EAAE;wBAC/D,aAAa,CAAC,IAAI,CAAC,IAAA,gDAAuC,EAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;wBACrF,OAAO,eAAK,CAAC;qBACd;oBACD,aAAa,CAAC,IAAI,CAAC,IAAI,GAAG,EAAU,CAAC,CAAC;gBACxC,CAAC;gBACD,KAAK;oBACH,IAAI,wBAAwB,EAAE;wBAC5B,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;wBAC5D,MAAM,mBAAmB,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC;wBAC5D,MAAM,eAAe,GAAG,gBAAgB,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;wBAC3D,MAAM,SAAS,GAAG,GAAG,mBAAmB,IAAI,aAAa,EAAE,CAAC;wBAC5D,aAAa,CAAC,IAAI,CAChB,IAAA,wCAA+B,EAC7B,QAAQ,EACR,SAAS,EACT,eAAe,CAAC,IAAI,CAAC,KAAK,EAC1B,IAAA,wBAAgB,EAAC,eAAe,CAAC,IAAI,CAAC,CACvC,CACF,CAAC;wBACF,wBAAwB,GAAG,KAAK,CAAC;qBAClC;oBACD,mFAAmF;oBACnF,YAAY,IAAI,CAAC,CAAC;oBAClB,gBAAgB,CAAC,GAAG,EAAE,CAAC;oBACvB,aAAa,CAAC,GAAG,EAAE,CAAC;gBACtB,CAAC;aACF;SACF,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;YACzB,cAAc,CAAC,IAAI,CAAC;gBAClB,SAAS,EAAE,EAAE;gBACb,YAAY,EAAE,qBAAqB,CAAC,YAAY,CAAC;gBACjD,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClE,CAAC,CAAC;SACJ;KACF;IACD,IAAI,aAAa,CAAC,MAAM,EAAE;QACxB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAA,kCAAyB,EAAC,cAAc,EAAE,aAAa,CAAC,CAAC,CAAC;QAC9E,OAAO;KACR;IACD,IAAI,cAAc,CAAC,MAAM,EAAE;QACzB,OAAO,cAAc,CAAC;KACvB;AACH,CAAC;AAED,IAAK,iBAGJ;AAHD,WAAK,iBAAiB;IACpB,0CAAqB,CAAA;IACrB,0CAAqB,CAAA;AACvB,CAAC,EAHI,iBAAiB,KAAjB,iBAAiB,QAGrB;AAOD,SAAS,iBAAiB,CACxB,OAA6B,EAC7B,iBAAoC,EACpC,eAAoC,EACpC,SAAiB,EACjB,cAAsB;IAEtB,IAAI,iBAAiB,KAAK,iBAAiB,CAAC,QAAQ,EAAE;QACpD,OAAO,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,uBAAuB,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClH;IACD,MAAM,cAAc,GAAG,IAAA,uBAAe,EAAC,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,cAAc,SAAS,CAAC,CAAC;IACtG,MAAM,kBAAkB,GAAG,IAAA,mCAAoB,EAAC,GAAG,cAAc,IAAI,SAAS,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE5G,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE;QAC9D,OAAO,EAAE,CAAC;KACX;IACD,MAAM,cAAc,GAClB,OAAO,CAAC,yBAAyB,CAAC,GAAG,CAAC,kBAAkB,CAAC;QACzD,OAAO,CAAC,4BAA4B,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IAC/D,IACE,CAAC,cAAc;QACf,CAAC,cAAc,CAAC,IAAI,KAAK,cAAI,CAAC,sBAAsB,IAAI,cAAc,CAAC,IAAI,KAAK,cAAI,CAAC,qBAAqB,CAAC,EAC3G;QACA,OAAO;YACL,WAAW,EAAE,IAAA,0CAAiC,EAAC,GAAG,cAAc,IAAI,SAAS,EAAE,EAAE,kBAAkB,CAAC;SACrG,CAAC;KACH;IACD,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,CAAC;AACrD,CAAC;AAED,SAAS,0BAA0B,CACjC,OAA6B,EAC7B,eAAoC,EACpC,mBAAwC,EACxC,iBAAoC;IAEpC,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,MAAM,cAAc,GAAiC,EAAE,CAAC;IACxD,MAAM,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;IAClD,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,mBAAmB,EAAE;QACvD;;;UAGE;QACF,MAAM,EAAE,uBAAuB,EAAE,WAAW,EAAE,GAAG,iBAAiB,CAChE,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,cAAc,CACf,CAAC;QACF,MAAM,SAAS,GAAG,GAAG,cAAc,IAAI,SAAS,EAAE,CAAC;QACnD,IAAI,WAAW,EAAE;YACf,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAChC,SAAS;SACV;QACD,IAAI,CAAC,uBAAuB,EAAE;YAC5B,SAAS;SACV;QACD,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,6BAA6B,CACnE,OAAO,EACP,uBAAuB,EACvB,QAAQ,EACR,SAAS,CACV,CAAC;QACF,IAAI,YAAY,EAAE;YAChB,aAAa,CAAC,IAAI,CAAC,QAAQ,cAAc,IAAI,SAAS,KAAK,GAAG,YAAY,CAAC,CAAC;YAC5E,SAAS;SACV;QACD,IAAI,aAAa,EAAE;YACjB,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACnC,SAAS;SACV;QACD,sBAAsB;QACtB,MAAM,IAAA,6CAAoC,EAAC,SAAS,CAAC,CAAC;KACvD;IACD,IAAI,aAAa,CAAC,MAAM,EAAE;QACxB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAA,iDAAwC,EAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC,CAAC;QAChG,OAAO;KACR;IACD,IAAI,cAAc,CAAC,MAAM,EAAE;QACzB,OAAO,cAAc,CAAC;KACvB;AACH,CAAC;AAED,SAAgB,uDAAuD,CACrE,OAA6B,EAC7B,eAAoC,EACpC,iBAAoC;IAEpC,MAAM,iBAAiB,GAAG,IAAA,uBAAe,EACvC,OAAO,CAAC,oBAAoB,EAC5B,eAAe,CAAC,IAAI,CAAC,KAAK,EAC1B,sBAAsB,CACvB,CAAC;IACF,MAAM,IAAI,GAAG,oBAAoB,CAC/B,OAAO,EACP,eAAe,EACf,iBAAiB,CAAC,IAAI,EACtB,iBAAiB,CAAC,UAAU,EAC5B,iBAAiB,CAAC,qBAAqB,CACxC,CAAC;IACF,IAAI,IAAI,EAAE;QACR,iBAAiB,CAAC,IAAI,GAAG,IAAI,CAAC;KAC/B;IACD,MAAM,QAAQ,GAAG,0BAA0B,CACzC,OAAO,EACP,eAAe,EACf,iBAAiB,CAAC,QAAQ,EAC1B,iBAAiB,CAAC,QAAQ,CAC3B,CAAC;IACF,IAAI,QAAQ,EAAE;QACZ,iBAAiB,CAAC,QAAQ,GAAG,QAAQ,CAAC;KACvC;IACD,MAAM,QAAQ,GAAG,0BAA0B,CACzC,OAAO,EACP,eAAe,EACf,iBAAiB,CAAC,QAAQ,EAC1B,iBAAiB,CAAC,QAAQ,CAC3B,CAAC;IACF,IAAI,QAAQ,EAAE;QACZ,iBAAiB,CAAC,QAAQ,GAAG,QAAQ,CAAC;KACvC;AACH,CAAC;AAtCD,0HAsCC;AAED,SAAgB,WAAW,CAAC,QAAgB,EAAE,iBAAqC;IACjF,OAAO,QAAQ,KAAK,wBAAK,IAAI,iBAAiB,KAAK,2BAAiB,CAAC,KAAK,CAAC;AAC7E,CAAC;AAFD,kCAEC"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/normalization/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { DocumentNode } from 'graphql';
|
|
2
|
+
import { NormalizationFactory } from './normalization-factory';
|
|
3
|
+
export declare function upsertDirectiveAndSchemaDefinitions(nf: NormalizationFactory, document: DocumentNode): void;
|
|
4
|
+
export declare function upsertParentsAndChildren(nf: NormalizationFactory, document: DocumentNode): void;
|
|
5
|
+
export declare function consolidateAuthorizationDirectives(nf: NormalizationFactory, definitions: DocumentNode): void;
|