@wundergraph/composition 0.58.0 → 0.58.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.
Files changed (124) hide show
  1. package/dist/{v1/normalization → directive-definition-data}/directive-definition-data.d.ts +2 -2
  2. package/dist/{v1/normalization → directive-definition-data}/directive-definition-data.js +308 -280
  3. package/dist/directive-definition-data/directive-definition-data.js.map +1 -0
  4. package/dist/directive-definition-data/types/params.d.ts +48 -0
  5. package/dist/directive-definition-data/types/params.js.map +1 -0
  6. package/dist/directive-definition-data/types/types.d.ts +39 -0
  7. package/dist/directive-definition-data/types/types.js.map +1 -0
  8. package/dist/directive-definition-data/utils.d.ts +5 -0
  9. package/dist/directive-definition-data/utils.js +75 -0
  10. package/dist/directive-definition-data/utils.js.map +1 -0
  11. package/dist/errors/errors.d.ts +35 -9
  12. package/dist/errors/errors.js +141 -21
  13. package/dist/errors/errors.js.map +1 -1
  14. package/dist/errors/{types.d.ts → types/params.d.ts} +34 -6
  15. package/dist/{federation → errors/types}/params.js.map +1 -1
  16. package/dist/errors/types/types.d.ts +5 -0
  17. package/dist/{federation → errors/types}/types.js.map +1 -1
  18. package/dist/federation/federation.d.ts +2 -2
  19. package/dist/federation/{params.d.ts → types/params.d.ts} +4 -4
  20. package/dist/{v1/federation → federation/types}/params.js.map +1 -1
  21. package/dist/federation/{types.d.ts → types/types.d.ts} +17 -20
  22. package/dist/{errors → federation/types}/types.js.map +1 -1
  23. package/dist/index.d.ts +16 -7
  24. package/dist/index.js +16 -7
  25. package/dist/index.js.map +1 -1
  26. package/dist/normalization/normalization.d.ts +2 -3
  27. package/dist/normalization/normalization.js +0 -8
  28. package/dist/normalization/normalization.js.map +1 -1
  29. package/dist/normalization/types.d.ts +21 -18
  30. package/dist/schema-building/ast.d.ts +2 -10
  31. package/dist/schema-building/ast.js +35 -32
  32. package/dist/schema-building/ast.js.map +1 -1
  33. package/dist/schema-building/types/params.d.ts +54 -0
  34. package/dist/schema-building/types/params.js.map +1 -0
  35. package/dist/schema-building/types/results.d.ts +39 -0
  36. package/dist/schema-building/types/results.js +3 -0
  37. package/dist/schema-building/types/results.js.map +1 -0
  38. package/dist/schema-building/{types.d.ts → types/types.d.ts} +21 -41
  39. package/dist/schema-building/types/types.js.map +1 -0
  40. package/dist/schema-building/utils.d.ts +21 -13
  41. package/dist/schema-building/utils.js +257 -82
  42. package/dist/schema-building/utils.js.map +1 -1
  43. package/dist/subgraph/types/params.d.ts +6 -0
  44. package/dist/subgraph/types/params.js +3 -0
  45. package/dist/{schema-building → subgraph/types}/params.js.map +1 -1
  46. package/dist/subgraph/types.d.ts +6 -6
  47. package/dist/subgraph/utils.d.ts +3 -0
  48. package/dist/subgraph/utils.js +23 -0
  49. package/dist/subgraph/utils.js.map +1 -0
  50. package/dist/tsconfig.tsbuildinfo +1 -1
  51. package/dist/types/results.d.ts +14 -0
  52. package/dist/types/results.js +3 -0
  53. package/dist/types/results.js.map +1 -0
  54. package/dist/types/types.d.ts +2 -0
  55. package/dist/utils/composition-version.js +1 -1
  56. package/dist/utils/params.d.ts +4 -0
  57. package/dist/utils/string-constants.d.ts +2 -1
  58. package/dist/utils/string-constants.js +5 -4
  59. package/dist/utils/string-constants.js.map +1 -1
  60. package/dist/utils/utils.d.ts +2 -1
  61. package/dist/utils/utils.js +14 -0
  62. package/dist/utils/utils.js.map +1 -1
  63. package/dist/v1/constants/directive-definitions.js +3 -3
  64. package/dist/v1/constants/directive-definitions.js.map +1 -1
  65. package/dist/v1/constants/strings.d.ts +3 -1
  66. package/dist/v1/constants/strings.js +12 -2
  67. package/dist/v1/constants/strings.js.map +1 -1
  68. package/dist/v1/federation/federation-factory.d.ts +15 -16
  69. package/dist/v1/federation/federation-factory.js +344 -213
  70. package/dist/v1/federation/federation-factory.js.map +1 -1
  71. package/dist/v1/federation/{params.d.ts → types/params.d.ts} +16 -9
  72. package/dist/v1/federation/types/params.js +3 -0
  73. package/dist/v1/federation/types/params.js.map +1 -0
  74. package/dist/v1/federation/utils.d.ts +2 -2
  75. package/dist/v1/normalization/batch-normalization/batch-normalizer.d.ts +37 -0
  76. package/dist/v1/normalization/batch-normalization/batch-normalizer.js +245 -0
  77. package/dist/v1/normalization/batch-normalization/batch-normalizer.js.map +1 -0
  78. package/dist/v1/normalization/batch-normalization/types/params.d.ts +6 -0
  79. package/dist/v1/normalization/batch-normalization/types/params.js +3 -0
  80. package/dist/v1/normalization/batch-normalization/types/params.js.map +1 -0
  81. package/dist/v1/normalization/normalization-factory.d.ts +20 -17
  82. package/dist/v1/normalization/normalization-factory.js +194 -424
  83. package/dist/v1/normalization/normalization-factory.js.map +1 -1
  84. package/dist/v1/normalization/{params.d.ts → types/params.d.ts} +6 -12
  85. package/dist/v1/normalization/types/params.js +3 -0
  86. package/dist/v1/normalization/types/params.js.map +1 -0
  87. package/dist/v1/normalization/types/results.d.ts +26 -0
  88. package/dist/v1/normalization/types/results.js +3 -0
  89. package/dist/v1/normalization/types/results.js.map +1 -0
  90. package/dist/v1/normalization/{types.d.ts → types/types.d.ts} +37 -19
  91. package/dist/v1/normalization/types/types.js +3 -0
  92. package/dist/v1/normalization/types/types.js.map +1 -0
  93. package/dist/v1/normalization/utils.d.ts +9 -2
  94. package/dist/v1/normalization/utils.js +308 -2
  95. package/dist/v1/normalization/utils.js.map +1 -1
  96. package/dist/v1/normalization/walkers.js +2 -1
  97. package/dist/v1/normalization/walkers.js.map +1 -1
  98. package/dist/v1/schema-building/type-merging.d.ts +1 -1
  99. package/dist/v1/utils/utils.d.ts +2 -3
  100. package/dist/v1/utils/utils.js +0 -17
  101. package/dist/v1/utils/utils.js.map +1 -1
  102. package/dist/v1/warnings/params.d.ts +6 -1
  103. package/dist/v1/warnings/warnings.d.ts +4 -1
  104. package/dist/v1/warnings/warnings.js +23 -0
  105. package/dist/v1/warnings/warnings.js.map +1 -1
  106. package/dist/validation/types/params.d.ts +22 -0
  107. package/dist/validation/types/params.js +3 -0
  108. package/dist/{v1/normalization → validation/types}/params.js.map +1 -1
  109. package/dist/validation/validation.d.ts +5 -0
  110. package/dist/validation/validation.js +213 -0
  111. package/dist/validation/validation.js.map +1 -0
  112. package/package.json +4 -3
  113. package/dist/schema-building/params.d.ts +0 -8
  114. package/dist/schema-building/types.js.map +0 -1
  115. package/dist/v1/normalization/directive-definition-data.js.map +0 -1
  116. package/dist/v1/normalization/types.js.map +0 -1
  117. /package/dist/{federation → directive-definition-data/types}/params.js +0 -0
  118. /package/dist/{errors → directive-definition-data/types}/types.js +0 -0
  119. /package/dist/{schema-building → errors/types}/params.js +0 -0
  120. /package/dist/{federation → errors/types}/types.js +0 -0
  121. /package/dist/{v1/federation → federation/types}/params.js +0 -0
  122. /package/dist/{v1/normalization → federation/types}/types.js +0 -0
  123. /package/dist/{v1/normalization → schema-building/types}/params.js +0 -0
  124. /package/dist/schema-building/{types.js → types/types.js} +0 -0
@@ -0,0 +1,26 @@
1
+ import { type DirectiveName } from '../../../types/types';
2
+ import { type ExecutionMultiFailure, type ExecutionSingleFailure, type ExecutionSuccess } from '../../../types/results';
3
+ import { type SchemaDefinitionNode, type SchemaExtensionNode } from 'graphql';
4
+ import { type LinkImportData } from './types';
5
+ export interface ExtractLinkArgsSuccess extends ExecutionSuccess {
6
+ importDataByDirectiveName: Map<DirectiveName, LinkImportData>;
7
+ }
8
+ export type ExtractLinkArgsResult = ExecutionMultiFailure | ExtractLinkArgsSuccess;
9
+ export interface ExtractImportUrlVersionSuccess extends ExecutionSuccess {
10
+ coreUrl: string;
11
+ majorVersion: number;
12
+ minorVersion: number;
13
+ }
14
+ export type ExtractImportUrlSegmentsResult = ExecutionSingleFailure | ExtractImportUrlVersionSuccess;
15
+ export interface SchemaNodeSuccess extends ExecutionSuccess {
16
+ node?: SchemaDefinitionNode | SchemaExtensionNode;
17
+ }
18
+ export type SchemaNodeResult = ExecutionMultiFailure | SchemaNodeSuccess;
19
+ export interface ExtractLinkImportsSuccess extends ExecutionSuccess {
20
+ imports: Array<LinkImportData>;
21
+ }
22
+ export type ExtractLinkImportsResult = ExecutionMultiFailure | ExtractLinkImportsSuccess;
23
+ export interface ExtractLinkImportObjectSuccess extends ExecutionSuccess {
24
+ import: LinkImportData;
25
+ }
26
+ export type ExtractLinkImportObjectResult = ExecutionMultiFailure | ExtractLinkImportObjectSuccess;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=results.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"results.js","sourceRoot":"","sources":["../../../../src/v1/normalization/types/results.ts"],"names":[],"mappings":""}
@@ -1,7 +1,9 @@
1
- import { type ArgumentData, type CompositeOutputData, type DirectiveDefinitionData, type FieldData, type InputObjectDefinitionData, type InputValueData, type NodeData, type SchemaData } from '../../schema-building/types';
2
- import { type ConstDirectiveNode, type DocumentNode, type InputValueDefinitionNode, type ValueNode } from 'graphql';
3
- import { type RequiredFieldConfiguration } from '../../router-configuration/types';
4
- import { type DirectiveArgumentCoords, type DirectiveName, type SubgraphName } from '../../types/types';
1
+ import { type CompositeOutputData, type FieldData, type InputObjectDefinitionData, type InputValueData, type NodeData, type SchemaData } from '../../../schema-building/types/types';
2
+ import { type ConstDirectiveNode, type DocumentNode, type InputValueDefinitionNode, type Kind, type Location, type NameNode, type StringValueNode, type ValueNode } from 'graphql';
3
+ import { type RequiredFieldConfiguration } from '../../../router-configuration/types';
4
+ import { type ArgumentName, type DirectiveArgumentCoords, type DirectiveName, type FieldName, type SubgraphName, type TypeName } from '../../../types/types';
5
+ import { type ExecutionFailure, type ExecutionSuccess } from '../../../types/results';
6
+ import { type DirectiveArgumentData, type DirectiveDefinitionData } from '../../../directive-definition-data/types/types';
5
7
  export type KeyFieldSetData = {
6
8
  documentNode: DocumentNode;
7
9
  isUnresolvable: boolean;
@@ -20,10 +22,10 @@ export type FieldSetParentResult = {
20
22
  errorString?: string;
21
23
  fieldSetParentData?: CompositeOutputData;
22
24
  };
23
- export type ExtractArgumentDataResult = {
24
- argumentTypeNodeByName: Map<string, ArgumentData>;
25
- optionalArgumentNames: Set<string>;
26
- requiredArgumentNames: Set<string>;
25
+ export type ExtractDirectiveArgumentDataResult = {
26
+ argumentDataByName: Map<ArgumentName, DirectiveArgumentData>;
27
+ optionalArgumentNames: Set<ArgumentName>;
28
+ requiredArgumentNames: Set<ArgumentName>;
27
29
  };
28
30
  export type ValidateDirectiveParams = {
29
31
  data: NodeData | SchemaData;
@@ -31,7 +33,7 @@ export type ValidateDirectiveParams = {
31
33
  directiveCoords: string;
32
34
  directiveNode: ConstDirectiveNode;
33
35
  errorMessages: Array<string>;
34
- requiredArgumentNames: Array<string>;
36
+ requiredArgumentNames: Array<ArgumentName>;
35
37
  };
36
38
  export type HandleOverrideDirectiveParams = {
37
39
  data: FieldData;
@@ -68,18 +70,34 @@ export type RecordDirectiveWeightOnFieldParams = {
68
70
  directiveNode: ConstDirectiveNode;
69
71
  };
70
72
  export type AddInputValueDataByNodeParams = {
71
- inputValueDataByName: Map<string, InputValueData>;
73
+ inputValueDataByName: Map<FieldName, InputValueData>;
72
74
  isArgument: boolean;
73
75
  node: InputValueDefinitionNode;
74
- originalParentTypeName: string;
75
- fieldName?: string;
76
- renamedParentTypeName?: string;
76
+ originalParentTypeName: TypeName;
77
+ fieldName?: FieldName;
78
+ renamedParentTypeName?: TypeName;
77
79
  };
78
- export type ExecutionFailure = {
79
- success: false;
80
- };
81
- export type UpsertInputObjectSuccess = {
80
+ export interface UpsertInputObjectSuccess extends ExecutionSuccess {
82
81
  data: InputObjectDefinitionData;
83
- success: true;
84
- };
82
+ }
85
83
  export type UpsertInputObjectResult = ExecutionFailure | UpsertInputObjectSuccess;
84
+ export type ComposeDirectiveNode = {
85
+ readonly arguments: ReadonlyArray<ComposeDirectiveArgumentNode>;
86
+ readonly kind: Kind.DIRECTIVE;
87
+ readonly name: NameNode;
88
+ readonly loc?: Location;
89
+ };
90
+ export type ComposeDirectiveArgumentNode = {
91
+ readonly kind: Kind.ARGUMENT;
92
+ readonly name: NameNode;
93
+ readonly value: StringValueNode;
94
+ readonly loc?: Location;
95
+ };
96
+ export type LinkImportData = {
97
+ name: DirectiveName;
98
+ coreUrl: string;
99
+ majorVersion: number;
100
+ minorVersion: number;
101
+ node?: ConstDirectiveNode;
102
+ rename?: DirectiveName;
103
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/v1/normalization/types/types.ts"],"names":[],"mappings":""}
@@ -1,8 +1,12 @@
1
1
  import { type ConstDirectiveNode, type DocumentNode, OperationTypeNode } from 'graphql';
2
2
  import { type NormalizationFactory } from './normalization-factory';
3
3
  import { type RequiredFieldConfiguration } from '../../router-configuration/types';
4
- import { type CompositeOutputData, type DirectiveDefinitionData, type InputValueData } from '../../schema-building/types';
5
- import { type FieldSetData, type KeyFieldSetData } from './types';
4
+ import { type CompositeOutputData, type InputValueData } from '../../schema-building/types/types';
5
+ import { type FieldSetData, type KeyFieldSetData } from './types/types';
6
+ import { type DirectiveName } from '../../types/types';
7
+ import { type ExtractLinkArgsResult } from './types/results';
8
+ import { type UpsertFederatedDirectiveDataParams } from '../../directive-definition-data/types/params';
9
+ import { type DirectiveDefinitionData } from '../../directive-definition-data/types/types';
6
10
  export declare function newFieldSetData(): FieldSetData;
7
11
  export declare function extractFieldSetValue(name: string, map: Map<string, string>, directives?: ConstDirectiveNode[]): void;
8
12
  export declare function getNormalizedFieldSet(documentNode: DocumentNode): string;
@@ -12,3 +16,6 @@ export declare function getConditionalFieldSetDirectiveName(isProvides: boolean)
12
16
  export declare function isNodeQuery(typeName: string, operationTypeNode?: OperationTypeNode): boolean;
13
17
  export declare function validateArgumentTemplateReferences(value: string, argumentDataByArgumentName: Map<string, InputValueData>, errorMessages: string[]): void;
14
18
  export declare function initializeDirectiveDefinitionDatas(): Map<string, DirectiveDefinitionData>;
19
+ export declare const FEDERATED_DIRECTIVE_DATAS: ReadonlyArray<DirectiveDefinitionData>;
20
+ export declare function upsertFederatedDirectiveData({ executableDirectiveDatasByName, existingDataByName, incomingDataByName, }: UpsertFederatedDirectiveDataParams): void;
21
+ export declare function extractLinkArgs(directivesByName: Map<DirectiveName, Array<ConstDirectiveNode>>): ExtractLinkArgsResult;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FEDERATED_DIRECTIVE_DATAS = void 0;
3
4
  exports.newFieldSetData = newFieldSetData;
4
5
  exports.extractFieldSetValue = extractFieldSetValue;
5
6
  exports.getNormalizedFieldSet = getNormalizedFieldSet;
@@ -9,14 +10,18 @@ exports.getConditionalFieldSetDirectiveName = getConditionalFieldSetDirectiveNam
9
10
  exports.isNodeQuery = isNodeQuery;
10
11
  exports.validateArgumentTemplateReferences = validateArgumentTemplateReferences;
11
12
  exports.initializeDirectiveDefinitionDatas = initializeDirectiveDefinitionDatas;
13
+ exports.upsertFederatedDirectiveData = upsertFederatedDirectiveData;
14
+ exports.extractLinkArgs = extractLinkArgs;
12
15
  const graphql_1 = require("graphql");
13
16
  const utils_1 = require("../../ast/utils");
14
17
  const errors_1 = require("../../errors/errors");
15
18
  const constants_1 = require("../constants/constants");
16
19
  const ast_1 = require("../../schema-building/ast");
17
- const directive_definition_data_1 = require("./directive-definition-data");
20
+ const directive_definition_data_1 = require("../../directive-definition-data/directive-definition-data");
18
21
  const string_constants_1 = require("../../utils/string-constants");
19
22
  const utils_2 = require("../../utils/utils");
23
+ const strings_1 = require("../constants/strings");
24
+ const utils_3 = require("../../directive-definition-data/utils");
20
25
  function newFieldSetData() {
21
26
  return {
22
27
  provides: new Map(),
@@ -308,11 +313,312 @@ function initializeDirectiveDefinitionDatas() {
308
313
  [string_constants_1.REQUIRE_FETCH_REASONS, directive_definition_data_1.REQUIRE_FETCH_REASONS_DEFINITION_DATA],
309
314
  [string_constants_1.REQUIRES, directive_definition_data_1.REQUIRES_DEFINITION_DATA],
310
315
  [string_constants_1.REQUIRES_SCOPES, directive_definition_data_1.REQUIRES_SCOPES_DEFINITION_DATA],
311
- [string_constants_1.SEMANTIC_NON_NULL, directive_definition_data_1.SEMANTIC_NON_NULL_DATA],
316
+ [string_constants_1.SEMANTIC_NON_NULL, directive_definition_data_1.SEMANTIC_NON_NULL_DEFINITION_DATA],
312
317
  [string_constants_1.SHAREABLE, directive_definition_data_1.SHAREABLE_DEFINITION_DATA],
313
318
  [string_constants_1.SPECIFIED_BY, directive_definition_data_1.SPECIFIED_BY_DEFINITION_DATA],
314
319
  [string_constants_1.SUBSCRIPTION_FILTER, directive_definition_data_1.SUBSCRIPTION_FILTER_DEFINITION_DATA],
315
320
  [string_constants_1.TAG, directive_definition_data_1.TAG_DEFINITION_DATA],
316
321
  ]);
317
322
  }
323
+ exports.FEDERATED_DIRECTIVE_DATAS = [
324
+ directive_definition_data_1.AUTHENTICATED_DEFINITION_DATA,
325
+ directive_definition_data_1.DEPRECATED_DEFINITION_DATA,
326
+ directive_definition_data_1.INACCESSIBLE_DEFINITION_DATA,
327
+ directive_definition_data_1.ONE_OF_DEFINITION_DATA,
328
+ directive_definition_data_1.REQUIRES_SCOPES_DEFINITION_DATA,
329
+ directive_definition_data_1.SEMANTIC_NON_NULL_DEFINITION_DATA,
330
+ directive_definition_data_1.TAG_DEFINITION_DATA,
331
+ ];
332
+ function upsertFederatedDirectiveData({ executableDirectiveDatasByName, existingDataByName, incomingDataByName, }) {
333
+ for (const [directiveName, directiveData] of incomingDataByName) {
334
+ const existingData = existingDataByName.get(directiveName);
335
+ const copiedData = (0, utils_3.copyDirectiveDefinitionData)(directiveData);
336
+ if (!existingData) {
337
+ if (!directiveData.isComposed) {
338
+ (0, utils_2.getValueOrDefault)(executableDirectiveDatasByName, directiveName, () => []).push(copiedData);
339
+ continue;
340
+ }
341
+ existingDataByName.set(directiveName, copiedData);
342
+ executableDirectiveDatasByName.delete(directiveName);
343
+ continue;
344
+ }
345
+ // If a directive is not composed in a subgraph, it is effectively ignored.
346
+ if (!directiveData.isComposed) {
347
+ continue;
348
+ }
349
+ /* If at least one subgraph includes the directive name in a `@composeDirective` directive, the definition of
350
+ * the custom directive should be propagated in the federated graph.
351
+ * The directive itself must be referenced in at least once in one of those subgraphs to propagate also the usages
352
+ * of the custom directive to the federated graph (in addition to the definition).
353
+ *
354
+ * Moreover, only the highest version of the directive is propagated; this means a directive definition description
355
+ * could be set in one one subgraph and removed in another subgraph with a imported higher version.
356
+ */
357
+ if (existingData.minorVersion < directiveData.minorVersion) {
358
+ existingDataByName.set(directiveName, (0, utils_3.copyDirectiveDefinitionData)(directiveData));
359
+ }
360
+ }
361
+ }
362
+ // This function aims to mirror Apollo functionality
363
+ function extractLinkUrlSegments(argNode) {
364
+ if (argNode.value.kind !== graphql_1.Kind.STRING) {
365
+ return {
366
+ error: (0, errors_1.invalidLinkDirectiveUrlError)(''),
367
+ success: false,
368
+ };
369
+ }
370
+ const urlString = argNode.value.value;
371
+ const url = URL.parse(urlString);
372
+ if (!url) {
373
+ return {
374
+ error: (0, errors_1.invalidLinkDirectiveUrlError)(urlString),
375
+ success: false,
376
+ };
377
+ }
378
+ const segments = url.pathname.split('/');
379
+ const versionString = segments.at(-1);
380
+ if (segments.length < 3 && !versionString) {
381
+ return {
382
+ error: (0, errors_1.noPathLinkDirectiveUrlError)(urlString),
383
+ success: false,
384
+ };
385
+ }
386
+ if (!versionString) {
387
+ return {
388
+ error: (0, errors_1.noVersionLinkDirectiveUrlError)(urlString),
389
+ success: false,
390
+ };
391
+ }
392
+ if (!strings_1.IMPORT_VERSION_REGEX.test(versionString)) {
393
+ return {
394
+ error: (0, errors_1.invalidVersionLinkDirectiveUrlError)({ url: urlString, versionString }),
395
+ success: false,
396
+ };
397
+ }
398
+ if (segments.length < 3) {
399
+ return {
400
+ error: (0, errors_1.noFeatureNameLinkDirectiveUrlError)(urlString),
401
+ success: false,
402
+ };
403
+ }
404
+ try {
405
+ const versionSegments = versionString.substring(1).split(string_constants_1.LITERAL_PERIOD);
406
+ if (versionSegments.length !== 2) {
407
+ return {
408
+ error: (0, errors_1.invalidVersionLinkDirectiveUrlError)({ url: urlString, versionString }),
409
+ success: false,
410
+ };
411
+ }
412
+ const majorVersion = parseInt(versionSegments[0]);
413
+ const minorVersion = parseInt(versionSegments[1]);
414
+ const featureName = segments.at(-2);
415
+ if (!featureName) {
416
+ return {
417
+ error: (0, errors_1.noFeatureNameLinkDirectiveUrlError)(urlString),
418
+ success: false,
419
+ };
420
+ }
421
+ return {
422
+ coreUrl: urlString.substring(0, urlString.length - versionString.length),
423
+ success: true,
424
+ majorVersion,
425
+ minorVersion,
426
+ };
427
+ }
428
+ catch {
429
+ // Should never happen
430
+ return {
431
+ error: (0, errors_1.invalidVersionLinkDirectiveUrlError)({ url: urlString, versionString: versionString }),
432
+ success: false,
433
+ };
434
+ }
435
+ }
436
+ function extractLinkImportObject(value) {
437
+ const data = {
438
+ name: '',
439
+ coreUrl: '',
440
+ majorVersion: -1,
441
+ minorVersion: -1,
442
+ };
443
+ const errors = [];
444
+ const valueString = (0, graphql_1.print)(value);
445
+ for (const field of value.fields) {
446
+ const fieldName = field.name.value;
447
+ switch (fieldName) {
448
+ case string_constants_1.AS: {
449
+ if (field.value.kind !== graphql_1.Kind.STRING) {
450
+ errors.push((0, errors_1.invalidFieldLinkDirectiveImportObjectError)({ fieldName, value: valueString }));
451
+ break;
452
+ }
453
+ data.rename = field.value.value;
454
+ break;
455
+ }
456
+ case string_constants_1.NAME: {
457
+ if (field.value.kind !== graphql_1.Kind.STRING) {
458
+ errors.push((0, errors_1.invalidFieldLinkDirectiveImportObjectError)({ fieldName, value: valueString }));
459
+ break;
460
+ }
461
+ data.name = field.value.value;
462
+ break;
463
+ }
464
+ default: {
465
+ errors.push((0, errors_1.unknownFieldLinkDirectiveImportObjectError)({ fieldName, value: valueString }));
466
+ break;
467
+ }
468
+ }
469
+ }
470
+ if (!data.name) {
471
+ errors.push((0, errors_1.noNameFieldLinkDirectiveImportObjectError)(valueString));
472
+ }
473
+ else if (data.rename) {
474
+ const nameIsDirective = data.name.startsWith(string_constants_1.LITERAL_AT);
475
+ const renamedIsDirective = data.rename.startsWith(string_constants_1.LITERAL_AT);
476
+ if (nameIsDirective !== renamedIsDirective) {
477
+ errors.push((0, errors_1.invalidLinkDirectiveImportObjectError)({
478
+ name: data.name,
479
+ rename: data.rename,
480
+ }));
481
+ }
482
+ }
483
+ if (errors.length > 0) {
484
+ return {
485
+ errors,
486
+ success: false,
487
+ };
488
+ }
489
+ return {
490
+ import: data,
491
+ success: true,
492
+ };
493
+ }
494
+ function extractLinkImports(values) {
495
+ const imports = [];
496
+ const errors = [];
497
+ for (let i = 0; i < values.length; i++) {
498
+ const value = values[i];
499
+ switch (value.kind) {
500
+ case graphql_1.Kind.STRING: {
501
+ imports.push({
502
+ name: value.value,
503
+ coreUrl: '',
504
+ majorVersion: -1,
505
+ minorVersion: -1,
506
+ });
507
+ break;
508
+ }
509
+ case graphql_1.Kind.OBJECT: {
510
+ const objectResult = extractLinkImportObject(value);
511
+ if (!objectResult.success) {
512
+ errors.push(...objectResult.errors);
513
+ break;
514
+ }
515
+ imports.push(objectResult.import);
516
+ break;
517
+ }
518
+ default: {
519
+ errors.push((0, errors_1.invalidSubValueLinkDirectiveImportError)(i));
520
+ break;
521
+ }
522
+ }
523
+ }
524
+ if (errors.length > 0) {
525
+ return {
526
+ errors,
527
+ success: false,
528
+ };
529
+ }
530
+ return {
531
+ imports,
532
+ success: true,
533
+ };
534
+ }
535
+ function extractLinkArgs(directivesByName) {
536
+ const errors = [];
537
+ const importDataByDirectiveName = new Map();
538
+ const linkDirectives = directivesByName.get(string_constants_1.LINK);
539
+ if (!linkDirectives) {
540
+ return {
541
+ success: true,
542
+ importDataByDirectiveName,
543
+ };
544
+ }
545
+ for (const directive of linkDirectives) {
546
+ if (!directive.arguments) {
547
+ continue;
548
+ }
549
+ let imports = [];
550
+ let majorVersion = -1;
551
+ let minorVersion = -1;
552
+ let coreUrl = '';
553
+ for (const arg of directive.arguments) {
554
+ const argName = arg.name.value;
555
+ switch (argName) {
556
+ case string_constants_1.URL_LOWER: {
557
+ const urlResult = extractLinkUrlSegments(arg);
558
+ if (!urlResult.success) {
559
+ return {
560
+ errors: [urlResult.error],
561
+ success: false,
562
+ };
563
+ }
564
+ coreUrl = urlResult.coreUrl;
565
+ majorVersion = urlResult.majorVersion;
566
+ minorVersion = urlResult.minorVersion;
567
+ break;
568
+ }
569
+ case string_constants_1.IMPORT: {
570
+ switch (arg.value.kind) {
571
+ case graphql_1.Kind.STRING: {
572
+ imports.push({
573
+ name: arg.value.value,
574
+ coreUrl: '',
575
+ majorVersion: -1,
576
+ minorVersion: -1,
577
+ });
578
+ break;
579
+ }
580
+ case graphql_1.Kind.LIST: {
581
+ const importsResult = extractLinkImports(arg.value.values);
582
+ if (!importsResult.success) {
583
+ return importsResult;
584
+ }
585
+ imports = importsResult.imports;
586
+ break;
587
+ }
588
+ default: {
589
+ return {
590
+ errors: [(0, errors_1.nonIterableLinkDirectiveImportError)(arg.value.kind)],
591
+ success: false,
592
+ };
593
+ }
594
+ }
595
+ break;
596
+ }
597
+ }
598
+ }
599
+ // Should be caught in earlier validation
600
+ if (!coreUrl) {
601
+ return {
602
+ errors: [errors_1.noLinkDirectiveUrlError],
603
+ success: false,
604
+ };
605
+ }
606
+ for (const value of imports) {
607
+ value.coreUrl = coreUrl;
608
+ value.majorVersion = majorVersion;
609
+ value.minorVersion = minorVersion;
610
+ importDataByDirectiveName.set(value.rename ?? value.name, value);
611
+ }
612
+ }
613
+ if (errors.length > 0) {
614
+ return {
615
+ errors,
616
+ success: false,
617
+ };
618
+ }
619
+ return {
620
+ importDataByDirectiveName,
621
+ success: true,
622
+ };
623
+ }
318
624
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/v1/normalization/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/v1/normalization/utils.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,7 @@ function upsertDirectiveSchemaAndEntityDefinitions(nf, document) {
25
25
  nf.referencedDirectiveNames.add(name);
26
26
  if (strings_1.EVENT_DIRECTIVE_NAMES.has(name)) {
27
27
  nf.edfsDirectiveReferences.add(name);
28
+ return false;
28
29
  }
29
30
  if (constants_1.V2_DIRECTIVE_DEFINITION_BY_DIRECTIVE_NAME.has(name)) {
30
31
  nf.isSubgraphVersionTwo = true;
@@ -216,7 +217,7 @@ function upsertParentsAndChildren(nf, document) {
216
217
  name,
217
218
  node: (0, ast_1.getMutableEnumValueNode)(node),
218
219
  parentTypeName: nf.originalParentTypeName,
219
- persistedDirectivesData: (0, utils_4.newPersistedDirectivesData)(),
220
+ federatedDirectivesData: (0, utils_4.newFederatedDirectivesData)(),
220
221
  subgraphNames: new Set([nf.subgraphName]),
221
222
  description: (0, utils_2.formatDescription)(node.description),
222
223
  });