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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/android/src/main/java/com/reactnativehmssdk/HMSAudioshareActivity.kt +1 -0
  2. package/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +28 -10
  3. package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayer.kt +113 -68
  4. package/android/src/main/java/com/reactnativehmssdk/HMSHLSPlayerManager.kt +17 -4
  5. package/android/src/main/java/com/reactnativehmssdk/HMSHelper.kt +34 -18
  6. package/android/src/main/java/com/reactnativehmssdk/HMSManager.kt +363 -159
  7. package/android/src/main/java/com/reactnativehmssdk/HMSRNSDK.kt +367 -151
  8. package/android/src/main/java/com/reactnativehmssdk/HMSSDKViewManager.kt +26 -7
  9. package/android/src/main/java/com/reactnativehmssdk/HMSView.kt +32 -12
  10. package/android/src/main/java/com/reactnativehmssdk/HmsScreenshareActivity.kt +1 -0
  11. package/android/src/main/java/com/reactnativehmssdk/PipActionReceiver.kt +10 -6
  12. package/android/src/main/res/layout/player_view.xml +3 -2
  13. package/ios/HMSDecoder.swift +2 -2
  14. package/ios/HMSHLSPlayerManager.swift +18 -2
  15. package/ios/HMSManager.m +227 -70
  16. package/ios/HMSManager.swift +2 -2
  17. package/ios/HMSRNSDK.swift +67 -126
  18. package/ios/HMSView.swift +17 -3
  19. package/lib/commonjs/classes/HMSEncoder.js +6 -0
  20. package/lib/commonjs/classes/HMSEncoder.js.map +1 -1
  21. package/lib/commonjs/classes/HMSSDK.js +40 -26
  22. package/lib/commonjs/classes/HMSSDK.js.map +1 -1
  23. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js +10 -5
  24. package/lib/commonjs/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
  25. package/lib/commonjs/index.js.map +1 -1
  26. package/lib/commonjs/types.js +1 -0
  27. package/lib/commonjs/types.js.map +1 -1
  28. package/lib/module/classes/HMSEncoder.js +6 -0
  29. package/lib/module/classes/HMSEncoder.js.map +1 -1
  30. package/lib/module/classes/HMSSDK.js +40 -26
  31. package/lib/module/classes/HMSSDK.js.map +1 -1
  32. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js +11 -6
  33. package/lib/module/components/HMSHLSPlayer/HMSHLSPlayer.js.map +1 -1
  34. package/lib/module/index.js.map +1 -1
  35. package/lib/module/types.js +1 -0
  36. package/lib/module/types.js.map +1 -1
  37. package/lib/typescript/classes/HMSEncoder.d.ts +1 -0
  38. package/lib/typescript/classes/HMSSDK.d.ts +23 -12
  39. package/lib/typescript/index.d.ts +1 -1
  40. package/lib/typescript/types.d.ts +3 -1
  41. package/package.json +1 -1
  42. package/sdk-versions.json +2 -2
  43. package/src/classes/HMSEncoder.ts +9 -0
  44. package/src/classes/HMSSDK.tsx +48 -24
  45. package/src/components/HMSHLSPlayer/HMSHLSPlayer.tsx +15 -13
  46. package/src/index.ts +4 -1
  47. package/src/types.ts +2 -0
@@ -1 +1 @@
1
- {"version":3,"names":["HMSManager","HMSTrack","HMSAudioTrack","HMSVideoTrack","HMSRoom","HMSPeer","HMSLocalPeer","HMSRemotePeer","HMSAudioTrackSettings","HMSVideoTrackSettings","HMSLocalVideoTrack","HMSLocalAudioTrack","HMSRole","HMSRoleChangeRequest","HMSChangeTrackStateRequest","HMSVideoResolution","HMSRTCStats","HMSRTCStatsReport","HMSRemoteAudioTrack","HMSRemoteVideoTrack","HMSSpeaker","HMSHLSRecordingState","HMSNetworkQuality","HMSBrowserRecordingState","HMSHLSStreamingState","HMSHLSVariant","HMSRtmpStreamingState","HMSServerRecordingState","HMSMessage","HMSMessageRecipient","HMSException","HMSConstants","HMSPeerUpdateOrdinals","HMSLocalAudioStats","HMSLocalVideoStats","HMSRemoteAudioStats","HMSRemoteVideoStats","HMSLayer","HMSSimulcastLayerDefinition","HMSQualityLimitationReasons","HMSEncoder","clearData","data","roles","encodeHmsRoom","room","id","encodedObj","sessionId","undefined","metaData","name","peerCount","peers","encodeHmsPeers","browserRecordingState","encodeBrowserRecordingState","rtmpHMSRtmpStreamingState","encodeRTMPStreamingState","serverRecordingState","encodeServerRecordingState","hlsStreamingState","encodeHLSStreamingState","hlsRecordingState","encodeHLSRecordingState","localPeer","encodeHmsLocalPeer","encodedPeers","map","peer","push","encodeHmsPeer","peerID","encodeHmsPeerUpdate","hmsPeerUpdateOrdinal","get","encodeHmsAudioTrack","track","trackId","source","trackDescription","isMute","type","encodeHmsVideoTrack","isDegraded","encodeHmsAuxiliaryTracks","tracks","auxiliaryTracks","encodeHmsTrack","_peer$localAudioTrack","_peer$localAudioTrack2","_peer$localAudioTrack3","_peer$localAudioTrack4","_peer$localAudioTrack5","_peer$localAudioTrack6","_peer$localAudioTrack7","_peer$localAudioTrack8","_peer$localVideoTrack","_peer$localVideoTrack2","_peer$localVideoTrack3","_peer$localVideoTrack4","_peer$localVideoTrack5","_peer$localVideoTrack6","_peer$localVideoTrack7","_peer$localVideoTrack8","localAudioTrackData","settings","encodeHmsAudioTrackSettings","localVideoTrackData","encodeHmsVideoTrackSettings","useHardwareEchoCancellation","useHardwareAcousticEchoCanceler","initialState","audioMode","forceSoftwareDecoder","simulcastSettings","cameraFacing","disableAutoResize","encodeHmsVideoResolution","resolution","height","width","encodeHmsLocalAudioTrack","encodeHmsLocalVideoTrack","encodeHmsRemotePeers","hmsPeers","encodedPeer","encodeHmsRemotePeer","_peer$remoteAudioTrac","_peer$remoteAudioTrac2","_peer$remoteAudioTrac3","_peer$remoteAudioTrac4","_peer$remoteAudioTrac5","_peer$remoteAudioTrac6","_peer$remoteVideoTrac","_peer$remoteVideoTrac2","_peer$remoteVideoTrac3","_peer$remoteVideoTrac4","_peer$remoteVideoTrac5","_peer$remoteVideoTrac6","remoteAudioTrackData","playbackAllowed","remoteVideoTrackData","encodeHmsRemoteAudioTrack","encodeHmsRemoteVideoTrack","encodeHmsPreviewTracks","previewTracks","encodeHmsRoles","encodedRoles","item","encodeHmsRole","role","_cachedRole$publishSe","rolesCache","cachedRole","publishSettings","allowed","_hmsRole$publishSetti","hmsRole","restrictData","DEFAULT_SDK_ID","roleName","encodeHmsRoleChangeRequest","encodedRoleChangeRequest","requestedBy","suggestedRole","encodeHmsChangeTrackStateRequest","encodedChangeTrackStateRequest","trackType","mute","encodeRTCStats","video","encodeRTCStatsUnit","audio","combined","bitrateReceived","bitrateSent","bytesReceived","bytesSent","packetsLost","packetsReceived","roundTripTime","encodeHmsSpeakers","encodedSpeakers","encodeHmsSpeaker","level","initialising","running","startedAt","encodeDate","stoppedAt","error","dateData","dateNum","parseInt","isNaN","Date","variants","Array","isArray","encodeHLSVariants","singleFilePerLayer","videoOnDemand","variant","hlsStreamUrl","meetingUrl","metadata","encodeHMSNetworkQuality","downlinkQuality","encodeHMSMessage","message","messageId","time","sender","recipient","encodeHMSMessageRecipient","recipientType","recipientPeer","recipientRoles","encodeHMSException","_data$error","_data$error2","_data$error3","_data$error4","_data$error5","_data$error6","_data$error7","code","description","action","isTerminal","canRetry","encodeHMSLocalAudioStats","bitrate","encodeHMSLocalVideoStats","frameRate","layer","qualityLimitationReasons","encodeHMSQualityLimitationReasons","encodeHMSRemoteAudioStats","jitter","encodeHMSRemoteVideoStats","encodeHMSSimulcastLayerDefinition","sld","reason","bandwidth","cpu","none","other","qualityLimitationResolutionChanges","transformHMSHLSCueEventData","startDate","endDate","transformed","_defineProperty"],"sources":["HMSEncoder.ts"],"sourcesContent":["import HMSManager from './HMSManagerModule';\n\nimport { HMSTrack } from './HMSTrack';\nimport { HMSAudioTrack } from './HMSAudioTrack';\nimport { HMSVideoTrack } from './HMSVideoTrack';\nimport { HMSRoom } from './HMSRoom';\nimport { HMSPeer } from './HMSPeer';\nimport { HMSLocalPeer } from './HMSLocalPeer';\nimport { HMSRemotePeer } from './HMSRemotePeer';\nimport { HMSAudioTrackSettings } from './HMSAudioTrackSettings';\nimport { HMSVideoTrackSettings } from './HMSVideoTrackSettings';\nimport { HMSLocalVideoTrack } from './HMSLocalVideoTrack';\nimport { HMSLocalAudioTrack } from './HMSLocalAudioTrack';\nimport { HMSRole } from './HMSRole';\nimport { HMSRoleChangeRequest } from './HMSRoleChangeRequest';\nimport { HMSChangeTrackStateRequest } from './HMSChangeTrackStateRequest';\nimport { HMSVideoResolution } from './HMSVideoResolution';\nimport { HMSRTCStats } from './HMSRTCStats';\nimport { HMSRTCStatsReport } from './HMSRTCStatsReport';\nimport { HMSRemoteAudioTrack } from './HMSRemoteAudioTrack';\nimport { HMSRemoteVideoTrack } from './HMSRemoteVideoTrack';\nimport { HMSSpeaker } from './HMSSpeaker';\nimport { HMSHLSRecordingState } from './HMSHLSRecordingState';\nimport { HMSNetworkQuality } from './HMSNetworkQuality';\nimport { HMSBrowserRecordingState } from './HMSBrowserRecordingState';\nimport { HMSHLSStreamingState } from './HMSHLSStreamingState';\nimport { HMSHLSVariant } from './HMSHLSVariant';\nimport { HMSRtmpStreamingState } from './HMSRtmpStreamingState';\nimport { HMSServerRecordingState } from './HMSServerRecordingState';\nimport { HMSMessage } from './HMSMessage';\nimport { HMSMessageRecipient } from './HMSMessageRecipient';\nimport { HMSException } from './HMSException';\nimport { HMSConstants } from './HMSConstants';\nimport { HMSPeerUpdateOrdinals } from './HMSPeerUpdate';\nimport { HMSLocalAudioStats } from './HMSLocalAudioStats';\nimport { HMSLocalVideoStats } from './HMSLocalVideoStats';\nimport { HMSRemoteAudioStats } from './HMSRemoteAudioStats';\nimport { HMSRemoteVideoStats } from './HMSRemoteVideoStats';\nimport { HMSLayer } from './HMSLayer';\nimport { HMSSimulcastLayerDefinition } from './HMSSimulcastLayerDefinition';\nimport { HMSQualityLimitationReasons } from './HMSQualityLimitationReasons';\n\ninterface InitialData {\n roles: Record<string, HMSRole>;\n}\n\nexport class HMSEncoder {\n private static data: InitialData = { roles: {} };\n\n static clearData() {\n this.data = { roles: {} };\n }\n\n static encodeHmsRoom(room: any, id: string) {\n const encodedObj = {\n id: room?.id,\n sessionId: room?.sessionId || undefined,\n metaData: room?.metaData,\n name: room?.name,\n peerCount: room?.peerCount,\n peers: HMSEncoder.encodeHmsPeers(room?.peers),\n browserRecordingState: HMSEncoder.encodeBrowserRecordingState(\n room?.browserRecordingState\n ),\n rtmpHMSRtmpStreamingState: HMSEncoder.encodeRTMPStreamingState(\n room?.rtmpHMSRtmpStreamingState\n ),\n serverRecordingState: HMSEncoder.encodeServerRecordingState(\n room?.serverRecordingState\n ),\n hlsStreamingState: HMSEncoder.encodeHLSStreamingState(\n room?.hlsStreamingState\n ),\n hlsRecordingState: HMSEncoder.encodeHLSRecordingState(\n room?.hlsRecordingState\n ),\n localPeer: HMSEncoder.encodeHmsLocalPeer(room?.localPeer, id),\n // startedAt: HMSEncoder.encodeDate(room?.startedAt),\n };\n\n return new HMSRoom(encodedObj);\n }\n\n static encodeHmsPeers(peers: any) {\n const encodedPeers: HMSPeer[] = [];\n peers?.map((peer: any) => {\n encodedPeers.push(HMSEncoder.encodeHmsPeer(peer));\n });\n\n return encodedPeers;\n }\n\n static encodeHmsPeer(peer: any) {\n const encodedObj = {\n peerID: peer?.peerID,\n name: peer?.name,\n };\n\n return new HMSPeer(encodedObj);\n }\n\n static encodeHmsPeerUpdate(hmsPeerUpdateOrdinal: string) {\n return HMSPeerUpdateOrdinals.get(hmsPeerUpdateOrdinal);\n }\n\n static encodeHmsAudioTrack(track: any, id: string) {\n const encodedObj = {\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n id: id,\n type: track?.type,\n };\n\n return new HMSAudioTrack(encodedObj);\n }\n\n static encodeHmsVideoTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n isDegraded: track?.isDegraded,\n type: track?.type,\n };\n\n return new HMSVideoTrack(encodedObj);\n }\n\n static encodeHmsAuxiliaryTracks(tracks: any, id: string) {\n const auxiliaryTracks: HMSTrack[] = [];\n tracks?.map((track: any) => {\n auxiliaryTracks.push(HMSEncoder.encodeHmsTrack(track, id));\n });\n return auxiliaryTracks;\n }\n\n static encodeHmsTrack(track: any, id: string) {\n const encodedObj = {\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n id: id,\n type: track?.type,\n };\n\n return new HMSTrack(encodedObj);\n }\n\n static encodeHmsLocalPeer(peer: any, id: string) {\n const encodedObj = {\n peerID: peer?.peerID,\n name: peer?.name,\n localAudioTrackData: peer?.localAudioTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.localAudioTrackData?.trackId,\n source: peer?.localAudioTrackData?.source,\n trackDescription: peer?.localAudioTrackData?.trackDescription,\n isMute: peer?.localAudioTrackData?.isMute,\n settings: peer?.localAudioTrackData?.settings\n ? HMSEncoder.encodeHmsAudioTrackSettings(\n peer?.localAudioTrackData?.settings\n )\n : undefined,\n type: peer?.localAudioTrackData?.type,\n }\n : undefined,\n localVideoTrackData: peer?.localVideoTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.localVideoTrackData?.trackId,\n source: peer?.localVideoTrackData?.source,\n trackDescription: peer?.localVideoTrackData?.trackDescription,\n isMute: peer?.localVideoTrackData?.isMute,\n settings: peer?.localVideoTrackData?.settings\n ? HMSEncoder.encodeHmsVideoTrackSettings(\n peer?.localVideoTrackData?.settings\n )\n : undefined,\n type: peer?.localVideoTrackData?.type,\n }\n : undefined,\n };\n\n return new HMSLocalPeer(encodedObj);\n }\n\n static encodeHmsAudioTrackSettings(settings: any) {\n const encodedObj = {\n useHardwareEchoCancellation: settings?.useHardwareAcousticEchoCanceler,\n initialState: settings?.initialState,\n audioMode: settings?.audioMode,\n };\n\n return new HMSAudioTrackSettings(encodedObj);\n }\n\n static encodeHmsVideoTrackSettings(settings: any) {\n const encodedObj = {\n initialState: settings?.initialState,\n forceSoftwareDecoder: settings?.forceSoftwareDecoder,\n simulcastSettings: settings?.simulcastSettings,\n cameraFacing: settings?.cameraFacing,\n disableAutoResize: settings?.disableAutoResize,\n };\n\n return new HMSVideoTrackSettings(encodedObj);\n }\n\n static encodeHmsVideoResolution(resolution: any) {\n const encodedObj = {\n height: resolution?.height,\n width: resolution?.width,\n };\n\n return new HMSVideoResolution(encodedObj);\n }\n\n static encodeHmsLocalAudioTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n settings: track?.settings\n ? HMSEncoder.encodeHmsAudioTrackSettings(track?.settings)\n : undefined,\n type: track?.type,\n };\n\n return new HMSLocalAudioTrack(encodedObj);\n }\n\n static encodeHmsLocalVideoTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n settings: track?.settings\n ? HMSEncoder.encodeHmsVideoTrackSettings(track?.settings)\n : undefined,\n type: track?.type,\n };\n\n return new HMSLocalVideoTrack(encodedObj);\n }\n\n static encodeHmsRemotePeers(peers: any, id: string) {\n const hmsPeers: HMSRemotePeer[] = [];\n\n peers.map((peer: any) => {\n const encodedPeer = HMSEncoder.encodeHmsRemotePeer(peer, id);\n\n hmsPeers.push(encodedPeer);\n });\n\n return hmsPeers;\n }\n\n static encodeHmsRemotePeer(peer: any, id: string) {\n const encodedObj = {\n peerID: peer?.peerID,\n name: peer?.name,\n remoteAudioTrackData: peer?.remoteAudioTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.remoteAudioTrackData?.trackId,\n source: peer?.remoteAudioTrackData?.source,\n trackDescription: peer?.remoteAudioTrackData?.trackDescription,\n isMute: peer?.remoteAudioTrackData?.isMute,\n playbackAllowed: peer?.remoteAudioTrackData?.playbackAllowed,\n }\n : undefined,\n remoteVideoTrackData: peer?.remoteVideoTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.remoteVideoTrackData?.trackId,\n source: peer?.remoteVideoTrackData?.source,\n trackDescription: peer?.remoteVideoTrackData?.trackDescription,\n isMute: peer?.remoteVideoTrackData?.isMute,\n playbackAllowed: peer?.remoteVideoTrackData?.playbackAllowed,\n }\n : undefined,\n };\n\n return new HMSRemotePeer(encodedObj);\n }\n\n static encodeHmsRemoteAudioTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n playbackAllowed: track?.playbackAllowed,\n };\n\n return new HMSRemoteAudioTrack(encodedObj);\n }\n\n static encodeHmsRemoteVideoTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n playbackAllowed: track?.playbackAllowed,\n };\n\n return new HMSRemoteVideoTrack(encodedObj);\n }\n\n static encodeHmsPreviewTracks(previewTracks: any[], id: string) {\n return previewTracks?.map((track) => {\n return this.encodeHmsTrack(track, id);\n });\n }\n\n static encodeHmsRoles(roles: any[]) {\n const encodedRoles: HMSRole[] = [];\n\n roles?.map((item: any) => {\n encodedRoles.push(HMSEncoder.encodeHmsRole(item));\n });\n\n return encodedRoles;\n }\n\n static encodeHmsRole(role: any): HMSRole {\n if (!role) {\n return new HMSRole(role);\n }\n\n const rolesCache = this.data.roles;\n\n const cachedRole = rolesCache[role.name];\n\n // create new HMSRole instance, if cached role does not exist OR `role.publishSettings?.allowed` does not exist\n if (!cachedRole || !cachedRole.publishSettings?.allowed) {\n // Creating HMSRole object with data\n const hmsRole = new HMSRole(role);\n\n // saving the created HMSRole object into cache\n rolesCache[role.name] = hmsRole;\n\n // If the created HMSRole object is complete,\n // sending notification to Native Side to stop sending data for this role\n if (hmsRole.publishSettings?.allowed) {\n HMSManager.restrictData({\n id: HMSConstants.DEFAULT_SDK_ID,\n roleName: hmsRole.name,\n });\n }\n }\n\n return rolesCache[role.name]!;\n }\n\n static encodeHmsRoleChangeRequest(data: any) {\n const encodedRoleChangeRequest = {\n requestedBy: data.requestedBy\n ? HMSEncoder.encodeHmsPeer(data.requestedBy)\n : undefined,\n suggestedRole: HMSEncoder.encodeHmsRole(data.suggestedRole),\n };\n\n return new HMSRoleChangeRequest(encodedRoleChangeRequest);\n }\n\n static encodeHmsChangeTrackStateRequest(data: HMSChangeTrackStateRequest) {\n const encodedChangeTrackStateRequest = {\n requestedBy: data?.requestedBy\n ? HMSEncoder.encodeHmsPeer(data?.requestedBy)\n : undefined,\n trackType: data.trackType,\n mute: data.mute,\n };\n\n return new HMSChangeTrackStateRequest(encodedChangeTrackStateRequest);\n }\n\n static encodeRTCStats(data: any) {\n let video = this.encodeRTCStatsUnit(data?.video);\n let audio = this.encodeRTCStatsUnit(data?.audio);\n let combined = this.encodeRTCStatsUnit(data?.combined);\n\n return new HMSRTCStatsReport({ video, audio, combined });\n }\n\n static encodeRTCStatsUnit(data: any) {\n const [\n bitrateReceived,\n bitrateSent,\n bytesReceived,\n bytesSent,\n packetsLost,\n packetsReceived,\n roundTripTime,\n ] = data;\n\n return new HMSRTCStats({\n bitrateReceived,\n bitrateSent,\n bytesReceived,\n bytesSent,\n packetsLost,\n packetsReceived,\n roundTripTime,\n });\n }\n\n static encodeHmsSpeakers(data: any, id: string) {\n let encodedSpeakers: Array<HMSSpeaker> = [];\n\n data?.map((item: any) => {\n encodedSpeakers.push(HMSEncoder.encodeHmsSpeaker(item, id));\n });\n\n return encodedSpeakers;\n }\n\n static encodeHmsSpeaker(data: any, id: string) {\n return new HMSSpeaker({\n level: data?.level,\n peer: HMSEncoder.encodeHmsPeer(data?.peer),\n track: HMSEncoder.encodeHmsTrack(data?.track, id),\n });\n }\n\n static encodeBrowserRecordingState(data: any) {\n return new HMSBrowserRecordingState({\n initialising: data?.initialising || false,\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n stoppedAt: HMSEncoder.encodeDate(data?.stoppedAt),\n error: data?.error || undefined,\n });\n }\n\n static encodeServerRecordingState(data: any) {\n return new HMSServerRecordingState({\n running: data?.running || false,\n error: data?.error || undefined,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n });\n }\n\n static encodeRTMPStreamingState(data: any) {\n return new HMSRtmpStreamingState({\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n stoppedAt: HMSEncoder.encodeDate(data?.stoppedAt),\n error: data?.error || undefined,\n });\n }\n\n static encodeDate(dateData: any) {\n if (!dateData) {\n return undefined;\n }\n const dateNum = parseInt(dateData);\n if (isNaN(dateNum)) {\n return undefined;\n }\n return new Date(dateNum);\n }\n\n static encodeHLSStreamingState(data: any) {\n return new HMSHLSStreamingState({\n running: data?.running || false,\n variants: Array.isArray(data?.variants)\n ? this.encodeHLSVariants(data?.variants)\n : undefined,\n });\n }\n\n static encodeHLSRecordingState(data: any) {\n if (data) {\n return new HMSHLSRecordingState({\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n singleFilePerLayer: data?.singleFilePerLayer || false,\n videoOnDemand: data?.videoOnDemand || false,\n });\n } else {\n return undefined;\n }\n }\n\n static encodeHLSVariants(data: any) {\n let variants: HMSHLSVariant[] = [];\n\n data?.map((item: any) => {\n let variant = new HMSHLSVariant({\n hlsStreamUrl: item.hlsStreamUrl,\n meetingUrl: item.meetingUrl,\n metadata: item?.metaData ? item?.metadata : undefined,\n startedAt: HMSEncoder.encodeDate(item?.startedAt),\n });\n variants.push(variant);\n });\n\n return variants;\n }\n\n static encodeHMSNetworkQuality(data: any) {\n if (data) {\n return new HMSNetworkQuality({\n downlinkQuality: data?.downlinkQuality,\n });\n } else {\n return undefined;\n }\n }\n\n static encodeHMSMessage(data: any) {\n if (data) {\n return new HMSMessage({\n message: data?.message,\n messageId: data?.messageId,\n type: data?.type,\n time: new Date(parseInt(data?.time)),\n sender: this.encodeHmsPeer(data?.sender),\n recipient: this.encodeHMSMessageRecipient(data?.recipient),\n });\n } else {\n return undefined;\n }\n }\n\n static encodeHMSMessageRecipient(data: any) {\n return new HMSMessageRecipient({\n recipientType: data?.recipientType,\n recipientPeer: data?.recipientPeer\n ? this.encodeHmsPeer(data.recipientPeer)\n : undefined,\n recipientRoles: Array.isArray(data?.recipientRoles)\n ? this.encodeHmsRoles(data.recipientRoles)\n : [],\n });\n }\n\n static encodeHMSException(data: any) {\n return new HMSException({\n code: data?.error?.code,\n description: data?.error?.description,\n message: data?.error?.message,\n name: data?.error?.name,\n action: data?.error?.action,\n isTerminal: data?.error?.isTerminal,\n canRetry: data?.error?.canRetry,\n });\n }\n\n static encodeHMSLocalAudioStats(data: any) {\n const [bitrate, bytesSent, roundTripTime] = data;\n\n return new HMSLocalAudioStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesSent: bytesSent ? bytesSent : undefined,\n roundTripTime: roundTripTime >= 0 ? roundTripTime : undefined,\n });\n }\n\n static encodeHMSLocalVideoStats(data: any[]) {\n return data.map((item: any) => {\n const [\n bitrate,\n bytesSent,\n roundTripTime,\n frameRate,\n resolution,\n layer,\n qualityLimitationReasons,\n ] = item;\n\n return new HMSLocalVideoStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesSent: bytesSent ? bytesSent : undefined,\n roundTripTime: roundTripTime >= 0 ? roundTripTime : undefined,\n frameRate: frameRate >= 0 ? frameRate : undefined,\n resolution: resolution\n ? { width: resolution[0], height: resolution[1] }\n : undefined, // resolution: [width, height]\n layer: layer ? layer : undefined,\n qualityLimitationReasons: qualityLimitationReasons\n ? this.encodeHMSQualityLimitationReasons(qualityLimitationReasons)\n : undefined,\n });\n });\n }\n\n static encodeHMSRemoteAudioStats(data: any) {\n const [bitrate, bytesReceived, jitter, packetsLost, packetsReceived] = data;\n\n return new HMSRemoteAudioStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesReceived: bytesReceived ? bytesReceived : undefined,\n jitter: jitter >= 0 ? jitter : undefined,\n packetsLost: packetsLost >= 0 ? packetsLost : undefined,\n packetsReceived: packetsReceived ? packetsReceived : undefined,\n });\n }\n\n static encodeHMSRemoteVideoStats(data: any) {\n const [\n bitrate,\n bytesReceived,\n frameRate,\n jitter,\n packetsLost,\n packetsReceived,\n resolution,\n ] = data;\n\n return new HMSRemoteVideoStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesReceived: bytesReceived ? bytesReceived : undefined,\n frameRate: frameRate >= 0 ? frameRate : undefined,\n jitter: jitter >= 0 ? jitter : undefined,\n packetsLost: packetsLost >= 0 ? packetsLost : undefined,\n packetsReceived: packetsReceived ? packetsReceived : undefined,\n resolution: resolution\n ? { width: resolution[0], height: resolution[1] }\n : undefined, // resolution: [width, height]\n });\n }\n\n static encodeHMSSimulcastLayerDefinition(data: any[]) {\n return data.map((sld) => {\n return new HMSSimulcastLayerDefinition({\n layer: HMSLayer[sld.layer as HMSLayer], // DOUBT: This can be invalid. Should we throw error?\n resolution: this.encodeHmsVideoResolution({\n width: sld.resolution[0],\n height: sld.resolution[1],\n }),\n });\n });\n }\n\n static encodeHMSQualityLimitationReasons(data: any) {\n return new HMSQualityLimitationReasons({\n reason: data.reason,\n bandwidth: data.bandwidth,\n cpu: data.cpu,\n none: data.none,\n other: data.other,\n qualityLimitationResolutionChanges:\n data.qualityLimitationResolutionChanges,\n });\n }\n\n static transformHMSHLSCueEventData<C extends object, T>(data: C): T {\n if ('startDate' in data) {\n data.startDate = this.encodeDate(data.startDate);\n }\n\n if ('endDate' in data && data.endDate) {\n data.endDate = this.encodeDate(data.endDate);\n }\n\n const transformed = data as unknown as T;\n\n return transformed;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["HMSManager","HMSTrack","HMSAudioTrack","HMSVideoTrack","HMSRoom","HMSPeer","HMSLocalPeer","HMSRemotePeer","HMSAudioTrackSettings","HMSVideoTrackSettings","HMSLocalVideoTrack","HMSLocalAudioTrack","HMSRole","HMSRoleChangeRequest","HMSChangeTrackStateRequest","HMSVideoResolution","HMSRTCStats","HMSRTCStatsReport","HMSRemoteAudioTrack","HMSRemoteVideoTrack","HMSSpeaker","HMSHLSRecordingState","HMSNetworkQuality","HMSBrowserRecordingState","HMSHLSStreamingState","HMSHLSVariant","HMSRtmpStreamingState","HMSServerRecordingState","HMSMessage","HMSMessageRecipient","HMSException","HMSConstants","HMSPeerUpdateOrdinals","HMSLocalAudioStats","HMSLocalVideoStats","HMSRemoteAudioStats","HMSRemoteVideoStats","HMSLayer","HMSSimulcastLayerDefinition","HMSQualityLimitationReasons","HMSTrackType","HMSEncoder","clearData","data","roles","encodeHmsRoom","room","id","encodedObj","sessionId","undefined","metaData","name","peerCount","peers","encodeHmsPeers","browserRecordingState","encodeBrowserRecordingState","rtmpHMSRtmpStreamingState","encodeRTMPStreamingState","serverRecordingState","encodeServerRecordingState","hlsStreamingState","encodeHLSStreamingState","hlsRecordingState","encodeHLSRecordingState","localPeer","encodeHmsLocalPeer","encodedPeers","map","peer","push","encodeHmsPeer","peerID","encodeHmsPeerUpdate","hmsPeerUpdateOrdinal","get","encodeHmsAudioTrack","track","trackId","source","trackDescription","isMute","type","encodeHmsVideoTrack","isDegraded","encodeHmsAuxiliaryTracks","tracks","auxiliaryTracks","encodeHmsTrack","_peer$localAudioTrack","_peer$localAudioTrack2","_peer$localAudioTrack3","_peer$localAudioTrack4","_peer$localAudioTrack5","_peer$localAudioTrack6","_peer$localAudioTrack7","_peer$localAudioTrack8","_peer$localVideoTrack","_peer$localVideoTrack2","_peer$localVideoTrack3","_peer$localVideoTrack4","_peer$localVideoTrack5","_peer$localVideoTrack6","_peer$localVideoTrack7","_peer$localVideoTrack8","localAudioTrackData","settings","encodeHmsAudioTrackSettings","localVideoTrackData","encodeHmsVideoTrackSettings","useHardwareEchoCancellation","useHardwareAcousticEchoCanceler","initialState","audioMode","forceSoftwareDecoder","simulcastSettings","cameraFacing","disableAutoResize","encodeHmsVideoResolution","resolution","height","width","encodeHmsLocalAudioTrack","encodeHmsLocalVideoTrack","encodeHmsRemotePeers","hmsPeers","encodedPeer","encodeHmsRemotePeer","_peer$remoteAudioTrac","_peer$remoteAudioTrac2","_peer$remoteAudioTrac3","_peer$remoteAudioTrac4","_peer$remoteAudioTrac5","_peer$remoteAudioTrac6","_peer$remoteVideoTrac","_peer$remoteVideoTrac2","_peer$remoteVideoTrac3","_peer$remoteVideoTrac4","_peer$remoteVideoTrac5","_peer$remoteVideoTrac6","remoteAudioTrackData","playbackAllowed","remoteVideoTrackData","encodeHmsRemoteAudioTrack","encodeHmsRemoteVideoTrack","encodeHmsPreviewTracks","previewTracks","encodeHmsPreviewForRoleTracks","VIDEO","encodeHmsRoles","encodedRoles","item","encodeHmsRole","role","_cachedRole$publishSe","rolesCache","cachedRole","publishSettings","allowed","_hmsRole$publishSetti","hmsRole","restrictData","DEFAULT_SDK_ID","roleName","encodeHmsRoleChangeRequest","encodedRoleChangeRequest","requestedBy","suggestedRole","encodeHmsChangeTrackStateRequest","encodedChangeTrackStateRequest","trackType","mute","encodeRTCStats","video","encodeRTCStatsUnit","audio","combined","bitrateReceived","bitrateSent","bytesReceived","bytesSent","packetsLost","packetsReceived","roundTripTime","encodeHmsSpeakers","encodedSpeakers","encodeHmsSpeaker","level","initialising","running","startedAt","encodeDate","stoppedAt","error","dateData","dateNum","parseInt","isNaN","Date","variants","Array","isArray","encodeHLSVariants","singleFilePerLayer","videoOnDemand","variant","hlsStreamUrl","meetingUrl","metadata","encodeHMSNetworkQuality","downlinkQuality","encodeHMSMessage","message","messageId","time","sender","recipient","encodeHMSMessageRecipient","recipientType","recipientPeer","recipientRoles","encodeHMSException","_data$error","_data$error2","_data$error3","_data$error4","_data$error5","_data$error6","_data$error7","code","description","action","isTerminal","canRetry","encodeHMSLocalAudioStats","bitrate","encodeHMSLocalVideoStats","frameRate","layer","qualityLimitationReasons","encodeHMSQualityLimitationReasons","encodeHMSRemoteAudioStats","jitter","encodeHMSRemoteVideoStats","encodeHMSSimulcastLayerDefinition","sld","reason","bandwidth","cpu","none","other","qualityLimitationResolutionChanges","transformHMSHLSCueEventData","startDate","endDate","transformed","_defineProperty"],"sources":["HMSEncoder.ts"],"sourcesContent":["import HMSManager from './HMSManagerModule';\n\nimport { HMSTrack } from './HMSTrack';\nimport { HMSAudioTrack } from './HMSAudioTrack';\nimport { HMSVideoTrack } from './HMSVideoTrack';\nimport { HMSRoom } from './HMSRoom';\nimport { HMSPeer } from './HMSPeer';\nimport { HMSLocalPeer } from './HMSLocalPeer';\nimport { HMSRemotePeer } from './HMSRemotePeer';\nimport { HMSAudioTrackSettings } from './HMSAudioTrackSettings';\nimport { HMSVideoTrackSettings } from './HMSVideoTrackSettings';\nimport { HMSLocalVideoTrack } from './HMSLocalVideoTrack';\nimport { HMSLocalAudioTrack } from './HMSLocalAudioTrack';\nimport { HMSRole } from './HMSRole';\nimport { HMSRoleChangeRequest } from './HMSRoleChangeRequest';\nimport { HMSChangeTrackStateRequest } from './HMSChangeTrackStateRequest';\nimport { HMSVideoResolution } from './HMSVideoResolution';\nimport { HMSRTCStats } from './HMSRTCStats';\nimport { HMSRTCStatsReport } from './HMSRTCStatsReport';\nimport { HMSRemoteAudioTrack } from './HMSRemoteAudioTrack';\nimport { HMSRemoteVideoTrack } from './HMSRemoteVideoTrack';\nimport { HMSSpeaker } from './HMSSpeaker';\nimport { HMSHLSRecordingState } from './HMSHLSRecordingState';\nimport { HMSNetworkQuality } from './HMSNetworkQuality';\nimport { HMSBrowserRecordingState } from './HMSBrowserRecordingState';\nimport { HMSHLSStreamingState } from './HMSHLSStreamingState';\nimport { HMSHLSVariant } from './HMSHLSVariant';\nimport { HMSRtmpStreamingState } from './HMSRtmpStreamingState';\nimport { HMSServerRecordingState } from './HMSServerRecordingState';\nimport { HMSMessage } from './HMSMessage';\nimport { HMSMessageRecipient } from './HMSMessageRecipient';\nimport { HMSException } from './HMSException';\nimport { HMSConstants } from './HMSConstants';\nimport { HMSPeerUpdateOrdinals } from './HMSPeerUpdate';\nimport { HMSLocalAudioStats } from './HMSLocalAudioStats';\nimport { HMSLocalVideoStats } from './HMSLocalVideoStats';\nimport { HMSRemoteAudioStats } from './HMSRemoteAudioStats';\nimport { HMSRemoteVideoStats } from './HMSRemoteVideoStats';\nimport { HMSLayer } from './HMSLayer';\nimport { HMSSimulcastLayerDefinition } from './HMSSimulcastLayerDefinition';\nimport { HMSQualityLimitationReasons } from './HMSQualityLimitationReasons';\nimport { HMSTrackType } from './HMSTrackType';\n\ninterface InitialData {\n roles: Record<string, HMSRole>;\n}\n\nexport class HMSEncoder {\n private static data: InitialData = { roles: {} };\n\n static clearData() {\n this.data = { roles: {} };\n }\n\n static encodeHmsRoom(room: any, id: string) {\n const encodedObj = {\n id: room?.id,\n sessionId: room?.sessionId || undefined,\n metaData: room?.metaData,\n name: room?.name,\n peerCount: room?.peerCount,\n peers: HMSEncoder.encodeHmsPeers(room?.peers),\n browserRecordingState: HMSEncoder.encodeBrowserRecordingState(\n room?.browserRecordingState\n ),\n rtmpHMSRtmpStreamingState: HMSEncoder.encodeRTMPStreamingState(\n room?.rtmpHMSRtmpStreamingState\n ),\n serverRecordingState: HMSEncoder.encodeServerRecordingState(\n room?.serverRecordingState\n ),\n hlsStreamingState: HMSEncoder.encodeHLSStreamingState(\n room?.hlsStreamingState\n ),\n hlsRecordingState: HMSEncoder.encodeHLSRecordingState(\n room?.hlsRecordingState\n ),\n localPeer: HMSEncoder.encodeHmsLocalPeer(room?.localPeer, id),\n // startedAt: HMSEncoder.encodeDate(room?.startedAt),\n };\n\n return new HMSRoom(encodedObj);\n }\n\n static encodeHmsPeers(peers: any) {\n const encodedPeers: HMSPeer[] = [];\n peers?.map((peer: any) => {\n encodedPeers.push(HMSEncoder.encodeHmsPeer(peer));\n });\n\n return encodedPeers;\n }\n\n static encodeHmsPeer(peer: any) {\n const encodedObj = {\n peerID: peer?.peerID,\n name: peer?.name,\n };\n\n return new HMSPeer(encodedObj);\n }\n\n static encodeHmsPeerUpdate(hmsPeerUpdateOrdinal: string) {\n return HMSPeerUpdateOrdinals.get(hmsPeerUpdateOrdinal);\n }\n\n static encodeHmsAudioTrack(track: any, id: string) {\n const encodedObj = {\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n id: id,\n type: track?.type,\n };\n\n return new HMSAudioTrack(encodedObj);\n }\n\n static encodeHmsVideoTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n isDegraded: track?.isDegraded,\n type: track?.type,\n };\n\n return new HMSVideoTrack(encodedObj);\n }\n\n static encodeHmsAuxiliaryTracks(tracks: any, id: string) {\n const auxiliaryTracks: HMSTrack[] = [];\n tracks?.map((track: any) => {\n auxiliaryTracks.push(HMSEncoder.encodeHmsTrack(track, id));\n });\n return auxiliaryTracks;\n }\n\n static encodeHmsTrack(track: any, id: string) {\n const encodedObj = {\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n id: id,\n type: track?.type,\n };\n\n return new HMSTrack(encodedObj);\n }\n\n static encodeHmsLocalPeer(peer: any, id: string) {\n const encodedObj = {\n peerID: peer?.peerID,\n name: peer?.name,\n localAudioTrackData: peer?.localAudioTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.localAudioTrackData?.trackId,\n source: peer?.localAudioTrackData?.source,\n trackDescription: peer?.localAudioTrackData?.trackDescription,\n isMute: peer?.localAudioTrackData?.isMute,\n settings: peer?.localAudioTrackData?.settings\n ? HMSEncoder.encodeHmsAudioTrackSettings(\n peer?.localAudioTrackData?.settings\n )\n : undefined,\n type: peer?.localAudioTrackData?.type,\n }\n : undefined,\n localVideoTrackData: peer?.localVideoTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.localVideoTrackData?.trackId,\n source: peer?.localVideoTrackData?.source,\n trackDescription: peer?.localVideoTrackData?.trackDescription,\n isMute: peer?.localVideoTrackData?.isMute,\n settings: peer?.localVideoTrackData?.settings\n ? HMSEncoder.encodeHmsVideoTrackSettings(\n peer?.localVideoTrackData?.settings\n )\n : undefined,\n type: peer?.localVideoTrackData?.type,\n }\n : undefined,\n };\n\n return new HMSLocalPeer(encodedObj);\n }\n\n static encodeHmsAudioTrackSettings(settings: any) {\n const encodedObj = {\n useHardwareEchoCancellation: settings?.useHardwareAcousticEchoCanceler,\n initialState: settings?.initialState,\n audioMode: settings?.audioMode,\n };\n\n return new HMSAudioTrackSettings(encodedObj);\n }\n\n static encodeHmsVideoTrackSettings(settings: any) {\n const encodedObj = {\n initialState: settings?.initialState,\n forceSoftwareDecoder: settings?.forceSoftwareDecoder,\n simulcastSettings: settings?.simulcastSettings,\n cameraFacing: settings?.cameraFacing,\n disableAutoResize: settings?.disableAutoResize,\n };\n\n return new HMSVideoTrackSettings(encodedObj);\n }\n\n static encodeHmsVideoResolution(resolution: any) {\n const encodedObj = {\n height: resolution?.height,\n width: resolution?.width,\n };\n\n return new HMSVideoResolution(encodedObj);\n }\n\n static encodeHmsLocalAudioTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n settings: track?.settings\n ? HMSEncoder.encodeHmsAudioTrackSettings(track?.settings)\n : undefined,\n type: track?.type,\n };\n\n return new HMSLocalAudioTrack(encodedObj);\n }\n\n static encodeHmsLocalVideoTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n settings: track?.settings\n ? HMSEncoder.encodeHmsVideoTrackSettings(track?.settings)\n : undefined,\n type: track?.type,\n };\n\n return new HMSLocalVideoTrack(encodedObj);\n }\n\n static encodeHmsRemotePeers(peers: any, id: string) {\n const hmsPeers: HMSRemotePeer[] = [];\n\n peers.map((peer: any) => {\n const encodedPeer = HMSEncoder.encodeHmsRemotePeer(peer, id);\n\n hmsPeers.push(encodedPeer);\n });\n\n return hmsPeers;\n }\n\n static encodeHmsRemotePeer(peer: any, id: string) {\n const encodedObj = {\n peerID: peer?.peerID,\n name: peer?.name,\n remoteAudioTrackData: peer?.remoteAudioTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.remoteAudioTrackData?.trackId,\n source: peer?.remoteAudioTrackData?.source,\n trackDescription: peer?.remoteAudioTrackData?.trackDescription,\n isMute: peer?.remoteAudioTrackData?.isMute,\n playbackAllowed: peer?.remoteAudioTrackData?.playbackAllowed,\n }\n : undefined,\n remoteVideoTrackData: peer?.remoteVideoTrackData?.trackId\n ? {\n id: id,\n trackId: peer?.remoteVideoTrackData?.trackId,\n source: peer?.remoteVideoTrackData?.source,\n trackDescription: peer?.remoteVideoTrackData?.trackDescription,\n isMute: peer?.remoteVideoTrackData?.isMute,\n playbackAllowed: peer?.remoteVideoTrackData?.playbackAllowed,\n }\n : undefined,\n };\n\n return new HMSRemotePeer(encodedObj);\n }\n\n static encodeHmsRemoteAudioTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n playbackAllowed: track?.playbackAllowed,\n };\n\n return new HMSRemoteAudioTrack(encodedObj);\n }\n\n static encodeHmsRemoteVideoTrack(track: any, id: string) {\n const encodedObj = {\n id: id,\n trackId: track?.trackId,\n source: track?.source,\n trackDescription: track?.trackDescription,\n isMute: track?.isMute,\n playbackAllowed: track?.playbackAllowed,\n };\n\n return new HMSRemoteVideoTrack(encodedObj);\n }\n\n static encodeHmsPreviewTracks(previewTracks: any[], id: string) {\n return previewTracks?.map((track) => {\n return this.encodeHmsTrack(track, id);\n });\n }\n\n static encodeHmsPreviewForRoleTracks(previewTracks: any[], id: string) {\n return previewTracks?.map((track) => {\n return track.type === HMSTrackType.VIDEO\n ? this.encodeHmsLocalVideoTrack(track, id)\n : this.encodeHmsLocalAudioTrack(track, id);\n });\n }\n\n static encodeHmsRoles(roles: any[]) {\n const encodedRoles: HMSRole[] = [];\n\n roles?.map((item: any) => {\n encodedRoles.push(HMSEncoder.encodeHmsRole(item));\n });\n\n return encodedRoles;\n }\n\n static encodeHmsRole(role: any): HMSRole {\n if (!role) {\n return new HMSRole(role);\n }\n\n const rolesCache = this.data.roles;\n\n const cachedRole = rolesCache[role.name];\n\n // create new HMSRole instance, if cached role does not exist OR `role.publishSettings?.allowed` does not exist\n if (!cachedRole || !cachedRole.publishSettings?.allowed) {\n // Creating HMSRole object with data\n const hmsRole = new HMSRole(role);\n\n // saving the created HMSRole object into cache\n rolesCache[role.name] = hmsRole;\n\n // If the created HMSRole object is complete,\n // sending notification to Native Side to stop sending data for this role\n if (hmsRole.publishSettings?.allowed) {\n HMSManager.restrictData({\n id: HMSConstants.DEFAULT_SDK_ID,\n roleName: hmsRole.name,\n });\n }\n }\n\n return rolesCache[role.name]!;\n }\n\n static encodeHmsRoleChangeRequest(data: any) {\n const encodedRoleChangeRequest = {\n requestedBy: data.requestedBy\n ? HMSEncoder.encodeHmsPeer(data.requestedBy)\n : undefined,\n suggestedRole: HMSEncoder.encodeHmsRole(data.suggestedRole),\n };\n\n return new HMSRoleChangeRequest(encodedRoleChangeRequest);\n }\n\n static encodeHmsChangeTrackStateRequest(data: HMSChangeTrackStateRequest) {\n const encodedChangeTrackStateRequest = {\n requestedBy: data?.requestedBy\n ? HMSEncoder.encodeHmsPeer(data?.requestedBy)\n : undefined,\n trackType: data.trackType,\n mute: data.mute,\n };\n\n return new HMSChangeTrackStateRequest(encodedChangeTrackStateRequest);\n }\n\n static encodeRTCStats(data: any) {\n let video = this.encodeRTCStatsUnit(data?.video);\n let audio = this.encodeRTCStatsUnit(data?.audio);\n let combined = this.encodeRTCStatsUnit(data?.combined);\n\n return new HMSRTCStatsReport({ video, audio, combined });\n }\n\n static encodeRTCStatsUnit(data: any) {\n const [\n bitrateReceived,\n bitrateSent,\n bytesReceived,\n bytesSent,\n packetsLost,\n packetsReceived,\n roundTripTime,\n ] = data;\n\n return new HMSRTCStats({\n bitrateReceived,\n bitrateSent,\n bytesReceived,\n bytesSent,\n packetsLost,\n packetsReceived,\n roundTripTime,\n });\n }\n\n static encodeHmsSpeakers(data: any, id: string) {\n let encodedSpeakers: Array<HMSSpeaker> = [];\n\n data?.map((item: any) => {\n encodedSpeakers.push(HMSEncoder.encodeHmsSpeaker(item, id));\n });\n\n return encodedSpeakers;\n }\n\n static encodeHmsSpeaker(data: any, id: string) {\n return new HMSSpeaker({\n level: data?.level,\n peer: HMSEncoder.encodeHmsPeer(data?.peer),\n track: HMSEncoder.encodeHmsTrack(data?.track, id),\n });\n }\n\n static encodeBrowserRecordingState(data: any) {\n return new HMSBrowserRecordingState({\n initialising: data?.initialising || false,\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n stoppedAt: HMSEncoder.encodeDate(data?.stoppedAt),\n error: data?.error || undefined,\n });\n }\n\n static encodeServerRecordingState(data: any) {\n return new HMSServerRecordingState({\n running: data?.running || false,\n error: data?.error || undefined,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n });\n }\n\n static encodeRTMPStreamingState(data: any) {\n return new HMSRtmpStreamingState({\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n stoppedAt: HMSEncoder.encodeDate(data?.stoppedAt),\n error: data?.error || undefined,\n });\n }\n\n static encodeDate(dateData: any) {\n if (!dateData) {\n return undefined;\n }\n const dateNum = parseInt(dateData);\n if (isNaN(dateNum)) {\n return undefined;\n }\n return new Date(dateNum);\n }\n\n static encodeHLSStreamingState(data: any) {\n return new HMSHLSStreamingState({\n running: data?.running || false,\n variants: Array.isArray(data?.variants)\n ? this.encodeHLSVariants(data?.variants)\n : undefined,\n });\n }\n\n static encodeHLSRecordingState(data: any) {\n if (data) {\n return new HMSHLSRecordingState({\n running: data?.running || false,\n startedAt: HMSEncoder.encodeDate(data?.startedAt),\n singleFilePerLayer: data?.singleFilePerLayer || false,\n videoOnDemand: data?.videoOnDemand || false,\n });\n } else {\n return undefined;\n }\n }\n\n static encodeHLSVariants(data: any) {\n let variants: HMSHLSVariant[] = [];\n\n data?.map((item: any) => {\n let variant = new HMSHLSVariant({\n hlsStreamUrl: item.hlsStreamUrl,\n meetingUrl: item.meetingUrl,\n metadata: item?.metaData ? item?.metadata : undefined,\n startedAt: HMSEncoder.encodeDate(item?.startedAt),\n });\n variants.push(variant);\n });\n\n return variants;\n }\n\n static encodeHMSNetworkQuality(data: any) {\n if (data) {\n return new HMSNetworkQuality({\n downlinkQuality: data?.downlinkQuality,\n });\n } else {\n return undefined;\n }\n }\n\n static encodeHMSMessage(data: any) {\n if (data) {\n return new HMSMessage({\n message: data?.message,\n messageId: data?.messageId,\n type: data?.type,\n time: new Date(parseInt(data?.time)),\n sender: this.encodeHmsPeer(data?.sender),\n recipient: this.encodeHMSMessageRecipient(data?.recipient),\n });\n } else {\n return undefined;\n }\n }\n\n static encodeHMSMessageRecipient(data: any) {\n return new HMSMessageRecipient({\n recipientType: data?.recipientType,\n recipientPeer: data?.recipientPeer\n ? this.encodeHmsPeer(data.recipientPeer)\n : undefined,\n recipientRoles: Array.isArray(data?.recipientRoles)\n ? this.encodeHmsRoles(data.recipientRoles)\n : [],\n });\n }\n\n static encodeHMSException(data: any) {\n return new HMSException({\n code: data?.error?.code,\n description: data?.error?.description,\n message: data?.error?.message,\n name: data?.error?.name,\n action: data?.error?.action,\n isTerminal: data?.error?.isTerminal,\n canRetry: data?.error?.canRetry,\n });\n }\n\n static encodeHMSLocalAudioStats(data: any) {\n const [bitrate, bytesSent, roundTripTime] = data;\n\n return new HMSLocalAudioStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesSent: bytesSent ? bytesSent : undefined,\n roundTripTime: roundTripTime >= 0 ? roundTripTime : undefined,\n });\n }\n\n static encodeHMSLocalVideoStats(data: any[]) {\n return data.map((item: any) => {\n const [\n bitrate,\n bytesSent,\n roundTripTime,\n frameRate,\n resolution,\n layer,\n qualityLimitationReasons,\n ] = item;\n\n return new HMSLocalVideoStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesSent: bytesSent ? bytesSent : undefined,\n roundTripTime: roundTripTime >= 0 ? roundTripTime : undefined,\n frameRate: frameRate >= 0 ? frameRate : undefined,\n resolution: resolution\n ? { width: resolution[0], height: resolution[1] }\n : undefined, // resolution: [width, height]\n layer: layer ? layer : undefined,\n qualityLimitationReasons: qualityLimitationReasons\n ? this.encodeHMSQualityLimitationReasons(qualityLimitationReasons)\n : undefined,\n });\n });\n }\n\n static encodeHMSRemoteAudioStats(data: any) {\n const [bitrate, bytesReceived, jitter, packetsLost, packetsReceived] = data;\n\n return new HMSRemoteAudioStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesReceived: bytesReceived ? bytesReceived : undefined,\n jitter: jitter >= 0 ? jitter : undefined,\n packetsLost: packetsLost >= 0 ? packetsLost : undefined,\n packetsReceived: packetsReceived ? packetsReceived : undefined,\n });\n }\n\n static encodeHMSRemoteVideoStats(data: any) {\n const [\n bitrate,\n bytesReceived,\n frameRate,\n jitter,\n packetsLost,\n packetsReceived,\n resolution,\n ] = data;\n\n return new HMSRemoteVideoStats({\n bitrate: bitrate >= 0 ? bitrate : undefined,\n bytesReceived: bytesReceived ? bytesReceived : undefined,\n frameRate: frameRate >= 0 ? frameRate : undefined,\n jitter: jitter >= 0 ? jitter : undefined,\n packetsLost: packetsLost >= 0 ? packetsLost : undefined,\n packetsReceived: packetsReceived ? packetsReceived : undefined,\n resolution: resolution\n ? { width: resolution[0], height: resolution[1] }\n : undefined, // resolution: [width, height]\n });\n }\n\n static encodeHMSSimulcastLayerDefinition(data: any[]) {\n return data.map((sld) => {\n return new HMSSimulcastLayerDefinition({\n layer: HMSLayer[sld.layer as HMSLayer], // DOUBT: This can be invalid. Should we throw error?\n resolution: this.encodeHmsVideoResolution({\n width: sld.resolution[0],\n height: sld.resolution[1],\n }),\n });\n });\n }\n\n static encodeHMSQualityLimitationReasons(data: any) {\n return new HMSQualityLimitationReasons({\n reason: data.reason,\n bandwidth: data.bandwidth,\n cpu: data.cpu,\n none: data.none,\n other: data.other,\n qualityLimitationResolutionChanges:\n data.qualityLimitationResolutionChanges,\n });\n }\n\n static transformHMSHLSCueEventData<C extends object, T>(data: C): T {\n if ('startDate' in data) {\n data.startDate = this.encodeDate(data.startDate);\n }\n\n if ('endDate' in data && data.endDate) {\n data.endDate = this.encodeDate(data.endDate);\n }\n\n const transformed = data as unknown as T;\n\n return transformed;\n }\n}\n"],"mappings":"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"}
@@ -127,32 +127,6 @@ export class HMSSDK {
127
127
  id: this.id
128
128
  });
129
129
  });
130
- /**
131
- * - previewForRole can be used when there is role change request for current localPeer and we want
132
- * to show the localPeer how the tracks look before publishing them to room.
133
- *
134
- * - It requires a role of type [HMSRole]{@link HMSRole} for which we want to preview the tracks.
135
- *
136
- * checkout {@link https://www.100ms.live/docs/react-native} for more info
137
- *
138
- * @param {HMSRole}
139
- * @memberof HMSSDK
140
- */
141
- _defineProperty(this, "previewForRole", async role => {
142
- logger === null || logger === void 0 || logger.verbose('#Function previewForRole', {
143
- role,
144
- id: this.id
145
- });
146
- if (Platform.OS === 'ios') {
147
- return await HMSManager.previewForRole({
148
- role: role === null || role === void 0 ? void 0 : role.name,
149
- id: this.id
150
- });
151
- } else {
152
- console.log('API currently not available for android');
153
- return 'API currently not available for android';
154
- }
155
- });
156
130
  /**
157
131
  * - HmsView is react component that takes trackId and starts showing that track on a tile.
158
132
  * - The appearance of tile is completely customizable with style prop.
@@ -559,6 +533,46 @@ export class HMSSDK {
559
533
  };
560
534
  return await HMSManager.changeName(data);
561
535
  });
536
+ /**
537
+ * -Preview for a specific Role before changing it.
538
+ *
539
+ * By previewing before doing a Role Change, users can see their expected Audio & Video tracks which will be visible to other Peers in Room post changing the Role.
540
+ *
541
+ * checkout {@link https://www.100ms.live/docs/react-native/v2/how-to-guides/interact-with-room/peer/change-role} for more info
542
+ *
543
+ * @param {role: string}
544
+ * @memberof HMSSDK
545
+ */
546
+ _defineProperty(this, "previewForRole", async role => {
547
+ logger === null || logger === void 0 || logger.verbose('#Function previewForRole', {
548
+ role,
549
+ id: this.id
550
+ });
551
+ const data = await HMSManager.previewForRole({
552
+ role,
553
+ id: this.id
554
+ });
555
+ const previewTracks = HMSEncoder.encodeHmsPreviewForRoleTracks(data.tracks, this.id);
556
+ return previewTracks;
557
+ });
558
+ /**
559
+ * Cancel the Previewing for Role invocation.
560
+ *
561
+ * If a [previewForRole] call was performed previously then calling this method clears the tracks created anticipating a Change of Role
562
+ *
563
+ * checkout {@link https://www.100ms.live/docs/react-native/v2/how-to-guides/interact-with-room/peer/change-role} for more info
564
+ *
565
+ * @memberof HMSSDK
566
+ */
567
+ _defineProperty(this, "cancelPreview", async () => {
568
+ logger === null || logger === void 0 || logger.verbose('#Function cancelPreview', {
569
+ id: this.id
570
+ });
571
+ const data = await HMSManager.cancelPreview({
572
+ id: this.id
573
+ });
574
+ return data;
575
+ });
562
576
  /**
563
577
  * - Calling this function will accept the most recent roleChange request made by anyone in the room
564
578
  *