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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/android/build.gradle +3 -3
  2. package/android/local.properties +8 -1
  3. package/android/src/main/java/com/reactnativehmssdk/HMSAudioshareActivity.kt +1 -1
  4. package/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +15 -5
  5. package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayer.kt +4 -3
  6. package/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt +43 -5
  7. package/android/src/main/java/com/reactnativehmssdk/HMSManager.kt +147 -47
  8. package/android/src/main/java/com/reactnativehmssdk/HMSRNSDK.kt +419 -248
  9. package/android/src/main/java/com/reactnativehmssdk/HMSView.kt +24 -4
  10. package/android/src/main/java/com/reactnativehmssdk/HmsScreenshareActivity.kt +1 -1
  11. package/ios/HMSConstants.swift +1 -0
  12. package/ios/HMSDecoder.swift +16 -5
  13. package/ios/HMSHLSPlayerManager.swift +20 -11
  14. package/ios/HMSHelper.swift +33 -4
  15. package/ios/HMSManager.m +66 -10
  16. package/ios/HMSManager.swift +65 -21
  17. package/ios/HMSRNSDK.swift +244 -100
  18. package/ios/Hmssdk.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  19. package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  20. package/ios/Hmssdk.xcodeproj/project.xcworkspace/xcuserdata/jatinnagar.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  21. package/ios/Hmssdk.xcodeproj/xcuserdata/jatinnagar.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
  22. package/lib/commonjs/classes/HMSAudioCodec.js +1 -2
  23. package/lib/commonjs/classes/HMSAudioCodec.js.map +1 -1
  24. package/lib/commonjs/classes/HMSAudioDevice.js +1 -2
  25. package/lib/commonjs/classes/HMSAudioDevice.js.map +1 -1
  26. package/lib/commonjs/classes/HMSAudioMixingMode.js +1 -2
  27. package/lib/commonjs/classes/HMSAudioMixingMode.js.map +1 -1
  28. package/lib/commonjs/classes/HMSAudioMode.js +1 -2
  29. package/lib/commonjs/classes/HMSAudioMode.js.map +1 -1
  30. package/lib/commonjs/classes/HMSCameraFacing.js +1 -2
  31. package/lib/commonjs/classes/HMSCameraFacing.js.map +1 -1
  32. package/lib/commonjs/classes/HMSConstants.js +1 -2
  33. package/lib/commonjs/classes/HMSConstants.js.map +1 -1
  34. package/lib/commonjs/classes/HMSEventEmitter.js +1 -2
  35. package/lib/commonjs/classes/HMSEventEmitter.js.map +1 -1
  36. package/lib/commonjs/classes/HMSIOSAudioMode.js +1 -2
  37. package/lib/commonjs/classes/HMSIOSAudioMode.js.map +1 -1
  38. package/lib/commonjs/classes/HMSLayer.js +1 -2
  39. package/lib/commonjs/classes/HMSLayer.js.map +1 -1
  40. package/lib/commonjs/classes/HMSLogAlarmManager.js +1 -2
  41. package/lib/commonjs/classes/HMSLogAlarmManager.js.map +1 -1
  42. package/lib/commonjs/classes/HMSLogLevel.js +1 -2
  43. package/lib/commonjs/classes/HMSLogLevel.js.map +1 -1
  44. package/lib/commonjs/classes/HMSLogger.js +1 -2
  45. package/lib/commonjs/classes/HMSLogger.js.map +1 -1
  46. package/lib/commonjs/classes/HMSManagerModule.js +1 -2
  47. package/lib/commonjs/classes/HMSManagerModule.js.map +1 -1
  48. package/lib/commonjs/classes/HMSMessageRecipientType.js +1 -2
  49. package/lib/commonjs/classes/HMSMessageRecipientType.js.map +1 -1
  50. package/lib/commonjs/classes/HMSNativeEventListener.js +1 -2
  51. package/lib/commonjs/classes/HMSNativeEventListener.js.map +1 -1
  52. package/lib/commonjs/classes/HMSPIPConfig.js +4 -0
  53. package/lib/commonjs/classes/HMSPIPConfig.js.map +1 -0
  54. package/lib/commonjs/classes/HMSPIPListenerActions.js +2 -2
  55. package/lib/commonjs/classes/HMSPIPListenerActions.js.map +1 -1
  56. package/lib/commonjs/classes/HMSPeer.js +15 -0
  57. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  58. package/lib/commonjs/classes/HMSPeerListIterator.js +64 -0
  59. package/lib/commonjs/classes/HMSPeerListIterator.js.map +1 -0
  60. package/lib/commonjs/classes/HMSPeerListIteratorOptions.js +2 -0
  61. package/lib/commonjs/classes/HMSPeerListIteratorOptions.js.map +1 -0
  62. package/lib/commonjs/classes/HMSPeerUpdate.js +3 -4
  63. package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
  64. package/lib/commonjs/classes/HMSPeersCache.js +8 -2
  65. package/lib/commonjs/classes/HMSPeersCache.js.map +1 -1
  66. package/lib/commonjs/classes/HMSQualityLimitationReason.js +1 -2
  67. package/lib/commonjs/classes/HMSQualityLimitationReason.js.map +1 -1
  68. package/lib/commonjs/classes/HMSRoomCache.js +1 -2
  69. package/lib/commonjs/classes/HMSRoomCache.js.map +1 -1
  70. package/lib/commonjs/classes/HMSRoomUpdate.js +1 -2
  71. package/lib/commonjs/classes/HMSRoomUpdate.js.map +1 -1
  72. package/lib/commonjs/classes/HMSSDK.js +152 -8
  73. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  74. package/lib/commonjs/classes/HMSTrackSettingsInitState.js +1 -2
  75. package/lib/commonjs/classes/HMSTrackSettingsInitState.js.map +1 -1
  76. package/lib/commonjs/classes/HMSTrackSource.js +1 -2
  77. package/lib/commonjs/classes/HMSTrackSource.js.map +1 -1
  78. package/lib/commonjs/classes/HMSTrackType.js +1 -2
  79. package/lib/commonjs/classes/HMSTrackType.js.map +1 -1
  80. package/lib/commonjs/classes/HMSTrackUpdate.js +1 -2
  81. package/lib/commonjs/classes/HMSTrackUpdate.js.map +1 -1
  82. package/lib/commonjs/classes/HMSUpdateListenerActions.js +2 -2
  83. package/lib/commonjs/classes/HMSUpdateListenerActions.js.map +1 -1
  84. package/lib/commonjs/classes/HMSVideoCodec.js +1 -2
  85. package/lib/commonjs/classes/HMSVideoCodec.js.map +1 -1
  86. package/lib/commonjs/classes/HMSVideoViewMode.js +1 -2
  87. package/lib/commonjs/classes/HMSVideoViewMode.js.map +1 -1
  88. package/lib/commonjs/classes/HmsView.js +17 -5
  89. package/lib/commonjs/classes/HmsView.js.map +1 -1
  90. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js +11 -9
  91. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
  92. package/lib/commonjs/components/HMSHLSPlayer/RCTHMSHLSPlayer.js +2 -4
  93. package/lib/commonjs/components/HMSHLSPlayer/RCTHMSHLSPlayer.js.map +1 -1
  94. package/lib/commonjs/components/HMSHLSPlayer/hooks.js +11 -11
  95. package/lib/commonjs/components/HMSHLSPlayer/hooks.js.map +1 -1
  96. package/lib/commonjs/components/HMSHLSPlayer/index.js +8 -1
  97. package/lib/commonjs/components/HMSHLSPlayer/index.js.map +1 -1
  98. package/lib/commonjs/hooks/hmsviews.js +17 -0
  99. package/lib/commonjs/hooks/hmsviews.js.map +1 -0
  100. package/lib/commonjs/hooks/useHMSPeerUpdates.js +2 -2
  101. package/lib/commonjs/hooks/useHMSPeerUpdates.js.map +1 -1
  102. package/lib/commonjs/index.js +10 -3
  103. package/lib/commonjs/index.js.map +1 -1
  104. package/lib/commonjs/stores/hls-player-playback-slice.js +4 -0
  105. package/lib/commonjs/stores/hls-player-playback-slice.js.map +1 -1
  106. package/lib/commonjs/stores/hls-player-stats-store.js +1 -2
  107. package/lib/commonjs/stores/hls-player-stats-store.js.map +1 -1
  108. package/lib/commonjs/stores/hms-store.js +4 -3
  109. package/lib/commonjs/stores/hms-store.js.map +1 -1
  110. package/lib/commonjs/stores/hmsviews-slice.js +19 -0
  111. package/lib/commonjs/stores/hmsviews-slice.js.map +1 -0
  112. package/lib/commonjs/stores/types.js +9 -0
  113. package/lib/commonjs/stores/types.js.map +1 -1
  114. package/lib/commonjs/types.js +4 -7
  115. package/lib/commonjs/types.js.map +1 -1
  116. package/lib/module/classes/HMSPIPConfig.js +2 -0
  117. package/lib/module/classes/HMSPIPConfig.js.map +1 -0
  118. package/lib/module/classes/HMSPIPListenerActions.js +1 -0
  119. package/lib/module/classes/HMSPIPListenerActions.js.map +1 -1
  120. package/lib/module/classes/HMSPeer.js +15 -0
  121. package/lib/module/classes/HMSPeer.js.map +1 -1
  122. package/lib/module/classes/HMSPeerListIterator.js +58 -0
  123. package/lib/module/classes/HMSPeerListIterator.js.map +1 -0
  124. package/lib/module/classes/HMSPeerListIteratorOptions.js +2 -0
  125. package/lib/module/classes/HMSPeerListIteratorOptions.js.map +1 -0
  126. package/lib/module/classes/HMSPeerUpdate.js +2 -1
  127. package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
  128. package/lib/module/classes/HMSPeersCache.js +7 -0
  129. package/lib/module/classes/HMSPeersCache.js.map +1 -1
  130. package/lib/module/classes/HMSSDK.js +153 -10
  131. package/lib/module/classes/HMSSDK.js.map +1 -1
  132. package/lib/module/classes/HMSUpdateListenerActions.js +1 -0
  133. package/lib/module/classes/HMSUpdateListenerActions.js.map +1 -1
  134. package/lib/module/classes/HmsView.js +14 -1
  135. package/lib/module/classes/HmsView.js.map +1 -1
  136. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js +9 -6
  137. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
  138. package/lib/module/components/HMSHLSPlayer/hooks.js +4 -0
  139. package/lib/module/components/HMSHLSPlayer/hooks.js.map +1 -1
  140. package/lib/module/components/HMSHLSPlayer/index.js +1 -1
  141. package/lib/module/components/HMSHLSPlayer/index.js.map +1 -1
  142. package/lib/module/hooks/hmsviews.js +12 -0
  143. package/lib/module/hooks/hmsviews.js.map +1 -0
  144. package/lib/module/index.js +1 -0
  145. package/lib/module/index.js.map +1 -1
  146. package/lib/module/stores/hls-player-playback-slice.js +4 -0
  147. package/lib/module/stores/hls-player-playback-slice.js.map +1 -1
  148. package/lib/module/stores/hms-store.js +3 -1
  149. package/lib/module/stores/hms-store.js.map +1 -1
  150. package/lib/module/stores/hmsviews-slice.js +12 -0
  151. package/lib/module/stores/hmsviews-slice.js.map +1 -0
  152. package/lib/module/stores/types.js +9 -0
  153. package/lib/module/stores/types.js.map +1 -1
  154. package/lib/module/types.js +1 -1
  155. package/lib/module/types.js.map +1 -1
  156. package/lib/typescript/classes/HMSPIPConfig.d.ts +7 -0
  157. package/lib/typescript/classes/HMSPIPListenerActions.d.ts +1 -0
  158. package/lib/typescript/classes/HMSPeer.d.ts +3 -0
  159. package/lib/typescript/classes/HMSPeerListIterator.d.ts +9 -0
  160. package/lib/typescript/classes/HMSPeerListIteratorOptions.d.ts +24 -0
  161. package/lib/typescript/classes/HMSPeerUpdate.d.ts +2 -1
  162. package/lib/typescript/classes/HMSPeersCache.d.ts +1 -0
  163. package/lib/typescript/classes/HMSSDK.d.ts +47 -8
  164. package/lib/typescript/classes/HMSUpdateListenerActions.d.ts +2 -1
  165. package/lib/typescript/components/HMSHLSPlayer/hooks.d.ts +2 -0
  166. package/lib/typescript/components/HMSHLSPlayer/index.d.ts +1 -1
  167. package/lib/typescript/hooks/hmsviews.d.ts +3 -0
  168. package/lib/typescript/index.d.ts +2 -0
  169. package/lib/typescript/stores/hms-store.d.ts +4 -3
  170. package/lib/typescript/stores/hmsviews-slice.d.ts +5 -0
  171. package/lib/typescript/stores/types.d.ts +14 -2
  172. package/lib/typescript/types.d.ts +9 -5
  173. package/package.json +3 -1
  174. package/sdk-versions.json +2 -2
  175. package/src/classes/HMSPIPConfig.ts +7 -0
  176. package/src/classes/HMSPIPListenerActions.ts +1 -0
  177. package/src/classes/HMSPeer.ts +25 -0
  178. package/src/classes/HMSPeerListIterator.ts +60 -0
  179. package/src/classes/HMSPeerListIteratorOptions.ts +26 -0
  180. package/src/classes/HMSPeerUpdate.ts +2 -0
  181. package/src/classes/HMSPeersCache.ts +7 -0
  182. package/src/classes/HMSSDK.tsx +188 -13
  183. package/src/classes/HMSUpdateListenerActions.ts +1 -0
  184. package/src/classes/HmsView.tsx +16 -2
  185. package/src/components/HMSHLSPlayer/HMSHLSPlayer.tsx +11 -5
  186. package/src/components/HMSHLSPlayer/hooks.ts +7 -0
  187. package/src/components/HMSHLSPlayer/index.ts +1 -0
  188. package/src/hooks/hmsviews.ts +13 -0
  189. package/src/index.ts +2 -0
  190. package/src/stores/hls-player-playback-slice.ts +3 -0
  191. package/src/stores/hms-store.ts +2 -0
  192. package/src/stores/hmsviews-slice.ts +20 -0
  193. package/src/stores/types.ts +20 -1
  194. package/src/types.ts +13 -3
  195. package/android/.gradle/6.7.1/executionHistory/executionHistory.bin +0 -0
  196. package/android/.gradle/6.7.1/executionHistory/executionHistory.lock +0 -0
  197. package/android/.gradle/6.7.1/fileChanges/last-build.bin +0 -0
  198. package/android/.gradle/6.7.1/fileHashes/fileHashes.bin +0 -0
  199. package/android/.gradle/6.7.1/fileHashes/fileHashes.lock +0 -0
  200. package/android/.gradle/6.7.1/gc.properties +0 -0
  201. package/android/.gradle/6.9/executionHistory/executionHistory.bin +0 -0
  202. package/android/.gradle/6.9/executionHistory/executionHistory.lock +0 -0
  203. package/android/.gradle/6.9/fileChanges/last-build.bin +0 -0
  204. package/android/.gradle/6.9/fileHashes/fileHashes.bin +0 -0
  205. package/android/.gradle/6.9/fileHashes/fileHashes.lock +0 -0
  206. package/android/.gradle/6.9/gc.properties +0 -0
  207. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  208. package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
  209. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  210. package/android/.gradle/checksums/checksums.lock +0 -0
  211. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  212. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  213. package/android/.gradle/configuration-cache/gc.properties +0 -0
  214. package/android/.gradle/vcs-1/gc.properties +0 -0
@@ -16,8 +16,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
16
16
  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; }
17
17
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
18
18
  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); }
19
- let hmsPeersCache;
20
- exports.hmsPeersCache = hmsPeersCache;
19
+ let hmsPeersCache = exports.hmsPeersCache = void 0;
21
20
  const getHmsPeersCache = () => {
22
21
  return hmsPeersCache;
23
22
  };
@@ -174,6 +173,11 @@ class HMSPeersCache {
174
173
  updatedObj.name = data.name;
175
174
  break;
176
175
  }
176
+ case _HMSPeerUpdate.HMSPeerUpdate.HAND_RAISED_CHANGED:
177
+ {
178
+ updatedObj.isHandRaised = data.isHandRaised;
179
+ break;
180
+ }
177
181
  default:
178
182
  {
179
183
  updatedObj = {
@@ -211,6 +215,8 @@ function getPeerPropertyFromNative(id, peerId, property) {
211
215
  value = data && Array.isArray(data.auxiliaryTracks) ? _HMSEncoder.HMSEncoder.encodeHmsAuxiliaryTracks(data.auxiliaryTracks, id) : undefined;
212
216
  } else if (property === 'name') {
213
217
  value = data === null || data === void 0 ? void 0 : data[property];
218
+ } else if (property === 'isHandRaised') {
219
+ value = data ? data[property] : false;
214
220
  } else {
215
221
  value = data ? data[property] : undefined;
216
222
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_HMSManagerModule","_interopRequireDefault","require","_HMSEncoder","_HMSPeerUpdate","_HMSTrackUpdate","_HMSTrackType","_HMSTrackSource","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","hmsPeersCache","exports","getHmsPeersCache","setHmsPeersCache","_hmsPeersCache","clearHmsPeersCache","cleanup","HMSPeersCache","constructor","id","Map","getProperty","peerId","property","peerObj","_data","get","encodedValue","getPeerPropertyFromNative","set","updatePeerCache","data","updateType","HMSPeerUpdate","PEER_JOINED","PEER_LEFT","delete","updatedObj","HMSTrackUpdate","TRACK_ADDED","track","source","HMSTrackSource","REGULAR","type","HMSTrackType","VIDEO","videoTrack","isDegraded","AUDIO","audioTrack","Array","isArray","auxiliaryTracks","push","TRACK_REMOVED","filter","auxiliaryTrack","trackId","TRACK_MUTED","TRACK_UNMUTED","_updatedObj$videoTrac","oldIsDegraded","map","TRACK_DEGRADED","TRACK_RESTORED","ROLE_CHANGED","role","HMSEncoder","encodeHmsRole","NETWORK_QUALITY_UPDATED","networkQuality","encodeHMSNetworkQuality","METADATA_CHANGED","metadata","NAME_CHANGED","name","keys","length","clear","HMSManager","getPeerProperty","encodeHmsAudioTrack","encodeHmsVideoTrack","encodeHmsAuxiliaryTracks"],"sources":["HMSPeersCache.ts"],"sourcesContent":["import HMSManager from './HMSManagerModule';\n\nimport { HMSEncoder } from './HMSEncoder';\nimport { HMSPeerUpdate } from './HMSPeerUpdate';\nimport { HMSTrackUpdate } from './HMSTrackUpdate';\nimport type { HMSTrack } from './HMSTrack';\nimport { HMSTrackType } from './HMSTrackType';\nimport { HMSTrackSource } from './HMSTrackSource';\nimport type { HMSNetworkQuality } from './HMSNetworkQuality';\nimport type { HMSRole } from './HMSRole';\nimport type { HMSAudioTrack } from './HMSAudioTrack';\nimport type { HMSVideoTrack } from './HMSVideoTrack';\n\nexport let hmsPeersCache: HMSPeersCache | undefined;\n\nexport const getHmsPeersCache = () => {\n return hmsPeersCache;\n};\n\nexport const setHmsPeersCache = (_hmsPeersCache: HMSPeersCache) => {\n hmsPeersCache = _hmsPeersCache;\n};\n\nexport const clearHmsPeersCache = () => {\n if (hmsPeersCache) {\n hmsPeersCache.cleanup();\n }\n hmsPeersCache = undefined;\n};\n\nexport type HMSPeerCacheProps = {\n peerID?: string | undefined;\n name?: string | undefined;\n isLocal?: boolean | undefined;\n networkQuality?: HMSNetworkQuality | undefined;\n customerUserID?: string | undefined;\n metadata?: string | undefined;\n role?: HMSRole | undefined;\n audioTrack?: HMSAudioTrack | undefined;\n videoTrack?: HMSVideoTrack | undefined;\n auxiliaryTracks?: HMSTrack[] | undefined;\n};\n\nexport class HMSPeersCache {\n private _data = new Map<string, HMSPeerCacheProps>();\n private id: string;\n\n constructor(id: string) {\n this.id = id;\n }\n\n getProperty<T extends keyof HMSPeerCacheProps>(\n peerId: string,\n property: T\n ): HMSPeerCacheProps[T] | undefined {\n const peerObj = this._data.get(peerId);\n\n if (peerObj && property in peerObj) {\n return peerObj[property];\n }\n\n const encodedValue = getPeerPropertyFromNative(this.id, peerId, property);\n\n if (!peerObj) {\n this._data.set(peerId, { [property]: encodedValue });\n } else {\n peerObj[property] = encodedValue;\n }\n\n return encodedValue;\n }\n\n updatePeerCache(\n peerId: string,\n data: Partial<Record<keyof HMSPeerCacheProps | 'track', any>>,\n updateType?: HMSPeerUpdate | HMSTrackUpdate\n ) {\n const peerObj = this._data.get(peerId);\n\n if (updateType === HMSPeerUpdate.PEER_JOINED) {\n if (!peerObj) {\n this._data.set(peerId, data);\n }\n return;\n }\n\n if (updateType === HMSPeerUpdate.PEER_LEFT) {\n this._data.delete(peerId);\n return;\n }\n\n let updatedObj = peerObj || {};\n\n switch (updateType) {\n case HMSTrackUpdate.TRACK_ADDED: {\n const track = data.track as HMSTrack;\n\n if (track.source === HMSTrackSource.REGULAR) {\n if (track.type === HMSTrackType.VIDEO) {\n updatedObj.videoTrack = track;\n updatedObj.videoTrack.isDegraded = false;\n } else if (track.type === HMSTrackType.AUDIO) {\n updatedObj.audioTrack = track;\n }\n } else {\n if (Array.isArray(updatedObj.auxiliaryTracks)) {\n updatedObj.auxiliaryTracks.push(track);\n } else {\n updatedObj.auxiliaryTracks = [track];\n }\n }\n break;\n }\n case HMSTrackUpdate.TRACK_REMOVED: {\n const track = data.track as HMSTrack;\n\n if (track.source === HMSTrackSource.REGULAR) {\n if (track.type === HMSTrackType.VIDEO) {\n updatedObj.videoTrack = undefined;\n } else if (track.type === HMSTrackType.AUDIO) {\n updatedObj.audioTrack = undefined;\n }\n } else if (Array.isArray(updatedObj.auxiliaryTracks)) {\n updatedObj.auxiliaryTracks = updatedObj.auxiliaryTracks.filter(\n (auxiliaryTrack) => auxiliaryTrack.trackId !== track.trackId\n );\n }\n break;\n }\n case HMSTrackUpdate.TRACK_MUTED:\n case HMSTrackUpdate.TRACK_UNMUTED: {\n const track = data.track as HMSTrack;\n\n if (track.source === HMSTrackSource.REGULAR) {\n if (track.type === HMSTrackType.VIDEO) {\n const oldIsDegraded = updatedObj.videoTrack?.isDegraded || false;\n updatedObj.videoTrack = track;\n updatedObj.videoTrack.isDegraded = oldIsDegraded;\n } else if (track.type === HMSTrackType.AUDIO) {\n updatedObj.audioTrack = track;\n }\n } else {\n if (Array.isArray(updatedObj.auxiliaryTracks)) {\n updatedObj = {\n ...updatedObj,\n auxiliaryTracks: updatedObj.auxiliaryTracks.map(\n (auxiliaryTrack) =>\n auxiliaryTrack.trackId === track.trackId\n ? track\n : auxiliaryTrack\n ),\n };\n } else {\n updatedObj.auxiliaryTracks = [track];\n }\n }\n break;\n }\n case HMSTrackUpdate.TRACK_DEGRADED:\n case HMSTrackUpdate.TRACK_RESTORED: {\n const track = data.track as HMSTrack;\n\n if (track.source === HMSTrackSource.REGULAR) {\n if (track.type === HMSTrackType.VIDEO) {\n updatedObj.videoTrack = track;\n updatedObj.videoTrack.isDegraded =\n updateType === HMSTrackUpdate.TRACK_DEGRADED;\n } else if (track.type === HMSTrackType.AUDIO) {\n updatedObj.audioTrack = track;\n }\n } else {\n if (Array.isArray(updatedObj.auxiliaryTracks)) {\n updatedObj.auxiliaryTracks = updatedObj.auxiliaryTracks.map(\n (auxiliaryTrack) => {\n if (auxiliaryTrack.trackId === track.trackId) {\n return {\n ...auxiliaryTrack,\n isDegraded: updateType === HMSTrackUpdate.TRACK_DEGRADED,\n };\n }\n\n return auxiliaryTrack;\n }\n );\n } else {\n updatedObj.auxiliaryTracks = [track];\n }\n }\n break;\n }\n case HMSPeerUpdate.ROLE_CHANGED: {\n updatedObj.role = HMSEncoder.encodeHmsRole(data.role);\n break;\n }\n case HMSPeerUpdate.NETWORK_QUALITY_UPDATED: {\n updatedObj.networkQuality = HMSEncoder.encodeHMSNetworkQuality(\n data.networkQuality\n );\n break;\n }\n case HMSPeerUpdate.METADATA_CHANGED: {\n updatedObj.metadata = data.metadata;\n break;\n }\n case HMSPeerUpdate.NAME_CHANGED: {\n updatedObj.name = data.name;\n break;\n }\n default: {\n updatedObj = { ...updatedObj, ...data };\n break;\n }\n }\n\n if (Object.keys(updatedObj).length > 0) {\n this._data.set(peerId, updatedObj);\n }\n }\n\n cleanup() {\n this._data.clear();\n }\n}\n\nexport function getPeerPropertyFromNative<T extends keyof HMSPeerCacheProps>(\n id: string,\n peerId: string,\n property: T\n): HMSPeerCacheProps[T] {\n const data: any = HMSManager.getPeerProperty({\n id,\n peerId,\n property,\n });\n\n let value;\n\n if (property === 'role') {\n value = data ? HMSEncoder.encodeHmsRole(data.role) : undefined;\n } else if (property === 'networkQuality') {\n value = data\n ? HMSEncoder.encodeHMSNetworkQuality(data.networkQuality)\n : undefined;\n } else if (property === 'audioTrack') {\n value = data\n ? HMSEncoder.encodeHmsAudioTrack(data.audioTrack, id)\n : undefined;\n } else if (property === 'videoTrack') {\n value = data\n ? HMSEncoder.encodeHmsVideoTrack(data.videoTrack, id)\n : undefined;\n } else if (property === 'auxiliaryTracks') {\n value =\n data && Array.isArray(data.auxiliaryTracks)\n ? HMSEncoder.encodeHmsAuxiliaryTracks(data.auxiliaryTracks, id)\n : undefined;\n } else if (property === 'name') {\n value = data?.[property];\n } else {\n value = data ? data[property] : undefined;\n }\n\n return value;\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_HMSManagerModule","_interopRequireDefault","require","_HMSEncoder","_HMSPeerUpdate","_HMSTrackUpdate","_HMSTrackType","_HMSTrackSource","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","hmsPeersCache","exports","getHmsPeersCache","setHmsPeersCache","_hmsPeersCache","clearHmsPeersCache","cleanup","HMSPeersCache","constructor","id","Map","getProperty","peerId","property","peerObj","_data","get","encodedValue","getPeerPropertyFromNative","set","updatePeerCache","data","updateType","HMSPeerUpdate","PEER_JOINED","PEER_LEFT","delete","updatedObj","HMSTrackUpdate","TRACK_ADDED","track","source","HMSTrackSource","REGULAR","type","HMSTrackType","VIDEO","videoTrack","isDegraded","AUDIO","audioTrack","Array","isArray","auxiliaryTracks","push","TRACK_REMOVED","filter","auxiliaryTrack","trackId","TRACK_MUTED","TRACK_UNMUTED","_updatedObj$videoTrac","oldIsDegraded","map","TRACK_DEGRADED","TRACK_RESTORED","ROLE_CHANGED","role","HMSEncoder","encodeHmsRole","NETWORK_QUALITY_UPDATED","networkQuality","encodeHMSNetworkQuality","METADATA_CHANGED","metadata","NAME_CHANGED","name","HAND_RAISED_CHANGED","isHandRaised","keys","length","clear","HMSManager","getPeerProperty","encodeHmsAudioTrack","encodeHmsVideoTrack","encodeHmsAuxiliaryTracks"],"sources":["HMSPeersCache.ts"],"sourcesContent":["import HMSManager from './HMSManagerModule';\n\nimport { HMSEncoder } from './HMSEncoder';\nimport { HMSPeerUpdate } from './HMSPeerUpdate';\nimport { HMSTrackUpdate } from './HMSTrackUpdate';\nimport type { HMSTrack } from './HMSTrack';\nimport { HMSTrackType } from './HMSTrackType';\nimport { HMSTrackSource } from './HMSTrackSource';\nimport type { HMSNetworkQuality } from './HMSNetworkQuality';\nimport type { HMSRole } from './HMSRole';\nimport type { HMSAudioTrack } from './HMSAudioTrack';\nimport type { HMSVideoTrack } from './HMSVideoTrack';\n\nexport let hmsPeersCache: HMSPeersCache | undefined;\n\nexport const getHmsPeersCache = () => {\n return hmsPeersCache;\n};\n\nexport const setHmsPeersCache = (_hmsPeersCache: HMSPeersCache) => {\n hmsPeersCache = _hmsPeersCache;\n};\n\nexport const clearHmsPeersCache = () => {\n if (hmsPeersCache) {\n hmsPeersCache.cleanup();\n }\n hmsPeersCache = undefined;\n};\n\nexport type HMSPeerCacheProps = {\n peerID?: string | undefined;\n name?: string | undefined;\n isLocal?: boolean | undefined;\n networkQuality?: HMSNetworkQuality | undefined;\n customerUserID?: string | undefined;\n metadata?: string | undefined;\n role?: HMSRole | undefined;\n audioTrack?: HMSAudioTrack | undefined;\n videoTrack?: HMSVideoTrack | undefined;\n auxiliaryTracks?: HMSTrack[] | undefined;\n isHandRaised?: boolean | undefined;\n};\n\nexport class HMSPeersCache {\n private _data = new Map<string, HMSPeerCacheProps>();\n private id: string;\n\n constructor(id: string) {\n this.id = id;\n }\n\n getProperty<T extends keyof HMSPeerCacheProps>(\n peerId: string,\n property: T\n ): HMSPeerCacheProps[T] | undefined {\n const peerObj = this._data.get(peerId);\n\n if (peerObj && property in peerObj) {\n return peerObj[property];\n }\n\n const encodedValue = getPeerPropertyFromNative(this.id, peerId, property);\n\n if (!peerObj) {\n this._data.set(peerId, { [property]: encodedValue });\n } else {\n peerObj[property] = encodedValue;\n }\n\n return encodedValue;\n }\n\n updatePeerCache(\n peerId: string,\n data: Partial<Record<keyof HMSPeerCacheProps | 'track', any>>,\n updateType?: HMSPeerUpdate | HMSTrackUpdate\n ) {\n const peerObj = this._data.get(peerId);\n\n if (updateType === HMSPeerUpdate.PEER_JOINED) {\n if (!peerObj) {\n this._data.set(peerId, data);\n }\n return;\n }\n\n if (updateType === HMSPeerUpdate.PEER_LEFT) {\n this._data.delete(peerId);\n return;\n }\n\n let updatedObj = peerObj || {};\n\n switch (updateType) {\n case HMSTrackUpdate.TRACK_ADDED: {\n const track = data.track as HMSTrack;\n\n if (track.source === HMSTrackSource.REGULAR) {\n if (track.type === HMSTrackType.VIDEO) {\n updatedObj.videoTrack = track;\n updatedObj.videoTrack.isDegraded = false;\n } else if (track.type === HMSTrackType.AUDIO) {\n updatedObj.audioTrack = track;\n }\n } else {\n if (Array.isArray(updatedObj.auxiliaryTracks)) {\n updatedObj.auxiliaryTracks.push(track);\n } else {\n updatedObj.auxiliaryTracks = [track];\n }\n }\n break;\n }\n case HMSTrackUpdate.TRACK_REMOVED: {\n const track = data.track as HMSTrack;\n\n if (track.source === HMSTrackSource.REGULAR) {\n if (track.type === HMSTrackType.VIDEO) {\n updatedObj.videoTrack = undefined;\n } else if (track.type === HMSTrackType.AUDIO) {\n updatedObj.audioTrack = undefined;\n }\n } else if (Array.isArray(updatedObj.auxiliaryTracks)) {\n updatedObj.auxiliaryTracks = updatedObj.auxiliaryTracks.filter(\n (auxiliaryTrack) => auxiliaryTrack.trackId !== track.trackId\n );\n }\n break;\n }\n case HMSTrackUpdate.TRACK_MUTED:\n case HMSTrackUpdate.TRACK_UNMUTED: {\n const track = data.track as HMSTrack;\n\n if (track.source === HMSTrackSource.REGULAR) {\n if (track.type === HMSTrackType.VIDEO) {\n const oldIsDegraded = updatedObj.videoTrack?.isDegraded || false;\n updatedObj.videoTrack = track;\n updatedObj.videoTrack.isDegraded = oldIsDegraded;\n } else if (track.type === HMSTrackType.AUDIO) {\n updatedObj.audioTrack = track;\n }\n } else {\n if (Array.isArray(updatedObj.auxiliaryTracks)) {\n updatedObj = {\n ...updatedObj,\n auxiliaryTracks: updatedObj.auxiliaryTracks.map(\n (auxiliaryTrack) =>\n auxiliaryTrack.trackId === track.trackId\n ? track\n : auxiliaryTrack\n ),\n };\n } else {\n updatedObj.auxiliaryTracks = [track];\n }\n }\n break;\n }\n case HMSTrackUpdate.TRACK_DEGRADED:\n case HMSTrackUpdate.TRACK_RESTORED: {\n const track = data.track as HMSTrack;\n\n if (track.source === HMSTrackSource.REGULAR) {\n if (track.type === HMSTrackType.VIDEO) {\n updatedObj.videoTrack = track;\n updatedObj.videoTrack.isDegraded =\n updateType === HMSTrackUpdate.TRACK_DEGRADED;\n } else if (track.type === HMSTrackType.AUDIO) {\n updatedObj.audioTrack = track;\n }\n } else {\n if (Array.isArray(updatedObj.auxiliaryTracks)) {\n updatedObj.auxiliaryTracks = updatedObj.auxiliaryTracks.map(\n (auxiliaryTrack) => {\n if (auxiliaryTrack.trackId === track.trackId) {\n return {\n ...auxiliaryTrack,\n isDegraded: updateType === HMSTrackUpdate.TRACK_DEGRADED,\n };\n }\n\n return auxiliaryTrack;\n }\n );\n } else {\n updatedObj.auxiliaryTracks = [track];\n }\n }\n break;\n }\n case HMSPeerUpdate.ROLE_CHANGED: {\n updatedObj.role = HMSEncoder.encodeHmsRole(data.role);\n break;\n }\n case HMSPeerUpdate.NETWORK_QUALITY_UPDATED: {\n updatedObj.networkQuality = HMSEncoder.encodeHMSNetworkQuality(\n data.networkQuality\n );\n break;\n }\n case HMSPeerUpdate.METADATA_CHANGED: {\n updatedObj.metadata = data.metadata;\n break;\n }\n case HMSPeerUpdate.NAME_CHANGED: {\n updatedObj.name = data.name;\n break;\n }\n case HMSPeerUpdate.HAND_RAISED_CHANGED: {\n updatedObj.isHandRaised = data.isHandRaised;\n break;\n }\n default: {\n updatedObj = { ...updatedObj, ...data };\n break;\n }\n }\n\n if (Object.keys(updatedObj).length > 0) {\n this._data.set(peerId, updatedObj);\n }\n }\n\n cleanup() {\n this._data.clear();\n }\n}\n\nexport function getPeerPropertyFromNative<T extends keyof HMSPeerCacheProps>(\n id: string,\n peerId: string,\n property: T\n): HMSPeerCacheProps[T] {\n const data: any = HMSManager.getPeerProperty({\n id,\n peerId,\n property,\n });\n\n let value;\n\n if (property === 'role') {\n value = data ? HMSEncoder.encodeHmsRole(data.role) : undefined;\n } else if (property === 'networkQuality') {\n value = data\n ? HMSEncoder.encodeHMSNetworkQuality(data.networkQuality)\n : undefined;\n } else if (property === 'audioTrack') {\n value = data\n ? HMSEncoder.encodeHmsAudioTrack(data.audioTrack, id)\n : undefined;\n } else if (property === 'videoTrack') {\n value = data\n ? HMSEncoder.encodeHmsVideoTrack(data.videoTrack, id)\n : undefined;\n } else if (property === 'auxiliaryTracks') {\n value =\n data && Array.isArray(data.auxiliaryTracks)\n ? HMSEncoder.encodeHmsAuxiliaryTracks(data.auxiliaryTracks, id)\n : undefined;\n } else if (property === 'name') {\n value = data?.[property];\n } else if (property === 'isHandRaised') {\n value = data ? data[property] : false;\n } else {\n value = data ? data[property] : undefined;\n }\n\n return value;\n}\n"],"mappings":"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"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.HMSQualityLimitationReason = void 0;
7
- let HMSQualityLimitationReason = /*#__PURE__*/function (HMSQualityLimitationReason) {
7
+ let HMSQualityLimitationReason = exports.HMSQualityLimitationReason = /*#__PURE__*/function (HMSQualityLimitationReason) {
8
8
  HMSQualityLimitationReason["BANDWIDTH"] = "BANDWIDTH";
9
9
  HMSQualityLimitationReason["CPU"] = "CPU";
10
10
  HMSQualityLimitationReason["NONE"] = "NONE";
@@ -12,5 +12,4 @@ let HMSQualityLimitationReason = /*#__PURE__*/function (HMSQualityLimitationReas
12
12
  HMSQualityLimitationReason["UNKNOWN"] = "UNKNOWN";
13
13
  return HMSQualityLimitationReason;
14
14
  }({});
15
- exports.HMSQualityLimitationReason = HMSQualityLimitationReason;
16
15
  //# sourceMappingURL=HMSQualityLimitationReason.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["HMSQualityLimitationReason","exports"],"sources":["HMSQualityLimitationReason.ts"],"sourcesContent":["export enum HMSQualityLimitationReason {\n BANDWIDTH = 'BANDWIDTH',\n CPU = 'CPU',\n NONE = 'NONE',\n OTHER = 'OTHER',\n UNKNOWN = 'UNKNOWN',\n}\n"],"mappings":";;;;;;IAAYA,0BAA0B,0BAA1BA,0BAA0B;EAA1BA,0BAA0B;EAA1BA,0BAA0B;EAA1BA,0BAA0B;EAA1BA,0BAA0B;EAA1BA,0BAA0B;EAAA,OAA1BA,0BAA0B;AAAA;AAAAC,OAAA,CAAAD,0BAAA,GAAAA,0BAAA"}
1
+ {"version":3,"names":["HMSQualityLimitationReason","exports"],"sources":["HMSQualityLimitationReason.ts"],"sourcesContent":["export enum HMSQualityLimitationReason {\n BANDWIDTH = 'BANDWIDTH',\n CPU = 'CPU',\n NONE = 'NONE',\n OTHER = 'OTHER',\n UNKNOWN = 'UNKNOWN',\n}\n"],"mappings":";;;;;;IAAYA,0BAA0B,GAAAC,OAAA,CAAAD,0BAAA,0BAA1BA,0BAA0B;EAA1BA,0BAA0B;EAA1BA,0BAA0B;EAA1BA,0BAA0B;EAA1BA,0BAA0B;EAA1BA,0BAA0B;EAAA,OAA1BA,0BAA0B;AAAA"}
@@ -13,8 +13,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
13
13
  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; }
14
14
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
15
15
  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); }
16
- let hmsRoomCache;
17
- exports.hmsRoomCache = hmsRoomCache;
16
+ let hmsRoomCache = exports.hmsRoomCache = void 0;
18
17
  const getHmsRoomCache = () => hmsRoomCache;
19
18
  exports.getHmsRoomCache = getHmsRoomCache;
20
19
  const setHmsRoomCache = _hmsRoomCache => {
@@ -1 +1 @@
1
- {"version":3,"names":["_HMSManagerModule","_interopRequireDefault","require","_HMSEncoder","_HMSRoomUpdate","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","hmsRoomCache","exports","getHmsRoomCache","setHmsRoomCache","_hmsRoomCache","clearHmsRoomCache","cleanup","HMSRoomCache","constructor","id","Map","getProperty","property","_data","get","encodedValue","getHMSRoomPropertyFromNative","set","updateRoomCache","data","updateType","HMSRoomUpdate","ROOM_MUTED","ROOM_UNMUTED","SERVER_RECORDING_STATE_UPDATED","HMSEncoder","encodeServerRecordingState","serverRecordingState","RTMP_STREAMING_STATE_UPDATED","encodeRTMPStreamingState","rtmpHMSRtmpStreamingState","BROWSER_RECORDING_STATE_UPDATED","encodeBrowserRecordingState","browserRecordingState","HLS_STREAMING_STATE_UPDATED","encodeHLSStreamingState","hlsStreamingState","HLS_RECORDING_STATE_UPDATED","encodeHLSRecordingState","hlsRecordingState","ROOM_PEER_COUNT_UPDATED","encodeHMSRoomProperty","prototype","hasOwnProperty","clear","HMSManager","getRoomProperty","encodeHmsPeers","peers","encodeHmsLocalPeer","localPeer"],"sources":["HMSRoomCache.ts"],"sourcesContent":["import HMSManager from './HMSManagerModule';\n\nimport type { HMSRoom } from './HMSRoom';\nimport { HMSEncoder } from './HMSEncoder';\nimport { HMSRoomUpdate } from './HMSRoomUpdate';\n\nexport let hmsRoomCache: HMSRoomCache | undefined;\n\nexport const getHmsRoomCache = () => hmsRoomCache;\n\nexport const setHmsRoomCache = (_hmsRoomCache: HMSRoomCache) => {\n hmsRoomCache = _hmsRoomCache;\n};\n\nexport const clearHmsRoomCache = () => {\n if (hmsRoomCache) {\n hmsRoomCache.cleanup();\n }\n hmsRoomCache = undefined;\n};\n\nexport type HMSRoomCacheProps = Partial<Omit<HMSRoom, 'id'>>;\n\nexport class HMSRoomCache {\n private _data = new Map<\n keyof HMSRoomCacheProps,\n HMSRoomCacheProps[keyof HMSRoomCacheProps]\n >();\n private id: string;\n\n constructor(id: string) {\n this.id = id;\n }\n\n getProperty<T extends keyof Required<HMSRoomCacheProps>>(\n property: T\n ): Required<HMSRoomCacheProps>[T] {\n const value: any = this._data.get(property);\n\n if (value) {\n return value;\n }\n\n const encodedValue = getHMSRoomPropertyFromNative(this.id, property);\n\n this._data.set(property, encodedValue);\n\n return encodedValue;\n }\n\n updateRoomCache(\n data: Record<keyof HMSRoomCacheProps, any>,\n updateType?: HMSRoomUpdate\n ) {\n switch (updateType) {\n case HMSRoomUpdate.ROOM_MUTED:\n case HMSRoomUpdate.ROOM_UNMUTED: {\n break;\n }\n case HMSRoomUpdate.SERVER_RECORDING_STATE_UPDATED: {\n this._data.set(\n 'serverRecordingState',\n HMSEncoder.encodeServerRecordingState(data.serverRecordingState)\n );\n break;\n }\n case HMSRoomUpdate.RTMP_STREAMING_STATE_UPDATED: {\n this._data.set(\n 'rtmpHMSRtmpStreamingState',\n HMSEncoder.encodeRTMPStreamingState(data.rtmpHMSRtmpStreamingState)\n );\n break;\n }\n case HMSRoomUpdate.BROWSER_RECORDING_STATE_UPDATED: {\n this._data.set(\n 'browserRecordingState',\n HMSEncoder.encodeBrowserRecordingState(data.browserRecordingState)\n );\n break;\n }\n case HMSRoomUpdate.HLS_STREAMING_STATE_UPDATED: {\n this._data.set(\n 'hlsStreamingState',\n HMSEncoder.encodeHLSStreamingState(data.hlsStreamingState)\n );\n break;\n }\n case HMSRoomUpdate.HLS_RECORDING_STATE_UPDATED: {\n this._data.set(\n 'hlsRecordingState',\n HMSEncoder.encodeHLSRecordingState(data.hlsRecordingState)\n );\n break;\n }\n case HMSRoomUpdate.ROOM_PEER_COUNT_UPDATED: {\n this._data.set(\n 'peerCount',\n encodeHMSRoomProperty(this.id, 'peerCount', data)\n );\n break;\n }\n default: {\n for (const key in data) {\n const property = key as keyof HMSRoomCacheProps;\n\n if (Object.prototype.hasOwnProperty.call(data, property)) {\n const value = encodeHMSRoomProperty(this.id, property, data);\n this._data.set(property, value);\n }\n }\n break;\n }\n }\n }\n\n cleanup() {\n this._data.clear();\n }\n}\n\nexport function getHMSRoomPropertyFromNative<T extends keyof HMSRoomCacheProps>(\n id: string,\n property: T\n): Required<HMSRoomCacheProps>[T] {\n const data: any = HMSManager.getRoomProperty({\n id,\n property,\n });\n\n if (!data) return data;\n\n const value = encodeHMSRoomProperty(id, property, data);\n\n return value;\n}\n\nfunction encodeHMSRoomProperty<T extends keyof HMSRoomCacheProps>(\n id: string,\n property: T,\n data: Record<string, any>\n): Required<HMSRoomCacheProps>[T] {\n let value;\n\n if (property === 'peers') {\n value = HMSEncoder.encodeHmsPeers(data.peers);\n } else if (property === 'browserRecordingState') {\n value = HMSEncoder.encodeBrowserRecordingState(data.browserRecordingState);\n } else if (property === 'rtmpHMSRtmpStreamingState') {\n value = HMSEncoder.encodeRTMPStreamingState(data.rtmpHMSRtmpStreamingState);\n } else if (property === 'serverRecordingState') {\n value = HMSEncoder.encodeServerRecordingState(data.serverRecordingState);\n } else if (property === 'hlsStreamingState') {\n value = HMSEncoder.encodeHLSStreamingState(data.hlsStreamingState);\n } else if (property === 'hlsRecordingState') {\n value = HMSEncoder.encodeHLSRecordingState(data.hlsRecordingState);\n } else if (property === 'localPeer') {\n value = HMSEncoder.encodeHmsLocalPeer(data.localPeer, id);\n } else if (property === 'peerCount') {\n value = typeof data[property] === 'number' ? data[property] : null;\n } else {\n value = data[property];\n }\n\n return value;\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_HMSManagerModule","_interopRequireDefault","require","_HMSEncoder","_HMSRoomUpdate","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","hmsRoomCache","exports","getHmsRoomCache","setHmsRoomCache","_hmsRoomCache","clearHmsRoomCache","cleanup","HMSRoomCache","constructor","id","Map","getProperty","property","_data","get","encodedValue","getHMSRoomPropertyFromNative","set","updateRoomCache","data","updateType","HMSRoomUpdate","ROOM_MUTED","ROOM_UNMUTED","SERVER_RECORDING_STATE_UPDATED","HMSEncoder","encodeServerRecordingState","serverRecordingState","RTMP_STREAMING_STATE_UPDATED","encodeRTMPStreamingState","rtmpHMSRtmpStreamingState","BROWSER_RECORDING_STATE_UPDATED","encodeBrowserRecordingState","browserRecordingState","HLS_STREAMING_STATE_UPDATED","encodeHLSStreamingState","hlsStreamingState","HLS_RECORDING_STATE_UPDATED","encodeHLSRecordingState","hlsRecordingState","ROOM_PEER_COUNT_UPDATED","encodeHMSRoomProperty","prototype","hasOwnProperty","clear","HMSManager","getRoomProperty","encodeHmsPeers","peers","encodeHmsLocalPeer","localPeer"],"sources":["HMSRoomCache.ts"],"sourcesContent":["import HMSManager from './HMSManagerModule';\n\nimport type { HMSRoom } from './HMSRoom';\nimport { HMSEncoder } from './HMSEncoder';\nimport { HMSRoomUpdate } from './HMSRoomUpdate';\n\nexport let hmsRoomCache: HMSRoomCache | undefined;\n\nexport const getHmsRoomCache = () => hmsRoomCache;\n\nexport const setHmsRoomCache = (_hmsRoomCache: HMSRoomCache) => {\n hmsRoomCache = _hmsRoomCache;\n};\n\nexport const clearHmsRoomCache = () => {\n if (hmsRoomCache) {\n hmsRoomCache.cleanup();\n }\n hmsRoomCache = undefined;\n};\n\nexport type HMSRoomCacheProps = Partial<Omit<HMSRoom, 'id'>>;\n\nexport class HMSRoomCache {\n private _data = new Map<\n keyof HMSRoomCacheProps,\n HMSRoomCacheProps[keyof HMSRoomCacheProps]\n >();\n private id: string;\n\n constructor(id: string) {\n this.id = id;\n }\n\n getProperty<T extends keyof Required<HMSRoomCacheProps>>(\n property: T\n ): Required<HMSRoomCacheProps>[T] {\n const value: any = this._data.get(property);\n\n if (value) {\n return value;\n }\n\n const encodedValue = getHMSRoomPropertyFromNative(this.id, property);\n\n this._data.set(property, encodedValue);\n\n return encodedValue;\n }\n\n updateRoomCache(\n data: Record<keyof HMSRoomCacheProps, any>,\n updateType?: HMSRoomUpdate\n ) {\n switch (updateType) {\n case HMSRoomUpdate.ROOM_MUTED:\n case HMSRoomUpdate.ROOM_UNMUTED: {\n break;\n }\n case HMSRoomUpdate.SERVER_RECORDING_STATE_UPDATED: {\n this._data.set(\n 'serverRecordingState',\n HMSEncoder.encodeServerRecordingState(data.serverRecordingState)\n );\n break;\n }\n case HMSRoomUpdate.RTMP_STREAMING_STATE_UPDATED: {\n this._data.set(\n 'rtmpHMSRtmpStreamingState',\n HMSEncoder.encodeRTMPStreamingState(data.rtmpHMSRtmpStreamingState)\n );\n break;\n }\n case HMSRoomUpdate.BROWSER_RECORDING_STATE_UPDATED: {\n this._data.set(\n 'browserRecordingState',\n HMSEncoder.encodeBrowserRecordingState(data.browserRecordingState)\n );\n break;\n }\n case HMSRoomUpdate.HLS_STREAMING_STATE_UPDATED: {\n this._data.set(\n 'hlsStreamingState',\n HMSEncoder.encodeHLSStreamingState(data.hlsStreamingState)\n );\n break;\n }\n case HMSRoomUpdate.HLS_RECORDING_STATE_UPDATED: {\n this._data.set(\n 'hlsRecordingState',\n HMSEncoder.encodeHLSRecordingState(data.hlsRecordingState)\n );\n break;\n }\n case HMSRoomUpdate.ROOM_PEER_COUNT_UPDATED: {\n this._data.set(\n 'peerCount',\n encodeHMSRoomProperty(this.id, 'peerCount', data)\n );\n break;\n }\n default: {\n for (const key in data) {\n const property = key as keyof HMSRoomCacheProps;\n\n if (Object.prototype.hasOwnProperty.call(data, property)) {\n const value = encodeHMSRoomProperty(this.id, property, data);\n this._data.set(property, value);\n }\n }\n break;\n }\n }\n }\n\n cleanup() {\n this._data.clear();\n }\n}\n\nexport function getHMSRoomPropertyFromNative<T extends keyof HMSRoomCacheProps>(\n id: string,\n property: T\n): Required<HMSRoomCacheProps>[T] {\n const data: any = HMSManager.getRoomProperty({\n id,\n property,\n });\n\n if (!data) return data;\n\n const value = encodeHMSRoomProperty(id, property, data);\n\n return value;\n}\n\nfunction encodeHMSRoomProperty<T extends keyof HMSRoomCacheProps>(\n id: string,\n property: T,\n data: Record<string, any>\n): Required<HMSRoomCacheProps>[T] {\n let value;\n\n if (property === 'peers') {\n value = HMSEncoder.encodeHmsPeers(data.peers);\n } else if (property === 'browserRecordingState') {\n value = HMSEncoder.encodeBrowserRecordingState(data.browserRecordingState);\n } else if (property === 'rtmpHMSRtmpStreamingState') {\n value = HMSEncoder.encodeRTMPStreamingState(data.rtmpHMSRtmpStreamingState);\n } else if (property === 'serverRecordingState') {\n value = HMSEncoder.encodeServerRecordingState(data.serverRecordingState);\n } else if (property === 'hlsStreamingState') {\n value = HMSEncoder.encodeHLSStreamingState(data.hlsStreamingState);\n } else if (property === 'hlsRecordingState') {\n value = HMSEncoder.encodeHLSRecordingState(data.hlsRecordingState);\n } else if (property === 'localPeer') {\n value = HMSEncoder.encodeHmsLocalPeer(data.localPeer, id);\n } else if (property === 'peerCount') {\n value = typeof data[property] === 'number' ? data[property] : null;\n } else {\n value = data[property];\n }\n\n return value;\n}\n"],"mappings":"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"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.HMSRoomUpdate = void 0;
7
- let HMSRoomUpdate = /*#__PURE__*/function (HMSRoomUpdate) {
7
+ let HMSRoomUpdate = exports.HMSRoomUpdate = /*#__PURE__*/function (HMSRoomUpdate) {
8
8
  HMSRoomUpdate["ROOM_MUTED"] = "ROOM_MUTED";
9
9
  HMSRoomUpdate["ROOM_UNMUTED"] = "ROOM_UNMUTED";
10
10
  HMSRoomUpdate["SERVER_RECORDING_STATE_UPDATED"] = "SERVER_RECORDING_STATE_UPDATED";
@@ -15,5 +15,4 @@ let HMSRoomUpdate = /*#__PURE__*/function (HMSRoomUpdate) {
15
15
  HMSRoomUpdate["ROOM_PEER_COUNT_UPDATED"] = "ROOM_PEER_COUNT_UPDATED";
16
16
  return HMSRoomUpdate;
17
17
  }({});
18
- exports.HMSRoomUpdate = HMSRoomUpdate;
19
18
  //# sourceMappingURL=HMSRoomUpdate.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["HMSRoomUpdate","exports"],"sources":["HMSRoomUpdate.ts"],"sourcesContent":["export enum HMSRoomUpdate {\n ROOM_MUTED = 'ROOM_MUTED',\n ROOM_UNMUTED = 'ROOM_UNMUTED',\n SERVER_RECORDING_STATE_UPDATED = 'SERVER_RECORDING_STATE_UPDATED',\n RTMP_STREAMING_STATE_UPDATED = 'RTMP_STREAMING_STATE_UPDATED',\n BROWSER_RECORDING_STATE_UPDATED = 'BROWSER_RECORDING_STATE_UPDATED',\n HLS_STREAMING_STATE_UPDATED = 'HLS_STREAMING_STATE_UPDATED',\n HLS_RECORDING_STATE_UPDATED = 'HLS_RECORDING_STATE_UPDATED',\n ROOM_PEER_COUNT_UPDATED = 'ROOM_PEER_COUNT_UPDATED',\n}\n"],"mappings":";;;;;;IAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAAAC,OAAA,CAAAD,aAAA,GAAAA,aAAA"}
1
+ {"version":3,"names":["HMSRoomUpdate","exports"],"sources":["HMSRoomUpdate.ts"],"sourcesContent":["export enum HMSRoomUpdate {\n ROOM_MUTED = 'ROOM_MUTED',\n ROOM_UNMUTED = 'ROOM_UNMUTED',\n SERVER_RECORDING_STATE_UPDATED = 'SERVER_RECORDING_STATE_UPDATED',\n RTMP_STREAMING_STATE_UPDATED = 'RTMP_STREAMING_STATE_UPDATED',\n BROWSER_RECORDING_STATE_UPDATED = 'BROWSER_RECORDING_STATE_UPDATED',\n HLS_STREAMING_STATE_UPDATED = 'HLS_STREAMING_STATE_UPDATED',\n HLS_RECORDING_STATE_UPDATED = 'HLS_RECORDING_STATE_UPDATED',\n ROOM_PEER_COUNT_UPDATED = 'ROOM_PEER_COUNT_UPDATED',\n}\n"],"mappings":";;;;;;IAAYA,aAAa,GAAAC,OAAA,CAAAD,aAAA,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA"}
@@ -19,12 +19,11 @@ var _HMSPeersCache = require("./HMSPeersCache");
19
19
  var _HMSRoomCache = require("./HMSRoomCache");
20
20
  var _HMSPeerUpdate = require("./HMSPeerUpdate");
21
21
  var _HMSSessionStore = require("./HMSSessionStore");
22
+ var _HMSPeerListIterator = require("./HMSPeerListIterator");
22
23
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
24
  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; }
24
25
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
25
26
  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); }
26
- // TODO: Rename to HMSPIPConfig & to be moved to a separate file
27
-
28
27
  const ReactNativeVersion = require('react-native/Libraries/Core/ReactNativeVersion');
29
28
  let HmsSdk;
30
29
  class HMSSDK {
@@ -37,6 +36,7 @@ class HMSSDK {
37
36
  _defineProperty(this, "onJoinDelegate", void 0);
38
37
  _defineProperty(this, "onRoomDelegate", void 0);
39
38
  _defineProperty(this, "onPeerDelegate", void 0);
39
+ _defineProperty(this, "onPeerListUpdatedDelegate", void 0);
40
40
  _defineProperty(this, "onTrackDelegate", void 0);
41
41
  _defineProperty(this, "onErrorDelegate", void 0);
42
42
  _defineProperty(this, "onMessageDelegate", void 0);
@@ -54,6 +54,7 @@ class HMSSDK {
54
54
  _defineProperty(this, "onAudioDeviceChangedDelegate", void 0);
55
55
  _defineProperty(this, "onSessionStoreAvailableDelegate", void 0);
56
56
  _defineProperty(this, "onPIPRoomLeaveDelegate", void 0);
57
+ _defineProperty(this, "onPIPModeChangedDelegate", void 0);
57
58
  _defineProperty(this, "emitterSubscriptions", {});
58
59
  /**
59
60
  * - Calls removeListeners that in turn breaks all connections with native listeners.
@@ -1072,6 +1073,75 @@ class HMSSDK {
1072
1073
  peerID: peerId
1073
1074
  });
1074
1075
  });
1076
+ /**
1077
+ * - This function is used to raise hand for the local peer
1078
+ * @memberof HMSSDK
1079
+ */
1080
+ _defineProperty(this, "raiseLocalPeerHand", async () => {
1081
+ const data = {
1082
+ id: this.id
1083
+ };
1084
+ _HMSLogger.logger === null || _HMSLogger.logger === void 0 || _HMSLogger.logger.verbose('#Function raiseLocalPeerHand', data);
1085
+ return _HMSManagerModule.default.raiseLocalPeerHand(data);
1086
+ });
1087
+ /**
1088
+ * - This function is used to lower hand for the local peer
1089
+ * @memberof HMSSDK
1090
+ */
1091
+ _defineProperty(this, "lowerLocalPeerHand", async () => {
1092
+ const data = {
1093
+ id: this.id
1094
+ };
1095
+ _HMSLogger.logger === null || _HMSLogger.logger === void 0 || _HMSLogger.logger.verbose('#Function lowerLocalPeerHand', data);
1096
+ return _HMSManagerModule.default.lowerLocalPeerHand(data);
1097
+ });
1098
+ /**
1099
+ * - This function is used to lower hand for the remote peer
1100
+ * @param peer
1101
+ */
1102
+ _defineProperty(this, "lowerRemotePeerHand", async peer => {
1103
+ const data = {
1104
+ peerId: peer.peerID,
1105
+ id: this.id
1106
+ };
1107
+ _HMSLogger.logger === null || _HMSLogger.logger === void 0 || _HMSLogger.logger.verbose('#Function lowerRemotePeerHand', data);
1108
+ return _HMSManagerModule.default.lowerRemotePeerHand(data);
1109
+ });
1110
+ /**
1111
+ * `getPeerListIterator` method returns an instance of `HMSPeerListIterator` class
1112
+ *
1113
+ * @param options options for configuring iterator
1114
+ * @returns instance of HMSPeerListIterator class
1115
+ *
1116
+ * Example usage:
1117
+ * ```
1118
+ * const peerListIterator = hmsInstance.getPeerListIterator();
1119
+ * ```
1120
+ * OR
1121
+ * ```
1122
+ * const peerListIterator = hmsInstance.getPeerListIterator({
1123
+ * limit: 10,
1124
+ * byRoleName: 'viewer-realtime',
1125
+ * });
1126
+ * ```
1127
+ */
1128
+ _defineProperty(this, "getPeerListIterator", options => {
1129
+ _HMSLogger.logger === null || _HMSLogger.logger === void 0 || _HMSLogger.logger.verbose('#Function getPeerListIterator', {
1130
+ id: this.id,
1131
+ options
1132
+ });
1133
+ const uniqueId = Math.random().toString(16).slice(2);
1134
+ const data = _HMSManagerModule.default.getPeerListIterator({
1135
+ id: this.id,
1136
+ ...options,
1137
+ limit: (options === null || options === void 0 ? void 0 : options.limit) ?? 10,
1138
+ uniqueId
1139
+ });
1140
+ if (!data) {
1141
+ throw new Error('Unable to create PeerListIterator');
1142
+ }
1143
+ return new _HMSPeerListIterator.HMSPeerListIterator(data.uniqueId, data.totalCount);
1144
+ });
1075
1145
  /**
1076
1146
  * - This is a prototype event listener that takes action and listens for updates related to that particular action
1077
1147
  *
@@ -1133,6 +1203,18 @@ class HMSSDK {
1133
1203
  this.onPeerDelegate = callback;
1134
1204
  break;
1135
1205
  }
1206
+ case _HMSUpdateListenerActions.HMSUpdateListenerActions.ON_PEER_LIST_UPDATED:
1207
+ {
1208
+ // Checking if we already have ON_PEER_LIST_UPDATED subscription
1209
+ if (!this.emitterSubscriptions[_HMSUpdateListenerActions.HMSUpdateListenerActions.ON_PEER_LIST_UPDATED]) {
1210
+ // Adding ON_PEER_LIST_UPDATED native listener
1211
+ const peerListUpdatedSubscription = _HMSNativeEventListener.default.addListener(this.id, _HMSUpdateListenerActions.HMSUpdateListenerActions.ON_PEER_LIST_UPDATED, this.onPeerListUpdatedListener);
1212
+ this.emitterSubscriptions[_HMSUpdateListenerActions.HMSUpdateListenerActions.ON_PEER_LIST_UPDATED] = peerListUpdatedSubscription;
1213
+ }
1214
+ // Adding App Delegate listener
1215
+ this.onPeerListUpdatedDelegate = callback;
1216
+ break;
1217
+ }
1136
1218
  case _HMSUpdateListenerActions.HMSUpdateListenerActions.ON_TRACK_UPDATE:
1137
1219
  {
1138
1220
  // Checking if we already have ON_TRACK_UPDATE subscription
@@ -1339,6 +1421,19 @@ class HMSSDK {
1339
1421
  }
1340
1422
  break;
1341
1423
  }
1424
+ case _HMSPIPListenerActions.HMSPIPListenerActions.ON_PIP_MODE_CHANGED:
1425
+ {
1426
+ if (_reactNative.Platform.OS === 'android') {
1427
+ // Checking if we already have ON_PIP_MODE_CHANGED subscription
1428
+ if (!this.emitterSubscriptions[_HMSPIPListenerActions.HMSPIPListenerActions.ON_PIP_MODE_CHANGED]) {
1429
+ const pipModeChangedSubscription = _HMSNativeEventListener.default.addListener(this.id, _HMSPIPListenerActions.HMSPIPListenerActions.ON_PIP_MODE_CHANGED, this.onPIPModeChangedListener);
1430
+ this.emitterSubscriptions[_HMSPIPListenerActions.HMSPIPListenerActions.ON_PIP_MODE_CHANGED] = pipModeChangedSubscription;
1431
+ }
1432
+ // Adding PIP mode changed Delegate listener
1433
+ this.onPIPModeChangedDelegate = callback;
1434
+ }
1435
+ break;
1436
+ }
1342
1437
  default:
1343
1438
  }
1344
1439
  });
@@ -1609,6 +1704,20 @@ class HMSSDK {
1609
1704
  }
1610
1705
  break;
1611
1706
  }
1707
+ case _HMSPIPListenerActions.HMSPIPListenerActions.ON_PIP_MODE_CHANGED:
1708
+ {
1709
+ if (_reactNative.Platform.OS === 'android') {
1710
+ const subscription = this.emitterSubscriptions[_HMSPIPListenerActions.HMSPIPListenerActions.ON_PIP_MODE_CHANGED];
1711
+ // Removing ON_PIP_MODE_CHANGED native listener
1712
+ if (subscription) {
1713
+ subscription.remove();
1714
+ this.emitterSubscriptions[_HMSPIPListenerActions.HMSPIPListenerActions.ON_PIP_MODE_CHANGED] = undefined;
1715
+ }
1716
+ // Removing App Delegate listener
1717
+ this.onPIPModeChangedDelegate = null;
1718
+ }
1719
+ break;
1720
+ }
1612
1721
  default:
1613
1722
  }
1614
1723
  });
@@ -1709,7 +1818,6 @@ class HMSSDK {
1709
1818
  }
1710
1819
  });
1711
1820
  _defineProperty(this, "onPeerListener", peerData => {
1712
- var _getHmsPeersCache;
1713
1821
  const data = {
1714
1822
  peer: peerData,
1715
1823
  type: null
@@ -1723,7 +1831,15 @@ class HMSSDK {
1723
1831
  }
1724
1832
  const peer = _HMSEncoder.HMSEncoder.encodeHmsPeer(data.peer);
1725
1833
  const type = _HMSEncoder.HMSEncoder.encodeHmsPeerUpdate(data.type) || data.type;
1726
- (_getHmsPeersCache = (0, _HMSPeersCache.getHmsPeersCache)()) === null || _getHmsPeersCache === void 0 || _getHmsPeersCache.updatePeerCache(data.peer.peerID, data.peer, type);
1834
+ if (type === _HMSPeerUpdate.HMSPeerUpdate.PEER_LEFT) {
1835
+ this.sendPeerUpdateWhenPeerLeaves(data, peer, type);
1836
+ } else {
1837
+ var _getHmsPeersCache;
1838
+ (_getHmsPeersCache = (0, _HMSPeersCache.getHmsPeersCache)()) === null || _getHmsPeersCache === void 0 || _getHmsPeersCache.updatePeerCache(data.peer.peerID, data.peer, type);
1839
+ this.sendPeerUpdate(peer, type);
1840
+ }
1841
+ });
1842
+ _defineProperty(this, "sendPeerUpdate", (peer, type) => {
1727
1843
  if (this.onPeerDelegate) {
1728
1844
  _HMSLogger.logger === null || _HMSLogger.logger === void 0 || _HMSLogger.logger.verbose('#Listener ON_PEER_LISTENER_CALL', {
1729
1845
  peer,
@@ -1735,15 +1851,37 @@ class HMSSDK {
1735
1851
  });
1736
1852
  }
1737
1853
  });
1738
- _defineProperty(this, "onTrackListener", data => {
1854
+ _defineProperty(this, "sendPeerUpdateWhenPeerLeaves", (data, peer, type) => {
1739
1855
  var _getHmsPeersCache2;
1856
+ this.sendPeerUpdate(peer, type);
1857
+ (_getHmsPeersCache2 = (0, _HMSPeersCache.getHmsPeersCache)()) === null || _getHmsPeersCache2 === void 0 || _getHmsPeersCache2.updatePeerCache(data.peer.peerID, data.peer, type);
1858
+ });
1859
+ _defineProperty(this, "onPeerListUpdatedListener", data => {
1860
+ if (data.id !== this.id) {
1861
+ return;
1862
+ }
1863
+ const addedPeers = _HMSEncoder.HMSEncoder.encodeHmsPeers(data.addedPeers);
1864
+ const removedPeers = _HMSEncoder.HMSEncoder.encodeHmsPeers(data.removedPeers);
1865
+ if (this.onPeerListUpdatedDelegate) {
1866
+ _HMSLogger.logger === null || _HMSLogger.logger === void 0 || _HMSLogger.logger.verbose('#Listener ON_PEER_LIST_UPDATED_LISTENER_CALL', {
1867
+ totalAddedPeers: addedPeers.length,
1868
+ totalRemovedPeers: removedPeers.length
1869
+ });
1870
+ this.onPeerListUpdatedDelegate({
1871
+ addedPeers,
1872
+ removedPeers
1873
+ });
1874
+ }
1875
+ });
1876
+ _defineProperty(this, "onTrackListener", data => {
1877
+ var _getHmsPeersCache3;
1740
1878
  if (data.id !== this.id) {
1741
1879
  return;
1742
1880
  }
1743
1881
  const track = _HMSEncoder.HMSEncoder.encodeHmsTrack(data.track, this.id);
1744
1882
  const peer = _HMSEncoder.HMSEncoder.encodeHmsPeer(data.peer);
1745
1883
  const type = data.type;
1746
- (_getHmsPeersCache2 = (0, _HMSPeersCache.getHmsPeersCache)()) === null || _getHmsPeersCache2 === void 0 || _getHmsPeersCache2.updatePeerCache(data.peer.peerID, {
1884
+ (_getHmsPeersCache3 = (0, _HMSPeersCache.getHmsPeersCache)()) === null || _getHmsPeersCache3 === void 0 || _getHmsPeersCache3.updatePeerCache(data.peer.peerID, {
1747
1885
  track
1748
1886
  }, data.type);
1749
1887
  if (this.muteStatus && (data === null || data === void 0 ? void 0 : data.type) === 'TRACK_ADDED' && track.type === _HMSTrackType.HMSTrackType.AUDIO) {
@@ -1991,6 +2129,12 @@ class HMSSDK {
1991
2129
  });
1992
2130
  }
1993
2131
  });
2132
+ _defineProperty(this, "onPIPModeChangedListener", data => {
2133
+ if (this.onPIPModeChangedDelegate) {
2134
+ _HMSLogger.logger === null || _HMSLogger.logger === void 0 || _HMSLogger.logger.verbose('#Listener onPIPModeChanged_CALL', data);
2135
+ this.onPIPModeChangedDelegate(data);
2136
+ }
2137
+ });
1994
2138
  /**
1995
2139
  * - Updates the logger for this instance of HMSSDK
1996
2140
  * @param {HMSLogger} hmsLogger
@@ -2049,8 +2193,8 @@ class HMSSDK {
2049
2193
  id: this.id
2050
2194
  });
2051
2195
  }
2052
- async enablePipMode(data) {
2053
- return _HMSManagerModule.default.handlePipActions('enablePipMode', {
2196
+ async enterPipMode(data) {
2197
+ return _HMSManagerModule.default.handlePipActions('enterPipMode', {
2054
2198
  ...data,
2055
2199
  id: this.id
2056
2200
  });