@100mslive/react-native-hms 1.6.1 → 1.7.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 (216) hide show
  1. package/android/build.gradle +15 -7
  2. package/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +14 -15
  3. package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayer.kt +248 -0
  4. package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayerManager.kt +101 -0
  5. package/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt +10 -5
  6. package/android/src/main/java/com/reactnativehmssdk/HMSManager.kt +0 -14
  7. package/android/src/main/java/com/reactnativehmssdk/HMSRNSDK.kt +90 -106
  8. package/android/src/main/java/com/reactnativehmssdk/HmssdkPackage.kt +1 -1
  9. package/android/src/main/res/layout/player_view.xml +9 -0
  10. package/ios/HMSDecoder.swift +4 -4
  11. package/ios/HMSHLSPlayerManager.m +22 -0
  12. package/ios/HMSHLSPlayerManager.swift +368 -0
  13. package/ios/HMSManager.m +1 -2
  14. package/ios/HMSManager.swift +22 -16
  15. package/ios/HMSRNSDK.swift +34 -85
  16. package/lib/commonjs/classes/HMSEncoder.js +12 -4
  17. package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
  18. package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
  19. package/lib/commonjs/classes/HMSMessage.js +2 -1
  20. package/lib/commonjs/classes/HMSMessage.js.map +1 -1
  21. package/lib/commonjs/classes/HMSPeer.js +55 -20
  22. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  23. package/lib/commonjs/classes/HMSPeerUpdate.js +1 -1
  24. package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
  25. package/lib/commonjs/classes/HMSPeersCache.js +30 -38
  26. package/lib/commonjs/classes/HMSPeersCache.js.map +1 -1
  27. package/lib/commonjs/classes/HMSRTMPConfig.js.map +1 -1
  28. package/lib/commonjs/classes/HMSRemotePeer.js.map +1 -1
  29. package/lib/commonjs/classes/HMSSDK.js +36 -33
  30. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  31. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js +147 -0
  32. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -0
  33. package/lib/commonjs/components/HMSHLSPlayer/RCTHMSHLSPlayer.js +12 -0
  34. package/lib/commonjs/components/HMSHLSPlayer/RCTHMSHLSPlayer.js.map +1 -0
  35. package/lib/commonjs/components/HMSHLSPlayer/hooks.js +71 -0
  36. package/lib/commonjs/components/HMSHLSPlayer/hooks.js.map +1 -0
  37. package/lib/commonjs/components/HMSHLSPlayer/index.js +63 -0
  38. package/lib/commonjs/components/HMSHLSPlayer/index.js.map +1 -0
  39. package/lib/commonjs/index.js +38 -0
  40. package/lib/commonjs/index.js.map +1 -1
  41. package/lib/commonjs/stores/hls-player-playback-slice.js +23 -0
  42. package/lib/commonjs/stores/hls-player-playback-slice.js.map +1 -0
  43. package/lib/commonjs/stores/hls-player-stats-store.js +36 -0
  44. package/lib/commonjs/stores/hls-player-stats-store.js.map +1 -0
  45. package/lib/commonjs/stores/hms-store.js +16 -0
  46. package/lib/commonjs/stores/hms-store.js.map +1 -0
  47. package/lib/commonjs/stores/types.js +6 -0
  48. package/lib/commonjs/stores/types.js.map +1 -0
  49. package/lib/commonjs/types.js +36 -0
  50. package/lib/commonjs/types.js.map +1 -0
  51. package/lib/module/classes/HMSEncoder.js +12 -4
  52. package/lib/module/classes/HMSEncoder.js.map +1 -1
  53. package/lib/module/classes/HMSLocalPeer.js.map +1 -1
  54. package/lib/module/classes/HMSMessage.js +2 -1
  55. package/lib/module/classes/HMSMessage.js.map +1 -1
  56. package/lib/module/classes/HMSPeer.js +55 -20
  57. package/lib/module/classes/HMSPeer.js.map +1 -1
  58. package/lib/module/classes/HMSPeerUpdate.js +1 -1
  59. package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
  60. package/lib/module/classes/HMSPeersCache.js +30 -38
  61. package/lib/module/classes/HMSPeersCache.js.map +1 -1
  62. package/lib/module/classes/HMSRTMPConfig.js.map +1 -1
  63. package/lib/module/classes/HMSRemotePeer.js.map +1 -1
  64. package/lib/module/classes/HMSSDK.js +36 -33
  65. package/lib/module/classes/HMSSDK.js.map +1 -1
  66. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js +138 -0
  67. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -0
  68. package/lib/module/components/HMSHLSPlayer/RCTHMSHLSPlayer.js +4 -0
  69. package/lib/module/components/HMSHLSPlayer/RCTHMSHLSPlayer.js.map +1 -0
  70. package/lib/module/components/HMSHLSPlayer/hooks.js +56 -0
  71. package/lib/module/components/HMSHLSPlayer/hooks.js.map +1 -0
  72. package/lib/module/components/HMSHLSPlayer/index.js +3 -0
  73. package/lib/module/components/HMSHLSPlayer/index.js.map +1 -0
  74. package/lib/module/index.js +7 -0
  75. package/lib/module/index.js.map +1 -1
  76. package/lib/module/stores/hls-player-playback-slice.js +16 -0
  77. package/lib/module/stores/hls-player-playback-slice.js.map +1 -0
  78. package/lib/module/stores/hls-player-stats-store.js +29 -0
  79. package/lib/module/stores/hls-player-stats-store.js.map +1 -0
  80. package/lib/module/stores/hms-store.js +9 -0
  81. package/lib/module/stores/hms-store.js.map +1 -0
  82. package/lib/module/stores/types.js +2 -0
  83. package/lib/module/stores/types.js.map +1 -0
  84. package/lib/module/types.js +32 -0
  85. package/lib/module/types.js.map +1 -0
  86. package/lib/typescript/classes/HMSEncoder.d.ts +1 -0
  87. package/lib/typescript/classes/HMSLocalPeer.d.ts +0 -1
  88. package/lib/typescript/classes/HMSMessage.d.ts +2 -0
  89. package/lib/typescript/classes/HMSPeer.d.ts +10 -5
  90. package/lib/typescript/classes/HMSPeersCache.d.ts +17 -2
  91. package/lib/typescript/classes/HMSRTMPConfig.d.ts +2 -2
  92. package/lib/typescript/classes/HMSRemotePeer.d.ts +0 -1
  93. package/lib/typescript/classes/HMSSDK.d.ts +12 -17
  94. package/lib/typescript/components/HMSHLSPlayer/HMSHLSPlayer.d.ts +21 -0
  95. package/lib/typescript/components/HMSHLSPlayer/RCTHMSHLSPlayer.d.ts +19 -0
  96. package/lib/typescript/components/HMSHLSPlayer/hooks.d.ts +17 -0
  97. package/lib/typescript/components/HMSHLSPlayer/index.d.ts +2 -0
  98. package/lib/typescript/index.d.ts +3 -0
  99. package/lib/typescript/stores/hls-player-playback-slice.d.ts +5 -0
  100. package/lib/typescript/stores/hls-player-stats-store.d.ts +9 -0
  101. package/lib/typescript/stores/hms-store.d.ts +9 -0
  102. package/lib/typescript/stores/types.d.ts +25 -0
  103. package/lib/typescript/types.d.ts +63 -0
  104. package/package.json +10 -5
  105. package/react-native-hms.podspec +1 -0
  106. package/sdk-versions.json +3 -2
  107. package/src/classes/HMSEncoder.ts +15 -3
  108. package/src/classes/HMSLocalPeer.ts +0 -1
  109. package/src/classes/HMSMessage.ts +3 -1
  110. package/src/classes/HMSPeer.ts +96 -48
  111. package/src/classes/HMSPeerUpdate.ts +4 -4
  112. package/src/classes/HMSPeersCache.ts +53 -40
  113. package/src/classes/HMSRTMPConfig.ts +2 -2
  114. package/src/classes/HMSRemotePeer.ts +0 -1
  115. package/src/classes/HMSSDK.tsx +59 -47
  116. package/src/components/HMSHLSPlayer/HMSHLSPlayer.tsx +235 -0
  117. package/src/components/HMSHLSPlayer/RCTHMSHLSPlayer.ts +38 -0
  118. package/src/components/HMSHLSPlayer/hooks.ts +100 -0
  119. package/src/components/HMSHLSPlayer/index.ts +9 -0
  120. package/src/index.ts +8 -0
  121. package/src/stores/hls-player-playback-slice.ts +25 -0
  122. package/src/stores/hls-player-stats-store.ts +37 -0
  123. package/src/stores/hms-store.ts +11 -0
  124. package/src/stores/types.ts +49 -0
  125. package/src/types.ts +119 -0
  126. package/android/.gradle/6.9/executionHistory/executionHistory.lock +0 -0
  127. package/android/.gradle/6.9/fileChanges/last-build.bin +0 -0
  128. package/android/.gradle/6.9/fileHashes/fileHashes.bin +0 -0
  129. package/android/.gradle/6.9/fileHashes/fileHashes.lock +0 -0
  130. package/android/.gradle/6.9/gc.properties +0 -0
  131. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  132. package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
  133. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  134. package/android/.gradle/checksums/checksums.lock +0 -0
  135. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  136. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  137. package/android/.gradle/vcs-1/gc.properties +0 -0
  138. package/android/.idea/compiler.xml +0 -6
  139. package/android/.idea/gradle.xml +0 -18
  140. package/android/.idea/jarRepositories.xml +0 -50
  141. package/android/.idea/libraries/Gradle__androidx_activity_activity_1_2_4_aar.xml +0 -16
  142. package/android/.idea/libraries/Gradle__androidx_annotation_annotation_1_3_0.xml +0 -11
  143. package/android/.idea/libraries/Gradle__androidx_annotation_annotation_experimental_1_1_0_aar.xml +0 -13
  144. package/android/.idea/libraries/Gradle__androidx_appcompat_appcompat_1_4_1_aar.xml +0 -16
  145. package/android/.idea/libraries/Gradle__androidx_appcompat_appcompat_resources_1_4_1_aar.xml +0 -13
  146. package/android/.idea/libraries/Gradle__androidx_arch_core_core_common_2_1_0.xml +0 -11
  147. package/android/.idea/libraries/Gradle__androidx_arch_core_core_runtime_2_1_0_aar.xml +0 -13
  148. package/android/.idea/libraries/Gradle__androidx_autofill_autofill_1_1_0_aar.xml +0 -16
  149. package/android/.idea/libraries/Gradle__androidx_collection_collection_1_1_0.xml +0 -11
  150. package/android/.idea/libraries/Gradle__androidx_constraintlayout_constraintlayout_2_1_3_aar.xml +0 -13
  151. package/android/.idea/libraries/Gradle__androidx_core_core_1_7_0_aar.xml +0 -16
  152. package/android/.idea/libraries/Gradle__androidx_cursoradapter_cursoradapter_1_0_0_aar.xml +0 -13
  153. package/android/.idea/libraries/Gradle__androidx_customview_customview_1_0_0_aar.xml +0 -13
  154. package/android/.idea/libraries/Gradle__androidx_drawerlayout_drawerlayout_1_0_0_aar.xml +0 -16
  155. package/android/.idea/libraries/Gradle__androidx_fragment_fragment_1_3_6_aar.xml +0 -16
  156. package/android/.idea/libraries/Gradle__androidx_interpolator_interpolator_1_0_0_aar.xml +0 -13
  157. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_common_2_4_0.xml +0 -11
  158. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_livedata_2_0_0_aar.xml +0 -13
  159. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_livedata_core_2_3_1_aar.xml +0 -13
  160. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_runtime_2_4_0_aar.xml +0 -13
  161. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_viewmodel_2_3_1_aar.xml +0 -13
  162. package/android/.idea/libraries/Gradle__androidx_lifecycle_lifecycle_viewmodel_savedstate_2_3_1_aar.xml +0 -13
  163. package/android/.idea/libraries/Gradle__androidx_loader_loader_1_0_0_aar.xml +0 -13
  164. package/android/.idea/libraries/Gradle__androidx_savedstate_savedstate_1_1_0_aar.xml +0 -13
  165. package/android/.idea/libraries/Gradle__androidx_swiperefreshlayout_swiperefreshlayout_1_0_0_aar.xml +0 -16
  166. package/android/.idea/libraries/Gradle__androidx_tracing_tracing_1_1_0_aar.xml +0 -13
  167. package/android/.idea/libraries/Gradle__androidx_vectordrawable_vectordrawable_1_1_0_aar.xml +0 -13
  168. package/android/.idea/libraries/Gradle__androidx_vectordrawable_vectordrawable_animated_1_1_0_aar.xml +0 -13
  169. package/android/.idea/libraries/Gradle__androidx_versionedparcelable_versionedparcelable_1_1_1_aar.xml +0 -13
  170. package/android/.idea/libraries/Gradle__androidx_viewpager_viewpager_1_0_0_aar.xml +0 -13
  171. package/android/.idea/libraries/Gradle__com_facebook_fbjni_fbjni_0_3_0_aar.xml +0 -14
  172. package/android/.idea/libraries/Gradle__com_facebook_fresco_drawee_2_5_0_aar.xml +0 -15
  173. package/android/.idea/libraries/Gradle__com_facebook_fresco_fbcore_2_5_0_aar.xml +0 -18
  174. package/android/.idea/libraries/Gradle__com_facebook_fresco_fresco_2_5_0_aar.xml +0 -18
  175. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_2_5_0_aar.xml +0 -18
  176. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_base_2_5_0_aar.xml +0 -18
  177. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_native_2_5_0_aar.xml +0 -15
  178. package/android/.idea/libraries/Gradle__com_facebook_fresco_imagepipeline_okhttp3_2_5_0_aar.xml +0 -15
  179. package/android/.idea/libraries/Gradle__com_facebook_fresco_memory_type_ashmem_2_5_0_aar.xml +0 -15
  180. package/android/.idea/libraries/Gradle__com_facebook_fresco_memory_type_java_2_5_0_aar.xml +0 -15
  181. package/android/.idea/libraries/Gradle__com_facebook_fresco_memory_type_native_2_5_0_aar.xml +0 -15
  182. package/android/.idea/libraries/Gradle__com_facebook_fresco_nativeimagefilters_2_5_0_aar.xml +0 -15
  183. package/android/.idea/libraries/Gradle__com_facebook_fresco_nativeimagetranscoder_2_5_0_aar.xml +0 -15
  184. package/android/.idea/libraries/Gradle__com_facebook_fresco_ui_common_2_5_0_aar.xml +0 -15
  185. package/android/.idea/libraries/Gradle__com_facebook_infer_annotation_infer_annotation_0_18_0.xml +0 -13
  186. package/android/.idea/libraries/Gradle__com_facebook_react_react_native_0_71_0_rc_0_debug_aar.xml +0 -14
  187. package/android/.idea/libraries/Gradle__com_facebook_soloader_annotation_0_10_4.xml +0 -13
  188. package/android/.idea/libraries/Gradle__com_facebook_soloader_nativeloader_0_10_4.xml +0 -13
  189. package/android/.idea/libraries/Gradle__com_facebook_soloader_soloader_0_10_4_aar.xml +0 -14
  190. package/android/.idea/libraries/Gradle__com_facebook_yoga_proguard_annotations_1_19_0.xml +0 -13
  191. package/android/.idea/libraries/Gradle__com_github_100mslive_android_sdk_lib_2_5_1_aar.xml +0 -10
  192. package/android/.idea/libraries/Gradle__com_github_100mslive_webrtc_m104_hms_1_3_aar.xml +0 -10
  193. package/android/.idea/libraries/Gradle__com_google_code_findbugs_jsr305_3_0_2.xml +0 -13
  194. package/android/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_4_9_2.xml +0 -13
  195. package/android/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_urlconnection_4_9_2.xml +0 -13
  196. package/android/.idea/libraries/Gradle__com_squareup_okio_okio_2_9_0.xml +0 -13
  197. package/android/.idea/libraries/Gradle__javax_inject_javax_inject_1.xml +0 -13
  198. package/android/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml +0 -13
  199. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_annotations_jvm_1_3_72.xml +0 -13
  200. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_6_10.xml +0 -13
  201. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_common_1_6_10.xml +0 -13
  202. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk7_1_6_10.xml +0 -13
  203. package/android/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk8_1_6_10.xml +0 -13
  204. package/android/.idea/libraries/Gradle__org_jetbrains_kotlinx_kotlinx_coroutines_android_1_6_0.xml +0 -13
  205. package/android/.idea/libraries/Gradle__org_jetbrains_kotlinx_kotlinx_coroutines_core_jvm_1_6_0.xml +0 -13
  206. package/android/.idea/misc.xml +0 -9
  207. package/android/.idea/modules/android.androidTest.iml +0 -203
  208. package/android/.idea/modules/android.iml +0 -40
  209. package/android/.idea/modules/android.main.iml +0 -199
  210. package/android/.idea/modules/android.unitTest.iml +0 -197
  211. package/android/.idea/modules.xml +0 -11
  212. package/android/.idea/sonarlint/issuestore/3/c/3c46088b6add3088181589d8ed726652742b6221 +0 -5
  213. package/android/.idea/sonarlint/issuestore/a/8/a8c9f5ddd88723818e51ae3cf8693d02355a8691 +0 -0
  214. package/android/.idea/sonarlint/issuestore/f/0/f07866736216be0ee2aba49e392191aeae700a35 +0 -0
  215. package/android/.idea/sonarlint/issuestore/index.pb +0 -7
  216. package/android/.idea/vcs.xml +0 -6
@@ -1 +1 @@
1
- {"version":3,"names":["getHmsPeersCache","getPeerPropertyFromNative","HMSConstants","HMSPeer","constructor","params","_defineProperty","peerID","customerDescription","name","hmsPeersCache","getProperty","DEFAULT_SDK_ID","isLocal","networkQuality","customerUserID","metadata","role","audioTrack","videoTrack","auxiliaryTracks"],"sources":["HMSPeer.ts"],"sourcesContent":["import type { HMSAudioTrack } from './HMSAudioTrack';\nimport type { HMSNetworkQuality } from './HMSNetworkQuality';\nimport type { HMSRole } from './HMSRole';\nimport type { HMSTrack } from './HMSTrack';\nimport type { HMSVideoTrack } from './HMSVideoTrack';\nimport { getHmsPeersCache, getPeerPropertyFromNative } from './HMSPeersCache';\nimport { HMSConstants } from './HMSConstants';\n\nexport class HMSPeer {\n peerID: string;\n /**\n * @deprecated customerDescription property has been deprecated in favor of metadata property\n */\n customerDescription?: string;\n\n constructor(params: { peerID: string; customerDescription?: string }) {\n this.peerID = params.peerID;\n this.customerDescription = params.customerDescription;\n }\n\n get name(): string {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'name') || '';\n }\n\n return (\n getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'name'\n ) || ''\n );\n }\n\n get isLocal(): boolean | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'isLocal');\n }\n\n return getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'isLocal'\n );\n }\n\n get networkQuality(): HMSNetworkQuality | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'networkQuality');\n }\n\n return getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'networkQuality'\n );\n }\n\n get customerUserID(): string | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'customerUserID');\n }\n\n return getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'customerUserID'\n );\n }\n\n get metadata(): string | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'metadata');\n }\n\n return getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'metadata'\n );\n }\n\n get role(): HMSRole | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'role');\n }\n\n return getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'role'\n );\n }\n\n get audioTrack(): HMSAudioTrack | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'audioTrack');\n }\n\n return getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'audioTrack'\n );\n }\n\n get videoTrack(): HMSVideoTrack | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'videoTrack');\n }\n\n return getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'videoTrack'\n );\n }\n\n get auxiliaryTracks(): HMSTrack[] | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'auxiliaryTracks');\n }\n\n return getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'auxiliaryTracks'\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["getHmsPeersCache","getPeerPropertyFromNative","HMSConstants","HMSPeer","_updateName","value","_name","_updateIsLocal","_isLocal","_updateCustomerUserID","_customerUserID","_updateMetadata","_metadata","_updateRole","_role","constructor","params","_defineProperty","peerID","name","hmsPeersCache","nameValue","getProperty","DEFAULT_SDK_ID","isLocal","networkQuality","customerUserID","metadata","role","audioTrack","videoTrack","auxiliaryTracks"],"sources":["HMSPeer.ts"],"sourcesContent":["import type { HMSAudioTrack } from './HMSAudioTrack';\nimport type { HMSNetworkQuality } from './HMSNetworkQuality';\nimport type { HMSRole } from './HMSRole';\nimport type { HMSTrack } from './HMSTrack';\nimport type { HMSVideoTrack } from './HMSVideoTrack';\nimport { getHmsPeersCache, getPeerPropertyFromNative } from './HMSPeersCache';\nimport { HMSConstants } from './HMSConstants';\n\nexport class HMSPeer {\n peerID: string;\n private _name: string = '';\n private _isLocal: boolean | undefined;\n private _customerUserID: string | undefined;\n private _metadata: string | undefined;\n private _role: HMSRole | undefined;\n\n private _updateName(value: string) {\n // If `_name` is outdated, update it\n if (this._name !== value) {\n this._name = value;\n }\n }\n\n private _updateIsLocal(value: boolean) {\n // If `_isLocal` is outdated, update it\n if (this._isLocal !== value) {\n this._isLocal = value;\n }\n }\n\n private _updateCustomerUserID(value: string) {\n // If `_customerUserID` is outdated, update it\n if (this._customerUserID !== value) {\n this._customerUserID = value;\n }\n }\n\n private _updateMetadata(value: string) {\n // If `_metadata` is outdated, update it\n if (this._metadata !== value) {\n this._metadata = value;\n }\n }\n\n private _updateRole(value: HMSRole) {\n // If `_role` is outdated, update it\n if (this._role !== value) {\n this._role = value;\n }\n }\n\n constructor(params: { peerID: string }) {\n this.peerID = params.peerID;\n }\n\n get name(): string {\n const hmsPeersCache = getHmsPeersCache();\n\n const nameValue = hmsPeersCache\n ? hmsPeersCache.getProperty(this.peerID, 'name')\n : getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'name'\n );\n\n if (nameValue) {\n this._updateName(nameValue);\n }\n return nameValue ?? this._name;\n }\n\n get isLocal(): boolean | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n const value = hmsPeersCache\n ? hmsPeersCache.getProperty(this.peerID, 'isLocal')\n : getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'isLocal'\n );\n\n if (typeof value === 'boolean') {\n this._updateIsLocal(value);\n }\n return value ?? this._isLocal;\n }\n\n get networkQuality(): HMSNetworkQuality | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'networkQuality');\n }\n\n return getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'networkQuality'\n );\n }\n\n get customerUserID(): string | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n const value = hmsPeersCache\n ? hmsPeersCache.getProperty(this.peerID, 'customerUserID')\n : getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'customerUserID'\n );\n\n if (value) {\n this._updateCustomerUserID(value);\n }\n return value ?? this._customerUserID;\n }\n\n get metadata(): string | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n const value = hmsPeersCache\n ? hmsPeersCache.getProperty(this.peerID, 'metadata')\n : getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'metadata'\n );\n\n if (value) {\n this._updateMetadata(value);\n }\n return value ?? this._metadata;\n }\n\n get role(): HMSRole | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n const value = hmsPeersCache\n ? hmsPeersCache.getProperty(this.peerID, 'role')\n : getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'role'\n );\n\n if (value) {\n this._updateRole(value);\n }\n return value ?? this._role;\n }\n\n get audioTrack(): HMSAudioTrack | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'audioTrack');\n }\n\n return getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'audioTrack'\n );\n }\n\n get videoTrack(): HMSVideoTrack | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'videoTrack');\n }\n\n return getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'videoTrack'\n );\n }\n\n get auxiliaryTracks(): HMSTrack[] | undefined {\n const hmsPeersCache = getHmsPeersCache();\n\n if (hmsPeersCache) {\n return hmsPeersCache.getProperty(this.peerID, 'auxiliaryTracks');\n }\n\n return getPeerPropertyFromNative(\n HMSConstants.DEFAULT_SDK_ID,\n this.peerID,\n 'auxiliaryTracks'\n );\n }\n}\n"],"mappings":"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"}
@@ -7,5 +7,5 @@ export let HMSPeerUpdate = /*#__PURE__*/function (HMSPeerUpdate) {
7
7
  HMSPeerUpdate["NETWORK_QUALITY_UPDATED"] = "NETWORK_QUALITY_UPDATED";
8
8
  return HMSPeerUpdate;
9
9
  }({});
10
- export const HMSPeerUpdateOrdinals = new Map([['0', HMSPeerUpdate.PEER_JOINED], ['1', HMSPeerUpdate.PEER_LEFT], ['9', HMSPeerUpdate.ROLE_CHANGED], ['10', HMSPeerUpdate.NAME_CHANGED], ['11', HMSPeerUpdate.METADATA_CHANGED], ['12', HMSPeerUpdate.NETWORK_QUALITY_UPDATED]]);
10
+ export const HMSPeerUpdateOrdinals = new Map([['0', HMSPeerUpdate.PEER_JOINED], ['1', HMSPeerUpdate.PEER_LEFT], ['4', HMSPeerUpdate.ROLE_CHANGED], ['5', HMSPeerUpdate.NAME_CHANGED], ['6', HMSPeerUpdate.METADATA_CHANGED], ['7', HMSPeerUpdate.NETWORK_QUALITY_UPDATED]]);
11
11
  //# sourceMappingURL=HMSPeerUpdate.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["HMSPeerUpdate","HMSPeerUpdateOrdinals","Map","PEER_JOINED","PEER_LEFT","ROLE_CHANGED","NAME_CHANGED","METADATA_CHANGED","NETWORK_QUALITY_UPDATED"],"sources":["HMSPeerUpdate.ts"],"sourcesContent":["export enum HMSPeerUpdate {\n PEER_JOINED = 'PEER_JOINED',\n PEER_LEFT = 'PEER_LEFT',\n METADATA_CHANGED = 'METADATA_CHANGED',\n ROLE_CHANGED = 'ROLE_CHANGED',\n NAME_CHANGED = 'NAME_CHANGED',\n NETWORK_QUALITY_UPDATED = 'NETWORK_QUALITY_UPDATED',\n}\n\nexport const HMSPeerUpdateOrdinals = new Map([\n ['0', HMSPeerUpdate.PEER_JOINED],\n ['1', HMSPeerUpdate.PEER_LEFT],\n ['9', HMSPeerUpdate.ROLE_CHANGED],\n ['10', HMSPeerUpdate.NAME_CHANGED],\n ['11', HMSPeerUpdate.METADATA_CHANGED],\n ['12', HMSPeerUpdate.NETWORK_QUALITY_UPDATED],\n]);\n"],"mappings":"AAAA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AASzB,OAAO,MAAMC,qBAAqB,GAAG,IAAIC,GAAG,CAAC,CAC3C,CAAC,GAAG,EAAEF,aAAa,CAACG,WAAW,CAAC,EAChC,CAAC,GAAG,EAAEH,aAAa,CAACI,SAAS,CAAC,EAC9B,CAAC,GAAG,EAAEJ,aAAa,CAACK,YAAY,CAAC,EACjC,CAAC,IAAI,EAAEL,aAAa,CAACM,YAAY,CAAC,EAClC,CAAC,IAAI,EAAEN,aAAa,CAACO,gBAAgB,CAAC,EACtC,CAAC,IAAI,EAAEP,aAAa,CAACQ,uBAAuB,CAAC,CAC9C,CAAC"}
1
+ {"version":3,"names":["HMSPeerUpdate","HMSPeerUpdateOrdinals","Map","PEER_JOINED","PEER_LEFT","ROLE_CHANGED","NAME_CHANGED","METADATA_CHANGED","NETWORK_QUALITY_UPDATED"],"sources":["HMSPeerUpdate.ts"],"sourcesContent":["export enum HMSPeerUpdate {\n PEER_JOINED = 'PEER_JOINED',\n PEER_LEFT = 'PEER_LEFT',\n METADATA_CHANGED = 'METADATA_CHANGED',\n ROLE_CHANGED = 'ROLE_CHANGED',\n NAME_CHANGED = 'NAME_CHANGED',\n NETWORK_QUALITY_UPDATED = 'NETWORK_QUALITY_UPDATED',\n}\n\nexport const HMSPeerUpdateOrdinals = new Map([\n ['0', HMSPeerUpdate.PEER_JOINED],\n ['1', HMSPeerUpdate.PEER_LEFT],\n ['4', HMSPeerUpdate.ROLE_CHANGED],\n ['5', HMSPeerUpdate.NAME_CHANGED],\n ['6', HMSPeerUpdate.METADATA_CHANGED],\n ['7', HMSPeerUpdate.NETWORK_QUALITY_UPDATED],\n]);\n"],"mappings":"AAAA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AASzB,OAAO,MAAMC,qBAAqB,GAAG,IAAIC,GAAG,CAAC,CAC3C,CAAC,GAAG,EAAEF,aAAa,CAACG,WAAW,CAAC,EAChC,CAAC,GAAG,EAAEH,aAAa,CAACI,SAAS,CAAC,EAC9B,CAAC,GAAG,EAAEJ,aAAa,CAACK,YAAY,CAAC,EACjC,CAAC,GAAG,EAAEL,aAAa,CAACM,YAAY,CAAC,EACjC,CAAC,GAAG,EAAEN,aAAa,CAACO,gBAAgB,CAAC,EACrC,CAAC,GAAG,EAAEP,aAAa,CAACQ,uBAAuB,CAAC,CAC7C,CAAC"}
@@ -46,23 +46,25 @@ export class HMSPeersCache {
46
46
  }
47
47
  updatePeerCache(peerId, data, updateType) {
48
48
  const peerObj = this._data.get(peerId);
49
+ if (updateType === HMSPeerUpdate.PEER_JOINED) {
50
+ if (!peerObj) {
51
+ this._data.set(peerId, data);
52
+ }
53
+ return;
54
+ }
49
55
  if (updateType === HMSPeerUpdate.PEER_LEFT) {
50
56
  this._data.delete(peerId);
51
57
  return;
52
58
  }
53
- let updatedObj = {
54
- ...peerObj
55
- };
59
+ let updatedObj = peerObj || {};
56
60
  switch (updateType) {
57
61
  case HMSTrackUpdate.TRACK_ADDED:
58
62
  {
59
63
  const track = data.track;
60
64
  if (track.source === HMSTrackSource.REGULAR) {
61
65
  if (track.type === HMSTrackType.VIDEO) {
62
- updatedObj.videoTrack = {
63
- ...track,
64
- isDegraded: false
65
- };
66
+ updatedObj.videoTrack = track;
67
+ updatedObj.videoTrack.isDegraded = false;
66
68
  } else if (track.type === HMSTrackType.AUDIO) {
67
69
  updatedObj.audioTrack = track;
68
70
  }
@@ -85,10 +87,7 @@ export class HMSPeersCache {
85
87
  updatedObj.audioTrack = undefined;
86
88
  }
87
89
  } else if (Array.isArray(updatedObj.auxiliaryTracks)) {
88
- updatedObj = {
89
- ...updatedObj,
90
- auxiliaryTracks: updatedObj.auxiliaryTracks.filter(auxiliaryTrack => auxiliaryTrack.trackId !== track.trackId)
91
- };
90
+ updatedObj.auxiliaryTracks = updatedObj.auxiliaryTracks.filter(auxiliaryTrack => auxiliaryTrack.trackId !== track.trackId);
92
91
  }
93
92
  break;
94
93
  }
@@ -99,10 +98,9 @@ export class HMSPeersCache {
99
98
  if (track.source === HMSTrackSource.REGULAR) {
100
99
  if (track.type === HMSTrackType.VIDEO) {
101
100
  var _updatedObj$videoTrac;
102
- updatedObj.videoTrack = {
103
- ...track,
104
- isDegraded: ((_updatedObj$videoTrac = updatedObj.videoTrack) === null || _updatedObj$videoTrac === void 0 ? void 0 : _updatedObj$videoTrac.isDegraded) || false
105
- };
101
+ const oldIsDegraded = ((_updatedObj$videoTrac = updatedObj.videoTrack) === null || _updatedObj$videoTrac === void 0 ? void 0 : _updatedObj$videoTrac.isDegraded) || false;
102
+ updatedObj.videoTrack = track;
103
+ updatedObj.videoTrack.isDegraded = oldIsDegraded;
106
104
  } else if (track.type === HMSTrackType.AUDIO) {
107
105
  updatedObj.audioTrack = track;
108
106
  }
@@ -124,27 +122,22 @@ export class HMSPeersCache {
124
122
  const track = data.track;
125
123
  if (track.source === HMSTrackSource.REGULAR) {
126
124
  if (track.type === HMSTrackType.VIDEO) {
127
- updatedObj.videoTrack = {
128
- ...track,
129
- isDegraded: updateType === HMSTrackUpdate.TRACK_DEGRADED
130
- };
125
+ updatedObj.videoTrack = track;
126
+ updatedObj.videoTrack.isDegraded = updateType === HMSTrackUpdate.TRACK_DEGRADED;
131
127
  } else if (track.type === HMSTrackType.AUDIO) {
132
128
  updatedObj.audioTrack = track;
133
129
  }
134
130
  } else {
135
131
  if (Array.isArray(updatedObj.auxiliaryTracks)) {
136
- updatedObj = {
137
- ...updatedObj,
138
- auxiliaryTracks: updatedObj.auxiliaryTracks.map(auxiliaryTrack => {
139
- if (auxiliaryTrack.trackId === track.trackId) {
140
- return {
141
- ...auxiliaryTrack,
142
- isDegraded: updateType === HMSTrackUpdate.TRACK_DEGRADED
143
- };
144
- }
145
- return auxiliaryTrack;
146
- })
147
- };
132
+ updatedObj.auxiliaryTracks = updatedObj.auxiliaryTracks.map(auxiliaryTrack => {
133
+ if (auxiliaryTrack.trackId === track.trackId) {
134
+ return {
135
+ ...auxiliaryTrack,
136
+ isDegraded: updateType === HMSTrackUpdate.TRACK_DEGRADED
137
+ };
138
+ }
139
+ return auxiliaryTrack;
140
+ });
148
141
  } else {
149
142
  updatedObj.auxiliaryTracks = [track];
150
143
  }
@@ -162,14 +155,13 @@ export class HMSPeersCache {
162
155
  break;
163
156
  }
164
157
  case HMSPeerUpdate.METADATA_CHANGED:
158
+ {
159
+ updatedObj.metadata = data.metadata;
160
+ break;
161
+ }
165
162
  case HMSPeerUpdate.NAME_CHANGED:
166
- case HMSPeerUpdate.PEER_JOINED:
167
- case HMSPeerUpdate.ROLE_CHANGED:
168
163
  {
169
- updatedObj = {
170
- ...updatedObj,
171
- ...data
172
- };
164
+ updatedObj.name = data.name;
173
165
  break;
174
166
  }
175
167
  default:
@@ -207,7 +199,7 @@ export function getPeerPropertyFromNative(id, peerId, property) {
207
199
  } else if (property === 'auxiliaryTracks') {
208
200
  value = data && Array.isArray(data.auxiliaryTracks) ? HMSEncoder.encodeHmsAuxiliaryTracks(data.auxiliaryTracks, id) : undefined;
209
201
  } else if (property === 'name') {
210
- value = (data === null || data === void 0 ? void 0 : data[property]) || '';
202
+ value = data === null || data === void 0 ? void 0 : data[property];
211
203
  } else {
212
204
  value = data ? data[property] : undefined;
213
205
  }
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","HMSEncoder","HMSPeerUpdate","HMSTrackUpdate","HMSTrackType","HMSTrackSource","HMSManager","hmsPeersCache","getHmsPeersCache","setHmsPeersCache","_hmsPeersCache","clearHmsPeersCache","cleanup","undefined","HMSPeersCache","constructor","id","_defineProperty","Map","getProperty","peerId","property","peerObj","_data","get","encodedValue","getPeerPropertyFromNative","set","updatePeerCache","data","updateType","PEER_LEFT","delete","updatedObj","TRACK_ADDED","track","source","REGULAR","type","VIDEO","videoTrack","isDegraded","AUDIO","audioTrack","Array","isArray","auxiliaryTracks","push","TRACK_REMOVED","filter","auxiliaryTrack","trackId","TRACK_MUTED","TRACK_UNMUTED","_updatedObj$videoTrac","map","TRACK_DEGRADED","TRACK_RESTORED","ROLE_CHANGED","role","encodeHmsRole","NETWORK_QUALITY_UPDATED","networkQuality","encodeHMSNetworkQuality","METADATA_CHANGED","NAME_CHANGED","PEER_JOINED","Object","keys","length","clear","getPeerProperty","value","encodeHmsAudioTrack","encodeHmsVideoTrack","encodeHmsAuxiliaryTracks"],"sources":["HMSPeersCache.ts"],"sourcesContent":["import { NativeModules } from 'react-native';\nimport type { HMSPeer } from './HMSPeer';\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';\n\nconst { HMSManager } = NativeModules;\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 = Partial<\n Omit<HMSPeer, 'peerID' | 'customerDescription'>\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_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, 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 = {\n ...updatedObj,\n auxiliaryTracks: updatedObj.auxiliaryTracks.filter(\n (auxiliaryTrack) => auxiliaryTrack.trackId !== track.trackId\n ),\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 updatedObj.videoTrack = {\n ...track,\n isDegraded: updatedObj.videoTrack?.isDegraded || false,\n };\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 = {\n ...track,\n isDegraded: updateType === HMSTrackUpdate.TRACK_DEGRADED,\n };\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 if (auxiliaryTrack.trackId === track.trackId) {\n return {\n ...auxiliaryTrack,\n isDegraded: updateType === HMSTrackUpdate.TRACK_DEGRADED,\n };\n }\n\n return auxiliaryTrack;\n }\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 case HMSPeerUpdate.NAME_CHANGED:\n case HMSPeerUpdate.PEER_JOINED:\n case HMSPeerUpdate.ROLE_CHANGED: {\n updatedObj = { ...updatedObj, ...data };\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":["NativeModules","HMSEncoder","HMSPeerUpdate","HMSTrackUpdate","HMSTrackType","HMSTrackSource","HMSManager","hmsPeersCache","getHmsPeersCache","setHmsPeersCache","_hmsPeersCache","clearHmsPeersCache","cleanup","undefined","HMSPeersCache","constructor","id","_defineProperty","Map","getProperty","peerId","property","peerObj","_data","get","encodedValue","getPeerPropertyFromNative","set","updatePeerCache","data","updateType","PEER_JOINED","PEER_LEFT","delete","updatedObj","TRACK_ADDED","track","source","REGULAR","type","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","encodeHmsRole","NETWORK_QUALITY_UPDATED","networkQuality","encodeHMSNetworkQuality","METADATA_CHANGED","metadata","NAME_CHANGED","name","Object","keys","length","clear","getPeerProperty","value","encodeHmsAudioTrack","encodeHmsVideoTrack","encodeHmsAuxiliaryTracks"],"sources":["HMSPeersCache.ts"],"sourcesContent":["import { NativeModules } from 'react-native';\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\nconst { HMSManager } = NativeModules;\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 +1 @@
1
- {"version":3,"names":["HMSRTMPConfig","constructor","params","_defineProperty","meetingURL","rtmpURLs","record","resolution"],"sources":["HMSRTMPConfig.ts"],"sourcesContent":["import type { HMSRtmpVideoResolution } from './HMSRtmpVideoResolution';\n\nexport class HMSRTMPConfig {\n meetingURL: string;\n rtmpURLs?: Array<string>;\n record: boolean;\n resolution?: HMSRtmpVideoResolution;\n\n constructor(params: {\n meetingURL: string;\n rtmpURLs?: Array<string>;\n record: boolean;\n resolution?: HMSRtmpVideoResolution;\n }) {\n this.meetingURL = params.meetingURL;\n this.rtmpURLs = params.rtmpURLs;\n this.record = params.record;\n this.resolution = params.resolution;\n }\n}\n"],"mappings":";;;AAEA,OAAO,MAAMA,aAAa,CAAC;EAMzBC,WAAWA,CAACC,MAKX,EAAE;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IACD,IAAI,CAACC,UAAU,GAAGF,MAAM,CAACE,UAAU;IACnC,IAAI,CAACC,QAAQ,GAAGH,MAAM,CAACG,QAAQ;IAC/B,IAAI,CAACC,MAAM,GAAGJ,MAAM,CAACI,MAAM;IAC3B,IAAI,CAACC,UAAU,GAAGL,MAAM,CAACK,UAAU;EACrC;AACF"}
1
+ {"version":3,"names":["HMSRTMPConfig","constructor","params","_defineProperty","meetingURL","rtmpURLs","record","resolution"],"sources":["HMSRTMPConfig.ts"],"sourcesContent":["import type { HMSRtmpVideoResolution } from './HMSRtmpVideoResolution';\n\nexport class HMSRTMPConfig {\n meetingURL?: string;\n rtmpURLs?: Array<string>;\n record: boolean;\n resolution?: HMSRtmpVideoResolution;\n\n constructor(params: {\n meetingURL?: string;\n rtmpURLs?: Array<string>;\n record: boolean;\n resolution?: HMSRtmpVideoResolution;\n }) {\n this.meetingURL = params.meetingURL;\n this.rtmpURLs = params.rtmpURLs;\n this.record = params.record;\n this.resolution = params.resolution;\n }\n}\n"],"mappings":";;;AAEA,OAAO,MAAMA,aAAa,CAAC;EAMzBC,WAAWA,CAACC,MAKX,EAAE;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IACD,IAAI,CAACC,UAAU,GAAGF,MAAM,CAACE,UAAU;IACnC,IAAI,CAACC,QAAQ,GAAGH,MAAM,CAACG,QAAQ;IAC/B,IAAI,CAACC,MAAM,GAAGJ,MAAM,CAACI,MAAM;IAC3B,IAAI,CAACC,UAAU,GAAGL,MAAM,CAACK,UAAU;EACrC;AACF"}
@@ -1 +1 @@
1
- {"version":3,"names":["HMSPeer","HMSRemoteAudioTrack","HMSRemoteVideoTrack","HMSRemotePeer","constructor","params","_defineProperty","remoteAudio","remoteVideo","remoteAudioTrackData","remoteVideoTrackData"],"sources":["HMSRemotePeer.ts"],"sourcesContent":["import { HMSPeer } from './HMSPeer';\nimport { HMSRemoteAudioTrack } from './HMSRemoteAudioTrack';\nimport { HMSRemoteVideoTrack } from './HMSRemoteVideoTrack';\n\nexport class HMSRemotePeer extends HMSPeer {\n private remoteAudio?: HMSRemoteAudioTrack;\n private remoteVideo?: HMSRemoteVideoTrack;\n\n remoteAudioTrack = () => {\n return this.remoteAudio;\n };\n\n remoteVideoTrack = () => {\n return this.remoteVideo;\n };\n\n constructor(params: {\n peerID: string;\n customerDescription?: string;\n remoteAudioTrackData?: {\n trackId: string;\n source?: number | string;\n isMute?: boolean;\n trackDescription?: string;\n playbackAllowed?: boolean;\n id: string;\n };\n remoteVideoTrackData?: {\n trackId: string;\n source?: number | string;\n trackDescription?: string;\n isMute?: boolean;\n playbackAllowed?: boolean;\n id: string;\n };\n }) {\n super(params);\n if (params.remoteAudioTrackData) {\n this.remoteAudio = new HMSRemoteAudioTrack(params.remoteAudioTrackData);\n }\n\n if (params.remoteVideoTrackData) {\n this.remoteVideo = new HMSRemoteVideoTrack(params.remoteVideoTrackData);\n }\n }\n}\n"],"mappings":";;;AAAA,SAASA,OAAO,QAAQ,WAAW;AACnC,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,mBAAmB,QAAQ,uBAAuB;AAE3D,OAAO,MAAMC,aAAa,SAASH,OAAO,CAAC;EAYzCI,WAAWA,CAACC,MAmBX,EAAE;IACD,KAAK,CAACA,MAAM,CAAC;IAACC,eAAA;IAAAA,eAAA;IAAAA,eAAA,2BA5BG,MAAM;MACvB,OAAO,IAAI,CAACC,WAAW;IACzB,CAAC;IAAAD,eAAA,2BAEkB,MAAM;MACvB,OAAO,IAAI,CAACE,WAAW;IACzB,CAAC;IAuBC,IAAIH,MAAM,CAACI,oBAAoB,EAAE;MAC/B,IAAI,CAACF,WAAW,GAAG,IAAIN,mBAAmB,CAACI,MAAM,CAACI,oBAAoB,CAAC;IACzE;IAEA,IAAIJ,MAAM,CAACK,oBAAoB,EAAE;MAC/B,IAAI,CAACF,WAAW,GAAG,IAAIN,mBAAmB,CAACG,MAAM,CAACK,oBAAoB,CAAC;IACzE;EACF;AACF"}
1
+ {"version":3,"names":["HMSPeer","HMSRemoteAudioTrack","HMSRemoteVideoTrack","HMSRemotePeer","constructor","params","_defineProperty","remoteAudio","remoteVideo","remoteAudioTrackData","remoteVideoTrackData"],"sources":["HMSRemotePeer.ts"],"sourcesContent":["import { HMSPeer } from './HMSPeer';\nimport { HMSRemoteAudioTrack } from './HMSRemoteAudioTrack';\nimport { HMSRemoteVideoTrack } from './HMSRemoteVideoTrack';\n\nexport class HMSRemotePeer extends HMSPeer {\n private remoteAudio?: HMSRemoteAudioTrack;\n private remoteVideo?: HMSRemoteVideoTrack;\n\n remoteAudioTrack = () => {\n return this.remoteAudio;\n };\n\n remoteVideoTrack = () => {\n return this.remoteVideo;\n };\n\n constructor(params: {\n peerID: string;\n remoteAudioTrackData?: {\n trackId: string;\n source?: number | string;\n isMute?: boolean;\n trackDescription?: string;\n playbackAllowed?: boolean;\n id: string;\n };\n remoteVideoTrackData?: {\n trackId: string;\n source?: number | string;\n trackDescription?: string;\n isMute?: boolean;\n playbackAllowed?: boolean;\n id: string;\n };\n }) {\n super(params);\n if (params.remoteAudioTrackData) {\n this.remoteAudio = new HMSRemoteAudioTrack(params.remoteAudioTrackData);\n }\n\n if (params.remoteVideoTrackData) {\n this.remoteVideo = new HMSRemoteVideoTrack(params.remoteVideoTrackData);\n }\n }\n}\n"],"mappings":";;;AAAA,SAASA,OAAO,QAAQ,WAAW;AACnC,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,mBAAmB,QAAQ,uBAAuB;AAE3D,OAAO,MAAMC,aAAa,SAASH,OAAO,CAAC;EAYzCI,WAAWA,CAACC,MAkBX,EAAE;IACD,KAAK,CAACA,MAAM,CAAC;IAACC,eAAA;IAAAA,eAAA;IAAAA,eAAA,2BA3BG,MAAM;MACvB,OAAO,IAAI,CAACC,WAAW;IACzB,CAAC;IAAAD,eAAA,2BAEkB,MAAM;MACvB,OAAO,IAAI,CAACE,WAAW;IACzB,CAAC;IAsBC,IAAIH,MAAM,CAACI,oBAAoB,EAAE;MAC/B,IAAI,CAACF,WAAW,GAAG,IAAIN,mBAAmB,CAACI,MAAM,CAACI,oBAAoB,CAAC;IACzE;IAEA,IAAIJ,MAAM,CAACK,oBAAoB,EAAE;MAC/B,IAAI,CAACF,WAAW,GAAG,IAAIN,mBAAmB,CAACG,MAAM,CAACK,oBAAoB,CAAC;IACzE;EACF;AACF"}
@@ -233,11 +233,12 @@ export class HMSSDK {
233
233
  type: type || null,
234
234
  id: _this.id
235
235
  });
236
- return await HMSManager.sendBroadcastMessage({
236
+ const data = await HMSManager.sendBroadcastMessage({
237
237
  message,
238
238
  type: type || null,
239
239
  id: _this.id
240
240
  });
241
+ return data;
241
242
  });
242
243
  /**
243
244
  * - sendGroupMessage sends a message to specific set of roles, whoever has any of those role in room
@@ -255,12 +256,13 @@ export class HMSSDK {
255
256
  id: _this.id,
256
257
  type: type || null
257
258
  });
258
- return await HMSManager.sendGroupMessage({
259
+ const data = await HMSManager.sendGroupMessage({
259
260
  message,
260
261
  roles: HMSHelper.getRoleNames(roles),
261
262
  id: _this.id,
262
263
  type: type || null
263
264
  });
265
+ return data;
264
266
  });
265
267
  /**
266
268
  * - sendDirectMessage sends a private message to a single peer, only that peer will get the message
@@ -278,12 +280,13 @@ export class HMSSDK {
278
280
  id: _this.id,
279
281
  type: type || null
280
282
  });
281
- return await HMSManager.sendDirectMessage({
283
+ const data = await HMSManager.sendDirectMessage({
282
284
  message,
283
285
  peerId: peer.peerID,
284
286
  id: _this.id,
285
287
  type: type || null
286
288
  });
289
+ return data;
287
290
  });
288
291
  /**
289
292
  * - changeMetadata changes a specific field in localPeer which is [metadata] it is a string that can
@@ -936,6 +939,7 @@ export class HMSSDK {
936
939
  }
937
940
  });
938
941
  /**
942
+ * Android Only
939
943
  * - This wrapper function used to switch output to device other than the default, currently available only for android.
940
944
  *
941
945
  * checkout {@link https://www.100ms.live/docs/react-native/v2/features/audio-output-routing#switch-audio-focus-to-another-device} for more info
@@ -958,6 +962,17 @@ export class HMSSDK {
958
962
  return 'API currently not available for iOS';
959
963
  }
960
964
  });
965
+ _defineProperty(this, "switchAudioOutputUsingIOSUI", () => {
966
+ logger === null || logger === void 0 ? void 0 : logger.verbose('#Function switchAudioOutputUsingIOSUI', {
967
+ id: this.id
968
+ });
969
+ if (Platform.OS !== 'ios') {
970
+ throw new Error('#Function `switchAudioOutputUsingIOSUI` is only available on iOS, use `switchAudioOutput` method instead!');
971
+ }
972
+ return HMSManager.switchAudioOutputUsingIOSUI({
973
+ id: this.id
974
+ });
975
+ });
961
976
  /**
962
977
  * - This wrapper function used to change Audio Mode manually, currently available only for android.
963
978
  *
@@ -1003,36 +1018,6 @@ export class HMSSDK {
1003
1018
  return 'API currently not available for iOS';
1004
1019
  }
1005
1020
  });
1006
- /**
1007
- * @deprecated Older SessionMetaData APIs has been deprecated in favour of newer Session Store APIs.
1008
- * You can subscribe to `ON_SESSION_STORE_AVAILABLE` event to get notified when the `HMSSessionStore`
1009
- * is available and use `set` method on `HMSSessionStore` instance
1010
- * checkout {@link https://www.100ms.live/docs/react-native/v2/how-to-guides/}
1011
- */
1012
- _defineProperty(this, "setSessionMetaData", async sessionMetaData => {
1013
- logger === null || logger === void 0 ? void 0 : logger.verbose('#Function setSessionMetaData', {
1014
- id: this.id,
1015
- sessionMetaData
1016
- });
1017
- return await HMSManager.setSessionMetaData({
1018
- id: this.id,
1019
- sessionMetaData
1020
- });
1021
- });
1022
- /**
1023
- * @deprecated Older SessionMetaData APIs has been deprecated in favour of newer Session Store APIs.
1024
- * You can subscribe to `ON_SESSION_STORE_AVAILABLE` event to get notified when the `HMSSessionStore`
1025
- * is available and use `get` or `addKeyChangeListener` method on `HMSSessionStore` instance
1026
- * checkout {@link https://www.100ms.live/docs/react-native/v2/how-to-guides/}
1027
- */
1028
- _defineProperty(this, "getSessionMetaData", async () => {
1029
- logger === null || logger === void 0 ? void 0 : logger.verbose('#Function getSessionMetaData', {
1030
- id: this.id
1031
- });
1032
- return await HMSManager.getSessionMetaData({
1033
- id: this.id
1034
- });
1035
- });
1036
1021
  _defineProperty(this, "getRemoteVideoTrackFromTrackId", async trackId => {
1037
1022
  logger === null || logger === void 0 ? void 0 : logger.verbose('#Function getRemoteVideoTrackFromTrackId', {
1038
1023
  id: this.id,
@@ -1055,6 +1040,24 @@ export class HMSSDK {
1055
1040
  });
1056
1041
  return HMSEncoder.encodeHmsRemoteAudioTrack(remoteAudioTrackData, this.id);
1057
1042
  });
1043
+ _defineProperty(this, "getPeerFromPeerId", peerId => {
1044
+ logger === null || logger === void 0 ? void 0 : logger.verbose('#Function getPeerFromPeerId', {
1045
+ id: this.id,
1046
+ peerId
1047
+ });
1048
+ // Getting Peer Cache
1049
+ const peersCache = getHmsPeersCache();
1050
+
1051
+ // If Peer Cache doesn't exist, return `undefined` as we don't have Peer
1052
+ if (!peersCache) return;
1053
+ const peerRole = peersCache.getProperty(peerId, 'role');
1054
+
1055
+ // If Peer doesn't have valid Role, return `undefined` as we don't have Peer
1056
+ if (!peerRole) return;
1057
+ return HMSEncoder.encodeHmsPeer({
1058
+ peerID: peerId
1059
+ });
1060
+ });
1058
1061
  /**
1059
1062
  * - This is a prototype event listener that takes action and listens for updates related to that particular action
1060
1063
  *