@100mslive/react-native-room-kit 0.2.0 → 1.0.1
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/README.md +2 -11
- package/lib/commonjs/HMSInstanceSetup.js +2 -2
- package/lib/commonjs/HMSInstanceSetup.js.map +1 -1
- package/lib/commonjs/HMSPrebuilt.js +8 -10
- package/lib/commonjs/HMSPrebuilt.js.map +1 -1
- package/lib/commonjs/HMSRoomSetup.js +30 -33
- package/lib/commonjs/HMSRoomSetup.js.map +1 -1
- package/lib/commonjs/Icons/AlertTriangle/assets/alert-triangle-filled.png +0 -0
- package/lib/commonjs/Icons/AlertTriangle/assets/alert-triangle-filled@2x.png +0 -0
- package/lib/commonjs/Icons/AlertTriangle/assets/alert-triangle-filled@3x.png +0 -0
- package/lib/commonjs/Icons/AlertTriangle/index.js +2 -1
- package/lib/commonjs/Icons/AlertTriangle/index.js.map +1 -1
- package/lib/commonjs/Icons/Chevron/index.js +5 -1
- package/lib/commonjs/Icons/Chevron/index.js.map +1 -1
- package/lib/commonjs/Icons/Eye/assets/eye-on-small.png +0 -0
- package/lib/commonjs/Icons/Eye/assets/eye-on-small@2x.png +0 -0
- package/lib/commonjs/Icons/Eye/assets/eye-on-small@3x.png +0 -0
- package/lib/commonjs/Icons/Eye/index.js +35 -0
- package/lib/commonjs/Icons/Eye/index.js.map +1 -0
- package/lib/commonjs/Icons/Leave/index.js +5 -1
- package/lib/commonjs/Icons/Leave/index.js.map +1 -1
- package/lib/commonjs/Icons/Person/assets/person-left.png +0 -0
- package/lib/commonjs/Icons/Person/assets/person-left@2x.png +0 -0
- package/lib/commonjs/Icons/Person/assets/person-left@3x.png +0 -0
- package/lib/commonjs/Icons/Person/assets/person-off.png +0 -0
- package/lib/commonjs/Icons/Person/assets/person-off@2x.png +0 -0
- package/lib/commonjs/Icons/Person/assets/person-off@3x.png +0 -0
- package/lib/commonjs/Icons/Person/assets/person-rectangle.png +0 -0
- package/lib/commonjs/Icons/Person/assets/person-rectangle@2x.png +0 -0
- package/lib/commonjs/Icons/Person/assets/person-rectangle@3x.png +0 -0
- package/lib/commonjs/Icons/Person/index.js +2 -1
- package/lib/commonjs/Icons/Person/index.js.map +1 -1
- package/lib/commonjs/Icons/Search/assets/search.png +0 -0
- package/lib/commonjs/Icons/Search/assets/search@2x.png +0 -0
- package/lib/commonjs/Icons/Search/assets/search@3x.png +0 -0
- package/lib/commonjs/Icons/Search/index.js +34 -0
- package/lib/commonjs/Icons/Search/index.js.map +1 -0
- package/lib/commonjs/Icons/WelcomeHand/assets/welcome-hand.png +0 -0
- package/lib/commonjs/Icons/WelcomeHand/assets/welcome-hand@2x.png +0 -0
- package/lib/commonjs/Icons/WelcomeHand/assets/welcome-hand@3x.png +0 -0
- package/lib/commonjs/Icons/WelcomeHand/index.js +30 -0
- package/lib/commonjs/Icons/WelcomeHand/index.js.map +1 -0
- package/lib/commonjs/Icons/index.js +33 -0
- package/lib/commonjs/Icons/index.js.map +1 -1
- package/lib/commonjs/assets/audio-level-white.json +1271 -0
- package/lib/commonjs/assets/empty-chat-illustration/empty-chat.png +0 -0
- package/lib/commonjs/assets/empty-chat-illustration/empty-chat@2x.png +0 -0
- package/lib/commonjs/assets/empty-chat-illustration/empty-chat@3x.png +0 -0
- package/lib/commonjs/components/AnimatedFooter.js +35 -0
- package/lib/commonjs/components/AnimatedFooter.js.map +1 -0
- package/lib/commonjs/components/AnimatedHLSFooter.js +36 -0
- package/lib/commonjs/components/AnimatedHLSFooter.js.map +1 -0
- package/lib/commonjs/components/AnimatedHeader.js +44 -0
- package/lib/commonjs/components/AnimatedHeader.js.map +1 -0
- package/lib/commonjs/components/AvatarView.js +2 -2
- package/lib/commonjs/components/AvatarView.js.map +1 -1
- package/lib/commonjs/components/BackButton.js +2 -2
- package/lib/commonjs/components/BackButton.js.map +1 -1
- package/lib/commonjs/components/BottomSheet.js +8 -5
- package/lib/commonjs/components/BottomSheet.js.map +1 -1
- package/lib/commonjs/components/ChangeNameModalContent.js +14 -7
- package/lib/commonjs/components/ChangeNameModalContent.js.map +1 -1
- package/lib/commonjs/components/Chat/ChatBanner.js +37 -57
- package/lib/commonjs/components/Chat/ChatBanner.js.map +1 -1
- package/lib/commonjs/components/Chat/ChatFilterBottomSheetOpener.js +82 -0
- package/lib/commonjs/components/Chat/ChatFilterBottomSheetOpener.js.map +1 -0
- package/lib/commonjs/components/Chat/ChatFilterBottomSheetView.js +68 -0
- package/lib/commonjs/components/Chat/ChatFilterBottomSheetView.js.map +1 -0
- package/lib/commonjs/components/Chat/ChatFilterItem.js +70 -0
- package/lib/commonjs/components/Chat/ChatFilterItem.js.map +1 -0
- package/lib/commonjs/components/Chat/ChatFilterView.js +197 -0
- package/lib/commonjs/components/Chat/ChatFilterView.js.map +1 -0
- package/lib/commonjs/components/Chat/ChatList.js +9 -10
- package/lib/commonjs/components/Chat/ChatList.js.map +1 -1
- package/lib/commonjs/components/Chat/ChatMessage.js +38 -139
- package/lib/commonjs/components/Chat/ChatMessage.js.map +1 -1
- package/lib/commonjs/components/Chat/PinnedMessage.js +41 -45
- package/lib/commonjs/components/Chat/PinnedMessage.js.map +1 -1
- package/lib/commonjs/components/ChatAndParticipants/ChatAndParticipantsBottomSheet.js +42 -0
- package/lib/commonjs/components/ChatAndParticipants/ChatAndParticipantsBottomSheet.js.map +1 -0
- package/lib/commonjs/components/ChatAndParticipants/ChatAndParticipantsHeader.js +105 -0
- package/lib/commonjs/components/ChatAndParticipants/ChatAndParticipantsHeader.js.map +1 -0
- package/lib/commonjs/components/ChatAndParticipants/ChatAndParticipantsView.js +65 -0
- package/lib/commonjs/components/ChatAndParticipants/ChatAndParticipantsView.js.map +1 -0
- package/lib/commonjs/components/ChatAndParticipants/ChatView.js +36 -0
- package/lib/commonjs/components/ChatAndParticipants/ChatView.js.map +1 -0
- package/lib/commonjs/components/ChatAndParticipants/ParticipantsView.js +40 -0
- package/lib/commonjs/components/ChatAndParticipants/ParticipantsView.js.map +1 -0
- package/lib/commonjs/components/ChatAndParticipants/index.js +17 -0
- package/lib/commonjs/components/ChatAndParticipants/index.js.map +1 -0
- package/lib/commonjs/components/CompanyLogo.js +4 -3
- package/lib/commonjs/components/CompanyLogo.js.map +1 -1
- package/lib/commonjs/components/DefaultModal.js +2 -6
- package/lib/commonjs/components/DefaultModal.js.map +1 -1
- package/lib/commonjs/components/DisplayView.js +8 -21
- package/lib/commonjs/components/DisplayView.js.map +1 -1
- package/lib/commonjs/components/EndRoomModalContent.js +22 -8
- package/lib/commonjs/components/EndRoomModalContent.js.map +1 -1
- package/lib/commonjs/components/Footer.js +40 -32
- package/lib/commonjs/components/Footer.js.map +1 -1
- package/lib/commonjs/components/FullScreenVideoView.js +74 -0
- package/lib/commonjs/components/FullScreenVideoView.js.map +1 -0
- package/lib/commonjs/components/GridView.js +132 -52
- package/lib/commonjs/components/GridView.js.map +1 -1
- package/lib/commonjs/components/HLSFooter.js +35 -0
- package/lib/commonjs/components/HLSFooter.js.map +1 -0
- package/lib/commonjs/components/HLSView.js +12 -24
- package/lib/commonjs/components/HLSView.js.map +1 -1
- package/lib/commonjs/components/HMSBaseButton.js +2 -2
- package/lib/commonjs/components/HMSBaseButton.js.map +1 -1
- package/lib/commonjs/components/HMSChat.js +17 -16
- package/lib/commonjs/components/HMSChat.js.map +1 -1
- package/lib/commonjs/components/HMSDangerButton.js +4 -3
- package/lib/commonjs/components/HMSDangerButton.js.map +1 -1
- package/lib/commonjs/components/HMSHLSMessage.js +66 -0
- package/lib/commonjs/components/HMSHLSMessage.js.map +1 -0
- package/lib/commonjs/components/HMSHLSMessageList.js +58 -0
- package/lib/commonjs/components/HMSHLSMessageList.js.map +1 -0
- package/lib/commonjs/components/HMSHLSNotStarted.js +3 -8
- package/lib/commonjs/components/HMSHLSNotStarted.js.map +1 -1
- package/lib/commonjs/components/HMSHLSStreamLoading.js +6 -4
- package/lib/commonjs/components/HMSHLSStreamLoading.js.map +1 -1
- package/lib/commonjs/components/HMSHandRaiseNotification.js +84 -0
- package/lib/commonjs/components/HMSHandRaiseNotification.js.map +1 -0
- package/lib/commonjs/components/HMSKeyboardAvoidingView.js +48 -0
- package/lib/commonjs/components/HMSKeyboardAvoidingView.js.map +1 -0
- package/lib/commonjs/components/HMSLiveIndicator.js +104 -0
- package/lib/commonjs/components/HMSLiveIndicator.js.map +1 -0
- package/lib/commonjs/components/HMSLocalScreenshareNotification.js +38 -0
- package/lib/commonjs/components/HMSLocalScreenshareNotification.js.map +1 -0
- package/lib/commonjs/components/HMSLocalVideoView.js +6 -25
- package/lib/commonjs/components/HMSLocalVideoView.js.map +1 -1
- package/lib/commonjs/components/HMSManageAudioOutput.js +9 -3
- package/lib/commonjs/components/HMSManageAudioOutput.js.map +1 -1
- package/lib/commonjs/components/HMSManageCameraRotation.js +2 -2
- package/lib/commonjs/components/HMSManageCameraRotation.js.map +1 -1
- package/lib/commonjs/components/HMSManageLeave.js +37 -14
- package/lib/commonjs/components/HMSManageLeave.js.map +1 -1
- package/lib/commonjs/components/HMSManageLocalAudio.js +2 -2
- package/lib/commonjs/components/HMSManageLocalAudio.js.map +1 -1
- package/lib/commonjs/components/HMSManageLocalVideo.js +2 -2
- package/lib/commonjs/components/HMSManageLocalVideo.js.map +1 -1
- package/lib/commonjs/components/HMSManageRaiseHand.js +23 -11
- package/lib/commonjs/components/HMSManageRaiseHand.js.map +1 -1
- package/lib/commonjs/components/HMSMeetingEnded.js +2 -2
- package/lib/commonjs/components/HMSMeetingEnded.js.map +1 -1
- package/lib/commonjs/components/HMSNotification.js +96 -0
- package/lib/commonjs/components/HMSNotification.js.map +1 -0
- package/lib/commonjs/components/HMSNotifications.js +114 -0
- package/lib/commonjs/components/HMSNotifications.js.map +1 -0
- package/lib/commonjs/components/HMSOverlayChatView.js +30 -0
- package/lib/commonjs/components/HMSOverlayChatView.js.map +1 -0
- package/lib/commonjs/components/HMSPreviewEditName.js +2 -2
- package/lib/commonjs/components/HMSPreviewEditName.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewHLSLiveIndicator.js +5 -4
- package/lib/commonjs/components/HMSPreviewHLSLiveIndicator.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewJoinButton.js +11 -7
- package/lib/commonjs/components/HMSPreviewJoinButton.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewNetworkQuality.js +3 -3
- package/lib/commonjs/components/HMSPreviewNetworkQuality.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewPeersList.js +2 -2
- package/lib/commonjs/components/HMSPreviewPeersList.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewSubtitle.js +3 -5
- package/lib/commonjs/components/HMSPreviewSubtitle.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewTile.js +3 -3
- package/lib/commonjs/components/HMSPreviewTile.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewTitle.js +3 -5
- package/lib/commonjs/components/HMSPreviewTitle.js.map +1 -1
- package/lib/commonjs/components/HMSPrimaryButton.js +2 -2
- package/lib/commonjs/components/HMSPrimaryButton.js.map +1 -1
- package/lib/commonjs/components/HMSRecordingIndicator.js +12 -5
- package/lib/commonjs/components/HMSRecordingIndicator.js.map +1 -1
- package/lib/commonjs/components/HMSRoleChangeDeclinedNotification.js +30 -0
- package/lib/commonjs/components/HMSRoleChangeDeclinedNotification.js.map +1 -0
- package/lib/commonjs/components/HMSRoomOptions.js +2 -2
- package/lib/commonjs/components/HMSRoomOptions.js.map +1 -1
- package/lib/commonjs/components/HMSSendMessageInput.js +57 -0
- package/lib/commonjs/components/HMSSendMessageInput.js.map +1 -0
- package/lib/commonjs/components/HMSTextInput.js +101 -15
- package/lib/commonjs/components/HMSTextInput.js.map +1 -1
- package/lib/commonjs/components/HMSVideoView.js +43 -0
- package/lib/commonjs/components/HMSVideoView.js.map +1 -0
- package/lib/commonjs/components/Header.js +21 -127
- package/lib/commonjs/components/Header.js.map +1 -1
- package/lib/commonjs/components/LocalPeerRegularVideoView.js +2 -2
- package/lib/commonjs/components/LocalPeerRegularVideoView.js.map +1 -1
- package/lib/commonjs/components/LocalPeerScreenshareView.js +3 -9
- package/lib/commonjs/components/LocalPeerScreenshareView.js.map +1 -1
- package/lib/commonjs/components/Meeting.js +8 -7
- package/lib/commonjs/components/Meeting.js.map +1 -1
- package/lib/commonjs/components/MeetingScreenContent.js +23 -10
- package/lib/commonjs/components/MeetingScreenContent.js.map +1 -1
- package/lib/commonjs/components/MenuModal/Menu.js +2 -2
- package/lib/commonjs/components/MenuModal/Menu.js.map +1 -1
- package/lib/commonjs/components/MiniView.js +10 -5
- package/lib/commonjs/components/MiniView.js.map +1 -1
- package/lib/commonjs/components/Modals.js +90 -319
- package/lib/commonjs/components/Modals.js.map +1 -1
- package/lib/commonjs/components/OverlayContainer.js +41 -0
- package/lib/commonjs/components/OverlayContainer.js.map +1 -0
- package/lib/commonjs/components/OverlayedViews.js +21 -0
- package/lib/commonjs/components/OverlayedViews.js.map +1 -0
- package/lib/commonjs/components/PIPView.js +24 -18
- package/lib/commonjs/components/PIPView.js.map +1 -1
- package/lib/commonjs/components/PaginationDots.js +7 -8
- package/lib/commonjs/components/PaginationDots.js.map +1 -1
- package/lib/commonjs/components/Participants/MultiRoleParticipantsList.js +65 -0
- package/lib/commonjs/components/Participants/MultiRoleParticipantsList.js.map +1 -0
- package/lib/commonjs/components/Participants/ParticipantsAccordian.js +60 -0
- package/lib/commonjs/components/Participants/ParticipantsAccordian.js.map +1 -0
- package/lib/commonjs/components/Participants/ParticipantsAccordianExpanded.js +25 -0
- package/lib/commonjs/components/Participants/ParticipantsAccordianExpanded.js.map +1 -0
- package/lib/commonjs/components/Participants/ParticipantsGroupFooter.js +61 -0
- package/lib/commonjs/components/Participants/ParticipantsGroupFooter.js.map +1 -0
- package/lib/commonjs/components/Participants/ParticipantsGroupHeader.js +131 -0
- package/lib/commonjs/components/Participants/ParticipantsGroupHeader.js.map +1 -0
- package/lib/commonjs/components/Participants/ParticipantsGroupOptions.js +79 -0
- package/lib/commonjs/components/Participants/ParticipantsGroupOptions.js.map +1 -0
- package/lib/commonjs/components/Participants/ParticipantsItem.js +123 -0
- package/lib/commonjs/components/Participants/ParticipantsItem.js.map +1 -0
- package/lib/commonjs/components/Participants/ParticipantsItemOption.js +45 -0
- package/lib/commonjs/components/Participants/ParticipantsItemOption.js.map +1 -0
- package/lib/commonjs/components/Participants/ParticipantsItemOptions.js +219 -0
- package/lib/commonjs/components/Participants/ParticipantsItemOptions.js.map +1 -0
- package/lib/commonjs/components/Participants/ParticipantsList.js +171 -220
- package/lib/commonjs/components/Participants/ParticipantsList.js.map +1 -1
- package/lib/commonjs/components/Participants/ParticipantsListFooter.js +43 -0
- package/lib/commonjs/components/Participants/ParticipantsListFooter.js.map +1 -0
- package/lib/commonjs/components/Participants/ParticipantsSeachInput.js +38 -32
- package/lib/commonjs/components/Participants/ParticipantsSeachInput.js.map +1 -1
- package/lib/commonjs/components/Participants/index.js +4 -26
- package/lib/commonjs/components/Participants/index.js.map +1 -1
- package/lib/commonjs/components/ParticipantsCount.js +3 -4
- package/lib/commonjs/components/ParticipantsCount.js.map +1 -1
- package/lib/commonjs/components/PeerDisplayView.js +1 -2
- package/lib/commonjs/components/PeerDisplayView.js.map +1 -1
- package/lib/commonjs/components/PeerMinimizedView.js +4 -5
- package/lib/commonjs/components/PeerMinimizedView.js.map +1 -1
- package/lib/commonjs/components/PeerRTCStatsContainer.js +3 -4
- package/lib/commonjs/components/PeerRTCStatsContainer.js.map +1 -1
- package/lib/commonjs/components/PeerRTCStatsView.js +1 -2
- package/lib/commonjs/components/PeerRTCStatsView.js.map +1 -1
- package/lib/commonjs/components/PeerSettingsModalContent.js +47 -123
- package/lib/commonjs/components/PeerSettingsModalContent.js.map +1 -1
- package/lib/commonjs/components/PeerVideoTile/AvatarView.js +23 -10
- package/lib/commonjs/components/PeerVideoTile/AvatarView.js.map +1 -1
- package/lib/commonjs/components/PeerVideoTile/HMSFullScreenButton.js +45 -0
- package/lib/commonjs/components/PeerVideoTile/HMSFullScreenButton.js.map +1 -0
- package/lib/commonjs/components/PeerVideoTile/HMSPinchGesture.js +202 -0
- package/lib/commonjs/components/PeerVideoTile/HMSPinchGesture.js.map +1 -0
- package/lib/commonjs/components/PeerVideoTile/PeerAudioIndicator.js +75 -0
- package/lib/commonjs/components/PeerVideoTile/PeerAudioIndicator.js.map +1 -0
- package/lib/commonjs/components/PeerVideoTile/PeerMetadata.js +22 -12
- package/lib/commonjs/components/PeerVideoTile/PeerMetadata.js.map +1 -1
- package/lib/commonjs/components/PeerVideoTile/PeerNameAndNetwork.js +12 -4
- package/lib/commonjs/components/PeerVideoTile/PeerNameAndNetwork.js.map +1 -1
- package/lib/commonjs/components/PeerVideoTile/PeerVideoTileView.js +60 -25
- package/lib/commonjs/components/PeerVideoTile/PeerVideoTileView.js.map +1 -1
- package/lib/commonjs/components/PeerVideoTile/VideoView.js +46 -14
- package/lib/commonjs/components/PeerVideoTile/VideoView.js.map +1 -1
- package/lib/commonjs/components/PressableIcon.js +12 -7
- package/lib/commonjs/components/PressableIcon.js.map +1 -1
- package/lib/commonjs/components/Preview.js +10 -15
- package/lib/commonjs/components/Preview.js.map +1 -1
- package/lib/commonjs/components/PreviewForRoleChangeModal.js +326 -0
- package/lib/commonjs/components/PreviewForRoleChangeModal.js.map +1 -0
- package/lib/commonjs/components/ReconnectionView.js +65 -0
- package/lib/commonjs/components/ReconnectionView.js.map +1 -0
- package/lib/commonjs/components/RoomSettingsModalContent.js +54 -27
- package/lib/commonjs/components/RoomSettingsModalContent.js.map +1 -1
- package/lib/commonjs/components/RoomSettingsModalDebugModeContent.js +32 -71
- package/lib/commonjs/components/RoomSettingsModalDebugModeContent.js.map +1 -1
- package/lib/commonjs/components/StatusBar.js +2 -2
- package/lib/commonjs/components/StatusBar.js.map +1 -1
- package/lib/commonjs/components/StopRecordingModalContent.js +2 -2
- package/lib/commonjs/components/StopRecordingModalContent.js.map +1 -1
- package/lib/commonjs/components/StreamingQualityModalContent.js +10 -11
- package/lib/commonjs/components/StreamingQualityModalContent.js.map +1 -1
- package/lib/commonjs/components/Tile.js +1 -2
- package/lib/commonjs/components/Tile.js.map +1 -1
- package/lib/commonjs/components/TilesContainer.js +32 -11
- package/lib/commonjs/components/TilesContainer.js.map +1 -1
- package/lib/commonjs/components/UnmountAfterDelay.js +3 -4
- package/lib/commonjs/components/UnmountAfterDelay.js.map +1 -1
- package/lib/commonjs/components/WebrtcView.js +16 -19
- package/lib/commonjs/components/WebrtcView.js.map +1 -1
- package/lib/commonjs/components/WelcomeInMeeting.js +20 -23
- package/lib/commonjs/components/WelcomeInMeeting.js.map +1 -1
- package/lib/commonjs/components/index.js +0 -33
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/components/styles.js +1 -2
- package/lib/commonjs/components/styles.js.map +1 -1
- package/lib/commonjs/hooks-sdk.js +46 -1
- package/lib/commonjs/hooks-sdk.js.map +1 -1
- package/lib/commonjs/hooks-util-selectors.js +43 -9
- package/lib/commonjs/hooks-util-selectors.js.map +1 -1
- package/lib/commonjs/hooks-util.js +657 -237
- package/lib/commonjs/hooks-util.js.map +1 -1
- package/lib/commonjs/modules/HMSManager.js +3 -3
- package/lib/commonjs/modules/HMSManager.js.map +1 -1
- package/lib/commonjs/modules/parser.js +2 -3
- package/lib/commonjs/modules/parser.js.map +1 -1
- package/lib/commonjs/redux/actionTypes.js +30 -5
- package/lib/commonjs/redux/actionTypes.js.map +1 -1
- package/lib/commonjs/redux/actions/index.js +108 -3
- package/lib/commonjs/redux/actions/index.js.map +1 -1
- package/lib/commonjs/redux/index.js +1 -2
- package/lib/commonjs/redux/index.js.map +1 -1
- package/lib/commonjs/redux/reducers/appState.js +80 -6
- package/lib/commonjs/redux/reducers/appState.js.map +1 -1
- package/lib/commonjs/redux/reducers/chatWindow.js +4 -9
- package/lib/commonjs/redux/reducers/chatWindow.js.map +1 -1
- package/lib/commonjs/redux/reducers/hmsStates.js +242 -9
- package/lib/commonjs/redux/reducers/hmsStates.js.map +1 -1
- package/lib/commonjs/redux/reducers/index.js +1 -2
- package/lib/commonjs/redux/reducers/index.js.map +1 -1
- package/lib/commonjs/redux/reducers/message.js +3 -4
- package/lib/commonjs/redux/reducers/message.js.map +1 -1
- package/lib/commonjs/redux/reducers/userState.js +3 -4
- package/lib/commonjs/redux/reducers/userState.js.map +1 -1
- package/lib/commonjs/types.js +1 -2
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/utils/dimension.js +2 -4
- package/lib/commonjs/utils/dimension.js.map +1 -1
- package/lib/commonjs/utils/functions.js +10 -3
- package/lib/commonjs/utils/functions.js.map +1 -1
- package/lib/commonjs/utils/theme.js +7 -10
- package/lib/commonjs/utils/theme.js.map +1 -1
- package/lib/commonjs/utils/types.js +17 -21
- package/lib/commonjs/utils/types.js.map +1 -1
- package/lib/commonjs/utils.js +7 -1
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/module/HMSPrebuilt.js +5 -6
- package/lib/module/HMSPrebuilt.js.map +1 -1
- package/lib/module/HMSRoomSetup.js +30 -33
- package/lib/module/HMSRoomSetup.js.map +1 -1
- package/lib/module/Icons/AlertTriangle/assets/alert-triangle-filled.png +0 -0
- package/lib/module/Icons/AlertTriangle/assets/alert-triangle-filled@2x.png +0 -0
- package/lib/module/Icons/AlertTriangle/assets/alert-triangle-filled@3x.png +0 -0
- package/lib/module/Icons/AlertTriangle/index.js +2 -1
- package/lib/module/Icons/AlertTriangle/index.js.map +1 -1
- package/lib/module/Icons/Chevron/index.js +5 -1
- package/lib/module/Icons/Chevron/index.js.map +1 -1
- package/lib/module/Icons/Eye/assets/eye-on-small.png +0 -0
- package/lib/module/Icons/Eye/assets/eye-on-small@2x.png +0 -0
- package/lib/module/Icons/Eye/assets/eye-on-small@3x.png +0 -0
- package/lib/module/Icons/Eye/index.js +27 -0
- package/lib/module/Icons/Eye/index.js.map +1 -0
- package/lib/module/Icons/Leave/index.js +5 -1
- package/lib/module/Icons/Leave/index.js.map +1 -1
- package/lib/module/Icons/Person/assets/person-left.png +0 -0
- package/lib/module/Icons/Person/assets/person-left@2x.png +0 -0
- package/lib/module/Icons/Person/assets/person-left@3x.png +0 -0
- package/lib/module/Icons/Person/assets/person-off.png +0 -0
- package/lib/module/Icons/Person/assets/person-off@2x.png +0 -0
- package/lib/module/Icons/Person/assets/person-off@3x.png +0 -0
- package/lib/module/Icons/Person/assets/person-rectangle.png +0 -0
- package/lib/module/Icons/Person/assets/person-rectangle@2x.png +0 -0
- package/lib/module/Icons/Person/assets/person-rectangle@3x.png +0 -0
- package/lib/module/Icons/Person/index.js +2 -1
- package/lib/module/Icons/Person/index.js.map +1 -1
- package/lib/module/Icons/Search/assets/search.png +0 -0
- package/lib/module/Icons/Search/assets/search@2x.png +0 -0
- package/lib/module/Icons/Search/assets/search@3x.png +0 -0
- package/lib/module/Icons/Search/index.js +26 -0
- package/lib/module/Icons/Search/index.js.map +1 -0
- package/lib/module/Icons/WelcomeHand/assets/welcome-hand.png +0 -0
- package/lib/module/Icons/WelcomeHand/assets/welcome-hand@2x.png +0 -0
- package/lib/module/Icons/WelcomeHand/assets/welcome-hand@3x.png +0 -0
- package/lib/module/Icons/WelcomeHand/index.js +22 -0
- package/lib/module/Icons/WelcomeHand/index.js.map +1 -0
- package/lib/module/Icons/index.js +3 -0
- package/lib/module/Icons/index.js.map +1 -1
- package/lib/module/assets/audio-level-white.json +1271 -0
- package/lib/module/assets/empty-chat-illustration/empty-chat.png +0 -0
- package/lib/module/assets/empty-chat-illustration/empty-chat@2x.png +0 -0
- package/lib/module/assets/empty-chat-illustration/empty-chat@3x.png +0 -0
- package/lib/module/components/AnimatedFooter.js +26 -0
- package/lib/module/components/AnimatedFooter.js.map +1 -0
- package/lib/module/components/AnimatedHLSFooter.js +27 -0
- package/lib/module/components/AnimatedHLSFooter.js.map +1 -0
- package/lib/module/components/AnimatedHeader.js +35 -0
- package/lib/module/components/AnimatedHeader.js.map +1 -0
- package/lib/module/components/BottomSheet.js +6 -3
- package/lib/module/components/BottomSheet.js.map +1 -1
- package/lib/module/components/ChangeNameModalContent.js +13 -6
- package/lib/module/components/ChangeNameModalContent.js.map +1 -1
- package/lib/module/components/Chat/ChatBanner.js +36 -55
- package/lib/module/components/Chat/ChatBanner.js.map +1 -1
- package/lib/module/components/Chat/ChatFilterBottomSheetOpener.js +74 -0
- package/lib/module/components/Chat/ChatFilterBottomSheetOpener.js.map +1 -0
- package/lib/module/components/Chat/ChatFilterBottomSheetView.js +60 -0
- package/lib/module/components/Chat/ChatFilterBottomSheetView.js.map +1 -0
- package/lib/module/components/Chat/ChatFilterItem.js +62 -0
- package/lib/module/components/Chat/ChatFilterItem.js.map +1 -0
- package/lib/module/components/Chat/ChatFilterView.js +189 -0
- package/lib/module/components/Chat/ChatFilterView.js.map +1 -0
- package/lib/module/components/Chat/ChatList.js +6 -6
- package/lib/module/components/Chat/ChatList.js.map +1 -1
- package/lib/module/components/Chat/ChatMessage.js +36 -135
- package/lib/module/components/Chat/ChatMessage.js.map +1 -1
- package/lib/module/components/Chat/PinnedMessage.js +40 -43
- package/lib/module/components/Chat/PinnedMessage.js.map +1 -1
- package/lib/module/components/ChatAndParticipants/ChatAndParticipantsBottomSheet.js +33 -0
- package/lib/module/components/ChatAndParticipants/ChatAndParticipantsBottomSheet.js.map +1 -0
- package/lib/module/components/ChatAndParticipants/ChatAndParticipantsHeader.js +97 -0
- package/lib/module/components/ChatAndParticipants/ChatAndParticipantsHeader.js.map +1 -0
- package/lib/module/components/ChatAndParticipants/ChatAndParticipantsView.js +57 -0
- package/lib/module/components/ChatAndParticipants/ChatAndParticipantsView.js.map +1 -0
- package/lib/module/components/ChatAndParticipants/ChatView.js +28 -0
- package/lib/module/components/ChatAndParticipants/ChatView.js.map +1 -0
- package/lib/module/components/ChatAndParticipants/ParticipantsView.js +31 -0
- package/lib/module/components/ChatAndParticipants/ParticipantsView.js.map +1 -0
- package/lib/module/components/ChatAndParticipants/index.js +2 -0
- package/lib/module/components/ChatAndParticipants/index.js.map +1 -0
- package/lib/module/components/CompanyLogo.js +4 -3
- package/lib/module/components/CompanyLogo.js.map +1 -1
- package/lib/module/components/DefaultModal.js +2 -6
- package/lib/module/components/DefaultModal.js.map +1 -1
- package/lib/module/components/DisplayView.js +7 -20
- package/lib/module/components/DisplayView.js.map +1 -1
- package/lib/module/components/EndRoomModalContent.js +20 -6
- package/lib/module/components/EndRoomModalContent.js.map +1 -1
- package/lib/module/components/Footer.js +39 -30
- package/lib/module/components/Footer.js.map +1 -1
- package/lib/module/components/FullScreenVideoView.js +64 -0
- package/lib/module/components/FullScreenVideoView.js.map +1 -0
- package/lib/module/components/GridView.js +130 -49
- package/lib/module/components/GridView.js.map +1 -1
- package/lib/module/components/HLSFooter.js +26 -0
- package/lib/module/components/HLSFooter.js.map +1 -0
- package/lib/module/components/HLSView.js +11 -23
- package/lib/module/components/HLSView.js.map +1 -1
- package/lib/module/components/HMSChat.js +16 -15
- package/lib/module/components/HMSChat.js.map +1 -1
- package/lib/module/components/HMSDangerButton.js +2 -1
- package/lib/module/components/HMSDangerButton.js.map +1 -1
- package/lib/module/components/HMSHLSMessage.js +58 -0
- package/lib/module/components/HMSHLSMessage.js.map +1 -0
- package/lib/module/components/HMSHLSMessageList.js +49 -0
- package/lib/module/components/HMSHLSMessageList.js.map +1 -0
- package/lib/module/components/HMSHLSNotStarted.js +2 -7
- package/lib/module/components/HMSHLSNotStarted.js.map +1 -1
- package/lib/module/components/HMSHLSStreamLoading.js +5 -3
- package/lib/module/components/HMSHLSStreamLoading.js.map +1 -1
- package/lib/module/components/HMSHandRaiseNotification.js +75 -0
- package/lib/module/components/HMSHandRaiseNotification.js.map +1 -0
- package/lib/module/components/HMSKeyboardAvoidingView.js +39 -0
- package/lib/module/components/HMSKeyboardAvoidingView.js.map +1 -0
- package/lib/module/components/HMSLiveIndicator.js +96 -0
- package/lib/module/components/HMSLiveIndicator.js.map +1 -0
- package/lib/module/components/HMSLocalScreenshareNotification.js +29 -0
- package/lib/module/components/HMSLocalScreenshareNotification.js.map +1 -0
- package/lib/module/components/HMSLocalVideoView.js +4 -23
- package/lib/module/components/HMSLocalVideoView.js.map +1 -1
- package/lib/module/components/HMSManageAudioOutput.js +8 -2
- package/lib/module/components/HMSManageAudioOutput.js.map +1 -1
- package/lib/module/components/HMSManageLeave.js +37 -14
- package/lib/module/components/HMSManageLeave.js.map +1 -1
- package/lib/module/components/HMSManageRaiseHand.js +22 -10
- package/lib/module/components/HMSManageRaiseHand.js.map +1 -1
- package/lib/module/components/HMSNotification.js +87 -0
- package/lib/module/components/HMSNotification.js.map +1 -0
- package/lib/module/components/HMSNotifications.js +105 -0
- package/lib/module/components/HMSNotifications.js.map +1 -0
- package/lib/module/components/HMSOverlayChatView.js +20 -0
- package/lib/module/components/HMSOverlayChatView.js.map +1 -0
- package/lib/module/components/HMSPreviewHLSLiveIndicator.js +3 -2
- package/lib/module/components/HMSPreviewHLSLiveIndicator.js.map +1 -1
- package/lib/module/components/HMSPreviewJoinButton.js +10 -6
- package/lib/module/components/HMSPreviewJoinButton.js.map +1 -1
- package/lib/module/components/HMSPreviewNetworkQuality.js +1 -1
- package/lib/module/components/HMSPreviewNetworkQuality.js.map +1 -1
- package/lib/module/components/HMSPreviewSubtitle.js +2 -4
- package/lib/module/components/HMSPreviewSubtitle.js.map +1 -1
- package/lib/module/components/HMSPreviewTile.js +1 -1
- package/lib/module/components/HMSPreviewTile.js.map +1 -1
- package/lib/module/components/HMSPreviewTitle.js +2 -4
- package/lib/module/components/HMSPreviewTitle.js.map +1 -1
- package/lib/module/components/HMSRecordingIndicator.js +10 -3
- package/lib/module/components/HMSRecordingIndicator.js.map +1 -1
- package/lib/module/components/HMSRoleChangeDeclinedNotification.js +21 -0
- package/lib/module/components/HMSRoleChangeDeclinedNotification.js.map +1 -0
- package/lib/module/components/HMSSendMessageInput.js +48 -0
- package/lib/module/components/HMSSendMessageInput.js.map +1 -0
- package/lib/module/components/HMSTextInput.js +100 -14
- package/lib/module/components/HMSTextInput.js.map +1 -1
- package/lib/module/components/HMSVideoView.js +34 -0
- package/lib/module/components/HMSVideoView.js.map +1 -0
- package/lib/module/components/Header.js +18 -123
- package/lib/module/components/Header.js.map +1 -1
- package/lib/module/components/LocalPeerScreenshareView.js +1 -6
- package/lib/module/components/LocalPeerScreenshareView.js.map +1 -1
- package/lib/module/components/Meeting.js +8 -7
- package/lib/module/components/Meeting.js.map +1 -1
- package/lib/module/components/MeetingScreenContent.js +23 -10
- package/lib/module/components/MeetingScreenContent.js.map +1 -1
- package/lib/module/components/MenuModal/Menu.js +2 -2
- package/lib/module/components/MenuModal/Menu.js.map +1 -1
- package/lib/module/components/MiniView.js +8 -3
- package/lib/module/components/MiniView.js.map +1 -1
- package/lib/module/components/Modals.js +88 -313
- package/lib/module/components/Modals.js.map +1 -1
- package/lib/module/components/OverlayContainer.js +32 -0
- package/lib/module/components/OverlayContainer.js.map +1 -0
- package/lib/module/components/OverlayedViews.js +13 -0
- package/lib/module/components/OverlayedViews.js.map +1 -0
- package/lib/module/components/PIPView.js +21 -13
- package/lib/module/components/PIPView.js.map +1 -1
- package/lib/module/components/PaginationDots.js +4 -4
- package/lib/module/components/PaginationDots.js.map +1 -1
- package/lib/module/components/Participants/MultiRoleParticipantsList.js +56 -0
- package/lib/module/components/Participants/MultiRoleParticipantsList.js.map +1 -0
- package/lib/module/components/Participants/ParticipantsAccordian.js +51 -0
- package/lib/module/components/Participants/ParticipantsAccordian.js.map +1 -0
- package/lib/module/components/Participants/ParticipantsAccordianExpanded.js +16 -0
- package/lib/module/components/Participants/ParticipantsAccordianExpanded.js.map +1 -0
- package/lib/module/components/Participants/ParticipantsGroupFooter.js +53 -0
- package/lib/module/components/Participants/ParticipantsGroupFooter.js.map +1 -0
- package/lib/module/components/Participants/ParticipantsGroupHeader.js +122 -0
- package/lib/module/components/Participants/ParticipantsGroupHeader.js.map +1 -0
- package/lib/module/components/Participants/ParticipantsGroupOptions.js +71 -0
- package/lib/module/components/Participants/ParticipantsGroupOptions.js.map +1 -0
- package/lib/module/components/Participants/ParticipantsItem.js +115 -0
- package/lib/module/components/Participants/ParticipantsItem.js.map +1 -0
- package/lib/module/components/Participants/ParticipantsItemOption.js +37 -0
- package/lib/module/components/Participants/ParticipantsItemOption.js.map +1 -0
- package/lib/module/components/Participants/ParticipantsItemOptions.js +211 -0
- package/lib/module/components/Participants/ParticipantsItemOptions.js.map +1 -0
- package/lib/module/components/Participants/ParticipantsList.js +171 -219
- package/lib/module/components/Participants/ParticipantsList.js.map +1 -1
- package/lib/module/components/Participants/ParticipantsListFooter.js +35 -0
- package/lib/module/components/Participants/ParticipantsListFooter.js.map +1 -0
- package/lib/module/components/Participants/ParticipantsSeachInput.js +37 -30
- package/lib/module/components/Participants/ParticipantsSeachInput.js.map +1 -1
- package/lib/module/components/Participants/index.js +1 -3
- package/lib/module/components/Participants/index.js.map +1 -1
- package/lib/module/components/PeerMinimizedView.js +1 -1
- package/lib/module/components/PeerSettingsModalContent.js +50 -126
- package/lib/module/components/PeerSettingsModalContent.js.map +1 -1
- package/lib/module/components/PeerVideoTile/AvatarView.js +20 -6
- package/lib/module/components/PeerVideoTile/AvatarView.js.map +1 -1
- package/lib/module/components/PeerVideoTile/HMSFullScreenButton.js +36 -0
- package/lib/module/components/PeerVideoTile/HMSFullScreenButton.js.map +1 -0
- package/lib/module/components/PeerVideoTile/HMSPinchGesture.js +193 -0
- package/lib/module/components/PeerVideoTile/HMSPinchGesture.js.map +1 -0
- package/lib/module/components/PeerVideoTile/PeerAudioIndicator.js +65 -0
- package/lib/module/components/PeerVideoTile/PeerAudioIndicator.js.map +1 -0
- package/lib/module/components/PeerVideoTile/PeerMetadata.js +21 -11
- package/lib/module/components/PeerVideoTile/PeerMetadata.js.map +1 -1
- package/lib/module/components/PeerVideoTile/PeerNameAndNetwork.js +11 -3
- package/lib/module/components/PeerVideoTile/PeerNameAndNetwork.js.map +1 -1
- package/lib/module/components/PeerVideoTile/PeerVideoTileView.js +59 -22
- package/lib/module/components/PeerVideoTile/PeerVideoTileView.js.map +1 -1
- package/lib/module/components/PeerVideoTile/VideoView.js +43 -10
- package/lib/module/components/PeerVideoTile/VideoView.js.map +1 -1
- package/lib/module/components/PressableIcon.js +11 -6
- package/lib/module/components/PressableIcon.js.map +1 -1
- package/lib/module/components/Preview.js +11 -14
- package/lib/module/components/Preview.js.map +1 -1
- package/lib/module/components/PreviewForRoleChangeModal.js +317 -0
- package/lib/module/components/PreviewForRoleChangeModal.js.map +1 -0
- package/lib/module/components/ReconnectionView.js +56 -0
- package/lib/module/components/ReconnectionView.js.map +1 -0
- package/lib/module/components/RoomSettingsModalContent.js +53 -26
- package/lib/module/components/RoomSettingsModalContent.js.map +1 -1
- package/lib/module/components/RoomSettingsModalDebugModeContent.js +32 -71
- package/lib/module/components/RoomSettingsModalDebugModeContent.js.map +1 -1
- package/lib/module/components/StreamingQualityModalContent.js +8 -8
- package/lib/module/components/StreamingQualityModalContent.js.map +1 -1
- package/lib/module/components/TilesContainer.js +31 -9
- package/lib/module/components/TilesContainer.js.map +1 -1
- package/lib/module/components/WebrtcView.js +13 -15
- package/lib/module/components/WebrtcView.js.map +1 -1
- package/lib/module/components/WelcomeInMeeting.js +19 -22
- package/lib/module/components/WelcomeInMeeting.js.map +1 -1
- package/lib/module/components/index.js +0 -3
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/hooks-sdk.js +46 -1
- package/lib/module/hooks-sdk.js.map +1 -1
- package/lib/module/hooks-util-selectors.js +38 -8
- package/lib/module/hooks-util-selectors.js.map +1 -1
- package/lib/module/hooks-util.js +654 -239
- package/lib/module/hooks-util.js.map +1 -1
- package/lib/module/modules/HMSManager.js +3 -3
- package/lib/module/modules/HMSManager.js.map +1 -1
- package/lib/module/modules/parser.js +2 -3
- package/lib/module/modules/parser.js.map +1 -1
- package/lib/module/redux/actionTypes.js +28 -1
- package/lib/module/redux/actionTypes.js.map +1 -1
- package/lib/module/redux/actions/index.js +87 -0
- package/lib/module/redux/actions/index.js.map +1 -1
- package/lib/module/redux/reducers/appState.js +78 -2
- package/lib/module/redux/reducers/appState.js.map +1 -1
- package/lib/module/redux/reducers/chatWindow.js +3 -7
- package/lib/module/redux/reducers/chatWindow.js.map +1 -1
- package/lib/module/redux/reducers/hmsStates.js +241 -7
- package/lib/module/redux/reducers/hmsStates.js.map +1 -1
- package/lib/module/utils/functions.js +8 -2
- package/lib/module/utils/functions.js.map +1 -1
- package/lib/module/utils/theme.js +2 -0
- package/lib/module/utils/theme.js.map +1 -1
- package/lib/module/utils/types.js +7 -2
- package/lib/module/utils/types.js.map +1 -1
- package/lib/module/utils.js +6 -0
- package/lib/module/utils.js.map +1 -1
- package/lib/typescript/HMSPrebuilt.d.ts +1 -0
- package/lib/typescript/HMSPrebuilt.d.ts.map +1 -1
- package/lib/typescript/HMSRoomSetup.d.ts.map +1 -1
- package/lib/typescript/Icons/AlertTriangle/index.d.ts +1 -0
- package/lib/typescript/Icons/AlertTriangle/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Chevron/index.d.ts +1 -1
- package/lib/typescript/Icons/Chevron/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Eye/index.d.ts +8 -0
- package/lib/typescript/Icons/Eye/index.d.ts.map +1 -0
- package/lib/typescript/Icons/Leave/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Person/index.d.ts +1 -0
- package/lib/typescript/Icons/Person/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Search/index.d.ts +7 -0
- package/lib/typescript/Icons/Search/index.d.ts.map +1 -0
- package/lib/typescript/Icons/WelcomeHand/index.d.ts +7 -0
- package/lib/typescript/Icons/WelcomeHand/index.d.ts.map +1 -0
- package/lib/typescript/Icons/index.d.ts +3 -0
- package/lib/typescript/Icons/index.d.ts.map +1 -1
- package/lib/typescript/components/AnimatedFooter.d.ts +8 -0
- package/lib/typescript/components/AnimatedFooter.d.ts.map +1 -0
- package/lib/typescript/components/AnimatedHLSFooter.d.ts +11 -0
- package/lib/typescript/components/AnimatedHLSFooter.d.ts.map +1 -0
- package/lib/typescript/components/AnimatedHeader.d.ts +7 -0
- package/lib/typescript/components/AnimatedHeader.d.ts.map +1 -0
- package/lib/typescript/components/BottomSheet.d.ts +4 -1
- package/lib/typescript/components/BottomSheet.d.ts.map +1 -1
- package/lib/typescript/components/ChangeNameModalContent.d.ts.map +1 -1
- package/lib/typescript/components/Chat/ChatBanner.d.ts +1 -1
- package/lib/typescript/components/Chat/ChatBanner.d.ts.map +1 -1
- package/lib/typescript/components/Chat/ChatFilterBottomSheetOpener.d.ts +6 -0
- package/lib/typescript/components/Chat/ChatFilterBottomSheetOpener.d.ts.map +1 -0
- package/lib/typescript/components/Chat/ChatFilterBottomSheetView.d.ts +6 -0
- package/lib/typescript/components/Chat/ChatFilterBottomSheetView.d.ts.map +1 -0
- package/lib/typescript/components/Chat/ChatFilterItem.d.ts +12 -0
- package/lib/typescript/components/Chat/ChatFilterItem.d.ts.map +1 -0
- package/lib/typescript/components/Chat/ChatFilterView.d.ts +6 -0
- package/lib/typescript/components/Chat/ChatFilterView.d.ts.map +1 -0
- package/lib/typescript/components/Chat/ChatList.d.ts.map +1 -1
- package/lib/typescript/components/Chat/ChatMessage.d.ts +2 -2
- package/lib/typescript/components/Chat/ChatMessage.d.ts.map +1 -1
- package/lib/typescript/components/Chat/PinnedMessage.d.ts.map +1 -1
- package/lib/typescript/components/ChatAndParticipants/ChatAndParticipantsBottomSheet.d.ts +3 -0
- package/lib/typescript/components/ChatAndParticipants/ChatAndParticipantsBottomSheet.d.ts.map +1 -0
- package/lib/typescript/components/ChatAndParticipants/ChatAndParticipantsHeader.d.ts +7 -0
- package/lib/typescript/components/ChatAndParticipants/ChatAndParticipantsHeader.d.ts.map +1 -0
- package/lib/typescript/components/ChatAndParticipants/ChatAndParticipantsView.d.ts +3 -0
- package/lib/typescript/components/ChatAndParticipants/ChatAndParticipantsView.d.ts.map +1 -0
- package/lib/typescript/components/ChatAndParticipants/ChatView.d.ts +6 -0
- package/lib/typescript/components/ChatAndParticipants/ChatView.d.ts.map +1 -0
- package/lib/typescript/components/ChatAndParticipants/ParticipantsView.d.ts +5 -0
- package/lib/typescript/components/ChatAndParticipants/ParticipantsView.d.ts.map +1 -0
- package/lib/typescript/components/ChatAndParticipants/index.d.ts +2 -0
- package/lib/typescript/components/ChatAndParticipants/index.d.ts.map +1 -0
- package/lib/typescript/components/CompanyLogo.d.ts.map +1 -1
- package/lib/typescript/components/DefaultModal.d.ts.map +1 -1
- package/lib/typescript/components/DisplayView.d.ts.map +1 -1
- package/lib/typescript/components/EndRoomModalContent.d.ts.map +1 -1
- package/lib/typescript/components/Footer.d.ts +0 -2
- package/lib/typescript/components/Footer.d.ts.map +1 -1
- package/lib/typescript/components/FullScreenVideoView.d.ts +3 -0
- package/lib/typescript/components/FullScreenVideoView.d.ts.map +1 -0
- package/lib/typescript/components/GridView.d.ts +12 -1
- package/lib/typescript/components/GridView.d.ts.map +1 -1
- package/lib/typescript/components/HLSFooter.d.ts +8 -0
- package/lib/typescript/components/HLSFooter.d.ts.map +1 -0
- package/lib/typescript/components/HLSView.d.ts.map +1 -1
- package/lib/typescript/components/HMSBaseButton.d.ts +2 -2
- package/lib/typescript/components/HMSBaseButton.d.ts.map +1 -1
- package/lib/typescript/components/HMSChat.d.ts.map +1 -1
- package/lib/typescript/components/HMSDangerButton.d.ts.map +1 -1
- package/lib/typescript/components/HMSHLSMessage.d.ts +8 -0
- package/lib/typescript/components/HMSHLSMessage.d.ts.map +1 -0
- package/lib/typescript/components/HMSHLSMessageList.d.ts +3 -0
- package/lib/typescript/components/HMSHLSMessageList.d.ts.map +1 -0
- package/lib/typescript/components/HMSHLSNotStarted.d.ts.map +1 -1
- package/lib/typescript/components/HMSHLSStreamLoading.d.ts.map +1 -1
- package/lib/typescript/components/HMSHandRaiseNotification.d.ts +10 -0
- package/lib/typescript/components/HMSHandRaiseNotification.d.ts.map +1 -0
- package/lib/typescript/components/HMSKeyboardAvoidingView.d.ts +8 -0
- package/lib/typescript/components/HMSKeyboardAvoidingView.d.ts.map +1 -0
- package/lib/typescript/components/HMSLiveIndicator.d.ts +3 -0
- package/lib/typescript/components/HMSLiveIndicator.d.ts.map +1 -0
- package/lib/typescript/components/HMSLocalScreenshareNotification.d.ts +5 -0
- package/lib/typescript/components/HMSLocalScreenshareNotification.d.ts.map +1 -0
- package/lib/typescript/components/HMSLocalVideoView.d.ts.map +1 -1
- package/lib/typescript/components/HMSManageAudioOutput.d.ts.map +1 -1
- package/lib/typescript/components/HMSManageLeave.d.ts.map +1 -1
- package/lib/typescript/components/HMSManageRaiseHand.d.ts.map +1 -1
- package/lib/typescript/components/HMSNotification.d.ts +15 -0
- package/lib/typescript/components/HMSNotification.d.ts.map +1 -0
- package/lib/typescript/components/HMSNotifications.d.ts +5 -0
- package/lib/typescript/components/HMSNotifications.d.ts.map +1 -0
- package/lib/typescript/components/HMSOverlayChatView.d.ts +3 -0
- package/lib/typescript/components/HMSOverlayChatView.d.ts.map +1 -0
- package/lib/typescript/components/HMSPreviewHLSLiveIndicator.d.ts.map +1 -1
- package/lib/typescript/components/HMSPreviewJoinButton.d.ts.map +1 -1
- package/lib/typescript/components/HMSPreviewNetworkQuality.d.ts.map +1 -1
- package/lib/typescript/components/HMSPreviewSubtitle.d.ts.map +1 -1
- package/lib/typescript/components/HMSPreviewTitle.d.ts.map +1 -1
- package/lib/typescript/components/HMSRecordingIndicator.d.ts.map +1 -1
- package/lib/typescript/components/HMSRoleChangeDeclinedNotification.d.ts +9 -0
- package/lib/typescript/components/HMSRoleChangeDeclinedNotification.d.ts.map +1 -0
- package/lib/typescript/components/HMSSendMessageInput.d.ts +9 -0
- package/lib/typescript/components/HMSSendMessageInput.d.ts.map +1 -0
- package/lib/typescript/components/HMSTextInput.d.ts +20 -6
- package/lib/typescript/components/HMSTextInput.d.ts.map +1 -1
- package/lib/typescript/components/HMSVideoView.d.ts +6 -0
- package/lib/typescript/components/HMSVideoView.d.ts.map +1 -0
- package/lib/typescript/components/Header.d.ts +3 -2
- package/lib/typescript/components/Header.d.ts.map +1 -1
- package/lib/typescript/components/LocalPeerScreenshareView.d.ts.map +1 -1
- package/lib/typescript/components/Meeting.d.ts.map +1 -1
- package/lib/typescript/components/MeetingScreenContent.d.ts.map +1 -1
- package/lib/typescript/components/MiniView.d.ts.map +1 -1
- package/lib/typescript/components/Modals.d.ts +1 -21
- package/lib/typescript/components/Modals.d.ts.map +1 -1
- package/lib/typescript/components/OverlayContainer.d.ts +9 -0
- package/lib/typescript/components/OverlayContainer.d.ts.map +1 -0
- package/lib/typescript/components/OverlayedViews.d.ts +4 -0
- package/lib/typescript/components/OverlayedViews.d.ts.map +1 -0
- package/lib/typescript/components/PIPView.d.ts +2 -1
- package/lib/typescript/components/PIPView.d.ts.map +1 -1
- package/lib/typescript/components/PaginationDots.d.ts +3 -0
- package/lib/typescript/components/PaginationDots.d.ts.map +1 -1
- package/lib/typescript/components/Participants/MultiRoleParticipantsList.d.ts +7 -0
- package/lib/typescript/components/Participants/MultiRoleParticipantsList.d.ts.map +1 -0
- package/lib/typescript/components/Participants/ParticipantsAccordian.d.ts +11 -0
- package/lib/typescript/components/Participants/ParticipantsAccordian.d.ts.map +1 -0
- package/lib/typescript/components/Participants/ParticipantsAccordianExpanded.d.ts +9 -0
- package/lib/typescript/components/Participants/ParticipantsAccordianExpanded.d.ts.map +1 -0
- package/lib/typescript/components/Participants/ParticipantsGroupFooter.d.ts +9 -0
- package/lib/typescript/components/Participants/ParticipantsGroupFooter.d.ts.map +1 -0
- package/lib/typescript/components/Participants/ParticipantsGroupHeader.d.ts +12 -0
- package/lib/typescript/components/Participants/ParticipantsGroupHeader.d.ts.map +1 -0
- package/lib/typescript/components/Participants/ParticipantsGroupOptions.d.ts +6 -0
- package/lib/typescript/components/Participants/ParticipantsGroupOptions.d.ts.map +1 -0
- package/lib/typescript/components/Participants/ParticipantsItem.d.ts +9 -0
- package/lib/typescript/components/Participants/ParticipantsItem.d.ts.map +1 -0
- package/lib/typescript/components/Participants/ParticipantsItemOption.d.ts +12 -0
- package/lib/typescript/components/Participants/ParticipantsItemOption.d.ts.map +1 -0
- package/lib/typescript/components/Participants/ParticipantsItemOptions.d.ts +10 -0
- package/lib/typescript/components/Participants/ParticipantsItemOptions.d.ts.map +1 -0
- package/lib/typescript/components/Participants/ParticipantsList.d.ts +3 -2
- package/lib/typescript/components/Participants/ParticipantsList.d.ts.map +1 -1
- package/lib/typescript/components/Participants/ParticipantsListFooter.d.ts +6 -0
- package/lib/typescript/components/Participants/ParticipantsListFooter.d.ts.map +1 -0
- package/lib/typescript/components/Participants/ParticipantsSeachInput.d.ts.map +1 -1
- package/lib/typescript/components/Participants/index.d.ts +1 -3
- package/lib/typescript/components/Participants/index.d.ts.map +1 -1
- package/lib/typescript/components/PeerSettingsModalContent.d.ts.map +1 -1
- package/lib/typescript/components/PeerVideoTile/AvatarView.d.ts +4 -0
- package/lib/typescript/components/PeerVideoTile/AvatarView.d.ts.map +1 -1
- package/lib/typescript/components/PeerVideoTile/HMSFullScreenButton.d.ts +7 -0
- package/lib/typescript/components/PeerVideoTile/HMSFullScreenButton.d.ts.map +1 -0
- package/lib/typescript/components/PeerVideoTile/HMSPinchGesture.d.ts +7 -0
- package/lib/typescript/components/PeerVideoTile/HMSPinchGesture.d.ts.map +1 -0
- package/lib/typescript/components/PeerVideoTile/PeerAudioIndicator.d.ts +8 -0
- package/lib/typescript/components/PeerVideoTile/PeerAudioIndicator.d.ts.map +1 -0
- package/lib/typescript/components/PeerVideoTile/PeerMetadata.d.ts +1 -0
- package/lib/typescript/components/PeerVideoTile/PeerMetadata.d.ts.map +1 -1
- package/lib/typescript/components/PeerVideoTile/PeerNameAndNetwork.d.ts.map +1 -1
- package/lib/typescript/components/PeerVideoTile/PeerVideoTileView.d.ts +2 -1
- package/lib/typescript/components/PeerVideoTile/PeerVideoTileView.d.ts.map +1 -1
- package/lib/typescript/components/PeerVideoTile/VideoView.d.ts +1 -0
- package/lib/typescript/components/PeerVideoTile/VideoView.d.ts.map +1 -1
- package/lib/typescript/components/PressableIcon.d.ts.map +1 -1
- package/lib/typescript/components/Preview.d.ts.map +1 -1
- package/lib/typescript/components/PreviewForRoleChangeModal.d.ts +3 -0
- package/lib/typescript/components/PreviewForRoleChangeModal.d.ts.map +1 -0
- package/lib/typescript/components/ReconnectionView.d.ts +4 -0
- package/lib/typescript/components/ReconnectionView.d.ts.map +1 -0
- package/lib/typescript/components/RoomSettingsModalContent.d.ts.map +1 -1
- package/lib/typescript/components/RoomSettingsModalDebugModeContent.d.ts.map +1 -1
- package/lib/typescript/components/StreamingQualityModalContent.d.ts.map +1 -1
- package/lib/typescript/components/TilesContainer.d.ts.map +1 -1
- package/lib/typescript/components/WebrtcView.d.ts.map +1 -1
- package/lib/typescript/components/WelcomeInMeeting.d.ts.map +1 -1
- package/lib/typescript/components/index.d.ts +0 -3
- package/lib/typescript/components/index.d.ts.map +1 -1
- package/lib/typescript/hooks-sdk.d.ts +4 -0
- package/lib/typescript/hooks-sdk.d.ts.map +1 -1
- package/lib/typescript/hooks-util-selectors.d.ts +7 -2
- package/lib/typescript/hooks-util-selectors.d.ts.map +1 -1
- package/lib/typescript/hooks-util.d.ts +46 -26
- package/lib/typescript/hooks-util.d.ts.map +1 -1
- package/lib/typescript/modules/HMSManager.d.ts +1 -1
- package/lib/typescript/modules/HMSManager.d.ts.map +1 -1
- package/lib/typescript/modules/parser.d.ts +1 -1
- package/lib/typescript/modules/parser.d.ts.map +1 -1
- package/lib/typescript/redux/actionTypes.d.ts +19 -1
- package/lib/typescript/redux/actionTypes.d.ts.map +1 -1
- package/lib/typescript/redux/actions/index.d.ts +105 -4
- package/lib/typescript/redux/actions/index.d.ts.map +1 -1
- package/lib/typescript/redux/index.d.ts +22 -2
- package/lib/typescript/redux/index.d.ts.map +1 -1
- package/lib/typescript/redux/reducers/appState.d.ts +10 -0
- package/lib/typescript/redux/reducers/appState.d.ts.map +1 -1
- package/lib/typescript/redux/reducers/chatWindow.d.ts +6 -6
- package/lib/typescript/redux/reducers/chatWindow.d.ts.map +1 -1
- package/lib/typescript/redux/reducers/hmsStates.d.ts +45 -4
- package/lib/typescript/redux/reducers/hmsStates.d.ts.map +1 -1
- package/lib/typescript/redux/reducers/index.d.ts +22 -2
- package/lib/typescript/redux/reducers/index.d.ts.map +1 -1
- package/lib/typescript/redux/reducers/userState.d.ts +1 -0
- package/lib/typescript/redux/reducers/userState.d.ts.map +1 -1
- package/lib/typescript/utils/functions.d.ts +3 -2
- package/lib/typescript/utils/functions.d.ts.map +1 -1
- package/lib/typescript/utils/theme.d.ts +1 -1
- package/lib/typescript/utils/theme.d.ts.map +1 -1
- package/lib/typescript/utils/types.d.ts +7 -2
- package/lib/typescript/utils/types.d.ts.map +1 -1
- package/lib/typescript/utils.d.ts +5 -0
- package/lib/typescript/utils.d.ts.map +1 -1
- package/package.json +13 -9
- package/src/HMSPrebuilt.tsx +9 -12
- package/src/HMSRoomSetup.tsx +51 -29
- package/src/Icons/AlertTriangle/assets/alert-triangle-filled.png +0 -0
- package/src/Icons/AlertTriangle/assets/alert-triangle-filled@2x.png +0 -0
- package/src/Icons/AlertTriangle/assets/alert-triangle-filled@3x.png +0 -0
- package/src/Icons/AlertTriangle/index.tsx +9 -2
- package/src/Icons/Chevron/index.tsx +9 -2
- package/src/Icons/Eye/assets/eye-on-small.png +0 -0
- package/src/Icons/Eye/assets/eye-on-small@2x.png +0 -0
- package/src/Icons/Eye/assets/eye-on-small@3x.png +0 -0
- package/src/Icons/Eye/index.tsx +36 -0
- package/src/Icons/Leave/index.tsx +7 -1
- package/src/Icons/Person/assets/person-left.png +0 -0
- package/src/Icons/Person/assets/person-left@2x.png +0 -0
- package/src/Icons/Person/assets/person-left@3x.png +0 -0
- package/src/Icons/Person/assets/person-off.png +0 -0
- package/src/Icons/Person/assets/person-off@2x.png +0 -0
- package/src/Icons/Person/assets/person-off@3x.png +0 -0
- package/src/Icons/Person/assets/person-rectangle.png +0 -0
- package/src/Icons/Person/assets/person-rectangle@2x.png +0 -0
- package/src/Icons/Person/assets/person-rectangle@3x.png +0 -0
- package/src/Icons/Person/index.tsx +13 -2
- package/src/Icons/Search/assets/search.png +0 -0
- package/src/Icons/Search/assets/search@2x.png +0 -0
- package/src/Icons/Search/assets/search@3x.png +0 -0
- package/src/Icons/Search/index.tsx +33 -0
- package/src/Icons/WelcomeHand/assets/welcome-hand.png +0 -0
- package/src/Icons/WelcomeHand/assets/welcome-hand@2x.png +0 -0
- package/src/Icons/WelcomeHand/assets/welcome-hand@3x.png +0 -0
- package/src/Icons/WelcomeHand/index.tsx +27 -0
- package/src/Icons/index.ts +3 -0
- package/src/assets/audio-level-white.json +1271 -0
- package/src/assets/empty-chat-illustration/empty-chat.png +0 -0
- package/src/assets/empty-chat-illustration/empty-chat@2x.png +0 -0
- package/src/assets/empty-chat-illustration/empty-chat@3x.png +0 -0
- package/src/components/AnimatedFooter.tsx +37 -0
- package/src/components/AnimatedHLSFooter.tsx +43 -0
- package/src/components/AnimatedHeader.tsx +53 -0
- package/src/components/BottomSheet.tsx +8 -4
- package/src/components/ChangeNameModalContent.tsx +19 -9
- package/src/components/Chat/ChatBanner.tsx +37 -52
- package/src/components/Chat/ChatFilterBottomSheetOpener.tsx +88 -0
- package/src/components/Chat/ChatFilterBottomSheetView.tsx +81 -0
- package/src/components/Chat/ChatFilterItem.tsx +71 -0
- package/src/components/Chat/ChatFilterView.tsx +250 -0
- package/src/components/Chat/ChatList.tsx +16 -12
- package/src/components/Chat/ChatMessage.tsx +48 -197
- package/src/components/Chat/PinnedMessage.tsx +45 -45
- package/src/components/ChatAndParticipants/ChatAndParticipantsBottomSheet.tsx +38 -0
- package/src/components/ChatAndParticipants/ChatAndParticipantsHeader.tsx +143 -0
- package/src/components/ChatAndParticipants/ChatAndParticipantsView.tsx +84 -0
- package/src/components/ChatAndParticipants/ChatView.tsx +42 -0
- package/src/components/ChatAndParticipants/ParticipantsView.tsx +49 -0
- package/src/components/ChatAndParticipants/index.ts +1 -0
- package/src/components/CompanyLogo.tsx +3 -2
- package/src/components/DefaultModal.tsx +4 -6
- package/src/components/DisplayView.tsx +10 -26
- package/src/components/EndRoomModalContent.tsx +32 -7
- package/src/components/Footer.tsx +93 -58
- package/src/components/FullScreenVideoView.tsx +77 -0
- package/src/components/GridView.tsx +186 -65
- package/src/components/HLSFooter.tsx +32 -0
- package/src/components/HLSView.tsx +5 -32
- package/src/components/HMSBaseButton.tsx +2 -2
- package/src/components/HMSChat.tsx +12 -25
- package/src/components/HMSDangerButton.tsx +2 -1
- package/src/components/HMSHLSMessage.tsx +72 -0
- package/src/components/HMSHLSMessageList.tsx +60 -0
- package/src/components/HMSHLSNotStarted.tsx +8 -19
- package/src/components/HMSHLSStreamLoading.tsx +9 -3
- package/src/components/HMSHandRaiseNotification.tsx +101 -0
- package/src/components/HMSKeyboardAvoidingView.tsx +58 -0
- package/src/components/HMSLiveIndicator.tsx +124 -0
- package/src/components/HMSLocalScreenshareNotification.tsx +41 -0
- package/src/components/HMSLocalVideoView.tsx +4 -31
- package/src/components/HMSManageAudioOutput.tsx +14 -2
- package/src/components/HMSManageLeave.tsx +47 -19
- package/src/components/HMSManageRaiseHand.tsx +20 -13
- package/src/components/HMSNotification.tsx +126 -0
- package/src/components/HMSNotifications.tsx +154 -0
- package/src/components/HMSOverlayChatView.tsx +36 -0
- package/src/components/HMSPreviewHLSLiveIndicator.tsx +3 -2
- package/src/components/HMSPreviewJoinButton.tsx +20 -6
- package/src/components/HMSPreviewNetworkQuality.tsx +3 -1
- package/src/components/HMSPreviewSubtitle.tsx +2 -6
- package/src/components/HMSPreviewTile.tsx +1 -1
- package/src/components/HMSPreviewTitle.tsx +2 -6
- package/src/components/HMSRecordingIndicator.tsx +16 -3
- package/src/components/HMSRoleChangeDeclinedNotification.tsx +25 -0
- package/src/components/HMSSendMessageInput.tsx +59 -0
- package/src/components/HMSTextInput.tsx +158 -24
- package/src/components/HMSVideoView.tsx +43 -0
- package/src/components/Header.tsx +25 -133
- package/src/components/LocalPeerScreenshareView.tsx +0 -6
- package/src/components/Meeting.tsx +15 -8
- package/src/components/MeetingScreenContent.tsx +28 -11
- package/src/components/MiniView.tsx +10 -4
- package/src/components/Modals.tsx +112 -370
- package/src/components/OverlayContainer.tsx +31 -0
- package/src/components/OverlayedViews.tsx +22 -0
- package/src/components/PIPView.tsx +34 -13
- package/src/components/PaginationDots.tsx +9 -8
- package/src/components/Participants/MultiRoleParticipantsList.tsx +70 -0
- package/src/components/Participants/ParticipantsAccordian.tsx +70 -0
- package/src/components/Participants/ParticipantsAccordianExpanded.tsx +27 -0
- package/src/components/Participants/ParticipantsGroupFooter.tsx +65 -0
- package/src/components/Participants/ParticipantsGroupHeader.tsx +145 -0
- package/src/components/Participants/ParticipantsGroupOptions.tsx +82 -0
- package/src/components/Participants/ParticipantsItem.tsx +153 -0
- package/src/components/Participants/ParticipantsItemOption.tsx +52 -0
- package/src/components/Participants/ParticipantsItemOptions.tsx +262 -0
- package/src/components/Participants/ParticipantsList.tsx +222 -269
- package/src/components/Participants/ParticipantsListFooter.tsx +45 -0
- package/src/components/Participants/ParticipantsSeachInput.tsx +37 -35
- package/src/components/Participants/index.ts +1 -3
- package/src/components/PeerMinimizedView.tsx +1 -1
- package/src/components/PeerSettingsModalContent.tsx +44 -191
- package/src/components/PeerVideoTile/AvatarView.tsx +44 -6
- package/src/components/PeerVideoTile/HMSFullScreenButton.tsx +56 -0
- package/src/components/PeerVideoTile/HMSPinchGesture.tsx +176 -0
- package/src/components/PeerVideoTile/PeerAudioIndicator.tsx +83 -0
- package/src/components/PeerVideoTile/PeerMetadata.tsx +21 -12
- package/src/components/PeerVideoTile/PeerNameAndNetwork.tsx +15 -2
- package/src/components/PeerVideoTile/PeerVideoTileView.tsx +189 -115
- package/src/components/PeerVideoTile/VideoView.tsx +59 -9
- package/src/components/PressableIcon.tsx +26 -13
- package/src/components/Preview.tsx +39 -32
- package/src/components/PreviewForRoleChangeModal.tsx +443 -0
- package/src/components/ReconnectionView.tsx +73 -0
- package/src/components/RoomSettingsModalContent.tsx +60 -23
- package/src/components/RoomSettingsModalDebugModeContent.tsx +12 -66
- package/src/components/StreamingQualityModalContent.tsx +8 -8
- package/src/components/TilesContainer.tsx +54 -24
- package/src/components/WebrtcView.tsx +36 -17
- package/src/components/WelcomeInMeeting.tsx +19 -20
- package/src/components/index.ts +0 -3
- package/src/hooks-sdk.ts +58 -0
- package/src/hooks-util-selectors.tsx +69 -6
- package/src/hooks-util.ts +910 -292
- package/src/modules/HMSManager.ts +3 -3
- package/src/modules/parser.ts +3 -4
- package/src/redux/actionTypes.ts +36 -0
- package/src/redux/actions/index.ts +112 -1
- package/src/redux/reducers/appState.ts +83 -1
- package/src/redux/reducers/chatWindow.ts +12 -5
- package/src/redux/reducers/hmsStates.ts +369 -4
- package/src/redux/reducers/userState.ts +1 -1
- package/src/utils/functions.ts +9 -1
- package/src/utils/theme.ts +3 -1
- package/src/utils/types.ts +8 -2
- package/src/utils.ts +6 -0
- package/lib/commonjs/assets/100ms-logo.png +0 -0
- package/lib/commonjs/assets/brb.png +0 -0
- package/lib/commonjs/assets/icon.png +0 -0
- package/lib/commonjs/assets/illustration.png +0 -0
- package/lib/commonjs/assets/network_0.png +0 -0
- package/lib/commonjs/assets/network_1.png +0 -0
- package/lib/commonjs/assets/network_2.png +0 -0
- package/lib/commonjs/assets/network_3.png +0 -0
- package/lib/commonjs/assets/network_4.png +0 -0
- package/lib/commonjs/assets/user_music.png +0 -0
- package/lib/commonjs/components/ChatWindow.js +0 -608
- package/lib/commonjs/components/ChatWindow.js.map +0 -1
- package/lib/commonjs/components/CustomInput.js +0 -89
- package/lib/commonjs/components/CustomInput.js.map +0 -1
- package/lib/commonjs/components/DisplayTrack.js +0 -70
- package/lib/commonjs/components/DisplayTrack.js.map +0 -1
- package/lib/commonjs/components/HMSShareScreen.js +0 -59
- package/lib/commonjs/components/HMSShareScreen.js.map +0 -1
- package/lib/commonjs/components/HMSShowNetworkQuality.js +0 -56
- package/lib/commonjs/components/HMSShowNetworkQuality.js.map +0 -1
- package/lib/commonjs/components/LiveButton.js +0 -70
- package/lib/commonjs/components/LiveButton.js.map +0 -1
- package/lib/commonjs/components/Participants/ParticipantsFilter.js +0 -128
- package/lib/commonjs/components/Participants/ParticipantsFilter.js.map +0 -1
- package/lib/commonjs/components/Participants/ParticipantsHeader.js +0 -67
- package/lib/commonjs/components/Participants/ParticipantsHeader.js.map +0 -1
- package/lib/commonjs/components/Participants/SearchableParticipantsView.js +0 -27
- package/lib/commonjs/components/Participants/SearchableParticipantsView.js.map +0 -1
- package/lib/commonjs/components/ParticipantsModal.js +0 -43
- package/lib/commonjs/components/ParticipantsModal.js.map +0 -1
- package/lib/commonjs/components/PeerVideoTile/PeerAudioMutedIndicator.js +0 -44
- package/lib/commonjs/components/PeerVideoTile/PeerAudioMutedIndicator.js.map +0 -1
- package/lib/commonjs/components/Picker.js +0 -93
- package/lib/commonjs/components/Picker.js.map +0 -1
- package/lib/module/assets/100ms-logo.png +0 -0
- package/lib/module/assets/brb.png +0 -0
- package/lib/module/assets/icon.png +0 -0
- package/lib/module/assets/illustration.png +0 -0
- package/lib/module/assets/network_0.png +0 -0
- package/lib/module/assets/network_1.png +0 -0
- package/lib/module/assets/network_2.png +0 -0
- package/lib/module/assets/network_3.png +0 -0
- package/lib/module/assets/network_4.png +0 -0
- package/lib/module/assets/user_music.png +0 -0
- package/lib/module/components/ChatWindow.js +0 -595
- package/lib/module/components/ChatWindow.js.map +0 -1
- package/lib/module/components/CustomInput.js +0 -82
- package/lib/module/components/CustomInput.js.map +0 -1
- package/lib/module/components/DisplayTrack.js +0 -63
- package/lib/module/components/DisplayTrack.js.map +0 -1
- package/lib/module/components/HMSShareScreen.js +0 -50
- package/lib/module/components/HMSShareScreen.js.map +0 -1
- package/lib/module/components/HMSShowNetworkQuality.js +0 -47
- package/lib/module/components/HMSShowNetworkQuality.js.map +0 -1
- package/lib/module/components/LiveButton.js +0 -61
- package/lib/module/components/LiveButton.js.map +0 -1
- package/lib/module/components/Participants/ParticipantsFilter.js +0 -121
- package/lib/module/components/Participants/ParticipantsFilter.js.map +0 -1
- package/lib/module/components/Participants/ParticipantsHeader.js +0 -58
- package/lib/module/components/Participants/ParticipantsHeader.js.map +0 -1
- package/lib/module/components/Participants/SearchableParticipantsView.js +0 -18
- package/lib/module/components/Participants/SearchableParticipantsView.js.map +0 -1
- package/lib/module/components/ParticipantsModal.js +0 -34
- package/lib/module/components/ParticipantsModal.js.map +0 -1
- package/lib/module/components/PeerVideoTile/PeerAudioMutedIndicator.js +0 -35
- package/lib/module/components/PeerVideoTile/PeerAudioMutedIndicator.js.map +0 -1
- package/lib/module/components/Picker.js +0 -83
- package/lib/module/components/Picker.js.map +0 -1
- package/lib/typescript/components/ChatWindow.d.ts +0 -22
- package/lib/typescript/components/ChatWindow.d.ts.map +0 -1
- package/lib/typescript/components/CustomInput.d.ts +0 -24
- package/lib/typescript/components/CustomInput.d.ts.map +0 -1
- package/lib/typescript/components/DisplayTrack.d.ts +0 -9
- package/lib/typescript/components/DisplayTrack.d.ts.map +0 -1
- package/lib/typescript/components/HMSShareScreen.d.ts +0 -9
- package/lib/typescript/components/HMSShareScreen.d.ts.map +0 -1
- package/lib/typescript/components/HMSShowNetworkQuality.d.ts +0 -3
- package/lib/typescript/components/HMSShowNetworkQuality.d.ts.map +0 -1
- package/lib/typescript/components/LiveButton.d.ts +0 -17
- package/lib/typescript/components/LiveButton.d.ts.map +0 -1
- package/lib/typescript/components/Participants/ParticipantsFilter.d.ts +0 -6
- package/lib/typescript/components/Participants/ParticipantsFilter.d.ts.map +0 -1
- package/lib/typescript/components/Participants/ParticipantsHeader.d.ts +0 -9
- package/lib/typescript/components/Participants/ParticipantsHeader.d.ts.map +0 -1
- package/lib/typescript/components/Participants/SearchableParticipantsView.d.ts +0 -3
- package/lib/typescript/components/Participants/SearchableParticipantsView.d.ts.map +0 -1
- package/lib/typescript/components/ParticipantsModal.d.ts +0 -5
- package/lib/typescript/components/ParticipantsModal.d.ts.map +0 -1
- package/lib/typescript/components/PeerVideoTile/PeerAudioMutedIndicator.d.ts +0 -6
- package/lib/typescript/components/PeerVideoTile/PeerAudioMutedIndicator.d.ts.map +0 -1
- package/lib/typescript/components/Picker.d.ts +0 -9
- package/lib/typescript/components/Picker.d.ts.map +0 -1
- package/src/assets/100ms-logo.png +0 -0
- package/src/assets/brb.png +0 -0
- package/src/assets/icon.png +0 -0
- package/src/assets/illustration.png +0 -0
- package/src/assets/network_0.png +0 -0
- package/src/assets/network_1.png +0 -0
- package/src/assets/network_2.png +0 -0
- package/src/assets/network_3.png +0 -0
- package/src/assets/network_4.png +0 -0
- package/src/assets/user_music.png +0 -0
- package/src/components/ChatWindow.tsx +0 -706
- package/src/components/CustomInput.tsx +0 -138
- package/src/components/DisplayTrack.tsx +0 -92
- package/src/components/HMSShareScreen.tsx +0 -71
- package/src/components/HMSShowNetworkQuality.tsx +0 -68
- package/src/components/LiveButton.tsx +0 -77
- package/src/components/Participants/ParticipantsFilter.tsx +0 -144
- package/src/components/Participants/ParticipantsHeader.tsx +0 -64
- package/src/components/Participants/SearchableParticipantsView.tsx +0 -21
- package/src/components/ParticipantsModal.tsx +0 -46
- package/src/components/PeerVideoTile/PeerAudioMutedIndicator.tsx +0 -41
- package/src/components/Picker.tsx +0 -108
package/lib/module/hooks-util.js
CHANGED
|
@@ -1,26 +1,27 @@
|
|
|
1
|
-
import { HMSConfig, HMSPIPListenerActions, HMSPeerUpdate, HMSRoomUpdate, HMSTrackSource, HMSTrackType, HMSTrackUpdate, HMSUpdateListenerActions
|
|
1
|
+
import { HMSConfig, HMSMessage, HMSMessageRecipientType, HMSPIPListenerActions, HMSPeerUpdate, HMSRoomUpdate, HMSTrackSource, HMSTrackType, HMSTrackUpdate, HMSUpdateListenerActions, HMSMessageRecipient
|
|
2
2
|
// useHMSPeerUpdates,
|
|
3
3
|
} from '@100mslive/react-native-hms';
|
|
4
4
|
import Toast from 'react-native-simple-toast';
|
|
5
5
|
import { useRef, useCallback, useEffect, useState, useMemo, useContext } from 'react';
|
|
6
|
-
import { MaxTilesInOnePage, ModalTypes, PipModes } from './utils/types';
|
|
7
|
-
import { createPeerTrackNode
|
|
6
|
+
import { MaxTilesInOnePage, ModalTypes, PeerListRefreshInterval, PipModes } from './utils/types';
|
|
7
|
+
import { createPeerTrackNode } from './utils/functions';
|
|
8
8
|
import { batch, shallowEqual, useDispatch, useSelector, useStore } from 'react-redux';
|
|
9
|
-
import { addMessage, addPinnedMessage, changeMeetingState, changePipModeStatus, changeStartingHLSStream, clearStore, saveUserData, setHMSLocalPeerState, setHMSRoleState, setHMSRoomState, setIsLocalAudioMutedState, setIsLocalVideoMutedState, setLayoutConfig, setLocalPeerTrackNode, setMiniViewPeerTrackNode, setModalType, setStartingOrStoppingRecording, updateLocalPeerTrackNode, updateMiniViewPeerTrackNode } from './redux/actions';
|
|
9
|
+
import { addMessage, addNotification, addParticipant, addParticipants, addPinnedMessage, addScreenshareTile, addUpdateParticipant, changeMeetingState, changePipModeStatus, changeStartingHLSStream, clearStore, removeNotification, removeParticipant, removeParticipants, removeScreenshareTile, replaceParticipantsList, saveUserData, setActiveChatBottomSheetTab, setActiveSpeakers, setFullScreenPeerTrackNode, setHMSLocalPeerState, setHMSRoleState, setHMSRoomState, setIsLocalAudioMutedState, setIsLocalVideoMutedState, setLayoutConfig, setLocalPeerTrackNode, setMiniViewPeerTrackNode, setModalType, setReconnecting, setRoleChangeRequest, setStartingOrStoppingRecording, updateFullScreenPeerTrackNode, updateLocalPeerTrackNode, updateMiniViewPeerTrackNode, updateScreenshareTile } from './redux/actions';
|
|
10
10
|
import { createPeerTrackNodeUniqueId, degradeOrRestorePeerTrackNodes, peerTrackNodeExistForPeer, peerTrackNodeExistForPeerAndTrack, removePeerTrackNodes, removePeerTrackNodesWithTrack, replacePeerTrackNodes, replacePeerTrackNodesWithTrack } from './peerTrackNodeUtils';
|
|
11
11
|
import { MeetingState } from './types';
|
|
12
|
-
import {
|
|
12
|
+
import { InteractionManager, Keyboard, Platform } from 'react-native';
|
|
13
13
|
import { NavigationContext } from '@react-navigation/native';
|
|
14
14
|
import { useIsLandscapeOrientation, useIsPortraitOrientation } from './utils/dimension';
|
|
15
|
-
import {
|
|
16
|
-
import { selectIsHLSViewer, selectShouldGoLive } from './hooks-util-selectors';
|
|
15
|
+
import { selectChatLayoutConfig, selectConferencingScreenConfig, selectIsHLSViewer, selectLayoutConfigForRole, selectShouldGoLive, selectVideoTileLayoutConfig } from './hooks-util-selectors';
|
|
17
16
|
import { getRoomLayout } from './modules/HMSManager';
|
|
18
17
|
import { DEFAULT_THEME, DEFAULT_TYPOGRAPHY } from './utils/theme';
|
|
18
|
+
import { NotificationTypes } from './utils';
|
|
19
19
|
export const useHMSListeners = setPeerTrackNodes => {
|
|
20
20
|
const hmsInstance = useHMSInstance();
|
|
21
21
|
const updateLocalPeer = useUpdateHMSLocalPeer(hmsInstance);
|
|
22
22
|
useHMSRoomUpdate(hmsInstance);
|
|
23
23
|
useHMSPeersUpdate(hmsInstance, updateLocalPeer, setPeerTrackNodes);
|
|
24
|
+
useHMSPeerListUpdated(hmsInstance);
|
|
24
25
|
useHMSTrackUpdate(hmsInstance, updateLocalPeer, setPeerTrackNodes);
|
|
25
26
|
};
|
|
26
27
|
const useHMSRoomUpdate = hmsInstance => {
|
|
@@ -28,56 +29,27 @@ const useHMSRoomUpdate = hmsInstance => {
|
|
|
28
29
|
const reduxStore = useStore();
|
|
29
30
|
useEffect(() => {
|
|
30
31
|
const roomUpdateHandler = data => {
|
|
31
|
-
var _room$localPeer$role;
|
|
32
32
|
const {
|
|
33
33
|
room,
|
|
34
34
|
type
|
|
35
35
|
} = data;
|
|
36
36
|
dispatch(setHMSRoomState(room));
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Handle case when User is joining as HLSViewer,
|
|
40
|
-
* before ON_JOIN, if ON_ROOM comes then we can show Meeting screen to user, instead of Loader or Preview
|
|
41
|
-
*/
|
|
42
|
-
if (((_room$localPeer$role = room.localPeer.role) === null || _room$localPeer$role === void 0 || (_room$localPeer$role = _room$localPeer$role.name) === null || _room$localPeer$role === void 0 ? void 0 : _room$localPeer$role.includes('hls-')) ?? false) {
|
|
43
|
-
const meetingState = reduxStore.getState().app.meetingState;
|
|
44
|
-
batch(() => {
|
|
45
|
-
dispatch(setHMSLocalPeerState(room.localPeer));
|
|
46
|
-
if (meetingState !== MeetingState.IN_MEETING) {
|
|
47
|
-
dispatch(changeMeetingState(MeetingState.IN_MEETING));
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
37
|
if (type === HMSRoomUpdate.BROWSER_RECORDING_STATE_UPDATED) {
|
|
52
|
-
var _room$browserRecordin, _room$browserRecordin2;
|
|
53
38
|
const startingOrStoppingRecording = reduxStore.getState().app.startingOrStoppingRecording;
|
|
54
39
|
if (startingOrStoppingRecording) {
|
|
55
40
|
dispatch(setStartingOrStoppingRecording(false));
|
|
56
41
|
}
|
|
57
|
-
let streaming = room === null || room === void 0 || (_room$browserRecordin = room.browserRecordingState) === null || _room$browserRecordin === void 0 ? void 0 : _room$browserRecordin.running;
|
|
58
|
-
const startAtDate = room === null || room === void 0 || (_room$browserRecordin2 = room.browserRecordingState) === null || _room$browserRecordin2 === void 0 ? void 0 : _room$browserRecordin2.startedAt;
|
|
59
|
-
let startTime = null;
|
|
60
|
-
if (startAtDate) {
|
|
61
|
-
var _startAtDate$getMinut;
|
|
62
|
-
let hours = startAtDate.getHours().toString();
|
|
63
|
-
let minutes = (_startAtDate$getMinut = startAtDate.getMinutes()) === null || _startAtDate$getMinut === void 0 ? void 0 : _startAtDate$getMinut.toString();
|
|
64
|
-
startTime = hours + ':' + minutes;
|
|
65
|
-
}
|
|
66
|
-
Toast.showWithGravity(`Browser Recording ${streaming ? `Started ${startTime ? 'At ' + startTime : ''}` : 'Stopped'}`, Toast.LONG, Toast.TOP);
|
|
67
42
|
} else if (type === HMSRoomUpdate.HLS_STREAMING_STATE_UPDATED) {
|
|
68
|
-
var _room$hlsStreamingSta;
|
|
69
43
|
dispatch(changeStartingHLSStream(false));
|
|
70
|
-
let streaming = room === null || room === void 0 || (_room$hlsStreamingSta = room.hlsStreamingState) === null || _room$hlsStreamingSta === void 0 ? void 0 : _room$hlsStreamingSta.running;
|
|
71
|
-
Toast.showWithGravity(`HLS Streaming ${streaming ? 'Started' : 'Stopped'}`, Toast.LONG, Toast.TOP);
|
|
72
44
|
} else if (type === HMSRoomUpdate.RTMP_STREAMING_STATE_UPDATED) {
|
|
73
45
|
var _room$rtmpHMSRtmpStre, _room$rtmpHMSRtmpStre2;
|
|
74
46
|
let streaming = room === null || room === void 0 || (_room$rtmpHMSRtmpStre = room.rtmpHMSRtmpStreamingState) === null || _room$rtmpHMSRtmpStre === void 0 ? void 0 : _room$rtmpHMSRtmpStre.running;
|
|
75
47
|
const startAtDate = room === null || room === void 0 || (_room$rtmpHMSRtmpStre2 = room.rtmpHMSRtmpStreamingState) === null || _room$rtmpHMSRtmpStre2 === void 0 ? void 0 : _room$rtmpHMSRtmpStre2.startedAt;
|
|
76
48
|
let startTime = null;
|
|
77
49
|
if (startAtDate) {
|
|
78
|
-
var _startAtDate$
|
|
50
|
+
var _startAtDate$getMinut;
|
|
79
51
|
let hours = startAtDate.getHours().toString();
|
|
80
|
-
let minutes = (_startAtDate$
|
|
52
|
+
let minutes = (_startAtDate$getMinut = startAtDate.getMinutes()) === null || _startAtDate$getMinut === void 0 ? void 0 : _startAtDate$getMinut.toString();
|
|
81
53
|
startTime = hours + ':' + minutes;
|
|
82
54
|
}
|
|
83
55
|
Toast.showWithGravity(`RTMP Streaming ${streaming ? `Started ${startTime ? 'At ' + startTime : ''}` : 'Stopped'}`, Toast.LONG, Toast.TOP);
|
|
@@ -87,9 +59,9 @@ const useHMSRoomUpdate = hmsInstance => {
|
|
|
87
59
|
const startAtDate = room === null || room === void 0 || (_room$serverRecording2 = room.serverRecordingState) === null || _room$serverRecording2 === void 0 ? void 0 : _room$serverRecording2.startedAt;
|
|
88
60
|
let startTime = null;
|
|
89
61
|
if (startAtDate) {
|
|
90
|
-
var _startAtDate$
|
|
62
|
+
var _startAtDate$getMinut2;
|
|
91
63
|
let hours = startAtDate.getHours().toString();
|
|
92
|
-
let minutes = (_startAtDate$
|
|
64
|
+
let minutes = (_startAtDate$getMinut2 = startAtDate.getMinutes()) === null || _startAtDate$getMinut2 === void 0 ? void 0 : _startAtDate$getMinut2.toString();
|
|
93
65
|
startTime = hours + ':' + minutes;
|
|
94
66
|
}
|
|
95
67
|
Toast.showWithGravity(`Server Recording ${streaming ? `Started ${startTime ? 'At ' + startTime : ''}` : 'Stopped'}`, Toast.LONG, Toast.TOP);
|
|
@@ -126,37 +98,85 @@ const useHMSPeersUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
|
|
|
126
98
|
|
|
127
99
|
// Handle State for Meeting screen
|
|
128
100
|
if (type === HMSPeerUpdate.PEER_JOINED) {
|
|
101
|
+
dispatch(addParticipant(peer));
|
|
129
102
|
return;
|
|
130
103
|
}
|
|
131
104
|
if (type === HMSPeerUpdate.PEER_LEFT) {
|
|
105
|
+
dispatch(removeParticipant(peer));
|
|
106
|
+
|
|
107
|
+
// Handling regular tiles list
|
|
132
108
|
setPeerTrackNodes(prevPeerTrackNodes => removePeerTrackNodes(prevPeerTrackNodes, peer));
|
|
109
|
+
const reduxState = store.getState();
|
|
110
|
+
|
|
111
|
+
// Handling Screenshare tiles list
|
|
112
|
+
const screensharePeerTrackNodes = reduxState.app.screensharePeerTrackNodes;
|
|
113
|
+
const nodeToRemove = screensharePeerTrackNodes.find(node => node.peer.peerID === peer.peerID);
|
|
114
|
+
if (nodeToRemove) {
|
|
115
|
+
dispatch(removeScreenshareTile(nodeToRemove.id));
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
// Handling Full screen view
|
|
119
|
+
const fullScreenPeerTrackNode = reduxState.app.fullScreenPeerTrackNode;
|
|
120
|
+
if (fullScreenPeerTrackNode !== null && fullScreenPeerTrackNode.peer.peerID === peer.peerID) {
|
|
121
|
+
dispatch(setFullScreenPeerTrackNode(null));
|
|
122
|
+
}
|
|
133
123
|
return;
|
|
134
124
|
}
|
|
135
125
|
if (peer.isLocal) {
|
|
136
|
-
|
|
137
|
-
if (peerTrackNodeExistForPeer(prevPeerTrackNodes, peer)) {
|
|
138
|
-
return replacePeerTrackNodes(prevPeerTrackNodes, peer);
|
|
139
|
-
}
|
|
140
|
-
return prevPeerTrackNodes;
|
|
141
|
-
});
|
|
126
|
+
var _selectVideoTileLayou;
|
|
142
127
|
const reduxState = store.getState();
|
|
128
|
+
const fullScreenPeerTrackNode = reduxState.app.fullScreenPeerTrackNode;
|
|
143
129
|
const miniviewPeerTrackNode = reduxState.app.miniviewPeerTrackNode;
|
|
144
130
|
const localPeerTrackNode = reduxState.app.localPeerTrackNode;
|
|
131
|
+
|
|
132
|
+
// Currently Applied Layout config
|
|
133
|
+
const currentLayoutConfig = selectLayoutConfigForRole(reduxState.hmsStates.layoutConfig, peer.role || null);
|
|
134
|
+
|
|
135
|
+
// Local Tile Inset layout is enabled
|
|
136
|
+
const enableLocalTileInset = (_selectVideoTileLayou = selectVideoTileLayoutConfig(currentLayoutConfig)) === null || _selectVideoTileLayou === void 0 || (_selectVideoTileLayou = _selectVideoTileLayou.grid) === null || _selectVideoTileLayou === void 0 ? void 0 : _selectVideoTileLayou.enable_local_tile_inset;
|
|
137
|
+
|
|
138
|
+
// Local Tile Inset layout is disabled
|
|
139
|
+
const localTileInsetDisbaled = !enableLocalTileInset;
|
|
140
|
+
|
|
141
|
+
// Local Tile Inset layout is disabled
|
|
142
|
+
// then update local peer track node available in list of peer track nodes
|
|
143
|
+
if (localTileInsetDisbaled) {
|
|
144
|
+
setPeerTrackNodes(prevPeerTrackNodes => {
|
|
145
|
+
if (peerTrackNodeExistForPeer(prevPeerTrackNodes, peer)) {
|
|
146
|
+
return replacePeerTrackNodes(prevPeerTrackNodes, peer);
|
|
147
|
+
}
|
|
148
|
+
return prevPeerTrackNodes;
|
|
149
|
+
});
|
|
150
|
+
}
|
|
145
151
|
batch(() => {
|
|
146
152
|
if (localPeerTrackNode) {
|
|
147
153
|
dispatch(updateLocalPeerTrackNode({
|
|
148
154
|
peer
|
|
149
155
|
}));
|
|
150
|
-
} else {
|
|
156
|
+
} else if (isPublishingAllowed(peer)) {
|
|
151
157
|
dispatch(setLocalPeerTrackNode(createPeerTrackNode(peer, peer.videoTrack)));
|
|
152
158
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
if (miniviewPeerTrackNode && miniviewPeerTrackNode.peer.peerID === peer.peerID) {
|
|
156
|
-
dispatch(updateMiniViewPeerTrackNode({
|
|
159
|
+
if (fullScreenPeerTrackNode && fullScreenPeerTrackNode.peer.peerID === peer.peerID) {
|
|
160
|
+
dispatch(updateFullScreenPeerTrackNode({
|
|
157
161
|
peer
|
|
158
162
|
}));
|
|
159
163
|
}
|
|
164
|
+
|
|
165
|
+
// If Local Tile Inset layout is enabled, then update or set it
|
|
166
|
+
if (enableLocalTileInset) {
|
|
167
|
+
var _peer$role;
|
|
168
|
+
if (miniviewPeerTrackNode !== null && miniviewPeerTrackNode.peer.peerID === peer.peerID) {
|
|
169
|
+
dispatch(updateMiniViewPeerTrackNode({
|
|
170
|
+
peer
|
|
171
|
+
}));
|
|
172
|
+
} else if (miniviewPeerTrackNode === null && (_peer$role = peer.role) !== null && _peer$role !== void 0 && (_peer$role = _peer$role.publishSettings) !== null && _peer$role !== void 0 && _peer$role.allowed && peer.role.publishSettings.allowed.length > 0) {
|
|
173
|
+
dispatch(setMiniViewPeerTrackNode(createPeerTrackNode(peer, peer.videoTrack)));
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
// If Local Tile Inset layout is disabled, then remove it if it exists
|
|
177
|
+
else if (miniviewPeerTrackNode) {
|
|
178
|
+
dispatch(setMiniViewPeerTrackNode(null));
|
|
179
|
+
}
|
|
160
180
|
});
|
|
161
181
|
|
|
162
182
|
// - TODO: update local localPeer state
|
|
@@ -165,8 +185,11 @@ const useHMSPeersUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
|
|
|
165
185
|
return;
|
|
166
186
|
}
|
|
167
187
|
if (type === HMSPeerUpdate.ROLE_CHANGED) {
|
|
168
|
-
var _peer$
|
|
169
|
-
|
|
188
|
+
var _peer$role2, _peer$role3, _peer$role4, _peer$role5, _peer$role6, _peer$role7, _peer$role8, _peer$role9, _peer$role10;
|
|
189
|
+
dispatch(addUpdateParticipant(peer));
|
|
190
|
+
|
|
191
|
+
// Handling regular tiles list
|
|
192
|
+
if (((_peer$role2 = peer.role) === null || _peer$role2 === void 0 || (_peer$role2 = _peer$role2.publishSettings) === null || _peer$role2 === void 0 ? void 0 : _peer$role2.allowed) === undefined || (_peer$role3 = peer.role) !== null && _peer$role3 !== void 0 && (_peer$role3 = _peer$role3.publishSettings) !== null && _peer$role3 !== void 0 && _peer$role3.allowed && ((_peer$role4 = peer.role) === null || _peer$role4 === void 0 || (_peer$role4 = _peer$role4.publishSettings) === null || _peer$role4 === void 0 ? void 0 : _peer$role4.allowed.length) < 1) {
|
|
170
193
|
setPeerTrackNodes(prevPeerTrackNodes => {
|
|
171
194
|
if (peerTrackNodeExistForPeer(prevPeerTrackNodes, peer)) {
|
|
172
195
|
return removePeerTrackNodes(prevPeerTrackNodes, peer);
|
|
@@ -174,15 +197,84 @@ const useHMSPeersUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
|
|
|
174
197
|
return prevPeerTrackNodes;
|
|
175
198
|
});
|
|
176
199
|
}
|
|
200
|
+
const reduxState = store.getState();
|
|
201
|
+
|
|
202
|
+
// Handling screenshare tiles list
|
|
203
|
+
if (((_peer$role5 = peer.role) === null || _peer$role5 === void 0 || (_peer$role5 = _peer$role5.publishSettings) === null || _peer$role5 === void 0 ? void 0 : _peer$role5.allowed) === undefined || (_peer$role6 = peer.role) !== null && _peer$role6 !== void 0 && (_peer$role6 = _peer$role6.publishSettings) !== null && _peer$role6 !== void 0 && _peer$role6.allowed && !((_peer$role7 = peer.role) !== null && _peer$role7 !== void 0 && (_peer$role7 = _peer$role7.publishSettings) !== null && _peer$role7 !== void 0 && _peer$role7.allowed.includes('screen'))) {
|
|
204
|
+
const screensharePeerTrackNodes = reduxState.app.screensharePeerTrackNodes;
|
|
205
|
+
const nodeToRemove = screensharePeerTrackNodes.find(node => node.peer.peerID === peer.peerID);
|
|
206
|
+
if (nodeToRemove) {
|
|
207
|
+
dispatch(removeScreenshareTile(nodeToRemove.id));
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
// Handling full screen view
|
|
212
|
+
if (((_peer$role8 = peer.role) === null || _peer$role8 === void 0 || (_peer$role8 = _peer$role8.publishSettings) === null || _peer$role8 === void 0 ? void 0 : _peer$role8.allowed) === undefined || (_peer$role9 = peer.role) !== null && _peer$role9 !== void 0 && (_peer$role9 = _peer$role9.publishSettings) !== null && _peer$role9 !== void 0 && _peer$role9.allowed && !((_peer$role10 = peer.role) !== null && _peer$role10 !== void 0 && (_peer$role10 = _peer$role10.publishSettings) !== null && _peer$role10 !== void 0 && _peer$role10.allowed.includes('video'))) {
|
|
213
|
+
const fullScreenPeerTrackNode = reduxState.app.fullScreenPeerTrackNode;
|
|
214
|
+
if (fullScreenPeerTrackNode !== null && fullScreenPeerTrackNode.peer.peerID === peer.peerID) {
|
|
215
|
+
dispatch(setFullScreenPeerTrackNode(null));
|
|
216
|
+
}
|
|
217
|
+
}
|
|
177
218
|
return;
|
|
178
219
|
}
|
|
179
|
-
if (type === HMSPeerUpdate.METADATA_CHANGED || type === HMSPeerUpdate.NAME_CHANGED || type === HMSPeerUpdate.NETWORK_QUALITY_UPDATED) {
|
|
220
|
+
if (type === HMSPeerUpdate.METADATA_CHANGED || type === HMSPeerUpdate.HAND_RAISED_CHANGED || type === HMSPeerUpdate.NAME_CHANGED || type === HMSPeerUpdate.NETWORK_QUALITY_UPDATED) {
|
|
221
|
+
dispatch(addUpdateParticipant(peer));
|
|
222
|
+
const reduxState = store.getState();
|
|
223
|
+
if (type === HMSPeerUpdate.HAND_RAISED_CHANGED) {
|
|
224
|
+
const handRaised = peer.isHandRaised;
|
|
225
|
+
if (handRaised) {
|
|
226
|
+
var _selectedLayoutConfig, _peer$role11, _reduxState$hmsStates;
|
|
227
|
+
const {
|
|
228
|
+
layoutConfig,
|
|
229
|
+
localPeer
|
|
230
|
+
} = reduxState.hmsStates;
|
|
231
|
+
const selectedLayoutConfig = selectLayoutConfigForRole(layoutConfig, (localPeer === null || localPeer === void 0 ? void 0 : localPeer.role) || null);
|
|
232
|
+
|
|
233
|
+
// list of roles which should be brought on stage when they raise hand
|
|
234
|
+
const offStageRoles = selectedLayoutConfig === null || selectedLayoutConfig === void 0 || (_selectedLayoutConfig = selectedLayoutConfig.screens) === null || _selectedLayoutConfig === void 0 || (_selectedLayoutConfig = _selectedLayoutConfig.conferencing) === null || _selectedLayoutConfig === void 0 || (_selectedLayoutConfig = _selectedLayoutConfig.default) === null || _selectedLayoutConfig === void 0 || (_selectedLayoutConfig = _selectedLayoutConfig.elements) === null || _selectedLayoutConfig === void 0 || (_selectedLayoutConfig = _selectedLayoutConfig.on_stage_exp) === null || _selectedLayoutConfig === void 0 ? void 0 : _selectedLayoutConfig.off_stage_roles;
|
|
235
|
+
|
|
236
|
+
// checking if the current peer role is included in the above list
|
|
237
|
+
const shouldBringOnStage = offStageRoles && offStageRoles.includes((_peer$role11 = peer.role) === null || _peer$role11 === void 0 ? void 0 : _peer$role11.name);
|
|
238
|
+
const canChangeRole = (_reduxState$hmsStates = reduxState.hmsStates.localPeer) === null || _reduxState$hmsStates === void 0 || (_reduxState$hmsStates = _reduxState$hmsStates.role) === null || _reduxState$hmsStates === void 0 || (_reduxState$hmsStates = _reduxState$hmsStates.permissions) === null || _reduxState$hmsStates === void 0 ? void 0 : _reduxState$hmsStates.changeRole;
|
|
239
|
+
if (shouldBringOnStage && canChangeRole) {
|
|
240
|
+
dispatch(addNotification({
|
|
241
|
+
id: `${peer.peerID}-${NotificationTypes.HAND_RAISE}`,
|
|
242
|
+
type: NotificationTypes.HAND_RAISE,
|
|
243
|
+
peer
|
|
244
|
+
}));
|
|
245
|
+
}
|
|
246
|
+
} else {
|
|
247
|
+
const notifications = reduxState.app.notifications;
|
|
248
|
+
const notificationToRemove = notifications.find(notification => notification.id === `${peer.peerID}-${NotificationTypes.HAND_RAISE}`);
|
|
249
|
+
if (notificationToRemove) {
|
|
250
|
+
dispatch(removeNotification(notificationToRemove.id));
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
}
|
|
180
254
|
setPeerTrackNodes(prevPeerTrackNodes => {
|
|
181
255
|
if (peerTrackNodeExistForPeer(prevPeerTrackNodes, peer)) {
|
|
182
256
|
return replacePeerTrackNodes(prevPeerTrackNodes, peer);
|
|
183
257
|
}
|
|
184
258
|
return prevPeerTrackNodes;
|
|
185
259
|
});
|
|
260
|
+
|
|
261
|
+
// Handling screenshare tile views
|
|
262
|
+
const screensharePeerTrackNodes = reduxState.app.screensharePeerTrackNodes;
|
|
263
|
+
const nodeToUpdate = screensharePeerTrackNodes.find(node => node.peer.peerID === peer.peerID);
|
|
264
|
+
if (nodeToUpdate) {
|
|
265
|
+
dispatch(updateScreenshareTile({
|
|
266
|
+
id: nodeToUpdate.id,
|
|
267
|
+
peer
|
|
268
|
+
}));
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
// Handling fullscreen view
|
|
272
|
+
const fullScreenPeerTrackNode = reduxState.app.fullScreenPeerTrackNode;
|
|
273
|
+
if (fullScreenPeerTrackNode !== null && fullScreenPeerTrackNode.peer.peerID === peer.peerID) {
|
|
274
|
+
dispatch(updateFullScreenPeerTrackNode({
|
|
275
|
+
peer
|
|
276
|
+
}));
|
|
277
|
+
}
|
|
186
278
|
return;
|
|
187
279
|
}
|
|
188
280
|
};
|
|
@@ -192,41 +284,78 @@ const useHMSPeersUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
|
|
|
192
284
|
};
|
|
193
285
|
}, [hmsInstance]);
|
|
194
286
|
};
|
|
287
|
+
const useHMSPeerListUpdated = hmsInstance => {
|
|
288
|
+
const dispatch = useDispatch();
|
|
289
|
+
useEffect(() => {
|
|
290
|
+
const peerListUpdateHandler = _ref2 => {
|
|
291
|
+
let {
|
|
292
|
+
addedPeers,
|
|
293
|
+
removedPeers
|
|
294
|
+
} = _ref2;
|
|
295
|
+
batch(() => {
|
|
296
|
+
dispatch(addParticipants(addedPeers));
|
|
297
|
+
dispatch(removeParticipants(removedPeers));
|
|
298
|
+
});
|
|
299
|
+
};
|
|
300
|
+
hmsInstance.addEventListener(HMSUpdateListenerActions.ON_PEER_LIST_UPDATED, peerListUpdateHandler);
|
|
301
|
+
return () => {
|
|
302
|
+
hmsInstance.removeEventListener(HMSUpdateListenerActions.ON_PEER_LIST_UPDATED);
|
|
303
|
+
};
|
|
304
|
+
}, [hmsInstance]);
|
|
305
|
+
};
|
|
306
|
+
export const isPublishingAllowed = peer => {
|
|
307
|
+
var _peer$role12, _peer$role13;
|
|
308
|
+
return (((_peer$role12 = peer.role) === null || _peer$role12 === void 0 || (_peer$role12 = _peer$role12.publishSettings) === null || _peer$role12 === void 0 ? void 0 : _peer$role12.allowed) && ((_peer$role13 = peer.role) === null || _peer$role13 === void 0 || (_peer$role13 = _peer$role13.publishSettings) === null || _peer$role13 === void 0 || (_peer$role13 = _peer$role13.allowed) === null || _peer$role13 === void 0 ? void 0 : _peer$role13.length) > 0) ?? false;
|
|
309
|
+
};
|
|
195
310
|
const useHMSTrackUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
|
|
196
311
|
const dispatch = useDispatch();
|
|
197
312
|
const store = useStore();
|
|
198
313
|
useEffect(() => {
|
|
199
|
-
const trackUpdateHandler =
|
|
314
|
+
const trackUpdateHandler = _ref3 => {
|
|
315
|
+
var _reduxState$hmsStates2, _selectVideoTileLayou2;
|
|
200
316
|
let {
|
|
201
317
|
peer,
|
|
202
318
|
track,
|
|
203
319
|
type
|
|
204
|
-
} =
|
|
320
|
+
} = _ref3;
|
|
205
321
|
const reduxState = store.getState();
|
|
322
|
+
const fullScreenPeerTrackNode = reduxState.app.fullScreenPeerTrackNode;
|
|
206
323
|
const miniviewPeerTrackNode = reduxState.app.miniviewPeerTrackNode;
|
|
207
324
|
const localPeerTrackNode = reduxState.app.localPeerTrackNode;
|
|
325
|
+
const currentLayoutConfig = selectLayoutConfigForRole(reduxState.hmsStates.layoutConfig, ((_reduxState$hmsStates2 = reduxState.hmsStates.localPeer) === null || _reduxState$hmsStates2 === void 0 ? void 0 : _reduxState$hmsStates2.role) ?? null);
|
|
326
|
+
const localTileInsetEnabled = (_selectVideoTileLayou2 = selectVideoTileLayoutConfig(currentLayoutConfig)) === null || _selectVideoTileLayou2 === void 0 || (_selectVideoTileLayou2 = _selectVideoTileLayou2.grid) === null || _selectVideoTileLayou2 === void 0 ? void 0 : _selectVideoTileLayou2.enable_local_tile_inset;
|
|
208
327
|
if (type === HMSTrackUpdate.TRACK_ADDED) {
|
|
209
328
|
const newPeerTrackNode = createPeerTrackNode(peer, track);
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
if (track.type === HMSTrackType.VIDEO) {
|
|
214
|
-
return replacePeerTrackNodesWithTrack(prevPeerTrackNodes, peer, track);
|
|
215
|
-
}
|
|
216
|
-
return replacePeerTrackNodes(prevPeerTrackNodes, peer);
|
|
217
|
-
}
|
|
218
|
-
if (miniviewPeerTrackNode ? newPeerTrackNode.id !== miniviewPeerTrackNode.id : !willCreateMiniviewPeerTrackNode) {
|
|
219
|
-
return [...prevPeerTrackNodes, newPeerTrackNode];
|
|
329
|
+
if (track.source === HMSTrackSource.SCREEN) {
|
|
330
|
+
if (!peer.isLocal && track.type === HMSTrackType.VIDEO) {
|
|
331
|
+
dispatch(addScreenshareTile(newPeerTrackNode));
|
|
220
332
|
}
|
|
221
|
-
|
|
222
|
-
|
|
333
|
+
} else {
|
|
334
|
+
setPeerTrackNodes(prevPeerTrackNodes => {
|
|
335
|
+
if (peerTrackNodeExistForPeerAndTrack(prevPeerTrackNodes, peer, track)) {
|
|
336
|
+
if (track.type === HMSTrackType.VIDEO) {
|
|
337
|
+
return replacePeerTrackNodesWithTrack(prevPeerTrackNodes, peer, track);
|
|
338
|
+
}
|
|
339
|
+
return replacePeerTrackNodes(prevPeerTrackNodes, peer);
|
|
340
|
+
}
|
|
341
|
+
if (peer.isLocal && !localTileInsetEnabled) {
|
|
342
|
+
return [newPeerTrackNode, ...prevPeerTrackNodes];
|
|
343
|
+
}
|
|
344
|
+
if (!peer.isLocal && (miniviewPeerTrackNode ? newPeerTrackNode.id !== miniviewPeerTrackNode.id : true)) {
|
|
345
|
+
return [...prevPeerTrackNodes, newPeerTrackNode];
|
|
346
|
+
}
|
|
347
|
+
return prevPeerTrackNodes;
|
|
348
|
+
});
|
|
349
|
+
}
|
|
223
350
|
|
|
224
351
|
// - TODO: update local localPeer state
|
|
225
352
|
// - Pass this updated data to Meeting component -> DisplayView component
|
|
226
353
|
if (peer.isLocal) {
|
|
227
354
|
if (track.source === HMSTrackSource.REGULAR) {
|
|
228
355
|
if (!localPeerTrackNode) {
|
|
229
|
-
|
|
356
|
+
if (isPublishingAllowed(newPeerTrackNode.peer)) {
|
|
357
|
+
dispatch(setLocalPeerTrackNode(newPeerTrackNode));
|
|
358
|
+
}
|
|
230
359
|
} else {
|
|
231
360
|
dispatch(updateLocalPeerTrackNode(track.type === HMSTrackType.VIDEO ? {
|
|
232
361
|
peer,
|
|
@@ -235,20 +364,27 @@ const useHMSTrackUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
|
|
|
235
364
|
peer
|
|
236
365
|
}));
|
|
237
366
|
}
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
367
|
+
if (localTileInsetEnabled) {
|
|
368
|
+
// only setting `miniviewPeerTrackNode`, when:
|
|
369
|
+
// - there is no `miniviewPeerTrackNode`
|
|
370
|
+
// - if there is, then it is of regular track
|
|
371
|
+
if (!miniviewPeerTrackNode) {
|
|
372
|
+
dispatch(setMiniViewPeerTrackNode(newPeerTrackNode));
|
|
373
|
+
} else if (miniviewPeerTrackNode.id === newPeerTrackNode.id) {
|
|
374
|
+
dispatch(updateMiniViewPeerTrackNode(track.type === HMSTrackType.VIDEO ? {
|
|
375
|
+
peer,
|
|
376
|
+
track
|
|
377
|
+
} : {
|
|
378
|
+
peer
|
|
379
|
+
}));
|
|
380
|
+
}
|
|
251
381
|
}
|
|
382
|
+
|
|
383
|
+
// if (track.type === HMSTrackType.AUDIO) {
|
|
384
|
+
// dispatch(setIsLocalAudioMutedState(track.isMute()));
|
|
385
|
+
// } else if (track.type === HMSTrackType.VIDEO) {
|
|
386
|
+
// dispatch(setIsLocalVideoMutedState(track.isMute()));
|
|
387
|
+
// }
|
|
252
388
|
}
|
|
253
389
|
// else -> {
|
|
254
390
|
// should `localPeerTrackNode` be created/updated for non-regular track addition?
|
|
@@ -273,9 +409,23 @@ const useHMSTrackUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
|
|
|
273
409
|
}
|
|
274
410
|
if (type === HMSTrackUpdate.TRACK_REMOVED) {
|
|
275
411
|
var _peer$audioTrack, _peer$videoTrack;
|
|
276
|
-
if (track.source
|
|
412
|
+
if (track.source === HMSTrackSource.SCREEN) {
|
|
413
|
+
if (!peer.isLocal && track.type === HMSTrackType.VIDEO) {
|
|
414
|
+
const screensharePeerTrackNodes = reduxState.app.screensharePeerTrackNodes;
|
|
415
|
+
const nodeToRemove = screensharePeerTrackNodes.find(node => {
|
|
416
|
+
var _node$track;
|
|
417
|
+
return ((_node$track = node.track) === null || _node$track === void 0 ? void 0 : _node$track.trackId) === track.trackId;
|
|
418
|
+
});
|
|
419
|
+
if (nodeToRemove) {
|
|
420
|
+
dispatch(removeScreenshareTile(nodeToRemove.id));
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
} else if (track.source === HMSTrackSource.PLUGIN || ((_peer$audioTrack = peer.audioTrack) === null || _peer$audioTrack === void 0 ? void 0 : _peer$audioTrack.trackId) === undefined && ((_peer$videoTrack = peer.videoTrack) === null || _peer$videoTrack === void 0 ? void 0 : _peer$videoTrack.trackId) === undefined) {
|
|
277
424
|
setPeerTrackNodes(prevPeerTrackNodes => removePeerTrackNodesWithTrack(prevPeerTrackNodes, peer, track));
|
|
278
425
|
}
|
|
426
|
+
if (fullScreenPeerTrackNode && fullScreenPeerTrackNode.track && fullScreenPeerTrackNode.track.trackId === track.trackId) {
|
|
427
|
+
dispatch(setFullScreenPeerTrackNode(null));
|
|
428
|
+
}
|
|
279
429
|
|
|
280
430
|
// - TODO: update local localPeer state
|
|
281
431
|
// - Pass this updated data to Meeting component -> DisplayView component
|
|
@@ -353,46 +503,63 @@ const useHMSTrackUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
|
|
|
353
503
|
|
|
354
504
|
// - TODO: update local localPeer state
|
|
355
505
|
// - Pass this updated data to Meeting component -> DisplayView component
|
|
506
|
+
const updatePayload = track.type === HMSTrackType.VIDEO ? {
|
|
507
|
+
peer,
|
|
508
|
+
track
|
|
509
|
+
} : {
|
|
510
|
+
peer
|
|
511
|
+
};
|
|
356
512
|
if (peer.isLocal) {
|
|
357
|
-
const updatePayload = track.type === HMSTrackType.VIDEO ? {
|
|
358
|
-
peer,
|
|
359
|
-
track
|
|
360
|
-
} : {
|
|
361
|
-
peer
|
|
362
|
-
};
|
|
363
513
|
dispatch(updateLocalPeerTrackNode(updatePayload));
|
|
364
|
-
|
|
365
|
-
// Take care of miniviewPeerTrackNode
|
|
366
|
-
if (miniviewPeerTrackNode && miniviewPeerTrackNode.id === uniqueId) {
|
|
367
|
-
dispatch(updateMiniViewPeerTrackNode(updatePayload));
|
|
368
|
-
}
|
|
369
514
|
updateLocalPeer();
|
|
370
|
-
}
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
peer
|
|
377
|
-
};
|
|
378
|
-
dispatch(updateMiniViewPeerTrackNode(updatePayload));
|
|
379
|
-
}
|
|
515
|
+
}
|
|
516
|
+
if (miniviewPeerTrackNode && miniviewPeerTrackNode.id === uniqueId) {
|
|
517
|
+
dispatch(updateMiniViewPeerTrackNode(updatePayload));
|
|
518
|
+
}
|
|
519
|
+
if (fullScreenPeerTrackNode && fullScreenPeerTrackNode.id === uniqueId) {
|
|
520
|
+
dispatch(updateFullScreenPeerTrackNode(updatePayload));
|
|
380
521
|
}
|
|
381
522
|
return;
|
|
382
523
|
}
|
|
383
524
|
if (type === HMSTrackUpdate.TRACK_RESTORED || type === HMSTrackUpdate.TRACK_DEGRADED) {
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
525
|
+
// Checking if track source is screenshare
|
|
526
|
+
if (track.source === HMSTrackSource.SCREEN) {
|
|
527
|
+
// Handling screenshare tiles list
|
|
528
|
+
const screensharePeerTrackNodes = reduxState.app.screensharePeerTrackNodes;
|
|
529
|
+
const nodeToUpdate = screensharePeerTrackNodes.find(node => {
|
|
530
|
+
var _node$track2;
|
|
531
|
+
return ((_node$track2 = node.track) === null || _node$track2 === void 0 ? void 0 : _node$track2.trackId) === track.trackId;
|
|
532
|
+
});
|
|
533
|
+
if (nodeToUpdate) {
|
|
534
|
+
dispatch(updateScreenshareTile({
|
|
535
|
+
id: nodeToUpdate.id,
|
|
536
|
+
isDegraded: type === HMSTrackUpdate.TRACK_DEGRADED
|
|
537
|
+
}));
|
|
387
538
|
}
|
|
388
|
-
|
|
389
|
-
|
|
539
|
+
} else {
|
|
540
|
+
// Handling regular tiles list
|
|
541
|
+
setPeerTrackNodes(prevPeerTrackNodes => {
|
|
542
|
+
if (peerTrackNodeExistForPeerAndTrack(prevPeerTrackNodes, peer, track)) {
|
|
543
|
+
return degradeOrRestorePeerTrackNodes(prevPeerTrackNodes, peer, track, type === HMSTrackUpdate.TRACK_DEGRADED);
|
|
544
|
+
}
|
|
545
|
+
return prevPeerTrackNodes;
|
|
546
|
+
});
|
|
547
|
+
}
|
|
390
548
|
const uniqueId = createPeerTrackNodeUniqueId(peer, track);
|
|
549
|
+
|
|
550
|
+
// Handling miniview
|
|
391
551
|
if (miniviewPeerTrackNode && miniviewPeerTrackNode.id === uniqueId) {
|
|
392
552
|
dispatch(updateMiniViewPeerTrackNode({
|
|
393
553
|
isDegraded: type === HMSTrackUpdate.TRACK_DEGRADED
|
|
394
554
|
}));
|
|
395
555
|
}
|
|
556
|
+
|
|
557
|
+
// Handling full screen view
|
|
558
|
+
if (fullScreenPeerTrackNode && fullScreenPeerTrackNode.id === uniqueId) {
|
|
559
|
+
dispatch(updateFullScreenPeerTrackNode({
|
|
560
|
+
isDegraded: type === HMSTrackUpdate.TRACK_DEGRADED
|
|
561
|
+
}));
|
|
562
|
+
}
|
|
396
563
|
return;
|
|
397
564
|
}
|
|
398
565
|
};
|
|
@@ -429,7 +596,14 @@ export const useHMSInstance = () => {
|
|
|
429
596
|
return hmsInstance;
|
|
430
597
|
};
|
|
431
598
|
export const useIsHLSViewer = () => {
|
|
432
|
-
return useSelector(state =>
|
|
599
|
+
return useSelector(state => {
|
|
600
|
+
const {
|
|
601
|
+
layoutConfig,
|
|
602
|
+
localPeer
|
|
603
|
+
} = state.hmsStates;
|
|
604
|
+
const selectedLayoutConfig = selectLayoutConfigForRole(layoutConfig, (localPeer === null || localPeer === void 0 ? void 0 : localPeer.role) || null);
|
|
605
|
+
return selectIsHLSViewer(localPeer === null || localPeer === void 0 ? void 0 : localPeer.role, selectedLayoutConfig);
|
|
606
|
+
});
|
|
433
607
|
};
|
|
434
608
|
export const useHMSChangeTrackStateRequest = (callback, deps) => {
|
|
435
609
|
const hmsInstance = useHMSInstance();
|
|
@@ -442,7 +616,7 @@ export const useHMSChangeTrackStateRequest = (callback, deps) => {
|
|
|
442
616
|
requestedBy: request === null || request === void 0 || (_request$requestedBy = request.requestedBy) === null || _request$requestedBy === void 0 ? void 0 : _request$requestedBy.name,
|
|
443
617
|
suggestedRole: request === null || request === void 0 ? void 0 : request.trackType
|
|
444
618
|
});
|
|
445
|
-
callback === null || callback === void 0
|
|
619
|
+
callback === null || callback === void 0 || callback(request);
|
|
446
620
|
} else {
|
|
447
621
|
var _request$requestedBy2;
|
|
448
622
|
Toast.showWithGravity(`Track Muted: ${request === null || request === void 0 || (_request$requestedBy2 = request.requestedBy) === null || _request$requestedBy2 === void 0 ? void 0 : _request$requestedBy2.name} Muted Your ${request === null || request === void 0 ? void 0 : request.trackType}`, Toast.LONG, Toast.TOP);
|
|
@@ -456,23 +630,23 @@ export const useHMSChangeTrackStateRequest = (callback, deps) => {
|
|
|
456
630
|
return trackStateChangeRequest;
|
|
457
631
|
};
|
|
458
632
|
export const useHMSRoleChangeRequest = (callback, deps) => {
|
|
633
|
+
const taskRef = useRef(null);
|
|
634
|
+
const dispatch = useDispatch();
|
|
459
635
|
const hmsInstance = useHMSInstance();
|
|
460
|
-
const [roleChangeRequest, setRoleChangeRequest] = useState(null);
|
|
461
636
|
useEffect(() => {
|
|
462
|
-
const changeRoleRequestHandler = request => {
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
suggestedRole: request === null || request === void 0 || (_request$suggestedRol = request.suggestedRole) === null || _request$suggestedRol === void 0 ? void 0 : _request$suggestedRol.name
|
|
637
|
+
const changeRoleRequestHandler = async request => {
|
|
638
|
+
taskRef.current = InteractionManager.runAfterInteractions(() => {
|
|
639
|
+
dispatch(setRoleChangeRequest(request));
|
|
640
|
+
callback === null || callback === void 0 || callback(request);
|
|
467
641
|
});
|
|
468
|
-
callback === null || callback === void 0 ? void 0 : callback(request);
|
|
469
642
|
};
|
|
470
643
|
hmsInstance.addEventListener(HMSUpdateListenerActions.ON_ROLE_CHANGE_REQUEST, changeRoleRequestHandler);
|
|
471
644
|
return () => {
|
|
645
|
+
var _taskRef$current;
|
|
646
|
+
(_taskRef$current = taskRef.current) === null || _taskRef$current === void 0 || _taskRef$current.cancel();
|
|
472
647
|
hmsInstance.removeEventListener(HMSUpdateListenerActions.ON_ROLE_CHANGE_REQUEST);
|
|
473
648
|
};
|
|
474
649
|
}, [...(deps || []), hmsInstance]);
|
|
475
|
-
return roleChangeRequest;
|
|
476
650
|
};
|
|
477
651
|
export const useHMSSessionStoreListeners = gridViewRef => {
|
|
478
652
|
const dispatch = useDispatch();
|
|
@@ -492,7 +666,7 @@ export const useHMSSessionStoreListeners = gridViewRef => {
|
|
|
492
666
|
spotlightTrackId: id
|
|
493
667
|
}));
|
|
494
668
|
// Scroll to start of the list
|
|
495
|
-
(_gridViewRef$current = gridViewRef.current) === null || _gridViewRef$current === void 0 || (_gridViewRef$current = _gridViewRef$current.
|
|
669
|
+
(_gridViewRef$current = gridViewRef.current) === null || _gridViewRef$current === void 0 || (_gridViewRef$current = _gridViewRef$current.getRegularTilesFlatlistRef().current) === null || _gridViewRef$current === void 0 || _gridViewRef$current.scrollToOffset({
|
|
496
670
|
animated: true,
|
|
497
671
|
offset: 0
|
|
498
672
|
});
|
|
@@ -593,10 +767,10 @@ export const useHMSSessionStore = () => {
|
|
|
593
767
|
const hmsInstance = useHMSInstance();
|
|
594
768
|
const dispatch = useDispatch();
|
|
595
769
|
useEffect(() => {
|
|
596
|
-
const onSessionStoreAvailableListener =
|
|
770
|
+
const onSessionStoreAvailableListener = _ref4 => {
|
|
597
771
|
let {
|
|
598
772
|
sessionStore
|
|
599
|
-
} =
|
|
773
|
+
} = _ref4;
|
|
600
774
|
// Saving `sessionStore` reference in `redux`
|
|
601
775
|
dispatch(saveUserData({
|
|
602
776
|
hmsSessionStore: sessionStore
|
|
@@ -611,22 +785,65 @@ export const useHMSSessionStore = () => {
|
|
|
611
785
|
export const useHMSMessages = () => {
|
|
612
786
|
const hmsInstance = useHMSInstance();
|
|
613
787
|
const dispatch = useDispatch();
|
|
788
|
+
const canChangeRole = useSelector(state => {
|
|
789
|
+
var _state$hmsStates$loca;
|
|
790
|
+
return (_state$hmsStates$loca = state.hmsStates.localPeer) === null || _state$hmsStates$loca === void 0 || (_state$hmsStates$loca = _state$hmsStates$loca.role) === null || _state$hmsStates$loca === void 0 || (_state$hmsStates$loca = _state$hmsStates$loca.permissions) === null || _state$hmsStates$loca === void 0 ? void 0 : _state$hmsStates$loca.changeRole;
|
|
791
|
+
});
|
|
792
|
+
const canShowChat = useHMSConferencingScreenConfig(conferencingScreenConfig => {
|
|
793
|
+
var _conferencingScreenCo;
|
|
794
|
+
return !!(conferencingScreenConfig !== null && conferencingScreenConfig !== void 0 && (_conferencingScreenCo = conferencingScreenConfig.elements) !== null && _conferencingScreenCo !== void 0 && _conferencingScreenCo.chat);
|
|
795
|
+
});
|
|
614
796
|
useEffect(() => {
|
|
615
797
|
const onMessageListener = message => {
|
|
616
|
-
|
|
798
|
+
if (message.type === NotificationTypes.ROLE_CHANGE_DECLINED) {
|
|
799
|
+
if (canChangeRole) {
|
|
800
|
+
var _message$sender;
|
|
801
|
+
dispatch(addNotification({
|
|
802
|
+
id: `${(_message$sender = message.sender) === null || _message$sender === void 0 ? void 0 : _message$sender.peerID}-${NotificationTypes.ROLE_CHANGE_DECLINED}`,
|
|
803
|
+
type: NotificationTypes.ROLE_CHANGE_DECLINED,
|
|
804
|
+
peer: message.sender
|
|
805
|
+
}));
|
|
806
|
+
}
|
|
807
|
+
} else if (message.type === 'EMOJI_REACTION') {
|
|
808
|
+
console.log('Ignoring Emoji Reaction Message: ', message);
|
|
809
|
+
} else if (canShowChat) {
|
|
810
|
+
dispatch(addMessage(message));
|
|
811
|
+
}
|
|
617
812
|
};
|
|
618
813
|
hmsInstance.addEventListener(HMSUpdateListenerActions.ON_MESSAGE, onMessageListener);
|
|
619
814
|
return () => {
|
|
620
815
|
// TODO: Remove this listener when user leaves, removed or room is ended
|
|
621
816
|
hmsInstance.removeEventListener(HMSUpdateListenerActions.ON_MESSAGE);
|
|
622
817
|
};
|
|
818
|
+
}, [canChangeRole, canShowChat, hmsInstance]);
|
|
819
|
+
};
|
|
820
|
+
export const useHMSReconnection = () => {
|
|
821
|
+
const dispatch = useDispatch();
|
|
822
|
+
const hmsInstance = useHMSInstance();
|
|
823
|
+
useEffect(() => {
|
|
824
|
+
let mounted = true;
|
|
825
|
+
hmsInstance.addEventListener(HMSUpdateListenerActions.RECONNECTING, () => {
|
|
826
|
+
if (mounted) {
|
|
827
|
+
dispatch(setReconnecting(true));
|
|
828
|
+
}
|
|
829
|
+
});
|
|
830
|
+
hmsInstance.addEventListener(HMSUpdateListenerActions.RECONNECTED, () => {
|
|
831
|
+
if (mounted) {
|
|
832
|
+
dispatch(setReconnecting(false));
|
|
833
|
+
}
|
|
834
|
+
});
|
|
835
|
+
return () => {
|
|
836
|
+
mounted = false;
|
|
837
|
+
hmsInstance.removeEventListener(HMSUpdateListenerActions.RECONNECTING);
|
|
838
|
+
hmsInstance.removeEventListener(HMSUpdateListenerActions.RECONNECTED);
|
|
839
|
+
};
|
|
623
840
|
}, [hmsInstance]);
|
|
624
841
|
};
|
|
625
842
|
export const useHMSPIPRoomLeave = () => {
|
|
626
843
|
const hmsInstance = useHMSInstance();
|
|
627
844
|
const {
|
|
628
845
|
destroy
|
|
629
|
-
} = useLeaveMethods();
|
|
846
|
+
} = useLeaveMethods(true);
|
|
630
847
|
useEffect(() => {
|
|
631
848
|
const pipRoomLeaveHandler = () => {
|
|
632
849
|
destroy();
|
|
@@ -641,7 +858,7 @@ export const useHMSRemovedFromRoomUpdate = () => {
|
|
|
641
858
|
const hmsInstance = useHMSInstance();
|
|
642
859
|
const {
|
|
643
860
|
destroy
|
|
644
|
-
} = useLeaveMethods();
|
|
861
|
+
} = useLeaveMethods(true);
|
|
645
862
|
useEffect(() => {
|
|
646
863
|
const removedFromRoomHandler = () => {
|
|
647
864
|
destroy();
|
|
@@ -657,18 +874,14 @@ export const usePIPListener = () => {
|
|
|
657
874
|
const dispatch = useDispatch();
|
|
658
875
|
const isPipModeActive = useSelector(state => state.app.pipModeStatus === PipModes.ACTIVE);
|
|
659
876
|
useEffect(() => {
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
dispatch(changePipModeStatus(PipModes.INACTIVE));
|
|
669
|
-
};
|
|
670
|
-
}
|
|
671
|
-
}, [isPipModeActive]);
|
|
877
|
+
const pipModeChangedHandler = data => {
|
|
878
|
+
dispatch(changePipModeStatus(data.isInPictureInPictureMode ? PipModes.ACTIVE : PipModes.INACTIVE));
|
|
879
|
+
};
|
|
880
|
+
hmsInstance.addEventListener(HMSPIPListenerActions.ON_PIP_MODE_CHANGED, pipModeChangedHandler);
|
|
881
|
+
return () => {
|
|
882
|
+
hmsInstance.removeEventListener(HMSPIPListenerActions.ON_PIP_MODE_CHANGED);
|
|
883
|
+
};
|
|
884
|
+
}, []);
|
|
672
885
|
|
|
673
886
|
// Check if PIP is supported or not
|
|
674
887
|
useEffect(() => {
|
|
@@ -697,6 +910,7 @@ export const useHMSNetworkQualityUpdate = () => {
|
|
|
697
910
|
};
|
|
698
911
|
export const useHMSActiveSpeakerUpdates = (setPeerTrackNodes, active) => {
|
|
699
912
|
const hmsInstance = useHMSInstance();
|
|
913
|
+
const dispatch = useDispatch();
|
|
700
914
|
const reduxStore = useStore();
|
|
701
915
|
const isPortraitOrientation = useIsPortraitOrientation();
|
|
702
916
|
useEffect(() => {
|
|
@@ -704,6 +918,7 @@ export const useHMSActiveSpeakerUpdates = (setPeerTrackNodes, active) => {
|
|
|
704
918
|
return;
|
|
705
919
|
}
|
|
706
920
|
const handleActiveSpeaker = data => {
|
|
921
|
+
dispatch(setActiveSpeakers(data));
|
|
707
922
|
const activePage = reduxStore.getState().app.gridViewActivePage;
|
|
708
923
|
if (activePage !== 0) {
|
|
709
924
|
return;
|
|
@@ -753,7 +968,7 @@ let modalTaskRef = {
|
|
|
753
968
|
export const clearPendingModalTasks = () => {
|
|
754
969
|
if (Platform.OS === 'android') {
|
|
755
970
|
var _modalTaskRef$current;
|
|
756
|
-
(_modalTaskRef$current = modalTaskRef.current) === null || _modalTaskRef$current === void 0
|
|
971
|
+
(_modalTaskRef$current = modalTaskRef.current) === null || _modalTaskRef$current === void 0 || _modalTaskRef$current.cancel();
|
|
757
972
|
} else {
|
|
758
973
|
clearTimeout(modalTaskRef.current);
|
|
759
974
|
}
|
|
@@ -807,10 +1022,11 @@ export const useFetchHMSRoles = () => {
|
|
|
807
1022
|
export const useShowLandscapeLayout = () => {
|
|
808
1023
|
const isLandscapeOrientation = useIsLandscapeOrientation();
|
|
809
1024
|
const localPeerRoleName = useSelector(state => {
|
|
810
|
-
var _state$hmsStates$
|
|
811
|
-
return (_state$hmsStates$
|
|
1025
|
+
var _state$hmsStates$loca2;
|
|
1026
|
+
return (_state$hmsStates$loca2 = state.hmsStates.localPeer) === null || _state$hmsStates$loca2 === void 0 || (_state$hmsStates$loca2 = _state$hmsStates$loca2.role) === null || _state$hmsStates$loca2 === void 0 ? void 0 : _state$hmsStates$loca2.name;
|
|
812
1027
|
});
|
|
813
|
-
|
|
1028
|
+
const isHLSViewer = useIsHLSViewer();
|
|
1029
|
+
return isLandscapeOrientation && !!localPeerRoleName && isHLSViewer;
|
|
814
1030
|
};
|
|
815
1031
|
let hmsConfig = null;
|
|
816
1032
|
export const clearConfig = () => {
|
|
@@ -821,14 +1037,15 @@ export const useHMSConfig = () => {
|
|
|
821
1037
|
const dispatch = useDispatch();
|
|
822
1038
|
const store = useStore();
|
|
823
1039
|
const getConfig = useCallback(async () => {
|
|
824
|
-
var _storeState$user$endP, _storeState$user$
|
|
1040
|
+
var _storeState$user$endP, _storeState$user$endP3;
|
|
825
1041
|
if (hmsConfig) return hmsConfig;
|
|
826
1042
|
const storeState = store.getState();
|
|
827
1043
|
const token = await hmsInstance.getAuthTokenByRoomCode(storeState.user.roomCode, storeState.user.userId, (_storeState$user$endP = storeState.user.endPoints) === null || _storeState$user$endP === void 0 ? void 0 : _storeState$user$endP.token);
|
|
828
1044
|
|
|
829
1045
|
// TODO: [REMOVE LATER] added trycatch block so that we can join rooms where we are getting error from Layout API
|
|
830
1046
|
try {
|
|
831
|
-
|
|
1047
|
+
var _storeState$user$endP2;
|
|
1048
|
+
const roomLayout = await getRoomLayout(hmsInstance, token, (_storeState$user$endP2 = storeState.user.endPoints) === null || _storeState$user$endP2 === void 0 ? void 0 : _storeState$user$endP2.layout);
|
|
832
1049
|
dispatch(setLayoutConfig(roomLayout));
|
|
833
1050
|
} catch (error) {
|
|
834
1051
|
console.warn('# getRoomLayout error: ', error);
|
|
@@ -837,18 +1054,16 @@ export const useHMSConfig = () => {
|
|
|
837
1054
|
authToken: token,
|
|
838
1055
|
username: storeState.user.userName,
|
|
839
1056
|
captureNetworkQualityInPreview: true,
|
|
840
|
-
endpoint: (_storeState$user$
|
|
841
|
-
// metadata: JSON.stringify({isHandRaised: true}), // To join with hand raised
|
|
1057
|
+
endpoint: (_storeState$user$endP3 = storeState.user.endPoints) === null || _storeState$user$endP3 === void 0 ? void 0 : _storeState$user$endP3.init
|
|
842
1058
|
});
|
|
843
|
-
|
|
844
1059
|
return hmsConfig;
|
|
845
1060
|
}, [hmsInstance]);
|
|
846
1061
|
const updateConfig = useCallback(data => {
|
|
847
1062
|
if (!hmsConfig) {
|
|
848
1063
|
throw new Error('No HMSConfig is available to update!');
|
|
849
1064
|
}
|
|
850
|
-
Object.entries(data).forEach(
|
|
851
|
-
let [key, value] =
|
|
1065
|
+
Object.entries(data).forEach(_ref5 => {
|
|
1066
|
+
let [key, value] = _ref5;
|
|
852
1067
|
// @ts-ignore
|
|
853
1068
|
hmsConfig[key] = value;
|
|
854
1069
|
});
|
|
@@ -859,117 +1074,225 @@ export const useHMSConfig = () => {
|
|
|
859
1074
|
getConfig
|
|
860
1075
|
};
|
|
861
1076
|
};
|
|
862
|
-
export const
|
|
863
|
-
const {
|
|
864
|
-
height,
|
|
865
|
-
width
|
|
866
|
-
} = useSafeAreaFrame();
|
|
867
|
-
const safeAreaInsets = useSafeAreaInsets();
|
|
868
|
-
return {
|
|
869
|
-
safeWidth: width - safeAreaInsets.left - safeAreaInsets.right,
|
|
870
|
-
safeHeight: height - safeAreaInsets.top - safeAreaInsets.bottom
|
|
871
|
-
};
|
|
872
|
-
};
|
|
873
|
-
export const useShowChat = () => {
|
|
1077
|
+
export const useShowChatAndParticipants = () => {
|
|
874
1078
|
const dispatch = useDispatch();
|
|
875
|
-
const
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
1079
|
+
const {
|
|
1080
|
+
modalVisibleType,
|
|
1081
|
+
handleModalVisibleType: setModalVisible
|
|
1082
|
+
} = useModalType();
|
|
1083
|
+
const overlayChatLayout = useHMSChatLayoutConfig(chatConfig => chatConfig === null || chatConfig === void 0 ? void 0 : chatConfig.is_overlay);
|
|
1084
|
+
const canShowChat = useHMSConferencingScreenConfig(conferencingScreenConfig => {
|
|
1085
|
+
var _conferencingScreenCo2;
|
|
1086
|
+
return !!(conferencingScreenConfig !== null && conferencingScreenConfig !== void 0 && (_conferencingScreenCo2 = conferencingScreenConfig.elements) !== null && _conferencingScreenCo2 !== void 0 && _conferencingScreenCo2.chat);
|
|
1087
|
+
});
|
|
1088
|
+
const canShowParticipants = useHMSConferencingScreenConfig(conferencingScreenConfig => {
|
|
1089
|
+
var _conferencingScreenCo3;
|
|
1090
|
+
return !!(conferencingScreenConfig !== null && conferencingScreenConfig !== void 0 && (_conferencingScreenCo3 = conferencingScreenConfig.elements) !== null && _conferencingScreenCo3 !== void 0 && _conferencingScreenCo3.participant_list);
|
|
1091
|
+
});
|
|
881
1092
|
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
const
|
|
886
|
-
|
|
887
|
-
if (
|
|
888
|
-
|
|
1093
|
+
// state for inset chat view
|
|
1094
|
+
const overlayChatVisible = useSelector(state => state.chatWindow.showChatView);
|
|
1095
|
+
const modalVisible = modalVisibleType === ModalTypes.CHAT_AND_PARTICIPANTS;
|
|
1096
|
+
const show = useCallback(view => {
|
|
1097
|
+
// Handle Showing Chat View/Modal
|
|
1098
|
+
if (view === 'chat') {
|
|
1099
|
+
if (!canShowChat) return;
|
|
1100
|
+
if (overlayChatLayout) {
|
|
1101
|
+
dispatch({
|
|
1102
|
+
type: 'SET_SHOW_CHAT_VIEW',
|
|
1103
|
+
showChatView: true
|
|
1104
|
+
});
|
|
1105
|
+
} else {
|
|
1106
|
+
batch(() => {
|
|
1107
|
+
dispatch({
|
|
1108
|
+
type: 'SET_SHOW_CHAT_VIEW',
|
|
1109
|
+
showChatView: false
|
|
1110
|
+
});
|
|
1111
|
+
dispatch(setActiveChatBottomSheetTab('Chat'));
|
|
1112
|
+
});
|
|
1113
|
+
setModalVisible(ModalTypes.CHAT_AND_PARTICIPANTS);
|
|
1114
|
+
}
|
|
889
1115
|
}
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
1116
|
+
// Handle Showing Participant
|
|
1117
|
+
else if (canShowParticipants) {
|
|
1118
|
+
dispatch(setActiveChatBottomSheetTab('Participants'));
|
|
1119
|
+
setModalVisible(ModalTypes.CHAT_AND_PARTICIPANTS);
|
|
1120
|
+
}
|
|
1121
|
+
}, [overlayChatLayout, canShowChat, canShowParticipants, setModalVisible]);
|
|
1122
|
+
const hide = useCallback(view => {
|
|
1123
|
+
if (view === 'chat_overlay') {
|
|
1124
|
+
dispatch({
|
|
1125
|
+
type: 'SET_SHOW_CHAT_VIEW',
|
|
1126
|
+
showChatView: false
|
|
1127
|
+
});
|
|
1128
|
+
} else {
|
|
1129
|
+
setModalVisible(ModalTypes.DEFAULT);
|
|
1130
|
+
}
|
|
1131
|
+
}, [overlayChatLayout, setModalVisible]);
|
|
1132
|
+
return {
|
|
1133
|
+
overlayChatVisible,
|
|
1134
|
+
modalVisible,
|
|
1135
|
+
overlayChatLayout,
|
|
1136
|
+
canShowChat,
|
|
1137
|
+
canShowParticipants,
|
|
1138
|
+
show,
|
|
1139
|
+
hide
|
|
1140
|
+
};
|
|
896
1141
|
};
|
|
897
1142
|
export const usePortraitChatViewVisible = () => {
|
|
898
|
-
const
|
|
1143
|
+
const {
|
|
1144
|
+
overlayChatVisible
|
|
1145
|
+
} = useShowChatAndParticipants();
|
|
899
1146
|
const pipModeNotActive = useSelector(state => state.app.pipModeStatus !== PipModes.ACTIVE);
|
|
900
1147
|
const isPortraitOrientation = useIsPortraitOrientation();
|
|
901
|
-
return pipModeNotActive && isPortraitOrientation &&
|
|
1148
|
+
return pipModeNotActive && isPortraitOrientation && overlayChatVisible;
|
|
902
1149
|
};
|
|
903
1150
|
export const useLandscapeChatViewVisible = () => {
|
|
904
|
-
const
|
|
1151
|
+
const {
|
|
1152
|
+
overlayChatVisible
|
|
1153
|
+
} = useShowChatAndParticipants();
|
|
905
1154
|
const pipModeNotActive = useSelector(state => state.app.pipModeStatus !== PipModes.ACTIVE);
|
|
906
1155
|
const isLandscapeOrientation = useIsLandscapeOrientation();
|
|
907
|
-
return pipModeNotActive && isLandscapeOrientation &&
|
|
1156
|
+
return pipModeNotActive && isLandscapeOrientation && overlayChatVisible;
|
|
908
1157
|
};
|
|
909
|
-
export const
|
|
1158
|
+
export const useOffStageParticipants = () => {
|
|
1159
|
+
const dispatch = useDispatch();
|
|
910
1160
|
const hmsInstance = useHMSInstance();
|
|
911
|
-
const
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
const
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
1161
|
+
const offStageRoles = useHMSLayoutConfig(layoutConfig => {
|
|
1162
|
+
var _layoutConfig$screens;
|
|
1163
|
+
return (layoutConfig === null || layoutConfig === void 0 || (_layoutConfig$screens = layoutConfig.screens) === null || _layoutConfig$screens === void 0 || (_layoutConfig$screens = _layoutConfig$screens.conferencing) === null || _layoutConfig$screens === void 0 || (_layoutConfig$screens = _layoutConfig$screens.default) === null || _layoutConfig$screens === void 0 || (_layoutConfig$screens = _layoutConfig$screens.elements) === null || _layoutConfig$screens === void 0 || (_layoutConfig$screens = _layoutConfig$screens.on_stage_exp) === null || _layoutConfig$screens === void 0 ? void 0 : _layoutConfig$screens.off_stage_roles) || null;
|
|
1164
|
+
});
|
|
1165
|
+
const [participantsTotalCounts, setParticipantsTotalCounts] = useState({});
|
|
1166
|
+
useEffect(() => {
|
|
1167
|
+
if (offStageRoles) {
|
|
1168
|
+
let mounted = true;
|
|
1169
|
+
const createIterator = async forRole => {
|
|
1170
|
+
const iterator = hmsInstance.getPeerListIterator({
|
|
1171
|
+
byRoleName: forRole,
|
|
1172
|
+
limit: 10
|
|
1173
|
+
});
|
|
1174
|
+
const participants = await iterator.next();
|
|
1175
|
+
if (mounted) {
|
|
1176
|
+
dispatch(replaceParticipantsList(participants, forRole));
|
|
1177
|
+
setParticipantsTotalCounts(prev => ({
|
|
1178
|
+
...prev,
|
|
1179
|
+
[forRole]: iterator.totalCount
|
|
1180
|
+
}));
|
|
1181
|
+
}
|
|
1182
|
+
};
|
|
1183
|
+
const createIteratorForRoles = () => {
|
|
1184
|
+
offStageRoles.forEach(role => {
|
|
1185
|
+
createIterator(role);
|
|
1186
|
+
});
|
|
1187
|
+
};
|
|
1188
|
+
createIteratorForRoles();
|
|
1189
|
+
const intervalId = setInterval(() => {
|
|
1190
|
+
createIteratorForRoles();
|
|
1191
|
+
}, PeerListRefreshInterval);
|
|
1192
|
+
return () => {
|
|
1193
|
+
mounted = false;
|
|
1194
|
+
clearInterval(intervalId);
|
|
1195
|
+
};
|
|
931
1196
|
}
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
1197
|
+
}, [offStageRoles]);
|
|
1198
|
+
return participantsTotalCounts;
|
|
1199
|
+
};
|
|
1200
|
+
export const useFilteredParticipants = filterText => {
|
|
1201
|
+
var _participantsAccordia;
|
|
1202
|
+
const roles = useSelector(state => state.hmsStates.roles);
|
|
1203
|
+
const onStageRole = useHMSLayoutConfig(layoutConfig => {
|
|
1204
|
+
var _layoutConfig$screens2;
|
|
1205
|
+
return (layoutConfig === null || layoutConfig === void 0 || (_layoutConfig$screens2 = layoutConfig.screens) === null || _layoutConfig$screens2 === void 0 || (_layoutConfig$screens2 = _layoutConfig$screens2.conferencing) === null || _layoutConfig$screens2 === void 0 || (_layoutConfig$screens2 = _layoutConfig$screens2.default) === null || _layoutConfig$screens2 === void 0 || (_layoutConfig$screens2 = _layoutConfig$screens2.elements) === null || _layoutConfig$screens2 === void 0 || (_layoutConfig$screens2 = _layoutConfig$screens2.on_stage_exp) === null || _layoutConfig$screens2 === void 0 ? void 0 : _layoutConfig$screens2.on_stage_role) || null;
|
|
1206
|
+
});
|
|
1207
|
+
const offStageParticipantsTotalCounts = useOffStageParticipants();
|
|
1208
|
+
const formattedSearchText = filterText.trim().toLowerCase();
|
|
1209
|
+
const groupedParticipants = useSelector(state => state.hmsStates.groupedParticipants);
|
|
1210
|
+
const sortedRoles = useMemo(() => {
|
|
1211
|
+
return roles.filter(role => {
|
|
1212
|
+
if (!role.name || role.name.startsWith('_')) {
|
|
1213
|
+
return false;
|
|
1214
|
+
}
|
|
1215
|
+
return true;
|
|
1216
|
+
|
|
1217
|
+
// const list = groupedParticipants[role.name!];
|
|
1218
|
+
|
|
1219
|
+
// return list && list.length > 0;
|
|
1220
|
+
}).sort((a, b) => {
|
|
1221
|
+
var _a$publishSettings, _b$publishSettings;
|
|
1222
|
+
if (onStageRole) {
|
|
1223
|
+
if (a.name === onStageRole && b.name === onStageRole) {
|
|
1224
|
+
return 0;
|
|
1225
|
+
}
|
|
1226
|
+
if (a.name === onStageRole) {
|
|
1227
|
+
return -1;
|
|
1228
|
+
}
|
|
1229
|
+
if (b.name === onStageRole) {
|
|
1230
|
+
return 1;
|
|
1231
|
+
}
|
|
1232
|
+
}
|
|
1233
|
+
const canAPublish = (((_a$publishSettings = a.publishSettings) === null || _a$publishSettings === void 0 ? void 0 : _a$publishSettings.allowed) && a.publishSettings.allowed.length > 0) ?? false;
|
|
1234
|
+
const canBPublish = (((_b$publishSettings = b.publishSettings) === null || _b$publishSettings === void 0 ? void 0 : _b$publishSettings.allowed) && b.publishSettings.allowed.length > 0) ?? false;
|
|
1235
|
+
if (canAPublish && canBPublish) {
|
|
1236
|
+
return 0;
|
|
1237
|
+
}
|
|
1238
|
+
if (canAPublish) {
|
|
1239
|
+
return -1;
|
|
1240
|
+
}
|
|
1241
|
+
return 1;
|
|
935
1242
|
});
|
|
936
|
-
},
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
1243
|
+
},
|
|
1244
|
+
// [groupedParticipants, onStageRole, roles]
|
|
1245
|
+
[onStageRole, roles]);
|
|
1246
|
+
const participantsAccordianData = useMemo(() => {
|
|
1247
|
+
const t = [];
|
|
1248
|
+
const filteredHandRaisedPeers = [];
|
|
1249
|
+
sortedRoles.forEach(role => {
|
|
1250
|
+
const list = groupedParticipants[role.name];
|
|
1251
|
+
const filteredList = Array.isArray(list) && formattedSearchText.length > 0 ? list.filter(peer => peer.name.toLowerCase().includes(formattedSearchText)) : list;
|
|
1252
|
+
if (Array.isArray(filteredList) && filteredList.length > 0) {
|
|
1253
|
+
filteredHandRaisedPeers.push(filteredList);
|
|
1254
|
+
const offStageRoleTotalCount = offStageParticipantsTotalCounts[role.name];
|
|
1255
|
+
const firstTen = filteredList.slice(0, 10);
|
|
1256
|
+
t.push({
|
|
1257
|
+
id: role.name,
|
|
1258
|
+
label: `${role.name} (${typeof offStageRoleTotalCount === 'number' ? offStageRoleTotalCount : filteredList.length})`,
|
|
1259
|
+
showViewAll: typeof offStageRoleTotalCount === 'number' && formattedSearchText.length <= 0 ? offStageRoleTotalCount > 10 : filteredList.length > 10,
|
|
1260
|
+
data: firstTen
|
|
945
1261
|
});
|
|
946
1262
|
}
|
|
947
1263
|
});
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
1264
|
+
const handRaisedParticipants = filteredHandRaisedPeers.flat().filter(participant => participant.isHandRaised);
|
|
1265
|
+
const firstTenHandRaisedParticipants = handRaisedParticipants.slice(0, 10);
|
|
1266
|
+
if (handRaisedParticipants.length > 0) {
|
|
1267
|
+
t.unshift({
|
|
1268
|
+
id: 'hand-raised',
|
|
1269
|
+
label: `Hand Raised (${handRaisedParticipants.length})`,
|
|
1270
|
+
showViewAll: handRaisedParticipants.length > 10,
|
|
1271
|
+
data: firstTenHandRaisedParticipants
|
|
1272
|
+
});
|
|
1273
|
+
}
|
|
1274
|
+
return t;
|
|
1275
|
+
}, [formattedSearchText, groupedParticipants, offStageParticipantsTotalCounts, sortedRoles]);
|
|
1276
|
+
const [expandedGroup, setExpandedGroup] = useState(((_participantsAccordia = participantsAccordianData[0]) === null || _participantsAccordia === void 0 ? void 0 : _participantsAccordia.id) ?? null);
|
|
952
1277
|
return {
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
searchText: participantsSearchInput,
|
|
958
|
-
setSearchText: setParticipantsSearchInput
|
|
1278
|
+
data: participantsAccordianData,
|
|
1279
|
+
formattedSearchText,
|
|
1280
|
+
expandedGroup,
|
|
1281
|
+
setExpandedGroup
|
|
959
1282
|
};
|
|
960
1283
|
};
|
|
961
1284
|
export const useShouldGoLive = () => {
|
|
962
1285
|
const shouldGoLive = useSelector(selectShouldGoLive);
|
|
963
1286
|
return shouldGoLive;
|
|
964
1287
|
};
|
|
965
|
-
export const useLeaveMethods =
|
|
1288
|
+
export const useLeaveMethods = isUnmounted => {
|
|
966
1289
|
const navigation = useContext(NavigationContext);
|
|
967
1290
|
const hmsInstance = useHMSInstance();
|
|
968
1291
|
const dispatch = useDispatch();
|
|
969
1292
|
const reduxStore = useStore();
|
|
970
|
-
const destroy = useCallback(
|
|
1293
|
+
const destroy = useCallback(() => {
|
|
971
1294
|
try {
|
|
972
|
-
const s =
|
|
1295
|
+
const s = hmsInstance.destroy();
|
|
973
1296
|
console.log('Destroy Success: ', s);
|
|
974
1297
|
// TODOS:
|
|
975
1298
|
// - If show `Meeting_Ended` is true, show Meeting screen by setting state to MEETING_ENDED
|
|
@@ -995,11 +1318,10 @@ export const useLeaveMethods = () => {
|
|
|
995
1318
|
if (typeof onLeave === 'function') {
|
|
996
1319
|
onLeave();
|
|
997
1320
|
dispatch(clearStore());
|
|
998
|
-
} else if (navigation && navigation.canGoBack()) {
|
|
1321
|
+
} else if (navigation && navigation.canGoBack() && !isUnmounted) {
|
|
999
1322
|
navigation.goBack();
|
|
1000
1323
|
dispatch(clearStore());
|
|
1001
1324
|
} else {
|
|
1002
|
-
// TODO: call onLeave Callback if provided
|
|
1003
1325
|
// Otherwise default action is to show "Meeting Ended" screen
|
|
1004
1326
|
dispatch(clearStore()); // TODO: We need different clearStore for MeetingEnded
|
|
1005
1327
|
dispatch(changeMeetingState(MeetingState.MEETING_ENDED));
|
|
@@ -1010,7 +1332,13 @@ export const useLeaveMethods = () => {
|
|
|
1010
1332
|
return Promise.reject(e);
|
|
1011
1333
|
}
|
|
1012
1334
|
}, [hmsInstance]);
|
|
1013
|
-
const leave = useCallback(async ()
|
|
1335
|
+
const leave = useCallback(async function () {
|
|
1336
|
+
let shouldEndStream = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
1337
|
+
if (shouldEndStream) {
|
|
1338
|
+
hmsInstance.stopHLSStreaming().catch(error => {
|
|
1339
|
+
console.log('Stop HLS Streaming Error: ', error);
|
|
1340
|
+
});
|
|
1341
|
+
}
|
|
1014
1342
|
try {
|
|
1015
1343
|
const d = await hmsInstance.leave();
|
|
1016
1344
|
console.log('Leave Success: ', d);
|
|
@@ -1045,13 +1373,18 @@ export const useLeaveMethods = () => {
|
|
|
1045
1373
|
goToPreview
|
|
1046
1374
|
};
|
|
1047
1375
|
};
|
|
1048
|
-
|
|
1049
|
-
|
|
1376
|
+
|
|
1377
|
+
// Returns layout config as it is returned from server
|
|
1378
|
+
export const useHMSLayoutConfig = (selector, equalityFn) => {
|
|
1379
|
+
return useSelector(state => {
|
|
1380
|
+
var _state$hmsStates$loca3;
|
|
1381
|
+
return selector(selectLayoutConfigForRole(state.hmsStates.layoutConfig, ((_state$hmsStates$loca3 = state.hmsStates.localPeer) === null || _state$hmsStates$loca3 === void 0 ? void 0 : _state$hmsStates$loca3.role) || null));
|
|
1382
|
+
}, equalityFn);
|
|
1050
1383
|
};
|
|
1051
1384
|
export const useHMSRoomTheme = selector => {
|
|
1052
|
-
return
|
|
1053
|
-
|
|
1054
|
-
const roomTheme = layoutConfig === null || layoutConfig === void 0 ? void 0 :
|
|
1385
|
+
return useHMSLayoutConfig(layoutConfig => {
|
|
1386
|
+
var _layoutConfig$themes;
|
|
1387
|
+
const roomTheme = layoutConfig === null || layoutConfig === void 0 || (_layoutConfig$themes = layoutConfig.themes) === null || _layoutConfig$themes === void 0 ? void 0 : _layoutConfig$themes.find(theme => theme.default);
|
|
1055
1388
|
const defaultTheme = roomTheme ? roomTheme.palette ? roomTheme : {
|
|
1056
1389
|
...roomTheme,
|
|
1057
1390
|
palette: DEFAULT_THEME.palette
|
|
@@ -1066,8 +1399,7 @@ export const useHMSRoomColorPalette = () => {
|
|
|
1066
1399
|
return useHMSRoomTheme(theme => theme.palette);
|
|
1067
1400
|
};
|
|
1068
1401
|
export const useHMSRoomTypography = () => {
|
|
1069
|
-
return
|
|
1070
|
-
const layoutConfig = state.hmsStates.layoutConfig;
|
|
1402
|
+
return useHMSLayoutConfig(layoutConfig => {
|
|
1071
1403
|
const typography = layoutConfig === null || layoutConfig === void 0 ? void 0 : layoutConfig.typography;
|
|
1072
1404
|
if (!typography) {
|
|
1073
1405
|
return DEFAULT_TYPOGRAPHY;
|
|
@@ -1078,6 +1410,9 @@ export const useHMSRoomTypography = () => {
|
|
|
1078
1410
|
...typography
|
|
1079
1411
|
};
|
|
1080
1412
|
}
|
|
1413
|
+
|
|
1414
|
+
// formatting font family name
|
|
1415
|
+
typography.font_family = typography.font_family.replace(/ /g, '');
|
|
1081
1416
|
return typography;
|
|
1082
1417
|
}, shallowEqual);
|
|
1083
1418
|
};
|
|
@@ -1093,4 +1428,84 @@ export const useHMSRoomStyle = function (updater) {
|
|
|
1093
1428
|
default: updater(theme, typography)
|
|
1094
1429
|
}), deps).default;
|
|
1095
1430
|
};
|
|
1431
|
+
export const useSendMessage = () => {
|
|
1432
|
+
const hmsInstance = useHMSInstance();
|
|
1433
|
+
const dispatch = useDispatch();
|
|
1434
|
+
const reduxStore = useStore();
|
|
1435
|
+
const message = useSelector(state => state.chatWindow.typedMessage);
|
|
1436
|
+
const setMessage = useCallback(text => {
|
|
1437
|
+
dispatch({
|
|
1438
|
+
type: 'SET_TYPED_MESSAGE',
|
|
1439
|
+
typedMessage: text
|
|
1440
|
+
});
|
|
1441
|
+
}, []);
|
|
1442
|
+
const sendMessage = useCallback(async () => {
|
|
1443
|
+
const chatWindowState = reduxStore.getState().chatWindow;
|
|
1444
|
+
const message = chatWindowState.typedMessage;
|
|
1445
|
+
const sendingTo = chatWindowState.sendTo;
|
|
1446
|
+
if (message.length <= 0) return;
|
|
1447
|
+
const hmsMessageRecipient = new HMSMessageRecipient({
|
|
1448
|
+
recipientType: 'publishSettings' in sendingTo ? HMSMessageRecipientType.ROLES : 'peerID' in sendingTo ? HMSMessageRecipientType.PEER : HMSMessageRecipientType.BROADCAST,
|
|
1449
|
+
recipientPeer: 'peerID' in sendingTo ? sendingTo : undefined,
|
|
1450
|
+
recipientRoles: 'publishSettings' in sendingTo ? [sendingTo] : undefined
|
|
1451
|
+
});
|
|
1452
|
+
|
|
1453
|
+
// Saving reference of `message` state to local variable
|
|
1454
|
+
// to use the typed message after clearing state
|
|
1455
|
+
const messageText = message;
|
|
1456
|
+
dispatch({
|
|
1457
|
+
type: 'SET_TYPED_MESSAGE',
|
|
1458
|
+
typedMessage: ''
|
|
1459
|
+
});
|
|
1460
|
+
const handleMessageID = _ref6 => {
|
|
1461
|
+
let {
|
|
1462
|
+
messageId
|
|
1463
|
+
} = _ref6;
|
|
1464
|
+
const localPeer = reduxStore.getState().hmsStates.localPeer;
|
|
1465
|
+
if (messageId) {
|
|
1466
|
+
Keyboard.dismiss();
|
|
1467
|
+
const localMessage = new HMSMessage({
|
|
1468
|
+
messageId: messageId,
|
|
1469
|
+
message: messageText,
|
|
1470
|
+
type: 'chat',
|
|
1471
|
+
time: new Date(),
|
|
1472
|
+
sender: localPeer || undefined,
|
|
1473
|
+
recipient: hmsMessageRecipient
|
|
1474
|
+
});
|
|
1475
|
+
dispatch(addMessage(localMessage));
|
|
1476
|
+
}
|
|
1477
|
+
};
|
|
1478
|
+
try {
|
|
1479
|
+
let result;
|
|
1480
|
+
if ('publishSettings' in sendingTo) {
|
|
1481
|
+
result = await hmsInstance.sendGroupMessage(messageText, [sendingTo]);
|
|
1482
|
+
} else if ('peerID' in sendingTo) {
|
|
1483
|
+
result = await hmsInstance.sendDirectMessage(messageText, sendingTo);
|
|
1484
|
+
} else {
|
|
1485
|
+
result = await hmsInstance.sendBroadcastMessage(messageText);
|
|
1486
|
+
}
|
|
1487
|
+
handleMessageID(result);
|
|
1488
|
+
return Promise.resolve(result);
|
|
1489
|
+
} catch (error) {
|
|
1490
|
+
return Promise.reject(error);
|
|
1491
|
+
}
|
|
1492
|
+
}, []);
|
|
1493
|
+
return {
|
|
1494
|
+
message,
|
|
1495
|
+
setMessage,
|
|
1496
|
+
sendMessage
|
|
1497
|
+
};
|
|
1498
|
+
};
|
|
1499
|
+
export const useHMSChatLayoutConfig = (selector, equalityFn) => {
|
|
1500
|
+
return useHMSLayoutConfig(layoutConfig => {
|
|
1501
|
+
const chatConfig = selectChatLayoutConfig(layoutConfig);
|
|
1502
|
+
return selector(chatConfig);
|
|
1503
|
+
}, equalityFn);
|
|
1504
|
+
};
|
|
1505
|
+
export const useHMSConferencingScreenConfig = (selector, equalityFn) => {
|
|
1506
|
+
return useHMSLayoutConfig(layoutConfig => {
|
|
1507
|
+
const conferencingScreenConfig = selectConferencingScreenConfig(layoutConfig);
|
|
1508
|
+
return selector(conferencingScreenConfig);
|
|
1509
|
+
}, equalityFn);
|
|
1510
|
+
};
|
|
1096
1511
|
//# sourceMappingURL=hooks-util.js.map
|