import React, { PureComponent } from 'react'; import CaptionsButtonContainer from '/imports/ui/components/captions/button/container'; import deviceInfo from '/imports/utils/deviceInfo'; import * as PluginSdk from 'bigbluebutton-html-plugin-sdk'; import Styled from './styles'; import ActionsDropdown from './actions-dropdown/container'; import AudioCaptionsButtonContainer from '/imports/ui/components/audio/captions/button/container'; 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-controls/container'; 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'; 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, index) => { let actionBarItemToReturn; switch (plugin.type) { case PluginSdk.ActionsBarItemType.BUTTON: actionBarItemToReturn = (