decord/beta/source/modules/calls/ParticipantFocusManager.tsx
2026-10-12 16:32:48 +00:00

44 lines
1.7 KiB
TypeScript

// Module ID: 18226
// Function ID: 18227
// Name: ParticipantFocusManager
// Dependencies: [5110, 6036, 6808, 2]
// Module 18226 (ParticipantFocusManager)
import RTCConnectionStore from "RTCConnectionStore" /* 5110 */;
import ChannelRTCStore from "ChannelRTCStore" /* 6036 */;
import AutomaticLifecycleManager from "AutomaticLifecycleManager" /* 6808 */;
import size from "module_2" /* 2 */;
let map;
class ParticipantFocusManager extends AutomaticLifecycleManager {
constructor() {
const applyArgumentsResult = HermesBuiltin.applyArguments(this, new.target);
map = new Map();
applyArgumentsResult.stores = map.set(ChannelRTCStore, applyArgumentsResult.handleFocusParticipant);
return applyArgumentsResult;
}
handleFocusParticipant() {
const channelId = RTCConnectionStore.getChannelId();
const obj = RTCConnectionStore;
if (null != channelId) {
const selectedParticipantId = ChannelRTCStore.getSelectedParticipantId(channelId);
const videoParticipants = ChannelRTCStore.getVideoParticipants(channelId);
const rTCConnection = obj.getRTCConnection();
if (rTCConnection != null) {
const setSelectedParticipant = rTCConnection.setSelectedParticipant;
const found = videoParticipants.find((id) => id.id === closure_0 && !id.localVideoDisabled);
let id;
if (found != null) {
id = found.id;
}
const result = setSelectedParticipant(id);
}
}
}
}
const prototype = ParticipantFocusManager.prototype;
const participantFocusManager = new ParticipantFocusManager();
let result = size.fileFinishedImporting("modules/calls/ParticipantFocusManager.tsx");
export default participantFocusManager;