@100mslive/react-native-room-kit 0.0.4 → 0.1.0
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 +413 -11
- package/lib/commonjs/HMSInstanceSetup.js +2 -1
- package/lib/commonjs/HMSInstanceSetup.js.map +1 -1
- package/lib/commonjs/HMSPrebuilt.js +4 -2
- package/lib/commonjs/HMSPrebuilt.js.map +1 -1
- package/lib/commonjs/HMSRoomSetup.js +39 -8
- package/lib/commonjs/HMSRoomSetup.js.map +1 -1
- package/lib/commonjs/Icons/AlertTriangle/assets/alert-triangle.png +0 -0
- package/lib/commonjs/Icons/AlertTriangle/assets/alert-triangle@2x.png +0 -0
- package/lib/commonjs/Icons/AlertTriangle/assets/alert-triangle@3x.png +0 -0
- package/lib/commonjs/Icons/AlertTriangle/index.js +34 -0
- package/lib/commonjs/Icons/AlertTriangle/index.js.map +1 -0
- package/lib/commonjs/Icons/AnswerPhone/index.js +5 -1
- package/lib/commonjs/Icons/AnswerPhone/index.js.map +1 -1
- package/lib/commonjs/Icons/BRB/assets/BRB.png +0 -0
- package/lib/commonjs/Icons/BRB/assets/BRB@2x.png +0 -0
- package/lib/commonjs/Icons/BRB/assets/BRB@3x.png +0 -0
- package/lib/commonjs/Icons/BRB/index.js +35 -0
- package/lib/commonjs/Icons/BRB/index.js.map +1 -0
- package/lib/commonjs/Icons/Bluetooth/index.js +5 -1
- package/lib/commonjs/Icons/Bluetooth/index.js.map +1 -1
- package/lib/commonjs/Icons/Camera/index.js +5 -1
- package/lib/commonjs/Icons/Camera/index.js.map +1 -1
- package/lib/commonjs/Icons/Chat/index.js +5 -1
- package/lib/commonjs/Icons/Chat/index.js.map +1 -1
- package/lib/commonjs/Icons/Check/index.js +5 -1
- package/lib/commonjs/Icons/Check/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/Close/index.js +5 -1
- package/lib/commonjs/Icons/Close/index.js.map +1 -1
- package/lib/commonjs/Icons/Hamburger/assets/hamburger.png +0 -0
- package/lib/commonjs/Icons/Hamburger/assets/hamburger@2x.png +0 -0
- package/lib/commonjs/Icons/Hamburger/assets/hamburger@3x.png +0 -0
- package/lib/commonjs/Icons/Hamburger/index.js +34 -0
- package/lib/commonjs/Icons/Hamburger/index.js.map +1 -0
- package/lib/commonjs/Icons/Hand/index.js +6 -4
- package/lib/commonjs/Icons/Hand/index.js.map +1 -1
- package/lib/commonjs/Icons/Headphones/index.js +5 -1
- package/lib/commonjs/Icons/Headphones/index.js.map +1 -1
- package/lib/commonjs/Icons/Maximize/assets/maximize.png +0 -0
- package/lib/commonjs/Icons/Maximize/assets/maximize@2x.png +0 -0
- package/lib/commonjs/Icons/Maximize/assets/maximize@3x.png +0 -0
- package/lib/commonjs/Icons/Maximize/index.js +34 -0
- package/lib/commonjs/Icons/Maximize/index.js.map +1 -0
- package/lib/commonjs/Icons/Mic/index.js +5 -1
- package/lib/commonjs/Icons/Mic/index.js.map +1 -1
- package/lib/commonjs/Icons/Minimize/assets/minimize.png +0 -0
- package/lib/commonjs/Icons/Minimize/assets/minimize@2x.png +0 -0
- package/lib/commonjs/Icons/Minimize/assets/minimize@3x.png +0 -0
- package/lib/commonjs/Icons/Minimize/index.js +34 -0
- package/lib/commonjs/Icons/Minimize/index.js.map +1 -0
- package/lib/commonjs/Icons/Participants/index.js +5 -1
- package/lib/commonjs/Icons/Participants/index.js.map +1 -1
- package/lib/commonjs/Icons/Pencil/assets/pencil.png +0 -0
- package/lib/commonjs/Icons/Pencil/assets/pencil@2x.png +0 -0
- package/lib/commonjs/Icons/Pencil/assets/pencil@3x.png +0 -0
- package/lib/commonjs/Icons/Pencil/index.js +34 -0
- package/lib/commonjs/Icons/Pencil/index.js.map +1 -0
- package/lib/commonjs/Icons/Pin/assets/pin.png +0 -0
- package/lib/commonjs/Icons/Pin/assets/pin@2x.png +0 -0
- package/lib/commonjs/Icons/Pin/assets/pin@3x.png +0 -0
- package/lib/commonjs/Icons/Pin/index.js +34 -0
- package/lib/commonjs/Icons/Pin/index.js.map +1 -0
- package/lib/commonjs/Icons/Recording/assets/recording.png +0 -0
- package/lib/commonjs/Icons/Recording/assets/recording@2x.png +0 -0
- package/lib/commonjs/Icons/Recording/assets/recording@3x.png +0 -0
- package/lib/commonjs/Icons/Recording/index.js +34 -0
- package/lib/commonjs/Icons/Recording/index.js.map +1 -0
- package/lib/commonjs/Icons/RotateCamera/index.js +5 -1
- package/lib/commonjs/Icons/RotateCamera/index.js.map +1 -1
- package/lib/commonjs/Icons/ScreenShare/index.js +5 -1
- package/lib/commonjs/Icons/ScreenShare/index.js.map +1 -1
- package/lib/commonjs/Icons/Speaker/index.js +5 -1
- package/lib/commonjs/Icons/Speaker/index.js.map +1 -1
- package/lib/commonjs/Icons/Star/assets/star.png +0 -0
- package/lib/commonjs/Icons/Star/assets/star@2x.png +0 -0
- package/lib/commonjs/Icons/Star/assets/star@3x.png +0 -0
- package/lib/commonjs/Icons/Star/index.js +34 -0
- package/lib/commonjs/Icons/Star/index.js.map +1 -0
- package/lib/commonjs/Icons/Stop/assets/stop.png +0 -0
- package/lib/commonjs/Icons/Stop/assets/stop@2x.png +0 -0
- package/lib/commonjs/Icons/Stop/assets/stop@3x.png +0 -0
- package/lib/commonjs/Icons/Stop/index.js +34 -0
- package/lib/commonjs/Icons/Stop/index.js.map +1 -0
- package/lib/commonjs/Icons/ThreeDots/index.js +5 -1
- package/lib/commonjs/Icons/ThreeDots/index.js.map +1 -1
- package/lib/commonjs/Icons/Wave/index.js +5 -1
- package/lib/commonjs/Icons/Wave/index.js.map +1 -1
- package/lib/commonjs/Icons/index.js +110 -0
- package/lib/commonjs/Icons/index.js.map +1 -1
- package/lib/commonjs/components/AvatarView.js +1 -2
- package/lib/commonjs/components/AvatarView.js.map +1 -1
- package/lib/commonjs/components/BackButton.js +6 -4
- package/lib/commonjs/components/BackButton.js.map +1 -1
- package/lib/commonjs/components/BottomSheet.js +157 -0
- package/lib/commonjs/components/BottomSheet.js.map +1 -0
- package/lib/commonjs/components/ChangeNameModalContent.js +131 -0
- package/lib/commonjs/components/ChangeNameModalContent.js.map +1 -0
- package/lib/commonjs/components/CompanyLogo.js +38 -0
- package/lib/commonjs/components/CompanyLogo.js.map +1 -0
- package/lib/commonjs/components/CustomInput.js +2 -3
- package/lib/commonjs/components/CustomInput.js.map +1 -1
- package/lib/commonjs/components/DisplayView.js +12 -52
- package/lib/commonjs/components/DisplayView.js.map +1 -1
- package/lib/commonjs/components/EndRoomModalContent.js +85 -0
- package/lib/commonjs/components/EndRoomModalContent.js.map +1 -0
- package/lib/commonjs/components/Footer.js +8 -9
- package/lib/commonjs/components/Footer.js.map +1 -1
- package/lib/commonjs/components/GridView.js +53 -7
- package/lib/commonjs/components/GridView.js.map +1 -1
- package/lib/commonjs/components/HMSBaseButton.js +66 -0
- package/lib/commonjs/components/HMSBaseButton.js.map +1 -0
- package/lib/commonjs/components/HMSDangerButton.js +53 -0
- package/lib/commonjs/components/HMSDangerButton.js.map +1 -0
- package/lib/commonjs/components/HMSHLSStreamLoading.js +17 -8
- package/lib/commonjs/components/HMSHLSStreamLoading.js.map +1 -1
- package/lib/commonjs/components/HMSManageAudioOutput.js +41 -75
- package/lib/commonjs/components/HMSManageAudioOutput.js.map +1 -1
- package/lib/commonjs/components/HMSManageCameraRotation.js +5 -4
- package/lib/commonjs/components/HMSManageCameraRotation.js.map +1 -1
- package/lib/commonjs/components/HMSManageLeave.js +91 -106
- package/lib/commonjs/components/HMSManageLeave.js.map +1 -1
- package/lib/commonjs/components/HMSManageLocalAudio.js +1 -9
- package/lib/commonjs/components/HMSManageLocalAudio.js.map +1 -1
- package/lib/commonjs/components/HMSManageLocalVideo.js +1 -9
- package/lib/commonjs/components/HMSManageLocalVideo.js.map +1 -1
- package/lib/commonjs/components/HMSMeetingEnded.js +1 -2
- package/lib/commonjs/components/HMSMeetingEnded.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewEditName.js +3 -37
- package/lib/commonjs/components/HMSPreviewEditName.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewHLSLiveIndicator.js +17 -10
- package/lib/commonjs/components/HMSPreviewHLSLiveIndicator.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewJoinButton.js +23 -46
- package/lib/commonjs/components/HMSPreviewJoinButton.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewNetworkQuality.js +5 -3
- package/lib/commonjs/components/HMSPreviewNetworkQuality.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewPeersList.js +21 -10
- package/lib/commonjs/components/HMSPreviewPeersList.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewSubtitle.js +22 -9
- package/lib/commonjs/components/HMSPreviewSubtitle.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewTile.js +16 -8
- package/lib/commonjs/components/HMSPreviewTile.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewTitle.js +14 -6
- package/lib/commonjs/components/HMSPreviewTitle.js.map +1 -1
- package/lib/commonjs/components/HMSPrimaryButton.js +53 -0
- package/lib/commonjs/components/HMSPrimaryButton.js.map +1 -0
- package/lib/commonjs/components/HMSRecordingIndicator.js +46 -0
- package/lib/commonjs/components/HMSRecordingIndicator.js.map +1 -0
- package/lib/commonjs/components/HMSRoomOptions.js +20 -7
- package/lib/commonjs/components/HMSRoomOptions.js.map +1 -1
- package/lib/commonjs/components/HMSShowNetworkQuality.js +5 -4
- package/lib/commonjs/components/HMSShowNetworkQuality.js.map +1 -1
- package/lib/commonjs/components/HMSTextInput.js +66 -0
- package/lib/commonjs/components/HMSTextInput.js.map +1 -0
- package/lib/commonjs/components/Header.js +30 -30
- package/lib/commonjs/components/Header.js.map +1 -1
- package/lib/commonjs/components/LocalPeerRegularVideoView.js +26 -0
- package/lib/commonjs/components/LocalPeerRegularVideoView.js.map +1 -0
- package/lib/commonjs/components/LocalPeerScreenshareView.js +76 -0
- package/lib/commonjs/components/LocalPeerScreenshareView.js.map +1 -0
- package/lib/commonjs/components/Meeting.js +7 -3
- package/lib/commonjs/components/Meeting.js.map +1 -1
- package/lib/commonjs/components/MiniView.js +163 -0
- package/lib/commonjs/components/MiniView.js.map +1 -0
- package/lib/commonjs/components/Modals.js +31 -116
- package/lib/commonjs/components/Modals.js.map +1 -1
- package/lib/commonjs/components/PaginationDots.js +56 -0
- package/lib/commonjs/components/PaginationDots.js.map +1 -0
- package/lib/commonjs/components/ParticipantsCount.js +55 -0
- package/lib/commonjs/components/ParticipantsCount.js.map +1 -0
- package/lib/commonjs/components/PeerMinimizedView.js +114 -0
- package/lib/commonjs/components/PeerMinimizedView.js.map +1 -0
- package/lib/commonjs/components/PeerSettingsModalContent.js +68 -51
- package/lib/commonjs/components/PeerSettingsModalContent.js.map +1 -1
- package/lib/commonjs/components/PeerVideoTile/AvatarView.js +76 -0
- package/lib/commonjs/components/PeerVideoTile/AvatarView.js.map +1 -0
- package/lib/commonjs/components/PeerVideoTile/PeerAudioMutedIndicator.js +44 -0
- package/lib/commonjs/components/PeerVideoTile/PeerAudioMutedIndicator.js.map +1 -0
- package/lib/commonjs/components/PeerVideoTile/PeerMetadata.js +44 -0
- package/lib/commonjs/components/PeerVideoTile/PeerMetadata.js.map +1 -0
- package/lib/commonjs/components/PeerVideoTile/PeerNameAndNetwork.js +74 -0
- package/lib/commonjs/components/PeerVideoTile/PeerNameAndNetwork.js.map +1 -0
- package/lib/commonjs/components/PeerVideoTile/PeerVideoTileView.js +146 -0
- package/lib/commonjs/components/PeerVideoTile/PeerVideoTileView.js.map +1 -0
- package/lib/commonjs/components/PeerVideoTile/VideoView.js +84 -0
- package/lib/commonjs/components/PeerVideoTile/VideoView.js.map +1 -0
- package/lib/commonjs/components/PeerVideoTile/index.js +2 -0
- package/lib/commonjs/components/PeerVideoTile/index.js.map +1 -0
- package/lib/commonjs/components/PressableIcon.js +15 -8
- package/lib/commonjs/components/PressableIcon.js.map +1 -1
- package/lib/commonjs/components/Preview.js +19 -6
- package/lib/commonjs/components/Preview.js.map +1 -1
- package/lib/commonjs/components/RoomSettingsModalContent.js +232 -362
- package/lib/commonjs/components/RoomSettingsModalContent.js.map +1 -1
- package/lib/commonjs/components/RoomSettingsModalDebugModeContent.js +295 -0
- package/lib/commonjs/components/RoomSettingsModalDebugModeContent.js.map +1 -0
- package/lib/commonjs/components/StopRecordingModalContent.js +97 -0
- package/lib/commonjs/components/StopRecordingModalContent.js.map +1 -0
- package/lib/commonjs/components/Tile.js +29 -90
- package/lib/commonjs/components/Tile.js.map +1 -1
- package/lib/commonjs/components/TilesContainer.js +99 -10
- package/lib/commonjs/components/TilesContainer.js.map +1 -1
- package/lib/commonjs/components/UnmountAfterDelay.js +48 -0
- package/lib/commonjs/components/UnmountAfterDelay.js.map +1 -0
- package/lib/commonjs/components/WebrtcView.js +51 -0
- package/lib/commonjs/components/WebrtcView.js.map +1 -0
- package/lib/commonjs/components/WelcomeInMeeting.js +54 -0
- package/lib/commonjs/components/WelcomeInMeeting.js.map +1 -0
- package/lib/commonjs/hooks-sdk-selectors.js +6 -1
- package/lib/commonjs/hooks-sdk-selectors.js.map +1 -1
- package/lib/commonjs/hooks-sdk.js +16 -1
- package/lib/commonjs/hooks-sdk.js.map +1 -1
- package/lib/commonjs/hooks-util-selectors.js +8 -2
- package/lib/commonjs/hooks-util-selectors.js.map +1 -1
- package/lib/commonjs/hooks-util.js +315 -93
- package/lib/commonjs/hooks-util.js.map +1 -1
- package/lib/commonjs/modules/HMSManager.js +23 -0
- package/lib/commonjs/modules/HMSManager.js.map +1 -0
- package/lib/commonjs/modules/parser.js +22 -0
- package/lib/commonjs/modules/parser.js.map +1 -0
- package/lib/commonjs/peerTrackNodeUtils.js +8 -3
- package/lib/commonjs/peerTrackNodeUtils.js.map +1 -1
- package/lib/commonjs/redux/actionTypes.js +16 -1
- package/lib/commonjs/redux/actionTypes.js.map +1 -1
- package/lib/commonjs/redux/actions/index.js +51 -1
- package/lib/commonjs/redux/actions/index.js.map +1 -1
- package/lib/commonjs/redux/reducers/appState.js +57 -1
- package/lib/commonjs/redux/reducers/appState.js.map +1 -1
- package/lib/commonjs/redux/reducers/hmsStates.js +7 -1
- package/lib/commonjs/redux/reducers/hmsStates.js.map +1 -1
- package/lib/commonjs/redux/reducers/userState.js +3 -1
- package/lib/commonjs/redux/reducers/userState.js.map +1 -1
- package/lib/commonjs/utils/functions.js +51 -1
- package/lib/commonjs/utils/functions.js.map +1 -1
- package/lib/commonjs/utils/theme.js +62 -8
- package/lib/commonjs/utils/theme.js.map +1 -1
- package/lib/commonjs/utils/types.js +8 -1
- package/lib/commonjs/utils/types.js.map +1 -1
- package/lib/module/HMSInstanceSetup.js +2 -1
- package/lib/module/HMSInstanceSetup.js.map +1 -1
- package/lib/module/HMSPrebuilt.js +4 -2
- package/lib/module/HMSPrebuilt.js.map +1 -1
- package/lib/module/HMSRoomSetup.js +41 -10
- package/lib/module/HMSRoomSetup.js.map +1 -1
- package/lib/module/Icons/AlertTriangle/assets/alert-triangle.png +0 -0
- package/lib/module/Icons/AlertTriangle/assets/alert-triangle@2x.png +0 -0
- package/lib/module/Icons/AlertTriangle/assets/alert-triangle@3x.png +0 -0
- package/lib/module/Icons/AlertTriangle/index.js +26 -0
- package/lib/module/Icons/AlertTriangle/index.js.map +1 -0
- package/lib/module/Icons/AnswerPhone/index.js +5 -1
- package/lib/module/Icons/AnswerPhone/index.js.map +1 -1
- package/lib/module/Icons/BRB/assets/BRB.png +0 -0
- package/lib/module/Icons/BRB/assets/BRB@2x.png +0 -0
- package/lib/module/Icons/BRB/assets/BRB@3x.png +0 -0
- package/lib/module/Icons/BRB/index.js +27 -0
- package/lib/module/Icons/BRB/index.js.map +1 -0
- package/lib/module/Icons/Bluetooth/index.js +5 -1
- package/lib/module/Icons/Bluetooth/index.js.map +1 -1
- package/lib/module/Icons/Camera/index.js +5 -1
- package/lib/module/Icons/Camera/index.js.map +1 -1
- package/lib/module/Icons/Chat/index.js +5 -1
- package/lib/module/Icons/Chat/index.js.map +1 -1
- package/lib/module/Icons/Check/index.js +5 -1
- package/lib/module/Icons/Check/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/Close/index.js +5 -1
- package/lib/module/Icons/Close/index.js.map +1 -1
- package/lib/module/Icons/Hamburger/assets/hamburger.png +0 -0
- package/lib/module/Icons/Hamburger/assets/hamburger@2x.png +0 -0
- package/lib/module/Icons/Hamburger/assets/hamburger@3x.png +0 -0
- package/lib/module/Icons/Hamburger/index.js +26 -0
- package/lib/module/Icons/Hamburger/index.js.map +1 -0
- package/lib/module/Icons/Hand/index.js +6 -4
- package/lib/module/Icons/Hand/index.js.map +1 -1
- package/lib/module/Icons/Headphones/index.js +5 -1
- package/lib/module/Icons/Headphones/index.js.map +1 -1
- package/lib/module/Icons/Maximize/assets/maximize.png +0 -0
- package/lib/module/Icons/Maximize/assets/maximize@2x.png +0 -0
- package/lib/module/Icons/Maximize/assets/maximize@3x.png +0 -0
- package/lib/module/Icons/Maximize/index.js +26 -0
- package/lib/module/Icons/Maximize/index.js.map +1 -0
- package/lib/module/Icons/Mic/index.js +5 -1
- package/lib/module/Icons/Mic/index.js.map +1 -1
- package/lib/module/Icons/Minimize/assets/minimize.png +0 -0
- package/lib/module/Icons/Minimize/assets/minimize@2x.png +0 -0
- package/lib/module/Icons/Minimize/assets/minimize@3x.png +0 -0
- package/lib/module/Icons/Minimize/index.js +26 -0
- package/lib/module/Icons/Minimize/index.js.map +1 -0
- package/lib/module/Icons/Participants/index.js +5 -1
- package/lib/module/Icons/Participants/index.js.map +1 -1
- package/lib/module/Icons/Pencil/assets/pencil.png +0 -0
- package/lib/module/Icons/Pencil/assets/pencil@2x.png +0 -0
- package/lib/module/Icons/Pencil/assets/pencil@3x.png +0 -0
- package/lib/module/Icons/Pencil/index.js +26 -0
- package/lib/module/Icons/Pencil/index.js.map +1 -0
- package/lib/module/Icons/Pin/assets/pin.png +0 -0
- package/lib/module/Icons/Pin/assets/pin@2x.png +0 -0
- package/lib/module/Icons/Pin/assets/pin@3x.png +0 -0
- package/lib/module/Icons/Pin/index.js +26 -0
- package/lib/module/Icons/Pin/index.js.map +1 -0
- package/lib/module/Icons/Recording/assets/recording.png +0 -0
- package/lib/module/Icons/Recording/assets/recording@2x.png +0 -0
- package/lib/module/Icons/Recording/assets/recording@3x.png +0 -0
- package/lib/module/Icons/Recording/index.js +26 -0
- package/lib/module/Icons/Recording/index.js.map +1 -0
- package/lib/module/Icons/RotateCamera/index.js +5 -1
- package/lib/module/Icons/RotateCamera/index.js.map +1 -1
- package/lib/module/Icons/ScreenShare/index.js +5 -1
- package/lib/module/Icons/ScreenShare/index.js.map +1 -1
- package/lib/module/Icons/Speaker/index.js +5 -1
- package/lib/module/Icons/Speaker/index.js.map +1 -1
- package/lib/module/Icons/Star/assets/star.png +0 -0
- package/lib/module/Icons/Star/assets/star@2x.png +0 -0
- package/lib/module/Icons/Star/assets/star@3x.png +0 -0
- package/lib/module/Icons/Star/index.js +26 -0
- package/lib/module/Icons/Star/index.js.map +1 -0
- package/lib/module/Icons/Stop/assets/stop.png +0 -0
- package/lib/module/Icons/Stop/assets/stop@2x.png +0 -0
- package/lib/module/Icons/Stop/assets/stop@3x.png +0 -0
- package/lib/module/Icons/Stop/index.js +26 -0
- package/lib/module/Icons/Stop/index.js.map +1 -0
- package/lib/module/Icons/ThreeDots/index.js +5 -1
- package/lib/module/Icons/ThreeDots/index.js.map +1 -1
- package/lib/module/Icons/Wave/index.js +5 -1
- package/lib/module/Icons/Wave/index.js.map +1 -1
- package/lib/module/Icons/index.js +10 -0
- package/lib/module/Icons/index.js.map +1 -1
- package/lib/module/components/AvatarView.js +1 -2
- package/lib/module/components/AvatarView.js.map +1 -1
- package/lib/module/components/BackButton.js +6 -4
- package/lib/module/components/BackButton.js.map +1 -1
- package/lib/module/components/BottomSheet.js +146 -0
- package/lib/module/components/BottomSheet.js.map +1 -0
- package/lib/module/components/ChangeNameModalContent.js +122 -0
- package/lib/module/components/ChangeNameModalContent.js.map +1 -0
- package/lib/module/components/CompanyLogo.js +30 -0
- package/lib/module/components/CompanyLogo.js.map +1 -0
- package/lib/module/components/CustomInput.js +2 -3
- package/lib/module/components/CustomInput.js.map +1 -1
- package/lib/module/components/DisplayView.js +16 -55
- package/lib/module/components/DisplayView.js.map +1 -1
- package/lib/module/components/EndRoomModalContent.js +76 -0
- package/lib/module/components/EndRoomModalContent.js.map +1 -0
- package/lib/module/components/Footer.js +9 -10
- package/lib/module/components/Footer.js.map +1 -1
- package/lib/module/components/GridView.js +55 -10
- package/lib/module/components/GridView.js.map +1 -1
- package/lib/module/components/HMSBaseButton.js +57 -0
- package/lib/module/components/HMSBaseButton.js.map +1 -0
- package/lib/module/components/HMSDangerButton.js +44 -0
- package/lib/module/components/HMSDangerButton.js.map +1 -0
- package/lib/module/components/HMSHLSStreamLoading.js +17 -8
- package/lib/module/components/HMSHLSStreamLoading.js.map +1 -1
- package/lib/module/components/HMSManageAudioOutput.js +42 -77
- package/lib/module/components/HMSManageAudioOutput.js.map +1 -1
- package/lib/module/components/HMSManageCameraRotation.js +5 -4
- package/lib/module/components/HMSManageCameraRotation.js.map +1 -1
- package/lib/module/components/HMSManageLeave.js +94 -107
- package/lib/module/components/HMSManageLeave.js.map +1 -1
- package/lib/module/components/HMSManageLocalAudio.js +1 -9
- package/lib/module/components/HMSManageLocalAudio.js.map +1 -1
- package/lib/module/components/HMSManageLocalVideo.js +1 -9
- package/lib/module/components/HMSManageLocalVideo.js.map +1 -1
- package/lib/module/components/HMSMeetingEnded.js +1 -2
- package/lib/module/components/HMSMeetingEnded.js.map +1 -1
- package/lib/module/components/HMSPreviewEditName.js +3 -37
- package/lib/module/components/HMSPreviewEditName.js.map +1 -1
- package/lib/module/components/HMSPreviewHLSLiveIndicator.js +17 -10
- package/lib/module/components/HMSPreviewHLSLiveIndicator.js.map +1 -1
- package/lib/module/components/HMSPreviewJoinButton.js +26 -49
- package/lib/module/components/HMSPreviewJoinButton.js.map +1 -1
- package/lib/module/components/HMSPreviewNetworkQuality.js +6 -4
- package/lib/module/components/HMSPreviewNetworkQuality.js.map +1 -1
- package/lib/module/components/HMSPreviewPeersList.js +21 -10
- package/lib/module/components/HMSPreviewPeersList.js.map +1 -1
- package/lib/module/components/HMSPreviewSubtitle.js +22 -9
- package/lib/module/components/HMSPreviewSubtitle.js.map +1 -1
- package/lib/module/components/HMSPreviewTile.js +16 -8
- package/lib/module/components/HMSPreviewTile.js.map +1 -1
- package/lib/module/components/HMSPreviewTitle.js +14 -6
- package/lib/module/components/HMSPreviewTitle.js.map +1 -1
- package/lib/module/components/HMSPrimaryButton.js +44 -0
- package/lib/module/components/HMSPrimaryButton.js.map +1 -0
- package/lib/module/components/HMSRecordingIndicator.js +37 -0
- package/lib/module/components/HMSRecordingIndicator.js.map +1 -0
- package/lib/module/components/HMSRoomOptions.js +21 -8
- package/lib/module/components/HMSRoomOptions.js.map +1 -1
- package/lib/module/components/HMSShowNetworkQuality.js +6 -5
- package/lib/module/components/HMSShowNetworkQuality.js.map +1 -1
- package/lib/module/components/HMSTextInput.js +57 -0
- package/lib/module/components/HMSTextInput.js.map +1 -0
- package/lib/module/components/Header.js +32 -32
- package/lib/module/components/Header.js.map +1 -1
- package/lib/module/components/LocalPeerRegularVideoView.js +17 -0
- package/lib/module/components/LocalPeerRegularVideoView.js.map +1 -0
- package/lib/module/components/LocalPeerScreenshareView.js +66 -0
- package/lib/module/components/LocalPeerScreenshareView.js.map +1 -0
- package/lib/module/components/Meeting.js +8 -4
- package/lib/module/components/Meeting.js.map +1 -1
- package/lib/module/components/MiniView.js +154 -0
- package/lib/module/components/MiniView.js.map +1 -0
- package/lib/module/components/Modals.js +31 -114
- package/lib/module/components/Modals.js.map +1 -1
- package/lib/module/components/PaginationDots.js +47 -0
- package/lib/module/components/PaginationDots.js.map +1 -0
- package/lib/module/components/ParticipantsCount.js +46 -0
- package/lib/module/components/ParticipantsCount.js.map +1 -0
- package/lib/module/components/PeerMinimizedView.js +104 -0
- package/lib/module/components/PeerMinimizedView.js.map +1 -0
- package/lib/module/components/PeerSettingsModalContent.js +71 -54
- package/lib/module/components/PeerSettingsModalContent.js.map +1 -1
- package/lib/module/components/PeerVideoTile/AvatarView.js +66 -0
- package/lib/module/components/PeerVideoTile/AvatarView.js.map +1 -0
- package/lib/module/components/PeerVideoTile/PeerAudioMutedIndicator.js +35 -0
- package/lib/module/components/PeerVideoTile/PeerAudioMutedIndicator.js.map +1 -0
- package/lib/module/components/PeerVideoTile/PeerMetadata.js +35 -0
- package/lib/module/components/PeerVideoTile/PeerMetadata.js.map +1 -0
- package/lib/module/components/PeerVideoTile/PeerNameAndNetwork.js +65 -0
- package/lib/module/components/PeerVideoTile/PeerNameAndNetwork.js.map +1 -0
- package/lib/module/components/PeerVideoTile/PeerVideoTileView.js +136 -0
- package/lib/module/components/PeerVideoTile/PeerVideoTileView.js.map +1 -0
- package/lib/module/components/PeerVideoTile/VideoView.js +75 -0
- package/lib/module/components/PeerVideoTile/VideoView.js.map +1 -0
- package/lib/module/components/PeerVideoTile/index.js +2 -0
- package/lib/module/components/PeerVideoTile/index.js.map +1 -0
- package/lib/module/components/PressableIcon.js +15 -8
- package/lib/module/components/PressableIcon.js.map +1 -1
- package/lib/module/components/Preview.js +19 -6
- package/lib/module/components/Preview.js.map +1 -1
- package/lib/module/components/RoomSettingsModalContent.js +233 -364
- package/lib/module/components/RoomSettingsModalContent.js.map +1 -1
- package/lib/module/components/RoomSettingsModalDebugModeContent.js +287 -0
- package/lib/module/components/RoomSettingsModalDebugModeContent.js.map +1 -0
- package/lib/module/components/StopRecordingModalContent.js +88 -0
- package/lib/module/components/StopRecordingModalContent.js.map +1 -0
- package/lib/module/components/Tile.js +30 -91
- package/lib/module/components/Tile.js.map +1 -1
- package/lib/module/components/TilesContainer.js +100 -10
- package/lib/module/components/TilesContainer.js.map +1 -1
- package/lib/module/components/UnmountAfterDelay.js +39 -0
- package/lib/module/components/UnmountAfterDelay.js.map +1 -0
- package/lib/module/components/WebrtcView.js +41 -0
- package/lib/module/components/WebrtcView.js.map +1 -0
- package/lib/module/components/WelcomeInMeeting.js +45 -0
- package/lib/module/components/WelcomeInMeeting.js.map +1 -0
- package/lib/module/hooks-sdk-selectors.js +4 -0
- package/lib/module/hooks-sdk-selectors.js.map +1 -1
- package/lib/module/hooks-sdk.js +16 -1
- package/lib/module/hooks-sdk.js.map +1 -1
- package/lib/module/hooks-util-selectors.js +8 -2
- package/lib/module/hooks-util-selectors.js.map +1 -1
- package/lib/module/hooks-util.js +310 -96
- package/lib/module/hooks-util.js.map +1 -1
- package/lib/module/modules/HMSManager.js +17 -0
- package/lib/module/modules/HMSManager.js.map +1 -0
- package/lib/module/modules/parser.js +16 -0
- package/lib/module/modules/parser.js.map +1 -0
- package/lib/module/peerTrackNodeUtils.js +6 -2
- package/lib/module/peerTrackNodeUtils.js.map +1 -1
- package/lib/module/redux/actionTypes.js +16 -1
- package/lib/module/redux/actionTypes.js.map +1 -1
- package/lib/module/redux/actions/index.js +42 -0
- package/lib/module/redux/actions/index.js.map +1 -1
- package/lib/module/redux/reducers/appState.js +57 -1
- package/lib/module/redux/reducers/appState.js.map +1 -1
- package/lib/module/redux/reducers/hmsStates.js +7 -1
- package/lib/module/redux/reducers/hmsStates.js.map +1 -1
- package/lib/module/redux/reducers/userState.js +3 -1
- package/lib/module/redux/reducers/userState.js.map +1 -1
- package/lib/module/utils/functions.js +47 -0
- package/lib/module/utils/functions.js.map +1 -1
- package/lib/module/utils/theme.js +57 -5
- package/lib/module/utils/theme.js.map +1 -1
- package/lib/module/utils/types.js +6 -0
- package/lib/module/utils/types.js.map +1 -1
- package/lib/typescript/HMSInstanceSetup.d.ts.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 +7 -0
- package/lib/typescript/Icons/AlertTriangle/index.d.ts.map +1 -0
- package/lib/typescript/Icons/AnswerPhone/index.d.ts.map +1 -1
- package/lib/typescript/Icons/BRB/index.d.ts +7 -0
- package/lib/typescript/Icons/BRB/index.d.ts.map +1 -0
- package/lib/typescript/Icons/Bluetooth/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Camera/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Chat/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Check/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Chevron/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Close/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Hamburger/index.d.ts +7 -0
- package/lib/typescript/Icons/Hamburger/index.d.ts.map +1 -0
- package/lib/typescript/Icons/Hand/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Headphones/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Maximize/index.d.ts +7 -0
- package/lib/typescript/Icons/Maximize/index.d.ts.map +1 -0
- package/lib/typescript/Icons/Mic/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Minimize/index.d.ts +7 -0
- package/lib/typescript/Icons/Minimize/index.d.ts.map +1 -0
- package/lib/typescript/Icons/Participants/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Pencil/index.d.ts +7 -0
- package/lib/typescript/Icons/Pencil/index.d.ts.map +1 -0
- package/lib/typescript/Icons/Pin/index.d.ts +7 -0
- package/lib/typescript/Icons/Pin/index.d.ts.map +1 -0
- package/lib/typescript/Icons/Recording/index.d.ts +7 -0
- package/lib/typescript/Icons/Recording/index.d.ts.map +1 -0
- package/lib/typescript/Icons/RotateCamera/index.d.ts.map +1 -1
- package/lib/typescript/Icons/ScreenShare/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Speaker/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Star/index.d.ts +7 -0
- package/lib/typescript/Icons/Star/index.d.ts.map +1 -0
- package/lib/typescript/Icons/Stop/index.d.ts +7 -0
- package/lib/typescript/Icons/Stop/index.d.ts.map +1 -0
- package/lib/typescript/Icons/ThreeDots/index.d.ts.map +1 -1
- package/lib/typescript/Icons/Wave/index.d.ts.map +1 -1
- package/lib/typescript/Icons/index.d.ts +10 -0
- package/lib/typescript/Icons/index.d.ts.map +1 -1
- package/lib/typescript/components/BackButton.d.ts.map +1 -1
- package/lib/typescript/components/BottomSheet.d.ts +25 -0
- package/lib/typescript/components/BottomSheet.d.ts.map +1 -0
- package/lib/typescript/components/ChangeNameModalContent.d.ts +6 -0
- package/lib/typescript/components/ChangeNameModalContent.d.ts.map +1 -0
- package/lib/typescript/components/CompanyLogo.d.ts +7 -0
- package/lib/typescript/components/CompanyLogo.d.ts.map +1 -0
- package/lib/typescript/components/CustomInput.d.ts +1 -1
- package/lib/typescript/components/CustomInput.d.ts.map +1 -1
- package/lib/typescript/components/DisplayView.d.ts.map +1 -1
- package/lib/typescript/components/EndRoomModalContent.d.ts +6 -0
- package/lib/typescript/components/EndRoomModalContent.d.ts.map +1 -0
- package/lib/typescript/components/Footer.d.ts.map +1 -1
- package/lib/typescript/components/GridView.d.ts +3 -4
- package/lib/typescript/components/GridView.d.ts.map +1 -1
- package/lib/typescript/components/HMSBaseButton.d.ts +15 -0
- package/lib/typescript/components/HMSBaseButton.d.ts.map +1 -0
- package/lib/typescript/components/HMSDangerButton.d.ts +12 -0
- package/lib/typescript/components/HMSDangerButton.d.ts.map +1 -0
- package/lib/typescript/components/HMSHLSStreamLoading.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/HMSManageLocalAudio.d.ts.map +1 -1
- package/lib/typescript/components/HMSManageLocalVideo.d.ts.map +1 -1
- package/lib/typescript/components/HMSPreviewEditName.d.ts.map +1 -1
- 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/HMSPreviewPeersList.d.ts.map +1 -1
- package/lib/typescript/components/HMSPreviewSubtitle.d.ts.map +1 -1
- package/lib/typescript/components/HMSPreviewTile.d.ts.map +1 -1
- package/lib/typescript/components/HMSPreviewTitle.d.ts.map +1 -1
- package/lib/typescript/components/HMSPrimaryButton.d.ts +12 -0
- package/lib/typescript/components/HMSPrimaryButton.d.ts.map +1 -0
- package/lib/typescript/components/HMSRecordingIndicator.d.ts +3 -0
- package/lib/typescript/components/HMSRecordingIndicator.d.ts.map +1 -0
- package/lib/typescript/components/HMSRoomOptions.d.ts.map +1 -1
- package/lib/typescript/components/HMSShowNetworkQuality.d.ts.map +1 -1
- package/lib/typescript/components/HMSTextInput.d.ts +10 -0
- package/lib/typescript/components/HMSTextInput.d.ts.map +1 -0
- package/lib/typescript/components/Header.d.ts.map +1 -1
- package/lib/typescript/components/LocalPeerRegularVideoView.d.ts +6 -0
- package/lib/typescript/components/LocalPeerRegularVideoView.d.ts.map +1 -0
- package/lib/typescript/components/LocalPeerScreenshareView.d.ts +3 -0
- package/lib/typescript/components/LocalPeerScreenshareView.d.ts.map +1 -0
- package/lib/typescript/components/Meeting.d.ts.map +1 -1
- package/lib/typescript/components/MiniView.d.ts +9 -0
- package/lib/typescript/components/MiniView.d.ts.map +1 -0
- package/lib/typescript/components/Modals.d.ts +0 -7
- package/lib/typescript/components/Modals.d.ts.map +1 -1
- package/lib/typescript/components/PaginationDots.d.ts +6 -0
- package/lib/typescript/components/PaginationDots.d.ts.map +1 -0
- package/lib/typescript/components/ParticipantsCount.d.ts +3 -0
- package/lib/typescript/components/ParticipantsCount.d.ts.map +1 -0
- package/lib/typescript/components/PeerMinimizedView.d.ts +12 -0
- package/lib/typescript/components/PeerMinimizedView.d.ts.map +1 -0
- package/lib/typescript/components/PeerSettingsModalContent.d.ts +1 -0
- package/lib/typescript/components/PeerSettingsModalContent.d.ts.map +1 -1
- package/lib/typescript/components/PeerVideoTile/AvatarView.d.ts +9 -0
- package/lib/typescript/components/PeerVideoTile/AvatarView.d.ts.map +1 -0
- package/lib/typescript/components/PeerVideoTile/PeerAudioMutedIndicator.d.ts +6 -0
- package/lib/typescript/components/PeerVideoTile/PeerAudioMutedIndicator.d.ts.map +1 -0
- package/lib/typescript/components/PeerVideoTile/PeerMetadata.d.ts +6 -0
- package/lib/typescript/components/PeerVideoTile/PeerMetadata.d.ts.map +1 -0
- package/lib/typescript/components/PeerVideoTile/PeerNameAndNetwork.d.ts +10 -0
- package/lib/typescript/components/PeerVideoTile/PeerNameAndNetwork.d.ts.map +1 -0
- package/lib/typescript/components/PeerVideoTile/PeerVideoTileView.d.ts +10 -0
- package/lib/typescript/components/PeerVideoTile/PeerVideoTileView.d.ts.map +1 -0
- package/lib/typescript/components/PeerVideoTile/VideoView.d.ts +13 -0
- package/lib/typescript/components/PeerVideoTile/VideoView.d.ts.map +1 -0
- package/lib/typescript/components/PeerVideoTile/index.d.ts +1 -0
- package/lib/typescript/components/PeerVideoTile/index.d.ts.map +1 -0
- package/lib/typescript/components/PressableIcon.d.ts.map +1 -1
- package/lib/typescript/components/Preview.d.ts.map +1 -1
- package/lib/typescript/components/RoomSettingsModalContent.d.ts +2 -2
- package/lib/typescript/components/RoomSettingsModalContent.d.ts.map +1 -1
- package/lib/typescript/components/RoomSettingsModalDebugModeContent.d.ts +17 -0
- package/lib/typescript/components/RoomSettingsModalDebugModeContent.d.ts.map +1 -0
- package/lib/typescript/components/StopRecordingModalContent.d.ts +6 -0
- package/lib/typescript/components/StopRecordingModalContent.d.ts.map +1 -0
- package/lib/typescript/components/Tile.d.ts +12 -3
- package/lib/typescript/components/Tile.d.ts.map +1 -1
- package/lib/typescript/components/TilesContainer.d.ts.map +1 -1
- package/lib/typescript/components/UnmountAfterDelay.d.ts +12 -0
- package/lib/typescript/components/UnmountAfterDelay.d.ts.map +1 -0
- package/lib/typescript/components/WebrtcView.d.ts +10 -0
- package/lib/typescript/components/WebrtcView.d.ts.map +1 -0
- package/lib/typescript/components/WelcomeInMeeting.d.ts +5 -0
- package/lib/typescript/components/WelcomeInMeeting.d.ts.map +1 -0
- package/lib/typescript/hooks-sdk-selectors.d.ts +2 -0
- package/lib/typescript/hooks-sdk-selectors.d.ts.map +1 -1
- package/lib/typescript/hooks-sdk.d.ts +1 -0
- package/lib/typescript/hooks-sdk.d.ts.map +1 -1
- package/lib/typescript/hooks-util-selectors.d.ts.map +1 -1
- package/lib/typescript/hooks-util.d.ts +15 -2
- package/lib/typescript/hooks-util.d.ts.map +1 -1
- package/lib/typescript/modules/HMSManager.d.ts +4 -0
- package/lib/typescript/modules/HMSManager.d.ts.map +1 -0
- package/lib/typescript/modules/parser.d.ts +3 -0
- package/lib/typescript/modules/parser.d.ts.map +1 -0
- package/lib/typescript/peerTrackNodeUtils.d.ts +1 -0
- package/lib/typescript/peerTrackNodeUtils.d.ts.map +1 -1
- package/lib/typescript/redux/actionTypes.d.ts +9 -1
- package/lib/typescript/redux/actionTypes.d.ts.map +1 -1
- package/lib/typescript/redux/actions/index.d.ts +45 -0
- package/lib/typescript/redux/actions/index.d.ts.map +1 -1
- package/lib/typescript/redux/index.d.ts +7 -0
- package/lib/typescript/redux/index.d.ts.map +1 -1
- package/lib/typescript/redux/reducers/appState.d.ts +5 -0
- package/lib/typescript/redux/reducers/appState.d.ts.map +1 -1
- package/lib/typescript/redux/reducers/hmsStates.d.ts +7 -1
- package/lib/typescript/redux/reducers/hmsStates.d.ts.map +1 -1
- package/lib/typescript/redux/reducers/index.d.ts +7 -0
- 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 +14 -0
- package/lib/typescript/utils/functions.d.ts.map +1 -1
- package/lib/typescript/utils/theme.d.ts +6 -3
- package/lib/typescript/utils/theme.d.ts.map +1 -1
- package/lib/typescript/utils/types.d.ts +5 -0
- package/lib/typescript/utils/types.d.ts.map +1 -1
- package/package.json +3 -1
- package/src/HMSInstanceSetup.tsx +1 -0
- package/src/HMSPrebuilt.tsx +3 -2
- package/src/HMSRoomSetup.tsx +45 -8
- package/src/Icons/AlertTriangle/assets/alert-triangle.png +0 -0
- package/src/Icons/AlertTriangle/assets/alert-triangle@2x.png +0 -0
- package/src/Icons/AlertTriangle/assets/alert-triangle@3x.png +0 -0
- package/src/Icons/AlertTriangle/index.tsx +33 -0
- package/src/Icons/AnswerPhone/index.tsx +7 -1
- package/src/Icons/BRB/assets/BRB.png +0 -0
- package/src/Icons/BRB/assets/BRB@2x.png +0 -0
- package/src/Icons/BRB/assets/BRB@3x.png +0 -0
- package/src/Icons/BRB/index.tsx +31 -0
- package/src/Icons/Bluetooth/index.tsx +7 -1
- package/src/Icons/Camera/index.tsx +7 -1
- package/src/Icons/Chat/index.tsx +7 -1
- package/src/Icons/Check/index.tsx +7 -1
- package/src/Icons/Chevron/index.tsx +7 -1
- package/src/Icons/Close/index.tsx +7 -1
- package/src/Icons/Hamburger/assets/hamburger.png +0 -0
- package/src/Icons/Hamburger/assets/hamburger@2x.png +0 -0
- package/src/Icons/Hamburger/assets/hamburger@3x.png +0 -0
- package/src/Icons/Hamburger/index.tsx +33 -0
- package/src/Icons/Hand/index.tsx +6 -3
- package/src/Icons/Headphones/index.tsx +7 -1
- package/src/Icons/Maximize/assets/maximize.png +0 -0
- package/src/Icons/Maximize/assets/maximize@2x.png +0 -0
- package/src/Icons/Maximize/assets/maximize@3x.png +0 -0
- package/src/Icons/Maximize/index.tsx +33 -0
- package/src/Icons/Mic/index.tsx +7 -1
- package/src/Icons/Minimize/assets/minimize.png +0 -0
- package/src/Icons/Minimize/assets/minimize@2x.png +0 -0
- package/src/Icons/Minimize/assets/minimize@3x.png +0 -0
- package/src/Icons/Minimize/index.tsx +33 -0
- package/src/Icons/Participants/index.tsx +7 -1
- package/src/Icons/Pencil/assets/pencil.png +0 -0
- package/src/Icons/Pencil/assets/pencil@2x.png +0 -0
- package/src/Icons/Pencil/assets/pencil@3x.png +0 -0
- package/src/Icons/Pencil/index.tsx +33 -0
- package/src/Icons/Pin/assets/pin.png +0 -0
- package/src/Icons/Pin/assets/pin@2x.png +0 -0
- package/src/Icons/Pin/assets/pin@3x.png +0 -0
- package/src/Icons/Pin/index.tsx +30 -0
- package/src/Icons/Recording/assets/recording.png +0 -0
- package/src/Icons/Recording/assets/recording@2x.png +0 -0
- package/src/Icons/Recording/assets/recording@3x.png +0 -0
- package/src/Icons/Recording/index.tsx +33 -0
- package/src/Icons/RotateCamera/index.tsx +7 -1
- package/src/Icons/ScreenShare/index.tsx +7 -1
- package/src/Icons/Speaker/index.tsx +12 -1
- package/src/Icons/Star/assets/star.png +0 -0
- package/src/Icons/Star/assets/star@2x.png +0 -0
- package/src/Icons/Star/assets/star@3x.png +0 -0
- package/src/Icons/Star/index.tsx +30 -0
- package/src/Icons/Stop/assets/stop.png +0 -0
- package/src/Icons/Stop/assets/stop@2x.png +0 -0
- package/src/Icons/Stop/assets/stop@3x.png +0 -0
- package/src/Icons/Stop/index.tsx +33 -0
- package/src/Icons/ThreeDots/index.tsx +7 -1
- package/src/Icons/Wave/index.tsx +7 -1
- package/src/Icons/index.ts +10 -0
- package/src/components/AvatarView.tsx +1 -2
- package/src/components/BackButton.tsx +6 -3
- package/src/components/BottomSheet.tsx +191 -0
- package/src/components/ChangeNameModalContent.tsx +157 -0
- package/src/components/CompanyLogo.tsx +35 -0
- package/src/components/CustomInput.tsx +2 -3
- package/src/components/DisplayView.tsx +16 -65
- package/src/components/EndRoomModalContent.tsx +90 -0
- package/src/components/Footer.tsx +7 -7
- package/src/components/GridView.tsx +91 -20
- package/src/components/HLSView.tsx +1 -1
- package/src/components/HMSBaseButton.tsx +91 -0
- package/src/components/HMSDangerButton.tsx +65 -0
- package/src/components/HMSHLSStreamLoading.tsx +18 -7
- package/src/components/HMSManageAudioOutput.tsx +59 -90
- package/src/components/HMSManageCameraRotation.tsx +11 -8
- package/src/components/HMSManageLeave.tsx +104 -109
- package/src/components/HMSManageLocalAudio.tsx +1 -10
- package/src/components/HMSManageLocalVideo.tsx +1 -10
- package/src/components/HMSMeetingEnded.tsx +1 -2
- package/src/components/HMSPreviewEditName.tsx +2 -44
- package/src/components/HMSPreviewHLSLiveIndicator.tsx +17 -9
- package/src/components/HMSPreviewJoinButton.tsx +33 -71
- package/src/components/HMSPreviewNetworkQuality.tsx +7 -4
- package/src/components/HMSPreviewPeersList.tsx +23 -13
- package/src/components/HMSPreviewSubtitle.tsx +27 -11
- package/src/components/HMSPreviewTile.tsx +19 -8
- package/src/components/HMSPreviewTitle.tsx +18 -5
- package/src/components/HMSPrimaryButton.tsx +63 -0
- package/src/components/HMSRecordingIndicator.tsx +37 -0
- package/src/components/HMSRoomOptions.tsx +28 -8
- package/src/components/HMSShowNetworkQuality.tsx +7 -5
- package/src/components/HMSTextInput.tsx +78 -0
- package/src/components/Header.tsx +37 -36
- package/src/components/LocalPeerRegularVideoView.tsx +28 -0
- package/src/components/LocalPeerScreenshareView.tsx +72 -0
- package/src/components/Meeting.tsx +10 -3
- package/src/components/MiniView.tsx +213 -0
- package/src/components/Modals.tsx +1 -110
- package/src/components/PaginationDots.tsx +65 -0
- package/src/components/ParticipantsCount.tsx +52 -0
- package/src/components/PeerMinimizedView.tsx +131 -0
- package/src/components/PeerSettingsModalContent.tsx +110 -54
- package/src/components/PeerVideoTile/AvatarView.tsx +79 -0
- package/src/components/PeerVideoTile/PeerAudioMutedIndicator.tsx +41 -0
- package/src/components/PeerVideoTile/PeerMetadata.tsx +46 -0
- package/src/components/PeerVideoTile/PeerNameAndNetwork.tsx +81 -0
- package/src/components/PeerVideoTile/PeerVideoTileView.tsx +180 -0
- package/src/components/PeerVideoTile/VideoView.tsx +104 -0
- package/src/components/PeerVideoTile/index.ts +0 -0
- package/src/components/PressableIcon.tsx +15 -8
- package/src/components/Preview.tsx +24 -6
- package/src/components/RoomSettingsModalContent.tsx +236 -524
- package/src/components/RoomSettingsModalDebugModeContent.tsx +446 -0
- package/src/components/StopRecordingModalContent.tsx +109 -0
- package/src/components/Tile.tsx +49 -90
- package/src/components/TilesContainer.tsx +116 -14
- package/src/components/UnmountAfterDelay.tsx +61 -0
- package/src/components/WebrtcView.tsx +72 -0
- package/src/components/WelcomeInMeeting.tsx +52 -0
- package/src/hooks-sdk-selectors.tsx +7 -0
- package/src/hooks-sdk.ts +18 -0
- package/src/hooks-util-selectors.tsx +12 -1
- package/src/hooks-util.ts +420 -115
- package/src/modules/HMSManager.ts +25 -0
- package/src/modules/parser.ts +22 -0
- package/src/peerTrackNodeUtils.tsx +13 -10
- package/src/redux/actionTypes.ts +22 -0
- package/src/redux/actions/index.ts +51 -0
- package/src/redux/reducers/appState.ts +56 -0
- package/src/redux/reducers/hmsStates.ts +15 -1
- package/src/redux/reducers/userState.ts +3 -0
- package/src/utils/functions.ts +48 -0
- package/src/utils/theme.ts +74 -5
- package/src/utils/types.ts +6 -0
package/src/components/Tile.tsx
CHANGED
|
@@ -1,118 +1,77 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { useSelector } from 'react-redux';
|
|
3
|
+
import { View } from 'react-native';
|
|
4
|
+
import type { ViewStyle, StyleProp } from 'react-native';
|
|
3
5
|
import { HMSTrackSource } from '@100mslive/react-native-hms';
|
|
4
|
-
import Feather from 'react-native-vector-icons/Feather';
|
|
5
|
-
import Ionicons from 'react-native-vector-icons/Ionicons';
|
|
6
6
|
import type { HMSView } from '@100mslive/react-native-hms';
|
|
7
7
|
|
|
8
|
-
import { styles } from './styles';
|
|
9
|
-
|
|
10
|
-
import { parseMetadata } from '../utils/functions';
|
|
11
|
-
import { DisplayTrack } from './DisplayTrack';
|
|
12
|
-
import { COLORS } from '../utils/theme';
|
|
13
8
|
import type { PeerTrackNode } from '../utils/types';
|
|
14
|
-
import
|
|
9
|
+
import PeerRTCStatsContainer from './PeerRTCStatsContainer';
|
|
10
|
+
import type { RootState } from '../redux';
|
|
11
|
+
import { LocalPeerScreenshareView } from './LocalPeerScreenshareView';
|
|
12
|
+
import { PeerVideoTileView } from './PeerVideoTile/PeerVideoTileView';
|
|
15
13
|
|
|
16
|
-
|
|
17
|
-
totalTilesInContainer: number;
|
|
14
|
+
type TileProps = {
|
|
18
15
|
peerTrackNode: PeerTrackNode;
|
|
19
16
|
onPeerTileMorePress(peerTrackNode: PeerTrackNode): void;
|
|
20
17
|
setHmsViewRefs(viewId: string, ref: typeof HMSView | null): void;
|
|
21
|
-
|
|
18
|
+
style?: StyleProp<ViewStyle>;
|
|
19
|
+
} & (
|
|
20
|
+
| {
|
|
21
|
+
aspectRatio?: undefined;
|
|
22
|
+
width: ViewStyle['width'];
|
|
23
|
+
height: ViewStyle['height'];
|
|
24
|
+
}
|
|
25
|
+
| {
|
|
26
|
+
aspectRatio: number;
|
|
27
|
+
width?: ViewStyle['width'];
|
|
28
|
+
height?: ViewStyle['width'];
|
|
29
|
+
}
|
|
30
|
+
);
|
|
22
31
|
|
|
23
|
-
const
|
|
32
|
+
const _Tile: React.FC<TileProps> = ({
|
|
33
|
+
aspectRatio,
|
|
34
|
+
width,
|
|
35
|
+
height,
|
|
24
36
|
onPeerTileMorePress,
|
|
25
37
|
peerTrackNode,
|
|
26
|
-
totalTilesInContainer,
|
|
27
38
|
setHmsViewRefs,
|
|
39
|
+
style,
|
|
28
40
|
}) => {
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
const oneTileStyle = { width: '100%', height: '100%' };
|
|
33
|
-
const twoTileStyle = { width: '100%', height: '50%' };
|
|
34
|
-
const threeTileStyle = { width: '100%', height: '33.3333%' };
|
|
35
|
-
const fourTileStyle = { width: '50%', height: '50%' };
|
|
41
|
+
const showStatsOnTiles = useSelector(
|
|
42
|
+
(state: RootState) => state.app.joinConfig.showStats
|
|
43
|
+
);
|
|
36
44
|
|
|
37
|
-
const
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
const fourTileStyleLandscape = { width: '50%', height: '50%' };
|
|
45
|
+
const trackSource = peerTrackNode.track?.source;
|
|
46
|
+
const isNonRegularTrack =
|
|
47
|
+
trackSource && trackSource !== HMSTrackSource.REGULAR;
|
|
41
48
|
|
|
42
49
|
return (
|
|
43
50
|
<View
|
|
44
|
-
style={[
|
|
45
|
-
{ borderWidth: 1 },
|
|
46
|
-
peerTrackNode?.track?.source !== undefined &&
|
|
47
|
-
peerTrackNode?.track?.source !== HMSTrackSource.REGULAR
|
|
48
|
-
? styles.gridTile
|
|
49
|
-
: isPortraitOrientation
|
|
50
|
-
? totalTilesInContainer === 1
|
|
51
|
-
? oneTileStyle
|
|
52
|
-
: totalTilesInContainer === 2
|
|
53
|
-
? twoTileStyle
|
|
54
|
-
: totalTilesInContainer === 3
|
|
55
|
-
? threeTileStyle
|
|
56
|
-
: fourTileStyle
|
|
57
|
-
: totalTilesInContainer === 1
|
|
58
|
-
? oneTileStyleLandscape
|
|
59
|
-
: totalTilesInContainer === 2
|
|
60
|
-
? twoTileStyleLandscape
|
|
61
|
-
: totalTilesInContainer === 3
|
|
62
|
-
? threeTileStyleLandscape
|
|
63
|
-
: fourTileStyleLandscape,
|
|
64
|
-
]}
|
|
51
|
+
style={[{ position: 'relative' }, { width, height, aspectRatio }, style]}
|
|
65
52
|
>
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
/>
|
|
75
|
-
|
|
76
|
-
{/* More Options button for Peer */}
|
|
77
|
-
<View style={styles.morePeerOptionsContainer}>
|
|
78
|
-
<TouchableOpacity
|
|
79
|
-
onPress={() => onPeerTileMorePress(peerTrackNode)}
|
|
80
|
-
style={{
|
|
81
|
-
padding: 8,
|
|
82
|
-
backgroundColor: COLORS.SECONDARY.DISABLED,
|
|
83
|
-
borderRadius: 18,
|
|
84
|
-
}}
|
|
85
|
-
>
|
|
86
|
-
<Feather name="more-horizontal" style={styles.mic} size={20} />
|
|
87
|
-
</TouchableOpacity>
|
|
88
|
-
</View>
|
|
89
|
-
|
|
90
|
-
{peerTrackNode?.peer?.audioTrack?.isMute() && (
|
|
91
|
-
<View style={styles.micContainer}>
|
|
92
|
-
<Feather name="mic-off" style={styles.mic} size={20} />
|
|
93
|
-
</View>
|
|
53
|
+
{isNonRegularTrack && peerTrackNode.peer.isLocal ? (
|
|
54
|
+
<LocalPeerScreenshareView />
|
|
55
|
+
) : (
|
|
56
|
+
<PeerVideoTileView
|
|
57
|
+
ref={(ref) => setHmsViewRefs(peerTrackNode.id, ref)}
|
|
58
|
+
peerTrackNode={peerTrackNode}
|
|
59
|
+
onMoreOptionsPress={onPeerTileMorePress}
|
|
60
|
+
/>
|
|
94
61
|
)}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
{parsedMetadata?.isHandRaised ? (
|
|
103
|
-
<View style={styles.status}>
|
|
104
|
-
<Ionicons
|
|
105
|
-
name="hand-left"
|
|
106
|
-
style={{ color: COLORS.TWIN.YELLOW }}
|
|
107
|
-
size={20}
|
|
108
|
-
/>
|
|
109
|
-
</View>
|
|
62
|
+
|
|
63
|
+
{showStatsOnTiles ? (
|
|
64
|
+
<PeerRTCStatsContainer
|
|
65
|
+
trackId={peerTrackNode.track?.trackId}
|
|
66
|
+
peerId={peerTrackNode.peer.peerID}
|
|
67
|
+
trackSource={peerTrackNode.track?.source}
|
|
68
|
+
/>
|
|
110
69
|
) : null}
|
|
111
70
|
</View>
|
|
112
71
|
);
|
|
113
72
|
};
|
|
114
73
|
|
|
115
|
-
const Tile = React.memo(
|
|
74
|
+
const Tile = React.memo(_Tile);
|
|
116
75
|
|
|
117
76
|
Tile.displayName = 'Tile';
|
|
118
77
|
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { View, Dimensions } from 'react-native';
|
|
3
|
+
import type { ViewStyle } from 'react-native';
|
|
3
4
|
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
4
5
|
import type { HMSView } from '@100mslive/react-native-hms';
|
|
5
6
|
|
|
6
|
-
import { styles } from './styles';
|
|
7
|
-
|
|
8
7
|
import { Tile } from './Tile';
|
|
9
8
|
import type { PeerTrackNode } from '../utils/types';
|
|
9
|
+
import { useIsLandscapeOrientation } from '../utils/dimension';
|
|
10
|
+
import { groupIntoPairs } from '../utils/functions';
|
|
10
11
|
|
|
11
12
|
interface TilesContainerProps {
|
|
12
13
|
peerTrackNodes: PeerTrackNode[];
|
|
@@ -14,35 +15,136 @@ interface TilesContainerProps {
|
|
|
14
15
|
setHmsViewRefs(viewId: string, ref: typeof HMSView | null): void;
|
|
15
16
|
}
|
|
16
17
|
|
|
17
|
-
const
|
|
18
|
+
const _TilesContainer: React.FC<TilesContainerProps> = ({
|
|
18
19
|
peerTrackNodes,
|
|
19
20
|
setHmsViewRefs,
|
|
20
21
|
onPeerTileMorePress,
|
|
21
22
|
}) => {
|
|
22
23
|
const { left, right } = useSafeAreaInsets();
|
|
24
|
+
const isLandscapeOrientation = useIsLandscapeOrientation();
|
|
25
|
+
|
|
26
|
+
const stylesConfig = computeTileWidthAndHeight(
|
|
27
|
+
peerTrackNodes.length,
|
|
28
|
+
isLandscapeOrientation
|
|
29
|
+
);
|
|
30
|
+
|
|
31
|
+
// In this layout, Tile will take as much height and width as possible
|
|
32
|
+
// Width and Height of Tile are independent of each other
|
|
33
|
+
const growableTileLayout = peerTrackNodes.length <= 4;
|
|
23
34
|
|
|
24
35
|
return (
|
|
25
36
|
<View
|
|
26
37
|
style={[
|
|
27
|
-
|
|
38
|
+
// If tile are growable, then we want whatever remaining space to be between them
|
|
39
|
+
{ justifyContent: growableTileLayout ? 'space-between' : 'center' },
|
|
28
40
|
{ width: Dimensions.get('window').width - left - right },
|
|
29
41
|
]}
|
|
30
42
|
>
|
|
31
|
-
{peerTrackNodes
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
43
|
+
{peerTrackNodes.length <= 3 ? (
|
|
44
|
+
// Use 1 Column Layout
|
|
45
|
+
<React.Fragment>
|
|
46
|
+
{peerTrackNodes.map((peerTrackNode) => {
|
|
47
|
+
return (
|
|
48
|
+
<Tile
|
|
49
|
+
key={peerTrackNode.id}
|
|
50
|
+
setHmsViewRefs={setHmsViewRefs}
|
|
51
|
+
onPeerTileMorePress={onPeerTileMorePress}
|
|
52
|
+
peerTrackNode={peerTrackNode}
|
|
53
|
+
height={stylesConfig.height}
|
|
54
|
+
width={stylesConfig.width}
|
|
55
|
+
aspectRatio={stylesConfig.aspectRatio}
|
|
56
|
+
/>
|
|
57
|
+
);
|
|
58
|
+
})}
|
|
59
|
+
</React.Fragment>
|
|
60
|
+
) : (
|
|
61
|
+
// Use Grid Layout
|
|
62
|
+
<React.Fragment>
|
|
63
|
+
{groupIntoPairs(peerTrackNodes.length).map((pair, idx) => {
|
|
64
|
+
const peerTrackNodesPair = pair.map(
|
|
65
|
+
(nodeIndex) => peerTrackNodes[nodeIndex] as PeerTrackNode
|
|
66
|
+
);
|
|
67
|
+
const isFirstPairGroup = idx === 0;
|
|
68
|
+
|
|
69
|
+
return (
|
|
70
|
+
<View
|
|
71
|
+
key={peerTrackNodesPair
|
|
72
|
+
.map((peerTrackNode) => peerTrackNode.id)
|
|
73
|
+
.join(',')}
|
|
74
|
+
style={{
|
|
75
|
+
justifyContent:
|
|
76
|
+
peerTrackNodesPair.length === 1
|
|
77
|
+
? 'center'
|
|
78
|
+
: 'space-between',
|
|
79
|
+
flexDirection: 'row',
|
|
80
|
+
flex: growableTileLayout ? 1 : 0,
|
|
81
|
+
marginTop: isFirstPairGroup ? 0 : 8,
|
|
82
|
+
}}
|
|
83
|
+
>
|
|
84
|
+
{peerTrackNodesPair.map((peerTrackNode) => {
|
|
85
|
+
return (
|
|
86
|
+
<Tile
|
|
87
|
+
key={peerTrackNode.id}
|
|
88
|
+
setHmsViewRefs={setHmsViewRefs}
|
|
89
|
+
onPeerTileMorePress={onPeerTileMorePress}
|
|
90
|
+
peerTrackNode={peerTrackNode}
|
|
91
|
+
height={stylesConfig.height}
|
|
92
|
+
width={stylesConfig.width}
|
|
93
|
+
aspectRatio={stylesConfig.aspectRatio}
|
|
94
|
+
/>
|
|
95
|
+
);
|
|
96
|
+
})}
|
|
97
|
+
</View>
|
|
98
|
+
);
|
|
99
|
+
})}
|
|
100
|
+
</React.Fragment>
|
|
101
|
+
)}
|
|
40
102
|
</View>
|
|
41
103
|
);
|
|
42
104
|
};
|
|
43
105
|
|
|
44
|
-
const TilesContainer = React.memo(
|
|
106
|
+
const TilesContainer = React.memo(_TilesContainer);
|
|
45
107
|
|
|
46
108
|
TilesContainer.displayName = 'TilesContainer';
|
|
47
109
|
|
|
48
110
|
export { TilesContainer };
|
|
111
|
+
|
|
112
|
+
// Utility Functions
|
|
113
|
+
|
|
114
|
+
const oneTileStyle = { width: '100%', height: '100%' }; // 1 Column Layout
|
|
115
|
+
const twoTileStyle = { width: '100%', height: '49.4444%' }; // 1 Column Layout
|
|
116
|
+
const threeTileStyle = { width: '100%', height: '32.6666%' }; // 1 Column Layout
|
|
117
|
+
|
|
118
|
+
const fourTileStyle = { width: '49%', height: '100%' }; // Grid Layout when Width and Height has no-correlatiom
|
|
119
|
+
const fiveAndSixTileStyle = { width: '49%', aspectRatio: 1 }; // Grid Layout when width and Height as fixed aspectRatio
|
|
120
|
+
|
|
121
|
+
const oneTileStyleLandscape = { width: '100%', height: '100%' };
|
|
122
|
+
const twoTileStyleLandscape = { width: '50%', height: '100%' };
|
|
123
|
+
const threeTileStyleLandscape = { width: '33.3333%', height: '100%' };
|
|
124
|
+
const fourTileStyleLandscape = { width: '50%', height: '50%' };
|
|
125
|
+
|
|
126
|
+
function computeTileWidthAndHeight(
|
|
127
|
+
totalTiles: number,
|
|
128
|
+
isLandscapeOrientation: boolean
|
|
129
|
+
): {
|
|
130
|
+
width?: ViewStyle['width'];
|
|
131
|
+
height?: ViewStyle['height'];
|
|
132
|
+
aspectRatio?: ViewStyle['aspectRatio'];
|
|
133
|
+
} {
|
|
134
|
+
return (
|
|
135
|
+
(isLandscapeOrientation
|
|
136
|
+
? [
|
|
137
|
+
oneTileStyleLandscape,
|
|
138
|
+
twoTileStyleLandscape,
|
|
139
|
+
threeTileStyleLandscape,
|
|
140
|
+
fourTileStyleLandscape,
|
|
141
|
+
][Math.min(totalTiles - 1, 3)]
|
|
142
|
+
: [
|
|
143
|
+
oneTileStyle,
|
|
144
|
+
twoTileStyle,
|
|
145
|
+
threeTileStyle,
|
|
146
|
+
fourTileStyle,
|
|
147
|
+
fiveAndSixTileStyle,
|
|
148
|
+
][Math.min(totalTiles - 1, 4)]) || { width: '100%', height: '100%' }
|
|
149
|
+
);
|
|
150
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
export interface UnmountAfterDelayProps {
|
|
4
|
+
// current visible state of content
|
|
5
|
+
visible: boolean;
|
|
6
|
+
// callback which unmounts the content by setting a state
|
|
7
|
+
onUnmount(): void;
|
|
8
|
+
// content to show
|
|
9
|
+
children: React.ReactElement;
|
|
10
|
+
// delay after which content should hide
|
|
11
|
+
delay?: number;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export type UnmountAfterDelayAttrs = {
|
|
15
|
+
resetTimer(): void;
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export const UnmountAfterDelay = React.forwardRef<
|
|
19
|
+
UnmountAfterDelayAttrs,
|
|
20
|
+
UnmountAfterDelayProps
|
|
21
|
+
>(({ delay = 4000, children, visible, onUnmount }, ref) => {
|
|
22
|
+
const timeoutId = React.useRef<NodeJS.Timeout | null>(null);
|
|
23
|
+
|
|
24
|
+
const setTimer = React.useCallback(() => {
|
|
25
|
+
if (timeoutId.current) {
|
|
26
|
+
clearTimeout(timeoutId.current);
|
|
27
|
+
}
|
|
28
|
+
timeoutId.current = setTimeout(() => {
|
|
29
|
+
onUnmount();
|
|
30
|
+
timeoutId.current = null;
|
|
31
|
+
}, delay);
|
|
32
|
+
}, [delay]);
|
|
33
|
+
|
|
34
|
+
const clearTimer = React.useCallback(() => {
|
|
35
|
+
if (timeoutId.current) {
|
|
36
|
+
clearTimeout(timeoutId.current);
|
|
37
|
+
timeoutId.current = null;
|
|
38
|
+
}
|
|
39
|
+
}, []);
|
|
40
|
+
|
|
41
|
+
React.useImperativeHandle(
|
|
42
|
+
ref,
|
|
43
|
+
() => ({
|
|
44
|
+
resetTimer: () => {
|
|
45
|
+
clearTimer();
|
|
46
|
+
setTimer();
|
|
47
|
+
},
|
|
48
|
+
}),
|
|
49
|
+
[setTimer]
|
|
50
|
+
);
|
|
51
|
+
|
|
52
|
+
React.useEffect(() => {
|
|
53
|
+
if (visible) {
|
|
54
|
+
setTimer();
|
|
55
|
+
|
|
56
|
+
return clearTimer;
|
|
57
|
+
}
|
|
58
|
+
}, [visible, setTimer, clearTimer]);
|
|
59
|
+
|
|
60
|
+
return visible ? children : null;
|
|
61
|
+
});
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import React, { useMemo } from 'react';
|
|
2
|
+
import { useSelector } from 'react-redux';
|
|
3
|
+
|
|
4
|
+
import { MaxTilesInOnePage, PipModes } from '../utils/types';
|
|
5
|
+
import type { PeerTrackNode } from '../utils/types';
|
|
6
|
+
import { pairData } from '../utils/functions';
|
|
7
|
+
import type { RootState } from '../redux';
|
|
8
|
+
import { GridView } from './GridView';
|
|
9
|
+
import type { GridViewRefAttrs } from './GridView';
|
|
10
|
+
import PIPView from './PIPView';
|
|
11
|
+
import { useIsPortraitOrientation } from '../utils/dimension';
|
|
12
|
+
import { LocalPeerRegularVideoView } from './LocalPeerRegularVideoView';
|
|
13
|
+
import { WelcomeInMeeting } from './WelcomeInMeeting';
|
|
14
|
+
|
|
15
|
+
interface WebrtcViewProps {
|
|
16
|
+
peerTrackNodes: Array<PeerTrackNode>;
|
|
17
|
+
handlePeerTileMorePress(node: PeerTrackNode): void;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export const WebrtcView = React.forwardRef<GridViewRefAttrs, WebrtcViewProps>(
|
|
21
|
+
({ peerTrackNodes, handlePeerTileMorePress }, gridViewRef) => {
|
|
22
|
+
const isPortrait = useIsPortraitOrientation();
|
|
23
|
+
|
|
24
|
+
const isPipModeActive = useSelector(
|
|
25
|
+
(state: RootState) => state.app.pipModeStatus === PipModes.ACTIVE
|
|
26
|
+
);
|
|
27
|
+
|
|
28
|
+
// State to track active spotlight trackId
|
|
29
|
+
const spotlightTrackId = useSelector(
|
|
30
|
+
(state: RootState) => state.user.spotlightTrackId
|
|
31
|
+
);
|
|
32
|
+
|
|
33
|
+
const pairedPeers = useMemo(
|
|
34
|
+
() =>
|
|
35
|
+
pairData(
|
|
36
|
+
peerTrackNodes,
|
|
37
|
+
isPortrait
|
|
38
|
+
? MaxTilesInOnePage.IN_PORTRAIT
|
|
39
|
+
: MaxTilesInOnePage.IN_LANDSCAPE,
|
|
40
|
+
spotlightTrackId
|
|
41
|
+
),
|
|
42
|
+
[peerTrackNodes, spotlightTrackId, isPortrait]
|
|
43
|
+
);
|
|
44
|
+
|
|
45
|
+
const canShowTiles = useSelector(
|
|
46
|
+
(state: RootState) =>
|
|
47
|
+
!!state.app.localPeerTrackNode || pairedPeers.length > 0
|
|
48
|
+
);
|
|
49
|
+
|
|
50
|
+
if (!canShowTiles) {
|
|
51
|
+
return <WelcomeInMeeting />;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
if (isPipModeActive) {
|
|
55
|
+
return <PIPView pairedPeers={pairedPeers} />;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
if (pairedPeers.length > 0) {
|
|
59
|
+
return (
|
|
60
|
+
<GridView
|
|
61
|
+
ref={gridViewRef}
|
|
62
|
+
onPeerTileMorePress={handlePeerTileMorePress}
|
|
63
|
+
pairedPeers={pairedPeers}
|
|
64
|
+
/>
|
|
65
|
+
);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
return (
|
|
69
|
+
<LocalPeerRegularVideoView onMoreOptionsPress={handlePeerTileMorePress} />
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
);
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { View, Text, StyleSheet } from 'react-native';
|
|
3
|
+
|
|
4
|
+
import { useHMSRoomStyleSheet } from '../hooks-util';
|
|
5
|
+
|
|
6
|
+
export interface WelcomeInMeetingProps {}
|
|
7
|
+
|
|
8
|
+
export const WelcomeInMeeting: React.FC<WelcomeInMeetingProps> = () => {
|
|
9
|
+
const hmsRoomStyles = useHMSRoomStyleSheet((theme, typography) => ({
|
|
10
|
+
heading: {
|
|
11
|
+
fontFamily: `${typography.font_family}-Bold`,
|
|
12
|
+
color: theme.palette.on_surface_high,
|
|
13
|
+
},
|
|
14
|
+
description: {
|
|
15
|
+
fontFamily: `${typography.font_family}-Medium`,
|
|
16
|
+
color: theme.palette.on_surface_medium,
|
|
17
|
+
},
|
|
18
|
+
}));
|
|
19
|
+
|
|
20
|
+
return (
|
|
21
|
+
<View style={styles.container}>
|
|
22
|
+
<Text style={[styles.heading, hmsRoomStyles.heading]}>Welcome!</Text>
|
|
23
|
+
<Text style={[styles.description, hmsRoomStyles.description]}>
|
|
24
|
+
You're the first one here.
|
|
25
|
+
</Text>
|
|
26
|
+
<Text style={[styles.description, hmsRoomStyles.description]}>
|
|
27
|
+
Sit back and relax till the others join.
|
|
28
|
+
</Text>
|
|
29
|
+
</View>
|
|
30
|
+
);
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
const styles = StyleSheet.create({
|
|
34
|
+
container: {
|
|
35
|
+
flex: 1,
|
|
36
|
+
alignItems: 'center',
|
|
37
|
+
justifyContent: 'center',
|
|
38
|
+
},
|
|
39
|
+
heading: {
|
|
40
|
+
fontSize: 28,
|
|
41
|
+
lineHeight: 36,
|
|
42
|
+
letterSpacing: 0.1,
|
|
43
|
+
textAlign: 'center',
|
|
44
|
+
paddingBottom: 32,
|
|
45
|
+
},
|
|
46
|
+
description: {
|
|
47
|
+
fontSize: 16,
|
|
48
|
+
lineHeight: 24,
|
|
49
|
+
letterSpacing: 0.15,
|
|
50
|
+
textAlign: 'center',
|
|
51
|
+
},
|
|
52
|
+
});
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type { HMSRole } from '@100mslive/react-native-hms';
|
|
2
|
+
|
|
1
3
|
import type { RootState } from './redux';
|
|
2
4
|
|
|
3
5
|
export const selectAllowedTracksToPublish = (state: RootState) =>
|
|
@@ -7,3 +9,8 @@ export const selectCanPublishTrack = (
|
|
|
7
9
|
state: RootState,
|
|
8
10
|
track: 'audio' | 'video' | 'screen'
|
|
9
11
|
) => selectAllowedTracksToPublish(state)?.includes(track) ?? false;
|
|
12
|
+
|
|
13
|
+
export const selectCanPublishTrackForRole = (
|
|
14
|
+
role: HMSRole | undefined,
|
|
15
|
+
track: 'audio' | 'video' | 'screen'
|
|
16
|
+
) => role?.publishSettings?.allowed?.includes(track) ?? false;
|
package/src/hooks-sdk.ts
CHANGED
|
@@ -146,11 +146,29 @@ export const useHMSActions = () => {
|
|
|
146
146
|
}
|
|
147
147
|
}, []);
|
|
148
148
|
|
|
149
|
+
const changeName = useCallback(async (name: string): Promise<void> => {
|
|
150
|
+
const state: RootState = store.getState();
|
|
151
|
+
const hmsInstance = state.user.hmsInstance;
|
|
152
|
+
|
|
153
|
+
if (!hmsInstance) {
|
|
154
|
+
return Promise.reject('HMSSDK Instance is not available!');
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
try {
|
|
158
|
+
const result = await hmsInstance.changeName(name);
|
|
159
|
+
console.log('Change Name Success: ', result);
|
|
160
|
+
} catch (error) {
|
|
161
|
+
console.log('Change Name Error: ', error);
|
|
162
|
+
return Promise.reject(error);
|
|
163
|
+
}
|
|
164
|
+
}, []);
|
|
165
|
+
|
|
149
166
|
return {
|
|
150
167
|
setLocalAudioEnabled,
|
|
151
168
|
setLocalVideoEnabled,
|
|
152
169
|
switchCamera,
|
|
153
170
|
setScreenShareEnabled,
|
|
154
171
|
changeMetadata,
|
|
172
|
+
changeName,
|
|
155
173
|
};
|
|
156
174
|
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { HMSPeer } from '@100mslive/react-native-hms';
|
|
2
|
+
import { JoinForm_JoinBtnType } from '@100mslive/types-prebuilt/elements/join_form';
|
|
2
3
|
|
|
3
4
|
import type { RootState } from './redux';
|
|
4
5
|
|
|
@@ -6,9 +7,19 @@ export const selectIsHLSViewer = (peer: HMSPeer | null | undefined) =>
|
|
|
6
7
|
peer?.role?.name?.includes('hls') ?? false;
|
|
7
8
|
|
|
8
9
|
export const selectShouldGoLive = (state: RootState) => {
|
|
10
|
+
const layoutConfig = state.hmsStates.layoutConfig;
|
|
9
11
|
const isHLSStreaming = state.hmsStates.room?.hlsStreamingState.running;
|
|
12
|
+
|
|
13
|
+
const joinButtonType =
|
|
14
|
+
layoutConfig?.screens?.preview?.default?.elements?.join_form?.join_btn_type;
|
|
15
|
+
|
|
10
16
|
const canStartHLSStreaming =
|
|
11
|
-
|
|
17
|
+
joinButtonType === JoinForm_JoinBtnType.JOIN_BTN_TYPE_JOIN_AND_GO_LIVE ||
|
|
18
|
+
joinButtonType === JoinForm_JoinBtnType.JOIN_BTN_TYPE_JOIN_ONLY
|
|
19
|
+
? // can start if `joinButtonType` is `JOIN_BTN_TYPE_JOIN_AND_GO_LIVE`
|
|
20
|
+
joinButtonType === JoinForm_JoinBtnType.JOIN_BTN_TYPE_JOIN_AND_GO_LIVE
|
|
21
|
+
: // Check if the Role has permission to start HLS Stream
|
|
22
|
+
state.hmsStates.localPeer?.role?.permissions?.hlsStreaming;
|
|
12
23
|
|
|
13
24
|
return canStartHLSStreaming && !isHLSStreaming;
|
|
14
25
|
};
|