@clipboard-health/util-ts 3.11.0 → 3.12.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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@clipboard-health/util-ts",
3
3
  "description": "TypeScript utilities.",
4
- "version": "3.11.0",
4
+ "version": "3.12.0",
5
5
  "bugs": "https://github.com/ClipboardHealth/core-utils/issues",
6
6
  "dependencies": {
7
7
  "tslib": "2.8.1"
@@ -4,6 +4,14 @@ exports.toError = toError;
4
4
  const isString_1 = require("../strings/isString");
5
5
  const stringify_1 = require("../strings/stringify");
6
6
  const isError_1 = require("./isError");
7
+ const IGNORED_PROPERTIES = new Set([
8
+ "message",
9
+ "stack",
10
+ "name",
11
+ "__proto__",
12
+ "prototype",
13
+ "constructor",
14
+ ]);
7
15
  /**
8
16
  * Converts an error-like value to an Error instance. If the input is already an Error, returns it
9
17
  * directly. Otherwise, creates a new Error with an appropriate string representation of the input.
@@ -20,6 +28,15 @@ function toError(value) {
20
28
  if ("stack" in value) {
21
29
  error.stack = String(value.stack);
22
30
  }
31
+ if ("name" in value && typeof value.name === "string") {
32
+ error.name = String(value.name);
33
+ }
34
+ // Preserve original properties without clobbering.
35
+ Reflect.ownKeys(value)
36
+ .filter((key) => !IGNORED_PROPERTIES.has(String(key)))
37
+ .forEach((key) => {
38
+ error[key] = value[key];
39
+ });
23
40
  return error;
24
41
  }
25
42
  if (typeof value === "symbol") {
@@ -1 +1 @@
1
- {"version":3,"file":"toError.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/errors/toError.ts"],"names":[],"mappings":";;AAWA,0BAuBC;AAlCD,kDAA+C;AAC/C,oDAAiD;AACjD,uCAAoC;AAEpC;;;;;;GAMG;AACH,SAAgB,OAAO,CAAC,KAAc;IACpC,IAAI,IAAA,iBAAO,EAAC,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QAC7D,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACrB,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,CAAC;QACH,OAAO,IAAI,KAAK,CAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,qBAAS,EAAC,KAAK,CAAC,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAClC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"toError.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/errors/toError.ts"],"names":[],"mappings":";;AAsBA,0BAkCC;AAxDD,kDAA+C;AAC/C,oDAAiD;AACjD,uCAAoC;AAEpC,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,SAAS;IACT,OAAO;IACP,MAAM;IACN,WAAW;IACX,WAAW;IACX,aAAa;CACd,CAAC,CAAC;AAIH;;;;;;GAMG;AACH,SAAgB,OAAO,CAAC,KAAc;IACpC,IAAI,IAAA,iBAAO,EAAC,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QAC7D,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACrB,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtD,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,mDAAmD;QACnD,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;aACnB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;aACrD,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACd,KAAmC,CAAC,GAAG,CAAC,GAAI,KAAwB,CAAC,GAAG,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QAEL,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,CAAC;QACH,OAAO,IAAI,KAAK,CAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,qBAAS,EAAC,KAAK,CAAC,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAClC,CAAC;AACH,CAAC"}