Files
discord-decomp/sources/modules/gateway/LocalVoiceStateManager.tsx
T
2026-07-28 01:06:53 +03:00

173 lines
11 KiB
TypeScript

/* Metro module 12531; source: modules/gateway/LocalVoiceStateManager.tsx; dependencies: [6, 7, 15, 17, 18, 4266, 4492, 1379, 4259, 4402, 661, 3829, 1391, 12382, 12530, 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 ChannelStore from '../../stores/ChannelStore.tsx'; /* Metro dependency 1379 */
import MediaEngineStore from '../../stores/MediaEngineStore.tsx'; /* Metro dependency 4259 */
import RunningGameStoreNative from '../game_detection/RunningGameStore.native.tsx'; /* Metro dependency 4266 */
import RTCRegionStore from '../../stores/RTCRegionStore.tsx'; /* Metro dependency 4402 */
import ApplicationStreamingStore from '../../stores/ApplicationStreamingStore.tsx'; /* Metro dependency 4492 */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ConstantsModule from '../../Constants.tsx'; /* Metro dependency 661 */
import * as FlagUtilsModule from '../../external/discord_common/js/shared/utils/FlagUtils.tsx'; /* Metro dependency 1391 */
import * as UserSettingsModule from '../user_settings/UserSettings.tsx'; /* Metro dependency 3829 */
import * as IsClipsEnabledModule from '../clips/isClipsEnabled.tsx'; /* Metro dependency 12382 */
function _fun95477(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#95477, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12721:6, offset: 0x0214736f, size: 328 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = ConstantsModule;
const env0_12 = value.ApplicationStreamStates;
const env0_13 = value.ChannelTypes;
const env0_14 = value.VoiceFlags;
value = importDefault(12530) /* metro dependency 12530: StateManager */;
value = _fun95481(value);
(FileImportTrackerModule).fileFinishedImporting('modules/gateway/LocalVoiceStateManager.tsx');
exports.default = value;
function _isNativeReflectConstruct_95478() { // fn#95478, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12721:269, offset: 0x021474b7, 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_95478_isNativeReflectConstruct = function() {
return !!result;
})();
}
function _fun95481(a0) { // fn#95481, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12721:468, offset: 0x02147519, size: 228 bytes, params: 2, frame: 16
const LocalVoiceStateManager2 = LocalVoiceStateManager;
Inherits(LocalVoiceStateManager2, a0);
return CreateClass(LocalVoiceStateManager2, [{key: 'guildId', get: function() {
return this.getState().guildId;
}}, {key: 'channelId', get: function() {
return this.getState().channelId;
}}, {key: 'computeVoiceFlags', value: value_95485}, {key: 'getInitialState', value: function() {
var object = {'guildId': null, 'channelId': null, 'selfMute': null, 'selfDeaf': null, 'selfVideo': null,
'preferredRegion': null, 'preferredRegions': null, 'videoStreamParameters': null, 'flags': 0};
var mediaEngineStoreBinding = MediaEngineStore;
object.selfMute = mediaEngineStoreBinding.isSelfMute();
object.selfDeaf = mediaEngineStoreBinding.isSelfDeaf();
object.selfVideo = mediaEngineStoreBinding.isVideoEnabled();
return object;
}}, {key: 'getNextState', value: value_95487}, {key: 'shouldCommit', value: function() {
return this.socket.isSessionEstablished();
}}, {key: 'didCommit', value: value_95489}]);
function LocalVoiceStateManager(a0) { // fn#95482, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12721:480, offset: 0x021475fd, size: 117 bytes, params: 2, frame: 19
let value = environment.__proto__;
env1_2(this, LocalVoiceStateManager);
const value3 = env1_5(LocalVoiceStateManager);
value = env1_4(this, _isNativeReflectConstruct_95478() ? global.Reflect.construct(value3, [],
env1_5(this).constructor) : value3.apply(this, undefined));
value.socket = a0;
return value;
}
function value_95485() { // fn#95485, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12721:957, offset: 0x0214769a, size: 308 bytes, params: 1, frame: 20
var r1;
var r3;
var r5;
var currentUserActiveStream;
var value6;
var currentUserActiveStream2;
var visibleGame;
const value2 = undefined;
const ClipsAllowVoiceRecording = (UserSettingsModule).ClipsAllowVoiceRecording;
const setting = ClipsAllowVoiceRecording.getSetting();
let setFlag = FlagUtilsModule.setFlag;
const ALLOW_VOICE_RECORDING = VoiceFlags.ALLOW_VOICE_RECORDING;
const value4 = Reflect.apply(setFlag, FlagUtilsModule, [0, ALLOW_VOICE_RECORDING, setting]);
const isClipsEnabled2 = (IsClipsEnabledModule).isClipsEnabled();
if (isClipsEnabled2) {
currentUserActiveStream = ApplicationStreamingStore.getCurrentUserActiveStream();
value6 = (currentUserActiveStream == null ? value2 : currentUserActiveStream.state) === ApplicationStreamStates.ACTIVE;
if (value6) {
r1 = value6;
} else {
currentUserActiveStream2 = ApplicationStreamingStore.getCurrentUserActiveStream();
r1 = (currentUserActiveStream2 == null ? value2 : currentUserActiveStream2.state) === ApplicationStreamStates.PAUSED;
}
r3 = r1;
} else {
r3 = isClipsEnabled2;
}
const isDecoupledClipsEnabled2 = (IsClipsEnabledModule).isDecoupledClipsEnabled();
if (isDecoupledClipsEnabled2) {
visibleGame = RunningGameStoreNative.getVisibleGame();
r5 = (visibleGame == null ? value2 : visibleGame.windowHandle) != null;
} else {
r5 = isDecoupledClipsEnabled2;
}
setFlag = FlagUtilsModule.setFlag;
const CLIPS_ENABLED = VoiceFlags.CLIPS_ENABLED;
r3 = !r3 ? r5 : r3;
return Reflect.apply(setFlag, FlagUtilsModule, [value4, CLIPS_ENABLED, r3]);
}
function value_95487({guildId, channelId}) { // fn#95487, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12721:1661, offset: 0x02147815, size: 145 bytes, params: 2, frame: 12
const object = {guildId: guildId, channelId: channelId};
const mediaEngineStoreBinding = MediaEngineStore;
object.selfMute = mediaEngineStoreBinding.isSelfMute();
object.selfDeaf = mediaEngineStoreBinding.isSelfDeaf();
object.selfVideo = mediaEngineStoreBinding.isVideoEnabled();
const rtcRegionStoreBinding = RTCRegionStore;
object.preferredRegion = rtcRegionStoreBinding.getPreferredRegion();
object.preferredRegions = rtcRegionStoreBinding.getPreferredRegions();
object.videoStreamParameters = mediaEngineStoreBinding.getVideoStreamParameters();
object.flags = this.computeVoiceFlags();
return object;
}
function value_95489({guildId, channelId, selfMute, selfDeaf, selfVideo, preferredRegion, preferredRegions, videoStreamParameters, flags}) { // fn#95489, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12721:2070, offset: 0x021478a6, size: 236 bytes, params: 2, frame: 23
var value3;
var socket;
flags = flags === undefined ? 0 : flags;
if (selfVideo) {
value3 = environment.__proto__;
if (ChannelStore.getChannel(channelId)?.type === ChannelTypes.GUILD_STAGE_VOICE) {
socket = this.socket;
socket.voiceStateUpdate({guildId: guildId, channelId: channelId, selfMute: selfMute, selfDeaf: selfDeaf,
selfVideo: selfVideo, preferredRegion: preferredRegion, preferredRegions: preferredRegions,
videoStreamParameters: videoStreamParameters, flags: flags});
} else {
socket = this.socket;
socket.voiceStateUpdate({guildId: guildId, channelId: channelId, selfMute: selfMute, selfDeaf: selfDeaf,
selfVideo: selfVideo, preferredRegion: preferredRegion, preferredRegions: preferredRegions,
flags: flags});
}
} else {
socket = this.socket;
socket.voiceStateUpdate({guildId: guildId, channelId: channelId, selfMute: selfMute, selfDeaf: selfDeaf,
selfVideo: selfVideo, preferredRegion: preferredRegion, preferredRegions: preferredRegions, flags: flags});
}
}
}
}
global.__d(_fun95477, 12531, [6, 7, 15, 17, 18, 4266, 4492, 1379, 4259, 4402, 661, 3829, 1391, 12382, 12530,
2]) /* metro module 12531, dependencies: [6, 7, 15, 17, 18, 4266, 4492, 1379, 4259, 4402, 661, 3829, 1391, 12382, 12530, 2] */;