/* Metro module 309; source: unknown; dependencies: [7, 6] */ function _fun4741(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#4741, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:350:6, offset: 0x00ccbe02, size: 139 bytes, params: 8, frame: 18 const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const value = importDefault(7) /* metro dependency 7 */; const env0_2 = importDefault(6) /* metro dependency 6 */; const env0_3 = value(Info); const env0_4 = []; exports.default = _fun4743(); } function Info() { // fn#4742, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:350:121, offset: 0x00ccbe8d, size: 86 bytes, params: 1, frame: 13 env0_2(this, Info); this.any_blank_count = 0; this.any_blank_ms = 0; this.any_blank_speed_sum = 0; this.mostly_blank_count = 0; this.mostly_blank_ms = 0; this.pixels_blank = 0; this.pixels_sampled = 0; this.pixels_scrolled = 0; this.total_time_spent = 0; this.sample_count = 0; } function _fun4743() { // fn#4743, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:350:400, offset: 0x00ccbee3, size: 225 bytes, params: 1, frame: 17 return env0_1(FillRateHelper, [{key: 'activate', value: value_4745}, {key: 'deactivateAndFlush', value: value_4746}, {key: 'computeBlankness', value: value_4748}, {key: 'enabled', value: function() { return this._enabled; }}, {key: '_resetData', value: value_4750}], [{key: 'addListener', value: value_4751}, {key: 'setSampleRate', value: function(a0) { env1_6 = a0; }}, {key: 'setMinSampleCount', value: function(a0) { env1_5 = a0; }}]); } function FillRateHelper(a0) { // fn#4744, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:350:421, offset: 0x00ccbfc4, size: 141 bytes, params: 2, frame: 15 const value = environment.__proto__; let binding = env1_2; binding(this, FillRateHelper); this._anyBlankStartTime = null; this._enabled = false; binding = env1_3; const value3 = Object.create(binding.prototype, {constructor: {value: binding}}); const binding2 = new binding(); this._info = binding2 instanceof Object ? binding2 : value3; this._mostlyBlankStartTime = null; this._samplesStartTime = null; this._listMetrics = a0; const r3 = env1_6 || 0; const Math = global.Math; this._enabled = r3 > Math.random(); this._resetData(); } function value_4745() { // fn#4745, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:350:692, offset: 0x00ccc051, size: 59 bytes, params: 1, frame: 11 var value; var performance; if (this._enabled && this._samplesStartTime == null) { value = environment.__proto__; performance = env1_0.performance; this._samplesStartTime = performance.now(); } } function value_4746() { // fn#4746, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:350:836, offset: 0x00ccc08c, size: 162 bytes, params: 1, frame: 18 var environment; var _samplesStartTime; var sample_count; var value; var performance; var value2; var Object; if (this._enabled) { _samplesStartTime = this._samplesStartTime; if (_samplesStartTime != null) { sample_count = this._info.sample_count; value = environment.__proto__; if (sample_count < env1_5) { this._resetData(); } else { performance = env1_0.performance; value2 = performance.now() - _samplesStartTime; Object = global.Object; var env0_0 = Object.assign({}, this._info, {total_time_spent: value2}); env1_4.forEach(_fun4747); this._resetData(); } } } } function value_4748(a0, a1, a2) { // fn#4748, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:350:1146, offset: 0x00ccc12e, size: 992 bytes, params: 4, frame: 26 var r11; var r5; var r10; var r9; var r12; var r3; var getItemCount; var data; var value; var value2; var last; var first; var _samplesStartTime; var dOffset; var offset; var velocity; var visibleLength; var _info; var sample_count; var pixels_sampled; var Math; var round; var pixels_scrolled; var Math2; var abs; var Math3; var value3; var performance; var now; var value4; var _anyBlankStartTime; var any_blank_ms; var _mostlyBlankStartTime; var mostly_blank_ms; var _listMetrics; var getCellMetrics; var value5; var isMounted; var value6; var value7; var value8; var min; var Math4; var max; var offset2; var value9; var value10; var value11; var value12; var value13; var offset3; var length; var value14; var Math5; var value15; var value16; var value17; var deactivateAndFlush; var any_blank_speed_sum; var any_blank_count; var pixels_blank; var mostly_blank_count; if (this._enabled) { getItemCount = a0.getItemCount; data = a0.data; value = Reflect.apply(getItemCount, a0, [data]); value2 = 0; reducibleJoin35: while (true) { if (value2 === value) { break reducibleJoin35; } last = a1.last; first = a1.first; if (last < first) { break reducibleJoin35; } _samplesStartTime = this._samplesStartTime; if (_samplesStartTime != null) { dOffset = a2.dOffset; offset = a2.offset; velocity = a2.velocity; visibleLength = a2.visibleLength; _info = this._info; sample_count = _info.sample_count; _info.sample_count = typeof sample_count === 'bigint' ? sample_count + 1n : +sample_count + 1; _info = this._info; pixels_sampled = _info.pixels_sampled; Math = global.Math; round = Math.round; _info.pixels_sampled = pixels_sampled + Reflect.apply(round, Math, [visibleLength]); _info = this._info; pixels_scrolled = _info.pixels_scrolled; Math = global.Math; round = Math.round; Math2 = global.Math; abs = Math2.abs; _info.pixels_scrolled = pixels_scrolled + Reflect.apply(round, Math, [Reflect.apply(abs, Math2, [dOffset])]); Math = global.Math; round = Math.round; Math3 = global.Math; abs = Math3.abs; value = Reflect.apply(abs, Math3, [velocity]); value = Reflect.apply(round, Math, [1000 * value]); value3 = environment.__proto__; performance = env1_0.performance; now = performance.now; value4 = Reflect.apply(now, performance, []); _anyBlankStartTime = this._anyBlankStartTime; reducibleJoin6: while (true) { if (_anyBlankStartTime == null) { break reducibleJoin6; } _info = this._info; any_blank_ms = _info.any_blank_ms; _anyBlankStartTime = this._anyBlankStartTime; _info.any_blank_ms = any_blank_ms + (value4 - _anyBlankStartTime); break reducibleJoin6; } this._anyBlankStartTime = null; _mostlyBlankStartTime = this._mostlyBlankStartTime; reducibleJoin8: while (true) { if (_mostlyBlankStartTime == null) { break reducibleJoin8; } _info = this._info; mostly_blank_ms = _info.mostly_blank_ms; _mostlyBlankStartTime = this._mostlyBlankStartTime; _info.mostly_blank_ms = mostly_blank_ms + (value4 - _mostlyBlankStartTime); break reducibleJoin8; } this._mostlyBlankStartTime = null; first = a1.first; _listMetrics = this._listMetrics; getCellMetrics = _listMetrics.getCellMetrics; value5 = Reflect.apply(getCellMetrics, _listMetrics, [first, a0]); last = a1.last; reducibleJoin14: while (true) { if (!(first <= last)) { r5 = value5; r10 = first; break reducibleJoin14; } if (value5) { isMounted = value5.isMounted; if (isMounted) { r5 = value5; r10 = first; break reducibleJoin14; } r11 = first; } else { r11 = first; } reducibleLoop11: while (true) { _listMetrics = this._listMetrics; getCellMetrics = _listMetrics.getCellMetrics; value6 = Reflect.apply(getCellMetrics, _listMetrics, [r11, a0]); value7 = typeof r11 === 'bigint' ? r11 + 1n : +r11 + 1; last = a1.last; if (value7 <= last) { if (value6) { isMounted = value6.isMounted; if (isMounted) { r5 = value6; r10 = value7; break reducibleJoin14; } r11 = value7; continue reducibleLoop11; } r11 = value7; continue reducibleLoop11; } r5 = value6; r10 = value7; break reducibleJoin14; } } reducibleJoin16: while (true) { if (r5) { value8 = r10 > value2; r9 = value8; break reducibleJoin16; } r9 = r5; break reducibleJoin16; } reducibleJoin18: while (true) { if (r9) { Math = global.Math; min = Math.min; Math4 = global.Math; max = Math4.max; offset2 = r5.offset; value9 = Reflect.apply(min, Math, [visibleLength, Reflect.apply(max, Math4, [value2, offset2 - offset])]); r10 = value9; break reducibleJoin18; } r10 = value2; break reducibleJoin18; } last = a1.last; _listMetrics = this._listMetrics; getCellMetrics = _listMetrics.getCellMetrics; value10 = Reflect.apply(getCellMetrics, _listMetrics, [last, a0]); first = a1.first; reducibleJoin24: while (true) { if (!(last >= first)) { r9 = value10; r12 = last; break reducibleJoin24; } if (value10) { isMounted = value10.isMounted; if (isMounted) { r9 = value10; r12 = last; break reducibleJoin24; } r11 = last; } else { r11 = last; } reducibleLoop21: while (true) { _listMetrics = this._listMetrics; getCellMetrics = _listMetrics.getCellMetrics; value11 = Reflect.apply(getCellMetrics, _listMetrics, [r11, a0]); value12 = typeof r11 === 'bigint' ? r11 - 1n : +r11 - 1; first = a1.first; if (value12 >= first) { if (value11) { isMounted = value11.isMounted; if (isMounted) { r9 = value11; r12 = value12; break reducibleJoin24; } r11 = value12; continue reducibleLoop21; } r11 = value12; continue reducibleLoop21; } r9 = value11; r12 = value12; break reducibleJoin24; } } reducibleJoin27: while (true) { if (r9) { getItemCount = a0.getItemCount; data = a0.data; value13 = Reflect.apply(getItemCount, a0, [data]); if (r12 < value13 - 1) { offset3 = r9.offset; length = r9.length; value14 = offset3 + length; Math = global.Math; min = Math.min; Math5 = global.Math; max = Math5.max; value15 = Reflect.apply(min, Math, [visibleLength, Reflect.apply(max, Math5, [value2, offset + visibleLength - value14])]); r5 = value15; break reducibleJoin27; } r5 = value2; break reducibleJoin27; } r5 = value2; break reducibleJoin27; } Math = global.Math; round = Math.round; value16 = Reflect.apply(round, Math, [r10 + r5]); value17 = value16 / visibleLength; if (value17 > value2) { this._anyBlankStartTime = value4; _info = this._info; any_blank_speed_sum = _info.any_blank_speed_sum; _info.any_blank_speed_sum = any_blank_speed_sum + value; _info = this._info; any_blank_count = _info.any_blank_count; _info.any_blank_count = typeof any_blank_count === 'bigint' ? any_blank_count + 1n : +any_blank_count + 1; _info = this._info; pixels_blank = _info.pixels_blank; _info.pixels_blank = pixels_blank + value16; reducibleJoin34: while (true) { if (value17 > 0.5) { this._mostlyBlankStartTime = value4; _info = this._info; mostly_blank_count = _info.mostly_blank_count; _info.mostly_blank_count = typeof mostly_blank_count === 'bigint' ? mostly_blank_count + 1n : +mostly_blank_count + 1; break reducibleJoin34; } break reducibleJoin34; } } else { value = value < 0.01; reducibleJoin30: while (true) { if (value) { r3 = value; break reducibleJoin30; } Math = global.Math; abs = Math.abs; value = Reflect.apply(abs, Math, [dOffset]); value = value < 1; r3 = value; break reducibleJoin30; } reducibleJoin34: while (true) { if (r3) { deactivateAndFlush = this.deactivateAndFlush; Reflect.apply(deactivateAndFlush, this, []); break reducibleJoin34; } break reducibleJoin34; } } return value17; } break reducibleJoin35; } } return 0; } function value_4750() { // fn#4750, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:350:2529, offset: 0x00ccc519, size: 60 bytes, params: 1, frame: 11 this._anyBlankStartTime = null; const value = environment.__proto__; this._info = new env1_3(); this._mostlyBlankStartTime = null; this._samplesStartTime = null; } function value_4751(a0) { // fn#4751, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:350:2686, offset: 0x00ccc555, size: 74 bytes, params: 2, frame: 14 const env0_0 = a0; if (env1_6 === null) { global.console.warn('Call `FillRateHelper.setSampleRate` before `addListener`.'); } env1_4.push(a0); return {remove: remove_4752}; } function value_4751Remove() { // fn#4752, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:350:2819, owner: value_4751.remove, offset: 0x00ccc59f, size: 32 bytes, params: 1, frame: 12 env2_4 = env2_4.filter(_fun4753); }