@100mslive/roomkit-react 0.4.3-alpha.2 → 0.4.3-alpha.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Prebuilt/App.d.ts +0 -1
- package/dist/Prebuilt/AppContext.d.ts +0 -1
- package/dist/index.cjs.css +194 -219
- package/dist/index.cjs.css.map +3 -3
- package/dist/index.cjs.js +8 -56
- package/dist/index.cjs.js.map +3 -3
- package/dist/index.css +194 -219
- package/dist/index.css.map +3 -3
- package/dist/index.js +8 -56
- package/dist/index.js.map +3 -3
- package/dist/meta.cjs.json +23 -41
- package/dist/meta.esbuild.json +23 -41
- package/package.json +8 -9
- package/src/Accordion/Accordion.tsx +0 -88
- package/src/Accordion/index.ts +0 -8
- package/src/AudioLevel/AudioLevel.tsx +0 -84
- package/src/AudioLevel/audio-level.png +0 -0
- package/src/AudioLevel/index.ts +0 -2
- package/src/AudioLevel/useBorderAudioLevel.tsx +0 -34
- package/src/Avatar/Avatar.tsx +0 -60
- package/src/Avatar/getAvatarBg.ts +0 -50
- package/src/Avatar/index.ts +0 -1
- package/src/Button/Button.tsx +0 -210
- package/src/Button/index.tsx +0 -1
- package/src/Checkbox/Checkbox.tsx +0 -35
- package/src/Checkbox/index.tsx +0 -1
- package/src/Collapsible/Collapsible.tsx +0 -34
- package/src/Collapsible/index.tsx +0 -1
- package/src/Diagnostics/AudioTest.tsx +0 -188
- package/src/Diagnostics/BrowserTest.tsx +0 -141
- package/src/Diagnostics/ConnectivityTest.tsx +0 -383
- package/src/Diagnostics/DeviceSelector.jsx +0 -71
- package/src/Diagnostics/Diagnostics.tsx +0 -190
- package/src/Diagnostics/DiagnosticsContext.ts +0 -46
- package/src/Diagnostics/VideoTest.tsx +0 -72
- package/src/Diagnostics/components.tsx +0 -70
- package/src/Diagnostics/index.ts +0 -1
- package/src/Divider/Divider.tsx +0 -45
- package/src/Divider/index.ts +0 -1
- package/src/Dropdown/Dropdown.tsx +0 -145
- package/src/Dropdown/index.tsx +0 -1
- package/src/Fieldset/Fieldset.tsx +0 -11
- package/src/Fieldset/index.tsx +0 -1
- package/src/Footer/Footer.tsx +0 -47
- package/src/Footer/index.tsx +0 -1
- package/src/IconButton/IconButton.tsx +0 -43
- package/src/IconButton/index.tsx +0 -1
- package/src/Input/Input.tsx +0 -109
- package/src/Input/index.tsx +0 -1
- package/src/Label/Label.tsx +0 -8
- package/src/Label/index.ts +0 -1
- package/src/Layout/Box.tsx +0 -3
- package/src/Layout/Flex.tsx +0 -76
- package/src/Layout/index.tsx +0 -2
- package/src/Link/Link.tsx +0 -54
- package/src/Link/index.tsx +0 -2
- package/src/Loading/Loading.tsx +0 -30
- package/src/Loading/index.ts +0 -1
- package/src/Modal/Dialog.tsx +0 -57
- package/src/Modal/DialogContent.tsx +0 -65
- package/src/Modal/index.ts +0 -1
- package/src/Pagination/StyledPagination.tsx +0 -70
- package/src/Pagination/index.tsx +0 -1
- package/src/Popover/index.tsx +0 -34
- package/src/Prebuilt/App.tsx +0 -323
- package/src/Prebuilt/AppContext.tsx +0 -34
- package/src/Prebuilt/AppStateContext.tsx +0 -95
- package/src/Prebuilt/IconButton.tsx +0 -26
- package/src/Prebuilt/common/PeersSorter.ts +0 -111
- package/src/Prebuilt/common/constants.ts +0 -151
- package/src/Prebuilt/common/hooks.ts +0 -257
- package/src/Prebuilt/common/utils.js +0 -185
- package/src/Prebuilt/components/AppData/AppData.tsx +0 -208
- package/src/Prebuilt/components/AppData/useChatState.js +0 -18
- package/src/Prebuilt/components/AppData/useSheet.ts +0 -33
- package/src/Prebuilt/components/AppData/useSidepane.js +0 -99
- package/src/Prebuilt/components/AppData/useSidepaneResetOnLayoutUpdate.tsx +0 -22
- package/src/Prebuilt/components/AppData/useUISettings.js +0 -212
- package/src/Prebuilt/components/AudioVideoToggle.tsx +0 -411
- package/src/Prebuilt/components/AuthToken.tsx +0 -148
- package/src/Prebuilt/components/CaptionIcon.tsx +0 -27
- package/src/Prebuilt/components/Chat/ArrowNavigation.tsx +0 -44
- package/src/Prebuilt/components/Chat/Chat.tsx +0 -190
- package/src/Prebuilt/components/Chat/ChatActions.tsx +0 -314
- package/src/Prebuilt/components/Chat/ChatBody.tsx +0 -493
- package/src/Prebuilt/components/Chat/ChatFooter.tsx +0 -316
- package/src/Prebuilt/components/Chat/ChatSelector.tsx +0 -228
- package/src/Prebuilt/components/Chat/ChatSelectorContainer.tsx +0 -158
- package/src/Prebuilt/components/Chat/ChatStates.tsx +0 -73
- package/src/Prebuilt/components/Chat/EmptyChat.tsx +0 -58
- package/src/Prebuilt/components/Chat/MwebChatOption.tsx +0 -24
- package/src/Prebuilt/components/Chat/PinnedMessage.tsx +0 -140
- package/src/Prebuilt/components/Chat/StickIndicator.tsx +0 -24
- package/src/Prebuilt/components/Chat/useEmojiPickerStyles.js +0 -32
- package/src/Prebuilt/components/Chat/useUnreadCount.ts +0 -19
- package/src/Prebuilt/components/Chat/utils.ts +0 -11
- package/src/Prebuilt/components/ChatSettings.tsx +0 -68
- package/src/Prebuilt/components/Chip.tsx +0 -40
- package/src/Prebuilt/components/ConferenceScreen.tsx +0 -205
- package/src/Prebuilt/components/Connection/ConnectionIndicator.tsx +0 -89
- package/src/Prebuilt/components/Connection/TileConnection.tsx +0 -93
- package/src/Prebuilt/components/Connection/connectionQualityUtils.js +0 -37
- package/src/Prebuilt/components/EmojiReaction.jsx +0 -100
- package/src/Prebuilt/components/EndCallFeedback/Feedback.tsx +0 -71
- package/src/Prebuilt/components/EndCallFeedback/FeedbackForm.tsx +0 -381
- package/src/Prebuilt/components/EndCallFeedback/ThankyouView.tsx +0 -64
- package/src/Prebuilt/components/ErrorBoundary.jsx +0 -102
- package/src/Prebuilt/components/Footer/ChatToggle.tsx +0 -53
- package/src/Prebuilt/components/Footer/EmojiCard.jsx +0 -34
- package/src/Prebuilt/components/Footer/Footer.tsx +0 -115
- package/src/Prebuilt/components/Footer/PaginatedParticipants.tsx +0 -124
- package/src/Prebuilt/components/Footer/ParticipantList.tsx +0 -478
- package/src/Prebuilt/components/Footer/PollsToggle.tsx +0 -37
- package/src/Prebuilt/components/Footer/RoleAccordion.tsx +0 -183
- package/src/Prebuilt/components/Footer/RoleOptions.tsx +0 -215
- package/src/Prebuilt/components/Footer/WhiteboardToggle.tsx +0 -52
- package/src/Prebuilt/components/FullPageProgress.tsx +0 -22
- package/src/Prebuilt/components/HMSVideo/Controls.jsx +0 -22
- package/src/Prebuilt/components/HMSVideo/FullscreenButton.tsx +0 -13
- package/src/Prebuilt/components/HMSVideo/HLSAutoplayBlockedPrompt.tsx +0 -72
- package/src/Prebuilt/components/HMSVideo/HLSCaptionSelector.tsx +0 -15
- package/src/Prebuilt/components/HMSVideo/HLSQualitySelector.tsx +0 -248
- package/src/Prebuilt/components/HMSVideo/HMSVideo.jsx +0 -75
- package/src/Prebuilt/components/HMSVideo/MwebHLSViewTitle.tsx +0 -86
- package/src/Prebuilt/components/HMSVideo/PlayPauseButton.tsx +0 -27
- package/src/Prebuilt/components/HMSVideo/PlayPauseSeekControls.tsx +0 -158
- package/src/Prebuilt/components/HMSVideo/PlayerContext.tsx +0 -15
- package/src/Prebuilt/components/HMSVideo/SeekControl.tsx +0 -22
- package/src/Prebuilt/components/HMSVideo/VideoProgress.tsx +0 -100
- package/src/Prebuilt/components/HMSVideo/VideoTime.tsx +0 -52
- package/src/Prebuilt/components/HMSVideo/VolumeControl.tsx +0 -70
- package/src/Prebuilt/components/HMSVideo/index.ts +0 -24
- package/src/Prebuilt/components/HMSVideo/utils.ts +0 -37
- package/src/Prebuilt/components/Header/Header.tsx +0 -52
- package/src/Prebuilt/components/Header/HeaderComponents.jsx +0 -57
- package/src/Prebuilt/components/Header/ParticipantFilter.jsx +0 -89
- package/src/Prebuilt/components/Header/RoomDetailsHeader.tsx +0 -51
- package/src/Prebuilt/components/Header/StreamActions.tsx +0 -297
- package/src/Prebuilt/components/Header/common.jsx +0 -196
- package/src/Prebuilt/components/Header/index.tsx +0 -1
- package/src/Prebuilt/components/HlsStatsOverlay.jsx +0 -89
- package/src/Prebuilt/components/IconButtonWithOptions/IconButtonWithOptions.tsx +0 -167
- package/src/Prebuilt/components/Input/KeyboardInputManager.js +0 -107
- package/src/Prebuilt/components/InsetTile.tsx +0 -136
- package/src/Prebuilt/components/LayoutModeSelector.tsx +0 -112
- package/src/Prebuilt/components/Leave/DesktopLeaveRoom.tsx +0 -166
- package/src/Prebuilt/components/Leave/EndSessionContent.tsx +0 -64
- package/src/Prebuilt/components/Leave/LeaveAtoms.tsx +0 -26
- package/src/Prebuilt/components/Leave/LeaveCard.tsx +0 -36
- package/src/Prebuilt/components/Leave/LeaveRoom.tsx +0 -82
- package/src/Prebuilt/components/Leave/LeaveSessionContent.tsx +0 -61
- package/src/Prebuilt/components/Leave/MwebLeaveRoom.tsx +0 -135
- package/src/Prebuilt/components/LeaveScreen.tsx +0 -71
- package/src/Prebuilt/components/MoreSettings/ActionTile.jsx +0 -60
- package/src/Prebuilt/components/MoreSettings/BulkRoleChangeModal.jsx +0 -139
- package/src/Prebuilt/components/MoreSettings/CaptionContent.tsx +0 -143
- package/src/Prebuilt/components/MoreSettings/CaptionModal.tsx +0 -37
- package/src/Prebuilt/components/MoreSettings/ChangeNameContent.tsx +0 -123
- package/src/Prebuilt/components/MoreSettings/ChangeNameModal.tsx +0 -78
- package/src/Prebuilt/components/MoreSettings/EmbedUrl.jsx +0 -81
- package/src/Prebuilt/components/MoreSettings/FullScreenItem.tsx +0 -26
- package/src/Prebuilt/components/MoreSettings/MoreSettings.tsx +0 -29
- package/src/Prebuilt/components/MoreSettings/MuteAllContent.tsx +0 -81
- package/src/Prebuilt/components/MoreSettings/MuteAllModal.tsx +0 -72
- package/src/Prebuilt/components/MoreSettings/SplitComponents/DesktopOptions.tsx +0 -282
- package/src/Prebuilt/components/MoreSettings/SplitComponents/MwebOptions.tsx +0 -387
- package/src/Prebuilt/components/MoreSettings/constants.ts +0 -14
- package/src/Prebuilt/components/MwebLandscapePrompt.tsx +0 -81
- package/src/Prebuilt/components/Notifications/AutoplayBlockedModal.tsx +0 -39
- package/src/Prebuilt/components/Notifications/ChatNotifications.tsx +0 -34
- package/src/Prebuilt/components/Notifications/DeviceChangeNotifications.tsx +0 -18
- package/src/Prebuilt/components/Notifications/DeviceInUseError.tsx +0 -86
- package/src/Prebuilt/components/Notifications/ErrorNotifications.tsx +0 -56
- package/src/Prebuilt/components/Notifications/HLSFailureModal.tsx +0 -71
- package/src/Prebuilt/components/Notifications/HandRaisedNotifications.tsx +0 -78
- package/src/Prebuilt/components/Notifications/InitErrorModal.tsx +0 -42
- package/src/Prebuilt/components/Notifications/MessageNotifications.tsx +0 -24
- package/src/Prebuilt/components/Notifications/Notifications.tsx +0 -65
- package/src/Prebuilt/components/Notifications/PeerNotifications.tsx +0 -52
- package/src/Prebuilt/components/Notifications/PermissionErrorModal.tsx +0 -144
- package/src/Prebuilt/components/Notifications/PollNotificationModal.tsx +0 -71
- package/src/Prebuilt/components/Notifications/ReconnectNotifications.tsx +0 -33
- package/src/Prebuilt/components/Notifications/RoleChangeNotification.tsx +0 -24
- package/src/Prebuilt/components/Notifications/TrackBulkUnmuteModal.tsx +0 -61
- package/src/Prebuilt/components/Notifications/TrackNotifications.tsx +0 -41
- package/src/Prebuilt/components/Notifications/TrackUnmuteModal.tsx +0 -63
- package/src/Prebuilt/components/Notifications/TranscriptionNotifications.tsx +0 -58
- package/src/Prebuilt/components/Notifications/index.tsx +0 -1
- package/src/Prebuilt/components/PIP/PIPChat.tsx +0 -292
- package/src/Prebuilt/components/PIP/PIPChatOption.tsx +0 -18
- package/src/Prebuilt/components/PIP/PIPComponent.tsx +0 -90
- package/src/Prebuilt/components/PIP/PIPManager.ts +0 -335
- package/src/Prebuilt/components/PIP/PIPProvider.tsx +0 -56
- package/src/Prebuilt/components/PIP/PIPWindow.tsx +0 -13
- package/src/Prebuilt/components/PIP/SetupMediaSession.js +0 -60
- package/src/Prebuilt/components/PIP/context.ts +0 -10
- package/src/Prebuilt/components/PIP/index.jsx +0 -6
- package/src/Prebuilt/components/PIP/pip.test.js +0 -72
- package/src/Prebuilt/components/PIP/pipUtils.js +0 -183
- package/src/Prebuilt/components/PIP/usePIPChat.tsx +0 -105
- package/src/Prebuilt/components/PIP/usePIPWindow.tsx +0 -12
- package/src/Prebuilt/components/Pagination.tsx +0 -60
- package/src/Prebuilt/components/Polls/CreatePollQuiz/PollsQuizMenu.tsx +0 -248
- package/src/Prebuilt/components/Polls/CreateQuestions/CreateQuestions.jsx +0 -142
- package/src/Prebuilt/components/Polls/CreateQuestions/DeleteQuestionModal.tsx +0 -74
- package/src/Prebuilt/components/Polls/CreateQuestions/QuestionForm.tsx +0 -324
- package/src/Prebuilt/components/Polls/CreateQuestions/SavedQuestion.tsx +0 -64
- package/src/Prebuilt/components/Polls/Polls.tsx +0 -31
- package/src/Prebuilt/components/Polls/Voting/LeaderboardEntry.tsx +0 -76
- package/src/Prebuilt/components/Polls/Voting/LeaderboardSummary.tsx +0 -116
- package/src/Prebuilt/components/Polls/Voting/PeerParticipationSummary.tsx +0 -60
- package/src/Prebuilt/components/Polls/Voting/QuestionCard.jsx +0 -221
- package/src/Prebuilt/components/Polls/Voting/StandardVoting.tsx +0 -47
- package/src/Prebuilt/components/Polls/Voting/StatisticBox.tsx +0 -20
- package/src/Prebuilt/components/Polls/Voting/TimedVoting.tsx +0 -55
- package/src/Prebuilt/components/Polls/Voting/Voting.tsx +0 -143
- package/src/Prebuilt/components/Polls/Voting/useQuizSummary.tsx +0 -50
- package/src/Prebuilt/components/Polls/common/Line.tsx +0 -4
- package/src/Prebuilt/components/Polls/common/MultipleChoiceOptions.jsx +0 -115
- package/src/Prebuilt/components/Polls/common/OptionInputWithDelete.tsx +0 -38
- package/src/Prebuilt/components/Polls/common/SingleChoiceOptions.jsx +0 -140
- package/src/Prebuilt/components/Polls/common/StatusIndicator.tsx +0 -35
- package/src/Prebuilt/components/Polls/common/VoteCount.tsx +0 -15
- package/src/Prebuilt/components/Polls/common/VoteProgress.tsx +0 -18
- package/src/Prebuilt/components/Polls/common/constants.ts +0 -5
- package/src/Prebuilt/components/Polls/common/utils.ts +0 -22
- package/src/Prebuilt/components/Preview/PreviewForm.tsx +0 -94
- package/src/Prebuilt/components/Preview/PreviewJoin.tsx +0 -292
- package/src/Prebuilt/components/Preview/PreviewScreen.tsx +0 -38
- package/src/Prebuilt/components/PreviousRoleInMetadata.tsx +0 -20
- package/src/Prebuilt/components/RaiseHand.tsx +0 -30
- package/src/Prebuilt/components/RemoveParticipant.tsx +0 -35
- package/src/Prebuilt/components/RoleChangeModal.tsx +0 -188
- package/src/Prebuilt/components/RoleChangeRequest/RequestPrompt.tsx +0 -75
- package/src/Prebuilt/components/RoleChangeRequest/RoleChangeRequestModal.tsx +0 -94
- package/src/Prebuilt/components/RoomDetails/Duration.tsx +0 -26
- package/src/Prebuilt/components/RoomDetails/RoomDetailsPane.tsx +0 -63
- package/src/Prebuilt/components/RoomDetails/RoomDetailsRow.tsx +0 -23
- package/src/Prebuilt/components/RoomDetails/RoomDetailsSheet.tsx +0 -45
- package/src/Prebuilt/components/ScreenShareToggle.jsx +0 -58
- package/src/Prebuilt/components/ScreenshareDisplay.tsx +0 -39
- package/src/Prebuilt/components/ScreenshareTile.tsx +0 -134
- package/src/Prebuilt/components/SecondaryTiles.tsx +0 -81
- package/src/Prebuilt/components/Settings/DeviceSettings.jsx +0 -208
- package/src/Prebuilt/components/Settings/LayoutSettings.tsx +0 -74
- package/src/Prebuilt/components/Settings/NotificationSettings.tsx +0 -66
- package/src/Prebuilt/components/Settings/SettingsModal.jsx +0 -301
- package/src/Prebuilt/components/Settings/StartRecording.jsx +0 -101
- package/src/Prebuilt/components/Settings/SwitchWithLabel.tsx +0 -53
- package/src/Prebuilt/components/Settings/common.ts +0 -16
- package/src/Prebuilt/components/ShareMenuIcon.jsx +0 -27
- package/src/Prebuilt/components/SidePaneTabs.tsx +0 -214
- package/src/Prebuilt/components/StatsForNerds.jsx +0 -373
- package/src/Prebuilt/components/Streaming/Common.jsx +0 -143
- package/src/Prebuilt/components/Streaming/ResolutionInput.jsx +0 -88
- package/src/Prebuilt/components/TileMenu/TileMenu.tsx +0 -148
- package/src/Prebuilt/components/TileMenu/TileMenuContent.tsx +0 -393
- package/src/Prebuilt/components/TileMenu/utils.ts +0 -7
- package/src/Prebuilt/components/Toast/Toast.jsx +0 -17
- package/src/Prebuilt/components/Toast/ToastBatcher.js +0 -64
- package/src/Prebuilt/components/Toast/ToastConfig.jsx +0 -177
- package/src/Prebuilt/components/Toast/ToastContainer.jsx +0 -30
- package/src/Prebuilt/components/Toast/ToastManager.js +0 -44
- package/src/Prebuilt/components/VideoLayouts/EqualProminence.tsx +0 -62
- package/src/Prebuilt/components/VideoLayouts/Grid.tsx +0 -43
- package/src/Prebuilt/components/VideoLayouts/GridLayout.tsx +0 -155
- package/src/Prebuilt/components/VideoLayouts/ProminenceLayout.tsx +0 -91
- package/src/Prebuilt/components/VideoLayouts/RoleProminence.tsx +0 -66
- package/src/Prebuilt/components/VideoLayouts/ScreenshareLayout.tsx +0 -74
- package/src/Prebuilt/components/VideoLayouts/WhiteboardLayout.tsx +0 -93
- package/src/Prebuilt/components/VideoLayouts/interface.ts +0 -11
- package/src/Prebuilt/components/VideoTile.tsx +0 -203
- package/src/Prebuilt/components/VirtualBackground/VBCollection.tsx +0 -52
- package/src/Prebuilt/components/VirtualBackground/VBHandler.tsx +0 -130
- package/src/Prebuilt/components/VirtualBackground/VBOption.tsx +0 -57
- package/src/Prebuilt/components/VirtualBackground/VBPicker.tsx +0 -252
- package/src/Prebuilt/components/VirtualBackground/VBToggle.tsx +0 -50
- package/src/Prebuilt/components/hooks/useAudioOutputTest.tsx +0 -20
- package/src/Prebuilt/components/hooks/useAutoStartStreaming.tsx +0 -70
- package/src/Prebuilt/components/hooks/useChatBlacklist.ts +0 -29
- package/src/Prebuilt/components/hooks/useCloseScreenshareWhiteboard.tsx +0 -17
- package/src/Prebuilt/components/hooks/useDropdownList.ts +0 -24
- package/src/Prebuilt/components/hooks/useDropdownSelection.jsx +0 -3
- package/src/Prebuilt/components/hooks/useFullscreen.ts +0 -46
- package/src/Prebuilt/components/hooks/useGroupOnStageActions.tsx +0 -54
- package/src/Prebuilt/components/hooks/useMetadata.tsx +0 -56
- package/src/Prebuilt/components/hooks/usePeerOnStageActions.tsx +0 -49
- package/src/Prebuilt/components/hooks/usePinnedBy.tsx +0 -22
- package/src/Prebuilt/components/hooks/usePinnedMessages.ts +0 -78
- package/src/Prebuilt/components/hooks/usePlaylist.js +0 -25
- package/src/Prebuilt/components/hooks/usePlaylistMusic.js +0 -35
- package/src/Prebuilt/components/hooks/useRedirectToLeave.tsx +0 -23
- package/src/Prebuilt/components/hooks/useRoleProminencePeers.tsx +0 -39
- package/src/Prebuilt/components/hooks/useScreenshareAudio.js +0 -28
- package/src/Prebuilt/components/hooks/useTileLayout.tsx +0 -128
- package/src/Prebuilt/components/hooks/useUnreadPollQuizPresent.tsx +0 -17
- package/src/Prebuilt/components/hooks/useUserPreferences.jsx +0 -26
- package/src/Prebuilt/components/hooks/useVideoTileLayout.ts +0 -26
- package/src/Prebuilt/components/init/Init.jsx +0 -31
- package/src/Prebuilt/components/pdfAnnotator/pdfFileOptions.jsx +0 -42
- package/src/Prebuilt/components/pdfAnnotator/pdfHeader.jsx +0 -31
- package/src/Prebuilt/components/pdfAnnotator/pdfInfo.jsx +0 -32
- package/src/Prebuilt/components/pdfAnnotator/shareScreenOptions.jsx +0 -211
- package/src/Prebuilt/components/pdfAnnotator/submitPdf.jsx +0 -48
- package/src/Prebuilt/components/pdfAnnotator/uploadedFile.jsx +0 -71
- package/src/Prebuilt/components/peerTileUtils.tsx +0 -42
- package/src/Prebuilt/images/android-perm-1.png +0 -0
- package/src/Prebuilt/images/empty-chat.svg +0 -12
- package/src/Prebuilt/images/ios-perm-0.png +0 -0
- package/src/Prebuilt/images/pdf-share.png +0 -0
- package/src/Prebuilt/images/rtmp.png +0 -0
- package/src/Prebuilt/images/screen-share.png +0 -0
- package/src/Prebuilt/images/transaction_error.svg +0 -12
- package/src/Prebuilt/index.ts +0 -1
- package/src/Prebuilt/layouts/EmbedView.jsx +0 -94
- package/src/Prebuilt/layouts/HLSView.jsx +0 -794
- package/src/Prebuilt/layouts/PDFView.jsx +0 -67
- package/src/Prebuilt/layouts/Sheet.tsx +0 -14
- package/src/Prebuilt/layouts/SidePane.tsx +0 -241
- package/src/Prebuilt/layouts/VideoStreamingSection.tsx +0 -164
- package/src/Prebuilt/layouts/WaitingView.tsx +0 -52
- package/src/Prebuilt/plugins/CaptionsViewer.tsx +0 -261
- package/src/Prebuilt/plugins/FlyingEmoji.jsx +0 -154
- package/src/Prebuilt/plugins/RemoteStopScreenshare.jsx +0 -18
- package/src/Prebuilt/plugins/transcription/Transcriber.js +0 -216
- package/src/Prebuilt/plugins/transcription/TranscriptionButton.jsx +0 -138
- package/src/Prebuilt/plugins/transcription/index.jsx +0 -1
- package/src/Prebuilt/primitives/DialogContent.jsx +0 -285
- package/src/Prebuilt/primitives/DropdownTrigger.jsx +0 -46
- package/src/Prebuilt/provider/roomLayoutProvider/constants/index.ts +0 -60
- package/src/Prebuilt/provider/roomLayoutProvider/hooks/useFetchRoomLayout.ts +0 -88
- package/src/Prebuilt/provider/roomLayoutProvider/hooks/useInsetEnabled.ts +0 -10
- package/src/Prebuilt/provider/roomLayoutProvider/hooks/useRoomLayoutScreen.ts +0 -112
- package/src/Prebuilt/provider/roomLayoutProvider/index.tsx +0 -53
- package/src/Prebuilt/services/FeatureFlags.jsx +0 -46
- package/src/Progress/index.tsx +0 -17
- package/src/QRCode/QRCode.tsx +0 -6
- package/src/QRCode/index.tsx +0 -1
- package/src/RadioGroup/RadioGroup.tsx +0 -33
- package/src/RadioGroup/index.tsx +0 -1
- package/src/ReactSelect/ReactSelect.tsx +0 -97
- package/src/ReactSelect/index.ts +0 -1
- package/src/Select/Select.tsx +0 -63
- package/src/Select/index.ts +0 -1
- package/src/Sheet/Sheet.tsx +0 -122
- package/src/Sheet/index.ts +0 -1
- package/src/Slider/Slider.tsx +0 -70
- package/src/Slider/index.ts +0 -1
- package/src/Stats/Stats.tsx +0 -243
- package/src/Stats/StyledStats.tsx +0 -57
- package/src/Stats/formatBytes.ts +0 -19
- package/src/Stats/index.tsx +0 -2
- package/src/Stats/useQoE.ts +0 -79
- package/src/Switch/Switch.tsx +0 -52
- package/src/Switch/index.ts +0 -1
- package/src/Tabs/Tabs.tsx +0 -41
- package/src/Tabs/index.tsx +0 -1
- package/src/Text/Text.tsx +0 -149
- package/src/Text/index.tsx +0 -1
- package/src/TextArea/TextArea.tsx +0 -30
- package/src/TextArea/index.tsx +0 -1
- package/src/Theme/ThemeProvider.tsx +0 -98
- package/src/Theme/base.config.ts +0 -236
- package/src/Theme/index.tsx +0 -2
- package/src/Theme/stitches.config.ts +0 -88
- package/src/Theme/useSSR.tsx +0 -24
- package/src/TileMenu/StyledMenuTile.tsx +0 -105
- package/src/TileMenu/TileMenu.tsx +0 -98
- package/src/TileMenu/index.tsx +0 -1
- package/src/Toast/Toast.tsx +0 -170
- package/src/Toast/index.tsx +0 -1
- package/src/Tooltip/Tooltip.tsx +0 -79
- package/src/Tooltip/index.ts +0 -1
- package/src/Video/Video.tsx +0 -61
- package/src/Video/index.tsx +0 -1
- package/src/VideoList/StyledVideoList.tsx +0 -39
- package/src/VideoList/index.tsx +0 -2
- package/src/VideoList/videoListUtils.tsx +0 -20
- package/src/VideoTile/StyledVideoTile.tsx +0 -146
- package/src/VideoTile/index.tsx +0 -1
- package/src/context/DialogContext.tsx +0 -13
- package/src/fixtures/chats.ts +0 -25
- package/src/fixtures/peers.ts +0 -27
- package/src/fixtures/tracks.ts +0 -11
- package/src/hooks/useDialogContainerSelector.tsx +0 -7
- package/src/index.ts +0 -41
- package/src/store/SetupFakeStore.ts +0 -33
- package/src/store/StorybookSDK.ts +0 -231
- package/src/utils/animations.ts +0 -114
- package/src/utils/index.ts +0 -2
- package/src/utils/styles.ts +0 -22
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import React, { useEffect } from 'react';
|
|
2
|
-
// eslint-disable-next-line
|
|
3
|
-
import { HMSVirtualBackgroundTypes } from '@100mslive/hms-virtual-background/hmsvbplugin';
|
|
4
|
-
import {
|
|
5
|
-
selectAppData,
|
|
6
|
-
selectIsEffectsEnabled,
|
|
7
|
-
selectIsLocalVideoEnabled,
|
|
8
|
-
selectIsVBEnabled,
|
|
9
|
-
useAVToggle,
|
|
10
|
-
useHMSActions,
|
|
11
|
-
useHMSStore,
|
|
12
|
-
} from '@100mslive/react-sdk';
|
|
13
|
-
import { VirtualBackgroundIcon } from '@100mslive/react-icons';
|
|
14
|
-
import { Loading } from '../../../Loading';
|
|
15
|
-
import { Tooltip } from '../../../Tooltip';
|
|
16
|
-
import IconButton from '../../IconButton';
|
|
17
|
-
import { VBHandler } from './VBHandler';
|
|
18
|
-
// @ts-ignore
|
|
19
|
-
import { useIsSidepaneTypeOpen, useSidepaneToggle } from '../AppData/useSidepane';
|
|
20
|
-
import { APP_DATA, isSafari, SIDE_PANE_OPTIONS } from '../../common/constants';
|
|
21
|
-
|
|
22
|
-
export const VBToggle = () => {
|
|
23
|
-
const toggleVB = useSidepaneToggle(SIDE_PANE_OPTIONS.VB);
|
|
24
|
-
const isVBOpen = useIsSidepaneTypeOpen(SIDE_PANE_OPTIONS.VB);
|
|
25
|
-
const isVideoOn = useHMSStore(selectIsLocalVideoEnabled);
|
|
26
|
-
const isVBEnabled = useHMSStore(selectIsVBEnabled);
|
|
27
|
-
const isEffectsEnabled = useHMSStore(selectIsEffectsEnabled);
|
|
28
|
-
const loadingEffects = useHMSStore(selectAppData(APP_DATA.loadingEffects));
|
|
29
|
-
const hmsActions = useHMSActions();
|
|
30
|
-
const { toggleVideo } = useAVToggle();
|
|
31
|
-
|
|
32
|
-
useEffect(() => {
|
|
33
|
-
if (!toggleVideo) {
|
|
34
|
-
VBHandler?.reset();
|
|
35
|
-
hmsActions.setAppData(APP_DATA.background, HMSVirtualBackgroundTypes.NONE);
|
|
36
|
-
}
|
|
37
|
-
}, [hmsActions, toggleVideo]);
|
|
38
|
-
|
|
39
|
-
if (!isVideoOn || (!isEffectsEnabled && isSafari) || !isVBEnabled) {
|
|
40
|
-
return null;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
return (
|
|
44
|
-
<Tooltip side="top" disabled={isVBOpen} title="Configure Virtual Background">
|
|
45
|
-
<IconButton active={!isVBOpen} onClick={toggleVB} data-testid="virtual_bg_btn">
|
|
46
|
-
{loadingEffects ? <Loading size={18} /> : <VirtualBackgroundIcon />}
|
|
47
|
-
</IconButton>
|
|
48
|
-
</Tooltip>
|
|
49
|
-
);
|
|
50
|
-
};
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { useEffect, useRef, useState } from 'react';
|
|
2
|
-
|
|
3
|
-
export const useAudioOutputTest = ({ deviceId }: { deviceId: string }) => {
|
|
4
|
-
const audioRef = useRef<HTMLAudioElement | null>(null);
|
|
5
|
-
const [playing, setPlaying] = useState(false);
|
|
6
|
-
useEffect(() => {
|
|
7
|
-
if (audioRef.current && deviceId) {
|
|
8
|
-
try {
|
|
9
|
-
// @ts-ignore
|
|
10
|
-
if (typeof audioRef.current.setSinkId !== 'undefined') {
|
|
11
|
-
// @ts-ignore
|
|
12
|
-
audioRef.current.setSinkId(deviceId);
|
|
13
|
-
}
|
|
14
|
-
} catch (error) {
|
|
15
|
-
console.log(error);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
}, [deviceId]);
|
|
19
|
-
return { playing, setPlaying, audioRef };
|
|
20
|
-
};
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useRef } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
selectIsConnectedToRoom,
|
|
4
|
-
selectPermissions,
|
|
5
|
-
useHMSActions,
|
|
6
|
-
useHMSStore,
|
|
7
|
-
useRecordingStreaming,
|
|
8
|
-
} from '@100mslive/react-sdk';
|
|
9
|
-
// @ts-ignore: No implicit Any
|
|
10
|
-
import { useSetAppDataByKey } from '../AppData/useUISettings';
|
|
11
|
-
// @ts-ignore: No implicit Any
|
|
12
|
-
import { useShowStreamingUI } from '../../common/hooks';
|
|
13
|
-
// @ts-ignore: No implicit Any
|
|
14
|
-
import { APP_DATA } from '../../common/constants';
|
|
15
|
-
|
|
16
|
-
export const useAutoStartStreaming = () => {
|
|
17
|
-
const [isHLSStarted, setHLSStarted] = useSetAppDataByKey(APP_DATA.hlsStarted);
|
|
18
|
-
const permissions = useHMSStore(selectPermissions);
|
|
19
|
-
const showStreamingUI = useShowStreamingUI();
|
|
20
|
-
const hmsActions = useHMSActions();
|
|
21
|
-
const isConnected = useHMSStore(selectIsConnectedToRoom);
|
|
22
|
-
const { isHLSRunning, isRTMPRunning, isHLSRecordingOn, isBrowserRecordingOn } = useRecordingStreaming();
|
|
23
|
-
const streamStartedRef = useRef(false);
|
|
24
|
-
|
|
25
|
-
const startHLS = useCallback(async () => {
|
|
26
|
-
try {
|
|
27
|
-
if (
|
|
28
|
-
isHLSStarted ||
|
|
29
|
-
!showStreamingUI ||
|
|
30
|
-
isHLSRunning ||
|
|
31
|
-
isRTMPRunning ||
|
|
32
|
-
isHLSRecordingOn ||
|
|
33
|
-
isBrowserRecordingOn
|
|
34
|
-
) {
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
setHLSStarted(true);
|
|
38
|
-
streamStartedRef.current = true;
|
|
39
|
-
await hmsActions.startHLSStreaming();
|
|
40
|
-
} catch (error) {
|
|
41
|
-
console.error(error);
|
|
42
|
-
streamStartedRef.current = false;
|
|
43
|
-
setHLSStarted(false);
|
|
44
|
-
}
|
|
45
|
-
}, [
|
|
46
|
-
hmsActions,
|
|
47
|
-
isHLSRunning,
|
|
48
|
-
isHLSStarted,
|
|
49
|
-
setHLSStarted,
|
|
50
|
-
showStreamingUI,
|
|
51
|
-
isRTMPRunning,
|
|
52
|
-
isHLSRecordingOn,
|
|
53
|
-
isBrowserRecordingOn,
|
|
54
|
-
]);
|
|
55
|
-
|
|
56
|
-
useEffect(() => {
|
|
57
|
-
if (!isHLSStarted && !isHLSRunning) {
|
|
58
|
-
streamStartedRef.current = false;
|
|
59
|
-
}
|
|
60
|
-
}, [isHLSStarted, isHLSRunning]);
|
|
61
|
-
|
|
62
|
-
useEffect(() => {
|
|
63
|
-
if (!isConnected || streamStartedRef.current || !permissions?.hlsStreaming) {
|
|
64
|
-
return;
|
|
65
|
-
}
|
|
66
|
-
// Is a streaming kit and peer with streaming permissions joins
|
|
67
|
-
startHLS();
|
|
68
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
69
|
-
}, [isConnected]);
|
|
70
|
-
};
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { useCallback } from 'react';
|
|
2
|
-
import { selectLocalPeer, selectSessionStore, useHMSActions, useHMSStore } from '@100mslive/react-sdk';
|
|
3
|
-
// @ts-ignore
|
|
4
|
-
import { ToastManager } from '../Toast/ToastManager';
|
|
5
|
-
import { SESSION_STORE_KEY } from '../../common/constants';
|
|
6
|
-
|
|
7
|
-
export const useChatBlacklist = (
|
|
8
|
-
sessionStoreKey: SESSION_STORE_KEY.CHAT_MESSAGE_BLACKLIST | SESSION_STORE_KEY.CHAT_PEER_BLACKLIST,
|
|
9
|
-
) => {
|
|
10
|
-
const hmsActions = useHMSActions();
|
|
11
|
-
const blacklistedIDs = useHMSStore(selectSessionStore(sessionStoreKey));
|
|
12
|
-
|
|
13
|
-
const blacklistItem = useCallback(
|
|
14
|
-
async (blacklistID: string) => {
|
|
15
|
-
await hmsActions.sessionStore
|
|
16
|
-
.set(sessionStoreKey, [...(blacklistedIDs || []), blacklistID])
|
|
17
|
-
.catch(err => ToastManager.addToast({ title: err.description }));
|
|
18
|
-
},
|
|
19
|
-
[hmsActions, sessionStoreKey, blacklistedIDs],
|
|
20
|
-
);
|
|
21
|
-
|
|
22
|
-
return { blacklistItem, blacklistedIDs };
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
export const useIsPeerBlacklisted = ({ local = false, peerCustomerUserId = '' }) => {
|
|
26
|
-
const localPeer = useHMSStore(selectLocalPeer);
|
|
27
|
-
const blacklistedPeerIDs = useHMSStore(selectSessionStore(SESSION_STORE_KEY.CHAT_PEER_BLACKLIST)) || [];
|
|
28
|
-
return blacklistedPeerIDs?.includes(local ? localPeer?.customerUserId : peerCustomerUserId);
|
|
29
|
-
};
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { useEffect } from 'react';
|
|
2
|
-
import { selectPeerScreenSharing, useHMSStore, useWhiteboard } from '@100mslive/react-sdk';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* close existing whiteboard when a screen is shared
|
|
6
|
-
*/
|
|
7
|
-
export const useCloseScreenshareWhiteboard = () => {
|
|
8
|
-
const peerSharing = useHMSStore(selectPeerScreenSharing);
|
|
9
|
-
const { isOwner: isWhiteboardOwner, toggle: toggleWhiteboard } = useWhiteboard();
|
|
10
|
-
|
|
11
|
-
// if both screenshare and whiteboard are open, close the whiteboard
|
|
12
|
-
useEffect(() => {
|
|
13
|
-
if (isWhiteboardOwner && peerSharing) {
|
|
14
|
-
toggleWhiteboard?.();
|
|
15
|
-
}
|
|
16
|
-
}, [isWhiteboardOwner, toggleWhiteboard, peerSharing]);
|
|
17
|
-
};
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { useEffect } from 'react';
|
|
2
|
-
// @ts-ignore: No implicit Any
|
|
3
|
-
import { useSetAppDataByKey } from '../AppData/useUISettings';
|
|
4
|
-
import { APP_DATA } from '../../common/constants';
|
|
5
|
-
|
|
6
|
-
export const useDropdownList = ({ name, open }: { name: string; open: boolean }) => {
|
|
7
|
-
const [dropdownList = [], setDropdownList] = useSetAppDataByKey(APP_DATA.dropdownList);
|
|
8
|
-
|
|
9
|
-
useEffect(() => {
|
|
10
|
-
if (open) {
|
|
11
|
-
if (!dropdownList.includes(name)) {
|
|
12
|
-
setDropdownList([...dropdownList, name]);
|
|
13
|
-
}
|
|
14
|
-
} else {
|
|
15
|
-
const index = dropdownList.indexOf(name);
|
|
16
|
-
if (index >= 0) {
|
|
17
|
-
const newDropdownList = [...dropdownList];
|
|
18
|
-
newDropdownList.splice(index, 1);
|
|
19
|
-
setDropdownList(newDropdownList);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
23
|
-
}, [open, name]);
|
|
24
|
-
};
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useState } from 'react';
|
|
2
|
-
import screenfull from 'screenfull';
|
|
3
|
-
// @ts-ignore: No implicit any
|
|
4
|
-
import { ToastManager } from '../Toast/ToastManager';
|
|
5
|
-
import { DEFAULT_PORTAL_CONTAINER } from '../../common/constants';
|
|
6
|
-
|
|
7
|
-
export const useFullscreen = () => {
|
|
8
|
-
const [isFullScreenEnabled, setIsFullScreenEnabled] = useState(screenfull.isFullscreen);
|
|
9
|
-
|
|
10
|
-
const toggle = useCallback(async () => {
|
|
11
|
-
if (!screenfull.isEnabled) {
|
|
12
|
-
ToastManager.addToast({ title: 'Fullscreen feature not supported' });
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
try {
|
|
16
|
-
const container = document.querySelector(DEFAULT_PORTAL_CONTAINER);
|
|
17
|
-
if (isFullScreenEnabled) {
|
|
18
|
-
await screenfull.exit();
|
|
19
|
-
} else if (container) {
|
|
20
|
-
await screenfull.request(container);
|
|
21
|
-
}
|
|
22
|
-
} catch (err) {
|
|
23
|
-
ToastManager.addToast({ title: (err as Error).message });
|
|
24
|
-
}
|
|
25
|
-
}, [isFullScreenEnabled]);
|
|
26
|
-
|
|
27
|
-
useEffect(() => {
|
|
28
|
-
const onChange = () => {
|
|
29
|
-
setIsFullScreenEnabled(screenfull.isFullscreen);
|
|
30
|
-
};
|
|
31
|
-
if (screenfull.isEnabled) {
|
|
32
|
-
screenfull.on('change', onChange);
|
|
33
|
-
}
|
|
34
|
-
return () => {
|
|
35
|
-
if (screenfull.isEnabled) {
|
|
36
|
-
screenfull.off('change', onChange);
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
}, []);
|
|
40
|
-
|
|
41
|
-
return {
|
|
42
|
-
allowed: screenfull.isEnabled,
|
|
43
|
-
isFullscreen: isFullScreenEnabled,
|
|
44
|
-
toggleFullscreen: toggle,
|
|
45
|
-
};
|
|
46
|
-
};
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { match, P } from 'ts-pattern';
|
|
2
|
-
import { HMSPeer, selectPermissions, useHMSActions, useHMSStore } from '@100mslive/react-sdk';
|
|
3
|
-
import { useRoomLayoutConferencingScreen } from '../../provider/roomLayoutProvider/hooks/useRoomLayoutScreen';
|
|
4
|
-
|
|
5
|
-
export const useGroupOnStageActions = ({ peers }: { peers: HMSPeer[] }) => {
|
|
6
|
-
const hmsActions = useHMSActions();
|
|
7
|
-
const { elements } = useRoomLayoutConferencingScreen();
|
|
8
|
-
const {
|
|
9
|
-
bring_to_stage_label,
|
|
10
|
-
remove_from_stage_label,
|
|
11
|
-
on_stage_role,
|
|
12
|
-
off_stage_roles = [],
|
|
13
|
-
skip_preview_for_role_change = false,
|
|
14
|
-
} = elements.on_stage_exp || {};
|
|
15
|
-
const canChangeRole = useHMSStore(selectPermissions)?.changeRole;
|
|
16
|
-
|
|
17
|
-
const offStageRolePeers = peers.filter(peer =>
|
|
18
|
-
match({ on_stage_role, bring_to_stage_label, roleName: peer.roleName })
|
|
19
|
-
.with(
|
|
20
|
-
{
|
|
21
|
-
on_stage_role: P.when(role => !!role),
|
|
22
|
-
bring_to_stage_label: P.when(label => !!label),
|
|
23
|
-
roleName: P.when(role => !!role && off_stage_roles.includes(role)),
|
|
24
|
-
},
|
|
25
|
-
() => true,
|
|
26
|
-
)
|
|
27
|
-
.otherwise(() => false),
|
|
28
|
-
);
|
|
29
|
-
|
|
30
|
-
const lowerAllHands = async () => {
|
|
31
|
-
return Promise.all(peers.map(peer => hmsActions.lowerRemotePeerHand(peer.id)));
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
const bringAllToStage = () => {
|
|
35
|
-
if (!canChangeRole || !on_stage_role) {
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
return Promise.all(
|
|
39
|
-
offStageRolePeers.map(peer => {
|
|
40
|
-
return hmsActions.changeRoleOfPeer(peer.id, on_stage_role, skip_preview_for_role_change).then(() => {
|
|
41
|
-
return skip_preview_for_role_change ? hmsActions.lowerRemotePeerHand(peer.id) : null;
|
|
42
|
-
});
|
|
43
|
-
}),
|
|
44
|
-
);
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
return {
|
|
48
|
-
lowerAllHands,
|
|
49
|
-
bringAllToStage,
|
|
50
|
-
canBringToStage: canChangeRole && offStageRolePeers.length > 0,
|
|
51
|
-
bring_to_stage_label,
|
|
52
|
-
remove_from_stage_label,
|
|
53
|
-
};
|
|
54
|
-
};
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { useCallback } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
selectHasPeerHandRaised,
|
|
4
|
-
selectLocalPeerID,
|
|
5
|
-
selectPeerMetadata,
|
|
6
|
-
useHMSActions,
|
|
7
|
-
useHMSStore,
|
|
8
|
-
useHMSVanillaStore,
|
|
9
|
-
} from '@100mslive/react-sdk';
|
|
10
|
-
|
|
11
|
-
export const useMyMetadata = () => {
|
|
12
|
-
const hmsActions = useHMSActions();
|
|
13
|
-
const localPeerId = useHMSStore(selectLocalPeerID);
|
|
14
|
-
const vanillaStore = useHMSVanillaStore();
|
|
15
|
-
const metaData = useHMSStore(selectPeerMetadata(localPeerId));
|
|
16
|
-
const isHandRaised = useHMSStore(selectHasPeerHandRaised(localPeerId));
|
|
17
|
-
|
|
18
|
-
const update = async (updatedFields: Record<string, any>) => {
|
|
19
|
-
try {
|
|
20
|
-
// get current state from store and merge updated fields
|
|
21
|
-
const currentMetadata = vanillaStore.getState(selectPeerMetadata(localPeerId));
|
|
22
|
-
await hmsActions.changeMetadata(Object.assign(currentMetadata, updatedFields));
|
|
23
|
-
return true;
|
|
24
|
-
} catch (error) {
|
|
25
|
-
console.error('failed to update metadata ', updatedFields);
|
|
26
|
-
}
|
|
27
|
-
return false;
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
const toggleHandRaise = useCallback(async () => {
|
|
31
|
-
if (isHandRaised) {
|
|
32
|
-
await hmsActions.lowerLocalPeerHand();
|
|
33
|
-
await update({ handRaisedAt: undefined });
|
|
34
|
-
} else {
|
|
35
|
-
await hmsActions.raiseLocalPeerHand();
|
|
36
|
-
await update({ isBRBOn: false, handRaisedAt: Date.now() });
|
|
37
|
-
}
|
|
38
|
-
}, [isHandRaised]); //eslint-disable-line
|
|
39
|
-
|
|
40
|
-
const toggleBRB = useCallback(async () => {
|
|
41
|
-
const newValue = !metaData?.isBRBOn;
|
|
42
|
-
await update({ isBRBOn: newValue });
|
|
43
|
-
if (newValue) {
|
|
44
|
-
await hmsActions.lowerLocalPeerHand();
|
|
45
|
-
}
|
|
46
|
-
}, [metaData?.isBRBOn]); //eslint-disable-line
|
|
47
|
-
|
|
48
|
-
return {
|
|
49
|
-
isHandRaised,
|
|
50
|
-
isBRBOn: !!metaData?.isBRBOn,
|
|
51
|
-
metaData,
|
|
52
|
-
updateMetaData: update,
|
|
53
|
-
toggleHandRaise,
|
|
54
|
-
toggleBRB,
|
|
55
|
-
};
|
|
56
|
-
};
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { useState } from 'react';
|
|
2
|
-
import { selectPeerMetadata, selectPermissions, useHMSActions, useHMSStore } from '@100mslive/react-sdk';
|
|
3
|
-
import { useRoomLayoutConferencingScreen } from '../../provider/roomLayoutProvider/hooks/useRoomLayoutScreen';
|
|
4
|
-
|
|
5
|
-
export const usePeerOnStageActions = ({ peerId, role }: { peerId: string; role: string }) => {
|
|
6
|
-
const hmsActions = useHMSActions();
|
|
7
|
-
const { elements } = useRoomLayoutConferencingScreen();
|
|
8
|
-
const {
|
|
9
|
-
bring_to_stage_label,
|
|
10
|
-
remove_from_stage_label,
|
|
11
|
-
on_stage_role,
|
|
12
|
-
off_stage_roles = [],
|
|
13
|
-
skip_preview_for_role_change = false,
|
|
14
|
-
} = elements.on_stage_exp || {};
|
|
15
|
-
const isInStage = role === on_stage_role;
|
|
16
|
-
const canChangeRole = useHMSStore(selectPermissions)?.changeRole;
|
|
17
|
-
const shouldShowStageRoleChange =
|
|
18
|
-
canChangeRole &&
|
|
19
|
-
((isInStage && remove_from_stage_label) || (off_stage_roles?.includes(role) && bring_to_stage_label));
|
|
20
|
-
const prevRole = useHMSStore(selectPeerMetadata(peerId))?.prevRole;
|
|
21
|
-
const [open, setOpen] = useState(false);
|
|
22
|
-
|
|
23
|
-
const lowerPeerHand = async () => {
|
|
24
|
-
await hmsActions.lowerRemotePeerHand(peerId);
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
const handleStageAction = async () => {
|
|
28
|
-
if (isInStage) {
|
|
29
|
-
prevRole && hmsActions.changeRoleOfPeer(peerId, prevRole, true);
|
|
30
|
-
} else if (on_stage_role) {
|
|
31
|
-
await hmsActions.changeRoleOfPeer(peerId, on_stage_role, skip_preview_for_role_change);
|
|
32
|
-
if (skip_preview_for_role_change) {
|
|
33
|
-
await lowerPeerHand();
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
setOpen(false);
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
return {
|
|
40
|
-
open,
|
|
41
|
-
setOpen,
|
|
42
|
-
lowerPeerHand,
|
|
43
|
-
handleStageAction,
|
|
44
|
-
shouldShowStageRoleChange,
|
|
45
|
-
isInStage,
|
|
46
|
-
bring_to_stage_label,
|
|
47
|
-
remove_from_stage_label,
|
|
48
|
-
};
|
|
49
|
-
};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { useEffect, useState } from 'react';
|
|
2
|
-
import { selectSessionStore, useHMSStore } from '@100mslive/react-sdk';
|
|
3
|
-
import { PinnedMessage } from './usePinnedMessages';
|
|
4
|
-
import { SESSION_STORE_KEY } from '../../common/constants';
|
|
5
|
-
|
|
6
|
-
export const usePinnedBy = (messageId: string) => {
|
|
7
|
-
const pinnedMessages = useHMSStore(selectSessionStore(SESSION_STORE_KEY.PINNED_MESSAGES));
|
|
8
|
-
const [pinnedBy, setPinnedBy] = useState('');
|
|
9
|
-
|
|
10
|
-
useEffect(() => {
|
|
11
|
-
let match = '';
|
|
12
|
-
pinnedMessages?.forEach((pinnedMessage: PinnedMessage) => {
|
|
13
|
-
if (pinnedMessage.id === messageId) {
|
|
14
|
-
match = pinnedMessage.pinnedBy;
|
|
15
|
-
}
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
setPinnedBy(match);
|
|
19
|
-
}, [messageId, pinnedMessages]);
|
|
20
|
-
|
|
21
|
-
return pinnedBy;
|
|
22
|
-
};
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import { useCallback } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
HMSMessage,
|
|
4
|
-
selectPeerNameByID,
|
|
5
|
-
selectSessionStore,
|
|
6
|
-
useHMSActions,
|
|
7
|
-
useHMSVanillaStore,
|
|
8
|
-
} from '@100mslive/react-sdk';
|
|
9
|
-
// @ts-ignore
|
|
10
|
-
import { ToastManager } from '../Toast/ToastManager';
|
|
11
|
-
// @ts-ignore
|
|
12
|
-
import { SESSION_STORE_KEY } from '../../common/constants';
|
|
13
|
-
|
|
14
|
-
export type PinnedMessage = {
|
|
15
|
-
text: string;
|
|
16
|
-
id: string;
|
|
17
|
-
pinnedBy: string;
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* set pinned chat message by updating the session store
|
|
22
|
-
*/
|
|
23
|
-
export const usePinnedMessages = () => {
|
|
24
|
-
const hmsActions = useHMSActions();
|
|
25
|
-
const vanillaStore = useHMSVanillaStore();
|
|
26
|
-
|
|
27
|
-
const setPinnedMessages = useCallback(
|
|
28
|
-
async (message: HMSMessage, pinnedBy: string) => {
|
|
29
|
-
const peerName = vanillaStore.getState(selectPeerNameByID(message?.sender)) || message?.senderName;
|
|
30
|
-
const newPinnedMessage = { text: '', id: message.id, pinnedBy };
|
|
31
|
-
|
|
32
|
-
if (message && peerName) {
|
|
33
|
-
newPinnedMessage['text'] = `${peerName}: ${message.message}`;
|
|
34
|
-
} else if (message) {
|
|
35
|
-
newPinnedMessage['text'] = message.message;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
const pinnedMessages = vanillaStore.getState(selectSessionStore(SESSION_STORE_KEY.PINNED_MESSAGES)) || [];
|
|
39
|
-
if (!pinnedMessages?.find((pinnedMessage: PinnedMessage) => pinnedMessage.id === newPinnedMessage.id)) {
|
|
40
|
-
await hmsActions.sessionStore
|
|
41
|
-
.set(SESSION_STORE_KEY.PINNED_MESSAGES, [...pinnedMessages, newPinnedMessage].slice(-3)) // Limiting to maximum of 3 messages - FIFO
|
|
42
|
-
.catch(err => ToastManager.addToast({ title: err.description }));
|
|
43
|
-
}
|
|
44
|
-
},
|
|
45
|
-
[hmsActions, vanillaStore],
|
|
46
|
-
);
|
|
47
|
-
|
|
48
|
-
const removePinnedMessage = useCallback(
|
|
49
|
-
async (indexToRemove: number) => {
|
|
50
|
-
const pinnedMessages = vanillaStore.getState(selectSessionStore(SESSION_STORE_KEY.PINNED_MESSAGES)) || [];
|
|
51
|
-
if (pinnedMessages[indexToRemove]) {
|
|
52
|
-
await hmsActions.sessionStore
|
|
53
|
-
.set(
|
|
54
|
-
SESSION_STORE_KEY.PINNED_MESSAGES,
|
|
55
|
-
pinnedMessages.filter((_: PinnedMessage, index: number) => index !== indexToRemove),
|
|
56
|
-
)
|
|
57
|
-
.catch(err => ToastManager.addToast({ title: err.description }));
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
|
-
[hmsActions, vanillaStore],
|
|
61
|
-
);
|
|
62
|
-
|
|
63
|
-
const unpinBlacklistedMessages = useCallback(
|
|
64
|
-
async (blacklistedMessageIDSet: Set<string>) => {
|
|
65
|
-
const pinnedMessages = vanillaStore.getState(selectSessionStore(SESSION_STORE_KEY.PINNED_MESSAGES)) || [];
|
|
66
|
-
const filteredPinnedMessages = pinnedMessages?.filter(
|
|
67
|
-
(pinnedMessage: PinnedMessage) => !blacklistedMessageIDSet?.has(pinnedMessage.id),
|
|
68
|
-
);
|
|
69
|
-
|
|
70
|
-
await hmsActions.sessionStore
|
|
71
|
-
.set(SESSION_STORE_KEY.PINNED_MESSAGES, filteredPinnedMessages)
|
|
72
|
-
.catch(err => ToastManager.addToast({ title: err.description }));
|
|
73
|
-
},
|
|
74
|
-
[hmsActions, vanillaStore],
|
|
75
|
-
);
|
|
76
|
-
|
|
77
|
-
return { setPinnedMessages, removePinnedMessage, unpinBlacklistedMessages };
|
|
78
|
-
};
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
HMSPlaylistType,
|
|
3
|
-
selectAudioPlaylist,
|
|
4
|
-
selectVideoPlaylist,
|
|
5
|
-
useHMSActions,
|
|
6
|
-
useHMSStore,
|
|
7
|
-
} from '@100mslive/react-sdk';
|
|
8
|
-
|
|
9
|
-
export const usePlaylist = type => {
|
|
10
|
-
const isAudioPlaylist = type === HMSPlaylistType.audio;
|
|
11
|
-
const selector = isAudioPlaylist ? selectAudioPlaylist : selectVideoPlaylist;
|
|
12
|
-
const active = useHMSStore(selector.selectedItem);
|
|
13
|
-
const selection = useHMSStore(selector.selection);
|
|
14
|
-
const playlist = useHMSStore(selector.list);
|
|
15
|
-
const hmsActions = useHMSActions();
|
|
16
|
-
const playlistAction = isAudioPlaylist ? hmsActions.audioPlaylist : hmsActions.videoPlaylist;
|
|
17
|
-
|
|
18
|
-
return {
|
|
19
|
-
active,
|
|
20
|
-
hasNext: selection.hasNext,
|
|
21
|
-
hasPrevious: selection.hasPrevious,
|
|
22
|
-
actions: playlistAction,
|
|
23
|
-
list: playlist,
|
|
24
|
-
};
|
|
25
|
-
};
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { useCallback } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
selectAudioPlaylist,
|
|
4
|
-
selectAudioPlaylistTrackByPeerID,
|
|
5
|
-
selectPeerSharingAudioPlaylist,
|
|
6
|
-
useHMSActions,
|
|
7
|
-
useHMSStore,
|
|
8
|
-
} from '@100mslive/react-sdk';
|
|
9
|
-
|
|
10
|
-
export const usePlaylistMusic = () => {
|
|
11
|
-
const peer = useHMSStore(selectPeerSharingAudioPlaylist);
|
|
12
|
-
const track = useHMSStore(selectAudioPlaylistTrackByPeerID(peer?.id));
|
|
13
|
-
const selection = useHMSStore(selectAudioPlaylist.selectedItem);
|
|
14
|
-
const hmsActions = useHMSActions();
|
|
15
|
-
|
|
16
|
-
const play = useCallback(
|
|
17
|
-
async selectedId => {
|
|
18
|
-
await hmsActions.audioPlaylist.play(selectedId);
|
|
19
|
-
},
|
|
20
|
-
[hmsActions],
|
|
21
|
-
);
|
|
22
|
-
|
|
23
|
-
const pause = useCallback(() => {
|
|
24
|
-
hmsActions.audioPlaylist.pause();
|
|
25
|
-
}, [hmsActions]);
|
|
26
|
-
|
|
27
|
-
const setVolume = useCallback(
|
|
28
|
-
value => {
|
|
29
|
-
hmsActions.setVolume(value, track?.id);
|
|
30
|
-
},
|
|
31
|
-
[hmsActions, track],
|
|
32
|
-
);
|
|
33
|
-
|
|
34
|
-
return { selection, peer, track, play, pause, setVolume };
|
|
35
|
-
};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { useCallback } from 'react';
|
|
2
|
-
import { useHMSPrebuiltContext } from '../../AppContext';
|
|
3
|
-
// @ts-ignore: No implicit Any
|
|
4
|
-
import { PictureInPicture } from '../PIP/PIPManager';
|
|
5
|
-
// @ts-ignore: No implicit Any
|
|
6
|
-
import { ToastManager } from '../Toast/ToastManager';
|
|
7
|
-
|
|
8
|
-
export const useRedirectToLeave = () => {
|
|
9
|
-
const { onLeave } = useHMSPrebuiltContext();
|
|
10
|
-
|
|
11
|
-
const redirect = useCallback(
|
|
12
|
-
(timeout = 0) => {
|
|
13
|
-
setTimeout(() => {
|
|
14
|
-
PictureInPicture.stop().catch(() => console.error('stopping pip'));
|
|
15
|
-
ToastManager.clearAllToast();
|
|
16
|
-
onLeave?.();
|
|
17
|
-
}, timeout);
|
|
18
|
-
},
|
|
19
|
-
[onLeave],
|
|
20
|
-
);
|
|
21
|
-
|
|
22
|
-
return { redirectToLeave: redirect };
|
|
23
|
-
};
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { useMemo } from 'react';
|
|
2
|
-
import { HMSPeer } from '@100mslive/react-sdk';
|
|
3
|
-
// @ts-ignore: No implicit Any
|
|
4
|
-
import { usePinnedTrack } from '../AppData/useUISettings';
|
|
5
|
-
|
|
6
|
-
export const useRoleProminencePeers = (prominentRoles: string[], peers: HMSPeer[], isInsetEnabled: boolean) => {
|
|
7
|
-
const pinnedTrack = usePinnedTrack();
|
|
8
|
-
|
|
9
|
-
const [prominentPeers, secondaryPeers] = useMemo(() => {
|
|
10
|
-
return peers.reduce<[HMSPeer[], HMSPeer[]]>(
|
|
11
|
-
(acc, peer) => {
|
|
12
|
-
if (pinnedTrack) {
|
|
13
|
-
if (pinnedTrack.peerId === peer.id) {
|
|
14
|
-
acc[0].push(peer);
|
|
15
|
-
} else if (!(isInsetEnabled && peer.isLocal)) {
|
|
16
|
-
acc[1].push(peer);
|
|
17
|
-
}
|
|
18
|
-
return acc;
|
|
19
|
-
}
|
|
20
|
-
if (peer.isLocal && isInsetEnabled && !prominentRoles?.includes(peer.roleName || '')) {
|
|
21
|
-
return acc;
|
|
22
|
-
}
|
|
23
|
-
if (prominentRoles?.includes(peer.roleName || '')) {
|
|
24
|
-
acc[0].push(peer);
|
|
25
|
-
} else {
|
|
26
|
-
acc[1].push(peer);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
return acc;
|
|
30
|
-
},
|
|
31
|
-
[[], []],
|
|
32
|
-
);
|
|
33
|
-
}, [peers, isInsetEnabled, prominentRoles, pinnedTrack]);
|
|
34
|
-
|
|
35
|
-
return {
|
|
36
|
-
prominentPeers,
|
|
37
|
-
secondaryPeers,
|
|
38
|
-
};
|
|
39
|
-
};
|