@graphql-box/worker-client 4.1.5 → 5.0.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/README.md +1 -5
- package/dist/cjs/index.cjs +410 -0
- package/dist/cjs/index.cjs.map +1 -0
- package/dist/esm/index.mjs +401 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/types/cjs/constants.d.cts +6 -0
- package/dist/types/cjs/constants.d.cts.map +1 -0
- package/dist/types/cjs/debug/logRequest.d.cts +6 -0
- package/dist/types/cjs/debug/logRequest.d.cts.map +1 -0
- package/dist/types/cjs/debug/logSubscription.d.cts +6 -0
- package/dist/types/cjs/debug/logSubscription.d.cts.map +1 -0
- package/dist/types/cjs/helpers/isGraphqlBoxMessageRequestPayload.d.cts +4 -0
- package/dist/types/cjs/helpers/isGraphqlBoxMessageRequestPayload.d.cts.map +1 -0
- package/dist/types/cjs/helpers/operationNameRegex.d.cts +2 -0
- package/dist/types/cjs/helpers/operationNameRegex.d.cts.map +1 -0
- package/dist/types/cjs/index.d.cts +5 -0
- package/dist/types/cjs/index.d.cts.map +1 -0
- package/dist/types/cjs/main.d.cts +24 -0
- package/dist/types/cjs/main.d.cts.map +1 -0
- package/dist/types/cjs/registerWorker.d.cts +5 -0
- package/dist/types/cjs/registerWorker.d.cts.map +1 -0
- package/dist/types/cjs/types.d.cts +49 -0
- package/dist/types/cjs/types.d.cts.map +1 -0
- package/dist/types/esm/constants.d.ts +6 -0
- package/dist/types/esm/constants.d.ts.map +1 -0
- package/dist/types/esm/debug/logRequest.d.ts +6 -0
- package/dist/types/esm/debug/logRequest.d.ts.map +1 -0
- package/dist/types/esm/debug/logSubscription.d.ts +6 -0
- package/dist/types/esm/debug/logSubscription.d.ts.map +1 -0
- package/dist/types/esm/helpers/isGraphqlBoxMessageRequestPayload.d.ts +4 -0
- package/dist/types/esm/helpers/isGraphqlBoxMessageRequestPayload.d.ts.map +1 -0
- package/dist/types/esm/helpers/operationNameRegex.d.ts +2 -0
- package/dist/types/esm/helpers/operationNameRegex.d.ts.map +1 -0
- package/dist/types/esm/index.d.ts +5 -0
- package/dist/types/esm/index.d.ts.map +1 -0
- package/dist/types/esm/main.d.ts +24 -0
- package/dist/types/esm/main.d.ts.map +1 -0
- package/dist/types/esm/registerWorker.d.ts +5 -0
- package/dist/types/esm/registerWorker.d.ts.map +1 -0
- package/{lib/types/defs/index.d.ts → dist/types/esm/types.d.ts} +11 -11
- package/dist/types/esm/types.d.ts.map +1 -0
- package/dist/types/tsconfig.build.tsbuildinfo +1 -0
- package/package.json +57 -45
- package/src/constants.ts +5 -0
- package/src/debug/{log-request/index.ts → logRequest.ts} +30 -20
- package/src/debug/logSubscription.ts +50 -0
- package/src/helpers/isGraphqlBoxMessageRequestPayload.ts +7 -0
- package/src/helpers/operationNameRegex.test.ts +26 -14
- package/src/helpers/operationNameRegex.ts +2 -2
- package/src/index.ts +4 -3
- package/src/{main/index.ts → main.ts} +135 -108
- package/src/registerWorker.ts +107 -0
- package/src/{defs/index.ts → types.ts} +14 -9
- package/tsconfig.build.json +10 -0
- package/tsconfig.json +17 -0
- package/lib/browser/index.js +0 -2
- package/lib/browser/index.js.map +0 -1
- package/lib/browser/production.analysis.txt +0 -81
- package/lib/main/consts/index.js +0 -17
- package/lib/main/consts/index.js.map +0 -1
- package/lib/main/debug/log-request/index.js +0 -77
- package/lib/main/debug/log-request/index.js.map +0 -1
- package/lib/main/debug/log-subscription/index.js +0 -55
- package/lib/main/debug/log-subscription/index.js.map +0 -1
- package/lib/main/defs/index.js +0 -2
- package/lib/main/defs/index.js.map +0 -1
- package/lib/main/helpers/operationNameRegex.js +0 -14
- package/lib/main/helpers/operationNameRegex.js.map +0 -1
- package/lib/main/index.js +0 -41
- package/lib/main/index.js.map +0 -1
- package/lib/main/main/index.js +0 -249
- package/lib/main/main/index.js.map +0 -1
- package/lib/main/register-worker/index.js +0 -143
- package/lib/main/register-worker/index.js.map +0 -1
- package/lib/module/consts/index.js +0 -6
- package/lib/module/consts/index.js.map +0 -1
- package/lib/module/debug/log-request/index.js +0 -64
- package/lib/module/debug/log-request/index.js.map +0 -1
- package/lib/module/debug/log-subscription/index.js +0 -43
- package/lib/module/debug/log-subscription/index.js.map +0 -1
- package/lib/module/defs/index.js +0 -2
- package/lib/module/defs/index.js.map +0 -1
- package/lib/module/helpers/operationNameRegex.js +0 -5
- package/lib/module/helpers/operationNameRegex.js.map +0 -1
- package/lib/module/index.js +0 -4
- package/lib/module/index.js.map +0 -1
- package/lib/module/main/index.js +0 -236
- package/lib/module/main/index.js.map +0 -1
- package/lib/module/register-worker/index.js +0 -126
- package/lib/module/register-worker/index.js.map +0 -1
- package/lib/types/consts/index.d.ts +0 -6
- package/lib/types/consts/index.d.ts.map +0 -1
- package/lib/types/debug/log-request/index.d.ts +0 -2
- package/lib/types/debug/log-request/index.d.ts.map +0 -1
- package/lib/types/debug/log-subscription/index.d.ts +0 -2
- package/lib/types/debug/log-subscription/index.d.ts.map +0 -1
- package/lib/types/defs/index.d.ts.map +0 -1
- package/lib/types/helpers/operationNameRegex.d.ts +0 -3
- package/lib/types/helpers/operationNameRegex.d.ts.map +0 -1
- package/lib/types/helpers/operationNameRegex.test.d.ts +0 -2
- package/lib/types/helpers/operationNameRegex.test.d.ts.map +0 -1
- package/lib/types/index.d.ts +0 -4
- package/lib/types/index.d.ts.map +0 -1
- package/lib/types/main/index.d.ts +0 -32
- package/lib/types/main/index.d.ts.map +0 -1
- package/lib/types/register-worker/index.d.ts +0 -5
- package/lib/types/register-worker/index.d.ts.map +0 -1
- package/src/consts/index.ts +0 -7
- package/src/debug/log-subscription/index.ts +0 -41
- package/src/register-worker/index.ts +0 -95
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
import _isPlainObject from "lodash/isPlainObject";
|
|
2
|
-
import "core-js/modules/es.promise.js";
|
|
3
|
-
import { handleMessage as handleCachemapMessage } from "@cachemap/core-worker";
|
|
4
|
-
import { dehydrateCacheMetadata, serializeErrors } from "@graphql-box/helpers";
|
|
5
|
-
import { forAwaitEach, isAsyncIterable } from "iterall";
|
|
6
|
-
import { CACHEMAP, GRAPHQL_BOX, MESSAGE, REQUEST, SUBSCRIBE } from "../consts";
|
|
7
|
-
const {
|
|
8
|
-
addEventListener,
|
|
9
|
-
postMessage
|
|
10
|
-
} = self;
|
|
11
|
-
|
|
12
|
-
async function handleRequest(request, method, options, context, client) {
|
|
13
|
-
const requestResult = await client.request(request, options, context);
|
|
14
|
-
|
|
15
|
-
if (!isAsyncIterable(requestResult)) {
|
|
16
|
-
const {
|
|
17
|
-
_cacheMetadata,
|
|
18
|
-
...otherProps
|
|
19
|
-
} = requestResult;
|
|
20
|
-
const result = { ...otherProps
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
if (_cacheMetadata) {
|
|
24
|
-
result._cacheMetadata = dehydrateCacheMetadata(_cacheMetadata);
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
postMessage({
|
|
28
|
-
context,
|
|
29
|
-
method,
|
|
30
|
-
result: serializeErrors(result),
|
|
31
|
-
type: GRAPHQL_BOX
|
|
32
|
-
});
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
forAwaitEach(requestResult, ({
|
|
37
|
-
_cacheMetadata,
|
|
38
|
-
...otherProps
|
|
39
|
-
}) => {
|
|
40
|
-
const result = { ...otherProps
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
if (_cacheMetadata) {
|
|
44
|
-
result._cacheMetadata = dehydrateCacheMetadata(_cacheMetadata);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
postMessage({
|
|
48
|
-
context,
|
|
49
|
-
method,
|
|
50
|
-
result: serializeErrors(result),
|
|
51
|
-
type: GRAPHQL_BOX
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
async function handleSubscription(request, method, options, context, client) {
|
|
57
|
-
const subscribeResult = await client.subscribe(request, options, context);
|
|
58
|
-
|
|
59
|
-
if (!isAsyncIterable(subscribeResult)) {
|
|
60
|
-
postMessage({
|
|
61
|
-
context,
|
|
62
|
-
method,
|
|
63
|
-
result: serializeErrors(subscribeResult),
|
|
64
|
-
type: GRAPHQL_BOX
|
|
65
|
-
});
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
forAwaitEach(subscribeResult, ({
|
|
70
|
-
_cacheMetadata,
|
|
71
|
-
...otherProps
|
|
72
|
-
}) => {
|
|
73
|
-
const result = { ...otherProps
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
if (_cacheMetadata) {
|
|
77
|
-
result._cacheMetadata = dehydrateCacheMetadata(_cacheMetadata);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
postMessage({
|
|
81
|
-
context,
|
|
82
|
-
method,
|
|
83
|
-
result: serializeErrors(result),
|
|
84
|
-
type: GRAPHQL_BOX
|
|
85
|
-
});
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
export function handleMessage(data, client) {
|
|
90
|
-
const {
|
|
91
|
-
context,
|
|
92
|
-
method,
|
|
93
|
-
options,
|
|
94
|
-
request
|
|
95
|
-
} = data;
|
|
96
|
-
|
|
97
|
-
if (method === REQUEST) {
|
|
98
|
-
handleRequest(request, method, options, context, client);
|
|
99
|
-
} else if (method === SUBSCRIBE) {
|
|
100
|
-
handleSubscription(request, method, options, context, client);
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
export default async function registerWorker({
|
|
104
|
-
client
|
|
105
|
-
}) {
|
|
106
|
-
function onMessage({
|
|
107
|
-
data
|
|
108
|
-
}) {
|
|
109
|
-
if (!_isPlainObject(data)) {
|
|
110
|
-
return;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
const {
|
|
114
|
-
type
|
|
115
|
-
} = data;
|
|
116
|
-
|
|
117
|
-
if (type === GRAPHQL_BOX) {
|
|
118
|
-
handleMessage(data, client);
|
|
119
|
-
} else if (type === CACHEMAP && client.cache) {
|
|
120
|
-
handleCachemapMessage(data, client.cache);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
addEventListener(MESSAGE, onMessage);
|
|
125
|
-
}
|
|
126
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/register-worker/index.ts"],"names":["handleMessage","handleCachemapMessage","dehydrateCacheMetadata","serializeErrors","forAwaitEach","isAsyncIterable","CACHEMAP","GRAPHQL_BOX","MESSAGE","REQUEST","SUBSCRIBE","addEventListener","postMessage","self","handleRequest","request","method","options","context","client","requestResult","_cacheMetadata","otherProps","result","type","handleSubscription","subscribeResult","subscribe","data","registerWorker","onMessage","cache"],"mappings":"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","sourcesContent":["import { handleMessage as handleCachemapMessage } from \"@cachemap/core-worker\";\nimport Client from \"@graphql-box/client\";\nimport { MaybeRequestResult, MaybeRequestResultWithDehydratedCacheMetadata, RequestOptions } from \"@graphql-box/core\";\nimport { dehydrateCacheMetadata, serializeErrors } from \"@graphql-box/helpers\";\nimport { forAwaitEach, isAsyncIterable } from \"iterall\";\nimport { isPlainObject } from \"lodash\";\nimport { CACHEMAP, GRAPHQL_BOX, MESSAGE, REQUEST, SUBSCRIBE } from \"../consts\";\nimport { MessageContext, MessageRequestPayload, MethodNames, RegisterWorkerOptions } from \"../defs\";\n\nconst { addEventListener, postMessage } = (self as unknown) as DedicatedWorkerGlobalScope;\n\nasync function handleRequest(\n request: string,\n method: MethodNames,\n options: RequestOptions,\n context: MessageContext,\n client: Client,\n): Promise<void> {\n const requestResult = await client.request(request, options, context);\n\n if (!isAsyncIterable(requestResult)) {\n const { _cacheMetadata, ...otherProps } = requestResult as MaybeRequestResult;\n const result: MaybeRequestResultWithDehydratedCacheMetadata = { ...otherProps };\n\n if (_cacheMetadata) {\n result._cacheMetadata = dehydrateCacheMetadata(_cacheMetadata);\n }\n\n postMessage({ context, method, result: serializeErrors(result), type: GRAPHQL_BOX });\n return;\n }\n\n forAwaitEach(requestResult, ({ _cacheMetadata, ...otherProps }: MaybeRequestResult) => {\n const result: MaybeRequestResultWithDehydratedCacheMetadata = { ...otherProps };\n\n if (_cacheMetadata) {\n result._cacheMetadata = dehydrateCacheMetadata(_cacheMetadata);\n }\n\n postMessage({ context, method, result: serializeErrors(result), type: GRAPHQL_BOX });\n });\n}\n\nasync function handleSubscription(\n request: string,\n method: MethodNames,\n options: RequestOptions,\n context: MessageContext,\n client: Client,\n): Promise<void> {\n const subscribeResult = await client.subscribe(request, options, context);\n\n if (!isAsyncIterable(subscribeResult)) {\n postMessage({ context, method, result: serializeErrors(subscribeResult as MaybeRequestResult), type: GRAPHQL_BOX });\n return;\n }\n\n forAwaitEach(subscribeResult, ({ _cacheMetadata, ...otherProps }: MaybeRequestResult) => {\n const result: MaybeRequestResultWithDehydratedCacheMetadata = { ...otherProps };\n\n if (_cacheMetadata) {\n result._cacheMetadata = dehydrateCacheMetadata(_cacheMetadata);\n }\n\n postMessage({ context, method, result: serializeErrors(result), type: GRAPHQL_BOX });\n });\n}\n\nexport function handleMessage(data: MessageRequestPayload, client: Client): void {\n const { context, method, options, request } = data as MessageRequestPayload;\n\n if (method === REQUEST) {\n handleRequest(request, method, options, context, client);\n } else if (method === SUBSCRIBE) {\n handleSubscription(request, method, options, context, client);\n }\n}\n\nexport default async function registerWorker({ client }: RegisterWorkerOptions): Promise<void> {\n function onMessage({ data }: MessageEvent): void {\n if (!isPlainObject(data)) {\n return;\n }\n\n const { type } = data as MessageRequestPayload;\n\n if (type === GRAPHQL_BOX) {\n handleMessage(data, client);\n } else if (type === CACHEMAP && client.cache) {\n handleCachemapMessage(data, client.cache);\n }\n }\n\n addEventListener(MESSAGE, onMessage);\n}\n"],"file":"index.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/consts/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,YAAY,CAAC;AACjC,eAAO,MAAM,SAAS,cAAc,CAAC;AAErC,eAAO,MAAM,OAAO,YAAY,CAAC;AAEjC,eAAO,MAAM,WAAW,eAAe,CAAC;AACxC,eAAO,MAAM,QAAQ,aAAa,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/debug/log-request/index.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,OAAO,UAAU,UAAU,cAErB,GAAG,iBACG,MAAM,gDACyB,GAAG,EAAE,KAAK,QAAQ,GAAG,CAAC,MACnE,IAAI,CA8CR"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/debug/log-subscription/index.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,eAAe,cAE1B,GAAG,iBACG,MAAM,gDACyB,GAAG,EAAE,KAAK,QAAQ,GAAG,CAAC,MACnE,IAAI,CAgCR"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/defs/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,uBAAuB,CAAC;AACnD,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE3G,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,KAAK,EAAE,cAAc,CAAC;IAEtB;;OAEG;IACH,YAAY,CAAC,EAAE,eAAe,CAAC;IAE/B;;;OAGG;IACH,8BAA8B,CAAC,EAAE,OAAO,CAAC;IAEzC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,oBAAY,WAAW,GAAG,SAAS,GAAG,WAAW,CAAC;AAElD,oBAAY,eAAe,GAAG,CAC5B,KAAK,EAAE,kBAAkB,GAAG,qBAAqB,CAAC,kBAAkB,GAAG,SAAS,CAAC,KAC9E,IAAI,CAAC;AAEV,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,eAAe,CAAC;CAC1B;AAED,oBAAY,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAEtD,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,YAAY,GAAG,UAAU,CAAC;CACjC;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,IAAI,EAAE,YAAY,GAAG,UAAU,CAAC;CACjC;AAED,MAAM,WAAW,cAAc;IAC7B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"operationNameRegex.d.ts","sourceRoot":"","sources":["../../../src/helpers/operationNameRegex.ts"],"names":[],"mappings":"kCAAyB,MAAM;AAA/B,wBAGE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"operationNameRegex.test.d.ts","sourceRoot":"","sources":["../../../src/helpers/operationNameRegex.test.ts"],"names":[],"mappings":""}
|
package/lib/types/index.d.ts
DELETED
package/lib/types/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import WorkerCachemap from "@cachemap/core-worker";
|
|
2
|
-
import { MaybeRequestContext, MaybeRequestResult, RequestOptions } from "@graphql-box/core";
|
|
3
|
-
import { UserOptions } from "../defs";
|
|
4
|
-
export default class WorkerClient {
|
|
5
|
-
private static _getMessageContext;
|
|
6
|
-
private _cache;
|
|
7
|
-
private _debugManager;
|
|
8
|
-
private _eventEmitter;
|
|
9
|
-
private _experimentalDeferStreamSupport;
|
|
10
|
-
private _pending;
|
|
11
|
-
private _worker;
|
|
12
|
-
constructor(options: UserOptions);
|
|
13
|
-
get cache(): WorkerCachemap;
|
|
14
|
-
mutate(request: string, options?: RequestOptions, context?: MaybeRequestContext): Promise<MaybeRequestResult | AsyncIterableIterator<MaybeRequestResult | undefined> | {
|
|
15
|
-
errors: any[];
|
|
16
|
-
}>;
|
|
17
|
-
query(request: string, options?: RequestOptions, context?: MaybeRequestContext): Promise<MaybeRequestResult | AsyncIterableIterator<MaybeRequestResult | undefined> | {
|
|
18
|
-
errors: any[];
|
|
19
|
-
}>;
|
|
20
|
-
request(request: string, options?: RequestOptions, context?: MaybeRequestContext): Promise<MaybeRequestResult | AsyncIterableIterator<MaybeRequestResult | undefined> | {
|
|
21
|
-
errors: any[];
|
|
22
|
-
}>;
|
|
23
|
-
subscribe(request: string, options?: RequestOptions): Promise<AsyncIterableIterator<MaybeRequestResult | undefined> | {
|
|
24
|
-
errors: any[];
|
|
25
|
-
}>;
|
|
26
|
-
private _addEventListener;
|
|
27
|
-
private _getRequestContext;
|
|
28
|
-
private _onMessage;
|
|
29
|
-
private _request;
|
|
30
|
-
private _subscribe;
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/main/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAGL,mBAAmB,EACnB,kBAAkB,EAIlB,cAAc,EAIf,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,EAA2E,WAAW,EAAE,MAAM,SAAS,CAAC;AAE/G,MAAM,CAAC,OAAO,OAAO,YAAY;IAC/B,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAIjC,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,aAAa,CAAyB;IAC9C,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,+BAA+B,CAAU;IACjD,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE,WAAW;IA2BhC,IAAI,KAAK,IAAI,cAAc,CAE1B;IAEY,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,EAAE,OAAO,GAAE,mBAAwB;;;IAIvF,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,EAAE,OAAO,GAAE,mBAAwB;;;IAItF,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,EAAE,OAAO,GAAE,mBAAwB;;;IAIxF,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB;;;IAIpE,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,kBAAkB;IAuB1B,OAAO,CAAC,UAAU,CAwDhB;YAGY,QAAQ;YAmBR,UAAU;CAgBzB"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import Client from "@graphql-box/client";
|
|
2
|
-
import { MessageRequestPayload, RegisterWorkerOptions } from "../defs";
|
|
3
|
-
export declare function handleMessage(data: MessageRequestPayload, client: Client): void;
|
|
4
|
-
export default function registerWorker({ client }: RegisterWorkerOptions): Promise<void>;
|
|
5
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/register-worker/index.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,qBAAqB,CAAC;AAMzC,OAAO,EAAkB,qBAAqB,EAAe,qBAAqB,EAAE,MAAM,SAAS,CAAC;AA6DpG,wBAAgB,aAAa,CAAC,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAQ/E;AAED,wBAA8B,cAAc,CAAC,EAAE,MAAM,EAAE,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB7F"}
|
package/src/consts/index.ts
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { RequestContext, SUBSCRIPTION_EXECUTED } from "@graphql-box/core";
|
|
2
|
-
import operationNameRegex from "../../helpers/operationNameRegex";
|
|
3
|
-
|
|
4
|
-
export default function logSubscription() {
|
|
5
|
-
return (
|
|
6
|
-
_target: any,
|
|
7
|
-
_propertyName: string,
|
|
8
|
-
descriptor: TypedPropertyDescriptor<(...args: any[]) => Promise<any>>,
|
|
9
|
-
): void => {
|
|
10
|
-
const method = descriptor.value;
|
|
11
|
-
if (!method) return;
|
|
12
|
-
|
|
13
|
-
descriptor.value = async function descriptorValue(...args: any[]): Promise<any> {
|
|
14
|
-
try {
|
|
15
|
-
return new Promise(async resolve => {
|
|
16
|
-
const { debugManager, ...otherContext } = args[2] as RequestContext;
|
|
17
|
-
|
|
18
|
-
if (!debugManager) {
|
|
19
|
-
resolve(await method.apply(this, args));
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
const derivedOperationName = operationNameRegex(args[0]);
|
|
24
|
-
const startTime = debugManager.now();
|
|
25
|
-
|
|
26
|
-
debugManager.log(SUBSCRIPTION_EXECUTED, {
|
|
27
|
-
context: { ...otherContext, operationName: derivedOperationName },
|
|
28
|
-
options: args[1],
|
|
29
|
-
request: args[0],
|
|
30
|
-
stats: { startTime },
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
const result = await method.apply(this, args);
|
|
34
|
-
resolve(result);
|
|
35
|
-
});
|
|
36
|
-
} catch (error) {
|
|
37
|
-
return Promise.reject(error);
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
};
|
|
41
|
-
}
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import { handleMessage as handleCachemapMessage } from "@cachemap/core-worker";
|
|
2
|
-
import Client from "@graphql-box/client";
|
|
3
|
-
import { MaybeRequestResult, MaybeRequestResultWithDehydratedCacheMetadata, RequestOptions } from "@graphql-box/core";
|
|
4
|
-
import { dehydrateCacheMetadata, serializeErrors } from "@graphql-box/helpers";
|
|
5
|
-
import { forAwaitEach, isAsyncIterable } from "iterall";
|
|
6
|
-
import { isPlainObject } from "lodash";
|
|
7
|
-
import { CACHEMAP, GRAPHQL_BOX, MESSAGE, REQUEST, SUBSCRIBE } from "../consts";
|
|
8
|
-
import { MessageContext, MessageRequestPayload, MethodNames, RegisterWorkerOptions } from "../defs";
|
|
9
|
-
|
|
10
|
-
const { addEventListener, postMessage } = (self as unknown) as DedicatedWorkerGlobalScope;
|
|
11
|
-
|
|
12
|
-
async function handleRequest(
|
|
13
|
-
request: string,
|
|
14
|
-
method: MethodNames,
|
|
15
|
-
options: RequestOptions,
|
|
16
|
-
context: MessageContext,
|
|
17
|
-
client: Client,
|
|
18
|
-
): Promise<void> {
|
|
19
|
-
const requestResult = await client.request(request, options, context);
|
|
20
|
-
|
|
21
|
-
if (!isAsyncIterable(requestResult)) {
|
|
22
|
-
const { _cacheMetadata, ...otherProps } = requestResult as MaybeRequestResult;
|
|
23
|
-
const result: MaybeRequestResultWithDehydratedCacheMetadata = { ...otherProps };
|
|
24
|
-
|
|
25
|
-
if (_cacheMetadata) {
|
|
26
|
-
result._cacheMetadata = dehydrateCacheMetadata(_cacheMetadata);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
postMessage({ context, method, result: serializeErrors(result), type: GRAPHQL_BOX });
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
forAwaitEach(requestResult, ({ _cacheMetadata, ...otherProps }: MaybeRequestResult) => {
|
|
34
|
-
const result: MaybeRequestResultWithDehydratedCacheMetadata = { ...otherProps };
|
|
35
|
-
|
|
36
|
-
if (_cacheMetadata) {
|
|
37
|
-
result._cacheMetadata = dehydrateCacheMetadata(_cacheMetadata);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
postMessage({ context, method, result: serializeErrors(result), type: GRAPHQL_BOX });
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
async function handleSubscription(
|
|
45
|
-
request: string,
|
|
46
|
-
method: MethodNames,
|
|
47
|
-
options: RequestOptions,
|
|
48
|
-
context: MessageContext,
|
|
49
|
-
client: Client,
|
|
50
|
-
): Promise<void> {
|
|
51
|
-
const subscribeResult = await client.subscribe(request, options, context);
|
|
52
|
-
|
|
53
|
-
if (!isAsyncIterable(subscribeResult)) {
|
|
54
|
-
postMessage({ context, method, result: serializeErrors(subscribeResult as MaybeRequestResult), type: GRAPHQL_BOX });
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
forAwaitEach(subscribeResult, ({ _cacheMetadata, ...otherProps }: MaybeRequestResult) => {
|
|
59
|
-
const result: MaybeRequestResultWithDehydratedCacheMetadata = { ...otherProps };
|
|
60
|
-
|
|
61
|
-
if (_cacheMetadata) {
|
|
62
|
-
result._cacheMetadata = dehydrateCacheMetadata(_cacheMetadata);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
postMessage({ context, method, result: serializeErrors(result), type: GRAPHQL_BOX });
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
export function handleMessage(data: MessageRequestPayload, client: Client): void {
|
|
70
|
-
const { context, method, options, request } = data as MessageRequestPayload;
|
|
71
|
-
|
|
72
|
-
if (method === REQUEST) {
|
|
73
|
-
handleRequest(request, method, options, context, client);
|
|
74
|
-
} else if (method === SUBSCRIBE) {
|
|
75
|
-
handleSubscription(request, method, options, context, client);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
export default async function registerWorker({ client }: RegisterWorkerOptions): Promise<void> {
|
|
80
|
-
function onMessage({ data }: MessageEvent): void {
|
|
81
|
-
if (!isPlainObject(data)) {
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
const { type } = data as MessageRequestPayload;
|
|
86
|
-
|
|
87
|
-
if (type === GRAPHQL_BOX) {
|
|
88
|
-
handleMessage(data, client);
|
|
89
|
-
} else if (type === CACHEMAP && client.cache) {
|
|
90
|
-
handleCachemapMessage(data, client.cache);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
addEventListener(MESSAGE, onMessage);
|
|
95
|
-
}
|