bigbluebutton-Github/bigbluebutton-html5/imports/ui/components/notes/container.jsx

40 lines
1.4 KiB
React
Raw Normal View History

import React, { useContext } from 'react';
2018-12-13 04:10:27 +08:00
import { withTracker } from 'meteor/react-meteor-data';
import Notes from './component';
import Service from './service';
import Auth from '/imports/ui/services/auth';
import MediaService from '/imports/ui/components/media/service';
import { layoutSelectInput, layoutDispatch, layoutSelectOutput } from '../layout/context';
import { UsersContext } from '../components-data/users-context/context';
2018-12-13 04:10:27 +08:00
const Container = ({ ...props }) => {
2021-09-11 04:48:52 +08:00
const cameraDock = layoutSelectInput((i) => i.cameraDock);
const sharedNotesOutput = layoutSelectOutput((i) => i.sharedNotes);
const sidebarContent = layoutSelectInput((i) => i.sidebarContent);
2021-08-19 21:05:25 +08:00
const { isResizing } = cameraDock;
2021-09-11 04:48:52 +08:00
const layoutContextDispatch = layoutDispatch();
const usingUsersContext = useContext(UsersContext);
const { users } = usingUsersContext;
const amIPresenter = users[Auth.meetingID][Auth.userID].presenter;
return <Notes {...{
layoutContextDispatch,
isResizing,
sidebarContent,
sharedNotesOutput,
amIPresenter,
...props
}} />;
2021-05-18 04:25:07 +08:00
};
2018-12-13 04:10:27 +08:00
2019-01-10 02:06:23 +08:00
export default withTracker(() => {
const hasPermission = Service.hasPermission();
const isRTL = document.documentElement.getAttribute('dir') === 'rtl';
const shouldShowSharedNotesOnPresentationArea = MediaService.shouldShowSharedNotes();
2018-12-13 04:10:27 +08:00
return {
hasPermission,
isRTL,
shouldShowSharedNotesOnPresentationArea,
2018-12-13 04:10:27 +08:00
};
})(Container);