@nadohq/shared 0.1.0-alpha.44 → 0.1.0-alpha.45
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/utils/toPrintableObject.cjs +16 -8
- package/dist/utils/toPrintableObject.cjs.map +1 -1
- package/dist/utils/toPrintableObject.d.cts +3 -2
- package/dist/utils/toPrintableObject.d.ts +3 -2
- package/dist/utils/toPrintableObject.js +16 -8
- package/dist/utils/toPrintableObject.js.map +1 -1
- package/package.json +2 -2
- package/src/utils/toPrintableObject.ts +20 -9
|
@@ -24,7 +24,7 @@ __export(toPrintableObject_exports, {
|
|
|
24
24
|
});
|
|
25
25
|
module.exports = __toCommonJS(toPrintableObject_exports);
|
|
26
26
|
var import_bigDecimal = require("./math/bigDecimal.cjs");
|
|
27
|
-
function toPrintableObject(obj) {
|
|
27
|
+
function toPrintableObject(obj, seen = /* @__PURE__ */ new WeakSet()) {
|
|
28
28
|
if (obj == null) {
|
|
29
29
|
return null;
|
|
30
30
|
}
|
|
@@ -32,15 +32,23 @@ function toPrintableObject(obj) {
|
|
|
32
32
|
return obj.toString();
|
|
33
33
|
}
|
|
34
34
|
if (Array.isArray(obj)) {
|
|
35
|
-
return obj.map(toPrintableObject);
|
|
35
|
+
return obj.map((item) => toPrintableObject(item, seen));
|
|
36
36
|
}
|
|
37
37
|
if (typeof obj === "object") {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
38
|
+
if (seen.has(obj)) {
|
|
39
|
+
return "[Circular]";
|
|
40
|
+
}
|
|
41
|
+
seen.add(obj);
|
|
42
|
+
try {
|
|
43
|
+
return Object.fromEntries(
|
|
44
|
+
Object.entries(obj).map(([key, value]) => [
|
|
45
|
+
key,
|
|
46
|
+
toPrintableObject(value, seen)
|
|
47
|
+
])
|
|
48
|
+
);
|
|
49
|
+
} catch {
|
|
50
|
+
return "[Unserializable Object]";
|
|
51
|
+
}
|
|
44
52
|
}
|
|
45
53
|
return obj;
|
|
46
54
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/toPrintableObject.ts"],"sourcesContent":["import { BigDecimal } from './math/bigDecimal';\n\n/**\n * Util for converting any BigDecimal types into a string so that it can be logged nicely
|
|
1
|
+
{"version":3,"sources":["../../src/utils/toPrintableObject.ts"],"sourcesContent":["import { BigDecimal } from './math/bigDecimal';\n\n/**\n * Util for converting any BigDecimal types into a string so that it can be logged nicely.\n * Handles cyclic references by returning '[Circular]' for already-visited objects.\n */\nexport function toPrintableObject(obj: unknown, seen = new WeakSet()): unknown {\n if (obj == null) {\n return null;\n }\n if (obj instanceof BigDecimal || typeof obj === 'bigint') {\n return obj.toString();\n }\n if (Array.isArray(obj)) {\n return obj.map((item) => toPrintableObject(item, seen));\n }\n if (typeof obj === 'object') {\n // Detect cyclic references\n if (seen.has(obj)) {\n return '[Circular]';\n }\n seen.add(obj);\n\n try {\n return Object.fromEntries(\n Object.entries(obj).map(([key, value]) => [\n key,\n toPrintableObject(value, seen),\n ]),\n );\n } catch {\n return '[Unserializable Object]';\n }\n }\n return obj;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAA2B;AAMpB,SAAS,kBAAkB,KAAc,OAAO,oBAAI,QAAQ,GAAY;AAC7E,MAAI,OAAO,MAAM;AACf,WAAO;AAAA,EACT;AACA,MAAI,eAAe,gCAAc,OAAO,QAAQ,UAAU;AACxD,WAAO,IAAI,SAAS;AAAA,EACtB;AACA,MAAI,MAAM,QAAQ,GAAG,GAAG;AACtB,WAAO,IAAI,IAAI,CAAC,SAAS,kBAAkB,MAAM,IAAI,CAAC;AAAA,EACxD;AACA,MAAI,OAAO,QAAQ,UAAU;AAE3B,QAAI,KAAK,IAAI,GAAG,GAAG;AACjB,aAAO;AAAA,IACT;AACA,SAAK,IAAI,GAAG;AAEZ,QAAI;AACF,aAAO,OAAO;AAAA,QACZ,OAAO,QAAQ,GAAG,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AAAA,UACxC;AAAA,UACA,kBAAkB,OAAO,IAAI;AAAA,QAC/B,CAAC;AAAA,MACH;AAAA,IACF,QAAQ;AACN,aAAO;AAAA,IACT;AAAA,EACF;AACA,SAAO;AACT;","names":[]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Util for converting any BigDecimal types into a string so that it can be logged nicely
|
|
2
|
+
* Util for converting any BigDecimal types into a string so that it can be logged nicely.
|
|
3
|
+
* Handles cyclic references by returning '[Circular]' for already-visited objects.
|
|
3
4
|
*/
|
|
4
|
-
declare function toPrintableObject(obj: unknown): unknown;
|
|
5
|
+
declare function toPrintableObject(obj: unknown, seen?: WeakSet<WeakKey>): unknown;
|
|
5
6
|
|
|
6
7
|
export { toPrintableObject };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Util for converting any BigDecimal types into a string so that it can be logged nicely
|
|
2
|
+
* Util for converting any BigDecimal types into a string so that it can be logged nicely.
|
|
3
|
+
* Handles cyclic references by returning '[Circular]' for already-visited objects.
|
|
3
4
|
*/
|
|
4
|
-
declare function toPrintableObject(obj: unknown): unknown;
|
|
5
|
+
declare function toPrintableObject(obj: unknown, seen?: WeakSet<WeakKey>): unknown;
|
|
5
6
|
|
|
6
7
|
export { toPrintableObject };
|
|
@@ -2,7 +2,7 @@ import "../chunk-5WRI5ZAA.js";
|
|
|
2
2
|
|
|
3
3
|
// src/utils/toPrintableObject.ts
|
|
4
4
|
import { BigDecimal } from "./math/bigDecimal.js";
|
|
5
|
-
function toPrintableObject(obj) {
|
|
5
|
+
function toPrintableObject(obj, seen = /* @__PURE__ */ new WeakSet()) {
|
|
6
6
|
if (obj == null) {
|
|
7
7
|
return null;
|
|
8
8
|
}
|
|
@@ -10,15 +10,23 @@ function toPrintableObject(obj) {
|
|
|
10
10
|
return obj.toString();
|
|
11
11
|
}
|
|
12
12
|
if (Array.isArray(obj)) {
|
|
13
|
-
return obj.map(toPrintableObject);
|
|
13
|
+
return obj.map((item) => toPrintableObject(item, seen));
|
|
14
14
|
}
|
|
15
15
|
if (typeof obj === "object") {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
16
|
+
if (seen.has(obj)) {
|
|
17
|
+
return "[Circular]";
|
|
18
|
+
}
|
|
19
|
+
seen.add(obj);
|
|
20
|
+
try {
|
|
21
|
+
return Object.fromEntries(
|
|
22
|
+
Object.entries(obj).map(([key, value]) => [
|
|
23
|
+
key,
|
|
24
|
+
toPrintableObject(value, seen)
|
|
25
|
+
])
|
|
26
|
+
);
|
|
27
|
+
} catch {
|
|
28
|
+
return "[Unserializable Object]";
|
|
29
|
+
}
|
|
22
30
|
}
|
|
23
31
|
return obj;
|
|
24
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/toPrintableObject.ts"],"sourcesContent":["import { BigDecimal } from './math/bigDecimal';\n\n/**\n * Util for converting any BigDecimal types into a string so that it can be logged nicely
|
|
1
|
+
{"version":3,"sources":["../../src/utils/toPrintableObject.ts"],"sourcesContent":["import { BigDecimal } from './math/bigDecimal';\n\n/**\n * Util for converting any BigDecimal types into a string so that it can be logged nicely.\n * Handles cyclic references by returning '[Circular]' for already-visited objects.\n */\nexport function toPrintableObject(obj: unknown, seen = new WeakSet()): unknown {\n if (obj == null) {\n return null;\n }\n if (obj instanceof BigDecimal || typeof obj === 'bigint') {\n return obj.toString();\n }\n if (Array.isArray(obj)) {\n return obj.map((item) => toPrintableObject(item, seen));\n }\n if (typeof obj === 'object') {\n // Detect cyclic references\n if (seen.has(obj)) {\n return '[Circular]';\n }\n seen.add(obj);\n\n try {\n return Object.fromEntries(\n Object.entries(obj).map(([key, value]) => [\n key,\n toPrintableObject(value, seen),\n ]),\n );\n } catch {\n return '[Unserializable Object]';\n }\n }\n return obj;\n}\n"],"mappings":";;;AAAA,SAAS,kBAAkB;AAMpB,SAAS,kBAAkB,KAAc,OAAO,oBAAI,QAAQ,GAAY;AAC7E,MAAI,OAAO,MAAM;AACf,WAAO;AAAA,EACT;AACA,MAAI,eAAe,cAAc,OAAO,QAAQ,UAAU;AACxD,WAAO,IAAI,SAAS;AAAA,EACtB;AACA,MAAI,MAAM,QAAQ,GAAG,GAAG;AACtB,WAAO,IAAI,IAAI,CAAC,SAAS,kBAAkB,MAAM,IAAI,CAAC;AAAA,EACxD;AACA,MAAI,OAAO,QAAQ,UAAU;AAE3B,QAAI,KAAK,IAAI,GAAG,GAAG;AACjB,aAAO;AAAA,IACT;AACA,SAAK,IAAI,GAAG;AAEZ,QAAI;AACF,aAAO,OAAO;AAAA,QACZ,OAAO,QAAQ,GAAG,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AAAA,UACxC;AAAA,UACA,kBAAkB,OAAO,IAAI;AAAA,QAC/B,CAAC;AAAA,MACH;AAAA,IACF,QAAQ;AACN,aAAO;AAAA,IACT;AAAA,EACF;AACA,SAAO;AACT;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nadohq/shared",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
3
|
+
"version": "0.1.0-alpha.45",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"description": "Shared utilities, types, and contract helpers for Nado SDK",
|
|
@@ -49,5 +49,5 @@
|
|
|
49
49
|
"bignumber.js": "^9.3.0",
|
|
50
50
|
"viem": "*"
|
|
51
51
|
},
|
|
52
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "e260625b2c31928d19845dab67996b81658a54c1"
|
|
53
53
|
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { BigDecimal } from './math/bigDecimal';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
|
-
* Util for converting any BigDecimal types into a string so that it can be logged nicely
|
|
4
|
+
* Util for converting any BigDecimal types into a string so that it can be logged nicely.
|
|
5
|
+
* Handles cyclic references by returning '[Circular]' for already-visited objects.
|
|
5
6
|
*/
|
|
6
|
-
export function toPrintableObject(obj: unknown): unknown {
|
|
7
|
+
export function toPrintableObject(obj: unknown, seen = new WeakSet()): unknown {
|
|
7
8
|
if (obj == null) {
|
|
8
9
|
return null;
|
|
9
10
|
}
|
|
@@ -11,15 +12,25 @@ export function toPrintableObject(obj: unknown): unknown {
|
|
|
11
12
|
return obj.toString();
|
|
12
13
|
}
|
|
13
14
|
if (Array.isArray(obj)) {
|
|
14
|
-
return obj.map(toPrintableObject);
|
|
15
|
+
return obj.map((item) => toPrintableObject(item, seen));
|
|
15
16
|
}
|
|
16
17
|
if (typeof obj === 'object') {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
// Detect cyclic references
|
|
19
|
+
if (seen.has(obj)) {
|
|
20
|
+
return '[Circular]';
|
|
21
|
+
}
|
|
22
|
+
seen.add(obj);
|
|
23
|
+
|
|
24
|
+
try {
|
|
25
|
+
return Object.fromEntries(
|
|
26
|
+
Object.entries(obj).map(([key, value]) => [
|
|
27
|
+
key,
|
|
28
|
+
toPrintableObject(value, seen),
|
|
29
|
+
]),
|
|
30
|
+
);
|
|
31
|
+
} catch {
|
|
32
|
+
return '[Unserializable Object]';
|
|
33
|
+
}
|
|
23
34
|
}
|
|
24
35
|
return obj;
|
|
25
36
|
}
|