Files
discord-decomp/_bundle/baseClone.js
T
2026-11-01 12:12:55 +02:00

140 lines
4.2 KiB
JavaScript

// Metro module 4303 (f4304).
import * as _isObject from "./isObject";
import * as _Module599 from "./Module599";
import * as _initCloneArray from "./initCloneArray";
import * as _copyArray from "./copyArray";
import * as _Module770 from "./Module770";
import * as _Module621 from "./Module621";
import * as _cloneBuffer from "./cloneBuffer";
import * as _initCloneObject from "./initCloneObject";
import * as _copySymbolsIn from "./copySymbolsIn";
import * as _baseAssignIn from "./baseAssignIn";
import * as _copySymbols from "./copySymbols";
import * as _baseAssign from "./baseAssign";
import * as _initCloneByTag from "./initCloneByTag";
import * as _Stack from "./Stack";
import * as _Module4326 from "./Module4326";
import * as _Module4328 from "./Module4328";
import * as _arrayEach from "./arrayEach";
import * as _assignValue from "./assignValue";
let c2537_2 = {};
c2537_2["[object Uint32Array]"] = true;
c2537_2["[object Uint16Array]"] = true;
c2537_2["[object Uint8ClampedArray]"] = true;
c2537_2["[object Uint8Array]"] = true;
c2537_2["[object Symbol]"] = true;
c2537_2["[object String]"] = true;
c2537_2["[object Set]"] = true;
c2537_2["[object RegExp]"] = true;
c2537_2["[object Object]"] = true;
c2537_2["[object Number]"] = true;
c2537_2["[object Map]"] = true;
c2537_2["[object Int32Array]"] = true;
c2537_2["[object Int16Array]"] = true;
c2537_2["[object Int8Array]"] = true;
c2537_2["[object Float64Array]"] = true;
c2537_2["[object Float32Array]"] = true;
c2537_2["[object Date]"] = true;
c2537_2["[object Boolean]"] = true;
c2537_2["[object DataView]"] = true;
c2537_2["[object ArrayBuffer]"] = true;
c2537_2["[object Array]"] = true;
c2537_2["[object Arguments]"] = true;
c2537_2["[object WeakMap]"] = false;
c2537_2["[object Function]"] = false;
c2537_2["[object Error]"] = false;
const baseClone = function baseClone(a0, a1, a2, a3, a4, a5) {
let r15, r47;
let c14130_4, c14130_5;
let c14130_0 = a0;
let c14130_3 = a5;
const r1 = 1 & a1;
const r24 = 2 & a1;
const r25 = 4 & a1;
let r26 = void 0;
if (a2) {
const r8 = a4 ? a2(a0, a3, a4, a5) : a2(a0);
c14130_4 = r8;
r26 = r8;
}
if (r26 !== void 0) {
return r26;
}
if (_isObject(a0)) {
L33: {
r15 = _Module599(a0);
if (r15) {
const r66 = _initCloneArray(a0);
c14130_4 = r66;
r47 = r66;
if (!r1) {
return _copyArray(a0, r66);
}
} else {
const r35 = _Module770(a0);
const r4 = r35 == "[object Function]" || r35 == "[object GeneratorFunction]";
if (_Module621(a0)) {
return _cloneBuffer(a0, r1);
}
L21: {
if (r35 != "[object Object]" && r35 != "[object Arguments]") {
if (r4 && !a4) {
break L21;
}
if (c2537_2[r35]) {
r47 = _initCloneByTag(a0, r35, r1);
c14130_4 = r47;
break L33;
}
return a4 ? a0 : {};
}
}
const r17 = !r24 && !r4 ? _initCloneObject(a0) : {};
c14130_4 = r17;
r47 = r17;
if (!r1) {
return r24 ? _copySymbolsIn(a0, _baseAssignIn(r17, a0)) : _copySymbols(a0, _baseAssign(r17, a0));
}
}
}
let r70 = a5;
if (!a5) {
const _Stack2 = new _Stack();
c14130_3 = _Stack2;
r70 = _Stack2;
}
const r78 = r70.get(a0);
const r79 = r70;
if (r78) {
return r78;
}
r79.set(a0, r47);
if (_Module4326(a0)) {
a0.forEach(function(item) {
c14130_4.add(baseClone(item, a1, a2, item, c14130_0, c14130_3));
});
} else if (_Module4328(a0)) {
a0.forEach(function(item, index) {
c14130_4.set(index, baseClone(item, a1, a2, index, c14130_0, c14130_3));
});
}
const r96 = require(r25 ? r24 ? dependencyMap[16] : dependencyMap[17] : r24 ? dependencyMap[18] : dependencyMap[19]);
let r97 = r15 ? void 0 : r96(a0);
c14130_5 = r97;
if (!r97) {
r97 = a0;
}
_arrayEach(r97, function(a0, r4) {
let r9 = a0;
if (c14130_5) {
r9 = c14130_0[a0];
r4 = a0;
}
_assignValue(c14130_4, r4, baseClone(r9, a1, a2, r4, c14130_0, c14130_3));
});
return r47;
}
return a0;
};
module.exports = baseClone;