@100mslive/react-native-hms 2.0.0-alpha.0 → 2.0.0-alpha.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 (960) hide show
  1. package/README.md +21 -15
  2. package/android/build.gradle +95 -48
  3. package/android/src/main/java/com/reactnativehmssdk/HMSAudioshareActivity.kt +8 -10
  4. package/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +177 -3
  5. package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayer.kt +149 -29
  6. package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayerManagerImpl.kt +185 -0
  7. package/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt +80 -20
  8. package/android/src/main/java/com/reactnativehmssdk/{HMSManager.kt → HMSManagerImpl.kt} +517 -145
  9. package/android/src/main/java/com/reactnativehmssdk/HMSRNSDK.kt +503 -312
  10. package/android/src/main/java/com/reactnativehmssdk/HMSReactNativeEvent.kt +29 -0
  11. package/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManagerImpl.kt +119 -0
  12. package/android/src/main/java/com/reactnativehmssdk/HMSView.kt +64 -12
  13. package/android/src/main/java/com/reactnativehmssdk/HmsScreenshareActivity.kt +9 -9
  14. package/android/src/main/java/com/reactnativehmssdk/HmssdkPackage.kt +44 -8
  15. package/android/src/main/java/com/reactnativehmssdk/Interactivity/HMSInteractivityDecoder.kt +435 -0
  16. package/android/src/main/java/com/reactnativehmssdk/Interactivity/HMSInteractivityHelper.kt +353 -0
  17. package/android/src/main/java/com/reactnativehmssdk/Interactivity/HMSRNInteractivityCenter.kt +245 -0
  18. package/android/src/main/java/com/reactnativehmssdk/PipActionReceiver.kt +13 -3
  19. package/android/src/newarch/java/com/reactnativehmssdk/HMSHLSPlayerManager.kt +128 -0
  20. package/android/src/newarch/java/com/reactnativehmssdk/HMSManager.kt +332 -0
  21. package/android/src/newarch/java/com/reactnativehmssdk/HMSSDKViewManager.kt +102 -0
  22. package/android/src/oldarch/java/com/reactnativehmssdk/HMSHLSPlayerManager.kt +61 -0
  23. package/android/src/oldarch/java/com/reactnativehmssdk/HMSManager.kt +351 -0
  24. package/android/src/oldarch/java/com/reactnativehmssdk/HMSSDKViewManager.kt +87 -0
  25. package/ios/HMSConstants.swift +4 -0
  26. package/ios/HMSDecoder.swift +154 -18
  27. package/ios/HMSHLSPlayerComponentView.mm +325 -0
  28. package/ios/HMSHLSPlayerManager.m +16 -0
  29. package/ios/HMSHLSPlayerManager.swift +236 -70
  30. package/ios/HMSHelper.swift +126 -14
  31. package/ios/HMSInteractivityDecoder.swift +314 -0
  32. package/ios/HMSInteractivityHelper.swift +169 -0
  33. package/ios/HMSManager.m +203 -10
  34. package/ios/HMSManager.mm +365 -0
  35. package/ios/HMSManager.swift +431 -87
  36. package/ios/HMSRNInteractivityCenter.swift +161 -0
  37. package/ios/HMSRNSDK.swift +961 -134
  38. package/ios/HMSView.m +9 -0
  39. package/ios/HMSView.swift +45 -16
  40. package/ios/HMSViewComponentView.mm +229 -0
  41. package/ios/PIPMode/HMSPipModel.swift +18 -0
  42. package/ios/PIPMode/HMSPipView.swift +36 -0
  43. package/ios/PIPMode/HMSSampleBufferSwiftUIView.swift +45 -0
  44. package/lib/commonjs/classes/HMSAudioCodec.js +1 -2
  45. package/lib/commonjs/classes/HMSAudioCodec.js.map +1 -1
  46. package/lib/commonjs/classes/HMSAudioDevice.js +10 -2
  47. package/lib/commonjs/classes/HMSAudioDevice.js.map +1 -1
  48. package/lib/commonjs/classes/HMSAudioFilePlayerNode.js.map +1 -1
  49. package/lib/commonjs/classes/HMSAudioMixerSource.js +3 -3
  50. package/lib/commonjs/classes/HMSAudioMixerSource.js.map +1 -1
  51. package/lib/commonjs/classes/HMSAudioMixingMode.js +12 -2
  52. package/lib/commonjs/classes/HMSAudioMixingMode.js.map +1 -1
  53. package/lib/commonjs/classes/HMSAudioMode.js +1 -2
  54. package/lib/commonjs/classes/HMSAudioMode.js.map +1 -1
  55. package/lib/commonjs/classes/HMSAudioNode.js +3 -3
  56. package/lib/commonjs/classes/HMSAudioNode.js.map +1 -1
  57. package/lib/commonjs/classes/HMSAudioSettings.js +3 -3
  58. package/lib/commonjs/classes/HMSAudioSettings.js.map +1 -1
  59. package/lib/commonjs/classes/HMSAudioTrack.js +9 -0
  60. package/lib/commonjs/classes/HMSAudioTrack.js.map +1 -1
  61. package/lib/commonjs/classes/HMSAudioTrackSettings.js +12 -5
  62. package/lib/commonjs/classes/HMSAudioTrackSettings.js.map +1 -1
  63. package/lib/commonjs/classes/HMSBrowserRecordingState.js +5 -3
  64. package/lib/commonjs/classes/HMSBrowserRecordingState.js.map +1 -1
  65. package/lib/commonjs/classes/HMSCameraControl.js +3 -4
  66. package/lib/commonjs/classes/HMSCameraControl.js.map +1 -1
  67. package/lib/commonjs/classes/HMSCameraFacing.js +10 -2
  68. package/lib/commonjs/classes/HMSCameraFacing.js.map +1 -1
  69. package/lib/commonjs/classes/HMSChangeTrackStateRequest.js +3 -3
  70. package/lib/commonjs/classes/HMSChangeTrackStateRequest.js.map +1 -1
  71. package/lib/commonjs/classes/HMSConfig.js +30 -3
  72. package/lib/commonjs/classes/HMSConfig.js.map +1 -1
  73. package/lib/commonjs/classes/HMSConstants.js +1 -2
  74. package/lib/commonjs/classes/HMSConstants.js.map +1 -1
  75. package/lib/commonjs/classes/HMSEncoder.js +57 -14
  76. package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
  77. package/lib/commonjs/classes/HMSEventEmitter.js +1 -2
  78. package/lib/commonjs/classes/HMSEventEmitter.js.map +1 -1
  79. package/lib/commonjs/classes/HMSException.js +21 -3
  80. package/lib/commonjs/classes/HMSException.js.map +1 -1
  81. package/lib/commonjs/classes/HMSHLSConfig.js +3 -3
  82. package/lib/commonjs/classes/HMSHLSConfig.js.map +1 -1
  83. package/lib/commonjs/classes/HMSHLSMeetingURLVariant.js +3 -3
  84. package/lib/commonjs/classes/HMSHLSMeetingURLVariant.js.map +1 -1
  85. package/lib/commonjs/classes/HMSHLSPlaylistType.js +12 -0
  86. package/lib/commonjs/classes/HMSHLSPlaylistType.js.map +1 -0
  87. package/lib/commonjs/classes/HMSHLSRecordingConfig.js +3 -3
  88. package/lib/commonjs/classes/HMSHLSRecordingConfig.js.map +1 -1
  89. package/lib/commonjs/classes/HMSHLSRecordingState.js +7 -7
  90. package/lib/commonjs/classes/HMSHLSRecordingState.js.map +1 -1
  91. package/lib/commonjs/classes/HMSHLSStreamingState.js +9 -3
  92. package/lib/commonjs/classes/HMSHLSStreamingState.js.map +1 -1
  93. package/lib/commonjs/classes/HMSHLSTimedMetadata.js +2 -0
  94. package/lib/commonjs/classes/HMSHLSTimedMetadata.js.map +1 -0
  95. package/lib/commonjs/classes/HMSHLSVariant.js +5 -3
  96. package/lib/commonjs/classes/HMSHLSVariant.js.map +1 -1
  97. package/lib/commonjs/classes/HMSHelper.js.map +1 -1
  98. package/lib/commonjs/classes/HMSIOSAudioMode.js +16 -2
  99. package/lib/commonjs/classes/HMSIOSAudioMode.js.map +1 -1
  100. package/lib/commonjs/classes/HMSInteractivityCenter.js +174 -0
  101. package/lib/commonjs/classes/HMSInteractivityCenter.js.map +1 -0
  102. package/lib/commonjs/classes/HMSInteractivityEncoder.js +83 -0
  103. package/lib/commonjs/classes/HMSInteractivityEncoder.js.map +1 -0
  104. package/lib/commonjs/classes/HMSLayer.js +1 -2
  105. package/lib/commonjs/classes/HMSLayer.js.map +1 -1
  106. package/lib/commonjs/classes/HMSLocalAudioStats.js +3 -3
  107. package/lib/commonjs/classes/HMSLocalAudioStats.js.map +1 -1
  108. package/lib/commonjs/classes/HMSLocalAudioTrack.js +3 -3
  109. package/lib/commonjs/classes/HMSLocalAudioTrack.js.map +1 -1
  110. package/lib/commonjs/classes/HMSLocalPeer.js +3 -3
  111. package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
  112. package/lib/commonjs/classes/HMSLocalVideoStats.js +3 -3
  113. package/lib/commonjs/classes/HMSLocalVideoStats.js.map +1 -1
  114. package/lib/commonjs/classes/HMSLocalVideoTrack.js +3 -3
  115. package/lib/commonjs/classes/HMSLocalVideoTrack.js.map +1 -1
  116. package/lib/commonjs/classes/HMSLogAlarmManager.js +13 -2
  117. package/lib/commonjs/classes/HMSLogAlarmManager.js.map +1 -1
  118. package/lib/commonjs/classes/HMSLogLevel.js +13 -2
  119. package/lib/commonjs/classes/HMSLogLevel.js.map +1 -1
  120. package/lib/commonjs/classes/HMSLogSettings.js +17 -3
  121. package/lib/commonjs/classes/HMSLogSettings.js.map +1 -1
  122. package/lib/commonjs/classes/HMSLogger.js +4 -5
  123. package/lib/commonjs/classes/HMSLogger.js.map +1 -1
  124. package/lib/commonjs/classes/HMSMessage.js +3 -3
  125. package/lib/commonjs/classes/HMSMessage.js.map +1 -1
  126. package/lib/commonjs/classes/HMSMessageRecipient.js +3 -3
  127. package/lib/commonjs/classes/HMSMessageRecipient.js.map +1 -1
  128. package/lib/commonjs/classes/HMSMessageRecipientType.js +1 -2
  129. package/lib/commonjs/classes/HMSMessageRecipientType.js.map +1 -1
  130. package/lib/commonjs/classes/HMSMicNode.js.map +1 -1
  131. package/lib/commonjs/classes/HMSNativeEventEmitter.js +4 -6
  132. package/lib/commonjs/classes/HMSNativeEventEmitter.js.map +1 -1
  133. package/lib/commonjs/classes/HMSNativeEventListener.js +3 -4
  134. package/lib/commonjs/classes/HMSNativeEventListener.js.map +1 -1
  135. package/lib/commonjs/classes/HMSNetworkQuality.js +14 -3
  136. package/lib/commonjs/classes/HMSNetworkQuality.js.map +1 -1
  137. package/lib/commonjs/classes/HMSNoiseCancellationPlugin.js +158 -0
  138. package/lib/commonjs/classes/HMSNoiseCancellationPlugin.js.map +1 -0
  139. package/lib/commonjs/classes/HMSPIPConfig.js +6 -0
  140. package/lib/commonjs/classes/HMSPIPConfig.js.map +1 -0
  141. package/lib/commonjs/classes/HMSPIPListenerActions.js +10 -2
  142. package/lib/commonjs/classes/HMSPIPListenerActions.js.map +1 -1
  143. package/lib/commonjs/classes/HMSPeer.js +186 -5
  144. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  145. package/lib/commonjs/classes/HMSPeerListIterator.js +25 -7
  146. package/lib/commonjs/classes/HMSPeerListIterator.js.map +1 -1
  147. package/lib/commonjs/classes/HMSPeerListIteratorOptions.js.map +1 -1
  148. package/lib/commonjs/classes/HMSPeerType.js +24 -0
  149. package/lib/commonjs/classes/HMSPeerType.js.map +1 -0
  150. package/lib/commonjs/classes/HMSPeerUpdate.js +2 -4
  151. package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
  152. package/lib/commonjs/classes/HMSPeersCache.js +6 -7
  153. package/lib/commonjs/classes/HMSPeersCache.js.map +1 -1
  154. package/lib/commonjs/classes/HMSPermissions.js +11 -3
  155. package/lib/commonjs/classes/HMSPermissions.js.map +1 -1
  156. package/lib/commonjs/classes/HMSPollsListenerActions.js +11 -0
  157. package/lib/commonjs/classes/HMSPollsListenerActions.js.map +1 -0
  158. package/lib/commonjs/classes/HMSPublishSettings.js +3 -3
  159. package/lib/commonjs/classes/HMSPublishSettings.js.map +1 -1
  160. package/lib/commonjs/classes/HMSQualityLimitationReason.js +1 -2
  161. package/lib/commonjs/classes/HMSQualityLimitationReason.js.map +1 -1
  162. package/lib/commonjs/classes/HMSQualityLimitationReasons.js +3 -3
  163. package/lib/commonjs/classes/HMSQualityLimitationReasons.js.map +1 -1
  164. package/lib/commonjs/classes/HMSRTCStats.js +3 -3
  165. package/lib/commonjs/classes/HMSRTCStats.js.map +1 -1
  166. package/lib/commonjs/classes/HMSRTCStatsReport.js +3 -3
  167. package/lib/commonjs/classes/HMSRTCStatsReport.js.map +1 -1
  168. package/lib/commonjs/classes/HMSRTMPConfig.js +17 -3
  169. package/lib/commonjs/classes/HMSRTMPConfig.js.map +1 -1
  170. package/lib/commonjs/classes/HMSRecordingState.js +17 -0
  171. package/lib/commonjs/classes/HMSRecordingState.js.map +1 -0
  172. package/lib/commonjs/classes/HMSRemoteAudioStats.js +3 -3
  173. package/lib/commonjs/classes/HMSRemoteAudioStats.js.map +1 -1
  174. package/lib/commonjs/classes/HMSRemoteAudioTrack.js +3 -3
  175. package/lib/commonjs/classes/HMSRemoteAudioTrack.js.map +1 -1
  176. package/lib/commonjs/classes/HMSRemotePeer.js +3 -3
  177. package/lib/commonjs/classes/HMSRemotePeer.js.map +1 -1
  178. package/lib/commonjs/classes/HMSRemoteVideoStats.js +3 -3
  179. package/lib/commonjs/classes/HMSRemoteVideoStats.js.map +1 -1
  180. package/lib/commonjs/classes/HMSRemoteVideoTrack.js +3 -3
  181. package/lib/commonjs/classes/HMSRemoteVideoTrack.js.map +1 -1
  182. package/lib/commonjs/classes/HMSRole.js +20 -3
  183. package/lib/commonjs/classes/HMSRole.js.map +1 -1
  184. package/lib/commonjs/classes/HMSRoleChangeRequest.js +3 -3
  185. package/lib/commonjs/classes/HMSRoleChangeRequest.js.map +1 -1
  186. package/lib/commonjs/classes/HMSRoom.js +17 -4
  187. package/lib/commonjs/classes/HMSRoom.js.map +1 -1
  188. package/lib/commonjs/classes/HMSRoomCache.js +13 -7
  189. package/lib/commonjs/classes/HMSRoomCache.js.map +1 -1
  190. package/lib/commonjs/classes/HMSRoomUpdate.js +2 -2
  191. package/lib/commonjs/classes/HMSRoomUpdate.js.map +1 -1
  192. package/lib/commonjs/classes/HMSRtmpStreamingState.js +5 -5
  193. package/lib/commonjs/classes/HMSRtmpStreamingState.js.map +1 -1
  194. package/lib/commonjs/classes/HMSRtmpVideoResolution.js +16 -3
  195. package/lib/commonjs/classes/HMSRtmpVideoResolution.js.map +1 -1
  196. package/lib/commonjs/classes/HMSSDK.js +1313 -327
  197. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  198. package/lib/commonjs/classes/HMSScreenBroadcastAudioReceiverNode.js.map +1 -1
  199. package/lib/commonjs/classes/HMSServerRecordingState.js +5 -3
  200. package/lib/commonjs/classes/HMSServerRecordingState.js.map +1 -1
  201. package/lib/commonjs/classes/HMSSessionStore.js +20 -23
  202. package/lib/commonjs/classes/HMSSessionStore.js.map +1 -1
  203. package/lib/commonjs/classes/HMSSimulcastLayerDefinition.js +3 -3
  204. package/lib/commonjs/classes/HMSSimulcastLayerDefinition.js.map +1 -1
  205. package/lib/commonjs/classes/HMSSimulcastLayerSettings.js +3 -3
  206. package/lib/commonjs/classes/HMSSimulcastLayerSettings.js.map +1 -1
  207. package/lib/commonjs/classes/HMSSimulcastLayerSettingsPolicy.js +3 -3
  208. package/lib/commonjs/classes/HMSSimulcastLayerSettingsPolicy.js.map +1 -1
  209. package/lib/commonjs/classes/HMSSimulcastSettings.js +3 -3
  210. package/lib/commonjs/classes/HMSSimulcastSettings.js.map +1 -1
  211. package/lib/commonjs/classes/HMSSimulcastSettingsPolicy.js +3 -3
  212. package/lib/commonjs/classes/HMSSimulcastSettingsPolicy.js.map +1 -1
  213. package/lib/commonjs/classes/HMSSpeaker.js +3 -3
  214. package/lib/commonjs/classes/HMSSpeaker.js.map +1 -1
  215. package/lib/commonjs/classes/HMSStreamingState.js +15 -0
  216. package/lib/commonjs/classes/HMSStreamingState.js.map +1 -0
  217. package/lib/commonjs/classes/HMSSubscribeDegradationPolicy.js +3 -3
  218. package/lib/commonjs/classes/HMSSubscribeDegradationPolicy.js.map +1 -1
  219. package/lib/commonjs/classes/HMSSubscribeSettings.js +3 -3
  220. package/lib/commonjs/classes/HMSSubscribeSettings.js.map +1 -1
  221. package/lib/commonjs/classes/HMSTrack.js +16 -3
  222. package/lib/commonjs/classes/HMSTrack.js.map +1 -1
  223. package/lib/commonjs/classes/HMSTrackSettings.js +13 -3
  224. package/lib/commonjs/classes/HMSTrackSettings.js.map +1 -1
  225. package/lib/commonjs/classes/HMSTrackSettingsInitState.js +10 -2
  226. package/lib/commonjs/classes/HMSTrackSettingsInitState.js.map +1 -1
  227. package/lib/commonjs/classes/HMSTrackSource.js +11 -2
  228. package/lib/commonjs/classes/HMSTrackSource.js.map +1 -1
  229. package/lib/commonjs/classes/HMSTrackType.js +8 -2
  230. package/lib/commonjs/classes/HMSTrackType.js.map +1 -1
  231. package/lib/commonjs/classes/HMSTrackUpdate.js +1 -2
  232. package/lib/commonjs/classes/HMSTrackUpdate.js.map +1 -1
  233. package/lib/commonjs/classes/HMSUpdateListenerActions.js +44 -5
  234. package/lib/commonjs/classes/HMSUpdateListenerActions.js.map +1 -1
  235. package/lib/commonjs/classes/HMSVideoCodec.js +1 -2
  236. package/lib/commonjs/classes/HMSVideoCodec.js.map +1 -1
  237. package/lib/commonjs/classes/HMSVideoResolution.js +3 -3
  238. package/lib/commonjs/classes/HMSVideoResolution.js.map +1 -1
  239. package/lib/commonjs/classes/HMSVideoSettings.js +3 -3
  240. package/lib/commonjs/classes/HMSVideoSettings.js.map +1 -1
  241. package/lib/commonjs/classes/HMSVideoTrack.js +20 -3
  242. package/lib/commonjs/classes/HMSVideoTrack.js.map +1 -1
  243. package/lib/commonjs/classes/HMSVideoTrackSettings.js +18 -7
  244. package/lib/commonjs/classes/HMSVideoTrackSettings.js.map +1 -1
  245. package/lib/commonjs/classes/HMSVideoViewMode.js +1 -2
  246. package/lib/commonjs/classes/HMSVideoViewMode.js.map +1 -1
  247. package/lib/commonjs/classes/HmsView.js +77 -28
  248. package/lib/commonjs/classes/HmsView.js.map +1 -1
  249. package/lib/commonjs/classes/polls/DecodedPollLeaderboardResponse.js +6 -0
  250. package/lib/commonjs/classes/polls/DecodedPollLeaderboardResponse.js.map +1 -0
  251. package/lib/commonjs/classes/polls/HMSPoll.js +6 -0
  252. package/lib/commonjs/classes/polls/HMSPoll.js.map +1 -0
  253. package/lib/commonjs/classes/polls/HMSPollCategory.js +12 -0
  254. package/lib/commonjs/classes/polls/HMSPollCategory.js.map +1 -0
  255. package/lib/commonjs/classes/polls/HMSPollCreateParams.js +6 -0
  256. package/lib/commonjs/classes/polls/HMSPollCreateParams.js.map +1 -0
  257. package/lib/commonjs/classes/polls/HMSPollLeaderboardEntry.js +6 -0
  258. package/lib/commonjs/classes/polls/HMSPollLeaderboardEntry.js.map +1 -0
  259. package/lib/commonjs/classes/polls/HMSPollLeaderboardSummary.js +2 -0
  260. package/lib/commonjs/classes/polls/HMSPollLeaderboardSummary.js.map +1 -0
  261. package/lib/commonjs/classes/polls/HMSPollQuestion.js +6 -0
  262. package/lib/commonjs/classes/polls/HMSPollQuestion.js.map +1 -0
  263. package/lib/commonjs/classes/polls/HMSPollQuestionAnswer.js +2 -0
  264. package/lib/commonjs/classes/polls/HMSPollQuestionAnswer.js.map +1 -0
  265. package/lib/commonjs/classes/polls/HMSPollQuestionCreateParams.js +6 -0
  266. package/lib/commonjs/classes/polls/HMSPollQuestionCreateParams.js.map +1 -0
  267. package/lib/commonjs/classes/polls/HMSPollQuestionOption.js +2 -0
  268. package/lib/commonjs/classes/polls/HMSPollQuestionOption.js.map +1 -0
  269. package/lib/commonjs/classes/polls/HMSPollQuestionOptionCreateParams.js +6 -0
  270. package/lib/commonjs/classes/polls/HMSPollQuestionOptionCreateParams.js.map +1 -0
  271. package/lib/commonjs/classes/polls/HMSPollQuestionQuizOptionCreateParams.js +6 -0
  272. package/lib/commonjs/classes/polls/HMSPollQuestionQuizOptionCreateParams.js.map +1 -0
  273. package/lib/commonjs/classes/polls/HMSPollQuestionResponse.js +6 -0
  274. package/lib/commonjs/classes/polls/HMSPollQuestionResponse.js.map +1 -0
  275. package/lib/commonjs/classes/polls/HMSPollQuestionResponseCreateParams.js +6 -0
  276. package/lib/commonjs/classes/polls/HMSPollQuestionResponseCreateParams.js.map +1 -0
  277. package/lib/commonjs/classes/polls/HMSPollQuestionResponseResult.js +2 -0
  278. package/lib/commonjs/classes/polls/HMSPollQuestionResponseResult.js.map +1 -0
  279. package/lib/commonjs/classes/polls/HMSPollQuestionResult.js +2 -0
  280. package/lib/commonjs/classes/polls/HMSPollQuestionResult.js.map +1 -0
  281. package/lib/commonjs/classes/polls/HMSPollQuestionType.js +14 -0
  282. package/lib/commonjs/classes/polls/HMSPollQuestionType.js.map +1 -0
  283. package/lib/commonjs/classes/polls/HMSPollResponsePeerInfo.js +2 -0
  284. package/lib/commonjs/classes/polls/HMSPollResponsePeerInfo.js.map +1 -0
  285. package/lib/commonjs/classes/polls/HMSPollResult.js +6 -0
  286. package/lib/commonjs/classes/polls/HMSPollResult.js.map +1 -0
  287. package/lib/commonjs/classes/polls/HMSPollState.js +13 -0
  288. package/lib/commonjs/classes/polls/HMSPollState.js.map +1 -0
  289. package/lib/commonjs/classes/polls/HMSPollType.js +12 -0
  290. package/lib/commonjs/classes/polls/HMSPollType.js.map +1 -0
  291. package/lib/commonjs/classes/polls/HMSPollUpdateType.js +13 -0
  292. package/lib/commonjs/classes/polls/HMSPollUpdateType.js.map +1 -0
  293. package/lib/commonjs/classes/polls/HMSPollUserTrackingMode.js +13 -0
  294. package/lib/commonjs/classes/polls/HMSPollUserTrackingMode.js.map +1 -0
  295. package/lib/commonjs/classes/polls/PollLeaderboardResponse.js +6 -0
  296. package/lib/commonjs/classes/polls/PollLeaderboardResponse.js.map +1 -0
  297. package/lib/commonjs/classes/transcriptions/HMSTranscript.js +6 -0
  298. package/lib/commonjs/classes/transcriptions/HMSTranscript.js.map +1 -0
  299. package/lib/commonjs/classes/transcriptions/OnTranscriptionError.js +2 -0
  300. package/lib/commonjs/classes/transcriptions/OnTranscriptionError.js.map +1 -0
  301. package/lib/commonjs/classes/transcriptions/TranscriptionState.js +14 -0
  302. package/lib/commonjs/classes/transcriptions/TranscriptionState.js.map +1 -0
  303. package/lib/commonjs/classes/transcriptions/Transcriptions.js +6 -0
  304. package/lib/commonjs/classes/transcriptions/Transcriptions.js.map +1 -0
  305. package/lib/commonjs/classes/transcriptions/TranscriptionsMode.js +12 -0
  306. package/lib/commonjs/classes/transcriptions/TranscriptionsMode.js.map +1 -0
  307. package/lib/commonjs/classes/transcriptions/index.js +61 -0
  308. package/lib/commonjs/classes/transcriptions/index.js.map +1 -0
  309. package/lib/commonjs/classes/whiteboard/HMSWhiteboard.js +6 -0
  310. package/lib/commonjs/classes/whiteboard/HMSWhiteboard.js.map +1 -0
  311. package/lib/commonjs/classes/whiteboard/HMSWhiteboardListenerActions.js +11 -0
  312. package/lib/commonjs/classes/whiteboard/HMSWhiteboardListenerActions.js.map +1 -0
  313. package/lib/commonjs/classes/whiteboard/HMSWhiteboardState.js +12 -0
  314. package/lib/commonjs/classes/whiteboard/HMSWhiteboardState.js.map +1 -0
  315. package/lib/commonjs/classes/whiteboard/HMSWhiteboardUpdateType.js +12 -0
  316. package/lib/commonjs/classes/whiteboard/HMSWhiteboardUpdateType.js.map +1 -0
  317. package/lib/commonjs/classes/whiteboard/index.js +39 -0
  318. package/lib/commonjs/classes/whiteboard/index.js.map +1 -0
  319. package/lib/commonjs/classes/whiteboard/registerCallbacks.js +26 -0
  320. package/lib/commonjs/classes/whiteboard/registerCallbacks.js.map +1 -0
  321. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js +155 -49
  322. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
  323. package/lib/commonjs/components/HMSHLSPlayer/RCTHMSHLSPlayer.js +5 -6
  324. package/lib/commonjs/components/HMSHLSPlayer/RCTHMSHLSPlayer.js.map +1 -1
  325. package/lib/commonjs/components/HMSHLSPlayer/hooks.js +26 -16
  326. package/lib/commonjs/components/HMSHLSPlayer/hooks.js.map +1 -1
  327. package/lib/commonjs/components/HMSHLSPlayer/index.js +22 -1
  328. package/lib/commonjs/components/HMSHLSPlayer/index.js.map +1 -1
  329. package/lib/commonjs/hooks/hmsviews.js +17 -0
  330. package/lib/commonjs/hooks/hmsviews.js.map +1 -0
  331. package/lib/commonjs/hooks/polls.js +17 -0
  332. package/lib/commonjs/hooks/polls.js.map +1 -0
  333. package/lib/commonjs/hooks/useHMSPeerUpdates.js +3 -5
  334. package/lib/commonjs/hooks/useHMSPeerUpdates.js.map +1 -1
  335. package/lib/commonjs/index.js +233 -6
  336. package/lib/commonjs/index.js.map +1 -1
  337. package/lib/commonjs/modules/HMSManagerModule.js +10 -0
  338. package/lib/commonjs/modules/HMSManagerModule.js.map +1 -0
  339. package/lib/commonjs/specs/HMSHLSPlayerNativeComponent.js +75 -0
  340. package/lib/commonjs/specs/HMSHLSPlayerNativeComponent.js.map +1 -0
  341. package/lib/commonjs/specs/HMSViewNativeComponent.js +55 -0
  342. package/lib/commonjs/specs/HMSViewNativeComponent.js.map +1 -0
  343. package/lib/commonjs/specs/NativeHMSManager.js +38 -0
  344. package/lib/commonjs/specs/NativeHMSManager.js.map +1 -0
  345. package/lib/commonjs/stores/hls-player-playback-slice.js +10 -0
  346. package/lib/commonjs/stores/hls-player-playback-slice.js.map +1 -1
  347. package/lib/commonjs/stores/hls-player-stats-store.js +28 -17
  348. package/lib/commonjs/stores/hls-player-stats-store.js.map +1 -1
  349. package/lib/commonjs/stores/hms-interactivity-store.js +21 -0
  350. package/lib/commonjs/stores/hms-interactivity-store.js.map +1 -0
  351. package/lib/commonjs/stores/hms-polls-slice.js +19 -0
  352. package/lib/commonjs/stores/hms-polls-slice.js.map +1 -0
  353. package/lib/commonjs/stores/hms-store.js +5 -6
  354. package/lib/commonjs/stores/hms-store.js.map +1 -1
  355. package/lib/commonjs/stores/hmsviews-slice.js +19 -0
  356. package/lib/commonjs/stores/hmsviews-slice.js.map +1 -0
  357. package/lib/commonjs/stores/types.js.map +1 -1
  358. package/lib/commonjs/types.js +4 -7
  359. package/lib/commonjs/types.js.map +1 -1
  360. package/lib/commonjs/utils/emitter/EventEmitter.js +23 -7
  361. package/lib/commonjs/utils/emitter/EventEmitter.js.map +1 -1
  362. package/lib/commonjs/utils/emitter/_EmitterSubscription.js +3 -3
  363. package/lib/commonjs/utils/emitter/_EmitterSubscription.js.map +1 -1
  364. package/lib/commonjs/utils/emitter/_EventSubscription.js +3 -3
  365. package/lib/commonjs/utils/emitter/_EventSubscription.js.map +1 -1
  366. package/lib/commonjs/utils/emitter/_EventSubscriptionVendor.js +3 -4
  367. package/lib/commonjs/utils/emitter/_EventSubscriptionVendor.js.map +1 -1
  368. package/lib/commonjs/utils/index.js.map +1 -1
  369. package/lib/commonjs/utils/keyboard.js +46 -0
  370. package/lib/commonjs/utils/keyboard.js.map +1 -0
  371. package/lib/commonjs/utils/notification.js +13 -0
  372. package/lib/commonjs/utils/notification.js.map +1 -0
  373. package/lib/commonjs/utils/windowController.js +30 -0
  374. package/lib/commonjs/utils/windowController.js.map +1 -0
  375. package/lib/module/classes/HMSAudioCodec.js.map +1 -1
  376. package/lib/module/classes/HMSAudioDevice.js +9 -0
  377. package/lib/module/classes/HMSAudioDevice.js.map +1 -1
  378. package/lib/module/classes/HMSAudioFilePlayerNode.js.map +1 -1
  379. package/lib/module/classes/HMSAudioMixerSource.js +3 -3
  380. package/lib/module/classes/HMSAudioMixerSource.js.map +1 -1
  381. package/lib/module/classes/HMSAudioMixingMode.js +11 -0
  382. package/lib/module/classes/HMSAudioMixingMode.js.map +1 -1
  383. package/lib/module/classes/HMSAudioMode.js.map +1 -1
  384. package/lib/module/classes/HMSAudioNode.js +3 -3
  385. package/lib/module/classes/HMSAudioNode.js.map +1 -1
  386. package/lib/module/classes/HMSAudioSettings.js +3 -3
  387. package/lib/module/classes/HMSAudioSettings.js.map +1 -1
  388. package/lib/module/classes/HMSAudioTrack.js +9 -0
  389. package/lib/module/classes/HMSAudioTrack.js.map +1 -1
  390. package/lib/module/classes/HMSAudioTrackSettings.js +12 -5
  391. package/lib/module/classes/HMSAudioTrackSettings.js.map +1 -1
  392. package/lib/module/classes/HMSBrowserRecordingState.js +5 -3
  393. package/lib/module/classes/HMSBrowserRecordingState.js.map +1 -1
  394. package/lib/module/classes/HMSCameraControl.js +2 -3
  395. package/lib/module/classes/HMSCameraControl.js.map +1 -1
  396. package/lib/module/classes/HMSCameraFacing.js +9 -0
  397. package/lib/module/classes/HMSCameraFacing.js.map +1 -1
  398. package/lib/module/classes/HMSChangeTrackStateRequest.js +3 -3
  399. package/lib/module/classes/HMSChangeTrackStateRequest.js.map +1 -1
  400. package/lib/module/classes/HMSConfig.js +30 -3
  401. package/lib/module/classes/HMSConfig.js.map +1 -1
  402. package/lib/module/classes/HMSConstants.js.map +1 -1
  403. package/lib/module/classes/HMSEncoder.js +56 -13
  404. package/lib/module/classes/HMSEncoder.js.map +1 -1
  405. package/lib/module/classes/HMSEventEmitter.js.map +1 -1
  406. package/lib/module/classes/HMSException.js +21 -3
  407. package/lib/module/classes/HMSException.js.map +1 -1
  408. package/lib/module/classes/HMSHLSConfig.js +3 -3
  409. package/lib/module/classes/HMSHLSConfig.js.map +1 -1
  410. package/lib/module/classes/HMSHLSMeetingURLVariant.js +3 -3
  411. package/lib/module/classes/HMSHLSMeetingURLVariant.js.map +1 -1
  412. package/lib/module/classes/HMSHLSPlaylistType.js +6 -0
  413. package/lib/module/classes/HMSHLSPlaylistType.js.map +1 -0
  414. package/lib/module/classes/HMSHLSRecordingConfig.js +3 -3
  415. package/lib/module/classes/HMSHLSRecordingConfig.js.map +1 -1
  416. package/lib/module/classes/HMSHLSRecordingState.js +7 -7
  417. package/lib/module/classes/HMSHLSRecordingState.js.map +1 -1
  418. package/lib/module/classes/HMSHLSStreamingState.js +9 -3
  419. package/lib/module/classes/HMSHLSStreamingState.js.map +1 -1
  420. package/lib/module/classes/HMSHLSTimedMetadata.js +2 -0
  421. package/lib/module/classes/HMSHLSTimedMetadata.js.map +1 -0
  422. package/lib/module/classes/HMSHLSVariant.js +5 -3
  423. package/lib/module/classes/HMSHLSVariant.js.map +1 -1
  424. package/lib/module/classes/HMSHelper.js.map +1 -1
  425. package/lib/module/classes/HMSIOSAudioMode.js +15 -0
  426. package/lib/module/classes/HMSIOSAudioMode.js.map +1 -1
  427. package/lib/module/classes/HMSInteractivityCenter.js +166 -0
  428. package/lib/module/classes/HMSInteractivityCenter.js.map +1 -0
  429. package/lib/module/classes/HMSInteractivityEncoder.js +76 -0
  430. package/lib/module/classes/HMSInteractivityEncoder.js.map +1 -0
  431. package/lib/module/classes/HMSLayer.js.map +1 -1
  432. package/lib/module/classes/HMSLocalAudioStats.js +3 -3
  433. package/lib/module/classes/HMSLocalAudioStats.js.map +1 -1
  434. package/lib/module/classes/HMSLocalAudioTrack.js +3 -3
  435. package/lib/module/classes/HMSLocalAudioTrack.js.map +1 -1
  436. package/lib/module/classes/HMSLocalPeer.js +3 -3
  437. package/lib/module/classes/HMSLocalPeer.js.map +1 -1
  438. package/lib/module/classes/HMSLocalVideoStats.js +3 -3
  439. package/lib/module/classes/HMSLocalVideoStats.js.map +1 -1
  440. package/lib/module/classes/HMSLocalVideoTrack.js +3 -3
  441. package/lib/module/classes/HMSLocalVideoTrack.js.map +1 -1
  442. package/lib/module/classes/HMSLogAlarmManager.js +12 -0
  443. package/lib/module/classes/HMSLogAlarmManager.js.map +1 -1
  444. package/lib/module/classes/HMSLogLevel.js +12 -0
  445. package/lib/module/classes/HMSLogLevel.js.map +1 -1
  446. package/lib/module/classes/HMSLogSettings.js +17 -3
  447. package/lib/module/classes/HMSLogSettings.js.map +1 -1
  448. package/lib/module/classes/HMSLogger.js +3 -3
  449. package/lib/module/classes/HMSLogger.js.map +1 -1
  450. package/lib/module/classes/HMSMessage.js +3 -3
  451. package/lib/module/classes/HMSMessage.js.map +1 -1
  452. package/lib/module/classes/HMSMessageRecipient.js +3 -3
  453. package/lib/module/classes/HMSMessageRecipient.js.map +1 -1
  454. package/lib/module/classes/HMSMessageRecipientType.js.map +1 -1
  455. package/lib/module/classes/HMSMicNode.js.map +1 -1
  456. package/lib/module/classes/HMSNativeEventEmitter.js +4 -6
  457. package/lib/module/classes/HMSNativeEventEmitter.js.map +1 -1
  458. package/lib/module/classes/HMSNativeEventListener.js +1 -1
  459. package/lib/module/classes/HMSNativeEventListener.js.map +1 -1
  460. package/lib/module/classes/HMSNetworkQuality.js +14 -3
  461. package/lib/module/classes/HMSNetworkQuality.js.map +1 -1
  462. package/lib/module/classes/HMSNoiseCancellationPlugin.js +152 -0
  463. package/lib/module/classes/HMSNoiseCancellationPlugin.js.map +1 -0
  464. package/lib/module/classes/HMSPIPConfig.js +2 -0
  465. package/lib/module/classes/HMSPIPConfig.js.map +1 -0
  466. package/lib/module/classes/HMSPIPListenerActions.js +9 -0
  467. package/lib/module/classes/HMSPIPListenerActions.js.map +1 -1
  468. package/lib/module/classes/HMSPeer.js +187 -5
  469. package/lib/module/classes/HMSPeer.js.map +1 -1
  470. package/lib/module/classes/HMSPeerListIterator.js +24 -6
  471. package/lib/module/classes/HMSPeerListIterator.js.map +1 -1
  472. package/lib/module/classes/HMSPeerListIteratorOptions.js.map +1 -1
  473. package/lib/module/classes/HMSPeerType.js +18 -0
  474. package/lib/module/classes/HMSPeerType.js.map +1 -0
  475. package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
  476. package/lib/module/classes/HMSPeersCache.js +4 -4
  477. package/lib/module/classes/HMSPeersCache.js.map +1 -1
  478. package/lib/module/classes/HMSPermissions.js +11 -3
  479. package/lib/module/classes/HMSPermissions.js.map +1 -1
  480. package/lib/module/classes/HMSPollsListenerActions.js +5 -0
  481. package/lib/module/classes/HMSPollsListenerActions.js.map +1 -0
  482. package/lib/module/classes/HMSPublishSettings.js +3 -3
  483. package/lib/module/classes/HMSPublishSettings.js.map +1 -1
  484. package/lib/module/classes/HMSQualityLimitationReason.js.map +1 -1
  485. package/lib/module/classes/HMSQualityLimitationReasons.js +3 -3
  486. package/lib/module/classes/HMSQualityLimitationReasons.js.map +1 -1
  487. package/lib/module/classes/HMSRTCStats.js +3 -3
  488. package/lib/module/classes/HMSRTCStats.js.map +1 -1
  489. package/lib/module/classes/HMSRTCStatsReport.js +3 -3
  490. package/lib/module/classes/HMSRTCStatsReport.js.map +1 -1
  491. package/lib/module/classes/HMSRTMPConfig.js +17 -3
  492. package/lib/module/classes/HMSRTMPConfig.js.map +1 -1
  493. package/lib/module/classes/HMSRecordingState.js +11 -0
  494. package/lib/module/classes/HMSRecordingState.js.map +1 -0
  495. package/lib/module/classes/HMSRemoteAudioStats.js +3 -3
  496. package/lib/module/classes/HMSRemoteAudioStats.js.map +1 -1
  497. package/lib/module/classes/HMSRemoteAudioTrack.js +3 -3
  498. package/lib/module/classes/HMSRemoteAudioTrack.js.map +1 -1
  499. package/lib/module/classes/HMSRemotePeer.js +3 -3
  500. package/lib/module/classes/HMSRemotePeer.js.map +1 -1
  501. package/lib/module/classes/HMSRemoteVideoStats.js +3 -3
  502. package/lib/module/classes/HMSRemoteVideoStats.js.map +1 -1
  503. package/lib/module/classes/HMSRemoteVideoTrack.js +3 -3
  504. package/lib/module/classes/HMSRemoteVideoTrack.js.map +1 -1
  505. package/lib/module/classes/HMSRole.js +20 -3
  506. package/lib/module/classes/HMSRole.js.map +1 -1
  507. package/lib/module/classes/HMSRoleChangeRequest.js +3 -3
  508. package/lib/module/classes/HMSRoleChangeRequest.js.map +1 -1
  509. package/lib/module/classes/HMSRoom.js +17 -4
  510. package/lib/module/classes/HMSRoom.js.map +1 -1
  511. package/lib/module/classes/HMSRoomCache.js +11 -4
  512. package/lib/module/classes/HMSRoomCache.js.map +1 -1
  513. package/lib/module/classes/HMSRoomUpdate.js +1 -0
  514. package/lib/module/classes/HMSRoomUpdate.js.map +1 -1
  515. package/lib/module/classes/HMSRtmpStreamingState.js +5 -5
  516. package/lib/module/classes/HMSRtmpStreamingState.js.map +1 -1
  517. package/lib/module/classes/HMSRtmpVideoResolution.js +16 -3
  518. package/lib/module/classes/HMSRtmpVideoResolution.js.map +1 -1
  519. package/lib/module/classes/HMSSDK.js +1314 -328
  520. package/lib/module/classes/HMSSDK.js.map +1 -1
  521. package/lib/module/classes/HMSScreenBroadcastAudioReceiverNode.js.map +1 -1
  522. package/lib/module/classes/HMSServerRecordingState.js +5 -3
  523. package/lib/module/classes/HMSServerRecordingState.js.map +1 -1
  524. package/lib/module/classes/HMSSessionStore.js +19 -22
  525. package/lib/module/classes/HMSSessionStore.js.map +1 -1
  526. package/lib/module/classes/HMSSimulcastLayerDefinition.js +3 -3
  527. package/lib/module/classes/HMSSimulcastLayerDefinition.js.map +1 -1
  528. package/lib/module/classes/HMSSimulcastLayerSettings.js +3 -3
  529. package/lib/module/classes/HMSSimulcastLayerSettings.js.map +1 -1
  530. package/lib/module/classes/HMSSimulcastLayerSettingsPolicy.js +3 -3
  531. package/lib/module/classes/HMSSimulcastLayerSettingsPolicy.js.map +1 -1
  532. package/lib/module/classes/HMSSimulcastSettings.js +3 -3
  533. package/lib/module/classes/HMSSimulcastSettings.js.map +1 -1
  534. package/lib/module/classes/HMSSimulcastSettingsPolicy.js +3 -3
  535. package/lib/module/classes/HMSSimulcastSettingsPolicy.js.map +1 -1
  536. package/lib/module/classes/HMSSpeaker.js +3 -3
  537. package/lib/module/classes/HMSSpeaker.js.map +1 -1
  538. package/lib/module/classes/HMSStreamingState.js +9 -0
  539. package/lib/module/classes/HMSStreamingState.js.map +1 -0
  540. package/lib/module/classes/HMSSubscribeDegradationPolicy.js +3 -3
  541. package/lib/module/classes/HMSSubscribeDegradationPolicy.js.map +1 -1
  542. package/lib/module/classes/HMSSubscribeSettings.js +3 -3
  543. package/lib/module/classes/HMSSubscribeSettings.js.map +1 -1
  544. package/lib/module/classes/HMSTrack.js +16 -3
  545. package/lib/module/classes/HMSTrack.js.map +1 -1
  546. package/lib/module/classes/HMSTrackSettings.js +13 -3
  547. package/lib/module/classes/HMSTrackSettings.js.map +1 -1
  548. package/lib/module/classes/HMSTrackSettingsInitState.js +9 -0
  549. package/lib/module/classes/HMSTrackSettingsInitState.js.map +1 -1
  550. package/lib/module/classes/HMSTrackSource.js +10 -0
  551. package/lib/module/classes/HMSTrackSource.js.map +1 -1
  552. package/lib/module/classes/HMSTrackType.js +7 -0
  553. package/lib/module/classes/HMSTrackType.js.map +1 -1
  554. package/lib/module/classes/HMSTrackUpdate.js.map +1 -1
  555. package/lib/module/classes/HMSUpdateListenerActions.js +43 -3
  556. package/lib/module/classes/HMSUpdateListenerActions.js.map +1 -1
  557. package/lib/module/classes/HMSVideoCodec.js.map +1 -1
  558. package/lib/module/classes/HMSVideoResolution.js +3 -3
  559. package/lib/module/classes/HMSVideoResolution.js.map +1 -1
  560. package/lib/module/classes/HMSVideoSettings.js +3 -3
  561. package/lib/module/classes/HMSVideoSettings.js.map +1 -1
  562. package/lib/module/classes/HMSVideoTrack.js +20 -3
  563. package/lib/module/classes/HMSVideoTrack.js.map +1 -1
  564. package/lib/module/classes/HMSVideoTrackSettings.js +18 -7
  565. package/lib/module/classes/HMSVideoTrackSettings.js.map +1 -1
  566. package/lib/module/classes/HMSVideoViewMode.js.map +1 -1
  567. package/lib/module/classes/HmsView.js +77 -25
  568. package/lib/module/classes/HmsView.js.map +1 -1
  569. package/lib/module/classes/polls/DecodedPollLeaderboardResponse.js +2 -0
  570. package/lib/module/classes/polls/DecodedPollLeaderboardResponse.js.map +1 -0
  571. package/lib/module/classes/polls/HMSPoll.js +2 -0
  572. package/lib/module/classes/polls/HMSPoll.js.map +1 -0
  573. package/lib/module/classes/polls/HMSPollCategory.js +6 -0
  574. package/lib/module/classes/polls/HMSPollCategory.js.map +1 -0
  575. package/lib/module/classes/polls/HMSPollCreateParams.js +2 -0
  576. package/lib/module/classes/polls/HMSPollCreateParams.js.map +1 -0
  577. package/lib/module/classes/polls/HMSPollLeaderboardEntry.js +2 -0
  578. package/lib/module/classes/polls/HMSPollLeaderboardEntry.js.map +1 -0
  579. package/lib/module/classes/polls/HMSPollLeaderboardSummary.js +2 -0
  580. package/lib/module/classes/polls/HMSPollLeaderboardSummary.js.map +1 -0
  581. package/lib/module/classes/polls/HMSPollQuestion.js +2 -0
  582. package/lib/module/classes/polls/HMSPollQuestion.js.map +1 -0
  583. package/lib/module/classes/polls/HMSPollQuestionAnswer.js +2 -0
  584. package/lib/module/classes/polls/HMSPollQuestionAnswer.js.map +1 -0
  585. package/lib/module/classes/polls/HMSPollQuestionCreateParams.js +2 -0
  586. package/lib/module/classes/polls/HMSPollQuestionCreateParams.js.map +1 -0
  587. package/lib/module/classes/polls/HMSPollQuestionOption.js +2 -0
  588. package/lib/module/classes/polls/HMSPollQuestionOption.js.map +1 -0
  589. package/lib/module/classes/polls/HMSPollQuestionOptionCreateParams.js +2 -0
  590. package/lib/module/classes/polls/HMSPollQuestionOptionCreateParams.js.map +1 -0
  591. package/lib/module/classes/polls/HMSPollQuestionQuizOptionCreateParams.js +2 -0
  592. package/lib/module/classes/polls/HMSPollQuestionQuizOptionCreateParams.js.map +1 -0
  593. package/lib/module/classes/polls/HMSPollQuestionResponse.js +2 -0
  594. package/lib/module/classes/polls/HMSPollQuestionResponse.js.map +1 -0
  595. package/lib/module/classes/polls/HMSPollQuestionResponseCreateParams.js +2 -0
  596. package/lib/module/classes/polls/HMSPollQuestionResponseCreateParams.js.map +1 -0
  597. package/lib/module/classes/polls/HMSPollQuestionResponseResult.js +2 -0
  598. package/lib/module/classes/polls/HMSPollQuestionResponseResult.js.map +1 -0
  599. package/lib/module/classes/polls/HMSPollQuestionResult.js +2 -0
  600. package/lib/module/classes/polls/HMSPollQuestionResult.js.map +1 -0
  601. package/lib/module/classes/polls/HMSPollQuestionType.js +8 -0
  602. package/lib/module/classes/polls/HMSPollQuestionType.js.map +1 -0
  603. package/lib/module/classes/polls/HMSPollResponsePeerInfo.js +2 -0
  604. package/lib/module/classes/polls/HMSPollResponsePeerInfo.js.map +1 -0
  605. package/lib/module/classes/polls/HMSPollResult.js +2 -0
  606. package/lib/module/classes/polls/HMSPollResult.js.map +1 -0
  607. package/lib/module/classes/polls/HMSPollState.js +7 -0
  608. package/lib/module/classes/polls/HMSPollState.js.map +1 -0
  609. package/lib/module/classes/polls/HMSPollType.js +6 -0
  610. package/lib/module/classes/polls/HMSPollType.js.map +1 -0
  611. package/lib/module/classes/polls/HMSPollUpdateType.js +7 -0
  612. package/lib/module/classes/polls/HMSPollUpdateType.js.map +1 -0
  613. package/lib/module/classes/polls/HMSPollUserTrackingMode.js +7 -0
  614. package/lib/module/classes/polls/HMSPollUserTrackingMode.js.map +1 -0
  615. package/lib/module/classes/polls/PollLeaderboardResponse.js +2 -0
  616. package/lib/module/classes/polls/PollLeaderboardResponse.js.map +1 -0
  617. package/lib/module/classes/transcriptions/HMSTranscript.js +2 -0
  618. package/lib/module/classes/transcriptions/HMSTranscript.js.map +1 -0
  619. package/lib/module/classes/transcriptions/OnTranscriptionError.js +2 -0
  620. package/lib/module/classes/transcriptions/OnTranscriptionError.js.map +1 -0
  621. package/lib/module/classes/transcriptions/TranscriptionState.js +8 -0
  622. package/lib/module/classes/transcriptions/TranscriptionState.js.map +1 -0
  623. package/lib/module/classes/transcriptions/Transcriptions.js +2 -0
  624. package/lib/module/classes/transcriptions/Transcriptions.js.map +1 -0
  625. package/lib/module/classes/transcriptions/TranscriptionsMode.js +6 -0
  626. package/lib/module/classes/transcriptions/TranscriptionsMode.js.map +1 -0
  627. package/lib/module/classes/transcriptions/index.js +6 -0
  628. package/lib/module/classes/transcriptions/index.js.map +1 -0
  629. package/lib/module/classes/whiteboard/HMSWhiteboard.js +2 -0
  630. package/lib/module/classes/whiteboard/HMSWhiteboard.js.map +1 -0
  631. package/lib/module/classes/whiteboard/HMSWhiteboardListenerActions.js +5 -0
  632. package/lib/module/classes/whiteboard/HMSWhiteboardListenerActions.js.map +1 -0
  633. package/lib/module/classes/whiteboard/HMSWhiteboardState.js +6 -0
  634. package/lib/module/classes/whiteboard/HMSWhiteboardState.js.map +1 -0
  635. package/lib/module/classes/whiteboard/HMSWhiteboardUpdateType.js +6 -0
  636. package/lib/module/classes/whiteboard/HMSWhiteboardUpdateType.js.map +1 -0
  637. package/lib/module/classes/whiteboard/index.js +4 -0
  638. package/lib/module/classes/whiteboard/index.js.map +1 -0
  639. package/lib/module/classes/whiteboard/registerCallbacks.js +18 -0
  640. package/lib/module/classes/whiteboard/registerCallbacks.js.map +1 -0
  641. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js +157 -49
  642. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
  643. package/lib/module/components/HMSHLSPlayer/RCTHMSHLSPlayer.js +3 -3
  644. package/lib/module/components/HMSHLSPlayer/RCTHMSHLSPlayer.js.map +1 -1
  645. package/lib/module/components/HMSHLSPlayer/hooks.js +16 -4
  646. package/lib/module/components/HMSHLSPlayer/hooks.js.map +1 -1
  647. package/lib/module/components/HMSHLSPlayer/index.js +1 -1
  648. package/lib/module/components/HMSHLSPlayer/index.js.map +1 -1
  649. package/lib/module/hooks/hmsviews.js +12 -0
  650. package/lib/module/hooks/hmsviews.js.map +1 -0
  651. package/lib/module/hooks/polls.js +12 -0
  652. package/lib/module/hooks/polls.js.map +1 -0
  653. package/lib/module/hooks/useHMSPeerUpdates.js +1 -2
  654. package/lib/module/hooks/useHMSPeerUpdates.js.map +1 -1
  655. package/lib/module/index.js +29 -2
  656. package/lib/module/index.js.map +1 -1
  657. package/lib/module/modules/HMSManagerModule.js +3 -0
  658. package/lib/module/modules/HMSManagerModule.js.map +1 -0
  659. package/lib/module/specs/HMSHLSPlayerNativeComponent.js +69 -0
  660. package/lib/module/specs/HMSHLSPlayerNativeComponent.js.map +1 -0
  661. package/lib/module/specs/HMSViewNativeComponent.js +49 -0
  662. package/lib/module/specs/HMSViewNativeComponent.js.map +1 -0
  663. package/lib/module/specs/NativeHMSManager.js +33 -0
  664. package/lib/module/specs/NativeHMSManager.js.map +1 -0
  665. package/lib/module/stores/hls-player-playback-slice.js +10 -0
  666. package/lib/module/stores/hls-player-playback-slice.js.map +1 -1
  667. package/lib/module/stores/hls-player-stats-store.js +27 -15
  668. package/lib/module/stores/hls-player-stats-store.js.map +1 -1
  669. package/lib/module/stores/hms-interactivity-store.js +15 -0
  670. package/lib/module/stores/hms-interactivity-store.js.map +1 -0
  671. package/lib/module/stores/hms-polls-slice.js +12 -0
  672. package/lib/module/stores/hms-polls-slice.js.map +1 -0
  673. package/lib/module/stores/hms-store.js +5 -5
  674. package/lib/module/stores/hms-store.js.map +1 -1
  675. package/lib/module/stores/hmsviews-slice.js +12 -0
  676. package/lib/module/stores/hmsviews-slice.js.map +1 -0
  677. package/lib/module/stores/types.js.map +1 -1
  678. package/lib/module/types.js +3 -1
  679. package/lib/module/types.js.map +1 -1
  680. package/lib/module/utils/emitter/EventEmitter.js +23 -7
  681. package/lib/module/utils/emitter/EventEmitter.js.map +1 -1
  682. package/lib/module/utils/emitter/_EmitterSubscription.js +3 -3
  683. package/lib/module/utils/emitter/_EmitterSubscription.js.map +1 -1
  684. package/lib/module/utils/emitter/_EventSubscription.js +3 -3
  685. package/lib/module/utils/emitter/_EventSubscription.js.map +1 -1
  686. package/lib/module/utils/emitter/_EventSubscriptionVendor.js +3 -4
  687. package/lib/module/utils/emitter/_EventSubscriptionVendor.js.map +1 -1
  688. package/lib/module/utils/index.js.map +1 -1
  689. package/lib/module/utils/keyboard.js +38 -0
  690. package/lib/module/utils/keyboard.js.map +1 -0
  691. package/lib/module/utils/notification.js +5 -0
  692. package/lib/module/utils/notification.js.map +1 -0
  693. package/lib/module/utils/windowController.js +22 -0
  694. package/lib/module/utils/windowController.js.map +1 -0
  695. package/lib/typescript/classes/HMSAudioDevice.d.ts +14 -0
  696. package/lib/typescript/classes/HMSAudioMixingMode.d.ts +11 -0
  697. package/lib/typescript/classes/HMSAudioTrack.d.ts +9 -0
  698. package/lib/typescript/classes/HMSAudioTrackSettings.d.ts +9 -0
  699. package/lib/typescript/classes/HMSBrowserRecordingState.d.ts +3 -0
  700. package/lib/typescript/classes/HMSCameraFacing.d.ts +11 -0
  701. package/lib/typescript/classes/HMSConfig.d.ts +27 -0
  702. package/lib/typescript/classes/HMSEncoder.d.ts +5 -0
  703. package/lib/typescript/classes/HMSException.d.ts +18 -0
  704. package/lib/typescript/classes/HMSHLSPlaylistType.d.ts +4 -0
  705. package/lib/typescript/classes/HMSHLSRecordingState.d.ts +6 -4
  706. package/lib/typescript/classes/HMSHLSStreamingState.d.ts +8 -0
  707. package/lib/typescript/classes/HMSHLSTimedMetadata.d.ts +16 -0
  708. package/lib/typescript/classes/HMSHLSVariant.d.ts +3 -0
  709. package/lib/typescript/classes/HMSIOSAudioMode.d.ts +15 -0
  710. package/lib/typescript/classes/HMSInteractivityCenter.d.ts +62 -0
  711. package/lib/typescript/classes/HMSInteractivityEncoder.d.ts +9 -0
  712. package/lib/typescript/classes/HMSLogAlarmManager.d.ts +12 -0
  713. package/lib/typescript/classes/HMSLogLevel.d.ts +12 -0
  714. package/lib/typescript/classes/HMSLogSettings.d.ts +14 -0
  715. package/lib/typescript/classes/HMSNetworkQuality.d.ts +11 -0
  716. package/lib/typescript/classes/HMSNoiseCancellationPlugin.d.ts +87 -0
  717. package/lib/typescript/classes/HMSPIPConfig.d.ts +47 -0
  718. package/lib/typescript/classes/HMSPIPListenerActions.d.ts +17 -0
  719. package/lib/typescript/classes/HMSPeer.d.ts +144 -1
  720. package/lib/typescript/classes/HMSPeerListIterator.d.ts +3 -1
  721. package/lib/typescript/classes/HMSPeerListIteratorOptions.d.ts +19 -0
  722. package/lib/typescript/classes/HMSPeerType.d.ts +16 -0
  723. package/lib/typescript/classes/HMSPeersCache.d.ts +2 -0
  724. package/lib/typescript/classes/HMSPermissions.d.ts +18 -0
  725. package/lib/typescript/classes/HMSPollsListenerActions.d.ts +3 -0
  726. package/lib/typescript/classes/HMSRTMPConfig.d.ts +14 -0
  727. package/lib/typescript/classes/HMSRecordingState.d.ts +9 -0
  728. package/lib/typescript/classes/HMSRole.d.ts +17 -0
  729. package/lib/typescript/classes/HMSRoom.d.ts +3 -0
  730. package/lib/typescript/classes/HMSRoomUpdate.d.ts +2 -1
  731. package/lib/typescript/classes/HMSRtmpStreamingState.d.ts +3 -2
  732. package/lib/typescript/classes/HMSRtmpVideoResolution.d.ts +13 -0
  733. package/lib/typescript/classes/HMSSDK.d.ts +1123 -249
  734. package/lib/typescript/classes/HMSServerRecordingState.d.ts +3 -0
  735. package/lib/typescript/classes/HMSSessionStore.d.ts +23 -22
  736. package/lib/typescript/classes/HMSStreamingState.d.ts +7 -0
  737. package/lib/typescript/classes/HMSTrack.d.ts +13 -0
  738. package/lib/typescript/classes/HMSTrackSettings.d.ts +10 -0
  739. package/lib/typescript/classes/HMSTrackSettingsInitState.d.ts +11 -0
  740. package/lib/typescript/classes/HMSTrackSource.d.ts +10 -0
  741. package/lib/typescript/classes/HMSTrackType.d.ts +7 -0
  742. package/lib/typescript/classes/HMSUpdateListenerActions.d.ts +290 -3
  743. package/lib/typescript/classes/HMSVideoTrack.d.ts +17 -0
  744. package/lib/typescript/classes/HMSVideoTrackSettings.d.ts +23 -2
  745. package/lib/typescript/classes/HmsView.d.ts +16 -0
  746. package/lib/typescript/classes/polls/DecodedPollLeaderboardResponse.d.ts +37 -0
  747. package/lib/typescript/classes/polls/HMSPoll.d.ts +73 -0
  748. package/lib/typescript/classes/polls/HMSPollCategory.d.ts +10 -0
  749. package/lib/typescript/classes/polls/HMSPollCreateParams.d.ts +6 -0
  750. package/lib/typescript/classes/polls/HMSPollLeaderboardEntry.d.ts +9 -0
  751. package/lib/typescript/classes/polls/HMSPollLeaderboardSummary.d.ts +7 -0
  752. package/lib/typescript/classes/polls/HMSPollQuestion.d.ts +61 -0
  753. package/lib/typescript/classes/polls/HMSPollQuestionAnswer.d.ts +17 -0
  754. package/lib/typescript/classes/polls/HMSPollQuestionCreateParams.d.ts +25 -0
  755. package/lib/typescript/classes/polls/HMSPollQuestionOption.d.ts +21 -0
  756. package/lib/typescript/classes/polls/HMSPollQuestionOptionCreateParams.d.ts +3 -0
  757. package/lib/typescript/classes/polls/HMSPollQuestionQuizOptionCreateParams.d.ts +4 -0
  758. package/lib/typescript/classes/polls/HMSPollQuestionResponse.d.ts +47 -0
  759. package/lib/typescript/classes/polls/HMSPollQuestionResponseCreateParams.d.ts +2 -0
  760. package/lib/typescript/classes/polls/HMSPollQuestionResponseResult.d.ts +17 -0
  761. package/lib/typescript/classes/polls/HMSPollQuestionResult.d.ts +29 -0
  762. package/lib/typescript/classes/polls/HMSPollQuestionType.d.ts +18 -0
  763. package/lib/typescript/classes/polls/HMSPollResponsePeerInfo.d.ts +21 -0
  764. package/lib/typescript/classes/polls/HMSPollResult.d.ts +22 -0
  765. package/lib/typescript/classes/polls/HMSPollState.d.ts +14 -0
  766. package/lib/typescript/classes/polls/HMSPollType.d.ts +4 -0
  767. package/lib/typescript/classes/polls/HMSPollUpdateType.d.ts +5 -0
  768. package/lib/typescript/classes/polls/HMSPollUserTrackingMode.d.ts +14 -0
  769. package/lib/typescript/classes/polls/PollLeaderboardResponse.d.ts +7 -0
  770. package/lib/typescript/classes/transcriptions/HMSTranscript.d.ts +8 -0
  771. package/lib/typescript/classes/transcriptions/OnTranscriptionError.d.ts +4 -0
  772. package/lib/typescript/classes/transcriptions/TranscriptionState.d.ts +6 -0
  773. package/lib/typescript/classes/transcriptions/Transcriptions.d.ts +12 -0
  774. package/lib/typescript/classes/transcriptions/TranscriptionsMode.d.ts +4 -0
  775. package/lib/typescript/classes/transcriptions/index.d.ts +5 -0
  776. package/lib/typescript/classes/whiteboard/HMSWhiteboard.d.ts +10 -0
  777. package/lib/typescript/classes/whiteboard/HMSWhiteboardListenerActions.d.ts +3 -0
  778. package/lib/typescript/classes/whiteboard/HMSWhiteboardState.d.ts +4 -0
  779. package/lib/typescript/classes/whiteboard/HMSWhiteboardUpdateType.d.ts +4 -0
  780. package/lib/typescript/classes/whiteboard/index.d.ts +3 -0
  781. package/lib/typescript/classes/whiteboard/registerCallbacks.d.ts +8 -0
  782. package/lib/typescript/components/HMSHLSPlayer/HMSHLSPlayer.d.ts +6 -0
  783. package/lib/typescript/components/HMSHLSPlayer/RCTHMSHLSPlayer.d.ts +11 -9
  784. package/lib/typescript/components/HMSHLSPlayer/hooks.d.ts +5 -0
  785. package/lib/typescript/components/HMSHLSPlayer/index.d.ts +1 -1
  786. package/lib/typescript/hooks/hmsviews.d.ts +3 -0
  787. package/lib/typescript/hooks/polls.d.ts +3 -0
  788. package/lib/typescript/index.d.ts +29 -2
  789. package/lib/typescript/specs/HMSHLSPlayerNativeComponent.d.ts +115 -0
  790. package/lib/typescript/specs/HMSViewNativeComponent.d.ts +97 -0
  791. package/lib/typescript/specs/NativeHMSManager.d.ts +147 -0
  792. package/lib/typescript/stores/hls-player-stats-store.d.ts +4 -3
  793. package/lib/typescript/stores/hms-interactivity-store.d.ts +9 -0
  794. package/lib/typescript/stores/hms-polls-slice.d.ts +5 -0
  795. package/lib/typescript/stores/hms-store.d.ts +4 -3
  796. package/lib/typescript/stores/hmsviews-slice.d.ts +5 -0
  797. package/lib/typescript/stores/types.d.ts +27 -3
  798. package/lib/typescript/types.d.ts +18 -5
  799. package/lib/typescript/utils/emitter/EventEmitter.d.ts +7 -0
  800. package/lib/typescript/utils/keyboard.d.ts +16 -0
  801. package/lib/typescript/utils/notification.d.ts +5 -0
  802. package/lib/typescript/utils/windowController.d.ts +10 -0
  803. package/package.json +49 -7
  804. package/react-native-hms.podspec +56 -2
  805. package/sdk-versions.json +4 -3
  806. package/src/classes/HMSAudioDevice.ts +18 -0
  807. package/src/classes/HMSAudioMixingMode.ts +11 -0
  808. package/src/classes/HMSAudioTrack.ts +9 -0
  809. package/src/classes/HMSAudioTrackSettings.ts +11 -0
  810. package/src/classes/HMSBrowserRecordingState.ts +4 -0
  811. package/src/classes/HMSCameraControl.ts +1 -1
  812. package/src/classes/HMSCameraFacing.ts +11 -0
  813. package/src/classes/HMSConfig.ts +27 -0
  814. package/src/classes/HMSEncoder.ts +57 -4
  815. package/src/classes/HMSException.ts +18 -0
  816. package/src/classes/HMSHLSPlaylistType.ts +4 -0
  817. package/src/classes/HMSHLSRecordingState.ts +9 -7
  818. package/src/classes/HMSHLSStreamingState.ts +15 -1
  819. package/src/classes/HMSHLSTimedMetadata.ts +16 -0
  820. package/src/classes/HMSHLSVariant.ts +5 -0
  821. package/src/classes/HMSIOSAudioMode.ts +15 -0
  822. package/src/classes/HMSInteractivityCenter.ts +246 -0
  823. package/src/classes/HMSInteractivityEncoder.ts +92 -0
  824. package/src/classes/HMSLogAlarmManager.ts +12 -0
  825. package/src/classes/HMSLogLevel.ts +12 -0
  826. package/src/classes/HMSLogSettings.ts +14 -0
  827. package/src/classes/HMSNativeEventEmitter.ts +1 -7
  828. package/src/classes/HMSNativeEventListener.ts +1 -1
  829. package/src/classes/HMSNetworkQuality.ts +11 -0
  830. package/src/classes/HMSNoiseCancellationPlugin.ts +162 -0
  831. package/src/classes/HMSPIPConfig.ts +54 -0
  832. package/src/classes/HMSPIPListenerActions.ts +18 -0
  833. package/src/classes/HMSPeer.ts +193 -3
  834. package/src/classes/HMSPeerListIterator.ts +29 -7
  835. package/src/classes/HMSPeerListIteratorOptions.ts +21 -0
  836. package/src/classes/HMSPeerType.ts +20 -0
  837. package/src/classes/HMSPeersCache.ts +3 -1
  838. package/src/classes/HMSPermissions.ts +25 -0
  839. package/src/classes/HMSPollsListenerActions.ts +3 -0
  840. package/src/classes/HMSRTMPConfig.ts +14 -0
  841. package/src/classes/HMSRecordingState.ts +9 -0
  842. package/src/classes/HMSRole.ts +17 -0
  843. package/src/classes/HMSRoom.ts +27 -0
  844. package/src/classes/HMSRoomCache.ts +10 -1
  845. package/src/classes/HMSRoomUpdate.ts +1 -0
  846. package/src/classes/HMSRtmpStreamingState.ts +4 -3
  847. package/src/classes/HMSRtmpVideoResolution.ts +13 -0
  848. package/src/classes/HMSSDK.tsx +1379 -345
  849. package/src/classes/HMSServerRecordingState.ts +4 -0
  850. package/src/classes/HMSSessionStore.ts +34 -45
  851. package/src/classes/HMSStreamingState.ts +7 -0
  852. package/src/classes/HMSTrack.ts +13 -0
  853. package/src/classes/HMSTrackSettings.ts +10 -0
  854. package/src/classes/HMSTrackSettingsInitState.ts +11 -0
  855. package/src/classes/HMSTrackSource.ts +10 -0
  856. package/src/classes/HMSTrackType.ts +7 -0
  857. package/src/classes/HMSUpdateListenerActions.ts +313 -3
  858. package/src/classes/HMSVideoTrack.ts +17 -0
  859. package/src/classes/HMSVideoTrackSettings.ts +27 -2
  860. package/src/classes/HmsView.tsx +92 -57
  861. package/src/classes/polls/DecodedPollLeaderboardResponse.ts +43 -0
  862. package/src/classes/polls/HMSPoll.ts +99 -0
  863. package/src/classes/polls/HMSPollCategory.ts +11 -0
  864. package/src/classes/polls/HMSPollCreateParams.ts +19 -0
  865. package/src/classes/polls/HMSPollLeaderboardEntry.ts +10 -0
  866. package/src/classes/polls/HMSPollLeaderboardSummary.ts +7 -0
  867. package/src/classes/polls/HMSPollQuestion.ts +92 -0
  868. package/src/classes/polls/HMSPollQuestionAnswer.ts +29 -0
  869. package/src/classes/polls/HMSPollQuestionCreateParams.ts +36 -0
  870. package/src/classes/polls/HMSPollQuestionOption.ts +24 -0
  871. package/src/classes/polls/HMSPollQuestionOptionCreateParams.ts +8 -0
  872. package/src/classes/polls/HMSPollQuestionQuizOptionCreateParams.ts +6 -0
  873. package/src/classes/polls/HMSPollQuestionResponse.ts +72 -0
  874. package/src/classes/polls/HMSPollQuestionResponseCreateParams.ts +6 -0
  875. package/src/classes/polls/HMSPollQuestionResponseResult.ts +19 -0
  876. package/src/classes/polls/HMSPollQuestionResult.ts +41 -0
  877. package/src/classes/polls/HMSPollQuestionType.ts +21 -0
  878. package/src/classes/polls/HMSPollResponsePeerInfo.ts +24 -0
  879. package/src/classes/polls/HMSPollResult.ts +26 -0
  880. package/src/classes/polls/HMSPollState.ts +16 -0
  881. package/src/classes/polls/HMSPollType.ts +4 -0
  882. package/src/classes/polls/HMSPollUpdateType.ts +5 -0
  883. package/src/classes/polls/HMSPollUserTrackingMode.ts +16 -0
  884. package/src/classes/polls/PollLeaderboardResponse.ts +8 -0
  885. package/src/classes/transcriptions/HMSTranscript.ts +13 -0
  886. package/src/classes/transcriptions/OnTranscriptionError.ts +5 -0
  887. package/src/classes/transcriptions/TranscriptionState.ts +6 -0
  888. package/src/classes/transcriptions/Transcriptions.ts +19 -0
  889. package/src/classes/transcriptions/TranscriptionsMode.ts +4 -0
  890. package/src/classes/transcriptions/index.ts +5 -0
  891. package/src/classes/whiteboard/HMSWhiteboard.tsx +16 -0
  892. package/src/classes/whiteboard/HMSWhiteboardListenerActions.ts +3 -0
  893. package/src/classes/whiteboard/HMSWhiteboardState.tsx +4 -0
  894. package/src/classes/whiteboard/HMSWhiteboardUpdateType.tsx +4 -0
  895. package/src/classes/whiteboard/index.ts +3 -0
  896. package/src/classes/whiteboard/registerCallbacks.ts +34 -0
  897. package/src/components/HMSHLSPlayer/HMSHLSPlayer.tsx +176 -92
  898. package/src/components/HMSHLSPlayer/RCTHMSHLSPlayer.ts +20 -13
  899. package/src/components/HMSHLSPlayer/hooks.ts +22 -4
  900. package/src/components/HMSHLSPlayer/index.ts +3 -0
  901. package/src/hooks/hmsviews.ts +15 -0
  902. package/src/hooks/polls.ts +14 -0
  903. package/src/index.ts +38 -3
  904. package/src/modules/HMSManagerModule.ts +5 -0
  905. package/src/specs/HMSHLSPlayerNativeComponent.ts +203 -0
  906. package/src/specs/HMSViewNativeComponent.ts +119 -0
  907. package/src/specs/NativeHMSManager.ts +307 -0
  908. package/src/stores/hls-player-playback-slice.ts +11 -0
  909. package/src/stores/hls-player-stats-store.ts +28 -18
  910. package/src/stores/hms-interactivity-store.ts +18 -0
  911. package/src/stores/hms-polls-slice.ts +20 -0
  912. package/src/stores/hms-store.ts +2 -0
  913. package/src/stores/hmsviews-slice.ts +20 -0
  914. package/src/stores/types.ts +50 -4
  915. package/src/types.ts +28 -3
  916. package/src/utils/emitter/EventEmitter.ts +26 -0
  917. package/src/utils/keyboard.ts +37 -0
  918. package/src/utils/notification.ts +10 -0
  919. package/src/utils/windowController.ts +23 -0
  920. package/android/.gradle/6.7.1/executionHistory/executionHistory.lock +0 -0
  921. package/android/.gradle/6.7.1/fileChanges/last-build.bin +0 -0
  922. package/android/.gradle/6.7.1/fileHashes/fileHashes.lock +0 -0
  923. package/android/.gradle/6.7.1/gc.properties +0 -0
  924. package/android/.gradle/6.9/executionHistory/executionHistory.bin +0 -0
  925. package/android/.gradle/6.9/executionHistory/executionHistory.lock +0 -0
  926. package/android/.gradle/6.9/fileChanges/last-build.bin +0 -0
  927. package/android/.gradle/6.9/fileHashes/fileHashes.bin +0 -0
  928. package/android/.gradle/6.9/fileHashes/fileHashes.lock +0 -0
  929. package/android/.gradle/6.9/fileHashes/resourceHashesCache.bin +0 -0
  930. package/android/.gradle/6.9/gc.properties +0 -0
  931. package/android/.gradle/6.9/javaCompile/classAnalysis.bin +0 -0
  932. package/android/.gradle/6.9/javaCompile/jarAnalysis.bin +0 -0
  933. package/android/.gradle/6.9/javaCompile/javaCompile.lock +0 -0
  934. package/android/.gradle/6.9/javaCompile/taskHistory.bin +0 -0
  935. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  936. package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
  937. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  938. package/android/.gradle/checksums/checksums.lock +0 -0
  939. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  940. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  941. package/android/.gradle/configuration-cache/gc.properties +0 -0
  942. package/android/.gradle/vcs-1/gc.properties +0 -0
  943. package/android/.idea/compiler.xml +0 -6
  944. package/android/.idea/gradle.xml +0 -18
  945. package/android/.idea/jarRepositories.xml +0 -45
  946. package/android/.idea/misc.xml +0 -10
  947. package/android/.idea/vcs.xml +0 -6
  948. package/android/local.properties +0 -8
  949. package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayerManager.kt +0 -114
  950. package/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt +0 -115
  951. package/ios/Hmssdk.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  952. package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  953. package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcuserdata/jatinnagar.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  954. package/ios/Hmssdk.xcodeproj/xcuserdata/jatinnagar.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
  955. package/lib/commonjs/classes/HMSManagerModule.js +0 -18
  956. package/lib/commonjs/classes/HMSManagerModule.js.map +0 -1
  957. package/lib/module/classes/HMSManagerModule.js +0 -11
  958. package/lib/module/classes/HMSManagerModule.js.map +0 -1
  959. package/src/classes/HMSManagerModule.ts +0 -18
  960. /package/lib/typescript/{classes → modules}/HMSManagerModule.d.ts +0 -0
@@ -1,17 +1,21 @@
1
1
  import type { HMSException } from './HMSException';
2
+ import type { HMSRecordingState } from './HMSRecordingState';
2
3
 
3
4
  export class HMSServerRecordingState {
4
5
  running: boolean;
5
6
  error?: HMSException;
6
7
  startedAt?: Date;
8
+ state: HMSRecordingState;
7
9
 
8
10
  constructor(params: {
9
11
  running: boolean;
10
12
  error?: HMSException;
11
13
  startedAt?: Date;
14
+ state: HMSRecordingState;
12
15
  }) {
13
16
  this.running = params.running;
14
17
  this.error = params.error;
15
18
  this.startedAt = params.startedAt;
19
+ this.state = params.state;
16
20
  }
17
21
  }
@@ -1,7 +1,7 @@
1
1
  import { DeviceEventEmitter } from 'react-native';
2
2
  import type { EmitterSubscription as RNEmitterSubscription } from 'react-native';
3
3
 
4
- import HMSManager from './HMSManagerModule';
4
+ import HMSManager from '../modules/HMSManagerModule';
5
5
 
6
6
  import { HMSConstants } from './HMSConstants';
7
7
  import { getLogger } from './HMSLogger';
@@ -9,14 +9,17 @@ import { HMSUpdateListenerActions } from './HMSUpdateListenerActions';
9
9
  import { EventEmitter } from '../utils';
10
10
  import type { EmitterSubscription } from '../utils';
11
11
 
12
- type Nullable<T> = T | null | undefined;
13
-
14
- export type HMSSessionStoreValue = Nullable<string>;
12
+ export type JsonPrimitive = string | number | boolean | null;
13
+ export type JsonMap = {
14
+ [key: string]: JsonPrimitive | JsonMap | JsonArray;
15
+ };
16
+ export type JsonArray = Array<JsonPrimitive | JsonMap | JsonArray>;
17
+ export type JsonValue = JsonPrimitive | JsonMap | JsonArray;
15
18
 
16
19
  /**
17
- * Session store is a shared realtime key-value store that is accessible by everyone in the room.
20
+ * Session store is a shared realtime key-value store that is accessible by all Peers in a Room.
18
21
  * It can be utilized to implement features such as pinned text, spotlight (which brings a particular
19
- * peer to the center stage for everyone in the room) and more.
22
+ * peer to the center stage for everyone in the room) and more, enhancing interactive experiences.
20
23
  *
21
24
  * To get an instance of `HMSSessionStore` class, You can add an event listener for `ON_SESSION_STORE_AVAILABLE`
22
25
  * event on the `HMSSDK` instance
@@ -38,52 +41,49 @@ export class HMSSessionStore {
38
41
  * Once a value is assigned, it will be available for other peers in the room
39
42
  * who are listening for changes in value for that specific key.
40
43
  *
41
- * @param {HMSSessionStoreValue} value
42
- * @param {string} key
43
- * @returns {Promise}
44
+ * @param {JsonValue} value - The value to set, which can be any JSON-compatible type.
45
+ * @param {string} key - The key under which to store the value.
46
+ * @returns {Promise} A promise that resolves when the operation is complete.
44
47
  */
45
- async set(value: HMSSessionStoreValue, key: string) {
46
- const data: { success: true; finalValue: HMSSessionStoreValue } =
47
- await HMSManager.setSessionMetadataForKey({
48
- id: HMSConstants.DEFAULT_SDK_ID,
49
- key,
50
- value,
51
- });
48
+ async set(value: JsonValue, key: string) {
49
+ const data: { success: true } = await HMSManager.setSessionMetadataForKey({
50
+ id: HMSConstants.DEFAULT_SDK_ID,
51
+ key,
52
+ value,
53
+ });
52
54
  return data;
53
55
  }
54
56
 
55
57
  /**
56
- * This method returns the value of any specified key on session store.
57
- * Note that you will not get updates for any change in value of the specified key,
58
- * It returns the latest value at the time it was called.
58
+ * Retrieves the value for a given key from the session store. This method does not subscribe
59
+ * to changes; it only returns the current value at the time of the call.
59
60
  *
60
61
  * To listen to value change updates use `addKeyChangeListener` method instead.
61
62
  *
62
- * @param {string} key
63
- * @returns {Promise}
63
+ * @param {string} key - The key whose value is to be retrieved.
64
+ * @returns {Promise} A promise that resolves with the value of the key.
64
65
  */
65
66
  async get(key: string) {
66
- const data: HMSSessionStoreValue =
67
- await HMSManager.getSessionMetadataForKey({
68
- id: HMSConstants.DEFAULT_SDK_ID,
69
- key,
70
- });
67
+ const data: JsonValue = await HMSManager.getSessionMetadataForKey({
68
+ id: HMSConstants.DEFAULT_SDK_ID,
69
+ key,
70
+ });
71
71
  return data;
72
72
  }
73
73
 
74
74
  /**
75
- * This method registers a callback function for listening to value changes of a particular key.
76
- * Registered Callback function will be called initially with latest value and whenever the value updates
75
+ * Registers a callback to listen for changes to specified keys in the session store.
76
+ * The callback is called with the initial value and again whenever any value changes.
77
77
  *
78
- * @param {string[]} forKeys
79
- * @param {Function} callback
80
- * @returns {Object} subscription object
78
+ * @param {string[]} forKeys - An array of keys to listen for changes on.
79
+ * @param {Function} callback - The function to call when a value changes.
80
+ * @returns {Object} An object with a `remove` method to unregister the listener.
81
81
  */
82
82
  addKeyChangeListener<T extends string[]>(
83
83
  forKeys: T,
84
84
  callback: (
85
85
  error: string | null,
86
- data: { key: T[number]; value: HMSSessionStoreValue } | null
86
+ data: { key: T[number]; value: JsonValue } | null
87
87
  ) => void
88
88
  ) {
89
89
  // Add Native Device Event Emitter if it is not already added
@@ -168,19 +168,8 @@ export class HMSSessionStore {
168
168
 
169
169
  if (this._addedKeyChangeListenerCount <= 0) {
170
170
  this._addedKeyChangeListenerCount = 0;
171
- if (
172
- this._deviceEventEmitterSubscription &&
173
- Object.getOwnPropertyNames(
174
- this._deviceEventEmitterSubscription
175
- ).includes('remove') &&
176
- typeof this._deviceEventEmitterSubscription.remove === 'function'
177
- ) {
171
+ if (this._deviceEventEmitterSubscription) {
178
172
  this._deviceEventEmitterSubscription.remove();
179
- } else {
180
- DeviceEventEmitter.removeListener(
181
- HMSUpdateListenerActions.ON_SESSION_STORE_CHANGED,
182
- this._deviceEventEmitterListener
183
- );
184
173
  }
185
174
 
186
175
  this._deviceEventEmitterSubscription = undefined;
@@ -192,7 +181,7 @@ export class HMSSessionStore {
192
181
  private _deviceEventEmitterListener(data: {
193
182
  id: string;
194
183
  key: string;
195
- value: HMSSessionStoreValue;
184
+ value: JsonValue;
196
185
  }) {
197
186
  // if id is different from default sdk_id, return early
198
187
  if (data.id !== HMSConstants.DEFAULT_SDK_ID) {
@@ -0,0 +1,7 @@
1
+ export enum HMSStreamingState {
2
+ NONE = 'NONE',
3
+ STARTING = 'STARTING',
4
+ STARTED = 'STARTED',
5
+ STOPPED = 'STOPPED',
6
+ FAILED = 'FAILED',
7
+ }
@@ -1,6 +1,19 @@
1
1
  import type { HMSTrackSource } from './HMSTrackSource';
2
2
  import type { HMSTrackType } from './HMSTrackType';
3
3
 
4
+ /**
5
+ * Represents a generic track within the HMS (100ms) system.
6
+ *
7
+ * This class serves as a base for different types of tracks (audio, video, etc.) within the HMS system. It encapsulates
8
+ * common properties and functionalities that are shared across different track types.
9
+ *
10
+ * @property {string} trackId - The unique identifier for the track.
11
+ * @property {HMSTrackSource} [source] - The source of the track, indicating whether it's from a plugin, regular input, or screen sharing.
12
+ * @property {string} [trackDescription] - A brief description of the track.
13
+ * @property {boolean} [mute] - Indicates whether the track is currently muted.
14
+ * @property {string} id - A secondary identifier for the track.
15
+ * @property {HMSTrackType} [type] - The type of the track, distinguishing between audio and video.
16
+ */
4
17
  export class HMSTrack {
5
18
  trackId: string;
6
19
  source?: HMSTrackSource;
@@ -1,6 +1,16 @@
1
1
  import type { HMSAudioTrackSettings } from './HMSAudioTrackSettings';
2
2
  import type { HMSVideoTrackSettings } from './HMSVideoTrackSettings';
3
3
 
4
+ /**
5
+ * Represents the settings for both video and audio tracks in a HMS (100ms) application.
6
+ *
7
+ * This class encapsulates the configurations for video and audio tracks that can be used
8
+ * in a HMS session.
9
+ *
10
+ * @property {HMSVideoTrackSettings} video - Optional video track settings.
11
+ * @property {HMSAudioTrackSettings} audio - Optional audio track settings.
12
+ *
13
+ */
4
14
  export class HMSTrackSettings {
5
15
  video?: HMSVideoTrackSettings;
6
16
  audio?: HMSAudioTrackSettings;
@@ -1,4 +1,15 @@
1
+ /**
2
+ * Enum for the initial state of tracks in a 100ms (HMS) application.
3
+ *
4
+ * This enumeration defines the initial mute state for tracks (audio or video) in a 100ms (HMS) application.
5
+ * It allows developers to specify whether a track should start in a muted or unmuted state, providing control over the user's media state upon joining a Room.
6
+ *
7
+ * @enum {string}
8
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/set-up-video-conferencing/join#join-with-muted-audio-video
9
+ */
1
10
  export enum HMSTrackSettingsInitState {
11
+ /** Represents the state where the track is initially muted. */
2
12
  MUTED = 'MUTED',
13
+ /** Represents the state where the track is initially unmuted. */
3
14
  UNMUTED = 'UNMUTED',
4
15
  }
@@ -1,3 +1,13 @@
1
+ /**
2
+ * Enum for HMS Track Source types.
3
+ *
4
+ * Defines the source of an HMS track, indicating whether the track originates from a plugin, is a regular track, or is a screen-sharing track.
5
+ *
6
+ * @enum {string}
7
+ * @property {string} REGULAR - Represents a regular track, typically from a user's camera or microphone.
8
+ * @property {string} SCREEN - Represents a track that shares the screen.
9
+ * @property {string} PLUGIN - Represents a track sourced from a plugin.
10
+ */
1
11
  export enum HMSTrackSource {
2
12
  PLUGIN = 'plugin',
3
13
  REGULAR = 'regular',
@@ -1,3 +1,10 @@
1
+ /**
2
+ * Enum for HMS Track Types.
3
+ *
4
+ * This enumeration defines the types of tracks that can be handled within the HMS (100ms) system, specifically distinguishing between audio and video tracks.
5
+ * - `AUDIO`: Represents an audio track, typically containing sound or voice data.
6
+ * - `VIDEO`: Represents a video track, typically containing visual data from a camera or other video sources.
7
+ */
1
8
  export enum HMSTrackType {
2
9
  AUDIO = 'AUDIO',
3
10
  VIDEO = 'VIDEO',
@@ -1,30 +1,340 @@
1
1
  /**
2
- * These are the available events emitted by the `HMSSDK`
2
+ * Enum for HMSUpdateListenerActions.
3
3
  *
4
+ * This enumeration defines the set of possible events that can be emitted by the HMSSDK during a Session.
5
+ * These events cover a wide range of actions, from joining a room to receiving updates about peers and tracks, and more.
4
6
  * For more info about these events, checkout Event Listener docs
5
- * {@link https://www.100ms.live/docs/react-native/v2/how-to-guides/listen-to-room-updates/event-listeners}
7
+ *
8
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/listen-to-room-updates/event-listeners
9
+ *
10
+ * @enum {string}
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * hmsInstance.addEventListener(HMSUpdateListenerActions.ON_JOIN, ({ room: HMSRoom }}) => {
15
+ * console.log('Joined room', data);
16
+ * // Handle the event
17
+ * });
18
+ * ```
19
+ *
20
+ * @property {string} ON_PREVIEW - Emitted when the local preview is available.
21
+ * @property {string} ON_JOIN - Emitted when the local user joins the room.
22
+ * @property {string} ON_ROOM_UPDATE - Emitted when there is an update related to the room.
23
+ * @property {string} ON_PEER_UPDATE - Emitted when there is an update related to a peer in the room.
24
+ * @property {string} ON_TRACK_UPDATE - Emitted when there is an update related to a track in the room.
25
+ * @property {string} ON_ERROR - Emitted when an error occurs.
26
+ * @property {string} ON_MESSAGE - Emitted when a message is received.
27
+ * @property {string} ON_SPEAKER - Emitted when there is an update on the current speaker.
28
+ * @property {string} RECONNECTING - Emitted when the SDK is attempting to reconnect to the room.
29
+ * @property {string} RECONNECTED - Emitted when the SDK has successfully reconnected to the room.
30
+ * @property {string} ON_ROLE_CHANGE_REQUEST - Emitted when there is a request to change the role of a peer.
31
+ * @property {string} ON_CHANGE_TRACK_STATE_REQUEST - Emitted when there is a request to change the state of a track.
32
+ * @property {string} ON_REMOVED_FROM_ROOM - Emitted when the local user is removed from the room.
33
+ * @property {string} ON_RTC_STATS - Emitted when RTC stats are available.
34
+ * @property {string} ON_LOCAL_AUDIO_STATS - Emitted when stats for the local audio track are available.
35
+ * @property {string} ON_LOCAL_VIDEO_STATS - Emitted when stats for the local video track are available.
36
+ * @property {string} ON_REMOTE_AUDIO_STATS - Emitted when stats for a remote audio track are available.
37
+ * @property {string} ON_REMOTE_VIDEO_STATS - Emitted when stats for a remote video track are available.
38
+ * @property {string} ON_AUDIO_DEVICE_CHANGED - Emitted when the audio device has changed.
39
+ * @property {string} ON_SESSION_STORE_AVAILABLE - Emitted when the session store is available.
40
+ * @property {string} ON_SESSION_STORE_CHANGED - Emitted when the session store has changed.
41
+ * @property {string} ON_PEER_LIST_UPDATED - Emitted when the list of peers is updated.
42
+ * @property {string} ON_TRANSCRIPTS - Emitted when transcripts are available.
43
+ * @property {string} ON_PERMISSIONS_REQUESTED - Emitted when permissions are requested.
6
44
  */
7
45
  export enum HMSUpdateListenerActions {
46
+ /**
47
+ * Event emitted when the local preview is available.
48
+ *
49
+ * This event is triggered once the local user's video preview becomes available.
50
+ * It allows the application to display the local video stream to the user,
51
+ * ensuring they can see their own feed before interacting with others in the room.
52
+ *
53
+ * @type {string}
54
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/set-up-video-conferencing/preview
55
+ */
8
56
  ON_PREVIEW = 'ON_PREVIEW',
57
+
58
+ /**
59
+ * Event emitted when the local user joins the room.
60
+ *
61
+ * This event signifies that the local user has successfully connected to the room and is now part of the session.
62
+ * It is a critical event for initiating further actions within the room, such as fetching current participants,
63
+ * subscribing to tracks, or sending messages. Handling this event properly is essential for setting up the user's
64
+ * environment and ensuring a smooth experience in the room.
65
+ *
66
+ * @type {string}
67
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/set-up-video-conferencing/join
68
+ */
9
69
  ON_JOIN = 'ON_JOIN',
70
+
71
+ /**
72
+ * Event emitted when there is an update related to the room.
73
+ *
74
+ * This event is triggered by various room-related changes, such as updates to the room's metadata, changes in the room's state,
75
+ * or modifications to the list of available tracks. It serves as a general notification to the application that some aspect of the
76
+ * room's configuration or status has changed, enabling the application to respond appropriately, such as updating the UI or querying
77
+ * for new information to reflect the current state of the room.
78
+ *
79
+ * @type {string}
80
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/listen-to-room-updates/event-listeners
81
+ */
10
82
  ON_ROOM_UPDATE = 'ON_ROOM_UPDATE',
83
+
84
+ /**
85
+ * Event emitted when there is an update related to a peer in the room.
86
+ *
87
+ * This event is triggered whenever a peer's state changes within the room, such as when a peer's video or audio track is enabled or disabled,
88
+ * or when a peer's metadata is updated. It provides a way for the application to react to changes in a peer's status, ensuring that the UI
89
+ * and application state can be updated to reflect the current state of peers in the room.
90
+ *
91
+ * @type {string}
92
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/listen-to-room-updates/event-listeners
93
+ */
11
94
  ON_PEER_UPDATE = '3',
95
+
96
+ /**
97
+ * Event emitted when the list of peers in the room is updated.
98
+ *
99
+ * This event is triggered whenever there is a change in the list of peers present in the room, such as when a new peer joins,
100
+ * an existing peer leaves. It allows the application to react to changes in the room's
101
+ * participant list, enabling dynamic updates to the UI or other logic based on the current set of participants.
102
+ *
103
+ * @type {string}
104
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/interact-with-room/peer/large-room
105
+ */
106
+ ON_PEER_LIST_UPDATED = 'ON_PEER_LIST_UPDATED',
107
+
108
+ /**
109
+ * Event emitted when there is an update related to a track in the room.
110
+ *
111
+ * This event is triggered whenever a track's state changes within the room, such as when a video or audio track is enabled or disabled,
112
+ * or when a track's settings are modified. It provides a way for the application to react to changes in a track's status, ensuring that
113
+ * the UI and application state can be updated to reflect the current state of tracks in the room.
114
+ *
115
+ * @type {string}
116
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/listen-to-room-updates/event-listeners
117
+ */
12
118
  ON_TRACK_UPDATE = 'ON_TRACK_UPDATE',
119
+
120
+ /**
121
+ * Event emitted when an error occurs.
122
+ *
123
+ * This event is triggered whenever the HMS SDK encounters an error during its operation. It could be due to network issues,
124
+ * permissions being denied, or any other error that prevents the SDK from functioning as expected. Handling this event allows
125
+ * the application to inform the user about the issue and possibly take corrective action or log the error for further analysis.
126
+ *
127
+ * @type {string}
128
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/debugging/error-handling
129
+ */
13
130
  ON_ERROR = 'ON_ERROR',
131
+
132
+ /**
133
+ * Event emitted when a message is received.
134
+ *
135
+ * This event is triggered whenever a message is sent by a peer in the room and received by the local user.
136
+ * It is crucial for enabling real-time communication within the room, allowing participants to exchange text messages,
137
+ * notifications, or commands. Handling this event is essential for applications that support chat or command-based interactions
138
+ * among participants.
139
+ *
140
+ * @type {string}
141
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/set-up-video-conferencing/chat
142
+ */
14
143
  ON_MESSAGE = 'ON_MESSAGE',
144
+
145
+ /**
146
+ * Event emitted when there is an update on the current speaker.
147
+ *
148
+ * This event is triggered whenever the active speaker in the room changes, such as when a new participant starts speaking or the current speaker stops.
149
+ * It allows the application to highlight the current speaker in the UI, enhancing the user experience by making it easier to follow the conversation flow.
150
+ *
151
+ * @type {string}
152
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/set-up-video-conferencing/render-video/show-audio-level
153
+ */
15
154
  ON_SPEAKER = 'ON_SPEAKER',
155
+
156
+ /**
157
+ * Event emitted when the SDK is attempting to reconnect to the room.
158
+ *
159
+ * This event is triggered when the connection to the room is lost, and the HMS SDK is trying to re-establish the connection.
160
+ * It indicates that the SDK is in the process of reconnecting, allowing the application to notify users about the reconnection attempt
161
+ * and possibly display a loading or waiting indicator. Handling this event is crucial for maintaining a smooth user experience during
162
+ * network interruptions.
163
+ *
164
+ * @type {string}
165
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/handle-interruptions/reconnection-handling
166
+ */
16
167
  RECONNECTING = 'RECONNECTING',
168
+
169
+ /**
170
+ * Event emitted when the SDK has successfully reconnected to the room.
171
+ *
172
+ * This event signifies that after a disconnection, the HMS SDK has managed to re-establish the connection to the room successfully.
173
+ * It is crucial for applications to handle this event to update the UI and inform the user that the connection has been restored,
174
+ * ensuring a seamless experience. This event can trigger re-initialization of room-related functionalities or refreshes of the UI
175
+ * to reflect the current state of the room.
176
+ *
177
+ * @type {string}
178
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/handle-interruptions/reconnection-handling
179
+ */
17
180
  RECONNECTED = 'RECONNECTED',
181
+
182
+ /**
183
+ * Event emitted when there is a request to change the role of a peer.
184
+ *
185
+ * This event is triggered whenever a request is made to change the role of a participant in the room, such as from a viewer to a speaker or vice versa.
186
+ * Handling this event allows the application to manage user roles dynamically, ensuring that participants have the correct permissions for their intended
187
+ * actions within the room. It is crucial for applications that implement role-based access control or need to change user permissions on the fly.
188
+ *
189
+ * @type {string}
190
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/interact-with-room/peer/change-role
191
+ */
18
192
  ON_ROLE_CHANGE_REQUEST = 'ON_ROLE_CHANGE_REQUEST',
193
+
194
+ /**
195
+ * Event emitted when there is a request to change the state of a track.
196
+ *
197
+ * This event is triggered whenever a request is made to change the state of a track within the room, such as enabling or disabling a video or audio track.
198
+ * Handling this event allows the application to respond to changes in track states, ensuring that participants can control their audio and video streams
199
+ * as needed. It is crucial for applications that allow users to manage their media streams dynamically during a session.
200
+ *
201
+ * @type {string}
202
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/interact-with-room/track/remote-mute
203
+ */
19
204
  ON_CHANGE_TRACK_STATE_REQUEST = 'ON_CHANGE_TRACK_STATE_REQUEST',
205
+
206
+ /**
207
+ * Event emitted when the local user is removed from the room.
208
+ *
209
+ * This event is triggered whenever the local user is explicitly removed from the room by an action from another participant with sufficient permissions or due to room policy violations. Handling this event is crucial for applications to gracefully disconnect the user from the session, possibly clear user-related data, and inform the user about the removal reason if applicable.
210
+ *
211
+ * @type {string}
212
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/interact-with-room/room/end-room
213
+ */
20
214
  ON_REMOVED_FROM_ROOM = 'ON_REMOVED_FROM_ROOM',
215
+
216
+ /**
217
+ * Event emitted when RTC stats are available.
218
+ *
219
+ * This event is triggered when real-time communication (RTC) statistics become available from the HMS SDK.
220
+ * RTC stats provide detailed information about the performance and quality of the media streams in the session,
221
+ * including metrics such as packet loss, jitter, round-trip time (RTT), and more. Handling this event allows
222
+ * the application to monitor and react to the quality of the connection, potentially informing users about
223
+ * the current call quality or troubleshooting issues in real-time.
224
+ *
225
+ * @type {string}
226
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/measure-network-quality-and-performance/rtc-stats
227
+ */
21
228
  ON_RTC_STATS = 'ON_RTC_STATS',
229
+
230
+ /**
231
+ * Event emitted when stats for the local audio track are available.
232
+ *
233
+ * This event is triggered when statistics related to the local user's audio track become available from the HMS SDK.
234
+ * These statistics can include metrics such as round trip time, bitrate, and bytesSent, which are crucial for monitoring
235
+ * the quality of the audio being transmitted. Handling this event allows the application to react to the audio quality,
236
+ * potentially adjusting settings or notifying the user about issues in real-time.
237
+ *
238
+ * @type {string}
239
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/measure-network-quality-and-performance/rtc-stats
240
+ */
22
241
  ON_LOCAL_AUDIO_STATS = 'ON_LOCAL_AUDIO_STATS',
242
+
243
+ /**
244
+ * Event emitted when stats for the local video track are available.
245
+ *
246
+ * This event is triggered when statistics related to the local user's video track become available from the HMS SDK.
247
+ * These statistics can include metrics such as frame rate, resolution, and bitrate, which are crucial for monitoring
248
+ * the quality of the video being transmitted. Handling this event allows the application to react to the video quality,
249
+ * potentially adjusting settings or notifying the user about issues in real-time.
250
+ *
251
+ * @type {string}
252
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/measure-network-quality-and-performance/rtc-stats
253
+ */
23
254
  ON_LOCAL_VIDEO_STATS = 'ON_LOCAL_VIDEO_STATS',
255
+
256
+ /**
257
+ * Event emitted when statistics for a remote audio track are available.
258
+ *
259
+ * This event is triggered when statistics related to an audio track from a remote user become available from the HMS SDK.
260
+ * These statistics can include metrics such as bitrate, packet loss, and jitter, which are crucial for monitoring
261
+ * the quality of the audio being received. Handling this event allows the application to react to the audio quality,
262
+ * potentially adjusting settings or notifying the user about issues in real-time.
263
+ *
264
+ * @type {string}
265
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/measure-network-quality-and-performance/rtc-stats
266
+ */
24
267
  ON_REMOTE_AUDIO_STATS = 'ON_REMOTE_AUDIO_STATS',
268
+
269
+ /**
270
+ * Event emitted when statistics for a remote video track are available.
271
+ *
272
+ * This event is triggered when statistics related to a video track from a remote user become available from the HMS SDK.
273
+ * These statistics can include metrics such as frame rate, resolution, bitrate, and packet loss, which are crucial for monitoring
274
+ * the quality of the video being received. Handling this event allows the application to react to the video quality,
275
+ * potentially adjusting settings or notifying the user about issues in real-time.
276
+ *
277
+ * @type {string}
278
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/measure-network-quality-and-performance/rtc-stats
279
+ */
25
280
  ON_REMOTE_VIDEO_STATS = 'ON_REMOTE_VIDEO_STATS',
281
+
282
+ /**
283
+ * Event emitted when the audio device has changed. Android only.
284
+ *
285
+ * This event is triggered whenever there is a change in the audio output device, such as switching from the built-in speaker to a Bluetooth headset.
286
+ * Handling this event allows the application to update any UI elements or settings related to the current audio device, ensuring that the user is always aware of which device is being used for audio output.
287
+ *
288
+ * @type {string}
289
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/configure-your-device/speaker/audio-output-routing
290
+ */
26
291
  ON_AUDIO_DEVICE_CHANGED = 'ON_AUDIO_DEVICE_CHANGED',
292
+
293
+ /**
294
+ * Event emitted when the session store becomes available.
295
+ *
296
+ * This event is triggered when the session store, which may contain critical data for the ongoing session such as user tokens, room state, or other metadata, becomes available to the application.
297
+ * Handling this event allows the application to perform actions that depend on session-specific data, such as initializing user interfaces or fetching additional room details.
298
+ * It is crucial for applications that need to ensure all necessary data is loaded before proceeding with further operations.
299
+ *
300
+ * @type {string}
301
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/interact-with-room/room/session-store
302
+ */
27
303
  ON_SESSION_STORE_AVAILABLE = 'ON_SESSION_STORE_AVAILABLE',
304
+
305
+ /**
306
+ * Event emitted when the session store has changed.
307
+ *
308
+ * This event is triggered whenever there is a change in the session store, which may include updates to user tokens, room state, or other metadata critical for the ongoing session.
309
+ * Handling this event allows the application to react to changes in session-specific data in real-time, ensuring that the application's state is always synchronized with the session store.
310
+ * This is crucial for applications that rely on up-to-date session information for functionalities like UI updates, access control, and room management.
311
+ *
312
+ * @type {string}
313
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/interact-with-room/room/session-store
314
+ */
28
315
  ON_SESSION_STORE_CHANGED = 'ON_SESSION_STORE_CHANGED',
29
- ON_PEER_LIST_UPDATED = 'ON_PEER_LIST_UPDATED',
316
+
317
+ /**
318
+ * Event emitted when transcripts are available.
319
+ *
320
+ * This event is triggered when the HMS SDK has generated transcripts from the audio streams in the room.
321
+ * It allows the application to receive real-time or post-processed text versions of spoken content, which can be used for
322
+ * accessibility features, content analysis, or storing meeting minutes. The availability of this feature depends on the
323
+ * HMS service configuration and may require additional setup or permissions.
324
+ *
325
+ * @type {string}
326
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/extend-capabilities/live-captions
327
+ */
328
+ ON_TRANSCRIPTS = 'ON_TRANSCRIPTS',
329
+
330
+ /**
331
+ * Event emitted when the HMS SDK requests permissions from the user. Android only.
332
+ *
333
+ * This event is triggered whenever the application needs to request permissions from the user, such as access to the camera or microphone.
334
+ * It is used in conjunction with the platform's permissions API to prompt the user for the necessary permissions and to inform the HMS SDK
335
+ * of the user's response. This is crucial for features that require explicit user consent before they can be used.
336
+ *
337
+ * @type {string}
338
+ */
339
+ ON_PERMISSIONS_REQUESTED = 'ON_PERMISSIONS_REQUESTED',
30
340
  }
@@ -2,7 +2,24 @@ import { HMSTrack } from './HMSTrack';
2
2
  import type { HMSTrackSource } from './HMSTrackSource';
3
3
  import type { HMSTrackType } from './HMSTrackType';
4
4
 
5
+ /**
6
+ * Represents a video track within the HMS (100ms) system.
7
+ *
8
+ * This class extends `HMSTrack` to provide functionalities specific to video tracks. It includes additional
9
+ * property `isDegraded` to indicate whether the video quality has been intentionally reduced, typically for
10
+ * performance reasons. The constructor allows for the initialization of the video track with various parameters
11
+ * such as track ID, source, description, mute state, degradation state, ID, and type. These parameters provide
12
+ * detailed information about the video track and its characteristics.
13
+ *
14
+ * @extends HMSTrack
15
+ *
16
+ * @see https://www.100ms.live/docs/react-native/v2/how-to-guides/set-up-video-conferencing/render-video/overview
17
+ */
5
18
  export class HMSVideoTrack extends HMSTrack {
19
+ /**
20
+ * Indicates whether the video quality of the track is degraded.
21
+ * @type {boolean | undefined}
22
+ */
6
23
  isDegraded?: boolean;
7
24
 
8
25
  constructor(params: {