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,228 @@
/* Metro module 9241; source: modules/voice_panel/native/header/VoicePanelAudioOutputActionSheet.tsx; dependencies: [31, 27, 4295, 9232, 1379, 4296, 9240, 661, 33, 4501, 4080, 632, 9242, 9243, 1244, 7988, 7987, 6242, 9228, 9324, 9325, 9326, 3968, 1365, 9436, 6275, 6758, 6821, 2] */
function _fun72247(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#72247, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9426:6, offset: 0x01d3fbb9, size: 371 bytes, params: 8, frame: 20
const env0_0 = require;
const closeActionSheet_72248 = function() {
importDefault(dependencyMap[10]).hideActionSheet(VOICE_PANEL_AUDIO_OUTPUT_ACTION_SHEET_KEY);
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = importAll(31) /* metro dependency 31 */;
const env0_4 = (require(27) /* metro dependency 27 */).ScrollView;
const gameConsoleStore = importDefault(4295) /* metro dependency 4295: GameConsoleStore */;
const audioManagerStoreAndroid = importDefault(9232) /* metro dependency 9232: AudioManagerStoreAndroid */;
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
const sessionsStore = importDefault(4296) /* metro dependency 4296: SessionsStore */;
const env0_9 = (require(9240) /* metro dependency 9240: VoicePanelHeaderConstants */).VOICE_PANEL_AUDIO_OUTPUT_ACTION_SHEET_KEY;
const env0_10 = (require(661) /* metro dependency 661: Constants */).PlatformTypes;
const value2 = require(33) /* metro dependency 33 */;
const env0_11 = value2.jsx;
const env0_12 = value2.jsxs;
const env0_13 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({sectionContainer: {'marginTop': 0,
'marginBottom': 24}});
value = value.memo(VoicePanelAudioOutputActionSheet);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/voice_panel/native/header/VoicePanelAudioOutputActionSheet.tsx');
exports.default = value;
}
function VoicePanelAudioPhoneOutputSection() { // fn#72249, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9426:399, offset: 0x01d3fd56, size: 324 bytes, params: 1, frame: 23
var r0;
var VoicePanelFormSection;
var intl;
const styles = useStyles();
const {activeDevice,
availableDevices} = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStoresObject([AudioManagerStoreAndroid],
function() {
var object = {};
object.activeDevice = AudioManagerStoreAndroid.getActiveAudioDevice();
object.availableDevices = AudioManagerStoreAndroid.getAudioDevices();
return object;
});
const env0_1 = env0_3.useCallback(function(a0) {
require(dependencyMap[12]).setAudioOutputDevice(a0);
closeActionSheet_72248();
}, []);
if (availableDevices.length > 0) {
VoicePanelFormSection = (require(9243) /* metro dependency 9243: FormComponents */).VoicePanelFormSection;
var voicePanelFormSectionProps = {style: styles.sectionContainer};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
voicePanelFormSectionProps.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.CxyS15);
voicePanelFormSectionProps.hasIcons = true;
r0 = <VoicePanelFormSection {...voicePanelFormSectionProps}>{((TableRadioGroup) => <TableRadioGroup defaultValue={activeDevice.deviceId} onChange={onChange_72252} hasIcons>{availableDevices.map(_fun72254)}</TableRadioGroup>)((require(7988) /* metro dependency 7988: TableRadioGroupNative */).TableRadioGroup)}</VoicePanelFormSection>;
} else {
r0 = null;
}
return r0;
}
function VoicePanelAudioConsoleSection({channel}) { // fn#72255, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9426:1275, offset: 0x01d4000c, size: 540 bytes, params: 2, frame: 25
var r0;
var VoicePanelFormSection;
var intl;
var TableRadioGroup;
var object3;
var value;
const styles = useStyles();
const value2 = (importDefault(9324) /* metro dependency 9324: useGameConsoleAccounts */)();
const env0_2 = (importDefault(9325) /* metro dependency 9325: useVoiceStateForRemoteSession */)();
const useStateFromStoresModule = require(632) /* metro dependency 632: useStateFromStores */;
const useStateFromStores = useStateFromStoresModule.useStateFromStores;
let object = [GameConsoleStore];
const awaitingRemoteSessionInfo = Reflect.apply(useStateFromStores, useStateFromStoresModule, [object, function() {
return GameConsoleStore.getAwaitingRemoteSessionInfo();
}]);
const env0_3 = awaitingRemoteSessionInfo;
const value3 = env0_3.useMemo(_fun72258, [awaitingRemoteSessionInfo,
useStateFromStoresModule.useStateFromStores([SessionsStore], _fun72257)]);
const value4 = env0_3.useCallback(_fun72259, [value2, channel]);
const dismissibleContentUnsafeUtilsModule = require(3968) /* metro dependency 3968: DismissibleContentUnsafeUtils */;
const UNSAFE_useIsDismissibleContentDismissed = dismissibleContentUnsafeUtilsModule.UNSAFE_useIsDismissibleContentDismissed;
const DismissibleContent = (require(1365) /* metro dependency 1365: dismissible_content */).DismissibleContent;
const DONUT_MOBILE_NUX = DismissibleContent.DONUT_MOBILE_NUX;
env0_3.useEffect(_fun72261, [value2, !Reflect.apply(UNSAFE_useIsDismissibleContentDismissed,
dismissibleContentUnsafeUtilsModule, [DONUT_MOBILE_NUX])]);
if (value2.length > 0) {
VoicePanelFormSection = (require(9243) /* metro dependency 9243: FormComponents */).VoicePanelFormSection;
object = {};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.q22XnQ);
object.style = styles.sectionContainer;
object.hasIcons = true;
TableRadioGroup = (require(7988) /* metro dependency 7988: TableRadioGroupNative */).TableRadioGroup;
object3 = {defaultValue: value3, onChange: value4, hasIcons: true};
value = value2.map(_fun72262);
value = <VoicePanelFormSection {...object}><TableRadioGroup {...object3}>{value.filter(function(a0) {
return (0, global.Boolean)(a0);
})}</TableRadioGroup></VoicePanelFormSection>;
r0 = value;
} else {
r0 = null;
}
return r0;
}
function VoicePanelAudioOutputActionSheet({channelId, isConnectedToVoiceChannel}) { // fn#72264, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9426:2748, offset: 0x01d40506, size: 321 bytes, params: 2, frame: 26
var r0;
var BottomSheet;
var BottomSheetTitleHeader;
var intl;
const channel = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([ChannelStore],
function() {
return ChannelStore.getChannel(channelId);
});
if (channel == null) {
r0 = null;
} else {
BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
BottomSheetTitleHeader = (require(6758) /* metro dependency 6758: BottomSheetTitleHeaderNative */).BottomSheetTitleHeader;
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r0 = <BottomSheet header={<BottomSheetTitleHeader title={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.iwxPM3)} />}><ScrollView>{((Component) => <Component>{isConnectedToVoiceChannel && <VoicePanelAudioPhoneOutputSection />}<VoicePanelAudioConsoleSection channel={channel} /></Component>)(importDefault(6821) /* metro dependency 6821: NativeView */)}</ScrollView></BottomSheet>;
}
return r0;
}
function VoicePanelAudioPhoneOutputSectionOnChange(a0) { // fn#72252, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9426:902, owner: VoicePanelAudioPhoneOutputSection.onChange, offset: 0x01d3fef8, size: 55 bytes, params: 2, frame: 12
const env0_0 = a0;
const value2 = availableDevices.find(_fun72253);
if (value2 != null) {
env0_1(value2);
}
}
function _fun72254(a0) { // fn#72254, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9426:983, offset: 0x01d3ff45, size: 199 bytes, params: 2, frame: 23
const value = environment.__proto__;
const value2 = undefined;
const TableRadioRow = (require(7987) /* metro dependency 7987: TableRadioRowNative */).TableRadioRow;
const tableRadioRowProps = {value: a0.deviceId};
const TableRowIcon = (require(6242) /* metro dependency 6242: TableRowIconNative */).TableRowIcon;
tableRadioRowProps.icon = <TableRowIcon source={(require(9228) /* metro dependency 9228: CallsUtils */).audioDeviceToIconMap[a0.simpleDeviceType]} />;
tableRadioRowProps.label = (require(9228) /* metro dependency 9228: CallsUtils */).getAudioDeviceToDisplayText(a0);
let deviceName = a0.deviceName;
deviceName = (deviceName == null ? value2 : deviceName.length) > 0 ? a0.deviceName : value2;
tableRadioRowProps.subLabel = deviceName;
return <TableRadioRow {...tableRadioRowProps} key={a0.deviceId} />;
}
function _fun72257() { // fn#72257, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9426:1472, offset: 0x01d4023b, size: 62 bytes, params: 1, frame: 14
const value = environment.__proto__;
return SessionsStore.getSessionById(env0_2?.sessionId ?? '');
}
function _fun72258() { // fn#72258, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9426:1566, offset: 0x01d40279, size: 88 bytes, params: 1, frame: 6
const awaitingRemoteSessionInfoBinding = awaitingRemoteSessionInfo;
const value2 = undefined;
return (awaitingRemoteSessionInfoBinding == null ? value2 : awaitingRemoteSessionInfo.type) ?? (sessionById == null || sessionById.clientInfo == null ? value2 : sessionById.clientInfo.os) ?? '';
}
function _fun72259(a0) { // fn#72259, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9426:1707, offset: 0x01d402d1, size: 108 bytes, params: 2, frame: 15
var environment;
var value3;
var moduleValue;
const env0_0 = a0;
const value2 = env0_1.find(_fun72260);
if (value2 != null) {
value3 = environment.__proto__;
moduleValue = require(9326) /* metro dependency 9326: useOnConnectToConsole */;
moduleValue.onConnectToConsole(channel, value2);
closeActionSheet_72248();
} else {
value = environment.__proto__;
closeActionSheet_72248();
}
}
function _fun72261() { // fn#72261, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9426:1949, offset: 0x01d4033d, size: 92 bytes, params: 1, frame: 14
var value;
if (result && env0_1.length > 0) {
value = environment.__proto__;
value = require(3968) /* metro dependency 3968: DismissibleContentUnsafeUtils */;
value.UNSAFE_markDismissibleContentAsDismissed((require(1365) /* metro dependency 1365: dismissible_content */).DismissibleContent.DONUT_MOBILE_NUX);
}
}
function _fun72262(a0) { // fn#72262, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9426:2293, offset: 0x01d40399, size: 345 bytes, params: 2, frame: 23
var r6;
var r0;
var object2;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var TableRadioRow;
var TableRowIcon;
let type = a0.type;
let value = environment.__proto__;
const XBOX = PlatformTypes.XBOX;
if (XBOX === type) {
object2 = {};
object2.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.Nfvo72);
object2.variant = 'xbox';
r6 = object2;
} else if (PlatformTypes.PLAYSTATION !== type) {
r6 = null;
} else {
object2 = {};
object2.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.fFl4jo);
object2.variant = 'playstation';
r6 = object2;
}
const value3 = r6 != null;
if (value3) {
TableRadioRow = (require(7987) /* metro dependency 7987: TableRadioRowNative */).TableRadioRow;
object2 = {};
TableRowIcon = (require(6242) /* metro dependency 6242: TableRowIconNative */).TableRowIcon;
value = importDefault(9436) /* metro dependency 9436: getConsoleIcon */;
type = a0.type;
object2.icon = <TableRowIcon source={value(type)} variant={r6.variant} />;
object2.label = r6.label;
type = a0.type;
object2.value = type;
type = a0.type;
value = <TableRadioRow {...object2} key={type} />;
r0 = value;
} else {
r0 = value3;
}
return r0;
}
function _fun72253({deviceId}) { // fn#72253, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9426:920, offset: 0x01d3ff2f, size: 22 bytes, params: 2, frame: 2
return deviceId === env0_0;
}
@@ -0,0 +1,95 @@
/* Metro module 15477; source: modules/voice_panel/native/header/VoicePanelConsoleFacepile.tsx; dependencies: [31, 661, 33, 4501, 697, 9436, 1244, 9324, 1360, 6821, 1305, 2] */
function _fun118461(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#118461, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15674:6, offset: 0x024dc278, size: 313 bytes, params: 8, frame: 23
var object3;
const env0_0 = require;
const closure = getConsoleInfo;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
const env0_4 = (require(661) /* metro dependency 661: Constants */).PlatformTypes;
const env0_5 = (require(33) /* metro dependency 33 */).jsx;
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = createStylesModule.createStyles;
object3 = {};
const object4 = {'borderRadius': null, 'padding': 8, 'margin': -3, 'borderWidth': 3};
object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
const BACKGROUND_BASE_LOW = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOW;
object4.borderColor = BACKGROUND_BASE_LOW;
object3.consoleIconContainer = object4;
const WHITE = (importDefault(697) /* metro dependency 697: native */).colors.WHITE;
object3.consoleIcon = {tintColor: WHITE};
const env0_6 = Reflect.apply(createStyles, createStylesModule, [object3]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/voice_panel/native/header/VoicePanelConsoleFacepile.tsx');
exports.default = VoicePanelConsoleFacepile;
exports.getConsoleInfo = closure;
}
function getConsoleInfo(a0) { // fn#118462, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15674:352, offset: 0x024dc3b1, size: 398 bytes, params: 2, frame: 18
var object2;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const type = a0.type;
const XBOX = PlatformTypes.XBOX;
if (XBOX === type) {
object2 = {};
object2.icon = (importDefault(9436) /* metro dependency 9436: getConsoleIcon */)(a0.type);
object2.color = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.PLATFORM_XBOX;
object2.connectLabel = intl.string(t.QN7HXV);
object2.connectSublabel = intl.string(t['M/Ld86']);
return object2;
}
const PLAYSTATION = PlatformTypes.PLAYSTATION;
if (PLAYSTATION === type) {
object2 = {};
object2.icon = (importDefault(9436) /* metro dependency 9436: getConsoleIcon */)(a0.type);
object2.color = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.PLATFORM_PLAYSTATION;
object2.connectLabel = intl.string(t['3qLlTS']);
object2.connectSublabel = intl.string(t['/uR9x1']);
return object2;
}
return null;
}
function VoicePanelConsoleFacepile() { // fn#118463, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15674:928, offset: 0x024dc53f, size: 160 bytes, params: 1, frame: 18
const styles = useStyles();
const value2 = (importDefault(9324) /* metro dependency 9324: useGameConsoleAccounts */)();
const binding = env0_3;
const value3 = binding.useMemo(_fun118464, [value2]);
const value4 = binding.useCallback(_fun118465, [styles]);
const SummarizedIconRow = (require(1305) /* metro dependency 1305: native */).SummarizedIconRow;
return (
<SummarizedIconRow
items={value3}
renderItem={value4}
offsetAmount={-3}
/>
);
}
function _fun118464() { // fn#118464, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15674:1000, offset: 0x024dc5df, size: 64 bytes, params: 1, frame: 13
const binding = env0_1;
const value2 = binding.map(getConsoleInfo);
return value2.filter((require(1360) /* metro dependency 1360: GlobalUtils */).isNotNullish);
}
function _fun118465(a0) { // fn#118465, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15674:1078, offset: 0x024dc61f, size: 164 bytes, params: 2, frame: 20
const NativeView = importDefault(6821) /* metro dependency 6821: NativeView */;
const stylesBinding = styles;
const items2 = [stylesBinding.consoleIconContainer];
items2[1] = {backgroundColor: a0.color};
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
const consoleIcon = stylesBinding.consoleIcon;
const Icon2 = (require(1305) /* metro dependency 1305: native */).Icon;
const Sizes = Icon2.Sizes;
const MEDIUM = Sizes.MEDIUM;
return (
<NativeView style={items2}>
<Icon
style={consoleIcon}
size={MEDIUM}
source={a0.icon}
/>
</NativeView>
);
}
@@ -0,0 +1,644 @@
/* Metro module 15452; source: modules/voice_panel/native/header/VoicePanelHeader.tsx; dependencies: [57, 31, 27, 4606, 4107, 10753, 1226, 1379, 4259, 3793, 4607, 1878, 11795, 11798, 11793, 4299, 482, 33, 4501, 697, 4017, 4577, 8141, 4563, 6821, 11794, 10860, 566, 10755, 15388, 1244, 10764, 8842, 10765, 4559, 15390, 15453, 4805, 3860, 11799, 4504, 15454, 15413, 15455, 5286, 15456, 8899, 9293, 9256, 3868, 14955, 15457, 8709, 15459, 9322, 677, 15470, 10858, 15480, 15481, 2] */
function _fun118266(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#118266, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:6, offset: 0x024d38af, size: 1186 bytes, params: 8, frame: 28
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
let value = importAll(31) /* metro dependency 31 */;
const value2 = require(27) /* metro dependency 27 */;
const StyleSheet = value2.StyleSheet;
value2.Platform;
const channelRTCStore = importDefault(4606) /* metro dependency 4606: ChannelRTCStore */;
const experimentStore = importDefault(4107) /* metro dependency 4107: ExperimentStore */;
const stageMusicStore = importDefault(10753) /* metro dependency 10753: StageMusicStore */;
const authenticationStore = importDefault(1226) /* metro dependency 1226: AuthenticationStore */;
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
const mediaEngineStore = importDefault(4259) /* metro dependency 4259: MediaEngineStore */;
const relationshipStore = importDefault(3793) /* metro dependency 3793: RelationshipStore */;
const speakingStore = importDefault(4607) /* metro dependency 4607: SpeakingStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const voicePanelConstantsModule = require(11795) /* metro dependency 11795: VoicePanelConstants */;
const MODE_CHANGE_PHYSICS = voicePanelConstantsModule.MODE_CHANGE_PHYSICS;
const env0_16 = voicePanelConstantsModule.UI_SHOW_HIDE_PHYSICS;
const env0_17 = voicePanelConstantsModule.VoicePanelModes;
const env0_18 = voicePanelConstantsModule.DRAWER_SPRING_PHYSICS_GESTURE_ACTIVE;
const EDGE_GUTTER = (require(11798) /* metro dependency 11798: VoicePanelCardConstants */).EDGE_GUTTER;
const env0_20 = (require(11793) /* metro dependency 11793: VoicePanelControlsConstants */).VoicePanelControlsModes;
const env0_21 = (require(4299) /* metro dependency 4299: CallConstants */).ParticipantTypes;
const env0_22 = (require(482) /* metro dependency 482: Constants */).ThemeTypes;
const value4 = require(33) /* metro dependency 33 */;
const env0_23 = value4.jsx;
const env0_24 = value4.jsxs;
object2 = {duration: 300};
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = createStylesModule.createStyles;
object2 = {};
object2.headerWrapper = {'zIndex': 1, 'position': 'absolute', 'top': 0, 'left': 0, 'width': '100%',
'paddingBottom': null, 'overflow': 'hidden', paddingBottom: EDGE_GUTTER};
const object4 = {};
copyDataProperties(object4, StyleSheet.absoluteFillObject, undefined);
object4['opacity'] = 0.7;
object2.blurStyles = object4;
object2.leftWrapper = {'position': 'relative', 'justifyContent': 'flex-start', 'flexDirection': 'row',
'alignItems': 'center', 'flexShrink': 1, 'gap': 12};
object2.rightWrapper = {'flexDirection': 'row', 'alignItems': 'center', 'gap': 12, 'paddingLeft': 12};
object2.headerOuter = {'flexDirection': 'row', 'alignItems': 'center'};
object2.headerInner = {'flexDirection': 'row', 'alignItems': 'center', 'flexShrink': 1, 'flexGrow': 1};
object2.headerContentWrapper = {position: 'relative'};
object2.stroke = {height: StyleSheet.hairlineWidth, opacity: 0.2};
object2.strokeAlt = {height: StyleSheet.hairlineWidth, opacity: 0.8};
object2.strokeContainer = {'position': 'absolute', 'left': 0, 'right': 0, 'bottom': 0,
height: StyleSheet.hairlineWidth};
const object5 = {'width': 12, 'height': 12, 'borderRadius': null, 'padding': 2};
object5.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
object2.focusedSpeakingDotWrapper = object5;
const object6 = {'width': 8, 'height': 8};
object6.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
object2.focusedSpeakingDot = object6;
object2.shieldIconMargin = {marginLeft: -8};
const env0_26 = Reflect.apply(createStyles, createStylesModule, [object2]);
object2 = {DOWN: 0};
object2[0] = 'DOWN';
object2.LEFT = 1;
object2[1] = 'LEFT';
object2 = {};
copyDataProperties(object2, MODE_CHANGE_PHYSICS, undefined);
object2['overshootClamping'] = true;
object2 = {code: 'function VoicePanelHeaderTsx1(){const{isHeaderHidden,focused,scrollPosition}=this.__closure;return!isHeaderHidden.get()&&(focused.get()!=null||scrollPosition.get()>0);}'};
object2 = {code: 'function VoicePanelHeaderTsx2(){const{withSpring,showHeaderBlur}=this.__closure;return{blurAmount:withSpring(showHeaderBlur.get()?0.3:0)};}'};
object2 = {code: 'function VoicePanelHeaderTsx3(){const{withSpring,showHeaderBlur,HEADER_CHANGE_PHYSICS}=this.__closure;return{opacity:withSpring(showHeaderBlur.get()?1:0,HEADER_CHANGE_PHYSICS)};}'};
const env0_32 = value.memo(_fun118270);
object2 = {code: 'function VoicePanelHeaderTsx4(){const{focused,controlsSpecs,VoicePanelControlsModes,speaking}=this.__closure;return focused.get()!=null&&controlsSpecs.get().mode!==VoicePanelControlsModes.HIDDEN&&speaking.get();}'};
object2 = {code: 'function VoicePanelHeaderTsx5(){const{showSpeakingIndicator}=this.__closure;return{opacity:showSpeakingIndicator.get()?1:0};}'};
const env0_35 = value.memo(_fun118274);
object2 = {code: 'function VoicePanelHeaderTsx6(){const{focused}=this.__closure;var _focused$get;return(_focused$get=focused.get())===null||_focused$get===void 0?void 0:_focused$get.id;}'};
object2 = {code: 'function VoicePanelHeaderTsx7(manualId,previousManualId){const{runOnJS,handleFocusChange}=this.__closure;if(manualId!==previousManualId){runOnJS(handleFocusChange)(manualId);}}'};
object2 = {code: 'function VoicePanelHeaderTsx8(){const{calculateVoicePanelHeaderSpecs,safeArea,edgeGutter,mode,VoicePanelModes,gestureState,connected,EDGE_GUTTER}=this.__closure;const specs=calculateVoicePanelHeaderSpecs(safeArea.get(),edgeGutter);if(mode.get()===VoicePanelModes.PIP||gestureState.get().active&&!gestureState.get().requiresPop&&connected.get()||mode.get()===VoicePanelModes.DISMISSED&&connected.get()){return-(specs.height+EDGE_GUTTER);}return 0;}'};
object2 = {code: 'function VoicePanelHeaderTsx9(){const{calculateVoicePanelHeaderSpecs,safeArea,edgeGutter,mode,VoicePanelModes,connected,EDGE_GUTTER,withTiming,OPACITY_TIMING,withSpring,yOffset,wrapperOffset,DRAWER_SPRING_PHYSICS_GESTURE_ACTIVE,UI_SHOW_HIDE_PHYSICS}=this.__closure;const specs=calculateVoicePanelHeaderSpecs(safeArea.get(),edgeGutter);const pipMode=mode.get()===VoicePanelModes.PIP;const height=!connected.get()?specs.height-specs.paddingTop+EDGE_GUTTER:specs.height;const paddingTop=!connected.get()?EDGE_GUTTER:specs.paddingTop;return{...specs,paddingTop:paddingTop,borderTopLeftRadius:!connected.get()?24:0,borderTopRightRadius:!connected.get()?24:0,height:height,opacity:withTiming(pipMode||mode.get()===VoicePanelModes.DISMISSED?0:1,OPACITY_TIMING),transform:[{translateY:withSpring(yOffset.get(),!connected.get()&&wrapperOffset.get().gestureActive?DRAWER_SPRING_PHYSICS_GESTURE_ACTIVE:UI_SHOW_HIDE_PHYSICS)}]};}'};
object2 = {code: 'function VoicePanelHeaderTsx10(){const{controlsSpecs,VoicePanelControlsModes,isScreenReaderEnabled}=this.__closure;return controlsSpecs.get().mode===VoicePanelControlsModes.HIDDEN&&!isScreenReaderEnabled;}'};
object2 = {code: 'function VoicePanelHeaderTsx11(){const{calculateVoicePanelHeaderSpecs,safeArea,edgeGutter,withTiming,isHeaderHidden,OPACITY_TIMING,withSpring,MODE_CHANGE_PHYSICS}=this.__closure;const{height:height}=calculateVoicePanelHeaderSpecs(safeArea.get(),edgeGutter);return{opacity:withTiming(isHeaderHidden.get()?0:1,OPACITY_TIMING),transform:[{translateY:withSpring(isHeaderHidden.get()?-height:0,MODE_CHANGE_PHYSICS)}]};}'};
object2 = {code: "function VoicePanelHeaderTsx12(){const{isHeaderHidden}=this.__closure;return{pointerEvents:isHeaderHidden.get()?'none':'box-none',importantForAccessibility:isHeaderHidden.get()?'no-hide-descendants':'auto',accessibilityElementsHidden:isHeaderHidden.get()};}"};
value = value.memo(VoicePanelHeader);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/voice_panel/native/header/VoicePanelHeader.tsx');
exports.default = value;
}
function MusicMuteButton_118267({channelId}) { // fn#118267, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:4219, offset: 0x024d3d51, size: 310 bytes, params: 2, frame: 22
var r0;
var defaultImport;
var intl;
var string;
var t;
const speaker = importDefault(dependencyMap[26])(channelId)?.speaker;
const value5 = require(dependencyMap[27]).useStateFromStores([StageMusicStore], function() {
return StageMusicStore.isMuted();
});
const moduleValue2 = require(dependencyMap[28]);
const useShowStageMusicMuteButton = moduleValue2.useShowStageMusicMuteButton;
if (Reflect.apply(useShowStageMusicMuteButton, moduleValue2, [channelId])) {
if (speaker) {
defaultImport = importDefault(dependencyMap[29]);
intl = require(dependencyMap[30]).intl;
string = intl.string;
t = require(dependencyMap[30]).t;
r0 = ((Component) => <Component accessibilityLabel={value5 ? Reflect.apply(string, intl,
[t.ScHlfl]) : Reflect.apply(string, intl,
[t.zqxfrf])} icon={importDefault(value5 ? dependencyMap[31] : dependencyMap[32])} onPress={onPress_118269} />)(defaultImport);
} else {
r0 = null;
}
} else {
r0 = null;
}
return r0;
}
function _fun118270({isHeaderHidden, scrollPosition, focused}) { // fn#118270, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:2078, offset: 0x024d3eca, size: 563 bytes, params: 2, frame: 25
const styles = useStyles();
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const useDerivedValue = reanimatedRexportModule.useDerivedValue;
let closure = l_118271;
closure.__closure = {isHeaderHidden: isHeaderHidden, focused: focused, scrollPosition: scrollPosition};
closure.__workletHash = 8127245112238;
closure.__initData = env0_29;
const value2 = Reflect.apply(useDerivedValue, reanimatedRexportModule, [closure]);
const moduleValue2 = reanimatedRexportModule;
const useAnimatedProps = moduleValue2.useAnimatedProps;
closure = c_118272;
closure.__closure = {withSpring: (require(4577) /* metro dependency 4577: spring */).withSpring,
showHeaderBlur: value2};
closure.__workletHash = 10074943135400;
closure.__initData = env0_30;
const value3 = Reflect.apply(useAnimatedProps, moduleValue2, [closure]);
const moduleValue3 = reanimatedRexportModule;
const useAnimatedStyle = moduleValue3.useAnimatedStyle;
closure = u_118273;
closure.__closure = {withSpring: (require(4577) /* metro dependency 4577: spring */).withSpring,
showHeaderBlur: value2, HEADER_CHANGE_PHYSICS: env0_28};
closure.__workletHash = 2825977044105;
closure.__initData = env0_31;
return ((Component) => <Component style={[StyleSheet.absoluteFill, Reflect.apply(useAnimatedStyle, moduleValue3,
[closure])]} pointerEvents="none">{((Component) => <Component style={styles.blurStyles} blurStyle="ultra-thin" blurTheme="dark" animatedProps={value3} />)(importDefault(4563) /* metro dependency 4563: VisualEffectViewAnimated */)}{((Component) => <Component style={styles.strokeContainer}>{((Component) => <Component style={styles.stroke} />)(importDefault(6821) /* metro dependency 6821: NativeView */)}{((Component) => <Component style={styles.strokeAlt} />)(importDefault(6821) /* metro dependency 6821: NativeView */)}</Component>)(importDefault(6821) /* metro dependency 6821: NativeView */)}</Component>)(importDefault(8141) /* metro dependency 8141: ReanimatedNativeView */);
}
function _fun118274() { // fn#118274, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:3405, offset: 0x024d41d4, size: 412 bytes, params: 1, frame: 24
const id = AuthenticationStore.getId();
const binding = env0_4;
const {focused,
controlsSpecs} = binding.useContext(importDefault(11794) /* metro dependency 11794: VoicePanelStateContext */);
const value4 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).useSharedValue(SpeakingStore.isSpeaking(id));
binding.useLayoutEffect(function() {
var closure = _fun118276;
var env0_0 = closure;
closure();
SpeakingStore.addReactChangeListener(closure);
return _fun118277;
}, [id, value4]);
const styles = useStyles();
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const useDerivedValue = reanimatedRexportModule.useDerivedValue;
let closure = u_118278;
closure.__closure = {focused: focused, controlsSpecs: controlsSpecs,
VoicePanelControlsModes: VoicePanelControlsModes, speaking: value4};
closure.__workletHash = 5466722752449;
closure.__initData = env0_33;
const value5 = Reflect.apply(useDerivedValue, reanimatedRexportModule, [closure]);
const moduleValue3 = reanimatedRexportModule;
const useAnimatedStyle = moduleValue3.useAnimatedStyle;
closure = __118279;
closure.__closure = {showSpeakingIndicator: value5};
closure.__workletHash = 16177124708898;
closure.__initData = env0_34;
return ((Component) => <Component style={[styles.focusedSpeakingDotWrapper, Reflect.apply(useAnimatedStyle,
moduleValue3,
[closure])]} pointerEvents="none">{((Component) => <Component style={styles.focusedSpeakingDot} />)(importDefault(8141) /* metro dependency 8141: ReanimatedNativeView */)}</Component>)(importDefault(8141) /* metro dependency 8141: ReanimatedNativeView */);
}
function VoicePanelHeader({wrapperOffset, gestureState, layout}) { // fn#118280, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:7284, offset: 0x024d4454, size: 2964 bytes, params: 2, frame: 55
var object2;
var r42;
var r26;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var string;
var t;
var VoicePanelIconButton;
var object15;
const styles = useStyles();
let binding = env0_4;
const value3 = binding.useContext(importDefault(11794) /* metro dependency 11794: VoicePanelStateContext */);
const guildId = value3.guildId;
const channelId = value3.channelId;
const channelType = value3.channelType;
const focused = value3.focused;
const env0_3 = focused;
const controlsSpecs = value3.controlsSpecs;
var env0_4 = controlsSpecs;
const mode = value3.mode;
const safeArea = value3.safeArea;
const connected = value3.connected;
const scrollPosition = value3.scrollPosition;
const value4 = (require(4559) /* metro dependency 4559: useIsScreenReaderEnabledNative */).useIsScreenReaderEnabled();
const value5 = (importDefault(15390) /* metro dependency 15390: useIsConnectedToVoiceChannel */)(channelId);
const defaultImport = importDefault(15453) /* metro dependency 15453: MobileGoLiveEntrypointExperiment */;
const useConfig = defaultImport.useConfig;
const treatment = Reflect.apply(useConfig, defaultImport, [{location: 'VoicePanelHeader'}]).treatment;
const value6 = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore, RelationshipStore,
ChannelStore, ExperimentStore], _fun118281, [channelId]);
let useState = binding.useState;
const value7 = Reflect.apply(useState, binding, [undefined]);
const binding2 = env0_3;
const value8 = binding2(value7, 2);
const property = value8[0];
const env0_9 = value8[1];
useState = binding.useState;
const value10 = binding2(Reflect.apply(useState, binding, [null]), 2);
const property2 = value10[0];
const env0_10 = value10[1];
const value11 = binding.useCallback(_fun118282, [channelId]);
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const useAnimatedReaction = reanimatedRexportModule.useAnimatedReaction;
let closure = VoicePanelHeaderI;
closure.__closure = {focused: focused};
closure.__workletHash = 7943480174143;
closure.__initData = env0_36;
const closure2 = VoicePanelHeaderF;
closure2.__closure = {runOnJS: reanimatedRexportModule.runOnJS, handleFocusChange: value11};
closure2.__workletHash = 13084116412140;
closure2.__initData = env0_37;
Reflect.apply(useAnimatedReaction, reanimatedRexportModule, [closure, closure2]);
const useTokenModule = require(3860) /* metro dependency 3860: useToken */;
const useToken = useTokenModule.useToken;
const VOICE_PANEL_GUTTER = (importDefault(697) /* metro dependency 697: native */).modules.mobile.VOICE_PANEL_GUTTER;
const value12 = Reflect.apply(useToken, useTokenModule, [VOICE_PANEL_GUTTER]);
const moduleValue5 = reanimatedRexportModule;
let useDerivedValue = moduleValue5.useDerivedValue;
closure = VoicePanelHeaderHe;
object2 = {calculateVoicePanelHeaderSpecs: importDefault(11799) /* metro dependency 11799: calculateVoicePanelHeaderSpecs */,
safeArea: safeArea, edgeGutter: value12, mode: mode};
object2.VoicePanelModes = VoicePanelModes;
object2.gestureState = gestureState;
object2.connected = connected;
object2.EDGE_GUTTER = EDGE_GUTTER;
closure.__closure = object2;
closure.__workletHash = 13290333964417;
closure.__initData = env0_38;
const value13 = Reflect.apply(useDerivedValue, moduleValue5, [closure]);
const moduleValue6 = reanimatedRexportModule;
let useAnimatedStyle = moduleValue6.useAnimatedStyle;
closure = VoicePanelHeader_e;
object2 = {calculateVoicePanelHeaderSpecs: importDefault(11799) /* metro dependency 11799: calculateVoicePanelHeaderSpecs */,
safeArea: safeArea, edgeGutter: value12, mode: mode, VoicePanelModes: VoicePanelModes, connected: connected,
EDGE_GUTTER: EDGE_GUTTER};
object2.withTiming = (require(4504) /* metro dependency 4504: timing */).withTiming;
binding = env0_25;
object2.OPACITY_TIMING = binding;
object2.withSpring = (require(4577) /* metro dependency 4577: spring */).withSpring;
object2.yOffset = value13;
object2.wrapperOffset = wrapperOffset;
object2.DRAWER_SPRING_PHYSICS_GESTURE_ACTIVE = DRAWER_SPRING_PHYSICS_GESTURE_ACTIVE;
object2.UI_SHOW_HIDE_PHYSICS = UI_SHOW_HIDE_PHYSICS;
closure.__closure = object2;
closure.__workletHash = 11065699618122;
closure.__initData = env0_39;
const value14 = Reflect.apply(useAnimatedStyle, moduleValue6, [closure]);
const moduleValue7 = reanimatedRexportModule;
useDerivedValue = moduleValue7.useDerivedValue;
closure = VoicePanelHeaderPe;
closure.__closure = {controlsSpecs: controlsSpecs, VoicePanelControlsModes: VoicePanelControlsModes,
isScreenReaderEnabled: value4};
closure.__workletHash = 16725581527938;
closure.__initData = env0_40;
const value15 = Reflect.apply(useDerivedValue, moduleValue7, [closure]);
const moduleValue8 = reanimatedRexportModule;
useAnimatedStyle = moduleValue8.useAnimatedStyle;
closure = VoicePanelHeaderSe;
object2 = {calculateVoicePanelHeaderSpecs: importDefault(11799) /* metro dependency 11799: calculateVoicePanelHeaderSpecs */,
safeArea: safeArea, edgeGutter: value12};
object2.withTiming = (require(4504) /* metro dependency 4504: timing */).withTiming;
object2.isHeaderHidden = value15;
object2.OPACITY_TIMING = binding;
object2.withSpring = (require(4577) /* metro dependency 4577: spring */).withSpring;
object2.MODE_CHANGE_PHYSICS = MODE_CHANGE_PHYSICS;
closure.__closure = object2;
closure.__workletHash = 13148362186846;
closure.__initData = env0_41;
const value16 = Reflect.apply(useAnimatedStyle, moduleValue8, [closure]);
const moduleValue9 = reanimatedRexportModule;
const useAnimatedProps = moduleValue9.useAnimatedProps;
closure = VoicePanelHeaderFe;
closure.__closure = {isHeaderHidden: value15};
closure.__workletHash = 4740985143159;
closure.__initData = env0_42;
const value17 = Reflect.apply(useAnimatedProps, moduleValue9, [closure]);
const value18 = (require(15454) /* metro dependency 15454: useCanInviteMembers */).useCanInviteMembers(channelId);
const value19 = (require(15413) /* metro dependency 15413: useInviteMembersCallback */).useInviteMembersCallback(channelId);
const value20 = (importDefault(15455) /* metro dependency 15455: useVoicePanelNavArrowPressed */)();
(require(5286) /* metro dependency 5286: useNavigatorBackPressHandlerNative */).useNavigatorBackPressHandler(value20);
const r9 = property2 != null ? env0_27.LEFT : env0_27.DOWN;
const LEFT = env0_27.LEFT;
if (r9 === LEFT) {
r42 = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['9M6OdC']);
} else {
string = intl.string;
t = (require(1244) /* metro dependency 1244: indexNative */).t;
r42 = value5 ? Reflect.apply(string, intl, [t.RLCTQG]) : Reflect.apply(string, intl, [t['5lPjGj']]);
}
const defaultImport2 = importDefault(15456) /* metro dependency 15456: useStableParticipant */;
const getId = AuthenticationStore.getId;
const value25 = (require(566) /* metro dependency 566: flux */).useStateFromStores([MediaEngineStore], _fun118290,
[defaultImport2(Reflect.apply(getId, AuthenticationStore, []), channelId, guildId)]);
binding = env0_4;
const value26 = binding.useCallback(_fun118292, []);
const value27 = binding.useMemo(_fun118294, [r9]);
const value28 = (require(9293) /* metro dependency 9293: useIsSecureFramesUIEnabled */).useIsSecureFramesUIEnabled({channelId: channelId});
const useIsSecureFramesVerifiedModule = require(9256) /* metro dependency 9256: useIsSecureFramesVerified */;
const useIsUserSecureFramesVerified = useIsSecureFramesVerifiedModule.useIsUserSecureFramesVerified;
let USER = ParticipantTypes.USER;
const value29 = Reflect.apply(useIsUserSecureFramesVerified, useIsSecureFramesVerifiedModule,
[{userId: property2 !== USER ? null : property ?? null, channelId: channelId}]);
const moduleValue16 = useIsSecureFramesVerifiedModule;
const useIsStreamSecureFramesVerified = moduleValue16.useIsStreamSecureFramesVerified;
let STREAM = ParticipantTypes.STREAM;
const value30 = Reflect.apply(useIsStreamSecureFramesVerified, moduleValue16,
[{streamKey: property2 !== STREAM ? null : property ?? null, channelId: channelId}]);
STREAM = ParticipantTypes.STREAM;
const r38 = STREAM === property2 ? value30 : !(ParticipantTypes.USER !== property2) && value29;
const ThemeContextProvider = (require(3868) /* metro dependency 3868: native */).ThemeContextProvider;
const MIDNIGHT = value5 ? ThemeTypes.MIDNIGHT : undefined;
const ReanimatedNativeView = importDefault(8141) /* metro dependency 8141: ReanimatedNativeView */;
const items3 = [styles.headerWrapper, value14];
const env0_322 = ((Component) => <Component isHeaderHidden={value15} scrollPosition={scrollPosition} focused={focused} />)(env0_32);
const r8 = value5 && ((Component) => <Component baseColor={(importDefault(697) /* metro dependency 697: native */).colors.BLACK} minHeight={0} />)(importDefault(14955) /* metro dependency 14955: ThemedHeaderBackgroundGradient */);
const defaultImport5 = ReanimatedNativeView;
USER = ParticipantTypes.USER;
const r12 = property2 !== USER ? null : ((Component) => <Component isHeaderHidden={value15} />)(importDefault(15457) /* metro dependency 15457: VoicePanelHeaderUserState */);
const defaultImport7 = ReanimatedNativeView;
const items6 = [styles.headerOuter, value16];
const value38 = ((Component) => <Component style={styles.leftWrapper} pointerEvents="box-none">{((Component) => <Component icon={importDefault(8709) /* metro dependency 8709 */} accessibilityLabel={r42} onPress={value20} style={value27} />)(importDefault(15388) /* metro dependency 15388: VoicePanelIconButton */)}<ReanimatedNativeView style={styles.headerInner}>{((Component) => <Component />)(importDefault(15459) /* metro dependency 15459: VoicePanelTitleButton */)}{value28 && r38 ? ((ShieldLockIcon) => <ShieldLockIcon size="xs" color={(importDefault(697) /* metro dependency 697: native */).colors.TEXT_SUBTLE} style={styles.shieldIconMargin} />)((require(9322) /* metro dependency 9322: ShieldLockIcon */).ShieldLockIcon) : null}</ReanimatedNativeView></Component>)(importDefault(6821) /* metro dependency 6821: NativeView */);
const defaultImport12 = ReanimatedNativeView;
const items10 = [((Component) => <Component />)(env0_35)];
const ChannelTypes = (require(677) /* metro dependency 677: ChannelTypes */).ChannelTypes;
const GUILD_STAGE_VOICE = ChannelTypes.GUILD_STAGE_VOICE;
items10[1] = channelType === GUILD_STAGE_VOICE && <MusicMuteButton_118267 channelId={channelId} />;
items10[2] = ((Component) => <Component isConnectedToVoiceChannel={value5} channelId={channelId} />)(importDefault(15470) /* metro dependency 15470: VoicePanelHeaderSpeaker */);
if (value18) {
VoicePanelIconButton = importDefault(15388) /* metro dependency 15388: VoicePanelIconButton */;
r26 = <VoicePanelIconButton icon={importDefault(10858) /* metro dependency 10858 */} accessibilityLabel={intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t['dHHb/2'],
{channelName: value6})} onPress={value19} />;
} else {
r26 = value18;
}
items10[3] = r26;
items10[4] = value25 != null ? ((Component) => <Component icon={importDefault(15480) /* metro dependency 15480 */} onPress={value26} accessibilityLabel={value25} />)(importDefault(15388) /* metro dependency 15388: VoicePanelIconButton */) : null;
const MobileGoLiveEntrypointTreatment = (require(15453) /* metro dependency 15453: MobileGoLiveEntrypointExperiment */).MobileGoLiveEntrypointTreatment;
const SCREENSHARE_REPLACES_CHAT = MobileGoLiveEntrypointTreatment.SCREENSHARE_REPLACES_CHAT;
items10[5] = treatment === SCREENSHARE_REPLACES_CHAT && ((Component) => <Component channelId={channelId} />)(importDefault(15481) /* metro dependency 15481: VoicePanelHeaderChatButton */);
return (
<ThemeContextProvider theme={MIDNIGHT}>
<ReanimatedNativeView
style={items3}
pointerEvents="box-none"
layout={layout}
>
{env0_322}
{r8}
{((Component) => <Component style={styles.headerContentWrapper} pointerEvents="box-none" layout={layout}>{r12}{((Component) => <Component style={items6} animatedProps={value17}>{value38}{((Component) => <Component style={styles.rightWrapper} layout={layout}>{items10}</Component>)(defaultImport12)}</Component>)(defaultImport7)}</Component>)(defaultImport5)}
</ReanimatedNativeView>
</ThemeContextProvider>
);
}
function MusicMuteButton_118267OnPress() { // fn#118269, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:4552, owner: MusicMuteButton_118267.onPress, offset: 0x024d3e9a, size: 48 bytes, params: 1, frame: 11
const value = environment.__proto__;
return (require(10765) /* metro dependency 10765: StageMusicActionCreators */).updateStageMusicMuted(!env0_0);
}
function l_118271() { // fn#118271, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:2181, offset: 0x024d40fd, size: 68 bytes, params: 1, frame: 11
var r1;
var r0;
var value5;
var value;
const value2 = isHeaderHidden.get();
if (value2) {
r0 = !value2;
} else {
value5 = focused.get() != null;
if (value5) {
r1 = value5;
} else {
value = scrollPosition.get();
value = value > 0;
r1 = value;
}
r0 = r1;
}
return r0;
}
function c_118272() { // fn#118272, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:2374, offset: 0x024d4141, size: 75 bytes, params: 1, frame: 13
const object2 = {};
let value = environment.__proto__;
value = require(4577) /* metro dependency 4577: spring */;
object2.blurAmount = value.withSpring(env0_3.get() ? 0.3 : 0);
return object2;
}
function u_118273() { // fn#118273, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:2569, offset: 0x024d418c, size: 72 bytes, params: 1, frame: 15
const object2 = {};
const springModule = require(4577) /* metro dependency 4577: spring */;
object2.opacity = springModule.withSpring(env0_3.get() ? 1 : 0, env1_28);
return object2;
}
function _fun118275() { // fn#118275, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:3549, offset: 0x024d4370, size: 46 bytes, params: 1, frame: 12
const closure = handleChange_118276;
closure();
SpeakingStore.addReactChangeListener(closure);
return function() {
SpeakingStore.removeReactChangeListener(handleChange_118276);
};
}
function u_118278() { // fn#118278, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:3763, offset: 0x024d43e6, size: 78 bytes, params: 1, frame: 11
return focused.get() != null && controlsSpecs.get().mode !== VoicePanelControlsModes.HIDDEN && env0_3.get();
}
function __118279() { // fn#118279, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:3972, offset: 0x024d4434, size: 32 bytes, params: 1, frame: 10
const object2 = {};
object2.opacity = env0_4.get() ? 1 : 0;
return object2;
}
function _fun118281() { // fn#118281, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:7678, offset: 0x024d4fe8, size: 139 bytes, params: 1, frame: 19
var intl;
const value = environment.__proto__;
const channel = ChannelStore.getChannel(channelId);
let r0 = channel != null ? (require(4805) /* metro dependency 4805: useChannelName */).computeChannelName(channel,
UserStore, RelationshipStore) : undefined;
if (r0 == null) {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r0 = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.zLZPmk);
}
return r0;
}
function _fun118282(a0) { // fn#118282, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:7941, offset: 0x024d5073, size: 79 bytes, params: 2, frame: 17
var r3;
var value3;
var participant;
const binding = env0_10;
const channelIdBinding = channelId;
const value2 = null;
if (value2 == a0) {
r3 = value2;
} else {
value3 = environment.__proto__;
participant = ChannelRTCStore.getParticipant(channelIdBinding, a0);
r3 = value2 == participant ? value2 : participant.type;
}
binding(r3);
env0_9(a0);
}
function VoicePanelHeaderI() { // fn#118283, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:8112, owner: VoicePanelHeader.I, offset: 0x024d50c2, size: 34 bytes, params: 1, frame: 10
return focused.get()?.id;
}
function VoicePanelHeaderF(a0, a1) { // fn#118284, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:8236, owner: VoicePanelHeader.f, offset: 0x024d50e4, size: 61 bytes, params: 3, frame: 13
var value;
if (a0 !== a1) {
value = environment.__proto__;
value = require(4017) /* metro dependency 4017: ReanimatedRexport */;
value.runOnJS(env0_11)(a0);
}
}
function VoicePanelHeaderHe() { // fn#118285, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:8507, owner: VoicePanelHeader.he, offset: 0x024d5121, size: 203 bytes, params: 1, frame: 16
var r0;
var gestureStateBinding;
var connectedBinding;
var value6;
var DISMISSED;
var value7;
const value = environment.__proto__;
const value4 = (importDefault(11799) /* metro dependency 11799: calculateVoicePanelHeaderSpecs */)(safeArea.get(),
env0_12);
const value5 = mode.get();
const PIP = VoicePanelModes.PIP;
if (value5 === PIP) {
r0 = -(value4.height + EDGE_GUTTER);
} else {
gestureStateBinding = gestureState;
if (gestureStateBinding.get().active) {
gestureStateBinding = gestureState;
if (gestureStateBinding.get().requiresPop) {
value6 = mode.get();
DISMISSED = VoicePanelModes.DISMISSED;
value7 = 0;
r0 = value6 !== DISMISSED ? value7 : connected.get() ? -(value4.height + EDGE_GUTTER) : value7;
} else {
connectedBinding = connected;
if (connectedBinding.get()) {
r0 = -(value4.height + EDGE_GUTTER);
} else {
value6 = mode.get();
DISMISSED = VoicePanelModes.DISMISSED;
value7 = 0;
r0 = value6 !== DISMISSED ? value7 : connected.get() ? -(value4.height + EDGE_GUTTER) : value7;
}
}
} else {
value6 = mode.get();
DISMISSED = VoicePanelModes.DISMISSED;
value7 = 0;
r0 = value6 !== DISMISSED ? value7 : connected.get() ? -(value4.height + EDGE_GUTTER) : value7;
}
}
return r0;
}
function VoicePanelHeader_e() { // fn#118286, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:8894, owner: VoicePanelHeader._e, offset: 0x024d51ec, size: 434 bytes, params: 1, frame: 19
const defaultImport = importDefault(11799) /* metro dependency 11799: calculateVoicePanelHeaderSpecs */;
const safeAreaBinding = safeArea;
let get = safeAreaBinding.get;
const value4 = defaultImport(Reflect.apply(get, safeAreaBinding, []), env0_12);
const value5 = mode.get();
const PIP = VoicePanelModes.PIP;
const value6 = connected.get();
const height = value4.height;
const r7 = value6 ? height : height - value4.paddingTop + EDGE_GUTTER;
connectedBinding = connected;
get = connectedBinding.get;
const r8 = Reflect.apply(get, connectedBinding, []) ? value4.paddingTop : EDGE_GUTTER;
const object2 = {};
copyDataProperties(object2, value4, undefined);
object2['paddingTop'] = r8;
const value9 = connected.get();
const value10 = 24;
object2['borderTopLeftRadius'] = value9 ? 0 : value10;
connectedBinding = connected;
get = connectedBinding.get;
object2['borderTopRightRadius'] = Reflect.apply(get, connectedBinding, []) ? 0 : value10;
object2['height'] = r7;
const timingModule = require(4504) /* metro dependency 4504: timing */;
object2['opacity'] = timingModule.withTiming(value5 === PIP ? 0 : mode.get() !== VoicePanelModes.DISMISSED ? 1 : 0,
env1_25);
const springModule = require(4577) /* metro dependency 4577: spring */;
const withSpring = springModule.withSpring;
const value17 = env0_13.get();
connectedBinding = connected;
get = connectedBinding.get;
object2['transform'] = [{translateY: Reflect.apply(withSpring, springModule, [value17, Reflect.apply(get,
connectedBinding,
[]) ? UI_SHOW_HIDE_PHYSICS : wrapperOffset.get().gestureActive ? DRAWER_SPRING_PHYSICS_GESTURE_ACTIVE : UI_SHOW_HIDE_PHYSICS])}];
return object2;
}
function VoicePanelHeaderPe() { // fn#118287, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:9654, owner: VoicePanelHeader.pe, offset: 0x024d539e, size: 50 bytes, params: 1, frame: 10
const controlsSpecsBinding = controlsSpecs;
const get = controlsSpecsBinding.get;
const mode = Reflect.apply(get, controlsSpecsBinding, []).mode;
const HIDDEN = VoicePanelControlsModes.HIDDEN;
return mode === HIDDEN && !env0_8;
}
function VoicePanelHeaderSe() { // fn#118288, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:9868, owner: VoicePanelHeader.Se, offset: 0x024d53d0, size: 191 bytes, params: 1, frame: 18
const height = (importDefault(11799) /* metro dependency 11799: calculateVoicePanelHeaderSpecs */)(safeArea.get(),
env0_12).height;
const object3 = {};
const timingModule = require(4504) /* metro dependency 4504: timing */;
object3.opacity = timingModule.withTiming(env0_14.get() ? 0 : 1, env1_25);
const object4 = {};
const springModule = require(4577) /* metro dependency 4577: spring */;
object4.translateY = springModule.withSpring(env0_14.get() ? -height : 0, MODE_CHANGE_PHYSICS);
object3.transform = [object4];
return object3;
}
function VoicePanelHeaderFe() { // fn#118289, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:10311, owner: VoicePanelHeader.fe, offset: 0x024d548f, size: 87 bytes, params: 1, frame: 11
const object2 = {};
object2.pointerEvents = env0_14.get() ? 'none' : 'box-none';
object2.importantForAccessibility = env0_14.get() ? 'no-hide-descendants' : 'auto';
object2.accessibilityElementsHidden = env0_14.get();
return object2;
}
function _fun118290() { // fn#118290, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:10912, offset: 0x024d54e6, size: 520 bytes, params: 1, frame: 17
var facing;
var r2;
var moduleValue2;
var value4;
var property;
var value6;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var videoDevices;
if (env0_16 != null) {
var value3 = undefined;
var moduleValue = require(15456) /* metro dependency 15456: useStableParticipant */;
if (moduleValue.isStableUserParticipant(env0_16)) {
moduleValue2 = require(15456) /* metro dependency 15456: useStableParticipant */;
if (moduleValue2.stableParticipantHasVideo(env0_16)) {
videoDevices = MediaEngineStore.getVideoDevices();
value4 = global.Object.keys(videoDevices);
if (value4.length < 2) {
return undefined;
}
property = videoDevices[MediaEngineStore.getVideoDeviceId()];
facing = property == null ? value3 : property.facing;
value6 = value4.find(_fun118291);
r2 = value6 != null ? videoDevices[value6] == null ? value3 : videoDevices[value6].facing : value3;
return facing == null || r2 == null ? intl.string(t['t9eQ/g']) : facing !== 'back' ? facing !== 'front' ? intl.string(t['t9eQ/g']) : r2 === 'back' ? intl.string(t['7YZ/Si']) : intl.string(t['t9eQ/g']) : r2 === 'front' ? intl.string(t['/R1SBx']) : facing !== 'front' ? intl.string(t['t9eQ/g']) : r2 === 'back' ? intl.string(t['7YZ/Si']) : intl.string(t['t9eQ/g']);
}
return undefined;
}
}
}
function _fun118292() { // fn#118292, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:11478, offset: 0x024d56ee, size: 112 bytes, params: 1, frame: 14
var environment;
const value = environment.__proto__;
const env0_0 = MediaEngineStore.getVideoDeviceId();
const Object = global.Object;
const keys = Object.keys;
const getVideoDevices = MediaEngineStore.getVideoDevices;
const value3 = Reflect.apply(keys, Object, [Reflect.apply(getVideoDevices, MediaEngineStore, [])]).find(_fun118293);
if (value3 != null) {
(importDefault(8899) /* metro dependency 8899: AudioActionCreators */).setVideoDevice(value3);
}
}
function _fun118294() { // fn#118294, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:11618, offset: 0x024d575e, size: 59 bytes, params: 1, frame: 5
const binding = env0_15;
const value = environment.__proto__;
const LEFT = env1_27.LEFT;
return {transform: [{rotateZ: binding !== LEFT ? '0deg' : '90deg'}]};
}
function handleChange_118276() { // fn#118276, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15649:3571, offset: 0x024d439e, size: 43 bytes, params: 1, frame: 13
const binding = env1_3;
binding.set(SpeakingStore.isSpeaking(env1_0));
}
@@ -0,0 +1,64 @@
/* Metro module 15481; source: modules/voice_panel/native/header/VoicePanelHeaderChatButton.tsx; dependencies: [31, 661, 33, 4501, 697, 1239, 15482, 6821, 15388, 6682, 1244, 2] */
function _fun118471(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#118471, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15678:6, offset: 0x024dc8f6, size: 327 bytes, params: 8, frame: 22
var object3;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
const env0_4 = (require(661) /* metro dependency 661: Constants */).ComponentActions;
let value = require(33) /* metro dependency 33 */;
const env0_5 = value.jsx;
const env0_6 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object3 = {badgeContainer: {'position': 'absolute', 'top': -2, 'right': -2}};
const object4 = {'width': 8, 'height': 8};
object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
object3.badge = object4;
const RED_400 = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.RED_400;
object3.redBG = {backgroundColor: RED_400};
const WHITE = (importDefault(697) /* metro dependency 697: native */).colors.WHITE;
object3.whiteBG = {backgroundColor: WHITE};
const env0_7 = Reflect.apply(createStyles, value, [object3]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/voice_panel/native/header/VoicePanelHeaderChatButton.tsx');
exports.default = VoicePanelHeaderChatButton;
}
function VoicePanelHeaderChatButton({channelId}) { // fn#118472, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15678:510, offset: 0x024dca3d, size: 385 bytes, params: 2, frame: 28
var r5;
var value;
const styles = useStyles();
const value2 = env0_3.useCallback(function() {
var ComponentDispatch = require(dependencyMap[5]).ComponentDispatch;
ComponentDispatch.dispatch(ComponentActions.VOICE_PANEL_OPEN_CHAT_TAB);
}, []);
const value3 = (importDefault(15482) /* metro dependency 15482: useChatBadge */)(channelId);
const r12 = value3 === 'mention' ? styles.redBG : styles.whiteBG;
const NativeView = importDefault(6821) /* metro dependency 6821: NativeView */;
const VoicePanelIconButton = importDefault(15388) /* metro dependency 15388: VoicePanelIconButton */;
const object = {};
const ChatIcon = (require(6682) /* metro dependency 6682: ChatIcon */).ChatIcon;
const WHITE = (importDefault(697) /* metro dependency 697: native */).colors.WHITE;
object.icon = <ChatIcon color={WHITE} size="sm" />;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.accessibilityLabel = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['5KxXrK']);
object.onPress = value2;
const voicePanelIconButton = <VoicePanelIconButton {...object} />;
const value5 = value3 != null;
if (value5) {
value = NativeView;
value = ((Component) => <Component style={styles.badgeContainer}>{((Component) => <Component style={[styles.badge,
r12]} />)(importDefault(6821) /* metro dependency 6821: NativeView */)}</Component>)(value);
r5 = value;
} else {
r5 = value5;
}
return (
<NativeView>
{voicePanelIconButton}
{r5}
</NativeView>
);
}
@@ -0,0 +1,9 @@
/* Metro module 9240; source: modules/voice_panel/native/header/VoicePanelHeaderConstants.tsx; dependencies: [2] */
function _fun72246(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#72246, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9425:6, offset: 0x01d3fb57, size: 98 bytes, params: 8, frame: 15
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/voice_panel/native/header/VoicePanelHeaderConstants.tsx');
exports.VOICE_PANEL_SETTINGS_KEY = 'voice-panel-settings-action-sheet';
exports.VOICE_PANEL_AUDIO_OUTPUT_ACTION_SHEET_KEY = 'VoicePanelAudioOutputActionSheet';
}
@@ -0,0 +1,432 @@
/* Metro module 15470; source: modules/voice_panel/native/header/VoicePanelHeaderSpeaker.tsx; dependencies: [29, 31, 27, 15471, 4295, 15472, 9229, 1379, 4296, 661, 33, 15474, 15447, 9228, 9438, 9325, 632, 9436, 9324, 15478, 477, 9239, 9230, 1244, 9236, 9238, 15479, 9326, 3968, 1365, 6821, 15388, 12764, 2] */
function _fun118397(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#118397, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:6, offset: 0x024da3bc, size: 398 bytes, params: 8, frame: 19
const env0_0 = require;
const _arrayLikeToArray_118400 = 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 env0_3 = ['ref'];
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(29) /* metro dependency 29 */;
let value = importAll(31) /* metro dependency 31 */;
const env0_6 = (require(27) /* metro dependency 27 */).NativeModules;
const env0_7 = (require(15471) /* metro dependency 15471: ConsoleVoiceUpsellStore */).setVoiceUpsellDismissed;
const gameConsoleStore = importDefault(4295) /* metro dependency 4295: GameConsoleStore */;
const stageChannelAudioStore = importDefault(15472) /* metro dependency 15472: StageChannelAudioStore */;
const audioRouteStoreNative = importDefault(9229) /* metro dependency 9229: AudioRouteStoreNative */;
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
const sessionsStore = importDefault(4296) /* metro dependency 4296: SessionsStore */;
const env0_13 = (require(661) /* metro dependency 661: Constants */).PlatformTypes;
let value2 = require(33) /* metro dependency 33 */;
const env0_14 = value2.jsx;
const env0_15 = value2.Fragment;
const env0_16 = value2.jsxs;
const env0_17 = [];
const env0_18 = value.memo(function({targetRef, canShowTooltip}) {
importDefault(dependencyMap[11])(targetRef, canShowTooltip);
return null;
});
value = value.memo(VoicePanelHeaderSpeaker);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/voice_panel/native/header/VoicePanelHeaderSpeaker.tsx');
exports.default = value;
}
function _createForOfIteratorHelperLoose_118398(a0, a1) { // fn#118398, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:312, offset: 0x024da54a, size: 372 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 _fun118399;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_118400(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_118400(a0, value);
r6 = value;
} else {
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value = _arrayLikeToArray_118400(a0, value);
r6 = value;
} else {
r6 = value;
}
}
r5 = r6;
}
} else {
r5 = value;
}
if (r5) {
if (r5) {
}
return _fun118399;
}
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 VoicePanelHeaderSpeaker({isConnectedToVoiceChannel, channelId, style}) { // fn#118402, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:1325, offset: 0x024da6f0, size: 822 bytes, params: 2, frame: 27
var moduleValue6;
const closure = children_118403;
const value2 = (importDefault(15447) /* metro dependency 15447: useControlsLock */)();
const value3 = (require(9228) /* metro dependency 9228: CallsUtils */).useMaskedSpeakerStates();
const toggleAudio = value3.toggleAudio;
const env0_5 = value3.routeSource;
const env0_6 = value3.isAudioRouteEnabled;
const value4 = (importDefault(9438) /* metro dependency 9438: useIsVideoMode */)();
const env0_8 = (importDefault(9325) /* metro dependency 9325: useVoiceStateForRemoteSession */)();
const awaitingRemoteSessionInfo = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([GameConsoleStore],
function() {
return GameConsoleStore.getAwaitingRemoteSessionInfo();
});
const env0_10 = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([StageChannelAudioStore],
function() {
return StageChannelAudioStore.getQueueAudioSwap();
});
const sessionById = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([SessionsStore],
_fun118406);
let binding = env0_5;
const env0_12 = binding.useMemo(_fun118407, [awaitingRemoteSessionInfo, sessionById]);
const value5 = (importDefault(9324) /* metro dependency 9324: useGameConsoleAccounts */)();
const value6 = value5.length > 0;
const value7 = (importDefault(15478) /* metro dependency 15478: useCanConnect */)(channelId);
const r4 = value7.canConnect && !value7.isAtMaxCapacity && (isConnectedToVoiceChannel || value6);
binding = env0_5;
const env0_15 = binding.useCallback(_fun118408, [channelId, isConnectedToVoiceChannel, toggleAudio]);
if (r4) {
moduleValue6 = require(477) /* metro dependency 477: PlatformUtils */;
return moduleValue6.isAndroid() ? closure() : value6 ? <>{((Component) => <Component targetRef={binding.useRef(null)} canShowTooltip={isConnectedToVoiceChannel} />)(env0_18)}{((MenuPopout) => <MenuPopout menuItems={binding.useMemo(_fun118410,
[value5, channelId, isConnectedToVoiceChannel,
(require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([AudioRouteStoreNative],
function() {
return AudioRouteStoreNative.getCurrentRouteType();
}), value4])} position="bottom" align="end" onRequestOpen={binding.useCallback(_fun118417,
[value2])} onRequestClose={value2.unlock}>{closure}</MenuPopout>)((require(12764) /* metro dependency 12764: MenuPopout */).MenuPopout)}</> : closure();
}
return null;
}
function VoicePanelHeaderSpeakerChildren(a0) { // fn#118403, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:3561, owner: VoicePanelHeaderSpeaker.children, offset: 0x024daa26, size: 373 bytes, params: 2, frame: 25
const r2 = a0 ?? ({onPress: env0_15, ref: undefined});
const ref = r2.ref;
value = environment.__proto__;
const binding = env1_4;
const value2 = undefined;
const value3 = binding(r2, env1_3);
const jsxRuntimeEnv1_15Binding = jsxRuntimeEnv1_15;
const env1_182 = ((Component) => <Component targetRef={env0_17} canShowTooltip={env0_14 && isConnectedToVoiceChannel} />)(env1_18);
const NativeView = importDefault(6821) /* metro dependency 6821: NativeView */;
const defaultImportProps = {style: style, ref: env0_17};
const VoicePanelIconButton = importDefault(15388) /* metro dependency 15388: VoicePanelIconButton */;
const defaultImport2Props = {ref: ref, ...value3};
defaultImport2Props['disabled'] = queueAudioSwap;
defaultImport2Props['overrideVariant'] = isConnectedToVoiceChannel && isAudioRouteEnabled ? 'primary-overlay' : value2;
defaultImport2Props['loading'] = awaitingRemoteSessionInfo != null;
defaultImport2Props['icon'] = env0_12 ?? routeSource;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
defaultImport2Props['accessibilityLabel'] = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.dnI0AL);
return (
<>
{env1_182}
<NativeView {...defaultImportProps}>
<VoicePanelIconButton {...defaultImport2Props} />
</NativeView>
</>
);
}
function _fun118406() { // fn#118406, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:1720, offset: 0x024dabc3, size: 62 bytes, params: 1, frame: 14
const value = environment.__proto__;
return SessionsStore.getSessionById(env0_8?.sessionId ?? '');
}
function _fun118407() { // fn#118407, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:1814, offset: 0x024dac01, size: 113 bytes, params: 1, frame: 14
var r0;
var value;
const awaitingRemoteSessionInfoBinding = awaitingRemoteSessionInfo;
const value2 = null;
const value3 = undefined;
const type = value2 == awaitingRemoteSessionInfoBinding ? value3 : awaitingRemoteSessionInfo.type;
const r2 = value2 != type ? type : value2 == sessionById || value2 == sessionById.clientInfo ? value3 : sessionById.clientInfo.os;
if (value2 != r2) {
value = environment.__proto__;
value = (importDefault(9436) /* metro dependency 9436: getConsoleIcon */)(r2);
r0 = value;
} else {
r0 = value2;
}
return r0;
}
function _fun118408() { // fn#118408, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:2056, offset: 0x024dac72, size: 106 bytes, params: 1, frame: 14
let value = environment.__proto__;
const platformUtilsModule = require(477) /* metro dependency 477: PlatformUtils */;
if (platformUtilsModule.isAndroid()) {
value = require(9239) /* metro dependency 9239: showAudioOutputSelector */;
value.showAudioOutputSelector(channelId, isConnectedToVoiceChannel);
} else {
toggleAudio(channelId, isConnectedToVoiceChannel);
}
}
function _fun118410() { // fn#118410, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:2219, offset: 0x024dacef, size: 571 bytes, params: 1, frame: 20
var environment;
var r4;
var r3;
var items2;
var binding;
var currentRouteTypeBinding;
const RouteTypes = (require(9230) /* metro dependency 9230: VoiceCallTypes */).RouteTypes;
var SPEAKER;
var value3;
var push;
var object4;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var gvQIzx;
var RECEIVER;
var value4;
var object5;
var wwTN1g;
var object6;
var dnI0AL;
var closure;
var value5;
var done;
var value6;
var value7;
let value = environment.__proto__;
const platformUtilsModule = require(477) /* metro dependency 477: PlatformUtils */;
if (!platformUtilsModule.isAndroid()) {
reducibleJoin13: while (true) {
if (env0_13.length !== 0) {
items2 = [];
var env0_0 = items2;
binding = env0_7;
reducibleJoin4: while (true) {
if (binding) {
r4 = binding;
break reducibleJoin4;
}
currentRouteTypeBinding = currentRouteType;
SPEAKER = RouteTypes.SPEAKER;
value3 = currentRouteTypeBinding !== SPEAKER;
r4 = value3;
break reducibleJoin4;
}
reducibleJoin6: while (true) {
if (r4) {
break reducibleJoin6;
}
push = items2.push;
object4 = {};
string = intl.string;
gvQIzx = t.gvQIzx;
object4.label = Reflect.apply(string, intl, [gvQIzx]);
object4.iconSource = importDefault(9236) /* metro dependency 9236 */;
object4.showIconFirst = false;
object4.action = action_118411;
Reflect.apply(push, items2, [object4]);
break reducibleJoin6;
}
binding = env0_7;
reducibleJoin8: while (true) {
if (binding) {
r4 = binding;
break reducibleJoin8;
}
currentRouteTypeBinding = currentRouteType;
RECEIVER = RouteTypes.RECEIVER;
value4 = currentRouteTypeBinding !== RECEIVER;
r4 = value4;
break reducibleJoin8;
}
reducibleJoin10: while (true) {
if (r4) {
break reducibleJoin10;
}
push = items2.push;
object5 = {};
string = intl.string;
wwTN1g = t.wwTN1g;
object5.label = Reflect.apply(string, intl, [wwTN1g]);
object5.iconSource = importDefault(9238) /* metro dependency 9238 */;
object5.showIconFirst = false;
object5.action = action_118412;
Reflect.apply(push, items2, [object5]);
break reducibleJoin10;
}
push = items2.push;
object6 = {};
string = intl.string;
dnI0AL = t.dnI0AL;
object6.label = Reflect.apply(string, intl, [dnI0AL]);
object6.iconSource = importDefault(15479) /* metro dependency 15479 */;
object6.showIconFirst = false;
object6.action = action_118413;
Reflect.apply(push, items2, [object6]);
closure = _loop_118414;
value = _createForOfIteratorHelperLoose_118398(env0_13);
value5 = value();
done = value5.done;
if (!done) {
r3 = value5;
reducibleLoop11: while (true) {
value6 = r3.value;
closure(value6);
value7 = value();
done = value7.done;
if (done) {
break reducibleLoop11;
}
r3 = value7;
continue reducibleLoop11;
}
}
return items2;
}
break reducibleJoin13;
}
}
return env1_17;
}
function _fun118417() { // fn#118417, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:3401, offset: 0x024db133, size: 90 bytes, params: 1, frame: 15
const dismissibleContentUnsafeUtilsModule = require(3968) /* metro dependency 3968: DismissibleContentUnsafeUtils */;
const UNSAFE_markDismissibleContentAsDismissed = dismissibleContentUnsafeUtilsModule.UNSAFE_markDismissibleContentAsDismissed;
const DismissibleContent = (require(1365) /* metro dependency 1365: dismissible_content */).DismissibleContent;
const DONUT_MOBILE_NUX = DismissibleContent.DONUT_MOBILE_NUX;
Reflect.apply(UNSAFE_markDismissibleContentAsDismissed, dismissibleContentUnsafeUtilsModule, [DONUT_MOBILE_NUX]);
setVoiceUpsellDismissed(true);
env0_3.lock();
}
function action_118411() { // fn#118411, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:2418, offset: 0x024daf2a, size: 39 bytes, params: 1, frame: 12
const value = environment.__proto__.__proto__;
const AudioRoutePicker = NativeModules.AudioRoutePicker;
return AudioRoutePicker?.toggleSpeaker(false);
}
function action_118412() { // fn#118412, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:2633, offset: 0x024daf51, size: 39 bytes, params: 1, frame: 12
const value = environment.__proto__.__proto__;
const AudioRoutePicker = NativeModules.AudioRoutePicker;
return AudioRoutePicker?.toggleSpeaker(true);
}
function action_118413() { // fn#118413, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:2810, offset: 0x024daf78, size: 50 bytes, params: 1, frame: 14
let value = environment.__proto__.__proto__;
value = require(9239) /* metro dependency 9239: showAudioOutputSelector */;
value.showAudioOutputSelector(channelId, isConnectedToVoiceChannel);
}
function _loop_118414(a0) { // fn#118414, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:2873, offset: 0x024dafaa, size: 318 bytes, params: 2, frame: 20
var environment;
var binding;
var push;
var object2;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const env0_0 = a0;
let type = a0.type;
const value = environment.__proto__.__proto__;
const XBOX = PlatformTypes.XBOX;
if (type === XBOX) {
binding = env0_0;
push = binding.push;
object2 = {};
object2.label = intl.string(t['qVE/VF']);
object2.iconSource = (importDefault(9436) /* metro dependency 9436: getConsoleIcon */)(a0.type);
object2.showIconFirst = false;
object2.action = action_118415;
Reflect.apply(push, binding, [object2]);
}
type = a0.type;
const PLAYSTATION = PlatformTypes.PLAYSTATION;
if (type === PLAYSTATION) {
binding = env0_0;
push = binding.push;
object2 = {};
object2.label = intl.string(t.vzfxmY);
object2.iconSource = (importDefault(9436) /* metro dependency 9436: getConsoleIcon */)(a0.type);
object2.showIconFirst = false;
object2.action = action_118416;
Reflect.apply(push, binding, [object2]);
}
}
function _loop_118414Action() { // fn#118415, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15667:3013, owner: _loop_118414.action, offset: 0x024db0e8, size: 75 bytes, params: 1, frame: 13
const value = environment.__proto__.__proto__.__proto__;
const channel = ChannelStore.getChannel(channelId);
if (channel != null) {
(require(9326) /* metro dependency 9326: useOnConnectToConsole */).onConnectToConsole(channel, env0_0);
}
}
@@ -0,0 +1,257 @@
/* Metro module 15457; source: modules/voice_panel/native/header/VoicePanelHeaderUserState.tsx; dependencies: [31, 4606, 33, 4017, 8554, 4501, 697, 15458, 15456, 9244, 6821, 11794, 566, 4504, 2] */
function _fun118311(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#118311, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15654:6, offset: 0x024d60eb, size: 470 bytes, params: 8, frame: 25
var object3;
const env0_0 = require;
const _arrayLikeToArray_118314 = 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 closure = useVoicePanelHeaderUserStateIcons;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = importAll(31) /* metro dependency 31 */;
const channelRTCStore = importDefault(4606) /* metro dependency 4606: ChannelRTCStore */;
const env0_5 = (require(33) /* metro dependency 33 */).jsx;
const reanimatedRexport = importDefault(4017) /* metro dependency 4017: ReanimatedRexport */;
const createAnimatedComponent = reanimatedRexport.createAnimatedComponent;
const BackgroundBlurView = (require(8554) /* metro dependency 8554: native */).BackgroundBlurView;
const env0_6 = Reflect.apply(createAnimatedComponent, reanimatedRexport, [BackgroundBlurView]);
object3 = {duration: 100};
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = createStylesModule.createStyles;
object3 = {};
const object5 = {'position': 'absolute', 'top': 0, 'left': 0, 'borderRadius': null, 'padding': 6};
object5.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
object3.container = object5;
object3.iconContainer = {flexDirection: 'row'};
const object6 = {'width': 20, 'height': 20, 'borderRadius': null, 'alignItems': 'center',
'justifyContent': 'center'};
object6.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
object3.floatingIconWrapper = object6;
const WHITE = (importDefault(697) /* metro dependency 697: native */).colors.WHITE;
object3.floatingIcon = {'width': 12, 'height': 12, tintColor: WHITE};
object3.leftMargin = {marginLeft: 4};
const env0_8 = Reflect.apply(createStyles, createStylesModule, [object3]);
object3 = {code: 'function VoicePanelHeaderUserStateTsx1(){const{withTiming,isHeaderHidden,OPACITY_TIMING}=this.__closure;return{opacity:withTiming(isHeaderHidden.get()?1:0,OPACITY_TIMING)};}'};
value = value.memo(VoicePanelHeaderUserState);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/voice_panel/native/header/VoicePanelHeaderUserState.tsx');
exports.default = value;
exports.useVoicePanelHeaderUserStateIcons = closure;
}
function _createForOfIteratorHelperLoose_118312(a0, a1) { // fn#118312, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15654:136, offset: 0x024d62c1, size: 372 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 _fun118313;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_118314(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_118314(a0, value);
r6 = value;
} else {
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value = _arrayLikeToArray_118314(a0, value);
r6 = value;
} else {
r6 = value;
}
}
r5 = r6;
}
} else {
r5 = value;
}
if (r5) {
if (r5) {
}
return _fun118313;
}
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 useVoicePanelHeaderUserStateIcons(a0, a1, a2) { // fn#118315, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15654:1490, offset: 0x024d6435, size: 595 bytes, params: 4, frame: 31
var r2;
var leftMargin;
var value5;
const VoicePanelCardUserStateIconType = (require(15458) /* metro dependency 15458: useVoicePanelCardUserStateIcons */).VoicePanelCardUserStateIconType;
var USER_VIDEO_ICON;
var push;
var jsxRuntimeEnv0_5Binding;
const BackgroundBlurView = (require(8554) /* metro dependency 8554: native */).BackgroundBlurView;
var object;
var floatingIconWrapper;
var jsxRuntimeEnv0_5Binding2;
var VideoIcon;
var videoIconState;
var MUTE_DEAFEN_ICON;
var object2;
var withLeftMargin;
var jsxRuntimeEnv0_5Binding3;
var MuteDeafenIcon;
var muteDeafenIconState;
var value6;
const value2 = undefined;
const styles = useStyles();
const items2 = [];
const _createForOfIteratorHelperLoose_118312Binding = _createForOfIteratorHelperLoose_118312;
const defaultImport = importDefault(15458) /* metro dependency 15458: useVoicePanelCardUserStateIcons */;
let type = a0 == null ? value2 : a0.type;
const useStableParticipantModule = require(15456) /* metro dependency 15456: useStableParticipant */;
const value3 = _createForOfIteratorHelperLoose_118312Binding(defaultImport(type,
useStableParticipantModule.isStableParticipantWithUser(a0) ? a0.user.id : value2, a1));
const value4 = value3();
let done = value4.done;
if (!done) {
r2 = value4;
while (true) {
value5 = r2.value;
type = value5.type;
USER_VIDEO_ICON = VoicePanelCardUserStateIconType.USER_VIDEO_ICON;
if (type === USER_VIDEO_ICON) {
push = items2.push;
jsxRuntimeEnv0_5Binding = jsxRuntimeEnv0_5;
var backgroundBlurViewProps = {blurTheme: 'dark', style: styles.floatingIconWrapper};
jsxRuntimeEnv0_5Binding2 = jsxRuntimeEnv0_5;
VideoIcon = (require(9244) /* metro dependency 9244: VoiceStateIcons */).VideoIcon;
videoIconState = value5.videoIconState;
Reflect.apply(push, items2,
[<BackgroundBlurView {...backgroundBlurViewProps} key="video"><VideoIcon style={styles.floatingIcon} state={videoIconState} /></BackgroundBlurView>]);
}
type = value5.type;
MUTE_DEAFEN_ICON = VoicePanelCardUserStateIconType.MUTE_DEAFEN_ICON;
if (type !== MUTE_DEAFEN_ICON) {
continue;
}
push = items2.push;
jsxRuntimeEnv0_5Binding = jsxRuntimeEnv0_5;
object2 = {blurTheme: 'dark'};
floatingIconWrapper = styles.floatingIconWrapper;
withLeftMargin = value5.withLeftMargin;
if (!withLeftMargin) {
leftMargin = value2;
continue;
}
leftMargin = styles.leftMargin;
object2.style = [floatingIconWrapper, leftMargin];
jsxRuntimeEnv0_5Binding3 = jsxRuntimeEnv0_5;
MuteDeafenIcon = (require(9244) /* metro dependency 9244: VoiceStateIcons */).MuteDeafenIcon;
muteDeafenIconState = value5.muteDeafenIconState;
Reflect.apply(push, items2,
[<BackgroundBlurView {...object2} key="mute-deafen"><MuteDeafenIcon style={styles.floatingIcon} state={muteDeafenIconState} /></BackgroundBlurView>]);
value6 = value3();
done = value6.done;
if (done) {
break;
}
r2 = value6;
continue;
}
}
if (items2.length !== 0) {
return ((Component) => <Component style={[styles.iconContainer,
a2]}>{items2}</Component>)(importDefault(6821) /* metro dependency 6821: NativeView */);
}
return value2;
}
function VoicePanelHeaderUserState({isHeaderHidden}) { // fn#118316, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15654:2525, offset: 0x024d6688, size: 317 bytes, params: 2, frame: 24
const {channelId,
guildId} = env0_3.useContext(importDefault(11794) /* metro dependency 11794: VoicePanelStateContext */);
const styles = useStyles();
const fluxModule = require(566) /* metro dependency 566: flux */;
const useStateFromStores = fluxModule.useStateFromStores;
const value4 = useVoicePanelHeaderUserStateIcons((importDefault(15456) /* metro dependency 15456: useStableParticipant */)(Reflect.apply(useStateFromStores,
fluxModule, [[ChannelRTCStore], _fun118317]), channelId, guildId), guildId);
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const useAnimatedStyle = reanimatedRexportModule.useAnimatedStyle;
const closure = VoicePanelHeaderUserStateS;
closure.__closure = {withTiming: (require(4504) /* metro dependency 4504: timing */).withTiming,
isHeaderHidden: isHeaderHidden, OPACITY_TIMING: env0_7};
closure.__workletHash = 7032221979181;
closure.__initData = env0_9;
return value4 == null ? null : ((Component) => <Component blurTheme="dark" style={[styles.container,
Reflect.apply(useAnimatedStyle, reanimatedRexportModule,
[closure])]} pointerEvents="none">{value4}</Component>)(env0_6);
}
function _fun118317() { // fn#118317, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15654:2679, offset: 0x024d67c5, size: 43 bytes, params: 1, frame: 11
const value = environment.__proto__;
return ChannelRTCStore.getSelectedParticipant(channelId)?.id;
}
function VoicePanelHeaderUserStateS() { // fn#118318, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15654:2836, owner: VoicePanelHeaderUserState.s, offset: 0x024d67f0, size: 72 bytes, params: 1, frame: 15
const object2 = {};
const timingModule = require(4504) /* metro dependency 4504: timing */;
object2.opacity = timingModule.withTiming(isHeaderHidden.get() ? 1 : 0, env1_7);
return object2;
}
@@ -0,0 +1,23 @@
/* Metro module 15461; source: modules/voice_panel/native/header/VoicePanelSettingsActionCreators.tsx; dependencies: [4080, 15462, 1962, 2] */
function _fun118344(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#118344, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15658:6, offset: 0x024d7d41, size: 130 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/voice_panel/native/header/VoicePanelSettingsActionCreators.tsx');
exports.VOICE_PANEL_SETTINGS_ACTION_SHEET_KEY = 'VoicePanelSettingsActionSheet';
exports.closeVoicePanelSettingsActionSheet = closeVoicePanelSettingsActionSheet;
exports.openVoicePanelSettingsActionSheet = openVoicePanelSettingsActionSheet;
}
function closeVoicePanelSettingsActionSheet() { // fn#118345, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15658:313, offset: 0x024d7dc3, size: 43 bytes, params: 1, frame: 12
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet('VoicePanelSettingsActionSheet');
}
function openVoicePanelSettingsActionSheet(a0, a1) { // fn#118346, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15658:423, offset: 0x024d7dee, size: 95 bytes, params: 3, frame: 16
const defaultImport = importDefault(dependencyMap[0]);
const openLazy = defaultImport.openLazy;
let value = require(dependencyMap[2]);
value = value(dependencyMap[1], dependencyMap.paths);
Reflect.apply(openLazy, defaultImport, [value, 'VoicePanelSettingsActionSheet', {guildId: a0, channelId: a1}]);
}
@@ -0,0 +1,29 @@
/* Metro module 15462; source: modules/voice_panel/native/header/VoicePanelSettingsActionSheet.tsx; dependencies: [31, 33, 4501, 6275, 6277, 6618, 15463, 2] */
function _fun118347(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#118347, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15659:6, offset: 0x024d7e4d, size: 190 bytes, params: 8, frame: 21
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = importAll(31) /* metro dependency 31 */;
const env0_3 = (require(33) /* metro dependency 33 */).jsx;
const env0_4 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({wrapper: {gap: 24}});
value = value.memo(VoicePanelSettingsActionSheet);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/voice_panel/native/header/VoicePanelSettingsActionSheet.tsx');
exports.default = value;
}
function VoicePanelSettingsActionSheet({guildId, channelId}) { // fn#118348, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15659:177, offset: 0x024d7f0b, size: 190 bytes, params: 2, frame: 23
const styles = useStyles();
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
const BottomSheetScrollView = (require(6277) /* metro dependency 6277 */).BottomSheetScrollView;
const SafeAreaPaddingView = (require(6618) /* metro dependency 6618: SafeAreaView */).SafeAreaPaddingView;
return (
<BottomSheet startExpanded scrollable>
<BottomSheetScrollView>
<SafeAreaPaddingView bottom style={styles.wrapper}>
{((Component) => <Component guildId={guildId} channelId={channelId} />)(importDefault(15463) /* metro dependency 15463: VoicePanelSettingsOverview */)}
</SafeAreaPaddingView>
</BottomSheetScrollView>
</BottomSheet>
);
}
@@ -0,0 +1,547 @@
/* Metro module 15463; source: modules/voice_panel/native/header/VoicePanelSettingsOverview.tsx; dependencies: [31, 1378, 4606, 7730, 1226, 1379, 4259, 3784, 1878, 4300, 661, 4299, 9277, 33, 4501, 697, 566, 15464, 4805, 9293, 9256, 6821, 4573, 9322, 1244, 6705, 12, 3857, 15461, 9212, 6238, 6242, 13957, 8151, 6243, 694, 6808, 3829, 8899, 7712, 8148, 10813, 4080, 15465, 1962, 9279, 9298, 15466, 15454, 15413, 11319, 9243, 15467, 7002, 15468, 9248, 15469, 9759, 10793, 10859, 10858, 2] */
function _fun118349(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#118349, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:6, offset: 0x024d7fc9, size: 642 bytes, params: 8, frame: 25
const env0_0 = require;
const _arrayLikeToArray_118352 = 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 closure = VoicePanelSettingsOverviewHeader;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = importAll(31) /* metro dependency 31 */;
const embeddedActivitiesStore = importDefault(1378) /* metro dependency 1378: EmbeddedActivitiesStore */;
const channelRTCStore = importDefault(4606) /* metro dependency 4606: ChannelRTCStore */;
const channelCallLifecycleStore = importDefault(7730) /* metro dependency 7730: ChannelCallLifecycleStore */;
const authenticationStore = importDefault(1226) /* metro dependency 1226: AuthenticationStore */;
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
const mediaEngineStore = importDefault(4259) /* metro dependency 4259: MediaEngineStore */;
const permissionStore = importDefault(3784) /* metro dependency 3784: PermissionStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const sortedVoiceStateStore = importDefault(4300) /* metro dependency 4300: SortedVoiceStateStore */;
const constantsModule = require(661) /* metro dependency 661: Constants */;
const env0_13 = constantsModule.AnalyticsSections;
const env0_14 = constantsModule.Permissions;
const env0_15 = constantsModule.RPC_APPLICATION_LOGGING_CATEGORY;
const env0_16 = (require(4299) /* metro dependency 4299: CallConstants */).isStreamParticipant;
const env0_17 = (require(9277) /* metro dependency 9277: SecureFramesConstants */).SECURE_FRAMES_CALL_VERIFICATION_BOTTOM_SHEET_KEY;
let value3 = require(33) /* metro dependency 33 */;
const env0_18 = value3.jsx;
const env0_19 = value3.jsxs;
const env0_20 = value3.Fragment;
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = createStylesModule.createStyles;
const object = {'flexDirection': 'row', 'alignItems': 'center', 'backgroundColor': null, 'borderRadius': null,
'marginTop': 8, 'padding': 4, 'gap': 4};
const BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object.backgroundColor = BACKGROUND_SURFACE_HIGH;
object.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
const env0_21 = Reflect.apply(createStyles, createStylesModule, [{headerContainer: {alignItems: 'center'},
channelTitleWrapper: {'flexDirection': 'row', 'alignItems': 'center', 'justifyContent': 'center',
'marginTop': 8}, channelTitle: {textAlign: 'center'}, channelSubtitle: {'marginTop': 4, 'marginHorizontal': 16,
'textAlign': 'center'}, secureFrames: object, secureFramesIcon: {marginStart: 4}}]);
value = value.memo(VoicePanelSettingsOverview);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/voice_panel/native/header/VoicePanelSettingsOverview.tsx');
exports.default = value;
exports.VoicePanelSettingsOverviewHeader = closure;
}
function _createForOfIteratorHelperLoose_118350(a0, a1) { // fn#118350, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:423, offset: 0x024d824b, size: 372 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 _fun118351;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_118352(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_118352(a0, value);
r6 = value;
} else {
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value = _arrayLikeToArray_118352(a0, value);
r6 = value;
} else {
r6 = value;
}
}
r5 = r6;
}
} else {
r5 = value;
}
if (r5) {
if (r5) {
}
return _fun118351;
}
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 VoicePanelSettingsOverviewHeader({guildId, channelId}) { // fn#118353, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:1807, offset: 0x024d83bf, size: 743 bytes, params: 2, frame: 33
var r14;
var r5;
var ShieldLockIcon;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var NativeView;
var items4;
const styles = useStyles();
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([SortedVoiceStateStore],
_fun118354);
const value4 = (importDefault(4805) /* metro dependency 4805: useChannelName */)((require(566) /* metro dependency 566: flux */).useStateFromStores([ChannelStore],
function() {
return ChannelStore.getChannel(channelId);
}, [channelId]));
const value5 = (require(9293) /* metro dependency 9293: useIsSecureFramesUIEnabled */).useIsSecureFramesUIEnabled({channelId: channelId});
const value6 = (require(9256) /* metro dependency 9256: useIsSecureFramesVerified */).useIsCallSecureFramesVerified({channelId: channelId});
const NativeView2 = importDefault(6821) /* metro dependency 6821: NativeView */;
const defaultImport2 = NativeView2;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const text = <Text style={styles.channelTitle} variant="heading-lg/bold" lineClamp={1} accessibilityRole="header">{value4}</Text>;
if (value6) {
ShieldLockIcon = (require(9322) /* metro dependency 9322: ShieldLockIcon */).ShieldLockIcon;
r14 = <ShieldLockIcon style={styles.secureFramesIcon} size="xs" accessibilityLabel={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.mR9cf3)} />;
} else {
r14 = value6;
}
const items3 = [((Component) => <Component style={styles.channelTitleWrapper}>{text}{r14}</Component>)(defaultImport2)];
items3[1] = <Text style={styles.channelSubtitle} variant="text-sm/medium" accessibilityRole="summary">{value2}</Text>;
if (value5) {
NativeView = NativeView2;
var defaultImport3Props = {style: styles.secureFrames};
items4 = [((LockIcon) => <LockIcon size="xxs" color="status-positive" />)((require(6705) /* metro dependency 6705: LockIcon */).LockIcon)];
items4[1] = <Text variant="text-xs/medium" color="status-positive">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3BogKe'])}</Text>;
r5 = <NativeView {...defaultImport3Props}>{items4}</NativeView>;
} else {
r5 = value5;
}
items3[2] = r5;
return (
<NativeView2 style={styles.headerContainer}>
{items3}
</NativeView2>
);
}
function ShareActivityLogsButton() { // fn#118357, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:2923, offset: 0x024d871c, size: 239 bytes, params: 1, frame: 21
const value2 = env0_3.useCallback(_fun118358, []);
const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
const object2 = {onPress: value2};
const TableRowIcon = (require(6242) /* metro dependency 6242: TableRowIconNative */).TableRowIcon;
const WrenchIcon = (require(13957) /* metro dependency 13957: WrenchIcon */).WrenchIcon;
object2.icon = <TableRowIcon IconComponent={WrenchIcon} source={importDefault(8151) /* metro dependency 8151 */} />;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.iQzQs3);
const TableRowArrow = (require(6243) /* metro dependency 6243: TableRowArrowNative */).TableRowArrow;
object2.trailing = <TableRowArrow />;
return <TableRow {...object2} />;
}
function ActivityDebugToggle() { // fn#118359, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:3476, offset: 0x024d88eb, size: 300 bytes, params: 1, frame: 22
var object2;
const showActivitiesDebugOverlay = (require(566) /* metro dependency 566: flux */).useStateFromStores([ChannelCallLifecycleStore],
function() {
return ChannelCallLifecycleStore.getShowActivitiesDebugOverlay();
});
const value2 = env0_3.useCallback(_fun118361, []);
const TableSwitchRow = (require(6808) /* metro dependency 6808: TableSwitchRowNative */).TableSwitchRow;
object2 = {};
const TableRowIcon = (require(6242) /* metro dependency 6242: TableRowIconNative */).TableRowIcon;
const WrenchIcon = (require(13957) /* metro dependency 13957: WrenchIcon */).WrenchIcon;
object2.icon = <TableRowIcon IconComponent={WrenchIcon} source={importDefault(8151) /* metro dependency 8151 */} />;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.accessibilityHint = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['qv5/SP']);
object2.value = showActivitiesDebugOverlay;
object2.onValueChange = value2;
object2.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['qv5/SP']);
return <TableSwitchRow {...object2} />;
}
function VoicePanelSettingsOverview({guildId, channelId}) { // fn#118362, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:3972, offset: 0x024d8a63, size: 3104 bytes, params: 2, frame: 56
const TableRowArrow = (require(6243) /* metro dependency 6243: TableRowArrowNative */).TableRowArrow;
var r13;
const VoicePanelFormSection = (require(9243) /* metro dependency 9243: FormComponents */).VoicePanelFormSection;
const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
var object6;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var object18;
var items5;
var map;
const channel = (require(566) /* metro dependency 566: flux */).useStateFromStores([ChannelStore], function() {
return ChannelStore.getChannel(channelId);
});
const DeveloperMode = (require(3829) /* metro dependency 3829: UserSettings */).DeveloperMode;
const value2 = DeveloperMode.useSetting();
const voiceStatesForChannelAlt = (require(566) /* metro dependency 566: flux */).useStateFromStores([SortedVoiceStateStore],
function() {
return SortedVoiceStateStore.getVoiceStatesForChannelAlt(channelId, guildId);
});
const env0_3 = voiceStatesForChannelAlt;
let value3 = (require(566) /* metro dependency 566: flux */).useStateFromStoresArray([UserStore], _fun118365,
[channel, voiceStatesForChannelAlt]);
let value4 = (require(566) /* metro dependency 566: flux */).useStateFromStores([MediaEngineStore], function() {
return MediaEngineStore.isSelfDeaf();
});
const value5 = env0_3.useCallback(_fun118368, []);
const voiceParticipantsHidden = (require(566) /* metro dependency 566: flux */).useStateFromStores([ChannelRTCStore],
function() {
return ChannelRTCStore.getVoiceParticipantsHidden(channelId);
});
const value6 = (require(566) /* metro dependency 566: flux */).useStateFromStores([ChannelRTCStore,
AuthenticationStore], function() {
var value3 = ChannelRTCStore.getSelectedParticipant(channelId);
var isStreamParticipant2 = isStreamParticipant(value3);
var value4 = null;
return isStreamParticipant2 ? value3.stream.ownerId === AuthenticationStore.getId() ? value4 : value3.id : value4;
});
const value7 = env0_3.useCallback(_fun118371, [channelId, voiceParticipantsHidden]);
const value8 = env0_3.useCallback(_fun118372, [channelId]);
const value9 = env0_3.useCallback(_fun118373, [guildId]);
const value10 = env0_3.useCallback(function() {
importDefault(dependencyMap[42]).openLazy(require(dependencyMap[44])(dependencyMap[43], dependencyMap.paths),
SECURE_FRAMES_CALL_VERIFICATION_BOTTOM_SHEET_KEY, {channelId: channelId});
}, [channelId]);
const value11 = env0_3.useCallback(_fun118375, [channelId, value6]);
const value12 = (require(9298) /* metro dependency 9298: useIsEmptyRTCConnection */).useIsCallRTCConnectionEmpty();
const value13 = (require(9298) /* metro dependency 9298: useIsEmptyRTCConnection */).useIsStreamRTCConnectionEmpty(value6);
const value14 = (require(566) /* metro dependency 566: flux */).useStateFromStores([EmbeddedActivitiesStore],
_fun118376, []);
const value15 = (importDefault(15466) /* metro dependency 15466: useCanSetVoiceChannelStatus */)(channel);
const value16 = (require(566) /* metro dependency 566: flux */).useStateFromStores([PermissionStore], function() {
var MANAGE_CHANNELS = Permissions.MANAGE_CHANNELS;
return PermissionStore.canWithPartialContext(MANAGE_CHANNELS, {channelId: channelId});
}, [channelId]);
const value17 = (require(15454) /* metro dependency 15454: useCanInviteMembers */).useCanInviteMembers(channelId);
const value18 = (require(15413) /* metro dependency 15413: useInviteMembersCallback */).useInviteMembersCallback(channelId);
const value19 = (importDefault(11319) /* metro dependency 11319: useShowChannelOptInNotice */)(channel);
const value20 = (require(9293) /* metro dependency 9293: useIsSecureFramesUIEnabled */).useIsSecureFramesUIEnabled({channelId: channelId});
const jsxRuntimeEnv0_20Binding = jsxRuntimeEnv0_20;
const items3 = [<VoicePanelSettingsOverviewHeader guildId={guildId} channelId={channelId} />];
items3[1] = value19 ? <VoicePanelFormSection hasIcons={false}>{((Component) => <Component channel={channel} analyticsSection={AnalyticsSections.CHANNEL_ACTION_SHEET} />)(importDefault(15467) /* metro dependency 15467: VoicePanelChannelOptInNotice */)}</VoicePanelFormSection> : null;
let r5 = value16 || value15;
if (r5) {
if (value16) {
r13 = <TableRow onPress={value8} label={intl.string(t.XPDhcc)} subLabel={intl.string(t.w7ZEot)} trailing={<TableRowArrow />} />;
} else {
r13 = value16;
}
r5 = <VoicePanelFormSection hasIcons={false}>{r13}</VoicePanelFormSection>;
}
items3[2] = r5;
const object = {onPress: value9};
const TableRowIcon = (require(6242) /* metro dependency 6242: TableRowIconNative */).TableRowIcon;
const SettingsIcon = (require(7002) /* metro dependency 7002: SettingsIcon */).SettingsIcon;
object.icon = <TableRowIcon IconComponent={SettingsIcon} source={importDefault(15468) /* metro dependency 15468 */} />;
let string = intl.string;
const NiTd0e = (require(1244) /* metro dependency 1244: indexNative */).t.NiTd0e;
object.label = Reflect.apply(string, intl, [NiTd0e]);
object.subLabel = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['16SG+O']);
object.trailing = <TableRowArrow />;
const items4 = [<TableRow {...object} />];
const TableSwitchRow = (require(6808) /* metro dependency 6808: TableSwitchRowNative */).TableSwitchRow;
const object2 = {};
const HeadphonesSlashIcon = (require(9248) /* metro dependency 9248: HeadphonesSlashIcon */).HeadphonesSlashIcon;
object2.icon = <TableRowIcon IconComponent={HeadphonesSlashIcon} source={importDefault(15469) /* metro dependency 15469 */} />;
object2.accessibilityHint = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.wjcRFX);
object2.value = value4;
object2.onValueChange = value5;
object2.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.wjcRFX);
string = intl.string;
const M3VN2U = (require(1244) /* metro dependency 1244: indexNative */).t.M3VN2U;
object2.subLabel = Reflect.apply(string, intl, [M3VN2U]);
items4[1] = <TableSwitchRow {...object2} />;
const object3 = {};
const VideoIcon = (require(9759) /* metro dependency 9759: VideoIcon */).VideoIcon;
object3.icon = <TableRowIcon IconComponent={VideoIcon} source={importDefault(10793) /* metro dependency 10793 */} />;
string = intl.string;
let ZMTRyc = (require(1244) /* metro dependency 1244: indexNative */).t.ZMTRyc;
object3.accessibilityHint = Reflect.apply(string, intl, [ZMTRyc]);
object3.value = voiceParticipantsHidden;
object3.onValueChange = value7;
string = intl.string;
ZMTRyc = (require(1244) /* metro dependency 1244: indexNative */).t.ZMTRyc;
object3.label = Reflect.apply(string, intl, [ZMTRyc]);
string = intl.string;
const MlpCFS = (require(1244) /* metro dependency 1244: indexNative */).t.MlpCFS;
object3.subLabel = Reflect.apply(string, intl, [MlpCFS]);
items4[2] = <TableSwitchRow {...object3} />;
let r24 = value20 && value6 == null && !value12;
if (r24) {
r24 = <TableRow onPress={value10} icon={<TableRowIcon IconComponent={(require(6705) /* metro dependency 6705: LockIcon */).LockIcon} source={importDefault(15468) /* metro dependency 15468 */} />} label={intl.string(t.cTQI5t)} subLabel={intl.string(t.Etxti2)} trailing={<TableRowArrow />} />;
}
items4[3] = r24;
let r18 = value20 && value6 != null && !value13;
if (r18) {
r18 = <TableRow onPress={value11} icon={<TableRowIcon IconComponent={(require(6705) /* metro dependency 6705: LockIcon */).LockIcon} source={importDefault(15468) /* metro dependency 15468 */} />} label={intl.string(t.QogHld)} subLabel={intl.string(t['j5+1ed'])} trailing={<TableRowArrow />} />;
}
items4[4] = r18;
items3[3] = <VoicePanelFormSection hasIcons>{items4}</VoicePanelFormSection>;
r5 = voiceStatesForChannelAlt.length > 0 || value17;
if (r5) {
var voicePanelFormSectionProps = {title: '' + intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t.AWmdd9,
{count: '' + voiceStatesForChannelAlt.length}), hasIcons: true};
if (value17) {
r18 = <TableRow onPress={value18} icon={<TableRowIcon IconComponent={(require(10859) /* metro dependency 10859: GroupPlusIcon */).GroupPlusIcon} source={importDefault(10858) /* metro dependency 10858 */} />} label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['f1+QIK'])} trailing={<TableRowArrow />} />;
} else {
r18 = null;
}
items5 = [r18];
map = voiceStatesForChannelAlt.map;
items5[1] = Reflect.apply(map, voiceStatesForChannelAlt, [_fun118378]);
map = value3.map;
items5[2] = Reflect.apply(map, value3, [_fun118379]);
r5 = <VoicePanelFormSection {...voicePanelFormSectionProps}>{items5}</VoicePanelFormSection>;
}
items3[4] = r5;
items3[5] = value2 ? <VoicePanelFormSection title={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.J6rqB7)} hasIcons>{value14 ? <ShareActivityLogsButton /> : null}<ActivityDebugToggle /></VoicePanelFormSection> : null;
return (
<>
{items3}
</>
);
}
function _fun118354() { // fn#118354, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:1920, offset: 0x024d86a6, size: 118 bytes, params: 1, frame: 18
var environment;
const value = environment.__proto__;
const getVoiceStatesForChannelAlt = SortedVoiceStateStore.getVoiceStatesForChannelAlt;
const channelIdBinding = channelId;
const guildIdBinding = guildId;
const value3 = Reflect.apply(getVoiceStatesForChannelAlt, SortedVoiceStateStore, [channelIdBinding, guildIdBinding]);
const value5 = value3.slice(0, 2).map(function(a0) {
return a0.user;
});
return (importDefault(15464) /* metro dependency 15464: getChannelInfoSubtitle */)(guildIdBinding, channelIdBinding,
value5, value3.length - value5.length);
}
function _fun118358() { // fn#118358, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:2979, offset: 0x024d880b, size: 224 bytes, params: 1, frame: 18
var defaultImport;
var open;
var intl;
let value = environment.__proto__;
const logAggregatorModule = require(12) /* metro dependency 12: LogAggregator */;
const stringify = logAggregatorModule.stringify;
let object = [RPC_APPLICATION_LOGGING_CATEGORY];
const value2 = Reflect.apply(stringify, logAggregatorModule, [object]);
if (value2 === '') {
defaultImport = importDefault(3857) /* metro dependency 3857: ToastActionCreators */;
open = defaultImport.open;
object = {key: 'EMBEDDED_ACTIVITIES_SHARE_EMPTY_LOGS_ERROR_MESSAGE'};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.content = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['i+9VWy']);
Reflect.apply(open, defaultImport, [object]);
} else {
value = require(15461) /* metro dependency 15461: VoicePanelSettingsActionCreators */;
value.closeVoicePanelSettingsActionSheet();
value = require(9212) /* metro dependency 9212: showShareActionSheetAndroid */;
value.showShareActionSheet({message: value2}, 'Activity Logs');
}
}
function _fun118361(a0) { // fn#118361, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:3604, offset: 0x024d8a2a, size: 57 bytes, params: 2, frame: 13
const value = environment.__proto__;
(importDefault(694) /* metro dependency 694: Dispatcher */).dispatch({type: 'EMBEDDED_ACTIVITY_SET_DEBUG_OVERLAY_VISIBILITY',
visible: a0});
}
function _fun118365() { // fn#118365, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:4252, offset: 0x024d96a3, size: 200 bytes, params: 1, frame: 19
var environment;
var r2;
var r1;
var Set;
var value2;
var set;
var items2;
var value5;
var value6;
var done;
var value7;
var user;
var value9;
var value10;
var value11;
var value;
let channelBinding = channel;
if (channelBinding != null) {
channelBinding = channel;
if (channelBinding.isPrivate()) {
Set = global.Set;
value2 = voiceStatesForChannelAlt.map(function(a0) {
return a0.user.id;
});
set = new Set();
items2 = [];
value5 = environment.__proto__;
value = _createForOfIteratorHelperLoose_118350(channel.recipients);
value6 = value();
done = value6.done;
if (!done) {
r2 = value6;
while (true) {
value7 = r2.value;
user = UserStore.getUser(value7);
value9 = user == null;
if (value9) {
r1 = value9;
} else {
value10 = set.has(value7);
r1 = value10;
}
if (r1) {
continue;
}
items2.push(user);
value11 = value();
done = value11.done;
if (done) {
break;
}
r2 = value11;
continue;
}
}
return items2;
}
}
return [];
}
function _fun118368() { // fn#118368, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:4555, offset: 0x024d977e, size: 37 bytes, params: 1, frame: 11
const value = environment.__proto__;
(importDefault(8899) /* metro dependency 8899: AudioActionCreators */).toggleSelfDeaf();
}
function _fun118371() { // fn#118371, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:4815, offset: 0x024d980e, size: 53 bytes, params: 1, frame: 14
let value = environment.__proto__;
value = importDefault(7712) /* metro dependency 7712: ChannelRTCActionCreators */;
value.toggleVoiceParticipantsHidden(channelId, !voiceParticipantsHidden);
}
function _fun118372() { // fn#118372, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:4891, offset: 0x024d9843, size: 71 bytes, params: 1, frame: 13
let value = environment.__proto__;
(require(15461) /* metro dependency 15461: VoicePanelSettingsActionCreators */).closeVoicePanelSettingsActionSheet();
value = importDefault(8148) /* metro dependency 8148: ChannelSettingsActionCreators */;
value.open(channelId);
}
function _fun118373() { // fn#118373, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:4984, offset: 0x024d988a, size: 67 bytes, params: 1, frame: 13
let value = environment.__proto__;
(require(15461) /* metro dependency 15461: VoicePanelSettingsActionCreators */).closeVoicePanelSettingsActionSheet();
value = require(10813) /* metro dependency 10813: ChannelCallConnectingScreen */;
value.showVoiceSettingsActionSheet(guildId);
}
function _fun118375() { // fn#118375, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:5191, offset: 0x024d9928, size: 62 bytes, params: 1, frame: 13
var value2;
var defaultImport;
if (env0_5 != null) {
value2 = environment.__proto__;
defaultImport = importDefault(9279) /* metro dependency 9279: SecureFramesPlatformUtilsNative */;
defaultImport.openSecureFramesStreamVerification(env0_5, channelId);
}
}
function _fun118376() { // fn#118376, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:5386, offset: 0x024d9966, size: 25 bytes, params: 1, frame: 9
const value = environment.__proto__;
return EmbeddedActivitiesStore.getCurrentEmbeddedActivity() != null;
}
function _fun118378(a0) { // fn#118378, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:7997, offset: 0x024d99ab, size: 138 bytes, params: 2, frame: 18
let value = environment.__proto__;
value = undefined;
const MemberRowItem = (require(9243) /* metro dependency 9243: FormComponents */).MemberRowItem;
const object2 = {};
let user = a0.user;
object2.user = user;
object2.selfStream = a0.voiceState.selfStream;
object2.nick = a0.nick ?? value;
object2.channelId = channelId;
object2.guildId = guildId;
object2.showSecureFramesUI = env0_6;
user = a0.user;
return <MemberRowItem {...object2} key={user.id} />;
}
function _fun118379(a0) { // fn#118379, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15660:8184, offset: 0x024d9a35, size: 89 bytes, params: 2, frame: 17
const MemberRowItem = (require(9243) /* metro dependency 9243: FormComponents */).MemberRowItem;
return (
<MemberRowItem
user={a0}
channelId={channelId}
guildId={guildId}
notConnected
showRing
key={a0.id}
/>
);
}
@@ -0,0 +1,22 @@
/* Metro module 11799; source: modules/voice_panel/native/header/calculateVoicePanelHeaderSpecs.tsx; dependencies: [2] */
function _fun90385(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#90385, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11985:6, offset: 0x020372d0, size: 143 bytes, params: 8, frame: 17
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const closure = function(a0, a1) {
var Math = global.Math;
var value = Math.max(a1, a0.top);
var object = {height: 44 + value, paddingTop: value};
Math = global.Math;
object.paddingLeft = Math.max(a1, a0.left);
Math = global.Math;
object.paddingRight = Math.max(a1, a0.right);
return object;
};
closure.__closure = {BASE_VOICE_PANEL_HEADER_HEIGHT: 44};
closure.__workletHash = 6201232972174;
closure.__initData = {code: 'function calculateVoicePanelHeaderSpecs_calculateVoicePanelHeaderSpecsTsx1(safeArea,edgeGutter){const{BASE_VOICE_PANEL_HEADER_HEIGHT}=this.__closure;const paddingTop=Math.max(edgeGutter,safeArea.top);const paddingLeft=Math.max(edgeGutter,safeArea.left);const paddingRight=Math.max(edgeGutter,safeArea.right);const height=BASE_VOICE_PANEL_HEADER_HEIGHT+paddingTop;return{height:height,paddingTop:paddingTop,paddingLeft:paddingLeft,paddingRight:paddingRight};}'};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/voice_panel/native/header/calculateVoicePanelHeaderSpecs.tsx');
exports.default = closure;
exports.BASE_VOICE_PANEL_HEADER_HEIGHT = 44;
}