2026-07-23 10:11:24 +00:00
// Module ID: 13450
// Function ID: 103499
2026-07-20 16:05:17 +00:00
// Name: _isNativeReflectConstruct
2026-07-23 10:11:24 +00:00
// Dependencies: [15, 17, 18, 6, 7, 1348, 1907, 1838, 4177, 3758, 4202, 3767, 4952, 1849, 4146, 10710, 653, 13451, 13452, 13453, 13454, 7607, 12716, 13455, 13456, 7594, 1212, 13457, 10721, 3994, 6999, 4320, 4974, 675, 4324, 63, 4530, 2]
2026-07-20 16:05:17 +00:00
2026-07-23 10:11:24 +00:00
// Module 13450 (_isNativeReflectConstruct)
import _isNativeReflectConstruct from "_isNativeReflectConstruct" ;
import closure_4 from "registerAsset" ;
import closure_5 from "registerAsset" ;
import closure_6 from "_isNativeReflectConstruct" ;
import _createForOfIteratorHelperLoose from "_createForOfIteratorHelperLoose" ;
import closure_8 from "_isNativeReflectConstruct" ;
2026-07-20 16:05:17 +00:00
import { GUILD_VOCAL_CHANNELS_KEY } from "_isNativeReflectConstruct" ;
2026-07-23 10:11:24 +00:00
import closure_10 from "_createForOfIteratorHelperLoose" ;
2026-07-20 16:05:17 +00:00
import importDefaultResult from "_isNativeReflectConstruct" ;
2026-07-23 10:11:24 +00:00
import closure_12 from "_isNativeReflectConstruct" ;
import importDefaultResult1 from "_isNativeReflectConstruct" ;
import closure_14 from "_isNativeReflectConstruct" ;
import closure_15 from "_isNativeReflectConstruct" ;
import closure_16 from "_isNativeReflectConstruct" ;
2026-07-20 16:05:17 +00:00
import importDefaultResult2 from "_isNativeReflectConstruct" ;
2026-07-23 10:11:24 +00:00
import closure_18 from "_isNativeReflectConstruct" ;
import ME from "ME" ;
import registerAsset from "registerAsset" ;
import registerAsset from "registerAsset" ;
import registerAsset from "registerAsset" ;
import registerAsset from "registerAsset" ;
import registerAsset from "registerAsset" ;
import registerAsset from "registerAsset" ;
import registerAsset from "registerAsset" ;
import registerAsset from "registerAsset" ;
import registerAsset from "registerAsset" ;
import { intl } from "getSystemLocale" ;
import { intl as intl2 } from "getSystemLocale" ;
import { intl as intl3 } from "getSystemLocale" ;
import { intl as intl4 } from "getSystemLocale" ;
import { intl as intl5 } from "getSystemLocale" ;
import { intl as intl6 } from "getSystemLocale" ;
import { intl as intl7 } from "getSystemLocale" ;
import { intl as intl8 } from "getSystemLocale" ;
import { intl as intl9 } from "getSystemLocale" ;
import { intl as intl10 } from "getSystemLocale" ;
import { intl as intl11 } from "getSystemLocale" ;
import tmp17 from "LifecycleManager" ;
2026-07-20 16:05:17 +00:00
2026-07-23 10:11:24 +00:00
let closure_19 ;
let closure_20 ;
const require = arg1 ;
2026-07-20 16:05:17 +00:00
function _isNativeReflectConstruct() {
let closure_0 = ! valueOf . call ( Reflect . construct ( Boolean , [ ] , ( ) = > {
} ) ) ;
function _isNativeReflectConstruct() {
return closure_0 ;
}
const result = _isNativeReflectConstruct ( ) ;
}
2026-07-23 10:11:24 +00:00
function _createForOfIteratorHelperLoose ( iterable ) {
let closure_0 = iterable ;
iterable = "undefined" !== typeof Symbol ;
if ( iterable ) {
2026-07-20 16:05:17 +00:00
const _Symbol = Symbol ;
2026-07-23 10:11:24 +00:00
iterable = iterable [ Symbol . iterator ] ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if ( ! iterable ) {
iterable = iterable [ Symbol . iterator ] ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if ( iterable ) {
const iter = iterable . call ( iterable ) ;
2026-07-20 16:05:17 +00:00
const next = iter . next ;
return next . bind ( iter ) ;
} else {
const _Array = Array ;
2026-07-23 10:11:24 +00:00
let tmp = iterable ;
if ( ! Array . isArray ( iterable ) ) {
2026-07-20 16:05:17 +00:00
let tmp2 ;
2026-07-23 10:11:24 +00:00
if ( iterable ) {
if ( "string" === typeof iterable ) {
tmp2 = _arrayLikeToArray ( iterable , undefined ) ;
2026-07-20 16:05:17 +00:00
} else {
const toString = { } . toString ;
2026-07-23 10:11:24 +00:00
const substr = toString . call ( iterable ) . slice ( 8 , - 1 ) ;
2026-07-20 16:05:17 +00:00
let name = substr ;
if ( tmp3 ) {
2026-07-23 10:11:24 +00:00
name = iterable . constructor . name ;
2026-07-20 16:05:17 +00:00
}
if ( "Map" !== name ) {
if ( "Set" !== name ) {
if ( "Arguments" === name ) {
2026-07-23 10:11:24 +00:00
let arr = _arrayLikeToArray ( iterable , undefined ) ;
2026-07-20 16:05:17 +00:00
} else {
2026-07-23 10:11:24 +00:00
let obj = /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/ ;
2026-07-20 16:05:17 +00:00
}
}
tmp2 = arr ;
}
const _Array2 = Array ;
2026-07-23 10:11:24 +00:00
arr = Array . from ( iterable ) ;
const callResult = toString . call ( iterable ) ;
tmp3 = "Object" === substr && iterable . constructor ;
2026-07-20 16:05:17 +00:00
}
}
tmp = tmp2 ;
if ( ! tmp2 ) {
const _TypeError = TypeError ;
const typeError = new TypeError ( "Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method." ) ;
throw typeError ;
}
}
if ( tmp ) {
2026-07-23 10:11:24 +00:00
closure_0 = tmp ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
let c1 = 0 ;
2026-07-20 16:05:17 +00:00
return ( ) = > {
2026-07-23 10:11:24 +00:00
if ( closure_1 >= length . length ) {
2026-07-20 16:05:17 +00:00
let obj = { done : true } ;
} else {
obj = { done : false } ;
closure_1 = tmp3 + 1 ;
2026-07-23 10:11:24 +00:00
obj . value = length [ + closure_1 ] ;
2026-07-20 16:05:17 +00:00
}
return obj ;
} ;
}
}
function _arrayLikeToArray ( arg0 , arg1 ) {
let length ;
if ( tmp ) {
length = arg0 . length ;
}
const ArrayResult = Array ( length ) ;
for ( let num = 0 ; num < length ; num = num + 1 ) {
ArrayResult [ num ] = arg0 [ num ] ;
}
return ArrayResult ;
}
2026-07-23 10:11:24 +00:00
( { AnalyticEvents : closure_19 , Permissions : closure_20 } = ME ) ;
let items = [ importDefaultResult2 , importDefaultResult1 , importDefaultResult ] ;
2026-07-20 16:05:17 +00:00
let closure_22 = { DISABLED : 0 , [ 0 ] : "DISABLED" , NOT_SHOWING : 1 , [ 1 ] : "NOT_SHOWING" , WAITING_FOR_SERVICE : 2 , [ 2 ] : "WAITING_FOR_SERVICE" , SHOWING : 3 , [ 3 ] : "SHOWING" } ;
2026-07-23 10:11:24 +00:00
let obj = { } ;
obj . useSpeaker = intl . string ( require ( "getSystemLocale" ) . t . CVxXDM ) ;
obj . mute = intl2 . string ( require ( "getSystemLocale" ) . t . w4m945 ) ;
obj . disconnectFromVoice = intl3 . string ( require ( "getSystemLocale" ) . t [ "/lEZpt" ] ) ;
obj . getInvite = intl4 . string ( require ( "getSystemLocale" ) . t . JYzIWe ) ;
obj . switchChannels = intl5 . string ( require ( "getSystemLocale" ) . t . zJvWqU ) ;
obj . openDiscord = intl6 . string ( require ( "getSystemLocale" ) . t [ "G/Ez6p" ] ) ;
obj . inviteLinkCopied = intl7 . string ( require ( "getSystemLocale" ) . t . OhctG7 ) ;
obj . channelSelect = intl8 . string ( require ( "getSystemLocale" ) . t . r2ptsz ) ;
obj . closeWindow = intl9 . string ( require ( "getSystemLocale" ) . t . gaifwY ) ;
obj . searchChannels = intl10 . string ( require ( "getSystemLocale" ) . t . wM7uRI ) ;
obj . noResults = intl11 . string ( require ( "getSystemLocale" ) . t . wk3qsA ) ;
let tmp15 = ( ( ) = > {
2026-07-20 16:05:17 +00:00
class MobileVoiceOverlayManager {
constructor ( ) {
2026-07-23 10:11:24 +00:00
self = this ;
tmp = outer1_6 ( this , self ) ;
2026-07-20 16:05:17 +00:00
this . currentVoiceChannelId = null ;
this . trashedVoiceChannelId = null ;
2026-07-23 10:11:24 +00:00
this . overlayState = outer1_22 . DISABLED ;
2026-07-20 16:05:17 +00:00
this . channelSelectorResults = [ ] ;
this . layoutTrashedSubscription = null ;
this . channelQueryUpdateSubscription = null ;
this . isBatchedBridgeInitialized = false ;
this . handleMobileVoiceOverlayStoreUpdate = ( ) = > {
2026-07-23 10:11:24 +00:00
if ( outer2_18 . getEnabled ( ) ) {
2026-07-20 16:05:17 +00:00
obj . handleOverlayEnable ( ) ;
} else {
const result = obj . unsubscribeFromVoiceStateStoreUpdates ( ) ;
const result1 = obj . unsubscribeFromNativeEvents ( ) ;
2026-07-23 10:11:24 +00:00
obj . overlayState = outer2_22 . DISABLED ;
2026-07-20 16:05:17 +00:00
if ( obj . isOverlayShowing ( ) ) {
2026-07-23 10:11:24 +00:00
if ( null != outer2_1 ( outer2_2 [ 27 ] ) ) {
outer2_1 ( outer2_2 [ 27 ] ) . hideOverlay ( ) ;
const obj2 = outer2_1 ( outer2_2 [ 27 ] ) ;
2026-07-20 16:05:17 +00:00
}
}
}
} ;
this . handleOverlayEnable = ( ) = > {
function handleEnableFail() {
2026-07-23 10:11:24 +00:00
outer3_1 ( outer3_2 [ 28 ] ) . setEnabled ( false ) ;
handleEnableFail . overlayState = outer3_22 . DISABLED ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if ( null != outer2_1 ( outer2_2 [ 27 ] ) ) {
const obj = outer2_1 ( outer2_2 [ 27 ] ) ;
const enableOverlayResult = outer2_1 ( outer2_2 [ 27 ] ) . enableOverlay ( ) ;
outer2_1 ( outer2_2 [ 27 ] ) . enableOverlay ( ) . then ( ( arg0 ) = > {
2026-07-20 16:05:17 +00:00
if ( arg0 ) {
const result = handleEnableFail . subscribeToVoiceStateStoreUpdates ( ) ;
const result1 = handleEnableFail . subscribeToNativeEvents ( ) ;
2026-07-23 10:11:24 +00:00
handleEnableFail . overlayState = outer3_22 . NOT_SHOWING ;
2026-07-20 16:05:17 +00:00
} else {
handleEnableFail ( ) ;
}
} ) . catch ( ( ) = > {
handleEnableFail ( ) ;
} ) ;
2026-07-23 10:11:24 +00:00
const nextPromise = outer2_1 ( outer2_2 [ 27 ] ) . enableOverlay ( ) . then ( ( arg0 ) = > {
2026-07-20 16:05:17 +00:00
if ( arg0 ) {
const result = handleEnableFail . subscribeToVoiceStateStoreUpdates ( ) ;
const result1 = handleEnableFail . subscribeToNativeEvents ( ) ;
2026-07-23 10:11:24 +00:00
handleEnableFail . overlayState = outer3_22 . NOT_SHOWING ;
2026-07-20 16:05:17 +00:00
} else {
handleEnableFail ( ) ;
}
} ) ;
}
} ;
this . subscribeToVoiceStateStoreUpdates = ( ) = > {
if ( ! self . isSubscribedToVoiceStateStoreUpdates ( ) ) {
2026-07-23 10:11:24 +00:00
const item = outer2_21 . forEach ( ( addChangeListener ) = > {
addChangeListener . addChangeListener ( outer1_0 . handleOverlayUIStoreUpdate ) ;
2026-07-20 16:05:17 +00:00
} ) ;
}
} ;
this . unsubscribeFromVoiceStateStoreUpdates = ( ) = > {
if ( self . isSubscribedToVoiceStateStoreUpdates ( ) ) {
2026-07-23 10:11:24 +00:00
const item = outer2_21 . forEach ( ( removeChangeListener ) = > {
removeChangeListener . removeChangeListener ( outer1_0 . handleOverlayUIStoreUpdate ) ;
2026-07-20 16:05:17 +00:00
} ) ;
}
} ;
2026-07-23 10:11:24 +00:00
this . isSubscribedToVoiceStateStoreUpdates = ( ) = > null != outer2_21 . find ( ( _changeCallbacks ) = > _changeCallbacks . _changeCallbacks . has ( outer1_0 . handleOverlayUIStoreUpdate ) ) ;
2026-07-20 16:05:17 +00:00
this . subscribeToNativeEvents = ( ) = > {
if ( obj . isFabric ( ) ) {
2026-07-23 10:11:24 +00:00
self . layoutTrashedSubscription = outer2_1 ( outer2_2 [ 27 ] ) . onLayoutTrashed ( self . handleLayoutTrashed ) ;
const obj2 = outer2_1 ( outer2_2 [ 27 ] ) ;
self . channelQueryUpdateSubscription = outer2_1 ( outer2_2 [ 27 ] ) . onChannelQueryUpdate ( self . handleChannelQueryUpdate ) ;
const obj3 = outer2_1 ( outer2_2 [ 27 ] ) ;
2026-07-20 16:05:17 +00:00
}
} ;
this . unsubscribeFromNativeEvents = ( ) = > {
if ( obj . isFabric ( ) ) {
const layoutTrashedSubscription = self . layoutTrashedSubscription ;
if ( null != layoutTrashedSubscription ) {
layoutTrashedSubscription . remove ( ) ;
}
const channelQueryUpdateSubscription = self . channelQueryUpdateSubscription ;
if ( null != channelQueryUpdateSubscription ) {
channelQueryUpdateSubscription . remove ( ) ;
}
}
} ;
this . handleOverlayUIStoreUpdate = ( ) = > {
2026-07-23 10:11:24 +00:00
if ( self . overlayState !== outer2_22 . DISABLED ) {
2026-07-20 16:05:17 +00:00
const currentVoiceChannelId = self . getVoiceConnectedGuildAndChannel ( ) . currentVoiceChannelId ;
if ( currentVoiceChannelId !== self . currentVoiceChannelId ) {
self . currentVoiceChannelId = currentVoiceChannelId ;
self . trashedVoiceChannelId = null ;
}
if ( null != currentVoiceChannelId ) {
if ( currentVoiceChannelId !== self . trashedVoiceChannelId ) {
const overlayState = self . overlayState ;
2026-07-23 10:11:24 +00:00
if ( outer2_22 . WAITING_FOR_SERVICE !== overlayState ) {
if ( outer2_22 . NOT_SHOWING === overlayState ) {
const result = outer2_1 ( outer2_2 [ 30 ] ) . isForegroundServiceRunning ( ( arg0 ) = > {
2026-07-20 16:05:17 +00:00
if ( arg0 ) {
obj . showOverlay ( ) ;
} else {
2026-07-23 10:11:24 +00:00
obj . overlayState = outer3_22 . NOT_SHOWING ;
2026-07-20 16:05:17 +00:00
}
} ) ;
2026-07-23 10:11:24 +00:00
self . overlayState = outer2_22 . WAITING_FOR_SERVICE ;
} else if ( outer2_22 . SHOWING === overlayState ) {
2026-07-20 16:05:17 +00:00
self . updateOverlayUI ( ) ;
} else {
const overlayState2 = self . overlayState ;
}
}
}
}
if ( self . isOverlayShowing ( ) ) {
self . hideOverlay ( ) ;
}
}
} ;
this . updateOverlayUI = ( ) = > {
let currentGuildId ;
let currentVoiceChannelId ;
2026-07-23 10:11:24 +00:00
const currentUser = outer2_16 . getCurrentUser ( ) ;
2026-07-20 16:05:17 +00:00
let id ;
if ( null != currentUser ) {
id = currentUser . id ;
}
if ( null != id ) {
const voiceConnectedGuildAndChannel = self . getVoiceConnectedGuildAndChannel ( ) ;
( { currentGuildId , currentVoiceChannelId } = voiceConnectedGuildAndChannel ) ;
2026-07-23 10:11:24 +00:00
const channel = outer2_8 . getChannel ( currentVoiceChannelId ) ;
2026-07-20 16:05:17 +00:00
if ( null != currentVoiceChannelId ) {
if ( null != channel ) {
const overlayUser = self . getOverlayUser ( id ) ;
if ( null != overlayUser ) {
const _Object = Object ;
2026-07-23 10:11:24 +00:00
const keys = Object . keys ( outer2_17 . getVoiceStatesForChannel ( currentVoiceChannelId ) ) ;
2026-07-20 16:05:17 +00:00
let tmp5 = overlayUser ;
if ( ! overlayUser . speaking ) {
2026-07-23 10:11:24 +00:00
const tmp4 = outer2_27 ( keys ) ;
2026-07-20 16:05:17 +00:00
let iter = tmp4 ( ) ;
tmp5 = null ;
if ( ! iter . done ) {
while ( true ) {
let tmp6 = self ;
let overlayUser1 = self . getOverlayUser ( iter . value ) ;
if ( null == overlayUser1 ) {
let iter2 = tmp4 ( ) ;
iter = iter2 ;
tmp5 = null ;
if ( iter2 . done ) {
break ;
}
} else {
tmp5 = overlayUser1 ;
if ( overlayUser1 . speaking ) {
break ;
}
}
break ;
}
}
}
if ( null == tmp5 ) {
tmp5 = overlayUser ;
}
const items = [ tmp5 ] ;
if ( tmp5 . userId !== overlayUser . userId ) {
items . push ( overlayUser ) ;
}
let num = 0 ;
if ( 0 < keys . length ) {
while ( true ) {
let tmp10 = keys [ num ] ;
let tmp11 = tmp9 ;
if ( tmp10 !== id ) {
let userId ;
if ( null != tmp5 ) {
userId = tmp5 . userId ;
}
let tmp13 = tmp5 ;
tmp11 = tmp9 ;
if ( tmp10 !== userId ) {
let tmp14 = self ;
let overlayUser2 = self . getOverlayUser ( tmp10 ) ;
let tmp16 = tmp5 ;
tmp11 = overlayUser2 ;
if ( null != overlayUser2 ) {
let arr = items . push ( overlayUser2 ) ;
let tmp18 = tmp5 ;
tmp11 = overlayUser2 ;
if ( items . length >= 3 ) {
break ;
}
}
break ;
}
}
num = num + 1 ;
2026-07-23 10:11:24 +00:00
tmp9 = tmp11 ;
2026-07-20 16:05:17 +00:00
if ( num >= keys . length ) {
break ;
}
}
}
2026-07-23 10:11:24 +00:00
if ( self . overlayState !== outer2_22 . SHOWING ) {
2026-07-20 16:05:17 +00:00
const result = self . refreshChannelSelectorResults ( "" ) ;
}
self . currentVoiceChannelId = currentVoiceChannelId ;
2026-07-23 10:11:24 +00:00
if ( null != outer2_1 ( outer2_2 [ 27 ] ) ) {
let obj = outer2_1 ( outer2_2 [ 27 ] ) ;
obj = { users : items , channelName : MobileVoiceOverlayManager ( outer2_2 [ 31 ] ) . computeChannelName ( channel , outer2_16 , outer2_14 ) } ;
const guild = outer2_10 . getGuild ( currentGuildId ) ;
2026-07-20 16:05:17 +00:00
let name ;
if ( null != guild ) {
name = guild . name ;
}
let str2 = "" ;
if ( null != name ) {
str2 = name ;
}
obj . guildName = str2 ;
obj . guildId = currentGuildId ;
obj . channelId = currentVoiceChannelId ;
obj . extraUsers = keys . length - items . length ;
2026-07-23 10:11:24 +00:00
obj . deafened = outer2_11 . isSelfDeaf ( ) ;
obj . muted = outer2_11 . isSelfMute ( ) ;
obj . connectionQuality = outer2_13 . getQuality ( ) ;
obj . canGenerateInvite = outer2_12 . can ( outer2_20 . CREATE_INSTANT_INVITE , channel ) ;
2026-07-20 16:05:17 +00:00
obj . channelSelectorResults = self . channelSelectorResults ;
obj . setData ( obj ) ;
2026-07-23 10:11:24 +00:00
const obj3 = MobileVoiceOverlayManager ( outer2_2 [ 31 ] ) ;
2026-07-20 16:05:17 +00:00
}
}
}
}
}
} ;
this . getVoiceConnectedGuildAndChannel = ( ) = > {
const obj = { } ;
2026-07-23 10:11:24 +00:00
const guildId = outer2_13 . getGuildId ( ) ;
2026-07-20 16:05:17 +00:00
let tmp2 = null ;
if ( null != guildId ) {
tmp2 = guildId ;
}
obj . currentGuildId = tmp2 ;
2026-07-23 10:11:24 +00:00
const channelId = outer2_13 . getChannelId ( ) ;
2026-07-20 16:05:17 +00:00
let tmp4 = null ;
if ( null != channelId ) {
tmp4 = channelId ;
}
obj . currentVoiceChannelId = tmp4 ;
return obj ;
} ;
this . refreshChannelSelectorResults = ( query ) = > {
let currentGuildId = null ;
if ( 0 === query . length ) {
currentGuildId = self . getVoiceConnectedGuildAndChannel ( ) . currentGuildId ;
}
2026-07-23 10:11:24 +00:00
let obj = outer2_1 ( outer2_2 [ 32 ] ) ;
2026-07-20 16:05:17 +00:00
obj = {
query ,
guildId : currentGuildId ,
limit : 15 ,
fuzzy : true ,
filter ( id ) {
2026-07-23 10:11:24 +00:00
return id . id !== outer1_0 . currentVoiceChannelId && ! id . isGuildStageVoice ( ) ;
2026-07-20 16:05:17 +00:00
} ,
2026-07-23 10:11:24 +00:00
type : outer2_9 ,
2026-07-20 16:05:17 +00:00
allowEmptyQueries : true
} ;
self . channelSelectorResults = obj . queryChannels ( obj ) . map ( ( record ) = > {
record = record . record ;
2026-07-23 10:11:24 +00:00
const obj = { channelId : record.id , guildId : record.guild_id , channelName : MobileVoiceOverlayManager ( outer3_2 [ 31 ] ) . computeChannelName ( record , outer3_16 , outer3_14 ) } ;
const guild = outer3_10 . getGuild ( record . guild_id ) ;
2026-07-20 16:05:17 +00:00
let name ;
if ( null != guild ) {
name = guild . name ;
}
let str = "" ;
let str2 = "" ;
if ( null != name ) {
str2 = name ;
}
obj . guildName = str2 ;
2026-07-23 10:11:24 +00:00
const channel = outer3_8 . getChannel ( record . parent_id ) ;
2026-07-20 16:05:17 +00:00
if ( null != channel ) {
2026-07-23 10:11:24 +00:00
str = MobileVoiceOverlayManager ( outer3_2 [ 31 ] ) . computeChannelName ( channel , outer3_16 , outer3_14 ) ;
const obj3 = MobileVoiceOverlayManager ( outer3_2 [ 31 ] ) ;
2026-07-20 16:05:17 +00:00
}
obj . categoryName = str ;
return obj ;
} ) ;
} ;
this . showOverlay = ( ) = > {
const voiceConnectedGuildAndChannel = self . getVoiceConnectedGuildAndChannel ( ) ;
2026-07-23 10:11:24 +00:00
const channel = outer2_8 . getChannel ( voiceConnectedGuildAndChannel . currentVoiceChannelId ) ;
const rTCConnectionId = outer2_13 . getRTCConnectionId ( ) ;
let obj = outer2_1 ( outer2_2 [ 33 ] ) ;
2026-07-20 16:05:17 +00:00
obj = { type : "voice" , rtc_connection_id : rTCConnectionId } ;
2026-07-23 10:11:24 +00:00
const merged = Object . assign ( MobileVoiceOverlayManager ( outer2_2 [ 34 ] ) . collectChannelAnalyticsMetadata ( channel ) ) ;
const obj3 = MobileVoiceOverlayManager ( outer2_2 [ 34 ] ) ;
const merged1 = Object . assign ( MobileVoiceOverlayManager ( outer2_2 [ 34 ] ) . collectGuildAnalyticsMetadata ( voiceConnectedGuildAndChannel . currentGuildId ) ) ;
obj . track ( outer2_19 . MOBILE_OVERLAY_OPENED , obj ) ;
if ( null != outer2_1 ( outer2_2 [ 27 ] ) ) {
outer2_1 ( outer2_2 [ 27 ] ) . showOverlay ( outer2_23 ) ;
const obj5 = outer2_1 ( outer2_2 [ 27 ] ) ;
2026-07-20 16:05:17 +00:00
}
self . updateOverlayUI ( ) ;
2026-07-23 10:11:24 +00:00
self . overlayState = outer2_22 . SHOWING ;
2026-07-20 16:05:17 +00:00
} ;
this . hideOverlay = ( ) = > {
2026-07-23 10:11:24 +00:00
const rTCConnectionId = outer2_13 . getRTCConnectionId ( ) ;
outer2_1 ( outer2_2 [ 33 ] ) . track ( outer2_19 . MOBILE_OVERLAY_CLOSED , { type : "voice" , rtc_connection_id : rTCConnectionId } ) ;
const obj = outer2_1 ( outer2_2 [ 33 ] ) ;
outer2_1 ( outer2_2 [ 33 ] ) . track ( outer2_19 . MOBILE_OVERLAY_CLOSED , { } ) ;
if ( null != outer2_1 ( outer2_2 [ 27 ] ) ) {
outer2_1 ( outer2_2 [ 27 ] ) . hideOverlay ( ) ;
const obj3 = outer2_1 ( outer2_2 [ 27 ] ) ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
self . overlayState = outer2_22 . NOT_SHOWING ;
2026-07-20 16:05:17 +00:00
} ;
this . isOverlayShowing = ( ) = > {
2026-07-23 10:11:24 +00:00
let tmp = self . overlayState === outer2_22 . SHOWING ;
2026-07-20 16:05:17 +00:00
if ( ! tmp ) {
2026-07-23 10:11:24 +00:00
tmp = self . overlayState === outer2_22 . WAITING_FOR_SERVICE ;
2026-07-20 16:05:17 +00:00
}
return tmp ;
} ;
this . getOverlayUser = ( userId ) = > {
2026-07-23 10:11:24 +00:00
const user = outer2_16 . getUser ( userId ) ;
2026-07-20 16:05:17 +00:00
if ( null == user ) {
return null ;
} else {
2026-07-23 10:11:24 +00:00
const obj = { userId , avatar : user.avatar , speaking : outer2_15.isSpeaking ( userId ) , discriminator : user.discriminator } ;
2026-07-20 16:05:17 +00:00
return obj ;
}
} ;
this . handleLayoutTrashed = ( ) = > {
self . trashedVoiceChannelId = self . currentVoiceChannelId ;
const result = self . handleOverlayUIStoreUpdate ( ) ;
} ;
this . handleChannelQueryUpdate = ( arg0 ) = > {
const result = self . refreshChannelSelectorResults ( arg0 ) ;
const result1 = self . handleOverlayUIStoreUpdate ( ) ;
} ;
return ;
}
}
let obj = {
key : "initialize" ,
value() {
const self = this ;
2026-07-23 10:11:24 +00:00
const obj = MobileVoiceOverlayManager ( outer1_2 [ 29 ] ) ;
2026-07-20 16:05:17 +00:00
if ( ! tmp ) {
2026-07-23 10:11:24 +00:00
const prototype = outer1_25 . prototype ;
const tmp8 = new outer1_25 ( self ) ;
const result = outer1_1 ( outer1_2 [ 35 ] ) . registerCallableModule ( "MobileVoiceOverlayManager" , tmp8 ) ;
2026-07-20 16:05:17 +00:00
self . isBatchedBridgeInitialized = true ;
2026-07-23 10:11:24 +00:00
const obj2 = outer1_1 ( outer1_2 [ 35 ] ) ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if ( outer1_18 . getEnabled ( ) ) {
2026-07-20 16:05:17 +00:00
self . handleOverlayEnable ( ) ;
}
2026-07-23 10:11:24 +00:00
outer1_18 . addChangeListener ( self . handleMobileVoiceOverlayStoreUpdate ) ;
2026-07-20 16:05:17 +00:00
}
} ;
2026-07-23 10:11:24 +00:00
let items = [ obj , ] ;
2026-07-20 16:05:17 +00:00
obj = {
key : "terminate" ,
value() {
2026-07-23 10:11:24 +00:00
outer1_18 . removeChangeListener ( this . handleMobileVoiceOverlayStoreUpdate ) ;
2026-07-20 16:05:17 +00:00
const result = this . unsubscribeFromVoiceStateStoreUpdates ( ) ;
const result1 = this . unsubscribeFromNativeEvents ( ) ;
}
} ;
items [ 1 ] = obj ;
return callback2 ( MobileVoiceOverlayManager , items ) ;
2026-07-23 10:11:24 +00:00
} ) ( ) ;
2026-07-20 16:05:17 +00:00
tmp15 = new tmp15 ( ) ;
2026-07-23 10:11:24 +00:00
let closure_24 = tmp15 ;
let closure_25 = ( ( ) = > {
2026-07-20 16:05:17 +00:00
class NativeCallableInterface {
constructor ( arg0 ) {
2026-07-23 10:11:24 +00:00
tmp = outer1_6 ( this , NativeCallableInterface ) ;
2026-07-20 16:05:17 +00:00
this . manager = arg0 ;
return ;
}
}
let obj = {
key : "onLayoutTrashed" ,
value() {
const manager = this . manager ;
manager . handleLayoutTrashed ( ) ;
}
} ;
const items = [ obj , ] ;
obj = {
key : "onChannelQueryUpdate" ,
value ( arg0 ) {
const manager = this . manager ;
const result = manager . handleChannelQueryUpdate ( arg0 ) ;
}
} ;
items [ 1 ] = obj ;
return callback2 ( NativeCallableInterface , items ) ;
2026-07-23 10:11:24 +00:00
} ) ( ) ;
2026-07-20 16:05:17 +00:00
tmp17 = new tmp17 ( ) ;
2026-07-23 10:11:24 +00:00
let result = require ( "_inherits" ) . fileFinishedImporting ( "modules/voice_overlay/native/MobileVoiceOverlayLifecycleManager.android.tsx" ) ;
2026-07-20 16:05:17 +00:00
export default tmp17 ;