@100mslive/react-native-room-kit 0.0.3 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (857) hide show
  1. package/README.md +413 -11
  2. package/lib/commonjs/HMSInstanceSetup.js +3 -15
  3. package/lib/commonjs/HMSInstanceSetup.js.map +1 -1
  4. package/lib/commonjs/HMSPrebuilt.js +17 -6
  5. package/lib/commonjs/HMSPrebuilt.js.map +1 -1
  6. package/lib/commonjs/HMSRoomSetup.js +76 -21
  7. package/lib/commonjs/HMSRoomSetup.js.map +1 -1
  8. package/lib/commonjs/Icons/AlertTriangle/assets/alert-triangle.png +0 -0
  9. package/lib/commonjs/Icons/AlertTriangle/assets/alert-triangle@2x.png +0 -0
  10. package/lib/commonjs/Icons/AlertTriangle/assets/alert-triangle@3x.png +0 -0
  11. package/lib/commonjs/Icons/AlertTriangle/index.js +34 -0
  12. package/lib/commonjs/Icons/AlertTriangle/index.js.map +1 -0
  13. package/lib/commonjs/Icons/AnswerPhone/index.js +5 -1
  14. package/lib/commonjs/Icons/AnswerPhone/index.js.map +1 -1
  15. package/lib/commonjs/Icons/BRB/assets/BRB.png +0 -0
  16. package/lib/commonjs/Icons/BRB/assets/BRB@2x.png +0 -0
  17. package/lib/commonjs/Icons/BRB/assets/BRB@3x.png +0 -0
  18. package/lib/commonjs/Icons/BRB/index.js +35 -0
  19. package/lib/commonjs/Icons/BRB/index.js.map +1 -0
  20. package/lib/commonjs/Icons/Bluetooth/index.js +5 -1
  21. package/lib/commonjs/Icons/Bluetooth/index.js.map +1 -1
  22. package/lib/commonjs/Icons/Camera/index.js +5 -1
  23. package/lib/commonjs/Icons/Camera/index.js.map +1 -1
  24. package/lib/commonjs/Icons/Chat/index.js +5 -1
  25. package/lib/commonjs/Icons/Chat/index.js.map +1 -1
  26. package/lib/commonjs/Icons/Check/assets/check.png +0 -0
  27. package/lib/commonjs/Icons/Check/assets/check@2x.png +0 -0
  28. package/lib/commonjs/Icons/Check/assets/check@3x.png +0 -0
  29. package/lib/commonjs/Icons/Check/index.js +34 -0
  30. package/lib/commonjs/Icons/Check/index.js.map +1 -0
  31. package/lib/commonjs/Icons/Chevron/index.js +5 -1
  32. package/lib/commonjs/Icons/Chevron/index.js.map +1 -1
  33. package/lib/commonjs/Icons/Close/index.js +5 -1
  34. package/lib/commonjs/Icons/Close/index.js.map +1 -1
  35. package/lib/commonjs/Icons/Hamburger/assets/hamburger.png +0 -0
  36. package/lib/commonjs/Icons/Hamburger/assets/hamburger@2x.png +0 -0
  37. package/lib/commonjs/Icons/Hamburger/assets/hamburger@3x.png +0 -0
  38. package/lib/commonjs/Icons/Hamburger/index.js +34 -0
  39. package/lib/commonjs/Icons/Hamburger/index.js.map +1 -0
  40. package/lib/commonjs/Icons/Hand/index.js +6 -4
  41. package/lib/commonjs/Icons/Hand/index.js.map +1 -1
  42. package/lib/commonjs/Icons/Headphones/index.js +5 -1
  43. package/lib/commonjs/Icons/Headphones/index.js.map +1 -1
  44. package/lib/commonjs/Icons/Maximize/assets/maximize.png +0 -0
  45. package/lib/commonjs/Icons/Maximize/assets/maximize@2x.png +0 -0
  46. package/lib/commonjs/Icons/Maximize/assets/maximize@3x.png +0 -0
  47. package/lib/commonjs/Icons/Maximize/index.js +34 -0
  48. package/lib/commonjs/Icons/Maximize/index.js.map +1 -0
  49. package/lib/commonjs/Icons/Mic/index.js +5 -1
  50. package/lib/commonjs/Icons/Mic/index.js.map +1 -1
  51. package/lib/commonjs/Icons/Minimize/assets/minimize.png +0 -0
  52. package/lib/commonjs/Icons/Minimize/assets/minimize@2x.png +0 -0
  53. package/lib/commonjs/Icons/Minimize/assets/minimize@3x.png +0 -0
  54. package/lib/commonjs/Icons/Minimize/index.js +34 -0
  55. package/lib/commonjs/Icons/Minimize/index.js.map +1 -0
  56. package/lib/commonjs/Icons/Participants/index.js +5 -1
  57. package/lib/commonjs/Icons/Participants/index.js.map +1 -1
  58. package/lib/commonjs/Icons/Pencil/assets/pencil.png +0 -0
  59. package/lib/commonjs/Icons/Pencil/assets/pencil@2x.png +0 -0
  60. package/lib/commonjs/Icons/Pencil/assets/pencil@3x.png +0 -0
  61. package/lib/commonjs/Icons/Pencil/index.js +34 -0
  62. package/lib/commonjs/Icons/Pencil/index.js.map +1 -0
  63. package/lib/commonjs/Icons/Pin/assets/pin.png +0 -0
  64. package/lib/commonjs/Icons/Pin/assets/pin@2x.png +0 -0
  65. package/lib/commonjs/Icons/Pin/assets/pin@3x.png +0 -0
  66. package/lib/commonjs/Icons/Pin/index.js +34 -0
  67. package/lib/commonjs/Icons/Pin/index.js.map +1 -0
  68. package/lib/commonjs/Icons/Radio/assets/radio.png +0 -0
  69. package/lib/commonjs/Icons/Radio/assets/radio@2x.png +0 -0
  70. package/lib/commonjs/Icons/Radio/assets/radio@3x.png +0 -0
  71. package/lib/commonjs/Icons/Radio/index.js +30 -0
  72. package/lib/commonjs/Icons/Radio/index.js.map +1 -0
  73. package/lib/commonjs/Icons/Recording/assets/recording.png +0 -0
  74. package/lib/commonjs/Icons/Recording/assets/recording@2x.png +0 -0
  75. package/lib/commonjs/Icons/Recording/assets/recording@3x.png +0 -0
  76. package/lib/commonjs/Icons/Recording/index.js +34 -0
  77. package/lib/commonjs/Icons/Recording/index.js.map +1 -0
  78. package/lib/commonjs/Icons/RotateCamera/index.js +5 -1
  79. package/lib/commonjs/Icons/RotateCamera/index.js.map +1 -1
  80. package/lib/commonjs/Icons/ScreenShare/index.js +5 -1
  81. package/lib/commonjs/Icons/ScreenShare/index.js.map +1 -1
  82. package/lib/commonjs/Icons/Speaker/index.js +5 -1
  83. package/lib/commonjs/Icons/Speaker/index.js.map +1 -1
  84. package/lib/commonjs/Icons/Star/assets/star.png +0 -0
  85. package/lib/commonjs/Icons/Star/assets/star@2x.png +0 -0
  86. package/lib/commonjs/Icons/Star/assets/star@3x.png +0 -0
  87. package/lib/commonjs/Icons/Star/index.js +34 -0
  88. package/lib/commonjs/Icons/Star/index.js.map +1 -0
  89. package/lib/commonjs/Icons/Stop/assets/stop.png +0 -0
  90. package/lib/commonjs/Icons/Stop/assets/stop@2x.png +0 -0
  91. package/lib/commonjs/Icons/Stop/assets/stop@3x.png +0 -0
  92. package/lib/commonjs/Icons/Stop/index.js +34 -0
  93. package/lib/commonjs/Icons/Stop/index.js.map +1 -0
  94. package/lib/commonjs/Icons/ThreeDots/index.js +5 -1
  95. package/lib/commonjs/Icons/ThreeDots/index.js.map +1 -1
  96. package/lib/commonjs/Icons/Wave/index.js +5 -1
  97. package/lib/commonjs/Icons/Wave/index.js.map +1 -1
  98. package/lib/commonjs/Icons/index.js +132 -0
  99. package/lib/commonjs/Icons/index.js.map +1 -1
  100. package/lib/commonjs/components/AvatarView.js +1 -2
  101. package/lib/commonjs/components/AvatarView.js.map +1 -1
  102. package/lib/commonjs/components/BackButton.js +8 -6
  103. package/lib/commonjs/components/BackButton.js.map +1 -1
  104. package/lib/commonjs/components/BottomSheet.js +157 -0
  105. package/lib/commonjs/components/BottomSheet.js.map +1 -0
  106. package/lib/commonjs/components/ChangeNameModalContent.js +131 -0
  107. package/lib/commonjs/components/ChangeNameModalContent.js.map +1 -0
  108. package/lib/commonjs/components/CompanyLogo.js +38 -0
  109. package/lib/commonjs/components/CompanyLogo.js.map +1 -0
  110. package/lib/commonjs/components/CustomInput.js +2 -3
  111. package/lib/commonjs/components/CustomInput.js.map +1 -1
  112. package/lib/commonjs/components/DisplayView.js +12 -58
  113. package/lib/commonjs/components/DisplayView.js.map +1 -1
  114. package/lib/commonjs/components/EndRoomModalContent.js +85 -0
  115. package/lib/commonjs/components/EndRoomModalContent.js.map +1 -0
  116. package/lib/commonjs/components/Footer.js +8 -9
  117. package/lib/commonjs/components/Footer.js.map +1 -1
  118. package/lib/commonjs/components/GridView.js +53 -7
  119. package/lib/commonjs/components/GridView.js.map +1 -1
  120. package/lib/commonjs/components/HMSBaseButton.js +66 -0
  121. package/lib/commonjs/components/HMSBaseButton.js.map +1 -0
  122. package/lib/commonjs/components/HMSDangerButton.js +53 -0
  123. package/lib/commonjs/components/HMSDangerButton.js.map +1 -0
  124. package/lib/commonjs/components/HMSHLSStreamLoading.js +65 -0
  125. package/lib/commonjs/components/HMSHLSStreamLoading.js.map +1 -0
  126. package/lib/commonjs/components/HMSLocalVideoView.js +41 -0
  127. package/lib/commonjs/components/HMSLocalVideoView.js.map +1 -0
  128. package/lib/commonjs/components/{HMSSpeakerSettings.js → HMSManageAudioOutput.js} +70 -76
  129. package/lib/commonjs/components/HMSManageAudioOutput.js.map +1 -0
  130. package/lib/commonjs/components/HMSManageCameraRotation.js +5 -4
  131. package/lib/commonjs/components/HMSManageCameraRotation.js.map +1 -1
  132. package/lib/commonjs/components/HMSManageLeave.js +91 -159
  133. package/lib/commonjs/components/HMSManageLeave.js.map +1 -1
  134. package/lib/commonjs/components/HMSManageLocalAudio.js +1 -9
  135. package/lib/commonjs/components/HMSManageLocalAudio.js.map +1 -1
  136. package/lib/commonjs/components/HMSManageLocalVideo.js +1 -9
  137. package/lib/commonjs/components/HMSManageLocalVideo.js.map +1 -1
  138. package/lib/commonjs/components/HMSMeetingEnded.js +35 -0
  139. package/lib/commonjs/components/HMSMeetingEnded.js.map +1 -0
  140. package/lib/commonjs/components/HMSPreviewEditName.js +7 -38
  141. package/lib/commonjs/components/HMSPreviewEditName.js.map +1 -1
  142. package/lib/commonjs/components/HMSPreviewHLSLiveIndicator.js +71 -0
  143. package/lib/commonjs/components/HMSPreviewHLSLiveIndicator.js.map +1 -0
  144. package/lib/commonjs/components/HMSPreviewJoinButton.js +26 -37
  145. package/lib/commonjs/components/HMSPreviewJoinButton.js.map +1 -1
  146. package/lib/commonjs/components/HMSPreviewNetworkQuality.js +45 -0
  147. package/lib/commonjs/components/HMSPreviewNetworkQuality.js.map +1 -0
  148. package/lib/commonjs/components/HMSPreviewPeersList.js +21 -33
  149. package/lib/commonjs/components/HMSPreviewPeersList.js.map +1 -1
  150. package/lib/commonjs/components/HMSPreviewSubtitle.js +43 -7
  151. package/lib/commonjs/components/HMSPreviewSubtitle.js.map +1 -1
  152. package/lib/commonjs/components/HMSPreviewTile.js +18 -26
  153. package/lib/commonjs/components/HMSPreviewTile.js.map +1 -1
  154. package/lib/commonjs/components/HMSPreviewTitle.js +14 -6
  155. package/lib/commonjs/components/HMSPreviewTitle.js.map +1 -1
  156. package/lib/commonjs/components/HMSPrimaryButton.js +53 -0
  157. package/lib/commonjs/components/HMSPrimaryButton.js.map +1 -0
  158. package/lib/commonjs/components/HMSRecordingIndicator.js +46 -0
  159. package/lib/commonjs/components/HMSRecordingIndicator.js.map +1 -0
  160. package/lib/commonjs/components/HMSRoomOptions.js +22 -10
  161. package/lib/commonjs/components/HMSRoomOptions.js.map +1 -1
  162. package/lib/commonjs/components/HMSShowNetworkQuality.js +5 -6
  163. package/lib/commonjs/components/HMSShowNetworkQuality.js.map +1 -1
  164. package/lib/commonjs/components/HMSTextInput.js +66 -0
  165. package/lib/commonjs/components/HMSTextInput.js.map +1 -0
  166. package/lib/commonjs/components/Header.js +30 -30
  167. package/lib/commonjs/components/Header.js.map +1 -1
  168. package/lib/commonjs/components/LocalPeerRegularVideoView.js +26 -0
  169. package/lib/commonjs/components/LocalPeerRegularVideoView.js.map +1 -0
  170. package/lib/commonjs/components/LocalPeerScreenshareView.js +76 -0
  171. package/lib/commonjs/components/LocalPeerScreenshareView.js.map +1 -0
  172. package/lib/commonjs/components/Meeting.js +14 -3
  173. package/lib/commonjs/components/Meeting.js.map +1 -1
  174. package/lib/commonjs/components/MenuModal/Menu.js +1 -2
  175. package/lib/commonjs/components/MenuModal/Menu.js.map +1 -1
  176. package/lib/commonjs/components/MiniView.js +163 -0
  177. package/lib/commonjs/components/MiniView.js.map +1 -0
  178. package/lib/commonjs/components/Modals.js +35 -380
  179. package/lib/commonjs/components/Modals.js.map +1 -1
  180. package/lib/commonjs/components/PaginationDots.js +56 -0
  181. package/lib/commonjs/components/PaginationDots.js.map +1 -0
  182. package/lib/commonjs/components/Participants/ParticipantsList.js +1 -20
  183. package/lib/commonjs/components/Participants/ParticipantsList.js.map +1 -1
  184. package/lib/commonjs/components/ParticipantsCount.js +55 -0
  185. package/lib/commonjs/components/ParticipantsCount.js.map +1 -0
  186. package/lib/commonjs/components/PeerMinimizedView.js +114 -0
  187. package/lib/commonjs/components/PeerMinimizedView.js.map +1 -0
  188. package/lib/commonjs/components/PeerSettingsModalContent.js +69 -63
  189. package/lib/commonjs/components/PeerSettingsModalContent.js.map +1 -1
  190. package/lib/commonjs/components/PeerVideoTile/AvatarView.js +76 -0
  191. package/lib/commonjs/components/PeerVideoTile/AvatarView.js.map +1 -0
  192. package/lib/commonjs/components/PeerVideoTile/PeerAudioMutedIndicator.js +44 -0
  193. package/lib/commonjs/components/PeerVideoTile/PeerAudioMutedIndicator.js.map +1 -0
  194. package/lib/commonjs/components/PeerVideoTile/PeerMetadata.js +44 -0
  195. package/lib/commonjs/components/PeerVideoTile/PeerMetadata.js.map +1 -0
  196. package/lib/commonjs/components/PeerVideoTile/PeerNameAndNetwork.js +74 -0
  197. package/lib/commonjs/components/PeerVideoTile/PeerNameAndNetwork.js.map +1 -0
  198. package/lib/commonjs/components/PeerVideoTile/PeerVideoTileView.js +146 -0
  199. package/lib/commonjs/components/PeerVideoTile/PeerVideoTileView.js.map +1 -0
  200. package/lib/commonjs/components/PeerVideoTile/VideoView.js +84 -0
  201. package/lib/commonjs/components/PeerVideoTile/VideoView.js.map +1 -0
  202. package/lib/commonjs/components/PeerVideoTile/index.js +2 -0
  203. package/lib/commonjs/components/PeerVideoTile/index.js.map +1 -0
  204. package/lib/commonjs/components/PressableIcon.js +15 -8
  205. package/lib/commonjs/components/PressableIcon.js.map +1 -1
  206. package/lib/commonjs/components/Preview.js +93 -72
  207. package/lib/commonjs/components/Preview.js.map +1 -1
  208. package/lib/commonjs/components/RoomSettingsModalContent.js +228 -457
  209. package/lib/commonjs/components/RoomSettingsModalContent.js.map +1 -1
  210. package/lib/commonjs/components/RoomSettingsModalDebugModeContent.js +295 -0
  211. package/lib/commonjs/components/RoomSettingsModalDebugModeContent.js.map +1 -0
  212. package/lib/commonjs/components/StopRecordingModalContent.js +97 -0
  213. package/lib/commonjs/components/StopRecordingModalContent.js.map +1 -0
  214. package/lib/commonjs/components/Tile.js +29 -90
  215. package/lib/commonjs/components/Tile.js.map +1 -1
  216. package/lib/commonjs/components/TilesContainer.js +99 -10
  217. package/lib/commonjs/components/TilesContainer.js.map +1 -1
  218. package/lib/commonjs/components/UnmountAfterDelay.js +48 -0
  219. package/lib/commonjs/components/UnmountAfterDelay.js.map +1 -0
  220. package/lib/commonjs/components/WebrtcView.js +51 -0
  221. package/lib/commonjs/components/WebrtcView.js.map +1 -0
  222. package/lib/commonjs/components/WelcomeInMeeting.js +54 -0
  223. package/lib/commonjs/components/WelcomeInMeeting.js.map +1 -0
  224. package/lib/commonjs/components/index.js +0 -11
  225. package/lib/commonjs/components/index.js.map +1 -1
  226. package/lib/commonjs/hooks/useHmsInstance.js +0 -1
  227. package/lib/commonjs/hooks/useHmsInstance.js.map +1 -1
  228. package/lib/commonjs/hooks-sdk-selectors.js +6 -1
  229. package/lib/commonjs/hooks-sdk-selectors.js.map +1 -1
  230. package/lib/commonjs/hooks-sdk.js +16 -1
  231. package/lib/commonjs/hooks-sdk.js.map +1 -1
  232. package/lib/commonjs/hooks-util-selectors.js +14 -1
  233. package/lib/commonjs/hooks-util-selectors.js.map +1 -1
  234. package/lib/commonjs/hooks-util.js +421 -98
  235. package/lib/commonjs/hooks-util.js.map +1 -1
  236. package/lib/commonjs/modules/HMSManager.js +23 -0
  237. package/lib/commonjs/modules/HMSManager.js.map +1 -0
  238. package/lib/commonjs/modules/parser.js +22 -0
  239. package/lib/commonjs/modules/parser.js.map +1 -0
  240. package/lib/commonjs/peerTrackNodeUtils.js +8 -3
  241. package/lib/commonjs/peerTrackNodeUtils.js.map +1 -1
  242. package/lib/commonjs/redux/actionTypes.js +20 -1
  243. package/lib/commonjs/redux/actionTypes.js.map +1 -1
  244. package/lib/commonjs/redux/actions/index.js +65 -1
  245. package/lib/commonjs/redux/actions/index.js.map +1 -1
  246. package/lib/commonjs/redux/reducers/appState.js +70 -1
  247. package/lib/commonjs/redux/reducers/appState.js.map +1 -1
  248. package/lib/commonjs/redux/reducers/hmsStates.js +7 -1
  249. package/lib/commonjs/redux/reducers/hmsStates.js.map +1 -1
  250. package/lib/commonjs/redux/reducers/userState.js +3 -1
  251. package/lib/commonjs/redux/reducers/userState.js.map +1 -1
  252. package/lib/commonjs/utils/functions.js +51 -1
  253. package/lib/commonjs/utils/functions.js.map +1 -1
  254. package/lib/commonjs/utils/theme.js +63 -8
  255. package/lib/commonjs/utils/theme.js.map +1 -1
  256. package/lib/commonjs/utils/types.js +8 -2
  257. package/lib/commonjs/utils/types.js.map +1 -1
  258. package/lib/commonjs/utils.js +2 -2
  259. package/lib/commonjs/utils.js.map +1 -1
  260. package/lib/module/HMSInstanceSetup.js +3 -15
  261. package/lib/module/HMSInstanceSetup.js.map +1 -1
  262. package/lib/module/HMSPrebuilt.js +17 -5
  263. package/lib/module/HMSPrebuilt.js.map +1 -1
  264. package/lib/module/HMSRoomSetup.js +81 -26
  265. package/lib/module/HMSRoomSetup.js.map +1 -1
  266. package/lib/module/Icons/AlertTriangle/assets/alert-triangle.png +0 -0
  267. package/lib/module/Icons/AlertTriangle/assets/alert-triangle@2x.png +0 -0
  268. package/lib/module/Icons/AlertTriangle/assets/alert-triangle@3x.png +0 -0
  269. package/lib/module/Icons/AlertTriangle/index.js +26 -0
  270. package/lib/module/Icons/AlertTriangle/index.js.map +1 -0
  271. package/lib/module/Icons/AnswerPhone/index.js +5 -1
  272. package/lib/module/Icons/AnswerPhone/index.js.map +1 -1
  273. package/lib/module/Icons/BRB/assets/BRB.png +0 -0
  274. package/lib/module/Icons/BRB/assets/BRB@2x.png +0 -0
  275. package/lib/module/Icons/BRB/assets/BRB@3x.png +0 -0
  276. package/lib/module/Icons/BRB/index.js +27 -0
  277. package/lib/module/Icons/BRB/index.js.map +1 -0
  278. package/lib/module/Icons/Bluetooth/index.js +5 -1
  279. package/lib/module/Icons/Bluetooth/index.js.map +1 -1
  280. package/lib/module/Icons/Camera/index.js +5 -1
  281. package/lib/module/Icons/Camera/index.js.map +1 -1
  282. package/lib/module/Icons/Chat/index.js +5 -1
  283. package/lib/module/Icons/Chat/index.js.map +1 -1
  284. package/lib/module/Icons/Check/assets/check.png +0 -0
  285. package/lib/module/Icons/Check/assets/check@2x.png +0 -0
  286. package/lib/module/Icons/Check/assets/check@3x.png +0 -0
  287. package/lib/module/Icons/Check/index.js +26 -0
  288. package/lib/module/Icons/Check/index.js.map +1 -0
  289. package/lib/module/Icons/Chevron/index.js +5 -1
  290. package/lib/module/Icons/Chevron/index.js.map +1 -1
  291. package/lib/module/Icons/Close/index.js +5 -1
  292. package/lib/module/Icons/Close/index.js.map +1 -1
  293. package/lib/module/Icons/Hamburger/assets/hamburger.png +0 -0
  294. package/lib/module/Icons/Hamburger/assets/hamburger@2x.png +0 -0
  295. package/lib/module/Icons/Hamburger/assets/hamburger@3x.png +0 -0
  296. package/lib/module/Icons/Hamburger/index.js +26 -0
  297. package/lib/module/Icons/Hamburger/index.js.map +1 -0
  298. package/lib/module/Icons/Hand/index.js +6 -4
  299. package/lib/module/Icons/Hand/index.js.map +1 -1
  300. package/lib/module/Icons/Headphones/index.js +5 -1
  301. package/lib/module/Icons/Headphones/index.js.map +1 -1
  302. package/lib/module/Icons/Maximize/assets/maximize.png +0 -0
  303. package/lib/module/Icons/Maximize/assets/maximize@2x.png +0 -0
  304. package/lib/module/Icons/Maximize/assets/maximize@3x.png +0 -0
  305. package/lib/module/Icons/Maximize/index.js +26 -0
  306. package/lib/module/Icons/Maximize/index.js.map +1 -0
  307. package/lib/module/Icons/Mic/index.js +5 -1
  308. package/lib/module/Icons/Mic/index.js.map +1 -1
  309. package/lib/module/Icons/Minimize/assets/minimize.png +0 -0
  310. package/lib/module/Icons/Minimize/assets/minimize@2x.png +0 -0
  311. package/lib/module/Icons/Minimize/assets/minimize@3x.png +0 -0
  312. package/lib/module/Icons/Minimize/index.js +26 -0
  313. package/lib/module/Icons/Minimize/index.js.map +1 -0
  314. package/lib/module/Icons/Participants/index.js +5 -1
  315. package/lib/module/Icons/Participants/index.js.map +1 -1
  316. package/lib/module/Icons/Pencil/assets/pencil.png +0 -0
  317. package/lib/module/Icons/Pencil/assets/pencil@2x.png +0 -0
  318. package/lib/module/Icons/Pencil/assets/pencil@3x.png +0 -0
  319. package/lib/module/Icons/Pencil/index.js +26 -0
  320. package/lib/module/Icons/Pencil/index.js.map +1 -0
  321. package/lib/module/Icons/Pin/assets/pin.png +0 -0
  322. package/lib/module/Icons/Pin/assets/pin@2x.png +0 -0
  323. package/lib/module/Icons/Pin/assets/pin@3x.png +0 -0
  324. package/lib/module/Icons/Pin/index.js +26 -0
  325. package/lib/module/Icons/Pin/index.js.map +1 -0
  326. package/lib/module/Icons/Radio/assets/radio.png +0 -0
  327. package/lib/module/Icons/Radio/assets/radio@2x.png +0 -0
  328. package/lib/module/Icons/Radio/assets/radio@3x.png +0 -0
  329. package/lib/module/Icons/Radio/index.js +22 -0
  330. package/lib/module/Icons/Radio/index.js.map +1 -0
  331. package/lib/module/Icons/Recording/assets/recording.png +0 -0
  332. package/lib/module/Icons/Recording/assets/recording@2x.png +0 -0
  333. package/lib/module/Icons/Recording/assets/recording@3x.png +0 -0
  334. package/lib/module/Icons/Recording/index.js +26 -0
  335. package/lib/module/Icons/Recording/index.js.map +1 -0
  336. package/lib/module/Icons/RotateCamera/index.js +5 -1
  337. package/lib/module/Icons/RotateCamera/index.js.map +1 -1
  338. package/lib/module/Icons/ScreenShare/index.js +5 -1
  339. package/lib/module/Icons/ScreenShare/index.js.map +1 -1
  340. package/lib/module/Icons/Speaker/index.js +5 -1
  341. package/lib/module/Icons/Speaker/index.js.map +1 -1
  342. package/lib/module/Icons/Star/assets/star.png +0 -0
  343. package/lib/module/Icons/Star/assets/star@2x.png +0 -0
  344. package/lib/module/Icons/Star/assets/star@3x.png +0 -0
  345. package/lib/module/Icons/Star/index.js +26 -0
  346. package/lib/module/Icons/Star/index.js.map +1 -0
  347. package/lib/module/Icons/Stop/assets/stop.png +0 -0
  348. package/lib/module/Icons/Stop/assets/stop@2x.png +0 -0
  349. package/lib/module/Icons/Stop/assets/stop@3x.png +0 -0
  350. package/lib/module/Icons/Stop/index.js +26 -0
  351. package/lib/module/Icons/Stop/index.js.map +1 -0
  352. package/lib/module/Icons/ThreeDots/index.js +5 -1
  353. package/lib/module/Icons/ThreeDots/index.js.map +1 -1
  354. package/lib/module/Icons/Wave/index.js +5 -1
  355. package/lib/module/Icons/Wave/index.js.map +1 -1
  356. package/lib/module/Icons/index.js +12 -0
  357. package/lib/module/Icons/index.js.map +1 -1
  358. package/lib/module/components/AvatarView.js +1 -2
  359. package/lib/module/components/AvatarView.js.map +1 -1
  360. package/lib/module/components/BackButton.js +9 -7
  361. package/lib/module/components/BackButton.js.map +1 -1
  362. package/lib/module/components/BottomSheet.js +146 -0
  363. package/lib/module/components/BottomSheet.js.map +1 -0
  364. package/lib/module/components/ChangeNameModalContent.js +122 -0
  365. package/lib/module/components/ChangeNameModalContent.js.map +1 -0
  366. package/lib/module/components/CompanyLogo.js +30 -0
  367. package/lib/module/components/CompanyLogo.js.map +1 -0
  368. package/lib/module/components/CustomInput.js +2 -3
  369. package/lib/module/components/CustomInput.js.map +1 -1
  370. package/lib/module/components/DisplayView.js +16 -61
  371. package/lib/module/components/DisplayView.js.map +1 -1
  372. package/lib/module/components/EndRoomModalContent.js +76 -0
  373. package/lib/module/components/EndRoomModalContent.js.map +1 -0
  374. package/lib/module/components/Footer.js +9 -10
  375. package/lib/module/components/Footer.js.map +1 -1
  376. package/lib/module/components/GridView.js +55 -10
  377. package/lib/module/components/GridView.js.map +1 -1
  378. package/lib/module/components/HMSBaseButton.js +57 -0
  379. package/lib/module/components/HMSBaseButton.js.map +1 -0
  380. package/lib/module/components/HMSDangerButton.js +44 -0
  381. package/lib/module/components/HMSDangerButton.js.map +1 -0
  382. package/lib/module/components/HMSHLSStreamLoading.js +56 -0
  383. package/lib/module/components/HMSHLSStreamLoading.js.map +1 -0
  384. package/lib/module/components/HMSLocalVideoView.js +32 -0
  385. package/lib/module/components/HMSLocalVideoView.js.map +1 -0
  386. package/lib/module/components/{HMSSpeakerSettings.js → HMSManageAudioOutput.js} +70 -77
  387. package/lib/module/components/HMSManageAudioOutput.js.map +1 -0
  388. package/lib/module/components/HMSManageCameraRotation.js +5 -4
  389. package/lib/module/components/HMSManageCameraRotation.js.map +1 -1
  390. package/lib/module/components/HMSManageLeave.js +95 -161
  391. package/lib/module/components/HMSManageLeave.js.map +1 -1
  392. package/lib/module/components/HMSManageLocalAudio.js +1 -9
  393. package/lib/module/components/HMSManageLocalAudio.js.map +1 -1
  394. package/lib/module/components/HMSManageLocalVideo.js +1 -9
  395. package/lib/module/components/HMSManageLocalVideo.js.map +1 -1
  396. package/lib/module/components/HMSMeetingEnded.js +26 -0
  397. package/lib/module/components/HMSMeetingEnded.js.map +1 -0
  398. package/lib/module/components/HMSPreviewEditName.js +7 -38
  399. package/lib/module/components/HMSPreviewEditName.js.map +1 -1
  400. package/lib/module/components/HMSPreviewHLSLiveIndicator.js +62 -0
  401. package/lib/module/components/HMSPreviewHLSLiveIndicator.js.map +1 -0
  402. package/lib/module/components/HMSPreviewJoinButton.js +28 -39
  403. package/lib/module/components/HMSPreviewJoinButton.js.map +1 -1
  404. package/lib/module/components/HMSPreviewNetworkQuality.js +36 -0
  405. package/lib/module/components/HMSPreviewNetworkQuality.js.map +1 -0
  406. package/lib/module/components/HMSPreviewPeersList.js +21 -33
  407. package/lib/module/components/HMSPreviewPeersList.js.map +1 -1
  408. package/lib/module/components/HMSPreviewSubtitle.js +43 -7
  409. package/lib/module/components/HMSPreviewSubtitle.js.map +1 -1
  410. package/lib/module/components/HMSPreviewTile.js +18 -26
  411. package/lib/module/components/HMSPreviewTile.js.map +1 -1
  412. package/lib/module/components/HMSPreviewTitle.js +14 -6
  413. package/lib/module/components/HMSPreviewTitle.js.map +1 -1
  414. package/lib/module/components/HMSPrimaryButton.js +44 -0
  415. package/lib/module/components/HMSPrimaryButton.js.map +1 -0
  416. package/lib/module/components/HMSRecordingIndicator.js +37 -0
  417. package/lib/module/components/HMSRecordingIndicator.js.map +1 -0
  418. package/lib/module/components/HMSRoomOptions.js +23 -11
  419. package/lib/module/components/HMSRoomOptions.js.map +1 -1
  420. package/lib/module/components/HMSShowNetworkQuality.js +6 -7
  421. package/lib/module/components/HMSShowNetworkQuality.js.map +1 -1
  422. package/lib/module/components/HMSTextInput.js +57 -0
  423. package/lib/module/components/HMSTextInput.js.map +1 -0
  424. package/lib/module/components/Header.js +32 -32
  425. package/lib/module/components/Header.js.map +1 -1
  426. package/lib/module/components/LocalPeerRegularVideoView.js +17 -0
  427. package/lib/module/components/LocalPeerRegularVideoView.js.map +1 -0
  428. package/lib/module/components/LocalPeerScreenshareView.js +66 -0
  429. package/lib/module/components/LocalPeerScreenshareView.js.map +1 -0
  430. package/lib/module/components/Meeting.js +15 -4
  431. package/lib/module/components/Meeting.js.map +1 -1
  432. package/lib/module/components/MenuModal/Menu.js +1 -2
  433. package/lib/module/components/MenuModal/Menu.js.map +1 -1
  434. package/lib/module/components/MiniView.js +154 -0
  435. package/lib/module/components/MiniView.js.map +1 -0
  436. package/lib/module/components/Modals.js +37 -378
  437. package/lib/module/components/Modals.js.map +1 -1
  438. package/lib/module/components/PaginationDots.js +47 -0
  439. package/lib/module/components/PaginationDots.js.map +1 -0
  440. package/lib/module/components/Participants/ParticipantsList.js +1 -20
  441. package/lib/module/components/Participants/ParticipantsList.js.map +1 -1
  442. package/lib/module/components/ParticipantsCount.js +46 -0
  443. package/lib/module/components/ParticipantsCount.js.map +1 -0
  444. package/lib/module/components/PeerMinimizedView.js +104 -0
  445. package/lib/module/components/PeerMinimizedView.js.map +1 -0
  446. package/lib/module/components/PeerSettingsModalContent.js +72 -66
  447. package/lib/module/components/PeerSettingsModalContent.js.map +1 -1
  448. package/lib/module/components/PeerVideoTile/AvatarView.js +66 -0
  449. package/lib/module/components/PeerVideoTile/AvatarView.js.map +1 -0
  450. package/lib/module/components/PeerVideoTile/PeerAudioMutedIndicator.js +35 -0
  451. package/lib/module/components/PeerVideoTile/PeerAudioMutedIndicator.js.map +1 -0
  452. package/lib/module/components/PeerVideoTile/PeerMetadata.js +35 -0
  453. package/lib/module/components/PeerVideoTile/PeerMetadata.js.map +1 -0
  454. package/lib/module/components/PeerVideoTile/PeerNameAndNetwork.js +65 -0
  455. package/lib/module/components/PeerVideoTile/PeerNameAndNetwork.js.map +1 -0
  456. package/lib/module/components/PeerVideoTile/PeerVideoTileView.js +136 -0
  457. package/lib/module/components/PeerVideoTile/PeerVideoTileView.js.map +1 -0
  458. package/lib/module/components/PeerVideoTile/VideoView.js +75 -0
  459. package/lib/module/components/PeerVideoTile/VideoView.js.map +1 -0
  460. package/lib/module/components/PeerVideoTile/index.js +2 -0
  461. package/lib/module/components/PeerVideoTile/index.js.map +1 -0
  462. package/lib/module/components/PressableIcon.js +15 -8
  463. package/lib/module/components/PressableIcon.js.map +1 -1
  464. package/lib/module/components/Preview.js +93 -72
  465. package/lib/module/components/Preview.js.map +1 -1
  466. package/lib/module/components/RoomSettingsModalContent.js +231 -459
  467. package/lib/module/components/RoomSettingsModalContent.js.map +1 -1
  468. package/lib/module/components/RoomSettingsModalDebugModeContent.js +287 -0
  469. package/lib/module/components/RoomSettingsModalDebugModeContent.js.map +1 -0
  470. package/lib/module/components/StopRecordingModalContent.js +88 -0
  471. package/lib/module/components/StopRecordingModalContent.js.map +1 -0
  472. package/lib/module/components/Tile.js +30 -91
  473. package/lib/module/components/Tile.js.map +1 -1
  474. package/lib/module/components/TilesContainer.js +100 -10
  475. package/lib/module/components/TilesContainer.js.map +1 -1
  476. package/lib/module/components/UnmountAfterDelay.js +39 -0
  477. package/lib/module/components/UnmountAfterDelay.js.map +1 -0
  478. package/lib/module/components/WebrtcView.js +41 -0
  479. package/lib/module/components/WebrtcView.js.map +1 -0
  480. package/lib/module/components/WelcomeInMeeting.js +45 -0
  481. package/lib/module/components/WelcomeInMeeting.js.map +1 -0
  482. package/lib/module/components/index.js +0 -1
  483. package/lib/module/components/index.js.map +1 -1
  484. package/lib/module/hooks/useHmsInstance.js +0 -1
  485. package/lib/module/hooks/useHmsInstance.js.map +1 -1
  486. package/lib/module/hooks-sdk-selectors.js +4 -0
  487. package/lib/module/hooks-sdk-selectors.js.map +1 -1
  488. package/lib/module/hooks-sdk.js +16 -1
  489. package/lib/module/hooks-sdk.js.map +1 -1
  490. package/lib/module/hooks-util-selectors.js +12 -0
  491. package/lib/module/hooks-util-selectors.js.map +1 -1
  492. package/lib/module/hooks-util.js +417 -104
  493. package/lib/module/hooks-util.js.map +1 -1
  494. package/lib/module/modules/HMSManager.js +17 -0
  495. package/lib/module/modules/HMSManager.js.map +1 -0
  496. package/lib/module/modules/parser.js +16 -0
  497. package/lib/module/modules/parser.js.map +1 -0
  498. package/lib/module/peerTrackNodeUtils.js +6 -2
  499. package/lib/module/peerTrackNodeUtils.js.map +1 -1
  500. package/lib/module/redux/actionTypes.js +20 -1
  501. package/lib/module/redux/actionTypes.js.map +1 -1
  502. package/lib/module/redux/actions/index.js +54 -0
  503. package/lib/module/redux/actions/index.js.map +1 -1
  504. package/lib/module/redux/reducers/appState.js +70 -1
  505. package/lib/module/redux/reducers/appState.js.map +1 -1
  506. package/lib/module/redux/reducers/hmsStates.js +7 -1
  507. package/lib/module/redux/reducers/hmsStates.js.map +1 -1
  508. package/lib/module/redux/reducers/userState.js +3 -1
  509. package/lib/module/redux/reducers/userState.js.map +1 -1
  510. package/lib/module/utils/functions.js +47 -0
  511. package/lib/module/utils/functions.js.map +1 -1
  512. package/lib/module/utils/theme.js +58 -5
  513. package/lib/module/utils/theme.js.map +1 -1
  514. package/lib/module/utils/types.js +6 -1
  515. package/lib/module/utils/types.js.map +1 -1
  516. package/lib/module/utils.js +2 -2
  517. package/lib/module/utils.js.map +1 -1
  518. package/lib/typescript/HMSInstanceSetup.d.ts.map +1 -1
  519. package/lib/typescript/HMSPrebuilt.d.ts +3 -3
  520. package/lib/typescript/HMSPrebuilt.d.ts.map +1 -1
  521. package/lib/typescript/HMSRoomSetup.d.ts.map +1 -1
  522. package/lib/typescript/Icons/AlertTriangle/index.d.ts +7 -0
  523. package/lib/typescript/Icons/AlertTriangle/index.d.ts.map +1 -0
  524. package/lib/typescript/Icons/AnswerPhone/index.d.ts.map +1 -1
  525. package/lib/typescript/Icons/BRB/index.d.ts +7 -0
  526. package/lib/typescript/Icons/BRB/index.d.ts.map +1 -0
  527. package/lib/typescript/Icons/Bluetooth/index.d.ts.map +1 -1
  528. package/lib/typescript/Icons/Camera/index.d.ts.map +1 -1
  529. package/lib/typescript/Icons/Chat/index.d.ts.map +1 -1
  530. package/lib/typescript/Icons/Check/index.d.ts +7 -0
  531. package/lib/typescript/Icons/Check/index.d.ts.map +1 -0
  532. package/lib/typescript/Icons/Chevron/index.d.ts.map +1 -1
  533. package/lib/typescript/Icons/Close/index.d.ts.map +1 -1
  534. package/lib/typescript/Icons/Hamburger/index.d.ts +7 -0
  535. package/lib/typescript/Icons/Hamburger/index.d.ts.map +1 -0
  536. package/lib/typescript/Icons/Hand/index.d.ts.map +1 -1
  537. package/lib/typescript/Icons/Headphones/index.d.ts.map +1 -1
  538. package/lib/typescript/Icons/Maximize/index.d.ts +7 -0
  539. package/lib/typescript/Icons/Maximize/index.d.ts.map +1 -0
  540. package/lib/typescript/Icons/Mic/index.d.ts.map +1 -1
  541. package/lib/typescript/Icons/Minimize/index.d.ts +7 -0
  542. package/lib/typescript/Icons/Minimize/index.d.ts.map +1 -0
  543. package/lib/typescript/Icons/Participants/index.d.ts.map +1 -1
  544. package/lib/typescript/Icons/Pencil/index.d.ts +7 -0
  545. package/lib/typescript/Icons/Pencil/index.d.ts.map +1 -0
  546. package/lib/typescript/Icons/Pin/index.d.ts +7 -0
  547. package/lib/typescript/Icons/Pin/index.d.ts.map +1 -0
  548. package/lib/typescript/Icons/Radio/index.d.ts +7 -0
  549. package/lib/typescript/Icons/Radio/index.d.ts.map +1 -0
  550. package/lib/typescript/Icons/Recording/index.d.ts +7 -0
  551. package/lib/typescript/Icons/Recording/index.d.ts.map +1 -0
  552. package/lib/typescript/Icons/RotateCamera/index.d.ts.map +1 -1
  553. package/lib/typescript/Icons/ScreenShare/index.d.ts.map +1 -1
  554. package/lib/typescript/Icons/Speaker/index.d.ts.map +1 -1
  555. package/lib/typescript/Icons/Star/index.d.ts +7 -0
  556. package/lib/typescript/Icons/Star/index.d.ts.map +1 -0
  557. package/lib/typescript/Icons/Stop/index.d.ts +7 -0
  558. package/lib/typescript/Icons/Stop/index.d.ts.map +1 -0
  559. package/lib/typescript/Icons/ThreeDots/index.d.ts.map +1 -1
  560. package/lib/typescript/Icons/Wave/index.d.ts.map +1 -1
  561. package/lib/typescript/Icons/index.d.ts +12 -0
  562. package/lib/typescript/Icons/index.d.ts.map +1 -1
  563. package/lib/typescript/components/BackButton.d.ts.map +1 -1
  564. package/lib/typescript/components/BottomSheet.d.ts +25 -0
  565. package/lib/typescript/components/BottomSheet.d.ts.map +1 -0
  566. package/lib/typescript/components/ChangeNameModalContent.d.ts +6 -0
  567. package/lib/typescript/components/ChangeNameModalContent.d.ts.map +1 -0
  568. package/lib/typescript/components/CompanyLogo.d.ts +7 -0
  569. package/lib/typescript/components/CompanyLogo.d.ts.map +1 -0
  570. package/lib/typescript/components/CustomInput.d.ts +1 -1
  571. package/lib/typescript/components/CustomInput.d.ts.map +1 -1
  572. package/lib/typescript/components/DisplayView.d.ts.map +1 -1
  573. package/lib/typescript/components/EndRoomModalContent.d.ts +6 -0
  574. package/lib/typescript/components/EndRoomModalContent.d.ts.map +1 -0
  575. package/lib/typescript/components/Footer.d.ts.map +1 -1
  576. package/lib/typescript/components/GridView.d.ts +3 -4
  577. package/lib/typescript/components/GridView.d.ts.map +1 -1
  578. package/lib/typescript/components/HMSBaseButton.d.ts +15 -0
  579. package/lib/typescript/components/HMSBaseButton.d.ts.map +1 -0
  580. package/lib/typescript/components/HMSDangerButton.d.ts +12 -0
  581. package/lib/typescript/components/HMSDangerButton.d.ts.map +1 -0
  582. package/lib/typescript/components/HMSHLSStreamLoading.d.ts +3 -0
  583. package/lib/typescript/components/HMSHLSStreamLoading.d.ts.map +1 -0
  584. package/lib/typescript/components/HMSLocalVideoView.d.ts +3 -0
  585. package/lib/typescript/components/HMSLocalVideoView.d.ts.map +1 -0
  586. package/lib/typescript/components/HMSManageAudioOutput.d.ts +3 -0
  587. package/lib/typescript/components/HMSManageAudioOutput.d.ts.map +1 -0
  588. package/lib/typescript/components/HMSManageLeave.d.ts.map +1 -1
  589. package/lib/typescript/components/HMSManageLocalAudio.d.ts.map +1 -1
  590. package/lib/typescript/components/HMSManageLocalVideo.d.ts.map +1 -1
  591. package/lib/typescript/components/HMSMeetingEnded.d.ts +3 -0
  592. package/lib/typescript/components/HMSMeetingEnded.d.ts.map +1 -0
  593. package/lib/typescript/components/HMSPreviewEditName.d.ts.map +1 -1
  594. package/lib/typescript/components/HMSPreviewHLSLiveIndicator.d.ts +3 -0
  595. package/lib/typescript/components/HMSPreviewHLSLiveIndicator.d.ts.map +1 -0
  596. package/lib/typescript/components/HMSPreviewJoinButton.d.ts.map +1 -1
  597. package/lib/typescript/components/HMSPreviewNetworkQuality.d.ts +3 -0
  598. package/lib/typescript/components/HMSPreviewNetworkQuality.d.ts.map +1 -0
  599. package/lib/typescript/components/HMSPreviewPeersList.d.ts.map +1 -1
  600. package/lib/typescript/components/HMSPreviewSubtitle.d.ts.map +1 -1
  601. package/lib/typescript/components/HMSPreviewTile.d.ts.map +1 -1
  602. package/lib/typescript/components/HMSPreviewTitle.d.ts.map +1 -1
  603. package/lib/typescript/components/HMSPrimaryButton.d.ts +12 -0
  604. package/lib/typescript/components/HMSPrimaryButton.d.ts.map +1 -0
  605. package/lib/typescript/components/HMSRecordingIndicator.d.ts +3 -0
  606. package/lib/typescript/components/HMSRecordingIndicator.d.ts.map +1 -0
  607. package/lib/typescript/components/HMSRoomOptions.d.ts.map +1 -1
  608. package/lib/typescript/components/HMSShowNetworkQuality.d.ts.map +1 -1
  609. package/lib/typescript/components/HMSTextInput.d.ts +10 -0
  610. package/lib/typescript/components/HMSTextInput.d.ts.map +1 -0
  611. package/lib/typescript/components/Header.d.ts.map +1 -1
  612. package/lib/typescript/components/LocalPeerRegularVideoView.d.ts +6 -0
  613. package/lib/typescript/components/LocalPeerRegularVideoView.d.ts.map +1 -0
  614. package/lib/typescript/components/LocalPeerScreenshareView.d.ts +3 -0
  615. package/lib/typescript/components/LocalPeerScreenshareView.d.ts.map +1 -0
  616. package/lib/typescript/components/Meeting.d.ts.map +1 -1
  617. package/lib/typescript/components/MenuModal/Menu.d.ts.map +1 -1
  618. package/lib/typescript/components/MiniView.d.ts +9 -0
  619. package/lib/typescript/components/MiniView.d.ts.map +1 -0
  620. package/lib/typescript/components/Modals.d.ts +1 -16
  621. package/lib/typescript/components/Modals.d.ts.map +1 -1
  622. package/lib/typescript/components/PaginationDots.d.ts +6 -0
  623. package/lib/typescript/components/PaginationDots.d.ts.map +1 -0
  624. package/lib/typescript/components/Participants/ParticipantsList.d.ts.map +1 -1
  625. package/lib/typescript/components/ParticipantsCount.d.ts +3 -0
  626. package/lib/typescript/components/ParticipantsCount.d.ts.map +1 -0
  627. package/lib/typescript/components/PeerMinimizedView.d.ts +12 -0
  628. package/lib/typescript/components/PeerMinimizedView.d.ts.map +1 -0
  629. package/lib/typescript/components/PeerSettingsModalContent.d.ts +1 -0
  630. package/lib/typescript/components/PeerSettingsModalContent.d.ts.map +1 -1
  631. package/lib/typescript/components/PeerVideoTile/AvatarView.d.ts +9 -0
  632. package/lib/typescript/components/PeerVideoTile/AvatarView.d.ts.map +1 -0
  633. package/lib/typescript/components/PeerVideoTile/PeerAudioMutedIndicator.d.ts +6 -0
  634. package/lib/typescript/components/PeerVideoTile/PeerAudioMutedIndicator.d.ts.map +1 -0
  635. package/lib/typescript/components/PeerVideoTile/PeerMetadata.d.ts +6 -0
  636. package/lib/typescript/components/PeerVideoTile/PeerMetadata.d.ts.map +1 -0
  637. package/lib/typescript/components/PeerVideoTile/PeerNameAndNetwork.d.ts +10 -0
  638. package/lib/typescript/components/PeerVideoTile/PeerNameAndNetwork.d.ts.map +1 -0
  639. package/lib/typescript/components/PeerVideoTile/PeerVideoTileView.d.ts +10 -0
  640. package/lib/typescript/components/PeerVideoTile/PeerVideoTileView.d.ts.map +1 -0
  641. package/lib/typescript/components/PeerVideoTile/VideoView.d.ts +13 -0
  642. package/lib/typescript/components/PeerVideoTile/VideoView.d.ts.map +1 -0
  643. package/lib/typescript/components/PeerVideoTile/index.d.ts +1 -0
  644. package/lib/typescript/components/PeerVideoTile/index.d.ts.map +1 -0
  645. package/lib/typescript/components/PressableIcon.d.ts.map +1 -1
  646. package/lib/typescript/components/Preview.d.ts.map +1 -1
  647. package/lib/typescript/components/RoomSettingsModalContent.d.ts +2 -2
  648. package/lib/typescript/components/RoomSettingsModalContent.d.ts.map +1 -1
  649. package/lib/typescript/components/RoomSettingsModalDebugModeContent.d.ts +17 -0
  650. package/lib/typescript/components/RoomSettingsModalDebugModeContent.d.ts.map +1 -0
  651. package/lib/typescript/components/StopRecordingModalContent.d.ts +6 -0
  652. package/lib/typescript/components/StopRecordingModalContent.d.ts.map +1 -0
  653. package/lib/typescript/components/Tile.d.ts +12 -3
  654. package/lib/typescript/components/Tile.d.ts.map +1 -1
  655. package/lib/typescript/components/TilesContainer.d.ts.map +1 -1
  656. package/lib/typescript/components/UnmountAfterDelay.d.ts +12 -0
  657. package/lib/typescript/components/UnmountAfterDelay.d.ts.map +1 -0
  658. package/lib/typescript/components/WebrtcView.d.ts +10 -0
  659. package/lib/typescript/components/WebrtcView.d.ts.map +1 -0
  660. package/lib/typescript/components/WelcomeInMeeting.d.ts +5 -0
  661. package/lib/typescript/components/WelcomeInMeeting.d.ts.map +1 -0
  662. package/lib/typescript/components/index.d.ts +0 -1
  663. package/lib/typescript/components/index.d.ts.map +1 -1
  664. package/lib/typescript/hooks-sdk-selectors.d.ts +2 -0
  665. package/lib/typescript/hooks-sdk-selectors.d.ts.map +1 -1
  666. package/lib/typescript/hooks-sdk.d.ts +1 -0
  667. package/lib/typescript/hooks-sdk.d.ts.map +1 -1
  668. package/lib/typescript/hooks-util-selectors.d.ts +2 -0
  669. package/lib/typescript/hooks-util-selectors.d.ts.map +1 -1
  670. package/lib/typescript/hooks-util.d.ts +24 -4
  671. package/lib/typescript/hooks-util.d.ts.map +1 -1
  672. package/lib/typescript/modules/HMSManager.d.ts +4 -0
  673. package/lib/typescript/modules/HMSManager.d.ts.map +1 -0
  674. package/lib/typescript/modules/parser.d.ts +3 -0
  675. package/lib/typescript/modules/parser.d.ts.map +1 -0
  676. package/lib/typescript/peerTrackNodeUtils.d.ts +1 -0
  677. package/lib/typescript/peerTrackNodeUtils.d.ts.map +1 -1
  678. package/lib/typescript/redux/actionTypes.d.ts +11 -1
  679. package/lib/typescript/redux/actionTypes.d.ts.map +1 -1
  680. package/lib/typescript/redux/actions/index.d.ts +61 -3
  681. package/lib/typescript/redux/actions/index.d.ts.map +1 -1
  682. package/lib/typescript/redux/index.d.ts +10 -1
  683. package/lib/typescript/redux/index.d.ts.map +1 -1
  684. package/lib/typescript/redux/reducers/appState.d.ts +8 -0
  685. package/lib/typescript/redux/reducers/appState.d.ts.map +1 -1
  686. package/lib/typescript/redux/reducers/hmsStates.d.ts +7 -1
  687. package/lib/typescript/redux/reducers/hmsStates.d.ts.map +1 -1
  688. package/lib/typescript/redux/reducers/index.d.ts +10 -1
  689. package/lib/typescript/redux/reducers/index.d.ts.map +1 -1
  690. package/lib/typescript/redux/reducers/userState.d.ts +3 -2
  691. package/lib/typescript/redux/reducers/userState.d.ts.map +1 -1
  692. package/lib/typescript/utils/functions.d.ts +14 -0
  693. package/lib/typescript/utils/functions.d.ts.map +1 -1
  694. package/lib/typescript/utils/theme.d.ts +7 -3
  695. package/lib/typescript/utils/theme.d.ts.map +1 -1
  696. package/lib/typescript/utils/types.d.ts +8 -4
  697. package/lib/typescript/utils/types.d.ts.map +1 -1
  698. package/package.json +11 -16
  699. package/src/HMSInstanceSetup.tsx +5 -31
  700. package/src/HMSPrebuilt.tsx +27 -8
  701. package/src/HMSRoomSetup.tsx +98 -23
  702. package/src/Icons/AlertTriangle/assets/alert-triangle.png +0 -0
  703. package/src/Icons/AlertTriangle/assets/alert-triangle@2x.png +0 -0
  704. package/src/Icons/AlertTriangle/assets/alert-triangle@3x.png +0 -0
  705. package/src/Icons/AlertTriangle/index.tsx +33 -0
  706. package/src/Icons/AnswerPhone/index.tsx +7 -1
  707. package/src/Icons/BRB/assets/BRB.png +0 -0
  708. package/src/Icons/BRB/assets/BRB@2x.png +0 -0
  709. package/src/Icons/BRB/assets/BRB@3x.png +0 -0
  710. package/src/Icons/BRB/index.tsx +31 -0
  711. package/src/Icons/Bluetooth/index.tsx +7 -1
  712. package/src/Icons/Camera/index.tsx +7 -1
  713. package/src/Icons/Chat/index.tsx +7 -1
  714. package/src/Icons/Check/assets/check.png +0 -0
  715. package/src/Icons/Check/assets/check@2x.png +0 -0
  716. package/src/Icons/Check/assets/check@3x.png +0 -0
  717. package/src/Icons/Check/index.tsx +33 -0
  718. package/src/Icons/Chevron/index.tsx +7 -1
  719. package/src/Icons/Close/index.tsx +7 -1
  720. package/src/Icons/Hamburger/assets/hamburger.png +0 -0
  721. package/src/Icons/Hamburger/assets/hamburger@2x.png +0 -0
  722. package/src/Icons/Hamburger/assets/hamburger@3x.png +0 -0
  723. package/src/Icons/Hamburger/index.tsx +33 -0
  724. package/src/Icons/Hand/index.tsx +6 -3
  725. package/src/Icons/Headphones/index.tsx +7 -1
  726. package/src/Icons/Maximize/assets/maximize.png +0 -0
  727. package/src/Icons/Maximize/assets/maximize@2x.png +0 -0
  728. package/src/Icons/Maximize/assets/maximize@3x.png +0 -0
  729. package/src/Icons/Maximize/index.tsx +33 -0
  730. package/src/Icons/Mic/index.tsx +7 -1
  731. package/src/Icons/Minimize/assets/minimize.png +0 -0
  732. package/src/Icons/Minimize/assets/minimize@2x.png +0 -0
  733. package/src/Icons/Minimize/assets/minimize@3x.png +0 -0
  734. package/src/Icons/Minimize/index.tsx +33 -0
  735. package/src/Icons/Participants/index.tsx +7 -1
  736. package/src/Icons/Pencil/assets/pencil.png +0 -0
  737. package/src/Icons/Pencil/assets/pencil@2x.png +0 -0
  738. package/src/Icons/Pencil/assets/pencil@3x.png +0 -0
  739. package/src/Icons/Pencil/index.tsx +33 -0
  740. package/src/Icons/Pin/assets/pin.png +0 -0
  741. package/src/Icons/Pin/assets/pin@2x.png +0 -0
  742. package/src/Icons/Pin/assets/pin@3x.png +0 -0
  743. package/src/Icons/Pin/index.tsx +30 -0
  744. package/src/Icons/Radio/assets/radio.png +0 -0
  745. package/src/Icons/Radio/assets/radio@2x.png +0 -0
  746. package/src/Icons/Radio/assets/radio@3x.png +0 -0
  747. package/src/Icons/Radio/index.tsx +27 -0
  748. package/src/Icons/Recording/assets/recording.png +0 -0
  749. package/src/Icons/Recording/assets/recording@2x.png +0 -0
  750. package/src/Icons/Recording/assets/recording@3x.png +0 -0
  751. package/src/Icons/Recording/index.tsx +33 -0
  752. package/src/Icons/RotateCamera/index.tsx +7 -1
  753. package/src/Icons/ScreenShare/index.tsx +7 -1
  754. package/src/Icons/Speaker/index.tsx +12 -1
  755. package/src/Icons/Star/assets/star.png +0 -0
  756. package/src/Icons/Star/assets/star@2x.png +0 -0
  757. package/src/Icons/Star/assets/star@3x.png +0 -0
  758. package/src/Icons/Star/index.tsx +30 -0
  759. package/src/Icons/Stop/assets/stop.png +0 -0
  760. package/src/Icons/Stop/assets/stop@2x.png +0 -0
  761. package/src/Icons/Stop/assets/stop@3x.png +0 -0
  762. package/src/Icons/Stop/index.tsx +33 -0
  763. package/src/Icons/ThreeDots/index.tsx +7 -1
  764. package/src/Icons/Wave/index.tsx +7 -1
  765. package/src/Icons/index.ts +12 -0
  766. package/src/components/AvatarView.tsx +1 -2
  767. package/src/components/BackButton.tsx +9 -6
  768. package/src/components/BottomSheet.tsx +191 -0
  769. package/src/components/ChangeNameModalContent.tsx +157 -0
  770. package/src/components/CompanyLogo.tsx +35 -0
  771. package/src/components/CustomInput.tsx +2 -3
  772. package/src/components/DisplayView.tsx +16 -75
  773. package/src/components/EndRoomModalContent.tsx +90 -0
  774. package/src/components/Footer.tsx +7 -7
  775. package/src/components/GridView.tsx +91 -20
  776. package/src/components/HLSView.tsx +1 -1
  777. package/src/components/HMSBaseButton.tsx +91 -0
  778. package/src/components/HMSDangerButton.tsx +65 -0
  779. package/src/components/HMSHLSStreamLoading.tsx +68 -0
  780. package/src/components/HMSLocalVideoView.tsx +42 -0
  781. package/src/components/{HMSSpeakerSettings.tsx → HMSManageAudioOutput.tsx} +99 -78
  782. package/src/components/HMSManageCameraRotation.tsx +11 -8
  783. package/src/components/HMSManageLeave.tsx +107 -183
  784. package/src/components/HMSManageLocalAudio.tsx +1 -10
  785. package/src/components/HMSManageLocalVideo.tsx +1 -10
  786. package/src/components/HMSMeetingEnded.tsx +28 -0
  787. package/src/components/HMSPreviewEditName.tsx +4 -45
  788. package/src/components/HMSPreviewHLSLiveIndicator.tsx +66 -0
  789. package/src/components/HMSPreviewJoinButton.tsx +36 -51
  790. package/src/components/HMSPreviewNetworkQuality.tsx +43 -0
  791. package/src/components/HMSPreviewPeersList.tsx +25 -54
  792. package/src/components/HMSPreviewSubtitle.tsx +46 -6
  793. package/src/components/HMSPreviewTile.tsx +20 -31
  794. package/src/components/HMSPreviewTitle.tsx +18 -5
  795. package/src/components/HMSPrimaryButton.tsx +63 -0
  796. package/src/components/HMSRecordingIndicator.tsx +37 -0
  797. package/src/components/HMSRoomOptions.tsx +30 -16
  798. package/src/components/HMSShowNetworkQuality.tsx +7 -6
  799. package/src/components/HMSTextInput.tsx +78 -0
  800. package/src/components/Header.tsx +37 -36
  801. package/src/components/LocalPeerRegularVideoView.tsx +28 -0
  802. package/src/components/LocalPeerScreenshareView.tsx +72 -0
  803. package/src/components/Meeting.tsx +21 -3
  804. package/src/components/MenuModal/Menu.tsx +1 -1
  805. package/src/components/MiniView.tsx +213 -0
  806. package/src/components/Modals.tsx +5 -409
  807. package/src/components/PaginationDots.tsx +65 -0
  808. package/src/components/Participants/ParticipantsList.tsx +0 -24
  809. package/src/components/ParticipantsCount.tsx +52 -0
  810. package/src/components/PeerMinimizedView.tsx +131 -0
  811. package/src/components/PeerSettingsModalContent.tsx +108 -66
  812. package/src/components/PeerVideoTile/AvatarView.tsx +79 -0
  813. package/src/components/PeerVideoTile/PeerAudioMutedIndicator.tsx +41 -0
  814. package/src/components/PeerVideoTile/PeerMetadata.tsx +46 -0
  815. package/src/components/PeerVideoTile/PeerNameAndNetwork.tsx +81 -0
  816. package/src/components/PeerVideoTile/PeerVideoTileView.tsx +180 -0
  817. package/src/components/PeerVideoTile/VideoView.tsx +104 -0
  818. package/src/components/PeerVideoTile/index.ts +0 -0
  819. package/src/components/PressableIcon.tsx +15 -8
  820. package/src/components/Preview.tsx +150 -104
  821. package/src/components/RoomSettingsModalContent.tsx +234 -659
  822. package/src/components/RoomSettingsModalDebugModeContent.tsx +446 -0
  823. package/src/components/StopRecordingModalContent.tsx +109 -0
  824. package/src/components/Tile.tsx +49 -90
  825. package/src/components/TilesContainer.tsx +116 -14
  826. package/src/components/UnmountAfterDelay.tsx +61 -0
  827. package/src/components/WebrtcView.tsx +72 -0
  828. package/src/components/WelcomeInMeeting.tsx +52 -0
  829. package/src/components/index.ts +0 -1
  830. package/src/hooks/useHmsInstance.ts +0 -1
  831. package/src/hooks-sdk-selectors.tsx +7 -0
  832. package/src/hooks-sdk.ts +18 -0
  833. package/src/hooks-util-selectors.tsx +21 -0
  834. package/src/hooks-util.ts +548 -130
  835. package/src/modules/HMSManager.ts +25 -0
  836. package/src/modules/parser.ts +22 -0
  837. package/src/peerTrackNodeUtils.tsx +13 -10
  838. package/src/redux/actionTypes.ts +28 -0
  839. package/src/redux/actions/index.ts +64 -2
  840. package/src/redux/reducers/appState.ts +65 -0
  841. package/src/redux/reducers/hmsStates.ts +15 -1
  842. package/src/redux/reducers/userState.ts +5 -2
  843. package/src/utils/functions.ts +48 -0
  844. package/src/utils/theme.ts +75 -5
  845. package/src/utils/types.ts +9 -4
  846. package/src/utils.ts +2 -2
  847. package/lib/commonjs/components/HMSSpeakerSettings.js.map +0 -1
  848. package/lib/commonjs/components/ZoomableView.js +0 -84
  849. package/lib/commonjs/components/ZoomableView.js.map +0 -1
  850. package/lib/module/components/HMSSpeakerSettings.js.map +0 -1
  851. package/lib/module/components/ZoomableView.js +0 -76
  852. package/lib/module/components/ZoomableView.js.map +0 -1
  853. package/lib/typescript/components/HMSSpeakerSettings.d.ts +0 -3
  854. package/lib/typescript/components/HMSSpeakerSettings.d.ts.map +0 -1
  855. package/lib/typescript/components/ZoomableView.d.ts +0 -6
  856. package/lib/typescript/components/ZoomableView.d.ts.map +0 -1
  857. package/src/components/ZoomableView.tsx +0 -91
@@ -2,27 +2,30 @@ import { HMSConfig, HMSPIPListenerActions, HMSPeerUpdate, HMSRoomUpdate, HMSTrac
2
2
  // useHMSPeerUpdates,
3
3
  } from '@100mslive/react-native-hms';
4
4
  import Toast from 'react-native-simple-toast';
5
- import { useRef, useCallback, useEffect, useState, useMemo } from 'react';
6
- import { ModalTypes, PipModes } from './utils/types';
5
+ import { useRef, useCallback, useEffect, useState, useMemo, useContext } from 'react';
6
+ import { MaxTilesInOnePage, ModalTypes, PipModes } from './utils/types';
7
7
  import { createPeerTrackNode, parseMetadata } from './utils/functions';
8
- import { useDispatch, useSelector, useStore } from 'react-redux';
9
- import { addMessage, addPinnedMessage, addToPreviewPeersList, changePipModeStatus, clearStore, removeFromPreviewPeersList, saveUserData, setHMSLocalPeerState, setHMSRoleState, setHMSRoomState, setIsLocalAudioMutedState, setIsLocalVideoMutedState, setModalType } from './redux/actions';
10
- import { degradeOrRestorePeerTrackNodes, peerTrackNodeExistForPeer, peerTrackNodeExistForPeerAndTrack, removePeerTrackNodes, removePeerTrackNodesWithTrack, replacePeerTrackNodes, replacePeerTrackNodesWithTrack } from './peerTrackNodeUtils';
8
+ import { batch, shallowEqual, useDispatch, useSelector, useStore } from 'react-redux';
9
+ import { addMessage, addPinnedMessage, changeMeetingState, changePipModeStatus, changeStartingHLSStream, clearStore, saveUserData, setHMSLocalPeerState, setHMSRoleState, setHMSRoomState, setIsLocalAudioMutedState, setIsLocalVideoMutedState, setLayoutConfig, setLocalPeerTrackNode, setMiniViewPeerTrackNode, setModalType, setStartingOrStoppingRecording, updateLocalPeerTrackNode, updateMiniViewPeerTrackNode } from './redux/actions';
10
+ import { createPeerTrackNodeUniqueId, degradeOrRestorePeerTrackNodes, peerTrackNodeExistForPeer, peerTrackNodeExistForPeerAndTrack, removePeerTrackNodes, removePeerTrackNodesWithTrack, replacePeerTrackNodes, replacePeerTrackNodesWithTrack } from './peerTrackNodeUtils';
11
11
  import { MeetingState } from './types';
12
12
  import { AppState, InteractionManager, LayoutAnimation, Platform } from 'react-native';
13
- import { useNavigation } from '@react-navigation/native';
13
+ import { NavigationContext } from '@react-navigation/native';
14
14
  import { useIsLandscapeOrientation, useIsPortraitOrientation } from './utils/dimension';
15
15
  import { useSafeAreaFrame, useSafeAreaInsets } from 'react-native-safe-area-context';
16
- import { selectIsHLSViewer } from './hooks-util-selectors';
17
- export const useHMSListeners = (meetingState, setPeerTrackNodes, setMeetingState) => {
16
+ import { selectIsHLSViewer, selectShouldGoLive } from './hooks-util-selectors';
17
+ import { getRoomLayout } from './modules/HMSManager';
18
+ import { DEFAULT_THEME, DEFAULT_TYPOGRAPHY } from './utils/theme';
19
+ export const useHMSListeners = setPeerTrackNodes => {
18
20
  const hmsInstance = useHMSInstance();
19
21
  const updateLocalPeer = useUpdateHMSLocalPeer(hmsInstance);
20
- useHMSRoomUpdate(hmsInstance, setMeetingState);
21
- useHMSPeersUpdate(meetingState, hmsInstance, updateLocalPeer, setPeerTrackNodes);
22
+ useHMSRoomUpdate(hmsInstance);
23
+ useHMSPeersUpdate(hmsInstance, updateLocalPeer, setPeerTrackNodes);
22
24
  useHMSTrackUpdate(hmsInstance, updateLocalPeer, setPeerTrackNodes);
23
25
  };
24
- const useHMSRoomUpdate = (hmsInstance, setMeetingState) => {
26
+ const useHMSRoomUpdate = hmsInstance => {
25
27
  const dispatch = useDispatch();
28
+ const reduxStore = useStore();
26
29
  useEffect(() => {
27
30
  const roomUpdateHandler = data => {
28
31
  var _room$localPeer$role;
@@ -37,16 +40,20 @@ const useHMSRoomUpdate = (hmsInstance, setMeetingState) => {
37
40
  * before ON_JOIN, if ON_ROOM comes then we can show Meeting screen to user, instead of Loader or Preview
38
41
  */
39
42
  if (((_room$localPeer$role = room.localPeer.role) === null || _room$localPeer$role === void 0 || (_room$localPeer$role = _room$localPeer$role.name) === null || _room$localPeer$role === void 0 ? void 0 : _room$localPeer$role.includes('hls-')) ?? false) {
40
- dispatch(setHMSLocalPeerState(room.localPeer));
41
- setMeetingState(prevMeetingScreen => {
42
- if (prevMeetingScreen !== MeetingState.IN_MEETING) {
43
- return MeetingState.IN_MEETING;
43
+ const meetingState = reduxStore.getState().app.meetingState;
44
+ batch(() => {
45
+ dispatch(setHMSLocalPeerState(room.localPeer));
46
+ if (meetingState !== MeetingState.IN_MEETING) {
47
+ dispatch(changeMeetingState(MeetingState.IN_MEETING));
44
48
  }
45
- return prevMeetingScreen;
46
49
  });
47
50
  }
48
51
  if (type === HMSRoomUpdate.BROWSER_RECORDING_STATE_UPDATED) {
49
52
  var _room$browserRecordin, _room$browserRecordin2;
53
+ const startingOrStoppingRecording = reduxStore.getState().app.startingOrStoppingRecording;
54
+ if (startingOrStoppingRecording) {
55
+ dispatch(setStartingOrStoppingRecording(false));
56
+ }
50
57
  let streaming = room === null || room === void 0 || (_room$browserRecordin = room.browserRecordingState) === null || _room$browserRecordin === void 0 ? void 0 : _room$browserRecordin.running;
51
58
  const startAtDate = room === null || room === void 0 || (_room$browserRecordin2 = room.browserRecordingState) === null || _room$browserRecordin2 === void 0 ? void 0 : _room$browserRecordin2.startedAt;
52
59
  let startTime = null;
@@ -59,6 +66,7 @@ const useHMSRoomUpdate = (hmsInstance, setMeetingState) => {
59
66
  Toast.showWithGravity(`Browser Recording ${streaming ? `Started ${startTime ? 'At ' + startTime : ''}` : 'Stopped'}`, Toast.LONG, Toast.TOP);
60
67
  } else if (type === HMSRoomUpdate.HLS_STREAMING_STATE_UPDATED) {
61
68
  var _room$hlsStreamingSta;
69
+ dispatch(changeStartingHLSStream(false));
62
70
  let streaming = room === null || room === void 0 || (_room$hlsStreamingSta = room.hlsStreamingState) === null || _room$hlsStreamingSta === void 0 ? void 0 : _room$hlsStreamingSta.running;
63
71
  Toast.showWithGravity(`HLS Streaming ${streaming ? 'Started' : 'Stopped'}`, Toast.LONG, Toast.TOP);
64
72
  } else if (type === HMSRoomUpdate.RTMP_STREAMING_STATE_UPDATED) {
@@ -93,9 +101,13 @@ const useHMSRoomUpdate = (hmsInstance, setMeetingState) => {
93
101
  };
94
102
  }, [hmsInstance]);
95
103
  };
96
- const useHMSPeersUpdate = (meetingState, hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
104
+ const useHMSPeersUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
97
105
  const dispatch = useDispatch();
98
- const inMeeting = meetingState === MeetingState.IN_MEETING;
106
+ const store = useStore();
107
+ // const inMeeting = useSelector(
108
+ // (state: RootState) => state.app.meetingState === MeetingState.IN_MEETING
109
+ // );
110
+
99
111
  useEffect(() => {
100
112
  const peerUpdateHandler = _ref => {
101
113
  let {
@@ -103,13 +115,14 @@ const useHMSPeersUpdate = (meetingState, hmsInstance, updateLocalPeer, setPeerTr
103
115
  type
104
116
  } = _ref;
105
117
  // Handle State from Preview screen
106
- if (!inMeeting) {
107
- if (type === HMSPeerUpdate.PEER_JOINED) {
108
- dispatch(addToPreviewPeersList(peer));
109
- } else if (type === HMSPeerUpdate.PEER_LEFT) {
110
- dispatch(removeFromPreviewPeersList(peer));
111
- }
112
- }
118
+ // TODO: When `inMeeting` becomes true Peer Update is resubscribed, we might lose some events during that time
119
+ // if (!inMeeting) {
120
+ // if (type === HMSPeerUpdate.PEER_JOINED) {
121
+ // dispatch(addToPreviewPeersList(peer));
122
+ // } else if (type === HMSPeerUpdate.PEER_LEFT) {
123
+ // dispatch(removeFromPreviewPeersList(peer));
124
+ // }
125
+ // }
113
126
 
114
127
  // Handle State for Meeting screen
115
128
  if (type === HMSPeerUpdate.PEER_JOINED) {
@@ -126,6 +139,25 @@ const useHMSPeersUpdate = (meetingState, hmsInstance, updateLocalPeer, setPeerTr
126
139
  }
127
140
  return prevPeerTrackNodes;
128
141
  });
142
+ const reduxState = store.getState();
143
+ const miniviewPeerTrackNode = reduxState.app.miniviewPeerTrackNode;
144
+ const localPeerTrackNode = reduxState.app.localPeerTrackNode;
145
+ batch(() => {
146
+ if (localPeerTrackNode) {
147
+ dispatch(updateLocalPeerTrackNode({
148
+ peer
149
+ }));
150
+ } else {
151
+ dispatch(setLocalPeerTrackNode(createPeerTrackNode(peer, peer.videoTrack)));
152
+ }
153
+
154
+ // only set `localPeerTrackNode` as miniview peer track node when we are already using it.
155
+ if (miniviewPeerTrackNode && miniviewPeerTrackNode.peer.peerID === peer.peerID) {
156
+ dispatch(updateMiniViewPeerTrackNode({
157
+ peer
158
+ }));
159
+ }
160
+ });
129
161
 
130
162
  // - TODO: update local localPeer state
131
163
  // - Pass this updated data to Meeting component -> DisplayView component
@@ -158,11 +190,11 @@ const useHMSPeersUpdate = (meetingState, hmsInstance, updateLocalPeer, setPeerTr
158
190
  return () => {
159
191
  hmsInstance.removeEventListener(HMSUpdateListenerActions.ON_PEER_UPDATE);
160
192
  };
161
- }, [inMeeting, hmsInstance]); // TODO: When `inMeeting` becomes true Peer Update is resubscribed, we might lose some events during that time
193
+ }, [hmsInstance]);
162
194
  };
163
-
164
195
  const useHMSTrackUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
165
196
  const dispatch = useDispatch();
197
+ const store = useStore();
166
198
  useEffect(() => {
167
199
  const trackUpdateHandler = _ref2 => {
168
200
  let {
@@ -170,7 +202,12 @@ const useHMSTrackUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
170
202
  track,
171
203
  type
172
204
  } = _ref2;
205
+ const reduxState = store.getState();
206
+ const miniviewPeerTrackNode = reduxState.app.miniviewPeerTrackNode;
207
+ const localPeerTrackNode = reduxState.app.localPeerTrackNode;
173
208
  if (type === HMSTrackUpdate.TRACK_ADDED) {
209
+ const newPeerTrackNode = createPeerTrackNode(peer, track);
210
+ const willCreateMiniviewPeerTrackNode = !miniviewPeerTrackNode && peer.isLocal && track.source === HMSTrackSource.REGULAR;
174
211
  setPeerTrackNodes(prevPeerTrackNodes => {
175
212
  if (peerTrackNodeExistForPeerAndTrack(prevPeerTrackNodes, peer, track)) {
176
213
  if (track.type === HMSTrackType.VIDEO) {
@@ -178,14 +215,59 @@ const useHMSTrackUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
178
215
  }
179
216
  return replacePeerTrackNodes(prevPeerTrackNodes, peer);
180
217
  }
181
- const newPeerTrackNode = createPeerTrackNode(peer, track);
182
- return [...prevPeerTrackNodes, newPeerTrackNode];
218
+ if (miniviewPeerTrackNode ? newPeerTrackNode.id !== miniviewPeerTrackNode.id : !willCreateMiniviewPeerTrackNode) {
219
+ return [...prevPeerTrackNodes, newPeerTrackNode];
220
+ }
221
+ return prevPeerTrackNodes;
183
222
  });
184
223
 
185
224
  // - TODO: update local localPeer state
186
225
  // - Pass this updated data to Meeting component -> DisplayView component
187
226
  if (peer.isLocal) {
227
+ if (track.source === HMSTrackSource.REGULAR) {
228
+ if (!localPeerTrackNode) {
229
+ dispatch(setLocalPeerTrackNode(newPeerTrackNode));
230
+ } else {
231
+ dispatch(updateLocalPeerTrackNode(track.type === HMSTrackType.VIDEO ? {
232
+ peer,
233
+ track
234
+ } : {
235
+ peer
236
+ }));
237
+ }
238
+
239
+ // only setting `miniviewPeerTrackNode`, when:
240
+ // - there is no `miniviewPeerTrackNode`
241
+ // - if there is, then it is of regular track
242
+ if (!miniviewPeerTrackNode) {
243
+ dispatch(setMiniViewPeerTrackNode(newPeerTrackNode));
244
+ } else if (miniviewPeerTrackNode.id === newPeerTrackNode.id) {
245
+ dispatch(updateMiniViewPeerTrackNode(track.type === HMSTrackType.VIDEO ? {
246
+ peer,
247
+ track
248
+ } : {
249
+ peer
250
+ }));
251
+ }
252
+ }
253
+ // else -> {
254
+ // should `localPeerTrackNode` be created/updated for non-regular track addition?
255
+ // should `miniviewPeerTrackNode` be created/updated for non-regular track addition?
256
+ // }
257
+
188
258
  updateLocalPeer();
259
+ } else {
260
+ // only setting `miniviewPeerTrackNode`, when:
261
+ // - there is already `miniviewPeerTrackNode`
262
+ // - and it is of same peer's regular track
263
+ if (miniviewPeerTrackNode && miniviewPeerTrackNode.id === newPeerTrackNode.id) {
264
+ dispatch(updateMiniViewPeerTrackNode(track.type === HMSTrackType.VIDEO ? {
265
+ peer,
266
+ track
267
+ } : {
268
+ peer
269
+ }));
270
+ }
189
271
  }
190
272
  return;
191
273
  }
@@ -198,7 +280,53 @@ const useHMSTrackUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
198
280
  // - TODO: update local localPeer state
199
281
  // - Pass this updated data to Meeting component -> DisplayView component
200
282
  if (peer.isLocal) {
283
+ if (track.source === HMSTrackSource.REGULAR) {
284
+ var _peer$audioTrack2, _peer$videoTrack2;
285
+ if (!((_peer$audioTrack2 = peer.audioTrack) !== null && _peer$audioTrack2 !== void 0 && _peer$audioTrack2.trackId) && !((_peer$videoTrack2 = peer.videoTrack) !== null && _peer$videoTrack2 !== void 0 && _peer$videoTrack2.trackId)) {
286
+ dispatch(setLocalPeerTrackNode(null));
287
+
288
+ // removing `miniviewPeerTrackNode`, when:
289
+ // - `localPeerTrack` was used as `miniviewPeerTrackNode`
290
+ // - and now local peer doesn't have any tracks
291
+ if (miniviewPeerTrackNode && miniviewPeerTrackNode.peer.peerID === peer.peerID) {
292
+ dispatch(setMiniViewPeerTrackNode(null));
293
+ }
294
+ } else {
295
+ if (track.type === HMSTrackType.VIDEO) {
296
+ dispatch(updateLocalPeerTrackNode({
297
+ peer,
298
+ track: undefined
299
+ }));
300
+ } else {
301
+ dispatch(updateLocalPeerTrackNode({
302
+ peer
303
+ }));
304
+ }
305
+
306
+ // updating `miniviewPeerTrackNode`
307
+ if (miniviewPeerTrackNode && miniviewPeerTrackNode.peer.peerID === peer.peerID) {
308
+ if (track.type === HMSTrackType.VIDEO) {
309
+ dispatch(updateMiniViewPeerTrackNode({
310
+ peer,
311
+ track: undefined
312
+ }));
313
+ } else {
314
+ dispatch(updateMiniViewPeerTrackNode({
315
+ peer
316
+ }));
317
+ }
318
+ }
319
+ }
320
+ }
201
321
  updateLocalPeer();
322
+ } else {
323
+ // only removing `miniviewPeerTrackNode`, when:
324
+ // - there is already `miniviewPeerTrackNode`
325
+ // - and it is of same peer's regular track
326
+ const uniqueId = createPeerTrackNodeUniqueId(peer, track);
327
+ if (miniviewPeerTrackNode && miniviewPeerTrackNode.id === uniqueId) {
328
+ dispatch(setMiniViewPeerTrackNode(null));
329
+ }
202
330
  }
203
331
  return;
204
332
  }
@@ -221,11 +349,34 @@ const useHMSTrackUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
221
349
  }
222
350
  return prevPeerTrackNodes;
223
351
  });
352
+ const uniqueId = createPeerTrackNodeUniqueId(peer, track);
224
353
 
225
354
  // - TODO: update local localPeer state
226
355
  // - Pass this updated data to Meeting component -> DisplayView component
227
356
  if (peer.isLocal) {
357
+ const updatePayload = track.type === HMSTrackType.VIDEO ? {
358
+ peer,
359
+ track
360
+ } : {
361
+ peer
362
+ };
363
+ dispatch(updateLocalPeerTrackNode(updatePayload));
364
+
365
+ // Take care of miniviewPeerTrackNode
366
+ if (miniviewPeerTrackNode && miniviewPeerTrackNode.id === uniqueId) {
367
+ dispatch(updateMiniViewPeerTrackNode(updatePayload));
368
+ }
228
369
  updateLocalPeer();
370
+ } else {
371
+ if (miniviewPeerTrackNode && miniviewPeerTrackNode.id === uniqueId) {
372
+ const updatePayload = track.type === HMSTrackType.VIDEO ? {
373
+ peer,
374
+ track
375
+ } : {
376
+ peer
377
+ };
378
+ dispatch(updateMiniViewPeerTrackNode(updatePayload));
379
+ }
229
380
  }
230
381
  return;
231
382
  }
@@ -236,6 +387,12 @@ const useHMSTrackUpdate = (hmsInstance, updateLocalPeer, setPeerTrackNodes) => {
236
387
  }
237
388
  return prevPeerTrackNodes;
238
389
  });
390
+ const uniqueId = createPeerTrackNodeUniqueId(peer, track);
391
+ if (miniviewPeerTrackNode && miniviewPeerTrackNode.id === uniqueId) {
392
+ dispatch(updateMiniViewPeerTrackNode({
393
+ isDegraded: type === HMSTrackUpdate.TRACK_DEGRADED
394
+ }));
395
+ }
239
396
  return;
240
397
  }
241
398
  };
@@ -317,7 +474,7 @@ export const useHMSRoleChangeRequest = (callback, deps) => {
317
474
  }, [...(deps || []), hmsInstance]);
318
475
  return roleChangeRequest;
319
476
  };
320
- export const useHMSSessionStoreListeners = () => {
477
+ export const useHMSSessionStoreListeners = gridViewRef => {
321
478
  const dispatch = useDispatch();
322
479
  const hmsSessionStore = useSelector(state => state.user.hmsSessionStore);
323
480
  const sessionStoreListenersRef = useRef([]);
@@ -329,10 +486,16 @@ export const useHMSSessionStoreListeners = () => {
329
486
  const addSessionStoreListeners = () => {
330
487
  // Handle 'spotlight' key values
331
488
  const handleSpotlightIdChange = id => {
489
+ var _gridViewRef$current;
332
490
  // set value to the state to rerender the component to reflect changes
333
491
  dispatch(saveUserData({
334
492
  spotlightTrackId: id
335
493
  }));
494
+ // Scroll to start of the list
495
+ (_gridViewRef$current = gridViewRef.current) === null || _gridViewRef$current === void 0 || (_gridViewRef$current = _gridViewRef$current.getFlatlistRef().current) === null || _gridViewRef$current === void 0 ? void 0 : _gridViewRef$current.scrollToOffset({
496
+ animated: true,
497
+ offset: 0
498
+ });
336
499
  };
337
500
 
338
501
  // Handle 'pinnedMessage' key values
@@ -461,97 +624,33 @@ export const useHMSMessages = () => {
461
624
  };
462
625
  export const useHMSPIPRoomLeave = () => {
463
626
  const hmsInstance = useHMSInstance();
464
- const dispatch = useDispatch();
465
- // TODO: What if this is undefined?
466
- const navigation = useNavigation();
627
+ const {
628
+ destroy
629
+ } = useLeaveMethods();
467
630
  useEffect(() => {
468
631
  const pipRoomLeaveHandler = () => {
469
- hmsInstance.destroy().then(s => {
470
- console.log('Destroy Success: ', s);
471
- // TODOS:
472
- // - If show `Meeting_Ended` is true, show Meeting screen by setting state to MEETING_ENDED
473
- // - Reset Redux States
474
- // - HMSInstance will not be available now
475
- // - When your presses "Re Join" Action button, restart process from root component
476
- // - When your presses "Done" Action button
477
- // - If we have callback fn, call it
478
- // - Otherwise try our best to navigate away from current screen
479
- //
480
- // - No screen to show
481
- // - No need to reset redux state?
482
- // - HMSInstance will be available till this point
483
- // - If we have callback fn, call it
484
- // - Otherwise try our best to navigate away from current screen
485
- // - When we are navigated away from screen, HMSInstance will be not available
486
-
487
- // dispatch(clearMessageData());
488
- // dispatch(clearPeerData());
489
- // dispatch(clearHmsReference());
490
-
491
- // if (navigation.canGoBack()) {
492
- // navigation.goBack();
493
- // } else {
494
- // TODO: remove this later
495
- navigation.navigate('QRCodeScreen');
496
- dispatch(clearStore());
497
- // }
498
- }).catch(e => {
499
- console.log(`Destroy HMS instance Error: ${e}`);
500
- Toast.showWithGravity(`Destroy HMS instance Error: ${e}`, Toast.LONG, Toast.TOP);
501
- });
632
+ destroy();
502
633
  };
503
634
  hmsInstance.addEventListener(HMSPIPListenerActions.ON_PIP_ROOM_LEAVE, pipRoomLeaveHandler);
504
635
  return () => {
505
636
  hmsInstance.removeEventListener(HMSPIPListenerActions.ON_PIP_ROOM_LEAVE);
506
637
  };
507
- }, [hmsInstance]);
638
+ }, [destroy, hmsInstance]);
508
639
  };
509
640
  export const useHMSRemovedFromRoomUpdate = () => {
510
641
  const hmsInstance = useHMSInstance();
511
- const dispatch = useDispatch();
512
- // TODO: What if this is undefined?
513
- const navigation = useNavigation();
642
+ const {
643
+ destroy
644
+ } = useLeaveMethods();
514
645
  useEffect(() => {
515
646
  const removedFromRoomHandler = () => {
516
- hmsInstance.destroy().then(s => {
517
- console.log('Destroy Success: ', s);
518
- // TODOS:
519
- // - If show `Meeting_Ended` is true, show Meeting screen by setting state to MEETING_ENDED
520
- // - Reset Redux States
521
- // - HMSInstance will not be available now
522
- // - When your presses "Re Join" Action button, restart process from root component
523
- // - When your presses "Done" Action button
524
- // - If we have callback fn, call it
525
- // - Otherwise try our best to navigate away from current screen
526
- //
527
- // - No screen to show
528
- // - No need to reset redux state?
529
- // - HMSInstance will be available till this point
530
- // - If we have callback fn, call it
531
- // - Otherwise try our best to navigate away from current screen
532
- // - When we are navigated away from screen, HMSInstance will be not available
533
-
534
- // dispatch(clearMessageData());
535
- // dispatch(clearPeerData());
536
- // dispatch(clearHmsReference());
537
-
538
- // if (navigation.canGoBack()) {
539
- // navigation.goBack();
540
- // } else {
541
- // TODO: remove this later
542
- navigation.navigate('QRCodeScreen');
543
- dispatch(clearStore());
544
- // }
545
- }).catch(e => {
546
- console.log(`Destroy HMS instance Error: ${e}`);
547
- Toast.showWithGravity(`Destroy HMS instance Error: ${e}`, Toast.LONG, Toast.TOP);
548
- });
647
+ destroy();
549
648
  };
550
649
  hmsInstance.addEventListener(HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM, removedFromRoomHandler);
551
650
  return () => {
552
651
  hmsInstance.removeEventListener(HMSUpdateListenerActions.ON_REMOVED_FROM_ROOM);
553
652
  };
554
- }, [hmsInstance]);
653
+ }, [destroy, hmsInstance]);
555
654
  };
556
655
  export const usePIPListener = () => {
557
656
  const hmsInstance = useHMSInstance();
@@ -589,6 +688,65 @@ export const usePIPListener = () => {
589
688
  }
590
689
  }, [isPipModeActive, hmsInstance]);
591
690
  };
691
+ export const useHMSNetworkQualityUpdate = () => {
692
+ const hmsInstance = useHMSInstance();
693
+ useEffect(() => {
694
+ hmsInstance.enableNetworkQualityUpdates();
695
+ return () => hmsInstance.disableNetworkQualityUpdates();
696
+ }, [hmsInstance]);
697
+ };
698
+ export const useHMSActiveSpeakerUpdates = (setPeerTrackNodes, active) => {
699
+ const hmsInstance = useHMSInstance();
700
+ const reduxStore = useStore();
701
+ const isPortraitOrientation = useIsPortraitOrientation();
702
+ useEffect(() => {
703
+ if (!active) {
704
+ return;
705
+ }
706
+ const handleActiveSpeaker = data => {
707
+ const activePage = reduxStore.getState().app.gridViewActivePage;
708
+ if (activePage !== 0) {
709
+ return;
710
+ }
711
+ setPeerTrackNodes(prevPeerTrackNodes => {
712
+ // list of active speakers which are not in first page
713
+ const activeSpeakers = data.filter(speaker => {
714
+ const uniquePeerTrackNodeId = createPeerTrackNodeUniqueId(speaker.peer, speaker.track);
715
+ const inFirstPage = prevPeerTrackNodes.some((prevPeerTrackNode, _idx) => {
716
+ // we are on index which is not in current page
717
+ if (_idx >= (isPortraitOrientation ? MaxTilesInOnePage.IN_PORTRAIT : MaxTilesInOnePage.IN_LANDSCAPE)) {
718
+ return false;
719
+ }
720
+ return prevPeerTrackNode.id === uniquePeerTrackNodeId;
721
+ });
722
+ return !inFirstPage;
723
+ });
724
+
725
+ // All active speakers are in first page already, Do nothing
726
+ if (activeSpeakers.length === 0) {
727
+ return prevPeerTrackNodes;
728
+ }
729
+
730
+ // Updated list with all Active Speakers in first page
731
+ return prevPeerTrackNodes.reduce((accumulated, current) => {
732
+ if (activeSpeakers.findIndex(activeSpeaker => createPeerTrackNodeUniqueId(activeSpeaker.peer, activeSpeaker.track) === current.id) >= 0) {
733
+ // return [current, ...accumulated];
734
+ accumulated.unshift(current);
735
+ return accumulated;
736
+ }
737
+
738
+ // return [...accumulated, current];
739
+ accumulated.push(current);
740
+ return accumulated;
741
+ }, []);
742
+ });
743
+ };
744
+ hmsInstance.addEventListener(HMSUpdateListenerActions.ON_SPEAKER, handleActiveSpeaker);
745
+ return () => {
746
+ hmsInstance.removeEventListener(HMSUpdateListenerActions.ON_SPEAKER);
747
+ };
748
+ }, [isPortraitOrientation, active, hmsInstance]);
749
+ };
592
750
  let modalTaskRef = {
593
751
  current: null
594
752
  };
@@ -660,12 +818,21 @@ export const clearConfig = () => {
660
818
  };
661
819
  export const useHMSConfig = () => {
662
820
  const hmsInstance = useHMSInstance();
821
+ const dispatch = useDispatch();
663
822
  const store = useStore();
664
823
  const getConfig = useCallback(async () => {
665
824
  var _storeState$user$endP, _storeState$user$endP2;
666
825
  if (hmsConfig) return hmsConfig;
667
826
  const storeState = store.getState();
668
827
  const token = await hmsInstance.getAuthTokenByRoomCode(storeState.user.roomCode, storeState.user.userId, (_storeState$user$endP = storeState.user.endPoints) === null || _storeState$user$endP === void 0 ? void 0 : _storeState$user$endP.token);
828
+
829
+ // TODO: [REMOVE LATER] added trycatch block so that we can join rooms where we are getting error from Layout API
830
+ try {
831
+ const roomLayout = await getRoomLayout(hmsInstance, token, 'https://api-nonprod.100ms.live');
832
+ dispatch(setLayoutConfig(roomLayout));
833
+ } catch (error) {
834
+ console.warn('# getRoomLayout error: ', error);
835
+ }
669
836
  hmsConfig = new HMSConfig({
670
837
  authToken: token,
671
838
  username: storeState.user.userName,
@@ -676,8 +843,19 @@ export const useHMSConfig = () => {
676
843
 
677
844
  return hmsConfig;
678
845
  }, [hmsInstance]);
846
+ const updateConfig = useCallback(data => {
847
+ if (!hmsConfig) {
848
+ throw new Error('No HMSConfig is available to update!');
849
+ }
850
+ Object.entries(data).forEach(_ref4 => {
851
+ let [key, value] = _ref4;
852
+ // @ts-ignore
853
+ hmsConfig[key] = value;
854
+ });
855
+ }, []);
679
856
  return {
680
857
  clearConfig,
858
+ updateConfig,
681
859
  getConfig
682
860
  };
683
861
  };
@@ -780,4 +958,139 @@ export const useFilteredParticipants = () => {
780
958
  setSearchText: setParticipantsSearchInput
781
959
  };
782
960
  };
961
+ export const useShouldGoLive = () => {
962
+ const shouldGoLive = useSelector(selectShouldGoLive);
963
+ return shouldGoLive;
964
+ };
965
+ export const useLeaveMethods = () => {
966
+ const navigation = useContext(NavigationContext);
967
+ const hmsInstance = useHMSInstance();
968
+ const dispatch = useDispatch();
969
+ const reduxStore = useStore();
970
+ const destroy = useCallback(async () => {
971
+ try {
972
+ const s = await hmsInstance.destroy();
973
+ console.log('Destroy Success: ', s);
974
+ // TODOS:
975
+ // - If show `Meeting_Ended` is true, show Meeting screen by setting state to MEETING_ENDED
976
+ // - Reset Redux States
977
+ // - HMSInstance will not be available now
978
+ // - When your presses "Re Join" Action button, restart process from root component
979
+ // - When your presses "Done" Action button
980
+ // - If we have callback fn, call it
981
+ // - Otherwise try our best to navigate away from current screen
982
+ //
983
+ // - No screen to show
984
+ // - No need to reset redux state?
985
+ // - HMSInstance will be available till this point
986
+ // - If we have callback fn, call it
987
+ // - Otherwise try our best to navigate away from current screen
988
+ // - When we are navigated away from screen, HMSInstance will be not available
989
+
990
+ // dispatch(clearMessageData());
991
+ // dispatch(clearPeerData());
992
+ // dispatch(clearHmsReference());
993
+
994
+ const onLeave = reduxStore.getState().user.onLeave;
995
+ if (typeof onLeave === 'function') {
996
+ onLeave();
997
+ dispatch(clearStore());
998
+ } else if (navigation && navigation.canGoBack()) {
999
+ navigation.goBack();
1000
+ dispatch(clearStore());
1001
+ } else {
1002
+ // TODO: call onLeave Callback if provided
1003
+ // Otherwise default action is to show "Meeting Ended" screen
1004
+ dispatch(clearStore()); // TODO: We need different clearStore for MeetingEnded
1005
+ dispatch(changeMeetingState(MeetingState.MEETING_ENDED));
1006
+ }
1007
+ } catch (e) {
1008
+ console.log(`Destroy HMS instance Error: ${e}`);
1009
+ Toast.showWithGravity(`Destroy HMS instance Error: ${e}`, Toast.LONG, Toast.TOP);
1010
+ return Promise.reject(e);
1011
+ }
1012
+ }, [hmsInstance]);
1013
+ const leave = useCallback(async () => {
1014
+ try {
1015
+ const d = await hmsInstance.leave();
1016
+ console.log('Leave Success: ', d);
1017
+ await destroy();
1018
+ } catch (e) {
1019
+ console.log(`Leave Room Error: ${e}`);
1020
+ Toast.showWithGravity(`Leave Room Error: ${e}`, Toast.LONG, Toast.TOP);
1021
+ }
1022
+ }, [destroy, hmsInstance]);
1023
+ const goToPreview = useCallback(async () => {
1024
+ try {
1025
+ await hmsInstance.leave();
1026
+ await hmsInstance.destroy();
1027
+ dispatch(clearStore());
1028
+ } catch (error) {
1029
+ Toast.showWithGravity(`Unable to go to Preview: ${error}`, Toast.LONG, Toast.TOP);
1030
+ }
1031
+ }, [hmsInstance]);
1032
+ const endRoom = useCallback(async () => {
1033
+ try {
1034
+ const d = await hmsInstance.endRoom('Host ended the room');
1035
+ console.log('EndRoom Success: ', d);
1036
+ await destroy();
1037
+ } catch (e) {
1038
+ console.log('EndRoom Error: ', e);
1039
+ }
1040
+ }, [destroy, hmsInstance]);
1041
+ return {
1042
+ destroy,
1043
+ leave,
1044
+ endRoom,
1045
+ goToPreview
1046
+ };
1047
+ };
1048
+ export const useHMSLayoutConfig = () => {
1049
+ return useSelector(state => state.hmsStates.layoutConfig);
1050
+ };
1051
+ export const useHMSRoomTheme = selector => {
1052
+ return useSelector(state => {
1053
+ const layoutConfig = state.hmsStates.layoutConfig;
1054
+ const roomTheme = layoutConfig === null || layoutConfig === void 0 ? void 0 : layoutConfig.themes.find(theme => theme.default);
1055
+ const defaultTheme = roomTheme ? roomTheme.palette ? roomTheme : {
1056
+ ...roomTheme,
1057
+ palette: DEFAULT_THEME.palette
1058
+ } : DEFAULT_THEME;
1059
+ if (!selector) {
1060
+ return defaultTheme;
1061
+ }
1062
+ return selector(defaultTheme);
1063
+ }, shallowEqual);
1064
+ };
1065
+ export const useHMSRoomColorPalette = () => {
1066
+ return useHMSRoomTheme(theme => theme.palette);
1067
+ };
1068
+ export const useHMSRoomTypography = () => {
1069
+ return useSelector(state => {
1070
+ const layoutConfig = state.hmsStates.layoutConfig;
1071
+ const typography = layoutConfig === null || layoutConfig === void 0 ? void 0 : layoutConfig.typography;
1072
+ if (!typography) {
1073
+ return DEFAULT_TYPOGRAPHY;
1074
+ }
1075
+ if (!typography.font_family) {
1076
+ return {
1077
+ ...DEFAULT_TYPOGRAPHY,
1078
+ ...typography
1079
+ };
1080
+ }
1081
+ return typography;
1082
+ }, shallowEqual);
1083
+ };
1084
+ export const useHMSRoomStyleSheet = function (updater) {
1085
+ let deps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
1086
+ const theme = useHMSRoomTheme();
1087
+ const typography = useHMSRoomTypography();
1088
+ return useMemo(() => updater(theme, typography), [theme, typography, ...deps]);
1089
+ };
1090
+ export const useHMSRoomStyle = function (updater) {
1091
+ let deps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
1092
+ return useHMSRoomStyleSheet((theme, typography) => ({
1093
+ default: updater(theme, typography)
1094
+ }), deps).default;
1095
+ };
783
1096
  //# sourceMappingURL=hooks-util.js.map