// Common exports.actions = 'button[data-test="actionsButton"]'; exports.pollMenuButton = 'div[data-test="pollMenuButton"]'; exports.optionsButton = 'button[data-test="optionsButton"]'; exports.settings = 'li[data-test="settings"]'; exports.modalConfirmButton = 'button[data-test="modalConfirmButton"]'; exports.screenshareConnecting = 'div[data-test="screenshareConnecting"]'; exports.screenShareVideo = 'video[id="screenshareVideo"]'; exports.modalDismissButton = 'button[data-test="modalDismissButton"]'; exports.closeModal = 'button[data-test="closeModal"]'; exports.isSharingScreen = 'div[data-test="isSharingScreen"]'; exports.pdfFileName = '100PagesFile.pdf'; exports.raiseHandBtn = 'button[data-test="raiseHandLabel"]'; exports.lowerHandBtn = 'button[data-test="lowerHandLabel"]'; exports.meetingEndedModal = 'div[data-test="meetingEndedModal"]'; exports.logout = 'li[data-test="logout"]'; exports.rating = 'div[data-test="rating"]'; // Accesskey exports.chatButtonKey = 'div[accesskey="P"]'; exports.userListButton = 'button[accesskey="U"]'; // Audio exports.joinAudio = 'button[data-test="joinAudio"]'; exports.audioModal = 'div[data-test="audioModal"]'; exports.listenOnlyButton = 'button[data-test="listenOnlyBtn"]'; exports.connecting = 'span[data-test="connecting"]'; exports.leaveAudio = 'button[data-test="leaveAudio"]'; exports.microphoneButton = 'button[data-test="microphoneBtn"]'; exports.echoYesButton = 'button[data-test="echoYesBtn"]'; exports.connectingToEchoTest = 'span[data-test="connectingToEchoTest"]'; exports.isTalking = 'button[data-test="isTalking"]'; exports.talkingIndicator = 'div[data-test="talkingIndicator"]'; exports.toggleMicrophoneButton = 'button[data-test="toggleMicrophoneButton"]'; // Breakout exports.createBreakoutRooms = 'li[data-test="createBreakoutRooms"]'; exports.randomlyAssign = 'button[data-test="randomlyAssign"]'; exports.breakoutRoomsItem = 'div[data-test="breakoutRoomsItem"]'; exports.alreadyConnected = 'span[data-test="alreadyConnected"]'; exports.askJoinRoom1 = 'button[data-test="askToJoinRoom1"]'; exports.joinRoom1 = 'button[data-test="joinRoom1"]'; exports.allowChoiceRoom = 'input[id="freeJoinCheckbox"]'; exports.labelGeneratingURL = 'span[data-test="labelGeneratingURL"]'; exports.endBreakoutRoomsButton = 'button[data-test="endBreakoutRoomsButton"]'; // Chat exports.chatBox = 'textarea[id="message-input"]'; exports.chatButton = 'div[data-test="chatButton"]'; exports.sendButton = 'button[data-test="sendMessageButton"]'; exports.chatPollMessageText = 'p[data-test="chatPollMessageText"]'; exports.chatMessages = 'div[data-test="chatMessages"]'; exports.chatOptions = 'button[data-test="chatOptionsMenu"]'; exports.chatClear = 'li[data-test="chatClear"]'; exports.chatSave = 'li[data-test="chatSave"]'; exports.chatCopy = 'li[data-test="chatCopy"]'; exports.chatTitle = 'div[data-test="chatTitle"]'; exports.startPrivateChat = 'li[data-test="startPrivateChat"]'; exports.publicChat = 'div[data-test="publicChat"]'; exports.privateChat = 'div[data-test="privateChat"]'; exports.hidePrivateChat = 'button[data-test="hidePrivateChat"]'; exports.closePrivateChat = 'button[data-test="closePrivateChat"]'; exports.typingIndicator = 'span[data-test="typingIndicator"]'; exports.chatUserMessageText = 'p[data-test="chatUserMessageText"]'; exports.chatClearMessageText = 'p[data-test="chatClearMessageText"]'; // Messages exports.message = 'Hello World!'; exports.testMessage = 'Just a test'; exports.message1 = 'Hello User2'; exports.message2 = 'Hello User1'; exports.publicMessage1 = 'This is a Public Message from User1'; exports.publicMessage2 = 'This is a Public Message from User2'; exports.longMessage5000 = '01234567890123456789012345678901234567890123456789'.repeat(100); exports.longMessage5001 = '01234567890123456789012345678901234567890123456789'.repeat(100) + '0'; // CustomParameters exports.audioOptionsButtons = 'span[data-test="audioModalOptions"] > button'; exports.userListContent = 'div[data-test="userListContent"]'; exports.brandingAreaLogo = 'div[data-test="brandingArea"]'; exports.multiUsersWhiteboardOn = 'button[data-test="turnMultiUsersWhiteboardOn"]'; exports.multiUsersWhiteboardOff = 'button[data-test="turnMultiUsersWhiteboardOff"]'; exports.toolbarToolsList = 'div[data-test="toolbarToolsList"]'; exports.notificationBannerBar = 'div[data-test="notificationBannerBar"]'; exports.zoomInBtn = 'button[data-test="zoomInBtn"]'; exports.recordingIndicator = 'div[data-test="recordingIndicator"]'; exports.webcamMirroredVideoContainer = 'video[data-test="mirroredVideoContainer"]'; exports.userslist = 'div[data-test="userList"]'; // Notes exports.sharedNotes = 'div[data-test="sharedNotes"]'; exports.hideNoteLabel = 'button[data-test="hideNoteLabel"]'; exports.etherpadFrame = 'iframe[title="etherpad"]'; exports.etherpadOuter = 'iframe[title="Ether"]'; exports.etherpadInner = 'iframe[title="pad"]'; exports.etherpadEditable = 'body[id="innerdocbody"]'; // Notifications exports.smallToastMsg = 'div[data-test="toastSmallMsg"]'; exports.notificationsTab = 'span[id="notificationTab"]'; exports.chatPopupAlertsBtn = 'input[data-test="chatPopupAlertsBtn"]'; exports.hasUnreadMessages = 'button[data-test="hasUnreadMessages"]'; exports.userJoinPushAlerts = 'input[data-test="userJoinPopupAlerts"]'; exports.toastContainer = 'div[data-test="toastContainer"]'; // Toasts exports.savedSettingsToast = 'Settings have been saved'; exports.publicChatToast = 'New Public Chat message'; exports.privateChatToast = 'New Private Chat message'; exports.joinAudioToast = 'You have joined the audio conference'; exports.pollPublishedToast = 'Poll results were published'; exports.startScreenshareToast = 'Screenshare has started'; exports.endScreenshareToast = 'Screenshare has ended'; exports.joiningMessageToast = 'You have joined the audio conference'; exports.attendeeJoinedToast = 'Attendee joined the session'; exports.raisingHandToast = 'You have raised your hand'; exports.loweringHandToast = 'You have lowered your hand'; // Icons const baseBbbIcon = 'i.icon-bbb-'; exports.unmuteIcon = `${baseBbbIcon}unmute`; exports.listenOnlyIcon = `${baseBbbIcon}listen`; // Polling exports.pollQuestion = 'Are we good ?'; exports.answerMessage = 'All good!'; exports.questionSlideFileName = 'mockPollSlide.pdf'; exports.polling = 'li[data-test="polling"]'; exports.startPoll = 'button[data-test="startPoll"]'; exports.restartPoll = 'button[data-test="restartPoll"]'; exports.hidePollDesc = 'button[data-test="hidePollDesc"]'; exports.pollingContainer = 'div[data-test="pollingContainer"]'; exports.pollLetterAlternatives = 'button[data-test="pollLetterAlternatives"]'; exports.pollOptionItem = 'input[data-test="pollOptionItem"]'; exports.anonymousPoll = 'input[data-test="anonymousPollBtn"]'; exports.publishPollingLabel = 'button[data-test="publishPollingLabel"]'; exports.pollAnswerOptionBtn = 'button[data-test="pollAnswerOption"]'; exports.receivedAnswer = 'td[data-test="receivedAnswer"]'; exports.quickPoll = 'button[data-test="quickPollBtn"]'; exports.pollQuestionArea = 'textarea[data-test="pollQuestionArea"]'; exports.userResponseBtn = 'button[data-test="userResponseBtn"]'; exports.pollAnswerOptionInput = 'input[data-test="pollAnswerOption"]'; exports.pollSubmitAnswer = 'button[data-test="submitAnswer"]'; exports.pollResults = 'g[data-test="pollResultAria"]'; exports.closePollingMenu = 'button[data-test="data-test="closePolling""]'; exports.addPollItem = 'button[data-test="addPollItem"]'; exports.deletePollOption = 'button[data-test="deletePollOption"]'; exports.cancelPollBtn = 'button[data-test="cancelPollLabel"]'; exports.pollYesNoAbstentionBtn = 'button[data-test="pollYesNoAbstentionBtn"]'; // Presentation exports.uploadPresentationFileName = 'uploadTest.png'; exports.presentationPlaceholderLabel = 'Waiting for a presentation to be uploaded'; exports.startScreenSharing = 'button[data-test="startScreenShare"]'; exports.stopScreenSharing = 'button[data-test="stopScreenShare"]'; exports.managePresentations = 'li[data-test="managePresentations"]'; exports.fileUpload = 'input[type="file"]'; exports.presentationToolbarWrapper = 'div[id="presentationToolbarWrapper"]'; exports.nextSlide = 'button[data-test="nextSlide"]'; exports.prevSlide = 'button[data-test="prevSlide"]'; exports.skipSlide = 'select[data-test="skipSlide"]'; exports.allowPresentationDownload = 'button[data-test="allowPresentationDownload"]'; exports.disallowPresentationDownload = 'button[data-test="disallowPresentationDownload"]'; exports.confirmManagePresentation = 'button[data-test="confirmManagePresentation"]'; exports.toastDownload = 'a[data-test="toastDownload"]'; exports.presentationDownloadBtn = 'button[data-test="presentationDownload"]'; exports.removePresentation = 'button[data-test="removePresentation"]'; exports.presentationPlaceholder = 'div[data-test="presentationPlaceholder"]'; exports.presentationContainer = 'div[class^="presentationContainer--"]'; exports.minimizePresentation = 'button[data-test="minimizePresentation"]'; exports.restorePresentation = 'button[data-test="restorePresentation"]'; exports.shareExternalVideoBtn = 'li[data-test="shareExternalVideo"]'; exports.externalVideoModalHeader = 'header[data-test="videoModalHeader"]'; exports.videoModalInput = 'input[id="video-modal-input"]'; exports.startShareVideoBtn = 'button[data-test="startNewVideo"]'; exports.videoPlayer = 'div[data-test="videoPlayer"]'; exports.presentationTitle = 'h1[data-test="presentationTitle"]'; // YouTube frame exports.youtubeLink = 'https://www.youtube.com/watch?v=Hso8yLzkqj8&ab_channel=BigBlueButton'; exports.youtubeFrame = 'iframe[title^="YouTube"]'; exports.ytFrameTitle = 'a[class^="ytp-title-link"]'; // Toasts exports.statingUploadPresentationToast = 'To be uploaded ...'; exports.convertingPresentationFileToast = 'Converting file'; exports.presentationUploadedToast = 'Current presentation'; // Settings exports.languageSelector = 'select[id="langSelector"]'; // User exports.userAvatar = 'div[data-test="userAvatar"]'; exports.moderatorAvatar = 'div[data-test="moderatorAvatar"]'; exports.viewerAvatar = 'div[data-test="viewerAvatar"]'; exports.applauseIcon = `${this.userAvatar} > div > i[class="icon-bbb-applause"]`; exports.awayIcon = `${this.userAvatar} > div > i[class="icon-bbb-time"]`; exports.setStatus = 'li[data-test="setStatus"]'; exports.away = 'li[data-test="away"]'; exports.applaud = 'li[data-test="applause"]'; exports.userListItem = 'div[data-test="userListItem"]'; exports.firstUser = 'div[data-test="userListItemCurrent"]'; exports.multiWhiteboardTool = 'span[data-test="multiWhiteboardTool"]'; exports.manageUsers = 'button[data-test="manageUsers"]'; exports.presenterClassName = 'presenter--'; exports.anyUser = 'div[data-test="userListItem"]'; exports.userList = 'button[data-test="toggleUserList"]'; exports.mobileUser = 'span[data-test="mobileUser"]'; exports.connectionStatusBtn = 'button[data-test="connectionStatusButton"]'; exports.connectionStatusModal = 'div[data-test="connectionStatusModal"]'; exports.dataSavingScreenshare = 'input[data-test="dataSavingScreenshare"]'; exports.screenshareLocked = 'button[data-test="screenshareLocked"]'; exports.connectionStatusItemEmpty = 'div[data-test="connectionStatusItemEmpty"]'; exports.connectionStatusItemUser = 'div[data-test="connectionStatusItemUser"]'; exports.dataSavingWebcams = 'input[data-test="dataSavingWebcams"]'; exports.connectionStatusOfflineUser = 'div[data-test="offlineUser"]'; exports.connectionDataContainer = 'div[data-test="networkDataContainer"]'; exports.avatarsWrapperAvatar = 'div[data-test="avatarsWrapperAvatar"]'; exports.guestPolicyLabel = 'li[data-test="guestPolicyLabel"]'; exports.waitingUsersBtn = 'div[data-test="waitingUsersBtn"]'; exports.joinMeetingDemoPage = 'div[class^="join-meeting"]'; exports.askModerator = 'button[data-test="askModerator"]'; exports.alwaysAccept = 'button[data-test="alwaysAccept"]'; exports.alwaysDeny = 'button[data-test="alwaysDeny"]'; exports.selectRandomUser = 'li[data-test="selectRandomUser"]'; exports.noViewersSelectedMessage = 'div[data-test="noViewersSelectedMessage"]'; exports.selectedUserName = 'div[data-test="selectedUserName"]'; exports.selectAgainRadomUser = 'button[data-test="selectAgainRadomUser"]'; exports.promoteToModerator = 'li[data-test="promoteToModerator"]'; exports.demoteToViewer = 'li[data-test="demoteToViewer"]'; exports.makePresenter = 'li[data-test="makePresenter"]'; exports.takePresenter = 'li[data-test="takePresenter"]'; // Lock Viewers exports.lockViewersButton = 'li[data-test="lockViewersButton"]'; exports.unlockUserButton = 'li[data-test="unlockUserButton"]'; exports.applyLockSettings ='button[data-test="applyLockSettings"]'; exports.lockShareWebcam = 'input[data-test="lockShareWebcam"]'; exports.lockSeeOtherViewersWebcam = 'input[data-test="lockSeeOtherViewersWebcam"]'; exports.lockShareMicrophone = 'input[data-test="lockShareMicrophone"]'; exports.lockPublicChat = 'input[data-test="lockPublicChat"]'; exports.lockPrivateChat = 'input[data-test="lockPrivateChat"]'; exports.lockEditSharedNotes = 'input[data-test="lockEditSharedNotes"]'; exports.lockUserList = 'input[data-test="lockUserList"]'; // Locales exports.locales = ['af', 'ar', 'az', 'bg-BG', 'bn', 'ca', 'cs-CZ', 'da', 'de', 'dv', 'el-GR', 'en', 'eo', 'es', 'es-419', 'es-ES', 'es-MX', 'et', 'eu', 'fa-IR', 'fi', 'fr', 'gl', 'he', 'hi-IN', 'hr', 'hu-HU', 'hy', 'id', 'it-IT', 'ja', 'ka', 'km', 'kn', 'ko-KR', 'lo-LA', 'lt-LT', 'lv', 'ml', 'mn-MN', 'nb-NO', 'nl', 'oc', 'pl-PL', 'pt', 'pt-BR', 'ro-RO', 'ru', 'sk-SK', 'sl', 'sr', 'sv-SE', 'ta', 'te', 'th', 'tr-TR', 'uk-UA', 'vi-VN', 'zh-CN', 'zh-TW' ]; // Webcam exports.joinVideo = 'button[data-test="joinVideo"]'; exports.leaveVideo = 'button[data-test="leaveVideo"]'; exports.videoPreview = 'video[data-test="videoPreview"]'; exports.startSharingWebcam = 'button[data-test="startSharingWebcam"]'; exports.webcamConnecting = 'div[data-test="webcamConnecting"]'; exports.webcamContainer = 'video[data-test="videoContainer"]'; exports.webcamVideoItem = 'div[data-test="webcamVideoItem"]'; exports.webcamItemTalkingUser = 'div[data-test="webcamItemTalkingUser"]'; exports.webcamSettingsModal = 'div[data-test="webcamSettingsModal"]'; exports.dropdownWebcamButton = 'div[data-test="dropdownWebcamButton"]'; exports.webcamMirroredVideoPreview = 'video[data-test="mirroredVideoPreview"]'; // Whiteboard exports.whiteboard = 'svg[data-test="whiteboard"]'; exports.toolsButton = 'button[data-test="toolsBtn"]'; exports.rectangle = 'button[data-test="rectangleTool"]'; exports.drawnRectangle = 'svg g[clip-path] > g:nth-child(2) rect[data-test="drawnRectangle"]'; exports.whiteboardViewBox = 'svg g[clip-path="url(#viewBox)"]'; exports.changeWhiteboardAccess = 'li[data-test="changeWhiteboardAccess"]'; exports.pencil = 'button[data-test="pencilTool"]';