Files
discord-decomp/sources/by-id/module-01476.js
T
2026-07-28 01:06:53 +03:00

1378 lines
61 KiB
JavaScript

/* Metro module 1476; source: unknown; dependencies: [] */
function _fun16886(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#16886, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:6, offset: 0x00e5df39, size: 74 bytes, params: 8, frame: 10
let env0_0 = {map: function(a0, a1) {
var env0_0 = a1;
var env0_1 = {};
return a1 ? a0.map(_fun16888) : a0.slice();
}, naturalOrder: function(a0, a1) {
return a0 < a1 ? -1 : a0 > a1 ? 1 : 0;
}, sum: function(a0, a1) {
var env0_0 = a1;
var env0_1 = {};
return a0.reduce(a1 ? _fun16891 : _fun16892, 0);
}, max: max_16893};
module.exports = _fun16894().quantize;
function map_16887(a0, a1) { // fn#16887, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:52, offset: 0x00e5df83, size: 49 bytes, params: 3, frame: 12
const env0_0 = a1;
const env0_1 = {};
return a1 ? a0.map(_fun16888) : a0.slice();
function _fun16888(a0, a1) { // fn#16888, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:95, offset: 0x00e5dfb4, size: 36 bytes, params: 3, frame: 13
const binding = env0_1;
binding.index = a1;
return require.call(binding, a0);
}
}
function sum_16890(a0, a1) { // fn#16890, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:219, offset: 0x00e5dfd8, size: 49 bytes, params: 3, frame: 14
const env0_0 = a1;
const env0_1 = {};
return a0.reduce(a1 ? _fun16891 : function(a0, a1) {
return a0 + a1;
}, 0);
function _fun16891(a0, a1, a2) { // fn#16891, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:264, offset: 0x00e5e009, size: 43 bytes, params: 4, frame: 13
const binding = env0_1;
binding.index = a2;
return a0 + require.call(binding, a1);
}
}
function max_16893(a0, a1) { // fn#16893, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:346, offset: 0x00e5e034, size: 58 bytes, params: 3, frame: 16
var r1;
let value = a0;
const Math = global.Math;
const max = Math.max;
const apply = max.apply;
if (a1) {
value = env0_0.map(value, a1);
r1 = value;
} else {
r1 = value;
}
return Reflect.apply(apply, max, [null, r1]);
}
function _fun16894() { // fn#16894, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:415, offset: 0x00e5e06e, size: 185 bytes, params: 1, frame: 5
const getColorIndex = function(a0, a1, a2) {
return (a0 << 10) + (a1 << 5) + a2;
};
const PQueue = function(a0) {
var env0_0 = a0;
var env0_3 = _fun16897;
var env0_1 = [];
var env0_2 = false;
return {push: _fun16898, peek: _fun16899, pop: _fun16900, size: _fun16901, map: _fun16902, debug: _fun16903};
};
const closure = function(a0, a1, a2, a3, a4, a5, a6) {
this.r1 = a0;
this.r2 = a1;
this.g1 = a2;
this.g2 = a3;
this.b1 = a4;
this.b2 = a5;
this.histo = a6;
};
const CMap2 = CMap;
closure.prototype = {volume: function(a0) {
var value;
var value2;
var property = this._volume;
if (!(property && !a0)) {
property = this.r2;
value = property - this.r1 + 1;
property = this.g2;
value2 = property - this.g1 + 1;
property = this.b2;
this._volume = value * value2 * (property - this.b1 + 1);
}
return this._volume;
}, count: count_16910, copy: copy_16911, avg: avg, contains: contains_16913};
CMap2.prototype = {push: function(a0) {
this.vboxes.push({vbox: a0, color: a0.avg()});
}, palette: function() {
return this.vboxes.map(_fun16916);
}, size: function() {
return this.vboxes.size();
}, map: function(a0) {
var r5;
var vbox;
var vboxes = this.vboxes;
var value = vboxes.size();
var value2 = 0;
if (value2 < value) {
r5 = value2;
loopExit1: while (true) {
vbox = vboxes.peek(r5).vbox;
if (vbox.contains(a0)) {
return vboxes.peek(r5).color;
}
value = typeof r5 === 'bigint' ? r5 + 1n : +r5 + 1;
if (value < vboxes.size()) {
r5 = value;
continue;
}
break loopExit1;
}
}
return this.nearest(a0);
}, nearest: nearest, forcebw: forcebw};
return {quantize: quantize};
function PQueue(a0) { // fn#16896, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:479, offset: 0x00e5e148, size: 93 bytes, params: 2, frame: 3
const env0_0 = a0;
const env0_1 = [];
return {push: push_16898, peek: peek_16899, pop: pop_16900, size: size_16901, map: map_16902, debug: debug_16903};
function sort() { // fn#16897, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:512, owner: PQueue.sort, offset: 0x00e5e1a5, size: 32 bytes, params: 1, frame: 12
env0_1.sort(env0_0);
}
function PQueuePush(a0) { // fn#16898, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:555, owner: PQueue.push, offset: 0x00e5e1c5, size: 30 bytes, params: 2, frame: 12
env0_1.push(a0);
}
function PQueuePeek(a0) { // fn#16899, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:593, owner: PQueue.peek, offset: 0x00e5e1e3, size: 55 bytes, params: 2, frame: 11
const value = a0;
if (!env0_2) {
sort();
}
return env0_1[value !== undefined ? value : env0_1.length - 1];
}
function PQueuePop() { // fn#16900, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:664, owner: PQueue.pop, offset: 0x00e5e21a, size: 36 bytes, params: 1, frame: 10
if (!env0_2) {
sort();
}
return env0_1.pop();
}
function PQueueSize() { // fn#16901, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:710, owner: PQueue.size, offset: 0x00dcf447, size: 14 bytes, params: 1, frame: 1
return env0_1.length;
}
function PQueueMap(a0) { // fn#16902, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:747, owner: PQueue.map, offset: 0x00e5e23e, size: 22 bytes, params: 2, frame: 11
return env0_1.map(a0);
}
function PQueueDebug() { // fn#16903, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:786, owner: PQueue.debug, offset: 0x00e5e254, size: 26 bytes, params: 1, frame: 10
if (!env0_2) {
sort();
}
return env0_1;
}
}
function CMap() { // fn#16905, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:916, offset: 0x00e5e2b3, size: 46 bytes, params: 1, frame: 11
this.vboxes = new PQueue(_fun16906);
function _fun16906(a0, a1) { // fn#16906, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:956, offset: 0x00e5e2e1, size: 97 bytes, params: 3, frame: 15
let value = environment.__proto__.__proto__;
const binding = env2_0;
const naturalOrder = binding.naturalOrder;
let vbox = a0.vbox;
value = vbox.count();
vbox = a0.vbox;
value *= vbox.volume();
const value2 = a1.vbox.count();
vbox = a1.vbox;
return Reflect.apply(naturalOrder, binding, [value, value2 * vbox.volume()]);
}
}
function medianCutApply(a0, a1) { // fn#16907, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:1058, offset: 0x00e5e342, size: 1113 bytes, params: 3, frame: 36
var environment;
var r7;
var r14;
var r18;
var r19;
var r22;
var r23;
var r24;
var r20;
var r5;
var r8;
var r0;
var r2;
var r9;
var r12;
var r1;
var value;
var g2;
var g1;
var value2;
var b2;
var b1;
var value3;
var value4;
var max;
var items3;
var value5;
var value6;
var items2;
var property;
var value8;
var value9;
var value10;
var value11;
var value12;
var value14;
var value15;
var value16;
var value17;
var value18;
var value20;
var value21;
var value22;
var value23;
var value24;
var value25;
var value26;
var value27;
var copy;
var value28;
var value29;
var value30;
var value31;
var Math;
var value32;
var value33;
var min;
var value34;
var value35;
var value36;
var value37;
if (a1.count()) {
r2 = a1.r2;
r1 = a1.r1;
value = r2 - r1 + 1;
g2 = a1.g2;
g1 = a1.g1;
value2 = g2 - g1 + 1;
b2 = a1.b2;
b1 = a1.b1;
value3 = b2 - b1 + 1;
value4 = environment.__proto__;
value5 = env1_0.max([value, value2, value3]);
if (a1.count() == 1) {
return [a1.copy()];
}
value6 = 0;
var env0_0;
items3 = [];
items2 = [];
if (value5 == value) {
r1 = a1.r1;
r2 = a1.r2;
if (r1 <= r2) {
r7 = value6;
r14 = r1;
reducibleLoop20: while (true) {
g1 = a1.g1;
g2 = a1.g2;
if (g1 <= g2) {
r18 = value6;
r19 = g1;
reducibleLoop21: while (true) {
b1 = a1.b1;
b2 = a1.b2;
if (b1 <= b2) {
r22 = r18;
r23 = b1;
reducibleLoop22: while (true) {
property = a0[getColorIndex(r14, r19, r23)];
r24 = property || value6;
value20 = r22 + r24;
value21 = typeof r23 === 'bigint' ? r23 + 1n : +r23 + 1;
b2 = a1.b2;
if (value21 <= b2) {
r22 = value20;
r23 = value21;
continue reducibleLoop22;
}
r20 = value20;
break reducibleLoop22;
}
} else {
r20 = r18;
}
value22 = typeof r19 === 'bigint' ? r19 + 1n : +r19 + 1;
g2 = a1.g2;
if (value22 <= g2) {
r18 = r20;
r19 = value22;
continue reducibleLoop21;
}
r5 = r20;
break reducibleLoop21;
}
} else {
r5 = value6;
}
value23 = r7 + r5;
env0_0 = value23;
items3[r14] = value23;
value24 = typeof r14 === 'bigint' ? r14 + 1n : +r14 + 1;
r2 = a1.r2;
if (value24 <= r2) {
r7 = value23;
r14 = value24;
continue reducibleLoop20;
}
r8 = value23;
break reducibleLoop20;
}
} else {
r8 = value6;
}
} else if (value5 == value2) {
g1 = a1.g1;
g2 = a1.g2;
if (g1 <= g2) {
r7 = value6;
r14 = g1;
reducibleLoop13: while (true) {
r1 = a1.r1;
r2 = a1.r2;
if (r1 <= r2) {
r18 = value6;
r19 = r1;
reducibleLoop14: while (true) {
b1 = a1.b1;
b2 = a1.b2;
if (b1 <= b2) {
r22 = r18;
r23 = b1;
reducibleLoop15: while (true) {
property = a0[getColorIndex(r19, r14, r23)];
r24 = property || value6;
value14 = r22 + r24;
value15 = typeof r23 === 'bigint' ? r23 + 1n : +r23 + 1;
b2 = a1.b2;
if (value15 <= b2) {
r22 = value14;
r23 = value15;
continue reducibleLoop15;
}
r20 = value14;
break reducibleLoop15;
}
} else {
r20 = r18;
}
value16 = typeof r19 === 'bigint' ? r19 + 1n : +r19 + 1;
r2 = a1.r2;
if (value16 <= r2) {
r18 = r20;
r19 = value16;
continue reducibleLoop14;
}
r5 = r20;
break reducibleLoop14;
}
} else {
r5 = value6;
}
value17 = r7 + r5;
env0_0 = value17;
items3[r14] = value17;
value18 = typeof r14 === 'bigint' ? r14 + 1n : +r14 + 1;
g2 = a1.g2;
if (value18 <= g2) {
r7 = value17;
r14 = value18;
continue reducibleLoop13;
}
r8 = value17;
break reducibleLoop13;
}
} else {
r8 = value6;
}
} else {
b1 = a1.b1;
b2 = a1.b2;
if (b1 <= b2) {
r7 = value6;
r14 = b1;
reducibleLoop6: while (true) {
r1 = a1.r1;
r2 = a1.r2;
if (r1 <= r2) {
r18 = value6;
r19 = r1;
reducibleLoop7: while (true) {
g1 = a1.g1;
g2 = a1.g2;
if (g1 <= g2) {
r22 = r18;
r23 = g1;
reducibleLoop8: while (true) {
property = a0[getColorIndex(r19, r23, r14)];
r24 = property || value6;
value8 = r22 + r24;
value9 = typeof r23 === 'bigint' ? r23 + 1n : +r23 + 1;
g2 = a1.g2;
if (value9 <= g2) {
r22 = value8;
r23 = value9;
continue reducibleLoop8;
}
r20 = value8;
break reducibleLoop8;
}
} else {
r20 = r18;
}
value10 = typeof r19 === 'bigint' ? r19 + 1n : +r19 + 1;
r2 = a1.r2;
if (value10 <= r2) {
r18 = r20;
r19 = value10;
continue reducibleLoop7;
}
r5 = r20;
break reducibleLoop7;
}
} else {
r5 = value6;
}
value11 = r7 + r5;
env0_0 = value11;
items3[r14] = value11;
value12 = typeof r14 === 'bigint' ? r14 + 1n : +r14 + 1;
b2 = a1.b2;
if (value12 <= b2) {
r7 = value11;
r14 = value12;
continue reducibleLoop6;
}
r8 = value11;
break reducibleLoop6;
}
} else {
r8 = value6;
}
}
items3.forEach(_fun16908);
value = 'r';
reducibleJoin30: while (true) {
if (value5 == value) {
r2 = value;
break reducibleJoin30;
}
value = 'b';
reducibleJoin29: while (true) {
if (value5 == value2) {
value = 'g';
r0 = value;
break reducibleJoin29;
}
r0 = value;
break reducibleJoin29;
}
r2 = r0;
break reducibleJoin30;
}
value = r2 + '1';
value25 = r2 + '2';
property = a1[value];
value26 = undefined;
if (property <= a1[value25]) {
r7 = property;
reducibleLoop31: while (true) {
property = items3[r7];
if (property > r8 / 2) {
copy = a1.copy;
value28 = Reflect.apply(copy, a1, []);
copy = a1.copy;
value29 = Reflect.apply(copy, a1, []);
value30 = r7 - a1[value];
value31 = a1[value25] - r7;
if (value30 <= value31) {
Math = global.Math;
min = Math.min;
value34 = a1[value25] - 1;
value35 = Reflect.apply(min, Math, [value34, ~~(r7 + value31 / 2)]);
r9 = value35;
} else {
Math = global.Math;
max = Math.max;
property = a1[value];
value32 = r7 - 1;
value33 = Reflect.apply(max, Math, [property, ~~(value32 - value30 / 2)]);
r9 = value33;
}
if (items3[r9]) {
r12 = r9;
} else {
r8 = r9;
reducibleLoop37: while (true) {
value36 = typeof r8 === 'bigint' ? r8 + 1n : +r8 + 1;
if (items3[value36]) {
r12 = value36;
break reducibleLoop37;
}
r8 = value36;
continue reducibleLoop37;
}
}
reducibleJoin42: while (true) {
if (items2[r12]) {
r7 = r12;
break reducibleJoin42;
}
if (!items3[r12 - 1]) {
r7 = r12;
break reducibleJoin42;
}
r9 = r12;
reducibleLoop40: while (true) {
value37 = typeof r9 === 'bigint' ? r9 - 1n : +r9 - 1;
if (items2[value37]) {
r7 = value37;
break reducibleJoin42;
}
if (items3[value37 - 1]) {
r9 = value37;
continue reducibleLoop40;
}
r7 = value37;
break reducibleJoin42;
}
}
value28[value25] = r7;
value29[value] = value28[value25] + 1;
r0 = [value28, value29];
break reducibleLoop31;
}
value27 = typeof r7 === 'bigint' ? r7 + 1n : +r7 + 1;
if (value27 <= a1[value25]) {
r7 = value27;
continue reducibleLoop31;
}
r0 = value26;
break reducibleLoop31;
}
} else {
r0 = value26;
}
return r0;
}
function _fun16908(a0, a1) { // fn#16908, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:1615, offset: 0x00e5e79b, size: 29 bytes, params: 3, frame: 3
env0_1[a1] = env0_0 - a0;
}
}
function count_16910(a0) { // fn#16910, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:2093, offset: 0x00e5e821, size: 218 bytes, params: 2, frame: 29
var r3;
var r8;
var r11;
var r12;
var r15;
var r16;
var r17;
var r13;
var r10;
var r1;
var r2;
var value;
var value2;
var g1;
var g2;
var b1;
var b2;
var property;
var value3;
var value4;
var value5;
var value6;
const histo = this.histo;
reducibleJoin10: while (true) {
reducibleJoin9: while (true) {
if (this._count_set) {
if (!a0) {
break reducibleJoin10;
}
r1 = this.r1;
r2 = this.r2;
value = environment;
value2 = 0;
if (!(r1 <= r2)) {
r1 = value2;
break reducibleJoin9;
}
r3 = value2;
r8 = r1;
reducibleLoop3: while (true) {
g1 = this.g1;
g2 = this.g2;
if (g1 <= g2) {
r11 = r3;
r12 = g1;
reducibleLoop4: while (true) {
b1 = this.b1;
b2 = this.b2;
if (b1 <= b2) {
r15 = r11;
r16 = b1;
reducibleLoop5: while (true) {
property = histo[getColorIndex(r8, r12, r16)];
r17 = property || value2;
value3 = r15 + r17;
value4 = typeof r16 === 'bigint' ? r16 + 1n : +r16 + 1;
b2 = this.b2;
if (value4 <= b2) {
r15 = value3;
r16 = value4;
continue reducibleLoop5;
}
r13 = value3;
break reducibleLoop5;
}
} else {
r13 = r11;
}
value5 = typeof r12 === 'bigint' ? r12 + 1n : +r12 + 1;
g2 = this.g2;
if (value5 <= g2) {
r11 = r13;
r12 = value5;
continue reducibleLoop4;
}
r10 = r13;
break reducibleLoop4;
}
} else {
r10 = r3;
}
value6 = typeof r8 === 'bigint' ? r8 + 1n : +r8 + 1;
r2 = this.r2;
if (value6 <= r2) {
r3 = r10;
r8 = value6;
continue reducibleLoop3;
}
r1 = r10;
break reducibleJoin9;
}
} else {
r1 = this.r1;
r2 = this.r2;
value = environment;
value2 = 0;
if (!(r1 <= r2)) {
r1 = value2;
break reducibleJoin9;
}
r3 = value2;
r8 = r1;
reducibleLoop3: while (true) {
g1 = this.g1;
g2 = this.g2;
if (g1 <= g2) {
r11 = r3;
r12 = g1;
reducibleLoop4: while (true) {
b1 = this.b1;
b2 = this.b2;
if (b1 <= b2) {
r15 = r11;
r16 = b1;
reducibleLoop5: while (true) {
property = histo[getColorIndex(r8, r12, r16)];
r17 = property || value2;
value3 = r15 + r17;
value4 = typeof r16 === 'bigint' ? r16 + 1n : +r16 + 1;
b2 = this.b2;
if (value4 <= b2) {
r15 = value3;
r16 = value4;
continue reducibleLoop5;
}
r13 = value3;
break reducibleLoop5;
}
} else {
r13 = r11;
}
value5 = typeof r12 === 'bigint' ? r12 + 1n : +r12 + 1;
g2 = this.g2;
if (value5 <= g2) {
r11 = r13;
r12 = value5;
continue reducibleLoop4;
}
r10 = r13;
break reducibleLoop4;
}
} else {
r10 = r3;
}
value6 = typeof r8 === 'bigint' ? r8 + 1n : +r8 + 1;
r2 = this.r2;
if (value6 <= r2) {
r3 = r10;
r8 = value6;
continue reducibleLoop3;
}
r1 = r10;
break reducibleJoin9;
}
}
}
this._count = r1;
this._count_set = true;
break reducibleJoin10;
}
return this._count;
}
function copy_16911() { // fn#16911, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:2315, offset: 0x00e5e8fb, size: 73 bytes, params: 1, frame: 23
const r1 = this.r1;
const r2 = this.r2;
const g1 = this.g1;
const g2 = this.g2;
const b1 = this.b1;
const b2 = this.b2;
const histo = this.histo;
const value = Object.create(VBox.prototype, {constructor: {value: VBox}});
const vBox = new VBox(r1, r2, g1, g2, b1, b2, histo);
return vBox instanceof Object ? vBox : value;
}
function avg(a0) { // fn#16912, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:2402, offset: 0x00e5e944, size: 551 bytes, params: 2, frame: 52
var r6;
var r7;
var r9;
var r10;
var r16;
var r22;
var r23;
var r24;
var r25;
var r26;
var r32;
var r33;
var r34;
var r35;
var r36;
var r38;
var r27;
var r28;
var r29;
var r30;
var r18;
var r19;
var r20;
var r21;
var r2;
var r3;
var r4;
var r5;
var r1;
var value;
var value2;
var g1;
var g2;
var b1;
var b2;
var property;
var value3;
var value4;
var value5;
var value6;
var value7;
var value8;
var value9;
const histo = this.histo;
reducibleJoin13: while (true) {
reducibleJoin9: while (true) {
if (this._avg) {
if (!a0) {
break reducibleJoin13;
}
r1 = this.r1;
r2 = this.r2;
value = environment;
value2 = 0;
if (!(r1 <= r2)) {
r2 = value2;
r3 = value2;
r4 = value2;
r5 = value2;
break reducibleJoin9;
}
r6 = value2;
r7 = value2;
r9 = value2;
r10 = value2;
r16 = r1;
reducibleLoop3: while (true) {
g1 = this.g1;
g2 = this.g2;
if (g1 <= g2) {
r22 = r6;
r23 = r7;
r24 = r9;
r25 = r10;
r26 = g1;
reducibleLoop4: while (true) {
b1 = this.b1;
b2 = this.b2;
if (b1 <= b2) {
r32 = r22;
r33 = r23;
r34 = r24;
r35 = r25;
r36 = b1;
reducibleLoop5: while (true) {
property = histo[getColorIndex(r16, r26, r36)];
r38 = property || value2;
value3 = r35 + r38;
value4 = r34 + r38 * (r16 + 0.5) * 8;
value5 = r33 + r38 * (r26 + 0.5) * 8;
value6 = r32 + r38 * (r36 + 0.5) * 8;
value7 = typeof r36 === 'bigint' ? r36 + 1n : +r36 + 1;
b2 = this.b2;
if (value7 <= b2) {
r32 = value6;
r33 = value5;
r34 = value4;
r35 = value3;
r36 = value7;
continue reducibleLoop5;
}
r27 = value6;
r28 = value5;
r29 = value4;
r30 = value3;
break reducibleLoop5;
}
} else {
r27 = r22;
r28 = r23;
r29 = r24;
r30 = r25;
}
value8 = typeof r26 === 'bigint' ? r26 + 1n : +r26 + 1;
g2 = this.g2;
if (value8 <= g2) {
r22 = r27;
r23 = r28;
r24 = r29;
r25 = r30;
r26 = value8;
continue reducibleLoop4;
}
r18 = r27;
r19 = r28;
r20 = r29;
r21 = r30;
break reducibleLoop4;
}
} else {
r18 = r6;
r19 = r7;
r20 = r9;
r21 = r10;
}
value9 = typeof r16 === 'bigint' ? r16 + 1n : +r16 + 1;
r2 = this.r2;
if (value9 <= r2) {
r6 = r18;
r7 = r19;
r9 = r20;
r10 = r21;
r16 = value9;
continue reducibleLoop3;
}
r2 = r20;
r3 = r18;
r4 = r21;
r5 = r19;
break reducibleJoin9;
}
} else {
r1 = this.r1;
r2 = this.r2;
value = environment;
value2 = 0;
if (!(r1 <= r2)) {
r2 = value2;
r3 = value2;
r4 = value2;
r5 = value2;
break reducibleJoin9;
}
r6 = value2;
r7 = value2;
r9 = value2;
r10 = value2;
r16 = r1;
reducibleLoop3: while (true) {
g1 = this.g1;
g2 = this.g2;
if (g1 <= g2) {
r22 = r6;
r23 = r7;
r24 = r9;
r25 = r10;
r26 = g1;
reducibleLoop4: while (true) {
b1 = this.b1;
b2 = this.b2;
if (b1 <= b2) {
r32 = r22;
r33 = r23;
r34 = r24;
r35 = r25;
r36 = b1;
reducibleLoop5: while (true) {
property = histo[getColorIndex(r16, r26, r36)];
r38 = property || value2;
value3 = r35 + r38;
value4 = r34 + r38 * (r16 + 0.5) * 8;
value5 = r33 + r38 * (r26 + 0.5) * 8;
value6 = r32 + r38 * (r36 + 0.5) * 8;
value7 = typeof r36 === 'bigint' ? r36 + 1n : +r36 + 1;
b2 = this.b2;
if (value7 <= b2) {
r32 = value6;
r33 = value5;
r34 = value4;
r35 = value3;
r36 = value7;
continue reducibleLoop5;
}
r27 = value6;
r28 = value5;
r29 = value4;
r30 = value3;
break reducibleLoop5;
}
} else {
r27 = r22;
r28 = r23;
r29 = r24;
r30 = r25;
}
value8 = typeof r26 === 'bigint' ? r26 + 1n : +r26 + 1;
g2 = this.g2;
if (value8 <= g2) {
r22 = r27;
r23 = r28;
r24 = r29;
r25 = r30;
r26 = value8;
continue reducibleLoop4;
}
r18 = r27;
r19 = r28;
r20 = r29;
r21 = r30;
break reducibleLoop4;
}
} else {
r18 = r6;
r19 = r7;
r20 = r9;
r21 = r10;
}
value9 = typeof r16 === 'bigint' ? r16 + 1n : +r16 + 1;
r2 = this.r2;
if (value9 <= r2) {
r6 = r18;
r7 = r19;
r9 = r20;
r10 = r21;
r16 = value9;
continue reducibleLoop3;
}
r2 = r20;
r3 = r18;
r4 = r21;
r5 = r19;
break reducibleJoin9;
}
}
}
if (r4) {
value = r2 / r4;
r1 = [~~value, ~~(r5 / r4), ~~(r3 / r4)];
} else {
r1 = this.r1;
r2 = this.r2;
value = r1 + r2 + 1;
g1 = this.g1;
g2 = this.g2;
b1 = this.b1;
b2 = this.b2;
r1 = [~~(8 * value / 2), ~~(8 * (g1 + g2 + 1) / 2), ~~(8 * (b1 + b2 + 1) / 2)];
}
this._avg = r1;
break reducibleJoin13;
}
return this._avg;
}
function palette() { // fn#16915, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:2982, offset: 0x00e5ec34, size: 27 bytes, params: 1, frame: 11
return this.vboxes.map(function(a0) {
return a0.color;
});
}
function forcebw() { // fn#16920, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3499, offset: 0x00e5edeb, size: 183 bytes, params: 1, frame: 15
const vboxes = this.vboxes;
vboxes.sort(_fun16921);
let color = vboxes[0].color;
if (color[0] < 5 && color[1] < 5 && color[2] < 5) {
vboxes[0].color = [0, 0, 0];
}
value = vboxes.length - 1;
color = vboxes[value].color;
if (color[0] > 251 && color[1] > 251 && color[2] > 251) {
vboxes[value].color = [255, 255, 255];
}
function _fun16921({color}, {color}) { // fn#16921, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3544, offset: 0x00e5eea2, size: 67 bytes, params: 3, frame: 15
const binding = env2_0;
const naturalOrder = binding.naturalOrder;
const binding2 = env2_0;
const value2 = binding2.sum(color);
const binding3 = env2_0;
return Reflect.apply(naturalOrder, binding, [value2, binding3.sum(color)]);
}
}
function quantize(a0, a1) { // fn#16922, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3775, offset: 0x00e5eee5, size: 313 bytes, params: 3, frame: 18
var environment;
var value;
var forEach;
var value2;
var prototype;
var value3;
var closure2;
var pQueue;
var value4;
var push;
var closure3;
var size;
var pop;
var value5;
var cMap;
var value6;
const iter2 = iter;
if (a0.length) {
reducibleJoin8: while (true) {
if (a1 < 2) {
break reducibleJoin8;
}
if (!(a1 > 256)) {
value = ((a0) => {
var Array = global.Array;
var value2 = new Array(32768);
var env0_2 = value2;
a0.forEach(_fun16925);
return value2;
})(a0);
var env0_0 = value;
forEach = value.forEach;
Reflect.apply(forEach, value, [function() {
}]);
value = vboxFromPixels(a0, value);
value2 = environment;
prototype = PQueue.prototype;
value3 = Object.create(prototype, {constructor: {value: PQueue}});
closure2 = _fun16929;
pQueue = new PQueue();
value4 = pQueue instanceof Object ? pQueue : value3;
push = value4.push;
Reflect.apply(push, value4, [value]);
iter2(value4, 0.75 * a1);
prototype = PQueue.prototype;
value = Object.create(prototype, {constructor: {value: PQueue}});
closure3 = _fun16930;
pQueue = new PQueue();
value = pQueue instanceof Object ? pQueue : value;
size = value4.size;
if (Reflect.apply(size, value4, [])) {
reducibleLoop4: while (true) {
push = value.push;
pop = value4.pop;
Reflect.apply(push, value, [Reflect.apply(pop, value4, [])]);
size = value4.size;
if (Reflect.apply(size, value4, [])) {
continue reducibleLoop4;
}
break reducibleLoop4;
}
}
size = value.size;
iter2(value, a1 - Reflect.apply(size, value, []));
prototype = CMap.prototype;
value5 = Object.create(prototype, {constructor: {value: CMap}});
cMap = new CMap();
value6 = cMap instanceof Object ? cMap : value5;
size = value.size;
if (Reflect.apply(size, value, [])) {
reducibleLoop6: while (true) {
push = value6.push;
pop = value.pop;
Reflect.apply(push, value6, [Reflect.apply(pop, value, [])]);
size = value.size;
if (Reflect.apply(size, value, [])) {
continue reducibleLoop6;
}
break reducibleLoop6;
}
}
return value6;
}
break reducibleJoin8;
}
}
return false;
function iter(a0, a1) { // fn#16923, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:4325, owner: quantize.iter, offset: 0x00e5f01e, size: 169 bytes, params: 3, frame: 28
var r18;
var r12;
var r13;
var pop;
var value5;
var count;
var push;
var value6;
var value7;
var property;
var property2;
var value8;
var value9;
var value10;
const value = 1;
const value2 = 0;
let r3 = value2;
let r4 = value;
reducibleLoop1: while (true) {
pop = a0.pop;
value5 = Reflect.apply(pop, a0, []);
count = value5.count;
if (Reflect.apply(count, value5, [])) {
value7 = medianCutApply(env0_0, value5);
property = value7[value2];
property2 = value7[value];
if (!property) {
return undefined;
}
push = a0.push;
Reflect.apply(push, a0, [property]);
reducibleJoin7: while (true) {
if (property2) {
push = a0.push;
Reflect.apply(push, a0, [property2]);
value8 = typeof r4 === 'bigint' ? r4 + 1n : +r4 + 1;
r18 = value8;
break reducibleJoin7;
}
r18 = r4;
break reducibleJoin7;
}
if (r18 >= a1) {
return undefined;
}
value9 = typeof r3 === 'bigint' ? r3 : +r3;
value10 = typeof value9 === 'bigint' ? value9 + 1n : +value9 + 1;
reducibleJoin9: while (true) {
if (value9 > 1000) {
return undefined;
}
r12 = value10;
r13 = r18;
break reducibleJoin9;
}
} else {
push = a0.push;
Reflect.apply(push, a0, [value5]);
value6 = typeof r3 === 'bigint' ? r3 + 1n : +r3 + 1;
r12 = value6;
r13 = r4;
}
if (!(r12 < 1000)) {
return undefined;
}
r3 = r12;
r4 = r13;
continue reducibleLoop1;
}
}
function getHisto(a0) { // fn#16924, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3838, owner: quantize.getHisto, offset: 0x00e5f0c7, size: 60 bytes, params: 2, frame: 13
const Array = global.Array;
const array = new Array(32768);
a0.forEach(_fun16925);
return array;
function _fun16925(a0) { // fn#16925, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3908, offset: 0x00e5f103, size: 96 bytes, params: 2, frame: 18
const value = 0;
const colorIndex = getColorIndex(a0[value] >> 3, a0[1] >> 3, a0[2] >> 3);
const binding = env0_2;
binding[colorIndex] = (binding[colorIndex] || value) + 1;
}
}
function vboxFromPixels(a0, a1) { // fn#16927, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:4032, owner: quantize.vboxFromPixels, offset: 0x00e5f163, size: 108 bytes, params: 3, frame: 23
var environment;
const env0_3 = 1000000;
const env0_4 = 0;
const env0_5 = 1000000;
const env0_6 = 0;
const env0_7 = 1000000;
const env0_8 = 0;
a0.forEach(_fun16928);
let value = environment.__proto__;
const binding = env0_3;
const binding2 = env0_4;
const binding3 = env0_5;
const binding4 = env0_6;
const binding5 = env0_7;
const binding6 = env0_8;
value = Object.create(VBox.prototype, {constructor: {value: VBox}});
const vBox = new VBox(binding, binding2, binding3, binding4, binding5, binding6, a1);
return vBox instanceof Object ? vBox : value;
function _fun16928(a0) { // fn#16928, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:4119, offset: 0x00e5f1cf, size: 183 bytes, params: 2, frame: 4
env0_0 = a0[0] >> 3;
env0_1 = a0[1] >> 3;
env0_2 = a0[2] >> 3;
if (!(env0_0 < env0_3)) {
if (env0_0 > env0_4) {
}
}
if (!(env0_1 < env0_5)) {
if (env0_1 > env0_6) {
}
}
if (!(env0_2 < env0_7)) {
if (env0_2 > env0_8) {
}
}
}
}
function _fun16929(a0, a1) { // fn#16929, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:4265, offset: 0x00e5f286, size: 45 bytes, params: 3, frame: 14
const value = environment.__proto__.__proto__;
const binding = env2_0;
return binding.naturalOrder(a0.count(), a1.count());
}
function _fun16930(a0, a1) { // fn#16930, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:4573, offset: 0x00e5f2b3, size: 73 bytes, params: 3, frame: 15
let value = environment.__proto__.__proto__;
const binding = env2_0;
const naturalOrder = binding.naturalOrder;
value = a0.count();
value *= a0.volume();
return Reflect.apply(naturalOrder, binding, [value, a1.count() * a1.volume()]);
}
}
}
}
function _fun16892(a0, a1) { // fn#16892, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:312, offset: 0x00c4a322, size: 12 bytes, params: 3, frame: 2
return a0 + a1;
}
function contains_16913(a0) { // fn#16913, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:2752, offset: 0x00e5eb6b, size: 155 bytes, params: 2, frame: 6
const value = a0[0] >> 3;
global.gval = a0[1] >> 3;
global.bval = a0[2] >> 3;
let r0 = value >= this.r1 && value <= this.r2 && global.gval >= this.g1;
r0 = r0 && global.gval <= this.g2 && global.bval >= this.b1 && global.bval <= this.b2;
return r0;
}
function _fun16916(a0) { // fn#16916, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3025, offset: 0x00e5ec4f, size: 10 bytes, params: 2, frame: 1
return a0.color;
}
function nearest(a0) { // fn#16919, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1603:3250, offset: 0x00e5ecda, size: 273 bytes, params: 2, frame: 27
var r2;
var r3;
var r4;
var r12;
var r0;
var Math;
var sqrt;
var Math2;
var pow;
var property;
var peek;
var color;
var value3;
var Math3;
var value4;
var Math4;
var value5;
var value6;
var value7;
var value8;
const vboxes = this.vboxes;
let value = vboxes.size();
const value2 = 0;
value = undefined;
if (value2 < value) {
r2 = value2;
r3 = value;
r4 = value;
while (true) {
Math = global.Math;
sqrt = Math.sqrt;
Math2 = global.Math;
pow = Math2.pow;
property = a0[value2];
peek = vboxes.peek;
color = Reflect.apply(peek, vboxes, [r2]).color;
value3 = Reflect.apply(pow, Math2, [property - color[value2], 2]);
Math3 = global.Math;
pow = Math3.pow;
property = a0[1];
peek = vboxes.peek;
color = Reflect.apply(peek, vboxes, [r2]).color;
value4 = value3 + Reflect.apply(pow, Math3, [property - color[1], 2]);
Math4 = global.Math;
pow = Math4.pow;
property = a0[2];
peek = vboxes.peek;
color = Reflect.apply(peek, vboxes, [r2]).color;
value5 = Reflect.apply(sqrt, Math, [value4 + Reflect.apply(pow, Math4, [property - color[2], 2])]);
value6 = value5 < r4;
if (value6) {
r12 = value6;
} else {
value7 = value === r4;
r12 = value7;
}
if (!r12) {
continue;
}
peek = vboxes.peek;
color = Reflect.apply(peek, vboxes, [r2]).color;
r3 = color;
r4 = value5;
value8 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
if (value8 < vboxes.size()) {
r2 = value8;
continue;
}
r0 = r3;
break;
}
} else {
r0 = value;
}
return r0;
}
global.__d(_fun16886, 1476, []) /* metro module 1476 */;