@graphql-tools/delegate 10.2.5 → 10.2.6-alpha-8a518b5a83e07bd2eea5e9e3bd5dcd80c2f7b5eb
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/CHANGELOG.md +11 -0
- package/dist/index.cjs +14 -6
- package/dist/index.d.cts +6 -3
- package/dist/index.d.ts +6 -3
- package/dist/index.js +15 -9
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# @graphql-tools/delegate
|
|
2
2
|
|
|
3
|
+
## 10.2.6-alpha-8a518b5a83e07bd2eea5e9e3bd5dcd80c2f7b5eb
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#268](https://github.com/graphql-hive/gateway/pull/268) [`6111e73`](https://github.com/graphql-hive/gateway/commit/6111e733371982027c1b572d8451889ac6f266ed) Thanks [@ardatan](https://github.com/ardatan)! - dependencies updates:
|
|
8
|
+
|
|
9
|
+
- Updated dependency [`dataloader@^2.2.3` ↗︎](https://www.npmjs.com/package/dataloader/v/2.2.3) (from `^2.2.2`, in `dependencies`)
|
|
10
|
+
|
|
11
|
+
- Updated dependencies [[`6111e73`](https://github.com/graphql-hive/gateway/commit/6111e733371982027c1b572d8451889ac6f266ed)]:
|
|
12
|
+
- @graphql-tools/batch-execute@9.0.9-alpha-8a518b5a83e07bd2eea5e9e3bd5dcd80c2f7b5eb
|
|
13
|
+
|
|
3
14
|
## 10.2.5
|
|
4
15
|
|
|
5
16
|
### Patch Changes
|
package/dist/index.cjs
CHANGED
|
@@ -558,6 +558,13 @@ function getDocumentMetadata(document) {
|
|
|
558
558
|
};
|
|
559
559
|
}
|
|
560
560
|
|
|
561
|
+
const getTypeInfo = utils.memoize1(function getTypeInfo2(schema) {
|
|
562
|
+
return new graphql.TypeInfo(schema);
|
|
563
|
+
});
|
|
564
|
+
const getTypeInfoWithType = utils.memoize2(function getTypeInfoWithType2(schema, type) {
|
|
565
|
+
return graphql.versionInfo.major < 16 ? new graphql.TypeInfo(schema, void 0, type) : new graphql.TypeInfo(schema, type);
|
|
566
|
+
});
|
|
567
|
+
|
|
561
568
|
function finalizeGatewayDocument(targetSchema, fragments, operations, onOverlappingAliases, delegationContext) {
|
|
562
569
|
let usedVariables = [];
|
|
563
570
|
let usedFragments = [];
|
|
@@ -643,7 +650,7 @@ function finalizeGatewayDocument(targetSchema, fragments, operations, onOverlapp
|
|
|
643
650
|
};
|
|
644
651
|
const stitchingInfo = delegationContext.info?.schema?.extensions?.["stitchingInfo"];
|
|
645
652
|
if (stitchingInfo != null) {
|
|
646
|
-
const typeInfo =
|
|
653
|
+
const typeInfo = getTypeInfo(targetSchema);
|
|
647
654
|
newDocument = graphql.visit(
|
|
648
655
|
newDocument,
|
|
649
656
|
graphql.visitWithTypeInfo(typeInfo, {
|
|
@@ -886,7 +893,7 @@ const variablesVisitorKeys = {
|
|
|
886
893
|
function finalizeSelectionSet(schema, type, validFragments, selectionSet, onOverlappingAliases) {
|
|
887
894
|
const usedFragments = [];
|
|
888
895
|
const usedVariables = [];
|
|
889
|
-
const typeInfo =
|
|
896
|
+
const typeInfo = getTypeInfoWithType(schema, type);
|
|
890
897
|
const seenNonNullableMap = /* @__PURE__ */ new WeakMap();
|
|
891
898
|
const seenNullableMap = /* @__PURE__ */ new WeakMap();
|
|
892
899
|
const filteredSelectionSet = graphql.visit(
|
|
@@ -1157,7 +1164,7 @@ function prepareGatewayDocument(originalDocument, transformedSchema, returnType,
|
|
|
1157
1164
|
fragmentNames,
|
|
1158
1165
|
possibleTypesMap
|
|
1159
1166
|
);
|
|
1160
|
-
const typeInfo =
|
|
1167
|
+
const typeInfo = getTypeInfo(transformedSchema);
|
|
1161
1168
|
const expandedDocument = {
|
|
1162
1169
|
kind: graphql.Kind.DOCUMENT,
|
|
1163
1170
|
definitions: [...operations, ...fragments, ...expandedFragments]
|
|
@@ -1547,7 +1554,7 @@ function wrapConcreteTypes(returnType, targetSchema, document) {
|
|
|
1547
1554
|
possibleTypes = [namedType];
|
|
1548
1555
|
}
|
|
1549
1556
|
const rootTypeNames = utils.getRootTypeNames(targetSchema);
|
|
1550
|
-
const typeInfo =
|
|
1557
|
+
const typeInfo = getTypeInfo(targetSchema);
|
|
1551
1558
|
const visitorKeys = {
|
|
1552
1559
|
Document: ["definitions"],
|
|
1553
1560
|
OperationDefinition: ["selectionSet"],
|
|
@@ -2010,7 +2017,7 @@ function handleFlattenedParent(flattenedParent, leftOverParent, possibleSubschem
|
|
|
2010
2017
|
sourceSubschema,
|
|
2011
2018
|
info.variableValues != null && Object.keys(info.variableValues).length > 0 ? info.variableValues : EMPTY_OBJECT,
|
|
2012
2019
|
info.fragments != null && Object.keys(info.fragments).length > 0 ? info.fragments : EMPTY_OBJECT,
|
|
2013
|
-
|
|
2020
|
+
getActualFieldNodes(fieldNode),
|
|
2014
2021
|
context,
|
|
2015
2022
|
info
|
|
2016
2023
|
);
|
|
@@ -2205,7 +2212,6 @@ function flattenPromise(data) {
|
|
|
2205
2212
|
}
|
|
2206
2213
|
return data;
|
|
2207
2214
|
}
|
|
2208
|
-
const memoizedAsArray = utils.memoize1(utils.asArray);
|
|
2209
2215
|
|
|
2210
2216
|
function isSubschemaConfig(value) {
|
|
2211
2217
|
return Boolean(value?.schema);
|
|
@@ -2685,6 +2691,8 @@ exports.getActualFieldNodes = getActualFieldNodes;
|
|
|
2685
2691
|
exports.getDelegatingOperation = getDelegatingOperation;
|
|
2686
2692
|
exports.getPlanLeftOverFromParent = getPlanLeftOverFromParent;
|
|
2687
2693
|
exports.getSubschema = getSubschema;
|
|
2694
|
+
exports.getTypeInfo = getTypeInfo;
|
|
2695
|
+
exports.getTypeInfoWithType = getTypeInfoWithType;
|
|
2688
2696
|
exports.getUnpathedErrors = getUnpathedErrors;
|
|
2689
2697
|
exports.handleResolverResult = handleResolverResult;
|
|
2690
2698
|
exports.isExternalObject = isExternalObject;
|
package/dist/index.d.cts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ExecutionRequest, ExecutionResult, Executor, MaybePromise, PromiseWithResolvers } from '@graphql-tools/utils';
|
|
1
|
+
import { ExecutionRequest, ExecutionResult, Executor, MaybePromise, PromiseWithResolvers, Maybe } from '@graphql-tools/utils';
|
|
2
2
|
export { createDeferred } from '@graphql-tools/utils';
|
|
3
3
|
import * as graphql from 'graphql';
|
|
4
|
-
import { GraphQLSchema, OperationTypeNode, GraphQLResolveInfo, GraphQLOutputType, GraphQLError, SelectionSetNode, FieldNode, GraphQLObjectType, FragmentDefinitionNode, VariableDefinitionNode, GraphQLNamedType, GraphQLFieldResolver, GraphQLNamedOutputType, GraphQLInterfaceType, SelectionNode, GraphQLField } from 'graphql';
|
|
4
|
+
import { GraphQLSchema, OperationTypeNode, GraphQLResolveInfo, GraphQLOutputType, GraphQLError, SelectionSetNode, FieldNode, GraphQLObjectType, FragmentDefinitionNode, VariableDefinitionNode, GraphQLNamedType, GraphQLFieldResolver, GraphQLNamedOutputType, GraphQLInterfaceType, SelectionNode, GraphQLField, TypeInfo, GraphQLType } from 'graphql';
|
|
5
5
|
import DataLoader from 'dataloader';
|
|
6
6
|
|
|
7
7
|
declare const UNPATHED_ERRORS_SYMBOL: unique symbol;
|
|
@@ -222,4 +222,7 @@ declare const leftOverByDelegationPlan: WeakMap<Map<Subschema<any, any, any, Rec
|
|
|
222
222
|
declare const PLAN_LEFT_OVER: unique symbol;
|
|
223
223
|
declare function getPlanLeftOverFromParent(parent: any): DelegationPlanLeftOver | undefined;
|
|
224
224
|
|
|
225
|
-
|
|
225
|
+
declare const getTypeInfo: (schema: GraphQLSchema) => TypeInfo;
|
|
226
|
+
declare const getTypeInfoWithType: (schema: GraphQLSchema, type: Maybe<GraphQLType>) => TypeInfo;
|
|
227
|
+
|
|
228
|
+
export { type BatchingOptions, type CreateProxyingResolverFn, type Deferred, type DelegationContext, type DelegationPlanBuilder, type DelegationPlanLeftOver, EMPTY_ARRAY, EMPTY_OBJECT, type ExternalObject, FIELD_SUBSCHEMA_MAP_SYMBOL, type ICreateProxyingResolverOptions, type ICreateRequest, type IDelegateRequestOptions, type IDelegateToSchemaOptions, type MergedFieldConfig, type MergedTypeConfig, type MergedTypeEntryPoint, type MergedTypeInfo, type MergedTypeResolver, type MergedTypeResolverOptions, OBJECT_SUBSCHEMA_SYMBOL, PLAN_LEFT_OVER, type RequestTransform, type ResultTransform, type SchemaTransform, type StitchingInfo, Subschema, type SubschemaConfig, type Transform, Transformer, UNPATHED_ERRORS_SYMBOL, annotateExternalObject, applySchemaTransforms, cloneSubschemaConfig, createDefaultExecutor, createRequest, defaultMergedResolver, delegateRequest, delegateToSchema, extractUnavailableFields, extractUnavailableFieldsFromSelectionSet, getActualFieldNodes, getDelegatingOperation, getPlanLeftOverFromParent, getSubschema, getTypeInfo, getTypeInfoWithType, getUnpathedErrors, handleResolverResult, isExternalObject, isSubschema, isSubschemaConfig, leftOverByDelegationPlan, mergeFields, resolveExternalValue, subtractSelectionSets };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ExecutionRequest, ExecutionResult, Executor, MaybePromise, PromiseWithResolvers } from '@graphql-tools/utils';
|
|
1
|
+
import { ExecutionRequest, ExecutionResult, Executor, MaybePromise, PromiseWithResolvers, Maybe } from '@graphql-tools/utils';
|
|
2
2
|
export { createDeferred } from '@graphql-tools/utils';
|
|
3
3
|
import * as graphql from 'graphql';
|
|
4
|
-
import { GraphQLSchema, OperationTypeNode, GraphQLResolveInfo, GraphQLOutputType, GraphQLError, SelectionSetNode, FieldNode, GraphQLObjectType, FragmentDefinitionNode, VariableDefinitionNode, GraphQLNamedType, GraphQLFieldResolver, GraphQLNamedOutputType, GraphQLInterfaceType, SelectionNode, GraphQLField } from 'graphql';
|
|
4
|
+
import { GraphQLSchema, OperationTypeNode, GraphQLResolveInfo, GraphQLOutputType, GraphQLError, SelectionSetNode, FieldNode, GraphQLObjectType, FragmentDefinitionNode, VariableDefinitionNode, GraphQLNamedType, GraphQLFieldResolver, GraphQLNamedOutputType, GraphQLInterfaceType, SelectionNode, GraphQLField, TypeInfo, GraphQLType } from 'graphql';
|
|
5
5
|
import DataLoader from 'dataloader';
|
|
6
6
|
|
|
7
7
|
declare const UNPATHED_ERRORS_SYMBOL: unique symbol;
|
|
@@ -222,4 +222,7 @@ declare const leftOverByDelegationPlan: WeakMap<Map<Subschema<any, any, any, Rec
|
|
|
222
222
|
declare const PLAN_LEFT_OVER: unique symbol;
|
|
223
223
|
declare function getPlanLeftOverFromParent(parent: any): DelegationPlanLeftOver | undefined;
|
|
224
224
|
|
|
225
|
-
|
|
225
|
+
declare const getTypeInfo: (schema: GraphQLSchema) => TypeInfo;
|
|
226
|
+
declare const getTypeInfoWithType: (schema: GraphQLSchema, type: Maybe<GraphQLType>) => TypeInfo;
|
|
227
|
+
|
|
228
|
+
export { type BatchingOptions, type CreateProxyingResolverFn, type Deferred, type DelegationContext, type DelegationPlanBuilder, type DelegationPlanLeftOver, EMPTY_ARRAY, EMPTY_OBJECT, type ExternalObject, FIELD_SUBSCHEMA_MAP_SYMBOL, type ICreateProxyingResolverOptions, type ICreateRequest, type IDelegateRequestOptions, type IDelegateToSchemaOptions, type MergedFieldConfig, type MergedTypeConfig, type MergedTypeEntryPoint, type MergedTypeInfo, type MergedTypeResolver, type MergedTypeResolverOptions, OBJECT_SUBSCHEMA_SYMBOL, PLAN_LEFT_OVER, type RequestTransform, type ResultTransform, type SchemaTransform, type StitchingInfo, Subschema, type SubschemaConfig, type Transform, Transformer, UNPATHED_ERRORS_SYMBOL, annotateExternalObject, applySchemaTransforms, cloneSubschemaConfig, createDefaultExecutor, createRequest, defaultMergedResolver, delegateRequest, delegateToSchema, extractUnavailableFields, extractUnavailableFieldsFromSelectionSet, getActualFieldNodes, getDelegatingOperation, getPlanLeftOverFromParent, getSubschema, getTypeInfo, getTypeInfoWithType, getUnpathedErrors, handleResolverResult, isExternalObject, isSubschema, isSubschemaConfig, leftOverByDelegationPlan, mergeFields, resolveExternalValue, subtractSelectionSets };
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { memoize2, memoize1, mapMaybePromise, collectFields, relocatedError, mergeDeep, pathToArray, isPromise, getResponseKeyFromInfo, getDefinedRootType, createVariableNameGenerator, updateArgument, serializeInputValue, createGraphQLError, implementsAbstractType, getRootTypeNames, createDeferred,
|
|
1
|
+
import { memoize2, memoize1, mapMaybePromise, collectFields, relocatedError, mergeDeep, pathToArray, isPromise, getResponseKeyFromInfo, getDefinedRootType, createVariableNameGenerator, updateArgument, serializeInputValue, createGraphQLError, implementsAbstractType, getRootTypeNames, createDeferred, isAsyncIterable, mapAsyncIterator, getOperationASTFromRequest } from '@graphql-tools/utils';
|
|
2
2
|
export { createDeferred } from '@graphql-tools/utils';
|
|
3
|
-
import { GraphQLError, locatedError, isAbstractType, getNullableType, isLeafType, isCompositeType, isListType, responsePathAsArray, Kind, TypeInfo, visit, visitWithTypeInfo,
|
|
3
|
+
import { GraphQLError, locatedError, isAbstractType, getNullableType, isLeafType, isCompositeType, isListType, responsePathAsArray, Kind, TypeInfo, versionInfo, visit, visitWithTypeInfo, isObjectType, isInterfaceType, isUnionType, getNamedType, isNullableType, typeFromAST, defaultFieldResolver, validate } from 'graphql';
|
|
4
4
|
import { CRITICAL_ERROR, normalizedExecutor } from '@graphql-tools/executor';
|
|
5
5
|
import { getBatchingExecutor } from '@graphql-tools/batch-execute';
|
|
6
6
|
import { Repeater } from '@repeaterjs/repeater';
|
|
@@ -557,6 +557,13 @@ function getDocumentMetadata(document) {
|
|
|
557
557
|
};
|
|
558
558
|
}
|
|
559
559
|
|
|
560
|
+
const getTypeInfo = memoize1(function getTypeInfo2(schema) {
|
|
561
|
+
return new TypeInfo(schema);
|
|
562
|
+
});
|
|
563
|
+
const getTypeInfoWithType = memoize2(function getTypeInfoWithType2(schema, type) {
|
|
564
|
+
return versionInfo.major < 16 ? new TypeInfo(schema, void 0, type) : new TypeInfo(schema, type);
|
|
565
|
+
});
|
|
566
|
+
|
|
560
567
|
function finalizeGatewayDocument(targetSchema, fragments, operations, onOverlappingAliases, delegationContext) {
|
|
561
568
|
let usedVariables = [];
|
|
562
569
|
let usedFragments = [];
|
|
@@ -642,7 +649,7 @@ function finalizeGatewayDocument(targetSchema, fragments, operations, onOverlapp
|
|
|
642
649
|
};
|
|
643
650
|
const stitchingInfo = delegationContext.info?.schema?.extensions?.["stitchingInfo"];
|
|
644
651
|
if (stitchingInfo != null) {
|
|
645
|
-
const typeInfo =
|
|
652
|
+
const typeInfo = getTypeInfo(targetSchema);
|
|
646
653
|
newDocument = visit(
|
|
647
654
|
newDocument,
|
|
648
655
|
visitWithTypeInfo(typeInfo, {
|
|
@@ -885,7 +892,7 @@ const variablesVisitorKeys = {
|
|
|
885
892
|
function finalizeSelectionSet(schema, type, validFragments, selectionSet, onOverlappingAliases) {
|
|
886
893
|
const usedFragments = [];
|
|
887
894
|
const usedVariables = [];
|
|
888
|
-
const typeInfo =
|
|
895
|
+
const typeInfo = getTypeInfoWithType(schema, type);
|
|
889
896
|
const seenNonNullableMap = /* @__PURE__ */ new WeakMap();
|
|
890
897
|
const seenNullableMap = /* @__PURE__ */ new WeakMap();
|
|
891
898
|
const filteredSelectionSet = visit(
|
|
@@ -1156,7 +1163,7 @@ function prepareGatewayDocument(originalDocument, transformedSchema, returnType,
|
|
|
1156
1163
|
fragmentNames,
|
|
1157
1164
|
possibleTypesMap
|
|
1158
1165
|
);
|
|
1159
|
-
const typeInfo =
|
|
1166
|
+
const typeInfo = getTypeInfo(transformedSchema);
|
|
1160
1167
|
const expandedDocument = {
|
|
1161
1168
|
kind: Kind.DOCUMENT,
|
|
1162
1169
|
definitions: [...operations, ...fragments, ...expandedFragments]
|
|
@@ -1546,7 +1553,7 @@ function wrapConcreteTypes(returnType, targetSchema, document) {
|
|
|
1546
1553
|
possibleTypes = [namedType];
|
|
1547
1554
|
}
|
|
1548
1555
|
const rootTypeNames = getRootTypeNames(targetSchema);
|
|
1549
|
-
const typeInfo =
|
|
1556
|
+
const typeInfo = getTypeInfo(targetSchema);
|
|
1550
1557
|
const visitorKeys = {
|
|
1551
1558
|
Document: ["definitions"],
|
|
1552
1559
|
OperationDefinition: ["selectionSet"],
|
|
@@ -2009,7 +2016,7 @@ function handleFlattenedParent(flattenedParent, leftOverParent, possibleSubschem
|
|
|
2009
2016
|
sourceSubschema,
|
|
2010
2017
|
info.variableValues != null && Object.keys(info.variableValues).length > 0 ? info.variableValues : EMPTY_OBJECT,
|
|
2011
2018
|
info.fragments != null && Object.keys(info.fragments).length > 0 ? info.fragments : EMPTY_OBJECT,
|
|
2012
|
-
|
|
2019
|
+
getActualFieldNodes(fieldNode),
|
|
2013
2020
|
context,
|
|
2014
2021
|
info
|
|
2015
2022
|
);
|
|
@@ -2204,7 +2211,6 @@ function flattenPromise(data) {
|
|
|
2204
2211
|
}
|
|
2205
2212
|
return data;
|
|
2206
2213
|
}
|
|
2207
|
-
const memoizedAsArray = memoize1(asArray);
|
|
2208
2214
|
|
|
2209
2215
|
function isSubschemaConfig(value) {
|
|
2210
2216
|
return Boolean(value?.schema);
|
|
@@ -2658,4 +2664,4 @@ function subtractSelectionSets(selectionSetA, selectionSetB) {
|
|
|
2658
2664
|
});
|
|
2659
2665
|
}
|
|
2660
2666
|
|
|
2661
|
-
export { EMPTY_ARRAY, EMPTY_OBJECT, FIELD_SUBSCHEMA_MAP_SYMBOL, OBJECT_SUBSCHEMA_SYMBOL, PLAN_LEFT_OVER, Subschema, Transformer, UNPATHED_ERRORS_SYMBOL, annotateExternalObject, applySchemaTransforms, cloneSubschemaConfig, createDefaultExecutor, createRequest, defaultMergedResolver, delegateRequest, delegateToSchema, extractUnavailableFields, extractUnavailableFieldsFromSelectionSet, getActualFieldNodes, getDelegatingOperation, getPlanLeftOverFromParent, getSubschema, getUnpathedErrors, handleResolverResult, isExternalObject, isSubschema, isSubschemaConfig, leftOverByDelegationPlan, mergeFields, resolveExternalValue, subtractSelectionSets };
|
|
2667
|
+
export { EMPTY_ARRAY, EMPTY_OBJECT, FIELD_SUBSCHEMA_MAP_SYMBOL, OBJECT_SUBSCHEMA_SYMBOL, PLAN_LEFT_OVER, Subschema, Transformer, UNPATHED_ERRORS_SYMBOL, annotateExternalObject, applySchemaTransforms, cloneSubschemaConfig, createDefaultExecutor, createRequest, defaultMergedResolver, delegateRequest, delegateToSchema, extractUnavailableFields, extractUnavailableFieldsFromSelectionSet, getActualFieldNodes, getDelegatingOperation, getPlanLeftOverFromParent, getSubschema, getTypeInfo, getTypeInfoWithType, getUnpathedErrors, handleResolverResult, isExternalObject, isSubschema, isSubschemaConfig, leftOverByDelegationPlan, mergeFields, resolveExternalValue, subtractSelectionSets };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@graphql-tools/delegate",
|
|
3
|
-
"version": "10.2.
|
|
3
|
+
"version": "10.2.6-alpha-8a518b5a83e07bd2eea5e9e3bd5dcd80c2f7b5eb",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "A set of utils for faster development of GraphQL tools",
|
|
6
6
|
"repository": {
|
|
@@ -38,12 +38,12 @@
|
|
|
38
38
|
"graphql": "^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@graphql-tools/batch-execute": "
|
|
41
|
+
"@graphql-tools/batch-execute": "9.0.9-alpha-8a518b5a83e07bd2eea5e9e3bd5dcd80c2f7b5eb",
|
|
42
42
|
"@graphql-tools/executor": "^1.3.3",
|
|
43
43
|
"@graphql-tools/schema": "^10.0.8",
|
|
44
44
|
"@graphql-tools/utils": "^10.6.0",
|
|
45
45
|
"@repeaterjs/repeater": "^3.0.6",
|
|
46
|
-
"dataloader": "^2.2.
|
|
46
|
+
"dataloader": "^2.2.3",
|
|
47
47
|
"dset": "^3.1.2",
|
|
48
48
|
"tslib": "^2.5.0"
|
|
49
49
|
},
|