@100mslive/react-native-hms 1.9.1-beta.1 → 1.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt +1 -2
  2. package/android/src/main/java/com/reactnativehmssdk/HMSManager.kt +0 -7
  3. package/android/src/main/java/com/reactnativehmssdk/HMSRNSDK.kt +0 -20
  4. package/ios/HMSHLSPlayerManager.swift +4 -0
  5. package/lib/commonjs/classes/HMSCameraControl.js +1 -2
  6. package/lib/commonjs/classes/HMSCameraControl.js.map +1 -1
  7. package/lib/commonjs/classes/HMSSDK.js +16 -49
  8. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  9. package/lib/commonjs/classes/HmsView.js +3 -4
  10. package/lib/commonjs/classes/HmsView.js.map +1 -1
  11. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js +13 -16
  12. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
  13. package/lib/commonjs/hooks/useHMSPeerUpdates.js +1 -2
  14. package/lib/commonjs/hooks/useHMSPeerUpdates.js.map +1 -1
  15. package/lib/commonjs/stores/hms-store.js +4 -6
  16. package/lib/commonjs/stores/hms-store.js.map +1 -1
  17. package/lib/commonjs/utils/emitter/EventEmitter.js +1 -4
  18. package/lib/commonjs/utils/emitter/EventEmitter.js.map +1 -1
  19. package/lib/module/classes/HMSCameraControl.js +1 -2
  20. package/lib/module/classes/HMSCameraControl.js.map +1 -1
  21. package/lib/module/classes/HMSSDK.js +17 -50
  22. package/lib/module/classes/HMSSDK.js.map +1 -1
  23. package/lib/module/classes/HmsView.js +3 -4
  24. package/lib/module/classes/HmsView.js.map +1 -1
  25. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js +13 -16
  26. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
  27. package/lib/module/hooks/useHMSPeerUpdates.js +1 -2
  28. package/lib/module/hooks/useHMSPeerUpdates.js.map +1 -1
  29. package/lib/module/stores/hms-store.js +4 -6
  30. package/lib/module/stores/hms-store.js.map +1 -1
  31. package/lib/module/utils/emitter/EventEmitter.js +1 -4
  32. package/lib/module/utils/emitter/EventEmitter.js.map +1 -1
  33. package/lib/typescript/classes/HMSSDK.d.ts +0 -9
  34. package/package.json +1 -1
  35. package/sdk-versions.json +2 -2
  36. package/src/classes/HMSSDK.tsx +1 -26
@@ -37,10 +37,9 @@ const HmsViewComponent = exports.HmsViewComponent = /*#__PURE__*/_react.default.
37
37
  * This method is passed to `onChange` prop of `HmsView` Native Component.
38
38
  * It is invoked when `HmsView` emits 'topChange' event.
39
39
  */
40
- const onChange = _ref => {
41
- let {
42
- nativeEvent
43
- } = _ref;
40
+ const onChange = ({
41
+ nativeEvent
42
+ }) => {
44
43
  const {
45
44
  event,
46
45
  data
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_HMSConstants","_HMSVideoViewMode","_hmsviews","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","HmsView","requireNativeComponent","_nextRequestId","_requestMap","Map","HmsViewComponent","exports","React","forwardRef","props","ref","trackId","style","styles","hmsView","id","HMSConstants","DEFAULT_SDK_ID","mirror","setZOrderMediaOverlay","autoSimulcast","scaleType","HMSVideoViewMode","ASPECT_FILL","hmsViewRef","useRef","applyStyles_ANDROID","setApplyStyles_ANDROID","useState","data","onChange","_ref","nativeEvent","event","setHmsViewsResolutionsState","_onDataReturned","requestId","result","error","promise","resolve","reject","delete","capture","viewManagerConfig","UIManager","getViewManagerConfig","requestMap","Promise","dispatchViewManagerCommand","findNodeHandle","current","Commands","useImperativeHandle","createElement","Platform","OS","onDataReturned","StyleSheet","create","flex"],"sources":["HmsView.tsx"],"sourcesContent":["import React, { useState, useImperativeHandle, useRef } from 'react';\nimport {\n findNodeHandle,\n requireNativeComponent,\n StyleSheet,\n UIManager,\n Platform,\n} from 'react-native';\nimport type { NativeSyntheticEvent, ViewStyle } from 'react-native';\nimport { HMSConstants } from './HMSConstants';\nimport { HMSVideoViewMode } from './HMSVideoViewMode';\nimport { setHmsViewsResolutionsState } from '../hooks/hmsviews';\n\ninterface HmsViewProps {\n data: {\n trackId: string;\n id: string;\n mirror: boolean;\n scaleType: HMSVideoViewMode;\n };\n autoSimulcast: boolean;\n setZOrderMediaOverlay: boolean;\n scaleType: HMSVideoViewMode;\n style: ViewStyle;\n onChange: Function;\n onDataReturned: Function;\n}\n\nconst HmsView = requireNativeComponent<HmsViewProps>('HMSView');\nlet _nextRequestId = 1;\nlet _requestMap = new Map();\n\nexport interface HmsComponentProps {\n trackId: string;\n style?: ViewStyle;\n mirror?: boolean;\n autoSimulcast?: boolean;\n scaleType?: HMSVideoViewMode;\n setZOrderMediaOverlay?: boolean;\n id: string;\n}\n\nexport const HmsViewComponent = React.forwardRef<any, HmsComponentProps>(\n (props, ref) => {\n const {\n trackId,\n style = styles.hmsView,\n id = HMSConstants.DEFAULT_SDK_ID,\n mirror = false,\n setZOrderMediaOverlay = false,\n autoSimulcast = true,\n scaleType = HMSVideoViewMode.ASPECT_FILL,\n } = props;\n\n const hmsViewRef: any = useRef();\n const [applyStyles_ANDROID, setApplyStyles_ANDROID] = useState(false);\n const data = {\n trackId,\n id,\n mirror,\n scaleType,\n };\n\n /**\n * This method is passed to `onChange` prop of `HmsView` Native Component.\n * It is invoked when `HmsView` emits 'topChange' event.\n */\n const onChange = ({\n nativeEvent,\n }: NativeSyntheticEvent<{\n data: { height: number; width: number };\n event: 'ON_RESOLUTION_CHANGE_EVENT';\n }>) => {\n const { event, data } = nativeEvent;\n\n setApplyStyles_ANDROID(true);\n\n if (event === 'ON_RESOLUTION_CHANGE_EVENT') {\n setHmsViewsResolutionsState(trackId, data);\n }\n };\n\n /**\n * This method is passed to `onDataReturned` prop of `HmsView` Native Component.\n * It is invoked when `HmsView` emits 'captureFrame' event.\n */\n const _onDataReturned = (event: {\n nativeEvent: { requestId: any; result: any; error: any };\n }) => {\n // We grab the relevant data out of our event.\n let { requestId, result, error } = event.nativeEvent;\n // Then we get the promise we saved earlier for the given request ID.\n let promise = _requestMap.get(requestId);\n if (result) {\n // If it was successful, we resolve the promise.\n promise.resolve(result);\n } else {\n // Otherwise, we reject it.\n promise.reject(error);\n }\n // Finally, we clean up our request map.\n _requestMap.delete(requestId);\n };\n\n const capture = async () => {\n const viewManagerConfig = UIManager.getViewManagerConfig('HMSView');\n\n let requestId = _nextRequestId++;\n let requestMap = _requestMap;\n\n // We create a promise here that will be resolved once `_onRequestDone` is\n // called.\n let promise = new Promise(function (resolve, reject) {\n requestMap.set(requestId, { resolve, reject });\n });\n\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsViewRef.current),\n viewManagerConfig.Commands.capture,\n [requestId]\n );\n return promise;\n };\n\n useImperativeHandle(ref, () => {\n return {\n capture,\n };\n });\n\n return (\n <HmsView\n ref={hmsViewRef}\n onChange={onChange}\n data={data}\n style={\n Platform.OS === 'android' ? (applyStyles_ANDROID ? style : {}) : style\n }\n autoSimulcast={autoSimulcast}\n scaleType={scaleType}\n setZOrderMediaOverlay={setZOrderMediaOverlay}\n onDataReturned={_onDataReturned}\n />\n );\n }\n);\n\nconst styles = StyleSheet.create({\n hmsView: {\n flex: 1,\n },\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_HMSConstants","_HMSVideoViewMode","_hmsviews","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","HmsView","requireNativeComponent","_nextRequestId","_requestMap","Map","HmsViewComponent","exports","React","forwardRef","props","ref","trackId","style","styles","hmsView","id","HMSConstants","DEFAULT_SDK_ID","mirror","setZOrderMediaOverlay","autoSimulcast","scaleType","HMSVideoViewMode","ASPECT_FILL","hmsViewRef","useRef","applyStyles_ANDROID","setApplyStyles_ANDROID","useState","data","onChange","nativeEvent","event","setHmsViewsResolutionsState","_onDataReturned","requestId","result","error","promise","resolve","reject","delete","capture","viewManagerConfig","UIManager","getViewManagerConfig","requestMap","Promise","dispatchViewManagerCommand","findNodeHandle","current","Commands","useImperativeHandle","createElement","Platform","OS","onDataReturned","StyleSheet","create","flex"],"sources":["HmsView.tsx"],"sourcesContent":["import React, { useState, useImperativeHandle, useRef } from 'react';\nimport {\n findNodeHandle,\n requireNativeComponent,\n StyleSheet,\n UIManager,\n Platform,\n} from 'react-native';\nimport type { NativeSyntheticEvent, ViewStyle } from 'react-native';\nimport { HMSConstants } from './HMSConstants';\nimport { HMSVideoViewMode } from './HMSVideoViewMode';\nimport { setHmsViewsResolutionsState } from '../hooks/hmsviews';\n\ninterface HmsViewProps {\n data: {\n trackId: string;\n id: string;\n mirror: boolean;\n scaleType: HMSVideoViewMode;\n };\n autoSimulcast: boolean;\n setZOrderMediaOverlay: boolean;\n scaleType: HMSVideoViewMode;\n style: ViewStyle;\n onChange: Function;\n onDataReturned: Function;\n}\n\nconst HmsView = requireNativeComponent<HmsViewProps>('HMSView');\nlet _nextRequestId = 1;\nlet _requestMap = new Map();\n\nexport interface HmsComponentProps {\n trackId: string;\n style?: ViewStyle;\n mirror?: boolean;\n autoSimulcast?: boolean;\n scaleType?: HMSVideoViewMode;\n setZOrderMediaOverlay?: boolean;\n id: string;\n}\n\nexport const HmsViewComponent = React.forwardRef<any, HmsComponentProps>(\n (props, ref) => {\n const {\n trackId,\n style = styles.hmsView,\n id = HMSConstants.DEFAULT_SDK_ID,\n mirror = false,\n setZOrderMediaOverlay = false,\n autoSimulcast = true,\n scaleType = HMSVideoViewMode.ASPECT_FILL,\n } = props;\n\n const hmsViewRef: any = useRef();\n const [applyStyles_ANDROID, setApplyStyles_ANDROID] = useState(false);\n const data = {\n trackId,\n id,\n mirror,\n scaleType,\n };\n\n /**\n * This method is passed to `onChange` prop of `HmsView` Native Component.\n * It is invoked when `HmsView` emits 'topChange' event.\n */\n const onChange = ({\n nativeEvent,\n }: NativeSyntheticEvent<{\n data: { height: number; width: number };\n event: 'ON_RESOLUTION_CHANGE_EVENT';\n }>) => {\n const { event, data } = nativeEvent;\n\n setApplyStyles_ANDROID(true);\n\n if (event === 'ON_RESOLUTION_CHANGE_EVENT') {\n setHmsViewsResolutionsState(trackId, data);\n }\n };\n\n /**\n * This method is passed to `onDataReturned` prop of `HmsView` Native Component.\n * It is invoked when `HmsView` emits 'captureFrame' event.\n */\n const _onDataReturned = (event: {\n nativeEvent: { requestId: any; result: any; error: any };\n }) => {\n // We grab the relevant data out of our event.\n let { requestId, result, error } = event.nativeEvent;\n // Then we get the promise we saved earlier for the given request ID.\n let promise = _requestMap.get(requestId);\n if (result) {\n // If it was successful, we resolve the promise.\n promise.resolve(result);\n } else {\n // Otherwise, we reject it.\n promise.reject(error);\n }\n // Finally, we clean up our request map.\n _requestMap.delete(requestId);\n };\n\n const capture = async () => {\n const viewManagerConfig = UIManager.getViewManagerConfig('HMSView');\n\n let requestId = _nextRequestId++;\n let requestMap = _requestMap;\n\n // We create a promise here that will be resolved once `_onRequestDone` is\n // called.\n let promise = new Promise(function (resolve, reject) {\n requestMap.set(requestId, { resolve, reject });\n });\n\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsViewRef.current),\n viewManagerConfig.Commands.capture,\n [requestId]\n );\n return promise;\n };\n\n useImperativeHandle(ref, () => {\n return {\n capture,\n };\n });\n\n return (\n <HmsView\n ref={hmsViewRef}\n onChange={onChange}\n data={data}\n style={\n Platform.OS === 'android' ? (applyStyles_ANDROID ? style : {}) : style\n }\n autoSimulcast={autoSimulcast}\n scaleType={scaleType}\n setZOrderMediaOverlay={setZOrderMediaOverlay}\n onDataReturned={_onDataReturned}\n />\n );\n }\n);\n\nconst styles = StyleSheet.create({\n hmsView: {\n flex: 1,\n },\n});\n"],"mappings":"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"}
@@ -12,14 +12,13 @@ var _types = require("../../types");
12
12
  var _HMSEncoder = require("../../classes/HMSEncoder");
13
13
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
14
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
- const _HMSHLSPlayer = (_ref, ref) => {
16
- let {
17
- url = '',
18
- style,
19
- containerStyle,
20
- enableStats,
21
- enableControls = false
22
- } = _ref;
15
+ const _HMSHLSPlayer = ({
16
+ url = '',
17
+ style,
18
+ containerStyle,
19
+ enableStats,
20
+ enableControls = false
21
+ }, ref) => {
23
22
  const hmsHlsPlayerRef = (0, _react.useRef)(null);
24
23
  const [aspectRatio, setAspectRatio] = (0, _react.useState)(16 / 9);
25
24
  (0, _react.useImperativeHandle)(ref, () => ({
@@ -75,10 +74,9 @@ const _HMSHLSPlayer = (_ref, ref) => {
75
74
  }), []);
76
75
 
77
76
  // Handle HLS Playback events
78
- const handleHLSPlaybackEvent = _ref2 => {
79
- let {
80
- nativeEvent
81
- } = _ref2;
77
+ const handleHLSPlaybackEvent = ({
78
+ nativeEvent
79
+ }) => {
82
80
  const {
83
81
  event,
84
82
  data
@@ -102,10 +100,9 @@ const _HMSHLSPlayer = (_ref, ref) => {
102
100
  };
103
101
 
104
102
  // Handle HLS Stats events
105
- const handleHLSStatsEvent = _ref3 => {
106
- let {
107
- nativeEvent
108
- } = _ref3;
103
+ const handleHLSStatsEvent = ({
104
+ nativeEvent
105
+ }) => {
109
106
  const {
110
107
  event,
111
108
  data
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_hooks","_RCTHMSHLSPlayer","_types","_HMSEncoder","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_HMSHLSPlayer","_ref","ref","url","style","containerStyle","enableStats","enableControls","hmsHlsPlayerRef","useRef","aspectRatio","setAspectRatio","useState","useImperativeHandle","play","current","RCTHMSHLSPlayerViewManagerConfig","Commands","UIManager","dispatchViewManagerCommand","findNodeHandle","stop","undefined","pause","resume","seekForward","seconds","Error","seekBackward","seekToLivePosition","setVolume","level","handleHLSPlaybackEvent","_ref2","nativeEvent","event","data","HMSHLSPlayerPlaybackEventTypes","ON_PLAYBACK_CUE_EVENT","transformedData","HMSEncoder","transformHMSHLSCueEventData","setHMSHLSPlayerCue","ON_PLAYBACK_FAILURE_EVENT","setHMSHLSPlayerPlaybackError","error","ON_PLAYBACK_RESOLUTION_CHANGE_EVENT","setHMSHLSPlayerResolution","width","height","isNaN","setHMSHLSPlayerPlaybackState","state","handleHLSStatsEvent","_ref3","HMSHLSPlayerStatsEventTypes","ON_STATS_EVENT_ERROR","setHMSHLSPlayerStatsError","setHMSHLSPlayerStats","createElement","View","styles","container","playerWrapper","RCTHMSHLSPlayer","player","flex","onHmsHlsPlaybackEvent","onHmsHlsStatsEvent","HMSHLSPlayer","exports","React","forwardRef","StyleSheet","create","alignItems","justifyContent","backgroundColor"],"sources":["HMSHLSPlayer.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef, useState } from 'react';\nimport { View, StyleSheet, UIManager, findNodeHandle } from 'react-native';\nimport type { StyleProp, ViewStyle } from 'react-native';\n\nimport {\n setHMSHLSPlayerCue,\n setHMSHLSPlayerPlaybackError,\n setHMSHLSPlayerPlaybackState,\n setHMSHLSPlayerResolution,\n setHMSHLSPlayerStats,\n setHMSHLSPlayerStatsError,\n} from './hooks';\nimport {\n RCTHMSHLSPlayer,\n RCTHMSHLSPlayerViewManagerConfig,\n} from './RCTHMSHLSPlayer';\nimport type {\n HmsHlsPlaybackEventHandler,\n HmsHlsStatsEventHandler,\n RCTHMSHLSPlayerRef,\n} from './RCTHMSHLSPlayer';\nimport {\n HMSHLSPlayerPlaybackEventTypes,\n HMSHLSPlayerStatsEventTypes,\n} from '../../types';\nimport type { HMSHLSPlayerPlaybackCueEventData } from '../../types';\nimport { HMSEncoder } from '../../classes/HMSEncoder';\nimport type { HMSHLSPlayerPlaybackCue } from '../../stores/types';\n\nexport interface HMSHLSPlayerProps {\n url?: string;\n style?: StyleProp<ViewStyle>;\n containerStyle?: StyleProp<ViewStyle>;\n aspectRatio?: number;\n enableStats?: boolean;\n enableControls?: boolean;\n}\n\nexport interface HMSHLSPlayerRefProperties {\n play: (url?: string) => void;\n stop: () => void;\n pause: () => void;\n resume: () => void;\n seekForward: (seconds: number) => void;\n seekBackward: (seconds: number) => void;\n seekToLivePosition: () => void;\n setVolume: (level: number) => void;\n}\n\nconst _HMSHLSPlayer: React.ForwardRefRenderFunction<\n HMSHLSPlayerRefProperties,\n HMSHLSPlayerProps\n> = (\n { url = '', style, containerStyle, enableStats, enableControls = false },\n ref\n) => {\n const hmsHlsPlayerRef = useRef<RCTHMSHLSPlayerRef | null>(null);\n\n const [aspectRatio, setAspectRatio] = useState(16 / 9);\n\n useImperativeHandle(\n ref,\n () => ({\n play: (url?: string) => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.play\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.play,\n url ? [url] : ['']\n );\n }\n },\n stop: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop,\n undefined\n );\n }\n },\n pause: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause,\n undefined\n );\n }\n },\n resume: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.resume\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.resume,\n undefined\n );\n }\n },\n seekForward: (seconds: number) => {\n if (typeof seconds !== 'number') {\n throw new Error(\n seconds\n ? 'seconds must be a `number` type'\n : 'seconds was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward,\n [seconds]\n );\n }\n },\n seekBackward: (seconds: number) => {\n if (typeof seconds !== 'number') {\n throw new Error(\n seconds\n ? 'seconds must be a `number` type'\n : 'seconds was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward,\n [seconds]\n );\n }\n },\n seekToLivePosition: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition,\n undefined\n );\n }\n },\n setVolume: (level: number) => {\n if (typeof level !== 'number') {\n throw new Error(\n level ? 'level must be a `number` type' : 'level was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume,\n [level]\n );\n }\n },\n }),\n []\n );\n\n // Handle HLS Playback events\n const handleHLSPlaybackEvent: HmsHlsPlaybackEventHandler = ({\n nativeEvent,\n }) => {\n const { event, data } = nativeEvent;\n\n if (event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_CUE_EVENT) {\n const transformedData = HMSEncoder.transformHMSHLSCueEventData<\n HMSHLSPlayerPlaybackCueEventData,\n HMSHLSPlayerPlaybackCue\n >(data);\n setHMSHLSPlayerCue(transformedData);\n } else if (\n event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_FAILURE_EVENT\n ) {\n setHMSHLSPlayerPlaybackError(data.error);\n } else if (\n event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_RESOLUTION_CHANGE_EVENT\n ) {\n setHMSHLSPlayerResolution({...data});\n\n const aspectRatio = data.width / data.height;\n\n if (typeof aspectRatio === 'number' && !isNaN(aspectRatio)) {\n setAspectRatio(aspectRatio);\n }\n } else {\n setHMSHLSPlayerPlaybackState(data.state);\n }\n };\n\n // Handle HLS Stats events\n const handleHLSStatsEvent: HmsHlsStatsEventHandler = ({ nativeEvent }) => {\n const { event, data } = nativeEvent;\n\n if (event === HMSHLSPlayerStatsEventTypes.ON_STATS_EVENT_ERROR) {\n setHMSHLSPlayerStatsError(data);\n } else {\n setHMSHLSPlayerStats(data);\n }\n };\n\n return (\n <View style={[styles.container, containerStyle]}>\n <View style={[styles.playerWrapper, style]}>\n <RCTHMSHLSPlayer\n ref={hmsHlsPlayerRef}\n url={url}\n style={[\n styles.player,\n { aspectRatio: aspectRatio, flex: aspectRatio < 1 ? 1 : undefined },\n ]}\n enableStats={enableStats}\n enableControls={enableControls}\n onHmsHlsPlaybackEvent={handleHLSPlaybackEvent}\n onHmsHlsStatsEvent={handleHLSStatsEvent}\n />\n </View>\n </View>\n );\n};\n\nexport const HMSHLSPlayer = React.forwardRef<\n HMSHLSPlayerRefProperties,\n HMSHLSPlayerProps\n>(_HMSHLSPlayer);\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n playerWrapper: {\n backgroundColor: '#000000',\n alignItems: 'center',\n justifyContent: 'center',\n },\n player: {\n width: '100%',\n aspectRatio: 16 / 9,\n flex: 1,\n },\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_hooks","_RCTHMSHLSPlayer","_types","_HMSEncoder","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_HMSHLSPlayer","url","style","containerStyle","enableStats","enableControls","ref","hmsHlsPlayerRef","useRef","aspectRatio","setAspectRatio","useState","useImperativeHandle","play","current","RCTHMSHLSPlayerViewManagerConfig","Commands","UIManager","dispatchViewManagerCommand","findNodeHandle","stop","undefined","pause","resume","seekForward","seconds","Error","seekBackward","seekToLivePosition","setVolume","level","handleHLSPlaybackEvent","nativeEvent","event","data","HMSHLSPlayerPlaybackEventTypes","ON_PLAYBACK_CUE_EVENT","transformedData","HMSEncoder","transformHMSHLSCueEventData","setHMSHLSPlayerCue","ON_PLAYBACK_FAILURE_EVENT","setHMSHLSPlayerPlaybackError","error","ON_PLAYBACK_RESOLUTION_CHANGE_EVENT","setHMSHLSPlayerResolution","width","height","isNaN","setHMSHLSPlayerPlaybackState","state","handleHLSStatsEvent","HMSHLSPlayerStatsEventTypes","ON_STATS_EVENT_ERROR","setHMSHLSPlayerStatsError","setHMSHLSPlayerStats","createElement","View","styles","container","playerWrapper","RCTHMSHLSPlayer","player","flex","onHmsHlsPlaybackEvent","onHmsHlsStatsEvent","HMSHLSPlayer","exports","React","forwardRef","StyleSheet","create","alignItems","justifyContent","backgroundColor"],"sources":["HMSHLSPlayer.tsx"],"sourcesContent":["import React, { useImperativeHandle, useRef, useState } from 'react';\nimport { View, StyleSheet, UIManager, findNodeHandle } from 'react-native';\nimport type { StyleProp, ViewStyle } from 'react-native';\n\nimport {\n setHMSHLSPlayerCue,\n setHMSHLSPlayerPlaybackError,\n setHMSHLSPlayerPlaybackState,\n setHMSHLSPlayerResolution,\n setHMSHLSPlayerStats,\n setHMSHLSPlayerStatsError,\n} from './hooks';\nimport {\n RCTHMSHLSPlayer,\n RCTHMSHLSPlayerViewManagerConfig,\n} from './RCTHMSHLSPlayer';\nimport type {\n HmsHlsPlaybackEventHandler,\n HmsHlsStatsEventHandler,\n RCTHMSHLSPlayerRef,\n} from './RCTHMSHLSPlayer';\nimport {\n HMSHLSPlayerPlaybackEventTypes,\n HMSHLSPlayerStatsEventTypes,\n} from '../../types';\nimport type { HMSHLSPlayerPlaybackCueEventData } from '../../types';\nimport { HMSEncoder } from '../../classes/HMSEncoder';\nimport type { HMSHLSPlayerPlaybackCue } from '../../stores/types';\n\nexport interface HMSHLSPlayerProps {\n url?: string;\n style?: StyleProp<ViewStyle>;\n containerStyle?: StyleProp<ViewStyle>;\n aspectRatio?: number;\n enableStats?: boolean;\n enableControls?: boolean;\n}\n\nexport interface HMSHLSPlayerRefProperties {\n play: (url?: string) => void;\n stop: () => void;\n pause: () => void;\n resume: () => void;\n seekForward: (seconds: number) => void;\n seekBackward: (seconds: number) => void;\n seekToLivePosition: () => void;\n setVolume: (level: number) => void;\n}\n\nconst _HMSHLSPlayer: React.ForwardRefRenderFunction<\n HMSHLSPlayerRefProperties,\n HMSHLSPlayerProps\n> = (\n { url = '', style, containerStyle, enableStats, enableControls = false },\n ref\n) => {\n const hmsHlsPlayerRef = useRef<RCTHMSHLSPlayerRef | null>(null);\n\n const [aspectRatio, setAspectRatio] = useState(16 / 9);\n\n useImperativeHandle(\n ref,\n () => ({\n play: (url?: string) => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.play\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.play,\n url ? [url] : ['']\n );\n }\n },\n stop: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.stop,\n undefined\n );\n }\n },\n pause: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.pause,\n undefined\n );\n }\n },\n resume: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.resume\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.resume,\n undefined\n );\n }\n },\n seekForward: (seconds: number) => {\n if (typeof seconds !== 'number') {\n throw new Error(\n seconds\n ? 'seconds must be a `number` type'\n : 'seconds was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekForward,\n [seconds]\n );\n }\n },\n seekBackward: (seconds: number) => {\n if (typeof seconds !== 'number') {\n throw new Error(\n seconds\n ? 'seconds must be a `number` type'\n : 'seconds was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekBackward,\n [seconds]\n );\n }\n },\n seekToLivePosition: () => {\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.seekToLivePosition,\n undefined\n );\n }\n },\n setVolume: (level: number) => {\n if (typeof level !== 'number') {\n throw new Error(\n level ? 'level must be a `number` type' : 'level was not provided'\n );\n }\n\n if (\n hmsHlsPlayerRef.current &&\n RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume\n ) {\n UIManager.dispatchViewManagerCommand(\n findNodeHandle(hmsHlsPlayerRef.current),\n RCTHMSHLSPlayerViewManagerConfig.Commands.setVolume,\n [level]\n );\n }\n },\n }),\n []\n );\n\n // Handle HLS Playback events\n const handleHLSPlaybackEvent: HmsHlsPlaybackEventHandler = ({\n nativeEvent,\n }) => {\n const { event, data } = nativeEvent;\n\n if (event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_CUE_EVENT) {\n const transformedData = HMSEncoder.transformHMSHLSCueEventData<\n HMSHLSPlayerPlaybackCueEventData,\n HMSHLSPlayerPlaybackCue\n >(data);\n setHMSHLSPlayerCue(transformedData);\n } else if (\n event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_FAILURE_EVENT\n ) {\n setHMSHLSPlayerPlaybackError(data.error);\n } else if (\n event === HMSHLSPlayerPlaybackEventTypes.ON_PLAYBACK_RESOLUTION_CHANGE_EVENT\n ) {\n setHMSHLSPlayerResolution({...data});\n\n const aspectRatio = data.width / data.height;\n\n if (typeof aspectRatio === 'number' && !isNaN(aspectRatio)) {\n setAspectRatio(aspectRatio);\n }\n } else {\n setHMSHLSPlayerPlaybackState(data.state);\n }\n };\n\n // Handle HLS Stats events\n const handleHLSStatsEvent: HmsHlsStatsEventHandler = ({ nativeEvent }) => {\n const { event, data } = nativeEvent;\n\n if (event === HMSHLSPlayerStatsEventTypes.ON_STATS_EVENT_ERROR) {\n setHMSHLSPlayerStatsError(data);\n } else {\n setHMSHLSPlayerStats(data);\n }\n };\n\n return (\n <View style={[styles.container, containerStyle]}>\n <View style={[styles.playerWrapper, style]}>\n <RCTHMSHLSPlayer\n ref={hmsHlsPlayerRef}\n url={url}\n style={[\n styles.player,\n { aspectRatio: aspectRatio, flex: aspectRatio < 1 ? 1 : undefined },\n ]}\n enableStats={enableStats}\n enableControls={enableControls}\n onHmsHlsPlaybackEvent={handleHLSPlaybackEvent}\n onHmsHlsStatsEvent={handleHLSStatsEvent}\n />\n </View>\n </View>\n );\n};\n\nexport const HMSHLSPlayer = React.forwardRef<\n HMSHLSPlayerRefProperties,\n HMSHLSPlayerProps\n>(_HMSHLSPlayer);\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n playerWrapper: {\n backgroundColor: '#000000',\n alignItems: 'center',\n justifyContent: 'center',\n },\n player: {\n width: '100%',\n aspectRatio: 16 / 9,\n flex: 1,\n },\n});\n"],"mappings":"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"}
@@ -20,8 +20,7 @@ const eventType = _HMSUpdateListenerActions.HMSUpdateListenerActions.ON_PEER_UPD
20
20
 
21
21
  // TODO: How to handle events which have already been received?
22
22
  // TODO(DOUBT): add HMSInstance as dependency because of actions enabling/disabling events on HMSInstance?
23
- const useHMSPeerUpdates = function (effect) {
24
- let deps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
23
+ const useHMSPeerUpdates = (effect, deps = []) => {
25
24
  React.useEffect(() => {
26
25
  if (_HMSEventEmitter.HMSEventEmitter.listenerCount(eventType) <= 0) {
27
26
  addPeerUpdateSubscription();
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_HMSConstants","_HMSEncoder","_HMSEventEmitter","_HMSLogger","_HMSNativeEventListener","_interopRequireDefault","_HMSPeerUpdate","_HMSPeersCache","_HMSUpdateListenerActions","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","eventType","HMSUpdateListenerActions","ON_PEER_UPDATE","useHMSPeerUpdates","effect","deps","arguments","length","undefined","useEffect","HMSEventEmitter","listenerCount","addPeerUpdateSubscription","subscription","addListener","remove","removePeerUpdateSubscription","exports","peerUpdateSubscription","HMSNativeEventListener","HMSConstants","DEFAULT_SDK_ID","peerData","_getHmsPeersCache","_getLogger","data","peer","type","ordinal","HMSPeerUpdateOrdinals","keys","peerID","HMSEncoder","encodeHmsPeer","encodeHmsPeerUpdate","getHmsPeersCache","updatePeerCache","getLogger","verbose","emit"],"sources":["useHMSPeerUpdates.ts"],"sourcesContent":["import * as React from 'react';\n\nimport { HMSConstants } from '../classes/HMSConstants';\nimport { HMSEncoder } from '../classes/HMSEncoder';\nimport { HMSEventEmitter } from '../classes/HMSEventEmitter';\nimport { getLogger } from '../classes/HMSLogger';\nimport HMSNativeEventListener from '../classes/HMSNativeEventListener';\nimport type { HMSNativeEventSubscription } from '../classes/HMSNativeEventListener';\nimport type { HMSPeer } from '../classes/HMSPeer';\nimport { HMSPeerUpdate, HMSPeerUpdateOrdinals } from '../classes/HMSPeerUpdate';\nimport { getHmsPeersCache } from '../classes/HMSPeersCache';\nimport { HMSUpdateListenerActions } from '../classes/HMSUpdateListenerActions';\n\nconst eventType = HMSUpdateListenerActions.ON_PEER_UPDATE;\n\n// TODO: How to handle events which have already been received?\n// TODO(DOUBT): add HMSInstance as dependency because of actions enabling/disabling events on HMSInstance?\nexport const useHMSPeerUpdates = (\n effect: (data: { peer: HMSPeer; type: HMSPeerUpdate }) => void,\n deps: React.DependencyList | undefined = []\n) => {\n React.useEffect(() => {\n if (HMSEventEmitter.listenerCount(eventType) <= 0) {\n addPeerUpdateSubscription();\n }\n\n const subscription = HMSEventEmitter.addListener(eventType, effect, null);\n\n return () => {\n subscription.remove();\n\n if (HMSEventEmitter.listenerCount(eventType) <= 0) {\n removePeerUpdateSubscription();\n }\n };\n }, deps);\n};\n\nlet peerUpdateSubscription: HMSNativeEventSubscription | null = null;\n\nfunction addPeerUpdateSubscription() {\n if (peerUpdateSubscription !== null) {\n return;\n }\n\n peerUpdateSubscription = HMSNativeEventListener.addListener(\n HMSConstants.DEFAULT_SDK_ID,\n HMSUpdateListenerActions.ON_PEER_UPDATE,\n (peerData: any) => {\n const data: { peer: any; type: any } = {\n peer: peerData,\n type: null,\n };\n\n for (const ordinal of HMSPeerUpdateOrdinals.keys()) {\n if (ordinal in peerData) {\n data.peer.peerID = peerData[ordinal];\n data.type = ordinal;\n break;\n }\n }\n\n const peer: HMSPeer = HMSEncoder.encodeHmsPeer(data.peer);\n const type = HMSEncoder.encodeHmsPeerUpdate(data.type) || data.type;\n\n getHmsPeersCache()?.updatePeerCache(data.peer.peerID, data.peer, type);\n\n getLogger()?.verbose('#Listener ON_PEER_LISTENER_CALL', {\n peer,\n type,\n });\n\n HMSEventEmitter.emit(eventType, { peer, type });\n }\n );\n}\n\nfunction removePeerUpdateSubscription() {\n if (peerUpdateSubscription === null) {\n return;\n }\n\n peerUpdateSubscription.remove();\n peerUpdateSubscription = null;\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_HMSConstants","_HMSEncoder","_HMSEventEmitter","_HMSLogger","_HMSNativeEventListener","_interopRequireDefault","_HMSPeerUpdate","_HMSPeersCache","_HMSUpdateListenerActions","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","eventType","HMSUpdateListenerActions","ON_PEER_UPDATE","useHMSPeerUpdates","effect","deps","useEffect","HMSEventEmitter","listenerCount","addPeerUpdateSubscription","subscription","addListener","remove","removePeerUpdateSubscription","exports","peerUpdateSubscription","HMSNativeEventListener","HMSConstants","DEFAULT_SDK_ID","peerData","_getHmsPeersCache","_getLogger","data","peer","type","ordinal","HMSPeerUpdateOrdinals","keys","peerID","HMSEncoder","encodeHmsPeer","encodeHmsPeerUpdate","getHmsPeersCache","updatePeerCache","getLogger","verbose","emit"],"sources":["useHMSPeerUpdates.ts"],"sourcesContent":["import * as React from 'react';\n\nimport { HMSConstants } from '../classes/HMSConstants';\nimport { HMSEncoder } from '../classes/HMSEncoder';\nimport { HMSEventEmitter } from '../classes/HMSEventEmitter';\nimport { getLogger } from '../classes/HMSLogger';\nimport HMSNativeEventListener from '../classes/HMSNativeEventListener';\nimport type { HMSNativeEventSubscription } from '../classes/HMSNativeEventListener';\nimport type { HMSPeer } from '../classes/HMSPeer';\nimport { HMSPeerUpdate, HMSPeerUpdateOrdinals } from '../classes/HMSPeerUpdate';\nimport { getHmsPeersCache } from '../classes/HMSPeersCache';\nimport { HMSUpdateListenerActions } from '../classes/HMSUpdateListenerActions';\n\nconst eventType = HMSUpdateListenerActions.ON_PEER_UPDATE;\n\n// TODO: How to handle events which have already been received?\n// TODO(DOUBT): add HMSInstance as dependency because of actions enabling/disabling events on HMSInstance?\nexport const useHMSPeerUpdates = (\n effect: (data: { peer: HMSPeer; type: HMSPeerUpdate }) => void,\n deps: React.DependencyList | undefined = []\n) => {\n React.useEffect(() => {\n if (HMSEventEmitter.listenerCount(eventType) <= 0) {\n addPeerUpdateSubscription();\n }\n\n const subscription = HMSEventEmitter.addListener(eventType, effect, null);\n\n return () => {\n subscription.remove();\n\n if (HMSEventEmitter.listenerCount(eventType) <= 0) {\n removePeerUpdateSubscription();\n }\n };\n }, deps);\n};\n\nlet peerUpdateSubscription: HMSNativeEventSubscription | null = null;\n\nfunction addPeerUpdateSubscription() {\n if (peerUpdateSubscription !== null) {\n return;\n }\n\n peerUpdateSubscription = HMSNativeEventListener.addListener(\n HMSConstants.DEFAULT_SDK_ID,\n HMSUpdateListenerActions.ON_PEER_UPDATE,\n (peerData: any) => {\n const data: { peer: any; type: any } = {\n peer: peerData,\n type: null,\n };\n\n for (const ordinal of HMSPeerUpdateOrdinals.keys()) {\n if (ordinal in peerData) {\n data.peer.peerID = peerData[ordinal];\n data.type = ordinal;\n break;\n }\n }\n\n const peer: HMSPeer = HMSEncoder.encodeHmsPeer(data.peer);\n const type = HMSEncoder.encodeHmsPeerUpdate(data.type) || data.type;\n\n getHmsPeersCache()?.updatePeerCache(data.peer.peerID, data.peer, type);\n\n getLogger()?.verbose('#Listener ON_PEER_LISTENER_CALL', {\n peer,\n type,\n });\n\n HMSEventEmitter.emit(eventType, { peer, type });\n }\n );\n}\n\nfunction removePeerUpdateSubscription() {\n if (peerUpdateSubscription === null) {\n return;\n }\n\n peerUpdateSubscription.remove();\n peerUpdateSubscription = null;\n}\n"],"mappings":"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"}
@@ -8,10 +8,8 @@ var _zustand = require("zustand");
8
8
  var _middleware = require("zustand/middleware");
9
9
  var _hlsPlayerPlaybackSlice = require("./hls-player-playback-slice");
10
10
  var _hmsviewsSlice = require("./hmsviews-slice");
11
- const useHMSStore = exports.useHMSStore = (0, _zustand.create)()((0, _middleware.subscribeWithSelector)(function () {
12
- return {
13
- ...(0, _hlsPlayerPlaybackSlice.createHMSHLSPlayerPlaybackSlice)(...arguments),
14
- ...(0, _hmsviewsSlice.createHMSViewsSlice)(...arguments)
15
- };
16
- }));
11
+ const useHMSStore = exports.useHMSStore = (0, _zustand.create)()((0, _middleware.subscribeWithSelector)((...a) => ({
12
+ ...(0, _hlsPlayerPlaybackSlice.createHMSHLSPlayerPlaybackSlice)(...a),
13
+ ...(0, _hmsviewsSlice.createHMSViewsSlice)(...a)
14
+ })));
17
15
  //# sourceMappingURL=hms-store.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_zustand","require","_middleware","_hlsPlayerPlaybackSlice","_hmsviewsSlice","useHMSStore","exports","create","subscribeWithSelector","createHMSHLSPlayerPlaybackSlice","arguments","createHMSViewsSlice"],"sources":["hms-store.ts"],"sourcesContent":["import { create } from 'zustand';\nimport { subscribeWithSelector } from 'zustand/middleware';\n\nimport { createHMSHLSPlayerPlaybackSlice } from './hls-player-playback-slice';\nimport { createHMSViewsSlice } from './hmsviews-slice';\nimport type { HMSStore } from './types';\n\nexport const useHMSStore = create<HMSStore>()(\n subscribeWithSelector((...a) => ({\n ...createHMSHLSPlayerPlaybackSlice(...a),\n ...createHMSViewsSlice(...a)\n }))\n);\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAEA,IAAAE,uBAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AAGO,MAAMI,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,IAAAE,eAAM,EAAW,CAAC,CAC3C,IAAAC,iCAAqB,EAAC;EAAA,OAAW;IAC/B,GAAG,IAAAC,uDAA+B,EAAC,GAAAC,SAAI,CAAC;IACxC,GAAG,IAAAC,kCAAmB,EAAC,GAAAD,SAAI;EAC7B,CAAC;AAAA,CAAC,CACJ,CAAC"}
1
+ {"version":3,"names":["_zustand","require","_middleware","_hlsPlayerPlaybackSlice","_hmsviewsSlice","useHMSStore","exports","create","subscribeWithSelector","a","createHMSHLSPlayerPlaybackSlice","createHMSViewsSlice"],"sources":["hms-store.ts"],"sourcesContent":["import { create } from 'zustand';\nimport { subscribeWithSelector } from 'zustand/middleware';\n\nimport { createHMSHLSPlayerPlaybackSlice } from './hls-player-playback-slice';\nimport { createHMSViewsSlice } from './hmsviews-slice';\nimport type { HMSStore } from './types';\n\nexport const useHMSStore = create<HMSStore>()(\n subscribeWithSelector((...a) => ({\n ...createHMSHLSPlayerPlaybackSlice(...a),\n ...createHMSViewsSlice(...a)\n }))\n);\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAEA,IAAAE,uBAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AAGO,MAAMI,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,IAAAE,eAAM,EAAW,CAAC,CAC3C,IAAAC,iCAAqB,EAAC,CAAC,GAAGC,CAAC,MAAM;EAC/B,GAAG,IAAAC,uDAA+B,EAAC,GAAGD,CAAC,CAAC;EACxC,GAAG,IAAAE,kCAAmB,EAAC,GAAGF,CAAC;AAC7B,CAAC,CAAC,CACJ,CAAC"}
@@ -113,12 +113,9 @@ class EventEmitter {
113
113
  *
114
114
  * emitter.emit('someEvent', 'abc'); // logs 'abc'
115
115
  */
116
- emit(eventType) {
116
+ emit(eventType, ...args) {
117
117
  const subscriptions = this._subscriber.getSubscriptionsForType(eventType);
118
118
  if (subscriptions) {
119
- for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
120
- args[_key - 1] = arguments[_key];
121
- }
122
119
  for (let i = 0, l = subscriptions.length; i < l; i++) {
123
120
  const subscription = subscriptions[i];
124
121
 
@@ -1 +1 @@
1
- {"version":3,"names":["_EmitterSubscription","require","_EventSubscriptionVendor","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","sparseFilterPredicate","EventEmitter","constructor","subscriber","_subscriber","EventSubscriptionVendor","addListener","eventType","listener","context","addSubscription","EmitterSubscription","removeAllListeners","removeAllSubscriptions","removeSubscription","subscription","emitter","console","warn","listenerCount","subscriptions","getSubscriptionsForType","filter","length","emit","_len","arguments","args","Array","_key","i","l","apply","removeListener","remove","exports"],"sources":["EventEmitter.ts"],"sourcesContent":["import { EmitterSubscription } from './_EmitterSubscription';\nimport { EventSubscriptionVendor } from './_EventSubscriptionVendor';\n\nconst sparseFilterPredicate = () => true;\n\nexport { EmitterSubscription } from './_EmitterSubscription';\n\n/**\n * @class EventEmitter\n * @description\n * An EventEmitter is responsible for managing a set of listeners and publishing\n * events to them when it is told that such events happened. In addition to the\n * data for the given event it also sends a event control object which allows\n * the listeners/handlers to prevent the default behavior of the given event.\n *\n * The emitter is designed to be generic enough to support all the different\n * contexts in which one might want to emit events. It is a simple multicast\n * mechanism on top of which extra functionality can be composed. For example, a\n * more advanced emitter may use an EventHolder and EventFactory.\n */\nexport class EventEmitter {\n _subscriber: EventSubscriptionVendor;\n\n /**\n * @constructor\n *\n * @param {EventSubscriptionVendor} subscriber - Optional subscriber instance\n * to use. If omitted, a new subscriber will be created for the emitter.\n */\n constructor(subscriber?: EventSubscriptionVendor | null) {\n this._subscriber = subscriber || new EventSubscriptionVendor();\n }\n\n /**\n * Adds a listener to be invoked when events of the specified type are\n * emitted. An optional calling context may be provided. The data arguments\n * emitted will be passed to the listener function.\n *\n * TODO: Annotate the listener arg's type. This is tricky because listeners\n * can be invoked with varargs.\n *\n * @param {string} eventType - Name of the event to listen to\n * @param {function} listener - Function to invoke when the specified event is\n * emitted\n * @param {*} context - Optional context object to use when invoking the\n * listener\n */\n addListener(\n eventType: string,\n listener: Function,\n context: Object | null | undefined\n ): EmitterSubscription {\n return this._subscriber.addSubscription(\n eventType,\n new EmitterSubscription(this, this._subscriber, listener, context)\n ) as EmitterSubscription;\n }\n\n /**\n * Removes all of the registered listeners, including those registered as\n * listener maps.\n *\n * @param {?string} eventType - Optional name of the event whose registered\n * listeners to remove\n */\n removeAllListeners(eventType: string | undefined | null) {\n this._subscriber.removeAllSubscriptions(eventType);\n }\n\n /**\n * Removes a specific subscription. Called by the `remove()` method of the\n * subscription itself to ensure any necessary cleanup is performed.\n */\n removeSubscription(subscription: EmitterSubscription) {\n if (subscription.emitter !== this) {\n console.warn('Subscription does not belong to this emitter.'); // TODO: use HMSLogger here\n return;\n }\n\n this._subscriber.removeSubscription(subscription);\n }\n\n /**\n * Returns the number of listeners that are currently registered for the given\n * event.\n *\n * @param {string} eventType - Name of the event to query\n * @returns {number}\n */\n listenerCount(eventType: string): number {\n const subscriptions = this._subscriber.getSubscriptionsForType(eventType);\n return subscriptions\n ? // We filter out missing entries because the array is sparse.\n // \"callbackfn is called only for elements of the array which actually\n // exist; it is not called for missing elements of the array.\"\n // https://www.ecma-international.org/ecma-262/9.0/index.html#sec-array.prototype.filter\n subscriptions.filter(sparseFilterPredicate).length\n : 0;\n }\n\n /**\n * Emits an event of the given type with the given data. All handlers of that\n * particular type will be notified.\n *\n * @param {string} eventType - Name of the event to emit\n * @param {...*} Arbitrary arguments to be passed to each registered listener\n *\n * @example\n * emitter.addListener('someEvent', function(message) {\n * console.log(message);\n * });\n *\n * emitter.emit('someEvent', 'abc'); // logs 'abc'\n */\n emit(eventType: string, ...args: any[]) {\n const subscriptions = this._subscriber.getSubscriptionsForType(\n eventType\n ) as EmitterSubscription[] | null | undefined;\n if (subscriptions) {\n for (let i = 0, l = subscriptions.length; i < l; i++) {\n const subscription = subscriptions[i];\n\n // The subscription may have been removed during this event loop.\n if (subscription && subscription.listener) {\n subscription.listener.apply(subscription.context, args);\n }\n }\n }\n }\n\n /**\n * Removes the given listener for event of specific type.\n *\n * @param {string} eventType - Name of the event to emit\n * @param {function} listener - Function to invoke when the specified event is\n * emitted\n *\n * @example\n * emitter.removeListener('someEvent', function(message) {\n * console.log(message);\n * }); // removes the listener if already registered\n *\n */\n removeListener(eventType: string, listener: Function) {\n const subscriptions = this._subscriber.getSubscriptionsForType(\n eventType\n ) as EmitterSubscription[] | null | undefined;\n if (subscriptions) {\n for (let i = 0, l = subscriptions.length; i < l; i++) {\n const subscription = subscriptions[i];\n\n // The subscription may have been removed during this event loop.\n // its listener matches the listener in method parameters\n if (subscription && subscription.listener === listener) {\n subscription.remove();\n }\n }\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_EmitterSubscription","require","_EventSubscriptionVendor","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","sparseFilterPredicate","EventEmitter","constructor","subscriber","_subscriber","EventSubscriptionVendor","addListener","eventType","listener","context","addSubscription","EmitterSubscription","removeAllListeners","removeAllSubscriptions","removeSubscription","subscription","emitter","console","warn","listenerCount","subscriptions","getSubscriptionsForType","filter","length","emit","args","i","l","apply","removeListener","remove","exports"],"sources":["EventEmitter.ts"],"sourcesContent":["import { EmitterSubscription } from './_EmitterSubscription';\nimport { EventSubscriptionVendor } from './_EventSubscriptionVendor';\n\nconst sparseFilterPredicate = () => true;\n\nexport { EmitterSubscription } from './_EmitterSubscription';\n\n/**\n * @class EventEmitter\n * @description\n * An EventEmitter is responsible for managing a set of listeners and publishing\n * events to them when it is told that such events happened. In addition to the\n * data for the given event it also sends a event control object which allows\n * the listeners/handlers to prevent the default behavior of the given event.\n *\n * The emitter is designed to be generic enough to support all the different\n * contexts in which one might want to emit events. It is a simple multicast\n * mechanism on top of which extra functionality can be composed. For example, a\n * more advanced emitter may use an EventHolder and EventFactory.\n */\nexport class EventEmitter {\n _subscriber: EventSubscriptionVendor;\n\n /**\n * @constructor\n *\n * @param {EventSubscriptionVendor} subscriber - Optional subscriber instance\n * to use. If omitted, a new subscriber will be created for the emitter.\n */\n constructor(subscriber?: EventSubscriptionVendor | null) {\n this._subscriber = subscriber || new EventSubscriptionVendor();\n }\n\n /**\n * Adds a listener to be invoked when events of the specified type are\n * emitted. An optional calling context may be provided. The data arguments\n * emitted will be passed to the listener function.\n *\n * TODO: Annotate the listener arg's type. This is tricky because listeners\n * can be invoked with varargs.\n *\n * @param {string} eventType - Name of the event to listen to\n * @param {function} listener - Function to invoke when the specified event is\n * emitted\n * @param {*} context - Optional context object to use when invoking the\n * listener\n */\n addListener(\n eventType: string,\n listener: Function,\n context: Object | null | undefined\n ): EmitterSubscription {\n return this._subscriber.addSubscription(\n eventType,\n new EmitterSubscription(this, this._subscriber, listener, context)\n ) as EmitterSubscription;\n }\n\n /**\n * Removes all of the registered listeners, including those registered as\n * listener maps.\n *\n * @param {?string} eventType - Optional name of the event whose registered\n * listeners to remove\n */\n removeAllListeners(eventType: string | undefined | null) {\n this._subscriber.removeAllSubscriptions(eventType);\n }\n\n /**\n * Removes a specific subscription. Called by the `remove()` method of the\n * subscription itself to ensure any necessary cleanup is performed.\n */\n removeSubscription(subscription: EmitterSubscription) {\n if (subscription.emitter !== this) {\n console.warn('Subscription does not belong to this emitter.'); // TODO: use HMSLogger here\n return;\n }\n\n this._subscriber.removeSubscription(subscription);\n }\n\n /**\n * Returns the number of listeners that are currently registered for the given\n * event.\n *\n * @param {string} eventType - Name of the event to query\n * @returns {number}\n */\n listenerCount(eventType: string): number {\n const subscriptions = this._subscriber.getSubscriptionsForType(eventType);\n return subscriptions\n ? // We filter out missing entries because the array is sparse.\n // \"callbackfn is called only for elements of the array which actually\n // exist; it is not called for missing elements of the array.\"\n // https://www.ecma-international.org/ecma-262/9.0/index.html#sec-array.prototype.filter\n subscriptions.filter(sparseFilterPredicate).length\n : 0;\n }\n\n /**\n * Emits an event of the given type with the given data. All handlers of that\n * particular type will be notified.\n *\n * @param {string} eventType - Name of the event to emit\n * @param {...*} Arbitrary arguments to be passed to each registered listener\n *\n * @example\n * emitter.addListener('someEvent', function(message) {\n * console.log(message);\n * });\n *\n * emitter.emit('someEvent', 'abc'); // logs 'abc'\n */\n emit(eventType: string, ...args: any[]) {\n const subscriptions = this._subscriber.getSubscriptionsForType(\n eventType\n ) as EmitterSubscription[] | null | undefined;\n if (subscriptions) {\n for (let i = 0, l = subscriptions.length; i < l; i++) {\n const subscription = subscriptions[i];\n\n // The subscription may have been removed during this event loop.\n if (subscription && subscription.listener) {\n subscription.listener.apply(subscription.context, args);\n }\n }\n }\n }\n\n /**\n * Removes the given listener for event of specific type.\n *\n * @param {string} eventType - Name of the event to emit\n * @param {function} listener - Function to invoke when the specified event is\n * emitted\n *\n * @example\n * emitter.removeListener('someEvent', function(message) {\n * console.log(message);\n * }); // removes the listener if already registered\n *\n */\n removeListener(eventType: string, listener: Function) {\n const subscriptions = this._subscriber.getSubscriptionsForType(\n eventType\n ) as EmitterSubscription[] | null | undefined;\n if (subscriptions) {\n for (let i = 0, l = subscriptions.length; i < l; i++) {\n const subscription = subscriptions[i];\n\n // The subscription may have been removed during this event loop.\n // its listener matches the listener in method parameters\n if (subscription && subscription.listener === listener) {\n subscription.remove();\n }\n }\n }\n }\n}\n"],"mappings":"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"}
@@ -7,8 +7,7 @@ export class HMSCameraControl {
7
7
  * @param {boolean} [flash=false] flash - value indicating whether to use flash while capturing image or not
8
8
  * @returns Promise - which is resolved with the file path of the captured image saved on the disk
9
9
  */
10
- static captureImageAtMaxSupportedResolution() {
11
- let flash = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
10
+ static captureImageAtMaxSupportedResolution(flash = false) {
12
11
  return HMSManager.captureImageAtMaxSupportedResolution({
13
12
  id: HMSConstants.DEFAULT_SDK_ID,
14
13
  flash
@@ -1 +1 @@
1
- {"version":3,"names":["HMSConstants","HMSManager","HMSCameraControl","captureImageAtMaxSupportedResolution","flash","arguments","length","undefined","id","DEFAULT_SDK_ID"],"sources":["HMSCameraControl.ts"],"sourcesContent":["import { HMSConstants } from './HMSConstants';\n\nimport HMSManager from './HMSManagerModule';\n\nexport class HMSCameraControl {\n /**\n * It captures the image from the device camera at max possible resolution.\n *\n * @param {boolean} [flash=false] flash - value indicating whether to use flash while capturing image or not\n * @returns Promise - which is resolved with the file path of the captured image saved on the disk\n */\n static captureImageAtMaxSupportedResolution(\n flash: boolean = false\n ): Promise<string> {\n return HMSManager.captureImageAtMaxSupportedResolution({\n id: HMSConstants.DEFAULT_SDK_ID,\n flash,\n });\n }\n}\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,gBAAgB;AAE7C,OAAOC,UAAU,MAAM,oBAAoB;AAE3C,OAAO,MAAMC,gBAAgB,CAAC;EAC5B;AACF;AACA;AACA;AACA;AACA;EACE,OAAOC,oCAAoCA,CAAA,EAExB;IAAA,IADjBC,KAAc,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,KAAK;IAEtB,OAAOJ,UAAU,CAACE,oCAAoC,CAAC;MACrDK,EAAE,EAAER,YAAY,CAACS,cAAc;MAC/BL;IACF,CAAC,CAAC;EACJ;AACF"}
1
+ {"version":3,"names":["HMSConstants","HMSManager","HMSCameraControl","captureImageAtMaxSupportedResolution","flash","id","DEFAULT_SDK_ID"],"sources":["HMSCameraControl.ts"],"sourcesContent":["import { HMSConstants } from './HMSConstants';\n\nimport HMSManager from './HMSManagerModule';\n\nexport class HMSCameraControl {\n /**\n * It captures the image from the device camera at max possible resolution.\n *\n * @param {boolean} [flash=false] flash - value indicating whether to use flash while capturing image or not\n * @returns Promise - which is resolved with the file path of the captured image saved on the disk\n */\n static captureImageAtMaxSupportedResolution(\n flash: boolean = false\n ): Promise<string> {\n return HMSManager.captureImageAtMaxSupportedResolution({\n id: HMSConstants.DEFAULT_SDK_ID,\n flash,\n });\n }\n}\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,gBAAgB;AAE7C,OAAOC,UAAU,MAAM,oBAAoB;AAE3C,OAAO,MAAMC,gBAAgB,CAAC;EAC5B;AACF;AACA;AACA;AACA;AACA;EACE,OAAOC,oCAAoCA,CACzCC,KAAc,GAAG,KAAK,EACL;IACjB,OAAOH,UAAU,CAACE,oCAAoC,CAAC;MACrDE,EAAE,EAAEL,YAAY,CAACM,cAAc;MAC/BF;IACF,CAAC,CAAC;EACJ;AACF"}
@@ -2,7 +2,7 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
2
2
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3
3
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
4
4
  import React from 'react';
5
- import { AppState, Platform } from 'react-native';
5
+ import { Platform } from 'react-native';
6
6
  import { HMSEncoder } from './HMSEncoder';
7
7
  import { HMSHelper } from './HMSHelper';
8
8
  import { getLogger, logger, setLogger } from './HMSLogger';
@@ -21,7 +21,6 @@ const ReactNativeVersion = require('react-native/Libraries/Core/ReactNativeVersi
21
21
  let HmsSdk;
22
22
  export class HMSSDK {
23
23
  constructor(id) {
24
- var _this = this;
25
24
  _defineProperty(this, "id", void 0);
26
25
  _defineProperty(this, "muteStatus", void 0);
27
26
  _defineProperty(this, "appStateSubscription", void 0);
@@ -100,7 +99,6 @@ export class HMSSDK {
100
99
  config,
101
100
  id: this.id
102
101
  });
103
- this.addAppStateListener();
104
102
  setHmsPeersCache(new HMSPeersCache(this.id));
105
103
  setHmsRoomCache(new HMSRoomCache(this.id));
106
104
  await HMSManager.join({
@@ -194,17 +192,16 @@ export class HMSSDK {
194
192
  * @param message the message that is to be sent
195
193
  * @param type the default type is set to CHAT. You can pass a custom type here for sending events like Emoji Reactions, Notifications, etc
196
194
  */
197
- _defineProperty(this, "sendBroadcastMessage", async function (message) {
198
- let type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'chat';
195
+ _defineProperty(this, "sendBroadcastMessage", async (message, type = 'chat') => {
199
196
  logger === null || logger === void 0 || logger.verbose('#Function sendBroadcastMessage', {
200
197
  message,
201
198
  type: type || null,
202
- id: _this.id
199
+ id: this.id
203
200
  });
204
201
  const data = await HMSManager.sendBroadcastMessage({
205
202
  message,
206
203
  type: type || null,
207
- id: _this.id
204
+ id: this.id
208
205
  });
209
206
  return data;
210
207
  });
@@ -216,18 +213,17 @@ export class HMSSDK {
216
213
  *
217
214
  * @memberof HMSSDK
218
215
  */
219
- _defineProperty(this, "sendGroupMessage", async function (message, roles) {
220
- let type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'chat';
216
+ _defineProperty(this, "sendGroupMessage", async (message, roles, type = 'chat') => {
221
217
  logger === null || logger === void 0 || logger.verbose('#Function sendGroupMessage', {
222
218
  message,
223
219
  roles,
224
- id: _this.id,
220
+ id: this.id,
225
221
  type: type || null
226
222
  });
227
223
  const data = await HMSManager.sendGroupMessage({
228
224
  message,
229
225
  roles: HMSHelper.getRoleNames(roles),
230
- id: _this.id,
226
+ id: this.id,
231
227
  type: type || null
232
228
  });
233
229
  return data;
@@ -240,18 +236,17 @@ export class HMSSDK {
240
236
  *
241
237
  * @memberof HMSSDK
242
238
  */
243
- _defineProperty(this, "sendDirectMessage", async function (message, peer) {
244
- let type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'chat';
239
+ _defineProperty(this, "sendDirectMessage", async (message, peer, type = 'chat') => {
245
240
  logger === null || logger === void 0 || logger.verbose('#Function sendDirectMessage', {
246
241
  message,
247
242
  peerId: peer.peerID,
248
- id: _this.id,
243
+ id: this.id,
249
244
  type: type || null
250
245
  });
251
246
  const data = await HMSManager.sendDirectMessage({
252
247
  message,
253
248
  peerId: peer.peerID,
254
- id: _this.id,
249
+ id: this.id,
255
250
  type: type || null
256
251
  });
257
252
  return data;
@@ -362,13 +357,12 @@ export class HMSSDK {
362
357
  *
363
358
  * @memberof HMSSDK
364
359
  */
365
- _defineProperty(this, "changeRole", async function (peer, role) {
366
- let force = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
360
+ _defineProperty(this, "changeRole", async (peer, role, force = false) => {
367
361
  const data = {
368
362
  peerId: peer === null || peer === void 0 ? void 0 : peer.peerID,
369
363
  role: role === null || role === void 0 ? void 0 : role.name,
370
364
  force: force,
371
- id: _this.id
365
+ id: this.id
372
366
  };
373
367
  logger === null || logger === void 0 || logger.verbose('#Function changeRole', data);
374
368
  return await HMSManager.changeRole(data);
@@ -387,13 +381,12 @@ export class HMSSDK {
387
381
  *
388
382
  * @memberof HMSSDK
389
383
  */
390
- _defineProperty(this, "changeRoleOfPeer", async function (peer, role) {
391
- let force = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
384
+ _defineProperty(this, "changeRoleOfPeer", async (peer, role, force = false) => {
392
385
  const data = {
393
386
  peerId: peer.peerID,
394
387
  role: role.name,
395
388
  force: force,
396
- id: _this.id
389
+ id: this.id
397
390
  };
398
391
  logger === null || logger === void 0 || logger.verbose('#Function changeRoleOfPeer', data);
399
392
  return HMSManager.changeRoleOfPeer(data);
@@ -501,17 +494,16 @@ export class HMSSDK {
501
494
  *
502
495
  * @memberof HMSSDK
503
496
  */
504
- _defineProperty(this, "endRoom", async function (reason) {
505
- let lock = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
497
+ _defineProperty(this, "endRoom", async (reason, lock = false) => {
506
498
  logger === null || logger === void 0 || logger.verbose('#Function endRoom', {
507
499
  lock,
508
500
  reason,
509
- id: _this.id
501
+ id: this.id
510
502
  });
511
503
  const data = {
512
504
  lock,
513
505
  reason,
514
- id: _this.id
506
+ id: this.id
515
507
  };
516
508
  return await HMSManager.endRoom(data);
517
509
  });
@@ -711,31 +703,6 @@ export class HMSSDK {
711
703
  volume
712
704
  });
713
705
  });
714
- _defineProperty(this, "resetVolume", () => {
715
- logger === null || logger === void 0 || logger.verbose('#Function resetVolume', {
716
- id: this.id
717
- });
718
- if (Platform.OS === 'android') HMSManager.resetVolume({
719
- id: this.id
720
- });
721
- });
722
- /**
723
- * - This is a temporary solution for the situation when mic access is taken from the app and
724
- * user returns to the app with no mic access. It will re-acquire the mic by setting the volume
725
- * from native side
726
- *
727
- * @memberof HMSSDK
728
- */
729
- _defineProperty(this, "addAppStateListener", () => {
730
- logger === null || logger === void 0 || logger.verbose('#Function addAppStateListener', {
731
- id: this.id
732
- });
733
- this.appStateSubscription = AppState.addEventListener('change', nextAppState => {
734
- if (nextAppState === 'active' && Platform.OS === 'android') {
735
- this.resetVolume();
736
- }
737
- });
738
- });
739
706
  /**
740
707
  * - This function is used to start screenshare, currently available only for android
741
708
  *