@wundergraph/composition 0.20.3 → 0.22.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.
@@ -1 +1 @@
1
- {"version":3,"file":"federation-factory.js","sourceRoot":"","sources":["../../src/federation/federation-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"federation-factory.js","sourceRoot":"","sources":["../../src/federation/federation-factory.ts"],"names":[],"mappings":"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"}
@@ -40,7 +40,7 @@ function createMultiGraphAndRenameRootTypes(ff, subgraph) {
40
40
  // If the parent node is never an entity, add the child edge
41
41
  // Otherwise, only add the child edge if the child is a field on a subgraph where the object is an entity
42
42
  // TODO resolvable false
43
- const entity = ff.entityContainersByTypeName.get(parentTypeName);
43
+ const entity = ff.entityDataByTypeName.get(parentTypeName);
44
44
  if (entity && !entity.fieldNames.has(fieldName)) {
45
45
  return false;
46
46
  }
@@ -81,10 +81,7 @@ function createMultiGraphAndRenameRootTypes(ff, subgraph) {
81
81
  if (ff.entityInterfaceFederationDataByTypeName.get(originalTypeName)) {
82
82
  return;
83
83
  }
84
- const entityContainer = ff.entityContainersByTypeName.get(originalTypeName);
85
- if (entityContainer && !parentData.isEntity) {
86
- ff.validateKeyFieldSetsForImplicitEntity(entityContainer);
87
- }
84
+ ff.addValidPrimaryKeyTargetsToEntityData(ff.entityDataByTypeName.get(originalTypeName));
88
85
  overriddenFieldNames = subgraph.overriddenFieldNamesByParentTypeName.get(originalTypeName);
89
86
  if (originalTypeName === parentTypeName) {
90
87
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"walkers.js","sourceRoot":"","sources":["../../src/federation/walkers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"walkers.js","sourceRoot":"","sources":["../../src/federation/walkers.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { ConstDirectiveNode, DirectiveDefinitionNode, DirectiveNode, DocumentNod
2
2
  import { EnumTypeNode, InterfaceTypeNode, ObjectTypeNode, ScalarTypeNode } from '../ast/utils';
3
3
  import { FieldSetData, InputValidationContainer } from './utils';
4
4
  import { AuthorizationData, EntityData, EntityDataByTypeName, EntityInterfaceSubgraphData, FieldAuthorizationData } from '../utils/utils';
5
- import { ConfigurationData, EventConfiguration } from '../router-configuration/router-configuration';
5
+ import { ConfigurationData, EventConfiguration, EventType } from '../router-configuration/router-configuration';
6
6
  import { InternalSubgraph, Subgraph } from '../subgraph/subgraph';
7
7
  import { FieldData, ParentDefinitionData, ParentWithFieldsData, PersistedDirectiveDefinitionData, SchemaData } from '../schema-building/type-definition-data';
8
8
  import { ObjectExtensionData, ParentExtensionData } from '../schema-building/type-extension-data';
@@ -93,12 +93,15 @@ export declare class NormalizationFactory {
93
93
  extractKeyFieldSets(node: ObjectLikeTypeNode, fieldSetData: FieldSetData): void;
94
94
  validateInterfaceImplementations(data: ParentWithFieldsData): void;
95
95
  handleOverrideDeclaration(node: DirectiveNode, hostPath: string, errorMessages: string[]): void;
96
+ getEventPublishAndRequestConfiguration(eventType: EventType, directive: ConstDirectiveNode, errorMessages: string[]): EventConfiguration | undefined;
97
+ getEventSubscribeConfiguration(directive: ConstDirectiveNode, errorMessages: string[]): EventConfiguration | undefined;
96
98
  extractEventDirectivesToConfiguration(node: FieldDefinitionNode): void;
97
99
  getValidEventsDirectiveNamesForRootTypeName(parentTypeName: string): Set<string> | undefined;
98
100
  validateEventDrivenRootType(data: ObjectData, validEventsDirectiveNames: Set<string>, invalidEventsDirectiveDataByRootFieldPath: Map<string, InvalidRootTypeFieldEventsDirectiveData>, invalidResponseTypeStringByRootFieldPath: Map<string, string>, invalidResponseTypeNameByMutationPath: Map<string, string>): void;
99
101
  validateEventDrivenKeyDefinition(typeName: string, invalidKeyFieldSetsByEntityTypeName: Map<string, string[]>): void;
100
102
  validateEventDrivenObjectFields(fieldDataByFieldName: Map<string, FieldData>, keyFieldNames: Set<string>, nonExternalKeyFieldNameByFieldPath: Map<string, string>, nonKeyFieldNameByFieldPath: Map<string, string>): void;
101
- isPublishEventResultValid(): boolean;
103
+ isEdfsPublishResultValid(): boolean;
104
+ isStreamConfigurationInputObjectValid(streamConfigurationInputData: ParentDefinitionData): boolean;
102
105
  validateEventDrivenSubgraph(): void;
103
106
  normalize(document: DocumentNode): NormalizationResultContainer;
104
107
  }
@@ -466,56 +466,153 @@ class NormalizationFactory {
466
466
  const overriddenFieldNamesForParent = (0, utils_3.getValueOrDefault)(overrideDataForSubgraph, this.renamedParentTypeName || this.originalParentTypeName, () => new Set());
467
467
  overriddenFieldNamesForParent.add(this.childName);
468
468
  }
469
+ getEventPublishAndRequestConfiguration(eventType, directive, errorMessages) {
470
+ const subjects = [];
471
+ let sourceName = string_constants_1.DEFAULT;
472
+ for (const argumentNode of directive.arguments || []) {
473
+ switch (argumentNode.name.value) {
474
+ case string_constants_1.SUBJECT: {
475
+ if (argumentNode.value.kind !== graphql_1.Kind.STRING || argumentNode.value.value.length < 1) {
476
+ errorMessages.push(errors_1.invalidEventSubjectErrorMessage);
477
+ continue;
478
+ }
479
+ subjects.push(argumentNode.value.value);
480
+ break;
481
+ }
482
+ case string_constants_1.SOURCE_NAME: {
483
+ if (argumentNode.value.kind !== graphql_1.Kind.STRING || argumentNode.value.value.length < 1) {
484
+ errorMessages.push(errors_1.invalidEventSourceNameErrorMessage);
485
+ continue;
486
+ }
487
+ sourceName = argumentNode.value.value;
488
+ break;
489
+ }
490
+ }
491
+ }
492
+ if (errorMessages.length > 0) {
493
+ return;
494
+ }
495
+ return { fieldName: this.childName, sourceName, subjects, type: eventType };
496
+ }
497
+ getEventSubscribeConfiguration(directive, errorMessages) {
498
+ const subjects = [];
499
+ let sourceName = string_constants_1.DEFAULT;
500
+ let consumerName = '';
501
+ let streamName = '';
502
+ for (const argumentNode of directive.arguments || []) {
503
+ switch (argumentNode.name.value) {
504
+ case string_constants_1.SUBJECTS: {
505
+ if (argumentNode.value.kind !== graphql_1.Kind.LIST) {
506
+ errorMessages.push(errors_1.invalidEventSubjectsErrorMessage);
507
+ continue;
508
+ }
509
+ for (const value of argumentNode.value.values) {
510
+ if (value.kind !== graphql_1.Kind.STRING || value.value.length < 1) {
511
+ errorMessages.push(errors_1.invalidEventSubjectsItemErrorMessage);
512
+ break;
513
+ }
514
+ subjects.push(value.value);
515
+ }
516
+ break;
517
+ }
518
+ case string_constants_1.SOURCE_NAME: {
519
+ if (argumentNode.value.kind !== graphql_1.Kind.STRING || argumentNode.value.value.length < 1) {
520
+ errorMessages.push(errors_1.invalidEventSourceNameErrorMessage);
521
+ continue;
522
+ }
523
+ sourceName = argumentNode.value.value;
524
+ break;
525
+ }
526
+ case string_constants_1.STREAM_CONFIGURATION: {
527
+ if (argumentNode.value.kind !== graphql_1.Kind.OBJECT || argumentNode.value.fields.length < 1) {
528
+ errorMessages.push(errors_1.invalidEventDrivenStreamConfigurationInputErrorMessage);
529
+ continue;
530
+ }
531
+ let isValid = true;
532
+ const invalidFieldNames = new Set();
533
+ const missingRequiredFieldNames = new Set([string_constants_1.CONSUMER_NAME, string_constants_1.STREAM_NAME]);
534
+ const duplicateRequiredFieldNames = new Set();
535
+ const invalidRequiredFieldNames = new Set();
536
+ for (const field of argumentNode.value.fields) {
537
+ const fieldName = field.name.value;
538
+ if (!string_constants_1.STREAM_CONFIGURATION_FIELD_NAMES.has(fieldName)) {
539
+ invalidFieldNames.add(fieldName);
540
+ isValid = false;
541
+ continue;
542
+ }
543
+ if (missingRequiredFieldNames.has(fieldName)) {
544
+ missingRequiredFieldNames.delete(fieldName);
545
+ }
546
+ else {
547
+ duplicateRequiredFieldNames.add(fieldName);
548
+ isValid = false;
549
+ continue;
550
+ }
551
+ if (field.value.kind !== graphql_1.Kind.STRING || field.value.value.length < 1) {
552
+ invalidRequiredFieldNames.add(fieldName);
553
+ isValid = false;
554
+ continue;
555
+ }
556
+ switch (fieldName) {
557
+ case string_constants_1.CONSUMER_NAME:
558
+ consumerName = field.value.value;
559
+ break;
560
+ case string_constants_1.STREAM_NAME:
561
+ streamName = field.value.value;
562
+ break;
563
+ }
564
+ }
565
+ if (!isValid || missingRequiredFieldNames.size > 0) {
566
+ errorMessages.push((0, errors_1.invalidEventDrivenStreamConfigurationInputFieldsErrorMessage)([...missingRequiredFieldNames], [...duplicateRequiredFieldNames], [...invalidRequiredFieldNames], [...invalidFieldNames]));
567
+ }
568
+ }
569
+ }
570
+ }
571
+ if (errorMessages.length > 0) {
572
+ return;
573
+ }
574
+ return {
575
+ fieldName: this.childName,
576
+ sourceName,
577
+ subjects,
578
+ type: string_constants_1.SUBSCRIBE,
579
+ ...(consumerName && streamName ? { streamConfiguration: { consumerName: consumerName, streamName } } : {}),
580
+ };
581
+ }
469
582
  extractEventDirectivesToConfiguration(node) {
470
583
  // Validation is handled elsewhere
471
584
  if (!node.directives) {
472
585
  return;
473
586
  }
587
+ const fieldPath = `${this.renamedParentTypeName || this.originalParentTypeName}.${this.childName}`;
474
588
  for (const directive of node.directives) {
475
- let eventType;
589
+ const errorMessages = [];
590
+ let eventConfiguration;
476
591
  switch (directive.name.value) {
477
- case string_constants_1.EVENTS_PUBLISH: {
478
- eventType = string_constants_1.PUBLISH;
592
+ case string_constants_1.EDFS_PUBLISH: {
593
+ eventConfiguration = this.getEventPublishAndRequestConfiguration(string_constants_1.PUBLISH, directive, errorMessages);
479
594
  break;
480
595
  }
481
- case string_constants_1.EVENTS_REQUEST: {
482
- eventType = string_constants_1.REQUEST;
596
+ case string_constants_1.EDFS_REQUEST: {
597
+ eventConfiguration = this.getEventPublishAndRequestConfiguration(string_constants_1.REQUEST, directive, errorMessages);
483
598
  break;
484
599
  }
485
- case string_constants_1.EVENTS_SUBSCRIBE: {
486
- eventType = string_constants_1.SUBSCRIBE;
600
+ case string_constants_1.EDFS_SUBSCRIBE: {
601
+ eventConfiguration = this.getEventSubscribeConfiguration(directive, errorMessages);
487
602
  break;
488
603
  }
489
604
  default:
490
605
  continue;
491
606
  }
492
- let topic;
493
- let sourceName;
494
- for (const argumentNode of directive.arguments || []) {
495
- if (argumentNode.value.kind !== graphql_1.Kind.STRING) {
496
- continue;
497
- }
498
- switch (argumentNode.name.value) {
499
- case string_constants_1.TOPIC: {
500
- topic = argumentNode.value.value;
501
- break;
502
- }
503
- case string_constants_1.SOURCE_NAME: {
504
- sourceName = argumentNode.value.value;
505
- break;
506
- }
507
- }
607
+ if (errorMessages.length > 0) {
608
+ this.errors.push((0, errors_1.invalidEventDirectiveError)(directive.name.value, fieldPath, errorMessages));
609
+ continue;
508
610
  }
509
- if (!topic) {
510
- return;
611
+ // should never happen
612
+ if (!eventConfiguration) {
613
+ continue;
511
614
  }
512
- const configuration = (0, utils_3.getValueOrDefault)(this.eventsConfigurations, this.renamedParentTypeName || this.originalParentTypeName, () => []);
513
- configuration.push({
514
- type: eventType,
515
- fieldName: this.childName,
516
- topic,
517
- sourceName: sourceName || string_constants_1.DEFAULT,
518
- });
615
+ (0, utils_3.getValueOrDefault)(this.eventsConfigurations, this.renamedParentTypeName || this.originalParentTypeName, () => []).push(eventConfiguration);
519
616
  }
520
617
  }
521
618
  getValidEventsDirectiveNamesForRootTypeName(parentTypeName) {
@@ -523,28 +620,28 @@ class NormalizationFactory {
523
620
  if (!operationTypeNode) {
524
621
  switch (parentTypeName) {
525
622
  case string_constants_1.MUTATION:
526
- return new Set([string_constants_1.EVENTS_PUBLISH, string_constants_1.EVENTS_REQUEST]);
623
+ return new Set([string_constants_1.EDFS_PUBLISH, string_constants_1.EDFS_REQUEST]);
527
624
  case string_constants_1.QUERY:
528
- return new Set([string_constants_1.EVENTS_REQUEST]);
625
+ return new Set([string_constants_1.EDFS_REQUEST]);
529
626
  case string_constants_1.SUBSCRIPTION:
530
- return new Set([string_constants_1.EVENTS_SUBSCRIBE]);
627
+ return new Set([string_constants_1.EDFS_SUBSCRIBE]);
531
628
  default:
532
629
  return;
533
630
  }
534
631
  }
535
632
  switch (operationTypeNode) {
536
633
  case graphql_1.OperationTypeNode.MUTATION:
537
- return new Set([string_constants_1.EVENTS_REQUEST, string_constants_1.EVENTS_PUBLISH]);
634
+ return new Set([string_constants_1.EDFS_REQUEST, string_constants_1.EDFS_PUBLISH]);
538
635
  case graphql_1.OperationTypeNode.QUERY:
539
- return new Set([string_constants_1.EVENTS_REQUEST]);
636
+ return new Set([string_constants_1.EDFS_REQUEST]);
540
637
  case graphql_1.OperationTypeNode.SUBSCRIPTION:
541
- return new Set([string_constants_1.EVENTS_SUBSCRIBE]);
638
+ return new Set([string_constants_1.EDFS_SUBSCRIBE]);
542
639
  default:
543
640
  return;
544
641
  }
545
642
  }
546
643
  validateEventDrivenRootType(data, validEventsDirectiveNames, invalidEventsDirectiveDataByRootFieldPath, invalidResponseTypeStringByRootFieldPath, invalidResponseTypeNameByMutationPath) {
547
- const isMutation = validEventsDirectiveNames.has(string_constants_1.EVENTS_PUBLISH);
644
+ const isMutation = validEventsDirectiveNames.has(string_constants_1.EDFS_PUBLISH);
548
645
  for (const [fieldName, fieldData] of data.fieldDataByFieldName) {
549
646
  const fieldPath = `${fieldData.originalParentTypeName}.${fieldName}`;
550
647
  const definedEventsDirectiveNames = new Set();
@@ -567,7 +664,7 @@ class NormalizationFactory {
567
664
  }
568
665
  if (isMutation) {
569
666
  const typeString = (0, merge_1.printTypeNode)(fieldData.type);
570
- if (typeString !== string_constants_1.NON_NULLABLE_PUBLISH_EVENT_RESULT) {
667
+ if (typeString !== string_constants_1.NON_NULLABLE_EDFS_PUBLISH_EVENT_RESULT) {
571
668
  invalidResponseTypeNameByMutationPath.set(fieldPath, typeString);
572
669
  }
573
670
  continue;
@@ -612,8 +709,8 @@ class NormalizationFactory {
612
709
  nonKeyFieldNameByFieldPath.set(fieldPath, fieldName);
613
710
  }
614
711
  }
615
- isPublishEventResultValid() {
616
- const data = this.parentDefinitionDataByTypeName.get(string_constants_1.PUBLISH_EVENT_RESULT);
712
+ isEdfsPublishResultValid() {
713
+ const data = this.parentDefinitionDataByTypeName.get(string_constants_1.EDFS_PUBLISH_RESULT);
617
714
  if (!data) {
618
715
  return true;
619
716
  }
@@ -636,6 +733,25 @@ class NormalizationFactory {
636
733
  }
637
734
  return true;
638
735
  }
736
+ isStreamConfigurationInputObjectValid(streamConfigurationInputData) {
737
+ if (streamConfigurationInputData.kind !== graphql_1.Kind.INPUT_OBJECT_TYPE_DEFINITION) {
738
+ return false;
739
+ }
740
+ if (streamConfigurationInputData.inputValueDataByValueName.size != 2) {
741
+ return false;
742
+ }
743
+ const requiredInputValueNames = new Set([string_constants_1.CONSUMER_NAME, string_constants_1.STREAM_NAME]);
744
+ for (const [inputValueName, inputValueData] of streamConfigurationInputData.inputValueDataByValueName) {
745
+ if (!requiredInputValueNames.has(inputValueName)) {
746
+ return false;
747
+ }
748
+ requiredInputValueNames.delete(inputValueName);
749
+ if ((0, merge_1.printTypeNode)(inputValueData.type) !== string_constants_1.NON_NULLABLE_STRING) {
750
+ return false;
751
+ }
752
+ }
753
+ return requiredInputValueNames.size < 1;
754
+ }
639
755
  validateEventDrivenSubgraph() {
640
756
  const errorMessages = [];
641
757
  const invalidEventsDirectiveDataByRootFieldPath = new Map();
@@ -665,11 +781,11 @@ class NormalizationFactory {
665
781
  this.validateEventDrivenObjectFields(data.fieldDataByFieldName, keyFieldNames, nonExternalKeyFieldNameByFieldPath, nonKeyFieldNameByFieldPath);
666
782
  }
667
783
  for (const [typeName, data] of this.parentDefinitionDataByTypeName) {
668
- if (data.kind !== graphql_1.Kind.OBJECT_TYPE_DEFINITION) {
784
+ // validate edfs__PublishResult and edfs__StreamConfiguration separately
785
+ if (typeName === string_constants_1.EDFS_PUBLISH_RESULT || typeName === string_constants_1.EDFS_STREAM_CONFIGURATION) {
669
786
  continue;
670
787
  }
671
- // validate PublishEventResult separately
672
- if (typeName === string_constants_1.PUBLISH_EVENT_RESULT) {
788
+ if (data.kind !== graphql_1.Kind.OBJECT_TYPE_DEFINITION) {
673
789
  continue;
674
790
  }
675
791
  // If a required events directive is returned, the parent type is a root type
@@ -686,14 +802,21 @@ class NormalizationFactory {
686
802
  this.validateEventDrivenKeyDefinition(typeName, invalidKeyFieldSetsByEntityTypeName);
687
803
  this.validateEventDrivenObjectFields(data.fieldDataByFieldName, keyFieldNames, nonExternalKeyFieldNameByFieldPath, nonKeyFieldNameByFieldPath);
688
804
  }
689
- if (!this.isPublishEventResultValid()) {
690
- errorMessages.push(errors_1.invalidPublishEventResultObjectErrorMessage);
805
+ if (!this.isEdfsPublishResultValid()) {
806
+ errorMessages.push(errors_1.invalidEdfsPublishResultObjectErrorMessage);
807
+ }
808
+ const streamConfigurationInputData = this.parentDefinitionDataByTypeName.get(string_constants_1.EDFS_STREAM_CONFIGURATION);
809
+ if (!streamConfigurationInputData) {
810
+ errorMessages.push(errors_1.undefinedStreamConfigurationInputErrorMessage);
811
+ }
812
+ else if (!this.isStreamConfigurationInputObjectValid(streamConfigurationInputData)) {
813
+ errorMessages.push(errors_1.invalidStreamConfigurationInputErrorMessage);
691
814
  }
692
815
  if (invalidEventsDirectiveDataByRootFieldPath.size > 0) {
693
816
  errorMessages.push((0, errors_1.invalidRootTypeFieldEventsDirectivesErrorMessage)(invalidEventsDirectiveDataByRootFieldPath));
694
817
  }
695
818
  if (invalidResponseTypeNameByMutationPath.size > 0) {
696
- errorMessages.push((0, errors_1.invalidEventsDrivenMutationResponseTypeErrorMessage)(invalidResponseTypeNameByMutationPath));
819
+ errorMessages.push((0, errors_1.invalidEventDrivenMutationResponseTypeErrorMessage)(invalidResponseTypeNameByMutationPath));
697
820
  }
698
821
  if (invalidResponseTypeStringByRootFieldPath.size > 0) {
699
822
  errorMessages.push((0, errors_1.invalidRootTypeFieldResponseTypesEventDrivenErrorMessage)(invalidResponseTypeStringByRootFieldPath));
@@ -767,6 +890,11 @@ class NormalizationFactory {
767
890
  }
768
891
  definitions.push(constants_1.SCOPE_SCALAR_DEFINITION);
769
892
  }
893
+ if (this.isEventDrivenSubgraph) {
894
+ for (const directiveDefinition of constants_1.EVENT_DRIVEN_DIRECTIVE_DEFINITIONS) {
895
+ definitions.push(directiveDefinition);
896
+ }
897
+ }
770
898
  for (const directiveDefinition of this.customDirectiveDefinitions.values()) {
771
899
  definitions.push(directiveDefinition);
772
900
  }