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

68 lines
1.6 KiB
JavaScript

// Metro module 5888 (f5889).
import * as _arrayIncludes from "./arrayIncludes";
import * as _arrayIncludesWith from "./arrayIncludesWith";
import * as _Module5894 from "./Module5894";
import * as _setToArray from "./setToArray";
import * as _cacheHas from "./cacheHas";
import * as _SetCache from "./SetCache";
module.exports = function baseUniq(a0, a1, a2) {
let r5, r9, r48;
let r8 = _arrayIncludes;
const length = a0.length;
const r25 = [];
if (a2) {
r8 = _arrayIncludesWith;
r5 = false;
r9 = r25;
} else if (length >= 200) {
const r17 = a1 ? null : _Module5894(a0);
if (r17) {
return _setToArray(r17);
}
r8 = _cacheHas;
r9 = new _SetCache();
r5 = false;
} else {
r9 = a1 ? [] : r25;
r5 = true;
}
const r6 = 0 < length;
let r34 = 0;
if (r6) {
do {
const r35 = a0[r34];
const r1 = r34;
const r36 = a1 ? a1(r35) : r35;
const r37 = a2 ? r35 : r35 !== 0 ? r35 : 0;
L29: {
if (r5 && r36 == r36) {
const r44 = +r9.length;
let r45 = r44 - 1;
if (r44) {
do {
const r46 = r9[r45];
const r47 = r45;
if (r46 === r36) {
break L29;
}
r48 = +r47;
r45 = r48 - 1;
} while (r48);
}
if (a1) {
r9.push(r36);
}
r25.push(r37);
} else if (!r8(r9, r36, a2)) {
if (r9 !== r25) {
r9.push(r36);
}
r25.push(r37);
}
}
r34 = r1 + 1;
} while (r34 < length);
}
return r25;
};