Files
discord-decomp/sources/by-id/module-00356.jsx
T
2026-07-27 16:20:00 +03:00

262 lines
8.7 KiB
React

/* Metro module 356; source: unknown; dependencies: [] */
function _fun5276(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#5276, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:397:6, offset: 0x00cd8cd6, size: 118 bytes, params: 8, frame: 17
const A = function(a0, a1) {
return 1 - 3 * a1 + 3 * a0;
};
const B = function(a0, a1) {
return 3 * a1 - 6 * a0;
};
const C = function(a0) {
return 3 * a0;
};
const calcBezier = function(a0, a1, a2) {
return ((A(a1, a2) * a0 + B(a1, a2)) * a0 + C(a1)) * a0;
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const Float32Array = global.Float32Array;
const result = typeof Float32Array === 'function';
exports.default = bezier_5282;
}
function getSlope(a0, a1, a2) { // fn#5281, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:397:287, offset: 0x00cd8dd1, size: 79 bytes, params: 4, frame: 16
return 3 * A(a1, a2) * a0 * a0 + 2 * B(a1, a2) * a0 + C(a1);
}
function bezier_5282(a0, a1, a2, a3) { // fn#5282, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:397:358, offset: 0x00cd8e20, size: 232 bytes, params: 5, frame: 21
var environment;
var r3;
var r2;
var prototype;
var value2;
var Array;
var value3;
var array;
var value4;
var Float32Array;
var value5;
var float32Array;
var value6;
const env0_0 = a0;
const env0_1 = a1;
const env0_2 = a2;
const env0_3 = a3;
let value = 0;
if (a0 >= value) {
reducibleJoin4: while (true) {
if (a0 <= 1) {
if (a2 >= value) {
if (a2 <= 1) {
value2 = environment;
if (result) {
Float32Array = global.Float32Array;
prototype = Float32Array.prototype;
value5 = Object.create(prototype, {constructor: {value: Float32Array}});
float32Array = new Float32Array(11);
value6 = float32Array instanceof Object ? float32Array : value5;
r3 = value6;
} else {
Array = global.Array;
prototype = Array.prototype;
value3 = Object.create(prototype, {constructor: {value: Array}});
array = new Array(11);
value4 = array instanceof Object ? array : value3;
r3 = value4;
}
var env0_4 = r3;
if (a0 !== a1) {
r2 = value;
reducibleLoop10: while (true) {
r3[r2] = calcBezier(r2 * 0.1, a0, a2);
value = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
if (value < 11) {
r2 = value;
continue reducibleLoop10;
}
break reducibleLoop10;
}
} else if (a2 !== a3) {
r2 = value;
reducibleLoop10: while (true) {
r3[r2] = calcBezier(r2 * 0.1, a0, a2);
value = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
if (value < 11) {
r2 = value;
continue reducibleLoop10;
}
break reducibleLoop10;
}
}
return BezierEasing;
}
break reducibleJoin4;
}
break reducibleJoin4;
}
break reducibleJoin4;
}
}
const Error = global.Error;
throw new Error('bezier x values must be in [0, 1] range');
}
function getTForX(a0) { // fn#5283, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:397:576, owner: bezier_5282.getTForX, offset: 0x00cd8f08, size: 369 bytes, params: 2, frame: 31
var r5;
var r6;
var r1;
var r14;
var r3;
var r13;
var r17;
var r0;
var r2;
var value4;
var value5;
var value11;
var calcBezierBinding;
var value12;
var Math;
var abs;
var value13;
var value14;
let value = environment;
const value2 = 1;
const value3 = 0;
if (env0_4[value2] <= a0) {
r5 = value2;
r6 = value3;
while (true) {
value4 = r6 + 0.1;
value5 = typeof r5 === 'bigint' ? r5 + 1n : +r5 + 1;
if (value5 === 10) {
r1 = value5;
r14 = value4;
break;
}
if (env0_4[value5] <= a0) {
r5 = value5;
r6 = value4;
continue;
}
r1 = value5;
r14 = value4;
break;
}
} else {
r1 = value2;
r14 = value3;
}
const value6 = typeof r1 === 'bigint' ? r1 - 1n : +r1 - 1;
const value7 = a0 - env0_4[value6];
let binding = env0_4;
const value8 = r14 + value7 / (binding[value6 + value2] - env0_4[value6]) * 0.1;
const slope = getSlope(value8, env0_0, importDefault);
if (slope >= 0.001) {
binding = env0_0;
r2 = value3;
r3 = value8;
while (true) {
value = getSlope(r3, binding, importDefault);
if (value3 === value) {
r1 = r3;
break;
}
value = r3 - (calcBezier(r3, binding, importDefault) - a0) / value;
value14 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
if (value14 < 4) {
r2 = value14;
r3 = value;
continue;
}
r1 = value;
break;
}
r0 = r1;
} else if (value3 === slope) {
r0 = value8;
} else {
value11 = r14 + 0.1;
binding = env0_0;
r3 = value3;
r13 = value11;
while (true) {
calcBezierBinding = calcBezier;
value = r14 + (r13 - r14) / 2;
value12 = calcBezierBinding(value, binding, importDefault) - a0;
if (value12 > value3) {
r13 = value;
r17 = r14;
} else {
r17 = value;
}
Math = global.Math;
abs = Math.abs;
if (Reflect.apply(abs, Math, [value12]) > 0.0000001) {
value13 = typeof r3 === 'bigint' ? r3 + 1n : +r3 + 1;
if (value13 < 10) {
r3 = value13;
r14 = r17;
continue;
}
r0 = value;
break;
}
r0 = value;
break;
}
}
return r0;
}
function BezierEasing(a0) { // fn#5284, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:397:1031, owner: bezier_5282.BezierEasing, offset: 0x00cd9079, size: 87 bytes, params: 2, frame: 18
var r2;
var r1;
var r0;
var value3;
var value4;
var value5;
var calcBezierBinding;
let value = a0;
if (env0_0 !== require) {
value3 = 0;
if (value3 === value) {
r1 = value3;
} else {
value4 = 1;
if (value4 === value) {
r2 = value4;
} else {
value5 = environment.__proto__;
calcBezierBinding = calcBezier;
value = getTForX(value);
value = calcBezierBinding(value, require, importAll);
r2 = value;
}
r1 = r2;
}
r0 = r1;
} else if (importDefault === importAll) {
r0 = value;
} else {
value3 = 0;
if (value3 === value) {
r1 = value3;
} else {
value4 = 1;
if (value4 === value) {
r2 = value4;
} else {
value5 = environment.__proto__;
calcBezierBinding = calcBezier;
value = getTForX(value);
value = calcBezierBinding(value, require, importAll);
r2 = value;
}
r1 = r2;
}
r0 = r1;
}
return r0;
}