// Module ID: 9687 // Function ID: 9688 // Name: handleAudioRouteChanged // Dependencies: [17, 4544, 9688, 500, 9689, 589, 709, 2] // Module 9687 (handleAudioRouteChanged) import set from "set" /* 2 */; import set2 from "set" /* 500 */; import initializeDefault from "initialize" /* 589 */; import dispatcherDefault from "dispatcher" /* 709 */; import RouteTypes2 from "RouteTypes" /* 9688 */; import enforcingDefault from "enforcing" /* 9689 */; import get_ActivityIndicator from "get ActivityIndicator" /* 17 */; import closure_4 from "createRTCConnection" /* 4544 */; function handleAudioRouteChanged(arr) { let tmp = arg1; if (arg1 === undefined) { tmp = closure_6; } if (null != arr) { if ("" !== arr) { if (arr.includes("Bluetooth")) { UNKNOWN = RouteTypes2.RouteTypes.BLUETOOTH; } else if (arr.includes("Speaker")) { UNKNOWN = RouteTypes2.RouteTypes.SPEAKER; } else if (arr.includes("Receiver")) { UNKNOWN = RouteTypes2.RouteTypes.RECEIVER; } else { const hasItem = arr.includes("Headphones"); const RouteTypes = RouteTypes2.RouteTypes; UNKNOWN = hasItem ? RouteTypes.WIRED : RouteTypes.UNKNOWN; } } closure_6 = tmp; } UNKNOWN = RouteTypes2.RouteTypes.UNKNOWN; } const NativeModules = get_ActivityIndicator.NativeModules; let UNKNOWN = RouteTypes2.RouteTypes.UNKNOWN; let c6 = false; let c7 = null; const nativeEventEmitter = new get_ActivityIndicator.NativeEventEmitter(NativeModules.AudioRouteEmitter); const Store = initializeDefault.Store; class AudioRouteStoreClass extends Store { } const prototype = AudioRouteStoreClass.prototype; prototype["initialize"] = function initialize() { this.waitFor(closure_4); }; prototype["getCurrentRouteType"] = function getCurrentRouteType() { return UNKNOWN; }; prototype["getMultipleRoutesAvailable"] = function getMultipleRoutesAvailable() { return c6; }; AudioRouteStoreClass.displayName = "AudioRouteStore"; const audioRouteStoreClass = new AudioRouteStoreClass(dispatcherDefault, { RTC_CONNECTION_STATE: function handleConnectionStatusChanged() { const isConnectedResult = connected.isConnected(); let tmp3 = null; if (null === _null) { if (isConnectedResult) { let _catch = dependencyMap; UNKNOWN = RouteTypes2.RouteTypes.UNKNOWN; let addListenerResult; if (nativeEventEmitter != tmp3) { addListenerResult = obj.addListener("audio-route-changed", (routeType) => { callback(routeType.routeType, routeType.multipleRoutesAvailable); closure_10.emitChange(); }); } _null = addListenerResult; if (tmp11Result.isAndroid()) { const obj3 = enforcingDefault; tmp3 = obj3 == tmp3; let currentRoute; if (!tmp3) { currentRoute = obj3.getCurrentRoute(); } let currentRoute1 = currentRoute; } else { const AudioRouteEmitter = NativeModules.AudioRouteEmitter; currentRoute1 = AudioRouteEmitter.getCurrentRoute(); } obj = nativeEventEmitter; const tmp11 = require; tmp11Result = set2; const nextPromise = currentRoute1.then((routeType) => { callback(routeType.routeType, routeType.multipleRoutesAvailable); }); _catch = currentRoute1.then((routeType) => { callback(routeType.routeType, routeType.multipleRoutesAvailable); }).then(() => { let emitChangeResult; if (closure_10 != null) { emitChangeResult = closure_10.emitChange(); } return emitChangeResult; }).catch; _catch(() => { }); const nextPromise1 = currentRoute1.then((routeType) => { callback(routeType.routeType, routeType.multipleRoutesAvailable); }).then(() => { let emitChangeResult; if (closure_10 != null) { emitChangeResult = closure_10.emitChange(); } return emitChangeResult; }); } } if (!tmp4) { const AudioRoutePicker = NativeModules.AudioRoutePicker; if (AudioRoutePicker != tmp3) { AudioRoutePicker.resetPortOverride(); } UNKNOWN = RouteTypes2.RouteTypes.UNKNOWN; _null.remove(); _null = tmp3; } return false; } }); const result = set.fileFinishedImporting("modules/voice_calls/AudioRouteStore.native.tsx"); export default audioRouteStoreClass;