@wundergraph/composition 0.62.2 → 0.63.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,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.COMPOSITION_VERSION = void 0;
4
- exports.COMPOSITION_VERSION = '0.62.2';
4
+ exports.COMPOSITION_VERSION = '0.63.0';
5
5
  //# sourceMappingURL=composition-version.js.map
@@ -183,3 +183,4 @@ export declare const INPUT_NODE_KINDS: Set<Kind>;
183
183
  export declare const OUTPUT_NODE_KINDS: Set<Kind>;
184
184
  export declare const INTERFACE_NODE_KINDS: Set<Kind>;
185
185
  export declare const NON_REPEATABLE_FEDERATED_DIRECTIVES: Set<string>;
186
+ export declare const VALID_PROVIDES_PARENT_KINDS: Set<Kind>;
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EXTERNAL = exports.EXECUTION = exports.ENUM_VALUE_UPPER = exports.ENUM_VALUE = exports.ENUM_UPPER = exports.ENUM = exports.ENTITY_UNION = exports.OPENFED_ENTITY_CACHE = exports.ENTITIES_FIELD = exports.ENTITIES = exports.EDFS_REDIS_SUBSCRIBE = exports.EDFS_REDIS_PUBLISH = exports.EDFS_NATS_STREAM_CONFIGURATION = exports.EDFS_PUBLISH_RESULT = exports.EDFS_NATS_SUBSCRIBE = exports.EDFS_NATS_REQUEST = exports.EDFS_NATS_PUBLISH = exports.EDFS_KAFKA_SUBSCRIBE = exports.EDFS_KAFKA_PUBLISH = exports.DIRECTIVE_DEFINITION = exports.DESCRIPTION_OVERRIDE = exports.DEPRECATED_DEFAULT_ARGUMENT_VALUE = exports.DEPRECATED = exports.DEFAULT_SUBSCRIPTION = exports.DEFAULT_QUERY = exports.DEFAULT_MUTATION = exports.DEFAULT_EDFS_PROVIDER_ID = exports.DEFAULT = exports.COST = exports.CONTEXT = exports.CONNECT_FIELD_RESOLVER = exports.CONSUMER_NAME = exports.CONSUMER_INACTIVE_THRESHOLD = exports.CONFIGURE_CHILD_DESCRIPTIONS = exports.CONFIGURE_DESCRIPTION = exports.CONDITION = exports.COMPOSE_DIRECTIVE = exports.CHANNELS = exports.CHANNEL = exports.OPENFED_CACHE_POPULATE = exports.OPENFED_CACHE_INVALIDATE = exports.BOOLEAN_SCALAR = exports.BOOLEAN = exports.ARGUMENT_DEFINITION_UPPER = exports.AUTHENTICATED = exports.ARGUMENT = exports.ANY_SCALAR = exports.AND_UPPER = exports.ASSUMED_SIZE = exports.AS = void 0;
4
4
  exports.PROVIDER_TYPE_KAFKA = exports.PROPAGATE = exports.MUTATION_UPPER = exports.MUTATION = exports.NUMBER = exports.MAX_AGE = exports.LITERAL_PERIOD = exports.LITERAL_NEW_LINE = exports.LITERAL_SPACE = exports.LITERAL_AT = exports.LIST = exports.LINK_PURPOSE = exports.LINK_IMPORT = exports.LIST_SIZE = exports.LINK = exports.LEVELS = exports.LEFT_PARENTHESIS = exports.KEY = exports.INTERFACE_OBJECT = exports.INTERFACE_UPPER = exports.INTERFACE = exports.INT_SCALAR = exports.INPUT_VALUE = exports.INPUT_OBJECT_UPPER = exports.INPUT_OBJECT = exports.INPUT_FIELD_DEFINITION_UPPER = exports.INPUT_FIELD = exports.INPUT = exports.INLINE_FRAGMENT_UPPER = exports.INLINE_FRAGMENT = exports.INACCESSIBLE = exports.IN_UPPER = exports.INCLUDE_HEADERS = exports.IMPORT = exports.ID_SCALAR = exports.HYPHEN_JOIN = exports.FROM = exports.FRAGMENT_SPREAD_UPPER = exports.FRAGMENT_DEFINITION_UPPER = exports.FOR = exports.FLOAT_SCALAR = exports.FIRST_ORDINAL = exports.FIELD_DEFINITION_UPPER = exports.FIELDS = exports.FIELD_SET_SCALAR = exports.FIELD_UPPER = exports.FIELD_PATH = exports.FIELD = exports.EXTENSIONS = exports.EXTENDS = void 0;
5
5
  exports.SPECIFIED_BY = exports.SLICING_ARGUMENTS = exports.SIZED_FIELDS = exports.SHAREABLE = exports.SHADOW_MODE = exports.SERVICE_FIELD = exports.SERVICE_OBJECT = exports.SEMANTIC_NON_NULL = exports.SELECTION_REPRESENTATION = exports.SECURITY = exports.SCOPE_SCALAR = exports.SCOPES = exports.SCHEMA_UPPER = exports.SCHEMA = exports.SCALAR_UPPER = exports.SCALAR = exports.RESOLVABLE = exports.REQUIRES_SCOPES = exports.REQUIRES = exports.REQUIRE_ONE_SLICING_ARGUMENT = exports.REQUIRE_FETCH_REASONS = exports.REQUEST = exports.REASON = exports.QUOTATION_JOIN = exports.QUERY_UPPER = exports.QUERY = exports.PUBLISH = exports.PROVIDES = exports.PROVIDER_ID = exports.PARENT_EXTENSION_DATA_MAP = exports.PARENT_DEFINITION_DATA_MAP = exports.PARENT_DEFINITION_DATA = exports.PARTIAL_CACHE_LOAD = exports.OVERRIDE = exports.OR_UPPER = exports.OBJECT_UPPER = exports.OBJECT = exports.OPERATION_TO_DEFAULT = exports.ONE_OF = exports.NULL = exports.NOT_UPPER = exports.NON_NULLABLE_STRING = exports.NON_NULLABLE_INT = exports.NON_NULLABLE_BOOLEAN = exports.NON_NULLABLE_EDFS_PUBLISH_EVENT_RESULT = exports.NEGATIVE_CACHE_TTL = exports.NAME = exports.NOT_APPLICABLE = exports.PROVIDER_TYPE_REDIS = exports.PROVIDER_TYPE_NATS = void 0;
6
- exports.NON_REPEATABLE_FEDERATED_DIRECTIVES = exports.INTERFACE_NODE_KINDS = exports.OUTPUT_NODE_KINDS = exports.INPUT_NODE_KINDS = exports.IGNORED_FIELDS = exports.INHERITABLE_DIRECTIVE_NAMES = exports.PERSISTED_CLIENT_DIRECTIVES = exports.AUTHORIZATION_DIRECTIVES = exports.ROOT_TYPE_NAMES = exports.EXECUTABLE_DIRECTIVE_LOCATIONS = exports.WEIGHT = exports.VARIABLE_DEFINITION_UPPER = exports.VALUES = exports.URL_LOWER = exports.UNION_UPPER = exports.UNION = exports.TYPENAME = exports.TOPICS = exports.TOPIC = exports.TAG = exports.SUCCESS = exports.SUBSCRIPTION_UPPER = exports.SUBSCRIBE = exports.SUBSCRIPTION_FILTER_VALUE = exports.SUBSCRIPTION_FILTER_CONDITION = exports.SUBSCRIPTION_FILTER = exports.SUBSCRIPTION_FIELD_CONDITION = exports.SUBSCRIPTION = exports.SUBJECTS = exports.SUBJECT = exports.STRING_SCALAR = exports.STRING = exports.STREAM_NAME = exports.STREAM_CONFIGURATION = void 0;
6
+ exports.VALID_PROVIDES_PARENT_KINDS = exports.NON_REPEATABLE_FEDERATED_DIRECTIVES = exports.INTERFACE_NODE_KINDS = exports.OUTPUT_NODE_KINDS = exports.INPUT_NODE_KINDS = exports.IGNORED_FIELDS = exports.INHERITABLE_DIRECTIVE_NAMES = exports.PERSISTED_CLIENT_DIRECTIVES = exports.AUTHORIZATION_DIRECTIVES = exports.ROOT_TYPE_NAMES = exports.EXECUTABLE_DIRECTIVE_LOCATIONS = exports.WEIGHT = exports.VARIABLE_DEFINITION_UPPER = exports.VALUES = exports.URL_LOWER = exports.UNION_UPPER = exports.UNION = exports.TYPENAME = exports.TOPICS = exports.TOPIC = exports.TAG = exports.SUCCESS = exports.SUBSCRIPTION_UPPER = exports.SUBSCRIBE = exports.SUBSCRIPTION_FILTER_VALUE = exports.SUBSCRIPTION_FILTER_CONDITION = exports.SUBSCRIPTION_FILTER = exports.SUBSCRIPTION_FIELD_CONDITION = exports.SUBSCRIPTION = exports.SUBJECTS = exports.SUBJECT = exports.STRING_SCALAR = exports.STRING = exports.STREAM_NAME = exports.STREAM_CONFIGURATION = void 0;
7
7
  const graphql_1 = require("graphql");
8
8
  exports.AS = 'as';
9
9
  exports.ASSUMED_SIZE = 'assumedSize';
@@ -207,4 +207,9 @@ exports.OUTPUT_NODE_KINDS = new Set([
207
207
  ]);
208
208
  exports.INTERFACE_NODE_KINDS = new Set([graphql_1.Kind.INTERFACE_TYPE_DEFINITION, graphql_1.Kind.INTERFACE_TYPE_EXTENSION]);
209
209
  exports.NON_REPEATABLE_FEDERATED_DIRECTIVES = new Set([exports.INACCESSIBLE, exports.ONE_OF, exports.SEMANTIC_NON_NULL]);
210
+ exports.VALID_PROVIDES_PARENT_KINDS = new Set([
211
+ graphql_1.Kind.INTERFACE_TYPE_DEFINITION,
212
+ graphql_1.Kind.OBJECT_TYPE_DEFINITION,
213
+ graphql_1.Kind.UNION_TYPE_DEFINITION,
214
+ ]);
210
215
  //# sourceMappingURL=string-constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"string-constants.js","sourceRoot":"","sources":["../../src/utils/string-constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"string-constants.js","sourceRoot":"","sources":["../../src/utils/string-constants.ts"],"names":[],"mappings":"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"}
@@ -7,11 +7,11 @@ import { type InvalidRootTypeFieldEventsDirectiveData } from '../../errors/types
7
7
  import { Graph } from '../../resolvability-graph/graph';
8
8
  import { type Warning } from '../../warnings/types';
9
9
  import { type NormalizationResult } from '../../normalization/types';
10
- import { type AddInputValueDataByNodeParams, type ComposeDirectiveNode, type ConditionalFieldSetValidationResult, type ExtractDirectiveArgumentDataResult, type FieldSetData, type FieldSetParentResult, type HandleCostDirectiveParams, type HandleListSizeDirectiveParams, type HandleOverrideDirectiveParams, type HandleRequiresScopesDirectiveParams, type HandleSemanticNonNullDirectiveParams, type KeyFieldSetData, type LinkImportData, type RecordDirectiveWeightOnFieldParams, type UpsertInputObjectResult, type ValidateDirectiveParams } from './types/types';
10
+ import { type AddInputValueDataByNodeParams, type ComposeDirectiveNode, type ConditionalFieldSetValidationResult, type ExtractDirectiveArgumentDataResult, type FieldSetData, type HandleCostDirectiveParams, type HandleListSizeDirectiveParams, type HandleOverrideDirectiveParams, type HandleRequiresScopesDirectiveParams, type HandleSemanticNonNullDirectiveParams, type KeyFieldSetData, type LinkImportData, type RecordDirectiveWeightOnFieldParams, type UpsertInputObjectResult, type ValidateDirectiveParams } from './types/types';
11
11
  import { type AbstractTypeName, type ArgumentName, type DirectiveName, type FieldName, type SubgraphName, type TypeName } from '../../types/types';
12
- import { type HandleFieldInheritableDirectivesParams, type NormalizationFactoryParams, type NormalizeSubgraphFromStringParams, type NormalizeSubgraphParams, type ValidateOneOfDirectiveParams } from './types/params';
12
+ import { type GetFieldSetParentParams, type HandleFieldInheritableDirectivesParams, type NormalizationFactoryParams, type NormalizeSubgraphFromStringParams, type NormalizeSubgraphParams, type ValidateOneOfDirectiveParams } from './types/params';
13
13
  import type { CompositionOptions } from '../../types/params';
14
- import { type SchemaNodeResult } from './types/results';
14
+ import { type FieldSetParentResult, type SchemaNodeResult } from './types/results';
15
15
  import { type AddDirectiveArgumentDataByNodeParams, type ExtractDirectiveArgumentDataParams } from '../../directive-definition-data/types/params';
16
16
  import { type DirectiveArgumentData, type DirectiveDefinitionData } from '../../directive-definition-data/types/types';
17
17
  export declare function normalizeSubgraphFromString({ noLocation, options, sdlString, }: NormalizeSubgraphFromStringParams): NormalizationResult;
@@ -101,8 +101,8 @@ export declare class NormalizationFactory {
101
101
  extractUnionMembers(node: UnionTypeNode, membersByMemberTypeName: Map<string, NamedTypeNode>): Map<string, NamedTypeNode>;
102
102
  upsertUnionByNode(node: UnionTypeNode, isRealExtension?: boolean): void;
103
103
  extractKeyFieldSets(node: CompositeOutputNode, keyFieldSetDataByFieldSet: Map<string, KeyFieldSetData>): void;
104
- getFieldSetParent(isProvides: boolean, parentData: CompositeOutputData, fieldName: string, parentTypeName: string): FieldSetParentResult;
105
- validateConditionalFieldSet(selectionSetParentData: CompositeOutputData, fieldSet: string, directiveFieldName: string, isProvides: boolean, directiveParentTypeName: string): ConditionalFieldSetValidationResult;
104
+ getFieldSetParent({ isProvides, parentData, fieldName, fieldSet, parentTypeName, }: GetFieldSetParentParams): FieldSetParentResult;
105
+ validateConditionalFieldSet(selectionSetParentData: CompositeOutputData | UnionDefinitionData, fieldSet: string, directiveFieldName: string, isProvides: boolean, directiveParentTypeName: string): ConditionalFieldSetValidationResult;
106
106
  validateProvidesOrRequires(parentData: CompositeOutputData, fieldSetByFieldName: Map<string, string>, isProvides: boolean): RequiredFieldConfiguration[] | undefined;
107
107
  validateInterfaceImplementations(data: CompositeOutputData): void;
108
108
  handleAuthenticatedDirective(data: NodeData | SchemaData, parentTypeName: string): void;
@@ -1153,40 +1153,57 @@ class NormalizationFactory {
1153
1153
  }
1154
1154
  }
1155
1155
  }
1156
- getFieldSetParent(isProvides, parentData, fieldName, parentTypeName) {
1156
+ getFieldSetParent({ isProvides, parentData, fieldName, fieldSet, parentTypeName, }) {
1157
1157
  if (!isProvides) {
1158
- return { fieldSetParentData: parentData };
1158
+ return {
1159
+ data: parentData,
1160
+ success: true,
1161
+ };
1159
1162
  }
1160
1163
  const fieldData = (0, utils_5.getOrThrowError)(parentData.fieldDataByName, fieldName, `${parentTypeName}.fieldDataByFieldName`);
1161
1164
  const fieldNamedTypeName = (0, ast_1.getTypeNodeNamedTypeName)(fieldData.node.type);
1162
1165
  const fieldCoords = `${parentTypeName}.${fieldName}`;
1163
1166
  if (constants_1.BASE_SCALARS.has(fieldNamedTypeName)) {
1164
1167
  return {
1165
- errorString: (0, errors_1.incompatibleTypeWithProvidesErrorMessage)({
1168
+ error: (0, errors_1.incompatibleTypeWithProvidesError)({
1166
1169
  fieldCoords,
1167
1170
  responseType: fieldNamedTypeName,
1168
1171
  subgraphName: this.subgraphName,
1169
1172
  }),
1173
+ success: false,
1170
1174
  };
1171
1175
  }
1172
1176
  const namedTypeData = this.parentDefinitionDataByTypeName.get(fieldNamedTypeName);
1173
1177
  // This error should never happen
1174
1178
  if (!namedTypeData) {
1175
1179
  return {
1176
- errorString: (0, errors_1.unknownNamedTypeErrorMessage)(fieldCoords, fieldNamedTypeName),
1180
+ error: (0, errors_1.unknownNamedTypeError)(fieldCoords, fieldNamedTypeName),
1181
+ success: false,
1177
1182
  };
1178
1183
  }
1179
1184
  // @TODO handle abstract types and fragments
1180
- if (namedTypeData.kind !== graphql_1.Kind.INTERFACE_TYPE_DEFINITION && namedTypeData.kind !== graphql_1.Kind.OBJECT_TYPE_DEFINITION) {
1181
- return {
1182
- errorString: (0, errors_1.incompatibleTypeWithProvidesErrorMessage)({
1185
+ if ((0, utils_1.isValidProvidesParentData)(namedTypeData)) {
1186
+ if ((0, utils_3.isUnionDefinitionData)(namedTypeData)) {
1187
+ this.warnings.push((0, warnings_1.providesOnUnionWarning)({
1183
1188
  fieldCoords,
1184
- responseType: fieldNamedTypeName,
1189
+ fieldSet,
1190
+ namedTypeName: fieldNamedTypeName,
1185
1191
  subgraphName: this.subgraphName,
1186
- }),
1192
+ }));
1193
+ }
1194
+ return {
1195
+ data: namedTypeData,
1196
+ success: true,
1187
1197
  };
1188
1198
  }
1189
- return { fieldSetParentData: namedTypeData };
1199
+ return {
1200
+ error: (0, errors_1.incompatibleTypeWithProvidesError)({
1201
+ fieldCoords,
1202
+ responseType: fieldNamedTypeName,
1203
+ subgraphName: this.subgraphName,
1204
+ }),
1205
+ success: false,
1206
+ };
1190
1207
  }
1191
1208
  #handleNonExternalConditionalField({ currentFieldCoords, directiveCoords, directiveName, fieldSet, }) {
1192
1209
  if (this.isSubgraphVersionTwo) {
@@ -1364,10 +1381,6 @@ class NormalizationFactory {
1364
1381
  shouldDefineSelectionSet = true;
1365
1382
  return;
1366
1383
  }
1367
- if (!(0, utils_1.isKindAbstract)(parentData.kind)) {
1368
- errorMessages.push((0, errors_1.invalidInlineFragmentTypeErrorMessage)(fieldSet, fieldCoordsPath, typeConditionName, parentTypeName));
1369
- return graphql_1.BREAK;
1370
- }
1371
1384
  const fragmentNamedTypeData = nf.parentDefinitionDataByTypeName.get(typeConditionName);
1372
1385
  if (!fragmentNamedTypeData) {
1373
1386
  errorMessages.push((0, errors_1.unknownInlineFragmentTypeConditionErrorMessage)(fieldSet, fieldCoordsPath, parentTypeName, typeConditionName));
@@ -1376,13 +1389,31 @@ class NormalizationFactory {
1376
1389
  shouldDefineSelectionSet = true;
1377
1390
  switch (fragmentNamedTypeData.kind) {
1378
1391
  case graphql_1.Kind.INTERFACE_TYPE_DEFINITION: {
1379
- if (!fragmentNamedTypeData.implementedInterfaceTypeNames.has(parentTypeName)) {
1392
+ // The enclosing type is an Object
1393
+ if (!(0, utils_1.isKindAbstract)(parentData.kind)) {
1394
+ if (!(0, utils_3.isObjectDefinitionData)(parentData) ||
1395
+ !parentData.implementedInterfaceTypeNames.has(typeConditionName)) {
1396
+ break;
1397
+ }
1398
+ parentDatas.push(fragmentNamedTypeData);
1399
+ return;
1400
+ }
1401
+ // The enclosing type is an Interface or Union
1402
+ const concreteTypeNames = nf.concreteTypeNamesByAbstractTypeName.get(typeConditionName);
1403
+ const parentConcreteTypeNames = nf.concreteTypeNamesByAbstractTypeName.get(parentData.name);
1404
+ if (!concreteTypeNames ||
1405
+ !parentConcreteTypeNames ||
1406
+ parentConcreteTypeNames.isDisjointFrom(concreteTypeNames)) {
1380
1407
  break;
1381
1408
  }
1382
1409
  parentDatas.push(fragmentNamedTypeData);
1383
1410
  return;
1384
1411
  }
1385
1412
  case graphql_1.Kind.OBJECT_TYPE_DEFINITION: {
1413
+ if (!(0, utils_1.isKindAbstract)(parentData.kind)) {
1414
+ errorMessages.push((0, errors_1.invalidInlineFragmentTypeErrorMessage)(fieldSet, fieldCoordsPath, typeConditionName, parentTypeName));
1415
+ return graphql_1.BREAK;
1416
+ }
1386
1417
  const concreteTypeNames = nf.concreteTypeNamesByAbstractTypeName.get(parentTypeName);
1387
1418
  if (!concreteTypeNames || !concreteTypeNames.has(typeConditionName)) {
1388
1419
  break;
@@ -1391,6 +1422,24 @@ class NormalizationFactory {
1391
1422
  return;
1392
1423
  }
1393
1424
  case graphql_1.Kind.UNION_TYPE_DEFINITION: {
1425
+ const concreteTypeNames = nf.concreteTypeNamesByAbstractTypeName.get(typeConditionName);
1426
+ if (!concreteTypeNames) {
1427
+ break;
1428
+ }
1429
+ // The enclosing type is an Object
1430
+ if (!(0, utils_1.isKindAbstract)(parentData.kind)) {
1431
+ // The enclosing Object is a valid part of the Union
1432
+ if (concreteTypeNames.has(parentTypeName)) {
1433
+ parentDatas.push(fragmentNamedTypeData);
1434
+ return;
1435
+ }
1436
+ break;
1437
+ }
1438
+ // The enclosing type is an Interface or Union; fetch its implementations/members respectively.
1439
+ const parentConcreteTypeNames = nf.concreteTypeNamesByAbstractTypeName.get(parentTypeName);
1440
+ if (!parentConcreteTypeNames || parentConcreteTypeNames.isDisjointFrom(concreteTypeNames)) {
1441
+ break;
1442
+ }
1394
1443
  parentDatas.push(fragmentNamedTypeData);
1395
1444
  return;
1396
1445
  }
@@ -1399,7 +1448,7 @@ class NormalizationFactory {
1399
1448
  return graphql_1.BREAK;
1400
1449
  }
1401
1450
  }
1402
- errorMessages.push((0, errors_1.invalidInlineFragmentTypeConditionErrorMessage)(fieldSet, fieldCoordsPath, typeConditionName, (0, utils_5.kindToNodeType)(parentData.kind), parentTypeName));
1451
+ errorMessages.push((0, errors_1.invalidInlineFragmentTypeConditionErrorMessage)(fieldSet, fieldCoordsPath, typeConditionName, (0, utils_5.kindToNodeType)(parentData.kind), parentTypeName, (0, utils_5.kindToNodeType)(fragmentNamedTypeData.kind)));
1403
1452
  return graphql_1.BREAK;
1404
1453
  },
1405
1454
  },
@@ -1466,16 +1515,19 @@ class NormalizationFactory {
1466
1515
  Consequently, at that time, it is unknown whether the named type is an entity.
1467
1516
  If it isn't, the @provides directive does not make sense and can be ignored.
1468
1517
  */
1469
- const { fieldSetParentData, errorString } = this.getFieldSetParent(isProvides, parentData, fieldName, parentTypeName);
1470
- const fieldCoords = `${parentTypeName}.${fieldName}`;
1471
- if (errorString) {
1472
- allErrorMessages.push(errorString);
1473
- continue;
1474
- }
1475
- if (!fieldSetParentData) {
1518
+ const result = this.getFieldSetParent({
1519
+ fieldName,
1520
+ fieldSet,
1521
+ isProvides,
1522
+ parentData,
1523
+ parentTypeName,
1524
+ });
1525
+ if (!result.success) {
1526
+ allErrorMessages.push(result.error.message);
1476
1527
  continue;
1477
1528
  }
1478
- const { errorMessages, configuration } = this.validateConditionalFieldSet(fieldSetParentData, fieldSet, fieldName, isProvides, parentTypeName);
1529
+ const fieldCoords = `${parentTypeName}.${fieldName}`;
1530
+ const { errorMessages, configuration } = this.validateConditionalFieldSet(result.data, fieldSet, fieldName, isProvides, parentTypeName);
1479
1531
  /*
1480
1532
  * It is possible to return no error messages nor configuration if the @provides or @requires directive is
1481
1533
  * considered completely redundant, i.e.,: