/* Metro module 3969; source: stores/SelectedGuildStore.tsx; dependencies: [6, 7, 15, 17, 18, 3970, 1226, 3973, 1867, 661, 1230, 3974, 3987, 566, 694, 2] */ function _fun32528(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#32528, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:6, offset: 0x01018c1a, size: 471 bytes, params: 8, frame: 20 const env0_0 = require; const closure = CONNECTION_OPEN_32532; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_2 = importDefault(6) /* metro dependency 6 */; const env0_3 = importDefault(7) /* metro dependency 7 */; const env0_4 = importDefault(15) /* metro dependency 15 */; const env0_5 = importDefault(17) /* metro dependency 17 */; const env0_6 = importDefault(18) /* metro dependency 18 */; const userGuildJoinRequestStore = importDefault(3970) /* metro dependency 3970: UserGuildJoinRequestStore */; const authenticationStore = importDefault(1226) /* metro dependency 1226: AuthenticationStore */; const defaultRouteStore = importDefault(3973) /* metro dependency 3973: DefaultRouteStore */; const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */; let value = require(661) /* metro dependency 661: Constants */; const env0_11 = value.ME; const env0_12 = value.Routes; const env0_15 = {}; const PersistedStore = (importDefault(566) /* metro dependency 566: flux */).PersistedStore; value = _fun32537(PersistedStore); value.displayName = 'SelectedGuildStore'; value.persistKey = 'SelectedGuildStore'; value = new value(importDefault(694) /* metro dependency 694: Dispatcher */, {CONNECTION_OPEN: closure, OVERLAY_INITIALIZE: function(a0) { env0_13 = a0.selectedGuildId; env0_14 = undefined; CONNECTION_OPEN_32532(); }, CHANNEL_SELECT: CHANNEL_SELECT_32546, GUILD_MEMBER_REMOVE: GUILD_MEMBER_REMOVE_32547, GUILD_DELETE: GUILD_DELETE_32548, LOGOUT: function() { env0_13 = null; env0_14 = null; }}); (require(2) /* metro dependency 2 */).fileFinishedImporting('stores/SelectedGuildStore.tsx'); exports.default = value; exports.SELECTED_GUILD_TIMESTAMP_NOW = -1; } function _isNativeReflectConstruct_32529() { // fn#32529, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:216, offset: 0x01018df1, 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_32529_isNativeReflectConstruct = function() { return !!result; })(); } function CONNECTION_OPEN_32532() { // fn#32532, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:432, offset: 0x01018e4f, size: 156 bytes, params: 1, frame: 14 env0_13 = env0_13 != null && GuildStore.getGuild(env0_13) == null && UserGuildJoinRequestStore.getRequest(env0_13) == null ? null : env0_13; if (env0_14 != null && GuildStore.getGuild(env0_14) == null && UserGuildJoinRequestStore.getRequest(env0_14) == null) { } updateLastSelectedGuildMillis(env0_13); } function updateLastSelectedGuildMillis(a0) { // fn#32533, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:621, offset: 0x01018eeb, size: 41 bytes, params: 2, frame: 11 var binding; var Date; if (a0 != null) { binding = env0_15; Date = global.Date; binding[a0] = Date.now(); } } function handleGuildRemove(a0) { // fn#32534, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:690, offset: 0x01018f14, size: 166 bytes, params: 2, frame: 15 var r0; var value4; var moduleValue; var moduleValue2; delete env0_15[a0]; if (env0_14 !== a0) { r0 = false; } else { r0 = true; } if (env0_13 === a0) { value4 = pickFallbackGuildId(a0); if (value4 != null) { moduleValue2 = require(1230) /* metro dependency 1230: router_utils */; moduleValue2.replaceWith(Routes.CHANNEL(value4)); r0 = true; } else { moduleValue = require(1230) /* metro dependency 1230: router_utils */; moduleValue.replaceWith(Routes.ME); r0 = true; } } return r0; } function _fun32537(a0) { // fn#32537, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:1198, offset: 0x010190cd, size: 162 bytes, params: 2, frame: 16 const closure = SelectedGuildStore; env0_6(closure, a0); return env0_3(closure, [{key: 'initialize', value: value_32539}, {key: 'getState', value: value_32541}, {key: 'getGuildId', value: value_32542}, {key: 'getLastSelectedGuildId', value: value_32543}, {key: 'getLastSelectedTimestamp', value: value_32544}]); } function CHANNEL_SELECT_32546({guildId}) { // fn#32546, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:2600, offset: 0x0101931d, size: 59 bytes, params: 2, frame: 13 if (env0_13 === guildId) { return false; } const updateLastSelectedGuildMillisBinding = updateLastSelectedGuildMillis; updateLastSelectedGuildMillisBinding(env0_13); updateLastSelectedGuildMillisBinding(guildId); if (guildId == null) { } } function GUILD_MEMBER_REMOVE_32547({guildId, user}) { // fn#32547, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:2766, offset: 0x01019358, size: 55 bytes, params: 2, frame: 13 const id = user.id; const getId = AuthenticationStore.getId; return id === Reflect.apply(getId, AuthenticationStore, []) && handleGuildRemove(guildId); } function GUILD_DELETE_32548({guild}) { // fn#32548, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:2879, offset: 0x0101938f, size: 44 bytes, params: 2, frame: 12 return guild.unavailable !== true && handleGuildRemove(guild.id); } function pickFallbackGuildId(a0) { // fn#32535, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:778, owner: handleGuildRemove.pickFallbackGuildId, offset: 0x01018fba, size: 254 bytes, params: 2, frame: 26 var environment; var r7; var r8; var r9; var r15; var r12; var r13; var r1; var id; var getGuild; var property; var property2; var value6; var value7; var value8; const env0_0 = a0; let value = environment.__proto__; const value2 = null; if (value2 != env1_14) { getGuild = GuildStore.getGuild; reducibleJoin2: while (true) { if (value2 != Reflect.apply(getGuild, GuildStore, [env1_14])) { return env1_14; } break reducibleJoin2; } } const Object = global.Object; const value3 = Object.keys(env1_15); let length = value3.length; const value4 = 0; const value5 = undefined; if (value4 < length) { r7 = value4; r8 = value4; r9 = value2; reducibleLoop3: while (true) { property = value3[r7]; reducibleJoin7: while (true) { if (property === a0) { r12 = r9; r13 = r8; break reducibleJoin7; } property2 = env1_15[property]; value6 = property2 > r8; reducibleJoin6: while (true) { if (value6) { getGuild = GuildStore.getGuild; value7 = value2 != Reflect.apply(getGuild, GuildStore, [property]); r15 = value7; break reducibleJoin6; } r15 = value6; break reducibleJoin6; } if (r15) { r12 = property; r13 = property2; break reducibleJoin7; } r12 = r9; r13 = r8; break reducibleJoin7; } value8 = typeof r7 === 'bigint' ? r7 + 1n : +r7 + 1; length = value3.length; if (value8 < length) { r7 = value8; r8 = r13; r9 = r12; continue reducibleLoop3; } r1 = r12; break reducibleLoop3; } } else { r1 = value2; } if (value2 != r1) { return r1; } value = GuildStore.getGuildsArray(); value = value.find(_fun32536); reducibleJoin11: while (true) { if (value2 == value) { id = value5; break reducibleJoin11; } id = value.id; break reducibleJoin11; } return value2 != id ? id : value2; } function value_32539(a0) { // fn#32539, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:1518, offset: 0x0101916f, size: 316 bytes, params: 2, frame: 23 this.mustEmitChanges(function(a0) { return a0.type !== 'CONNECTION_OPEN'; }); this.waitFor(AuthenticationStore, DefaultRouteStore, GuildStore, UserGuildJoinRequestStore); const value2 = null; const value3 = undefined; const selectedGuildTimestampMillis = value2 == a0 ? value3 : a0.selectedGuildTimestampMillis; const r4 = value2 != selectedGuildTimestampMillis ? selectedGuildTimestampMillis : {}; const selectedGuildId = value2 == a0 ? value3 : a0.selectedGuildId; env1_13 = value2 != selectedGuildId ? selectedGuildId : value2; const lastSelectedGuildId = value2 == a0 ? value3 : a0.lastSelectedGuildId; let r1 = value2 != lastSelectedGuildId ? lastSelectedGuildId : value2; const lastNonVoiceRoute = DefaultRouteStore.lastNonVoiceRoute; const matchPathCompatModule = require(3974) /* metro dependency 3974: matchPathCompat */; const matchPath = matchPathCompatModule.matchPath; const CHANNEL = Routes.CHANNEL; const RouteParam = (require(3987) /* metro dependency 3987: RouteUtils */).RouteParam; let guildId = RouteParam.guildId; const value4 = Reflect.apply(matchPath, matchPathCompatModule, [lastNonVoiceRoute, {path: Reflect.apply(CHANNEL, Routes, [Reflect.apply(guildId, RouteParam, [])])}]); guildId = value2 == value4 || value2 == value4.params ? value3 : value4.params.guildId; r1 = guildId === ME ? value2 : value2 != guildId ? guildId : value2; if (value2 != r1 && r1 !== env1_13) { } return value3; } function value_32541() { // fn#32541, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:2052, offset: 0x010192bd, size: 34 bytes, params: 1, frame: 3 return {selectedGuildTimestampMillis: env1_15, selectedGuildId: env1_13, lastSelectedGuildId: env1_14}; } function value_32544(a0) { // fn#32544, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4118:2286, offset: 0x010192df, size: 30 bytes, params: 2, frame: 4 return env1_13 === a0 ? -1 : env1_15[a0]; }