@graphql-tools/merge 6.2.9 → 6.2.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/es5/index.esm.js CHANGED
@@ -1,4 +1,4 @@
1
- import { __values, __read, __spread, __assign, __awaiter, __generator, __rest } from 'tslib';
1
+ import { __values, __read, __spreadArray, __assign, __awaiter, __generator, __rest } from 'tslib';
2
2
  import { mergeDeep, compareNodes, isNotEqual, getDocumentNodeFromSchema, createSchemaDefinition, asArray, getResolversFromSchema, SchemaDirectiveVisitor } from '@graphql-tools/utils/es5';
3
3
  import { getDescription, visit, print, Source, Kind, isSchema, parse, isScalarType, isSpecifiedScalarType, isIntrospectionType, isObjectType, isInterfaceType, isInputObjectType, isUnionType, isEnumType, buildSchema, buildASTSchema } from 'graphql';
4
4
  import { addResolversToSchema, addErrorLoggingToSchema } from '@graphql-tools/schema/es5';
@@ -74,7 +74,7 @@ function mergeResolvers(resolversDefinitions, options) {
74
74
  for (var _i = 0; _i < arguments.length; _i++) {
75
75
  args[_i] = arguments[_i];
76
76
  }
77
- var resultsOfFactories = resolversFactories.map(function (factory) { return factory.apply(void 0, __spread(args)); });
77
+ var resultsOfFactories = resolversFactories.map(function (factory) { return factory.apply(void 0, __spreadArray([], __read(args))); });
78
78
  return resolvers.concat(resultsOfFactories).reduce(mergeDeep, {});
79
79
  });
80
80
  }
@@ -199,12 +199,12 @@ function addDescription(cb) {
199
199
  }
200
200
  return prev[key];
201
201
  }, ancestors[0]);
202
- var key = __spread(keys, [parent.name.value]).join('.');
202
+ var key = __spreadArray(__spreadArray([], __read(keys)), [parent.name.value]).join('.');
203
203
  var items = [];
204
204
  if (commentsRegistry[key]) {
205
- items.push.apply(items, __spread(commentsRegistry[key]));
205
+ items.push.apply(items, __spreadArray([], __read(commentsRegistry[key])));
206
206
  }
207
- return join(__spread(items.map(printComment), [node.description, cb(node)]), '\n');
207
+ return join(__spreadArray(__spreadArray([], __read(items.map(printComment))), [node.description, cb(node)]), '\n');
208
208
  };
209
209
  }
210
210
  function indent(maybeString) {
@@ -407,7 +407,7 @@ function nameAlreadyExists(name, namesArr) {
407
407
  }
408
408
  function mergeArguments$1(a1, a2) {
409
409
  var e_1, _a;
410
- var result = __spread(a2);
410
+ var result = __spreadArray([], __read(a2));
411
411
  var _loop_1 = function (argument) {
412
412
  var existingIndex = result.findIndex(function (a) { return a.name.value === argument.name.value; });
413
413
  if (existingIndex > -1) {
@@ -464,7 +464,7 @@ function mergeDirectives(d1, d2, config) {
464
464
  var reverseOrder = config && config.reverseDirectives;
465
465
  var asNext = reverseOrder ? d1 : d2;
466
466
  var asFirst = reverseOrder ? d2 : d1;
467
- var result = deduplicateDirectives(__spread(asNext));
467
+ var result = deduplicateDirectives(__spreadArray([], __read(asNext)));
468
468
  var _loop_2 = function (directive) {
469
469
  if (directiveAlreadyExists(result, directive)) {
470
470
  var existingDirectiveIndex = result.findIndex(function (d) { return d.name.value === directive.name.value; });
@@ -503,7 +503,7 @@ function validateInputs(node, existingNode) {
503
503
  function mergeDirective(node, existingNode) {
504
504
  if (existingNode) {
505
505
  validateInputs(node, existingNode);
506
- return __assign(__assign({}, node), { locations: __spread(existingNode.locations, node.locations.filter(function (name) { return !nameAlreadyExists(name, existingNode.locations); })) });
506
+ return __assign(__assign({}, node), { locations: __spreadArray(__spreadArray([], __read(existingNode.locations)), __read(node.locations.filter(function (name) { return !nameAlreadyExists(name, existingNode.locations); }))) });
507
507
  }
508
508
  return node;
509
509
  }
@@ -553,7 +553,7 @@ function mergeEnumValues(first, second, config) {
553
553
  }
554
554
  finally { if (e_2) throw e_2.error; }
555
555
  }
556
- var result = __spread(enumValueMap.values());
556
+ var result = __spreadArray([], __read(enumValueMap.values()));
557
557
  if (config && config.sort) {
558
558
  result.sort(compareNodes);
559
559
  }
@@ -651,9 +651,9 @@ function printTypeNode(type) {
651
651
  return type.name.value;
652
652
  }
653
653
 
654
- function fieldAlreadyExists(fieldsArr, otherField) {
654
+ function fieldAlreadyExists(fieldsArr, otherField, config) {
655
655
  var result = fieldsArr.find(function (field) { return field.name.value === otherField.name.value; });
656
- if (result) {
656
+ if (result && !(config === null || config === void 0 ? void 0 : config.ignoreFieldConflicts)) {
657
657
  var t1 = extractType(result.type);
658
658
  var t2 = extractType(otherField.type);
659
659
  if (t1.name.value !== t2.name.value) {
@@ -664,18 +664,20 @@ function fieldAlreadyExists(fieldsArr, otherField) {
664
664
  }
665
665
  function mergeFields(type, f1, f2, config) {
666
666
  var e_1, _a;
667
- var result = __spread(f2);
667
+ var result = __spreadArray([], __read(f2));
668
668
  var _loop_1 = function (field) {
669
- if (fieldAlreadyExists(result, field)) {
669
+ if (fieldAlreadyExists(result, field, config)) {
670
670
  var existing = result.find(function (f) { return f.name.value === field.name.value; });
671
- if (config && config.throwOnConflict) {
672
- preventConflicts(type, existing, field);
673
- }
674
- else {
675
- preventConflicts(type, existing, field);
676
- }
677
- if (isNonNullTypeNode(field.type) && !isNonNullTypeNode(existing.type)) {
678
- existing.type = field.type;
671
+ if (!(config === null || config === void 0 ? void 0 : config.ignoreFieldConflicts)) {
672
+ if (config === null || config === void 0 ? void 0 : config.throwOnConflict) {
673
+ preventConflicts(type, existing, field);
674
+ }
675
+ else {
676
+ preventConflicts(type, existing, field);
677
+ }
678
+ if (isNonNullTypeNode(field.type) && !isNonNullTypeNode(existing.type)) {
679
+ existing.type = field.type;
680
+ }
679
681
  }
680
682
  existing.arguments = mergeArguments(field['arguments'] || [], existing.arguments || [], config);
681
683
  existing.directives = mergeDirectives(field.directives, existing.directives, config);
@@ -789,7 +791,7 @@ function alreadyExists(arr, other) {
789
791
  return !!arr.find(function (i) { return i.name.value === other.name.value; });
790
792
  }
791
793
  function mergeNamedTypeArray(first, second, config) {
792
- var result = __spread(second, first.filter(function (d) { return !alreadyExists(second, d); }));
794
+ var result = __spreadArray(__spreadArray([], __read(second)), __read(first.filter(function (d) { return !alreadyExists(second, d); })));
793
795
  if (config && config.sort) {
794
796
  result.sort(compareNodes);
795
797
  }
@@ -931,7 +933,7 @@ function mergeGraphQLTypes(types, config) {
931
933
  .map(function (ast) { return ast.definitions; })
932
934
  .reduce(function (defs, newDef) {
933
935
  if (newDef === void 0) { newDef = []; }
934
- return __spread(defs, newDef);
936
+ return __spreadArray(__spreadArray([], __read(defs)), __read(newDef));
935
937
  }, []);
936
938
  // XXX: right now we don't handle multiple schema definitions
937
939
  var schemaDef = allNodes.filter(isSchemaDefinition).reduce(function (def, node) {
@@ -967,7 +969,7 @@ function mergeGraphQLTypes(types, config) {
967
969
  if (!schemaDefinition) {
968
970
  return Object.values(mergedNodes);
969
971
  }
970
- return __spread(Object.values(mergedNodes), [parse(schemaDefinition).definitions[0]]);
972
+ return __spreadArray(__spreadArray([], __read(Object.values(mergedNodes))), [parse(schemaDefinition).definitions[0]]);
971
973
  }
972
974
 
973
975
  function travelSchemaPossibleExtensions(schema, hooks) {
@@ -1263,7 +1265,7 @@ function mergeSchemas(config) {
1263
1265
  }
1264
1266
  finally { if (e_1) throw e_1.error; }
1265
1267
  }
1266
- extractedResolvers.push.apply(extractedResolvers, __spread(ensureResolvers(config)));
1268
+ extractedResolvers.push.apply(extractedResolvers, __spreadArray([], __read(ensureResolvers(config))));
1267
1269
  var resolvers = mergeResolvers(extractedResolvers, config);
1268
1270
  var extensions = mergeExtensions(extractedExtensions);
1269
1271
  return makeSchema({ resolvers: resolvers, typeDefs: typeDefs, extensions: extensions }, config);
@@ -1283,7 +1285,7 @@ function mergeSchemasAsync(config) {
1283
1285
  Promise.all(config.schemas.map(function (schema) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
1284
1286
  return [2 /*return*/, getResolversFromSchema(schema)];
1285
1287
  }); }); })).then(function (extractedResolvers) {
1286
- return mergeResolvers(__spread(extractedResolvers, ensureResolvers(config)), config);
1288
+ return mergeResolvers(__spreadArray(__spreadArray([], __read(extractedResolvers)), __read(ensureResolvers(config))), config);
1287
1289
  }),
1288
1290
  Promise.all(config.schemas.map(function (schema) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
1289
1291
  return [2 /*return*/, extractExtensionsFromSchema(schema)];
@@ -1300,7 +1302,7 @@ function mergeSchemasAsync(config) {
1300
1302
  }
1301
1303
  function mergeTypes(_a) {
1302
1304
  var schemas = _a.schemas, typeDefs = _a.typeDefs, config = __rest(_a, ["schemas", "typeDefs"]);
1303
- return mergeTypeDefs(__spread(schemas, (typeDefs ? asArray(typeDefs) : [])), config);
1305
+ return mergeTypeDefs(__spreadArray(__spreadArray([], __read(schemas)), __read((typeDefs ? asArray(typeDefs) : []))), config);
1304
1306
  }
1305
1307
  function ensureResolvers(config) {
1306
1308
  return config.resolvers ? asArray(config.resolvers) : [];