@100mslive/react-native-room-kit 1.0.1 → 1.0.2-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. package/lib/commonjs/HMSPrebuilt.js +16 -14
  2. package/lib/commonjs/HMSPrebuilt.js.map +1 -1
  3. package/lib/commonjs/HMSRoomSetup.js +85 -44
  4. package/lib/commonjs/HMSRoomSetup.js.map +1 -1
  5. package/lib/commonjs/Icons/Hand/assets/hand-off.png +0 -0
  6. package/lib/commonjs/Icons/Hand/assets/hand-off@2x.png +0 -0
  7. package/lib/commonjs/Icons/Hand/assets/hand-off@3x.png +0 -0
  8. package/lib/commonjs/Icons/Hand/index.js +2 -1
  9. package/lib/commonjs/Icons/Hand/index.js.map +1 -1
  10. package/lib/commonjs/Icons/Recording/assets/recording-off.png +0 -0
  11. package/lib/commonjs/Icons/Recording/assets/recording-off@2x.png +0 -0
  12. package/lib/commonjs/Icons/Recording/assets/recording-off@3x.png +0 -0
  13. package/lib/commonjs/Icons/Recording/index.js +2 -1
  14. package/lib/commonjs/Icons/Recording/index.js.map +1 -1
  15. package/lib/commonjs/components/DisplayView.js +3 -1
  16. package/lib/commonjs/components/DisplayView.js.map +1 -1
  17. package/lib/commonjs/components/EndRoomModal.js +29 -0
  18. package/lib/commonjs/components/EndRoomModal.js.map +1 -0
  19. package/lib/commonjs/components/EndRoomModalContent.js +9 -2
  20. package/lib/commonjs/components/EndRoomModalContent.js.map +1 -1
  21. package/lib/commonjs/components/Footer.js +9 -1
  22. package/lib/commonjs/components/Footer.js.map +1 -1
  23. package/lib/commonjs/components/HMSKeyboardAvoidingView.js +3 -18
  24. package/lib/commonjs/components/HMSKeyboardAvoidingView.js.map +1 -1
  25. package/lib/commonjs/components/HMSLocalScreenshareNotification.js +2 -2
  26. package/lib/commonjs/components/HMSLocalScreenshareNotification.js.map +1 -1
  27. package/lib/commonjs/components/HMSManageLeave.js +3 -178
  28. package/lib/commonjs/components/HMSManageLeave.js.map +1 -1
  29. package/lib/commonjs/components/HMSNotification.js +4 -3
  30. package/lib/commonjs/components/HMSNotification.js.map +1 -1
  31. package/lib/commonjs/components/HMSNotifications.js +32 -6
  32. package/lib/commonjs/components/HMSNotifications.js.map +1 -1
  33. package/lib/commonjs/components/HMSOverlayChatView.js +7 -1
  34. package/lib/commonjs/components/HMSOverlayChatView.js.map +1 -1
  35. package/lib/commonjs/components/HMSReconnectingNotification.js +33 -0
  36. package/lib/commonjs/components/HMSReconnectingNotification.js.map +1 -0
  37. package/lib/commonjs/components/HMSRecordingIndicator.js +1 -1
  38. package/lib/commonjs/components/HMSRecordingIndicator.js.map +1 -1
  39. package/lib/commonjs/components/HMSTerminalErrorNotification.js +66 -0
  40. package/lib/commonjs/components/HMSTerminalErrorNotification.js.map +1 -0
  41. package/lib/commonjs/components/LeaveRoomBottomSheet.js +175 -0
  42. package/lib/commonjs/components/LeaveRoomBottomSheet.js.map +1 -0
  43. package/lib/commonjs/components/Meeting.js +4 -0
  44. package/lib/commonjs/components/Meeting.js.map +1 -1
  45. package/lib/commonjs/components/MeetingScreenContent.js +3 -2
  46. package/lib/commonjs/components/MeetingScreenContent.js.map +1 -1
  47. package/lib/commonjs/components/PIPView.js +80 -15
  48. package/lib/commonjs/components/PIPView.js.map +1 -1
  49. package/lib/commonjs/components/Participants/ParticipantsItemOptions.js +23 -1
  50. package/lib/commonjs/components/Participants/ParticipantsItemOptions.js.map +1 -1
  51. package/lib/commonjs/components/PeerVideoTile/AvatarView.js +4 -4
  52. package/lib/commonjs/components/PeerVideoTile/PeerAudioIndicator.js +3 -1
  53. package/lib/commonjs/components/PeerVideoTile/PeerAudioIndicator.js.map +1 -1
  54. package/lib/commonjs/components/PeerVideoTile/PeerVideoTileView.js +1 -1
  55. package/lib/commonjs/components/PeerVideoTile/PeerVideoTileView.js.map +1 -1
  56. package/lib/commonjs/components/PreviewForRoleChangeModal.js +2 -2
  57. package/lib/commonjs/components/PreviewForRoleChangeModal.js.map +1 -1
  58. package/lib/commonjs/components/RoomSettingsModalContent.js +4 -7
  59. package/lib/commonjs/components/RoomSettingsModalContent.js.map +1 -1
  60. package/lib/commonjs/components/StopRecordingModalContent.js +4 -1
  61. package/lib/commonjs/components/StopRecordingModalContent.js.map +1 -1
  62. package/lib/commonjs/hooks-util.js +193 -28
  63. package/lib/commonjs/hooks-util.js.map +1 -1
  64. package/lib/commonjs/index.js +11 -0
  65. package/lib/commonjs/index.js.map +1 -1
  66. package/lib/commonjs/redux/actionTypes.js +6 -1
  67. package/lib/commonjs/redux/actionTypes.js.map +1 -1
  68. package/lib/commonjs/redux/actions/index.js +22 -1
  69. package/lib/commonjs/redux/actions/index.js.map +1 -1
  70. package/lib/commonjs/redux/reducers/appState.js +17 -1
  71. package/lib/commonjs/redux/reducers/appState.js.map +1 -1
  72. package/lib/commonjs/redux/reducers/hmsStates.js +15 -4
  73. package/lib/commonjs/redux/reducers/hmsStates.js.map +1 -1
  74. package/lib/commonjs/redux/reducers/userState.js +5 -1
  75. package/lib/commonjs/redux/reducers/userState.js.map +1 -1
  76. package/lib/commonjs/types.js +10 -1
  77. package/lib/commonjs/types.js.map +1 -1
  78. package/lib/commonjs/utils/types.js +11 -1
  79. package/lib/commonjs/utils/types.js.map +1 -1
  80. package/lib/commonjs/utils.js +1 -7
  81. package/lib/commonjs/utils.js.map +1 -1
  82. package/lib/module/HMSPrebuilt.js +16 -14
  83. package/lib/module/HMSPrebuilt.js.map +1 -1
  84. package/lib/module/HMSRoomSetup.js +81 -40
  85. package/lib/module/HMSRoomSetup.js.map +1 -1
  86. package/lib/module/Icons/Hand/assets/hand-off.png +0 -0
  87. package/lib/module/Icons/Hand/assets/hand-off@2x.png +0 -0
  88. package/lib/module/Icons/Hand/assets/hand-off@3x.png +0 -0
  89. package/lib/module/Icons/Hand/index.js +2 -1
  90. package/lib/module/Icons/Hand/index.js.map +1 -1
  91. package/lib/module/Icons/Recording/assets/recording-off.png +0 -0
  92. package/lib/module/Icons/Recording/assets/recording-off@2x.png +0 -0
  93. package/lib/module/Icons/Recording/assets/recording-off@3x.png +0 -0
  94. package/lib/module/Icons/Recording/index.js +2 -1
  95. package/lib/module/Icons/Recording/index.js.map +1 -1
  96. package/lib/module/components/DisplayView.js +3 -1
  97. package/lib/module/components/DisplayView.js.map +1 -1
  98. package/lib/module/components/EndRoomModal.js +20 -0
  99. package/lib/module/components/EndRoomModal.js.map +1 -0
  100. package/lib/module/components/EndRoomModalContent.js +9 -2
  101. package/lib/module/components/EndRoomModalContent.js.map +1 -1
  102. package/lib/module/components/Footer.js +9 -1
  103. package/lib/module/components/Footer.js.map +1 -1
  104. package/lib/module/components/HMSKeyboardAvoidingView.js +4 -19
  105. package/lib/module/components/HMSKeyboardAvoidingView.js.map +1 -1
  106. package/lib/module/components/HMSLocalScreenshareNotification.js +1 -1
  107. package/lib/module/components/HMSManageLeave.js +5 -181
  108. package/lib/module/components/HMSManageLeave.js.map +1 -1
  109. package/lib/module/components/HMSNotification.js +4 -3
  110. package/lib/module/components/HMSNotification.js.map +1 -1
  111. package/lib/module/components/HMSNotifications.js +28 -2
  112. package/lib/module/components/HMSNotifications.js.map +1 -1
  113. package/lib/module/components/HMSOverlayChatView.js +7 -1
  114. package/lib/module/components/HMSOverlayChatView.js.map +1 -1
  115. package/lib/module/components/HMSReconnectingNotification.js +24 -0
  116. package/lib/module/components/HMSReconnectingNotification.js.map +1 -0
  117. package/lib/module/components/HMSRecordingIndicator.js +1 -1
  118. package/lib/module/components/HMSRecordingIndicator.js.map +1 -1
  119. package/lib/module/components/HMSTerminalErrorNotification.js +57 -0
  120. package/lib/module/components/HMSTerminalErrorNotification.js.map +1 -0
  121. package/lib/module/components/LeaveRoomBottomSheet.js +167 -0
  122. package/lib/module/components/LeaveRoomBottomSheet.js.map +1 -0
  123. package/lib/module/components/Meeting.js +5 -1
  124. package/lib/module/components/Meeting.js.map +1 -1
  125. package/lib/module/components/MeetingScreenContent.js +3 -2
  126. package/lib/module/components/MeetingScreenContent.js.map +1 -1
  127. package/lib/module/components/PIPView.js +81 -16
  128. package/lib/module/components/PIPView.js.map +1 -1
  129. package/lib/module/components/Participants/ParticipantsItemOptions.js +24 -2
  130. package/lib/module/components/Participants/ParticipantsItemOptions.js.map +1 -1
  131. package/lib/module/components/PeerVideoTile/AvatarView.js +4 -4
  132. package/lib/module/components/PeerVideoTile/PeerAudioIndicator.js +3 -1
  133. package/lib/module/components/PeerVideoTile/PeerAudioIndicator.js.map +1 -1
  134. package/lib/module/components/PeerVideoTile/PeerVideoTileView.js +1 -1
  135. package/lib/module/components/PeerVideoTile/PeerVideoTileView.js.map +1 -1
  136. package/lib/module/components/PreviewForRoleChangeModal.js +1 -1
  137. package/lib/module/components/RoomSettingsModalContent.js +6 -9
  138. package/lib/module/components/RoomSettingsModalContent.js.map +1 -1
  139. package/lib/module/components/StopRecordingModalContent.js +4 -1
  140. package/lib/module/components/StopRecordingModalContent.js.map +1 -1
  141. package/lib/module/hooks-util.js +184 -25
  142. package/lib/module/hooks-util.js.map +1 -1
  143. package/lib/module/index.js +1 -0
  144. package/lib/module/index.js.map +1 -1
  145. package/lib/module/redux/actionTypes.js +6 -1
  146. package/lib/module/redux/actionTypes.js.map +1 -1
  147. package/lib/module/redux/actions/index.js +18 -0
  148. package/lib/module/redux/actions/index.js.map +1 -1
  149. package/lib/module/redux/reducers/appState.js +17 -1
  150. package/lib/module/redux/reducers/appState.js.map +1 -1
  151. package/lib/module/redux/reducers/hmsStates.js +15 -4
  152. package/lib/module/redux/reducers/hmsStates.js.map +1 -1
  153. package/lib/module/redux/reducers/userState.js +5 -1
  154. package/lib/module/redux/reducers/userState.js.map +1 -1
  155. package/lib/module/types.js +9 -0
  156. package/lib/module/types.js.map +1 -1
  157. package/lib/module/utils/types.js +11 -0
  158. package/lib/module/utils/types.js.map +1 -1
  159. package/lib/module/utils.js +0 -6
  160. package/lib/module/utils.js.map +1 -1
  161. package/lib/typescript/HMSPrebuilt.d.ts +2 -16
  162. package/lib/typescript/HMSPrebuilt.d.ts.map +1 -1
  163. package/lib/typescript/HMSRoomSetup.d.ts.map +1 -1
  164. package/lib/typescript/Icons/Hand/index.d.ts +1 -0
  165. package/lib/typescript/Icons/Hand/index.d.ts.map +1 -1
  166. package/lib/typescript/Icons/Recording/index.d.ts +1 -0
  167. package/lib/typescript/Icons/Recording/index.d.ts.map +1 -1
  168. package/lib/typescript/components/DisplayView.d.ts.map +1 -1
  169. package/lib/typescript/components/EndRoomModal.d.ts +6 -0
  170. package/lib/typescript/components/EndRoomModal.d.ts.map +1 -0
  171. package/lib/typescript/components/EndRoomModalContent.d.ts.map +1 -1
  172. package/lib/typescript/components/Footer.d.ts +1 -0
  173. package/lib/typescript/components/Footer.d.ts.map +1 -1
  174. package/lib/typescript/components/HMSKeyboardAvoidingView.d.ts +1 -0
  175. package/lib/typescript/components/HMSKeyboardAvoidingView.d.ts.map +1 -1
  176. package/lib/typescript/components/HMSManageLeave.d.ts.map +1 -1
  177. package/lib/typescript/components/HMSNotification.d.ts +1 -0
  178. package/lib/typescript/components/HMSNotification.d.ts.map +1 -1
  179. package/lib/typescript/components/HMSNotifications.d.ts +1 -0
  180. package/lib/typescript/components/HMSNotifications.d.ts.map +1 -1
  181. package/lib/typescript/components/HMSOverlayChatView.d.ts.map +1 -1
  182. package/lib/typescript/components/HMSReconnectingNotification.d.ts +5 -0
  183. package/lib/typescript/components/HMSReconnectingNotification.d.ts.map +1 -0
  184. package/lib/typescript/components/HMSTerminalErrorNotification.d.ts +10 -0
  185. package/lib/typescript/components/HMSTerminalErrorNotification.d.ts.map +1 -0
  186. package/lib/typescript/components/LeaveRoomBottomSheet.d.ts +6 -0
  187. package/lib/typescript/components/LeaveRoomBottomSheet.d.ts.map +1 -0
  188. package/lib/typescript/components/Meeting.d.ts.map +1 -1
  189. package/lib/typescript/components/PIPView.d.ts.map +1 -1
  190. package/lib/typescript/components/Participants/ParticipantsItemOptions.d.ts.map +1 -1
  191. package/lib/typescript/components/PeerVideoTile/PeerAudioIndicator.d.ts.map +1 -1
  192. package/lib/typescript/components/PeerVideoTile/PeerVideoTileView.d.ts.map +1 -1
  193. package/lib/typescript/components/RoomSettingsModalContent.d.ts.map +1 -1
  194. package/lib/typescript/components/StopRecordingModalContent.d.ts.map +1 -1
  195. package/lib/typescript/hooks-util.d.ts +20 -7
  196. package/lib/typescript/hooks-util.d.ts.map +1 -1
  197. package/lib/typescript/index.d.ts +2 -0
  198. package/lib/typescript/index.d.ts.map +1 -1
  199. package/lib/typescript/redux/actionTypes.d.ts +3 -0
  200. package/lib/typescript/redux/actionTypes.d.ts.map +1 -1
  201. package/lib/typescript/redux/actions/index.d.ts +23 -14
  202. package/lib/typescript/redux/actions/index.d.ts.map +1 -1
  203. package/lib/typescript/redux/index.d.ts +5 -7
  204. package/lib/typescript/redux/index.d.ts.map +1 -1
  205. package/lib/typescript/redux/reducers/appState.d.ts +4 -5
  206. package/lib/typescript/redux/reducers/appState.d.ts.map +1 -1
  207. package/lib/typescript/redux/reducers/hmsStates.d.ts.map +1 -1
  208. package/lib/typescript/redux/reducers/index.d.ts +5 -7
  209. package/lib/typescript/redux/reducers/index.d.ts.map +1 -1
  210. package/lib/typescript/redux/reducers/userState.d.ts +2 -2
  211. package/lib/typescript/redux/reducers/userState.d.ts.map +1 -1
  212. package/lib/typescript/types.d.ts +79 -0
  213. package/lib/typescript/types.d.ts.map +1 -1
  214. package/lib/typescript/utils/types.d.ts +24 -0
  215. package/lib/typescript/utils/types.d.ts.map +1 -1
  216. package/lib/typescript/utils.d.ts +0 -5
  217. package/lib/typescript/utils.d.ts.map +1 -1
  218. package/package.json +2 -2
  219. package/src/HMSPrebuilt.tsx +32 -23
  220. package/src/HMSRoomSetup.tsx +105 -53
  221. package/src/Icons/Hand/assets/hand-off.png +0 -0
  222. package/src/Icons/Hand/assets/hand-off@2x.png +0 -0
  223. package/src/Icons/Hand/assets/hand-off@3x.png +0 -0
  224. package/src/Icons/Hand/index.tsx +13 -3
  225. package/src/Icons/Recording/assets/recording-off.png +0 -0
  226. package/src/Icons/Recording/assets/recording-off@2x.png +0 -0
  227. package/src/Icons/Recording/assets/recording-off@3x.png +0 -0
  228. package/src/Icons/Recording/index.tsx +9 -2
  229. package/src/components/DisplayView.tsx +6 -0
  230. package/src/components/EndRoomModal.tsx +24 -0
  231. package/src/components/EndRoomModalContent.tsx +9 -2
  232. package/src/components/Footer.tsx +18 -2
  233. package/src/components/HMSKeyboardAvoidingView.tsx +5 -23
  234. package/src/components/HMSLocalScreenshareNotification.tsx +1 -1
  235. package/src/components/HMSManageLeave.tsx +4 -228
  236. package/src/components/HMSNotification.tsx +4 -2
  237. package/src/components/HMSNotifications.tsx +41 -7
  238. package/src/components/HMSOverlayChatView.tsx +6 -1
  239. package/src/components/HMSReconnectingNotification.tsx +27 -0
  240. package/src/components/HMSRecordingIndicator.tsx +1 -1
  241. package/src/components/HMSTerminalErrorNotification.tsx +70 -0
  242. package/src/components/LeaveRoomBottomSheet.tsx +199 -0
  243. package/src/components/Meeting.tsx +7 -0
  244. package/src/components/MeetingScreenContent.tsx +2 -2
  245. package/src/components/PIPView.tsx +113 -25
  246. package/src/components/Participants/ParticipantsItemOptions.tsx +26 -4
  247. package/src/components/PeerVideoTile/AvatarView.tsx +4 -4
  248. package/src/components/PeerVideoTile/PeerAudioIndicator.tsx +6 -1
  249. package/src/components/PeerVideoTile/PeerVideoTileView.tsx +4 -2
  250. package/src/components/PreviewForRoleChangeModal.tsx +1 -1
  251. package/src/components/RoomSettingsModalContent.tsx +5 -9
  252. package/src/components/StopRecordingModalContent.tsx +3 -1
  253. package/src/hooks-util.ts +243 -25
  254. package/src/index.ts +2 -0
  255. package/src/redux/actionTypes.ts +7 -0
  256. package/src/redux/actions/index.ts +19 -7
  257. package/src/redux/reducers/appState.ts +18 -1
  258. package/src/redux/reducers/hmsStates.ts +19 -7
  259. package/src/redux/reducers/userState.ts +7 -3
  260. package/src/types.ts +71 -0
  261. package/src/utils/types.ts +27 -0
  262. package/src/utils.ts +0 -6
@@ -4,7 +4,11 @@ import { StyleSheet, View } from 'react-native';
4
4
  import { HMSLocalScreenshareNotification } from './HMSLocalScreenshareNotification';
5
5
  import { HMSHandRaiseNotification } from './HMSHandRaiseNotification';
6
6
  import { HMSRoleChangeDeclinedNotification } from './HMSRoleChangeDeclinedNotification';
7
- import { NotificationTypes } from '../utils';
7
+ import { NotificationTypes } from '../types';
8
+ import { HMSTerminalErrorNotification } from './HMSTerminalErrorNotification';
9
+ import { HMSNotification } from './HMSNotification';
10
+ import { AlertTriangleIcon } from '../Icons';
11
+ import { HMSReconnectingNotification } from './HMSReconnectingNotification';
8
12
  const LOCAL_SCREENSHARE_PAYLOAD = {
9
13
  id: NotificationTypes.LOCAL_SCREENSHARE,
10
14
  type: NotificationTypes.LOCAL_SCREENSHARE
@@ -66,7 +70,7 @@ export const HMSNotifications = () => {
66
70
  }, atBottom ? null : styles.notificationWrapper, atBottom ? null : {
67
71
  bottom: index * 16
68
72
  }]
69
- }, notification.type === NotificationTypes.LOCAL_SCREENSHARE ? /*#__PURE__*/React.createElement(HMSLocalScreenshareNotification, null) : notification.type === NotificationTypes.HAND_RAISE && 'peer' in notification ? /*#__PURE__*/React.createElement(HMSHandRaiseNotification, {
73
+ }, notification.type === NotificationTypes.LOCAL_SCREENSHARE ? /*#__PURE__*/React.createElement(HMSLocalScreenshareNotification, null) : notification.type === NotificationTypes.RECONNECTING ? /*#__PURE__*/React.createElement(HMSReconnectingNotification, null) : notification.type === NotificationTypes.HAND_RAISE && 'peer' in notification ? /*#__PURE__*/React.createElement(HMSHandRaiseNotification, {
70
74
  id: notification.id,
71
75
  peer: notification.peer,
72
76
  autoDismiss: atTop,
@@ -76,9 +80,31 @@ export const HMSNotifications = () => {
76
80
  peerName: notification.peer.name,
77
81
  autoDismiss: atTop,
78
82
  dismissDelay: 10000
83
+ }) : notification.type === NotificationTypes.TERMINAL_ERROR && 'exception' in notification ? /*#__PURE__*/React.createElement(HMSTerminalErrorNotification, {
84
+ id: notification.id,
85
+ exception: notification.exception,
86
+ autoDismiss: false
87
+ }) : notification.type === NotificationTypes.ERROR && 'message' in notification ? /*#__PURE__*/React.createElement(HMSNotification, {
88
+ icon: /*#__PURE__*/React.createElement(AlertTriangleIcon, {
89
+ type: "line"
90
+ }),
91
+ id: notification.id,
92
+ text: notification.message,
93
+ autoDismiss: false,
94
+ dismissable: true
79
95
  }) : null);
80
96
  }));
81
97
  };
98
+ export const useHMSNotificationsHeight = () => {
99
+ const numberOfNotifications = useSelector(state => {
100
+ const allNotifications = state.app.notifications;
101
+ const isLocalScreenShared = state.hmsStates.isLocalScreenShared;
102
+ return Math.min(allNotifications.length, isLocalScreenShared ? 2 : 3) + (isLocalScreenShared ? 1 : 0);
103
+ });
104
+ if (numberOfNotifications === 0) return 0;
105
+ return 8 + (numberOfNotifications - 1) * 16 + 56; // marginBottom + calculated paddingTop + content
106
+ };
107
+
82
108
  const styles = StyleSheet.create({
83
109
  absoluteContainer: {
84
110
  position: 'relative',
@@ -1 +1 @@
1
- {"version":3,"names":["React","shallowEqual","useSelector","StyleSheet","View","HMSLocalScreenshareNotification","HMSHandRaiseNotification","HMSRoleChangeDeclinedNotification","NotificationTypes","LOCAL_SCREENSHARE_PAYLOAD","id","LOCAL_SCREENSHARE","type","HMSNotifications","isLocalScreenShared","state","hmsStates","notifications","allNotifications","app","list","push","length","firstNotification","secondNotification","thirdNotification","createElement","style","styles","absoluteContainer","paddingTop","map","notification","index","arr","atTop","atBottom","key","transform","scale","getScale","notificationWrapper","bottom","HAND_RAISE","peer","autoDismiss","dismissDelay","ROLE_CHANGE_DECLINED","peerName","name","create","position","marginBottom","width","totalItem","current"],"sourceRoot":"../../../src","sources":["components/HMSNotifications.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","shallowEqual","useSelector","StyleSheet","View","HMSLocalScreenshareNotification","HMSHandRaiseNotification","HMSRoleChangeDeclinedNotification","NotificationTypes","HMSTerminalErrorNotification","HMSNotification","AlertTriangleIcon","HMSReconnectingNotification","LOCAL_SCREENSHARE_PAYLOAD","id","LOCAL_SCREENSHARE","type","HMSNotifications","isLocalScreenShared","state","hmsStates","notifications","allNotifications","app","list","push","length","firstNotification","secondNotification","thirdNotification","createElement","style","styles","absoluteContainer","paddingTop","map","notification","index","arr","atTop","atBottom","key","transform","scale","getScale","notificationWrapper","bottom","RECONNECTING","HAND_RAISE","peer","autoDismiss","dismissDelay","ROLE_CHANGE_DECLINED","peerName","name","TERMINAL_ERROR","exception","ERROR","icon","text","message","dismissable","useHMSNotificationsHeight","numberOfNotifications","Math","min","create","position","marginBottom","width","totalItem","current"],"sourceRoot":"../../../src","sources":["components/HMSNotifications.tsx"],"mappings":"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"}
@@ -5,10 +5,16 @@ import MaskedView from '@react-native-masked-view/masked-view';
5
5
  import { HMSKeyboardAvoidingView } from './HMSKeyboardAvoidingView';
6
6
  import { HMSSendMessageInput } from './HMSSendMessageInput';
7
7
  import { HMSHLSMessageList } from './HMSHLSMessageList';
8
+ import { useFooterHeight } from './Footer';
9
+ import { useHMSNotificationsHeight } from './HMSNotifications';
8
10
  const colors = ['rgba(0, 0, 0, 0)', 'rgba(255, 255, 255, 1)', 'rgba(255, 255, 255, 1)'];
9
11
  const colorLocations = [0, 0.4, 1];
10
12
  export const HLSChatView = () => {
11
- return /*#__PURE__*/React.createElement(HMSKeyboardAvoidingView, null, /*#__PURE__*/React.createElement(MaskedView, {
13
+ const footerHeight = useFooterHeight();
14
+ const hmsNotificationsHeight = useHMSNotificationsHeight();
15
+ return /*#__PURE__*/React.createElement(HMSKeyboardAvoidingView, {
16
+ bottomOffset: footerHeight + hmsNotificationsHeight
17
+ }, /*#__PURE__*/React.createElement(MaskedView, {
12
18
  maskElement: /*#__PURE__*/React.createElement(LinearGradient, {
13
19
  pointerEvents: "box-none",
14
20
  style: StyleSheet.absoluteFill,
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","LinearGradient","MaskedView","HMSKeyboardAvoidingView","HMSSendMessageInput","HMSHLSMessageList","colors","colorLocations","HLSChatView","createElement","maskElement","pointerEvents","style","absoluteFill","locations"],"sourceRoot":"../../../src","sources":["components/HMSOverlayChatView.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,cAAc;AACzC,OAAOC,cAAc,MAAM,8BAA8B;AACzD,OAAOC,UAAU,MAAM,uCAAuC;AAE9D,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,iBAAiB,QAAQ,qBAAqB;AAEvD,MAAMC,MAAM,GAAG,CACb,kBAAkB,EAClB,wBAAwB,EACxB,wBAAwB,CACzB;AACD,MAAMC,cAAc,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAElC,OAAO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC/B,oBACET,KAAA,CAAAU,aAAA,CAACN,uBAAuB,qBACtBJ,KAAA,CAAAU,aAAA,CAACP,UAAU;IACTQ,WAAW,eACTX,KAAA,CAAAU,aAAA,CAACR,cAAc;MACbU,aAAa,EAAC,UAAU;MACxBC,KAAK,EAAEZ,UAAU,CAACa,YAAa;MAC/BP,MAAM,EAAEA,MAAO;MACfQ,SAAS,EAAEP;IAAe,CAC3B;EACF,gBAEDR,KAAA,CAAAU,aAAA,CAACJ,iBAAiB,MAAE,CACV,CAAC,eAEbN,KAAA,CAAAU,aAAA,CAACL,mBAAmB,MAAE,CACC,CAAC;AAE9B,CAAC"}
1
+ {"version":3,"names":["React","StyleSheet","LinearGradient","MaskedView","HMSKeyboardAvoidingView","HMSSendMessageInput","HMSHLSMessageList","useFooterHeight","useHMSNotificationsHeight","colors","colorLocations","HLSChatView","footerHeight","hmsNotificationsHeight","createElement","bottomOffset","maskElement","pointerEvents","style","absoluteFill","locations"],"sourceRoot":"../../../src","sources":["components/HMSOverlayChatView.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,cAAc;AACzC,OAAOC,cAAc,MAAM,8BAA8B;AACzD,OAAOC,UAAU,MAAM,uCAAuC;AAE9D,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,eAAe,QAAQ,UAAU;AAC1C,SAASC,yBAAyB,QAAQ,oBAAoB;AAE9D,MAAMC,MAAM,GAAG,CACb,kBAAkB,EAClB,wBAAwB,EACxB,wBAAwB,CACzB;AACD,MAAMC,cAAc,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAElC,OAAO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC/B,MAAMC,YAAY,GAAGL,eAAe,CAAC,CAAC;EACtC,MAAMM,sBAAsB,GAAGL,yBAAyB,CAAC,CAAC;EAE1D,oBACER,KAAA,CAAAc,aAAA,CAACV,uBAAuB;IAACW,YAAY,EAAEH,YAAY,GAAGC;EAAuB,gBAC3Eb,KAAA,CAAAc,aAAA,CAACX,UAAU;IACTa,WAAW,eACThB,KAAA,CAAAc,aAAA,CAACZ,cAAc;MACbe,aAAa,EAAC,UAAU;MACxBC,KAAK,EAAEjB,UAAU,CAACkB,YAAa;MAC/BV,MAAM,EAAEA,MAAO;MACfW,SAAS,EAAEV;IAAe,CAC3B;EACF,gBAEDV,KAAA,CAAAc,aAAA,CAACR,iBAAiB,MAAE,CACV,CAAC,eAEbN,KAAA,CAAAc,aAAA,CAACT,mBAAmB,MAAE,CACC,CAAC;AAE9B,CAAC"}
@@ -0,0 +1,24 @@
1
+ import * as React from 'react';
2
+ import { ActivityIndicator } from 'react-native';
3
+ import { HMSNotification } from './HMSNotification';
4
+ import { useHMSRoomColorPalette, useHMSRoomStyle } from '../hooks-util';
5
+ import { NotificationTypes } from '../types';
6
+ export const HMSReconnectingNotification = () => {
7
+ const {
8
+ on_surface_high: onSurfaceHigh
9
+ } = useHMSRoomColorPalette();
10
+ const notificationStyle = useHMSRoomStyle(theme => ({
11
+ backgroundColor: theme.palette.surface_default
12
+ }));
13
+ return /*#__PURE__*/React.createElement(HMSNotification, {
14
+ id: NotificationTypes.RECONNECTING,
15
+ autoDismiss: false,
16
+ style: notificationStyle,
17
+ text: 'You lost your network connection. Trying to reconnect.',
18
+ icon: /*#__PURE__*/React.createElement(ActivityIndicator, {
19
+ size: "small",
20
+ color: onSurfaceHigh
21
+ })
22
+ });
23
+ };
24
+ //# sourceMappingURL=HMSReconnectingNotification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","ActivityIndicator","HMSNotification","useHMSRoomColorPalette","useHMSRoomStyle","NotificationTypes","HMSReconnectingNotification","on_surface_high","onSurfaceHigh","notificationStyle","theme","backgroundColor","palette","surface_default","createElement","id","RECONNECTING","autoDismiss","style","text","icon","size","color"],"sourceRoot":"../../../src","sources":["components/HMSReconnectingNotification.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,iBAAiB,QAAQ,cAAc;AAEhD,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,sBAAsB,EAAEC,eAAe,QAAQ,eAAe;AACvE,SAASC,iBAAiB,QAAQ,UAAU;AAI5C,OAAO,MAAMC,2BAEZ,GAAGA,CAAA,KAAM;EACR,MAAM;IAAEC,eAAe,EAAEC;EAAc,CAAC,GAAGL,sBAAsB,CAAC,CAAC;EACnE,MAAMM,iBAAiB,GAAGL,eAAe,CAAEM,KAAK,KAAM;IACpDC,eAAe,EAAED,KAAK,CAACE,OAAO,CAACC;EACjC,CAAC,CAAC,CAAC;EAEH,oBACEb,KAAA,CAAAc,aAAA,CAACZ,eAAe;IACda,EAAE,EAAEV,iBAAiB,CAACW,YAAa;IACnCC,WAAW,EAAE,KAAM;IACnBC,KAAK,EAAET,iBAAkB;IACzBU,IAAI,EAAE,wDAAyD;IAC/DC,IAAI,eAAEpB,KAAA,CAAAc,aAAA,CAACb,iBAAiB;MAACoB,IAAI,EAAC,OAAO;MAACC,KAAK,EAAEd;IAAc,CAAE;EAAE,CAChE,CAAC;AAEN,CAAC"}
@@ -10,7 +10,7 @@ export const HMSRecordingIndicator = () => {
10
10
  });
11
11
  const startingOrStoppingRecording = useSelector(state => {
12
12
  var _state$hmsStates$room2;
13
- return state.app.startingOrStoppingRecording || ((_state$hmsStates$room2 = state.hmsStates.room) === null || _state$hmsStates$room2 === void 0 ? void 0 : _state$hmsStates$room2.browserRecordingState.initialising);
13
+ return state.app.startingOrStoppingRecording || (((_state$hmsStates$room2 = state.hmsStates.room) === null || _state$hmsStates$room2 === void 0 ? void 0 : _state$hmsStates$room2.browserRecordingState.initialising) ?? false);
14
14
  });
15
15
  const {
16
16
  on_surface_high: onSurfaceHighColor
@@ -1 +1 @@
1
- {"version":3,"names":["React","useSelector","ActivityIndicator","StyleSheet","RecordingIcon","useHMSRoomColorPalette","useHMSRoomStyle","HMSRecordingIndicator","isRecordingOn","state","_state$hmsStates$room","hmsStates","room","browserRecordingState","running","startingOrStoppingRecording","_state$hmsStates$room2","app","initialising","on_surface_high","onSurfaceHighColor","iconStyles","theme","tintColor","palette","alert_error_default","createElement","size","color","style","styles","rightSpace","icon","create","width","height","marginRight"],"sourceRoot":"../../../src","sources":["components/HMSRecordingIndicator.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,WAAW,QAAQ,aAAa;AACzC,SAASC,iBAAiB,EAAEC,UAAU,QAAQ,cAAc;AAG5D,SAASC,aAAa,QAAQ,UAAU;AACxC,SAASC,sBAAsB,EAAEC,eAAe,QAAQ,eAAe;AAEvE,OAAO,MAAMC,qBAAqB,GAAGA,CAAA,KAAM;EACzC,MAAMC,aAAa,GAAGP,WAAW,CAC9BQ,KAAgB;IAAA,IAAAC,qBAAA;IAAA,OAAK,CAAC,GAAAA,qBAAA,GAACD,KAAK,CAACE,SAAS,CAACC,IAAI,cAAAF,qBAAA,gBAAAA,qBAAA,GAApBA,qBAAA,CAAsBG,qBAAqB,cAAAH,qBAAA,eAA3CA,qBAAA,CAA6CI,OAAO;EAAA,CAC9E,CAAC;EACD,MAAMC,2BAA2B,GAAGd,WAAW,CAC5CQ,KAAgB;IAAA,IAAAO,sBAAA;IAAA,OACfP,KAAK,CAACQ,GAAG,CAACF,2BAA2B,MAAAC,sBAAA,GACrCP,KAAK,CAACE,SAAS,CAACC,IAAI,cAAAI,sBAAA,uBAApBA,sBAAA,CAAsBH,qBAAqB,CAACK,YAAY;EAAA,CAC5D,CAAC;EAED,MAAM;IAAEC,eAAe,EAAEC;EAAmB,CAAC,GAAGf,sBAAsB,CAAC,CAAC;EAExE,MAAMgB,UAAU,GAAGf,eAAe,CAAEgB,KAAK,KAAM;IAC7CC,SAAS,EAAED,KAAK,CAACE,OAAO,CAACC;EAC3B,CAAC,CAAC,CAAC;EAEH,IAAIV,2BAA2B,EAAE;IAC/B,oBACEf,KAAA,CAAA0B,aAAA,CAACxB,iBAAiB;MAChByB,IAAI,EAAE,OAAQ;MACdC,KAAK,EAAER,kBAAmB;MAC1BS,KAAK,EAAEC,MAAM,CAACC;IAAW,CAC1B,CAAC;EAEN;EAEA,IAAIvB,aAAa,EAAE;IACjB,oBACER,KAAA,CAAA0B,aAAA,CAACtB,aAAa;MAACyB,KAAK,EAAE,CAACC,MAAM,CAACE,IAAI,EAAEF,MAAM,CAACC,UAAU,EAAEV,UAAU;IAAE,CAAE,CAAC;EAE1E;EAEA,OAAO,IAAI;AACb,CAAC;AAED,MAAMS,MAAM,GAAG3B,UAAU,CAAC8B,MAAM,CAAC;EAC/BD,IAAI,EAAE;IACJE,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV,CAAC;EACDJ,UAAU,EAAE;IACVK,WAAW,EAAE;EACf;AACF,CAAC,CAAC"}
1
+ {"version":3,"names":["React","useSelector","ActivityIndicator","StyleSheet","RecordingIcon","useHMSRoomColorPalette","useHMSRoomStyle","HMSRecordingIndicator","isRecordingOn","state","_state$hmsStates$room","hmsStates","room","browserRecordingState","running","startingOrStoppingRecording","_state$hmsStates$room2","app","initialising","on_surface_high","onSurfaceHighColor","iconStyles","theme","tintColor","palette","alert_error_default","createElement","size","color","style","styles","rightSpace","icon","create","width","height","marginRight"],"sourceRoot":"../../../src","sources":["components/HMSRecordingIndicator.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,WAAW,QAAQ,aAAa;AACzC,SAASC,iBAAiB,EAAEC,UAAU,QAAQ,cAAc;AAG5D,SAASC,aAAa,QAAQ,UAAU;AACxC,SAASC,sBAAsB,EAAEC,eAAe,QAAQ,eAAe;AAEvE,OAAO,MAAMC,qBAAqB,GAAGA,CAAA,KAAM;EACzC,MAAMC,aAAa,GAAGP,WAAW,CAC9BQ,KAAgB;IAAA,IAAAC,qBAAA;IAAA,OAAK,CAAC,GAAAA,qBAAA,GAACD,KAAK,CAACE,SAAS,CAACC,IAAI,cAAAF,qBAAA,gBAAAA,qBAAA,GAApBA,qBAAA,CAAsBG,qBAAqB,cAAAH,qBAAA,eAA3CA,qBAAA,CAA6CI,OAAO;EAAA,CAC9E,CAAC;EACD,MAAMC,2BAA2B,GAAGd,WAAW,CAC5CQ,KAAgB;IAAA,IAAAO,sBAAA;IAAA,OACfP,KAAK,CAACQ,GAAG,CAACF,2BAA2B,KACpC,EAAAC,sBAAA,GAAAP,KAAK,CAACE,SAAS,CAACC,IAAI,cAAAI,sBAAA,uBAApBA,sBAAA,CAAsBH,qBAAqB,CAACK,YAAY,KAAI,KAAK,CAAC;EAAA,CACvE,CAAC;EAED,MAAM;IAAEC,eAAe,EAAEC;EAAmB,CAAC,GAAGf,sBAAsB,CAAC,CAAC;EAExE,MAAMgB,UAAU,GAAGf,eAAe,CAAEgB,KAAK,KAAM;IAC7CC,SAAS,EAAED,KAAK,CAACE,OAAO,CAACC;EAC3B,CAAC,CAAC,CAAC;EAEH,IAAIV,2BAA2B,EAAE;IAC/B,oBACEf,KAAA,CAAA0B,aAAA,CAACxB,iBAAiB;MAChByB,IAAI,EAAE,OAAQ;MACdC,KAAK,EAAER,kBAAmB;MAC1BS,KAAK,EAAEC,MAAM,CAACC;IAAW,CAC1B,CAAC;EAEN;EAEA,IAAIvB,aAAa,EAAE;IACjB,oBACER,KAAA,CAAA0B,aAAA,CAACtB,aAAa;MAACyB,KAAK,EAAE,CAACC,MAAM,CAACE,IAAI,EAAEF,MAAM,CAACC,UAAU,EAAEV,UAAU;IAAE,CAAE,CAAC;EAE1E;EAEA,OAAO,IAAI;AACb,CAAC;AAED,MAAMS,MAAM,GAAG3B,UAAU,CAAC8B,MAAM,CAAC;EAC/BD,IAAI,EAAE;IACJE,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV,CAAC;EACDJ,UAAU,EAAE;IACVK,WAAW,EAAE;EACf;AACF,CAAC,CAAC"}
@@ -0,0 +1,57 @@
1
+ import * as React from 'react';
2
+ import { StyleSheet, Text, TouchableOpacity } from 'react-native';
3
+ import { HMSNotification } from './HMSNotification';
4
+ import { AlertTriangleIcon } from '../Icons';
5
+ import { useHMSRoomStyleSheet, useLeaveMethods } from '../hooks-util';
6
+ import { OnLeaveReason } from '../utils/types';
7
+ import { COLORS } from '../utils/theme';
8
+ export const HMSTerminalErrorNotification = _ref => {
9
+ let {
10
+ id,
11
+ exception,
12
+ autoDismiss,
13
+ dismissDelay
14
+ } = _ref;
15
+ const {
16
+ leave
17
+ } = useLeaveMethods();
18
+ const hmsRoomStyles = useHMSRoomStyleSheet((theme, typography) => ({
19
+ button: {
20
+ backgroundColor: theme.palette.alert_error_default
21
+ },
22
+ buttonText: {
23
+ color: COLORS.WHITE,
24
+ fontFamily: `${typography.font_family}-SemiBold`
25
+ }
26
+ }));
27
+ const handleLeaveRoomPress = () => {
28
+ leave(OnLeaveReason.NETWORK_ISSUES);
29
+ };
30
+ return /*#__PURE__*/React.createElement(HMSNotification, {
31
+ id: id,
32
+ icon: /*#__PURE__*/React.createElement(AlertTriangleIcon, null),
33
+ text: exception.description || 'Something went wrong!',
34
+ dismissDelay: dismissDelay,
35
+ autoDismiss: autoDismiss,
36
+ cta: /*#__PURE__*/React.createElement(TouchableOpacity, {
37
+ style: [styles.button, hmsRoomStyles.button],
38
+ onPress: handleLeaveRoomPress
39
+ }, /*#__PURE__*/React.createElement(Text, {
40
+ style: [styles.buttonText, hmsRoomStyles.buttonText]
41
+ }, "Leave"))
42
+ });
43
+ };
44
+ const styles = StyleSheet.create({
45
+ button: {
46
+ paddingVertical: 8,
47
+ paddingHorizontal: 16,
48
+ borderRadius: 8,
49
+ marginRight: 16
50
+ },
51
+ buttonText: {
52
+ fontSize: 14,
53
+ lineHeight: 20,
54
+ letterSpacing: 0.25
55
+ }
56
+ });
57
+ //# sourceMappingURL=HMSTerminalErrorNotification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","StyleSheet","Text","TouchableOpacity","HMSNotification","AlertTriangleIcon","useHMSRoomStyleSheet","useLeaveMethods","OnLeaveReason","COLORS","HMSTerminalErrorNotification","_ref","id","exception","autoDismiss","dismissDelay","leave","hmsRoomStyles","theme","typography","button","backgroundColor","palette","alert_error_default","buttonText","color","WHITE","fontFamily","font_family","handleLeaveRoomPress","NETWORK_ISSUES","createElement","icon","text","description","cta","style","styles","onPress","create","paddingVertical","paddingHorizontal","borderRadius","marginRight","fontSize","lineHeight","letterSpacing"],"sourceRoot":"../../../src","sources":["components/HMSTerminalErrorNotification.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAASC,UAAU,EAAEC,IAAI,EAAEC,gBAAgB,QAAQ,cAAc;AAEjE,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,iBAAiB,QAAQ,UAAU;AAC5C,SAASC,oBAAoB,EAAEC,eAAe,QAAQ,eAAe;AACrE,SAASC,aAAa,QAAQ,gBAAgB;AAC9C,SAASC,MAAM,QAAQ,gBAAgB;AASvC,OAAO,MAAMC,4BAEZ,GAAGC,IAAA,IAAkD;EAAA,IAAjD;IAAEC,EAAE;IAAEC,SAAS;IAAEC,WAAW;IAAEC;EAAa,CAAC,GAAAJ,IAAA;EAC/C,MAAM;IAAEK;EAAM,CAAC,GAAGT,eAAe,CAAC,CAAC;EAEnC,MAAMU,aAAa,GAAGX,oBAAoB,CAAC,CAACY,KAAK,EAAEC,UAAU,MAAM;IACjEC,MAAM,EAAE;MACNC,eAAe,EAAEH,KAAK,CAACI,OAAO,CAACC;IACjC,CAAC;IACDC,UAAU,EAAE;MACVC,KAAK,EAAEhB,MAAM,CAACiB,KAAK;MACnBC,UAAU,EAAG,GAAER,UAAU,CAACS,WAAY;IACxC;EACF,CAAC,CAAC,CAAC;EAEH,MAAMC,oBAAoB,GAAGA,CAAA,KAAM;IACjCb,KAAK,CAACR,aAAa,CAACsB,cAAc,CAAC;EACrC,CAAC;EAED,oBACE9B,KAAA,CAAA+B,aAAA,CAAC3B,eAAe;IACdQ,EAAE,EAAEA,EAAG;IACPoB,IAAI,eAAEhC,KAAA,CAAA+B,aAAA,CAAC1B,iBAAiB,MAAE,CAAE;IAC5B4B,IAAI,EAAEpB,SAAS,CAACqB,WAAW,IAAI,uBAAwB;IACvDnB,YAAY,EAAEA,YAAa;IAC3BD,WAAW,EAAEA,WAAY;IACzBqB,GAAG,eACDnC,KAAA,CAAA+B,aAAA,CAAC5B,gBAAgB;MACfiC,KAAK,EAAE,CAACC,MAAM,CAACjB,MAAM,EAAEH,aAAa,CAACG,MAAM,CAAE;MAC7CkB,OAAO,EAAET;IAAqB,gBAE9B7B,KAAA,CAAA+B,aAAA,CAAC7B,IAAI;MAACkC,KAAK,EAAE,CAACC,MAAM,CAACb,UAAU,EAAEP,aAAa,CAACO,UAAU;IAAE,GAAC,OAEtD,CACU;EAClB,CACH,CAAC;AAEN,CAAC;AAED,MAAMa,MAAM,GAAGpC,UAAU,CAACsC,MAAM,CAAC;EAC/BnB,MAAM,EAAE;IACNoB,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE,EAAE;IACrBC,YAAY,EAAE,CAAC;IACfC,WAAW,EAAE;EACf,CAAC;EACDnB,UAAU,EAAE;IACVoB,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,EAAE;IACdC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC"}
@@ -0,0 +1,167 @@
1
+ import * as React from 'react';
2
+ import { StyleSheet, Text, TouchableOpacity, View } from 'react-native';
3
+ import { useSelector } from 'react-redux';
4
+ import { LeaveIcon } from '../Icons';
5
+ import { useHMSRoomStyleSheet, useLeaveMethods, useModalType } from '../hooks-util';
6
+ import { BottomSheet } from './BottomSheet';
7
+ import { StopIcon } from '../Icons';
8
+ import { ModalTypes, OnLeaveReason } from '../utils/types';
9
+
10
+ // const HEADER_CONTENT_HEIGHT = 24 + 8 + 8 + 2; // ICON_SIZE + TOP_PADDING + BOTTOM_PADDING + TOP&BOTTOM_BORDER_WIDTH
11
+ // const HEADER_HEIGHT = 8 + HEADER_CONTENT_HEIGHT + 8; // TOP_HEADER_PADDING + HEADER_CONTENT_HEIGHT + BOTTOM_HEADER_PADDING
12
+ export const LeaveRoomBottomSheet = () => {
13
+ const canEndRoom = useSelector(state => {
14
+ var _state$hmsStates$loca;
15
+ return (_state$hmsStates$loca = state.hmsStates.localPeer) === null || _state$hmsStates$loca === void 0 || (_state$hmsStates$loca = _state$hmsStates$loca.role) === null || _state$hmsStates$loca === void 0 || (_state$hmsStates$loca = _state$hmsStates$loca.permissions) === null || _state$hmsStates$loca === void 0 ? void 0 : _state$hmsStates$loca.endRoom;
16
+ });
17
+ const canStream = useSelector(state => {
18
+ var _state$hmsStates$loca2;
19
+ return (_state$hmsStates$loca2 = state.hmsStates.localPeer) === null || _state$hmsStates$loca2 === void 0 || (_state$hmsStates$loca2 = _state$hmsStates$loca2.role) === null || _state$hmsStates$loca2 === void 0 || (_state$hmsStates$loca2 = _state$hmsStates$loca2.permissions) === null || _state$hmsStates$loca2 === void 0 ? void 0 : _state$hmsStates$loca2.hlsStreaming;
20
+ });
21
+ const isStreaming = useSelector(state => {
22
+ var _state$hmsStates$room;
23
+ return ((_state$hmsStates$room = state.hmsStates.room) === null || _state$hmsStates$room === void 0 || (_state$hmsStates$room = _state$hmsStates$room.hlsStreamingState) === null || _state$hmsStates$room === void 0 ? void 0 : _state$hmsStates$room.running) ?? false;
24
+ });
25
+ const hmsRoomStyles = useHMSRoomStyleSheet((theme, typography) => ({
26
+ text: {
27
+ color: theme.palette.on_surface_high,
28
+ fontFamily: `${typography.font_family}-SemiBold`
29
+ },
30
+ subtext: {
31
+ color: theme.palette.on_surface_low,
32
+ fontFamily: `${typography.font_family}-Regular`
33
+ },
34
+ endButton: {
35
+ backgroundColor: theme.palette.alert_error_dim
36
+ },
37
+ endText: {
38
+ color: theme.palette.alert_error_brighter,
39
+ fontFamily: `${typography.font_family}-SemiBold`
40
+ },
41
+ endSubtext: {
42
+ color: theme.palette.alert_error_bright,
43
+ fontFamily: `${typography.font_family}-Regular`
44
+ },
45
+ endIcon: {
46
+ tintColor: theme.palette.alert_error_brighter
47
+ }
48
+ }));
49
+ const leavePopCloseAction = React.useRef(ModalTypes.DEFAULT);
50
+ const {
51
+ modalVisibleType,
52
+ handleModalVisibleType
53
+ } = useModalType();
54
+ const {
55
+ leave
56
+ } = useLeaveMethods();
57
+
58
+ /**
59
+ * Closes the Leave Popup Menu
60
+ * No action is taken when the popup is hidden
61
+ */
62
+ const onPopupDismiss = () => {
63
+ leavePopCloseAction.current = ModalTypes.DEFAULT;
64
+ handleModalVisibleType(ModalTypes.DEFAULT);
65
+ };
66
+
67
+ /**
68
+ * Closes the Leave Popup Menu
69
+ * Leave Modal will open after the popup is hidden
70
+ */
71
+ const onLeavePress = async () => {
72
+ leavePopCloseAction.current = ModalTypes.DEFAULT;
73
+ handleModalVisibleType(ModalTypes.DEFAULT);
74
+ await leave(OnLeaveReason.LEAVE);
75
+ };
76
+
77
+ /**
78
+ * Closes the Leave Popup Menu
79
+ * End Session Modal will open after the popup is hidden
80
+ */
81
+ const onEndSessionPress = async () => {
82
+ leavePopCloseAction.current = ModalTypes.END_ROOM;
83
+ handleModalVisibleType(ModalTypes.DEFAULT);
84
+ };
85
+ const onEndStreamPress = async () => {
86
+ leavePopCloseAction.current = ModalTypes.END_ROOM;
87
+ handleModalVisibleType(ModalTypes.DEFAULT);
88
+ };
89
+
90
+ /**
91
+ * Handles action to take when the leave popup is hidden
92
+ */
93
+ const handlePopupHide = () => {
94
+ if (leavePopCloseAction.current !== ModalTypes.DEFAULT) {
95
+ handleModalVisibleType(leavePopCloseAction.current);
96
+ }
97
+ };
98
+ return /*#__PURE__*/React.createElement(BottomSheet, {
99
+ isVisible: modalVisibleType === ModalTypes.LEAVE_ROOM,
100
+ containerStyle: styles.container,
101
+ dismissModal: onPopupDismiss,
102
+ onModalHide: handlePopupHide,
103
+ animationOutTiming: 700
104
+ }, /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(TouchableOpacity, {
105
+ style: styles.button,
106
+ onPress: onLeavePress
107
+ }, /*#__PURE__*/React.createElement(LeaveIcon, {
108
+ style: styles.icon
109
+ }), /*#__PURE__*/React.createElement(View, {
110
+ style: styles.textContainer
111
+ }, /*#__PURE__*/React.createElement(Text, {
112
+ style: [styles.text, hmsRoomStyles.text]
113
+ }, "Leave"), /*#__PURE__*/React.createElement(Text, {
114
+ style: [styles.subtext, hmsRoomStyles.subtext]
115
+ }, "Others will continue after you leave. You can join the session again."))), canStream && isStreaming ? /*#__PURE__*/React.createElement(TouchableOpacity, {
116
+ style: [styles.button, hmsRoomStyles.endButton],
117
+ onPress: onEndStreamPress
118
+ }, /*#__PURE__*/React.createElement(StopIcon, {
119
+ style: [styles.icon, hmsRoomStyles.endIcon]
120
+ }), /*#__PURE__*/React.createElement(View, {
121
+ style: styles.textContainer
122
+ }, /*#__PURE__*/React.createElement(Text, {
123
+ style: [styles.text, hmsRoomStyles.endText]
124
+ }, "End Stream"), /*#__PURE__*/React.createElement(Text, {
125
+ style: [styles.subtext, hmsRoomStyles.endSubtext]
126
+ }, "The stream will end for everyone after they\u2019ve watched it."))) : canEndRoom ? /*#__PURE__*/React.createElement(TouchableOpacity, {
127
+ style: [styles.button, hmsRoomStyles.endButton],
128
+ onPress: onEndSessionPress
129
+ }, /*#__PURE__*/React.createElement(StopIcon, {
130
+ style: [styles.icon, hmsRoomStyles.endIcon]
131
+ }), /*#__PURE__*/React.createElement(View, {
132
+ style: styles.textContainer
133
+ }, /*#__PURE__*/React.createElement(Text, {
134
+ style: [styles.text, hmsRoomStyles.endText]
135
+ }, "End Session"), /*#__PURE__*/React.createElement(Text, {
136
+ style: [styles.subtext, hmsRoomStyles.endSubtext]
137
+ }, "The session will end for everyone in the room immediately."))) : null));
138
+ };
139
+ const styles = StyleSheet.create({
140
+ container: {
141
+ paddingBottom: 0
142
+ },
143
+ button: {
144
+ flexDirection: 'row',
145
+ padding: 24
146
+ },
147
+ icon: {
148
+ width: 24,
149
+ height: 24,
150
+ marginRight: 16
151
+ },
152
+ textContainer: {
153
+ flex: 1
154
+ },
155
+ text: {
156
+ fontSize: 20,
157
+ lineHeight: 24,
158
+ letterSpacing: 0.15
159
+ },
160
+ subtext: {
161
+ fontSize: 14,
162
+ lineHeight: 20,
163
+ letterSpacing: 0.25,
164
+ marginTop: 4
165
+ }
166
+ });
167
+ //# sourceMappingURL=LeaveRoomBottomSheet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","StyleSheet","Text","TouchableOpacity","View","useSelector","LeaveIcon","useHMSRoomStyleSheet","useLeaveMethods","useModalType","BottomSheet","StopIcon","ModalTypes","OnLeaveReason","LeaveRoomBottomSheet","canEndRoom","state","_state$hmsStates$loca","hmsStates","localPeer","role","permissions","endRoom","canStream","_state$hmsStates$loca2","hlsStreaming","isStreaming","_state$hmsStates$room","room","hlsStreamingState","running","hmsRoomStyles","theme","typography","text","color","palette","on_surface_high","fontFamily","font_family","subtext","on_surface_low","endButton","backgroundColor","alert_error_dim","endText","alert_error_brighter","endSubtext","alert_error_bright","endIcon","tintColor","leavePopCloseAction","useRef","DEFAULT","modalVisibleType","handleModalVisibleType","leave","onPopupDismiss","current","onLeavePress","LEAVE","onEndSessionPress","END_ROOM","onEndStreamPress","handlePopupHide","createElement","isVisible","LEAVE_ROOM","containerStyle","styles","container","dismissModal","onModalHide","animationOutTiming","style","button","onPress","icon","textContainer","create","paddingBottom","flexDirection","padding","width","height","marginRight","flex","fontSize","lineHeight","letterSpacing","marginTop"],"sourceRoot":"../../../src","sources":["components/LeaveRoomBottomSheet.tsx"],"mappings":"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"}
@@ -3,7 +3,7 @@ import { StyleSheet, View } from 'react-native';
3
3
  import { useSelector } from 'react-redux';
4
4
  import { SafeAreaView } from 'react-native-safe-area-context';
5
5
  import { useRTCStatsListeners } from '../utils/hooks';
6
- import { clearPendingModalTasks, useFetchHMSRoles, useHMSMessages, useHMSNetworkQualityUpdate, useHMSPIPRoomLeave, useHMSReconnection, useHMSRemovedFromRoomUpdate, useHMSRoomStyle, useIsHLSViewer, usePIPListener } from '../hooks-util';
6
+ import { clearPendingModalTasks, useAutoPip, useBackButtonPress, useFetchHMSRoles, useHMSMessages, useHMSNetworkQualityUpdate, useHMSPIPRoomLeave, useHMSReconnection, useHMSRemovedFromRoomUpdate, useHMSRoomStyle, useIsHLSViewer, usePIPListener } from '../hooks-util';
7
7
  import { MeetingScreenContent } from './MeetingScreenContent';
8
8
  import { HMSHLSStreamLoading } from './HMSHLSStreamLoading';
9
9
  export const Meeting = _ref => {
@@ -31,6 +31,10 @@ export const Meeting = _ref => {
31
31
 
32
32
  // Subscribe to Peers Network quality updates
33
33
  useHMSNetworkQualityUpdate();
34
+ useAutoPip(peerTrackNodes.length === 1);
35
+
36
+ // Handle Back button press and show leave room modal
37
+ useBackButtonPress();
34
38
 
35
39
  // Clearing any pending modal opening tasks
36
40
  React.useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","View","useSelector","SafeAreaView","useRTCStatsListeners","clearPendingModalTasks","useFetchHMSRoles","useHMSMessages","useHMSNetworkQualityUpdate","useHMSPIPRoomLeave","useHMSReconnection","useHMSRemovedFromRoomUpdate","useHMSRoomStyle","useIsHLSViewer","usePIPListener","MeetingScreenContent","HMSHLSStreamLoading","Meeting","_ref","peerTrackNodes","startingHLSStream","state","app","isHLSViewer","useEffect","containerStyles","theme","backgroundColor","palette","background_dim","createElement","Container","style","styles","container","edges","create","flex","flexDirection"],"sourceRoot":"../../../src","sources":["components/Meeting.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,WAAW,QAAQ,aAAa;AACzC,SAASC,YAAY,QAAQ,gCAAgC;AAG7D,SAASC,oBAAoB,QAAQ,gBAAgB;AACrD,SACEC,sBAAsB,EACtBC,gBAAgB,EAChBC,cAAc,EACdC,0BAA0B,EAC1BC,kBAAkB,EAClBC,kBAAkB,EAClBC,2BAA2B,EAC3BC,eAAe,EACfC,cAAc,EACdC,cAAc,QACT,eAAe;AACtB,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,mBAAmB,QAAQ,uBAAuB;AAO3D,OAAO,MAAMC,OAA+B,GAAGC,IAAA,IAAwB;EAAA,IAAvB;IAAEC;EAAe,CAAC,GAAAD,IAAA;EAChE,MAAME,iBAAiB,GAAGlB,WAAW,CAClCmB,KAAgB,IAAKA,KAAK,CAACC,GAAG,CAACF,iBAClC,CAAC;EAED,MAAMG,WAAW,GAAGV,cAAc,CAAC,CAAC;;EAEpC;;EAEAP,gBAAgB,CAAC,CAAC;EAElBC,cAAc,CAAC,CAAC;EAEhBG,kBAAkB,CAAC,CAAC;EAEpBC,2BAA2B,CAAC,CAAC;;EAE7B;EACAF,kBAAkB,CAAC,CAAC;;EAEpB;EACAK,cAAc,CAAC,CAAC;;EAEhB;EACAV,oBAAoB,CAAC,CAAC;;EAEtB;EACAI,0BAA0B,CAAC,CAAC;;EAE5B;EACAT,KAAK,CAACyB,SAAS,CAAC,MAAM;IACpB,OAAO,MAAM;MACXnB,sBAAsB,CAAC,CAAC;IAC1B,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMoB,eAAe,GAAGb,eAAe,CAAEc,KAAK,KAAM;IAClDC,eAAe,EAAED,KAAK,CAACE,OAAO,CAACC;EACjC,CAAC,CAAC,CAAC;EAEH,IAAIT,iBAAiB,EAAE;IACrB,oBAAOrB,KAAA,CAAA+B,aAAA,CAACd,mBAAmB,MAAE,CAAC;EAChC;EAEA,MAAMe,SAAS,GAAGR,WAAW,GAAGtB,IAAI,GAAGE,YAAY;;EAEnD;AACF;AACA;AACA;AACA;AACA;EACE,oBACEJ,KAAA,CAAA+B,aAAA,CAACC,SAAS;IACRC,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAET,eAAe,CAAE;IAC3CU,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO;EAAE,gBAEzBpC,KAAA,CAAA+B,aAAA,CAACf,oBAAoB;IAACI,cAAc,EAAEA;EAAe,CAAE,CAG9C,CAAC;AAEhB,CAAC;AAED,MAAMc,MAAM,GAAGjC,UAAU,CAACoC,MAAM,CAAC;EAC/BF,SAAS,EAAE;IACTG,IAAI,EAAE,CAAC;IACPC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC"}
1
+ {"version":3,"names":["React","StyleSheet","View","useSelector","SafeAreaView","useRTCStatsListeners","clearPendingModalTasks","useAutoPip","useBackButtonPress","useFetchHMSRoles","useHMSMessages","useHMSNetworkQualityUpdate","useHMSPIPRoomLeave","useHMSReconnection","useHMSRemovedFromRoomUpdate","useHMSRoomStyle","useIsHLSViewer","usePIPListener","MeetingScreenContent","HMSHLSStreamLoading","Meeting","_ref","peerTrackNodes","startingHLSStream","state","app","isHLSViewer","length","useEffect","containerStyles","theme","backgroundColor","palette","background_dim","createElement","Container","style","styles","container","edges","create","flex","flexDirection"],"sourceRoot":"../../../src","sources":["components/Meeting.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,WAAW,QAAQ,aAAa;AACzC,SAASC,YAAY,QAAQ,gCAAgC;AAG7D,SAASC,oBAAoB,QAAQ,gBAAgB;AACrD,SACEC,sBAAsB,EACtBC,UAAU,EACVC,kBAAkB,EAClBC,gBAAgB,EAChBC,cAAc,EACdC,0BAA0B,EAC1BC,kBAAkB,EAClBC,kBAAkB,EAClBC,2BAA2B,EAC3BC,eAAe,EACfC,cAAc,EACdC,cAAc,QACT,eAAe;AACtB,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,mBAAmB,QAAQ,uBAAuB;AAO3D,OAAO,MAAMC,OAA+B,GAAGC,IAAA,IAAwB;EAAA,IAAvB;IAAEC;EAAe,CAAC,GAAAD,IAAA;EAChE,MAAME,iBAAiB,GAAGpB,WAAW,CAClCqB,KAAgB,IAAKA,KAAK,CAACC,GAAG,CAACF,iBAClC,CAAC;EAED,MAAMG,WAAW,GAAGV,cAAc,CAAC,CAAC;;EAEpC;;EAEAP,gBAAgB,CAAC,CAAC;EAElBC,cAAc,CAAC,CAAC;EAEhBG,kBAAkB,CAAC,CAAC;EAEpBC,2BAA2B,CAAC,CAAC;;EAE7B;EACAF,kBAAkB,CAAC,CAAC;;EAEpB;EACAK,cAAc,CAAC,CAAC;;EAEhB;EACAZ,oBAAoB,CAAC,CAAC;;EAEtB;EACAM,0BAA0B,CAAC,CAAC;EAE5BJ,UAAU,CAACe,cAAc,CAACK,MAAM,KAAK,CAAC,CAAC;;EAEvC;EACAnB,kBAAkB,CAAC,CAAC;;EAEpB;EACAR,KAAK,CAAC4B,SAAS,CAAC,MAAM;IACpB,OAAO,MAAM;MACXtB,sBAAsB,CAAC,CAAC;IAC1B,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMuB,eAAe,GAAGd,eAAe,CAAEe,KAAK,KAAM;IAClDC,eAAe,EAAED,KAAK,CAACE,OAAO,CAACC;EACjC,CAAC,CAAC,CAAC;EAEH,IAAIV,iBAAiB,EAAE;IACrB,oBAAOvB,KAAA,CAAAkC,aAAA,CAACf,mBAAmB,MAAE,CAAC;EAChC;EAEA,MAAMgB,SAAS,GAAGT,WAAW,GAAGxB,IAAI,GAAGE,YAAY;;EAEnD;AACF;AACA;AACA;AACA;AACA;EACE,oBACEJ,KAAA,CAAAkC,aAAA,CAACC,SAAS;IACRC,KAAK,EAAE,CAACC,MAAM,CAACC,SAAS,EAAET,eAAe,CAAE;IAC3CU,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO;EAAE,gBAEzBvC,KAAA,CAAAkC,aAAA,CAAChB,oBAAoB;IAACI,cAAc,EAAEA;EAAe,CAAE,CAG9C,CAAC;AAEhB,CAAC;AAED,MAAMe,MAAM,GAAGpC,UAAU,CAACuC,MAAM,CAAC;EAC/BF,SAAS,EAAE;IACTG,IAAI,EAAE,CAAC;IACPC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC"}
@@ -11,7 +11,8 @@ import { HMSStatusBar } from './StatusBar';
11
11
  import { AnimatedFooter } from './AnimatedFooter';
12
12
  import { HLSFooter } from './HLSFooter';
13
13
  import { AnimatedHeader } from './AnimatedHeader';
14
- import { ReconnectionView } from './ReconnectionView';
14
+ // import { ReconnectionView } from './ReconnectionView';
15
+
15
16
  export const MeetingScreenContent = _ref => {
16
17
  let {
17
18
  peerTrackNodes
@@ -82,7 +83,7 @@ export const MeetingScreenContent = _ref => {
82
83
  })), /*#__PURE__*/React.createElement(DisplayView, {
83
84
  offset: offset,
84
85
  peerTrackNodes: peerTrackNodes
85
- }), /*#__PURE__*/React.createElement(ReconnectionView, null)), isPipModeActive ? null : isHLSViewer ? /*#__PURE__*/React.createElement(HLSFooter, {
86
+ })), isPipModeActive ? null : isHLSViewer ? /*#__PURE__*/React.createElement(HLSFooter, {
86
87
  offset: offset
87
88
  }) : /*#__PURE__*/React.createElement(AnimatedFooter, {
88
89
  offset: offset
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useRef","useState","StyleSheet","Pressable","View","useSelector","Easing","cancelAnimation","runOnJS","useSharedValue","withTiming","PipModes","Footer","DisplayView","Header","useIsHLSViewer","HMSStatusBar","AnimatedFooter","HLSFooter","AnimatedHeader","ReconnectionView","MeetingScreenContent","_ref","peerTrackNodes","offset","isHLSViewer","timerIdRef","controlsHidden","setControlsHidden","isPipModeActive","state","app","pipModeStatus","ACTIVE","toggleControls","current","clearTimeout","value","duration","easing","ease","finished","createElement","onPress","style","styles","container","disabled","hidden","barStyle","reconnectionWrapper","transparent","showControls","create","flex","position","takeLessSpaceAsItCan"],"sourceRoot":"../../../src","sources":["components/MeetingScreenContent.tsx"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAC5D,SAASC,UAAU,EAAEC,SAAS,EAAEC,IAAI,QAAQ,cAAc;AAC1D,SAASC,WAAW,QAAQ,aAAa;AACzC,SACEC,MAAM,EACNC,eAAe,EACfC,OAAO,EACPC,cAAc,EACdC,UAAU,QACL,yBAAyB;AAEhC,SAASC,QAAQ,QAAQ,gBAAgB;AAGzC,SAASC,MAAM,QAAQ,UAAU;AACjC,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,MAAM,QAAQ,UAAU;AACjC,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,YAAY,QAAQ,aAAa;AAC1C,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,gBAAgB,QAAQ,oBAAoB;AAMrD,OAAO,MAAMC,oBAAyD,GAAGC,IAAA,IAEnE;EAAA,IAFoE;IACxEC;EACF,CAAC,GAAAD,IAAA;EACC,MAAME,MAAM,GAAGf,cAAc,CAAC,CAAC,CAAC;EAChC,MAAMgB,WAAW,GAAGV,cAAc,CAAC,CAAC;EACpC,MAAMW,UAAU,GAAG1B,MAAM,CAAwB,IAAI,CAAC;EACtD,MAAM,CAAC2B,cAAc,EAAEC,iBAAiB,CAAC,GAAG3B,QAAQ,CAAC,KAAK,CAAC;EAC3D,MAAM4B,eAAe,GAAGxB,WAAW,CAChCyB,KAAgB,IAAKA,KAAK,CAACC,GAAG,CAACC,aAAa,KAAKrB,QAAQ,CAACsB,MAC7D,CAAC;EAED,MAAMC,cAAc,GAAGnC,WAAW,CAAC,MAAM;IACvC,SAAS;;IACT,IAAI2B,UAAU,CAACS,OAAO,EAAE;MACtBC,YAAY,CAACV,UAAU,CAACS,OAAO,CAAC;MAChCT,UAAU,CAACS,OAAO,GAAG,IAAI;IAC3B;IACA5B,eAAe,CAACiB,MAAM,CAAC;IACvBA,MAAM,CAACa,KAAK,GAAG3B,UAAU,CACvBc,MAAM,CAACa,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAC1B;MAAEC,QAAQ,EAAE,GAAG;MAAEC,MAAM,EAAEjC,MAAM,CAACkC;IAAK,CAAC,EACrCC,QAAQ,IAAK;MACZ,IAAIA,QAAQ,EAAE;QACZjC,OAAO,CAACoB,iBAAiB,CAAC,CAACJ,MAAM,CAACa,KAAK,KAAK,CAAC,CAAC;MAChD;IACF,CACF,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;AACF;AACA;AACA;AACA;AACA;EACE,oBACEvC,KAAA,CAAA4C,aAAA,CAACvC,SAAS;IACRwC,OAAO,EAAET,cAAe;IACxBU,KAAK,EAAEC,MAAM,CAACC,SAAU;IACxBC,QAAQ,EAAEtB,WAAW,IAAI;EAAK,gBAE9B3B,KAAA,CAAA4C,aAAA,CAAC1B,YAAY;IAACgC,MAAM,EAAErB,cAAe;IAACsB,QAAQ,EAAE;EAAgB,CAAE,CAAC,eAEnEnD,KAAA,CAAA4C,aAAA,CAACtC,IAAI;IAACwC,KAAK,EAAEC,MAAM,CAACK;EAAoB,GACrCrB,eAAe,GAAG,IAAI,gBACrB/B,KAAA,CAAA4C,aAAA,CAACvB,cAAc;IAACK,MAAM,EAAEA;EAAO,gBAC7B1B,KAAA,CAAA4C,aAAA,CAAC5B,MAAM;IAACqC,WAAW,EAAE1B,WAAY;IAAC2B,YAAY,EAAE,CAAC3B;EAAY,CAAE,CACjD,CACjB,eAED3B,KAAA,CAAA4C,aAAA,CAAC7B,WAAW;IAACW,MAAM,EAAEA,MAAO;IAACD,cAAc,EAAEA;EAAe,CAAE,CAAC,eAE/DzB,KAAA,CAAA4C,aAAA,CAACtB,gBAAgB,MAAE,CACf,CAAC,EAENS,eAAe,GAAG,IAAI,GAAGJ,WAAW,gBACnC3B,KAAA,CAAA4C,aAAA,CAACxB,SAAS;IAACM,MAAM,EAAEA;EAAO,CAAE,CAAC,gBAE7B1B,KAAA,CAAA4C,aAAA,CAACzB,cAAc;IAACO,MAAM,EAAEA;EAAO,gBAC7B1B,KAAA,CAAA4C,aAAA,CAAC9B,MAAM,MAAE,CACK,CAET,CAAC;AAEhB,CAAC;AAED,MAAMiC,MAAM,GAAG3C,UAAU,CAACmD,MAAM,CAAC;EAC/BP,SAAS,EAAE;IACTQ,IAAI,EAAE,CAAC;IACPC,QAAQ,EAAE;EACZ,CAAC;EACDC,oBAAoB,EAAE;IACpBF,IAAI,EAAE;EACR,CAAC;EACDJ,mBAAmB,EAAE;IACnBI,IAAI,EAAE;EACR;AACF,CAAC,CAAC"}
1
+ {"version":3,"names":["React","useCallback","useRef","useState","StyleSheet","Pressable","View","useSelector","Easing","cancelAnimation","runOnJS","useSharedValue","withTiming","PipModes","Footer","DisplayView","Header","useIsHLSViewer","HMSStatusBar","AnimatedFooter","HLSFooter","AnimatedHeader","MeetingScreenContent","_ref","peerTrackNodes","offset","isHLSViewer","timerIdRef","controlsHidden","setControlsHidden","isPipModeActive","state","app","pipModeStatus","ACTIVE","toggleControls","current","clearTimeout","value","duration","easing","ease","finished","createElement","onPress","style","styles","container","disabled","hidden","barStyle","reconnectionWrapper","transparent","showControls","create","flex","position","takeLessSpaceAsItCan"],"sourceRoot":"../../../src","sources":["components/MeetingScreenContent.tsx"],"mappings":"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"}
@@ -1,31 +1,96 @@
1
1
  import * as React from 'react';
2
- import { useSelector } from 'react-redux';
2
+ import { shallowEqual, useSelector } from 'react-redux';
3
+ import { View } from 'react-native';
3
4
  import { PeerVideoTileView } from './PeerVideoTile/PeerVideoTileView';
5
+ import { COLORS } from '../utils/theme';
4
6
  const PIPView = _ref => {
5
7
  let {
6
8
  peerTrackNodes,
7
9
  customView
8
10
  } = _ref;
9
- const memoDominantSpeakerIdRef = React.useRef(null);
10
- const dominantSpeakerId = useSelector(state => {
11
- const dominantSpeaker = state.hmsStates.activeSpeakers[0];
12
- return (dominantSpeaker === null || dominantSpeaker === void 0 ? void 0 : dominantSpeaker.peer.peerID) ?? null;
13
- });
14
- if (dominantSpeakerId) {
15
- memoDominantSpeakerIdRef.current = dominantSpeakerId;
16
- }
11
+ const firstSSNode = useSelector(state => state.app.screensharePeerTrackNodes[0]);
17
12
  if (customView) {
18
13
  return customView;
19
14
  }
20
- const firstPeerTrackNode = peerTrackNodes[0];
21
- const preferedPeerTrack = (memoDominantSpeakerIdRef.current ? peerTrackNodes.find(node => node.peer.peerID === memoDominantSpeakerIdRef.current) : firstPeerTrackNode) ?? firstPeerTrackNode;
22
- if (!preferedPeerTrack) {
23
- return null;
15
+ if (firstSSNode) {
16
+ return /*#__PURE__*/React.createElement(PeerVideoTileView, {
17
+ key: firstSSNode.id,
18
+ peerTrackNode: firstSSNode
19
+ });
24
20
  }
25
- return /*#__PURE__*/React.createElement(PeerVideoTileView, {
26
- key: preferedPeerTrack.id,
27
- peerTrackNode: preferedPeerTrack
21
+ return /*#__PURE__*/React.createElement(PIPPeerTiles, {
22
+ peerTrackNodes: peerTrackNodes
28
23
  });
29
24
  };
30
25
  export default PIPView;
26
+ const PIPPeerTiles = _ref2 => {
27
+ let {
28
+ peerTrackNodes
29
+ } = _ref2;
30
+ const memoDominantSpeakerIdsRef = React.useRef([]);
31
+ const dominantSpeakerIds = useSelector(state => {
32
+ return state.hmsStates.activeSpeakers.slice(0, 3).map(speaker => speaker.peer.peerID);
33
+ }, shallowEqual);
34
+ if (dominantSpeakerIds.length > 0 && anyNewDominantSpeaker(memoDominantSpeakerIdsRef.current, dominantSpeakerIds)) {
35
+ memoDominantSpeakerIdsRef.current = dominantSpeakerIds;
36
+ }
37
+ const preferredPeerTrackNodes = React.useMemo(() => {
38
+ return getDominantSpeakers(memoDominantSpeakerIdsRef.current, peerTrackNodes);
39
+ }, [memoDominantSpeakerIdsRef.current, peerTrackNodes]);
40
+ if (preferredPeerTrackNodes.length === 0) {
41
+ return null;
42
+ }
43
+ return /*#__PURE__*/React.createElement(View, {
44
+ style: {
45
+ flex: 1,
46
+ flexDirection: 'row',
47
+ backgroundColor: COLORS.BLACK
48
+ }
49
+ }, preferredPeerTrackNodes.map((node, index, arr) => {
50
+ const isFirst = index === 0;
51
+ const dividerWidth = arr.length > 2 ? 4 : 5;
52
+ return /*#__PURE__*/React.createElement(React.Fragment, {
53
+ key: node.id
54
+ }, isFirst ? null : /*#__PURE__*/React.createElement(View, {
55
+ style: {
56
+ height: '100%',
57
+ width: dividerWidth
58
+ }
59
+ }), /*#__PURE__*/React.createElement(View, {
60
+ style: {
61
+ flex: 1
62
+ }
63
+ }, /*#__PURE__*/React.createElement(PeerVideoTileView, {
64
+ peerTrackNode: node
65
+ })));
66
+ }));
67
+ };
68
+ function anyNewDominantSpeaker(oldSpeakers, newSpeakers) {
69
+ if (newSpeakers.length !== oldSpeakers.length) {
70
+ return true;
71
+ }
72
+ const uniques = new Set([...oldSpeakers, ...newSpeakers]);
73
+ return uniques.size > oldSpeakers.length;
74
+ }
75
+ function getDominantSpeakers(dominantSpeakerIds, peerTrackNodes) {
76
+ if (peerTrackNodes.length <= 3) {
77
+ return peerTrackNodes;
78
+ }
79
+ const list = peerTrackNodes.slice(0, 3);
80
+ let dominantSpeakerIdsCopy = dominantSpeakerIds.slice();
81
+ for (let i = 3; i < peerTrackNodes.length; i++) {
82
+ const peerTrackNode = peerTrackNodes[i];
83
+ if (dominantSpeakerIdsCopy.length <= 0 || !peerTrackNode) {
84
+ break;
85
+ }
86
+ if (dominantSpeakerIdsCopy.includes(peerTrackNode.peer.peerID)) {
87
+ dominantSpeakerIdsCopy = dominantSpeakerIdsCopy.filter(speakerId => speakerId !== peerTrackNode.peer.peerID);
88
+ list.unshift(peerTrackNode);
89
+ }
90
+ }
91
+ if (list.length > 3) {
92
+ list.length = 3;
93
+ }
94
+ return list;
95
+ }
31
96
  //# sourceMappingURL=PIPView.js.map