Files
2026-07-28 01:06:53 +03:00

2054 lines
100 KiB
TypeScript

/* Metro module 4816; source: lib/ChannelMessages.tsx; dependencies: [153, 6, 7, 661, 3, 4625, 22, 4044, 21, 4817, 4818, 4819, 4820, 2] */
import ClassCallCheck from '../by-id/module-00006-ClassCallCheck.js'; /* Metro dependency 6 */
import CreateClass from '../by-id/module-00007-CreateClass.js'; /* Metro dependency 7 */
import SnowflakeUtils from '../utils/SnowflakeUtils.tsx'; /* Metro dependency 21 */
import Module00022 from '../by-id/module-00022.js'; /* Metro dependency 22 */
import Module00153 from '../by-id/module-00153.js'; /* Metro dependency 153 */
import * as FileImportTrackerModule from '../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ConstantsModule from '../Constants.tsx'; /* Metro dependency 661 */
import * as ClientModule from '../flow/Client.tsx'; /* Metro dependency 4044 */
import * as MessageRecordUtilsModule from '../modules/messages/MessageRecordUtils.tsx'; /* Metro dependency 4625 */
import * as IOSPushNotificationRawPayloadFixExperimentModule from '../modules/notifications/IOSPushNotificationRawPayloadFixExperiment.tsx'; /* Metro dependency 4819 */
import * as RequireSortedDescendingModule from '../modules/app_database/modules/messages/requireSortedDescending.tsx'; /* Metro dependency 4820 */
function _fun41909(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#41909, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:6, offset: 0x0112b533, size: 302 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
Module00153;
let value = ConstantsModule;
const env0_6 = value.MAX_MESSAGES_PER_CHANNEL;
const env0_7 = value.MAX_LOADED_MESSAGES;
const env0_8 = value.MAX_MESSAGE_CACHE_SIZE;
const env0_9 = value.TRUNCATED_MESSAGE_VIEW_SIZE;
const env0_10 = value.MessageStates;
value = importDefault(3) /* metro dependency 3: Logger */;
value = new value('ChannelMessages');
const env0_12 = _fun41911();
value = _fun41934();
value._channelMessages = {};
(FileImportTrackerModule).fileFinishedImporting('lib/ChannelMessages.tsx');
exports.default = value;
exports.flatMapChannelMessages = function(a0) {
return a0.flatMap(_fun42029);
};
function mergeMessage(a0, a1) { // fn#41910, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:304, offset: 0x0112b661, size: 227 bytes, params: 3, frame: 18
var r4;
var r2;
var r0;
var editedTimestamp;
var value2;
var edited_timestamp;
var Date;
var value4;
var date;
var value7;
var embeds;
var length2;
let value = a0.get(a1.id);
if (value == null) {
value = require(4625) /* metro dependency 4625: MessageRecordUtils */;
value = value.createMessageRecord(a1);
r0 = value;
} else {
editedTimestamp = value.editedTimestamp;
value2 = 0;
r4 = editedTimestamp != null ? Number(value.editedTimestamp) : value2;
edited_timestamp = a1.edited_timestamp;
if (edited_timestamp != null) {
Date = global.Date;
edited_timestamp = a1.edited_timestamp;
value4 = Object.create(Date.prototype, {constructor: {value: Date}});
date = new Date();
r2 = Number(date instanceof Object ? date : value4);
} else {
r2 = value2;
}
value7 = r2 > r4;
if (value7) {
r2 = value7;
} else {
embeds = value.embeds;
length2 = embeds.length;
embeds = a1.embeds;
r2 = length2 < (embeds?.length ?? value2);
}
r2 = !r2 ? value.content !== a1.content : r2;
if (r2) {
value = require(4625) /* metro dependency 4625: MessageRecordUtils */;
value = value.createMessageRecord(a1);
r0 = value;
} else if (a0.cached) {
value = require(4625) /* metro dependency 4625: MessageRecordUtils */;
value = value.createMessageRecord(a1);
r0 = value;
} else {
r0 = value;
}
}
return r0;
}
function _fun41911() { // fn#41911, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:662, offset: 0x0112b744, size: 365 bytes, params: 1, frame: 15
return CreateClass(MessageCache, [{key: 'clone', value: value_41913}, {key: 'wasAtEdge', get: function() {
return this._wasAtEdge;
}, set: function(a0) {
this._wasAtEdge = a0;
}}, {key: 'length', get: function() {
return this._messages.length;
}}, {key: 'clear', value: function() {
this._map = {};
this._messages = [];
this._wasAtEdge = false;
}}, {key: 'remove', value: value_41918}, {key: 'removeMany', value: value_41920}, {key: 'replace',
value: function(a0, a1) {
var property = this._map[a0];
if (property != null) {
delete this._map[a0];
this._map[a1.id] = a1;
this._messages[this._messages.indexOf(property)] = a1;
}
}}, {key: 'update', value: function(a0, a1) {
var value;
var property = this._map[a0];
if (property != null) {
value = a1(property);
this._map[property.id] = value;
this._messages[this._messages.indexOf(property)] = value;
}
}}, {key: 'has', value: function(a0) {
return this._map[a0] != null;
}}, {key: 'get', value: function(a0) {
return this._map[a0];
}}, {key: 'forEach', value: function(a0, a1) {
this._messages.forEach(a0, a1);
}}, {key: 'cache', value: value_41928}, {key: 'extractAll', value: function() {
var _messages = this._messages;
this._messages = [];
this._map = {};
return _messages;
}}, {key: 'extract', value: value_41932}]);
function MessageCache(a0) { // fn#41912, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:673, offset: 0x0112b8b1, size: 62 bytes, params: 2, frame: 13
env1_4(this, MessageCache);
this._messages = [];
this._map = {};
this._wasAtEdge = false;
this._isCacheBefore = a0;
}
function value_41913() { // fn#41913, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:833, offset: 0x0112b8ef, size: 96 bytes, params: 1, frame: 15
const messageCache = new MessageCache(this._isCacheBefore);
let object = {};
copyDataProperties(object, this._map, undefined);
messageCache._map = object;
const _messages = this._messages;
object = [];
arraySpread(object, _messages, 0, undefined);
messageCache._messages = object;
messageCache._wasAtEdge = this._wasAtEdge;
return messageCache;
}
function value_41918(a0) { // fn#41918, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:1262, offset: 0x0112b99b, size: 77 bytes, params: 2, frame: 16
var environment;
const env0_0 = a0;
let value = environment.__proto__;
value = importDefault(22) /* metro dependency 22 */;
this._messages = value.filter(this._messages, _fun41919);
delete this._map[a0];
function _fun41919({id}) { // fn#41919, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:1321, offset: 0x010190b8, size: 21 bytes, params: 2, frame: 2
return id !== env0_0;
}
}
function value_41920(a0) { // fn#41920, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:1385, offset: 0x0112b9e8, size: 87 bytes, params: 2, frame: 16
var environment;
const env0_1 = a0;
const value = environment.__proto__;
(Module00022).each(a0, _fun41921);
const _messages = this._messages;
this._messages = _messages.filter(_fun41922);
function _fun41921(a0) { // fn#41921, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:1414, offset: 0x0112ba3f, size: 24 bytes, params: 2, frame: 2
delete env0_0._map[a0];
}
function _fun41922({id}) { // fn#41922, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:1479, offset: 0x0112ba57, size: 38 bytes, params: 2, frame: 11
return env0_1.indexOf(id) === -1;
}
}
function value_41928(a0) { // fn#41928, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:1989, offset: 0x0112bb64, size: 384 bytes, params: 2, frame: 22
var r11;
var _isCacheBefore;
var slice;
var Math;
var items2;
let value = a1;
const r2 = value !== undefined ? value : false;
let length = this.length;
if (length === 0) {
this._wasAtEdge = r2;
}
let _messages = this._messages;
value = _messages.length + a0.length;
if (value > MAX_MESSAGE_CACHE_SIZE) {
this._wasAtEdge = false;
length = a0.length;
if (length > MAX_MESSAGE_CACHE_SIZE) {
_isCacheBefore = this._isCacheBefore;
slice = a0.slice;
if (_isCacheBefore) {
this._messages = Reflect.apply(slice, a0, [a0.length - MAX_MESSAGE_CACHE_SIZE]);
} else {
this._messages = Reflect.apply(slice, a0, [0, MAX_MESSAGE_CACHE_SIZE]);
}
this._map = {};
this._messages.forEach(_fun41929);
return undefined;
}
length = a0.length;
value = MAX_MESSAGE_CACHE_SIZE - length;
_isCacheBefore = this._isCacheBefore;
_messages = this._messages;
slice = _messages.slice;
if (_isCacheBefore) {
Math = global.Math;
this._messages = Reflect.apply(slice, _messages, [Math.max(this._messages.length - value, 0)]);
r11 = value;
} else {
this._messages = Reflect.apply(slice, _messages, [0, value]);
r11 = value;
}
_isCacheBefore = this._isCacheBefore;
items2 = [];
if (_isCacheBefore) {
arraySpread(items2, a0, arraySpread(items2, this._messages, 0, r11), r11);
} else {
arraySpread(items2, this._messages, arraySpread(items2, a0, 0, r11), r11);
}
this._messages = items2;
this._map = {};
_messages = this._messages;
_messages.forEach(_fun41930);
} else {
_isCacheBefore = this._isCacheBefore;
items2 = [];
if (_isCacheBefore) {
arraySpread(items2, a0, arraySpread(items2, this._messages, 0, r11), r11);
} else {
arraySpread(items2, this._messages, arraySpread(items2, a0, 0, r11), r11);
}
this._messages = items2;
this._map = {};
this._messages.forEach(_fun41930);
}
function _fun41929(a0) { // fn#41929, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:2245, offset: 0x0112bce4, size: 27 bytes, params: 2, frame: 3
env0_0._map[a0.id] = a0;
return a0;
}
function _fun41930(a0) { // fn#41930, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:2541, offset: 0x0112bce4, size: 27 bytes, params: 2, frame: 3
env0_0._map[a0.id] = a0;
return a0;
}
}
function value_41932(a0) { // fn#41932, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:2685, offset: 0x0112bd1c, size: 162 bytes, params: 2, frame: 17
var r0;
var length;
var value;
var _messages;
var max;
var value2;
const _isCacheBefore = this._isCacheBefore;
const Math = global.Math;
if (_isCacheBefore) {
max = Math.max;
length = this.length;
value = Reflect.apply(max, Math, [length - a0, 0]);
length = this.length;
_messages = this._messages;
value2 = _messages.slice(value, length);
_messages = this._messages;
_messages.splice(value);
r0 = value2;
} else {
value = Math.min(a0, this.length);
_messages = this._messages;
value = _messages.slice(0, value);
_messages = this._messages;
_messages.splice(0, a0);
r0 = value;
}
r0.forEach(_fun41933);
return r0;
function _fun41933({id}) { // fn#41933, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:2934, offset: 0x0112bdbe, size: 27 bytes, params: 2, frame: 2
return delete env0_0._map[id];
}
}
}
function _fun41934() { // fn#41934, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:2977, offset: 0x0112bdd9, size: 1270 bytes, params: 1, frame: 19
return CreateClass(ChannelMessages, [{key: 'mutate', value: value_41936}, {key: 'length', get: function() {
return this._array.length;
}}, {key: 'toArray', value: function() {
var r2;
var _array = this._array;
var items = [];
arraySpread(items, _array, 0, r2);
return items;
}}, {key: 'forEach', value: function(a0, a1) {
var r1;
var r2;
var value = a2;
r1 = value !== undefined ? value : false;
var _array = this._array;
if (r1) {
value = _array.length - 1;
if (value >= 0) {
if (a0.call(a1, _array[value], value) !== false) {
r2 = value;
while (true) {
value = typeof r2 === 'bigint' ? r2 - 1n : +r2 - 1;
if (!(value >= 0)) {
break;
}
if (a0.call(a1, _array[value], value) !== false) {
r2 = value;
continue;
}
break;
}
}
}
} else {
_array.forEach(a0, a1);
}
}}, {key: 'reduce', value: function(a0, a1) {
return this._array.reduce(a0, a1);
}}, {key: 'some', value: function(a0, a1) {
return this._array.some(a0, a1);
}}, {key: 'filter', value: function(a0, a1) {
return this._array.filter(a0, a1);
}}, {key: 'forAll', value: function(a0, a1) {
this._before.forEach(a0, a1);
this._array.forEach(a0, a1);
this._after.forEach(a0, a1);
}}, {key: 'findOldest', value: value_41944}, {key: 'findNewest', value: value_41945}, {key: 'map',
value: function(a0, a1) {
return this._array.map(a0, a1);
}}, {key: 'first', value: function() {
return this._array[0];
}}, {key: 'last', value: function() {
return this._array[this._array.length - 1];
}}, {key: 'get', value: function(a0) {
var r1;
var value = a1;
r1 = value !== undefined ? value : false;
var property = this._map[a0];
return property ?? (r1 ? this._before.get(a0) ?? this._after.get(a0) : property);
}}, {key: 'getByIndex', value: function(a0) {
return this._array[a0];
}}, {key: 'getAfter', value: function(a0) {
var r1;
var value = this.get(a0);
var value2 = null;
if (value2 == value) {
return value2;
}
var property = this._array;
value = property.indexOf(value);
if (value === -1) {
r1 = value2;
} else if (value === this.length - 1) {
r1 = value2;
} else {
property = this._array;
property = property[value + 1];
r1 = property;
}
return r1;
}}, {key: 'getManyAfter', value: value_41952}, {key: 'getManyBefore', value: value_41953}, {key: 'hasAnyAfter',
value: value_41954}, {key: 'has', value: function(a0) {
var r1;
var r0;
var value = a1;
r1 = !(value !== undefined) || value;
value = this._map[a0] != null;
if (value) {
r0 = value;
} else {
r1 = r1 && (this._before.has(a0) || this._after.has(a0));
r0 = r1;
}
return r0;
}}, {key: 'indexOf', value: value_41956}, {key: 'hasPresent', value: function() {
var r0;
r0 = this._after.length > 0 && this._after.wasAtEdge;
r0 = !r0 ? !this.hasMoreAfter : r0;
return r0;
}}, {key: 'hasBeforeCached', value: function(a0) {
var value;
if (this.length > 0) {
if (this._before.length > 0) {
value = this.first();
return value != null && value.id === a0;
}
}
return false;
}}, {key: 'hasAfterCached', value: function(a0) {
var value;
if (this.length > 0) {
if (this._after.length > 0) {
value = this.last();
return value != null && value.id === a0;
}
}
return false;
}}, {key: 'update', value: value_41961}, {key: 'replace', value: value_41965}, {key: 'remove', value: function(a0) {
var env0_0 = a0;
return this.mutate(_fun41970, true);
}}, {key: 'removeMany', value: function(a0) {
var r0;
var value = this;
var env0_0 = value;
var env0_1 = a0;
if (a0.some(_fun41973)) {
value = value.mutate(_fun41974, true);
r0 = value;
} else {
r0 = value;
}
return r0;
}}, {key: 'merge', value: function(a0) {
var value = a1;
var value2 = a2;
var env0_0 = a0;
var env0_1 = value !== undefined ? value : false;
var env0_2 = value2 !== undefined ? value2 : false;
return this.mutate(_fun41978, true);
}}, {key: '_merge', value: value_41979}, {key: 'mergeDelta', value: function() {
var value = a0;
var value2 = a1;
var value3 = a2;
var env0_0 = value !== undefined ? value : [];
var env0_1 = value2 !== undefined ? value2 : [];
var env0_2 = value3 !== undefined ? value3 : [];
return this.mutate(_fun41982);
}}, {key: '_clearMessages', value: function() {
this._array = [];
this._map = {};
}}, {key: 'reset', value: function(a0) {
var env0_0 = a0;
return this.mutate(_fun41991);
}}, {key: 'truncateTop', value: function(a0) {
var r4;
var value = a1;
var value2 = this;
r4 = !(value !== undefined) || value;
var env0_0 = undefined;
value = value2._array.length - a0;
env0_0 = value;
return value <= 0 ? value2 : value2.mutate(_fun41994, r4);
}}, {key: 'truncateBottom', value: function(a0) {
return this;
}}, {key: 'jumpToPresent', value: function(a0) {
var env0_0 = a0;
return this.mutate(_fun41997, true);
}}, {key: 'jumpToMessage', value: function(a0) {
var value = a1;
var value2 = a3;
var env0_0 = a0;
var env0_1 = !(value !== undefined) || value;
var env0_2 = a2;
var env0_3 = value2 !== undefined ? value2 : null;
var env0_4 = a4;
return this.mutate(_fun41999, false);
}}, {key: 'focusOnMessage', value: function(a0) {
var env0_0 = a0;
return this.mutate(_fun42001, false);
}}, {key: 'loadFromCache', value: function(a0, a1) {
var env0_0 = a0;
var env0_1 = a1;
return this.mutate(_fun42003, true);
}}, {key: 'truncate', value: function(a0, a1) {
var r1;
var r0;
var value = this;
if (value.length <= MAX_LOADED_MESSAGES) {
r0 = value;
} else {
if (a0) {
value = value.truncateBottom(TRUNCATED_MESSAGE_VIEW_SIZE);
r1 = value;
} else if (a1) {
value = value.truncateTop(TRUNCATED_MESSAGE_VIEW_SIZE);
r1 = value;
} else {
r1 = value;
}
r0 = r1;
}
return r0;
}}, {key: 'receiveMessage', value: value_42005}, {key: 'receivePushNotification', value: value_42008},
{key: 'receiveReactionInAppNotification', value: value_42009}, {key: 'loadStart', value: value_42010},
{key: 'loadComplete', value: value_42011}, {key: 'addCachedMessages', value: value_42015}], [{key: 'forEach',
value: value_42021}, {key: 'get', value: function(a0) {
return ChannelMessages._channelMessages[a0];
}}, {key: 'hasPresent', value: value_42023}, {key: 'getOrCreate', value: value_42024}, {key: 'clear',
value: function(a0) {
delete ChannelMessages._channelMessages[a0];
}}, {key: 'clearCache', value: function(a0) {
var property = ChannelMessages._channelMessages[a0];
if (property != null) {
property._before.clear();
property._after.clear();
this.commit(property);
}
}}, {key: 'commit', value: function(a0) {
ChannelMessages._channelMessages[a0.channelId] = a0;
}}]);
function ChannelMessages(a0) { // fn#41935, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:2988, offset: 0x0112c2cf, size: 277 bytes, params: 2, frame: 18
const value = environment.__proto__;
let binding = env1_4;
binding(this, ChannelMessages);
this.ready = false;
this.cached = false;
const JumpTypes = (ClientModule).JumpTypes;
const ANIMATED = JumpTypes.ANIMATED;
this.jumpType = ANIMATED;
this.jumpTargetId = null;
this.jumpTargetOffset = 0;
this.jumpSequenceId = 1;
this.jumped = false;
this.jumpedToPresent = false;
this.jumpFlash = true;
this.jumpReturnTargetId = null;
this.focusTargetId = null;
this.focusSequenceId = 1;
this.initialScrollSequenceId = 0;
this.suppressRowAnimationSequenceId = 0;
this.hasMoreBefore = true;
this.hasMoreAfter = false;
this.loadingMore = false;
this.revealedMessageId = null;
this.hasFetched = false;
this.error = false;
this._array = [];
binding = env1_12;
this._before = new binding(true);
this._after = new binding(false);
this._map = {};
this.channelId = a0;
}
function value_41936(a0) { // fn#41936, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:3641, offset: 0x0112c3e4, size: 1099 bytes, params: 2, frame: 19
var r9;
var r5;
var jumpType;
var jumpTargetId;
var jumpTargetOffset;
var jumpSequenceId;
var jumpReturnTargetId;
var focusTargetId;
var focusSequenceId;
var loadingMore;
var revealedMessageId;
var cached;
var hasFetched;
var error;
var initialScrollSequenceId;
var suppressRowAnimationSequenceId;
var object;
var value2;
const value = a1;
let r4 = value !== undefined ? value : false;
const channelMessages = new ChannelMessages(this.channelId);
const _array = this._array;
if (r4) {
object = [];
value2 = 0;
arraySpread(object, _array, value2, _array);
r5 = object;
r9 = value2;
} else {
r5 = _array;
}
channelMessages._array = r5;
const _map = this._map;
if (r4) {
object = {};
copyDataProperties(object, _map, r9);
r5 = object;
} else {
r5 = _map;
}
channelMessages._map = r5;
const _after = this._after;
channelMessages._after = r4 ? _after.clone() : _after;
const _before = this._before;
r4 = r4 ? _before.clone() : _before;
channelMessages._before = r4;
const Function = global.Function;
if (a0 instanceof Function) {
channelMessages.ready = this.ready;
channelMessages.jumpType = this.jumpType;
channelMessages.jumpTargetId = this.jumpTargetId;
channelMessages.jumpTargetOffset = this.jumpTargetOffset;
channelMessages.jumpSequenceId = this.jumpSequenceId;
channelMessages.jumped = this.jumped;
channelMessages.jumpedToPresent = this.jumpedToPresent;
channelMessages.jumpFlash = this.jumpFlash;
channelMessages.jumpReturnTargetId = this.jumpReturnTargetId;
channelMessages.focusTargetId = this.focusTargetId;
channelMessages.focusSequenceId = this.focusSequenceId;
channelMessages.hasMoreBefore = this.hasMoreBefore;
channelMessages.hasMoreAfter = this.hasMoreAfter;
channelMessages.loadingMore = this.loadingMore;
channelMessages.revealedMessageId = this.revealedMessageId;
channelMessages.cached = this.cached;
channelMessages.hasFetched = this.hasFetched;
channelMessages.error = this.error;
channelMessages.initialScrollSequenceId = this.initialScrollSequenceId;
channelMessages.suppressRowAnimationSequenceId = this.suppressRowAnimationSequenceId;
a0(channelMessages);
} else if (typeof a0 === 'object') {
r4 = a0.ready !== undefined ? a0.ready === true : this.ready;
channelMessages.ready = r4;
jumpType = a0.jumpType;
jumpType = jumpType !== undefined ? a0.jumpType : this.jumpType;
channelMessages.jumpType = jumpType;
jumpTargetId = a0.jumpTargetId;
jumpTargetId = jumpTargetId !== undefined ? a0.jumpTargetId : this.jumpTargetId;
channelMessages.jumpTargetId = jumpTargetId;
jumpTargetOffset = a0.jumpTargetOffset;
jumpTargetOffset = jumpTargetOffset !== undefined ? a0.jumpTargetOffset : this.jumpTargetOffset;
channelMessages.jumpTargetOffset = jumpTargetOffset;
jumpSequenceId = a0.jumpSequenceId;
jumpSequenceId = jumpSequenceId !== undefined ? a0.jumpSequenceId : this.jumpSequenceId;
channelMessages.jumpSequenceId = jumpSequenceId;
r4 = a0.jumped !== undefined ? a0.jumped === true : this.jumped;
channelMessages.jumped = r4;
r4 = a0.jumpedToPresent !== undefined ? a0.jumpedToPresent === true : this.jumpedToPresent;
channelMessages.jumpedToPresent = r4;
r4 = a0.jumpFlash !== undefined ? a0.jumpFlash === true : this.jumpFlash;
channelMessages.jumpFlash = r4;
jumpReturnTargetId = a0.jumpReturnTargetId;
jumpReturnTargetId = jumpReturnTargetId !== undefined ? a0.jumpReturnTargetId : this.jumpReturnTargetId;
channelMessages.jumpReturnTargetId = jumpReturnTargetId;
focusTargetId = a0.focusTargetId;
focusTargetId = focusTargetId !== undefined ? a0.focusTargetId : this.focusTargetId;
channelMessages.focusTargetId = focusTargetId;
focusSequenceId = a0.focusSequenceId;
focusSequenceId = focusSequenceId !== undefined ? a0.focusSequenceId : this.focusSequenceId;
channelMessages.focusSequenceId = focusSequenceId;
r4 = a0.hasMoreBefore !== undefined ? a0.hasMoreBefore === true : this.hasMoreBefore;
channelMessages.hasMoreBefore = r4;
r4 = a0.hasMoreAfter !== undefined ? a0.hasMoreAfter === true : this.hasMoreAfter;
channelMessages.hasMoreAfter = r4;
loadingMore = a0.loadingMore;
loadingMore = loadingMore !== undefined ? a0.loadingMore : this.loadingMore;
channelMessages.loadingMore = loadingMore;
revealedMessageId = a0.revealedMessageId;
revealedMessageId = revealedMessageId !== undefined ? a0.revealedMessageId : this.revealedMessageId;
channelMessages.revealedMessageId = revealedMessageId;
cached = a0.cached;
cached = cached !== undefined ? a0.cached : this.cached;
channelMessages.cached = cached;
hasFetched = a0.hasFetched;
hasFetched = hasFetched !== undefined ? a0.hasFetched : this.hasFetched;
channelMessages.hasFetched = hasFetched;
error = a0.error;
error = error !== undefined ? a0.error : this.error;
channelMessages.error = error;
initialScrollSequenceId = a0.initialScrollSequenceId;
initialScrollSequenceId = initialScrollSequenceId !== undefined ? a0.initialScrollSequenceId : this.initialScrollSequenceId;
channelMessages.initialScrollSequenceId = initialScrollSequenceId;
suppressRowAnimationSequenceId = a0.suppressRowAnimationSequenceId;
suppressRowAnimationSequenceId = suppressRowAnimationSequenceId !== undefined ? a0.suppressRowAnimationSequenceId : this.suppressRowAnimationSequenceId;
channelMessages.suppressRowAnimationSequenceId = suppressRowAnimationSequenceId;
}
return channelMessages;
}
function value_41944(a0) { // fn#41944, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:6755, offset: 0x0112c95f, size: 143 bytes, params: 2, frame: 19
var r0;
var defaultImport2;
let value = environment.__proto__;
const defaultImport = Module00022;
const value2 = defaultImport.find(this._before._messages, a0);
if (value2 != null) {
r0 = value2;
} else {
defaultImport2 = defaultImport;
r0 = defaultImport2.find(this._array, a0);
}
if (r0 == null) {
value = defaultImport;
value = value.find(this._after._messages, a0);
r0 = value;
}
return r0;
}
function value_41945(a0) { // fn#41945, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:6940, offset: 0x0112c9ee, size: 143 bytes, params: 2, frame: 19
var r0;
var defaultImport2;
let value = environment.__proto__;
const defaultImport = Module00022;
const last = defaultImport.findLast(this._after._messages, a0);
if (last != null) {
r0 = last;
} else {
defaultImport2 = defaultImport;
r0 = defaultImport2.findLast(this._array, a0);
}
if (r0 == null) {
value = defaultImport;
value = value.findLast(this._before._messages, a0);
r0 = value;
}
return r0;
}
function value_41956(a0) { // fn#41956, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:8507, offset: 0x0112cded, size: 50 bytes, params: 2, frame: 12
const env0_0 = a0;
const env0_1 = -1;
this._array.find(_fun41957);
return env0_1;
function _fun41957({id}, a1) { // fn#41957, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:8553, offset: 0x0112ce1f, size: 33 bytes, params: 3, frame: 3
return id === env0_0 && true;
}
}
function value_41961(a0, a1) { // fn#41961, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:8984, offset: 0x0112cef5, size: 154 bytes, params: 3, frame: 15
var r0;
var _before;
var _after;
let value = this;
const env0_0 = a0;
const env0_1 = a1;
const property = value._map[a0];
if (property == null) {
_before = value._before;
if (_before.has(a0)) {
value = value.mutate(_fun41962, true);
r0 = value;
} else {
_after = value._after;
if (_after.has(a0)) {
value = value.mutate(_fun41963, true);
r0 = value;
} else {
r0 = value;
}
}
return r0;
}
const env0_3 = a1(property);
return value.mutate(_fun41964, true);
function _fun41962({_before}) { // fn#41962, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9068, offset: 0x0112cf8f, size: 34 bytes, params: 2, frame: 13
return _before.update(env0_0, require);
}
function _fun41963({_after}) { // fn#41963, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9130, offset: 0x0112cfb1, size: 34 bytes, params: 2, frame: 13
return _after.update(env0_0, require);
}
function _fun41964(a0) { // fn#41964, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9195, offset: 0x0112cfd3, size: 64 bytes, params: 2, frame: 14
const _map = a0._map;
const binding = env0_2;
_map[binding.id] = env0_3;
a0._array[a0._array.indexOf(binding)] = env0_3;
}
}
function value_41965(a0, a1) { // fn#41965, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9275, offset: 0x0112d013, size: 146 bytes, params: 3, frame: 16
var r1;
var r0;
var _before;
var _after;
let value = this;
const env0_0 = a0;
const env0_1 = a1;
if (value._map[a0] == null) {
_before = value._before;
if (_before.has(a0)) {
value = value.mutate(_fun41966, true);
r1 = value;
} else {
_after = value._after;
if (_after.has(a0)) {
value = value.mutate(_fun41967, true);
r1 = value;
} else {
r1 = value;
}
}
r0 = r1;
} else {
value = value.mutate(_fun41968, true);
r0 = value;
}
return r0;
function _fun41966({_before}) { // fn#41966, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9356, offset: 0x0112d0a5, size: 33 bytes, params: 2, frame: 13
return _before.replace(env0_0, require);
}
function _fun41967({_after}) { // fn#41967, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9419, offset: 0x0112d0c6, size: 33 bytes, params: 2, frame: 13
return _after.replace(env0_0, require);
}
function _fun41968(a0) { // fn#41968, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9467, offset: 0x0112d0e7, size: 74 bytes, params: 2, frame: 13
delete a0._map[env0_0];
a0._map[require.id] = require;
const _array = a0._array;
const _array2 = a0._array;
_array[_array2.indexOf(env0_2)] = require;
}
}
function value_41969(a0) { // fn#41969, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9563, offset: 0x0112d131, size: 33 bytes, params: 2, frame: 13
const env0_0 = a0;
return this.mutate(_fun41970, true);
function _fun41970(a0) { // fn#41970, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9595, offset: 0x0112d152, size: 87 bytes, params: 2, frame: 13
const _map = a0._map;
const binding = env0_0;
delete _map[binding];
const _array = a0._array;
a0._array = _array.filter(_fun41971);
a0._before.remove(binding);
a0._after.remove(binding);
function _fun41971({id}) { // fn#41971, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9642, offset: 0x0112d1a9, size: 21 bytes, params: 2, frame: 2
return id !== env1_0;
}
}
}
function value_41972(a0) { // fn#41972, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9727, offset: 0x0112d1be, size: 59 bytes, params: 2, frame: 14
var r0;
let value = this;
const env0_1 = a0;
if (a0.some(_fun41973)) {
value = value.mutate(_fun41974, true);
r0 = value;
} else {
r0 = value;
}
return r0;
function _fun41973(a0) { // fn#41973, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9754, offset: 0x00e4010b, size: 22 bytes, params: 2, frame: 11
return env0_0.has(a0);
}
function _fun41974(a0) { // fn#41974, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9784, offset: 0x0112d1f9, size: 121 bytes, params: 2, frame: 16
var environment;
const env0_0 = a0;
let value = environment.__proto__.__proto__;
value = importDefault(22) /* metro dependency 22 */;
const each = value.each;
const binding = env0_1;
Reflect.apply(each, value, [binding, _fun41975]);
const _array = a0._array;
a0._array = _array.filter(_fun41976);
a0._before.removeMany(binding);
a0._after.removeMany(binding);
function _fun41975(a0) { // fn#41975, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9805, offset: 0x0112ba3f, size: 24 bytes, params: 2, frame: 2
delete env0_0._map[a0];
}
function _fun41976({id}) { // fn#41976, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9855, offset: 0x0112d272, size: 38 bytes, params: 2, frame: 11
const value = environment.__proto__;
return env1_1.indexOf(id) === -1;
}
}
}
function value_41977(a0) { // fn#41977, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:9960, offset: 0x0112d298, size: 61 bytes, params: 2, frame: 15
const value = a1;
const value2 = a2;
const env0_0 = a0;
const env0_1 = value !== undefined ? value : false;
const env0_2 = value2 !== undefined ? value2 : false;
return this.mutate(_fun41978, true);
function _fun41978(a0) { // fn#41978, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10002, offset: 0x0112d2d5, size: 35 bytes, params: 2, frame: 15
a0._merge(env0_0, env0_1, env0_2);
}
}
function value_41979(a0) { // fn#41979, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10050, offset: 0x0112d2f8, size: 150 bytes, params: 2, frame: 17
let value = a1;
const value2 = a2;
const r1 = value !== undefined ? value : false;
const r3 = value2 !== undefined ? value2 : false;
value = a0.filter(_fun41980);
if (r3) {
(r1 ? this._before : this._after).clear();
}
const items2 = [];
if (r1) {
value = arraySpread(items2, value, 0, a0);
arraySpread(items2, this._array, value, a0);
} else {
arraySpread(items2, value, arraySpread(items2, this._array, 0, a0), a0);
}
this._array = items2;
function _fun41980(a0) { // fn#41980, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10085, offset: 0x0112d38e, size: 84 bytes, params: 2, frame: 14
var r0;
var _array;
var _array2;
let binding = env0_0;
const property = binding._map[a0.id];
binding._map[a0.id] = a0;
const value2 = property == null;
if (value2) {
r0 = value2;
} else {
binding = env0_0;
_array = binding._array;
_array2 = binding._array;
_array[_array2.indexOf(property)] = a0;
r0 = false;
}
return r0;
}
}
function value_41981() { // fn#41981, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10316, offset: 0x0112d3e2, size: 70 bytes, params: 1, frame: 15
const value = a0;
const value2 = a1;
const value3 = a2;
const env0_0 = value !== undefined ? value : [];
const env0_1 = value2 !== undefined ? value2 : [];
const env0_2 = value3 !== undefined ? value3 : [];
return this.mutate(_fun41982);
function _fun41982(a0) { // fn#41982, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10361, offset: 0x0112d428, size: 202 bytes, params: 2, frame: 17
a0._before.clear();
a0._after.clear();
const Set = global.Set;
var value;
const set = new Set(env0_2);
set.forEach(_fun41983);
const binding2 = env0_1;
binding2.forEach(_fun41984);
value = Reflect.apply(a0._array.filter(_fun41985).concat, value, [set.map(_fun41986), binding2.map(_fun41987)]);
a0._array = value.sort(_fun41988);
function _fun41983({id}) { // fn#41983, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10428, offset: 0x0112d4f2, size: 27 bytes, params: 2, frame: 11
return env0_0.add(id);
}
function _fun41984({id}) { // fn#41984, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10456, offset: 0x0112d4f2, size: 27 bytes, params: 2, frame: 11
return env0_0.add(id);
}
function _fun41985({id}) { // fn#41985, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10499, offset: 0x011289b2, size: 30 bytes, params: 2, frame: 11
const binding = env0_0;
return !binding.has(id);
}
function _fun41986(a0) { // fn#41986, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10531, offset: 0x0112d50d, size: 41 bytes, params: 2, frame: 11
const value = environment.__proto__.__proto__.__proto__;
return (MessageRecordUtilsModule).createMessageRecord(a0);
}
function _fun41987(a0) { // fn#41987, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10574, offset: 0x0112d50d, size: 41 bytes, params: 2, frame: 11
const value = environment.__proto__.__proto__.__proto__;
return (MessageRecordUtilsModule).createMessageRecord(a0);
}
function _fun41988({id}, {id}) { // fn#41988, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10617, offset: 0x0112d536, size: 55 bytes, params: 3, frame: 13
const value = environment.__proto__.__proto__.__proto__;
return (SnowflakeUtils).compare(id, id);
}
}
}
function value_41990(a0) { // fn#41990, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10747, offset: 0x0112d586, size: 30 bytes, params: 2, frame: 11
const env0_0 = a0;
return this.mutate(function(a0) {
var binding = a0;
a0._array = binding;
a0._map = {};
binding.forEach(_fun41992);
a0._before.clear();
a0._after.clear();
});
function _fun41991(a0) { // fn#41991, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10779, offset: 0x0112d5a4, size: 81 bytes, params: 2, frame: 12
const binding = a0;
a0._array = binding;
a0._map = {};
binding.forEach(_fun41992);
a0._before.clear();
a0._after.clear();
function _fun41992(a0) { // fn#41992, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10815, offset: 0x0112bce4, size: 27 bytes, params: 2, frame: 3
env0_0._map[a0.id] = a0;
return a0;
}
}
}
function value_41993(a0) { // fn#41993, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10900, offset: 0x0112d5f5, size: 70 bytes, params: 2, frame: 15
const value = a1;
const value2 = this;
return value2._array.length - a0 <= 0 ? value2 : value2.mutate(_fun41994, !(value !== undefined) || value);
function _fun41994(a0) { // fn#41994, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:10974, offset: 0x0112d63b, size: 143 bytes, params: 2, frame: 17
var r3;
var _map;
var _array;
var id;
var value3;
const value2 = 0;
if (value2 < env0_0) {
for (r3 = value2; true; r3 = value3) {
_map = a0._map;
_array = a0._array;
id = _array[r3].id;
delete _map[id];
value3 = typeof r3 === 'bigint' ? r3 + 1n : +r3 + 1;
if (!(value3 < env0_0)) {
break;
}
}
}
const _before = a0._before;
const cache = _before.cache;
_array = a0._array;
Reflect.apply(cache, _before, [_array.slice(value2, env0_0), !a0.hasMoreBefore]);
_array = a0._array;
a0._array = _array.slice(env0_0);
a0.hasMoreBefore = true;
}
}
function value_41996(a0) { // fn#41996, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:11221, offset: 0x0112d6ca, size: 33 bytes, params: 2, frame: 13
const env0_0 = a0;
return this.mutate(_fun41997, true);
function _fun41997(a0) { // fn#41997, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:11253, offset: 0x0112d6eb, size: 246 bytes, params: 2, frame: 17
const value = a0._after.extractAll();
a0.hasMoreAfter = false;
const Math = global.Math;
const value3 = Math.max(value.length - env0_0, 0);
const value4 = value.slice(value3);
value.splice(value3);
const _before = a0._before;
_before.cache(a0._array);
a0._before.cache(value);
a0._clearMessages();
a0._merge(value4);
a0.hasMoreBefore = a0._before.length > 0;
a0.jumped = true;
a0.jumpTargetId = null;
a0.jumpTargetOffset = 0;
a0.jumpedToPresent = true;
a0.jumpFlash = false;
a0.jumpReturnTargetId = null;
a0.jumpSequenceId = a0.jumpSequenceId + 1;
a0.ready = true;
a0.loadingMore = false;
}
}
function value_41998(a0) { // fn#41998, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:11682, offset: 0x0112d7e1, size: 75 bytes, params: 2, frame: 15
const value = a1;
const value2 = a3;
const env0_0 = a0;
const env0_1 = !(value !== undefined) || value;
const env0_2 = a2;
const env0_3 = value2 !== undefined ? value2 : null;
const env0_4 = a4;
return this.mutate(_fun41999, false);
function _fun41999(a0) { // fn#41999, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:11730, offset: 0x0112d82c, size: 178 bytes, params: 2, frame: 16
a0.jumped = true;
a0.jumpedToPresent = false;
a0.jumpType = env0_4 ?? (require(4044) /* metro dependency 4044: Client */).JumpTypes.ANIMATED;
const binding = env0_0;
a0.jumpTargetId = binding;
a0.jumpTargetOffset = binding != null && importDefault != null ? importDefault : 0;
a0.jumpSequenceId = a0.jumpSequenceId + 1;
a0.jumpFlash = env0_1;
a0.jumpReturnTargetId = env0_3;
a0.ready = true;
a0.loadingMore = false;
}
}
function value_42000(a0) { // fn#42000, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:12009, offset: 0x0112d8de, size: 33 bytes, params: 2, frame: 13
const env0_0 = a0;
return this.mutate(_fun42001, false);
function _fun42001(a0) { // fn#42001, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:12041, offset: 0x0112d8ff, size: 55 bytes, params: 2, frame: 3
a0.focusTargetId = env0_0;
a0.focusSequenceId = a0.focusSequenceId + 1;
a0.ready = true;
a0.loadingMore = false;
}
}
function value_42002(a0, a1) { // fn#42002, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:12164, offset: 0x0112d936, size: 40 bytes, params: 3, frame: 13
const env0_0 = a0;
const env0_1 = a1;
return this.mutate(_fun42003, true);
function _fun42003(a0) { // fn#42003, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:12198, offset: 0x0112d95e, size: 122 bytes, params: 2, frame: 15
const r3 = env0_0 ? a0._before : a0._after;
a0._merge(r3.extract(require), env0_0);
const r0 = r3.length > 0 || !r3.wasAtEdge;
if (env0_0) {
a0.hasMoreBefore = r0;
} else {
a0.hasMoreAfter = r0;
}
a0.ready = true;
a0.loadingMore = false;
}
}
function value_42005(a0) { // fn#42005, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:12503, offset: 0x0112da22, size: 542 bytes, params: 2, frame: 22
var environment;
var id;
var r9;
var value4;
var messageRecord;
var value5;
var value6;
var messageRecord2;
let value = a1;
const value2 = undefined;
let r2 = !(value !== value2) || value;
let nonce = a0.nonce;
value = null;
const r1 = value == nonce ? value : this.get(a0.nonce, true);
if (value == r1) {
if (this.hasMoreAfter) {
if (this._after.wasAtEdge) {
this._after.wasAtEdge = false;
}
return this;
}
value4 = environment.__proto__;
} else {
var author = a0.author;
id = value == author ? value2 : author.id;
author = r1.author;
if (id === (value == author ? value2 : author.id)) {
nonce = a0.nonce;
if (value == nonce) {
if (this.hasMoreAfter) {
if (this._after.wasAtEdge) {
this._after.wasAtEdge = false;
}
return this;
}
value4 = environment.__proto__;
messageRecord = (require(4625) /* metro dependency 4625: MessageRecordUtils */).createMessageRecord(a0);
value5 = this.last();
if (value == value5) {
r9 = this.merge([messageRecord]);
} else {
value = importDefault(21) /* metro dependency 21: SnowflakeUtils */;
value = value.compare(a0.id, value5.id);
if (value < 0) {
value = importDefault(4817) /* metro dependency 4817: EnsureReceivedMessagesAddedInOrderExperiment */;
r9 = value.getConfig({location: 'receiveMessage'}).enabled ? this.mutate(_fun42006,
true) : this.merge([messageRecord]);
} else {
r9 = this.merge([messageRecord]);
}
}
r2 = r2 ? r9.truncateTop(MAX_MESSAGES_PER_CHANNEL,
false) : this.length > MAX_LOADED_MESSAGES ? r9.truncateBottom(MAX_MESSAGES_PER_CHANNEL,
false) : r9;
return r2;
}
id = r1.id;
nonce = a0.nonce;
if (id === nonce) {
value6 = environment.__proto__;
messageRecord2 = (require(4625) /* metro dependency 4625: MessageRecordUtils */).createMessageRecord(a0);
if (value != r1.interactionData) {
messageRecord2.interactionData = r1.interactionData;
}
return this.replace(a0.nonce, messageRecord2);
}
if (this.hasMoreAfter) {
if (this._after.wasAtEdge) {
this._after.wasAtEdge = false;
}
return this;
}
value4 = environment.__proto__;
messageRecord = (require(4625) /* metro dependency 4625: MessageRecordUtils */).createMessageRecord(a0);
value5 = this.last();
if (value == value5) {
r9 = this.merge([messageRecord]);
} else {
value = importDefault(21) /* metro dependency 21: SnowflakeUtils */;
value = value.compare(a0.id, value5.id);
if (value < 0) {
value = importDefault(4817) /* metro dependency 4817: EnsureReceivedMessagesAddedInOrderExperiment */;
r9 = value.getConfig({location: 'receiveMessage'}).enabled ? this.mutate(_fun42006,
true) : this.merge([messageRecord]);
} else {
r9 = this.merge([messageRecord]);
}
}
r2 = r2 ? r9.truncateTop(MAX_MESSAGES_PER_CHANNEL,
false) : this.length > MAX_LOADED_MESSAGES ? r9.truncateBottom(MAX_MESSAGES_PER_CHANNEL, false) : r9;
return r2;
}
if (value == a0.interaction) {
if (this.hasMoreAfter) {
if (this._after.wasAtEdge) {
this._after.wasAtEdge = false;
}
return this;
}
value4 = environment.__proto__;
messageRecord = (require(4625) /* metro dependency 4625: MessageRecordUtils */).createMessageRecord(a0);
value5 = this.last();
if (value == value5) {
r9 = this.merge([messageRecord]);
} else {
value = importDefault(21) /* metro dependency 21: SnowflakeUtils */;
value = value.compare(a0.id, value5.id);
if (value < 0) {
value = importDefault(4817) /* metro dependency 4817: EnsureReceivedMessagesAddedInOrderExperiment */;
r9 = value.getConfig({location: 'receiveMessage'}).enabled ? this.mutate(_fun42006,
true) : this.merge([messageRecord]);
} else {
r9 = this.merge([messageRecord]);
}
}
r2 = r2 ? r9.truncateTop(MAX_MESSAGES_PER_CHANNEL,
false) : this.length > MAX_LOADED_MESSAGES ? r9.truncateBottom(MAX_MESSAGES_PER_CHANNEL, false) : r9;
return r2;
}
var user = a0.interaction.user;
if (user.id !== r1.author.id) {
if (this.hasMoreAfter) {
if (this._after.wasAtEdge) {
this._after.wasAtEdge = false;
}
return this;
}
value4 = environment.__proto__;
messageRecord = (require(4625) /* metro dependency 4625: MessageRecordUtils */).createMessageRecord(a0);
value5 = this.last();
if (value == value5) {
r9 = this.merge([messageRecord]);
} else {
value = importDefault(21) /* metro dependency 21: SnowflakeUtils */;
value = value.compare(a0.id, value5.id);
if (value < 0) {
value = importDefault(4817) /* metro dependency 4817: EnsureReceivedMessagesAddedInOrderExperiment */;
r9 = value.getConfig({location: 'receiveMessage'}).enabled ? this.mutate(_fun42006,
true) : this.merge([messageRecord]);
} else {
r9 = this.merge([messageRecord]);
}
}
r2 = r2 ? r9.truncateTop(MAX_MESSAGES_PER_CHANNEL,
false) : this.length > MAX_LOADED_MESSAGES ? r9.truncateBottom(MAX_MESSAGES_PER_CHANNEL, false) : r9;
return r2;
}
if (value == a0.nonce) {
if (this.hasMoreAfter) {
if (this._after.wasAtEdge) {
this._after.wasAtEdge = false;
}
return this;
}
value4 = environment.__proto__;
messageRecord = (require(4625) /* metro dependency 4625: MessageRecordUtils */).createMessageRecord(a0);
value5 = this.last();
if (value == value5) {
r9 = this.merge([messageRecord]);
} else {
value = importDefault(21) /* metro dependency 21: SnowflakeUtils */;
value = value.compare(a0.id, value5.id);
if (value < 0) {
value = importDefault(4817) /* metro dependency 4817: EnsureReceivedMessagesAddedInOrderExperiment */;
r9 = value.getConfig({location: 'receiveMessage'}).enabled ? this.mutate(_fun42006,
true) : this.merge([messageRecord]);
} else {
r9 = this.merge([messageRecord]);
}
}
r2 = r2 ? r9.truncateTop(MAX_MESSAGES_PER_CHANNEL,
false) : this.length > MAX_LOADED_MESSAGES ? r9.truncateBottom(MAX_MESSAGES_PER_CHANNEL, false) : r9;
return r2;
}
if (r1.id === a0.nonce) {
value6 = environment.__proto__;
messageRecord2 = (require(4625) /* metro dependency 4625: MessageRecordUtils */).createMessageRecord(a0);
if (value != r1.interactionData) {
messageRecord2.interactionData = r1.interactionData;
}
return this.replace(a0.nonce, messageRecord2);
}
if (this.hasMoreAfter) {
if (this._after.wasAtEdge) {
this._after.wasAtEdge = false;
}
return this;
}
}
messageRecord = (require(4625) /* metro dependency 4625: MessageRecordUtils */).createMessageRecord(a0);
value5 = this.last();
if (value == value5) {
r9 = this.merge([messageRecord]);
} else {
value = importDefault(21) /* metro dependency 21: SnowflakeUtils */;
value = value.compare(a0.id, value5.id);
if (value < 0) {
value = importDefault(4817) /* metro dependency 4817: EnsureReceivedMessagesAddedInOrderExperiment */;
r9 = value.getConfig({location: 'receiveMessage'}).enabled ? this.mutate(_fun42006,
true) : this.merge([messageRecord]);
} else {
r9 = this.merge([messageRecord]);
}
}
r2 = r2 ? r9.truncateTop(MAX_MESSAGES_PER_CHANNEL,
false) : this.length > MAX_LOADED_MESSAGES ? r9.truncateBottom(MAX_MESSAGES_PER_CHANNEL, false) : r9;
return r2;
function _fun42006(a0) { // fn#42006, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:13067, offset: 0x0112dc40, size: 146 bytes, params: 2, frame: 18
var environment;
var value2;
var moduleValue;
const property = a0._map[env0_0.id];
a0._map[env0_0.id] = env0_0;
if (property != null) {
a0._array[a0._array.indexOf(property)] = env0_0;
} else {
value2 = environment.__proto__.__proto__;
moduleValue = importAll(4818) /* metro dependency 4818: SortedArrayUtils */;
moduleValue.insert(a0._array, env0_0, _fun42007);
}
function _fun42007({id}, {id}) { // fn#42007, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:13174, offset: 0x0112d536, size: 55 bytes, params: 3, frame: 13
const value = environment.__proto__.__proto__.__proto__;
return (SnowflakeUtils).compare(id, id);
}
}
}
function value_42008(a0, a1) { // fn#42008, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:13395, offset: 0x0112dcd2, size: 176 bytes, params: 3, frame: 17
const nonce = a0.nonce;
let value = null;
if (value != (value == nonce ? value : this.get(a0.nonce, true))) {
return this;
}
const get = this.get;
if (value != Reflect.apply(get, this, [a0.id, true])) {
return this;
}
value = environment.__proto__;
const isIOSPushNotificationRawPayloadFixExperimentEnabled2 = (IOSPushNotificationRawPayloadFixExperimentModule).isIOSPushNotificationRawPayloadFixExperimentEnabled();
const value5 = this.mutate({ready: true,
cached: isIOSPushNotificationRawPayloadFixExperimentEnabled2 ? !a1 : !isIOSPushNotificationRawPayloadFixExperimentEnabled2});
return value5.merge([mergeMessage(this, a0)]);
}
function value_42009(a0) { // fn#42009, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:13703, offset: 0x0112dd82, size: 110 bytes, params: 2, frame: 16
var r0;
var value4;
var merge;
var value5;
let value = this;
const nonce = a0.nonce;
const value2 = null;
if (value2 != (value2 == nonce ? value2 : value.get(a0.nonce, true))) {
r0 = value;
} else {
value4 = value.mutate({'ready': true, 'cached': true});
merge = value4.merge;
value5 = environment.__proto__;
value = mergeMessage(value, a0);
value = Reflect.apply(merge, value4, [[value]]);
r0 = value;
}
return r0;
}
function value_42011({newMessages, isBefore, isAfter, jump, hasMoreBefore, hasMoreAfter, avoidInitialScroll, cached, hasFetched}) { // fn#42011, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:14229, offset: 0x0112dea6, size: 1019 bytes, params: 2, frame: 33
var r2;
var offset;
var r18;
var _array;
var value16;
var value17;
var length;
var value20;
var binding;
let object = [];
arraySpread(object, newMessages, 0, undefined);
const r8 = isBefore != null && isBefore;
const r12 = isAfter != null && isAfter;
const r10 = jump ?? null;
const r13 = hasMoreBefore != null && hasMoreBefore;
const r9 = hasMoreAfter != null && hasMoreAfter;
let r7 = avoidInitialScroll != null && avoidInitialScroll;
const r6 = cached != null && cached;
const value15 = (Module00022)(object).reverse().map(_fun42012).value();
if (r8) {
if (r10 != null) {
_array = this._array;
value16 = _array.filter(function({state}) {
return state === MessageStates.SENDING;
});
_array = this._array;
value17 = _array.filter(_fun42014);
length = value16.length;
r2 = length > 0 || value17.length > 0;
value20 = this.reset(value15);
if (r2) {
if (r8) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r12) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r10?.messageId != null) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r10?.offset != null) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else {
length = value17.length;
if (length > 0) {
binding = env1_11;
binding.info('loadComplete: merging with SEND_FAILED messages for channelId=' + this.channelId);
r18 = value20.merge(value17);
} else {
r18 = value20;
}
length = value16.length;
if (length > 0) {
binding = env1_11;
binding.info('loadComplete: merging with SENDING messages for channelId=' + this.channelId);
r2 = r18.merge(value16);
} else {
r2 = r18;
}
}
} else {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
}
} else if (this.ready) {
r2 = this.merge(value15, r8, true);
} else {
_array = this._array;
value16 = _array.filter(_fun42013);
_array = this._array;
value17 = _array.filter(_fun42014);
length = value16.length;
r2 = length > 0 || value17.length > 0;
value20 = this.reset(value15);
if (r2) {
if (r8) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r12) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r10?.messageId != null) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r10?.offset != null) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else {
length = value17.length;
if (length > 0) {
binding = env1_11;
binding.info('loadComplete: merging with SEND_FAILED messages for channelId=' + this.channelId);
r18 = value20.merge(value17);
} else {
r18 = value20;
}
length = value16.length;
if (length > 0) {
binding = env1_11;
binding.info('loadComplete: merging with SENDING messages for channelId=' + this.channelId);
r2 = r18.merge(value16);
} else {
r2 = r18;
}
}
} else {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
}
}
} else if (r12) {
if (r10 != null) {
_array = this._array;
value16 = _array.filter(_fun42013);
_array = this._array;
value17 = _array.filter(_fun42014);
length = value16.length;
r2 = length > 0 || value17.length > 0;
value20 = this.reset(value15);
if (r2) {
if (r8) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r12) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r10?.messageId != null) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r10?.offset != null) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else {
length = value17.length;
if (length > 0) {
binding = env1_11;
binding.info('loadComplete: merging with SEND_FAILED messages for channelId=' + this.channelId);
r18 = value20.merge(value17);
} else {
r18 = value20;
}
length = value16.length;
if (length > 0) {
binding = env1_11;
binding.info('loadComplete: merging with SENDING messages for channelId=' + this.channelId);
r2 = r18.merge(value16);
} else {
r2 = r18;
}
}
} else {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
}
} else if (this.ready) {
r2 = this.merge(value15, r8, true);
} else {
_array = this._array;
value16 = _array.filter(_fun42013);
_array = this._array;
value17 = _array.filter(_fun42014);
length = value16.length;
r2 = length > 0 || value17.length > 0;
value20 = this.reset(value15);
if (r2) {
if (r8) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r12) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r10?.messageId != null) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r10?.offset != null) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else {
length = value17.length;
if (length > 0) {
binding = env1_11;
binding.info('loadComplete: merging with SEND_FAILED messages for channelId=' + this.channelId);
r18 = value20.merge(value17);
} else {
r18 = value20;
}
length = value16.length;
if (length > 0) {
binding = env1_11;
binding.info('loadComplete: merging with SENDING messages for channelId=' + this.channelId);
r2 = r18.merge(value16);
} else {
r2 = r18;
}
}
} else {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
}
}
} else {
_array = this._array;
value16 = _array.filter(_fun42013);
_array = this._array;
value17 = _array.filter(_fun42014);
length = value16.length;
r2 = length > 0 || value17.length > 0;
value20 = this.reset(value15);
if (r2) {
if (r8) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r12) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r10?.messageId != null) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else if (r10?.offset != null) {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
} else {
length = value17.length;
if (length > 0) {
binding = env1_11;
binding.info('loadComplete: merging with SEND_FAILED messages for channelId=' + this.channelId);
r18 = value20.merge(value17);
} else {
r18 = value20;
}
length = value16.length;
if (length > 0) {
binding = env1_11;
binding.info('loadComplete: merging with SENDING messages for channelId=' + this.channelId);
r2 = r18.merge(value16);
} else {
r2 = r18;
}
}
} else {
binding = env1_11;
binding.info('loadComplete: resetting state for channelId=' + this.channelId + ', sending.length=' + value16.length);
r2 = value20;
}
}
let r3 = !r6 && r2.cached && !r7;
const mutate = r2.mutate;
object = {'ready': true, 'loadingMore': false};
object.jumpType = r10?.jumpType ?? (require(4044) /* metro dependency 4044: Client */).JumpTypes.ANIMATED;
const flash = r10?.flash;
object.jumpFlash = flash != null && flash;
object.jumped = r10 != null;
const present = r10?.present;
object.jumpedToPresent = present != null && present;
object.jumpTargetId = r10?.messageId ?? null;
if (r10 != null) {
if (r10.messageId != null) {
offset = r10.offset;
offset = offset != null ? r10.offset : 0;
} else {
offset = 0;
}
} else {
offset = 0;
}
object.jumpTargetOffset = offset;
r7 = r10 == null || r7 ? r2.jumpSequenceId : r2.jumpSequenceId + 1;
object.jumpSequenceId = r7;
object.jumpReturnTargetId = r10?.returnMessageId ?? null;
object.hasMoreBefore = r10 != null ? r13 : r12 ? r2.hasMoreBefore : r13;
object.hasMoreAfter = r10 != null ? r9 : r8 ? r2.hasMoreAfter : r9;
object.cached = r6;
object.hasFetched = hasFetched;
object.error = false;
const initialScrollSequenceId = r2.initialScrollSequenceId;
object.initialScrollSequenceId = r3 ? initialScrollSequenceId + 1 : initialScrollSequenceId;
const suppressRowAnimationSequenceId = r2.suppressRowAnimationSequenceId;
r3 = r3 ? suppressRowAnimationSequenceId + 1 : suppressRowAnimationSequenceId;
object.suppressRowAnimationSequenceId = r3;
return Reflect.apply(mutate, r2, [object]);
function _fun42012(a0) { // fn#42012, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:14517, offset: 0x0112e2a1, size: 41 bytes, params: 2, frame: 11
const value = environment.__proto__.__proto__;
return (MessageRecordUtilsModule).createMessageRecord(a0);
}
function _fun42013({state}) { // fn#42013, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:14651, offset: 0x0112e2ca, size: 27 bytes, params: 2, frame: 2
const SENDING = MessageStates.SENDING;
return state === SENDING;
}
function _fun42014({state}) { // fn#42014, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:14698, offset: 0x0112e2e5, size: 27 bytes, params: 2, frame: 2
const SEND_FAILED = MessageStates.SEND_FAILED;
return state === SEND_FAILED;
}
}
function value_42015(a0, a1) { // fn#42015, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:16034, offset: 0x0112e300, size: 198 bytes, params: 3, frame: 15
var environment;
let value = environment.__proto__;
(RequireSortedDescendingModule).requireSortedDescending(a0);
value = a0.map(_fun42016);
value = value.reverse();
this._array.filter(_fun42017).forEach(_fun42019);
let r3 = !a1 && this.cached;
value = this.reset(value);
const mutate = value.mutate;
const initialScrollSequenceId = this.initialScrollSequenceId;
r3 = r3 ? initialScrollSequenceId + 1 : initialScrollSequenceId;
return Reflect.apply(mutate, value, [{'ready': true, 'cached': null, 'error': false, cached: a1,
initialScrollSequenceId: r3}]);
function _fun42016(a0) { // fn#42016, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:16097, offset: 0x0112e3c6, size: 27 bytes, params: 2, frame: 13
return mergeMessage(env0_0, a0);
}
function _fun42017(a0) { // fn#42017, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:16153, offset: 0x0112e3e1, size: 37 bytes, params: 2, frame: 11
const env0_0 = a0;
const binding = env0_1;
return !binding.some(_fun42018);
function _fun42018({id}) { // fn#42018, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:16165, offset: 0x00fc10ae, size: 26 bytes, params: 2, frame: 2
return id === env0_0.id;
}
}
function _fun42019(a0) { // fn#42019, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:16193, offset: 0x0112e406, size: 57 bytes, params: 2, frame: 15
var environment;
let value = environment.__proto__.__proto__;
value = importAll(4818) /* metro dependency 4818: SortedArrayUtils */;
return value.insert(env0_1, a0, _fun42020);
function _fun42020({id}, {id}) { // fn#42020, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:16218, offset: 0x0112d536, size: 55 bytes, params: 3, frame: 13
const value = environment.__proto__.__proto__.__proto__;
return (SnowflakeUtils).compare(id, id);
}
}
}
function value_42021(a0) { // fn#42021, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:16448, offset: 0x0112e43f, size: 54 bytes, params: 2, frame: 14
let value = environment.__proto__;
value = importDefault(22) /* metro dependency 22 */;
value.forEach(ChannelMessages._channelMessages, a0);
}
function value_42023(a0) { // fn#42023, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:16613, offset: 0x0112e48b, size: 41 bytes, params: 2, frame: 11
var r0;
var hasPresent;
const value2 = ChannelMessages.get(a0) != null;
if (value2) {
hasPresent = hasPresent.hasPresent();
r0 = hasPresent;
} else {
r0 = value2;
}
return r0;
}
function value_42024(a0) { // fn#42024, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:16712, offset: 0x0112e4b4, size: 68 bytes, params: 2, frame: 13
var r0;
var channelMessages;
const property = ChannelMessages._channelMessages[a0];
if (property != null) {
r0 = property;
} else {
channelMessages = new ChannelMessages(a0);
ChannelMessages._channelMessages[a0] = channelMessages;
r0 = channelMessages;
}
return r0;
}
}
function flatMapChannelMessages(a0) { // fn#42028, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:17280, offset: 0x0112e579, size: 23 bytes, params: 2, frame: 11
return a0.flatMap(function(a0) {
return a0._array;
});
}
}
function value_41952(a0, a1, a2) { // fn#41952, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:7674, offset: 0x0112cb87, size: 186 bytes, params: 4, frame: 18
var r3;
var r2;
var value2;
var push;
let value = this.get(a0);
if (value == null) {
return null;
}
let _array = this._array;
value = _array.indexOf(value);
if (value === -1) {
return null;
}
const items2 = [];
value += 1;
let length = this.length;
reducibleJoin12: while (true) {
if (!(value < length)) {
break reducibleJoin12;
}
value2 = a1 === -1;
if (value2) {
r3 = value;
} else {
length = items2.length;
if (!(length < a1)) {
break reducibleJoin12;
}
r3 = value;
}
reducibleLoop5: while (true) {
value = a2 == null;
reducibleJoin7: while (true) {
if (value) {
r2 = value;
break reducibleJoin7;
}
_array = this._array;
value = a2(_array[r3]);
r2 = value;
break reducibleJoin7;
}
reducibleJoin9: while (true) {
if (r2) {
push = items2.push;
_array = this._array;
Reflect.apply(push, items2, [_array[r3]]);
break reducibleJoin9;
}
break reducibleJoin9;
}
value = typeof r3 === 'bigint' ? r3 + 1n : +r3 + 1;
length = this.length;
if (value < length) {
if (value2) {
r3 = value;
continue reducibleLoop5;
}
length = items2.length;
if (length < a1) {
r3 = value;
continue reducibleLoop5;
}
break reducibleJoin12;
}
break reducibleJoin12;
}
}
return items2;
}
function value_41953(a0, a1, a2) { // fn#41953, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:7932, offset: 0x0112cc41, size: 176 bytes, params: 4, frame: 19
var r3;
var r2;
var value2;
var length;
var unshift;
let value = this.get(a0);
if (value == null) {
return null;
}
let _array = this._array;
value = _array.indexOf(value);
if (value === -1) {
return null;
}
const items2 = [];
value -= 1;
reducibleJoin12: while (true) {
if (!(value >= 0)) {
break reducibleJoin12;
}
value2 = a1 === -1;
if (value2) {
r3 = value;
} else {
length = items2.length;
if (!(length < a1)) {
break reducibleJoin12;
}
r3 = value;
}
reducibleLoop5: while (true) {
value = a2 == null;
reducibleJoin7: while (true) {
if (value) {
r2 = value;
break reducibleJoin7;
}
_array = this._array;
value = a2(_array[r3]);
r2 = value;
break reducibleJoin7;
}
reducibleJoin9: while (true) {
if (r2) {
unshift = items2.unshift;
_array = this._array;
Reflect.apply(unshift, items2, [_array[r3]]);
break reducibleJoin9;
}
break reducibleJoin9;
}
value = typeof r3 === 'bigint' ? r3 - 1n : +r3 - 1;
if (value >= 0) {
if (value2) {
r3 = value;
continue reducibleLoop5;
}
length = items2.length;
if (length < a1) {
r3 = value;
continue reducibleLoop5;
}
break reducibleJoin12;
}
break reducibleJoin12;
}
}
return items2;
}
function value_41954(a0, a1) { // fn#41954, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:8182, offset: 0x0112ccf1, size: 170 bytes, params: 3, frame: 17
var r6;
var r1;
var value3;
var value4;
let value = a2;
reducibleJoin2: while (true) {
if (value !== undefined) {
r6 = value;
break reducibleJoin2;
}
value = -1;
r6 = value;
break reducibleJoin2;
}
value = this.get(a0);
if (value != null) {
var _array = this._array;
value = _array.indexOf(value);
if (value === -1) {
return false;
}
var value2 = value + 1;
var length = this.length;
if (value2 < length) {
value3 = r6 === -1;
reducibleJoin11: while (true) {
reducibleJoin12: while (true) {
if (value3) {
r1 = value2;
reducibleLoop7: while (true) {
_array = this._array;
if (a1(_array[r1])) {
break reducibleJoin12;
}
value4 = typeof r1 === 'bigint' ? r1 + 1n : +r1 + 1;
length = this.length;
if (value4 < length) {
if (value3) {
r1 = value4;
continue reducibleLoop7;
}
if (value4 <= value + r6) {
r1 = value4;
continue reducibleLoop7;
}
break reducibleJoin11;
}
break reducibleJoin11;
}
} else {
if (!(value2 <= value + r6)) {
break reducibleJoin11;
}
r1 = value2;
reducibleLoop7: while (true) {
_array = this._array;
if (a1(_array[r1])) {
break reducibleJoin12;
}
value4 = typeof r1 === 'bigint' ? r1 + 1n : +r1 + 1;
length = this.length;
if (value4 < length) {
if (value3) {
r1 = value4;
continue reducibleLoop7;
}
if (value4 <= value + r6) {
r1 = value4;
continue reducibleLoop7;
}
break reducibleJoin11;
}
break reducibleJoin11;
}
}
}
return true;
}
}
}
return false;
}
function value_42010(a0) { // fn#42010, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:13864, offset: 0x0112ddf0, size: 182 bytes, params: 2, frame: 17
const mutate = this.mutate;
const object = {loadingMore: true};
let value = null;
object.jumped = value != a0;
const value2 = undefined;
const present = value == a0 ? value2 : a0.present;
object.jumpedToPresent = value != present && present;
const messageId = value == a0 ? value2 : a0.messageId;
object.jumpTargetId = value != messageId ? messageId : value;
const offset = value == a0 ? value2 : a0.offset;
object.jumpTargetOffset = value != offset ? offset : 0;
const returnMessageId = value == a0 ? value2 : a0.returnMessageId;
object.jumpReturnTargetId = value != returnMessageId ? returnMessageId : value;
value = value == a0;
object.ready = value && this.ready;
return Reflect.apply(mutate, this, [object]);
}
function _fun42029(a0) { // fn#42029, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4994:17333, offset: 0x0112e590, size: 11 bytes, params: 2, frame: 1
return a0._array;
}
global.__d(_fun41909, 4816, [153, 6, 7, 661, 3, 4625, 22, 4044, 21, 4817, 4818, 4819, 4820,
2]) /* metro module 4816, dependencies: [153, 6, 7, 661, 3, 4625, 22, 4044, 21, 4817, 4818, 4819, 4820, 2] */;