@100mslive/react-native-hms 1.7.0 → 1.7.2

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 (205) hide show
  1. package/README.md +30 -39
  2. package/android/.gradle/6.7.1/executionHistory/executionHistory.bin +0 -0
  3. package/android/.gradle/6.7.1/executionHistory/executionHistory.lock +0 -0
  4. package/android/.gradle/6.7.1/fileChanges/last-build.bin +0 -0
  5. package/android/.gradle/6.7.1/fileHashes/fileHashes.bin +0 -0
  6. package/android/.gradle/6.7.1/fileHashes/fileHashes.lock +0 -0
  7. package/android/.gradle/6.7.1/gc.properties +0 -0
  8. package/android/.gradle/6.9/executionHistory/executionHistory.bin +0 -0
  9. package/android/.gradle/6.9/executionHistory/executionHistory.lock +0 -0
  10. package/android/.gradle/6.9/fileChanges/last-build.bin +0 -0
  11. package/android/.gradle/6.9/fileHashes/fileHashes.bin +0 -0
  12. package/android/.gradle/6.9/fileHashes/fileHashes.lock +0 -0
  13. package/android/.gradle/6.9/gc.properties +0 -0
  14. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  15. package/android/.gradle/buildOutputCleanup/cache.properties +2 -0
  16. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  17. package/android/.gradle/checksums/checksums.lock +0 -0
  18. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  19. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  20. package/android/.gradle/configuration-cache/gc.properties +0 -0
  21. package/android/.gradle/vcs-1/gc.properties +0 -0
  22. package/android/build.gradle +16 -9
  23. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  24. package/android/gradle/wrapper/gradle-wrapper.properties +1 -1
  25. package/android/gradlew +103 -104
  26. package/android/gradlew.bat +3 -18
  27. package/android/local.properties +0 -7
  28. package/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +37 -9
  29. package/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt +2 -1
  30. package/android/src/main/java/com/reactnativehmssdk/HMSManager.kt +7 -0
  31. package/android/src/main/java/com/reactnativehmssdk/HMSRNSDK.kt +39 -10
  32. package/ios/HMSDecoder.swift +9 -10
  33. package/ios/HMSHelper.swift +6 -2
  34. package/ios/HMSManager.m +4 -0
  35. package/ios/HMSManager.swift +8 -0
  36. package/ios/HMSRNSDK.swift +54 -24
  37. package/lib/commonjs/classes/HMSAudioTrack.js.map +1 -1
  38. package/lib/commonjs/classes/HMSBrowserRecordingState.js +2 -0
  39. package/lib/commonjs/classes/HMSBrowserRecordingState.js.map +1 -1
  40. package/lib/commonjs/classes/HMSCameraControl.js +3 -5
  41. package/lib/commonjs/classes/HMSCameraControl.js.map +1 -1
  42. package/lib/commonjs/classes/HMSEncoder.js +42 -40
  43. package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
  44. package/lib/commonjs/classes/HMSEventEmitter.js +10 -0
  45. package/lib/commonjs/classes/HMSEventEmitter.js.map +1 -0
  46. package/lib/commonjs/classes/HMSHelper.js +1 -1
  47. package/lib/commonjs/classes/HMSHelper.js.map +1 -1
  48. package/lib/commonjs/classes/HMSLocalAudioTrack.js +2 -2
  49. package/lib/commonjs/classes/HMSLocalAudioTrack.js.map +1 -1
  50. package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
  51. package/lib/commonjs/classes/HMSLocalVideoTrack.js +2 -2
  52. package/lib/commonjs/classes/HMSLocalVideoTrack.js.map +1 -1
  53. package/lib/commonjs/classes/HMSLogger.js +4 -4
  54. package/lib/commonjs/classes/HMSLogger.js.map +1 -1
  55. package/lib/commonjs/classes/HMSManagerModule.js +18 -0
  56. package/lib/commonjs/classes/HMSManagerModule.js.map +1 -0
  57. package/lib/commonjs/classes/HMSMessage.js.map +1 -1
  58. package/lib/commonjs/classes/HMSNativeEventEmitter.js +6 -6
  59. package/lib/commonjs/classes/HMSNativeEventEmitter.js.map +1 -1
  60. package/lib/commonjs/classes/HMSNativeEventListener.js +13 -0
  61. package/lib/commonjs/classes/HMSNativeEventListener.js.map +1 -0
  62. package/lib/commonjs/classes/HMSPeer.js +2 -15
  63. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  64. package/lib/commonjs/classes/HMSPeersCache.js +3 -5
  65. package/lib/commonjs/classes/HMSPeersCache.js.map +1 -1
  66. package/lib/commonjs/classes/HMSRemoteAudioTrack.js +2 -2
  67. package/lib/commonjs/classes/HMSRemoteAudioTrack.js.map +1 -1
  68. package/lib/commonjs/classes/HMSRemotePeer.js.map +1 -1
  69. package/lib/commonjs/classes/HMSRemoteVideoTrack.js +5 -5
  70. package/lib/commonjs/classes/HMSRemoteVideoTrack.js.map +1 -1
  71. package/lib/commonjs/classes/HMSRoom.js.map +1 -1
  72. package/lib/commonjs/classes/HMSRoomCache.js +10 -5
  73. package/lib/commonjs/classes/HMSRoomCache.js.map +1 -1
  74. package/lib/commonjs/classes/HMSSDK.js +165 -170
  75. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  76. package/lib/commonjs/classes/HMSSessionStore.js +9 -10
  77. package/lib/commonjs/classes/HMSSessionStore.js.map +1 -1
  78. package/lib/commonjs/classes/HMSTrack.js.map +1 -1
  79. package/lib/commonjs/classes/HMSVideoTrack.js.map +1 -1
  80. package/lib/commonjs/classes/HmsView.js +1 -1
  81. package/lib/commonjs/classes/HmsView.js.map +1 -1
  82. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js +8 -8
  83. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
  84. package/lib/commonjs/components/HMSHLSPlayer/RCTHMSHLSPlayer.js.map +1 -1
  85. package/lib/commonjs/components/HMSHLSPlayer/hooks.js.map +1 -1
  86. package/lib/commonjs/hooks/useHMSPeerUpdates.js +77 -0
  87. package/lib/commonjs/hooks/useHMSPeerUpdates.js.map +1 -0
  88. package/lib/commonjs/index.js +25 -13
  89. package/lib/commonjs/index.js.map +1 -1
  90. package/lib/module/classes/HMSAudioTrack.js.map +1 -1
  91. package/lib/module/classes/HMSBrowserRecordingState.js +2 -0
  92. package/lib/module/classes/HMSBrowserRecordingState.js.map +1 -1
  93. package/lib/module/classes/HMSCameraControl.js +1 -4
  94. package/lib/module/classes/HMSCameraControl.js.map +1 -1
  95. package/lib/module/classes/HMSEncoder.js +40 -39
  96. package/lib/module/classes/HMSEncoder.js.map +1 -1
  97. package/lib/module/classes/HMSEventEmitter.js +3 -0
  98. package/lib/module/classes/HMSEventEmitter.js.map +1 -0
  99. package/lib/module/classes/HMSHelper.js +1 -1
  100. package/lib/module/classes/HMSHelper.js.map +1 -1
  101. package/lib/module/classes/HMSLocalAudioTrack.js +2 -2
  102. package/lib/module/classes/HMSLocalAudioTrack.js.map +1 -1
  103. package/lib/module/classes/HMSLocalPeer.js.map +1 -1
  104. package/lib/module/classes/HMSLocalVideoTrack.js +2 -2
  105. package/lib/module/classes/HMSLocalVideoTrack.js.map +1 -1
  106. package/lib/module/classes/HMSLogger.js +4 -4
  107. package/lib/module/classes/HMSLogger.js.map +1 -1
  108. package/lib/module/classes/HMSManagerModule.js +11 -0
  109. package/lib/module/classes/HMSManagerModule.js.map +1 -0
  110. package/lib/module/classes/HMSMessage.js.map +1 -1
  111. package/lib/module/classes/HMSNativeEventEmitter.js +6 -6
  112. package/lib/module/classes/HMSNativeEventEmitter.js.map +1 -1
  113. package/lib/module/classes/HMSNativeEventListener.js +5 -0
  114. package/lib/module/classes/HMSNativeEventListener.js.map +1 -0
  115. package/lib/module/classes/HMSPeer.js +2 -15
  116. package/lib/module/classes/HMSPeer.js.map +1 -1
  117. package/lib/module/classes/HMSPeersCache.js +1 -4
  118. package/lib/module/classes/HMSPeersCache.js.map +1 -1
  119. package/lib/module/classes/HMSRemoteAudioTrack.js +2 -2
  120. package/lib/module/classes/HMSRemoteAudioTrack.js.map +1 -1
  121. package/lib/module/classes/HMSRemotePeer.js.map +1 -1
  122. package/lib/module/classes/HMSRemoteVideoTrack.js +5 -5
  123. package/lib/module/classes/HMSRemoteVideoTrack.js.map +1 -1
  124. package/lib/module/classes/HMSRoom.js.map +1 -1
  125. package/lib/module/classes/HMSRoomCache.js +8 -4
  126. package/lib/module/classes/HMSRoomCache.js.map +1 -1
  127. package/lib/module/classes/HMSSDK.js +113 -118
  128. package/lib/module/classes/HMSSDK.js.map +1 -1
  129. package/lib/module/classes/HMSSessionStore.js +5 -7
  130. package/lib/module/classes/HMSSessionStore.js.map +1 -1
  131. package/lib/module/classes/HMSTrack.js.map +1 -1
  132. package/lib/module/classes/HMSVideoTrack.js.map +1 -1
  133. package/lib/module/classes/HmsView.js +1 -1
  134. package/lib/module/classes/HmsView.js.map +1 -1
  135. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js +8 -8
  136. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
  137. package/lib/module/components/HMSHLSPlayer/RCTHMSHLSPlayer.js.map +1 -1
  138. package/lib/module/components/HMSHLSPlayer/hooks.js.map +1 -1
  139. package/lib/module/hooks/useHMSPeerUpdates.js +67 -0
  140. package/lib/module/hooks/useHMSPeerUpdates.js.map +1 -0
  141. package/lib/module/index.js +6 -1
  142. package/lib/module/index.js.map +1 -1
  143. package/lib/typescript/classes/HMSAudioTrack.d.ts +2 -1
  144. package/lib/typescript/classes/HMSBrowserRecordingState.d.ts +2 -0
  145. package/lib/typescript/classes/HMSEventEmitter.d.ts +2 -0
  146. package/lib/typescript/classes/HMSLocalAudioTrack.d.ts +2 -1
  147. package/lib/typescript/classes/HMSLocalPeer.d.ts +4 -2
  148. package/lib/typescript/classes/HMSLocalVideoTrack.d.ts +2 -1
  149. package/lib/typescript/classes/HMSManagerModule.d.ts +3 -0
  150. package/lib/typescript/classes/HMSMessage.d.ts +2 -3
  151. package/lib/typescript/classes/HMSNativeEventListener.d.ts +4 -0
  152. package/lib/typescript/classes/HMSPeer.d.ts +2 -3
  153. package/lib/typescript/classes/HMSRemoteAudioTrack.d.ts +2 -1
  154. package/lib/typescript/classes/HMSRemotePeer.d.ts +4 -2
  155. package/lib/typescript/classes/HMSRemoteVideoTrack.d.ts +2 -1
  156. package/lib/typescript/classes/HMSRoom.d.ts +1 -1
  157. package/lib/typescript/classes/HMSSDK.d.ts +8 -7
  158. package/lib/typescript/classes/HMSTrack.d.ts +3 -2
  159. package/lib/typescript/classes/HMSVideoTrack.d.ts +2 -1
  160. package/lib/typescript/classes/HmsView.d.ts +1 -1
  161. package/lib/typescript/components/HMSHLSPlayer/RCTHMSHLSPlayer.d.ts +1 -1
  162. package/lib/typescript/components/HMSHLSPlayer/hooks.d.ts +1 -1
  163. package/lib/typescript/hooks/useHMSPeerUpdates.d.ts +7 -0
  164. package/lib/typescript/index.d.ts +2 -1
  165. package/package.json +2 -2
  166. package/sdk-versions.json +2 -2
  167. package/src/classes/HMSAudioTrack.ts +2 -1
  168. package/src/classes/HMSBrowserRecordingState.ts +3 -0
  169. package/src/classes/HMSCameraControl.ts +1 -2
  170. package/src/classes/HMSEncoder.ts +7 -5
  171. package/src/classes/HMSEventEmitter.ts +3 -0
  172. package/src/classes/HMSLocalAudioTrack.ts +2 -1
  173. package/src/classes/HMSLocalPeer.ts +4 -2
  174. package/src/classes/HMSLocalVideoTrack.ts +2 -1
  175. package/src/classes/HMSManagerModule.ts +18 -0
  176. package/src/classes/HMSMessage.ts +2 -3
  177. package/src/classes/HMSNativeEventEmitter.ts +2 -1
  178. package/src/classes/HMSNativeEventListener.ts +8 -0
  179. package/src/classes/HMSPeer.ts +3 -26
  180. package/src/classes/HMSPeersCache.ts +2 -3
  181. package/src/classes/HMSRemoteAudioTrack.ts +2 -1
  182. package/src/classes/HMSRemotePeer.ts +4 -2
  183. package/src/classes/HMSRemoteVideoTrack.ts +2 -1
  184. package/src/classes/HMSRoom.ts +1 -1
  185. package/src/classes/HMSRoomCache.ts +11 -3
  186. package/src/classes/HMSSDK.tsx +47 -52
  187. package/src/classes/HMSSessionStore.ts +6 -8
  188. package/src/classes/HMSTrack.ts +3 -2
  189. package/src/classes/HMSVideoTrack.ts +2 -1
  190. package/src/classes/HmsView.tsx +4 -2
  191. package/src/components/HMSHLSPlayer/HMSHLSPlayer.tsx +36 -10
  192. package/src/components/HMSHLSPlayer/RCTHMSHLSPlayer.ts +2 -3
  193. package/src/components/HMSHLSPlayer/hooks.ts +3 -2
  194. package/src/hooks/useHMSPeerUpdates.ts +85 -0
  195. package/src/index.ts +6 -1
  196. package/ios/Hmssdk.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  197. package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  198. package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcuserdata/yogesh.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  199. package/ios/Hmssdk.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
  200. package/lib/commonjs/classes/HMSMessageType.js +0 -13
  201. package/lib/commonjs/classes/HMSMessageType.js.map +0 -1
  202. package/lib/module/classes/HMSMessageType.js +0 -6
  203. package/lib/module/classes/HMSMessageType.js.map +0 -1
  204. package/lib/typescript/classes/HMSMessageType.d.ts +0 -4
  205. package/src/classes/HMSMessageType.ts +0 -4
@@ -5,16 +5,15 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.HMSSessionStore = void 0;
7
7
  var _reactNative = require("react-native");
8
+ var _HMSManagerModule = _interopRequireDefault(require("./HMSManagerModule"));
8
9
  var _HMSConstants = require("./HMSConstants");
9
10
  var _HMSLogger = require("./HMSLogger");
10
11
  var _HMSUpdateListenerActions = require("./HMSUpdateListenerActions");
11
12
  var _utils = require("../utils");
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
14
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
15
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
14
16
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
15
- const {
16
- HMSManager
17
- } = _reactNative.NativeModules;
18
17
  /**
19
18
  * Session store is a shared realtime key-value store that is accessible by everyone in the room.
20
19
  * It can be utilized to implement features such as pinned text, spotlight (which brings a particular
@@ -46,7 +45,7 @@ class HMSSessionStore {
46
45
  * @returns {Promise}
47
46
  */
48
47
  async set(value, key) {
49
- const data = await HMSManager.setSessionMetadataForKey({
48
+ const data = await _HMSManagerModule.default.setSessionMetadataForKey({
50
49
  id: _HMSConstants.HMSConstants.DEFAULT_SDK_ID,
51
50
  key,
52
51
  value
@@ -65,7 +64,7 @@ class HMSSessionStore {
65
64
  * @returns {Promise}
66
65
  */
67
66
  async get(key) {
68
- const data = await HMSManager.getSessionMetadataForKey({
67
+ const data = await _HMSManagerModule.default.getSessionMetadataForKey({
69
68
  id: _HMSConstants.HMSConstants.DEFAULT_SDK_ID,
70
69
  key
71
70
  });
@@ -106,7 +105,7 @@ class HMSSessionStore {
106
105
  };
107
106
 
108
107
  // Adding 'KeyChangeListener' on native side
109
- HMSManager.addKeyChangeListener({
108
+ _HMSManagerModule.default.addKeyChangeListener({
110
109
  id: _HMSConstants.HMSConstants.DEFAULT_SDK_ID,
111
110
  keys: forKeys,
112
111
  uniqueId
@@ -138,12 +137,12 @@ class HMSSessionStore {
138
137
  subscriptionsToRemove.forEach(subscription => subscription.remove());
139
138
 
140
139
  // Removing 'KeyChangeListener' from native side
141
- HMSManager.removeKeyChangeListener({
140
+ _HMSManagerModule.default.removeKeyChangeListener({
142
141
  id: _HMSConstants.HMSConstants.DEFAULT_SDK_ID,
143
142
  uniqueId
144
143
  }).catch(error => {
145
144
  const logger = (0, _HMSLogger.getLogger)();
146
- logger === null || logger === void 0 ? void 0 : logger.verbose("Error while removing key change listener, Listener didn't get registerred at first place or was already removed", error);
145
+ logger === null || logger === void 0 || logger.verbose("Error while removing key change listener, Listener didn't get registerred at first place or was already removed", error);
147
146
  });
148
147
  this._addedKeyChangeListenerCount -= 1;
149
148
  if (this._addedKeyChangeListenerCount <= 0) {
@@ -165,8 +164,8 @@ class HMSSessionStore {
165
164
  }
166
165
 
167
166
  // emit event for the key
168
- (_getLogger = (0, _HMSLogger.getLogger)()) === null || _getLogger === void 0 ? void 0 : _getLogger.verbose('#Listener ON_SESSION_STORE_CHANGED event: ', data);
169
- (_this$_eventEmitter = this._eventEmitter) === null || _this$_eventEmitter === void 0 ? void 0 : _this$_eventEmitter.emit(data.key, null, data);
167
+ (_getLogger = (0, _HMSLogger.getLogger)()) === null || _getLogger === void 0 || _getLogger.verbose('#Listener ON_SESSION_STORE_CHANGED event: ', data);
168
+ (_this$_eventEmitter = this._eventEmitter) === null || _this$_eventEmitter === void 0 || _this$_eventEmitter.emit(data.key, null, data);
170
169
  }
171
170
  }
172
171
  exports.HMSSessionStore = HMSSessionStore;
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_HMSConstants","_HMSLogger","_HMSUpdateListenerActions","_utils","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","HMSManager","NativeModules","HMSSessionStore","constructor","set","data","setSessionMetadataForKey","id","HMSConstants","DEFAULT_SDK_ID","get","getSessionMetadataForKey","addKeyChangeListener","forKeys","callback","_deviceEventEmitterSubscription","DeviceEventEmitter","addListener","HMSUpdateListenerActions","ON_SESSION_STORE_CHANGED","_deviceEventEmitterListener","bind","_eventEmitter","EventEmitter","uniqueId","join","Date","now","toString","eventEmitter","subscriptions","map","cleanupHandler","_cleanup","keys","catch","err","_addedKeyChangeListenerCount","remove","subscriptionsToRemove","length","context","forEach","subscription","removeKeyChangeListener","error","logger","getLogger","verbose","getOwnPropertyNames","includes","removeListener","_getLogger","_this$_eventEmitter","emit","exports"],"sources":["HMSSessionStore.ts"],"sourcesContent":["import {\n NativeModules,\n DeviceEventEmitter,\n EmitterSubscription as RNEmitterSubscription,\n} from 'react-native';\nimport { HMSConstants } from './HMSConstants';\nimport { getLogger } from './HMSLogger';\nimport { HMSUpdateListenerActions } from './HMSUpdateListenerActions';\nimport { EventEmitter } from '../utils';\nimport type { EmitterSubscription } from '../utils';\n\nconst { HMSManager } = NativeModules;\n\ntype Nullable<T> = T | null | undefined;\n\nexport type HMSSessionStoreValue = Nullable<string>;\n\n/**\n * Session store is a shared realtime key-value store that is accessible by everyone in the room.\n * It can be utilized to implement features such as pinned text, spotlight (which brings a particular\n * peer to the center stage for everyone in the room) and more.\n *\n * To get an instance of `HMSSessionStore` class, You can add an event listener for `ON_SESSION_STORE_AVAILABLE`\n * event on the `HMSSDK` instance\n *\n * For example:\n * ```\n * hmsInstance.addEventListener(HMSUpdateListenerActions.ON_SESSION_STORE_AVAILABLE, <your callback function>);\n * ```\n *\n * Checkout Session Store docs fore more details ${@link https://www.100ms.live/docs/react-native/v2/how-to-guides/interact-with-room/room/session-store}\n */\nexport class HMSSessionStore {\n private _deviceEventEmitterSubscription?: RNEmitterSubscription;\n private _eventEmitter?: EventEmitter;\n private _addedKeyChangeListenerCount = 0;\n\n /**\n * This method sets a value for a specific key on session store.\n * Once a value is assigned, it will be available for other peers in the room\n * who are listening for changes in value for that specific key.\n *\n * @param {HMSSessionStoreValue} value\n * @param {string} key\n * @returns {Promise}\n */\n async set(value: HMSSessionStoreValue, key: string) {\n const data: { success: true; finalValue: HMSSessionStoreValue } =\n await HMSManager.setSessionMetadataForKey({\n id: HMSConstants.DEFAULT_SDK_ID,\n key,\n value,\n });\n return data;\n }\n\n /**\n * This method returns the value of any specified key on session store.\n * Note that you will not get updates for any change in value of the specified key,\n * It returns the latest value at the time it was called.\n *\n * To listen to value change updates use `addKeyChangeListener` method instead.\n *\n * @param {string} key\n * @returns {Promise}\n */\n async get(key: string) {\n const data: HMSSessionStoreValue =\n await HMSManager.getSessionMetadataForKey({\n id: HMSConstants.DEFAULT_SDK_ID,\n key,\n });\n return data;\n }\n\n /**\n * This method registers a callback function for listening to value changes of a particular key.\n * Registered Callback function will be called initially with latest value and whenever the value updates\n *\n * @param {string[]} forKeys\n * @param {Function} callback\n * @returns {Object} subscription object\n */\n addKeyChangeListener<T extends string[]>(\n forKeys: T,\n callback: (\n error: string | null,\n data: { key: T[number]; value: HMSSessionStoreValue } | null\n ) => void\n ) {\n // Add Native Device Event Emitter if it is not already added\n if (!this._deviceEventEmitterSubscription) {\n this._deviceEventEmitterSubscription = DeviceEventEmitter.addListener(\n HMSUpdateListenerActions.ON_SESSION_STORE_CHANGED,\n this._deviceEventEmitterListener.bind(this)\n );\n }\n\n // Create JS side EventEmitter\n if (!this._eventEmitter) {\n this._eventEmitter = new EventEmitter();\n }\n\n // Unique Identifier for adding native event listener\n const uniqueId = forKeys.join('') + '_' + Date.now().toString();\n\n const eventEmitter = this._eventEmitter;\n\n // Add listeners on eventEmitter for each key\n const subscriptions = forKeys.map((key) =>\n eventEmitter.addListener(key, callback, { uniqueId })\n );\n\n //\n let cleanupHandler: (() => void) | null = () => {\n this._cleanup(subscriptions);\n };\n\n // Adding 'KeyChangeListener' on native side\n HMSManager.addKeyChangeListener({\n id: HMSConstants.DEFAULT_SDK_ID,\n keys: forKeys,\n uniqueId,\n })\n // Adding 'KeyChangeListener' fails on native side\n .catch((err: any) => {\n if (typeof cleanupHandler === 'function') {\n callback(err, null);\n cleanupHandler();\n cleanupHandler = null;\n }\n });\n\n this._addedKeyChangeListenerCount += 1;\n\n return {\n remove: () => {\n if (typeof cleanupHandler === 'function') {\n cleanupHandler();\n cleanupHandler = null;\n }\n },\n };\n }\n\n private _cleanup(subscriptionsToRemove: EmitterSubscription[]) {\n // Extracting `uniqueId` from first subscription (all subscriptions have same uniqueId)\n // this `uniqueId` will be used to remove 'KeyChangeListener' from native side\n const uniqueId =\n subscriptionsToRemove.length > 0\n ? (subscriptionsToRemove[0].context as { uniqueId: string }).uniqueId\n : null;\n\n // Removing required subscriptions from 'eventEmitter'\n subscriptionsToRemove.forEach((subscription) => subscription.remove());\n\n // Removing 'KeyChangeListener' from native side\n HMSManager.removeKeyChangeListener({\n id: HMSConstants.DEFAULT_SDK_ID,\n uniqueId,\n }).catch((error: any) => {\n const logger = getLogger();\n logger?.verbose(\n \"Error while removing key change listener, Listener didn't get registerred at first place or was already removed\",\n error\n );\n });\n\n this._addedKeyChangeListenerCount -= 1;\n\n if (this._addedKeyChangeListenerCount <= 0) {\n this._addedKeyChangeListenerCount = 0;\n if (\n this._deviceEventEmitterSubscription &&\n Object.getOwnPropertyNames(\n this._deviceEventEmitterSubscription\n ).includes('remove') &&\n typeof this._deviceEventEmitterSubscription.remove === 'function'\n ) {\n this._deviceEventEmitterSubscription.remove();\n } else {\n DeviceEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_SESSION_STORE_CHANGED,\n this._deviceEventEmitterListener\n );\n }\n\n this._deviceEventEmitterSubscription = undefined;\n\n this._eventEmitter = undefined;\n }\n }\n\n private _deviceEventEmitterListener(data: {\n id: string;\n key: string;\n value: HMSSessionStoreValue;\n }) {\n // if id is different from default sdk_id, return early\n if (data.id !== HMSConstants.DEFAULT_SDK_ID) {\n return;\n }\n\n // emit event for the key\n getLogger()?.verbose('#Listener ON_SESSION_STORE_CHANGED event: ', data);\n\n this._eventEmitter?.emit(data.key, null, data);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","_HMSManagerModule","_interopRequireDefault","_HMSConstants","_HMSLogger","_HMSUpdateListenerActions","_utils","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","HMSSessionStore","constructor","set","data","HMSManager","setSessionMetadataForKey","id","HMSConstants","DEFAULT_SDK_ID","get","getSessionMetadataForKey","addKeyChangeListener","forKeys","callback","_deviceEventEmitterSubscription","DeviceEventEmitter","addListener","HMSUpdateListenerActions","ON_SESSION_STORE_CHANGED","_deviceEventEmitterListener","bind","_eventEmitter","EventEmitter","uniqueId","join","Date","now","toString","eventEmitter","subscriptions","map","cleanupHandler","_cleanup","keys","catch","err","_addedKeyChangeListenerCount","remove","subscriptionsToRemove","length","context","forEach","subscription","removeKeyChangeListener","error","logger","getLogger","verbose","getOwnPropertyNames","includes","removeListener","_getLogger","_this$_eventEmitter","emit","exports"],"sources":["HMSSessionStore.ts"],"sourcesContent":["import { DeviceEventEmitter } from 'react-native';\nimport type { EmitterSubscription as RNEmitterSubscription } from 'react-native';\n\nimport HMSManager from './HMSManagerModule';\n\nimport { HMSConstants } from './HMSConstants';\nimport { getLogger } from './HMSLogger';\nimport { HMSUpdateListenerActions } from './HMSUpdateListenerActions';\nimport { EventEmitter } from '../utils';\nimport type { EmitterSubscription } from '../utils';\n\ntype Nullable<T> = T | null | undefined;\n\nexport type HMSSessionStoreValue = Nullable<string>;\n\n/**\n * Session store is a shared realtime key-value store that is accessible by everyone in the room.\n * It can be utilized to implement features such as pinned text, spotlight (which brings a particular\n * peer to the center stage for everyone in the room) and more.\n *\n * To get an instance of `HMSSessionStore` class, You can add an event listener for `ON_SESSION_STORE_AVAILABLE`\n * event on the `HMSSDK` instance\n *\n * For example:\n * ```\n * hmsInstance.addEventListener(HMSUpdateListenerActions.ON_SESSION_STORE_AVAILABLE, <your callback function>);\n * ```\n *\n * Checkout Session Store docs fore more details ${@link https://www.100ms.live/docs/react-native/v2/how-to-guides/interact-with-room/room/session-store}\n */\nexport class HMSSessionStore {\n private _deviceEventEmitterSubscription?: RNEmitterSubscription;\n private _eventEmitter?: EventEmitter;\n private _addedKeyChangeListenerCount = 0;\n\n /**\n * This method sets a value for a specific key on session store.\n * Once a value is assigned, it will be available for other peers in the room\n * who are listening for changes in value for that specific key.\n *\n * @param {HMSSessionStoreValue} value\n * @param {string} key\n * @returns {Promise}\n */\n async set(value: HMSSessionStoreValue, key: string) {\n const data: { success: true; finalValue: HMSSessionStoreValue } =\n await HMSManager.setSessionMetadataForKey({\n id: HMSConstants.DEFAULT_SDK_ID,\n key,\n value,\n });\n return data;\n }\n\n /**\n * This method returns the value of any specified key on session store.\n * Note that you will not get updates for any change in value of the specified key,\n * It returns the latest value at the time it was called.\n *\n * To listen to value change updates use `addKeyChangeListener` method instead.\n *\n * @param {string} key\n * @returns {Promise}\n */\n async get(key: string) {\n const data: HMSSessionStoreValue =\n await HMSManager.getSessionMetadataForKey({\n id: HMSConstants.DEFAULT_SDK_ID,\n key,\n });\n return data;\n }\n\n /**\n * This method registers a callback function for listening to value changes of a particular key.\n * Registered Callback function will be called initially with latest value and whenever the value updates\n *\n * @param {string[]} forKeys\n * @param {Function} callback\n * @returns {Object} subscription object\n */\n addKeyChangeListener<T extends string[]>(\n forKeys: T,\n callback: (\n error: string | null,\n data: { key: T[number]; value: HMSSessionStoreValue } | null\n ) => void\n ) {\n // Add Native Device Event Emitter if it is not already added\n if (!this._deviceEventEmitterSubscription) {\n this._deviceEventEmitterSubscription = DeviceEventEmitter.addListener(\n HMSUpdateListenerActions.ON_SESSION_STORE_CHANGED,\n this._deviceEventEmitterListener.bind(this)\n );\n }\n\n // Create JS side EventEmitter\n if (!this._eventEmitter) {\n this._eventEmitter = new EventEmitter();\n }\n\n // Unique Identifier for adding native event listener\n const uniqueId = forKeys.join('') + '_' + Date.now().toString();\n\n const eventEmitter = this._eventEmitter;\n\n // Add listeners on eventEmitter for each key\n const subscriptions = forKeys.map((key) =>\n eventEmitter.addListener(key, callback, { uniqueId })\n );\n\n //\n let cleanupHandler: (() => void) | null = () => {\n this._cleanup(subscriptions);\n };\n\n // Adding 'KeyChangeListener' on native side\n HMSManager.addKeyChangeListener({\n id: HMSConstants.DEFAULT_SDK_ID,\n keys: forKeys,\n uniqueId,\n })\n // Adding 'KeyChangeListener' fails on native side\n .catch((err: any) => {\n if (typeof cleanupHandler === 'function') {\n callback(err, null);\n cleanupHandler();\n cleanupHandler = null;\n }\n });\n\n this._addedKeyChangeListenerCount += 1;\n\n return {\n remove: () => {\n if (typeof cleanupHandler === 'function') {\n cleanupHandler();\n cleanupHandler = null;\n }\n },\n };\n }\n\n private _cleanup(subscriptionsToRemove: EmitterSubscription[]) {\n // Extracting `uniqueId` from first subscription (all subscriptions have same uniqueId)\n // this `uniqueId` will be used to remove 'KeyChangeListener' from native side\n const uniqueId =\n subscriptionsToRemove.length > 0\n ? (subscriptionsToRemove[0]!.context as { uniqueId: string }).uniqueId\n : null;\n\n // Removing required subscriptions from 'eventEmitter'\n subscriptionsToRemove.forEach((subscription) => subscription.remove());\n\n // Removing 'KeyChangeListener' from native side\n HMSManager.removeKeyChangeListener({\n id: HMSConstants.DEFAULT_SDK_ID,\n uniqueId,\n }).catch((error: any) => {\n const logger = getLogger();\n logger?.verbose(\n \"Error while removing key change listener, Listener didn't get registerred at first place or was already removed\",\n error\n );\n });\n\n this._addedKeyChangeListenerCount -= 1;\n\n if (this._addedKeyChangeListenerCount <= 0) {\n this._addedKeyChangeListenerCount = 0;\n if (\n this._deviceEventEmitterSubscription &&\n Object.getOwnPropertyNames(\n this._deviceEventEmitterSubscription\n ).includes('remove') &&\n typeof this._deviceEventEmitterSubscription.remove === 'function'\n ) {\n this._deviceEventEmitterSubscription.remove();\n } else {\n DeviceEventEmitter.removeListener(\n HMSUpdateListenerActions.ON_SESSION_STORE_CHANGED,\n this._deviceEventEmitterListener\n );\n }\n\n this._deviceEventEmitterSubscription = undefined;\n\n this._eventEmitter = undefined;\n }\n }\n\n private _deviceEventEmitterListener(data: {\n id: string;\n key: string;\n value: HMSSessionStoreValue;\n }) {\n // if id is different from default sdk_id, return early\n if (data.id !== HMSConstants.DEFAULT_SDK_ID) {\n return;\n }\n\n // emit event for the key\n getLogger()?.verbose('#Listener ON_SESSION_STORE_CHANGED event: ', data);\n\n this._eventEmitter?.emit(data.key, null, data);\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["HMSTrack","constructor","params","_defineProperty","mute","trackId","source","trackDescription","isMute","id","type","exports"],"sources":["HMSTrack.ts"],"sourcesContent":["import type { HMSTrackType } from './HMSTrackType';\n\nexport class HMSTrack {\n trackId: string;\n source?: number | string;\n trackDescription?: string;\n mute?: boolean;\n id: string;\n type?: HMSTrackType;\n\n isMute = () => {\n return this.mute;\n };\n\n constructor(params: {\n trackId: string;\n source?: number | string;\n trackDescription?: string;\n isMute?: boolean;\n id: string;\n type?: HMSTrackType;\n }) {\n this.trackId = params.trackId;\n this.source = params.source;\n this.trackDescription = params.trackDescription;\n this.mute = params.isMute;\n this.id = params.id;\n this.type = params.type;\n }\n}\n"],"mappings":";;;;;;;;;AAEO,MAAMA,QAAQ,CAAC;EAYpBC,WAAWA,CAACC,MAOX,EAAE;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,iBAXM,MAAM;MACb,OAAO,IAAI,CAACC,IAAI;IAClB,CAAC;IAUC,IAAI,CAACC,OAAO,GAAGH,MAAM,CAACG,OAAO;IAC7B,IAAI,CAACC,MAAM,GAAGJ,MAAM,CAACI,MAAM;IAC3B,IAAI,CAACC,gBAAgB,GAAGL,MAAM,CAACK,gBAAgB;IAC/C,IAAI,CAACH,IAAI,GAAGF,MAAM,CAACM,MAAM;IACzB,IAAI,CAACC,EAAE,GAAGP,MAAM,CAACO,EAAE;IACnB,IAAI,CAACC,IAAI,GAAGR,MAAM,CAACQ,IAAI;EACzB;AACF;AAACC,OAAA,CAAAX,QAAA,GAAAA,QAAA"}
1
+ {"version":3,"names":["HMSTrack","constructor","params","_defineProperty","mute","trackId","source","trackDescription","isMute","id","type","exports"],"sources":["HMSTrack.ts"],"sourcesContent":["import type { HMSTrackSource } from './HMSTrackSource';\nimport type { HMSTrackType } from './HMSTrackType';\n\nexport class HMSTrack {\n trackId: string;\n source?: HMSTrackSource;\n trackDescription?: string;\n mute?: boolean;\n id: string;\n type?: HMSTrackType;\n\n isMute = () => {\n return this.mute;\n };\n\n constructor(params: {\n trackId: string;\n source?: HMSTrackSource;\n trackDescription?: string;\n isMute?: boolean;\n id: string;\n type?: HMSTrackType;\n }) {\n this.trackId = params.trackId;\n this.source = params.source;\n this.trackDescription = params.trackDescription;\n this.mute = params.isMute;\n this.id = params.id;\n this.type = params.type;\n }\n}\n"],"mappings":";;;;;;;;;AAGO,MAAMA,QAAQ,CAAC;EAYpBC,WAAWA,CAACC,MAOX,EAAE;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,iBAXM,MAAM;MACb,OAAO,IAAI,CAACC,IAAI;IAClB,CAAC;IAUC,IAAI,CAACC,OAAO,GAAGH,MAAM,CAACG,OAAO;IAC7B,IAAI,CAACC,MAAM,GAAGJ,MAAM,CAACI,MAAM;IAC3B,IAAI,CAACC,gBAAgB,GAAGL,MAAM,CAACK,gBAAgB;IAC/C,IAAI,CAACH,IAAI,GAAGF,MAAM,CAACM,MAAM;IACzB,IAAI,CAACC,EAAE,GAAGP,MAAM,CAACO,EAAE;IACnB,IAAI,CAACC,IAAI,GAAGR,MAAM,CAACQ,IAAI;EACzB;AACF;AAACC,OAAA,CAAAX,QAAA,GAAAA,QAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["_HMSTrack","require","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","HMSVideoTrack","HMSTrack","constructor","params","isDegraded","exports"],"sources":["HMSVideoTrack.ts"],"sourcesContent":["import { HMSTrack } from './HMSTrack';\nimport type { HMSTrackType } from './HMSTrackType';\n\nexport class HMSVideoTrack extends HMSTrack {\n isDegraded?: boolean;\n\n constructor(params: {\n trackId: string;\n source?: number | string;\n trackDescription?: string;\n isMute?: boolean;\n id: string;\n isDegraded?: boolean;\n type?: HMSTrackType;\n }) {\n super(params);\n this.isDegraded = params.isDegraded;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAAsC,SAAAC,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,GAAA,QAAAR,GAAA,GAAAS,YAAA,CAAAD,GAAA,2BAAAR,GAAA,gBAAAA,GAAA,GAAAU,MAAA,CAAAV,GAAA;AAAA,SAAAS,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAK,IAAA,CAAAP,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAE,SAAA,4DAAAP,IAAA,gBAAAF,MAAA,GAAAU,MAAA,EAAAT,KAAA;AAG/B,MAAMU,aAAa,SAASC,kBAAQ,CAAC;EAG1CC,WAAWA,CAACC,MAQX,EAAE;IACD,KAAK,CAACA,MAAM,CAAC;IAAC1B,eAAA;IACd,IAAI,CAAC2B,UAAU,GAAGD,MAAM,CAACC,UAAU;EACrC;AACF;AAACC,OAAA,CAAAL,aAAA,GAAAA,aAAA"}
1
+ {"version":3,"names":["_HMSTrack","require","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","HMSVideoTrack","HMSTrack","constructor","params","isDegraded","exports"],"sources":["HMSVideoTrack.ts"],"sourcesContent":["import { HMSTrack } from './HMSTrack';\nimport type { HMSTrackSource } from './HMSTrackSource';\nimport type { HMSTrackType } from './HMSTrackType';\n\nexport class HMSVideoTrack extends HMSTrack {\n isDegraded?: boolean;\n\n constructor(params: {\n trackId: string;\n source?: HMSTrackSource;\n trackDescription?: string;\n isMute?: boolean;\n id: string;\n isDegraded?: boolean;\n type?: HMSTrackType;\n }) {\n super(params);\n this.isDegraded = params.isDegraded;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAAsC,SAAAC,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,GAAA,QAAAR,GAAA,GAAAS,YAAA,CAAAD,GAAA,2BAAAR,GAAA,gBAAAA,GAAA,GAAAU,MAAA,CAAAV,GAAA;AAAA,SAAAS,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAK,IAAA,CAAAP,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAE,SAAA,4DAAAP,IAAA,gBAAAF,MAAA,GAAAU,MAAA,EAAAT,KAAA;AAI/B,MAAMU,aAAa,SAASC,kBAAQ,CAAC;EAG1CC,WAAWA,CAACC,MAQX,EAAE;IACD,KAAK,CAACA,MAAM,CAAC;IAAC1B,eAAA;IACd,IAAI,CAAC2B,UAAU,GAAGD,MAAM,CAACC,UAAU;EACrC;AACF;AAACC,OAAA,CAAAL,aAAA,GAAAA,aAAA"}
@@ -62,6 +62,7 @@ const HmsViewComponent = /*#__PURE__*/_react.default.forwardRef((props, ref) =>
62
62
  _requestMap.delete(requestId);
63
63
  };
64
64
  const capture = async () => {
65
+ const viewManagerConfig = _reactNative.UIManager.getViewManagerConfig('HMSView');
65
66
  let requestId = _nextRequestId++;
66
67
  let requestMap = _requestMap;
67
68
 
@@ -73,7 +74,6 @@ const HmsViewComponent = /*#__PURE__*/_react.default.forwardRef((props, ref) =>
73
74
  reject
74
75
  });
75
76
  });
76
- const viewManagerConfig = _reactNative.UIManager.getViewManagerConfig('HMSView');
77
77
  _reactNative.UIManager.dispatchViewManagerCommand((0, _reactNative.findNodeHandle)(hmsViewRef.current), viewManagerConfig.Commands.capture, [requestId]);
78
78
  return promise;
79
79
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_HMSConstants","_HMSVideoViewMode","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","HmsView","requireNativeComponent","_nextRequestId","_requestMap","Map","HmsViewComponent","React","forwardRef","props","ref","trackId","style","styles","hmsView","id","HMSConstants","DEFAULT_SDK_ID","mirror","setZOrderMediaOverlay","autoSimulcast","scaleType","HMSVideoViewMode","ASPECT_FILL","hmsViewRef","useRef","applyStyles_ANDROID","setApplyStyles_ANDROID","useState","data","onChange","_onDataReturned","event","requestId","result","error","nativeEvent","promise","resolve","reject","delete","capture","requestMap","Promise","viewManagerConfig","UIManager","getViewManagerConfig","dispatchViewManagerCommand","findNodeHandle","current","Commands","useImperativeHandle","createElement","Platform","OS","onDataReturned","exports","StyleSheet","create","flex"],"sources":["HmsView.tsx"],"sourcesContent":["import React, { useState, useImperativeHandle, useRef } from 'react';\nimport {\n findNodeHandle,\n requireNativeComponent,\n StyleSheet,\n UIManager,\n ViewStyle,\n Platform,\n} 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 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 const viewManagerConfig = UIManager.getViewManagerConfig('HMSView');\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
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_HMSConstants","_HMSVideoViewMode","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","HmsView","requireNativeComponent","_nextRequestId","_requestMap","Map","HmsViewComponent","React","forwardRef","props","ref","trackId","style","styles","hmsView","id","HMSConstants","DEFAULT_SDK_ID","mirror","setZOrderMediaOverlay","autoSimulcast","scaleType","HMSVideoViewMode","ASPECT_FILL","hmsViewRef","useRef","applyStyles_ANDROID","setApplyStyles_ANDROID","useState","data","onChange","_onDataReturned","event","requestId","result","error","nativeEvent","promise","resolve","reject","delete","capture","viewManagerConfig","UIManager","getViewManagerConfig","requestMap","Promise","dispatchViewManagerCommand","findNodeHandle","current","Commands","useImperativeHandle","createElement","Platform","OS","onDataReturned","exports","StyleSheet","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":"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"}
@@ -24,22 +24,22 @@ const _HMSHLSPlayer = (_ref, ref) => {
24
24
  const hmsHlsPlayerRef = (0, _react.useRef)(null);
25
25
  (0, _react.useImperativeHandle)(ref, () => ({
26
26
  play: url => {
27
- if (hmsHlsPlayerRef.current) {
27
+ if (hmsHlsPlayerRef.current && _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.play) {
28
28
  _reactNative.UIManager.dispatchViewManagerCommand((0, _reactNative.findNodeHandle)(hmsHlsPlayerRef.current), _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.play, url ? [url] : ['']);
29
29
  }
30
30
  },
31
31
  stop: () => {
32
- if (hmsHlsPlayerRef.current) {
32
+ if (hmsHlsPlayerRef.current && _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.stop) {
33
33
  _reactNative.UIManager.dispatchViewManagerCommand((0, _reactNative.findNodeHandle)(hmsHlsPlayerRef.current), _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.stop, undefined);
34
34
  }
35
35
  },
36
36
  pause: () => {
37
- if (hmsHlsPlayerRef.current) {
37
+ if (hmsHlsPlayerRef.current && _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.pause) {
38
38
  _reactNative.UIManager.dispatchViewManagerCommand((0, _reactNative.findNodeHandle)(hmsHlsPlayerRef.current), _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.pause, undefined);
39
39
  }
40
40
  },
41
41
  resume: () => {
42
- if (hmsHlsPlayerRef.current) {
42
+ if (hmsHlsPlayerRef.current && _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.resume) {
43
43
  _reactNative.UIManager.dispatchViewManagerCommand((0, _reactNative.findNodeHandle)(hmsHlsPlayerRef.current), _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.resume, undefined);
44
44
  }
45
45
  },
@@ -47,7 +47,7 @@ const _HMSHLSPlayer = (_ref, ref) => {
47
47
  if (typeof seconds !== 'number') {
48
48
  throw new Error(seconds ? 'seconds must be a `number` type' : 'seconds was not provided');
49
49
  }
50
- if (hmsHlsPlayerRef.current) {
50
+ if (hmsHlsPlayerRef.current && _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward) {
51
51
  _reactNative.UIManager.dispatchViewManagerCommand((0, _reactNative.findNodeHandle)(hmsHlsPlayerRef.current), _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward, [seconds]);
52
52
  }
53
53
  },
@@ -55,12 +55,12 @@ const _HMSHLSPlayer = (_ref, ref) => {
55
55
  if (typeof seconds !== 'number') {
56
56
  throw new Error(seconds ? 'seconds must be a `number` type' : 'seconds was not provided');
57
57
  }
58
- if (hmsHlsPlayerRef.current) {
58
+ if (hmsHlsPlayerRef.current && _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward) {
59
59
  _reactNative.UIManager.dispatchViewManagerCommand((0, _reactNative.findNodeHandle)(hmsHlsPlayerRef.current), _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward, [seconds]);
60
60
  }
61
61
  },
62
62
  seekToLivePosition: () => {
63
- if (hmsHlsPlayerRef.current) {
63
+ if (hmsHlsPlayerRef.current && _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition) {
64
64
  _reactNative.UIManager.dispatchViewManagerCommand((0, _reactNative.findNodeHandle)(hmsHlsPlayerRef.current), _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition, undefined);
65
65
  }
66
66
  },
@@ -68,7 +68,7 @@ const _HMSHLSPlayer = (_ref, ref) => {
68
68
  if (typeof level !== 'number') {
69
69
  throw new Error(level ? 'level must be a `number` type' : 'level was not provided');
70
70
  }
71
- if (hmsHlsPlayerRef.current) {
71
+ if (hmsHlsPlayerRef.current && _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume) {
72
72
  _reactNative.UIManager.dispatchViewManagerCommand((0, _reactNative.findNodeHandle)(hmsHlsPlayerRef.current), _RCTHMSHLSPlayer.RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume, [level]);
73
73
  }
74
74
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_hooks","_RCTHMSHLSPlayer","_types","_HMSEncoder","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_HMSHLSPlayer","_ref","ref","url","style","containerStyle","aspectRatio","enableStats","enableControls","hmsHlsPlayerRef","useRef","useImperativeHandle","play","current","UIManager","dispatchViewManagerCommand","findNodeHandle","RCTHMSHLSPlayerViewManagerConfig","Commands","stop","undefined","pause","resume","seekForward","seconds","Error","seekBackward","seekToLivePosition","setVolume","level","handleHLSPlaybackEvent","_ref2","nativeEvent","event","data","HMSHLSPlayerPlaybackEventTypes","ON_PLAYBACK_CUE_EVENT","transformedData","HMSEncoder","transformHMSHLSCueEventData","setHMSHLSPlayerCue","ON_PLAYBACK_FAILURE_EVENT","setHMSHLSPlayerPlaybackError","error","setHMSHLSPlayerPlaybackState","state","handleHLSStatsEvent","_ref3","HMSHLSPlayerStatsEventTypes","ON_STATS_EVENT_ERROR","setHMSHLSPlayerStatsError","setHMSHLSPlayerStats","createElement","View","styles","container","playerWrapper","RCTHMSHLSPlayer","player","onHmsHlsPlaybackEvent","onHmsHlsStatsEvent","HMSHLSPlayer","React","forwardRef","exports","StyleSheet","create","flex","alignItems","justifyContent","backgroundColor","width","maxHeight","maxWidth"],"sources":["HMSHLSPlayer.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef } 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 HmsHlsPlaybackEventHandler,\n HmsHlsStatsEventHandler,\n RCTHMSHLSPlayer,\n RCTHMSHLSPlayerRef,\n RCTHMSHLSPlayerViewManagerConfig,\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 {\n url = '',\n style,\n containerStyle,\n aspectRatio = 9 / 16,\n enableStats,\n enableControls = false,\n },\n ref\n) => {\n const hmsHlsPlayerRef = useRef<RCTHMSHLSPlayerRef | null>(null);\n\n useImperativeHandle(\n ref,\n () => ({\n play: (url?: string) => {\n if (hmsHlsPlayerRef.current) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.play,\n url ? [url] : ['']\n );\n }\n },\n stop: () => {\n if (hmsHlsPlayerRef.current) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop,\n undefined\n );\n }\n },\n pause: () => {\n if (hmsHlsPlayerRef.current) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause,\n undefined\n );\n }\n },\n resume: () => {\n if (hmsHlsPlayerRef.current) {\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 (hmsHlsPlayerRef.current) {\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 (hmsHlsPlayerRef.current) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward,\n [seconds]\n );\n }\n },\n seekToLivePosition: () => {\n if (hmsHlsPlayerRef.current) {\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 (hmsHlsPlayerRef.current) {\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 }\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={[styles.player, { aspectRatio }]}\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 maxHeight: '100%',\n maxWidth: '100%',\n aspectRatio: 9 / 16,\n },\n});\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAGA,IAAAE,MAAA,GAAAF,OAAA;AAOA,IAAAG,gBAAA,GAAAH,OAAA;AAOA,IAAAI,MAAA,GAAAJ,OAAA;AAKA,IAAAK,WAAA,GAAAL,OAAA;AAAsD,SAAAM,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAR,wBAAAY,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAuBtD,MAAMW,aAGL,GAAGA,CAAAC,IAAA,EASFC,GAAG,KACA;EAAA,IATH;IACEC,GAAG,GAAG,EAAE;IACRC,KAAK;IACLC,cAAc;IACdC,WAAW,GAAG,CAAC,GAAG,EAAE;IACpBC,WAAW;IACXC,cAAc,GAAG;EACnB,CAAC,GAAAP,IAAA;EAGD,MAAMQ,eAAe,GAAG,IAAAC,aAAM,EAA4B,IAAI,CAAC;EAE/D,IAAAC,0BAAmB,EACjBT,GAAG,EACH,OAAO;IACLU,IAAI,EAAGT,GAAY,IAAK;MACtB,IAAIM,eAAe,CAACI,OAAO,EAAE;QAC3BC,sBAAS,CAACC,0BAA0B,CAClC,IAAAC,2BAAc,EAACP,eAAe,CAACI,OAAO,CAAC,EACvCI,iDAAgC,CAACC,QAAQ,CAACN,IAAI,EAC9CT,GAAG,GAAG,CAACA,GAAG,CAAC,GAAG,CAAC,EAAE,CACnB,CAAC;MACH;IACF,CAAC;IACDgB,IAAI,EAAEA,CAAA,KAAM;MACV,IAAIV,eAAe,CAACI,OAAO,EAAE;QAC3BC,sBAAS,CAACC,0BAA0B,CAClC,IAAAC,2BAAc,EAACP,eAAe,CAACI,OAAO,CAAC,EACvCI,iDAAgC,CAACC,QAAQ,CAACC,IAAI,EAC9CC,SACF,CAAC;MACH;IACF,CAAC;IACDC,KAAK,EAAEA,CAAA,KAAM;MACX,IAAIZ,eAAe,CAACI,OAAO,EAAE;QAC3BC,sBAAS,CAACC,0BAA0B,CAClC,IAAAC,2BAAc,EAACP,eAAe,CAACI,OAAO,CAAC,EACvCI,iDAAgC,CAACC,QAAQ,CAACG,KAAK,EAC/CD,SACF,CAAC;MACH;IACF,CAAC;IACDE,MAAM,EAAEA,CAAA,KAAM;MACZ,IAAIb,eAAe,CAACI,OAAO,EAAE;QAC3BC,sBAAS,CAACC,0BAA0B,CAClC,IAAAC,2BAAc,EAACP,eAAe,CAACI,OAAO,CAAC,EACvCI,iDAAgC,CAACC,QAAQ,CAACI,MAAM,EAChDF,SACF,CAAC;MACH;IACF,CAAC;IACDG,WAAW,EAAGC,OAAe,IAAK;MAChC,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;QAC/B,MAAM,IAAIC,KAAK,CACbD,OAAO,GACH,iCAAiC,GACjC,0BACN,CAAC;MACH;MAEA,IAAIf,eAAe,CAACI,OAAO,EAAE;QAC3BC,sBAAS,CAACC,0BAA0B,CAClC,IAAAC,2BAAc,EAACP,eAAe,CAACI,OAAO,CAAC,EACvCI,iDAAgC,CAACC,QAAQ,CAACK,WAAW,EACrD,CAACC,OAAO,CACV,CAAC;MACH;IACF,CAAC;IACDE,YAAY,EAAGF,OAAe,IAAK;MACjC,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;QAC/B,MAAM,IAAIC,KAAK,CACbD,OAAO,GACH,iCAAiC,GACjC,0BACN,CAAC;MACH;MAEA,IAAIf,eAAe,CAACI,OAAO,EAAE;QAC3BC,sBAAS,CAACC,0BAA0B,CAClC,IAAAC,2BAAc,EAACP,eAAe,CAACI,OAAO,CAAC,EACvCI,iDAAgC,CAACC,QAAQ,CAACQ,YAAY,EACtD,CAACF,OAAO,CACV,CAAC;MACH;IACF,CAAC;IACDG,kBAAkB,EAAEA,CAAA,KAAM;MACxB,IAAIlB,eAAe,CAACI,OAAO,EAAE;QAC3BC,sBAAS,CAACC,0BAA0B,CAClC,IAAAC,2BAAc,EAACP,eAAe,CAACI,OAAO,CAAC,EACvCI,iDAAgC,CAACC,QAAQ,CAACS,kBAAkB,EAC5DP,SACF,CAAC;MACH;IACF,CAAC;IACDQ,SAAS,EAAGC,KAAa,IAAK;MAC5B,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;QAC7B,MAAM,IAAIJ,KAAK,CACbI,KAAK,GAAG,+BAA+B,GAAG,wBAC5C,CAAC;MACH;MAEA,IAAIpB,eAAe,CAACI,OAAO,EAAE;QAC3BC,sBAAS,CAACC,0BAA0B,CAClC,IAAAC,2BAAc,EAACP,eAAe,CAACI,OAAO,CAAC,EACvCI,iDAAgC,CAACC,QAAQ,CAACU,SAAS,EACnD,CAACC,KAAK,CACR,CAAC;MACH;IACF;EACF,CAAC,CAAC,EACF,EACF,CAAC;;EAED;EACA,MAAMC,sBAAkD,GAAGC,KAAA,IAErD;IAAA,IAFsD;MAC1DC;IACF,CAAC,GAAAD,KAAA;IACC,MAAM;MAAEE,KAAK;MAAEC;IAAK,CAAC,GAAGF,WAAW;IAEnC,IAAIC,KAAK,KAAKE,qCAA8B,CAACC,qBAAqB,EAAE;MAClE,MAAMC,eAAe,GAAGC,sBAAU,CAACC,2BAA2B,CAG5DL,IAAI,CAAC;MACP,IAAAM,yBAAkB,EAACH,eAAe,CAAC;IACrC,CAAC,MAAM,IACLJ,KAAK,KAAKE,qCAA8B,CAACM,yBAAyB,EAClE;MACA,IAAAC,mCAA4B,EAACR,IAAI,CAACS,KAAK,CAAC;IAC1C,CAAC,MAAM;MACL,IAAAC,mCAA4B,EAACV,IAAI,CAACW,KAAK,CAAC;IAC1C;EACF,CAAC;;EAED;EACA,MAAMC,mBAA4C,GAAGC,KAAA,IAAqB;IAAA,IAApB;MAAEf;IAAY,CAAC,GAAAe,KAAA;IACnE,MAAM;MAAEd,KAAK;MAAEC;IAAK,CAAC,GAAGF,WAAW;IAEnC,IAAIC,KAAK,KAAKe,kCAA2B,CAACC,oBAAoB,EAAE;MAC9D,IAAAC,gCAAyB,EAAChB,IAAI,CAAC;IACjC,CAAC,MAAM;MACL,IAAAiB,2BAAoB,EAACjB,IAAI,CAAC;IAC5B;EACF,CAAC;EAED,oBACEhE,MAAA,CAAAe,OAAA,CAAAmE,aAAA,CAAC/E,YAAA,CAAAgF,IAAI;IAACjD,KAAK,EAAE,CAACkD,MAAM,CAACC,SAAS,EAAElD,cAAc;EAAE,gBAC9CnC,MAAA,CAAAe,OAAA,CAAAmE,aAAA,CAAC/E,YAAA,CAAAgF,IAAI;IAACjD,KAAK,EAAE,CAACkD,MAAM,CAACE,aAAa,EAAEpD,KAAK;EAAE,gBACzClC,MAAA,CAAAe,OAAA,CAAAmE,aAAA,CAAC7E,gBAAA,CAAAkF,eAAe;IACdvD,GAAG,EAAEO,eAAgB;IACrBN,GAAG,EAAEA,GAAI;IACTC,KAAK,EAAE,CAACkD,MAAM,CAACI,MAAM,EAAE;MAAEpD;IAAY,CAAC,CAAE;IACxCC,WAAW,EAAEA,WAAY;IACzBC,cAAc,EAAEA,cAAe;IAC/BmD,qBAAqB,EAAE7B,sBAAuB;IAC9C8B,kBAAkB,EAAEd;EAAoB,CACzC,CACG,CACF,CAAC;AAEX,CAAC;AAEM,MAAMe,YAAY,gBAAGC,cAAK,CAACC,UAAU,CAG1C/D,aAAa,CAAC;AAACgE,OAAA,CAAAH,YAAA,GAAAA,YAAA;AAEjB,MAAMP,MAAM,GAAGW,uBAAU,CAACC,MAAM,CAAC;EAC/BX,SAAS,EAAE;IACTY,IAAI,EAAE,CAAC;IACPC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDb,aAAa,EAAE;IACbc,eAAe,EAAE,SAAS;IAC1BF,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDX,MAAM,EAAE;IACNa,KAAK,EAAE,MAAM;IACbC,SAAS,EAAE,MAAM;IACjBC,QAAQ,EAAE,MAAM;IAChBnE,WAAW,EAAE,CAAC,GAAG;EACnB;AACF,CAAC,CAAC"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_hooks","_RCTHMSHLSPlayer","_types","_HMSEncoder","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_HMSHLSPlayer","_ref","ref","url","style","containerStyle","aspectRatio","enableStats","enableControls","hmsHlsPlayerRef","useRef","useImperativeHandle","play","current","RCTHMSHLSPlayerViewManagerConfig","Commands","UIManager","dispatchViewManagerCommand","findNodeHandle","stop","undefined","pause","resume","seekForward","seconds","Error","seekBackward","seekToLivePosition","setVolume","level","handleHLSPlaybackEvent","_ref2","nativeEvent","event","data","HMSHLSPlayerPlaybackEventTypes","ON_PLAYBACK_CUE_EVENT","transformedData","HMSEncoder","transformHMSHLSCueEventData","setHMSHLSPlayerCue","ON_PLAYBACK_FAILURE_EVENT","setHMSHLSPlayerPlaybackError","error","setHMSHLSPlayerPlaybackState","state","handleHLSStatsEvent","_ref3","HMSHLSPlayerStatsEventTypes","ON_STATS_EVENT_ERROR","setHMSHLSPlayerStatsError","setHMSHLSPlayerStats","createElement","View","styles","container","playerWrapper","RCTHMSHLSPlayer","player","onHmsHlsPlaybackEvent","onHmsHlsStatsEvent","HMSHLSPlayer","React","forwardRef","exports","StyleSheet","create","flex","alignItems","justifyContent","backgroundColor","width","maxHeight","maxWidth"],"sources":["HMSHLSPlayer.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef } 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 {\n url = '',\n style,\n containerStyle,\n aspectRatio = 9 / 16,\n enableStats,\n enableControls = false,\n },\n ref\n) => {\n const hmsHlsPlayerRef = useRef<RCTHMSHLSPlayerRef | null>(null);\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 }\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={[styles.player, { aspectRatio }]}\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 maxHeight: '100%',\n maxWidth: '100%',\n aspectRatio: 9 / 16,\n },\n});\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","RCTHMSHLSPlayer","requireNativeComponent","exports","RCTHMSHLSPlayerViewManagerConfig","UIManager","getViewManagerConfig"],"sources":["RCTHMSHLSPlayer.ts"],"sourcesContent":["import {\n requireNativeComponent,\n StyleProp,\n NativeSyntheticEvent,\n ViewStyle,\n UIManager,\n NativeMethods,\n} from 'react-native';\nimport type {\n HMSHLSPlayerPlaybackEvent,\n HMSHLSPlayerStatsEvent,\n} from '../../types';\n\nexport type HmsHlsPlaybackEventHandler = (\n event: NativeSyntheticEvent<HMSHLSPlayerPlaybackEvent>\n) => void;\n\nexport type HmsHlsStatsEventHandler = (\n event: NativeSyntheticEvent<HMSHLSPlayerStatsEvent>\n) => void;\n\nexport type RCTHMSHLSPlayerProps = {\n url?: string;\n style?: StyleProp<ViewStyle>;\n enableStats?: boolean;\n enableControls?: boolean;\n onHmsHlsPlaybackEvent?: HmsHlsPlaybackEventHandler;\n onHmsHlsStatsEvent?: HmsHlsStatsEventHandler;\n};\n\nexport const RCTHMSHLSPlayer =\n requireNativeComponent<RCTHMSHLSPlayerProps>('HMSHLSPlayer');\n\nexport type RCTHMSHLSPlayerRef = React.Component<RCTHMSHLSPlayerProps> &\n Readonly<NativeMethods>;\n\nexport const RCTHMSHLSPlayerViewManagerConfig =\n UIManager.getViewManagerConfig('HMSHLSPlayer');\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AA8BO,MAAMC,eAAe,GAC1B,IAAAC,mCAAsB,EAAuB,cAAc,CAAC;AAACC,OAAA,CAAAF,eAAA,GAAAA,eAAA;AAKxD,MAAMG,gCAAgC,GAC3CC,sBAAS,CAACC,oBAAoB,CAAC,cAAc,CAAC;AAACH,OAAA,CAAAC,gCAAA,GAAAA,gCAAA"}
1
+ {"version":3,"names":["_reactNative","require","RCTHMSHLSPlayer","requireNativeComponent","exports","RCTHMSHLSPlayerViewManagerConfig","UIManager","getViewManagerConfig"],"sources":["RCTHMSHLSPlayer.ts"],"sourcesContent":["import { requireNativeComponent, UIManager } from 'react-native';\nimport type {\n StyleProp,\n NativeSyntheticEvent,\n ViewStyle,\n NativeMethods,\n} from 'react-native';\nimport type {\n HMSHLSPlayerPlaybackEvent,\n HMSHLSPlayerStatsEvent,\n} from '../../types';\n\nexport type HmsHlsPlaybackEventHandler = (\n event: NativeSyntheticEvent<HMSHLSPlayerPlaybackEvent>\n) => void;\n\nexport type HmsHlsStatsEventHandler = (\n event: NativeSyntheticEvent<HMSHLSPlayerStatsEvent>\n) => void;\n\nexport type RCTHMSHLSPlayerProps = {\n url?: string;\n style?: StyleProp<ViewStyle>;\n enableStats?: boolean;\n enableControls?: boolean;\n onHmsHlsPlaybackEvent?: HmsHlsPlaybackEventHandler;\n onHmsHlsStatsEvent?: HmsHlsStatsEventHandler;\n};\n\nexport const RCTHMSHLSPlayer =\n requireNativeComponent<RCTHMSHLSPlayerProps>('HMSHLSPlayer');\n\nexport type RCTHMSHLSPlayerRef = React.Component<RCTHMSHLSPlayerProps> &\n Readonly<NativeMethods>;\n\nexport const RCTHMSHLSPlayerViewManagerConfig =\n UIManager.getViewManagerConfig('HMSHLSPlayer');\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AA6BO,MAAMC,eAAe,GAC1B,IAAAC,mCAAsB,EAAuB,cAAc,CAAC;AAACC,OAAA,CAAAF,eAAA,GAAAA,eAAA;AAKxD,MAAMG,gCAAgC,GAC3CC,sBAAS,CAACC,oBAAoB,CAAC,cAAc,CAAC;AAACH,OAAA,CAAAC,gCAAA,GAAAA,gCAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_shallow","_hlsPlayerStatsStore","_hmsStore","useHMSHLSPlayerPlaybackState","useHMSStore","state","playbackState","exports","useHMSHLSPlayerStats","useHMSHLSPlayerStatsStore","stats","error","shallow","useHMSHLSPlayerStat","stat","useHMSHLSPlayerStatsError","callback","deps","useEffect","subscribe","data","useHMSHLSPlayerPlaybackError","useHMSHLSPlayerCue","cue","setHMSHLSPlayerPlaybackState","getState","setPlaybackState","setHMSHLSPlayerCue","setCue","setHMSHLSPlayerPlaybackError","setPlaybackError","setHMSHLSPlayerStats","changeStats","setHMSHLSPlayerStatsError","setError"],"sources":["hooks.ts"],"sourcesContent":["import { DependencyList, useEffect } 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":"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"}
1
+ {"version":3,"names":["_react","require","_shallow","_hlsPlayerStatsStore","_hmsStore","useHMSHLSPlayerPlaybackState","useHMSStore","state","playbackState","exports","useHMSHLSPlayerStats","useHMSHLSPlayerStatsStore","stats","error","shallow","useHMSHLSPlayerStat","stat","useHMSHLSPlayerStatsError","callback","deps","useEffect","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":"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"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useHMSPeerUpdates = void 0;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _HMSConstants = require("../classes/HMSConstants");
9
+ var _HMSEncoder = require("../classes/HMSEncoder");
10
+ var _HMSEventEmitter = require("../classes/HMSEventEmitter");
11
+ var _HMSLogger = require("../classes/HMSLogger");
12
+ var _HMSNativeEventListener = _interopRequireDefault(require("../classes/HMSNativeEventListener"));
13
+ var _HMSPeerUpdate = require("../classes/HMSPeerUpdate");
14
+ var _HMSPeersCache = require("../classes/HMSPeersCache");
15
+ var _HMSUpdateListenerActions = require("../classes/HMSUpdateListenerActions");
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
+ const eventType = _HMSUpdateListenerActions.HMSUpdateListenerActions.ON_PEER_UPDATE;
20
+
21
+ // TODO: How to handle events which have already been received?
22
+ // TODO(DOUBT): add HMSInstance as dependency because of actions enabling/disabling events on HMSInstance?
23
+ const useHMSPeerUpdates = function (effect) {
24
+ let deps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
25
+ React.useEffect(() => {
26
+ if (_HMSEventEmitter.HMSEventEmitter.listenerCount(eventType) <= 0) {
27
+ addPeerUpdateSubscription();
28
+ }
29
+ const subscription = _HMSEventEmitter.HMSEventEmitter.addListener(eventType, effect, null);
30
+ return () => {
31
+ subscription.remove();
32
+ if (_HMSEventEmitter.HMSEventEmitter.listenerCount(eventType) <= 0) {
33
+ removePeerUpdateSubscription();
34
+ }
35
+ };
36
+ }, deps);
37
+ };
38
+ exports.useHMSPeerUpdates = useHMSPeerUpdates;
39
+ let peerUpdateSubscription = null;
40
+ function addPeerUpdateSubscription() {
41
+ if (peerUpdateSubscription !== null) {
42
+ return;
43
+ }
44
+ peerUpdateSubscription = _HMSNativeEventListener.default.addListener(_HMSConstants.HMSConstants.DEFAULT_SDK_ID, _HMSUpdateListenerActions.HMSUpdateListenerActions.ON_PEER_UPDATE, peerData => {
45
+ var _getHmsPeersCache, _getLogger;
46
+ const data = {
47
+ peer: peerData,
48
+ type: null
49
+ };
50
+ for (const ordinal of _HMSPeerUpdate.HMSPeerUpdateOrdinals.keys()) {
51
+ if (ordinal in peerData) {
52
+ data.peer.peerID = peerData[ordinal];
53
+ data.type = ordinal;
54
+ break;
55
+ }
56
+ }
57
+ const peer = _HMSEncoder.HMSEncoder.encodeHmsPeer(data.peer);
58
+ const type = _HMSEncoder.HMSEncoder.encodeHmsPeerUpdate(data.type) || data.type;
59
+ (_getHmsPeersCache = (0, _HMSPeersCache.getHmsPeersCache)()) === null || _getHmsPeersCache === void 0 || _getHmsPeersCache.updatePeerCache(data.peer.peerID, data.peer, type);
60
+ (_getLogger = (0, _HMSLogger.getLogger)()) === null || _getLogger === void 0 || _getLogger.verbose('#Listener ON_PEER_LISTENER_CALL', {
61
+ peer,
62
+ type
63
+ });
64
+ _HMSEventEmitter.HMSEventEmitter.emit(eventType, {
65
+ peer,
66
+ type
67
+ });
68
+ });
69
+ }
70
+ function removePeerUpdateSubscription() {
71
+ if (peerUpdateSubscription === null) {
72
+ return;
73
+ }
74
+ peerUpdateSubscription.remove();
75
+ peerUpdateSubscription = null;
76
+ }
77
+ //# sourceMappingURL=useHMSPeerUpdates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_HMSConstants","_HMSEncoder","_HMSEventEmitter","_HMSLogger","_HMSNativeEventListener","_interopRequireDefault","_HMSPeerUpdate","_HMSPeersCache","_HMSUpdateListenerActions","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","eventType","HMSUpdateListenerActions","ON_PEER_UPDATE","useHMSPeerUpdates","effect","deps","arguments","length","undefined","useEffect","HMSEventEmitter","listenerCount","addPeerUpdateSubscription","subscription","addListener","remove","removePeerUpdateSubscription","exports","peerUpdateSubscription","HMSNativeEventListener","HMSConstants","DEFAULT_SDK_ID","peerData","_getHmsPeersCache","_getLogger","data","peer","type","ordinal","HMSPeerUpdateOrdinals","keys","peerID","HMSEncoder","encodeHmsPeer","encodeHmsPeerUpdate","getHmsPeersCache","updatePeerCache","getLogger","verbose","emit"],"sources":["useHMSPeerUpdates.ts"],"sourcesContent":["import * as React from 'react';\n\nimport { HMSConstants } from '../classes/HMSConstants';\nimport { HMSEncoder } from '../classes/HMSEncoder';\nimport { HMSEventEmitter } from '../classes/HMSEventEmitter';\nimport { getLogger } from '../classes/HMSLogger';\nimport HMSNativeEventListener from '../classes/HMSNativeEventListener';\nimport type { HMSNativeEventSubscription } from '../classes/HMSNativeEventListener';\nimport type { HMSPeer } from '../classes/HMSPeer';\nimport { HMSPeerUpdate, HMSPeerUpdateOrdinals } from '../classes/HMSPeerUpdate';\nimport { getHmsPeersCache } from '../classes/HMSPeersCache';\nimport { HMSUpdateListenerActions } from '../classes/HMSUpdateListenerActions';\n\nconst eventType = HMSUpdateListenerActions.ON_PEER_UPDATE;\n\n// TODO: How to handle events which have already been received?\n// TODO(DOUBT): add HMSInstance as dependency because of actions enabling/disabling events on HMSInstance?\nexport const useHMSPeerUpdates = (\n effect: (data: { peer: HMSPeer; type: HMSPeerUpdate }) => void,\n deps: React.DependencyList | undefined = []\n) => {\n React.useEffect(() => {\n if (HMSEventEmitter.listenerCount(eventType) <= 0) {\n addPeerUpdateSubscription();\n }\n\n const subscription = HMSEventEmitter.addListener(eventType, effect, null);\n\n return () => {\n subscription.remove();\n\n if (HMSEventEmitter.listenerCount(eventType) <= 0) {\n removePeerUpdateSubscription();\n }\n };\n }, deps);\n};\n\nlet peerUpdateSubscription: HMSNativeEventSubscription | null = null;\n\nfunction addPeerUpdateSubscription() {\n if (peerUpdateSubscription !== null) {\n return;\n }\n\n peerUpdateSubscription = HMSNativeEventListener.addListener(\n HMSConstants.DEFAULT_SDK_ID,\n HMSUpdateListenerActions.ON_PEER_UPDATE,\n (peerData: any) => {\n const data: { peer: any; type: any } = {\n peer: peerData,\n type: null,\n };\n\n for (const ordinal of HMSPeerUpdateOrdinals.keys()) {\n if (ordinal in peerData) {\n data.peer.peerID = peerData[ordinal];\n data.type = ordinal;\n break;\n }\n }\n\n const peer: HMSPeer = HMSEncoder.encodeHmsPeer(data.peer);\n const type = HMSEncoder.encodeHmsPeerUpdate(data.type) || data.type;\n\n getHmsPeersCache()?.updatePeerCache(data.peer.peerID, data.peer, type);\n\n getLogger()?.verbose('#Listener ON_PEER_LISTENER_CALL', {\n peer,\n type,\n });\n\n HMSEventEmitter.emit(eventType, { peer, type });\n }\n );\n}\n\nfunction removePeerUpdateSubscription() {\n if (peerUpdateSubscription === null) {\n return;\n }\n\n peerUpdateSubscription.remove();\n peerUpdateSubscription = null;\n}\n"],"mappings":"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"}
@@ -3,7 +3,15 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- var _exportNames = {};
6
+ var _exportNames = {
7
+ HMSManagerModule: true
8
+ };
9
+ Object.defineProperty(exports, "HMSManagerModule", {
10
+ enumerable: true,
11
+ get: function () {
12
+ return _HMSManagerModule.default;
13
+ }
14
+ });
7
15
  exports.default = void 0;
8
16
  var _HMSConfig = require("./classes/HMSConfig");
9
17
  Object.keys(_HMSConfig).forEach(function (key) {
@@ -905,18 +913,6 @@ Object.keys(_HMSLogAlarmManager).forEach(function (key) {
905
913
  }
906
914
  });
907
915
  });
908
- var _HMSMessageType = require("./classes/HMSMessageType");
909
- Object.keys(_HMSMessageType).forEach(function (key) {
910
- if (key === "default" || key === "__esModule") return;
911
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
912
- if (key in exports && exports[key] === _HMSMessageType[key]) return;
913
- Object.defineProperty(exports, key, {
914
- enumerable: true,
915
- get: function () {
916
- return _HMSMessageType[key];
917
- }
918
- });
919
- });
920
916
  var _HMSPIPListenerActions = require("./classes/HMSPIPListenerActions");
921
917
  Object.keys(_HMSPIPListenerActions).forEach(function (key) {
922
918
  if (key === "default" || key === "__esModule") return;
@@ -1001,6 +997,7 @@ Object.keys(_HMSIOSAudioMode).forEach(function (key) {
1001
997
  }
1002
998
  });
1003
999
  });
1000
+ var _HMSManagerModule = _interopRequireDefault(require("./classes/HMSManagerModule"));
1004
1001
  var _HMSHLSPlayer = require("./components/HMSHLSPlayer");
1005
1002
  Object.keys(_HMSHLSPlayer).forEach(function (key) {
1006
1003
  if (key === "default" || key === "__esModule") return;
@@ -1013,6 +1010,18 @@ Object.keys(_HMSHLSPlayer).forEach(function (key) {
1013
1010
  }
1014
1011
  });
1015
1012
  });
1013
+ var _useHMSPeerUpdates = require("./hooks/useHMSPeerUpdates");
1014
+ Object.keys(_useHMSPeerUpdates).forEach(function (key) {
1015
+ if (key === "default" || key === "__esModule") return;
1016
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
1017
+ if (key in exports && exports[key] === _useHMSPeerUpdates[key]) return;
1018
+ Object.defineProperty(exports, key, {
1019
+ enumerable: true,
1020
+ get: function () {
1021
+ return _useHMSPeerUpdates[key];
1022
+ }
1023
+ });
1024
+ });
1016
1025
  var _types = require("./types");
1017
1026
  Object.keys(_types).forEach(function (key) {
1018
1027
  if (key === "default" || key === "__esModule") return;
@@ -1037,7 +1046,10 @@ Object.keys(_types2).forEach(function (key) {
1037
1046
  }
1038
1047
  });
1039
1048
  });
1049
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
1050
+ // 100ms React Native Native Module
1040
1051
  // 100ms Components
1052
+ // 100ms Hooks
1041
1053
  // 100ms types
1042
1054
  var _default = _HMSSDK.HMSSDK;
1043
1055
  exports.default = _default;