Files
discord-decomp/modules/voice_calls/native/ProximitySensorManager.tsx
T
2026-11-01 12:12:55 +02:00

25 lines
1.4 KiB
TypeScript

// Metro module 16303 (f16304).
import { NativeModules } from "react-native";
import EmbeddedActivitiesStore from "../../activities/EmbeddedActivitiesStore";
import ApplicationStreamingStore from "../../../stores/ApplicationStreamingStore";
import RTCConnectionStore from "../../../stores/RTCConnectionStore";
import AudioRouteStore_native from "../AudioRouteStore.native";
import { isIOS } from "../../../utils/PlatformUtils";
import Module16304 from "../../../_bundle/Module16304";
import { RouteTypes } from "../VoiceCallTypes";
import AutomaticLifecycleManager from "../../../lib/AutomaticLifecycleManager";
let ProximitySensorManager2;
const handleChange = function handleChange() {
const currentRouteType = AudioRouteStore_native.getCurrentRouteType();
const isConnected = RTCConnectionStore.isConnected();
const r3 = EmbeddedActivitiesStore.getCurrentEmbeddedActivity() != null;
const r4 = ApplicationStreamingStore.getAllActiveStreams().length > 0;
ProximitySensorManager2.setProximityMonitoringEnabled(currentRouteType === RouteTypes.RECEIVER && isConnected && (isIOS() || (r3 ? !r3 : !r4)));
};
ProximitySensorManager2 = isIOS() ? NativeModules.ProximitySensorManager : Module16304;
class ProximitySensorManager extends AutomaticLifecycleManager {
stores = new Map().set(AudioRouteStore_native, handleChange).set(RTCConnectionStore, handleChange);
}
const proximitySensorManager = new ProximitySensorManager();
export default proximitySensorManager;