1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | const lodash_1 = require("./lodash");
|
4 | function proxySafeCloneDeepWith(thing, callback) {
|
5 | return lodash_1.default.cloneDeepWith(thing, (val, key, obj, stack) => {
|
6 | if (isSafeWithProxy(key)) {
|
7 | return callback(val, key, obj, stack);
|
8 | }
|
9 | });
|
10 | }
|
11 | exports.default = proxySafeCloneDeepWith;
|
12 | function isSafeWithProxy(key) {
|
13 | return key &&
|
14 | key !== 'constructor' &&
|
15 | (!key.toString || key.toString() !== 'Symbol(Symbol.toStringTag)');
|
16 | }
|