@wundergraph/composition 0.26.1 → 0.27.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.
Files changed (36) hide show
  1. package/dist/ast/utils.d.ts +1 -1
  2. package/dist/ast/utils.js +21 -21
  3. package/dist/ast/utils.js.map +1 -1
  4. package/dist/buildASTSchema/buildASTSchema.js +1 -2
  5. package/dist/buildASTSchema/buildASTSchema.js.map +1 -1
  6. package/dist/buildASTSchema/extendSchema.js +3 -3
  7. package/dist/buildASTSchema/extendSchema.js.map +1 -1
  8. package/dist/errors/errors.js +128 -130
  9. package/dist/errors/errors.js.map +1 -1
  10. package/dist/federation/federation-factory.js +5 -5
  11. package/dist/federation/federation-factory.js.map +1 -1
  12. package/dist/federation/utils.js +2 -3
  13. package/dist/federation/utils.js.map +1 -1
  14. package/dist/federation/walkers.js +1 -2
  15. package/dist/federation/walkers.js.map +1 -1
  16. package/dist/normalization/normalization-factory.js +4 -4
  17. package/dist/normalization/normalization-factory.js.map +1 -1
  18. package/dist/normalization/utils.js +8 -9
  19. package/dist/normalization/utils.js.map +1 -1
  20. package/dist/normalization/walkers.js +3 -4
  21. package/dist/normalization/walkers.js.map +1 -1
  22. package/dist/schema-building/ast.js +13 -14
  23. package/dist/schema-building/ast.js.map +1 -1
  24. package/dist/schema-building/type-merging.js +3 -4
  25. package/dist/schema-building/type-merging.js.map +1 -1
  26. package/dist/schema-building/utils.js +55 -56
  27. package/dist/schema-building/utils.js.map +1 -1
  28. package/dist/subgraph/subgraph.js +1 -2
  29. package/dist/subgraph/subgraph.js.map +1 -1
  30. package/dist/tsconfig.tsbuildinfo +1 -1
  31. package/dist/utils/utils.d.ts +1 -1
  32. package/dist/utils/utils.js +34 -34
  33. package/dist/utils/utils.js.map +1 -1
  34. package/dist/warnings/warnings.js +1 -2
  35. package/dist/warnings/warnings.js.map +1 -1
  36. package/package.json +4 -4
@@ -1,7 +1,59 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MergeMethod = exports.isFieldExternalInAllMutualSubgraphs = exports.isShareabilityOfAllFieldInstancesValid = exports.addValidPersistedDirectiveDefinitionNodeByData = exports.getValidFieldArgumentNodes = exports.getNodeWithPersistedDirectivesByInputValueData = exports.getClientSchemaFieldNodeByFieldData = exports.getNodeWithPersistedDirectivesByFieldData = exports.getNodeForRouterSchemaByData = exports.getClientPersistedDirectiveNodes = exports.pushAuthorizationDirectives = exports.upsertPersistedDirectivesData = exports.extractPersistedDirectives = exports.setLongestDescription = exports.removeInheritableDirectivesFromParentWithFieldsData = exports.getUnionNodeByData = exports.getSchemaNodeByData = exports.getScalarNodeByData = exports.getParentWithFieldsNodeByData = exports.getInputObjectNodeByData = exports.getEnumNodeByData = exports.extractImplementedInterfaceTypeNames = exports.convertKindForExtension = exports.getRenamedRootTypeName = exports.isTypeNameRootType = exports.addUnionExtensionDataByNode = exports.addUnionDefinitionDataByNode = exports.extractUniqueUnionMembers = exports.addScalarExtensionDataByNode = exports.addScalarDefinitionDataByNode = exports.setMutualExecutableLocations = exports.addPersistedDirectiveDefinitionDataByNode = exports.addObjectDefinitionDataByNode = exports.addInterfaceDefinitionDataByNode = exports.addInputValueDataByNode = exports.addInputObjectExtensionDataByNode = exports.addInputObjectDefinitionDataByNode = exports.addExtensionWithFieldsDataByNode = exports.addFieldDataByNode = exports.addInheritedDirectivesToFieldData = exports.addEnumValueDataByNode = exports.addEnumExtensionDataByNode = exports.addEnumDefinitionDataByNode = exports.compareAndValidateInputValueDefaultValues = exports.isTypeRequired = exports.extractArguments = exports.extractDirectives = exports.getDirectiveValidationErrors = exports.getDefinedArgumentsForDirective = exports.isNodeExternalOrShareable = void 0;
4
- exports.getSubscriptionFilterValue = exports.isLeafKind = exports.isNodeDataInaccessible = exports.isTypeValidImplementation = void 0;
3
+ exports.MergeMethod = void 0;
4
+ exports.isNodeExternalOrShareable = isNodeExternalOrShareable;
5
+ exports.getDefinedArgumentsForDirective = getDefinedArgumentsForDirective;
6
+ exports.getDirectiveValidationErrors = getDirectiveValidationErrors;
7
+ exports.extractDirectives = extractDirectives;
8
+ exports.extractArguments = extractArguments;
9
+ exports.isTypeRequired = isTypeRequired;
10
+ exports.compareAndValidateInputValueDefaultValues = compareAndValidateInputValueDefaultValues;
11
+ exports.addEnumDefinitionDataByNode = addEnumDefinitionDataByNode;
12
+ exports.addEnumExtensionDataByNode = addEnumExtensionDataByNode;
13
+ exports.addEnumValueDataByNode = addEnumValueDataByNode;
14
+ exports.addInheritedDirectivesToFieldData = addInheritedDirectivesToFieldData;
15
+ exports.addFieldDataByNode = addFieldDataByNode;
16
+ exports.addExtensionWithFieldsDataByNode = addExtensionWithFieldsDataByNode;
17
+ exports.addInputObjectDefinitionDataByNode = addInputObjectDefinitionDataByNode;
18
+ exports.addInputObjectExtensionDataByNode = addInputObjectExtensionDataByNode;
19
+ exports.addInputValueDataByNode = addInputValueDataByNode;
20
+ exports.addInterfaceDefinitionDataByNode = addInterfaceDefinitionDataByNode;
21
+ exports.addObjectDefinitionDataByNode = addObjectDefinitionDataByNode;
22
+ exports.addPersistedDirectiveDefinitionDataByNode = addPersistedDirectiveDefinitionDataByNode;
23
+ exports.setMutualExecutableLocations = setMutualExecutableLocations;
24
+ exports.addScalarDefinitionDataByNode = addScalarDefinitionDataByNode;
25
+ exports.addScalarExtensionDataByNode = addScalarExtensionDataByNode;
26
+ exports.extractUniqueUnionMembers = extractUniqueUnionMembers;
27
+ exports.addUnionDefinitionDataByNode = addUnionDefinitionDataByNode;
28
+ exports.addUnionExtensionDataByNode = addUnionExtensionDataByNode;
29
+ exports.isTypeNameRootType = isTypeNameRootType;
30
+ exports.getRenamedRootTypeName = getRenamedRootTypeName;
31
+ exports.convertKindForExtension = convertKindForExtension;
32
+ exports.extractImplementedInterfaceTypeNames = extractImplementedInterfaceTypeNames;
33
+ exports.getEnumNodeByData = getEnumNodeByData;
34
+ exports.getInputObjectNodeByData = getInputObjectNodeByData;
35
+ exports.getParentWithFieldsNodeByData = getParentWithFieldsNodeByData;
36
+ exports.getScalarNodeByData = getScalarNodeByData;
37
+ exports.getSchemaNodeByData = getSchemaNodeByData;
38
+ exports.getUnionNodeByData = getUnionNodeByData;
39
+ exports.removeInheritableDirectivesFromParentWithFieldsData = removeInheritableDirectivesFromParentWithFieldsData;
40
+ exports.setLongestDescription = setLongestDescription;
41
+ exports.extractPersistedDirectives = extractPersistedDirectives;
42
+ exports.upsertPersistedDirectivesData = upsertPersistedDirectivesData;
43
+ exports.pushAuthorizationDirectives = pushAuthorizationDirectives;
44
+ exports.getClientPersistedDirectiveNodes = getClientPersistedDirectiveNodes;
45
+ exports.getNodeForRouterSchemaByData = getNodeForRouterSchemaByData;
46
+ exports.getNodeWithPersistedDirectivesByFieldData = getNodeWithPersistedDirectivesByFieldData;
47
+ exports.getClientSchemaFieldNodeByFieldData = getClientSchemaFieldNodeByFieldData;
48
+ exports.getNodeWithPersistedDirectivesByInputValueData = getNodeWithPersistedDirectivesByInputValueData;
49
+ exports.getValidFieldArgumentNodes = getValidFieldArgumentNodes;
50
+ exports.addValidPersistedDirectiveDefinitionNodeByData = addValidPersistedDirectiveDefinitionNodeByData;
51
+ exports.isShareabilityOfAllFieldInstancesValid = isShareabilityOfAllFieldInstancesValid;
52
+ exports.isFieldExternalInAllMutualSubgraphs = isFieldExternalInAllMutualSubgraphs;
53
+ exports.isTypeValidImplementation = isTypeValidImplementation;
54
+ exports.isNodeDataInaccessible = isNodeDataInaccessible;
55
+ exports.isLeafKind = isLeafKind;
56
+ exports.getSubscriptionFilterValue = getSubscriptionFilterValue;
5
57
  const graphql_1 = require("graphql");
6
58
  const ast_1 = require("./ast");
7
59
  const utils_1 = require("../ast/utils");
@@ -39,7 +91,6 @@ function isNodeExternalOrShareable(node, areAllFieldsShareable, directivesByDire
39
91
  }
40
92
  return result;
41
93
  }
42
- exports.isNodeExternalOrShareable = isNodeExternalOrShareable;
43
94
  function getDefinedArgumentsForDirective(directiveNode, argumentTypeNodeByArgumentName, requiredArguments, hostPath, errorMessages) {
44
95
  const directiveArguments = directiveNode.arguments || [];
45
96
  const directiveName = directiveNode.name.value;
@@ -75,7 +126,6 @@ function getDefinedArgumentsForDirective(directiveNode, argumentTypeNodeByArgume
75
126
  }
76
127
  return definedArguments;
77
128
  }
78
- exports.getDefinedArgumentsForDirective = getDefinedArgumentsForDirective;
79
129
  function getDirectiveValidationErrors(directiveNode, hostKind, directivesByDirectiveName, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, hostPath, isArgument = false) {
80
130
  const directiveName = directiveNode.name.value;
81
131
  const directiveDefinition = directiveDefinitionByDirectiveName.get(directiveName) ||
@@ -118,7 +168,6 @@ function getDirectiveValidationErrors(directiveNode, hostKind, directivesByDirec
118
168
  }
119
169
  return errorMessages;
120
170
  }
121
- exports.getDirectiveValidationErrors = getDirectiveValidationErrors;
122
171
  function extractDirectives(node, directivesByDirectiveName, errors, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, hostPath, isArgument = false) {
123
172
  if (!node.directives) {
124
173
  return directivesByDirectiveName;
@@ -149,7 +198,6 @@ function extractDirectives(node, directivesByDirectiveName, errors, directiveDef
149
198
  }
150
199
  return directivesByDirectiveName;
151
200
  }
152
- exports.extractDirectives = extractDirectives;
153
201
  function extractArguments(argumentDataByArgumentName, node, errors, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, parentsWithChildArguments, originalParentTypeName, renamedParentTypeName, subgraphName) {
154
202
  if (!node.arguments?.length) {
155
203
  return argumentDataByArgumentName;
@@ -172,11 +220,9 @@ function extractArguments(argumentDataByArgumentName, node, errors, directiveDef
172
220
  }
173
221
  return argumentDataByArgumentName;
174
222
  }
175
- exports.extractArguments = extractArguments;
176
223
  function isTypeRequired(node) {
177
224
  return node.kind === graphql_1.Kind.NON_NULL_TYPE;
178
225
  }
179
- exports.isTypeRequired = isTypeRequired;
180
226
  // TODO replace naïve comparison
181
227
  function areDefaultValuesCompatible(typeNode, incomingDefaultValue) {
182
228
  switch (typeNode.kind) {
@@ -222,7 +268,6 @@ function compareAndValidateInputValueDefaultValues(existingData, incomingData, e
222
268
  return;
223
269
  }
224
270
  }
225
- exports.compareAndValidateInputValueDefaultValues = compareAndValidateInputValueDefaultValues;
226
271
  function addEnumDefinitionDataByNode(parentDefinitionDataByTypeName, node, directivesByDirectiveName) {
227
272
  const name = node.name.value;
228
273
  parentDefinitionDataByTypeName.set(name, {
@@ -236,7 +281,6 @@ function addEnumDefinitionDataByNode(parentDefinitionDataByTypeName, node, direc
236
281
  description: (0, utils_1.formatDescription)(node.description),
237
282
  });
238
283
  }
239
- exports.addEnumDefinitionDataByNode = addEnumDefinitionDataByNode;
240
284
  function addEnumExtensionDataByNode(parentExtensionDataByTypeName, node, directivesByDirectiveName) {
241
285
  const name = node.name.value;
242
286
  parentExtensionDataByTypeName.set(name, {
@@ -246,7 +290,6 @@ function addEnumExtensionDataByNode(parentExtensionDataByTypeName, node, directi
246
290
  name,
247
291
  });
248
292
  }
249
- exports.addEnumExtensionDataByNode = addEnumExtensionDataByNode;
250
293
  function addEnumValueDataByNode(enumValueDataByValueName, node, errors, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, parentTypeName) {
251
294
  const name = node.name.value;
252
295
  enumValueDataByValueName.set(name, {
@@ -259,7 +302,6 @@ function addEnumValueDataByNode(enumValueDataByValueName, node, errors, directiv
259
302
  description: (0, utils_1.formatDescription)(node.description),
260
303
  });
261
304
  }
262
- exports.addEnumValueDataByNode = addEnumValueDataByNode;
263
305
  function addInheritedDirectivesToFieldData(parentDirectivesByDirectiveName, fieldDirectivesByDirectiveName) {
264
306
  for (const directiveName of constants_1.INHERITABLE_DIRECTIVE_NAMES) {
265
307
  if (parentDirectivesByDirectiveName.get(directiveName)) {
@@ -268,7 +310,6 @@ function addInheritedDirectivesToFieldData(parentDirectivesByDirectiveName, fiel
268
310
  }
269
311
  return fieldDirectivesByDirectiveName;
270
312
  }
271
- exports.addInheritedDirectivesToFieldData = addInheritedDirectivesToFieldData;
272
313
  function addFieldDataByNode(fieldDataByFieldName, node, argumentDataByArgumentName, directivesByDirectiveName, originalParentTypeName, renamedParentTypeName, subgraphName, isSubgraphVersionTwo, errors) {
273
314
  const name = node.name.value;
274
315
  const fieldPath = `${originalParentTypeName}.${name}`;
@@ -292,7 +333,6 @@ function addFieldDataByNode(fieldDataByFieldName, node, argumentDataByArgumentNa
292
333
  fieldDataByFieldName.set(name, fieldData);
293
334
  return fieldData;
294
335
  }
295
- exports.addFieldDataByNode = addFieldDataByNode;
296
336
  function addExtensionWithFieldsDataByNode(parentExtensionDataByTypeName, node, errors, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, isEntity, isRootType, subgraphName, renamedTypeName) {
297
337
  const name = node.name.value;
298
338
  const kind = convertKindForExtension(node);
@@ -325,7 +365,6 @@ function addExtensionWithFieldsDataByNode(parentExtensionDataByTypeName, node, e
325
365
  });
326
366
  }
327
367
  }
328
- exports.addExtensionWithFieldsDataByNode = addExtensionWithFieldsDataByNode;
329
368
  function addInputObjectDefinitionDataByNode(parentDefinitionDataByTypeName, node, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, subgraphName, errors) {
330
369
  const name = node.name.value;
331
370
  const directivesByDirectiveName = extractDirectives(node, new Map(), errors, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, name);
@@ -341,7 +380,6 @@ function addInputObjectDefinitionDataByNode(parentDefinitionDataByTypeName, node
341
380
  description: (0, utils_1.formatDescription)(node.description),
342
381
  });
343
382
  }
344
- exports.addInputObjectDefinitionDataByNode = addInputObjectDefinitionDataByNode;
345
383
  function addInputObjectExtensionDataByNode(parentExtensionDataByTypeName, node, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, errors) {
346
384
  const name = node.name.value;
347
385
  parentExtensionDataByTypeName.set(name, {
@@ -351,7 +389,6 @@ function addInputObjectExtensionDataByNode(parentExtensionDataByTypeName, node,
351
389
  name,
352
390
  });
353
391
  }
354
- exports.addInputObjectExtensionDataByNode = addInputObjectExtensionDataByNode;
355
392
  function addInputValueDataByNode(inputValueDataByValueName, node, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, originalPath, subgraphName, errors, renamedPath) {
356
393
  const name = node.name.value;
357
394
  // Only arguments have renamed paths
@@ -371,11 +408,10 @@ function addInputValueDataByNode(inputValueDataByValueName, node, directiveDefin
371
408
  requiredSubgraphNames: new Set(isTypeRequired(node.type) ? [subgraphName] : []),
372
409
  subgraphNames: new Set([subgraphName]),
373
410
  type: (0, ast_1.getMutableTypeNode)(node.type, originalPath, errors),
374
- defaultValue: node.defaultValue,
411
+ defaultValue: node.defaultValue, // TODO validate
375
412
  description: (0, utils_1.formatDescription)(node.description),
376
413
  });
377
414
  }
378
- exports.addInputValueDataByNode = addInputValueDataByNode;
379
415
  function addInterfaceDefinitionDataByNode(parentDefinitionDataByTypeName, node, errors, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, isEntity, subgraphName) {
380
416
  const name = node.name.value;
381
417
  const directivesByDirectiveName = extractDirectives(node, new Map(), errors, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, name);
@@ -393,7 +429,6 @@ function addInterfaceDefinitionDataByNode(parentDefinitionDataByTypeName, node,
393
429
  description: (0, utils_1.formatDescription)(node.description),
394
430
  });
395
431
  }
396
- exports.addInterfaceDefinitionDataByNode = addInterfaceDefinitionDataByNode;
397
432
  function addObjectDefinitionDataByNode(parentDefinitionDataByTypeName, node, errors, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, isEntity, isRootType, subgraphName, renamedTypeName) {
398
433
  const name = node.name.value;
399
434
  const directivesByDirectiveName = extractDirectives(node, new Map(), errors, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, name);
@@ -413,7 +448,6 @@ function addObjectDefinitionDataByNode(parentDefinitionDataByTypeName, node, err
413
448
  description: (0, utils_1.formatDescription)(node.description),
414
449
  });
415
450
  }
416
- exports.addObjectDefinitionDataByNode = addObjectDefinitionDataByNode;
417
451
  function addPersistedDirectiveDefinitionDataByNode(persistedDirectiveDefinitionDataByDirectiveName, node, errors, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, executableLocations, subgraphName) {
418
452
  const name = node.name.value;
419
453
  const argumentDataByArgumentName = new Map();
@@ -430,7 +464,6 @@ function addPersistedDirectiveDefinitionDataByNode(persistedDirectiveDefinitionD
430
464
  description: (0, utils_1.formatDescription)(node.description),
431
465
  });
432
466
  }
433
- exports.addPersistedDirectiveDefinitionDataByNode = addPersistedDirectiveDefinitionDataByNode;
434
467
  function setMutualExecutableLocations(persistedDirectiveDefinitionData, incomingExecutableLocations) {
435
468
  const mutualExecutableLocations = new Set();
436
469
  for (const incomingExecutableLocation of incomingExecutableLocations) {
@@ -440,7 +473,6 @@ function setMutualExecutableLocations(persistedDirectiveDefinitionData, incoming
440
473
  }
441
474
  persistedDirectiveDefinitionData.executableLocations = mutualExecutableLocations;
442
475
  }
443
- exports.setMutualExecutableLocations = setMutualExecutableLocations;
444
476
  function addScalarDefinitionDataByNode(parentDefinitionDataByTypeName, node, directivesByDirectiveName) {
445
477
  const name = node.name.value;
446
478
  parentDefinitionDataByTypeName.set(name, {
@@ -452,7 +484,6 @@ function addScalarDefinitionDataByNode(parentDefinitionDataByTypeName, node, dir
452
484
  description: (0, utils_1.formatDescription)(node.description),
453
485
  });
454
486
  }
455
- exports.addScalarDefinitionDataByNode = addScalarDefinitionDataByNode;
456
487
  function addScalarExtensionDataByNode(parentExtensionDataByTypeName, node, directivesByDirectiveName) {
457
488
  const name = node.name.value;
458
489
  parentExtensionDataByTypeName.set(name, {
@@ -461,7 +492,6 @@ function addScalarExtensionDataByNode(parentExtensionDataByTypeName, node, direc
461
492
  name,
462
493
  });
463
494
  }
464
- exports.addScalarExtensionDataByNode = addScalarExtensionDataByNode;
465
495
  function extractUniqueUnionMembers(members, membersByMemberTypeName, errors, unionTypeName, abstractToConcreteTypeNames, referencedTypeNames) {
466
496
  for (const member of members) {
467
497
  const memberTypeName = member.name.value;
@@ -483,7 +513,6 @@ function extractUniqueUnionMembers(members, membersByMemberTypeName, errors, uni
483
513
  }
484
514
  return membersByMemberTypeName;
485
515
  }
486
- exports.extractUniqueUnionMembers = extractUniqueUnionMembers;
487
516
  function addUnionDefinitionDataByNode(parentDefinitionDataByTypeName, node, errors, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, abstractToConcreteTypeNames, referencedTypeNames) {
488
517
  const name = node.name.value;
489
518
  if (!node.types?.length) {
@@ -500,7 +529,6 @@ function addUnionDefinitionDataByNode(parentDefinitionDataByTypeName, node, erro
500
529
  description: (0, utils_1.formatDescription)(node.description),
501
530
  });
502
531
  }
503
- exports.addUnionDefinitionDataByNode = addUnionDefinitionDataByNode;
504
532
  function addUnionExtensionDataByNode(parentExtensionDataByTypeName, node, errors, directiveDefinitionByDirectiveName, handledRepeatedDirectivesByHostPath, abstractToConcreteTypeNames, referencedTypeNames) {
505
533
  const name = node.name.value;
506
534
  parentExtensionDataByTypeName.set(name, {
@@ -512,11 +540,9 @@ function addUnionExtensionDataByNode(parentExtensionDataByTypeName, node, errors
512
540
  name,
513
541
  });
514
542
  }
515
- exports.addUnionExtensionDataByNode = addUnionExtensionDataByNode;
516
543
  function isTypeNameRootType(typeName, operationByTypeName) {
517
544
  return string_constants_1.ROOT_TYPES.has(typeName) || operationByTypeName.has(typeName);
518
545
  }
519
- exports.isTypeNameRootType = isTypeNameRootType;
520
546
  function getRenamedRootTypeName(typeName, operationByTypeName) {
521
547
  const operationTypeNode = operationByTypeName.get(typeName);
522
548
  if (!operationTypeNode) {
@@ -531,7 +557,6 @@ function getRenamedRootTypeName(typeName, operationByTypeName) {
531
557
  return string_constants_1.QUERY;
532
558
  }
533
559
  }
534
- exports.getRenamedRootTypeName = getRenamedRootTypeName;
535
560
  function convertKindForExtension(node) {
536
561
  switch (node.kind) {
537
562
  case graphql_1.Kind.INTERFACE_TYPE_DEFINITION:
@@ -542,7 +567,6 @@ function convertKindForExtension(node) {
542
567
  return node.kind;
543
568
  }
544
569
  }
545
- exports.convertKindForExtension = convertKindForExtension;
546
570
  function extractImplementedInterfaceTypeNames(node, implementedInterfaceTypeNames, errors) {
547
571
  if (!node.interfaces) {
548
572
  return implementedInterfaceTypeNames;
@@ -558,7 +582,6 @@ function extractImplementedInterfaceTypeNames(node, implementedInterfaceTypeName
558
582
  }
559
583
  return implementedInterfaceTypeNames;
560
584
  }
561
- exports.extractImplementedInterfaceTypeNames = extractImplementedInterfaceTypeNames;
562
585
  function addExtensionDirectivesToDefinition(directivesByDirectiveName, parentExtensionData) {
563
586
  if (!parentExtensionData) {
564
587
  return;
@@ -675,14 +698,12 @@ function getEnumNodeByData(enumDefinitionData, errors, directiveDefinitionByDire
675
698
  enumDefinitionData.node.values = childMapToValueArray(enumDefinitionData.enumValueDataByValueName, authorizationDataByParentTypeName);
676
699
  return enumDefinitionData.node;
677
700
  }
678
- exports.getEnumNodeByData = getEnumNodeByData;
679
701
  function getInputObjectNodeByData(inputObjectDefinitionData, errors, directiveDefinitionByDirectiveName, authorizationDataByParentTypeName, inputObjectExtensionData) {
680
702
  addExtensionDirectivesToDefinition(inputObjectDefinitionData.directivesByDirectiveName, inputObjectExtensionData);
681
703
  inputObjectDefinitionData.node.directives = getValidFlattenedDirectiveArray(inputObjectDefinitionData.directivesByDirectiveName, errors, directiveDefinitionByDirectiveName, inputObjectDefinitionData.name);
682
704
  inputObjectDefinitionData.node.fields = childMapToValueArray(inputObjectDefinitionData.inputValueDataByValueName, authorizationDataByParentTypeName);
683
705
  return inputObjectDefinitionData.node;
684
706
  }
685
- exports.getInputObjectNodeByData = getInputObjectNodeByData;
686
707
  function getParentWithFieldsNodeByData(parentWithFieldsData, errors, directiveDefinitionByDirectiveName, authorizationDataByParentTypeName, parentExtensionWithFieldsData) {
687
708
  addExtensionDirectivesToDefinition(parentWithFieldsData.directivesByDirectiveName, parentExtensionWithFieldsData);
688
709
  parentWithFieldsData.node.directives = getValidFlattenedDirectiveArray(parentWithFieldsData.directivesByDirectiveName, errors, directiveDefinitionByDirectiveName, parentWithFieldsData.name);
@@ -690,13 +711,11 @@ function getParentWithFieldsNodeByData(parentWithFieldsData, errors, directiveDe
690
711
  parentWithFieldsData.node.interfaces = (0, utils_1.setToNamedTypeNodeArray)(parentWithFieldsData.implementedInterfaceTypeNames);
691
712
  return parentWithFieldsData.node;
692
713
  }
693
- exports.getParentWithFieldsNodeByData = getParentWithFieldsNodeByData;
694
714
  function getScalarNodeByData(scalarDefinitionData, errors, directiveDefinitionByDirectiveName, scalarExtensionData) {
695
715
  addExtensionDirectivesToDefinition(scalarDefinitionData.directivesByDirectiveName, scalarExtensionData);
696
716
  scalarDefinitionData.node.directives = getValidFlattenedDirectiveArray(scalarDefinitionData.directivesByDirectiveName, errors, directiveDefinitionByDirectiveName, scalarDefinitionData.name);
697
717
  return scalarDefinitionData.node;
698
718
  }
699
- exports.getScalarNodeByData = getScalarNodeByData;
700
719
  function getSchemaNodeByData(schemaData, errors, directiveDefinitionByDirectiveName) {
701
720
  return {
702
721
  description: schemaData.description,
@@ -705,7 +724,6 @@ function getSchemaNodeByData(schemaData, errors, directiveDefinitionByDirectiveN
705
724
  operationTypes: (0, utils_3.mapToArrayOfValues)(schemaData.operationTypes),
706
725
  };
707
726
  }
708
- exports.getSchemaNodeByData = getSchemaNodeByData;
709
727
  function getUnionNodeByData(unionDefinitionData, errors, directiveDefinitionByDirectiveName, unionExtensionData) {
710
728
  mergeUniqueUnionMembers(unionDefinitionData, errors, unionExtensionData);
711
729
  addExtensionDirectivesToDefinition(unionDefinitionData.directivesByDirectiveName, unionExtensionData);
@@ -713,13 +731,11 @@ function getUnionNodeByData(unionDefinitionData, errors, directiveDefinitionByDi
713
731
  unionDefinitionData.node.types = (0, utils_3.mapToArrayOfValues)(unionDefinitionData.memberByMemberTypeName);
714
732
  return unionDefinitionData.node;
715
733
  }
716
- exports.getUnionNodeByData = getUnionNodeByData;
717
734
  function removeInheritableDirectivesFromParentWithFieldsData(parentData) {
718
735
  for (const directiveName of constants_1.INHERITABLE_DIRECTIVE_NAMES) {
719
736
  parentData.directivesByDirectiveName.delete(directiveName);
720
737
  }
721
738
  }
722
- exports.removeInheritableDirectivesFromParentWithFieldsData = removeInheritableDirectivesFromParentWithFieldsData;
723
739
  function setLongestDescription(existingData, incomingData) {
724
740
  if (!incomingData.description) {
725
741
  return;
@@ -728,7 +744,6 @@ function setLongestDescription(existingData, incomingData) {
728
744
  existingData.description = { ...incomingData.description, block: true };
729
745
  }
730
746
  }
731
- exports.setLongestDescription = setLongestDescription;
732
747
  function upsertDeprecatedDirective(persistedDirectivesData, incomingDirectiveNode) {
733
748
  if (!incomingDirectiveNode.arguments?.length) {
734
749
  return;
@@ -773,7 +788,6 @@ function extractPersistedDirectives(persistedDirectivesData, directivesByDirecti
773
788
  }
774
789
  return persistedDirectivesData;
775
790
  }
776
- exports.extractPersistedDirectives = extractPersistedDirectives;
777
791
  function upsertPersistedDirectivesData(existingData, incomingData) {
778
792
  if (incomingData.isDeprecated && existingData.deprecatedReason.length < incomingData.deprecatedReason.length) {
779
793
  existingData.isDeprecated = true;
@@ -794,7 +808,6 @@ function upsertPersistedDirectivesData(existingData, incomingData) {
794
808
  existingData.tags.set(tagName, tagDirectiveNode);
795
809
  }
796
810
  }
797
- exports.upsertPersistedDirectivesData = upsertPersistedDirectivesData;
798
811
  function pushAuthorizationDirectives(fieldData, authorizationData) {
799
812
  if (!authorizationData) {
800
813
  return;
@@ -812,7 +825,6 @@ function pushAuthorizationDirectives(fieldData, authorizationData) {
812
825
  ]);
813
826
  }
814
827
  }
815
- exports.pushAuthorizationDirectives = pushAuthorizationDirectives;
816
828
  function generateDeprecatedDirective(reason) {
817
829
  return {
818
830
  kind: graphql_1.Kind.DIRECTIVE,
@@ -873,14 +885,12 @@ function getClientPersistedDirectiveNodes(nodeData) {
873
885
  }
874
886
  return persistedDirectiveNodes;
875
887
  }
876
- exports.getClientPersistedDirectiveNodes = getClientPersistedDirectiveNodes;
877
888
  function getNodeForRouterSchemaByData(data, persistedDirectiveDefinitionByDirectiveName, errors) {
878
889
  data.node.name = (0, utils_1.stringToNameNode)(data.name);
879
890
  data.node.description = data.description;
880
891
  data.node.directives = getRouterPersistedDirectiveNodes(data, persistedDirectiveDefinitionByDirectiveName, errors);
881
892
  return data.node;
882
893
  }
883
- exports.getNodeForRouterSchemaByData = getNodeForRouterSchemaByData;
884
894
  function getNodeWithPersistedDirectivesByFieldData(fieldData, persistedDirectiveDefinitionByDirectiveName, argumentNodes, errors) {
885
895
  fieldData.node.arguments = argumentNodes;
886
896
  fieldData.node.name = (0, utils_1.stringToNameNode)(fieldData.name);
@@ -889,7 +899,6 @@ function getNodeWithPersistedDirectivesByFieldData(fieldData, persistedDirective
889
899
  fieldData.node.directives = getRouterPersistedDirectiveNodes(fieldData, persistedDirectiveDefinitionByDirectiveName, errors);
890
900
  return fieldData.node;
891
901
  }
892
- exports.getNodeWithPersistedDirectivesByFieldData = getNodeWithPersistedDirectivesByFieldData;
893
902
  function getClientSchemaFieldNodeByFieldData(fieldData) {
894
903
  const directives = getClientPersistedDirectiveNodes(fieldData);
895
904
  const argumentNodes = [];
@@ -908,7 +917,6 @@ function getClientSchemaFieldNodeByFieldData(fieldData) {
908
917
  arguments: argumentNodes,
909
918
  };
910
919
  }
911
- exports.getClientSchemaFieldNodeByFieldData = getClientSchemaFieldNodeByFieldData;
912
920
  function getNodeWithPersistedDirectivesByInputValueData(inputValueData, persistedDirectiveDefinitionByDirectiveName, errors) {
913
921
  inputValueData.node.name = (0, utils_1.stringToNameNode)(inputValueData.name);
914
922
  inputValueData.node.type = inputValueData.type;
@@ -919,7 +927,6 @@ function getNodeWithPersistedDirectivesByInputValueData(inputValueData, persiste
919
927
  }
920
928
  return inputValueData.node;
921
929
  }
922
- exports.getNodeWithPersistedDirectivesByInputValueData = getNodeWithPersistedDirectivesByInputValueData;
923
930
  function getValidFieldArgumentNodes(fieldData, persistedDirectiveDefinitionByDirectiveName, fieldConfigurationByFieldPath, errors) {
924
931
  const argumentNodes = [];
925
932
  const argumentNames = [];
@@ -951,7 +958,6 @@ function getValidFieldArgumentNodes(fieldData, persistedDirectiveDefinitionByDir
951
958
  }
952
959
  return argumentNodes;
953
960
  }
954
- exports.getValidFieldArgumentNodes = getValidFieldArgumentNodes;
955
961
  function addValidatedArgumentNodes(argumentNodes, hostData, persistedDirectiveDefinitionByDirectiveName, errors, argumentNamesForFieldConfiguration) {
956
962
  const invalidRequiredArgumentErrors = [];
957
963
  for (const [argumentName, argumentData] of hostData.argumentDataByArgumentName) {
@@ -994,7 +1000,6 @@ function addValidPersistedDirectiveDefinitionNodeByData(definitions, data, persi
994
1000
  description: data.description,
995
1001
  });
996
1002
  }
997
- exports.addValidPersistedDirectiveDefinitionNodeByData = addValidPersistedDirectiveDefinitionNodeByData;
998
1003
  function isShareabilityOfAllFieldInstancesValid(fieldData) {
999
1004
  let shareableFields = 0;
1000
1005
  let unshareableFields = 0;
@@ -1021,7 +1026,6 @@ function isShareabilityOfAllFieldInstancesValid(fieldData) {
1021
1026
  }
1022
1027
  return true;
1023
1028
  }
1024
- exports.isShareabilityOfAllFieldInstancesValid = isShareabilityOfAllFieldInstancesValid;
1025
1029
  function isFieldExternalInAllMutualSubgraphs(subgraphs, fieldData) {
1026
1030
  const mutualSubgraphs = (0, utils_3.getAllMutualEntries)(subgraphs, fieldData.subgraphNames);
1027
1031
  if (mutualSubgraphs.size < 1) {
@@ -1036,7 +1040,6 @@ function isFieldExternalInAllMutualSubgraphs(subgraphs, fieldData) {
1036
1040
  }
1037
1041
  return true;
1038
1042
  }
1039
- exports.isFieldExternalInAllMutualSubgraphs = isFieldExternalInAllMutualSubgraphs;
1040
1043
  var MergeMethod;
1041
1044
  (function (MergeMethod) {
1042
1045
  MergeMethod[MergeMethod["UNION"] = 0] = "UNION";
@@ -1075,15 +1078,12 @@ function isTypeValidImplementation(originalType, implementationType, concreteTyp
1075
1078
  return false;
1076
1079
  }
1077
1080
  }
1078
- exports.isTypeValidImplementation = isTypeValidImplementation;
1079
1081
  function isNodeDataInaccessible(data) {
1080
1082
  return data.persistedDirectivesData.directives.has(string_constants_1.INACCESSIBLE);
1081
1083
  }
1082
- exports.isNodeDataInaccessible = isNodeDataInaccessible;
1083
1084
  function isLeafKind(kind) {
1084
1085
  return kind === graphql_1.Kind.SCALAR_TYPE_DEFINITION || kind === graphql_1.Kind.ENUM_TYPE_DEFINITION;
1085
1086
  }
1086
- exports.isLeafKind = isLeafKind;
1087
1087
  function getSubscriptionFilterValue(valueNode) {
1088
1088
  switch (valueNode.kind) {
1089
1089
  case graphql_1.Kind.BOOLEAN: {
@@ -1110,5 +1110,4 @@ function getSubscriptionFilterValue(valueNode) {
1110
1110
  }
1111
1111
  }
1112
1112
  }
1113
- exports.getSubscriptionFilterValue = getSubscriptionFilterValue;
1114
1113
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/schema-building/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/schema-building/utils.ts"],"names":[],"mappings":"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"}