bigbluebutton-Github/bigbluebutton-html5/imports/ui/components/external-video-player/container.jsx
2022-07-28 16:50:31 -03:00

49 lines
1.3 KiB
JavaScript

import React from 'react';
import { withTracker } from 'meteor/react-meteor-data';
import { Session } from 'meteor/session';
import { getVideoUrl } from './service';
import ExternalVideoComponent from './component';
import {
layoutSelect,
layoutSelectInput,
layoutSelectOutput,
layoutDispatch,
} from '../layout/context';
const ExternalVideoContainer = (props) => {
const fullscreenElementId = 'ExternalVideo';
const externalVideo = layoutSelectOutput((i) => i.externalVideo);
const cameraDock = layoutSelectInput((i) => i.cameraDock);
const { isResizing } = cameraDock;
const layoutContextDispatch = layoutDispatch();
const fullscreen = layoutSelect((i) => i.fullscreen);
const { element } = fullscreen;
const fullscreenContext = (element === fullscreenElementId);
return (
<ExternalVideoComponent
{
...{
layoutContextDispatch,
...props,
...externalVideo,
isResizing,
fullscreenElementId,
fullscreenContext,
}
}
/>
);
};
const LAYOUT_CONFIG = Meteor.settings.public.layout;
export default withTracker(({ isPresenter }) => {
const inEchoTest = Session.get('inEchoTest');
return {
inEchoTest,
isPresenter,
videoUrl: getVideoUrl(),
};
})(ExternalVideoContainer);