@100mslive/react-native-room-kit 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/HMSInstanceSetup.js +1 -14
- package/lib/commonjs/HMSInstanceSetup.js.map +1 -1
- package/lib/commonjs/HMSPrebuilt.js +13 -4
- package/lib/commonjs/HMSPrebuilt.js.map +1 -1
- package/lib/commonjs/HMSRoomSetup.js +38 -14
- package/lib/commonjs/HMSRoomSetup.js.map +1 -1
- package/lib/commonjs/Icons/Check/assets/check.png +0 -0
- package/lib/commonjs/Icons/Check/assets/check@2x.png +0 -0
- package/lib/commonjs/Icons/Check/assets/check@3x.png +0 -0
- package/lib/commonjs/Icons/Check/index.js +30 -0
- package/lib/commonjs/Icons/Check/index.js.map +1 -0
- package/lib/commonjs/Icons/Radio/assets/radio.png +0 -0
- package/lib/commonjs/Icons/Radio/assets/radio@2x.png +0 -0
- package/lib/commonjs/Icons/Radio/assets/radio@3x.png +0 -0
- package/lib/commonjs/Icons/Radio/index.js +30 -0
- package/lib/commonjs/Icons/Radio/index.js.map +1 -0
- package/lib/commonjs/Icons/index.js +22 -0
- package/lib/commonjs/Icons/index.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/DisplayView.js +0 -6
- package/lib/commonjs/components/DisplayView.js.map +1 -1
- package/lib/commonjs/components/HMSHLSStreamLoading.js +56 -0
- package/lib/commonjs/components/HMSHLSStreamLoading.js.map +1 -0
- package/lib/commonjs/components/HMSLocalVideoView.js +41 -0
- package/lib/commonjs/components/HMSLocalVideoView.js.map +1 -0
- package/lib/commonjs/components/{HMSSpeakerSettings.js → HMSManageAudioOutput.js} +41 -13
- package/lib/commonjs/components/HMSManageAudioOutput.js.map +1 -0
- package/lib/commonjs/components/HMSManageLeave.js +7 -60
- package/lib/commonjs/components/HMSManageLeave.js.map +1 -1
- package/lib/commonjs/components/HMSMeetingEnded.js +36 -0
- package/lib/commonjs/components/HMSMeetingEnded.js.map +1 -0
- package/lib/commonjs/components/HMSPreviewEditName.js +6 -3
- package/lib/commonjs/components/HMSPreviewEditName.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewHLSLiveIndicator.js +64 -0
- package/lib/commonjs/components/HMSPreviewHLSLiveIndicator.js.map +1 -0
- package/lib/commonjs/components/HMSPreviewJoinButton.js +21 -9
- package/lib/commonjs/components/HMSPreviewJoinButton.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewNetworkQuality.js +43 -0
- package/lib/commonjs/components/HMSPreviewNetworkQuality.js.map +1 -0
- package/lib/commonjs/components/HMSPreviewPeersList.js +2 -25
- package/lib/commonjs/components/HMSPreviewPeersList.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewSubtitle.js +25 -2
- package/lib/commonjs/components/HMSPreviewSubtitle.js.map +1 -1
- package/lib/commonjs/components/HMSPreviewTile.js +2 -18
- package/lib/commonjs/components/HMSPreviewTile.js.map +1 -1
- package/lib/commonjs/components/HMSRoomOptions.js +2 -3
- package/lib/commonjs/components/HMSRoomOptions.js.map +1 -1
- package/lib/commonjs/components/HMSShowNetworkQuality.js +0 -2
- package/lib/commonjs/components/HMSShowNetworkQuality.js.map +1 -1
- package/lib/commonjs/components/Meeting.js +7 -0
- package/lib/commonjs/components/Meeting.js.map +1 -1
- package/lib/commonjs/components/MenuModal/Menu.js +1 -2
- package/lib/commonjs/components/MenuModal/Menu.js.map +1 -1
- package/lib/commonjs/components/Modals.js +39 -299
- package/lib/commonjs/components/Modals.js.map +1 -1
- package/lib/commonjs/components/Participants/ParticipantsList.js +1 -20
- package/lib/commonjs/components/Participants/ParticipantsList.js.map +1 -1
- package/lib/commonjs/components/PeerSettingsModalContent.js +2 -13
- package/lib/commonjs/components/PeerSettingsModalContent.js.map +1 -1
- package/lib/commonjs/components/Preview.js +79 -71
- package/lib/commonjs/components/Preview.js.map +1 -1
- package/lib/commonjs/components/RoomSettingsModalContent.js +2 -101
- package/lib/commonjs/components/RoomSettingsModalContent.js.map +1 -1
- package/lib/commonjs/components/index.js +0 -11
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/hooks/useHmsInstance.js +0 -1
- package/lib/commonjs/hooks/useHmsInstance.js.map +1 -1
- package/lib/commonjs/hooks-util-selectors.js +8 -1
- package/lib/commonjs/hooks-util-selectors.js.map +1 -1
- package/lib/commonjs/hooks-util.js +129 -28
- package/lib/commonjs/hooks-util.js.map +1 -1
- package/lib/commonjs/redux/actionTypes.js +5 -1
- package/lib/commonjs/redux/actionTypes.js.map +1 -1
- package/lib/commonjs/redux/actions/index.js +15 -1
- package/lib/commonjs/redux/actions/index.js.map +1 -1
- package/lib/commonjs/redux/reducers/appState.js +14 -1
- package/lib/commonjs/redux/reducers/appState.js.map +1 -1
- package/lib/commonjs/utils/theme.js +1 -0
- package/lib/commonjs/utils/theme.js.map +1 -1
- package/lib/commonjs/utils/types.js +0 -1
- package/lib/commonjs/utils/types.js.map +1 -1
- package/lib/commonjs/utils.js +2 -2
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/module/HMSInstanceSetup.js +1 -14
- package/lib/module/HMSInstanceSetup.js.map +1 -1
- package/lib/module/HMSPrebuilt.js +13 -3
- package/lib/module/HMSPrebuilt.js.map +1 -1
- package/lib/module/HMSRoomSetup.js +43 -19
- package/lib/module/HMSRoomSetup.js.map +1 -1
- package/lib/module/Icons/Check/assets/check.png +0 -0
- package/lib/module/Icons/Check/assets/check@2x.png +0 -0
- package/lib/module/Icons/Check/assets/check@3x.png +0 -0
- package/lib/module/Icons/Check/index.js +22 -0
- package/lib/module/Icons/Check/index.js.map +1 -0
- package/lib/module/Icons/Radio/assets/radio.png +0 -0
- package/lib/module/Icons/Radio/assets/radio@2x.png +0 -0
- package/lib/module/Icons/Radio/assets/radio@3x.png +0 -0
- package/lib/module/Icons/Radio/index.js +22 -0
- package/lib/module/Icons/Radio/index.js.map +1 -0
- package/lib/module/Icons/index.js +2 -0
- package/lib/module/Icons/index.js.map +1 -1
- package/lib/module/components/BackButton.js +3 -3
- package/lib/module/components/BackButton.js.map +1 -1
- package/lib/module/components/DisplayView.js +1 -7
- package/lib/module/components/DisplayView.js.map +1 -1
- package/lib/module/components/HMSHLSStreamLoading.js +47 -0
- package/lib/module/components/HMSHLSStreamLoading.js.map +1 -0
- package/lib/module/components/HMSLocalVideoView.js +32 -0
- package/lib/module/components/HMSLocalVideoView.js.map +1 -0
- package/lib/module/components/{HMSSpeakerSettings.js → HMSManageAudioOutput.js} +40 -12
- package/lib/module/components/HMSManageAudioOutput.js.map +1 -0
- package/lib/module/components/HMSManageLeave.js +9 -62
- package/lib/module/components/HMSManageLeave.js.map +1 -1
- package/lib/module/components/HMSMeetingEnded.js +27 -0
- package/lib/module/components/HMSMeetingEnded.js.map +1 -0
- package/lib/module/components/HMSPreviewEditName.js +7 -4
- package/lib/module/components/HMSPreviewEditName.js.map +1 -1
- package/lib/module/components/HMSPreviewHLSLiveIndicator.js +55 -0
- package/lib/module/components/HMSPreviewHLSLiveIndicator.js.map +1 -0
- package/lib/module/components/HMSPreviewJoinButton.js +21 -9
- package/lib/module/components/HMSPreviewJoinButton.js.map +1 -1
- package/lib/module/components/HMSPreviewNetworkQuality.js +34 -0
- package/lib/module/components/HMSPreviewNetworkQuality.js.map +1 -0
- package/lib/module/components/HMSPreviewPeersList.js +2 -25
- package/lib/module/components/HMSPreviewPeersList.js.map +1 -1
- package/lib/module/components/HMSPreviewSubtitle.js +25 -2
- package/lib/module/components/HMSPreviewSubtitle.js.map +1 -1
- package/lib/module/components/HMSPreviewTile.js +2 -18
- package/lib/module/components/HMSPreviewTile.js.map +1 -1
- package/lib/module/components/HMSRoomOptions.js +2 -3
- package/lib/module/components/HMSRoomOptions.js.map +1 -1
- package/lib/module/components/HMSShowNetworkQuality.js +0 -2
- package/lib/module/components/HMSShowNetworkQuality.js.map +1 -1
- package/lib/module/components/Meeting.js +7 -0
- package/lib/module/components/Meeting.js.map +1 -1
- package/lib/module/components/MenuModal/Menu.js +1 -2
- package/lib/module/components/MenuModal/Menu.js.map +1 -1
- package/lib/module/components/Modals.js +40 -298
- package/lib/module/components/Modals.js.map +1 -1
- package/lib/module/components/Participants/ParticipantsList.js +1 -20
- package/lib/module/components/Participants/ParticipantsList.js.map +1 -1
- package/lib/module/components/PeerSettingsModalContent.js +2 -13
- package/lib/module/components/PeerSettingsModalContent.js.map +1 -1
- package/lib/module/components/Preview.js +79 -71
- package/lib/module/components/Preview.js.map +1 -1
- package/lib/module/components/RoomSettingsModalContent.js +3 -100
- package/lib/module/components/RoomSettingsModalContent.js.map +1 -1
- package/lib/module/components/index.js +0 -1
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/hooks/useHmsInstance.js +0 -1
- package/lib/module/hooks/useHmsInstance.js.map +1 -1
- package/lib/module/hooks-util-selectors.js +6 -0
- package/lib/module/hooks-util-selectors.js.map +1 -1
- package/lib/module/hooks-util.js +131 -32
- package/lib/module/hooks-util.js.map +1 -1
- package/lib/module/redux/actionTypes.js +5 -1
- package/lib/module/redux/actionTypes.js.map +1 -1
- package/lib/module/redux/actions/index.js +12 -0
- package/lib/module/redux/actions/index.js.map +1 -1
- package/lib/module/redux/reducers/appState.js +14 -1
- package/lib/module/redux/reducers/appState.js.map +1 -1
- package/lib/module/utils/theme.js +1 -0
- package/lib/module/utils/theme.js.map +1 -1
- package/lib/module/utils/types.js +0 -1
- package/lib/module/utils/types.js.map +1 -1
- package/lib/module/utils.js +2 -2
- package/lib/module/utils.js.map +1 -1
- package/lib/typescript/HMSInstanceSetup.d.ts.map +1 -1
- package/lib/typescript/HMSPrebuilt.d.ts +2 -3
- package/lib/typescript/HMSPrebuilt.d.ts.map +1 -1
- package/lib/typescript/HMSRoomSetup.d.ts.map +1 -1
- package/lib/typescript/Icons/Check/index.d.ts +7 -0
- package/lib/typescript/Icons/Check/index.d.ts.map +1 -0
- package/lib/typescript/Icons/Radio/index.d.ts +7 -0
- package/lib/typescript/Icons/Radio/index.d.ts.map +1 -0
- package/lib/typescript/Icons/index.d.ts +2 -0
- package/lib/typescript/Icons/index.d.ts.map +1 -1
- package/lib/typescript/components/CustomInput.d.ts +1 -1
- package/lib/typescript/components/DisplayView.d.ts.map +1 -1
- package/lib/typescript/components/HMSHLSStreamLoading.d.ts +3 -0
- package/lib/typescript/components/HMSHLSStreamLoading.d.ts.map +1 -0
- package/lib/typescript/components/HMSLocalVideoView.d.ts +3 -0
- package/lib/typescript/components/HMSLocalVideoView.d.ts.map +1 -0
- package/lib/typescript/components/HMSManageAudioOutput.d.ts +3 -0
- package/lib/typescript/components/HMSManageAudioOutput.d.ts.map +1 -0
- package/lib/typescript/components/HMSManageLeave.d.ts.map +1 -1
- package/lib/typescript/components/HMSMeetingEnded.d.ts +3 -0
- package/lib/typescript/components/HMSMeetingEnded.d.ts.map +1 -0
- package/lib/typescript/components/HMSPreviewHLSLiveIndicator.d.ts +3 -0
- package/lib/typescript/components/HMSPreviewHLSLiveIndicator.d.ts.map +1 -0
- package/lib/typescript/components/HMSPreviewJoinButton.d.ts.map +1 -1
- package/lib/typescript/components/HMSPreviewNetworkQuality.d.ts +3 -0
- package/lib/typescript/components/HMSPreviewNetworkQuality.d.ts.map +1 -0
- 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/HMSRoomOptions.d.ts.map +1 -1
- package/lib/typescript/components/HMSShowNetworkQuality.d.ts.map +1 -1
- package/lib/typescript/components/Meeting.d.ts.map +1 -1
- package/lib/typescript/components/MenuModal/Menu.d.ts.map +1 -1
- package/lib/typescript/components/Modals.d.ts +1 -9
- package/lib/typescript/components/Modals.d.ts.map +1 -1
- package/lib/typescript/components/Participants/ParticipantsList.d.ts.map +1 -1
- package/lib/typescript/components/PeerSettingsModalContent.d.ts.map +1 -1
- package/lib/typescript/components/Preview.d.ts.map +1 -1
- package/lib/typescript/components/RoomSettingsModalContent.d.ts.map +1 -1
- package/lib/typescript/components/index.d.ts +0 -1
- package/lib/typescript/components/index.d.ts.map +1 -1
- package/lib/typescript/hooks-util-selectors.d.ts +2 -0
- package/lib/typescript/hooks-util-selectors.d.ts.map +1 -1
- package/lib/typescript/hooks-util.d.ts +9 -2
- package/lib/typescript/hooks-util.d.ts.map +1 -1
- package/lib/typescript/redux/actionTypes.d.ts +2 -0
- package/lib/typescript/redux/actionTypes.d.ts.map +1 -1
- package/lib/typescript/redux/actions/index.d.ts +16 -3
- package/lib/typescript/redux/actions/index.d.ts.map +1 -1
- package/lib/typescript/redux/index.d.ts +3 -1
- package/lib/typescript/redux/index.d.ts.map +1 -1
- package/lib/typescript/redux/reducers/appState.d.ts +3 -0
- package/lib/typescript/redux/reducers/appState.d.ts.map +1 -1
- package/lib/typescript/redux/reducers/index.d.ts +3 -1
- package/lib/typescript/redux/reducers/index.d.ts.map +1 -1
- package/lib/typescript/redux/reducers/userState.d.ts +2 -2
- package/lib/typescript/redux/reducers/userState.d.ts.map +1 -1
- package/lib/typescript/utils/theme.d.ts +1 -0
- package/lib/typescript/utils/theme.d.ts.map +1 -1
- package/lib/typescript/utils/types.d.ts +3 -4
- package/lib/typescript/utils/types.d.ts.map +1 -1
- package/package.json +9 -16
- package/src/HMSInstanceSetup.tsx +4 -31
- package/src/HMSPrebuilt.tsx +24 -6
- package/src/HMSRoomSetup.tsx +55 -17
- package/src/Icons/Check/assets/check.png +0 -0
- package/src/Icons/Check/assets/check@2x.png +0 -0
- package/src/Icons/Check/assets/check@3x.png +0 -0
- package/src/Icons/Check/index.tsx +27 -0
- package/src/Icons/Radio/assets/radio.png +0 -0
- package/src/Icons/Radio/assets/radio@2x.png +0 -0
- package/src/Icons/Radio/assets/radio@3x.png +0 -0
- package/src/Icons/Radio/index.tsx +27 -0
- package/src/Icons/index.ts +2 -0
- package/src/components/BackButton.tsx +3 -3
- package/src/components/DisplayView.tsx +0 -10
- package/src/components/HMSHLSStreamLoading.tsx +57 -0
- package/src/components/HMSLocalVideoView.tsx +42 -0
- package/src/components/{HMSSpeakerSettings.tsx → HMSManageAudioOutput.tsx} +69 -17
- package/src/components/HMSManageLeave.tsx +6 -77
- package/src/components/HMSMeetingEnded.tsx +29 -0
- package/src/components/HMSPreviewEditName.tsx +5 -4
- package/src/components/HMSPreviewHLSLiveIndicator.tsx +58 -0
- package/src/components/HMSPreviewJoinButton.tsx +30 -7
- package/src/components/HMSPreviewNetworkQuality.tsx +40 -0
- package/src/components/HMSPreviewPeersList.tsx +7 -46
- package/src/components/HMSPreviewSubtitle.tsx +26 -2
- package/src/components/HMSPreviewTile.tsx +2 -24
- package/src/components/HMSRoomOptions.tsx +2 -8
- package/src/components/HMSShowNetworkQuality.tsx +0 -1
- package/src/components/Meeting.tsx +11 -0
- package/src/components/MenuModal/Menu.tsx +1 -1
- package/src/components/Modals.tsx +4 -299
- package/src/components/Participants/ParticipantsList.tsx +0 -24
- package/src/components/PeerSettingsModalContent.tsx +9 -23
- package/src/components/Preview.tsx +129 -101
- package/src/components/RoomSettingsModalContent.tsx +1 -138
- package/src/components/index.ts +0 -1
- package/src/hooks/useHmsInstance.ts +0 -1
- package/src/hooks-util-selectors.tsx +10 -0
- package/src/hooks-util.ts +155 -42
- package/src/redux/actionTypes.ts +6 -0
- package/src/redux/actions/index.ts +13 -2
- package/src/redux/reducers/appState.ts +9 -0
- package/src/redux/reducers/userState.ts +2 -2
- package/src/utils/theme.ts +1 -0
- package/src/utils/types.ts +3 -4
- package/src/utils.ts +2 -2
- package/lib/commonjs/components/HMSSpeakerSettings.js.map +0 -1
- package/lib/commonjs/components/ZoomableView.js +0 -84
- package/lib/commonjs/components/ZoomableView.js.map +0 -1
- package/lib/module/components/HMSSpeakerSettings.js.map +0 -1
- package/lib/module/components/ZoomableView.js +0 -76
- package/lib/module/components/ZoomableView.js.map +0 -1
- package/lib/typescript/components/HMSSpeakerSettings.d.ts +0 -3
- package/lib/typescript/components/HMSSpeakerSettings.d.ts.map +0 -1
- package/lib/typescript/components/ZoomableView.d.ts +0 -6
- package/lib/typescript/components/ZoomableView.d.ts.map +0 -1
- package/src/components/ZoomableView.tsx +0 -91
package/src/hooks-util.ts
CHANGED
|
@@ -23,18 +23,27 @@ import type {
|
|
|
23
23
|
HMSSessionStoreValue,
|
|
24
24
|
} from '@100mslive/react-native-hms';
|
|
25
25
|
import Toast from 'react-native-simple-toast';
|
|
26
|
-
import {
|
|
26
|
+
import {
|
|
27
|
+
useRef,
|
|
28
|
+
useCallback,
|
|
29
|
+
useEffect,
|
|
30
|
+
useState,
|
|
31
|
+
useMemo,
|
|
32
|
+
useContext,
|
|
33
|
+
} from 'react';
|
|
27
34
|
|
|
28
35
|
import { ModalTypes, PipModes } from './utils/types';
|
|
29
36
|
import type { PeerTrackNode } from './utils/types';
|
|
30
37
|
import { createPeerTrackNode, parseMetadata } from './utils/functions';
|
|
31
|
-
import { useDispatch, useSelector, useStore } from 'react-redux';
|
|
38
|
+
import { batch, useDispatch, useSelector, useStore } from 'react-redux';
|
|
32
39
|
import type { RootState } from './redux';
|
|
33
40
|
import {
|
|
34
41
|
addMessage,
|
|
35
42
|
addPinnedMessage,
|
|
36
43
|
addToPreviewPeersList,
|
|
44
|
+
changeMeetingState,
|
|
37
45
|
changePipModeStatus,
|
|
46
|
+
changeStartingHLSStream,
|
|
38
47
|
clearStore,
|
|
39
48
|
removeFromPreviewPeersList,
|
|
40
49
|
saveUserData,
|
|
@@ -61,7 +70,7 @@ import {
|
|
|
61
70
|
LayoutAnimation,
|
|
62
71
|
Platform,
|
|
63
72
|
} from 'react-native';
|
|
64
|
-
import {
|
|
73
|
+
import { NavigationContext } from '@react-navigation/native';
|
|
65
74
|
import {
|
|
66
75
|
useIsLandscapeOrientation,
|
|
67
76
|
useIsPortraitOrientation,
|
|
@@ -70,33 +79,24 @@ import {
|
|
|
70
79
|
useSafeAreaFrame,
|
|
71
80
|
useSafeAreaInsets,
|
|
72
81
|
} from 'react-native-safe-area-context';
|
|
73
|
-
import { selectIsHLSViewer } from './hooks-util-selectors';
|
|
82
|
+
import { selectIsHLSViewer, selectShouldGoLive } from './hooks-util-selectors';
|
|
74
83
|
|
|
75
84
|
export const useHMSListeners = (
|
|
76
|
-
|
|
77
|
-
setPeerTrackNodes: React.Dispatch<React.SetStateAction<PeerTrackNode[]>>,
|
|
78
|
-
setMeetingState: React.Dispatch<React.SetStateAction<MeetingState>>
|
|
85
|
+
setPeerTrackNodes: React.Dispatch<React.SetStateAction<PeerTrackNode[]>>
|
|
79
86
|
) => {
|
|
80
87
|
const hmsInstance = useHMSInstance();
|
|
81
88
|
const updateLocalPeer = useUpdateHMSLocalPeer(hmsInstance);
|
|
82
89
|
|
|
83
|
-
useHMSRoomUpdate(hmsInstance
|
|
90
|
+
useHMSRoomUpdate(hmsInstance);
|
|
84
91
|
|
|
85
|
-
useHMSPeersUpdate(
|
|
86
|
-
meetingState,
|
|
87
|
-
hmsInstance,
|
|
88
|
-
updateLocalPeer,
|
|
89
|
-
setPeerTrackNodes
|
|
90
|
-
);
|
|
92
|
+
useHMSPeersUpdate(hmsInstance, updateLocalPeer, setPeerTrackNodes);
|
|
91
93
|
|
|
92
94
|
useHMSTrackUpdate(hmsInstance, updateLocalPeer, setPeerTrackNodes);
|
|
93
95
|
};
|
|
94
96
|
|
|
95
|
-
const useHMSRoomUpdate = (
|
|
96
|
-
hmsInstance: HMSSDK,
|
|
97
|
-
setMeetingState: React.Dispatch<React.SetStateAction<MeetingState>>
|
|
98
|
-
) => {
|
|
97
|
+
const useHMSRoomUpdate = (hmsInstance: HMSSDK) => {
|
|
99
98
|
const dispatch = useDispatch();
|
|
99
|
+
const reduxStore = useStore();
|
|
100
100
|
|
|
101
101
|
useEffect(() => {
|
|
102
102
|
const roomUpdateHandler = (data: {
|
|
@@ -112,12 +112,14 @@ const useHMSRoomUpdate = (
|
|
|
112
112
|
* before ON_JOIN, if ON_ROOM comes then we can show Meeting screen to user, instead of Loader or Preview
|
|
113
113
|
*/
|
|
114
114
|
if (room.localPeer.role?.name?.includes('hls-') ?? false) {
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
115
|
+
const meetingState = (reduxStore.getState() as RootState).app
|
|
116
|
+
.meetingState;
|
|
117
|
+
|
|
118
|
+
batch(() => {
|
|
119
|
+
dispatch(setHMSLocalPeerState(room.localPeer));
|
|
120
|
+
if (meetingState !== MeetingState.IN_MEETING) {
|
|
121
|
+
dispatch(changeMeetingState(MeetingState.IN_MEETING));
|
|
119
122
|
}
|
|
120
|
-
return prevMeetingScreen;
|
|
121
123
|
});
|
|
122
124
|
}
|
|
123
125
|
|
|
@@ -143,6 +145,8 @@ const useHMSRoomUpdate = (
|
|
|
143
145
|
Toast.TOP
|
|
144
146
|
);
|
|
145
147
|
} else if (type === HMSRoomUpdate.HLS_STREAMING_STATE_UPDATED) {
|
|
148
|
+
dispatch(changeStartingHLSStream(false));
|
|
149
|
+
|
|
146
150
|
let streaming = room?.hlsStreamingState?.running;
|
|
147
151
|
|
|
148
152
|
Toast.showWithGravity(
|
|
@@ -212,13 +216,14 @@ type PeerUpdate = {
|
|
|
212
216
|
};
|
|
213
217
|
|
|
214
218
|
const useHMSPeersUpdate = (
|
|
215
|
-
meetingState: MeetingState,
|
|
216
219
|
hmsInstance: HMSSDK,
|
|
217
220
|
updateLocalPeer: () => void,
|
|
218
221
|
setPeerTrackNodes: React.Dispatch<React.SetStateAction<PeerTrackNode[]>>
|
|
219
222
|
) => {
|
|
220
223
|
const dispatch = useDispatch();
|
|
221
|
-
const inMeeting =
|
|
224
|
+
const inMeeting = useSelector(
|
|
225
|
+
(state: RootState) => state.app.meetingState === MeetingState.IN_MEETING
|
|
226
|
+
);
|
|
222
227
|
|
|
223
228
|
useEffect(() => {
|
|
224
229
|
const peerUpdateHandler = ({ peer, type }: PeerUpdate) => {
|
|
@@ -739,7 +744,7 @@ export const useHMSPIPRoomLeave = () => {
|
|
|
739
744
|
const hmsInstance = useHMSInstance();
|
|
740
745
|
const dispatch = useDispatch();
|
|
741
746
|
// TODO: What if this is undefined?
|
|
742
|
-
const navigation =
|
|
747
|
+
const navigation = useContext(NavigationContext);
|
|
743
748
|
|
|
744
749
|
useEffect(() => {
|
|
745
750
|
const pipRoomLeaveHandler = () => {
|
|
@@ -767,13 +772,15 @@ export const useHMSPIPRoomLeave = () => {
|
|
|
767
772
|
// dispatch(clearPeerData());
|
|
768
773
|
// dispatch(clearHmsReference());
|
|
769
774
|
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
775
|
+
if (navigation && navigation.canGoBack()) {
|
|
776
|
+
navigation.goBack();
|
|
777
|
+
dispatch(clearStore());
|
|
778
|
+
} else {
|
|
779
|
+
// TODO: call onLeave Callback if provided
|
|
780
|
+
// Otherwise default action is to show "Meeting Ended" screen
|
|
781
|
+
dispatch(clearStore()); // TODO: We need different clearStore for MeetingEnded
|
|
782
|
+
dispatch(changeMeetingState(MeetingState.MEETING_ENDED));
|
|
783
|
+
}
|
|
777
784
|
})
|
|
778
785
|
.catch((e) => {
|
|
779
786
|
console.log(`Destroy HMS instance Error: ${e}`);
|
|
@@ -800,7 +807,7 @@ export const useHMSRemovedFromRoomUpdate = () => {
|
|
|
800
807
|
const hmsInstance = useHMSInstance();
|
|
801
808
|
const dispatch = useDispatch();
|
|
802
809
|
// TODO: What if this is undefined?
|
|
803
|
-
const navigation =
|
|
810
|
+
const navigation = useContext(NavigationContext);
|
|
804
811
|
|
|
805
812
|
useEffect(() => {
|
|
806
813
|
const removedFromRoomHandler = () => {
|
|
@@ -828,13 +835,15 @@ export const useHMSRemovedFromRoomUpdate = () => {
|
|
|
828
835
|
// dispatch(clearPeerData());
|
|
829
836
|
// dispatch(clearHmsReference());
|
|
830
837
|
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
+
if (navigation && navigation.canGoBack()) {
|
|
839
|
+
navigation.goBack();
|
|
840
|
+
dispatch(clearStore());
|
|
841
|
+
} else {
|
|
842
|
+
// TODO: call onLeave Callback if provided
|
|
843
|
+
// Otherwise default action is to show "Meeting Ended" screen
|
|
844
|
+
dispatch(clearStore()); // TODO: We need different clearStore for MeetingEnded
|
|
845
|
+
dispatch(changeMeetingState(MeetingState.MEETING_ENDED));
|
|
846
|
+
}
|
|
838
847
|
})
|
|
839
848
|
.catch((e) => {
|
|
840
849
|
console.log(`Destroy HMS instance Error: ${e}`);
|
|
@@ -1016,7 +1025,18 @@ export const useHMSConfig = () => {
|
|
|
1016
1025
|
return hmsConfig;
|
|
1017
1026
|
}, [hmsInstance]);
|
|
1018
1027
|
|
|
1019
|
-
|
|
1028
|
+
const updateConfig = useCallback((data: Partial<HMSConfig>) => {
|
|
1029
|
+
if (!hmsConfig) {
|
|
1030
|
+
throw new Error('No HMSConfig is available to update!');
|
|
1031
|
+
}
|
|
1032
|
+
|
|
1033
|
+
Object.entries(data).forEach(([key, value]) => {
|
|
1034
|
+
// @ts-ignore
|
|
1035
|
+
hmsConfig[key] = value;
|
|
1036
|
+
});
|
|
1037
|
+
}, []);
|
|
1038
|
+
|
|
1039
|
+
return { clearConfig, updateConfig, getConfig };
|
|
1020
1040
|
};
|
|
1021
1041
|
|
|
1022
1042
|
export const useSafeDimensions = () => {
|
|
@@ -1152,3 +1172,96 @@ export const useFilteredParticipants = () => {
|
|
|
1152
1172
|
setSearchText: setParticipantsSearchInput,
|
|
1153
1173
|
};
|
|
1154
1174
|
};
|
|
1175
|
+
|
|
1176
|
+
export const useShouldGoLive = () => {
|
|
1177
|
+
const shouldGoLive = useSelector(selectShouldGoLive);
|
|
1178
|
+
|
|
1179
|
+
return shouldGoLive;
|
|
1180
|
+
};
|
|
1181
|
+
|
|
1182
|
+
export const useLeaveMethods = () => {
|
|
1183
|
+
const navigation = useContext(NavigationContext);
|
|
1184
|
+
const hmsInstance = useHMSInstance();
|
|
1185
|
+
const dispatch = useDispatch();
|
|
1186
|
+
|
|
1187
|
+
const destroy = useCallback(async () => {
|
|
1188
|
+
try {
|
|
1189
|
+
const s = await hmsInstance.destroy();
|
|
1190
|
+
console.log('Destroy Success: ', s);
|
|
1191
|
+
// TODOS:
|
|
1192
|
+
// - If show `Meeting_Ended` is true, show Meeting screen by setting state to MEETING_ENDED
|
|
1193
|
+
// - Reset Redux States
|
|
1194
|
+
// - HMSInstance will not be available now
|
|
1195
|
+
// - When your presses "Re Join" Action button, restart process from root component
|
|
1196
|
+
// - When your presses "Done" Action button
|
|
1197
|
+
// - If we have callback fn, call it
|
|
1198
|
+
// - Otherwise try our best to navigate away from current screen
|
|
1199
|
+
//
|
|
1200
|
+
// - No screen to show
|
|
1201
|
+
// - No need to reset redux state?
|
|
1202
|
+
// - HMSInstance will be available till this point
|
|
1203
|
+
// - If we have callback fn, call it
|
|
1204
|
+
// - Otherwise try our best to navigate away from current screen
|
|
1205
|
+
// - When we are navigated away from screen, HMSInstance will be not available
|
|
1206
|
+
|
|
1207
|
+
// dispatch(clearMessageData());
|
|
1208
|
+
// dispatch(clearPeerData());
|
|
1209
|
+
// dispatch(clearHmsReference());
|
|
1210
|
+
|
|
1211
|
+
if (navigation && navigation.canGoBack()) {
|
|
1212
|
+
navigation.goBack();
|
|
1213
|
+
dispatch(clearStore());
|
|
1214
|
+
} else {
|
|
1215
|
+
// TODO: call onLeave Callback if provided
|
|
1216
|
+
// Otherwise default action is to show "Meeting Ended" screen
|
|
1217
|
+
dispatch(clearStore()); // TODO: We need different clearStore for MeetingEnded
|
|
1218
|
+
dispatch(changeMeetingState(MeetingState.MEETING_ENDED));
|
|
1219
|
+
}
|
|
1220
|
+
} catch (e) {
|
|
1221
|
+
console.log(`Destroy HMS instance Error: ${e}`);
|
|
1222
|
+
Toast.showWithGravity(
|
|
1223
|
+
`Destroy HMS instance Error: ${e}`,
|
|
1224
|
+
Toast.LONG,
|
|
1225
|
+
Toast.TOP
|
|
1226
|
+
);
|
|
1227
|
+
return Promise.reject(e);
|
|
1228
|
+
}
|
|
1229
|
+
}, [hmsInstance]);
|
|
1230
|
+
|
|
1231
|
+
const leave = useCallback(async () => {
|
|
1232
|
+
try {
|
|
1233
|
+
const d = await hmsInstance.leave();
|
|
1234
|
+
console.log('Leave Success: ', d);
|
|
1235
|
+
await destroy();
|
|
1236
|
+
} catch (e) {
|
|
1237
|
+
console.log(`Leave Room Error: ${e}`);
|
|
1238
|
+
Toast.showWithGravity(`Leave Room Error: ${e}`, Toast.LONG, Toast.TOP);
|
|
1239
|
+
}
|
|
1240
|
+
}, [destroy, hmsInstance]);
|
|
1241
|
+
|
|
1242
|
+
const goToPreview = useCallback(async () => {
|
|
1243
|
+
try {
|
|
1244
|
+
await hmsInstance.leave();
|
|
1245
|
+
await hmsInstance.destroy();
|
|
1246
|
+
dispatch(clearStore());
|
|
1247
|
+
} catch (error) {
|
|
1248
|
+
Toast.showWithGravity(
|
|
1249
|
+
`Unable to go to Preview: ${error}`,
|
|
1250
|
+
Toast.LONG,
|
|
1251
|
+
Toast.TOP
|
|
1252
|
+
);
|
|
1253
|
+
}
|
|
1254
|
+
}, [hmsInstance]);
|
|
1255
|
+
|
|
1256
|
+
const endRoom = useCallback(async () => {
|
|
1257
|
+
try {
|
|
1258
|
+
const d = await hmsInstance.endRoom('Host ended the room');
|
|
1259
|
+
console.log('EndRoom Success: ', d);
|
|
1260
|
+
await destroy();
|
|
1261
|
+
} catch (e) {
|
|
1262
|
+
console.log('EndRoom Error: ', e);
|
|
1263
|
+
}
|
|
1264
|
+
}, [destroy, hmsInstance]);
|
|
1265
|
+
|
|
1266
|
+
return { destroy, leave, endRoom, goToPreview };
|
|
1267
|
+
};
|
package/src/redux/actionTypes.ts
CHANGED
|
@@ -48,6 +48,10 @@ const SET_MODAL_TYPE = 'SET_MODAL_TYPE';
|
|
|
48
48
|
|
|
49
49
|
const SET_PEER_TO_UPDATE = 'SET_PEER_TO_UPDATE';
|
|
50
50
|
|
|
51
|
+
const SET_MEETING_STATE = 'SET_MEETING_STATE';
|
|
52
|
+
|
|
53
|
+
const SET_STARTING_HLS_STREAM = 'SET_STARTING_HLS_STREAM';
|
|
54
|
+
|
|
51
55
|
export default {
|
|
52
56
|
ADD_PINNED_MESSAGE,
|
|
53
57
|
ADD_MESSAGE,
|
|
@@ -69,6 +73,8 @@ export default {
|
|
|
69
73
|
SET_RTC_STATS,
|
|
70
74
|
SET_MODAL_TYPE,
|
|
71
75
|
SET_PEER_TO_UPDATE,
|
|
76
|
+
SET_MEETING_STATE,
|
|
77
|
+
SET_STARTING_HLS_STREAM,
|
|
72
78
|
};
|
|
73
79
|
|
|
74
80
|
export enum HmsStateActionTypes {
|
|
@@ -11,12 +11,13 @@ import type {
|
|
|
11
11
|
HMSSessionStore,
|
|
12
12
|
} from '@100mslive/react-native-hms';
|
|
13
13
|
import type {
|
|
14
|
-
|
|
14
|
+
HMSIOSScreenShareConfig,
|
|
15
15
|
ModalTypes,
|
|
16
16
|
PeerTrackNode,
|
|
17
17
|
PipModes,
|
|
18
18
|
} from '../../utils/types';
|
|
19
19
|
import actionTypes, { HmsStateActionTypes } from '../actionTypes';
|
|
20
|
+
import { MeetingState } from '../../types';
|
|
20
21
|
|
|
21
22
|
export const setPrebuiltData = (data: {
|
|
22
23
|
roomCode: string;
|
|
@@ -28,7 +29,7 @@ export const setPrebuiltData = (data: {
|
|
|
28
29
|
init: string;
|
|
29
30
|
token: string;
|
|
30
31
|
};
|
|
31
|
-
ios?:
|
|
32
|
+
ios?: HMSIOSScreenShareConfig;
|
|
32
33
|
};
|
|
33
34
|
}) => ({
|
|
34
35
|
type: HmsStateActionTypes.SET_PREBUILT_DATA,
|
|
@@ -204,3 +205,13 @@ export const removeFromPreviewPeersList = (peer: HMSPeer) => ({
|
|
|
204
205
|
type: HmsStateActionTypes.REMOVE_FROM_PREVIEW_PEERS_LIST,
|
|
205
206
|
peerId: peer.peerID,
|
|
206
207
|
});
|
|
208
|
+
|
|
209
|
+
export const changeMeetingState = (meetingState: MeetingState) => ({
|
|
210
|
+
type: actionTypes.SET_MEETING_STATE,
|
|
211
|
+
payload: { meetingState },
|
|
212
|
+
});
|
|
213
|
+
|
|
214
|
+
export const changeStartingHLSStream = (startingHLSStream: boolean) => ({
|
|
215
|
+
type: actionTypes.SET_STARTING_HLS_STREAM,
|
|
216
|
+
payload: { startingHLSStream },
|
|
217
|
+
});
|
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
HMSRemoteAudioStats,
|
|
10
10
|
HMSRemoteVideoStats,
|
|
11
11
|
} from '@100mslive/react-native-hms';
|
|
12
|
+
import { MeetingState } from '../../types';
|
|
12
13
|
|
|
13
14
|
type ActionType = {
|
|
14
15
|
payload: { [key: string]: any };
|
|
@@ -37,6 +38,8 @@ type IntialStateType = {
|
|
|
37
38
|
};
|
|
38
39
|
modalType: ModalTypes;
|
|
39
40
|
peerToUpdate: HMSPeer | null;
|
|
41
|
+
meetingState: MeetingState;
|
|
42
|
+
startingHLSStream: boolean;
|
|
40
43
|
};
|
|
41
44
|
|
|
42
45
|
const INITIAL_STATE: IntialStateType = {
|
|
@@ -54,6 +57,8 @@ const INITIAL_STATE: IntialStateType = {
|
|
|
54
57
|
},
|
|
55
58
|
modalType: ModalTypes.DEFAULT,
|
|
56
59
|
peerToUpdate: null,
|
|
60
|
+
meetingState: MeetingState.NOT_JOINED,
|
|
61
|
+
startingHLSStream: false,
|
|
57
62
|
};
|
|
58
63
|
|
|
59
64
|
const appReducer = (
|
|
@@ -133,6 +138,10 @@ const appReducer = (
|
|
|
133
138
|
[action.payload.trackId]: action.payload.stats,
|
|
134
139
|
},
|
|
135
140
|
};
|
|
141
|
+
case ActionTypes.SET_MEETING_STATE:
|
|
142
|
+
return { ...state, meetingState: action.payload.meetingState };
|
|
143
|
+
case ActionTypes.SET_STARTING_HLS_STREAM:
|
|
144
|
+
return { ...state, startingHLSStream: action.payload.startingHLSStream };
|
|
136
145
|
case HmsStateActionTypes.CLEAR_STATES:
|
|
137
146
|
return INITIAL_STATE;
|
|
138
147
|
default:
|
|
@@ -5,7 +5,7 @@ import type {
|
|
|
5
5
|
} from '@100mslive/react-native-hms';
|
|
6
6
|
import { getMeetingCode, getMeetingUrl } from '../../utils/functions';
|
|
7
7
|
import ActionTypes, { HmsStateActionTypes } from '../actionTypes';
|
|
8
|
-
import type {
|
|
8
|
+
import type { HMSIOSScreenShareConfig } from '../../utils/types';
|
|
9
9
|
|
|
10
10
|
type ActionType = {
|
|
11
11
|
payload: any;
|
|
@@ -24,7 +24,7 @@ type IntialStateType = {
|
|
|
24
24
|
roomCode: string;
|
|
25
25
|
isHLSFlow: boolean;
|
|
26
26
|
roles: HMSRole[];
|
|
27
|
-
iosBuildConfig:
|
|
27
|
+
iosBuildConfig: HMSIOSScreenShareConfig | null;
|
|
28
28
|
};
|
|
29
29
|
|
|
30
30
|
const INITIAL_STATE: IntialStateType = {
|
package/src/utils/theme.ts
CHANGED
|
@@ -75,6 +75,7 @@ export const COLORS = {
|
|
|
75
75
|
BLACK: '#000000',
|
|
76
76
|
WHITE: '#FFFFFF',
|
|
77
77
|
OVERLAY: 'rgba(34, 34, 34, 0.3)',
|
|
78
|
+
LOADING_BACKDROP: 'rgba(0, 0, 0, 0.7)',
|
|
78
79
|
TEXT: {
|
|
79
80
|
HIGH_EMPHASIS: 'rgba(245, 249, 255, 0.95)', // '#F5F9FF'
|
|
80
81
|
MEDIUM_EMPHASIS: 'rgba(224, 236, 255, 0.80)', // '#E0ECFF'
|
package/src/utils/types.ts
CHANGED
|
@@ -48,7 +48,6 @@ export enum ModalTypes {
|
|
|
48
48
|
ZOOM = 'zoom',
|
|
49
49
|
PREVIEW = 'preview',
|
|
50
50
|
PARTICIPANTS = 'participants',
|
|
51
|
-
VOLUME = 'volume',
|
|
52
51
|
AUDIO_MIXING_MODE = 'audioMixingMode',
|
|
53
52
|
SET_AUDIO_SHARE_VOLUME = 'setAudioShareVolume',
|
|
54
53
|
WELCOME_SETTINGS = 'welcomeSettings',
|
|
@@ -81,9 +80,9 @@ export enum Constants {
|
|
|
81
80
|
MEET_URL = 'MEET_URL',
|
|
82
81
|
}
|
|
83
82
|
|
|
84
|
-
export type
|
|
85
|
-
appGroup
|
|
86
|
-
preferredExtension
|
|
83
|
+
export type HMSIOSScreenShareConfig = {
|
|
84
|
+
appGroup: string;
|
|
85
|
+
preferredExtension: string;
|
|
87
86
|
};
|
|
88
87
|
|
|
89
88
|
export const SUPPORTED_ASPECT_RATIOS = [
|
package/src/utils.ts
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_reactNativeModal","_interopRequireDefault","_reactNative","_reactNativeSimpleToast","_reactRedux","_reactNativeHms","_Icons","_PressableIcon","_theme","_hooksUtil","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","HMSSpeakerSettings","hmsInstance","useHMSInstance","settingsModalVisible","setSettingsModalVisible","useState","currentAudioOutputDevice","setCurrentAudioOutputDevice","availableAudioOutputDevices","setAvailableAudioOutputDevices","debugMode","useSelector","state","user","useEffect","Platform","OS","ignore","getCurrentAudioOutputDevice","device","getAudioOutputRouteType","getAvailableAudioOutputDevices","devices","getAudioDevicesList","dismissModal","handleSpeakerChange","switchAudioOutputUsingIOSUI","length","then","setAudioDeviceChangeListener","data","Toast","showWithGravity","LONG","TOP","removeEventListener","HMSUpdateListenerActions","ON_AUDIO_DEVICE_CHANGED","handleSelectAudioDevice","switchAudioOutput","createElement","View","PressableIcon","onPress","SpeakerIcon","muted","getIcon","HMSAudioDevice","AUTOMATIC","isVisible","animationIn","animationOut","backdropColor","COLORS","BACKGROUND","DIM","backdropOpacity","onBackButtonPress","onBackdropPress","useNativeDriver","useNativeDriverForBackdrop","hideModalContentWhileAnimating","style","styles","modal","container","header","Text","headerText","TouchableOpacity","hitSlop","closeIconHitSlop","CloseIcon","emptyView","itemText","ScrollView","showsVerticalScrollIndicator","sort","map","Fragment","divider","audioDeviceItem","exports","StyleSheet","create","margin","justifyContent","backgroundColor","SURFACE","borderTopLeftRadius","borderTopRightRadius","paddingTop","paddingHorizontal","paddingBottom","flexDirection","alignItems","marginBottom","color","ON_SURFACE","HIGH","fontSize","fontFamily","fontWeight","lineHeight","letterSpacing","bottom","left","right","top","flex","marginHorizontal","height","paddingVertical","BORDER","DEFAULT","ofDevice","WaveIcon","BLUETOOTH","BluetoothIcon","EARPIECE","AnswerPhoneIcon","SPEAKER_PHONE","WIRED_HEADSET","HeadphonesIcon"],"sourceRoot":"../../../src","sources":["components/HMSSpeakerSettings.tsx"],"mappings":"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"}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.ZoomableView = void 0;
|
|
7
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _reactNative = require("react-native");
|
|
9
|
-
var _reactNativeGestureHandler = require("react-native-gesture-handler");
|
|
10
|
-
var _theme = require("../utils/theme");
|
|
11
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
12
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
13
|
-
const ZoomableView = _ref => {
|
|
14
|
-
let {
|
|
15
|
-
children
|
|
16
|
-
} = _ref;
|
|
17
|
-
const baseScale = (0, _react.useRef)(new _reactNative.Animated.Value(1)).current;
|
|
18
|
-
const pinchScale = (0, _react.useRef)(new _reactNative.Animated.Value(1)).current;
|
|
19
|
-
const scale = _reactNative.Animated.multiply(baseScale, pinchScale);
|
|
20
|
-
let lastScale = 1;
|
|
21
|
-
const translateX = (0, _react.useRef)(new _reactNative.Animated.Value(1)).current;
|
|
22
|
-
const translateY = (0, _react.useRef)(new _reactNative.Animated.Value(1)).current;
|
|
23
|
-
const handlePinch = _reactNative.Animated.event([{
|
|
24
|
-
nativeEvent: {
|
|
25
|
-
scale: pinchScale
|
|
26
|
-
}
|
|
27
|
-
}], {
|
|
28
|
-
useNativeDriver: true
|
|
29
|
-
});
|
|
30
|
-
const handlePan = _reactNative.Animated.event([{
|
|
31
|
-
nativeEvent: {
|
|
32
|
-
translationX: translateX,
|
|
33
|
-
translationY: translateY
|
|
34
|
-
}
|
|
35
|
-
}], {
|
|
36
|
-
useNativeDriver: true
|
|
37
|
-
});
|
|
38
|
-
const onHandlerStateChange = (0, _react.useCallback)(() => {
|
|
39
|
-
translateY.extractOffset();
|
|
40
|
-
translateX.extractOffset();
|
|
41
|
-
}, [translateX, translateY]);
|
|
42
|
-
const onPinchHandlerStateChange = event => {
|
|
43
|
-
if (event.nativeEvent.oldState === _reactNativeGestureHandler.State.ACTIVE) {
|
|
44
|
-
lastScale *= event.nativeEvent.scale;
|
|
45
|
-
baseScale.setValue(lastScale);
|
|
46
|
-
pinchScale.setValue(1);
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
return /*#__PURE__*/_react.default.createElement(_reactNativeGestureHandler.GestureHandlerRootView, {
|
|
50
|
-
style: styles.container
|
|
51
|
-
}, /*#__PURE__*/_react.default.createElement(_reactNativeGestureHandler.PanGestureHandler, {
|
|
52
|
-
onGestureEvent: handlePan,
|
|
53
|
-
onHandlerStateChange: onHandlerStateChange
|
|
54
|
-
}, /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, null, /*#__PURE__*/_react.default.createElement(_reactNativeGestureHandler.PinchGestureHandler, {
|
|
55
|
-
onGestureEvent: handlePinch,
|
|
56
|
-
onHandlerStateChange: onPinchHandlerStateChange
|
|
57
|
-
}, /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
58
|
-
style: [styles.zoomableView, {
|
|
59
|
-
transform: [{
|
|
60
|
-
scale: scale
|
|
61
|
-
}, {
|
|
62
|
-
translateX
|
|
63
|
-
}, {
|
|
64
|
-
translateY
|
|
65
|
-
}]
|
|
66
|
-
}]
|
|
67
|
-
}, children)))));
|
|
68
|
-
};
|
|
69
|
-
exports.ZoomableView = ZoomableView;
|
|
70
|
-
const styles = _reactNative.StyleSheet.create({
|
|
71
|
-
container: {
|
|
72
|
-
backgroundColor: _theme.COLORS.BLACK
|
|
73
|
-
},
|
|
74
|
-
zoomableView: {
|
|
75
|
-
width: '100%',
|
|
76
|
-
marginVertical: 1,
|
|
77
|
-
padding: 0.5,
|
|
78
|
-
overflow: 'hidden',
|
|
79
|
-
borderRadius: 10,
|
|
80
|
-
justifyContent: 'center',
|
|
81
|
-
alignSelf: 'center'
|
|
82
|
-
}
|
|
83
|
-
});
|
|
84
|
-
//# sourceMappingURL=ZoomableView.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeGestureHandler","_theme","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ZoomableView","_ref","children","baseScale","useRef","Animated","Value","current","pinchScale","scale","multiply","lastScale","translateX","translateY","handlePinch","event","nativeEvent","useNativeDriver","handlePan","translationX","translationY","onHandlerStateChange","useCallback","extractOffset","onPinchHandlerStateChange","oldState","State","ACTIVE","setValue","createElement","GestureHandlerRootView","style","styles","container","PanGestureHandler","onGestureEvent","View","PinchGestureHandler","zoomableView","transform","exports","StyleSheet","create","backgroundColor","COLORS","BLACK","width","marginVertical","padding","overflow","borderRadius","justifyContent","alignSelf"],"sourceRoot":"../../../src","sources":["components/ZoomableView.tsx"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","Modal","Platform","ScrollView","StyleSheet","Text","TouchableOpacity","View","Toast","useSelector","HMSUpdateListenerActions","HMSAudioDevice","AnswerPhoneIcon","BluetoothIcon","HeadphonesIcon","SpeakerIcon","WaveIcon","PressableIcon","COLORS","CloseIcon","useHMSInstance","HMSSpeakerSettings","hmsInstance","settingsModalVisible","setSettingsModalVisible","useState","currentAudioOutputDevice","setCurrentAudioOutputDevice","availableAudioOutputDevices","setAvailableAudioOutputDevices","debugMode","state","user","useEffect","OS","ignore","getCurrentAudioOutputDevice","device","getAudioOutputRouteType","getAvailableAudioOutputDevices","devices","getAudioDevicesList","dismissModal","handleSpeakerChange","switchAudioOutputUsingIOSUI","length","then","setAudioDeviceChangeListener","data","showWithGravity","LONG","TOP","removeEventListener","ON_AUDIO_DEVICE_CHANGED","handleSelectAudioDevice","switchAudioOutput","createElement","onPress","muted","getIcon","AUTOMATIC","isVisible","animationIn","animationOut","backdropColor","BACKGROUND","DIM","backdropOpacity","onBackButtonPress","onBackdropPress","useNativeDriver","useNativeDriverForBackdrop","hideModalContentWhileAnimating","style","styles","modal","container","header","headerText","hitSlop","closeIconHitSlop","emptyView","itemText","showsVerticalScrollIndicator","sort","map","Fragment","key","divider","audioDeviceItem","create","margin","justifyContent","backgroundColor","SURFACE","borderTopLeftRadius","borderTopRightRadius","paddingTop","paddingHorizontal","paddingBottom","flexDirection","alignItems","marginBottom","color","ON_SURFACE","HIGH","fontSize","fontFamily","fontWeight","lineHeight","letterSpacing","bottom","left","right","top","flex","marginHorizontal","height","paddingVertical","BORDER","DEFAULT","ofDevice","BLUETOOTH","EARPIECE","SPEAKER_PHONE","WIRED_HEADSET"],"sourceRoot":"../../../src","sources":["components/HMSSpeakerSettings.tsx"],"mappings":"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"}
|