// Metro module 8858 (f8859). import * as Module19 from "react"; import { useCallback, useMemo, useEffect } from "react"; import { ScrollView } from "react-native"; import GameConsoleStore from "../../../game_console/GameConsoleStore"; import AudioManagerStore_android from "../../../voice_calls/native/AudioManagerStore.android"; import ChannelStore from "../../../../stores/ChannelStore"; import SessionsStore from "../../../../stores/SessionsStore"; import { VOICE_PANEL_AUDIO_OUTPUT_ACTION_SHEET_KEY } from "./VoicePanelHeaderConstants"; import { PlatformTypes } from "../../../../Constants"; import { createStyles } from "../../../../design/components/Styles/native/createStyles"; import ActionSheetActionCreators from "../../../action_sheet/native/ActionSheetActionCreators"; import { useStateFromStoresObject, useStateFromStores } from "../../../../_bundle/defaultAreStatesEqual"; import { setAudioOutputDevice } from "../../../voice_calls/native/AudioManagerActionCreator"; import { VoicePanelFormSection } from "../shared/FormComponents"; import { intl, t } from "../../../../intl/index.native"; import { TableRadioGroup } from "../../../../design/components/TableRow/native/TableRadioGroup.native"; import { TableRadioRow } from "../../../../design/components/TableRow/native/TableRadioRow.native"; import { TableRowIcon } from "../../../../design/components/TableRow/native/TableRowIcon.native"; import { audioDeviceToIconMap, getAudioDeviceToDisplayText } from "../../../voice_calls/native/CallsUtils"; import useGameConsoleAccounts from "../../../game_console/useGameConsoleAccounts"; import useVoiceStateForRemoteSession from "../../../game_console/hooks/useVoiceStateForRemoteSession"; import { onConnectToConsole } from "../../../video_calls/native/useOnConnectToConsole"; import { useIsDismissibleContentDismissed_UNSAFE, UNSAFE_markDismissibleContentAsDismissed } from "../../../dismissible_content/DismissibleContentUnsafeUtils"; import { DismissibleContent } from "../../../../_bundle/Module1358"; import getConsoleIcon from "../../../game_console/native/getConsoleIcon"; import { BottomSheet } from "../../../../design/components/Sheet/native/BottomSheet.native"; import { BottomSheetTitleHeader } from "../../../../design/components/Sheet/native/BottomSheetTitleHeader.native"; import NativeView from "../../../core/native/NativeView"; let useStyles, VoicePanelAudioConsoleSection; const VoicePanelAudioPhoneOutputSection = function VoicePanelAudioPhoneOutputSection() { let availableDevices, callback; const styles = useStyles(); const stateFromStoresObject = useStateFromStoresObject([AudioManagerStore_android], () => ({ activeDevice: AudioManagerStore_android.getActiveAudioDevice(), availableDevices: AudioManagerStore_android.getAudioDevices() })); const activeDevice = stateFromStoresObject.activeDevice; availableDevices = stateFromStoresObject.availableDevices; callback = useCallback((a0) => { setAudioOutputDevice(a0); ActionSheetActionCreators.hideActionSheet(VOICE_PANEL_AUDIO_OUTPUT_ACTION_SHEET_KEY); }, []); return availableDevices.length > 0 ? { const r7 = availableDevices.find((availableDevice) => availableDevice.deviceId === c26300_0); if (r7 != null) { callback(r7); } }} hasIcons> {availableDevices.map((availableDevice) => } label={getAudioDeviceToDisplayText(availableDevice)} subLabel={availableDevice.deviceName?.length > 0 ? availableDevice.deviceName : void 0} />)} : null; }; VoicePanelAudioConsoleSection = function VoicePanelAudioConsoleSection(props) { let stateFromStores2, c16832_5; const channel = props.channel; stateFromStores2 = void 0; c16832_5 = void 0; const styles = useStyles(); const gameConsoleAccounts = useGameConsoleAccounts(); let c16832_1 = gameConsoleAccounts; let c16832_2 = useVoiceStateForRemoteSession(); const stateFromStores = useStateFromStores([GameConsoleStore], () => GameConsoleStore.getAwaitingRemoteSessionInfo()); stateFromStores2 = useStateFromStores([SessionsStore], () => { let r7 = c16832_2?.sessionId; if (r7 == null) { r7 = ""; } return SessionsStore.getSessionById(r7); }); const memo = useMemo(() => { let r3 = stateFromStores?.type; if (r3 == null) { r3 = stateFromStores2 == null ? void 0 : stateFromStores2.clientInfo?.os; } if (r3 == null) { r3 = ""; } return r3; }, [stateFromStores, stateFromStores2]); const callback2 = useCallback((c26301_0) => { const r5 = c16832_1.find((item) => item.type === c26301_0); if (r5 != null) { onConnectToConsole(channel, r5); ActionSheetActionCreators.hideActionSheet(VOICE_PANEL_AUDIO_OUTPUT_ACTION_SHEET_KEY); } else { ActionSheetActionCreators.hideActionSheet(VOICE_PANEL_AUDIO_OUTPUT_ACTION_SHEET_KEY); } }, [gameConsoleAccounts, channel]); const r2 = !useIsDismissibleContentDismissed_UNSAFE(DismissibleContent.DONUT_MOBILE_NUX); c16832_5 = r2; useEffect(() => { if (c16832_5 && c16832_1.length > 0) { UNSAFE_markDismissibleContentAsDismissed(DismissibleContent.DONUT_MOBILE_NUX); } }, [gameConsoleAccounts, r2]); return gameConsoleAccounts.length > 0 ? {gameConsoleAccounts.map((gameConsoleAccount) => { const type = gameConsoleAccount.type; const r6 = PlatformTypes.XBOX === type ? { label: intl.string(t.Nfvo72), variant: "xbox" } : PlatformTypes.PLAYSTATION === type ? { label: intl.string(t.fFl4jo), variant: "playstation" } : null; return r6 != null && } label={r6.label} value={gameConsoleAccount.type} />; }).filter((item) => Boolean(item))} : null; }; useStyles = createStyles({ sectionContainer: { marginTop: 0, marginBottom: 24 } }); const r46 = Module19.memo(function VoicePanelAudioOutputActionSheet(props) { const channelId = props.channelId; let isConnectedToVoiceChannel = props.isConnectedToVoiceChannel; const stateFromStores3 = useStateFromStores([ChannelStore], () => ChannelStore.getChannel(channelId)); let r20 = null; if (stateFromStores3 != null) { const props2 = { header: , children: null }; if (isConnectedToVoiceChannel) { isConnectedToVoiceChannel = ; } props2.children = {isConnectedToVoiceChannel} ; r20 = ; } return r20; }); export default r46;