import React, { PureComponent } from 'react'; 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 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-provider-graphql/video-button/container'; import PresentationOptionsContainer from './presentation-options/component'; import RaiseHandDropdownContainer from './raise-hand/container'; import Button from '/imports/ui/components/common/button/component'; import { getSettingsSingletonInstance } from '/imports/ui/services/settings'; import { LAYOUT_TYPE } from '../layout/enums'; class ActionsBar extends PureComponent { constructor(props) { super(props); this.setRenderRaiseHand = this.renderRaiseHand.bind(this); this.actionsBarRef = React.createRef(); this.renderPluginsActionBarItems = this.renderPluginsActionBarItems.bind(this); } renderPluginsActionBarItems(position) { const { actionBarItems } = this.props; return ( <> { actionBarItems.filter((plugin) => plugin.position === position).map((plugin) => { let actionBarItemToReturn; switch (plugin.type) { case ActionsBarItemType.BUTTON: actionBarItemToReturn = (