@100mslive/react-native-hms 0.9.3 → 0.9.6

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 (212) hide show
  1. package/README.md +1 -2
  2. package/android/.gradle/6.9/fileHashes/fileHashes.bin +0 -0
  3. package/android/.gradle/6.9/fileHashes/fileHashes.lock +0 -0
  4. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  5. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  6. package/android/.gradle/checksums/checksums.lock +0 -0
  7. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  8. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  9. package/android/build.gradle +1 -1
  10. package/android/src/main/java/com/reactnativehmssdk/{HmsDecoder.kt → HMSDecoder.kt} +38 -34
  11. package/android/src/main/java/com/reactnativehmssdk/{HmsHelper.kt → HMSHelper.kt} +113 -4
  12. package/android/src/main/java/com/reactnativehmssdk/{HmsModule.kt → HMSManager.kt} +51 -41
  13. package/android/src/main/java/com/reactnativehmssdk/{HmsSDK.kt → HMSRNSDK.kt} +170 -157
  14. package/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt +90 -0
  15. package/android/src/main/java/com/reactnativehmssdk/{HmsView.kt → HMSView.kt} +18 -3
  16. package/android/src/main/java/com/reactnativehmssdk/HmsScreenshareActivity.kt +17 -13
  17. package/android/src/main/java/com/reactnativehmssdk/HmssdkPackage.kt +2 -2
  18. package/ios/{HmsDecoder.swift → HMSDecoder.swift} +26 -25
  19. package/ios/{HmsHelper.swift → HMSHelper.swift} +13 -7
  20. package/ios/{HmsManager.m → HMSManager.m} +2 -1
  21. package/ios/{HmsManager.swift → HMSManager.swift} +46 -38
  22. package/ios/{HmsSDK.swift → HMSRNSDK.swift} +127 -127
  23. package/ios/{HmsView.m → HMSView.m} +1 -1
  24. package/ios/{HmsView.swift → HMSView.swift} +9 -20
  25. package/lib/commonjs/classes/HMSAudioCodec.js.map +1 -1
  26. package/lib/commonjs/classes/HMSAudioSettings.js.map +1 -1
  27. package/lib/commonjs/classes/HMSAudioTrack.js.map +1 -1
  28. package/lib/commonjs/classes/HMSAudioTrackSettings.js.map +1 -1
  29. package/lib/commonjs/classes/HMSBrowserRecordingState.js.map +1 -1
  30. package/lib/commonjs/classes/HMSCameraFacing.js.map +1 -1
  31. package/lib/commonjs/classes/HMSChangeTrackStateRequest.js.map +1 -1
  32. package/lib/commonjs/classes/HMSConfig.js.map +1 -1
  33. package/lib/commonjs/classes/HMSEncoder.js +16 -7
  34. package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
  35. package/lib/commonjs/classes/HMSException.js.map +1 -1
  36. package/lib/commonjs/classes/HMSHLSConfig.js.map +1 -1
  37. package/lib/commonjs/classes/HMSHLSMeetingURLVariant.js.map +1 -1
  38. package/lib/commonjs/classes/HMSHLSRecordingConfig.js.map +1 -1
  39. package/lib/commonjs/classes/HMSHLSRecordingState.js.map +1 -1
  40. package/lib/commonjs/classes/HMSHLSStreamingState.js.map +1 -1
  41. package/lib/commonjs/classes/HMSHLSVariant.js.map +1 -1
  42. package/lib/commonjs/classes/HMSHelper.js.map +1 -1
  43. package/lib/commonjs/classes/HMSLocalAudioStats.js.map +1 -1
  44. package/lib/commonjs/classes/HMSLocalAudioTrack.js +6 -8
  45. package/lib/commonjs/classes/HMSLocalAudioTrack.js.map +1 -1
  46. package/lib/commonjs/classes/HMSLocalPeer.js.map +1 -1
  47. package/lib/commonjs/classes/HMSLocalVideoStats.js.map +1 -1
  48. package/lib/commonjs/classes/HMSLocalVideoTrack.js +6 -8
  49. package/lib/commonjs/classes/HMSLocalVideoTrack.js.map +1 -1
  50. package/lib/commonjs/classes/HMSLogLevel.js.map +1 -1
  51. package/lib/commonjs/classes/HMSLogger.js +19 -1
  52. package/lib/commonjs/classes/HMSLogger.js.map +1 -1
  53. package/lib/commonjs/classes/HMSMessage.js +1 -1
  54. package/lib/commonjs/classes/HMSMessage.js.map +1 -1
  55. package/lib/commonjs/classes/HMSMessageRecipient.js.map +1 -1
  56. package/lib/commonjs/classes/HMSMessageRecipientType.js.map +1 -1
  57. package/lib/commonjs/classes/HMSNetworkQuality.js.map +1 -1
  58. package/lib/commonjs/classes/HMSPeer.js.map +1 -1
  59. package/lib/commonjs/classes/HMSPeerUpdate.js.map +1 -1
  60. package/lib/commonjs/classes/HMSPermissions.js.map +1 -1
  61. package/lib/commonjs/classes/HMSPublishSettings.js.map +1 -1
  62. package/lib/commonjs/classes/HMSRTCStats.js.map +1 -1
  63. package/lib/commonjs/classes/HMSRTCStatsReport.js.map +1 -1
  64. package/lib/commonjs/classes/HMSRTMPConfig.js.map +1 -1
  65. package/lib/commonjs/classes/HMSRemoteAudioStats.js.map +1 -1
  66. package/lib/commonjs/classes/HMSRemoteAudioTrack.js +6 -8
  67. package/lib/commonjs/classes/HMSRemoteAudioTrack.js.map +1 -1
  68. package/lib/commonjs/classes/HMSRemotePeer.js.map +1 -1
  69. package/lib/commonjs/classes/HMSRemoteVideoStats.js.map +1 -1
  70. package/lib/commonjs/classes/HMSRemoteVideoTrack.js +6 -8
  71. package/lib/commonjs/classes/HMSRemoteVideoTrack.js.map +1 -1
  72. package/lib/commonjs/classes/HMSRole.js.map +1 -1
  73. package/lib/commonjs/classes/HMSRoleChangeRequest.js.map +1 -1
  74. package/lib/commonjs/classes/HMSRoom.js +3 -0
  75. package/lib/commonjs/classes/HMSRoom.js.map +1 -1
  76. package/lib/commonjs/classes/HMSRoomUpdate.js +1 -3
  77. package/lib/commonjs/classes/HMSRoomUpdate.js.map +1 -1
  78. package/lib/commonjs/classes/HMSRtmpStreamingState.js.map +1 -1
  79. package/lib/commonjs/classes/HMSSDK.js +118 -235
  80. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  81. package/lib/commonjs/classes/HMSServerRecordingState.js.map +1 -1
  82. package/lib/commonjs/classes/HMSSimulcastLayerSettings.js.map +1 -1
  83. package/lib/commonjs/classes/HMSSimulcastSettings.js.map +1 -1
  84. package/lib/commonjs/classes/HMSSpeaker.js.map +1 -1
  85. package/lib/commonjs/classes/HMSSpeakerUpdate.js.map +1 -1
  86. package/lib/commonjs/classes/HMSSubscribeSettings.js.map +1 -1
  87. package/lib/commonjs/classes/HMSTrack.js.map +1 -1
  88. package/lib/commonjs/classes/HMSTrackSettings.js.map +1 -1
  89. package/lib/commonjs/classes/HMSTrackSource.js +15 -0
  90. package/lib/commonjs/classes/HMSTrackSource.js.map +1 -0
  91. package/lib/commonjs/classes/HMSTrackType.js.map +1 -1
  92. package/lib/commonjs/classes/HMSTrackUpdate.js.map +1 -1
  93. package/lib/commonjs/classes/HMSUpdateListenerActions.js.map +1 -1
  94. package/lib/commonjs/classes/HMSVideoCodec.js.map +1 -1
  95. package/lib/commonjs/classes/HMSVideoResolution.js.map +1 -1
  96. package/lib/commonjs/classes/HMSVideoSettings.js.map +1 -1
  97. package/lib/commonjs/classes/HMSVideoTrack.js.map +1 -1
  98. package/lib/commonjs/classes/HMSVideoTrackSettings.js.map +1 -1
  99. package/lib/commonjs/classes/HMSVideoViewMode.js.map +1 -1
  100. package/lib/commonjs/classes/HmsView.js +69 -17
  101. package/lib/commonjs/classes/HmsView.js.map +1 -1
  102. package/lib/commonjs/index.js +14 -14
  103. package/lib/commonjs/index.js.map +1 -1
  104. package/lib/module/classes/HMSAudioCodec.js.map +1 -1
  105. package/lib/module/classes/HMSAudioSettings.js.map +1 -1
  106. package/lib/module/classes/HMSAudioTrack.js.map +1 -1
  107. package/lib/module/classes/HMSAudioTrackSettings.js.map +1 -1
  108. package/lib/module/classes/HMSBrowserRecordingState.js.map +1 -1
  109. package/lib/module/classes/HMSCameraFacing.js.map +1 -1
  110. package/lib/module/classes/HMSChangeTrackStateRequest.js.map +1 -1
  111. package/lib/module/classes/HMSConfig.js.map +1 -1
  112. package/lib/module/classes/HMSEncoder.js +6 -1
  113. package/lib/module/classes/HMSEncoder.js.map +1 -1
  114. package/lib/module/classes/HMSException.js.map +1 -1
  115. package/lib/module/classes/HMSHLSConfig.js.map +1 -1
  116. package/lib/module/classes/HMSHLSMeetingURLVariant.js.map +1 -1
  117. package/lib/module/classes/HMSHLSRecordingConfig.js.map +1 -1
  118. package/lib/module/classes/HMSHLSRecordingState.js.map +1 -1
  119. package/lib/module/classes/HMSHLSStreamingState.js.map +1 -1
  120. package/lib/module/classes/HMSHLSVariant.js.map +1 -1
  121. package/lib/module/classes/HMSHelper.js.map +1 -1
  122. package/lib/module/classes/HMSLocalAudioStats.js.map +1 -1
  123. package/lib/module/classes/HMSLocalAudioTrack.js +6 -6
  124. package/lib/module/classes/HMSLocalAudioTrack.js.map +1 -1
  125. package/lib/module/classes/HMSLocalPeer.js.map +1 -1
  126. package/lib/module/classes/HMSLocalVideoStats.js.map +1 -1
  127. package/lib/module/classes/HMSLocalVideoTrack.js +6 -6
  128. package/lib/module/classes/HMSLocalVideoTrack.js.map +1 -1
  129. package/lib/module/classes/HMSLogLevel.js.map +1 -1
  130. package/lib/module/classes/HMSLogger.js +10 -0
  131. package/lib/module/classes/HMSLogger.js.map +1 -1
  132. package/lib/module/classes/HMSMessage.js +1 -1
  133. package/lib/module/classes/HMSMessage.js.map +1 -1
  134. package/lib/module/classes/HMSMessageRecipient.js.map +1 -1
  135. package/lib/module/classes/HMSMessageRecipientType.js.map +1 -1
  136. package/lib/module/classes/HMSNetworkQuality.js.map +1 -1
  137. package/lib/module/classes/HMSPeer.js.map +1 -1
  138. package/lib/module/classes/HMSPeerUpdate.js.map +1 -1
  139. package/lib/module/classes/HMSPermissions.js.map +1 -1
  140. package/lib/module/classes/HMSPublishSettings.js.map +1 -1
  141. package/lib/module/classes/HMSRTCStats.js.map +1 -1
  142. package/lib/module/classes/HMSRTCStatsReport.js.map +1 -1
  143. package/lib/module/classes/HMSRTMPConfig.js.map +1 -1
  144. package/lib/module/classes/HMSRemoteAudioStats.js.map +1 -1
  145. package/lib/module/classes/HMSRemoteAudioTrack.js +6 -6
  146. package/lib/module/classes/HMSRemoteAudioTrack.js.map +1 -1
  147. package/lib/module/classes/HMSRemotePeer.js.map +1 -1
  148. package/lib/module/classes/HMSRemoteVideoStats.js.map +1 -1
  149. package/lib/module/classes/HMSRemoteVideoTrack.js +6 -6
  150. package/lib/module/classes/HMSRemoteVideoTrack.js.map +1 -1
  151. package/lib/module/classes/HMSRole.js.map +1 -1
  152. package/lib/module/classes/HMSRoleChangeRequest.js.map +1 -1
  153. package/lib/module/classes/HMSRoom.js +3 -0
  154. package/lib/module/classes/HMSRoom.js.map +1 -1
  155. package/lib/module/classes/HMSRoomUpdate.js +1 -3
  156. package/lib/module/classes/HMSRoomUpdate.js.map +1 -1
  157. package/lib/module/classes/HMSRtmpStreamingState.js.map +1 -1
  158. package/lib/module/classes/HMSSDK.js +118 -235
  159. package/lib/module/classes/HMSSDK.js.map +1 -1
  160. package/lib/module/classes/HMSServerRecordingState.js.map +1 -1
  161. package/lib/module/classes/HMSSimulcastLayerSettings.js.map +1 -1
  162. package/lib/module/classes/HMSSimulcastSettings.js.map +1 -1
  163. package/lib/module/classes/HMSSpeaker.js.map +1 -1
  164. package/lib/module/classes/HMSSpeakerUpdate.js.map +1 -1
  165. package/lib/module/classes/HMSSubscribeSettings.js.map +1 -1
  166. package/lib/module/classes/HMSTrack.js.map +1 -1
  167. package/lib/module/classes/HMSTrackSettings.js.map +1 -1
  168. package/lib/module/classes/HMSTrackSource.js +8 -0
  169. package/lib/module/classes/HMSTrackSource.js.map +1 -0
  170. package/lib/module/classes/HMSTrackType.js.map +1 -1
  171. package/lib/module/classes/HMSTrackUpdate.js.map +1 -1
  172. package/lib/module/classes/HMSUpdateListenerActions.js.map +1 -1
  173. package/lib/module/classes/HMSVideoCodec.js.map +1 -1
  174. package/lib/module/classes/HMSVideoResolution.js.map +1 -1
  175. package/lib/module/classes/HMSVideoSettings.js.map +1 -1
  176. package/lib/module/classes/HMSVideoTrack.js.map +1 -1
  177. package/lib/module/classes/HMSVideoTrackSettings.js.map +1 -1
  178. package/lib/module/classes/HMSVideoViewMode.js.map +1 -1
  179. package/lib/module/classes/HmsView.js +67 -17
  180. package/lib/module/classes/HmsView.js.map +1 -1
  181. package/lib/module/index.js +1 -1
  182. package/lib/module/index.js.map +1 -1
  183. package/lib/typescript/classes/HMSBrowserRecordingState.d.ts +2 -2
  184. package/lib/typescript/classes/HMSEncoder.d.ts +5 -1
  185. package/lib/typescript/classes/HMSLogger.d.ts +3 -0
  186. package/lib/typescript/classes/HMSRoom.d.ts +2 -0
  187. package/lib/typescript/classes/HMSRoomUpdate.d.ts +1 -3
  188. package/lib/typescript/classes/HMSRtmpStreamingState.d.ts +2 -2
  189. package/lib/typescript/classes/HMSSDK.d.ts +9 -11
  190. package/lib/typescript/classes/HMSServerRecordingState.d.ts +2 -2
  191. package/lib/typescript/classes/HMSTrackSource.d.ts +5 -0
  192. package/lib/typescript/classes/HmsView.d.ts +7 -7
  193. package/lib/typescript/index.d.ts +1 -1
  194. package/package.json +2 -2
  195. package/react-native-hms.podspec +2 -2
  196. package/src/classes/HMSBrowserRecordingState.ts +2 -2
  197. package/src/classes/HMSEncoder.ts +6 -9
  198. package/src/classes/HMSLocalAudioTrack.ts +6 -6
  199. package/src/classes/HMSLocalVideoTrack.ts +6 -6
  200. package/src/classes/HMSLogger.ts +11 -0
  201. package/src/classes/HMSMessage.ts +1 -1
  202. package/src/classes/HMSRemoteAudioTrack.ts +6 -6
  203. package/src/classes/HMSRemoteVideoTrack.ts +6 -6
  204. package/src/classes/HMSRoom.ts +3 -0
  205. package/src/classes/HMSRoomUpdate.ts +1 -3
  206. package/src/classes/HMSRtmpStreamingState.ts +2 -2
  207. package/src/classes/HMSSDK.tsx +57 -63
  208. package/src/classes/HMSServerRecordingState.ts +2 -2
  209. package/src/classes/HMSTrackSource.ts +5 -0
  210. package/src/classes/HmsView.tsx +102 -44
  211. package/src/index.ts +1 -1
  212. package/android/src/main/java/com/reactnativehmssdk/HmssdkViewManager.kt +0 -54
@@ -1,22 +1,26 @@
1
- import React, { useState, useEffect } from 'react';
2
- import { requireNativeComponent, StyleSheet } from 'react-native';
3
- import { HMSVideoViewMode } from '../classes/HMSVideoViewMode';
4
- const HmsViewComponent = requireNativeComponent('HmsView');
5
- export const HmsView = _ref => {
6
- let {
7
- sink,
1
+ import React, { useState, useEffect, useImperativeHandle, useRef } from 'react';
2
+ import { findNodeHandle, requireNativeComponent, StyleSheet, UIManager } from 'react-native';
3
+ import { HMSVideoViewMode } from './HMSVideoViewMode';
4
+ const HmsView = requireNativeComponent('HMSView');
5
+ let _nextRequestId = 1;
6
+
7
+ let _requestMap = new Map();
8
+
9
+ export const HmsViewComponent = /*#__PURE__*/React.forwardRef((props, ref) => {
10
+ const {
8
11
  trackId,
9
- style,
10
- id,
11
- mirror,
12
+ style = temporaryStyles.customStyle,
13
+ id = '12345',
14
+ mirror = false,
15
+ setZOrderMediaOverlay = false,
12
16
  scaleType = HMSVideoViewMode.ASPECT_FILL
13
- } = _ref;
17
+ } = props;
18
+ const hmsViewRef = useRef();
14
19
  const [tempVal, setTempVal] = useState(0);
15
20
  const data = {
16
21
  trackId,
17
- sink,
18
- id: id || null,
19
- mirror: mirror || false
22
+ id,
23
+ mirror
20
24
  };
21
25
 
22
26
  const onChange = values => {
@@ -26,16 +30,62 @@ export const HmsView = _ref => {
26
30
  }, 2000);
27
31
  };
28
32
 
33
+ const _onDataReturned = event => {
34
+ // We grab the relevant data out of our event.
35
+ let {
36
+ requestId,
37
+ result,
38
+ error
39
+ } = event.nativeEvent; // Then we get the promise we saved earlier for the given request ID.
40
+
41
+ let promise = _requestMap.get(requestId);
42
+
43
+ if (result) {
44
+ // If it was successful, we resolve the promise.
45
+ promise.resolve(result);
46
+ } else {
47
+ // Otherwise, we reject it.
48
+ promise.reject(error);
49
+ } // Finally, we clean up our request map.
50
+
51
+
52
+ _requestMap.delete(requestId);
53
+ };
54
+
55
+ const capture = async () => {
56
+ let requestId = _nextRequestId++;
57
+ let requestMap = _requestMap; // We create a promise here that will be resolved once `_onRequestDone` is
58
+ // called.
59
+
60
+ let promise = new Promise(function (resolve, reject) {
61
+ requestMap.set(requestId, {
62
+ resolve,
63
+ reject
64
+ });
65
+ });
66
+ const viewManagerConfig = UIManager.getViewManagerConfig('HMSView');
67
+ UIManager.dispatchViewManagerCommand(findNodeHandle(hmsViewRef.current), viewManagerConfig.Commands.capture, [requestId]);
68
+ return promise;
69
+ };
70
+
71
+ useImperativeHandle(ref, () => {
72
+ return {
73
+ capture
74
+ };
75
+ });
29
76
  useEffect(() => {
30
77
  setTempVal(0);
31
78
  }, [tempVal]);
32
- return /*#__PURE__*/React.createElement(HmsViewComponent, {
79
+ return /*#__PURE__*/React.createElement(HmsView, {
80
+ ref: hmsViewRef,
33
81
  onChange: onChange,
34
82
  data: data,
35
83
  style: tempVal === 0 ? style : temporaryStyles.customStyle,
36
- scaleType: scaleType
84
+ scaleType: scaleType,
85
+ setZOrderMediaOverlay: setZOrderMediaOverlay,
86
+ onDataReturned: _onDataReturned
37
87
  });
38
- };
88
+ });
39
89
  const temporaryStyles = StyleSheet.create({
40
90
  customStyle: {
41
91
  width: '100%',
@@ -1 +1 @@
1
- {"version":3,"sources":["HmsView.tsx"],"names":["React","useState","useEffect","requireNativeComponent","StyleSheet","HMSVideoViewMode","HmsViewComponent","HmsView","sink","trackId","style","id","mirror","scaleType","ASPECT_FILL","tempVal","setTempVal","data","onChange","values","console","log","setTimeout","temporaryStyles","customStyle","create","width","height"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,QAAhB,EAA0BC,SAA1B,QAA2C,OAA3C;AACA,SAASC,sBAAT,EAAiCC,UAAjC,QAA8D,cAA9D;AACA,SAASC,gBAAT,QAAiC,6BAAjC;AAcA,MAAMC,gBAAgB,GAAGH,sBAAsB,CAAe,SAAf,CAA/C;AAWA,OAAO,MAAMI,OAAO,GAAG,QAOE;AAAA,MAPD;AACtBC,IAAAA,IADsB;AAEtBC,IAAAA,OAFsB;AAGtBC,IAAAA,KAHsB;AAItBC,IAAAA,EAJsB;AAKtBC,IAAAA,MALsB;AAMtBC,IAAAA,SAAS,GAAGR,gBAAgB,CAACS;AANP,GAOC;AACvB,QAAM,CAACC,OAAD,EAAUC,UAAV,IAAwBf,QAAQ,CAAC,CAAD,CAAtC;AACA,QAAMgB,IAAI,GAAG;AACXR,IAAAA,OADW;AAEXD,IAAAA,IAFW;AAGXG,IAAAA,EAAE,EAAEA,EAAE,IAAI,IAHC;AAIXC,IAAAA,MAAM,EAAEA,MAAM,IAAI;AAJP,GAAb;;AAOA,QAAMM,QAAQ,GAAIC,MAAD,IAAiB;AAChCC,IAAAA,OAAO,CAACC,GAAR,CAAYF,MAAZ,EAAoB,QAApB;AACAG,IAAAA,UAAU,CAAC,MAAM;AACfN,MAAAA,UAAU,CAAC,CAAD,CAAV;AACD,KAFS,EAEP,IAFO,CAAV;AAGD,GALD;;AAOAd,EAAAA,SAAS,CAAC,MAAM;AACdc,IAAAA,UAAU,CAAC,CAAD,CAAV;AACD,GAFQ,EAEN,CAACD,OAAD,CAFM,CAAT;AAIA,sBACE,oBAAC,gBAAD;AACE,IAAA,QAAQ,EAAEG,QADZ;AAEE,IAAA,IAAI,EAAED,IAFR;AAGE,IAAA,KAAK,EAAEF,OAAO,KAAK,CAAZ,GAAgBL,KAAhB,GAAwBa,eAAe,CAACC,WAHjD;AAIE,IAAA,SAAS,EAAEX;AAJb,IADF;AAQD,CAnCM;AAqCP,MAAMU,eAAe,GAAGnB,UAAU,CAACqB,MAAX,CAAkB;AACxCD,EAAAA,WAAW,EAAE;AACXE,IAAAA,KAAK,EAAE,MADI;AAEXC,IAAAA,MAAM,EAAE;AAFG;AAD2B,CAAlB,CAAxB","sourcesContent":["import React, { useState, useEffect } from 'react';\nimport { requireNativeComponent, StyleSheet, ViewStyle } from 'react-native';\nimport { HMSVideoViewMode } from '../classes/HMSVideoViewMode';\n\ninterface HmsViewProps {\n data: {\n trackId: string;\n sink: boolean;\n id?: string | null;\n mirror?: boolean;\n };\n scaleType: HMSVideoViewMode;\n style: ViewStyle;\n onChange: Function;\n}\n\nconst HmsViewComponent = requireNativeComponent<HmsViewProps>('HmsView');\n\ninterface HmsComponentProps {\n trackId: string;\n sink: boolean;\n style: ViewStyle;\n mirror?: boolean;\n scaleType: HMSVideoViewMode;\n id?: string | null;\n}\n\nexport const HmsView = ({\n sink,\n trackId,\n style,\n id,\n mirror,\n scaleType = HMSVideoViewMode.ASPECT_FILL,\n}: HmsComponentProps) => {\n const [tempVal, setTempVal] = useState(0);\n const data = {\n trackId,\n sink,\n id: id || null,\n mirror: mirror || false,\n };\n\n const onChange = (values: any) => {\n console.log(values, 'values');\n setTimeout(() => {\n setTempVal(1);\n }, 2000);\n };\n\n useEffect(() => {\n setTempVal(0);\n }, [tempVal]);\n\n return (\n <HmsViewComponent\n onChange={onChange}\n data={data}\n style={tempVal === 0 ? style : temporaryStyles.customStyle}\n scaleType={scaleType}\n />\n );\n};\n\nconst temporaryStyles = StyleSheet.create({\n customStyle: {\n width: '100%',\n height: '50%',\n },\n});\n"]}
1
+ {"version":3,"names":["React","useState","useEffect","useImperativeHandle","useRef","findNodeHandle","requireNativeComponent","StyleSheet","UIManager","HMSVideoViewMode","HmsView","_nextRequestId","_requestMap","Map","HmsViewComponent","forwardRef","props","ref","trackId","style","temporaryStyles","customStyle","id","mirror","setZOrderMediaOverlay","scaleType","ASPECT_FILL","hmsViewRef","tempVal","setTempVal","data","onChange","values","console","log","setTimeout","_onDataReturned","event","requestId","result","error","nativeEvent","promise","get","resolve","reject","delete","capture","requestMap","Promise","set","viewManagerConfig","getViewManagerConfig","dispatchViewManagerCommand","current","Commands","create","width","height"],"sources":["HmsView.tsx"],"sourcesContent":["import React, { useState, useEffect, useImperativeHandle, useRef } from 'react';\nimport {\n findNodeHandle,\n requireNativeComponent,\n StyleSheet,\n UIManager,\n ViewStyle,\n} from 'react-native';\nimport { HMSVideoViewMode } from './HMSVideoViewMode';\n\ninterface HmsViewProps {\n data: {\n trackId: string;\n id: string;\n mirror: boolean;\n };\n setZOrderMediaOverlay: boolean;\n scaleType: HMSVideoViewMode;\n style: ViewStyle;\n onChange: Function;\n onDataReturned: Function;\n}\n\nconst HmsView = requireNativeComponent<HmsViewProps>('HMSView');\nlet _nextRequestId = 1;\nlet _requestMap = new Map();\n\ninterface HmsComponentProps {\n trackId: string;\n style?: ViewStyle;\n mirror?: boolean;\n scaleType?: HMSVideoViewMode;\n setZOrderMediaOverlay?: boolean;\n id: string;\n}\n\nexport const HmsViewComponent = React.forwardRef<any, HmsComponentProps>(\n (props, ref) => {\n const {\n trackId,\n style = temporaryStyles.customStyle,\n id = '12345',\n mirror = false,\n setZOrderMediaOverlay = false,\n scaleType = HMSVideoViewMode.ASPECT_FILL,\n } = props;\n\n const hmsViewRef: any = useRef();\n const [tempVal, setTempVal] = useState(0);\n const data = {\n trackId,\n id,\n mirror,\n };\n\n const onChange = (values: any) => {\n console.log(values, 'values');\n setTimeout(() => {\n setTempVal(1);\n }, 2000);\n };\n\n const _onDataReturned = (event: {\n nativeEvent: { requestId: any; result: any; error: any };\n }) => {\n // We grab the relevant data out of our event.\n let { requestId, result, error } = event.nativeEvent;\n // Then we get the promise we saved earlier for the given request ID.\n let promise = _requestMap.get(requestId);\n if (result) {\n // If it was successful, we resolve the promise.\n promise.resolve(result);\n } else {\n // Otherwise, we reject it.\n promise.reject(error);\n }\n // Finally, we clean up our request map.\n _requestMap.delete(requestId);\n };\n\n const capture = async () => {\n let requestId = _nextRequestId++;\n let requestMap = _requestMap;\n\n // We create a promise here that will be resolved once `_onRequestDone` is\n // called.\n let promise = new Promise(function (resolve, reject) {\n requestMap.set(requestId, { resolve, reject });\n });\n const viewManagerConfig = UIManager.getViewManagerConfig('HMSView');\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsViewRef.current),\n viewManagerConfig.Commands.capture,\n [requestId]\n );\n return promise;\n };\n\n useImperativeHandle(ref, () => {\n return {\n capture,\n };\n });\n\n useEffect(() => {\n setTempVal(0);\n }, [tempVal]);\n\n return (\n <HmsView\n ref={hmsViewRef}\n onChange={onChange}\n data={data}\n style={tempVal === 0 ? style : temporaryStyles.customStyle}\n scaleType={scaleType}\n setZOrderMediaOverlay={setZOrderMediaOverlay}\n onDataReturned={_onDataReturned}\n />\n );\n }\n);\n\nconst temporaryStyles = StyleSheet.create({\n customStyle: {\n width: '100%',\n height: '50%',\n },\n});\n"],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  export * from './classes/HMSConfig';
2
2
  export * from './classes/HMSUpdateListenerActions';
3
3
  export * from './classes/HMSMessage';
4
- export * from './classes/HmsView';
5
4
  export * from './classes/HMSVideoTrackSettings';
6
5
  export * from './classes/HMSVideoTrack';
7
6
  export * from './classes/HMSVideoSettings';
@@ -9,6 +8,7 @@ export * from './classes/HMSVideoCodec';
9
8
  export * from './classes/HMSTrackSettings';
10
9
  export * from './classes/HMSTrack';
11
10
  export * from './classes/HMSTrackType';
11
+ export * from './classes/HMSTrackSource';
12
12
  export * from './classes/HMSSubscribeSettings';
13
13
  export * from './classes/HMSSimulcastSettings';
14
14
  export * from './classes/HMSSimulcastLayerSettings';
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":["HMSSDK","HmsManager"],"mappings":"AAAA,cAAc,qBAAd;AACA,cAAc,oCAAd;AACA,cAAc,sBAAd;AACA,cAAc,mBAAd;AACA,cAAc,iCAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,oBAAd;AACA,cAAc,wBAAd;AACA,cAAc,gCAAd;AACA,cAAc,gCAAd;AACA,cAAc,qCAAd;AACA,cAAc,kBAAd;AACA,cAAc,mBAAd;AACA,cAAc,gCAAd;AACA,cAAc,mBAAd;AACA,cAAc,+BAAd;AACA,cAAc,yBAAd;AACA,cAAc,+BAAd;AACA,cAAc,8BAAd;AACA,cAAc,0BAAd;AACA,cAAc,mBAAd;AACA,cAAc,8BAAd;AACA,cAAc,wBAAd;AACA,cAAc,8BAAd;AACA,cAAc,qBAAd;AACA,cAAc,sBAAd;AACA,cAAc,iCAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,0BAAd;AACA,cAAc,qBAAd;AACA,cAAc,uBAAd;AACA,cAAc,4BAAd;AACA,cAAc,sCAAd;AACA,cAAc,sBAAd;AACA,cAAc,4BAAd;AACA,cAAc,2BAAd;AACA,cAAc,wBAAd;AACA,cAAc,iCAAd;AACA,cAAc,mCAAd;AACA,cAAc,oCAAd;AACA,cAAc,yBAAd;AACA,cAAc,wBAAd;AACA,cAAc,mCAAd;AACA,cAAc,yBAAd;AACA,cAAc,gCAAd;AACA,cAAc,8BAAd;AACA,cAAc,8BAAd;AACA,cAAc,8BAAd;AACA,cAAc,uBAAd;AACA,cAAc,6BAAd;AACA,cAAc,+BAAd;AACA,cAAc,+BAAd;AACA,cAAc,iCAAd;AACA,cAAc,gCAAd;AACA,cAAc,+BAAd;AACA,cAAc,mCAAd;AACA,cAAc,6BAAd;AAEA,SAASA,MAAM,IAAIC,UAAnB,QAAqC,kBAArC;AACA,eAAeA,UAAf","sourcesContent":["export * from './classes/HMSConfig';\nexport * from './classes/HMSUpdateListenerActions';\nexport * from './classes/HMSMessage';\nexport * from './classes/HmsView';\nexport * from './classes/HMSVideoTrackSettings';\nexport * from './classes/HMSVideoTrack';\nexport * from './classes/HMSVideoSettings';\nexport * from './classes/HMSVideoCodec';\nexport * from './classes/HMSTrackSettings';\nexport * from './classes/HMSTrack';\nexport * from './classes/HMSTrackType';\nexport * from './classes/HMSSubscribeSettings';\nexport * from './classes/HMSSimulcastSettings';\nexport * from './classes/HMSSimulcastLayerSettings';\nexport * from './classes/HMSSDK';\nexport * from './classes/HMSRoom';\nexport * from './classes/HMSRoleChangeRequest';\nexport * from './classes/HMSRole';\nexport * from './classes/HMSRemoteVideoTrack';\nexport * from './classes/HMSRemotePeer';\nexport * from './classes/HMSRemoteAudioTrack';\nexport * from './classes/HMSPublishSettings';\nexport * from './classes/HMSPermissions';\nexport * from './classes/HMSPeer';\nexport * from './classes/HMSLocalVideoTrack';\nexport * from './classes/HMSLocalPeer';\nexport * from './classes/HMSLocalAudioTrack';\nexport * from './classes/HMSHelper';\nexport * from './classes/HMSEncoder';\nexport * from './classes/HMSAudioTrackSettings';\nexport * from './classes/HMSAudioTrack';\nexport * from './classes/HMSAudioSettings';\nexport * from './classes/HMSAudioCodec';\nexport * from './classes/HMSPeerUpdate';\nexport * from './classes/HMSRoomUpdate';\nexport * from './classes/HMSTrackUpdate';\nexport * from './classes/HMSLogger';\nexport * from './classes/HMSLogLevel';\nexport * from './classes/HMSVideoViewMode';\nexport * from './classes/HMSChangeTrackStateRequest';\nexport * from './classes/HMSSpeaker';\nexport * from './classes/HMSSpeakerUpdate';\nexport * from './classes/HMSCameraFacing';\nexport * from './classes/HMSException';\nexport * from './classes/HMSRtmpStreamingState';\nexport * from './classes/HMSServerRecordingState';\nexport * from './classes/HMSBrowserRecordingState';\nexport * from './classes/HMSRTMPConfig';\nexport * from './classes/HMSHLSConfig';\nexport * from './classes/HMSHLSMeetingURLVariant';\nexport * from './classes/HMSHLSVariant';\nexport * from './classes/HMSHLSStreamingState';\nexport * from './classes/HMSVideoResolution';\nexport * from './classes/HMSLocalAudioStats';\nexport * from './classes/HMSLocalVideoStats';\nexport * from './classes/HMSRTCStats';\nexport * from './classes/HMSRTCStatsReport';\nexport * from './classes/HMSRemoteAudioStats';\nexport * from './classes/HMSRemoteVideoStats';\nexport * from './classes/HMSHLSRecordingConfig';\nexport * from './classes/HMSHLSRecordingState';\nexport * from './classes/HMSMessageRecipient';\nexport * from './classes/HMSMessageRecipientType';\nexport * from './classes/HMSNetworkQuality';\n\nimport { HMSSDK as HmsManager } from './classes/HMSSDK';\nexport default HmsManager;\n"]}
1
+ {"version":3,"names":["HMSSDK","HmsManager"],"sources":["index.ts"],"sourcesContent":["export * from './classes/HMSConfig';\nexport * from './classes/HMSUpdateListenerActions';\nexport * from './classes/HMSMessage';\nexport * from './classes/HMSVideoTrackSettings';\nexport * from './classes/HMSVideoTrack';\nexport * from './classes/HMSVideoSettings';\nexport * from './classes/HMSVideoCodec';\nexport * from './classes/HMSTrackSettings';\nexport * from './classes/HMSTrack';\nexport * from './classes/HMSTrackType';\nexport * from './classes/HMSTrackSource';\nexport * from './classes/HMSSubscribeSettings';\nexport * from './classes/HMSSimulcastSettings';\nexport * from './classes/HMSSimulcastLayerSettings';\nexport * from './classes/HMSSDK';\nexport * from './classes/HMSRoom';\nexport * from './classes/HMSRoleChangeRequest';\nexport * from './classes/HMSRole';\nexport * from './classes/HMSRemoteVideoTrack';\nexport * from './classes/HMSRemotePeer';\nexport * from './classes/HMSRemoteAudioTrack';\nexport * from './classes/HMSPublishSettings';\nexport * from './classes/HMSPermissions';\nexport * from './classes/HMSPeer';\nexport * from './classes/HMSLocalVideoTrack';\nexport * from './classes/HMSLocalPeer';\nexport * from './classes/HMSLocalAudioTrack';\nexport * from './classes/HMSHelper';\nexport * from './classes/HMSEncoder';\nexport * from './classes/HMSAudioTrackSettings';\nexport * from './classes/HMSAudioTrack';\nexport * from './classes/HMSAudioSettings';\nexport * from './classes/HMSAudioCodec';\nexport * from './classes/HMSPeerUpdate';\nexport * from './classes/HMSRoomUpdate';\nexport * from './classes/HMSTrackUpdate';\nexport * from './classes/HMSLogger';\nexport * from './classes/HMSLogLevel';\nexport * from './classes/HMSVideoViewMode';\nexport * from './classes/HMSChangeTrackStateRequest';\nexport * from './classes/HMSSpeaker';\nexport * from './classes/HMSSpeakerUpdate';\nexport * from './classes/HMSCameraFacing';\nexport * from './classes/HMSException';\nexport * from './classes/HMSRtmpStreamingState';\nexport * from './classes/HMSServerRecordingState';\nexport * from './classes/HMSBrowserRecordingState';\nexport * from './classes/HMSRTMPConfig';\nexport * from './classes/HMSHLSConfig';\nexport * from './classes/HMSHLSMeetingURLVariant';\nexport * from './classes/HMSHLSVariant';\nexport * from './classes/HMSHLSStreamingState';\nexport * from './classes/HMSVideoResolution';\nexport * from './classes/HMSLocalAudioStats';\nexport * from './classes/HMSLocalVideoStats';\nexport * from './classes/HMSRTCStats';\nexport * from './classes/HMSRTCStatsReport';\nexport * from './classes/HMSRemoteAudioStats';\nexport * from './classes/HMSRemoteVideoStats';\nexport * from './classes/HMSHLSRecordingConfig';\nexport * from './classes/HMSHLSRecordingState';\nexport * from './classes/HMSMessageRecipient';\nexport * from './classes/HMSMessageRecipientType';\nexport * from './classes/HMSNetworkQuality';\n\nimport { HMSSDK as HmsManager } from './classes/HMSSDK';\nexport default HmsManager;\n"],"mappings":"AAAA,cAAc,qBAAd;AACA,cAAc,oCAAd;AACA,cAAc,sBAAd;AACA,cAAc,iCAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,oBAAd;AACA,cAAc,wBAAd;AACA,cAAc,0BAAd;AACA,cAAc,gCAAd;AACA,cAAc,gCAAd;AACA,cAAc,qCAAd;AACA,cAAc,kBAAd;AACA,cAAc,mBAAd;AACA,cAAc,gCAAd;AACA,cAAc,mBAAd;AACA,cAAc,+BAAd;AACA,cAAc,yBAAd;AACA,cAAc,+BAAd;AACA,cAAc,8BAAd;AACA,cAAc,0BAAd;AACA,cAAc,mBAAd;AACA,cAAc,8BAAd;AACA,cAAc,wBAAd;AACA,cAAc,8BAAd;AACA,cAAc,qBAAd;AACA,cAAc,sBAAd;AACA,cAAc,iCAAd;AACA,cAAc,yBAAd;AACA,cAAc,4BAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,0BAAd;AACA,cAAc,qBAAd;AACA,cAAc,uBAAd;AACA,cAAc,4BAAd;AACA,cAAc,sCAAd;AACA,cAAc,sBAAd;AACA,cAAc,4BAAd;AACA,cAAc,2BAAd;AACA,cAAc,wBAAd;AACA,cAAc,iCAAd;AACA,cAAc,mCAAd;AACA,cAAc,oCAAd;AACA,cAAc,yBAAd;AACA,cAAc,wBAAd;AACA,cAAc,mCAAd;AACA,cAAc,yBAAd;AACA,cAAc,gCAAd;AACA,cAAc,8BAAd;AACA,cAAc,8BAAd;AACA,cAAc,8BAAd;AACA,cAAc,uBAAd;AACA,cAAc,6BAAd;AACA,cAAc,+BAAd;AACA,cAAc,+BAAd;AACA,cAAc,iCAAd;AACA,cAAc,gCAAd;AACA,cAAc,+BAAd;AACA,cAAc,mCAAd;AACA,cAAc,6BAAd;AAEA,SAASA,MAAM,IAAIC,UAAnB,QAAqC,kBAArC;AACA,eAAeA,UAAf"}
@@ -1,12 +1,12 @@
1
1
  import type { HMSException } from './HMSException';
2
2
  export declare class HMSBrowserRecordingState {
3
3
  running: string;
4
- error: HMSException;
4
+ error?: HMSException;
5
5
  startedAt: Date;
6
6
  stoppedAt: Date;
7
7
  constructor(params: {
8
8
  running: string;
9
- error: HMSException;
9
+ error?: HMSException;
10
10
  startedAt: Date;
11
11
  stoppedAt: Date;
12
12
  });
@@ -19,9 +19,13 @@ import { HMSRemoteAudioTrack } from './HMSRemoteAudioTrack';
19
19
  import { HMSRemoteVideoTrack } from './HMSRemoteVideoTrack';
20
20
  import { HMSSpeaker } from './HMSSpeaker';
21
21
  import { HMSSpeakerUpdate } from './HMSSpeakerUpdate';
22
- import { HMSBrowserRecordingState, HMSHLSStreamingState, HMSHLSVariant, HMSRtmpStreamingState, HMSServerRecordingState } from '..';
23
22
  import { HMSHLSRecordingState } from './HMSHLSRecordingState';
24
23
  import { HMSNetworkQuality } from './HMSNetworkQuality';
24
+ import { HMSBrowserRecordingState } from './HMSBrowserRecordingState';
25
+ import { HMSHLSStreamingState } from './HMSHLSStreamingState';
26
+ import { HMSHLSVariant } from './HMSHLSVariant';
27
+ import { HMSRtmpStreamingState } from './HMSRtmpStreamingState';
28
+ import { HMSServerRecordingState } from './HMSServerRecordingState';
25
29
  export declare class HMSEncoder {
26
30
  static encodeHmsRoom(room: HMSRoom, id: string): HMSRoom;
27
31
  static encodeHmsPeers(peers: any, id: string): HMSPeer[];
@@ -1,4 +1,7 @@
1
1
  import { HMSLogLevel } from './HMSLogLevel';
2
+ export declare let logger: HMSLogger | undefined;
3
+ export declare const getLogger: () => HMSLogger | undefined;
4
+ export declare const setLogger: (hmsLogger: HMSLogger, id: string) => void;
2
5
  export declare class HMSLogger {
3
6
  private _verbose;
4
7
  private _warning;
@@ -6,6 +6,7 @@ import type { HMSHLSStreamingState } from './HMSHLSStreamingState';
6
6
  import type { HMSHLSRecordingState } from './HMSHLSRecordingState';
7
7
  export declare class HMSRoom {
8
8
  id: string;
9
+ sessionId: string;
9
10
  name: string;
10
11
  metaData?: string;
11
12
  peers: HMSPeer[];
@@ -17,6 +18,7 @@ export declare class HMSRoom {
17
18
  peerCount: number;
18
19
  constructor(params: {
19
20
  id: string;
21
+ sessionId: string;
20
22
  name: string;
21
23
  metaData?: string;
22
24
  peers: HMSPeer[];
@@ -1,11 +1,9 @@
1
1
  export declare enum HMSRoomUpdate {
2
2
  ROOM_MUTED = "ROOM_MUTED",
3
3
  ROOM_UNMUTED = "ROOM_UNMUTED",
4
- ROOM_TYPE_CHANGED = "ROOM_TYPE_CHANGED",
5
- META_DATA_CHANGED = "META_DATA_CHANGED",
6
4
  SERVER_RECORDING_STATE_UPDATED = "SERVER_RECORDING_STATE_UPDATED",
7
5
  RTMP_STREAMING_STATE_UPDATED = "RTMP_STREAMING_STATE_UPDATED",
8
6
  BROWSER_RECORDING_STATE_UPDATED = "BROWSER_RECORDING_STATE_UPDATED",
9
7
  HLS_STREAMING_STATE_UPDATED = "HLS_STREAMING_STATE_UPDATED",
10
- ROOM_ID_UPDATED = "ROOM_ID_UPDATED"
8
+ HLS_RECORDING_STATE_UPDATED = "HLS_RECORDING_STATE_UPDATED"
11
9
  }
@@ -1,12 +1,12 @@
1
1
  import type { HMSException } from './HMSException';
2
2
  export declare class HMSRtmpStreamingState {
3
3
  running: string;
4
- error: HMSException;
4
+ error?: HMSException;
5
5
  startedAt: Date;
6
6
  stoppedAt: Date;
7
7
  constructor(params: {
8
8
  running: string;
9
- error: HMSException;
9
+ error?: HMSException;
10
10
  startedAt: Date;
11
11
  stoppedAt: Date;
12
12
  });
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { ViewStyle } from 'react-native';
3
3
  import { HMSUpdateListenerActions } from './HMSUpdateListenerActions';
4
4
  import type { HMSConfig } from './HMSConfig';
@@ -10,17 +10,16 @@ import type { HMSTrack } from './HMSTrack';
10
10
  import type { HMSTrackType } from './HMSTrackType';
11
11
  import type { HMSLogger } from './HMSLogger';
12
12
  import type { HMSPeer } from './HMSPeer';
13
- import { HMSVideoViewMode } from './HMSVideoViewMode';
13
+ import type { HMSVideoViewMode } from './HMSVideoViewMode';
14
14
  import type { HMSTrackSettings } from './HMSTrackSettings';
15
15
  import type { HMSRTMPConfig } from './HMSRTMPConfig';
16
16
  import type { HMSHLSConfig } from './HMSHLSConfig';
17
- interface HmsComponentProps {
17
+ interface HmsViewProps {
18
18
  trackId: string;
19
- sink: boolean;
20
- style: ViewStyle;
19
+ style?: ViewStyle;
21
20
  mirror?: boolean;
22
- scaleType: HMSVideoViewMode;
23
- id?: string | null;
21
+ scaleType?: HMSVideoViewMode;
22
+ setZOrderMediaOverlay?: boolean;
24
23
  }
25
24
  export declare class HMSSDK {
26
25
  room?: HMSRoom;
@@ -77,7 +76,7 @@ export declare class HMSSDK {
77
76
  *
78
77
  * @memberof HMSSDK
79
78
  */
80
- destroy: () => void;
79
+ destroy: () => Promise<any>;
81
80
  /**
82
81
  * - Attaches preview listener for native callbacks.
83
82
  * Note:this function connects sdk to native side and not app to sdk.
@@ -132,7 +131,6 @@ export declare class HMSSDK {
132
131
  /**
133
132
  * - HmsView is react component that takes one track and starts showing that track on a tile.
134
133
  * - The appearance of tile is completely customizable with style prop.
135
- * - setting sink true or false for a video tile will add or remove sink for a video.
136
134
  * - scale type can determine how the incoming video will fit in the canvas check {@link HMSVideoViewMode} for more information.
137
135
  *
138
136
  * checkout {@link https://www.100ms.live/docs/react-native/v2/features/render-video} for more info
@@ -140,7 +138,7 @@ export declare class HMSSDK {
140
138
  * @param {HmsComponentProps}
141
139
  * @memberof HMSSDK
142
140
  */
143
- HmsView: ({ sink, trackId, style, mirror, scaleType, }: HmsComponentProps) => JSX.Element;
141
+ HmsView: React.ForwardRefExoticComponent<HmsViewProps & React.RefAttributes<any>>;
144
142
  /**
145
143
  * Calls leave function of native sdk and session of current user is invalidated.
146
144
  *
@@ -260,7 +258,7 @@ export declare class HMSSDK {
260
258
  *
261
259
  * @memberof HMSSDK
262
260
  */
263
- changeTrackStateForRoles: (mute: boolean, type?: HMSTrackType | undefined, source?: string | undefined, roles?: HMSRole[] | undefined) => Promise<any>;
261
+ changeTrackStateForRoles: (mute: boolean, type?: HMSTrackType, source?: string, roles?: Array<HMSRole>) => Promise<any>;
264
262
  /**
265
263
  * - removePeer can forcefully disconnect a Peer from the room.
266
264
  * - the user who's removed from this action will get a callback in {@link onRemovedFromRoomListener}.
@@ -1,11 +1,11 @@
1
1
  import type { HMSException } from './HMSException';
2
2
  export declare class HMSServerRecordingState {
3
3
  running: string;
4
- error: HMSException;
4
+ error?: HMSException;
5
5
  startedAt: Date;
6
6
  constructor(params: {
7
7
  running: string;
8
- error: HMSException;
8
+ error?: HMSException;
9
9
  startedAt: Date;
10
10
  });
11
11
  }
@@ -0,0 +1,5 @@
1
+ export declare enum HMSTrackSource {
2
+ PLUGIN = "plugin",
3
+ REGULAR = "regular",
4
+ SCREEN = "screen"
5
+ }
@@ -1,13 +1,13 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { ViewStyle } from 'react-native';
3
- import { HMSVideoViewMode } from '../classes/HMSVideoViewMode';
3
+ import { HMSVideoViewMode } from './HMSVideoViewMode';
4
4
  interface HmsComponentProps {
5
5
  trackId: string;
6
- sink: boolean;
7
- style: ViewStyle;
6
+ style?: ViewStyle;
8
7
  mirror?: boolean;
9
- scaleType: HMSVideoViewMode;
10
- id?: string | null;
8
+ scaleType?: HMSVideoViewMode;
9
+ setZOrderMediaOverlay?: boolean;
10
+ id: string;
11
11
  }
12
- export declare const HmsView: ({ sink, trackId, style, id, mirror, scaleType, }: HmsComponentProps) => JSX.Element;
12
+ export declare const HmsViewComponent: React.ForwardRefExoticComponent<HmsComponentProps & React.RefAttributes<any>>;
13
13
  export {};
@@ -1,7 +1,6 @@
1
1
  export * from './classes/HMSConfig';
2
2
  export * from './classes/HMSUpdateListenerActions';
3
3
  export * from './classes/HMSMessage';
4
- export * from './classes/HmsView';
5
4
  export * from './classes/HMSVideoTrackSettings';
6
5
  export * from './classes/HMSVideoTrack';
7
6
  export * from './classes/HMSVideoSettings';
@@ -9,6 +8,7 @@ export * from './classes/HMSVideoCodec';
9
8
  export * from './classes/HMSTrackSettings';
10
9
  export * from './classes/HMSTrack';
11
10
  export * from './classes/HMSTrackType';
11
+ export * from './classes/HMSTrackSource';
12
12
  export * from './classes/HMSSubscribeSettings';
13
13
  export * from './classes/HMSSimulcastSettings';
14
14
  export * from './classes/HMSSimulcastLayerSettings';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@100mslive/react-native-hms",
3
- "version": "0.9.3",
3
+ "version": "0.9.6",
4
4
  "description": "The React Native package for 100ms SDK",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -95,7 +95,7 @@
95
95
  "prettier": "^2.0.5",
96
96
  "react-native-builder-bob": "^0.18.0",
97
97
  "release-it": "^14.2.2",
98
- "typescript": "^4.1.3"
98
+ "typescript": "^4.6.3"
99
99
  },
100
100
  "peerDependencies": {
101
101
  "react": "*",
@@ -10,11 +10,11 @@ Pod::Spec.new do |s|
10
10
  s.license = package["license"]
11
11
  s.authors = package["author"]
12
12
 
13
- s.platforms = { :ios => "10.0" }
13
+ s.platforms = { :ios => "12.0" }
14
14
  s.source = { :git => "https://github.com/100mslive/100ms-react-native.git", :tag => "#{s.version}" }
15
15
 
16
16
  s.source_files = "ios/**/*.{h,m,mm,swift}"
17
17
 
18
18
  s.dependency "React-Core"
19
- s.dependency "HMSSDK", "0.2.9"
19
+ s.dependency "HMSSDK", "0.3.1"
20
20
  end
@@ -2,13 +2,13 @@ import type { HMSException } from './HMSException';
2
2
 
3
3
  export class HMSBrowserRecordingState {
4
4
  running: string;
5
- error: HMSException;
5
+ error?: HMSException;
6
6
  startedAt: Date;
7
7
  stoppedAt: Date;
8
8
 
9
9
  constructor(params: {
10
10
  running: string;
11
- error: HMSException;
11
+ error?: HMSException;
12
12
  startedAt: Date;
13
13
  stoppedAt: Date;
14
14
  }) {
@@ -3,10 +3,8 @@ import { HMSAudioTrack } from './HMSAudioTrack';
3
3
  import { HMSVideoTrack } from './HMSVideoTrack';
4
4
  import { HMSRoom } from './HMSRoom';
5
5
  import { HMSPeer } from './HMSPeer';
6
-
7
6
  import { HMSLocalPeer } from './HMSLocalPeer';
8
7
  import { HMSRemotePeer } from './HMSRemotePeer';
9
-
10
8
  import { HMSAudioTrackSettings } from './HMSAudioTrackSettings';
11
9
  import { HMSVideoTrackSettings } from './HMSVideoTrackSettings';
12
10
  import { HMSLocalVideoTrack } from './HMSLocalVideoTrack';
@@ -21,20 +19,19 @@ import { HMSRemoteAudioTrack } from './HMSRemoteAudioTrack';
21
19
  import { HMSRemoteVideoTrack } from './HMSRemoteVideoTrack';
22
20
  import { HMSSpeaker } from './HMSSpeaker';
23
21
  import { HMSSpeakerUpdate } from './HMSSpeakerUpdate';
24
- import {
25
- HMSBrowserRecordingState,
26
- HMSHLSStreamingState,
27
- HMSHLSVariant,
28
- HMSRtmpStreamingState,
29
- HMSServerRecordingState,
30
- } from '..';
31
22
  import { HMSHLSRecordingState } from './HMSHLSRecordingState';
32
23
  import { HMSNetworkQuality } from './HMSNetworkQuality';
24
+ import { HMSBrowserRecordingState } from './HMSBrowserRecordingState';
25
+ import { HMSHLSStreamingState } from './HMSHLSStreamingState';
26
+ import { HMSHLSVariant } from './HMSHLSVariant';
27
+ import { HMSRtmpStreamingState } from './HMSRtmpStreamingState';
28
+ import { HMSServerRecordingState } from './HMSServerRecordingState';
33
29
 
34
30
  export class HMSEncoder {
35
31
  static encodeHmsRoom(room: HMSRoom, id: string) {
36
32
  const encodedObj = {
37
33
  id: room?.id,
34
+ sessionId: room?.sessionId,
38
35
  metaData: room?.metaData,
39
36
  name: room?.name,
40
37
  peerCount: room?.peerCount,
@@ -1,6 +1,6 @@
1
1
  import { NativeModules, Platform } from 'react-native';
2
2
  import { HMSAudioTrack } from './HMSAudioTrack';
3
- import { HMSSDK } from './HMSSDK';
3
+ import { getLogger } from './HMSLogger';
4
4
  import type { HMSAudioTrackSettings } from './HMSAudioTrackSettings';
5
5
  import type { HMSTrackType } from './HMSTrackType';
6
6
 
@@ -8,7 +8,7 @@ const {
8
8
  /**
9
9
  * @ignore
10
10
  */
11
- HmsManager,
11
+ HMSManager,
12
12
  } = NativeModules;
13
13
 
14
14
  export class HMSLocalAudioTrack extends HMSAudioTrack {
@@ -22,7 +22,7 @@ export class HMSLocalAudioTrack extends HMSAudioTrack {
22
22
  * @memberof HMSLocalAudioTrack
23
23
  */
24
24
  setMute(isMute: boolean) {
25
- const logger = HMSSDK.getLogger();
25
+ const logger = getLogger();
26
26
  logger?.verbose('#Function setMute', {
27
27
  trackId: this.trackId,
28
28
  id: this.id,
@@ -30,11 +30,11 @@ export class HMSLocalAudioTrack extends HMSAudioTrack {
30
30
  type: this.type,
31
31
  isMute,
32
32
  });
33
- HmsManager.setLocalMute({ isMute, id: this.id });
33
+ HMSManager.setLocalMute({ isMute, id: this.id });
34
34
  }
35
35
 
36
36
  getVolume = async () => {
37
- const logger = HMSSDK.getLogger();
37
+ const logger = getLogger();
38
38
  logger?.verbose('#Function getVolume', {
39
39
  trackId: this.trackId,
40
40
  id: this.id,
@@ -44,7 +44,7 @@ export class HMSLocalAudioTrack extends HMSAudioTrack {
44
44
  if (Platform.OS === 'ios') {
45
45
  return 'This API not available for IOS';
46
46
  }
47
- const volume = await HmsManager.getVolume({
47
+ const volume = await HMSManager.getVolume({
48
48
  trackId: this.trackId,
49
49
  id: this.id,
50
50
  });
@@ -1,6 +1,6 @@
1
1
  import { NativeModules } from 'react-native';
2
2
  import { HMSVideoTrack } from './HMSVideoTrack';
3
- import { HMSSDK } from './HMSSDK';
3
+ import { getLogger } from './HMSLogger';
4
4
  import type { HMSVideoTrackSettings } from './HMSVideoTrackSettings';
5
5
  import type { HMSTrackType } from './HMSTrackType';
6
6
 
@@ -8,7 +8,7 @@ const {
8
8
  /**
9
9
  * @ignore
10
10
  */
11
- HmsManager,
11
+ HMSManager,
12
12
  } = NativeModules;
13
13
 
14
14
  export class HMSLocalVideoTrack extends HMSVideoTrack {
@@ -23,14 +23,14 @@ export class HMSLocalVideoTrack extends HMSVideoTrack {
23
23
  * @memberof HMSSDK
24
24
  */
25
25
  switchCamera = () => {
26
- const logger = HMSSDK.getLogger();
26
+ const logger = getLogger();
27
27
  logger?.verbose('#Function switchCamera', {
28
28
  trackId: this.trackId,
29
29
  source: this.source,
30
30
  type: this.type,
31
31
  id: this.id,
32
32
  });
33
- HmsManager.switchCamera({ id: this.id });
33
+ HMSManager.switchCamera({ id: this.id });
34
34
  };
35
35
 
36
36
  /**
@@ -40,14 +40,14 @@ export class HMSLocalVideoTrack extends HMSVideoTrack {
40
40
  * @memberof HMSLocalVideoTrack
41
41
  */
42
42
  setMute(isMute: boolean) {
43
- const logger = HMSSDK.getLogger();
43
+ const logger = getLogger();
44
44
  logger?.verbose('#Function setMute', {
45
45
  trackId: this.trackId,
46
46
  source: this.source,
47
47
  type: this.type,
48
48
  id: this.id,
49
49
  });
50
- HmsManager.setLocalVideoMute({ isMute, id: this.id });
50
+ HMSManager.setLocalVideoMute({ isMute, id: this.id });
51
51
  }
52
52
 
53
53
  constructor(params: {
@@ -1,5 +1,16 @@
1
1
  import { HMSLogLevel } from './HMSLogLevel';
2
2
 
3
+ export let logger: HMSLogger | undefined;
4
+
5
+ export const getLogger = () => {
6
+ return logger;
7
+ };
8
+
9
+ export const setLogger = (hmsLogger: HMSLogger, id: string) => {
10
+ logger = hmsLogger;
11
+ hmsLogger.verbose('#Function setLogger', { id });
12
+ };
13
+
3
14
  export class HMSLogger {
4
15
  private _verbose: boolean = false;
5
16
  private _warning: boolean = false;
@@ -18,7 +18,7 @@ export class HMSMessage {
18
18
  }) {
19
19
  this.message = params.message;
20
20
  this.type = params.type;
21
- this.time = new Date(params.time);
21
+ this.time = new Date(parseInt(params.time));
22
22
  this.sender = params.sender;
23
23
  this.recipient = params.recipient;
24
24
  }