Skip to content

Commit 22e67f8

Browse files
committed
add the custom inspect symbol as not-enumerable
1 parent 12fc59b commit 22e67f8

File tree

1 file changed

+13
-2
lines changed

1 file changed

+13
-2
lines changed

packages/shell-api/src/custom-inspect.ts

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,20 @@ function customDocumentInspect(
2222
return inspect(copyToInspect, newInspectOptions);
2323
}
2424

25+
function addInspectSymbol(obj: any) {
26+
if (!(obj as any)[customInspectSymbol]) {
27+
Object.defineProperty(obj, customInspectSymbol, {
28+
value: customDocumentInspect,
29+
enumerable: false,
30+
writable: true,
31+
configurable: true,
32+
});
33+
}
34+
}
35+
2536
export function addCustomInspect(obj: any) {
2637
if (Array.isArray(obj)) {
27-
(obj as any)[customInspectSymbol] ??= customDocumentInspect;
38+
addInspectSymbol(obj);
2839
for (const item of obj) {
2940
addCustomInspect(item);
3041
}
@@ -36,7 +47,7 @@ export function addCustomInspect(obj: any) {
3647
!(obj instanceof Date) &&
3748
!(obj instanceof RegExp)
3849
) {
39-
obj[customInspectSymbol] = customDocumentInspect;
50+
addInspectSymbol(obj);
4051
for (const value of Object.values(obj)) {
4152
addCustomInspect(value);
4253
}

0 commit comments

Comments
 (0)