/* Metro module 3793; source: stores/RelationshipStore.tsx; dependencies: [6, 7, 15, 17, 18, 57, 3794, 1878, 661, 694, 566, 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 PossibleConstructorReturn from '../by-id/module-00015-PossibleConstructorReturn.js'; /* Metro dependency 15 */ import Module00017 from '../by-id/module-00017.js'; /* Metro dependency 17 */ import Inherits from '../by-id/module-00018-Inherits.js'; /* Metro dependency 18 */ import Module00057 from '../by-id/module-00057.js'; /* Metro dependency 57 */ import Flux from '../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */ import UserStore from './UserStore.tsx'; /* Metro dependency 1878 */ import MessageRecord from '../records/MessageRecord.tsx'; /* Metro dependency 3794 */ import * as FileImportTrackerModule from '../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as ConstantsModule from '../Constants.tsx'; /* Metro dependency 661 */ function _fun28841(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#28841, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:6, offset: 0x00f848cf, size: 675 bytes, params: 8, frame: 20 const _arrayLikeToArray_28847 = function(a0, a1) { var r0; var r1; var r2; var value3; var length; var value5; var value = undefined; var value2 = value == null; reducibleJoin2: while (true) { if (value2) { r0 = value2; break reducibleJoin2; } value3 = value > a0.length; r0 = value3; break reducibleJoin2; } reducibleJoin4: while (true) { if (r0) { length = a0.length; r1 = length; break reducibleJoin4; } r1 = value; break reducibleJoin4; } value = (0, global.Array)(r1); var value4 = 0; if (value4 < r1) { r2 = value4; reducibleLoop5: while (true) { value[r2] = a0[r2]; value5 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1; if (value5 < r1) { r2 = value5; continue reducibleLoop5; } break reducibleLoop5; } } return value; }; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); let Map = global.Map; const map = new Map(); const env0_12 = {}; const env0_13 = {}; const env0_14 = {}; let Set = global.Set; let set = new Set(); Set = global.Set; set = new Set(); Set = global.Set; set = new Set(); const env0_18 = {}; const env0_20 = {}; object = {friends: undefined, blocked: undefined, ignored: undefined, blockedOrIgnored: undefined}; Map = global.Map; set = new Map(); const Store = (Flux).Store; _fun28852(Store).displayName = 'RelationshipStore'; set = new set(importDefault(694) /* metro dependency 694: Dispatcher */, {CONNECTION_OPEN: CONNECTION_OPEN_28884, OVERLAY_INITIALIZE: OVERLAY_INITIALIZE_28886, RELATIONSHIP_ADD: RELATIONSHIP_ADD, RELATIONSHIP_REMOVE: RELATIONSHIP_REMOVE, RELATIONSHIP_UPDATE: RELATIONSHIP_UPDATE, RELATIONSHIP_PENDING_INCOMING_REMOVED: RELATIONSHIP_PENDING_INCOMING_REMOVED, UPDATE_STRANGER_STATUS: UPDATE_STRANGER_STATUS}); (FileImportTrackerModule).fileFinishedImporting('stores/RelationshipStore.tsx'); exports.default = set; function _isNativeReflectConstruct_28842() { // fn#28842, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:209, offset: 0x00f84b72, size: 94 bytes, params: 1, frame: 18 var Boolean; var prototype; var valueOf; var call; var Reflect; var construct; var closure; var value; var error; try { Boolean = global.Boolean; prototype = Boolean.prototype; valueOf = prototype.valueOf; call = valueOf.call; Reflect = global.Reflect; construct = Reflect.construct; Boolean = global.Boolean; closure = function() { }; value = Reflect.apply(construct, Reflect, [Boolean, [], closure]); value = Reflect.apply(call, valueOf, [value]); var result = !value; } catch (error) { } return (_isNativeReflectConstruct_28842_isNativeReflectConstruct = function() { return !!result; })(); } function _createForOfIteratorHelperLoose_28845(a0, a1) { // fn#28845, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:402, offset: 0x00f84bd0, size: 370 bytes, params: 3, frame: 20 var r6; var r9; var r5; var value3; var regexp; const env0_0 = a0; const Symbol = global.Symbol; let value = typeof Symbol !== 'undefined'; let r1 = value && a0[global.Symbol.iterator]; r1 = !r1 ? a0['@@iterator'] : r1; if (r1) { value = r1.call(a0); return value.next.bind(value); } const Array = global.Array; if (Array.isArray(a0)) { if (r1) { } return _fun28846; } value = undefined; if (a0) { if (typeof a0 === 'string') { value = _arrayLikeToArray_28847(a0, value); r5 = value; } else { value3 = ({}).toString.call(a0).slice(8, -1); r6 = value3 === 'Object' && a0.constructor; r9 = r6 ? a0.constructor.name : value3; if (r9 === 'Map') { r6 = global.Array.from(a0); } else if (r9 === 'Set') { r6 = global.Array.from(a0); } else if (r9 === 'Arguments') { value = _arrayLikeToArray_28847(a0, value); r6 = value; } else { regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', ''); if (regexp.test(r9)) { value = _arrayLikeToArray_28847(a0, value); r6 = value; } else { r6 = value; } } r5 = r6; } } else { r5 = value; } if (r5) { if (r5) { } return _fun28846; } const TypeError = global.TypeError; throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.'); function _fun28846() { // fn#28846, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:973, offset: 0x00c39d73, size: 69 bytes, params: 1, frame: 5 return env0_1 >= env0_0.length ? {done: true} : {done: false, value: env0_0[typeof env0_1 === 'bigint' ? env0_1 : +env0_1]}; } } function resetUserIdLists() { // fn#28848, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:1470, offset: 0x00f84d42, size: 47 bytes, params: 1, frame: 3 env0_24.friends = undefined; env0_24.blocked = undefined; env0_24.ignored = undefined; env0_24.blockedOrIgnored = undefined; } function upsertRelationship(a0, a1) { // fn#28849, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:1589, offset: 0x00f84d71, size: 177 bytes, params: 3, frame: 18 var value3; var set; var value4; var Set; var value5; var set2; let binding = env0_11; const value2 = binding.get(a0); if (value2 !== a1) { if (value2 != null) { value3 = env0_25.get(value2); if (value3 != null) { value3.delete(a0); } } binding = env0_11; binding.set(a0, a1); binding = env0_25; value4 = binding.get(a1); if (value4 != null) { value4.add(a0); } else { binding = env0_25; set = binding.set; Set = global.Set; value5 = Object.create(Set.prototype, {constructor: {value: Set}}); set2 = new Set([a0]); Reflect.apply(set, binding, [a1, set2 instanceof Object ? set2 : value5]); } resetUserIdLists(); } } function removeRelationship(a0) { // fn#28850, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:1781, offset: 0x00f84e22, size: 82 bytes, params: 2, frame: 14 var value3; let binding = env0_11; const value2 = binding.get(a0); if (value2 != null) { binding = env0_11; binding.delete(a0); binding = env0_25; value3 = binding.get(value2); if (value3 != null) { value3.delete(a0); } resetUserIdLists(); } } function recountPending() { // fn#28851, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:1903, offset: 0x00f84e74, size: 137 bytes, params: 1, frame: 17 let size = env0_15.size; size2 = size; size3 = env0_17.size; const Math = global.Math; const max = Math.max; let binding = env0_25; const get = binding.get; const PENDING_INCOMING = RelationshipTypes.PENDING_INCOMING; const value2 = Reflect.apply(get, binding, [PENDING_INCOMING]); const value3 = undefined; size = value2 == null ? value3 : value2.size; const value4 = 0; env0_21 = Reflect.apply(max, Math, [(size ?? value4) - size2 - size3, value4]); binding = env0_19; env0_19 = typeof binding === 'bigint' ? binding + 1n : +binding + 1; return value3; } function _fun28852(a0) { // fn#28852, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:2049, offset: 0x00f84efd, size: 722 bytes, params: 2, frame: 16 const RelationshipStore2 = RelationshipStore; Inherits(RelationshipStore2, a0); return CreateClass(RelationshipStore2, [{key: 'initialize', value: function() { this.waitFor(UserStore); }}, {key: 'isFriend', value: value_28855}, {key: 'isBlockedOrIgnored', value: function(a0) { return this.isBlocked(a0) || this.isIgnored(a0); }}, {key: 'isBlockedOrIgnoredForMessage', value: function(a0) { return this.isBlockedForMessage(a0) || this.isIgnoredForMessage(a0); }}, {key: 'isBlocked', value: value_28858}, {key: 'isBlockedForMessage', value: value_28859}, {key: 'isIgnored', value: value_28860}, {key: 'isIgnoredForMessage', value: value_28861}, {key: 'isUnfilteredPendingIncoming', value: value_28862}, {key: 'getPendingCount', value: value_28863}, {key: 'getSpamCount', value: value_28864}, {key: 'getPendingIgnoredCount', value: value_28865}, {key: 'getOutgoingCount', value: value_28866}, {key: 'getFriendCount', value: value_28867}, {key: 'getRelationshipCount', value: value_28868}, {key: 'getMutableRelationships', value: value_28869}, {key: 'getVersion', value: value_28870}, {key: 'isSpam', value: value_28871}, {key: 'getRelationshipType', value: value_28872}, {key: 'getNickname', value: value_28873}, {key: 'getSince', value: value_28874}, {key: 'getSinces', value: value_28875}, {key: 'getNote', value: value_28876}, {key: 'getFriendIDs', value: value_28877}, {key: 'getBlockedIDs', value: value_28878}, {key: 'getIgnoredIDs', value: value_28879}, {key: 'getBlockedOrIgnoredIDs', value: value_28881}, {key: 'getOriginApplicationId', value: value_28882}, {key: 'isStranger', value: value_28883}]); function RelationshipStore() { // fn#28853, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:2061, offset: 0x00f851cf, size: 113 bytes, params: 1, frame: 20 const value = environment.__proto__; env1_2(this, RelationshipStore); const value3 = env1_5(RelationshipStore); return env1_4(this, _isNativeReflectConstruct_28842() ? global.Reflect.construct(value3, arguments, env1_5(this).constructor) : value3.apply(this, arguments)); } function value_28855(a0) { // fn#28855, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:2415, offset: 0x00f85259, size: 45 bytes, params: 2, frame: 13 var r0; let value = a0 != null; if (value) { value = environment.__proto__; value = env1_11.get(a0) === RelationshipTypes.FRIEND; r0 = value; } else { r0 = value; } return r0; } function value_28858(a0) { // fn#28858, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:2698, offset: 0x00f852c8, size: 45 bytes, params: 2, frame: 13 var r0; let value = a0 != null; if (value) { value = environment.__proto__; value = env1_11.get(a0) === RelationshipTypes.BLOCKED; r0 = value; } else { r0 = value; } return r0; } function value_28859(a0) { // fn#28859, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:2782, offset: 0x00f852f5, size: 180 bytes, params: 2, frame: 16 var id; var value; var isBlocked; var interaction_metadata; var interactionMetadata; if (a0.author == null) { value = environment.__proto__; value = a0 instanceof MessageRecord; isBlocked = this.isBlocked; if (value) { interactionMetadata = a0.interactionMetadata; if (Reflect.apply(isBlocked, this, [interactionMetadata == null || interactionMetadata.user == null ? undefined : interactionMetadata.user.id])) { return true; } return false; } interaction_metadata = a0.interaction_metadata; value = undefined; if (Reflect.apply(isBlocked, this, [interaction_metadata == null || interaction_metadata.user == null ? value : interaction_metadata.user.id])) { return true; } } else { value = environment.__proto__; var binding = env1_11; var get = binding.get; id = a0.author.id; var value2 = Reflect.apply(get, binding, [id]); var BLOCKED = RelationshipTypes.BLOCKED; if (value2 === BLOCKED) { return true; } value = environment.__proto__; value = a0 instanceof MessageRecord; isBlocked = this.isBlocked; if (value) { interactionMetadata = a0.interactionMetadata; if (Reflect.apply(isBlocked, this, [interactionMetadata == null || interactionMetadata.user == null ? undefined : interactionMetadata.user.id])) { return true; } return false; } interaction_metadata = a0.interaction_metadata; value = undefined; id = interaction_metadata == null || interaction_metadata.user == null ? value : interaction_metadata.user.id; if (Reflect.apply(isBlocked, this, [id])) { return true; } } return false; } function value_28860(a0) { // fn#28860, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:3100, offset: 0x00f853a9, size: 65 bytes, params: 2, frame: 13 return a0 != null && (env1_11.get(a0) !== RelationshipTypes.BLOCKED && env1_16.has(a0)); } function value_28861(a0) { // fn#28861, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:3196, offset: 0x00f853ea, size: 163 bytes, params: 2, frame: 16 var id; var isIgnored; var value; var interaction_metadata; var interactionMetadata; if (a0.author == null) { value = environment.__proto__; value = a0 instanceof MessageRecord; isIgnored = this.isIgnored; if (value) { interactionMetadata = a0.interactionMetadata; if (Reflect.apply(isIgnored, this, [interactionMetadata == null || interactionMetadata.user == null ? undefined : interactionMetadata.user.id])) { return true; } return false; } interaction_metadata = a0.interaction_metadata; value = undefined; if (Reflect.apply(isIgnored, this, [interaction_metadata == null || interaction_metadata.user == null ? value : interaction_metadata.user.id])) { return true; } } else { isIgnored = this.isIgnored; id = a0.author.id; if (Reflect.apply(isIgnored, this, [id])) { return true; } value = environment.__proto__; value = a0 instanceof MessageRecord; isIgnored = this.isIgnored; if (value) { interactionMetadata = a0.interactionMetadata; if (Reflect.apply(isIgnored, this, [interactionMetadata == null || interactionMetadata.user == null ? undefined : interactionMetadata.user.id])) { return true; } return false; } interaction_metadata = a0.interaction_metadata; value = undefined; id = interaction_metadata == null || interaction_metadata.user == null ? value : interaction_metadata.user.id; if (Reflect.apply(isIgnored, this, [id])) { return true; } } return false; } function value_28862(a0) { // fn#28862, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:3529, offset: 0x00f8548d, size: 73 bytes, params: 2, frame: 13 const value = environment.__proto__; const value2 = env1_11.get(a0); const PENDING_INCOMING = RelationshipTypes.PENDING_INCOMING; return value2 === PENDING_INCOMING && !this.isSpam(a0) && !this.isIgnored(a0); } function value_28863() { // fn#28863, offset: 0x00f854d6, size: 9 bytes, params: 1, frame: 1 return env1_21; } function value_28864() { // fn#28864, offset: 0x00e425c8, size: 9 bytes, params: 1, frame: 1 return env1_22; } function value_28865() { // fn#28865, offset: 0x00df3ac4, size: 9 bytes, params: 1, frame: 1 return env1_23; } function value_28866() { // fn#28866, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:3804, offset: 0x00f854df, size: 57 bytes, params: 1, frame: 12 const value = environment.__proto__; const binding = env1_25; const get = binding.get; const PENDING_OUTGOING = RelationshipTypes.PENDING_OUTGOING; return Reflect.apply(get, binding, [PENDING_OUTGOING])?.size ?? 0; } function value_28867() { // fn#28867, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:3924, offset: 0x00f85518, size: 57 bytes, params: 1, frame: 12 const value = environment.__proto__; const binding = env1_25; const get = binding.get; const FRIEND = RelationshipTypes.FRIEND; return Reflect.apply(get, binding, [FRIEND])?.size ?? 0; } function value_28868() { // fn#28868, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:4040, offset: 0x00f85551, size: 14 bytes, params: 1, frame: 1 return env1_11.size; } function value_28869() { // fn#28869, offset: 0x00ef8482, size: 9 bytes, params: 1, frame: 1 return env1_11; } function value_28870() { // fn#28870, offset: 0x00d406a2, size: 9 bytes, params: 1, frame: 1 return env1_19; } function value_28871(a0) { // fn#28871, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:4192, offset: 0x00f8555f, size: 22 bytes, params: 2, frame: 11 return env1_15.has(a0); } function value_28872(a0) { // fn#28872, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:4255, offset: 0x00f85575, size: 38 bytes, params: 2, frame: 12 return env1_11.get(a0) ?? RelationshipTypes.NONE; } function value_28873(a0) { // fn#28873, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:4333, offset: 0x00f8559b, size: 16 bytes, params: 2, frame: 2 return env1_12[a0]; } function value_28874(a0) { // fn#28874, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:4381, offset: 0x00ef2251, size: 16 bytes, params: 2, frame: 2 return env1_13[a0]; } function value_28875() { // fn#28875, offset: 0x00e2f9d5, size: 9 bytes, params: 1, frame: 1 return env1_13; } function value_28876(a0) { // fn#28876, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:4473, offset: 0x00f7ecf6, size: 16 bytes, params: 2, frame: 2 return env1_14[a0]; } function value_28877() { // fn#28877, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:4525, offset: 0x00f855ab, size: 91 bytes, params: 1, frame: 16 var binding; var Array; var from; var binding2; if (env1_24.friends == null) { binding = env1_24; Array = global.Array; from = Array.from; binding2 = env1_25; binding.friends = Reflect.apply(from, Array, [binding2.get(RelationshipTypes.FRIEND) ?? []]); } return env1_24.friends; } function value_28878() { // fn#28878, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:4660, offset: 0x00f85606, size: 91 bytes, params: 1, frame: 16 var binding; var Array; var from; var binding2; if (env1_24.blocked == null) { binding = env1_24; Array = global.Array; from = Array.from; binding2 = env1_25; binding.blocked = Reflect.apply(from, Array, [binding2.get(RelationshipTypes.BLOCKED) ?? []]); } return env1_24.blocked; } function value_28879() { // fn#28879, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:4796, offset: 0x00f85661, size: 96 bytes, params: 1, frame: 15 var binding; var Array; var from; var binding2; if (env1_24.ignored == null) { binding = env1_24; Array = global.Array; from = Array.from; binding2 = env1_16; binding.ignored = Reflect.apply(from, Array, [binding2.values()]).filter(_fun28880); } return env1_24.ignored; function _fun28880(a0) { // fn#28880, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:4873, offset: 0x00f856c1, size: 23 bytes, params: 2, frame: 11 return env0_0.isIgnored(a0); } } function value_28881() { // fn#28881, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:4945, offset: 0x00f856d8, size: 182 bytes, params: 1, frame: 16 var r3; var Set; var binding; var prototype; var value2; var set; var value3; var get; var BLOCKED; var value4; var value5; var value6; var done; var value7; var add; var value8; var Array; var from; var values; reducibleJoin5: while (true) { if (env1_24.blockedOrIgnored != null) { break reducibleJoin5; } Set = global.Set; binding = env1_16; prototype = Set.prototype; value2 = Object.create(prototype, {constructor: {value: Set}}); set = new Set(); value3 = set instanceof Object ? set : value2; binding = env1_25; get = binding.get; BLOCKED = RelationshipTypes.BLOCKED; value4 = Reflect.apply(get, binding, [BLOCKED]); reducibleJoin4: while (true) { if (value4 == null) { break reducibleJoin4; } value5 = _createForOfIteratorHelperLoose_28845(value4); value6 = value5(); done = value6.done; if (done) { break reducibleJoin4; } r3 = value6; reducibleLoop3: while (true) { value7 = r3.value; add = value3.add; Reflect.apply(add, value3, [value7]); value8 = value5(); done = value8.done; if (done) { break reducibleJoin4; } r3 = value8; continue reducibleLoop3; } } binding = env1_24; Array = global.Array; from = Array.from; values = value3.values; binding.blockedOrIgnored = Reflect.apply(from, Array, [Reflect.apply(values, value3, [])]); break reducibleJoin5; } return env1_24.blockedOrIgnored; } function value_28882(a0) { // fn#28882, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:5224, offset: 0x00f8578e, size: 16 bytes, params: 2, frame: 2 return env1_18[a0]; } function value_28883(a0) { // fn#28883, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:5274, offset: 0x00f8579e, size: 83 bytes, params: 2, frame: 12 if (env1_20[a0] == null) { return undefined; } const expiry = env1_20[a0].expiry; const Date = global.Date; if (expiry < Date.now()) { delete env1_20[a0]; return undefined; } return env1_20[a0].isStranger; } } function CONNECTION_OPEN_28884({relationships}) { // fn#28884, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:5458, offset: 0x00f857f1, size: 149 bytes, params: 2, frame: 13 env0_11.clear(); env0_25.clear(); env0_12 = {}; env0_13 = {}; env0_14 = {}; env0_16.clear(); env0_15.clear(); env0_17.clear(); resetUserIdLists(); env0_18 = {}; env0_20 = {}; relationships.forEach(_fun28885); recountPending(); function _fun28885(a0) { // fn#28885, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:5610, offset: 0x00f85886, size: 242 bytes, params: 2, frame: 16 var binding; upsertRelationship(a0.id, a0.type); if (a0.nickname != null) { env1_12[a0.id] = a0.nickname; } if (a0.since != null) { env1_13[a0.id] = a0.since; } if (a0.note != null) { env1_14[a0.id] = a0.note; } if (a0.is_spam_request) { binding = env1_15; binding.add(a0.id); } if (a0.origin_application_id != null) { env1_18[a0.id] = a0.origin_application_id; } if (a0.user_ignored) { binding = env1_16; binding.add(a0.id); if (a0.type === RelationshipTypes.PENDING_INCOMING) { binding = env1_17; binding.add(a0.id); } } } } function OVERLAY_INITIALIZE_28886({relationships}) { // fn#28886, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:5956, offset: 0x00f85978, size: 129 bytes, params: 2, frame: 19 var r3; var value4; var value5; var upsertRelationshipBinding; var property; var value6; env0_11.clear(); env0_25.clear(); const value2 = _createForOfIteratorHelperLoose_28845(relationships); const value3 = value2(); let done = value3.done; if (!done) { for (r3 = value3; true; r3 = value6) { value4 = r3.value; value5 = Module00057(value4, 2); upsertRelationshipBinding = upsertRelationship; property = value5[0]; upsertRelationshipBinding(property, value5[1]); value6 = value2(); done = value6.done; if (done) { break; } } } recountPending(); } function RELATIONSHIP_ADD(a0) { // fn#28887, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:6177, offset: 0x00f859f9, size: 677 bytes, params: 2, frame: 17 var r7; var object; var add; let binding = env0_11; const get = binding.get; let relationship = a0.relationship; let id = relationship.id; const value2 = Reflect.apply(get, binding, [id]); const upsertRelationshipBinding = upsertRelationship; id = a0.relationship.id; let type = a0.relationship.type; upsertRelationshipBinding(id, type); if (a0.relationship.nickname != null) { object = {}; copyDataProperties(object, env0_12, r7); relationship = a0.relationship; id = relationship.id; relationship = a0.relationship; object[id] = relationship.nickname; r7 = id; } if (a0.relationship.since != null) { object = {}; copyDataProperties(object, env0_13, r7); relationship = a0.relationship; id = relationship.id; relationship = a0.relationship; object[id] = relationship.since; r7 = id; } if (a0.relationship.note != null) { object = {}; copyDataProperties(object, env0_14, r7); relationship = a0.relationship; id = relationship.id; relationship = a0.relationship; object[id] = relationship.note; r7 = id; } if (a0.relationship.originApplicationId != null) { object = {}; copyDataProperties(object, env0_18, r7); relationship = a0.relationship; id = relationship.id; relationship = a0.relationship; object[id] = relationship.originApplicationId; } const isSpamRequest = a0.relationship.isSpamRequest; binding = env0_15; if (isSpamRequest) { binding.add(a0.relationship.id); } else { binding.delete(a0.relationship.id); } const userIgnored = a0.relationship.userIgnored; binding = env0_16; if (userIgnored) { add = binding.add; relationship = a0.relationship; Reflect.apply(add, binding, [relationship.id]); relationship = a0.relationship; if (relationship.type === RelationshipTypes.PENDING_INCOMING) { binding = env0_17; binding.add(a0.relationship.id); } else if (a0.relationship.type === RelationshipTypes.FRIEND) { env0_17.delete(a0.relationship.id); } } else { relationship = a0.relationship; id = relationship.id; binding.delete(id); binding = env0_17; relationship = a0.relationship; id = relationship.id; binding.delete(id); } recountPending(); type = a0.relationship.type; const FRIEND = RelationshipTypes.FRIEND; if (type === FRIEND && value2 === RelationshipTypes.PENDING_OUTGOING) { (importDefault(694) /* metro dependency 694: Dispatcher */).dispatch({type: 'FRIEND_REQUEST_ACCEPTED', user: a0.relationship.user}); } } function RELATIONSHIP_REMOVE(a0) { // fn#28888, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:7142, offset: 0x00f85c9e, size: 350 bytes, params: 2, frame: 15 var object; removeRelationship(a0.relationship.id); let binding = env0_12; if (binding[a0.relationship.id] != null) { object = {}; copyDataProperties(object, env0_12, object); delete object[a0.relationship.id]; } if (env0_13[a0.relationship.id] != null) { object = {}; copyDataProperties(object, env0_13, object); delete object[a0.relationship.id]; } if (env0_14[a0.relationship.id] != null) { object = {}; copyDataProperties(object, env0_14, object); delete object[a0.relationship.id]; } binding = env0_18; if (binding[a0.relationship.id] != null) { object = {}; copyDataProperties(object, env0_18, binding); delete object[a0.relationship.id]; } if (!a0.relationship.userIgnored) { env0_16.delete(a0.relationship.id); } env0_17.delete(a0.relationship.id); env0_15.delete(a0.relationship.id); recountPending(); } function RELATIONSHIP_UPDATE({relationship}) { // fn#28889, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:7623, offset: 0x00f85dfc, size: 399 bytes, params: 2, frame: 16 const upsertRelationshipBinding = upsertRelationship; let id = relationship.id; upsertRelationshipBinding(id, relationship.type); if (relationship.since == null) { delete env0_13[relationship.id]; } else { env0_13[relationship.id] = relationship.since; } if (relationship.nickname == null) { delete env0_12[relationship.id]; } else { env0_12[relationship.id] = relationship.nickname; } if (relationship.note == null) { delete env0_14[relationship.id]; } else { env0_14[relationship.id] = relationship.note; } const isSpamRequest = relationship.isSpamRequest; let binding = env0_15; if (isSpamRequest) { binding.add(relationship.id); } else { binding.delete(relationship.id); } if (env0_20[relationship.id] != null) { delete env0_20[relationship.id]; } if (relationship.originApplicationId == null) { delete env0_18[relationship.id]; } else { env0_18[relationship.id] = relationship.originApplicationId; } const userIgnored = relationship.userIgnored; binding = env0_16; if (userIgnored) { binding.add(relationship.id); if (relationship.type === RelationshipTypes.PENDING_INCOMING) { binding = env0_17; binding.add(relationship.id); } } else { id = relationship.id; binding.delete(id); binding = env0_17; id = relationship.id; binding.delete(id); } recountPending(); } function RELATIONSHIP_PENDING_INCOMING_REMOVED() { // fn#28890, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:8149, offset: 0x00f85f8b, size: 142 bytes, params: 1, frame: 15 var r3; var value5; var value6; var PENDING_INCOMING; var value7; const _createForOfIteratorHelperLoose_28845Binding = _createForOfIteratorHelperLoose_28845; let binding = env0_11; const value3 = _createForOfIteratorHelperLoose_28845Binding(binding.keys()); const value4 = value3(); let done = value4.done; if (!done) { r3 = value4; while (true) { value5 = r3.value; binding = env0_11; value6 = binding.get(value5); PENDING_INCOMING = RelationshipTypes.PENDING_INCOMING; if (value6 === PENDING_INCOMING) { removeRelationship(value5); binding = env0_15; binding.delete(value5); binding = env0_17; binding.delete(value5); delete env0_20[value5]; } value7 = value3(); done = value7.done; if (done) { break; } r3 = value7; continue; } } recountPending(); } function UPDATE_STRANGER_STATUS({userId, isStranger}) { // fn#28891, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3920:8405, offset: 0x00f86019, size: 68 bytes, params: 2, frame: 13 const binding = env0_20; const object = {}; const Date = global.Date; object.expiry = Date.now() + 300000; object.isStranger = isStranger; binding[userId] = object; } } global.__d(_fun28841, 3793, [6, 7, 15, 17, 18, 57, 3794, 1878, 661, 694, 566, 2]) /* metro module 3793, dependencies: [6, 7, 15, 17, 18, 57, 3794, 1878, 661, 694, 566, 2] */;