@100mslive/react-native-hms 1.8.0 → 1.9.1-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/android/build.gradle +3 -3
  2. package/android/local.properties +8 -1
  3. package/android/src/main/java/com/reactnativehmssdk/HMSAudioshareActivity.kt +1 -1
  4. package/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +15 -5
  5. package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayer.kt +4 -3
  6. package/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt +43 -5
  7. package/android/src/main/java/com/reactnativehmssdk/HMSManager.kt +147 -47
  8. package/android/src/main/java/com/reactnativehmssdk/HMSRNSDK.kt +419 -248
  9. package/android/src/main/java/com/reactnativehmssdk/HMSView.kt +24 -4
  10. package/android/src/main/java/com/reactnativehmssdk/HmsScreenshareActivity.kt +1 -1
  11. package/ios/HMSConstants.swift +1 -0
  12. package/ios/HMSDecoder.swift +16 -5
  13. package/ios/HMSHLSPlayerManager.swift +20 -11
  14. package/ios/HMSHelper.swift +33 -4
  15. package/ios/HMSManager.m +66 -10
  16. package/ios/HMSManager.swift +65 -21
  17. package/ios/HMSRNSDK.swift +244 -100
  18. package/ios/Hmssdk.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  19. package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  20. package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcuserdata/jatinnagar.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  21. package/ios/Hmssdk.xcodeproj/xcuserdata/jatinnagar.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
  22. package/lib/commonjs/classes/HMSAudioCodec.js +1 -2
  23. package/lib/commonjs/classes/HMSAudioCodec.js.map +1 -1
  24. package/lib/commonjs/classes/HMSAudioDevice.js +1 -2
  25. package/lib/commonjs/classes/HMSAudioDevice.js.map +1 -1
  26. package/lib/commonjs/classes/HMSAudioMixingMode.js +1 -2
  27. package/lib/commonjs/classes/HMSAudioMixingMode.js.map +1 -1
  28. package/lib/commonjs/classes/HMSAudioMode.js +1 -2
  29. package/lib/commonjs/classes/HMSAudioMode.js.map +1 -1
  30. package/lib/commonjs/classes/HMSCameraFacing.js +1 -2
  31. package/lib/commonjs/classes/HMSCameraFacing.js.map +1 -1
  32. package/lib/commonjs/classes/HMSConstants.js +1 -2
  33. package/lib/commonjs/classes/HMSConstants.js.map +1 -1
  34. package/lib/commonjs/classes/HMSEventEmitter.js +1 -2
  35. package/lib/commonjs/classes/HMSEventEmitter.js.map +1 -1
  36. package/lib/commonjs/classes/HMSIOSAudioMode.js +1 -2
  37. package/lib/commonjs/classes/HMSIOSAudioMode.js.map +1 -1
  38. package/lib/commonjs/classes/HMSLayer.js +1 -2
  39. package/lib/commonjs/classes/HMSLayer.js.map +1 -1
  40. package/lib/commonjs/classes/HMSLogAlarmManager.js +1 -2
  41. package/lib/commonjs/classes/HMSLogAlarmManager.js.map +1 -1
  42. package/lib/commonjs/classes/HMSLogLevel.js +1 -2
  43. package/lib/commonjs/classes/HMSLogLevel.js.map +1 -1
  44. package/lib/commonjs/classes/HMSLogger.js +1 -2
  45. package/lib/commonjs/classes/HMSLogger.js.map +1 -1
  46. package/lib/commonjs/classes/HMSManagerModule.js +1 -2
  47. package/lib/commonjs/classes/HMSManagerModule.js.map +1 -1
  48. package/lib/commonjs/classes/HMSMessageRecipientType.js +1 -2
  49. package/lib/commonjs/classes/HMSMessageRecipientType.js.map +1 -1
  50. package/lib/commonjs/classes/HMSNativeEventListener.js +1 -2
  51. package/lib/commonjs/classes/HMSNativeEventListener.js.map +1 -1
  52. package/lib/commonjs/classes/HMSPIPConfig.js +4 -0
  53. package/lib/commonjs/classes/HMSPIPConfig.js.map +1 -0
  54. package/lib/commonjs/classes/HMSPIPListenerActions.js +2 -2
  55. package/lib/commonjs/classes/HMSPIPListenerActions.js.map +1 -1
  56. package/lib/commonjs/classes/HMSPeer.js +15 -0
  57. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  58. package/lib/commonjs/classes/HMSPeerListIterator.js +64 -0
  59. package/lib/commonjs/classes/HMSPeerListIterator.js.map +1 -0
  60. package/lib/commonjs/classes/HMSPeerListIteratorOptions.js +2 -0
  61. package/lib/commonjs/classes/HMSPeerListIteratorOptions.js.map +1 -0
  62. package/lib/commonjs/classes/HMSPeerUpdate.js +3 -4
  63. package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
  64. package/lib/commonjs/classes/HMSPeersCache.js +8 -2
  65. package/lib/commonjs/classes/HMSPeersCache.js.map +1 -1
  66. package/lib/commonjs/classes/HMSQualityLimitationReason.js +1 -2
  67. package/lib/commonjs/classes/HMSQualityLimitationReason.js.map +1 -1
  68. package/lib/commonjs/classes/HMSRoomCache.js +1 -2
  69. package/lib/commonjs/classes/HMSRoomCache.js.map +1 -1
  70. package/lib/commonjs/classes/HMSRoomUpdate.js +1 -2
  71. package/lib/commonjs/classes/HMSRoomUpdate.js.map +1 -1
  72. package/lib/commonjs/classes/HMSSDK.js +152 -8
  73. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  74. package/lib/commonjs/classes/HMSTrackSettingsInitState.js +1 -2
  75. package/lib/commonjs/classes/HMSTrackSettingsInitState.js.map +1 -1
  76. package/lib/commonjs/classes/HMSTrackSource.js +1 -2
  77. package/lib/commonjs/classes/HMSTrackSource.js.map +1 -1
  78. package/lib/commonjs/classes/HMSTrackType.js +1 -2
  79. package/lib/commonjs/classes/HMSTrackType.js.map +1 -1
  80. package/lib/commonjs/classes/HMSTrackUpdate.js +1 -2
  81. package/lib/commonjs/classes/HMSTrackUpdate.js.map +1 -1
  82. package/lib/commonjs/classes/HMSUpdateListenerActions.js +2 -2
  83. package/lib/commonjs/classes/HMSUpdateListenerActions.js.map +1 -1
  84. package/lib/commonjs/classes/HMSVideoCodec.js +1 -2
  85. package/lib/commonjs/classes/HMSVideoCodec.js.map +1 -1
  86. package/lib/commonjs/classes/HMSVideoViewMode.js +1 -2
  87. package/lib/commonjs/classes/HMSVideoViewMode.js.map +1 -1
  88. package/lib/commonjs/classes/HmsView.js +17 -5
  89. package/lib/commonjs/classes/HmsView.js.map +1 -1
  90. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js +11 -9
  91. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
  92. package/lib/commonjs/components/HMSHLSPlayer/RCTHMSHLSPlayer.js +2 -4
  93. package/lib/commonjs/components/HMSHLSPlayer/RCTHMSHLSPlayer.js.map +1 -1
  94. package/lib/commonjs/components/HMSHLSPlayer/hooks.js +11 -11
  95. package/lib/commonjs/components/HMSHLSPlayer/hooks.js.map +1 -1
  96. package/lib/commonjs/components/HMSHLSPlayer/index.js +8 -1
  97. package/lib/commonjs/components/HMSHLSPlayer/index.js.map +1 -1
  98. package/lib/commonjs/hooks/hmsviews.js +17 -0
  99. package/lib/commonjs/hooks/hmsviews.js.map +1 -0
  100. package/lib/commonjs/hooks/useHMSPeerUpdates.js +2 -2
  101. package/lib/commonjs/hooks/useHMSPeerUpdates.js.map +1 -1
  102. package/lib/commonjs/index.js +10 -3
  103. package/lib/commonjs/index.js.map +1 -1
  104. package/lib/commonjs/stores/hls-player-playback-slice.js +4 -0
  105. package/lib/commonjs/stores/hls-player-playback-slice.js.map +1 -1
  106. package/lib/commonjs/stores/hls-player-stats-store.js +1 -2
  107. package/lib/commonjs/stores/hls-player-stats-store.js.map +1 -1
  108. package/lib/commonjs/stores/hms-store.js +4 -3
  109. package/lib/commonjs/stores/hms-store.js.map +1 -1
  110. package/lib/commonjs/stores/hmsviews-slice.js +19 -0
  111. package/lib/commonjs/stores/hmsviews-slice.js.map +1 -0
  112. package/lib/commonjs/stores/types.js +9 -0
  113. package/lib/commonjs/stores/types.js.map +1 -1
  114. package/lib/commonjs/types.js +4 -7
  115. package/lib/commonjs/types.js.map +1 -1
  116. package/lib/module/classes/HMSPIPConfig.js +2 -0
  117. package/lib/module/classes/HMSPIPConfig.js.map +1 -0
  118. package/lib/module/classes/HMSPIPListenerActions.js +1 -0
  119. package/lib/module/classes/HMSPIPListenerActions.js.map +1 -1
  120. package/lib/module/classes/HMSPeer.js +15 -0
  121. package/lib/module/classes/HMSPeer.js.map +1 -1
  122. package/lib/module/classes/HMSPeerListIterator.js +58 -0
  123. package/lib/module/classes/HMSPeerListIterator.js.map +1 -0
  124. package/lib/module/classes/HMSPeerListIteratorOptions.js +2 -0
  125. package/lib/module/classes/HMSPeerListIteratorOptions.js.map +1 -0
  126. package/lib/module/classes/HMSPeerUpdate.js +2 -1
  127. package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
  128. package/lib/module/classes/HMSPeersCache.js +7 -0
  129. package/lib/module/classes/HMSPeersCache.js.map +1 -1
  130. package/lib/module/classes/HMSSDK.js +153 -10
  131. package/lib/module/classes/HMSSDK.js.map +1 -1
  132. package/lib/module/classes/HMSUpdateListenerActions.js +1 -0
  133. package/lib/module/classes/HMSUpdateListenerActions.js.map +1 -1
  134. package/lib/module/classes/HmsView.js +14 -1
  135. package/lib/module/classes/HmsView.js.map +1 -1
  136. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js +9 -6
  137. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
  138. package/lib/module/components/HMSHLSPlayer/hooks.js +4 -0
  139. package/lib/module/components/HMSHLSPlayer/hooks.js.map +1 -1
  140. package/lib/module/components/HMSHLSPlayer/index.js +1 -1
  141. package/lib/module/components/HMSHLSPlayer/index.js.map +1 -1
  142. package/lib/module/hooks/hmsviews.js +12 -0
  143. package/lib/module/hooks/hmsviews.js.map +1 -0
  144. package/lib/module/index.js +1 -0
  145. package/lib/module/index.js.map +1 -1
  146. package/lib/module/stores/hls-player-playback-slice.js +4 -0
  147. package/lib/module/stores/hls-player-playback-slice.js.map +1 -1
  148. package/lib/module/stores/hms-store.js +3 -1
  149. package/lib/module/stores/hms-store.js.map +1 -1
  150. package/lib/module/stores/hmsviews-slice.js +12 -0
  151. package/lib/module/stores/hmsviews-slice.js.map +1 -0
  152. package/lib/module/stores/types.js +9 -0
  153. package/lib/module/stores/types.js.map +1 -1
  154. package/lib/module/types.js +1 -1
  155. package/lib/module/types.js.map +1 -1
  156. package/lib/typescript/classes/HMSPIPConfig.d.ts +7 -0
  157. package/lib/typescript/classes/HMSPIPListenerActions.d.ts +1 -0
  158. package/lib/typescript/classes/HMSPeer.d.ts +3 -0
  159. package/lib/typescript/classes/HMSPeerListIterator.d.ts +9 -0
  160. package/lib/typescript/classes/HMSPeerListIteratorOptions.d.ts +24 -0
  161. package/lib/typescript/classes/HMSPeerUpdate.d.ts +2 -1
  162. package/lib/typescript/classes/HMSPeersCache.d.ts +1 -0
  163. package/lib/typescript/classes/HMSSDK.d.ts +47 -8
  164. package/lib/typescript/classes/HMSUpdateListenerActions.d.ts +2 -1
  165. package/lib/typescript/components/HMSHLSPlayer/hooks.d.ts +2 -0
  166. package/lib/typescript/components/HMSHLSPlayer/index.d.ts +1 -1
  167. package/lib/typescript/hooks/hmsviews.d.ts +3 -0
  168. package/lib/typescript/index.d.ts +2 -0
  169. package/lib/typescript/stores/hms-store.d.ts +4 -3
  170. package/lib/typescript/stores/hmsviews-slice.d.ts +5 -0
  171. package/lib/typescript/stores/types.d.ts +14 -2
  172. package/lib/typescript/types.d.ts +9 -5
  173. package/package.json +3 -1
  174. package/sdk-versions.json +2 -2
  175. package/src/classes/HMSPIPConfig.ts +7 -0
  176. package/src/classes/HMSPIPListenerActions.ts +1 -0
  177. package/src/classes/HMSPeer.ts +25 -0
  178. package/src/classes/HMSPeerListIterator.ts +60 -0
  179. package/src/classes/HMSPeerListIteratorOptions.ts +26 -0
  180. package/src/classes/HMSPeerUpdate.ts +2 -0
  181. package/src/classes/HMSPeersCache.ts +7 -0
  182. package/src/classes/HMSSDK.tsx +188 -13
  183. package/src/classes/HMSUpdateListenerActions.ts +1 -0
  184. package/src/classes/HmsView.tsx +16 -2
  185. package/src/components/HMSHLSPlayer/HMSHLSPlayer.tsx +11 -5
  186. package/src/components/HMSHLSPlayer/hooks.ts +7 -0
  187. package/src/components/HMSHLSPlayer/index.ts +1 -0
  188. package/src/hooks/hmsviews.ts +13 -0
  189. package/src/index.ts +2 -0
  190. package/src/stores/hls-player-playback-slice.ts +3 -0
  191. package/src/stores/hms-store.ts +2 -0
  192. package/src/stores/hmsviews-slice.ts +20 -0
  193. package/src/stores/types.ts +20 -1
  194. package/src/types.ts +13 -3
  195. package/android/.gradle/6.7.1/executionHistory/executionHistory.bin +0 -0
  196. package/android/.gradle/6.7.1/executionHistory/executionHistory.lock +0 -0
  197. package/android/.gradle/6.7.1/fileChanges/last-build.bin +0 -0
  198. package/android/.gradle/6.7.1/fileHashes/fileHashes.bin +0 -0
  199. package/android/.gradle/6.7.1/fileHashes/fileHashes.lock +0 -0
  200. package/android/.gradle/6.7.1/gc.properties +0 -0
  201. package/android/.gradle/6.9/executionHistory/executionHistory.bin +0 -0
  202. package/android/.gradle/6.9/executionHistory/executionHistory.lock +0 -0
  203. package/android/.gradle/6.9/fileChanges/last-build.bin +0 -0
  204. package/android/.gradle/6.9/fileHashes/fileHashes.bin +0 -0
  205. package/android/.gradle/6.9/fileHashes/fileHashes.lock +0 -0
  206. package/android/.gradle/6.9/gc.properties +0 -0
  207. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  208. package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
  209. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  210. package/android/.gradle/checksums/checksums.lock +0 -0
  211. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  212. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  213. package/android/.gradle/configuration-cache/gc.properties +0 -0
  214. package/android/.gradle/vcs-1/gc.properties +0 -0
@@ -26,6 +26,7 @@ export let HMSUpdateListenerActions = /*#__PURE__*/function (HMSUpdateListenerAc
26
26
  HMSUpdateListenerActions["ON_AUDIO_DEVICE_CHANGED"] = "ON_AUDIO_DEVICE_CHANGED";
27
27
  HMSUpdateListenerActions["ON_SESSION_STORE_AVAILABLE"] = "ON_SESSION_STORE_AVAILABLE";
28
28
  HMSUpdateListenerActions["ON_SESSION_STORE_CHANGED"] = "ON_SESSION_STORE_CHANGED";
29
+ HMSUpdateListenerActions["ON_PEER_LIST_UPDATED"] = "ON_PEER_LIST_UPDATED";
29
30
  return HMSUpdateListenerActions;
30
31
  }({});
31
32
  //# sourceMappingURL=HMSUpdateListenerActions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["HMSUpdateListenerActions"],"sources":["HMSUpdateListenerActions.ts"],"sourcesContent":["/**\n * These are the available events emitted by the `HMSSDK`\n *\n * For more info about these events, checkout Event Listener docs\n * {@link https://www.100ms.live/docs/react-native/v2/how-to-guides/listen-to-room-updates/event-listeners}\n */\nexport enum HMSUpdateListenerActions {\n ON_PREVIEW = 'ON_PREVIEW',\n ON_JOIN = 'ON_JOIN',\n ON_ROOM_UPDATE = 'ON_ROOM_UPDATE',\n ON_PEER_UPDATE = '3',\n ON_TRACK_UPDATE = 'ON_TRACK_UPDATE',\n ON_ERROR = 'ON_ERROR',\n ON_MESSAGE = 'ON_MESSAGE',\n ON_SPEAKER = 'ON_SPEAKER',\n RECONNECTING = 'RECONNECTING',\n RECONNECTED = 'RECONNECTED',\n ON_ROLE_CHANGE_REQUEST = 'ON_ROLE_CHANGE_REQUEST',\n ON_CHANGE_TRACK_STATE_REQUEST = 'ON_CHANGE_TRACK_STATE_REQUEST',\n ON_REMOVED_FROM_ROOM = 'ON_REMOVED_FROM_ROOM',\n ON_RTC_STATS = 'ON_RTC_STATS',\n ON_LOCAL_AUDIO_STATS = 'ON_LOCAL_AUDIO_STATS',\n ON_LOCAL_VIDEO_STATS = 'ON_LOCAL_VIDEO_STATS',\n ON_REMOTE_AUDIO_STATS = 'ON_REMOTE_AUDIO_STATS',\n ON_REMOTE_VIDEO_STATS = 'ON_REMOTE_VIDEO_STATS',\n ON_AUDIO_DEVICE_CHANGED = 'ON_AUDIO_DEVICE_CHANGED',\n ON_SESSION_STORE_AVAILABLE = 'ON_SESSION_STORE_AVAILABLE',\n ON_SESSION_STORE_CHANGED = 'ON_SESSION_STORE_CHANGED',\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,WAAYA,wBAAwB,0BAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAA,OAAxBA,wBAAwB;AAAA"}
1
+ {"version":3,"names":["HMSUpdateListenerActions"],"sources":["HMSUpdateListenerActions.ts"],"sourcesContent":["/**\n * These are the available events emitted by the `HMSSDK`\n *\n * For more info about these events, checkout Event Listener docs\n * {@link https://www.100ms.live/docs/react-native/v2/how-to-guides/listen-to-room-updates/event-listeners}\n */\nexport enum HMSUpdateListenerActions {\n ON_PREVIEW = 'ON_PREVIEW',\n ON_JOIN = 'ON_JOIN',\n ON_ROOM_UPDATE = 'ON_ROOM_UPDATE',\n ON_PEER_UPDATE = '3',\n ON_TRACK_UPDATE = 'ON_TRACK_UPDATE',\n ON_ERROR = 'ON_ERROR',\n ON_MESSAGE = 'ON_MESSAGE',\n ON_SPEAKER = 'ON_SPEAKER',\n RECONNECTING = 'RECONNECTING',\n RECONNECTED = 'RECONNECTED',\n ON_ROLE_CHANGE_REQUEST = 'ON_ROLE_CHANGE_REQUEST',\n ON_CHANGE_TRACK_STATE_REQUEST = 'ON_CHANGE_TRACK_STATE_REQUEST',\n ON_REMOVED_FROM_ROOM = 'ON_REMOVED_FROM_ROOM',\n ON_RTC_STATS = 'ON_RTC_STATS',\n ON_LOCAL_AUDIO_STATS = 'ON_LOCAL_AUDIO_STATS',\n ON_LOCAL_VIDEO_STATS = 'ON_LOCAL_VIDEO_STATS',\n ON_REMOTE_AUDIO_STATS = 'ON_REMOTE_AUDIO_STATS',\n ON_REMOTE_VIDEO_STATS = 'ON_REMOTE_VIDEO_STATS',\n ON_AUDIO_DEVICE_CHANGED = 'ON_AUDIO_DEVICE_CHANGED',\n ON_SESSION_STORE_AVAILABLE = 'ON_SESSION_STORE_AVAILABLE',\n ON_SESSION_STORE_CHANGED = 'ON_SESSION_STORE_CHANGED',\n ON_PEER_LIST_UPDATED = 'ON_PEER_LIST_UPDATED',\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,WAAYA,wBAAwB,0BAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAxBA,wBAAwB;EAAA,OAAxBA,wBAAwB;AAAA"}
@@ -2,6 +2,7 @@ import React, { useState, useImperativeHandle, useRef } from 'react';
2
2
  import { findNodeHandle, requireNativeComponent, StyleSheet, UIManager, Platform } from 'react-native';
3
3
  import { HMSConstants } from './HMSConstants';
4
4
  import { HMSVideoViewMode } from './HMSVideoViewMode';
5
+ import { setHmsViewsResolutionsState } from '../hooks/hmsviews';
5
6
  const HmsView = requireNativeComponent('HMSView');
6
7
  let _nextRequestId = 1;
7
8
  let _requestMap = new Map();
@@ -28,7 +29,19 @@ export const HmsViewComponent = /*#__PURE__*/React.forwardRef((props, ref) => {
28
29
  * This method is passed to `onChange` prop of `HmsView` Native Component.
29
30
  * It is invoked when `HmsView` emits 'topChange' event.
30
31
  */
31
- const onChange = () => setApplyStyles_ANDROID(true);
32
+ const onChange = _ref => {
33
+ let {
34
+ nativeEvent
35
+ } = _ref;
36
+ const {
37
+ event,
38
+ data
39
+ } = nativeEvent;
40
+ setApplyStyles_ANDROID(true);
41
+ if (event === 'ON_RESOLUTION_CHANGE_EVENT') {
42
+ setHmsViewsResolutionsState(trackId, data);
43
+ }
44
+ };
32
45
 
33
46
  /**
34
47
  * This method is passed to `onDataReturned` prop of `HmsView` Native Component.
@@ -1 +1 @@
1
- {"version":3,"names":["React","useState","useImperativeHandle","useRef","findNodeHandle","requireNativeComponent","StyleSheet","UIManager","Platform","HMSConstants","HMSVideoViewMode","HmsView","_nextRequestId","_requestMap","Map","HmsViewComponent","forwardRef","props","ref","trackId","style","styles","hmsView","id","DEFAULT_SDK_ID","mirror","setZOrderMediaOverlay","autoSimulcast","scaleType","ASPECT_FILL","hmsViewRef","applyStyles_ANDROID","setApplyStyles_ANDROID","data","onChange","_onDataReturned","event","requestId","result","error","nativeEvent","promise","get","resolve","reject","delete","capture","viewManagerConfig","getViewManagerConfig","requestMap","Promise","set","dispatchViewManagerCommand","current","Commands","createElement","OS","onDataReturned","create","flex"],"sources":["HmsView.tsx"],"sourcesContent":["import React, { useState, useImperativeHandle, useRef } from 'react';\nimport {\n findNodeHandle,\n requireNativeComponent,\n StyleSheet,\n UIManager,\n Platform,\n} from 'react-native';\nimport type { ViewStyle } from 'react-native';\nimport { HMSConstants } from './HMSConstants';\nimport { HMSVideoViewMode } from './HMSVideoViewMode';\n\ninterface HmsViewProps {\n data: {\n trackId: string;\n id: string;\n mirror: boolean;\n scaleType: HMSVideoViewMode;\n };\n autoSimulcast: boolean;\n setZOrderMediaOverlay: boolean;\n scaleType: HMSVideoViewMode;\n style: ViewStyle;\n onChange: Function;\n onDataReturned: Function;\n}\n\nconst HmsView = requireNativeComponent<HmsViewProps>('HMSView');\nlet _nextRequestId = 1;\nlet _requestMap = new Map();\n\nexport interface HmsComponentProps {\n trackId: string;\n style?: ViewStyle;\n mirror?: boolean;\n autoSimulcast?: boolean;\n scaleType?: HMSVideoViewMode;\n setZOrderMediaOverlay?: boolean;\n id: string;\n}\n\nexport const HmsViewComponent = React.forwardRef<any, HmsComponentProps>(\n (props, ref) => {\n const {\n trackId,\n style = styles.hmsView,\n id = HMSConstants.DEFAULT_SDK_ID,\n mirror = false,\n setZOrderMediaOverlay = false,\n autoSimulcast = true,\n scaleType = HMSVideoViewMode.ASPECT_FILL,\n } = props;\n\n const hmsViewRef: any = useRef();\n const [applyStyles_ANDROID, setApplyStyles_ANDROID] = useState(false);\n const data = {\n trackId,\n id,\n mirror,\n scaleType,\n };\n\n /**\n * This method is passed to `onChange` prop of `HmsView` Native Component.\n * It is invoked when `HmsView` emits 'topChange' event.\n */\n const onChange = () => setApplyStyles_ANDROID(true);\n\n /**\n * This method is passed to `onDataReturned` prop of `HmsView` Native Component.\n * It is invoked when `HmsView` emits 'captureFrame' event.\n */\n const _onDataReturned = (event: {\n nativeEvent: { requestId: any; result: any; error: any };\n }) => {\n // We grab the relevant data out of our event.\n let { requestId, result, error } = event.nativeEvent;\n // Then we get the promise we saved earlier for the given request ID.\n let promise = _requestMap.get(requestId);\n if (result) {\n // If it was successful, we resolve the promise.\n promise.resolve(result);\n } else {\n // Otherwise, we reject it.\n promise.reject(error);\n }\n // Finally, we clean up our request map.\n _requestMap.delete(requestId);\n };\n\n const capture = async () => {\n const viewManagerConfig = UIManager.getViewManagerConfig('HMSView');\n\n let requestId = _nextRequestId++;\n let requestMap = _requestMap;\n\n // We create a promise here that will be resolved once `_onRequestDone` is\n // called.\n let promise = new Promise(function (resolve, reject) {\n requestMap.set(requestId, { resolve, reject });\n });\n\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsViewRef.current),\n viewManagerConfig.Commands.capture,\n [requestId]\n );\n return promise;\n };\n\n useImperativeHandle(ref, () => {\n return {\n capture,\n };\n });\n\n return (\n <HmsView\n ref={hmsViewRef}\n onChange={onChange}\n data={data}\n style={\n Platform.OS === 'android' ? (applyStyles_ANDROID ? style : {}) : style\n }\n autoSimulcast={autoSimulcast}\n scaleType={scaleType}\n setZOrderMediaOverlay={setZOrderMediaOverlay}\n onDataReturned={_onDataReturned}\n />\n );\n }\n);\n\nconst styles = StyleSheet.create({\n hmsView: {\n flex: 1,\n },\n});\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,mBAAmB,EAAEC,MAAM,QAAQ,OAAO;AACpE,SACEC,cAAc,EACdC,sBAAsB,EACtBC,UAAU,EACVC,SAAS,EACTC,QAAQ,QACH,cAAc;AAErB,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,gBAAgB,QAAQ,oBAAoB;AAiBrD,MAAMC,OAAO,GAAGN,sBAAsB,CAAe,SAAS,CAAC;AAC/D,IAAIO,cAAc,GAAG,CAAC;AACtB,IAAIC,WAAW,GAAG,IAAIC,GAAG,CAAC,CAAC;AAY3B,OAAO,MAAMC,gBAAgB,gBAAGf,KAAK,CAACgB,UAAU,CAC9C,CAACC,KAAK,EAAEC,GAAG,KAAK;EACd,MAAM;IACJC,OAAO;IACPC,KAAK,GAAGC,MAAM,CAACC,OAAO;IACtBC,EAAE,GAAGd,YAAY,CAACe,cAAc;IAChCC,MAAM,GAAG,KAAK;IACdC,qBAAqB,GAAG,KAAK;IAC7BC,aAAa,GAAG,IAAI;IACpBC,SAAS,GAAGlB,gBAAgB,CAACmB;EAC/B,CAAC,GAAGZ,KAAK;EAET,MAAMa,UAAe,GAAG3B,MAAM,CAAC,CAAC;EAChC,MAAM,CAAC4B,mBAAmB,EAAEC,sBAAsB,CAAC,GAAG/B,QAAQ,CAAC,KAAK,CAAC;EACrE,MAAMgC,IAAI,GAAG;IACXd,OAAO;IACPI,EAAE;IACFE,MAAM;IACNG;EACF,CAAC;;EAED;AACJ;AACA;AACA;EACI,MAAMM,QAAQ,GAAGA,CAAA,KAAMF,sBAAsB,CAAC,IAAI,CAAC;;EAEnD;AACJ;AACA;AACA;EACI,MAAMG,eAAe,GAAIC,KAExB,IAAK;IACJ;IACA,IAAI;MAAEC,SAAS;MAAEC,MAAM;MAAEC;IAAM,CAAC,GAAGH,KAAK,CAACI,WAAW;IACpD;IACA,IAAIC,OAAO,GAAG5B,WAAW,CAAC6B,GAAG,CAACL,SAAS,CAAC;IACxC,IAAIC,MAAM,EAAE;MACV;MACAG,OAAO,CAACE,OAAO,CAACL,MAAM,CAAC;IACzB,CAAC,MAAM;MACL;MACAG,OAAO,CAACG,MAAM,CAACL,KAAK,CAAC;IACvB;IACA;IACA1B,WAAW,CAACgC,MAAM,CAACR,SAAS,CAAC;EAC/B,CAAC;EAED,MAAMS,OAAO,GAAG,MAAAA,CAAA,KAAY;IAC1B,MAAMC,iBAAiB,GAAGxC,SAAS,CAACyC,oBAAoB,CAAC,SAAS,CAAC;IAEnE,IAAIX,SAAS,GAAGzB,cAAc,EAAE;IAChC,IAAIqC,UAAU,GAAGpC,WAAW;;IAE5B;IACA;IACA,IAAI4B,OAAO,GAAG,IAAIS,OAAO,CAAC,UAAUP,OAAO,EAAEC,MAAM,EAAE;MACnDK,UAAU,CAACE,GAAG,CAACd,SAAS,EAAE;QAAEM,OAAO;QAAEC;MAAO,CAAC,CAAC;IAChD,CAAC,CAAC;IAEFrC,SAAS,CAAC6C,0BAA0B,CAClChD,cAAc,CAAC0B,UAAU,CAACuB,OAAO,CAAC,EAClCN,iBAAiB,CAACO,QAAQ,CAACR,OAAO,EAClC,CAACT,SAAS,CACZ,CAAC;IACD,OAAOI,OAAO;EAChB,CAAC;EAEDvC,mBAAmB,CAACgB,GAAG,EAAE,MAAM;IAC7B,OAAO;MACL4B;IACF,CAAC;EACH,CAAC,CAAC;EAEF,oBACE9C,KAAA,CAAAuD,aAAA,CAAC5C,OAAO;IACNO,GAAG,EAAEY,UAAW;IAChBI,QAAQ,EAAEA,QAAS;IACnBD,IAAI,EAAEA,IAAK;IACXb,KAAK,EACHZ,QAAQ,CAACgD,EAAE,KAAK,SAAS,GAAIzB,mBAAmB,GAAGX,KAAK,GAAG,CAAC,CAAC,GAAIA,KAClE;IACDO,aAAa,EAAEA,aAAc;IAC7BC,SAAS,EAAEA,SAAU;IACrBF,qBAAqB,EAAEA,qBAAsB;IAC7C+B,cAAc,EAAEtB;EAAgB,CACjC,CAAC;AAEN,CACF,CAAC;AAED,MAAMd,MAAM,GAAGf,UAAU,CAACoD,MAAM,CAAC;EAC/BpC,OAAO,EAAE;IACPqC,IAAI,EAAE;EACR;AACF,CAAC,CAAC"}
1
+ {"version":3,"names":["React","useState","useImperativeHandle","useRef","findNodeHandle","requireNativeComponent","StyleSheet","UIManager","Platform","HMSConstants","HMSVideoViewMode","setHmsViewsResolutionsState","HmsView","_nextRequestId","_requestMap","Map","HmsViewComponent","forwardRef","props","ref","trackId","style","styles","hmsView","id","DEFAULT_SDK_ID","mirror","setZOrderMediaOverlay","autoSimulcast","scaleType","ASPECT_FILL","hmsViewRef","applyStyles_ANDROID","setApplyStyles_ANDROID","data","onChange","_ref","nativeEvent","event","_onDataReturned","requestId","result","error","promise","get","resolve","reject","delete","capture","viewManagerConfig","getViewManagerConfig","requestMap","Promise","set","dispatchViewManagerCommand","current","Commands","createElement","OS","onDataReturned","create","flex"],"sources":["HmsView.tsx"],"sourcesContent":["import React, { useState, useImperativeHandle, useRef } from 'react';\nimport {\n findNodeHandle,\n requireNativeComponent,\n StyleSheet,\n UIManager,\n Platform,\n} from 'react-native';\nimport type { NativeSyntheticEvent, ViewStyle } from 'react-native';\nimport { HMSConstants } from './HMSConstants';\nimport { HMSVideoViewMode } from './HMSVideoViewMode';\nimport { setHmsViewsResolutionsState } from '../hooks/hmsviews';\n\ninterface HmsViewProps {\n data: {\n trackId: string;\n id: string;\n mirror: boolean;\n scaleType: HMSVideoViewMode;\n };\n autoSimulcast: boolean;\n setZOrderMediaOverlay: boolean;\n scaleType: HMSVideoViewMode;\n style: ViewStyle;\n onChange: Function;\n onDataReturned: Function;\n}\n\nconst HmsView = requireNativeComponent<HmsViewProps>('HMSView');\nlet _nextRequestId = 1;\nlet _requestMap = new Map();\n\nexport interface HmsComponentProps {\n trackId: string;\n style?: ViewStyle;\n mirror?: boolean;\n autoSimulcast?: boolean;\n scaleType?: HMSVideoViewMode;\n setZOrderMediaOverlay?: boolean;\n id: string;\n}\n\nexport const HmsViewComponent = React.forwardRef<any, HmsComponentProps>(\n (props, ref) => {\n const {\n trackId,\n style = styles.hmsView,\n id = HMSConstants.DEFAULT_SDK_ID,\n mirror = false,\n setZOrderMediaOverlay = false,\n autoSimulcast = true,\n scaleType = HMSVideoViewMode.ASPECT_FILL,\n } = props;\n\n const hmsViewRef: any = useRef();\n const [applyStyles_ANDROID, setApplyStyles_ANDROID] = useState(false);\n const data = {\n trackId,\n id,\n mirror,\n scaleType,\n };\n\n /**\n * This method is passed to `onChange` prop of `HmsView` Native Component.\n * It is invoked when `HmsView` emits 'topChange' event.\n */\n const onChange = ({\n nativeEvent,\n }: NativeSyntheticEvent<{\n data: { height: number; width: number };\n event: 'ON_RESOLUTION_CHANGE_EVENT';\n }>) => {\n const { event, data } = nativeEvent;\n\n setApplyStyles_ANDROID(true);\n\n if (event === 'ON_RESOLUTION_CHANGE_EVENT') {\n setHmsViewsResolutionsState(trackId, data);\n }\n };\n\n /**\n * This method is passed to `onDataReturned` prop of `HmsView` Native Component.\n * It is invoked when `HmsView` emits 'captureFrame' event.\n */\n const _onDataReturned = (event: {\n nativeEvent: { requestId: any; result: any; error: any };\n }) => {\n // We grab the relevant data out of our event.\n let { requestId, result, error } = event.nativeEvent;\n // Then we get the promise we saved earlier for the given request ID.\n let promise = _requestMap.get(requestId);\n if (result) {\n // If it was successful, we resolve the promise.\n promise.resolve(result);\n } else {\n // Otherwise, we reject it.\n promise.reject(error);\n }\n // Finally, we clean up our request map.\n _requestMap.delete(requestId);\n };\n\n const capture = async () => {\n const viewManagerConfig = UIManager.getViewManagerConfig('HMSView');\n\n let requestId = _nextRequestId++;\n let requestMap = _requestMap;\n\n // We create a promise here that will be resolved once `_onRequestDone` is\n // called.\n let promise = new Promise(function (resolve, reject) {\n requestMap.set(requestId, { resolve, reject });\n });\n\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsViewRef.current),\n viewManagerConfig.Commands.capture,\n [requestId]\n );\n return promise;\n };\n\n useImperativeHandle(ref, () => {\n return {\n capture,\n };\n });\n\n return (\n <HmsView\n ref={hmsViewRef}\n onChange={onChange}\n data={data}\n style={\n Platform.OS === 'android' ? (applyStyles_ANDROID ? style : {}) : style\n }\n autoSimulcast={autoSimulcast}\n scaleType={scaleType}\n setZOrderMediaOverlay={setZOrderMediaOverlay}\n onDataReturned={_onDataReturned}\n />\n );\n }\n);\n\nconst styles = StyleSheet.create({\n hmsView: {\n flex: 1,\n },\n});\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import React, { useImperativeHandle, useRef, useState } from 'react';
2
2
  import { View, StyleSheet, UIManager, findNodeHandle } from 'react-native';
3
- import { setHMSHLSPlayerCue, setHMSHLSPlayerPlaybackError, setHMSHLSPlayerPlaybackState, setHMSHLSPlayerStats, setHMSHLSPlayerStatsError } from './hooks';
3
+ import { setHMSHLSPlayerCue, setHMSHLSPlayerPlaybackError, setHMSHLSPlayerPlaybackState, setHMSHLSPlayerResolution, setHMSHLSPlayerStats, setHMSHLSPlayerStatsError } from './hooks';
4
4
  import { RCTHMSHLSPlayer, RCTHMSHLSPlayerViewManagerConfig } from './RCTHMSHLSPlayer';
5
5
  import { HMSHLSPlayerPlaybackEventTypes, HMSHLSPlayerStatsEventTypes } from '../../types';
6
6
  import { HMSEncoder } from '../../classes/HMSEncoder';
@@ -80,13 +80,16 @@ const _HMSHLSPlayer = (_ref, ref) => {
80
80
  setHMSHLSPlayerCue(transformedData);
81
81
  } else if (event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_FAILURE_EVENT) {
82
82
  setHMSHLSPlayerPlaybackError(data.error);
83
+ } else if (event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_RESOLUTION_CHANGE_EVENT) {
84
+ setHMSHLSPlayerResolution({
85
+ ...data
86
+ });
87
+ const aspectRatio = data.width / data.height;
88
+ if (typeof aspectRatio === 'number' && !isNaN(aspectRatio)) {
89
+ setAspectRatio(aspectRatio);
90
+ }
83
91
  } else {
84
92
  setHMSHLSPlayerPlaybackState(data.state);
85
- if (data.state === 'onVideoSizeChanged') {
86
- if (typeof data.aspectRatio === 'number') {
87
- setAspectRatio(data.aspectRatio);
88
- }
89
- }
90
93
  }
91
94
  };
92
95
 
@@ -1 +1 @@
1
- {"version":3,"names":["React","useImperativeHandle","useRef","useState","View","StyleSheet","UIManager","findNodeHandle","setHMSHLSPlayerCue","setHMSHLSPlayerPlaybackError","setHMSHLSPlayerPlaybackState","setHMSHLSPlayerStats","setHMSHLSPlayerStatsError","RCTHMSHLSPlayer","RCTHMSHLSPlayerViewManagerConfig","HMSHLSPlayerPlaybackEventTypes","HMSHLSPlayerStatsEventTypes","HMSEncoder","_HMSHLSPlayer","_ref","ref","url","style","containerStyle","enableStats","enableControls","hmsHlsPlayerRef","aspectRatio","setAspectRatio","play","current","Commands","dispatchViewManagerCommand","stop","undefined","pause","resume","seekForward","seconds","Error","seekBackward","seekToLivePosition","setVolume","level","handleHLSPlaybackEvent","_ref2","nativeEvent","event","data","ON_PLAYBACK_CUE_EVENT","transformedData","transformHMSHLSCueEventData","ON_PLAYBACK_FAILURE_EVENT","error","state","handleHLSStatsEvent","_ref3","ON_STATS_EVENT_ERROR","createElement","styles","container","playerWrapper","player","flex","onHmsHlsPlaybackEvent","onHmsHlsStatsEvent","HMSHLSPlayer","forwardRef","create","alignItems","justifyContent","backgroundColor","width"],"sources":["HMSHLSPlayer.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef, useState } from 'react';\nimport { View, StyleSheet, UIManager, findNodeHandle } from 'react-native';\nimport type { StyleProp, ViewStyle } from 'react-native';\n\nimport {\n setHMSHLSPlayerCue,\n setHMSHLSPlayerPlaybackError,\n setHMSHLSPlayerPlaybackState,\n setHMSHLSPlayerStats,\n setHMSHLSPlayerStatsError,\n} from './hooks';\nimport {\n RCTHMSHLSPlayer,\n RCTHMSHLSPlayerViewManagerConfig,\n} from './RCTHMSHLSPlayer';\nimport type {\n HmsHlsPlaybackEventHandler,\n HmsHlsStatsEventHandler,\n RCTHMSHLSPlayerRef,\n} from './RCTHMSHLSPlayer';\nimport {\n HMSHLSPlayerPlaybackEventTypes,\n HMSHLSPlayerStatsEventTypes,\n} from '../../types';\nimport type { HMSHLSPlayerPlaybackCueEventData } from '../../types';\nimport { HMSEncoder } from '../../classes/HMSEncoder';\nimport type { HMSHLSPlayerPlaybackCue } from '../../stores/types';\n\nexport interface HMSHLSPlayerProps {\n url?: string;\n style?: StyleProp<ViewStyle>;\n containerStyle?: StyleProp<ViewStyle>;\n aspectRatio?: number;\n enableStats?: boolean;\n enableControls?: boolean;\n}\n\nexport interface HMSHLSPlayerRefProperties {\n play: (url?: string) => void;\n stop: () => void;\n pause: () => void;\n resume: () => void;\n seekForward: (seconds: number) => void;\n seekBackward: (seconds: number) => void;\n seekToLivePosition: () => void;\n setVolume: (level: number) => void;\n}\n\nconst _HMSHLSPlayer: React.ForwardRefRenderFunction<\n HMSHLSPlayerRefProperties,\n HMSHLSPlayerProps\n> = (\n { url = '', style, containerStyle, enableStats, enableControls = false },\n ref\n) => {\n const hmsHlsPlayerRef = useRef<RCTHMSHLSPlayerRef | null>(null);\n\n const [aspectRatio, setAspectRatio] = useState(16 / 9);\n\n useImperativeHandle(\n ref,\n () => ({\n play: (url?: string) => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.play\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.play,\n url ? [url] : ['']\n );\n }\n },\n stop: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop,\n undefined\n );\n }\n },\n pause: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause,\n undefined\n );\n }\n },\n resume: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.resume\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.resume,\n undefined\n );\n }\n },\n seekForward: (seconds: number) => {\n if (typeof seconds !== 'number') {\n throw new Error(\n seconds\n ? 'seconds must be a `number` type'\n : 'seconds was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward,\n [seconds]\n );\n }\n },\n seekBackward: (seconds: number) => {\n if (typeof seconds !== 'number') {\n throw new Error(\n seconds\n ? 'seconds must be a `number` type'\n : 'seconds was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward,\n [seconds]\n );\n }\n },\n seekToLivePosition: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition,\n undefined\n );\n }\n },\n setVolume: (level: number) => {\n if (typeof level !== 'number') {\n throw new Error(\n level ? 'level must be a `number` type' : 'level was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume,\n [level]\n );\n }\n },\n }),\n []\n );\n\n // Handle HLS Playback events\n const handleHLSPlaybackEvent: HmsHlsPlaybackEventHandler = ({\n nativeEvent,\n }) => {\n const { event, data } = nativeEvent;\n\n if (event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_CUE_EVENT) {\n const transformedData = HMSEncoder.transformHMSHLSCueEventData<\n HMSHLSPlayerPlaybackCueEventData,\n HMSHLSPlayerPlaybackCue\n >(data);\n setHMSHLSPlayerCue(transformedData);\n } else if (\n event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_FAILURE_EVENT\n ) {\n setHMSHLSPlayerPlaybackError(data.error);\n } else {\n setHMSHLSPlayerPlaybackState(data.state);\n if (data.state === 'onVideoSizeChanged') {\n if (typeof data.aspectRatio === 'number') {\n setAspectRatio(data.aspectRatio);\n }\n }\n }\n };\n\n // Handle HLS Stats events\n const handleHLSStatsEvent: HmsHlsStatsEventHandler = ({ nativeEvent }) => {\n const { event, data } = nativeEvent;\n\n if (event === HMSHLSPlayerStatsEventTypes.ON_STATS_EVENT_ERROR) {\n setHMSHLSPlayerStatsError(data);\n } else {\n setHMSHLSPlayerStats(data);\n }\n };\n\n return (\n <View style={[styles.container, containerStyle]}>\n <View style={[styles.playerWrapper, style]}>\n <RCTHMSHLSPlayer\n ref={hmsHlsPlayerRef}\n url={url}\n style={[\n styles.player,\n { aspectRatio: aspectRatio, flex: aspectRatio < 1 ? 1 : undefined },\n ]}\n enableStats={enableStats}\n enableControls={enableControls}\n onHmsHlsPlaybackEvent={handleHLSPlaybackEvent}\n onHmsHlsStatsEvent={handleHLSStatsEvent}\n />\n </View>\n </View>\n );\n};\n\nexport const HMSHLSPlayer = React.forwardRef<\n HMSHLSPlayerRefProperties,\n HMSHLSPlayerProps\n>(_HMSHLSPlayer);\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n playerWrapper: {\n backgroundColor: '#000000',\n alignItems: 'center',\n justifyContent: 'center',\n },\n player: {\n width: '100%',\n aspectRatio: 16 / 9,\n flex: 1,\n },\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","useImperativeHandle","useRef","useState","View","StyleSheet","UIManager","findNodeHandle","setHMSHLSPlayerCue","setHMSHLSPlayerPlaybackError","setHMSHLSPlayerPlaybackState","setHMSHLSPlayerResolution","setHMSHLSPlayerStats","setHMSHLSPlayerStatsError","RCTHMSHLSPlayer","RCTHMSHLSPlayerViewManagerConfig","HMSHLSPlayerPlaybackEventTypes","HMSHLSPlayerStatsEventTypes","HMSEncoder","_HMSHLSPlayer","_ref","ref","url","style","containerStyle","enableStats","enableControls","hmsHlsPlayerRef","aspectRatio","setAspectRatio","play","current","Commands","dispatchViewManagerCommand","stop","undefined","pause","resume","seekForward","seconds","Error","seekBackward","seekToLivePosition","setVolume","level","handleHLSPlaybackEvent","_ref2","nativeEvent","event","data","ON_PLAYBACK_CUE_EVENT","transformedData","transformHMSHLSCueEventData","ON_PLAYBACK_FAILURE_EVENT","error","ON_PLAYBACK_RESOLUTION_CHANGE_EVENT","width","height","isNaN","state","handleHLSStatsEvent","_ref3","ON_STATS_EVENT_ERROR","createElement","styles","container","playerWrapper","player","flex","onHmsHlsPlaybackEvent","onHmsHlsStatsEvent","HMSHLSPlayer","forwardRef","create","alignItems","justifyContent","backgroundColor"],"sources":["HMSHLSPlayer.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef, useState } from 'react';\nimport { View, StyleSheet, UIManager, findNodeHandle } from 'react-native';\nimport type { StyleProp, ViewStyle } from 'react-native';\n\nimport {\n setHMSHLSPlayerCue,\n setHMSHLSPlayerPlaybackError,\n setHMSHLSPlayerPlaybackState,\n setHMSHLSPlayerResolution,\n setHMSHLSPlayerStats,\n setHMSHLSPlayerStatsError,\n} from './hooks';\nimport {\n RCTHMSHLSPlayer,\n RCTHMSHLSPlayerViewManagerConfig,\n} from './RCTHMSHLSPlayer';\nimport type {\n HmsHlsPlaybackEventHandler,\n HmsHlsStatsEventHandler,\n RCTHMSHLSPlayerRef,\n} from './RCTHMSHLSPlayer';\nimport {\n HMSHLSPlayerPlaybackEventTypes,\n HMSHLSPlayerStatsEventTypes,\n} from '../../types';\nimport type { HMSHLSPlayerPlaybackCueEventData } from '../../types';\nimport { HMSEncoder } from '../../classes/HMSEncoder';\nimport type { HMSHLSPlayerPlaybackCue } from '../../stores/types';\n\nexport interface HMSHLSPlayerProps {\n url?: string;\n style?: StyleProp<ViewStyle>;\n containerStyle?: StyleProp<ViewStyle>;\n aspectRatio?: number;\n enableStats?: boolean;\n enableControls?: boolean;\n}\n\nexport interface HMSHLSPlayerRefProperties {\n play: (url?: string) => void;\n stop: () => void;\n pause: () => void;\n resume: () => void;\n seekForward: (seconds: number) => void;\n seekBackward: (seconds: number) => void;\n seekToLivePosition: () => void;\n setVolume: (level: number) => void;\n}\n\nconst _HMSHLSPlayer: React.ForwardRefRenderFunction<\n HMSHLSPlayerRefProperties,\n HMSHLSPlayerProps\n> = (\n { url = '', style, containerStyle, enableStats, enableControls = false },\n ref\n) => {\n const hmsHlsPlayerRef = useRef<RCTHMSHLSPlayerRef | null>(null);\n\n const [aspectRatio, setAspectRatio] = useState(16 / 9);\n\n useImperativeHandle(\n ref,\n () => ({\n play: (url?: string) => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.play\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.play,\n url ? [url] : ['']\n );\n }\n },\n stop: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop,\n undefined\n );\n }\n },\n pause: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause,\n undefined\n );\n }\n },\n resume: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.resume\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.resume,\n undefined\n );\n }\n },\n seekForward: (seconds: number) => {\n if (typeof seconds !== 'number') {\n throw new Error(\n seconds\n ? 'seconds must be a `number` type'\n : 'seconds was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward,\n [seconds]\n );\n }\n },\n seekBackward: (seconds: number) => {\n if (typeof seconds !== 'number') {\n throw new Error(\n seconds\n ? 'seconds must be a `number` type'\n : 'seconds was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward,\n [seconds]\n );\n }\n },\n seekToLivePosition: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition,\n undefined\n );\n }\n },\n setVolume: (level: number) => {\n if (typeof level !== 'number') {\n throw new Error(\n level ? 'level must be a `number` type' : 'level was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume,\n [level]\n );\n }\n },\n }),\n []\n );\n\n // Handle HLS Playback events\n const handleHLSPlaybackEvent: HmsHlsPlaybackEventHandler = ({\n nativeEvent,\n }) => {\n const { event, data } = nativeEvent;\n\n if (event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_CUE_EVENT) {\n const transformedData = HMSEncoder.transformHMSHLSCueEventData<\n HMSHLSPlayerPlaybackCueEventData,\n HMSHLSPlayerPlaybackCue\n >(data);\n setHMSHLSPlayerCue(transformedData);\n } else if (\n event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_FAILURE_EVENT\n ) {\n setHMSHLSPlayerPlaybackError(data.error);\n } else if (\n event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_RESOLUTION_CHANGE_EVENT\n ) {\n setHMSHLSPlayerResolution({...data});\n\n const aspectRatio = data.width / data.height;\n\n if (typeof aspectRatio === 'number' && !isNaN(aspectRatio)) {\n setAspectRatio(aspectRatio);\n }\n } else {\n setHMSHLSPlayerPlaybackState(data.state);\n }\n };\n\n // Handle HLS Stats events\n const handleHLSStatsEvent: HmsHlsStatsEventHandler = ({ nativeEvent }) => {\n const { event, data } = nativeEvent;\n\n if (event === HMSHLSPlayerStatsEventTypes.ON_STATS_EVENT_ERROR) {\n setHMSHLSPlayerStatsError(data);\n } else {\n setHMSHLSPlayerStats(data);\n }\n };\n\n return (\n <View style={[styles.container, containerStyle]}>\n <View style={[styles.playerWrapper, style]}>\n <RCTHMSHLSPlayer\n ref={hmsHlsPlayerRef}\n url={url}\n style={[\n styles.player,\n { aspectRatio: aspectRatio, flex: aspectRatio < 1 ? 1 : undefined },\n ]}\n enableStats={enableStats}\n enableControls={enableControls}\n onHmsHlsPlaybackEvent={handleHLSPlaybackEvent}\n onHmsHlsStatsEvent={handleHLSStatsEvent}\n />\n </View>\n </View>\n );\n};\n\nexport const HMSHLSPlayer = React.forwardRef<\n HMSHLSPlayerRefProperties,\n HMSHLSPlayerProps\n>(_HMSHLSPlayer);\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n playerWrapper: {\n backgroundColor: '#000000',\n alignItems: 'center',\n justifyContent: 'center',\n },\n player: {\n width: '100%',\n aspectRatio: 16 / 9,\n flex: 1,\n },\n});\n"],"mappings":"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"}
@@ -7,6 +7,9 @@ import { useHMSStore } from '../../stores/hms-store';
7
7
  export const useHMSHLSPlayerPlaybackState = () => {
8
8
  return useHMSStore(state => state.playbackState);
9
9
  };
10
+ export const useHMSHLSPlayerResolution = () => {
11
+ return useHMSStore(state => state.resolution);
12
+ };
10
13
  export const useHMSHLSPlayerStats = () => {
11
14
  return useHMSHLSPlayerStatsStore(state => ({
12
15
  stats: state.stats,
@@ -49,6 +52,7 @@ export const useHMSHLSPlayerCue = (callback, deps) => {
49
52
  // state setters
50
53
 
51
54
  export const setHMSHLSPlayerPlaybackState = useHMSStore.getState().setPlaybackState;
55
+ export const setHMSHLSPlayerResolution = useHMSStore.getState().setResolution;
52
56
  export const setHMSHLSPlayerCue = useHMSStore.getState().setCue;
53
57
  export const setHMSHLSPlayerPlaybackError = useHMSStore.getState().setPlaybackError;
54
58
  export const setHMSHLSPlayerStats = useHMSHLSPlayerStatsStore.getState().changeStats;
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","shallow","useHMSHLSPlayerStatsStore","useHMSStore","useHMSHLSPlayerPlaybackState","state","playbackState","useHMSHLSPlayerStats","stats","error","useHMSHLSPlayerStat","stat","useHMSHLSPlayerStatsError","callback","deps","subscribe","data","useHMSHLSPlayerPlaybackError","useHMSHLSPlayerCue","cue","setHMSHLSPlayerPlaybackState","getState","setPlaybackState","setHMSHLSPlayerCue","setCue","setHMSHLSPlayerPlaybackError","setPlaybackError","setHMSHLSPlayerStats","changeStats","setHMSHLSPlayerStatsError","setError"],"sources":["hooks.ts"],"sourcesContent":["import { useEffect } from 'react';\nimport type { DependencyList } from 'react';\nimport { shallow } from 'zustand/shallow';\n\nimport { useHMSHLSPlayerStatsStore } from '../../stores/hls-player-stats-store';\nimport { useHMSStore } from '../../stores/hms-store';\nimport type { HMSHLSPlayerStatsUpdateEventData } from '../../types';\nimport type {\n HMSHLSPlayerCue,\n HMSHLSPlayerPlaybackError,\n HMSHLSPlayerStatsError,\n} from '../../stores/types';\n\n// use latest state (with component rerender)\n\nexport const useHMSHLSPlayerPlaybackState = () => {\n return useHMSStore((state) => state.playbackState);\n};\n\nexport const useHMSHLSPlayerStats = () => {\n return useHMSHLSPlayerStatsStore(\n (state) => ({\n stats: state.stats,\n error: state.error,\n }),\n shallow\n );\n};\n\nexport const useHMSHLSPlayerStat = <\n T extends keyof HMSHLSPlayerStatsUpdateEventData,\n>(\n stat: T\n) => {\n return useHMSHLSPlayerStatsStore((state) => state.stats[stat]);\n};\n\n// // The distance of current playback position from the live edge of HLS stream\n// export const useIsHLSStreamLive = (liveOffsetMillis: number = 1000) => {\n// return useHMSHLSPlayerStatsStore((state) => state.stats.distanceFromLive < liveOffsetMillis);\n// }\n\n// get latest state (without component rerender)\n\nexport const useHMSHLSPlayerStatsError = (\n callback: (error: NonNullable<HMSHLSPlayerStatsError>) => void,\n deps: DependencyList\n) => {\n useEffect(() => {\n return useHMSHLSPlayerStatsStore.subscribe(\n (state) => state.error,\n (data) => {\n if (data) callback(data);\n }\n );\n }, deps);\n};\n\nexport const useHMSHLSPlayerPlaybackError = (\n callback: (error: NonNullable<HMSHLSPlayerPlaybackError>) => void,\n deps: DependencyList\n) => {\n useEffect(() => {\n return useHMSStore.subscribe(\n (state) => state.error,\n (data) => {\n if (data) callback(data);\n }\n );\n }, deps);\n};\n\nexport const useHMSHLSPlayerCue = (\n callback: (error: NonNullable<HMSHLSPlayerCue>) => void,\n deps: DependencyList\n) => {\n useEffect(() => {\n return useHMSStore.subscribe(\n (state) => state.cue,\n (data) => {\n if (data) callback(data);\n }\n );\n }, deps);\n};\n\n// state setters\n\nexport const setHMSHLSPlayerPlaybackState =\n useHMSStore.getState().setPlaybackState;\n\nexport const setHMSHLSPlayerCue = useHMSStore.getState().setCue;\n\nexport const setHMSHLSPlayerPlaybackError =\n useHMSStore.getState().setPlaybackError;\n\nexport const setHMSHLSPlayerStats =\n useHMSHLSPlayerStatsStore.getState().changeStats;\n\nexport const setHMSHLSPlayerStatsError =\n useHMSHLSPlayerStatsStore.getState().setError;\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,OAAO;AAEjC,SAASC,OAAO,QAAQ,iBAAiB;AAEzC,SAASC,yBAAyB,QAAQ,qCAAqC;AAC/E,SAASC,WAAW,QAAQ,wBAAwB;AAQpD;;AAEA,OAAO,MAAMC,4BAA4B,GAAGA,CAAA,KAAM;EAChD,OAAOD,WAAW,CAAEE,KAAK,IAAKA,KAAK,CAACC,aAAa,CAAC;AACpD,CAAC;AAED,OAAO,MAAMC,oBAAoB,GAAGA,CAAA,KAAM;EACxC,OAAOL,yBAAyB,CAC7BG,KAAK,KAAM;IACVG,KAAK,EAAEH,KAAK,CAACG,KAAK;IAClBC,KAAK,EAAEJ,KAAK,CAACI;EACf,CAAC,CAAC,EACFR,OACF,CAAC;AACH,CAAC;AAED,OAAO,MAAMS,mBAAmB,GAG9BC,IAAO,IACJ;EACH,OAAOT,yBAAyB,CAAEG,KAAK,IAAKA,KAAK,CAACG,KAAK,CAACG,IAAI,CAAC,CAAC;AAChE,CAAC;;AAED;AACA;AACA;AACA;;AAEA;;AAEA,OAAO,MAAMC,yBAAyB,GAAGA,CACvCC,QAA8D,EAC9DC,IAAoB,KACjB;EACHd,SAAS,CAAC,MAAM;IACd,OAAOE,yBAAyB,CAACa,SAAS,CACvCV,KAAK,IAAKA,KAAK,CAACI,KAAK,EACrBO,IAAI,IAAK;MACR,IAAIA,IAAI,EAAEH,QAAQ,CAACG,IAAI,CAAC;IAC1B,CACF,CAAC;EACH,CAAC,EAAEF,IAAI,CAAC;AACV,CAAC;AAED,OAAO,MAAMG,4BAA4B,GAAGA,CAC1CJ,QAAiE,EACjEC,IAAoB,KACjB;EACHd,SAAS,CAAC,MAAM;IACd,OAAOG,WAAW,CAACY,SAAS,CACzBV,KAAK,IAAKA,KAAK,CAACI,KAAK,EACrBO,IAAI,IAAK;MACR,IAAIA,IAAI,EAAEH,QAAQ,CAACG,IAAI,CAAC;IAC1B,CACF,CAAC;EACH,CAAC,EAAEF,IAAI,CAAC;AACV,CAAC;AAED,OAAO,MAAMI,kBAAkB,GAAGA,CAChCL,QAAuD,EACvDC,IAAoB,KACjB;EACHd,SAAS,CAAC,MAAM;IACd,OAAOG,WAAW,CAACY,SAAS,CACzBV,KAAK,IAAKA,KAAK,CAACc,GAAG,EACnBH,IAAI,IAAK;MACR,IAAIA,IAAI,EAAEH,QAAQ,CAACG,IAAI,CAAC;IAC1B,CACF,CAAC;EACH,CAAC,EAAEF,IAAI,CAAC;AACV,CAAC;;AAED;;AAEA,OAAO,MAAMM,4BAA4B,GACvCjB,WAAW,CAACkB,QAAQ,CAAC,CAAC,CAACC,gBAAgB;AAEzC,OAAO,MAAMC,kBAAkB,GAAGpB,WAAW,CAACkB,QAAQ,CAAC,CAAC,CAACG,MAAM;AAE/D,OAAO,MAAMC,4BAA4B,GACvCtB,WAAW,CAACkB,QAAQ,CAAC,CAAC,CAACK,gBAAgB;AAEzC,OAAO,MAAMC,oBAAoB,GAC/BzB,yBAAyB,CAACmB,QAAQ,CAAC,CAAC,CAACO,WAAW;AAElD,OAAO,MAAMC,yBAAyB,GACpC3B,yBAAyB,CAACmB,QAAQ,CAAC,CAAC,CAACS,QAAQ"}
1
+ {"version":3,"names":["useEffect","shallow","useHMSHLSPlayerStatsStore","useHMSStore","useHMSHLSPlayerPlaybackState","state","playbackState","useHMSHLSPlayerResolution","resolution","useHMSHLSPlayerStats","stats","error","useHMSHLSPlayerStat","stat","useHMSHLSPlayerStatsError","callback","deps","subscribe","data","useHMSHLSPlayerPlaybackError","useHMSHLSPlayerCue","cue","setHMSHLSPlayerPlaybackState","getState","setPlaybackState","setHMSHLSPlayerResolution","setResolution","setHMSHLSPlayerCue","setCue","setHMSHLSPlayerPlaybackError","setPlaybackError","setHMSHLSPlayerStats","changeStats","setHMSHLSPlayerStatsError","setError"],"sources":["hooks.ts"],"sourcesContent":["import { useEffect } from 'react';\nimport type { DependencyList } from 'react';\nimport { shallow } from 'zustand/shallow';\n\nimport { useHMSHLSPlayerStatsStore } from '../../stores/hls-player-stats-store';\nimport { useHMSStore } from '../../stores/hms-store';\nimport type { HMSHLSPlayerStatsUpdateEventData } from '../../types';\nimport type {\n HMSHLSPlayerCue,\n HMSHLSPlayerPlaybackError,\n HMSHLSPlayerStatsError,\n} from '../../stores/types';\n\n// use latest state (with component rerender)\n\nexport const useHMSHLSPlayerPlaybackState = () => {\n return useHMSStore((state) => state.playbackState);\n};\n\nexport const useHMSHLSPlayerResolution = () => {\n return useHMSStore((state) => state.resolution);\n};\n\nexport const useHMSHLSPlayerStats = () => {\n return useHMSHLSPlayerStatsStore(\n (state) => ({\n stats: state.stats,\n error: state.error,\n }),\n shallow\n );\n};\n\nexport const useHMSHLSPlayerStat = <\n T extends keyof HMSHLSPlayerStatsUpdateEventData,\n>(\n stat: T\n) => {\n return useHMSHLSPlayerStatsStore((state) => state.stats[stat]);\n};\n\n// // The distance of current playback position from the live edge of HLS stream\n// export const useIsHLSStreamLive = (liveOffsetMillis: number = 1000) => {\n// return useHMSHLSPlayerStatsStore((state) => state.stats.distanceFromLive < liveOffsetMillis);\n// }\n\n// get latest state (without component rerender)\n\nexport const useHMSHLSPlayerStatsError = (\n callback: (error: NonNullable<HMSHLSPlayerStatsError>) => void,\n deps: DependencyList\n) => {\n useEffect(() => {\n return useHMSHLSPlayerStatsStore.subscribe(\n (state) => state.error,\n (data) => {\n if (data) callback(data);\n }\n );\n }, deps);\n};\n\nexport const useHMSHLSPlayerPlaybackError = (\n callback: (error: NonNullable<HMSHLSPlayerPlaybackError>) => void,\n deps: DependencyList\n) => {\n useEffect(() => {\n return useHMSStore.subscribe(\n (state) => state.error,\n (data) => {\n if (data) callback(data);\n }\n );\n }, deps);\n};\n\nexport const useHMSHLSPlayerCue = (\n callback: (error: NonNullable<HMSHLSPlayerCue>) => void,\n deps: DependencyList\n) => {\n useEffect(() => {\n return useHMSStore.subscribe(\n (state) => state.cue,\n (data) => {\n if (data) callback(data);\n }\n );\n }, deps);\n};\n\n// state setters\n\nexport const setHMSHLSPlayerPlaybackState =\n useHMSStore.getState().setPlaybackState;\n\nexport const setHMSHLSPlayerResolution =\n useHMSStore.getState().setResolution;\n\nexport const setHMSHLSPlayerCue = useHMSStore.getState().setCue;\n\nexport const setHMSHLSPlayerPlaybackError =\n useHMSStore.getState().setPlaybackError;\n\nexport const setHMSHLSPlayerStats =\n useHMSHLSPlayerStatsStore.getState().changeStats;\n\nexport const setHMSHLSPlayerStatsError =\n useHMSHLSPlayerStatsStore.getState().setError;\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,OAAO;AAEjC,SAASC,OAAO,QAAQ,iBAAiB;AAEzC,SAASC,yBAAyB,QAAQ,qCAAqC;AAC/E,SAASC,WAAW,QAAQ,wBAAwB;AAQpD;;AAEA,OAAO,MAAMC,4BAA4B,GAAGA,CAAA,KAAM;EAChD,OAAOD,WAAW,CAAEE,KAAK,IAAKA,KAAK,CAACC,aAAa,CAAC;AACpD,CAAC;AAED,OAAO,MAAMC,yBAAyB,GAAGA,CAAA,KAAM;EAC7C,OAAOJ,WAAW,CAAEE,KAAK,IAAKA,KAAK,CAACG,UAAU,CAAC;AACjD,CAAC;AAED,OAAO,MAAMC,oBAAoB,GAAGA,CAAA,KAAM;EACxC,OAAOP,yBAAyB,CAC7BG,KAAK,KAAM;IACVK,KAAK,EAAEL,KAAK,CAACK,KAAK;IAClBC,KAAK,EAAEN,KAAK,CAACM;EACf,CAAC,CAAC,EACFV,OACF,CAAC;AACH,CAAC;AAED,OAAO,MAAMW,mBAAmB,GAG9BC,IAAO,IACJ;EACH,OAAOX,yBAAyB,CAAEG,KAAK,IAAKA,KAAK,CAACK,KAAK,CAACG,IAAI,CAAC,CAAC;AAChE,CAAC;;AAED;AACA;AACA;AACA;;AAEA;;AAEA,OAAO,MAAMC,yBAAyB,GAAGA,CACvCC,QAA8D,EAC9DC,IAAoB,KACjB;EACHhB,SAAS,CAAC,MAAM;IACd,OAAOE,yBAAyB,CAACe,SAAS,CACvCZ,KAAK,IAAKA,KAAK,CAACM,KAAK,EACrBO,IAAI,IAAK;MACR,IAAIA,IAAI,EAAEH,QAAQ,CAACG,IAAI,CAAC;IAC1B,CACF,CAAC;EACH,CAAC,EAAEF,IAAI,CAAC;AACV,CAAC;AAED,OAAO,MAAMG,4BAA4B,GAAGA,CAC1CJ,QAAiE,EACjEC,IAAoB,KACjB;EACHhB,SAAS,CAAC,MAAM;IACd,OAAOG,WAAW,CAACc,SAAS,CACzBZ,KAAK,IAAKA,KAAK,CAACM,KAAK,EACrBO,IAAI,IAAK;MACR,IAAIA,IAAI,EAAEH,QAAQ,CAACG,IAAI,CAAC;IAC1B,CACF,CAAC;EACH,CAAC,EAAEF,IAAI,CAAC;AACV,CAAC;AAED,OAAO,MAAMI,kBAAkB,GAAGA,CAChCL,QAAuD,EACvDC,IAAoB,KACjB;EACHhB,SAAS,CAAC,MAAM;IACd,OAAOG,WAAW,CAACc,SAAS,CACzBZ,KAAK,IAAKA,KAAK,CAACgB,GAAG,EACnBH,IAAI,IAAK;MACR,IAAIA,IAAI,EAAEH,QAAQ,CAACG,IAAI,CAAC;IAC1B,CACF,CAAC;EACH,CAAC,EAAEF,IAAI,CAAC;AACV,CAAC;;AAED;;AAEA,OAAO,MAAMM,4BAA4B,GACvCnB,WAAW,CAACoB,QAAQ,CAAC,CAAC,CAACC,gBAAgB;AAEzC,OAAO,MAAMC,yBAAyB,GACpCtB,WAAW,CAACoB,QAAQ,CAAC,CAAC,CAACG,aAAa;AAEtC,OAAO,MAAMC,kBAAkB,GAAGxB,WAAW,CAACoB,QAAQ,CAAC,CAAC,CAACK,MAAM;AAE/D,OAAO,MAAMC,4BAA4B,GACvC1B,WAAW,CAACoB,QAAQ,CAAC,CAAC,CAACO,gBAAgB;AAEzC,OAAO,MAAMC,oBAAoB,GAC/B7B,yBAAyB,CAACqB,QAAQ,CAAC,CAAC,CAACS,WAAW;AAElD,OAAO,MAAMC,yBAAyB,GACpC/B,yBAAyB,CAACqB,QAAQ,CAAC,CAAC,CAACW,QAAQ"}
@@ -1,3 +1,3 @@
1
1
  export * from './HMSHLSPlayer';
2
- export { useHMSHLSPlayerPlaybackState, useHMSHLSPlayerCue, useHMSHLSPlayerPlaybackError, useHMSHLSPlayerStats, useHMSHLSPlayerStat, useHMSHLSPlayerStatsError } from './hooks';
2
+ export { useHMSHLSPlayerPlaybackState, useHMSHLSPlayerCue, useHMSHLSPlayerPlaybackError, useHMSHLSPlayerStats, useHMSHLSPlayerStat, useHMSHLSPlayerStatsError, useHMSHLSPlayerResolution } from './hooks';
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useHMSHLSPlayerPlaybackState","useHMSHLSPlayerCue","useHMSHLSPlayerPlaybackError","useHMSHLSPlayerStats","useHMSHLSPlayerStat","useHMSHLSPlayerStatsError"],"sources":["index.ts"],"sourcesContent":["export * from './HMSHLSPlayer';\nexport {\n useHMSHLSPlayerPlaybackState,\n useHMSHLSPlayerCue,\n useHMSHLSPlayerPlaybackError,\n useHMSHLSPlayerStats,\n useHMSHLSPlayerStat,\n useHMSHLSPlayerStatsError,\n} from './hooks';\n"],"mappings":"AAAA,cAAc,gBAAgB;AAC9B,SACEA,4BAA4B,EAC5BC,kBAAkB,EAClBC,4BAA4B,EAC5BC,oBAAoB,EACpBC,mBAAmB,EACnBC,yBAAyB,QACpB,SAAS"}
1
+ {"version":3,"names":["useHMSHLSPlayerPlaybackState","useHMSHLSPlayerCue","useHMSHLSPlayerPlaybackError","useHMSHLSPlayerStats","useHMSHLSPlayerStat","useHMSHLSPlayerStatsError","useHMSHLSPlayerResolution"],"sources":["index.ts"],"sourcesContent":["export * from './HMSHLSPlayer';\nexport {\n useHMSHLSPlayerPlaybackState,\n useHMSHLSPlayerCue,\n useHMSHLSPlayerPlaybackError,\n useHMSHLSPlayerStats,\n useHMSHLSPlayerStat,\n useHMSHLSPlayerStatsError,\n useHMSHLSPlayerResolution,\n} from './hooks';\n"],"mappings":"AAAA,cAAc,gBAAgB;AAC9B,SACEA,4BAA4B,EAC5BC,kBAAkB,EAClBC,4BAA4B,EAC5BC,oBAAoB,EACpBC,mBAAmB,EACnBC,yBAAyB,EACzBC,yBAAyB,QACpB,SAAS"}
@@ -0,0 +1,12 @@
1
+ import { useHMSStore } from '../stores/hms-store';
2
+
3
+ // use latest state (with component rerender)
4
+
5
+ export const useHmsViewsResolutionsState = trackId => {
6
+ return useHMSStore(state => trackId ? state.hmsviewsResolutions[trackId] : undefined);
7
+ };
8
+
9
+ // state setters
10
+
11
+ export const setHmsViewsResolutionsState = useHMSStore.getState().setHmsviewsResolutions;
12
+ //# sourceMappingURL=hmsviews.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useHMSStore","useHmsViewsResolutionsState","trackId","state","hmsviewsResolutions","undefined","setHmsViewsResolutionsState","getState","setHmsviewsResolutions"],"sources":["hmsviews.ts"],"sourcesContent":["import type { TrackId } from '../stores/types';\nimport { useHMSStore } from '../stores/hms-store';\n\n// use latest state (with component rerender)\n\nexport const useHmsViewsResolutionsState = (trackId?: TrackId) => {\n return useHMSStore((state) => trackId ? state.hmsviewsResolutions[trackId] : undefined);\n};\n\n// state setters\n\nexport const setHmsViewsResolutionsState =\n useHMSStore.getState().setHmsviewsResolutions;\n"],"mappings":"AACA,SAASA,WAAW,QAAQ,qBAAqB;;AAEjD;;AAEA,OAAO,MAAMC,2BAA2B,GAAIC,OAAiB,IAAK;EAChE,OAAOF,WAAW,CAAEG,KAAK,IAAKD,OAAO,GAAGC,KAAK,CAACC,mBAAmB,CAACF,OAAO,CAAC,GAAGG,SAAS,CAAC;AACzF,CAAC;;AAED;;AAEA,OAAO,MAAMC,2BAA2B,GACtCN,WAAW,CAACO,QAAQ,CAAC,CAAC,CAACC,sBAAsB"}
@@ -90,6 +90,7 @@ export * from './components/HMSHLSPlayer';
90
90
 
91
91
  // 100ms Hooks
92
92
  export * from './hooks/useHMSPeerUpdates';
93
+ export { useHmsViewsResolutionsState } from './hooks/hmsviews';
93
94
 
94
95
  // 100ms types
95
96
  export * from './types';
@@ -1 +1 @@
1
- {"version":3,"names":["HMSSDK","HmsManager","default","HMSManagerModule"],"sources":["index.ts"],"sourcesContent":["export * from './classes/HMSConfig';\nexport * from './classes/HMSUpdateListenerActions';\nexport * from './classes/HMSMessage';\nexport * from './classes/HMSVideoTrackSettings';\nexport * from './classes/HMSVideoTrack';\nexport * from './classes/HMSVideoSettings';\nexport * from './classes/HMSVideoCodec';\nexport * from './classes/HMSTrackSettings';\nexport * from './classes/HMSTrack';\nexport * from './classes/HMSTrackType';\nexport * from './classes/HMSTrackSource';\nexport * from './classes/HMSSubscribeSettings';\nexport * from './classes/HMSSimulcastSettings';\nexport * from './classes/HMSSimulcastLayerSettings';\nexport * from './classes/HMSSDK';\nexport * from './classes/HMSRoom';\nexport * from './classes/HMSRoleChangeRequest';\nexport * from './classes/HMSRole';\nexport * from './classes/HMSRemoteVideoTrack';\nexport * from './classes/HMSRemotePeer';\nexport * from './classes/HMSRemoteAudioTrack';\nexport * from './classes/HMSPublishSettings';\nexport * from './classes/HMSPermissions';\nexport * from './classes/HMSPeer';\nexport * from './classes/HMSLocalVideoTrack';\nexport * from './classes/HMSLocalPeer';\nexport * from './classes/HMSLocalAudioTrack';\nexport * from './classes/HMSHelper';\nexport * from './classes/HMSEncoder';\nexport * from './classes/HMSAudioTrackSettings';\nexport * from './classes/HMSAudioTrack';\nexport * from './classes/HMSAudioSettings';\nexport * from './classes/HMSAudioCodec';\nexport * from './classes/HMSPeerUpdate';\nexport * from './classes/HMSRoomUpdate';\nexport * from './classes/HMSTrackUpdate';\nexport * from './classes/HMSLogger';\nexport * from './classes/HMSLogLevel';\nexport * from './classes/HMSVideoViewMode';\nexport * from './classes/HMSChangeTrackStateRequest';\nexport * from './classes/HMSSpeaker';\nexport * from './classes/HMSCameraFacing';\nexport * from './classes/HMSException';\nexport * from './classes/HMSRtmpStreamingState';\nexport * from './classes/HMSServerRecordingState';\nexport * from './classes/HMSBrowserRecordingState';\nexport * from './classes/HMSRTMPConfig';\nexport * from './classes/HMSHLSConfig';\nexport * from './classes/HMSHLSMeetingURLVariant';\nexport * from './classes/HMSHLSVariant';\nexport * from './classes/HMSHLSStreamingState';\nexport * from './classes/HMSVideoResolution';\nexport * from './classes/HMSLocalAudioStats';\nexport * from './classes/HMSLocalVideoStats';\nexport * from './classes/HMSRTCStats';\nexport * from './classes/HMSRTCStatsReport';\nexport * from './classes/HMSRemoteAudioStats';\nexport * from './classes/HMSRemoteVideoStats';\nexport * from './classes/HMSHLSRecordingConfig';\nexport * from './classes/HMSHLSRecordingState';\nexport * from './classes/HMSMessageRecipient';\nexport * from './classes/HMSMessageRecipientType';\nexport * from './classes/HMSNetworkQuality';\nexport * from './classes/HMSRtmpVideoResolution';\nexport * from './classes/HMSAudioDevice';\nexport * from './classes/HMSAudioMode';\nexport * from './classes/HMSAudioMixingMode';\nexport * from './classes/HMSAudioNode';\nexport * from './classes/HMSMicNode';\nexport * from './classes/HMSScreenBroadcastAudioReceiverNode';\nexport * from './classes/HMSAudioFilePlayerNode';\nexport * from './classes/HMSAudioMixerSource';\nexport * from './classes/HMSTrackSettingsInitState';\nexport * from './classes/HMSLogSettings';\nexport * from './classes/HMSLogAlarmManager';\nexport * from './classes/HMSPIPListenerActions';\nexport * from './classes/HMSLayer';\nexport * from './classes/HMSSimulcastLayerDefinition';\nexport * from './classes/HMSQualityLimitationReasons';\nexport * from './classes/HMSQualityLimitationReason';\nexport * from './classes/HMSCameraControl';\nexport * from './classes/HMSIOSAudioMode';\nexport type {\n HMSSessionStore,\n HMSSessionStoreValue,\n} from './classes/HMSSessionStore';\nexport type {\n HmsViewComponent as HMSView,\n HmsComponentProps as HMSViewProps,\n} from './classes/HmsView';\n\nimport { HMSSDK as HmsManager } from './classes/HMSSDK';\n\n// 100ms React Native Native Module\nexport { default as HMSManagerModule } from './classes/HMSManagerModule';\n\n// 100ms Components\nexport * from './components/HMSHLSPlayer';\n\n// 100ms Hooks\nexport * from './hooks/useHMSPeerUpdates';\n\n// 100ms types\nexport * from './types';\nexport * from './stores/types';\n\nexport default HmsManager;\n"],"mappings":"AAAA,cAAc,qBAAqB;AACnC,cAAc,oCAAoC;AAClD,cAAc,sBAAsB;AACpC,cAAc,iCAAiC;AAC/C,cAAc,yBAAyB;AACvC,cAAc,4BAA4B;AAC1C,cAAc,yBAAyB;AACvC,cAAc,4BAA4B;AAC1C,cAAc,oBAAoB;AAClC,cAAc,wBAAwB;AACtC,cAAc,0BAA0B;AACxC,cAAc,gCAAgC;AAC9C,cAAc,gCAAgC;AAC9C,cAAc,qCAAqC;AACnD,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,gCAAgC;AAC9C,cAAc,mBAAmB;AACjC,cAAc,+BAA+B;AAC7C,cAAc,yBAAyB;AACvC,cAAc,+BAA+B;AAC7C,cAAc,8BAA8B;AAC5C,cAAc,0BAA0B;AACxC,cAAc,mBAAmB;AACjC,cAAc,8BAA8B;AAC5C,cAAc,wBAAwB;AACtC,cAAc,8BAA8B;AAC5C,cAAc,qBAAqB;AACnC,cAAc,sBAAsB;AACpC,cAAc,iCAAiC;AAC/C,cAAc,yBAAyB;AACvC,cAAc,4BAA4B;AAC1C,cAAc,yBAAyB;AACvC,cAAc,yBAAyB;AACvC,cAAc,yBAAyB;AACvC,cAAc,0BAA0B;AACxC,cAAc,qBAAqB;AACnC,cAAc,uBAAuB;AACrC,cAAc,4BAA4B;AAC1C,cAAc,sCAAsC;AACpD,cAAc,sBAAsB;AACpC,cAAc,2BAA2B;AACzC,cAAc,wBAAwB;AACtC,cAAc,iCAAiC;AAC/C,cAAc,mCAAmC;AACjD,cAAc,oCAAoC;AAClD,cAAc,yBAAyB;AACvC,cAAc,wBAAwB;AACtC,cAAc,mCAAmC;AACjD,cAAc,yBAAyB;AACvC,cAAc,gCAAgC;AAC9C,cAAc,8BAA8B;AAC5C,cAAc,8BAA8B;AAC5C,cAAc,8BAA8B;AAC5C,cAAc,uBAAuB;AACrC,cAAc,6BAA6B;AAC3C,cAAc,+BAA+B;AAC7C,cAAc,+BAA+B;AAC7C,cAAc,iCAAiC;AAC/C,cAAc,gCAAgC;AAC9C,cAAc,+BAA+B;AAC7C,cAAc,mCAAmC;AACjD,cAAc,6BAA6B;AAC3C,cAAc,kCAAkC;AAChD,cAAc,0BAA0B;AACxC,cAAc,wBAAwB;AACtC,cAAc,8BAA8B;AAC5C,cAAc,wBAAwB;AACtC,cAAc,sBAAsB;AACpC,cAAc,+CAA+C;AAC7D,cAAc,kCAAkC;AAChD,cAAc,+BAA+B;AAC7C,cAAc,qCAAqC;AACnD,cAAc,0BAA0B;AACxC,cAAc,8BAA8B;AAC5C,cAAc,iCAAiC;AAC/C,cAAc,oBAAoB;AAClC,cAAc,uCAAuC;AACrD,cAAc,uCAAuC;AACrD,cAAc,sCAAsC;AACpD,cAAc,4BAA4B;AAC1C,cAAc,2BAA2B;AAUzC,SAASA,MAAM,IAAIC,UAAU,QAAQ,kBAAkB;;AAEvD;AACA,SAASC,OAAO,IAAIC,gBAAgB,QAAQ,4BAA4B;;AAExE;AACA,cAAc,2BAA2B;;AAEzC;AACA,cAAc,2BAA2B;;AAEzC;AACA,cAAc,SAAS;AACvB,cAAc,gBAAgB;AAE9B,eAAeF,UAAU"}
1
+ {"version":3,"names":["HMSSDK","HmsManager","default","HMSManagerModule","useHmsViewsResolutionsState"],"sources":["index.ts"],"sourcesContent":["export * from './classes/HMSConfig';\nexport * from './classes/HMSUpdateListenerActions';\nexport * from './classes/HMSMessage';\nexport * from './classes/HMSVideoTrackSettings';\nexport * from './classes/HMSVideoTrack';\nexport * from './classes/HMSVideoSettings';\nexport * from './classes/HMSVideoCodec';\nexport * from './classes/HMSTrackSettings';\nexport * from './classes/HMSTrack';\nexport * from './classes/HMSTrackType';\nexport * from './classes/HMSTrackSource';\nexport * from './classes/HMSSubscribeSettings';\nexport * from './classes/HMSSimulcastSettings';\nexport * from './classes/HMSSimulcastLayerSettings';\nexport * from './classes/HMSSDK';\nexport * from './classes/HMSRoom';\nexport * from './classes/HMSRoleChangeRequest';\nexport * from './classes/HMSRole';\nexport * from './classes/HMSRemoteVideoTrack';\nexport * from './classes/HMSRemotePeer';\nexport * from './classes/HMSRemoteAudioTrack';\nexport * from './classes/HMSPublishSettings';\nexport * from './classes/HMSPermissions';\nexport * from './classes/HMSPeer';\nexport * from './classes/HMSLocalVideoTrack';\nexport * from './classes/HMSLocalPeer';\nexport * from './classes/HMSLocalAudioTrack';\nexport * from './classes/HMSHelper';\nexport * from './classes/HMSEncoder';\nexport * from './classes/HMSAudioTrackSettings';\nexport * from './classes/HMSAudioTrack';\nexport * from './classes/HMSAudioSettings';\nexport * from './classes/HMSAudioCodec';\nexport * from './classes/HMSPeerUpdate';\nexport * from './classes/HMSRoomUpdate';\nexport * from './classes/HMSTrackUpdate';\nexport * from './classes/HMSLogger';\nexport * from './classes/HMSLogLevel';\nexport * from './classes/HMSVideoViewMode';\nexport * from './classes/HMSChangeTrackStateRequest';\nexport * from './classes/HMSSpeaker';\nexport * from './classes/HMSCameraFacing';\nexport * from './classes/HMSException';\nexport * from './classes/HMSRtmpStreamingState';\nexport * from './classes/HMSServerRecordingState';\nexport * from './classes/HMSBrowserRecordingState';\nexport * from './classes/HMSRTMPConfig';\nexport * from './classes/HMSHLSConfig';\nexport * from './classes/HMSHLSMeetingURLVariant';\nexport * from './classes/HMSHLSVariant';\nexport * from './classes/HMSHLSStreamingState';\nexport * from './classes/HMSVideoResolution';\nexport * from './classes/HMSLocalAudioStats';\nexport * from './classes/HMSLocalVideoStats';\nexport * from './classes/HMSRTCStats';\nexport * from './classes/HMSRTCStatsReport';\nexport * from './classes/HMSRemoteAudioStats';\nexport * from './classes/HMSRemoteVideoStats';\nexport * from './classes/HMSHLSRecordingConfig';\nexport * from './classes/HMSHLSRecordingState';\nexport * from './classes/HMSMessageRecipient';\nexport * from './classes/HMSMessageRecipientType';\nexport * from './classes/HMSNetworkQuality';\nexport * from './classes/HMSRtmpVideoResolution';\nexport * from './classes/HMSAudioDevice';\nexport * from './classes/HMSAudioMode';\nexport * from './classes/HMSAudioMixingMode';\nexport * from './classes/HMSAudioNode';\nexport * from './classes/HMSMicNode';\nexport * from './classes/HMSScreenBroadcastAudioReceiverNode';\nexport * from './classes/HMSAudioFilePlayerNode';\nexport * from './classes/HMSAudioMixerSource';\nexport * from './classes/HMSTrackSettingsInitState';\nexport * from './classes/HMSLogSettings';\nexport * from './classes/HMSLogAlarmManager';\nexport * from './classes/HMSPIPListenerActions';\nexport * from './classes/HMSLayer';\nexport * from './classes/HMSSimulcastLayerDefinition';\nexport * from './classes/HMSQualityLimitationReasons';\nexport * from './classes/HMSQualityLimitationReason';\nexport * from './classes/HMSCameraControl';\nexport * from './classes/HMSIOSAudioMode';\nexport type {\n HMSSessionStore,\n HMSSessionStoreValue,\n} from './classes/HMSSessionStore';\nexport type {\n HmsViewComponent as HMSView,\n HmsComponentProps as HMSViewProps,\n} from './classes/HmsView';\nexport type { HMSPIPConfig } from './classes/HMSPIPConfig';\n\nimport { HMSSDK as HmsManager } from './classes/HMSSDK';\n\n// 100ms React Native Native Module\nexport { default as HMSManagerModule } from './classes/HMSManagerModule';\n\n// 100ms Components\nexport * from './components/HMSHLSPlayer';\n\n// 100ms Hooks\nexport * from './hooks/useHMSPeerUpdates';\nexport { useHmsViewsResolutionsState } from './hooks/hmsviews';\n\n// 100ms types\nexport * from './types';\nexport * from './stores/types';\n\nexport default HmsManager;\n"],"mappings":"AAAA,cAAc,qBAAqB;AACnC,cAAc,oCAAoC;AAClD,cAAc,sBAAsB;AACpC,cAAc,iCAAiC;AAC/C,cAAc,yBAAyB;AACvC,cAAc,4BAA4B;AAC1C,cAAc,yBAAyB;AACvC,cAAc,4BAA4B;AAC1C,cAAc,oBAAoB;AAClC,cAAc,wBAAwB;AACtC,cAAc,0BAA0B;AACxC,cAAc,gCAAgC;AAC9C,cAAc,gCAAgC;AAC9C,cAAc,qCAAqC;AACnD,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,gCAAgC;AAC9C,cAAc,mBAAmB;AACjC,cAAc,+BAA+B;AAC7C,cAAc,yBAAyB;AACvC,cAAc,+BAA+B;AAC7C,cAAc,8BAA8B;AAC5C,cAAc,0BAA0B;AACxC,cAAc,mBAAmB;AACjC,cAAc,8BAA8B;AAC5C,cAAc,wBAAwB;AACtC,cAAc,8BAA8B;AAC5C,cAAc,qBAAqB;AACnC,cAAc,sBAAsB;AACpC,cAAc,iCAAiC;AAC/C,cAAc,yBAAyB;AACvC,cAAc,4BAA4B;AAC1C,cAAc,yBAAyB;AACvC,cAAc,yBAAyB;AACvC,cAAc,yBAAyB;AACvC,cAAc,0BAA0B;AACxC,cAAc,qBAAqB;AACnC,cAAc,uBAAuB;AACrC,cAAc,4BAA4B;AAC1C,cAAc,sCAAsC;AACpD,cAAc,sBAAsB;AACpC,cAAc,2BAA2B;AACzC,cAAc,wBAAwB;AACtC,cAAc,iCAAiC;AAC/C,cAAc,mCAAmC;AACjD,cAAc,oCAAoC;AAClD,cAAc,yBAAyB;AACvC,cAAc,wBAAwB;AACtC,cAAc,mCAAmC;AACjD,cAAc,yBAAyB;AACvC,cAAc,gCAAgC;AAC9C,cAAc,8BAA8B;AAC5C,cAAc,8BAA8B;AAC5C,cAAc,8BAA8B;AAC5C,cAAc,uBAAuB;AACrC,cAAc,6BAA6B;AAC3C,cAAc,+BAA+B;AAC7C,cAAc,+BAA+B;AAC7C,cAAc,iCAAiC;AAC/C,cAAc,gCAAgC;AAC9C,cAAc,+BAA+B;AAC7C,cAAc,mCAAmC;AACjD,cAAc,6BAA6B;AAC3C,cAAc,kCAAkC;AAChD,cAAc,0BAA0B;AACxC,cAAc,wBAAwB;AACtC,cAAc,8BAA8B;AAC5C,cAAc,wBAAwB;AACtC,cAAc,sBAAsB;AACpC,cAAc,+CAA+C;AAC7D,cAAc,kCAAkC;AAChD,cAAc,+BAA+B;AAC7C,cAAc,qCAAqC;AACnD,cAAc,0BAA0B;AACxC,cAAc,8BAA8B;AAC5C,cAAc,iCAAiC;AAC/C,cAAc,oBAAoB;AAClC,cAAc,uCAAuC;AACrD,cAAc,uCAAuC;AACrD,cAAc,sCAAsC;AACpD,cAAc,4BAA4B;AAC1C,cAAc,2BAA2B;AAWzC,SAASA,MAAM,IAAIC,UAAU,QAAQ,kBAAkB;;AAEvD;AACA,SAASC,OAAO,IAAIC,gBAAgB,QAAQ,4BAA4B;;AAExE;AACA,cAAc,2BAA2B;;AAEzC;AACA,cAAc,2BAA2B;AACzC,SAASC,2BAA2B,QAAQ,kBAAkB;;AAE9D;AACA,cAAc,SAAS;AACvB,cAAc,gBAAgB;AAE9B,eAAeH,UAAU"}
@@ -11,6 +11,10 @@ export const createHMSHLSPlayerPlaybackSlice = set => ({
11
11
  error: undefined,
12
12
  setPlaybackError: error => set({
13
13
  error
14
+ }),
15
+ resolution: undefined,
16
+ setResolution: resolution => set({
17
+ resolution
14
18
  })
15
19
  });
16
20
  //# sourceMappingURL=hls-player-playback-slice.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["HMSHLSPlayerPlaybackState","createHMSHLSPlayerPlaybackSlice","set","cue","undefined","setCue","playbackState","UNKNOWN","setPlaybackState","error","setPlaybackError"],"sources":["hls-player-playback-slice.ts"],"sourcesContent":["import type { StateCreator } from 'zustand';\nimport { HMSHLSPlayerPlaybackState } from '../types';\nimport type {\n HMSHLSPlayerPlaybackCue,\n HMSHLSPlayerPlaybackError,\n HMSHLSPlayerPlaybackSlice,\n HMSStore,\n} from './types';\n\nexport const createHMSHLSPlayerPlaybackSlice: StateCreator<\n HMSStore,\n [],\n [],\n HMSHLSPlayerPlaybackSlice\n> = (set) => ({\n cue: undefined,\n setCue: (cue: HMSHLSPlayerPlaybackCue) => set({ cue }),\n\n playbackState: HMSHLSPlayerPlaybackState.UNKNOWN,\n setPlaybackState: (playbackState: HMSHLSPlayerPlaybackState) =>\n set({ playbackState }),\n\n error: undefined,\n setPlaybackError: (error: HMSHLSPlayerPlaybackError) => set({ error }),\n});\n"],"mappings":"AACA,SAASA,yBAAyB,QAAQ,UAAU;AAQpD,OAAO,MAAMC,+BAKZ,GAAIC,GAAG,KAAM;EACZC,GAAG,EAAEC,SAAS;EACdC,MAAM,EAAGF,GAA4B,IAAKD,GAAG,CAAC;IAAEC;EAAI,CAAC,CAAC;EAEtDG,aAAa,EAAEN,yBAAyB,CAACO,OAAO;EAChDC,gBAAgB,EAAGF,aAAwC,IACzDJ,GAAG,CAAC;IAAEI;EAAc,CAAC,CAAC;EAExBG,KAAK,EAAEL,SAAS;EAChBM,gBAAgB,EAAGD,KAAgC,IAAKP,GAAG,CAAC;IAAEO;EAAM,CAAC;AACvE,CAAC,CAAC"}
1
+ {"version":3,"names":["HMSHLSPlayerPlaybackState","createHMSHLSPlayerPlaybackSlice","set","cue","undefined","setCue","playbackState","UNKNOWN","setPlaybackState","error","setPlaybackError","resolution","setResolution"],"sources":["hls-player-playback-slice.ts"],"sourcesContent":["import type { StateCreator } from 'zustand';\nimport { HMSHLSPlayerPlaybackState } from '../types';\nimport type {\n HMSHLSPlayerPlaybackCue,\n HMSHLSPlayerPlaybackError,\n HMSHLSPlayerPlaybackSlice,\n HMSStore,\n} from './types';\n\nexport const createHMSHLSPlayerPlaybackSlice: StateCreator<\n HMSStore,\n [],\n [],\n HMSHLSPlayerPlaybackSlice\n> = (set) => ({\n cue: undefined,\n setCue: (cue: HMSHLSPlayerPlaybackCue) => set({ cue }),\n\n playbackState: HMSHLSPlayerPlaybackState.UNKNOWN,\n setPlaybackState: (playbackState: HMSHLSPlayerPlaybackState) =>\n set({ playbackState }),\n\n error: undefined,\n setPlaybackError: (error: HMSHLSPlayerPlaybackError) => set({ error }),\n\n resolution: undefined,\n setResolution: (resolution) => set({ resolution }),\n});\n"],"mappings":"AACA,SAASA,yBAAyB,QAAQ,UAAU;AAQpD,OAAO,MAAMC,+BAKZ,GAAIC,GAAG,KAAM;EACZC,GAAG,EAAEC,SAAS;EACdC,MAAM,EAAGF,GAA4B,IAAKD,GAAG,CAAC;IAAEC;EAAI,CAAC,CAAC;EAEtDG,aAAa,EAAEN,yBAAyB,CAACO,OAAO;EAChDC,gBAAgB,EAAGF,aAAwC,IACzDJ,GAAG,CAAC;IAAEI;EAAc,CAAC,CAAC;EAExBG,KAAK,EAAEL,SAAS;EAChBM,gBAAgB,EAAGD,KAAgC,IAAKP,GAAG,CAAC;IAAEO;EAAM,CAAC,CAAC;EAEtEE,UAAU,EAAEP,SAAS;EACrBQ,aAAa,EAAGD,UAAU,IAAKT,GAAG,CAAC;IAAES;EAAW,CAAC;AACnD,CAAC,CAAC"}
@@ -1,9 +1,11 @@
1
1
  import { create } from 'zustand';
2
2
  import { subscribeWithSelector } from 'zustand/middleware';
3
3
  import { createHMSHLSPlayerPlaybackSlice } from './hls-player-playback-slice';
4
+ import { createHMSViewsSlice } from './hmsviews-slice';
4
5
  export const useHMSStore = create()(subscribeWithSelector(function () {
5
6
  return {
6
- ...createHMSHLSPlayerPlaybackSlice(...arguments)
7
+ ...createHMSHLSPlayerPlaybackSlice(...arguments),
8
+ ...createHMSViewsSlice(...arguments)
7
9
  };
8
10
  }));
9
11
  //# sourceMappingURL=hms-store.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["create","subscribeWithSelector","createHMSHLSPlayerPlaybackSlice","useHMSStore","arguments"],"sources":["hms-store.ts"],"sourcesContent":["import { create } from 'zustand';\nimport { subscribeWithSelector } from 'zustand/middleware';\n\nimport { createHMSHLSPlayerPlaybackSlice } from './hls-player-playback-slice';\nimport type { HMSStore } from './types';\n\nexport const useHMSStore = create<HMSStore>()(\n subscribeWithSelector((...a) => ({\n ...createHMSHLSPlayerPlaybackSlice(...a),\n }))\n);\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,SAAS;AAChC,SAASC,qBAAqB,QAAQ,oBAAoB;AAE1D,SAASC,+BAA+B,QAAQ,6BAA6B;AAG7E,OAAO,MAAMC,WAAW,GAAGH,MAAM,CAAW,CAAC,CAC3CC,qBAAqB,CAAC;EAAA,OAAW;IAC/B,GAAGC,+BAA+B,CAAC,GAAAE,SAAI;EACzC,CAAC;AAAA,CAAC,CACJ,CAAC"}
1
+ {"version":3,"names":["create","subscribeWithSelector","createHMSHLSPlayerPlaybackSlice","createHMSViewsSlice","useHMSStore","arguments"],"sources":["hms-store.ts"],"sourcesContent":["import { create } from 'zustand';\nimport { subscribeWithSelector } from 'zustand/middleware';\n\nimport { createHMSHLSPlayerPlaybackSlice } from './hls-player-playback-slice';\nimport { createHMSViewsSlice } from './hmsviews-slice';\nimport type { HMSStore } from './types';\n\nexport const useHMSStore = create<HMSStore>()(\n subscribeWithSelector((...a) => ({\n ...createHMSHLSPlayerPlaybackSlice(...a),\n ...createHMSViewsSlice(...a)\n }))\n);\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,SAAS;AAChC,SAASC,qBAAqB,QAAQ,oBAAoB;AAE1D,SAASC,+BAA+B,QAAQ,6BAA6B;AAC7E,SAASC,mBAAmB,QAAQ,kBAAkB;AAGtD,OAAO,MAAMC,WAAW,GAAGJ,MAAM,CAAW,CAAC,CAC3CC,qBAAqB,CAAC;EAAA,OAAW;IAC/B,GAAGC,+BAA+B,CAAC,GAAAG,SAAI,CAAC;IACxC,GAAGF,mBAAmB,CAAC,GAAAE,SAAI;EAC7B,CAAC;AAAA,CAAC,CACJ,CAAC"}
@@ -0,0 +1,12 @@
1
+ export const createHMSViewsSlice = set => ({
2
+ hmsviewsResolutions: {},
3
+ setHmsviewsResolutions: (trackId, resolution) => {
4
+ set(state => ({
5
+ hmsviewsResolutions: {
6
+ ...state.hmsviewsResolutions,
7
+ [trackId]: resolution
8
+ }
9
+ }));
10
+ }
11
+ });
12
+ //# sourceMappingURL=hmsviews-slice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createHMSViewsSlice","set","hmsviewsResolutions","setHmsviewsResolutions","trackId","resolution","state"],"sources":["hmsviews-slice.ts"],"sourcesContent":["import type { StateCreator } from 'zustand';\n\nimport type { HMSViewsSlice, HMSStore } from './types';\n\nexport const createHMSViewsSlice: StateCreator<\n HMSStore,\n [],\n [],\n HMSViewsSlice\n> = (set) => ({\n hmsviewsResolutions: {},\n setHmsviewsResolutions: (trackId, resolution) => {\n set((state) => ({\n hmsviewsResolutions: {\n ...state.hmsviewsResolutions,\n [trackId]: resolution,\n },\n }));\n },\n});\n"],"mappings":"AAIA,OAAO,MAAMA,mBAKZ,GAAIC,GAAG,KAAM;EACZC,mBAAmB,EAAE,CAAC,CAAC;EACvBC,sBAAsB,EAAEA,CAACC,OAAO,EAAEC,UAAU,KAAK;IAC/CJ,GAAG,CAAEK,KAAK,KAAM;MACdJ,mBAAmB,EAAE;QACnB,GAAGI,KAAK,CAACJ,mBAAmB;QAC5B,CAACE,OAAO,GAAGC;MACb;IACF,CAAC,CAAC,CAAC;EACL;AACF,CAAC,CAAC"}
@@ -1,2 +1,11 @@
1
+ // Stores
2
+
3
+ // HMSViews Slice
4
+
5
+ ;
6
+
7
+ // HLS Player Playback Slice
8
+
9
+ // HLS Player Stats Slice
1
10
  export {};
2
11
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["// Stores\n\nimport type {\n HMSHLSPlayerPlaybackState,\n HMSHLSPlayerPlaybackCueEventData,\n HMSHLSPlayerPlaybackFailureEventData,\n HMSHLSPlayerStatsErrorEventData,\n HMSHLSPlayerStatsUpdateEventData,\n} from '../types';\n\nexport type HMSStore = HMSHLSPlayerPlaybackSlice;\nexport type HMSHLSPlayerStatsStore = HMSHLSPlayerStatsSlice;\n\n// HLS Player Playback Slice\n\nexport interface HMSHLSPlayerPlaybackCue\n extends Omit<HMSHLSPlayerPlaybackCueEventData, 'endDate' | 'startDate'> {\n endDate?: Date;\n startDate: Date;\n}\n\nexport type HMSHLSPlayerCue = HMSHLSPlayerPlaybackCue | undefined;\n\nexport type HMSHLSPlayerPlaybackError =\n | HMSHLSPlayerPlaybackFailureEventData['error']\n | undefined;\n\nexport interface HMSHLSPlayerPlaybackSlice {\n cue: HMSHLSPlayerCue;\n playbackState: HMSHLSPlayerPlaybackState;\n error: HMSHLSPlayerPlaybackError;\n setCue(cue: HMSHLSPlayerPlaybackCue): void;\n setPlaybackState(playbackState: HMSHLSPlayerPlaybackState): void;\n setPlaybackError(error: HMSHLSPlayerPlaybackError): void;\n}\n\n// HLS Player Stats Slice\n\nexport type HMSHLSPlayerStats = HMSHLSPlayerStatsUpdateEventData;\nexport type HMSHLSPlayerStatsError =\n | HMSHLSPlayerStatsErrorEventData\n | undefined;\n\nexport interface HMSHLSPlayerStatsSlice {\n stats: HMSHLSPlayerStats;\n error: HMSHLSPlayerStatsError | undefined;\n changeStats(stats: HMSHLSPlayerStats): void;\n setError(error: HMSHLSPlayerStatsError): void;\n}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["// Stores\n\nimport type {\n HMSHLSPlayerPlaybackState,\n HMSHLSPlayerPlaybackCueEventData,\n HMSHLSPlayerPlaybackFailureEventData,\n HMSHLSPlayerPlaybackResolutionChangeEventData,\n HMSHLSPlayerStatsErrorEventData,\n HMSHLSPlayerStatsUpdateEventData,\n} from '../types';\n\nexport type HMSStore = HMSHLSPlayerPlaybackSlice & HMSViewsSlice;\nexport type HMSHLSPlayerStatsStore = HMSHLSPlayerStatsSlice;\n\n// HMSViews Slice\n\nexport type TrackId = string;\n\nexport type Resolution = {\n width: number;\n height: number;\n};\n\nexport interface HMSViewsSlice {\n hmsviewsResolutions: Record<TrackId, Resolution | undefined>;\n setHmsviewsResolutions(trackId: TrackId, resolution: Resolution): void;\n};\n\n// HLS Player Playback Slice\n\nexport interface HMSHLSPlayerPlaybackCue\n extends Omit<HMSHLSPlayerPlaybackCueEventData, 'endDate' | 'startDate'> {\n endDate?: Date;\n startDate: Date;\n}\n\nexport type HMSHLSPlayerCue = HMSHLSPlayerPlaybackCue | undefined;\n\nexport type HMSHLSPlayerPlaybackError =\n | HMSHLSPlayerPlaybackFailureEventData['error']\n | undefined;\n\nexport type HMSHLSPlayerResolution = HMSHLSPlayerPlaybackResolutionChangeEventData | undefined;\n\nexport interface HMSHLSPlayerPlaybackSlice {\n cue: HMSHLSPlayerCue;\n playbackState: HMSHLSPlayerPlaybackState;\n resolution: HMSHLSPlayerResolution;\n error: HMSHLSPlayerPlaybackError;\n setCue(cue: HMSHLSPlayerPlaybackCue): void;\n setPlaybackState(playbackState: HMSHLSPlayerPlaybackState): void;\n setResolution(resolution: HMSHLSPlayerResolution): void;\n setPlaybackError(error: HMSHLSPlayerPlaybackError): void;\n}\n\n// HLS Player Stats Slice\n\nexport type HMSHLSPlayerStats = HMSHLSPlayerStatsUpdateEventData;\nexport type HMSHLSPlayerStatsError =\n | HMSHLSPlayerStatsErrorEventData\n | undefined;\n\nexport interface HMSHLSPlayerStatsSlice {\n stats: HMSHLSPlayerStats;\n error: HMSHLSPlayerStatsError | undefined;\n changeStats(stats: HMSHLSPlayerStats): void;\n setError(error: HMSHLSPlayerStatsError): void;\n}\n"],"mappings":"AAAA;;AAcA;;AAYC;;AAED;;AA2BA;AAAA"}
@@ -6,6 +6,7 @@ export let HMSHLSPlayerPlaybackEventTypes = /*#__PURE__*/function (HMSHLSPlayerP
6
6
  HMSHLSPlayerPlaybackEventTypes["ON_PLAYBACK_CUE_EVENT"] = "ON_PLAYBACK_CUE_EVENT";
7
7
  HMSHLSPlayerPlaybackEventTypes["ON_PLAYBACK_FAILURE_EVENT"] = "ON_PLAYBACK_FAILURE_EVENT";
8
8
  HMSHLSPlayerPlaybackEventTypes["ON_PLAYBACK_STATE_CHANGE_EVENT"] = "ON_PLAYBACK_STATE_CHANGE_EVENT";
9
+ HMSHLSPlayerPlaybackEventTypes["ON_PLAYBACK_RESOLUTION_CHANGE_EVENT"] = "ON_PLAYBACK_RESOLUTION_CHANGE_EVENT";
9
10
  return HMSHLSPlayerPlaybackEventTypes;
10
11
  }({});
11
12
  export let HMSHLSPlayerPlaybackState = /*#__PURE__*/function (HMSHLSPlayerPlaybackState) {
@@ -15,7 +16,6 @@ export let HMSHLSPlayerPlaybackState = /*#__PURE__*/function (HMSHLSPlayerPlayba
15
16
  HMSHLSPlayerPlaybackState["PLAYING"] = "playing";
16
17
  HMSHLSPlayerPlaybackState["STOPPED"] = "stopped";
17
18
  HMSHLSPlayerPlaybackState["UNKNOWN"] = "unknown";
18
- HMSHLSPlayerPlaybackState["onVideoSizeChanged"] = "onVideoSizeChanged";
19
19
  return HMSHLSPlayerPlaybackState;
20
20
  }({});
21
21
  // #endregion HMS HLSPlayer Playback Events
@@ -1 +1 @@
1
- {"version":3,"names":["HMSHLSPlayerPlaybackEventTypes","HMSHLSPlayerPlaybackState","HMSHLSPlayerStatsEventTypes"],"sources":["types.ts"],"sourcesContent":["// Base HMSHLSPlayer Event\ntype HMSHLSPlayerEvent<T extends string, U> = {\n event: T;\n data: U;\n};\n\n// #region HMSHLSPlayer Playback Events\n\nexport enum HMSHLSPlayerPlaybackEventTypes {\n ON_PLAYBACK_CUE_EVENT = 'ON_PLAYBACK_CUE_EVENT',\n ON_PLAYBACK_FAILURE_EVENT = 'ON_PLAYBACK_FAILURE_EVENT',\n ON_PLAYBACK_STATE_CHANGE_EVENT = 'ON_PLAYBACK_STATE_CHANGE_EVENT',\n}\n\nexport type HMSHLSPlayerPlaybackCueEventData = {\n id?: string;\n endDate?: string;\n payloadval?: string;\n startDate: string;\n};\n\nexport type HMSHLSPlayerPlaybackFailureEventData = {\n error: {\n errorCode: number;\n errorCodeName: string;\n message?: string;\n };\n};\n\nexport enum HMSHLSPlayerPlaybackState {\n BUFFERING = 'buffering',\n FAILED = 'failed',\n PAUSED = 'paused',\n PLAYING = 'playing',\n STOPPED = 'stopped',\n UNKNOWN = 'unknown',\n onVideoSizeChanged = 'onVideoSizeChanged',\n}\n\nexport type HMSHLSPlayerPlaybackStateChangeEventData = {\n state: HMSHLSPlayerPlaybackState;\n aspectRatio: number | undefined;\n};\n\ntype HMSHLSPlayerPlaybackCueEvent = HMSHLSPlayerEvent<\n HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_CUE_EVENT,\n HMSHLSPlayerPlaybackCueEventData\n>;\n\ntype HMSHLSPlayerPlaybackFailureEvent = HMSHLSPlayerEvent<\n HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_FAILURE_EVENT,\n HMSHLSPlayerPlaybackFailureEventData\n>;\n\ntype HMSHLSPlayerPlaybackStateChangeEvent = HMSHLSPlayerEvent<\n HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_STATE_CHANGE_EVENT,\n HMSHLSPlayerPlaybackStateChangeEventData\n>;\n\nexport type HMSHLSPlayerPlaybackEvent =\n | HMSHLSPlayerPlaybackCueEvent\n | HMSHLSPlayerPlaybackFailureEvent\n | HMSHLSPlayerPlaybackStateChangeEvent;\n\n// #endregion HMS HLSPlayer Playback Events\n\n// #region HMS HLSPlayer Stats Events\n\nexport enum HMSHLSPlayerStatsEventTypes {\n ON_STATS_EVENT_ERROR = 'ON_STATS_EVENT_ERROR',\n ON_STATS_EVENT_UPDATE = 'ON_STATS_EVENT_UPDATE',\n}\n\nexport type HMSHLSPlayerStatsErrorEventData = {\n action: string;\n code: number;\n description: string;\n isTerminal: boolean;\n message: string;\n name: string;\n};\n\nexport type HMSHLSPlayerStatsUpdateEventData = {\n // bandwidth\n bandWidthEstimate: number;\n totalBytesLoaded: number;\n\n // bufferedDuration\n bufferedDuration: number;\n\n // distanceFromLive\n distanceFromLive: number;\n\n // frameInfo\n droppedFrameCount: number;\n\n // videoInfo\n averageBitrate: number;\n\n videoHeight: number;\n videoWidth: number;\n};\n\ntype HMSHLSPlayerStatsErrorEvent = HMSHLSPlayerEvent<\n HMSHLSPlayerStatsEventTypes.ON_STATS_EVENT_ERROR,\n HMSHLSPlayerStatsErrorEventData\n>;\n\ntype HMSHLSPlayerStatsUpdateEvent = HMSHLSPlayerEvent<\n HMSHLSPlayerStatsEventTypes.ON_STATS_EVENT_UPDATE,\n HMSHLSPlayerStatsUpdateEventData\n>;\n\nexport type HMSHLSPlayerStatsEvent =\n | HMSHLSPlayerStatsErrorEvent\n | HMSHLSPlayerStatsUpdateEvent;\n\n// #endregion HMS HLSPlayer Stats Events\n\n// #region Utility types\n// #endregion Utility types\n"],"mappings":"AAAA;;AAMA;;AAEA,WAAYA,8BAA8B,0BAA9BA,8BAA8B;EAA9BA,8BAA8B;EAA9BA,8BAA8B;EAA9BA,8BAA8B;EAAA,OAA9BA,8BAA8B;AAAA;AAqB1C,WAAYC,yBAAyB,0BAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAA,OAAzBA,yBAAyB;AAAA;AAmCrC;AAEA;AAEA,WAAYC,2BAA2B,0BAA3BA,2BAA2B;EAA3BA,2BAA2B;EAA3BA,2BAA2B;EAAA,OAA3BA,2BAA2B;AAAA;;AAiDvC;;AAEA;AACA"}
1
+ {"version":3,"names":["HMSHLSPlayerPlaybackEventTypes","HMSHLSPlayerPlaybackState","HMSHLSPlayerStatsEventTypes"],"sources":["types.ts"],"sourcesContent":["// Base HMSHLSPlayer Event\ntype HMSHLSPlayerEvent<T extends string, U> = {\n event: T;\n data: U;\n};\n\n// #region HMSHLSPlayer Playback Events\n\nexport enum HMSHLSPlayerPlaybackEventTypes {\n ON_PLAYBACK_CUE_EVENT = 'ON_PLAYBACK_CUE_EVENT',\n ON_PLAYBACK_FAILURE_EVENT = 'ON_PLAYBACK_FAILURE_EVENT',\n ON_PLAYBACK_STATE_CHANGE_EVENT = 'ON_PLAYBACK_STATE_CHANGE_EVENT',\n ON_PLAYBACK_RESOLUTION_CHANGE_EVENT = 'ON_PLAYBACK_RESOLUTION_CHANGE_EVENT',\n}\n\nexport type HMSHLSPlayerPlaybackCueEventData = {\n id?: string;\n endDate?: string;\n payloadval?: string;\n startDate: string;\n};\n\nexport type HMSHLSPlayerPlaybackFailureEventData = {\n error: {\n errorCode: number;\n errorCodeName: string;\n message?: string;\n };\n};\n\nexport enum HMSHLSPlayerPlaybackState {\n BUFFERING = 'buffering',\n FAILED = 'failed',\n PAUSED = 'paused',\n PLAYING = 'playing',\n STOPPED = 'stopped',\n UNKNOWN = 'unknown',\n}\n\nexport type HMSHLSPlayerPlaybackStateChangeEventData = {\n state: HMSHLSPlayerPlaybackState;\n};\n\nexport type HMSHLSPlayerPlaybackResolutionChangeEventData = {\n width: number;\n height: number;\n};\n\ntype HMSHLSPlayerPlaybackCueEvent = HMSHLSPlayerEvent<\n HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_CUE_EVENT,\n HMSHLSPlayerPlaybackCueEventData\n>;\n\ntype HMSHLSPlayerPlaybackFailureEvent = HMSHLSPlayerEvent<\n HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_FAILURE_EVENT,\n HMSHLSPlayerPlaybackFailureEventData\n>;\n\ntype HMSHLSPlayerPlaybackStateChangeEvent = HMSHLSPlayerEvent<\n HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_STATE_CHANGE_EVENT,\n HMSHLSPlayerPlaybackStateChangeEventData\n>;\n\ntype HMSHLSPLayerPlaybackResolutionChangeEvent = HMSHLSPlayerEvent<\n HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_RESOLUTION_CHANGE_EVENT,\n HMSHLSPlayerPlaybackResolutionChangeEventData\n>;\n\nexport type HMSHLSPlayerPlaybackEvent =\n | HMSHLSPlayerPlaybackCueEvent\n | HMSHLSPlayerPlaybackFailureEvent\n | HMSHLSPlayerPlaybackStateChangeEvent\n | HMSHLSPLayerPlaybackResolutionChangeEvent;\n\n// #endregion HMS HLSPlayer Playback Events\n\n// #region HMS HLSPlayer Stats Events\n\nexport enum HMSHLSPlayerStatsEventTypes {\n ON_STATS_EVENT_ERROR = 'ON_STATS_EVENT_ERROR',\n ON_STATS_EVENT_UPDATE = 'ON_STATS_EVENT_UPDATE',\n}\n\nexport type HMSHLSPlayerStatsErrorEventData = {\n action: string;\n code: number;\n description: string;\n isTerminal: boolean;\n message: string;\n name: string;\n};\n\nexport type HMSHLSPlayerStatsUpdateEventData = {\n // bandwidth\n bandWidthEstimate: number;\n totalBytesLoaded: number;\n\n // bufferedDuration\n bufferedDuration: number;\n\n // distanceFromLive\n distanceFromLive: number;\n\n // frameInfo\n droppedFrameCount: number;\n\n // videoInfo\n averageBitrate: number;\n\n videoHeight: number;\n videoWidth: number;\n};\n\ntype HMSHLSPlayerStatsErrorEvent = HMSHLSPlayerEvent<\n HMSHLSPlayerStatsEventTypes.ON_STATS_EVENT_ERROR,\n HMSHLSPlayerStatsErrorEventData\n>;\n\ntype HMSHLSPlayerStatsUpdateEvent = HMSHLSPlayerEvent<\n HMSHLSPlayerStatsEventTypes.ON_STATS_EVENT_UPDATE,\n HMSHLSPlayerStatsUpdateEventData\n>;\n\nexport type HMSHLSPlayerStatsEvent =\n | HMSHLSPlayerStatsErrorEvent\n | HMSHLSPlayerStatsUpdateEvent;\n\n// #endregion HMS HLSPlayer Stats Events\n\n// #region Utility types\n// #endregion Utility types\n"],"mappings":"AAAA;;AAMA;;AAEA,WAAYA,8BAA8B,0BAA9BA,8BAA8B;EAA9BA,8BAA8B;EAA9BA,8BAA8B;EAA9BA,8BAA8B;EAA9BA,8BAA8B;EAAA,OAA9BA,8BAA8B;AAAA;AAsB1C,WAAYC,yBAAyB,0BAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAA,OAAzBA,yBAAyB;AAAA;AA4CrC;AAEA;AAEA,WAAYC,2BAA2B,0BAA3BA,2BAA2B;EAA3BA,2BAA2B;EAA3BA,2BAA2B;EAAA,OAA3BA,2BAA2B;AAAA;;AAiDvC;;AAEA;AACA"}
@@ -0,0 +1,7 @@
1
+ export interface HMSPIPConfig {
2
+ autoEnterPipMode?: boolean;
3
+ aspectRatio?: [number, number];
4
+ endButton?: boolean;
5
+ audioButton?: boolean;
6
+ videoButton?: boolean;
7
+ }
@@ -1,3 +1,4 @@
1
1
  export declare enum HMSPIPListenerActions {
2
+ ON_PIP_MODE_CHANGED = "ON_PIP_MODE_CHANGED",
2
3
  ON_PIP_ROOM_LEAVE = "ON_PIP_ROOM_LEAVE"
3
4
  }
@@ -10,7 +10,9 @@ export declare class HMSPeer {
10
10
  private _customerUserID;
11
11
  private _metadata;
12
12
  private _role;
13
+ private _isHandRaised;
13
14
  private _updateIsLocal;
15
+ private _updateIsHandRaised;
14
16
  private _updateCustomerUserID;
15
17
  private _updateMetadata;
16
18
  private _updateRole;
@@ -19,6 +21,7 @@ export declare class HMSPeer {
19
21
  name: string;
20
22
  });
21
23
  get isLocal(): boolean | undefined;
24
+ get isHandRaised(): boolean;
22
25
  get networkQuality(): HMSNetworkQuality | undefined;
23
26
  get customerUserID(): string | undefined;
24
27
  get metadata(): string | undefined;
@@ -0,0 +1,9 @@
1
+ import type { HMSPeer } from './HMSPeer';
2
+ export declare class HMSPeerListIterator {
3
+ private readonly uniqueId;
4
+ private _totalCount;
5
+ get totalCount(): number;
6
+ constructor(uniqueId: string, totalCount: number);
7
+ hasNext(): Promise<boolean>;
8
+ next(): Promise<HMSPeer[]>;
9
+ }
@@ -0,0 +1,24 @@
1
+ /**
2
+ * options for creating `HMSPeerListIterator` instance
3
+ *
4
+ * ```
5
+ * const peerListIterator = hmsInstance.getPeerListIterator({
6
+ * limit: 10,
7
+ * byRoleName: 'viewer-realtime',
8
+ * });
9
+ * ```
10
+ */
11
+ export interface HMSPeerListIteratorOptions {
12
+ /**
13
+ * filter by role of the peers
14
+ */
15
+ byRoleName?: string;
16
+ /**
17
+ * `peerID`s of the peers you want to fetch with iterator.
18
+ */
19
+ byPeerIds?: string[];
20
+ /**
21
+ * number of peers fetched by the iterator in `next` method call. Default value is `10`
22
+ */
23
+ limit?: number;
24
+ }
@@ -4,6 +4,7 @@ export declare enum HMSPeerUpdate {
4
4
  METADATA_CHANGED = "METADATA_CHANGED",
5
5
  ROLE_CHANGED = "ROLE_CHANGED",
6
6
  NAME_CHANGED = "NAME_CHANGED",
7
- NETWORK_QUALITY_UPDATED = "NETWORK_QUALITY_UPDATED"
7
+ NETWORK_QUALITY_UPDATED = "NETWORK_QUALITY_UPDATED",
8
+ HAND_RAISED_CHANGED = "HAND_RAISED_CHANGED"
8
9
  }
9
10
  export declare const HMSPeerUpdateOrdinals: Map<string, HMSPeerUpdate>;
@@ -20,6 +20,7 @@ export type HMSPeerCacheProps = {
20
20
  audioTrack?: HMSAudioTrack | undefined;
21
21
  videoTrack?: HMSVideoTrack | undefined;
22
22
  auxiliaryTracks?: HMSTrack[] | undefined;
23
+ isHandRaised?: boolean | undefined;
23
24
  };
24
25
  export declare class HMSPeersCache {
25
26
  private _data;