@graphql-tools/delegate 7.1.1 → 7.1.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@graphql-tools/delegate/es5",
3
- "version": "7.1.1",
3
+ "version": "7.1.2",
4
4
  "description": "A set of utils for faster development of GraphQL tools",
5
5
  "sideEffects": false,
6
6
  "peerDependencies": {
@@ -13,7 +13,7 @@
13
13
  "@graphql-tools/utils": "^7.7.1",
14
14
  "dataloader": "2.0.0",
15
15
  "is-promise": "4.0.0",
16
- "tslib": "~2.1.0"
16
+ "tslib": "~2.2.0"
17
17
  },
18
18
  "repository": {
19
19
  "type": "git",
package/es5/types.d.ts CHANGED
@@ -103,14 +103,17 @@ export interface SubschemaConfig<K = any, V = any, C = K, TContext = Record<stri
103
103
  batch?: boolean;
104
104
  batchingOptions?: BatchingOptions<K, V, C>;
105
105
  }
106
- export interface MergedTypeConfig<K = any, V = any, TContext = Record<string, any>> extends MergedTypeResolverOptions<K, V> {
107
- selectionSet?: string;
106
+ export interface MergedTypeConfig<K = any, V = any, TContext = Record<string, any>> extends MergedTypeEntryPoint<K, V, TContext> {
107
+ entryPoints?: Array<MergedTypeEntryPoint>;
108
108
  fields?: Record<string, MergedFieldConfig>;
109
109
  computedFields?: Record<string, {
110
110
  selectionSet?: string;
111
111
  }>;
112
- key?: (originalResult: any) => K;
113
112
  canonical?: boolean;
113
+ }
114
+ export interface MergedTypeEntryPoint<K = any, V = any, TContext = Record<string, any>> extends MergedTypeResolverOptions<K, V> {
115
+ selectionSet?: string;
116
+ key?: (originalResult: any) => K;
114
117
  resolve?: MergedTypeResolver<TContext>;
115
118
  }
116
119
  export interface MergedTypeResolverOptions<K = any, V = any> {
package/index.cjs.js CHANGED
@@ -236,9 +236,12 @@ function cloneSubschemaConfig(subschemaConfig) {
236
236
  if (newSubschemaConfig.merge != null) {
237
237
  newSubschemaConfig.merge = { ...subschemaConfig.merge };
238
238
  Object.keys(newSubschemaConfig.merge).forEach(typeName => {
239
- newSubschemaConfig.merge[typeName] = { ...subschemaConfig.merge[typeName] };
240
- const fields = newSubschemaConfig.merge[typeName].fields;
241
- if (fields != null) {
239
+ const mergedTypeConfig = (newSubschemaConfig.merge[typeName] = { ...subschemaConfig.merge[typeName] });
240
+ if (mergedTypeConfig.entryPoints != null) {
241
+ mergedTypeConfig.entryPoints = mergedTypeConfig.entryPoints.map(entryPoint => ({ ...entryPoint }));
242
+ }
243
+ if (mergedTypeConfig.fields != null) {
244
+ const fields = (mergedTypeConfig.fields = { ...mergedTypeConfig.fields });
242
245
  Object.keys(fields).forEach(fieldName => {
243
246
  fields[fieldName] = { ...fields[fieldName] };
244
247
  });