@loaders.gl/worker-utils 3.3.0-alpha.1 → 3.3.0-alpha.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/dist/es5/index.js +39 -50
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/lib/async-queue/async-queue.js +15 -22
- package/dist/es5/lib/async-queue/async-queue.js.map +1 -1
- package/dist/es5/lib/env-utils/assert.js.map +1 -1
- package/dist/es5/lib/env-utils/globals.js +7 -4
- package/dist/es5/lib/env-utils/globals.js.map +1 -1
- package/dist/es5/lib/env-utils/version.js +3 -3
- package/dist/es5/lib/env-utils/version.js.map +1 -1
- package/dist/es5/lib/library-utils/library-utils.js +6 -45
- package/dist/es5/lib/library-utils/library-utils.js.map +1 -1
- package/dist/es5/lib/node/require-utils.node.js +0 -22
- package/dist/es5/lib/node/require-utils.node.js.map +1 -1
- package/dist/es5/lib/node/worker_threads-browser.js +3 -6
- package/dist/es5/lib/node/worker_threads-browser.js.map +1 -1
- package/dist/es5/lib/node/worker_threads.js +0 -2
- package/dist/es5/lib/node/worker_threads.js.map +1 -1
- package/dist/es5/lib/process-utils/child-process-proxy.js +6 -49
- package/dist/es5/lib/process-utils/child-process-proxy.js.map +1 -1
- package/dist/es5/lib/process-utils/process-utils.js +0 -7
- package/dist/es5/lib/process-utils/process-utils.js.map +1 -1
- package/dist/es5/lib/worker-api/create-worker.js +40 -96
- package/dist/es5/lib/worker-api/create-worker.js.map +1 -1
- package/dist/es5/lib/worker-api/get-worker-url.js +2 -7
- package/dist/es5/lib/worker-api/get-worker-url.js.map +1 -1
- package/dist/es5/lib/worker-api/process-on-worker.js +15 -41
- package/dist/es5/lib/worker-api/process-on-worker.js.map +1 -1
- package/dist/es5/lib/worker-api/validate-worker-version.js +0 -4
- package/dist/es5/lib/worker-api/validate-worker-version.js.map +1 -1
- package/dist/es5/lib/worker-farm/worker-body.js +13 -30
- package/dist/es5/lib/worker-farm/worker-body.js.map +1 -1
- package/dist/es5/lib/worker-farm/worker-farm.js +21 -32
- package/dist/es5/lib/worker-farm/worker-farm.js.map +1 -1
- package/dist/es5/lib/worker-farm/worker-job.js +9 -13
- package/dist/es5/lib/worker-farm/worker-job.js.map +1 -1
- package/dist/es5/lib/worker-farm/worker-pool.js +18 -51
- package/dist/es5/lib/worker-farm/worker-pool.js.map +1 -1
- package/dist/es5/lib/worker-farm/worker-thread.js +22 -36
- package/dist/es5/lib/worker-farm/worker-thread.js.map +1 -1
- package/dist/es5/lib/worker-utils/get-loadable-worker-url.js +1 -5
- package/dist/es5/lib/worker-utils/get-loadable-worker-url.js.map +1 -1
- package/dist/es5/lib/worker-utils/get-transfer-list.js +22 -10
- package/dist/es5/lib/worker-utils/get-transfer-list.js.map +1 -1
- package/dist/es5/lib/worker-utils/remove-nontransferable-options.js +12 -21
- package/dist/es5/lib/worker-utils/remove-nontransferable-options.js.map +1 -1
- package/dist/es5/types.js.map +1 -1
- package/dist/es5/workers/null-worker.js +0 -6
- package/dist/es5/workers/null-worker.js.map +1 -1
- package/dist/esm/index.js +9 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/async-queue/async-queue.js +1 -14
- package/dist/esm/lib/async-queue/async-queue.js.map +1 -1
- package/dist/esm/lib/env-utils/assert.js +2 -0
- package/dist/esm/lib/env-utils/assert.js.map +1 -1
- package/dist/esm/lib/env-utils/globals.js +9 -1
- package/dist/esm/lib/env-utils/globals.js.map +1 -1
- package/dist/esm/lib/env-utils/version.js +4 -3
- package/dist/esm/lib/env-utils/version.js.map +1 -1
- package/dist/esm/lib/library-utils/library-utils.js +10 -12
- package/dist/esm/lib/library-utils/library-utils.js.map +1 -1
- package/dist/esm/lib/node/require-utils.node.js +7 -9
- package/dist/esm/lib/node/require-utils.node.js.map +1 -1
- package/dist/esm/lib/node/worker_threads-browser.js +1 -0
- package/dist/esm/lib/node/worker_threads-browser.js.map +1 -1
- package/dist/esm/lib/node/worker_threads.js.map +1 -1
- package/dist/esm/lib/process-utils/child-process-proxy.js +13 -25
- package/dist/esm/lib/process-utils/child-process-proxy.js.map +1 -1
- package/dist/esm/lib/process-utils/process-utils.js +3 -5
- package/dist/esm/lib/process-utils/process-utils.js.map +1 -1
- package/dist/esm/lib/worker-api/create-worker.js +4 -14
- package/dist/esm/lib/worker-api/create-worker.js.map +1 -1
- package/dist/esm/lib/worker-api/get-worker-url.js +6 -5
- package/dist/esm/lib/worker-api/get-worker-url.js.map +1 -1
- package/dist/esm/lib/worker-api/process-on-worker.js +9 -13
- package/dist/esm/lib/worker-api/process-on-worker.js.map +1 -1
- package/dist/esm/lib/worker-api/validate-worker-version.js +3 -2
- package/dist/esm/lib/worker-api/validate-worker-version.js.map +1 -1
- package/dist/esm/lib/worker-farm/worker-body.js +1 -13
- package/dist/esm/lib/worker-farm/worker-body.js.map +1 -1
- package/dist/esm/lib/worker-farm/worker-farm.js +9 -14
- package/dist/esm/lib/worker-farm/worker-farm.js.map +1 -1
- package/dist/esm/lib/worker-farm/worker-job.js +2 -9
- package/dist/esm/lib/worker-farm/worker-job.js.map +1 -1
- package/dist/esm/lib/worker-farm/worker-pool.js +8 -31
- package/dist/esm/lib/worker-farm/worker-pool.js.map +1 -1
- package/dist/esm/lib/worker-farm/worker-thread.js +3 -24
- package/dist/esm/lib/worker-farm/worker-thread.js.map +1 -1
- package/dist/esm/lib/worker-utils/get-loadable-worker-url.js +2 -3
- package/dist/esm/lib/worker-utils/get-loadable-worker-url.js.map +1 -1
- package/dist/esm/lib/worker-utils/get-transfer-list.js +26 -9
- package/dist/esm/lib/worker-utils/get-transfer-list.js.map +1 -1
- package/dist/esm/lib/worker-utils/remove-nontransferable-options.js +13 -18
- package/dist/esm/lib/worker-utils/remove-nontransferable-options.js.map +1 -1
- package/dist/esm/types.js.map +1 -1
- package/dist/esm/workers/null-worker.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/lib/library-utils/library-utils.js +5 -1
- package/dist/lib/node/worker_threads.js +5 -1
- package/dist/lib/process-utils/child-process-proxy.d.ts +1 -1
- package/dist/lib/process-utils/child-process-proxy.d.ts.map +1 -1
- package/dist/lib/process-utils/child-process-proxy.js +5 -1
- package/dist/lib/worker-api/create-worker.d.ts +1 -1
- package/dist/lib/worker-api/create-worker.d.ts.map +1 -1
- package/dist/lib/worker-api/process-on-worker.d.ts +1 -1
- package/dist/lib/worker-api/process-on-worker.d.ts.map +1 -1
- package/dist/lib/worker-api/process-on-worker.js +2 -2
- package/dist/lib/worker-farm/worker-farm.d.ts +1 -1
- package/dist/lib/worker-farm/worker-farm.d.ts.map +1 -1
- package/dist/lib/worker-farm/worker-farm.js +8 -8
- package/dist/lib/worker-farm/worker-pool.d.ts +4 -4
- package/dist/lib/worker-farm/worker-pool.d.ts.map +1 -1
- package/dist/lib/worker-farm/worker-pool.js +4 -4
- package/dist/lib/worker-farm/worker-thread.d.ts +1 -1
- package/dist/lib/worker-farm/worker-thread.d.ts.map +1 -1
- package/dist/lib/worker-farm/worker-thread.js +5 -4
- package/dist/lib/worker-utils/get-transfer-list.d.ts +5 -0
- package/dist/lib/worker-utils/get-transfer-list.d.ts.map +1 -1
- package/dist/lib/worker-utils/get-transfer-list.js +27 -1
- package/dist/lib/worker-utils/remove-nontransferable-options.d.ts +3 -3
- package/dist/lib/worker-utils/remove-nontransferable-options.d.ts.map +1 -1
- package/dist/lib/worker-utils/remove-nontransferable-options.js +18 -26
- package/dist/null-worker.js.map +1 -1
- package/dist/types.d.ts +9 -9
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/index.ts +1 -1
- package/src/lib/worker-api/process-on-worker.ts +2 -2
- package/src/lib/worker-farm/worker-thread.ts +4 -1
- package/src/lib/worker-utils/get-transfer-list.ts +28 -0
- package/src/lib/worker-utils/remove-nontransferable-options.ts +17 -25
|
@@ -1,31 +1,23 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
* @param
|
|
2
|
+
* Recursively drop non serializable values like functions and regexps.
|
|
3
|
+
* @param object
|
|
4
4
|
*/
|
|
5
|
-
export function removeNontransferableOptions(object: object): object {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
5
|
+
export function removeNontransferableOptions(object: object | null): object {
|
|
6
|
+
if (object === null) {
|
|
7
|
+
return {};
|
|
8
|
+
}
|
|
9
|
+
const clone = Object.assign({}, object);
|
|
11
10
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
return JSON.parse(JSON.stringify(value));
|
|
21
|
-
} catch (err) {
|
|
22
|
-
// discard key if value cannot be deduped
|
|
23
|
-
return undefined;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
// Store value in our set
|
|
27
|
-
cache.add(value);
|
|
11
|
+
Object.keys(clone).forEach((key) => {
|
|
12
|
+
// Checking if it is an object and not a typed array.
|
|
13
|
+
if (typeof object[key] === 'object' && !ArrayBuffer.isView(object[key])) {
|
|
14
|
+
clone[key] = removeNontransferableOptions(object[key]);
|
|
15
|
+
} else if (typeof clone[key] === 'function' || clone[key] instanceof RegExp) {
|
|
16
|
+
clone[key] = {};
|
|
17
|
+
} else {
|
|
18
|
+
clone[key] = object[key];
|
|
28
19
|
}
|
|
29
|
-
return value;
|
|
30
20
|
});
|
|
21
|
+
|
|
22
|
+
return clone;
|
|
31
23
|
}
|