import React, { PureComponent } from 'react'; import CaptionsButtonContainer from '/imports/ui/components/captions/button/container'; import deviceInfo from '/imports/utils/deviceInfo'; import { ActionsBarItemType, ActionsBarPosition } from 'bigbluebutton-html-plugin-sdk/dist/cjs/extensible-areas/actions-bar-item/enums'; import Styled from './styles'; import ActionsDropdown from './actions-dropdown/container'; import AudioCaptionsButtonContainer from '/imports/ui/components/audio/audio-graphql/audio-captions/button/component'; import CaptionsReaderMenuContainer from '/imports/ui/components/captions/reader-menu/container'; import ScreenshareButtonContainer from '/imports/ui/components/actions-bar/screenshare/container'; import ReactionsButtonContainer from './reactions-button/container'; import AudioControlsContainer from '../audio/audio-graphql/audio-controls/component'; import JoinVideoOptionsContainer from '../video-provider/video-button/container'; import PresentationOptionsContainer from './presentation-options/component'; import RaiseHandDropdownContainer from './raise-hand/container'; import { isPresentationEnabled } from '/imports/ui/services/features'; import Button from '/imports/ui/components/common/button/component'; import Settings from '/imports/ui/services/settings'; import { LAYOUT_TYPE } from '../layout/enums'; class ActionsBar extends PureComponent { constructor(props) { super(props); this.state = { isCaptionsReaderMenuModalOpen: false, }; this.setCaptionsReaderMenuModalIsOpen = this.setCaptionsReaderMenuModalIsOpen.bind(this); this.setRenderRaiseHand = this.renderRaiseHand.bind(this); this.actionsBarRef = React.createRef(); this.renderPluginsActionBarItems = this.renderPluginsActionBarItems.bind(this); } setCaptionsReaderMenuModalIsOpen(value) { this.setState({ isCaptionsReaderMenuModalOpen: value }); } renderPluginsActionBarItems(position) { const { actionBarItems } = this.props; return ( <> { actionBarItems.filter((plugin) => plugin.position === position).map((plugin) => { let actionBarItemToReturn; switch (plugin.type) { case ActionsBarItemType.BUTTON: actionBarItemToReturn = (