@graphitation/supermassive 0.6.3 → 0.8.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.
- package/.eslintcache +1 -1
- package/CHANGELOG.json +61 -1
- package/CHANGELOG.md +34 -2
- package/lib/benchmarks/index.js +13 -0
- package/lib/benchmarks/index.mjs +19 -1
- package/lib/benchmarks/swapi-schema/__generated__/schema.d.ts +3 -0
- package/lib/benchmarks/swapi-schema/__generated__/schema.d.ts.map +1 -0
- package/lib/collectFields.d.ts.map +1 -1
- package/lib/collectFields.js +33 -5
- package/lib/collectFields.mjs +33 -5
- package/lib/definition.d.ts +3 -0
- package/lib/definition.d.ts.map +1 -1
- package/lib/definition.js +9 -1
- package/lib/definition.mjs +9 -1
- package/lib/executeWithSchema.d.ts.map +1 -1
- package/lib/executeWithSchema.js +2 -16
- package/lib/executeWithSchema.mjs +2 -19
- package/lib/executeWithoutSchema.d.ts.map +1 -1
- package/lib/executeWithoutSchema.js +31 -12
- package/lib/executeWithoutSchema.mjs +31 -12
- package/lib/extractImplicitTypesRuntime.d.ts.map +1 -1
- package/lib/extractImplicitTypesRuntime.js +24 -3
- package/lib/extractImplicitTypesRuntime.mjs +24 -3
- package/lib/extractImplicitTypesToTypescript.d.ts.map +1 -1
- package/lib/extractImplicitTypesToTypescript.js +66 -17
- package/lib/extractImplicitTypesToTypescript.mjs +66 -17
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/subscribeWithSchema.d.ts.map +1 -1
- package/lib/subscribeWithSchema.js +2 -16
- package/lib/subscribeWithSchema.mjs +2 -19
- package/lib/subscribeWithoutSchema.d.ts.map +1 -1
- package/lib/subscribeWithoutSchema.js +5 -1
- package/lib/subscribeWithoutSchema.mjs +5 -1
- package/lib/types.d.ts +15 -2
- package/lib/types.d.ts.map +1 -1
- package/lib/utilities/mergeResolvers.d.ts +3 -0
- package/lib/utilities/mergeResolvers.d.ts.map +1 -0
- package/lib/utilities/mergeResolvers.js +36 -0
- package/lib/utilities/mergeResolvers.mjs +32 -0
- package/package.json +2 -2
|
@@ -4,20 +4,6 @@ var __getProtoOf = Object.getPrototypeOf;
|
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
7
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
8
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
9
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, {enumerable: true, configurable: true, writable: true, value}) : obj[key] = value;
|
|
10
|
-
var __objSpread = (a, b) => {
|
|
11
|
-
for (var prop in b || (b = {}))
|
|
12
|
-
if (__hasOwnProp.call(b, prop))
|
|
13
|
-
__defNormalProp(a, prop, b[prop]);
|
|
14
|
-
if (__getOwnPropSymbols)
|
|
15
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
16
|
-
if (__propIsEnum.call(b, prop))
|
|
17
|
-
__defNormalProp(a, prop, b[prop]);
|
|
18
|
-
}
|
|
19
|
-
return a;
|
|
20
|
-
};
|
|
21
7
|
var __markAsModule = (target) => __defProp(target, "__esModule", {value: true});
|
|
22
8
|
var __export = (target, all) => {
|
|
23
9
|
for (var name in all)
|
|
@@ -62,11 +48,11 @@ function subscribeWithSchema({
|
|
|
62
48
|
}
|
|
63
49
|
};
|
|
64
50
|
extractedResolvers = (0, import_index.extractImplicitTypes)(typeDefs, getTypeByName);
|
|
65
|
-
const fullResolvers = __objSpread(__objSpread({}, extractedResolvers), resolvers);
|
|
66
51
|
const document = (0, import_index.addTypesToRequestDocument)(schema, rawDocument);
|
|
67
52
|
return (0, import_index.subscribeWithoutSchema)({
|
|
68
53
|
document,
|
|
69
|
-
resolvers
|
|
54
|
+
resolvers,
|
|
55
|
+
schemaResolvers: extractedResolvers,
|
|
70
56
|
rootValue,
|
|
71
57
|
contextValue,
|
|
72
58
|
variableValues,
|
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
3
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
4
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
5
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, {enumerable: true, configurable: true, writable: true, value}) : obj[key] = value;
|
|
6
|
-
var __objSpread = (a, b) => {
|
|
7
|
-
for (var prop in b || (b = {}))
|
|
8
|
-
if (__hasOwnProp.call(b, prop))
|
|
9
|
-
__defNormalProp(a, prop, b[prop]);
|
|
10
|
-
if (__getOwnPropSymbols)
|
|
11
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
12
|
-
if (__propIsEnum.call(b, prop))
|
|
13
|
-
__defNormalProp(a, prop, b[prop]);
|
|
14
|
-
}
|
|
15
|
-
return a;
|
|
16
|
-
};
|
|
17
|
-
|
|
18
1
|
// src/subscribeWithSchema.ts
|
|
19
2
|
import {isInputType, buildASTSchema} from "graphql";
|
|
20
3
|
import {
|
|
@@ -45,11 +28,11 @@ function subscribeWithSchema({
|
|
|
45
28
|
}
|
|
46
29
|
};
|
|
47
30
|
extractedResolvers = extractImplicitTypes(typeDefs, getTypeByName);
|
|
48
|
-
const fullResolvers = __objSpread(__objSpread({}, extractedResolvers), resolvers);
|
|
49
31
|
const document = addTypesToRequestDocument(schema, rawDocument);
|
|
50
32
|
return subscribeWithoutSchema({
|
|
51
33
|
document,
|
|
52
|
-
resolvers
|
|
34
|
+
resolvers,
|
|
35
|
+
schemaResolvers: extractedResolvers,
|
|
53
36
|
rootValue,
|
|
54
37
|
contextValue,
|
|
55
38
|
variableValues,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscribeWithoutSchema.d.ts","sourceRoot":"","sources":["../src/subscribeWithoutSchema.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAQ7C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"subscribeWithoutSchema.d.ts","sourceRoot":"","sources":["../src/subscribeWithoutSchema.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAQ7C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAiB9C,OAAO,EAEL,qBAAqB,EACrB,0BAA0B,EAE1B,SAAS,EACT,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,0BAA0B,GAC/B,OAAO,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,eAAe,CAAC,CAiDxE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,YAAY,EACtB,SAAS,CAAC,EAAE,OAAO,EACnB,YAAY,CAAC,EAAE,OAAO,EACtB,cAAc,CAAC,EAAE,KAAK,CAAC;IAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC,EAChE,aAAa,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,EAC7B,aAAa,CAAC,EAAE,KAAK,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GACrD,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,eAAe,CAAC,CAyCnD"}
|
|
@@ -53,11 +53,13 @@ var import_executeWithoutSchema = __toModule(require("./executeWithoutSchema"));
|
|
|
53
53
|
var import_collectFields = __toModule(require("./collectFields"));
|
|
54
54
|
var import_values = __toModule(require("./values"));
|
|
55
55
|
var import_typeNameFromAST = __toModule(require("./utilities/typeNameFromAST"));
|
|
56
|
+
var import_mergeResolvers = __toModule(require("./utilities/mergeResolvers"));
|
|
56
57
|
var import_mapAsyncIterator = __toModule(require("./utilities/mapAsyncIterator"));
|
|
57
58
|
function subscribeWithoutSchema(args) {
|
|
58
59
|
return __async(this, null, function* () {
|
|
59
60
|
const {
|
|
60
61
|
resolvers,
|
|
62
|
+
schemaResolvers,
|
|
61
63
|
document,
|
|
62
64
|
rootValue,
|
|
63
65
|
contextValue,
|
|
@@ -66,12 +68,14 @@ function subscribeWithoutSchema(args) {
|
|
|
66
68
|
fieldResolver,
|
|
67
69
|
subscribeFieldResolver
|
|
68
70
|
} = args;
|
|
69
|
-
const
|
|
71
|
+
const combinedResolvers = (0, import_mergeResolvers.mergeResolvers)(resolvers, schemaResolvers);
|
|
72
|
+
const resultOrStream = yield createSourceEventStream(combinedResolvers, document, rootValue, contextValue, variableValues, operationName, subscribeFieldResolver);
|
|
70
73
|
if (!(0, import_isAsyncIterable.isAsyncIterable)(resultOrStream)) {
|
|
71
74
|
return resultOrStream;
|
|
72
75
|
}
|
|
73
76
|
const mapSourceToResponse = (payload) => (0, import_executeWithoutSchema.executeWithoutSchema)({
|
|
74
77
|
resolvers,
|
|
78
|
+
schemaResolvers,
|
|
75
79
|
document,
|
|
76
80
|
rootValue: payload,
|
|
77
81
|
contextValue,
|
|
@@ -38,11 +38,13 @@ import {
|
|
|
38
38
|
import {collectFields} from "./collectFields.mjs";
|
|
39
39
|
import {getArgumentValues} from "./values.mjs";
|
|
40
40
|
import {typeNameFromAST} from "./utilities/typeNameFromAST.mjs";
|
|
41
|
+
import {mergeResolvers} from "./utilities/mergeResolvers.mjs";
|
|
41
42
|
import {mapAsyncIterator} from "./utilities/mapAsyncIterator.mjs";
|
|
42
43
|
function subscribeWithoutSchema(args) {
|
|
43
44
|
return __async(this, null, function* () {
|
|
44
45
|
const {
|
|
45
46
|
resolvers,
|
|
47
|
+
schemaResolvers,
|
|
46
48
|
document,
|
|
47
49
|
rootValue,
|
|
48
50
|
contextValue,
|
|
@@ -51,12 +53,14 @@ function subscribeWithoutSchema(args) {
|
|
|
51
53
|
fieldResolver,
|
|
52
54
|
subscribeFieldResolver
|
|
53
55
|
} = args;
|
|
54
|
-
const
|
|
56
|
+
const combinedResolvers = mergeResolvers(resolvers, schemaResolvers);
|
|
57
|
+
const resultOrStream = yield createSourceEventStream(combinedResolvers, document, rootValue, contextValue, variableValues, operationName, subscribeFieldResolver);
|
|
55
58
|
if (!isAsyncIterable(resultOrStream)) {
|
|
56
59
|
return resultOrStream;
|
|
57
60
|
}
|
|
58
61
|
const mapSourceToResponse = (payload) => executeWithoutSchema({
|
|
59
62
|
resolvers,
|
|
63
|
+
schemaResolvers,
|
|
60
64
|
document,
|
|
61
65
|
rootValue: payload,
|
|
62
66
|
contextValue,
|
package/lib/types.d.ts
CHANGED
|
@@ -16,16 +16,28 @@ export declare type ObjectTypeResolver<TSource = any, TContext = any, TArgs = an
|
|
|
16
16
|
[key: string]: FieldResolver<TSource, TContext, TArgs>;
|
|
17
17
|
};
|
|
18
18
|
export declare type InterfaceTypeResolver<TSource = any, TContext = any, TArgs = any> = {
|
|
19
|
-
|
|
19
|
+
__implementedBy: string[];
|
|
20
|
+
[key: string]: FieldResolver<TSource, TContext, TArgs> | string[] | undefined;
|
|
20
21
|
} & {
|
|
21
22
|
__resolveType?: TypeResolver<any, any>;
|
|
22
23
|
};
|
|
23
24
|
export declare type UnionTypeResolver = {
|
|
24
25
|
__resolveType?: TypeResolver<any, any>;
|
|
26
|
+
__types: string[];
|
|
27
|
+
};
|
|
28
|
+
export declare type UserInterfaceTypeResolver<TSource = any, TContext = any, TArgs = any> = {
|
|
29
|
+
[key: string]: FieldResolver<TSource, TContext, TArgs>;
|
|
30
|
+
} & {
|
|
31
|
+
__resolveType?: TypeResolver<any, any>;
|
|
32
|
+
};
|
|
33
|
+
export declare type UserUnionTypeResolver = {
|
|
34
|
+
__resolveType?: TypeResolver<any, any>;
|
|
25
35
|
};
|
|
26
36
|
export declare type InputObjectTypeResolver = GraphQLInputObjectType;
|
|
37
|
+
export declare type UserResolver<TSource, TContext> = ObjectTypeResolver<TSource, TContext> | UserInterfaceTypeResolver<TSource, TContext> | UserUnionTypeResolver | ScalarTypeResolver | EnumTypeResolver | InputObjectTypeResolver;
|
|
27
38
|
export declare type Resolver<TSource, TContext> = ObjectTypeResolver<TSource, TContext> | InterfaceTypeResolver<TSource, TContext> | UnionTypeResolver | ScalarTypeResolver | EnumTypeResolver | InputObjectTypeResolver;
|
|
28
39
|
export declare type Resolvers<TSource = any, TContext = any> = Record<string, Resolver<TSource, TContext>>;
|
|
40
|
+
export declare type UserResolvers<TSource = any, TContext = any> = Record<string, UserResolver<TSource, TContext>>;
|
|
29
41
|
export interface ResolveInfo {
|
|
30
42
|
fieldName: string;
|
|
31
43
|
fieldNodes: Array<FieldNode>;
|
|
@@ -58,7 +70,7 @@ export interface FormattedExecutionResult<TData = ObjMap<unknown>, TExtensions =
|
|
|
58
70
|
extensions?: TExtensions;
|
|
59
71
|
}
|
|
60
72
|
export interface CommonExecutionArgs {
|
|
61
|
-
resolvers:
|
|
73
|
+
resolvers: UserResolvers;
|
|
62
74
|
rootValue?: unknown;
|
|
63
75
|
contextValue?: unknown;
|
|
64
76
|
variableValues?: Maybe<{
|
|
@@ -71,6 +83,7 @@ export interface CommonExecutionArgs {
|
|
|
71
83
|
}
|
|
72
84
|
export declare type ExecutionWithoutSchemaArgs = CommonExecutionArgs & {
|
|
73
85
|
document: DocumentNode;
|
|
86
|
+
schemaResolvers: Resolvers;
|
|
74
87
|
};
|
|
75
88
|
export declare type ExecutionWithSchemaArgs = CommonExecutionArgs & {
|
|
76
89
|
document: UntypedDocumentNode;
|
package/lib/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,YAAY,EACZ,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EAEjB,YAAY,IAAI,mBAAmB,EACpC,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EACL,YAAY,EACZ,SAAS,EACT,sBAAsB,EACtB,uBAAuB,EACvB,QAAQ,EACT,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,oBAAY,kBAAkB,GAAG,iBAAiB,CAAC;AACnD,oBAAY,gBAAgB,GAAG,eAAe,CAAC;AAC/C,oBAAY,qBAAqB,CAC/B,OAAO,EACP,QAAQ,EACR,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,OAAO,GAAG,GAAG,IACX,CACF,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,WAAW,KACd,OAAO,CAAC;AAEb,oBAAY,aAAa,CACvB,OAAO,EACP,QAAQ,EACR,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,OAAO,GAAG,GAAG,IAEX,qBAAqB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,GACxD;IACE,SAAS,CAAC,EAAE,qBAAqB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACrE,OAAO,CAAC,EAAE,qBAAqB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;CACpE,CAAC;AAEN,oBAAY,YAAY,CAAC,OAAO,EAAE,QAAQ,IAAI,CAC5C,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,WAAW,KACd,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;AAEnC,oBAAY,kBAAkB,CAAC,OAAO,GAAG,GAAG,EAAE,QAAQ,GAAG,GAAG,EAAE,KAAK,GAAG,GAAG,IAAI;IAC3E,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;CACxD,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mergeResolvers.d.ts","sourceRoot":"","sources":["../../src/utilities/mergeResolvers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAY,MAAM,UAAU,CAAC;AAE9D,wBAAgB,cAAc,CAC5B,SAAS,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAClC,kBAAkB,EAAE,SAAS,uBAsB9B"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
3
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
4
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, {enumerable: true, configurable: true, writable: true, value}) : obj[key] = value;
|
|
6
|
+
var __objSpread = (a, b) => {
|
|
7
|
+
for (var prop in b || (b = {}))
|
|
8
|
+
if (__hasOwnProp.call(b, prop))
|
|
9
|
+
__defNormalProp(a, prop, b[prop]);
|
|
10
|
+
if (__getOwnPropSymbols)
|
|
11
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
12
|
+
if (__propIsEnum.call(b, prop))
|
|
13
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14
|
+
}
|
|
15
|
+
return a;
|
|
16
|
+
};
|
|
17
|
+
var __markAsModule = (target) => __defProp(target, "__esModule", {value: true});
|
|
18
|
+
var __export = (target, all) => {
|
|
19
|
+
for (var name in all)
|
|
20
|
+
__defProp(target, name, {get: all[name], enumerable: true});
|
|
21
|
+
};
|
|
22
|
+
__markAsModule(exports);
|
|
23
|
+
__export(exports, {
|
|
24
|
+
mergeResolvers: () => mergeResolvers
|
|
25
|
+
});
|
|
26
|
+
function mergeResolvers(resolvers, extractedResolvers) {
|
|
27
|
+
const fullResolvers = __objSpread({}, extractedResolvers);
|
|
28
|
+
Object.keys(resolvers).forEach((resolverKey) => {
|
|
29
|
+
if (fullResolvers[resolverKey] && typeof resolvers[resolverKey] === "object" && resolvers[resolverKey].constructor === Object) {
|
|
30
|
+
fullResolvers[resolverKey] = __objSpread(__objSpread({}, fullResolvers[resolverKey]), resolvers[resolverKey]);
|
|
31
|
+
} else {
|
|
32
|
+
fullResolvers[resolverKey] = resolvers[resolverKey];
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
return fullResolvers;
|
|
36
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
3
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
4
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, {enumerable: true, configurable: true, writable: true, value}) : obj[key] = value;
|
|
6
|
+
var __objSpread = (a, b) => {
|
|
7
|
+
for (var prop in b || (b = {}))
|
|
8
|
+
if (__hasOwnProp.call(b, prop))
|
|
9
|
+
__defNormalProp(a, prop, b[prop]);
|
|
10
|
+
if (__getOwnPropSymbols)
|
|
11
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
12
|
+
if (__propIsEnum.call(b, prop))
|
|
13
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14
|
+
}
|
|
15
|
+
return a;
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
// src/utilities/mergeResolvers.ts
|
|
19
|
+
function mergeResolvers(resolvers, extractedResolvers) {
|
|
20
|
+
const fullResolvers = __objSpread({}, extractedResolvers);
|
|
21
|
+
Object.keys(resolvers).forEach((resolverKey) => {
|
|
22
|
+
if (fullResolvers[resolverKey] && typeof resolvers[resolverKey] === "object" && resolvers[resolverKey].constructor === Object) {
|
|
23
|
+
fullResolvers[resolverKey] = __objSpread(__objSpread({}, fullResolvers[resolverKey]), resolvers[resolverKey]);
|
|
24
|
+
} else {
|
|
25
|
+
fullResolvers[resolverKey] = resolvers[resolverKey];
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
return fullResolvers;
|
|
29
|
+
}
|
|
30
|
+
export {
|
|
31
|
+
mergeResolvers
|
|
32
|
+
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@graphitation/supermassive",
|
|
3
3
|
"license": "MIT",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.8.0",
|
|
5
5
|
"bin": {
|
|
6
6
|
"supermassive": "./bin/supermassive.js"
|
|
7
7
|
},
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"scripts": {
|
|
15
15
|
"build": "monorepo-scripts build",
|
|
16
16
|
"lint": "monorepo-scripts lint",
|
|
17
|
-
"test": "monorepo-scripts test",
|
|
17
|
+
"test": "./bin/supermassive.js extract-schema ./src/benchmarks/swapi-schema/schema.graphql && monorepo-scripts test",
|
|
18
18
|
"types": "monorepo-scripts types",
|
|
19
19
|
"just": "monorepo-scripts",
|
|
20
20
|
"benchmark": "ts-node -T ./src/benchmarks/index.ts"
|