Initial commit

This commit is contained in:
janisslsm committed 2026-07-27 16:20:00 +03:00
commit af3b49f756
16065 files changed
+2938410

No files matched your search

@@ -0,0 +1,92 @@
/* Metro module 12995; source: modules/routing/native/BackPressManager.tsx; dependencies: [6, 7, 15, 17, 18, 27, 8812, 4022, 1583, 1482, 477, 4561, 2] */
function _fun99115(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#99115, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13185:6, offset: 0x021bb844, size: 259 bytes, params: 8, frame: 19
const env0_0 = require;
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 env0_7 = (require(27) /* metro dependency 27 */).BackHandler;
let value = importDefault(4561) /* metro dependency 4561: LifecycleManager */;
value = _fun99120(value);
value = new value();
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/routing/native/BackPressManager.tsx');
exports.default = value;
}
function _isNativeReflectConstruct_99116() { // fn#99116, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13185:170, offset: 0x021bb947, size: 98 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_99116_isNativeReflectConstruct = function() {
return !!result;
})();
}
function handleBackPress() { // fn#99119, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13185:363, offset: 0x021bb9a9, size: 156 bytes, params: 1, frame: 16
var r0;
var value;
(require(8812) /* metro dependency 8812: ContextMenuStateNative */).hideContextMenu();
const keyboardType = (require(4022) /* metro dependency 4022: useKeyboardType */).getKeyboardType();
const KeyboardTypes = (require(1583) /* metro dependency 1583: KeyboardTypes */).KeyboardTypes;
const SYSTEM = KeyboardTypes.SYSTEM;
const value3 = keyboardType !== SYSTEM;
if (value3) {
value = require(1482) /* metro dependency 1482: KeyboardUIStoreNative */;
value.setKeyboardType({type: KeyboardTypes.SYSTEM});
value = true;
r0 = value;
} else {
r0 = value3;
}
return !!r0;
}
function _fun99120(a0) { // fn#99120, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13185:605, offset: 0x021bba45, size: 124 bytes, params: 2, frame: 16
const closure = BackPressManager;
env0_6(closure, a0);
return env0_3(closure, [{key: '_initialize', value: value_99122}, {key: '_initializeGlobalBackPressListener',
value: value_99123}, {key: '_terminate', value: function() {
var _backPressEventSubscription = this._backPressEventSubscription;
if (_backPressEventSubscription != null) {
_backPressEventSubscription.remove();
}
}}]);
}
function value_99122() { // fn#99122, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13185:916, offset: 0x021bbac1, size: 55 bytes, params: 1, frame: 12
let value = environment.__proto__;
value = require(477) /* metro dependency 477: PlatformUtils */;
if (value.isAndroid()) {
this._initializeGlobalBackPressListener();
}
}
function value_99123() { // fn#99123, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13185:1041, offset: 0x021bbaf8, size: 42 bytes, params: 1, frame: 13
const value = environment.__proto__;
this._backPressEventSubscription = BackHandler.addEventListener('hardwareBackPress', handleBackPress);
}
@@ -0,0 +1,551 @@
/* Metro module 12073; source: modules/routing/native/RouteManagerUtils.tsx; dependencies: [29, 7715, 1383, 1379, 3973, 1935, 1934, 661, 7716, 3, 3987, 12074, 4796, 1230, 12079, 5080, 7709, 6593, 7713, 4007, 694, 7712, 4044, 12080, 2] */
function _fun92759(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#92759, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:6, offset: 0x0209825c, size: 750 bytes, params: 8, frame: 30
const env0_0 = require;
const closure = extractParamsFromVoiceModalRoute;
const closure2 = voiceRouteRewriter;
const closure3 = saveLastRouteListener;
const closure4 = saveLastNonVoiceRouteListener;
const closure5 = updateSelectedChannelListener;
const closure6 = extractParams;
const env0_3 = ['channelId', 'guildId'];
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(29) /* metro dependency 29 */;
const env0_5 = (require(7715) /* metro dependency 7715: ChannelCallStore */).setVoiceChatDrawerState;
const env0_6 = (require(1383) /* metro dependency 1383: ChannelRecord */).isGuildSelectableChannelType;
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
const defaultRouteStore = importDefault(3973) /* metro dependency 3973: DefaultRouteStore */;
const guildChannelStore = importDefault(1935) /* metro dependency 1935: GuildChannelStore */;
const selectedChannelStore = importDefault(1934) /* metro dependency 1934: SelectedChannelStore */;
let value = require(661) /* metro dependency 661: Constants */;
const env0_11 = value.ME;
const Routes = value.Routes;
const env0_13 = value.ChannelTypes;
const env0_14 = (require(7716) /* metro dependency 7716: ChannelCallConstants */).VoiceChatDrawerState;
value = importDefault(3) /* metro dependency 3: Logger */;
value = new value('RouteUtils');
const CHANNEL = Routes.CHANNEL;
const RouteParam = (require(3987) /* metro dependency 3987: RouteUtils */).RouteParam;
value = RouteParam.guildId();
value = Reflect.apply(CHANNEL, Routes, [value, RouteParam.channelId({optional: true}), ':messageId?']);
const VOICE_CHAT_CHANNEL_PARTIAL = Routes.VOICE_CHAT_CHANNEL_PARTIAL;
object = ['' + value + Reflect.apply(VOICE_CHAT_CHANNEL_PARTIAL, Routes,
[RouteParam.guildId({name: 'voiceGuildId'}), RouteParam.channelId({name: 'voiceChannelId'}),
':voiceMessageId?']), value];
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/routing/native/RouteManagerUtils.tsx');
exports.MAIN_DRAWER_ROUTES = value;
exports.extractParamsFromVoiceModalRoute = closure;
exports.popVoiceRoute = popVoiceRoute;
exports.transitionToVoiceRoute = transitionToVoiceRoute;
exports.voiceRouteRewriter = closure2;
exports.saveLastRouteListener = closure3;
exports.saveLastNonVoiceRouteListener = closure4;
exports.updateSelectedChannelListener = closure5;
exports.extractParams = closure6;
exports.initializeRouteManagerIfNeeded = initializeRouteManagerIfNeeded;
exports.cleanupRouteManager = cleanupRouteManager;
}
function matchPathToRoutes(a0, a1) { // fn#92760, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:631, offset: 0x0209854a, size: 61 bytes, params: 3, frame: 13
return (require(12074) /* metro dependency 12074 */).matchPath(a0, {'path': null, 'strict': false, 'exact': false,
path: a1});
}
function extractParamsFromVoiceModalRoute(a0) { // fn#92761, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:720, offset: 0x02098587, size: 127 bytes, params: 2, frame: 18
const matchPathToRoutesBinding = matchPathToRoutes;
const pathname = a0.pathname;
const value2 = undefined;
const value3 = matchPathToRoutesBinding(pathname, env0_17);
const {voiceChannelId, voiceGuildId, voiceMessageId} = (value3 == null ? value2 : value3.params) ?? ({});
const object2 = {};
copyDataProperties(object2, extractParams({match: value3, location: a0}), value3);
object2['voiceChannelId'] = voiceChannelId;
object2['voiceGuildId'] = voiceGuildId;
object2['voiceMessageId'] = voiceMessageId;
return object2;
}
function selectLastVisitedTextChannel(a0) { // fn#92762, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:997, offset: 0x02098606, size: 144 bytes, params: 2, frame: 16
var r0;
var mostRecentSelectedTextChannelId;
var defaultChannel;
const getChannel = ChannelStore.getChannel;
const getLastSelectedChannelId = SelectedChannelStore.getLastSelectedChannelId;
const value2 = Reflect.apply(getChannel, ChannelStore, [Reflect.apply(getLastSelectedChannelId,
SelectedChannelStore, [])]);
const value3 = undefined;
if ((value2 == null ? value3 : value2.type) == null) {
mostRecentSelectedTextChannelId = SelectedChannelStore.getMostRecentSelectedTextChannelId(a0);
if (mostRecentSelectedTextChannelId != null) {
r0 = mostRecentSelectedTextChannelId;
} else {
defaultChannel = GuildChannelStore.getDefaultChannel(a0);
r0 = defaultChannel == null ? value3 : defaultChannel.id;
}
} else if (isGuildSelectableChannelType(value2 == null ? value3 : value2.type)) {
r0 = value2.id;
} else {
mostRecentSelectedTextChannelId = SelectedChannelStore.getMostRecentSelectedTextChannelId(a0);
if (mostRecentSelectedTextChannelId != null) {
r0 = mostRecentSelectedTextChannelId;
} else {
defaultChannel = GuildChannelStore.getDefaultChannel(a0);
r0 = defaultChannel == null ? value3 : defaultChannel.id;
}
}
return r0;
}
function voiceRouteRewriter(a0) { // fn#92763, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:1256, offset: 0x02098696, size: 424 bytes, params: 2, frame: 22
var r0;
var value9;
const state = a0.state;
const extractParamsBinding = extractParams;
let object2 = {};
const matchPathToRoutesBinding = matchPathToRoutes;
const pathname = a0.pathname;
const value2 = undefined;
object2.match = matchPathToRoutesBinding(pathname, env0_17);
object2.location = a0;
const value3 = extractParamsBinding(object2);
const channelId = value3.channelId;
const guildId = value3.guildId;
let binding = env0_4;
const value4 = binding(value3, env0_3);
const channel = ChannelStore.getChannel(channelId);
const value6 = null;
if (value6 == channelId) {
r0 = value6;
} else if (value6 == guildId) {
r0 = value6;
} else if ((value6 == channel ? value2 : channel.type) === ChannelTypes.GUILD_VOICE) {
object2 = {};
copyDataProperties(object2, value4, undefined);
object2['channelId'] = channelId;
object2['guildId'] = guildId;
r0 = object2;
} else if ((value6 == channel ? value2 : channel.type) !== ChannelTypes.GUILD_STAGE_VOICE) {
r0 = value6;
} else {
object2 = {};
copyDataProperties(object2, value4, undefined);
object2['channelId'] = channelId;
object2['guildId'] = guildId;
r0 = object2;
}
if (value6 != r0) {
if (value6 != env0_15) {
binding = env0_15;
binding.log('voiceRouteRewriter: has voiceChannelParams = ' + global.JSON.stringify(r0));
}
value9 = '' + DefaultRouteStore.lastNonVoiceRoute + Routes.VOICE_CHAT_CHANNEL_PARTIAL(r0.guildId, r0.channelId,
r0.messageId);
if (value9 === a0.pathname) {
r0 = value6;
} else {
if (value6 != env0_15) {
binding = env0_15;
binding.log('voiceRouteRewriter: rewriting route: ' + a0.pathname + ' -> ' + value9);
}
r0 = {path: value9, state: state};
}
return r0;
}
return value6;
}
function saveLastRouteListener({pathname}) { // fn#92764, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:1952, offset: 0x0209883e, size: 47 bytes, params: 2, frame: 12
(require(12079) /* metro dependency 12079: DefaultRouteActionCreators */).saveLastRoute(pathname);
}
function saveLastNonVoiceRouteListener(a0) { // fn#92765, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:2021, offset: 0x0209886d, size: 207 bytes, params: 2, frame: 18
var moduleValue;
const matchPathToRoutesBinding = matchPathToRoutes;
const pathname = a0.pathname;
const value2 = undefined;
const value3 = matchPathToRoutesBinding(pathname, env0_17);
const value4 = null;
const channel = ChannelStore.getChannel(value4 == value3 ? value2 : value3.params.channelId);
const type = value4 == channel ? value2 : channel.type;
const GUILD_VOICE = ChannelTypes.GUILD_VOICE;
const r1 = type === GUILD_VOICE || (value4 == channel ? value2 : channel.type) === ChannelTypes.GUILD_STAGE_VOICE ? value4 : extractParams({match: value3,
location: a0});
if (value4 != r1) {
moduleValue = require(12079) /* metro dependency 12079: DefaultRouteActionCreators */;
moduleValue.saveLastNonVoiceRoute(Routes.CHANNEL(r1.guildId, r1.channelId));
}
return value2;
}
function updateSelectedChannelListener(a0) { // fn#92766, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:2405, offset: 0x0209893c, size: 1194 bytes, params: 2, frame: 39
var id;
var r8;
var channel;
var binding;
var log;
var JSON;
var verbose;
var value6;
var moduleValue;
var defaultImport2;
var moduleValue2;
var isModalOpen;
var moduleValue3;
var defaultImport3;
var popAboveKey;
var moduleValue4;
var value12;
var channel2;
var defaultImport5;
var popWithKey;
var moduleValue5;
var value;
const extractParamsFromVoiceModalRouteBinding = extractParamsFromVoiceModalRoute;
const value2 = undefined;
let r1 = extractParamsFromVoiceModalRouteBinding(a0) ?? ({});
const guildId = r1.guildId;
const channelId = r1.channelId;
const messageId = r1.messageId;
const jumpType = r1.jumpType;
const voiceChannelId = r1.voiceChannelId;
const voiceGuildId = r1.voiceGuildId;
const voiceMessageId = r1.voiceMessageId;
if (voiceChannelId != null) {
channel = ChannelStore.getChannel(voiceChannelId);
if ((channel == null ? value2 : channel.type) === ChannelTypes.GUILD_VOICE) {
if (env0_15 != null) {
binding = env0_15;
verbose = binding.verbose;
JSON = global.JSON;
value6 = JSON.stringify(a0);
JSON = global.JSON;
Reflect.apply(verbose, binding,
['UpdateSelectedChannelListener -> voice route present! ' + value6 + ' ' + JSON.stringify({guildId: guildId,
channelId: channelId, messageId: messageId, jumpType: jumpType, voiceChannelId: voiceChannelId,
voiceGuildId: voiceGuildId, voiceMessageId: voiceMessageId}) + ' ']);
}
moduleValue = require(7713) /* metro dependency 7713: VoicePanelUtilsNative */;
if (!moduleValue.isVoicePanelEnabled(channel)) {
(importDefault(6593) /* metro dependency 6593: GuildActionCreators */).selectGuild(voiceGuildId);
defaultImport2 = importDefault(4796) /* metro dependency 4796: SelectedChannelActionCreators */;
defaultImport2.selectChannel({guildId: voiceGuildId, channelId: voiceChannelId,
messageId: voiceMessageId,
jumpType: jumpType});
}
moduleValue2 = require(4007) /* metro dependency 4007: NavigationRouteUtilsNative */;
isModalOpen = moduleValue2.isModalOpen;
moduleValue3 = require(7709) /* metro dependency 7709: PrivateChannelCallUtils */;
if (!Reflect.apply(isModalOpen, moduleValue2, [moduleValue3.getVoiceChannelKey(channel.id)])) {
defaultImport3 = importDefault(5080) /* metro dependency 5080: ModalActionCreators */;
popAboveKey = defaultImport3.popAboveKey;
moduleValue4 = require(7709) /* metro dependency 7709: PrivateChannelCallUtils */;
Reflect.apply(popAboveKey, defaultImport3, [moduleValue4.getVoiceChannelKey(channel.id)]);
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun92767);
}
r8 = channel.isGuildVoice() && voiceMessageId != null;
r8 = !r8 ? channel.isGuildStageVoice() : r8;
if (r8) {
setVoiceChatDrawerState(channel.id, VoiceChatDrawerState.OPEN);
r1 = voiceGuildId != null && voiceChannelId != null;
r1 = r1 && voiceMessageId != null;
if (r1) {
(importDefault(7712) /* metro dependency 7712: ChannelRTCActionCreators */).jumpToVoiceChannelMessage(voiceGuildId,
voiceChannelId, voiceMessageId, jumpType);
}
}
} else if ((channel == null ? value2 : channel.type) === ChannelTypes.GUILD_STAGE_VOICE) {
if (env0_15 != null) {
binding = env0_15;
verbose = binding.verbose;
JSON = global.JSON;
value6 = JSON.stringify(a0);
JSON = global.JSON;
Reflect.apply(verbose, binding,
['UpdateSelectedChannelListener -> voice route present! ' + value6 + ' ' + JSON.stringify({guildId: guildId,
channelId: channelId, messageId: messageId, jumpType: jumpType, voiceChannelId: voiceChannelId,
voiceGuildId: voiceGuildId, voiceMessageId: voiceMessageId}) + ' ']);
}
moduleValue = require(7713) /* metro dependency 7713: VoicePanelUtilsNative */;
if (!moduleValue.isVoicePanelEnabled(channel)) {
(importDefault(6593) /* metro dependency 6593: GuildActionCreators */).selectGuild(voiceGuildId);
defaultImport2 = importDefault(4796) /* metro dependency 4796: SelectedChannelActionCreators */;
defaultImport2.selectChannel({guildId: voiceGuildId, channelId: voiceChannelId,
messageId: voiceMessageId,
jumpType: jumpType});
}
moduleValue2 = require(4007) /* metro dependency 4007: NavigationRouteUtilsNative */;
isModalOpen = moduleValue2.isModalOpen;
moduleValue3 = require(7709) /* metro dependency 7709: PrivateChannelCallUtils */;
if (!Reflect.apply(isModalOpen, moduleValue2, [moduleValue3.getVoiceChannelKey(channel.id)])) {
defaultImport3 = importDefault(5080) /* metro dependency 5080: ModalActionCreators */;
popAboveKey = defaultImport3.popAboveKey;
moduleValue4 = require(7709) /* metro dependency 7709: PrivateChannelCallUtils */;
Reflect.apply(popAboveKey, defaultImport3, [moduleValue4.getVoiceChannelKey(channel.id)]);
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun92767);
}
r8 = channel.isGuildVoice() && voiceMessageId != null;
r8 = !r8 ? channel.isGuildStageVoice() : r8;
if (r8) {
setVoiceChatDrawerState(channel.id, VoiceChatDrawerState.OPEN);
r1 = voiceGuildId != null && voiceChannelId != null;
r1 = r1 && voiceMessageId != null;
if (r1) {
(importDefault(7712) /* metro dependency 7712: ChannelRTCActionCreators */).jumpToVoiceChannelMessage(voiceGuildId,
voiceChannelId, voiceMessageId, jumpType);
}
}
} else if (env0_15 != null) {
binding = env0_15;
log = binding.log;
id = channel == null ? value2 : channel.id;
JSON = global.JSON;
value = JSON.stringify(a0);
JSON = global.JSON;
Reflect.apply(log, binding,
['UpdateSelectedChannelListener -> !!!VERY BAD!!! channel.id ' + id + ' (voiceChannelId ' + voiceChannelId + ') is not a voice channel! and yet RouteUtils thinks it is! ' + value + ' ' + JSON.stringify({guildId: guildId,
channelId: channelId, messageId: messageId, jumpType: jumpType, voiceChannelId: voiceChannelId,
voiceGuildId: voiceGuildId, voiceMessageId: voiceMessageId}) + ' ']);
}
} else {
if (voiceGuildId == null) {
if (env0_15 != null) {
binding = env0_15;
verbose = binding.verbose;
JSON = global.JSON;
value12 = JSON.stringify(a0);
JSON = global.JSON;
Reflect.apply(verbose, binding,
['UpdateSelectedChannelListener -> no voice route present in ' + value12 + ' ' + JSON.stringify({guildId: guildId,
channelId: channelId, messageId: messageId, jumpType: jumpType, voiceChannelId: voiceChannelId,
voiceGuildId: voiceGuildId, voiceMessageId: voiceMessageId}) + ' ']);
}
channel2 = ChannelStore.getChannel(SelectedChannelStore.getLastSelectedChannelId());
r8 = channel2 != null && channel2.isGuildVoice();
r8 = !r8 ? channel2 != null && channel2.isGuildStageVoice() : r8;
if (r8) {
defaultImport5 = importDefault(5080) /* metro dependency 5080: ModalActionCreators */;
popWithKey = defaultImport5.popWithKey;
moduleValue5 = require(7709) /* metro dependency 7709: PrivateChannelCallUtils */;
Reflect.apply(popWithKey, defaultImport5, [moduleValue5.getVoiceChannelKey(channel2.id)]);
}
value = importDefault(6593) /* metro dependency 6593: GuildActionCreators */;
value.selectGuild(guildId);
value = importDefault(4796) /* metro dependency 4796: SelectedChannelActionCreators */;
value.selectChannel({guildId: guildId, channelId: channelId, messageId: messageId, jumpType: jumpType,
skipMessageFetch: r1.skipMessageFetch});
return value2;
}
channel = ChannelStore.getChannel(voiceChannelId);
if ((channel == null ? value2 : channel.type) === ChannelTypes.GUILD_VOICE) {
if (env0_15 != null) {
binding = env0_15;
verbose = binding.verbose;
JSON = global.JSON;
value6 = JSON.stringify(a0);
JSON = global.JSON;
Reflect.apply(verbose, binding,
['UpdateSelectedChannelListener -> voice route present! ' + value6 + ' ' + JSON.stringify({guildId: guildId,
channelId: channelId, messageId: messageId, jumpType: jumpType, voiceChannelId: voiceChannelId,
voiceGuildId: voiceGuildId, voiceMessageId: voiceMessageId}) + ' ']);
}
moduleValue = require(7713) /* metro dependency 7713: VoicePanelUtilsNative */;
if (!moduleValue.isVoicePanelEnabled(channel)) {
(importDefault(6593) /* metro dependency 6593: GuildActionCreators */).selectGuild(voiceGuildId);
defaultImport2 = importDefault(4796) /* metro dependency 4796: SelectedChannelActionCreators */;
defaultImport2.selectChannel({guildId: voiceGuildId, channelId: voiceChannelId,
messageId: voiceMessageId,
jumpType: jumpType});
}
moduleValue2 = require(4007) /* metro dependency 4007: NavigationRouteUtilsNative */;
isModalOpen = moduleValue2.isModalOpen;
moduleValue3 = require(7709) /* metro dependency 7709: PrivateChannelCallUtils */;
if (!Reflect.apply(isModalOpen, moduleValue2, [moduleValue3.getVoiceChannelKey(channel.id)])) {
defaultImport3 = importDefault(5080) /* metro dependency 5080: ModalActionCreators */;
popAboveKey = defaultImport3.popAboveKey;
moduleValue4 = require(7709) /* metro dependency 7709: PrivateChannelCallUtils */;
Reflect.apply(popAboveKey, defaultImport3, [moduleValue4.getVoiceChannelKey(channel.id)]);
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun92767);
}
r8 = channel.isGuildVoice() && voiceMessageId != null;
r8 = !r8 ? channel.isGuildStageVoice() : r8;
if (r8) {
setVoiceChatDrawerState(channel.id, VoiceChatDrawerState.OPEN);
r1 = voiceGuildId != null && voiceChannelId != null;
r1 = r1 && voiceMessageId != null;
if (r1) {
(importDefault(7712) /* metro dependency 7712: ChannelRTCActionCreators */).jumpToVoiceChannelMessage(voiceGuildId,
voiceChannelId, voiceMessageId, jumpType);
}
}
} else if ((channel == null ? value2 : channel.type) === ChannelTypes.GUILD_STAGE_VOICE) {
if (env0_15 != null) {
binding = env0_15;
verbose = binding.verbose;
JSON = global.JSON;
value6 = JSON.stringify(a0);
JSON = global.JSON;
Reflect.apply(verbose, binding,
['UpdateSelectedChannelListener -> voice route present! ' + value6 + ' ' + JSON.stringify({guildId: guildId,
channelId: channelId, messageId: messageId, jumpType: jumpType, voiceChannelId: voiceChannelId,
voiceGuildId: voiceGuildId, voiceMessageId: voiceMessageId}) + ' ']);
}
moduleValue = require(7713) /* metro dependency 7713: VoicePanelUtilsNative */;
if (!moduleValue.isVoicePanelEnabled(channel)) {
(importDefault(6593) /* metro dependency 6593: GuildActionCreators */).selectGuild(voiceGuildId);
defaultImport2 = importDefault(4796) /* metro dependency 4796: SelectedChannelActionCreators */;
defaultImport2.selectChannel({guildId: voiceGuildId, channelId: voiceChannelId,
messageId: voiceMessageId,
jumpType: jumpType});
}
moduleValue2 = require(4007) /* metro dependency 4007: NavigationRouteUtilsNative */;
isModalOpen = moduleValue2.isModalOpen;
moduleValue3 = require(7709) /* metro dependency 7709: PrivateChannelCallUtils */;
if (!Reflect.apply(isModalOpen, moduleValue2, [moduleValue3.getVoiceChannelKey(channel.id)])) {
defaultImport3 = importDefault(5080) /* metro dependency 5080: ModalActionCreators */;
popAboveKey = defaultImport3.popAboveKey;
moduleValue4 = require(7709) /* metro dependency 7709: PrivateChannelCallUtils */;
Reflect.apply(popAboveKey, defaultImport3, [moduleValue4.getVoiceChannelKey(channel.id)]);
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun92767);
}
r8 = channel.isGuildVoice() && voiceMessageId != null;
r8 = !r8 ? channel.isGuildStageVoice() : r8;
if (r8) {
setVoiceChatDrawerState(channel.id, VoiceChatDrawerState.OPEN);
r1 = voiceGuildId != null && voiceChannelId != null;
r1 = r1 && voiceMessageId != null;
if (r1) {
(importDefault(7712) /* metro dependency 7712: ChannelRTCActionCreators */).jumpToVoiceChannelMessage(voiceGuildId,
voiceChannelId, voiceMessageId, jumpType);
}
}
} else if (env0_15 != null) {
binding = env0_15;
log = binding.log;
id = channel == null ? value2 : channel.id;
JSON = global.JSON;
value = JSON.stringify(a0);
JSON = global.JSON;
Reflect.apply(log, binding,
['UpdateSelectedChannelListener -> !!!VERY BAD!!! channel.id ' + id + ' (voiceChannelId ' + voiceChannelId + ') is not a voice channel! and yet RouteUtils thinks it is! ' + value + ' ' + JSON.stringify({guildId: guildId,
channelId: channelId, messageId: messageId, jumpType: jumpType, voiceChannelId: voiceChannelId,
voiceGuildId: voiceGuildId, voiceMessageId: voiceMessageId}) + ' ']);
}
}
return value2;
}
function extractParams({match, location}) { // fn#92768, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:4248, offset: 0x02098e13, size: 332 bytes, params: 2, frame: 20
const JumpTypes = (require(4044) /* metro dependency 4044: Client */).JumpTypes;
let value = null;
if (value == match) {
value = environment;
return {'guildId': null, 'channelId': null, 'messageId': null, 'jumpType': null, 'skipMessageFetch': false,
guildId: ME, jumpType: JumpTypes.ANIMATED};
}
const {guildId, channelId, messageId} = match.params;
const jumpType = location.jumpType;
const INSTANT = JumpTypes.INSTANT;
const r2 = jumpType === INSTANT ? JumpTypes.INSTANT : JumpTypes.ANIMATED;
const object2 = {};
const routeUtilsModule = require(3987) /* metro dependency 3987: RouteUtils */;
object2.guildId = routeUtilsModule.isValidGuildId(guildId) ? guildId : ME;
const moduleValue2 = routeUtilsModule;
object2.channelId = moduleValue2.isValidChannelId(channelId) ? channelId : value;
object2.messageId = messageId;
object2.jumpType = r2;
object2.skipMessageFetch = !!location.skipMessageFetch;
return object2;
}
function logRouteChange({pathname}) { // fn#92769, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:4715, offset: 0x02098f5f, size: 55 bytes, params: 2, frame: 13
env0_15.log('Navigated to: ' + pathname);
}
function popVoiceRoute(a0) { // fn#92770, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:4965, offset: 0x02098f96, size: 136 bytes, params: 2, frame: 17
const lastNonVoiceRoute = DefaultRouteStore.lastNonVoiceRoute;
env0_15.log('popVoiceRoute: last non-voice route is ' + lastNonVoiceRoute);
const defaultImport = importDefault(4796) /* metro dependency 4796: SelectedChannelActionCreators */;
const selectChannel = defaultImport.selectChannel;
const object2 = {guildId: a0};
object2.channelId = selectLastVisitedTextChannel(a0);
Reflect.apply(selectChannel, defaultImport, [object2]);
(require(1230) /* metro dependency 1230: router_utils */).transitionTo(lastNonVoiceRoute);
}
function transitionToVoiceRoute(a0, a1) { // fn#92771, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:5199, offset: 0x0209901e, size: 226 bytes, params: 3, frame: 28
const defaultRoute = DefaultRouteStore.defaultRoute;
const matchPathToRoutesBinding = matchPathToRoutes;
const value2 = undefined;
const value3 = matchPathToRoutesBinding(defaultRoute, env0_17);
const voiceChannelId = ((value3 == null ? value2 : value3.params) ?? ({})).voiceChannelId;
env0_15.log('transitionToVoiceRoute(<' + a0 + '>, <' + a1 + '>), current route ' + defaultRoute + ' has voiceChannelId ' + voiceChannelId);
if (voiceChannelId !== a1) {
(require(1230) /* metro dependency 1230: router_utils */).transitionToGuild(a0, a1);
} else {
env0_15.log('transitionToVoiceRoute -> ' + voiceChannelId + ' === ' + a1 + '. staying where we are');
}
return value2;
}
function initializeRouteManagerIfNeeded() { // fn#92772, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:5819, offset: 0x02099100, size: 177 bytes, params: 1, frame: 16
var defaultImport;
if (!env0_16) {
defaultImport = importDefault(12080) /* metro dependency 12080: RouteManager */;
defaultImport.addRouteRewriter(voiceRouteRewriter);
(importDefault(12080) /* metro dependency 12080: RouteManager */).addRouteChangeListener(saveLastRouteListener);
(importDefault(12080) /* metro dependency 12080: RouteManager */).addRouteChangeListener(saveLastNonVoiceRouteListener);
(importDefault(12080) /* metro dependency 12080: RouteManager */).addRouteChangeListener(updateSelectedChannelListener);
(importDefault(12080) /* metro dependency 12080: RouteManager */).addRouteChangeListener(logRouteChange);
(importDefault(12080) /* metro dependency 12080: RouteManager */).initialize();
}
}
function cleanupRouteManager() { // fn#92773, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:6191, offset: 0x020991b1, size: 175 bytes, params: 1, frame: 16
var defaultImport;
if (env0_16) {
defaultImport = importDefault(12080) /* metro dependency 12080: RouteManager */;
defaultImport.removeRouteRewriter(voiceRouteRewriter);
(importDefault(12080) /* metro dependency 12080: RouteManager */).removeRouteChangeListener(saveLastRouteListener);
(importDefault(12080) /* metro dependency 12080: RouteManager */).removeRouteChangeListener(saveLastNonVoiceRouteListener);
(importDefault(12080) /* metro dependency 12080: RouteManager */).removeRouteChangeListener(updateSelectedChannelListener);
(importDefault(12080) /* metro dependency 12080: RouteManager */).removeRouteChangeListener(logRouteChange);
(importDefault(12080) /* metro dependency 12080: RouteManager */).cleanup();
}
}
function _fun92767() { // fn#92767, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12259:3750, offset: 0x02098de6, size: 45 bytes, params: 1, frame: 12
const value = environment.__proto__;
(require(7709) /* metro dependency 7709: PrivateChannelCallUtils */).openGuildVoiceModal(env0_0);
}
@@ -0,0 +1,39 @@
/* Metro module 4571; source: modules/routing/native/useBackPressHandler.tsx; dependencies: [31, 27, 477, 2] */
function _fun38813(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#38813, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4749:6, offset: 0x010cb2b8, size: 162 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importAll(31) /* metro dependency 31 */;
const value = require(27) /* metro dependency 27 */;
const env0_3 = value.BackHandler;
const env0_4 = value.NativeModules;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/routing/native/useBackPressHandler.tsx');
exports.default = useBackPressHandler;
exports.BackPressHandler = {minimize: function() {
var MinimizeApp = NativeModules.MinimizeApp;
MinimizeApp.minimizeApp();
return true;
}};
}
function useBackPressHandler(a0) { // fn#38815, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4749:294, offset: 0x010cb375, size: 91 bytes, params: 2, frame: 15
const value = a1;
const env0_0 = a0;
const r5 = !(value !== undefined) || value;
let env0_2 = undefined;
const binding = env0_2;
env0_2 = binding.useRef(a0);
binding.useLayoutEffect(_fun38816);
binding.useEffect(_fun38817, [r5]);
}
function _fun38817() { // fn#38817, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4749:401, offset: 0x010cb3e5, size: 90 bytes, params: 1, frame: 15
const platformUtilsModule = require(477) /* metro dependency 477: PlatformUtils */;
if (!platformUtilsModule.isIOS()) {
if (env0_1) {
var env0_0 = BackHandler.addEventListener('hardwareBackPress', _fun38818);
return _fun38819;
}
}
}