promise-worker-bi 6.0.2 → 6.0.3

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 (2) hide show
  1. package/dist/index.js +17 -14
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1,5 +1,8 @@
1
+ const isDOMException = (value) => {
2
+ return typeof DOMException !== "undefined" && value instanceof DOMException;
3
+ };
1
4
  const isError = (error) => {
2
- if (Error.isError) return Error.isError(error);
5
+ if (Error.isError) return Error.isError(error) || isDOMException(error);
3
6
  return true;
4
7
  };
5
8
  const parseMessage = (message) => {
@@ -42,6 +45,17 @@ const logError = (err) => {
42
45
  console.error("Error in worker:");
43
46
  console.error(err);
44
47
  };
48
+ const toError = (value) => {
49
+ if (Error.isError ? Error.isError(value) || isDOMException(value) : value instanceof Error) return value;
50
+ let message;
51
+ if (typeof value === "string") message = value;
52
+ else try {
53
+ message = JSON.stringify(value) ?? String(value);
54
+ } catch {
55
+ message = String(value);
56
+ }
57
+ return new Error(message);
58
+ };
45
59
  const isSharedWorker = (worker) => {
46
60
  return worker.port !== void 0;
47
61
  };
@@ -100,10 +114,10 @@ var PWBBase = class extends EventTarget {
100
114
  else result.then((finalResult) => {
101
115
  this._postResponse(messageID, null, finalResult, hostID);
102
116
  }, (finalError) => {
103
- this._postResponse(messageID, finalError, void 0, hostID);
117
+ this._postResponse(messageID, toError(finalError), void 0, hostID);
104
118
  });
105
119
  } catch (err) {
106
- this._postResponse(messageID, err, void 0, hostID);
120
+ this._postResponse(messageID, toError(err), void 0, hostID);
107
121
  }
108
122
  }
109
123
  _onMessageCommon(e) {
@@ -209,17 +223,6 @@ var PWBHost = class extends PWBBase {
209
223
  //#endregion
210
224
  //#region src/PWBWorker.ts
211
225
  let nextMessageID = 0;
212
- const toError = (value) => {
213
- if (Error.isError ? Error.isError(value) : value instanceof Error) return value;
214
- let message;
215
- if (typeof value === "string") message = value;
216
- else try {
217
- message = JSON.stringify(value) ?? String(value);
218
- } catch {
219
- message = String(value);
220
- }
221
- return new Error(message);
222
- };
223
226
  var PWBWorker = class extends PWBBase {
224
227
  _hosts = /* @__PURE__ */ new Map();
225
228
  _maxHostID = -1;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "promise-worker-bi",
3
- "version": "6.0.2",
3
+ "version": "6.0.3",
4
4
  "description": "Promise-based messaging for Web Workers and Shared Workers",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",