import React, { useContext } from 'react'; import { withTracker } from 'meteor/react-meteor-data'; import AudioService from '/imports/ui/components/audio/service'; import AudioManager from '/imports/ui/services/audio-manager'; import BreakoutComponent from './component'; import Service from './service'; import { layoutDispatch } from '../layout/context'; import Auth from '/imports/ui/services/auth'; import { UsersContext } from '/imports/ui/components/components-data/users-context/context'; const BreakoutContainer = (props) => { const layoutContextDispatch = layoutDispatch(); const usingUsersContext = useContext(UsersContext); const { users } = usingUsersContext; const amIPresenter = users[Auth.meetingID][Auth.userID].presenter; return ; }; export default withTracker((props) => { const { endAllBreakouts, requestJoinURL, extendBreakoutsTime, sendMessageToAllBreakouts, isExtendTimeHigherThanMeetingRemaining, findBreakouts, getBreakoutRoomUrl, transferUserToMeeting, transferToBreakout, meetingId, amIModerator, isUserInBreakoutRoom, } = Service; const breakoutRooms = findBreakouts(); const isMicrophoneUser = AudioService.isConnected() && !AudioService.isListenOnly(); const isMeteorConnected = Meteor.status().connected; const isReconnecting = AudioService.isReconnecting(); const { setBreakoutAudioTransferStatus, getBreakoutAudioTransferStatus, } = AudioService; return { ...props, breakoutRooms, endAllBreakouts, requestJoinURL, extendBreakoutsTime, sendMessageToAllBreakouts, isExtendTimeHigherThanMeetingRemaining, getBreakoutRoomUrl, transferUserToMeeting, transferToBreakout, isMicrophoneUser, meetingId: meetingId(), amIModerator: amIModerator(), isMeteorConnected, isUserInBreakoutRoom, exitAudio: () => AudioManager.exitAudio(), isReconnecting, setBreakoutAudioTransferStatus, getBreakoutAudioTransferStatus, }; })(BreakoutContainer);