threadsx 2.1.0 → 2.2.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.
Files changed (77) hide show
  1. package/dist/master/implementation.node.js +12 -16
  2. package/dist/master/pool.js +16 -5
  3. package/dist/master/spawn.js +24 -7
  4. package/dist/node-require.d.ts +13 -0
  5. package/dist/node-require.js +87 -0
  6. package/dist/worker_threads.d.ts +3 -7
  7. package/dist/worker_threads.js +35 -11
  8. package/dist-esm/common.js +1 -0
  9. package/dist-esm/common.js.map +1 -0
  10. package/dist-esm/errors.js +1 -0
  11. package/dist-esm/errors.js.map +1 -0
  12. package/dist-esm/index.js +1 -0
  13. package/dist-esm/index.js.map +1 -0
  14. package/dist-esm/master/get-bundle-url.browser.js +1 -0
  15. package/dist-esm/master/get-bundle-url.browser.js.map +1 -0
  16. package/dist-esm/master/implementation.browser.js +1 -0
  17. package/dist-esm/master/implementation.browser.js.map +1 -0
  18. package/dist-esm/master/implementation.js +1 -0
  19. package/dist-esm/master/implementation.js.map +1 -0
  20. package/dist-esm/master/implementation.node.js +13 -16
  21. package/dist-esm/master/implementation.node.js.map +1 -0
  22. package/dist-esm/master/index.js +1 -0
  23. package/dist-esm/master/index.js.map +1 -0
  24. package/dist-esm/master/invocation-proxy.js +1 -0
  25. package/dist-esm/master/invocation-proxy.js.map +1 -0
  26. package/dist-esm/master/pool-types.js +1 -0
  27. package/dist-esm/master/pool-types.js.map +1 -0
  28. package/dist-esm/master/pool.js +17 -5
  29. package/dist-esm/master/pool.js.map +1 -0
  30. package/dist-esm/master/register.js +1 -0
  31. package/dist-esm/master/register.js.map +1 -0
  32. package/dist-esm/master/spawn.js +25 -7
  33. package/dist-esm/master/spawn.js.map +1 -0
  34. package/dist-esm/master/thread.js +1 -0
  35. package/dist-esm/master/thread.js.map +1 -0
  36. package/dist-esm/node-require.js +50 -0
  37. package/dist-esm/node-require.js.map +1 -0
  38. package/dist-esm/observable-promise.js +1 -0
  39. package/dist-esm/observable-promise.js.map +1 -0
  40. package/dist-esm/observable.js +1 -0
  41. package/dist-esm/observable.js.map +1 -0
  42. package/dist-esm/ponyfills.js +1 -0
  43. package/dist-esm/ponyfills.js.map +1 -0
  44. package/dist-esm/promise.js +1 -0
  45. package/dist-esm/promise.js.map +1 -0
  46. package/dist-esm/serializers.js +1 -0
  47. package/dist-esm/serializers.js.map +1 -0
  48. package/dist-esm/symbols.js +1 -0
  49. package/dist-esm/symbols.js.map +1 -0
  50. package/dist-esm/transferable.js +1 -0
  51. package/dist-esm/transferable.js.map +1 -0
  52. package/dist-esm/types/master.js +1 -0
  53. package/dist-esm/types/master.js.map +1 -0
  54. package/dist-esm/types/messages.js +1 -0
  55. package/dist-esm/types/messages.js.map +1 -0
  56. package/dist-esm/types/worker.js +1 -0
  57. package/dist-esm/types/worker.js.map +1 -0
  58. package/dist-esm/worker/bundle-entry.js +1 -0
  59. package/dist-esm/worker/bundle-entry.js.map +1 -0
  60. package/dist-esm/worker/implementation.browser.js +1 -0
  61. package/dist-esm/worker/implementation.browser.js.map +1 -0
  62. package/dist-esm/worker/implementation.js +1 -0
  63. package/dist-esm/worker/implementation.js.map +1 -0
  64. package/dist-esm/worker/implementation.worker_threads.js +1 -0
  65. package/dist-esm/worker/implementation.worker_threads.js.map +1 -0
  66. package/dist-esm/worker/index.js +1 -0
  67. package/dist-esm/worker/index.js.map +1 -0
  68. package/dist-esm/worker_threads.js +3 -11
  69. package/dist-esm/worker_threads.js.map +1 -0
  70. package/esm/master/implementation.node.mjs +12 -16
  71. package/esm/master/pool.mjs +16 -5
  72. package/esm/master/spawn.mjs +24 -7
  73. package/esm/node-require.mjs +58 -0
  74. package/esm/worker/implementation.mjs +0 -1
  75. package/esm/worker/implementation.worker_threads.mjs +0 -2
  76. package/esm/worker_threads.mjs +3 -11
  77. package/package.json +15 -7
@@ -75,17 +75,32 @@ function createEventObservable(worker, workerTermination) {
75
75
  };
76
76
  observer.next(workerEvent);
77
77
  });
78
- worker.addEventListener("message", messageHandler);
79
- worker.addEventListener("unhandledrejection", rejectionHandler);
80
- workerTermination.then(() => {
78
+ let finished = false;
79
+ const removeListeners = () => {
80
+ worker.removeEventListener("message", messageHandler);
81
+ worker.removeEventListener("unhandledrejection", rejectionHandler);
82
+ worker.removeEventListener("exit", exitHandler);
83
+ };
84
+ const finish = () => {
85
+ if (finished)
86
+ return;
87
+ finished = true;
81
88
  const terminationEvent = {
82
89
  type: WorkerEventType.termination
83
90
  };
84
- worker.removeEventListener("message", messageHandler);
85
- worker.removeEventListener("unhandledrejection", rejectionHandler);
91
+ removeListeners();
86
92
  observer.next(terminationEvent);
87
93
  observer.complete();
88
- });
94
+ };
95
+ // A worker can also go away without Thread.terminate() being called (crash,
96
+ // process.exit() in the worker). Complete the observable and detach the
97
+ // listeners in that case, too, instead of leaving them behind forever.
98
+ const exitHandler = (() => finish());
99
+ worker.addEventListener("message", messageHandler);
100
+ worker.addEventListener("unhandledrejection", rejectionHandler);
101
+ worker.addEventListener("exit", exitHandler);
102
+ workerTermination.then(finish);
103
+ return removeListeners;
89
104
  });
90
105
  }
91
106
  function createTerminator(worker) {
@@ -120,7 +135,7 @@ function setPrivateThreadProps(raw, worker, workerEvents, terminate) {
120
135
  */
121
136
  export function spawn(worker, options) {
122
137
  return __awaiter(this, void 0, void 0, function* () {
123
- var _a, _b;
138
+ var _a, _b, _c, _d;
124
139
  debugSpawn("Initializing new thread");
125
140
  const timeout = options && options.timeout ? options.timeout : initMessageTimeout;
126
141
  let initMessage;
@@ -147,7 +162,10 @@ export function spawn(worker, options) {
147
162
  }
148
163
  else {
149
164
  const type = exposed.type;
165
+ // Same teardown as a failed init: don't leak a live worker handle.
166
+ yield Promise.resolve((_d = (_c = worker).terminate) === null || _d === void 0 ? void 0 : _d.call(_c)).catch(() => undefined);
150
167
  throw Error(`Worker init message states unexpected type of expose(): ${type}`);
151
168
  }
152
169
  });
153
170
  }
171
+ //# sourceMappingURL=spawn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spawn.js","sourceRoot":"","sources":["../../src/master/spawn.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,WAAW,MAAM,OAAO,CAAA;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAA;AACtD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAClE,OAAO,EAOL,eAAe,EAIhB,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAe3E,MAAM,aAAa,GAAG,WAAW,CAAC,yBAAyB,CAAC,CAAA;AAC5D,MAAM,UAAU,GAAG,WAAW,CAAC,sBAAsB,CAAC,CAAA;AACtD,MAAM,gBAAgB,GAAG,WAAW,CAAC,6BAA6B,CAAC,CAAA;AAEnE,MAAM,aAAa,GAAG,CAAC,IAAS,EAA6B,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAM,MAAgB,CAAA;AACvG,MAAM,sBAAsB,GAAG,CAAC,IAAS,EAAsC,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAM,eAAyB,CAAA;AAElI,MAAM,kBAAkB,GAAG,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,2BAA2B;IACxI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,EAAE,CAAC;IAC9D,CAAC,CAAC,KAAK,CAAA;AAET,SAAe,WAAW,CAAI,OAAmB,EAAE,WAAmB,EAAE,YAAoB;;QAC1F,IAAI,aAAkB,CAAA;QAEtB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrD,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,WAAW,CAAC,CAAA;QAC5E,CAAC,CAAC,CAAA;QACF,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC;gBACxB,OAAO;gBACP,OAAO;aACR,CAAC,CAAA;QACJ,CAAC;gBAAS,CAAC;YACT,2EAA2E;YAC3E,uEAAuE;YACvE,8DAA8D;YAC9D,YAAY,CAAC,aAAa,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC;CAAA;AAED,SAAS,kBAAkB,CAAC,MAAkB;IAC5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,cAAc,GAAG,CAAC,CAAC,KAAmB,EAAE,EAAE;YAC9C,aAAa,CAAC,sDAAsD,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YACjF,IAAI,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;gBACrD,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACrB,CAAC;iBAAM,IAAI,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9C,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;gBACrD,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;YACvC,CAAC;QACH,CAAC,CAAkB,CAAA;QACnB,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAkB,EAAE,iBAA+B;IAChF,OAAO,IAAI,UAAU,CAAc,QAAQ,CAAC,EAAE;QAC5C,MAAM,cAAc,GAAG,CAAC,CAAC,YAA0B,EAAE,EAAE;YACrD,MAAM,WAAW,GAA4B;gBAC3C,IAAI,EAAE,eAAe,CAAC,OAAO;gBAC7B,IAAI,EAAE,YAAY,CAAC,IAAI;aACxB,CAAA;YACD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC5B,CAAC,CAAkB,CAAA;QACnB,MAAM,gBAAgB,GAAG,CAAC,CAAC,UAAiC,EAAE,EAAE;YAC9D,gBAAgB,CAAC,8CAA8C,EAAE,UAAU,CAAC,CAAA;YAC5E,MAAM,WAAW,GAA6B;gBAC5C,IAAI,EAAE,eAAe,CAAC,aAAa;gBACnC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC;aAChC,CAAA;YACD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC5B,CAAC,CAAkB,CAAA;QACnB,IAAI,QAAQ,GAAG,KAAK,CAAA;QAEpB,MAAM,eAAe,GAAG,GAAG,EAAE;YAC3B,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;YACrD,MAAM,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAA;YAClE,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QACjD,CAAC,CAAA;QACD,MAAM,MAAM,GAAG,GAAG,EAAE;YAClB,IAAI,QAAQ;gBAAE,OAAM;YACpB,QAAQ,GAAG,IAAI,CAAA;YACf,MAAM,gBAAgB,GAA2B;gBAC/C,IAAI,EAAE,eAAe,CAAC,WAAW;aAClC,CAAA;YACD,eAAe,EAAE,CAAA;YACjB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAC/B,QAAQ,CAAC,QAAQ,EAAE,CAAA;QACrB,CAAC,CAAA;QACD,4EAA4E;QAC5E,wEAAwE;QACxE,uEAAuE;QACvE,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAkB,CAAA;QAErD,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;QAClD,MAAM,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAA;QAC/D,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QAE5C,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAE9B,OAAO,eAAe,CAAA;IACxB,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAkB;IAC1C,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,GAAG,yBAAyB,EAAQ,CAAA;IACjE,MAAM,SAAS,GAAG,GAAS,EAAE;QAC3B,gBAAgB,CAAC,oBAAoB,CAAC,CAAA;QACtC,4DAA4D;QAC5D,MAAM,MAAM,CAAC,SAAS,EAAE,CAAA;QACxB,QAAQ,EAAE,CAAA;IACZ,CAAC,CAAA,CAAA;IACD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,CAAA;AACnC,CAAC;AAED,SAAS,qBAAqB,CAAI,GAAM,EAAE,MAAkB,EAAE,YAAqC,EAAE,SAA8B;IACjI,MAAM,YAAY,GAAG,YAAY;SAC9B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,eAAe,CAAC,aAAa,CAAC;SAC7D,GAAG,CAAC,UAAU,CAAC,EAAE,CAAE,UAAuC,CAAC,KAAK,CAAC,CAAA;IAEpE,OAAO,MAAM,CAAC,MAAM,CAAC,GAAU,EAAE;QAC/B,CAAC,OAAO,CAAC,EAAE,YAAY;QACvB,CAAC,OAAO,CAAC,EAAE,YAAY;QACvB,CAAC,UAAU,CAAC,EAAE,SAAS;QACvB,CAAC,OAAO,CAAC,EAAE,MAAM;KAClB,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAgB,KAAK,CACzB,MAAkB,EAClB,OAA8B;;;QAE9B,UAAU,CAAC,yBAAyB,CAAC,CAAA;QAErC,MAAM,OAAO,GAAG,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAA;QAEjF,IAAI,WAA8B,CAAA;QAClC,IAAI,CAAC;YACH,WAAW,GAAG,MAAM,WAAW,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,8DAA8D,OAAO,0CAA0C,CAAC,CAAA;QACvL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,0EAA0E;YAC1E,0EAA0E;YAC1E,mDAAmD;YACnD,MAAM,OAAO,CAAC,OAAO,CAAC,MAAA,MAAC,MAAc,EAAC,SAAS,kDAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YAC3E,MAAM,KAAK,CAAA;QACb,CAAC;QACD,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAA;QAEnC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAC3D,MAAM,MAAM,GAAG,qBAAqB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QAEzD,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;YACzC,OAAO,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAiC,CAAA;QAChG,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;YACxD,OAAO,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAiC,CAAA;QAChG,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAI,OAAwC,CAAC,IAAI,CAAA;YAC3D,mEAAmE;YACnE,MAAM,OAAO,CAAC,OAAO,CAAC,MAAA,MAAC,MAAc,EAAC,SAAS,kDAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YAC3E,MAAM,KAAK,CAAC,2DAA2D,IAAI,EAAE,CAAC,CAAA;QAChF,CAAC;IACH,CAAC;CAAA"}
@@ -17,3 +17,4 @@ export const Thread = {
17
17
  return thread[$terminate]();
18
18
  }
19
19
  };
20
+ //# sourceMappingURL=thread.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thread.js","sourceRoot":"","sources":["../../src/master/thread.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAGzD,SAAS,IAAI,CAAC,OAAe;IAC3B,MAAM,KAAK,CAAC,OAAO,CAAC,CAAA;AACtB,CAAC;AAID,qFAAqF;AACrF,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,gGAAgG;IAChG,MAAM,CAA6B,MAAe;QAChD,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,qGAAqG,CAAC,CAAA;IACvI,CAAC;IACD,2HAA2H;IAC3H,MAAM,CAA6B,MAAe;QAChD,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,sGAAsG,CAAC,CAAA;IACxI,CAAC;IACD,yFAAyF;IACzF,SAAS,CAA6B,MAAe;QACnD,OAAO,MAAM,CAAC,UAAU,CAAC,EAAE,CAAA;IAC7B,CAAC;CACF,CAAA"}
@@ -0,0 +1,50 @@
1
+ /*
2
+ * Runtime module/path resolution for the Node.js implementation.
3
+ *
4
+ * Spawning a worker needs real filesystem paths at runtime, but webpack
5
+ * rewrites `require`, `require.resolve` and `__dirname` at compile time.
6
+ * `__non_webpack_require__` is webpack's documented escape hatch: it compiles
7
+ * to the untouched `require` of the output bundle, so resolution happens at
8
+ * runtime against the real filesystem. Every other environment (plain Node,
9
+ * esbuild, rollup, Vite) keeps `createRequire` and `__dirname` intact, so no
10
+ * `eval()` tricks are needed there.
11
+ *
12
+ * This module is only ever loaded on Node targets: the package.json "browser"
13
+ * field maps its sole importers to `false` for browser bundles.
14
+ */
15
+ import { createRequire } from "module";
16
+ import * as path from "path";
17
+ /** Whether this code is running inside a webpack bundle. */
18
+ export function isWebpackBundle() {
19
+ return typeof __non_webpack_require__ === "function";
20
+ }
21
+ let nodeRequire;
22
+ /**
23
+ * Returns a `require` that resolves against the real filesystem at runtime,
24
+ * even inside a bundle.
25
+ */
26
+ export function getNodeRequire() {
27
+ if (typeof __non_webpack_require__ === "function") {
28
+ return __non_webpack_require__;
29
+ }
30
+ if (!nodeRequire) {
31
+ // CJS build: `__filename` is this module's real path. ESM build (esm/):
32
+ // the build banner derives `__filename` from `import.meta.url`. In an
33
+ // environment that defines neither (dist-esm bundled straight to ESM by a
34
+ // non-webpack bundler), resolve from the current working directory.
35
+ const base = typeof __filename !== "undefined"
36
+ ? __filename
37
+ : path.join(process.cwd(), "__threadsx_resolve__.js");
38
+ nodeRequire = createRequire(base);
39
+ }
40
+ return nodeRequire;
41
+ }
42
+ /**
43
+ * Directory to resolve relative worker paths against when no caller path and
44
+ * no base URL are available. Matches this module's directory where the runtime
45
+ * provides one, and falls back to the current working directory.
46
+ */
47
+ export function getModuleDirname() {
48
+ return typeof __dirname !== "undefined" ? __dirname : process.cwd();
49
+ }
50
+ //# sourceMappingURL=node-require.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-require.js","sourceRoot":"","sources":["../src/node-require.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAI5B,4DAA4D;AAC5D,MAAM,UAAU,eAAe;IAC7B,OAAO,OAAO,uBAAuB,KAAK,UAAU,CAAA;AACtD,CAAC;AAED,IAAI,WAAoC,CAAA;AAExC;;;GAGG;AACH,MAAM,UAAU,cAAc;IAC5B,IAAI,OAAO,uBAAuB,KAAK,UAAU,EAAE,CAAC;QAClD,OAAO,uBAAuB,CAAA;IAChC,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,wEAAwE;QACxE,sEAAsE;QACtE,0EAA0E;QAC1E,oEAAoE;QACpE,MAAM,IAAI,GAAG,OAAO,UAAU,KAAK,WAAW;YAC5C,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,yBAAyB,CAAC,CAAA;QACvD,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;IACnC,CAAC;IACD,OAAO,WAAW,CAAA;AACpB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,OAAO,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;AACrE,CAAC"}
@@ -144,3 +144,4 @@ export class ObservablePromise extends Observable {
144
144
  }
145
145
  }
146
146
  _a = Symbol.toStringTag;
147
+ //# sourceMappingURL=observable-promise.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observable-promise.js","sourceRoot":"","sources":["../src/observable-promise.ts"],"names":[],"mappings":"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"}
@@ -34,3 +34,4 @@ export class Subject extends Observable {
34
34
  this[$observers].forEach(observer => observer.next(value));
35
35
  }
36
36
  }
37
+ //# sourceMappingURL=observable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observable.js","sourceRoot":"","sources":["../src/observable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAwC,MAAM,gBAAgB,CAAA;AACjF,OAAO,EAAE,UAAU,EAAE,CAAA;AAErB,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;AAEtC;;;;;;;;GAQG;AACH,MAAM,OAAO,OAAW,SAAQ,UAAa;IAG3C;QACE,KAAK,CAAC,QAAQ,CAAC,EAAE;YACf,IAAI,CAAC,UAAU,CAAC,GAAG;gBACjB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;gBAC3B,QAAQ;aACT,CAAA;YACD,MAAM,WAAW,GAAG,GAAG,EAAE;gBACvB,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAA;YACvF,CAAC,CAAA;YACD,OAAO,WAAW,CAAA;QACpB,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAA;IACvB,CAAC;IAEM,QAAQ;QACb,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC3D,CAAC;IAEM,KAAK,CAAC,KAAU;QACrB,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;IAC7D,CAAC;IAEM,IAAI,CAAC,KAAQ;QAClB,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;IAC5D,CAAC;CACF"}
@@ -16,3 +16,4 @@ export function allSettled(values) {
16
16
  }
17
17
  }));
18
18
  }
19
+ //# sourceMappingURL=ponyfills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ponyfills.js","sourceRoot":"","sources":["../src/ponyfills.ts"],"names":[],"mappings":"AAQA,0FAA0F;AAC1F,MAAM,UAAU,UAAU,CAAI,MAAW;IACvC,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACnC,MAAM,SAAS,GAAG,CAAC,KAAQ,EAAE,EAAE;YAC7B,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAW,CAAA;QAChD,CAAC,CAAA;QACD,MAAM,QAAQ,GAAG,CAAC,MAAW,EAAE,EAAE;YAC/B,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAW,CAAA;QAChD,CAAC,CAAA;QAED,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACzC,IAAI,CAAC;YACH,OAAO,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC9B,CAAC;IACH,CAAC,CAAC,CAAC,CAAA;AACL,CAAC"}
@@ -22,3 +22,4 @@ export function createPromiseWithResolver() {
22
22
  };
23
23
  return [promise, exposedResolver];
24
24
  }
25
+ //# sourceMappingURL=promise.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promise.js","sourceRoot":"","sources":["../src/promise.ts"],"names":[],"mappings":"AAAA,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,SAAS,CAAA;AAEjC;;;GAGG;AACH,MAAM,UAAU,yBAAyB;IACvC,IAAI,eAAe,GAAG,KAAK,CAAA;IAC3B,IAAI,UAAa,CAAA;IACjB,IAAI,QAAQ,GAAwC,SAAS,CAAA;IAE7D,MAAM,OAAO,GAAG,IAAI,OAAO,CAAI,OAAO,CAAC,EAAE;QACvC,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,CAAC,UAAU,CAAC,CAAA;QACrB,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,OAAO,CAAA;QACpB,CAAC;IACH,CAAC,CAAC,CAAA;IACF,MAAM,eAAe,GAAG,CAAC,KAAQ,EAAE,EAAE;QACnC,eAAe,GAAG,IAAI,CAAA;QACtB,UAAU,GAAG,KAAK,CAAA;QAClB,QAAQ,CAAC,UAAU,CAAC,CAAA;IACtB,CAAC,CAAA;IACD,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC,CAAA;AACnC,CAAC"}
@@ -45,3 +45,4 @@ export const DefaultSerializer = {
45
45
  }
46
46
  }
47
47
  };
48
+ //# sourceMappingURL=serializers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serializers.js","sourceRoot":"","sources":["../src/serializers.ts"],"names":[],"mappings":"AAYA,MAAM,UAAU,gBAAgB,CAC9B,MAA0C,EAC1C,cAAgE;IAEhE,MAAM,oBAAoB,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC5D,MAAM,kBAAkB,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAExD,OAAO;QACL,WAAW,CAAC,OAAoB;YAC9B,OAAO,cAAc,CAAC,WAAW,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;QAClE,CAAC;QAED,SAAS,CAAC,KAAgB;YACxB,OAAO,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAA;QAC5D,CAAC;KACF,CAAA;AACH,CAAC;AAoBD,MAAM,sBAAsB,GAAuC;IACjE,WAAW,CAAC,OAAwB;QAClC,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC3C,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC,CAAA;IACJ,CAAC;IACD,SAAS,CAAC,KAAY;QACpB,OAAO;YACL,cAAc,EAAE,SAAS;YACzB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAA;IACH,CAAC;CACF,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,KAAU,EAA4B,EAAE,CACjE,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,gBAAgB,IAAI,KAAK,IAAI,KAAK,CAAC,cAAc,KAAK,SAAS,CAAA;AAEvG,MAAM,CAAC,MAAM,iBAAiB,GAAiC;IAC7D,WAAW,CAAC,OAAyB;QACnC,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,OAAO,sBAAsB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QACpD,CAAC;aAAM,CAAC;YACN,OAAO,OAAO,CAAA;QAChB,CAAC;IACH,CAAC;IACD,SAAS,CAAC,KAAU;QAClB,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO,sBAAsB,CAAC,SAAS,CAAC,KAAK,CAA4B,CAAA;QAC3E,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;CACF,CAAA"}
@@ -3,3 +3,4 @@ export const $events = Symbol("thread.events");
3
3
  export const $terminate = Symbol("thread.terminate");
4
4
  export const $transferable = Symbol("thread.transferable");
5
5
  export const $worker = Symbol("thread.worker");
6
+ //# sourceMappingURL=symbols.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symbols.js","sourceRoot":"","sources":["../src/symbols.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,eAAe,CAAC,CAAA;AAC9C,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,eAAe,CAAC,CAAA;AAC9C,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAA;AACpD,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAA;AAC1D,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,eAAe,CAAC,CAAA"}
@@ -20,3 +20,4 @@ export function Transfer(payload, transferables) {
20
20
  transferables
21
21
  };
22
22
  }
23
+ //# sourceMappingURL=transferable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transferable.js","sourceRoot":"","sources":["../src/transferable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAezC,SAAS,cAAc,CAAC,KAAU;IAChC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IACrD,+FAA+F;IAC/F,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAU;IAC7C,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,aAAa,CAAC,CAAA;AACnE,CAAC;AAuCD,MAAM,UAAU,QAAQ,CAAI,OAAU,EAAE,aAA8B;IACpE,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YAAE,MAAM,KAAK,EAAE,CAAA;QAC3C,aAAa,GAAG,CAAC,OAAO,CAAC,CAAA;IAC3B,CAAC;IAED,OAAO;QACL,CAAC,aAAa,CAAC,EAAE,IAAI;QACrB,IAAI,EAAE,OAAO;QACb,aAAa;KACd,CAAA;AACH,CAAC"}
@@ -6,3 +6,4 @@ export var WorkerEventType;
6
6
  WorkerEventType["message"] = "message";
7
7
  WorkerEventType["termination"] = "termination";
8
8
  })(WorkerEventType || (WorkerEventType = {}));
9
+ //# sourceMappingURL=master.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"master.js","sourceRoot":"","sources":["../../src/types/master.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AA8IlE,qFAAqF;AACrF,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,kDAA+B,CAAA;IAC/B,sCAAmB,CAAA;IACnB,8CAA2B,CAAA;AAC7B,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B"}
@@ -15,3 +15,4 @@ export var WorkerMessageType;
15
15
  WorkerMessageType["running"] = "running";
16
16
  WorkerMessageType["uncaughtError"] = "uncaughtError";
17
17
  })(WorkerMessageType || (WorkerMessageType = {}));
18
+ //# sourceMappingURL=messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/types/messages.ts"],"names":[],"mappings":"AAOA,6BAA6B;AAC7B,2BAA2B;AAE3B,MAAM,CAAN,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,sCAAiB,CAAA;IACjB,gCAAW,CAAA;AACb,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B;AAgBD,4BAA4B;AAC5B,2BAA2B;AAE3B,MAAM,CAAN,IAAY,iBAMX;AAND,WAAY,iBAAiB;IAC3B,oCAAe,CAAA;IACf,kCAAa,CAAA;IACb,sCAAiB,CAAA;IACjB,wCAAmB,CAAA;IACnB,oDAA+B,CAAA;AACjC,CAAC,EANW,iBAAiB,KAAjB,iBAAiB,QAM5B"}
@@ -1 +1,2 @@
1
1
  export {};
2
+ //# sourceMappingURL=worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/types/worker.ts"],"names":[],"mappings":""}
@@ -6,3 +6,4 @@ if (typeof global !== "undefined") {
6
6
  if (typeof self !== "undefined") {
7
7
  self.expose = expose;
8
8
  }
9
+ //# sourceMappingURL=bundle-entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundle-entry.js","sourceRoot":"","sources":["../../src/worker/bundle-entry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,cAAc,SAAS,CAAA;AAEvB,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;IACjC,MAAc,CAAC,MAAM,GAAG,MAAM,CAAA;AACjC,CAAC;AACD,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE,CAAC;IAC/B,IAAY,CAAC,MAAM,GAAG,MAAM,CAAA;AAC/B,CAAC"}
@@ -21,3 +21,4 @@ export default {
21
21
  postMessageToMaster,
22
22
  subscribeToMasterMessages
23
23
  };
24
+ //# sourceMappingURL=implementation.browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"implementation.browser.js","sourceRoot":"","sources":["../../src/worker/implementation.browser.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAY3B,MAAM,eAAe,GAA2C,SAAS,eAAe;IACtF,MAAM,eAAe,GAAG,OAAO,IAAI,KAAK,WAAW,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,IAAI,YAAY,MAAM,CAAA;IAC9G,OAAO,OAAO,IAAI,KAAK,WAAW,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,UAAU,IAAI,CAAC,eAAe,CAAA;AAClG,CAAC,CAAA;AAED,MAAM,mBAAmB,GAA+C,SAAS,mBAAmB,CAAC,IAAI,EAAE,YAAa;IACtH,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;AACtC,CAAC,CAAA;AAED,MAAM,yBAAyB,GAAqD,SAAS,yBAAyB,CAAC,SAAS;IAC9H,MAAM,cAAc,GAAG,CAAC,YAA0B,EAAE,EAAE;QACpD,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC,CAAA;IACD,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAA+B,CAAC,CAAA;IACtE,CAAC,CAAA;IACD,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,cAA+B,CAAC,CAAA;IACjE,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AAED,eAAe;IACb,eAAe;IACf,mBAAmB;IACnB,yBAAyB;CAC1B,CAAA"}
@@ -11,3 +11,4 @@ function selectNodeImplementation() {
11
11
  export default runningInNode
12
12
  ? selectNodeImplementation()
13
13
  : WebWorkerImplementation;
14
+ //# sourceMappingURL=implementation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"implementation.js","sourceRoot":"","sources":["../../src/worker/implementation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,uBAAuB,MAAM,0BAA0B,CAAA;AAC9D,OAAO,2BAA2B,MAAM,iCAAiC,CAAA;AAEzE,MAAM,aAAa,GAAG,OAAO,OAAO,KAAK,WAAW,IAAK,OAAO,CAAC,IAAe,KAAK,SAAS,IAAI,KAAK,IAAI,OAAO,CAAA;AAElH,SAAS,wBAAwB;IAC/B,2BAA2B,CAAC,kBAAkB,EAAE,CAAA;IAChD,OAAO,2BAA2B,CAAA;AACpC,CAAC;AAED,eAAe,aAAa;IAC1B,CAAC,CAAC,wBAAwB,EAAE;IAC5B,CAAC,CAAC,uBAAuB,CAAA"}
@@ -35,3 +35,4 @@ export default {
35
35
  subscribeToMasterMessages,
36
36
  testImplementation
37
37
  };
38
+ //# sourceMappingURL=implementation.worker_threads.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"implementation.worker_threads.js","sourceRoot":"","sources":["../../src/worker/implementation.worker_threads.ts"],"names":[],"mappings":"AAEA,OAAO,aAAa,MAAM,mBAAmB,CAAA;AAE7C,SAAS,iBAAiB,CAAC,IAAoC;IAC7D,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,KAAK,CAAC,8DAA8D,CAAC,CAAA;IAC7E,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,eAAe,GAA2C,SAAS,eAAe;IACtF,OAAO,CAAC,aAAa,EAAE,CAAC,YAAY,CAAA;AACtC,CAAC,CAAA;AAED,MAAM,mBAAmB,GAA+C,SAAS,mBAAmB,CAAC,IAAI,EAAE,YAAY;IACrH,iBAAiB,CAAC,aAAa,EAAE,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,YAAmB,CAAC,CAAA;AACtF,CAAC,CAAA;AAED,MAAM,yBAAyB,GAAqD,SAAS,yBAAyB,CAAC,SAAS;IAC9H,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC,UAAU,CAAA;IAE7C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,KAAK,CAAC,8DAA8D,CAAC,CAAA;IAC7E,CAAC;IACD,MAAM,cAAc,GAAG,CAAC,OAAY,EAAE,EAAE;QACtC,SAAS,CAAC,OAAO,CAAC,CAAA;IACpB,CAAC,CAAA;IACD,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,iBAAiB,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;IAC9D,CAAC,CAAA;IACD,iBAAiB,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;IAC3D,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AAED,SAAS,kBAAkB;IACzB,mDAAmD;IACnD,aAAa,EAAE,CAAA;AACjB,CAAC;AAED,eAAe;IACb,eAAe;IACf,mBAAmB;IACnB,yBAAyB;IACzB,kBAAkB;CACnB,CAAA"}
@@ -213,3 +213,4 @@ if (typeof process !== "undefined" && typeof process.on === "function" && Implem
213
213
  }
214
214
  });
215
215
  }
216
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/worker/index.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,5 @@
1
- // Webpack hack
2
- let implementation;
3
- function selectImplementation() {
4
- return typeof __non_webpack_require__ === "function"
5
- ? __non_webpack_require__("worker_threads")
6
- : eval("require")("worker_threads");
7
- }
1
+ import * as WorkerThreadsModule from "worker_threads";
8
2
  export default function getImplementation() {
9
- if (!implementation) {
10
- implementation = selectImplementation();
11
- }
12
- return implementation;
3
+ return WorkerThreadsModule;
13
4
  }
5
+ //# sourceMappingURL=worker_threads.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker_threads.js","sourceRoot":"","sources":["../src/worker_threads.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,mBAAmB,MAAM,gBAAgB,CAAA;AASrD,MAAM,CAAC,OAAO,UAAU,iBAAiB;IACvC,OAAO,mBAAmB,CAAA;AAC5B,CAAC"}
@@ -8,6 +8,8 @@ import getCallsites from 'callsites';
8
8
  import { cpus } from 'os';
9
9
  import * as path from 'path';
10
10
  import { fileURLToPath } from 'url';
11
+ import { isWebpackBundle, getNodeRequire, getModuleDirname } from '../node-require.mjs';
12
+ import getImplementation from '../worker_threads.mjs';
11
13
 
12
14
  /// <reference lib="dom" />
13
15
  // NOTE: `callsites` is intentionally pinned to ^3. v4+ is ESM-only and would
@@ -31,7 +33,7 @@ function signalHandlersDisabled() {
31
33
  * spawned directly during development. Prefers `tsx`, falls back to `ts-node`.
32
34
  */
33
35
  function detectTsRuntime() {
34
- if (typeof __non_webpack_require__ === "function") {
36
+ if (isWebpackBundle()) {
35
37
  // Webpack build: => No TS runtime required or possible
36
38
  return null;
37
39
  }
@@ -41,7 +43,7 @@ function detectTsRuntime() {
41
43
  detectedTsRuntime = null;
42
44
  for (const candidate of ["tsx", "ts-node"]) {
43
45
  try {
44
- eval("require").resolve(candidate);
46
+ getNodeRequire().resolve(candidate);
45
47
  detectedTsRuntime = candidate;
46
48
  break;
47
49
  }
@@ -89,19 +91,17 @@ function rebaseScriptPath(scriptPath, ignoreRegex) {
89
91
  }
90
92
  function resolveScriptPath(scriptPath, baseURL) {
91
93
  const makeRelative = (filePath) => {
92
- // eval() hack is also webpack-related
93
- return path.isAbsolute(filePath) ? filePath : path.join(baseURL || eval("__dirname"), filePath);
94
+ return path.isAbsolute(filePath) ? filePath : path.join(baseURL || getModuleDirname(), filePath);
94
95
  };
95
- const workerFilePath = typeof __non_webpack_require__ === "function"
96
- ? __non_webpack_require__.resolve(makeRelative(scriptPath))
97
- : eval("require").resolve(makeRelative(rebaseScriptPath(scriptPath, /[/\\]worker_threads[/\\]/)));
96
+ // In a webpack bundle, walking the call stack is useless (every caller lives
97
+ // inside the bundle), so relative paths resolve without rebasing.
98
+ const workerFilePath = isWebpackBundle()
99
+ ? getNodeRequire().resolve(makeRelative(scriptPath))
100
+ : getNodeRequire().resolve(makeRelative(rebaseScriptPath(scriptPath, /[/\\]worker_threads[/\\]/)));
98
101
  return workerFilePath;
99
102
  }
100
103
  function initWorkerThreadsWorker() {
101
- // Webpack hack
102
- const NativeWorker = typeof __non_webpack_require__ === "function"
103
- ? __non_webpack_require__("worker_threads").Worker
104
- : eval("require")("worker_threads").Worker;
104
+ const NativeWorker = getImplementation().Worker;
105
105
  let allWorkers = [];
106
106
  class Worker extends NativeWorker {
107
107
  constructor(scriptPath, options) {
@@ -180,11 +180,7 @@ function getWorkerImplementation() {
180
180
  return implementation;
181
181
  }
182
182
  function isWorkerRuntime() {
183
- // Webpack hack
184
- const isMainThread = typeof __non_webpack_require__ === "function"
185
- ? __non_webpack_require__("worker_threads").isMainThread
186
- : eval("require")("worker_threads").isMainThread;
187
- return !isMainThread;
183
+ return !getImplementation().isMainThread;
188
184
  }
189
185
 
190
186
  export { defaultPoolSize, getWorkerImplementation, isWorkerRuntime };
@@ -146,6 +146,13 @@ class WorkerPool {
146
146
  eventSubscription.unsubscribe();
147
147
  reject(event.error);
148
148
  }
149
+ else if (event.type === PoolEventType.taskCanceled && event.taskID === taskID) {
150
+ // Without this branch a canceled task would keep its event
151
+ // subscription alive for the pool's whole lifetime and its promise
152
+ // would never settle.
153
+ eventSubscription.unsubscribe();
154
+ reject(Error("Task has been canceled."));
155
+ }
149
156
  else if (event.type === PoolEventType.terminated) {
150
157
  eventSubscription.unsubscribe();
151
158
  reject(Error("Pool has been terminated before task was run."));
@@ -163,10 +170,12 @@ class WorkerPool {
163
170
  }
164
171
  });
165
172
  if (this.initErrors.length > 0) {
173
+ failureSubscription.unsubscribe();
166
174
  return Promise.reject(this.initErrors[0]);
167
175
  }
168
176
  if (allowResolvingImmediately && this.taskQueue.length === 0) {
169
177
  yield allSettled(getCurrentlyRunningTasks());
178
+ failureSubscription.unsubscribe();
170
179
  return taskFailures;
171
180
  }
172
181
  yield new Promise((resolve, reject) => {
@@ -233,6 +242,13 @@ class WorkerPool {
233
242
  if (this.initErrors.length > 0) {
234
243
  throw this.initErrors[0];
235
244
  }
245
+ // Check the queue limit before taskCompletion() below subscribes to the
246
+ // pool events — throwing after would leak that subscription.
247
+ if (this.taskQueue.length >= maxQueuedJobs) {
248
+ throw Error("Maximum number of pool tasks queued. Refusing to queue another one.\n" +
249
+ "This usually happens for one of two reasons: We are either at peak " +
250
+ "workload right now or some tasks just won't finish, thus blocking the pool.");
251
+ }
236
252
  const taskID = this.nextTaskID++;
237
253
  const taskCompletion = this.taskCompletion(taskID);
238
254
  taskCompletion.catch((error) => {
@@ -254,11 +270,6 @@ class WorkerPool {
254
270
  },
255
271
  then: taskCompletion.then.bind(taskCompletion)
256
272
  };
257
- if (this.taskQueue.length >= maxQueuedJobs) {
258
- throw Error("Maximum number of pool tasks queued. Refusing to queue another one.\n" +
259
- "This usually happens for one of two reasons: We are either at peak " +
260
- "workload right now or some tasks just won't finish, thus blocking the pool.");
261
- }
262
273
  this.debug(`Queueing task #${task.id}...`);
263
274
  this.taskQueue.push(task);
264
275
  this.eventSubject.next({
@@ -82,17 +82,32 @@ function createEventObservable(worker, workerTermination) {
82
82
  };
83
83
  observer.next(workerEvent);
84
84
  });
85
- worker.addEventListener("message", messageHandler);
86
- worker.addEventListener("unhandledrejection", rejectionHandler);
87
- workerTermination.then(() => {
85
+ let finished = false;
86
+ const removeListeners = () => {
87
+ worker.removeEventListener("message", messageHandler);
88
+ worker.removeEventListener("unhandledrejection", rejectionHandler);
89
+ worker.removeEventListener("exit", exitHandler);
90
+ };
91
+ const finish = () => {
92
+ if (finished)
93
+ return;
94
+ finished = true;
88
95
  const terminationEvent = {
89
96
  type: WorkerEventType.termination
90
97
  };
91
- worker.removeEventListener("message", messageHandler);
92
- worker.removeEventListener("unhandledrejection", rejectionHandler);
98
+ removeListeners();
93
99
  observer.next(terminationEvent);
94
100
  observer.complete();
95
- });
101
+ };
102
+ // A worker can also go away without Thread.terminate() being called (crash,
103
+ // process.exit() in the worker). Complete the observable and detach the
104
+ // listeners in that case, too, instead of leaving them behind forever.
105
+ const exitHandler = (() => finish());
106
+ worker.addEventListener("message", messageHandler);
107
+ worker.addEventListener("unhandledrejection", rejectionHandler);
108
+ worker.addEventListener("exit", exitHandler);
109
+ workerTermination.then(finish);
110
+ return removeListeners;
96
111
  });
97
112
  }
98
113
  function createTerminator(worker) {
@@ -127,7 +142,7 @@ function setPrivateThreadProps(raw, worker, workerEvents, terminate) {
127
142
  */
128
143
  function spawn(worker, options) {
129
144
  return __awaiter(this, void 0, void 0, function* () {
130
- var _a, _b;
145
+ var _a, _b, _c, _d;
131
146
  debugSpawn("Initializing new thread");
132
147
  const timeout = options && options.timeout ? options.timeout : initMessageTimeout;
133
148
  let initMessage;
@@ -154,6 +169,8 @@ function spawn(worker, options) {
154
169
  }
155
170
  else {
156
171
  const type = exposed.type;
172
+ // Same teardown as a failed init: don't leak a live worker handle.
173
+ yield Promise.resolve((_d = (_c = worker).terminate) === null || _d === void 0 ? void 0 : _d.call(_c)).catch(() => undefined);
157
174
  throw Error(`Worker init message states unexpected type of expose(): ${type}`);
158
175
  }
159
176
  });
@@ -0,0 +1,58 @@
1
+ import { createRequire as __createRequire } from "module";
2
+ import { fileURLToPath as __fileURLToPath } from "url";
3
+ import { dirname as __pathDirname } from "path";
4
+ const require = __createRequire(import.meta.url);
5
+ const __filename = __fileURLToPath(import.meta.url);
6
+ const __dirname = __pathDirname(__filename);
7
+ import { createRequire } from 'module';
8
+ import * as path from 'path';
9
+
10
+ /*
11
+ * Runtime module/path resolution for the Node.js implementation.
12
+ *
13
+ * Spawning a worker needs real filesystem paths at runtime, but webpack
14
+ * rewrites `require`, `require.resolve` and `__dirname` at compile time.
15
+ * `__non_webpack_require__` is webpack's documented escape hatch: it compiles
16
+ * to the untouched `require` of the output bundle, so resolution happens at
17
+ * runtime against the real filesystem. Every other environment (plain Node,
18
+ * esbuild, rollup, Vite) keeps `createRequire` and `__dirname` intact, so no
19
+ * `eval()` tricks are needed there.
20
+ *
21
+ * This module is only ever loaded on Node targets: the package.json "browser"
22
+ * field maps its sole importers to `false` for browser bundles.
23
+ */
24
+ /** Whether this code is running inside a webpack bundle. */
25
+ function isWebpackBundle() {
26
+ return typeof __non_webpack_require__ === "function";
27
+ }
28
+ let nodeRequire;
29
+ /**
30
+ * Returns a `require` that resolves against the real filesystem at runtime,
31
+ * even inside a bundle.
32
+ */
33
+ function getNodeRequire() {
34
+ if (typeof __non_webpack_require__ === "function") {
35
+ return __non_webpack_require__;
36
+ }
37
+ if (!nodeRequire) {
38
+ // CJS build: `__filename` is this module's real path. ESM build (esm/):
39
+ // the build banner derives `__filename` from `import.meta.url`. In an
40
+ // environment that defines neither (dist-esm bundled straight to ESM by a
41
+ // non-webpack bundler), resolve from the current working directory.
42
+ const base = typeof __filename !== "undefined"
43
+ ? __filename
44
+ : path.join(process.cwd(), "__threadsx_resolve__.js");
45
+ nodeRequire = createRequire(base);
46
+ }
47
+ return nodeRequire;
48
+ }
49
+ /**
50
+ * Directory to resolve relative worker paths against when no caller path and
51
+ * no base URL are available. Matches this module's directory where the runtime
52
+ * provides one, and falls back to the current working directory.
53
+ */
54
+ function getModuleDirname() {
55
+ return typeof __dirname !== "undefined" ? __dirname : process.cwd();
56
+ }
57
+
58
+ export { getModuleDirname, getNodeRequire, isWebpackBundle };
@@ -12,7 +12,6 @@ import WorkerThreadsImplementation from './implementation.worker_threads.mjs';
12
12
  */
13
13
  const runningInNode = typeof process !== 'undefined' && process.arch !== 'browser' && 'pid' in process;
14
14
  function selectNodeImplementation() {
15
- WorkerThreadsImplementation.testImplementation();
16
15
  return WorkerThreadsImplementation;
17
16
  }
18
17
  var Implementation = runningInNode
@@ -33,8 +33,6 @@ const subscribeToMasterMessages = function subscribeToMasterMessages(onMessage)
33
33
  return unsubscribe;
34
34
  };
35
35
  function testImplementation() {
36
- // Will throw if `worker_threads` are not available
37
- getImplementation();
38
36
  }
39
37
  var WorkerThreadsImplementation = {
40
38
  isWorkerRuntime,
@@ -4,18 +4,10 @@ import { dirname as __pathDirname } from "path";
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __pathDirname(__filename);
7
- // Webpack hack
8
- let implementation;
9
- function selectImplementation() {
10
- return typeof __non_webpack_require__ === "function"
11
- ? __non_webpack_require__("worker_threads")
12
- : eval("require")("worker_threads");
13
- }
7
+ import * as WorkerThreadsModule from 'worker_threads';
8
+
14
9
  function getImplementation() {
15
- if (!implementation) {
16
- implementation = selectImplementation();
17
- }
18
- return implementation;
10
+ return WorkerThreadsModule;
19
11
  }
20
12
 
21
13
  export { getImplementation as default };