@stream-io/video-react-native-sdk 1.43.0 → 1.44.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 (91) hide show
  1. package/CHANGELOG.md +22 -1
  2. package/dist/commonjs/components/Call/CallControls/internal/ReactionsPicker.js.map +1 -1
  3. package/dist/commonjs/components/Call/Lobby/Lobby.js +4 -9
  4. package/dist/commonjs/components/Call/Lobby/Lobby.js.map +1 -1
  5. package/dist/commonjs/components/Call/Lobby/LobbyCameraPreview.js +93 -0
  6. package/dist/commonjs/components/Call/Lobby/LobbyCameraPreview.js.map +1 -0
  7. package/dist/commonjs/components/Call/Lobby/index.js +11 -0
  8. package/dist/commonjs/components/Call/Lobby/index.js.map +1 -1
  9. package/dist/commonjs/components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.js +4 -15
  10. package/dist/commonjs/components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.js.map +1 -1
  11. package/dist/commonjs/components/Participant/ParticipantView/VideoRenderer/index.js +10 -4
  12. package/dist/commonjs/components/Participant/ParticipantView/VideoRenderer/index.js.map +1 -1
  13. package/dist/commonjs/modules/call-manager/CallManager.js +37 -54
  14. package/dist/commonjs/modules/call-manager/CallManager.js.map +1 -1
  15. package/dist/commonjs/utils/internal/callingx/callingx.js +26 -37
  16. package/dist/commonjs/utils/internal/callingx/callingx.js.map +1 -1
  17. package/dist/commonjs/utils/internal/registerMediaEngine.js +41 -0
  18. package/dist/commonjs/utils/internal/registerMediaEngine.js.map +1 -0
  19. package/dist/commonjs/utils/internal/registerSDKGlobals.js +93 -35
  20. package/dist/commonjs/utils/internal/registerSDKGlobals.js.map +1 -1
  21. package/dist/commonjs/utils/push/android.js +6 -8
  22. package/dist/commonjs/utils/push/android.js.map +1 -1
  23. package/dist/commonjs/utils/push/libs/firebaseMessaging/index.js +0 -9
  24. package/dist/commonjs/utils/push/libs/firebaseMessaging/index.js.map +1 -1
  25. package/dist/commonjs/version.js +1 -1
  26. package/dist/module/components/Call/CallControls/internal/ReactionsPicker.js.map +1 -1
  27. package/dist/module/components/Call/Lobby/Lobby.js +4 -9
  28. package/dist/module/components/Call/Lobby/Lobby.js.map +1 -1
  29. package/dist/module/components/Call/Lobby/LobbyCameraPreview.js +87 -0
  30. package/dist/module/components/Call/Lobby/LobbyCameraPreview.js.map +1 -0
  31. package/dist/module/components/Call/Lobby/index.js +1 -0
  32. package/dist/module/components/Call/Lobby/index.js.map +1 -1
  33. package/dist/module/components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.js +6 -17
  34. package/dist/module/components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.js.map +1 -1
  35. package/dist/module/components/Participant/ParticipantView/VideoRenderer/index.js +11 -5
  36. package/dist/module/components/Participant/ParticipantView/VideoRenderer/index.js.map +1 -1
  37. package/dist/module/modules/call-manager/CallManager.js +36 -53
  38. package/dist/module/modules/call-manager/CallManager.js.map +1 -1
  39. package/dist/module/utils/internal/callingx/callingx.js +25 -38
  40. package/dist/module/utils/internal/callingx/callingx.js.map +1 -1
  41. package/dist/module/utils/internal/registerMediaEngine.js +37 -0
  42. package/dist/module/utils/internal/registerMediaEngine.js.map +1 -0
  43. package/dist/module/utils/internal/registerSDKGlobals.js +95 -37
  44. package/dist/module/utils/internal/registerSDKGlobals.js.map +1 -1
  45. package/dist/module/utils/push/android.js +7 -9
  46. package/dist/module/utils/push/android.js.map +1 -1
  47. package/dist/module/utils/push/libs/firebaseMessaging/index.js +0 -8
  48. package/dist/module/utils/push/libs/firebaseMessaging/index.js.map +1 -1
  49. package/dist/module/version.js +1 -1
  50. package/dist/typescript/components/Call/Lobby/Lobby.d.ts.map +1 -1
  51. package/dist/typescript/components/Call/Lobby/LobbyCameraPreview.d.ts +28 -0
  52. package/dist/typescript/components/Call/Lobby/LobbyCameraPreview.d.ts.map +1 -0
  53. package/dist/typescript/components/Call/Lobby/index.d.ts +1 -0
  54. package/dist/typescript/components/Call/Lobby/index.d.ts.map +1 -1
  55. package/dist/typescript/components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.d.ts +11 -6
  56. package/dist/typescript/components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.d.ts.map +1 -1
  57. package/dist/typescript/components/Participant/ParticipantView/VideoRenderer/index.d.ts.map +1 -1
  58. package/dist/typescript/modules/call-manager/CallManager.d.ts +28 -6
  59. package/dist/typescript/modules/call-manager/CallManager.d.ts.map +1 -1
  60. package/dist/typescript/modules/call-manager/types.d.ts +0 -1
  61. package/dist/typescript/modules/call-manager/types.d.ts.map +1 -1
  62. package/dist/typescript/utils/StreamVideoRN/types.d.ts +3 -0
  63. package/dist/typescript/utils/StreamVideoRN/types.d.ts.map +1 -1
  64. package/dist/typescript/utils/internal/callingx/callingx.d.ts +2 -0
  65. package/dist/typescript/utils/internal/callingx/callingx.d.ts.map +1 -1
  66. package/dist/typescript/utils/internal/registerMediaEngine.d.ts +15 -0
  67. package/dist/typescript/utils/internal/registerMediaEngine.d.ts.map +1 -0
  68. package/dist/typescript/utils/internal/registerSDKGlobals.d.ts.map +1 -1
  69. package/dist/typescript/utils/push/android.d.ts.map +1 -1
  70. package/dist/typescript/utils/push/libs/firebaseMessaging/index.d.ts +0 -1
  71. package/dist/typescript/utils/push/libs/firebaseMessaging/index.d.ts.map +1 -1
  72. package/dist/typescript/version.d.ts +1 -1
  73. package/ios/StreamInCallManager.m +4 -0
  74. package/ios/StreamInCallManager.swift +42 -10
  75. package/package.json +8 -8
  76. package/src/components/Call/CallControls/internal/ReactionsPicker.tsx +2 -2
  77. package/src/components/Call/Lobby/Lobby.tsx +4 -11
  78. package/src/components/Call/Lobby/LobbyCameraPreview.tsx +99 -0
  79. package/src/components/Call/Lobby/index.ts +1 -0
  80. package/src/components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.tsx +56 -75
  81. package/src/components/Participant/ParticipantView/VideoRenderer/index.tsx +18 -7
  82. package/src/modules/call-manager/CallManager.ts +40 -71
  83. package/src/modules/call-manager/native-module.d.ts +13 -0
  84. package/src/modules/call-manager/types.ts +0 -1
  85. package/src/utils/StreamVideoRN/types.ts +3 -0
  86. package/src/utils/internal/callingx/callingx.ts +35 -44
  87. package/src/utils/internal/registerMediaEngine.ts +42 -0
  88. package/src/utils/internal/registerSDKGlobals.ts +115 -42
  89. package/src/utils/push/android.ts +9 -17
  90. package/src/utils/push/libs/firebaseMessaging/index.ts +0 -19
  91. package/src/version.ts +1 -1
@@ -4,45 +4,11 @@
4
4
  * Internal utils for callingx library usage from video-client.
5
5
  * See @./registerSDKGlobals.ts for more usage details.
6
6
  */
7
- import { NativeModules, Platform } from 'react-native';
7
+ import { Platform } from 'react-native';
8
8
  import { getCallingxLibIfAvailable } from '../../push/libs/callingx';
9
9
  import { CallingState, videoLoggerSystem } from '@stream-io/video-client';
10
10
  const CallingxModule = getCallingxLibIfAvailable();
11
11
 
12
- /**
13
- * Fallback when Telecom registration fails/times out on Android: no component would own audio
14
- * (Telecom never took over), so re-establish StreamInCallManager in its classic (non-telecom)
15
- * mode to keep the call audible.
16
- */
17
- function recoverAudioToClassicMode() {
18
- if (Platform.OS !== 'android') {
19
- return;
20
- }
21
- if (!CallingxModule?.isSetup || !CallingxModule.isTelecomBacked) {
22
- return;
23
- }
24
- // If a call is already registered, Telecom owns audio for it (the registration
25
- // partially succeeded). Switching to classic mode here would fight Telecom's
26
- // routing/focus — leave ownership intact.
27
- if (CallingxModule.hasRegisteredCall()) {
28
- videoLoggerSystem.getLogger('callingx').debug('recoverAudioToClassicMode: Telecom already owns a registered call; skipping classic fallback');
29
- return;
30
- }
31
- const StreamInCallManagerNativeModule = NativeModules.StreamInCallManager;
32
- if (!StreamInCallManagerNativeModule) {
33
- return;
34
- }
35
- const logger = videoLoggerSystem.getLogger('callingx');
36
- logger.warn('Telecom registration failed; falling back to classic StreamInCallManager audio');
37
- try {
38
- StreamInCallManagerNativeModule.stop();
39
- StreamInCallManagerNativeModule.setTelecomManagedMode(false);
40
- StreamInCallManagerNativeModule.start();
41
- } catch (error) {
42
- logger.error('recoverAudioToClassicMode: failed to recover audio', error);
43
- }
44
- }
45
-
46
12
  /**
47
13
  * Gets the call display name. To be used for display in native call screen.
48
14
  */
@@ -90,7 +56,6 @@ export async function registerOutgoingCall(call) {
90
56
  );
91
57
  } catch (error) {
92
58
  logger.error(`registerOutgoingCall: Error registering outgoing call in callingx: ${call.cid}`, error);
93
- recoverAudioToClassicMode();
94
59
  }
95
60
  }
96
61
 
@@ -126,7 +91,6 @@ export async function joinCallingxCall(call, activeCalls) {
126
91
  await startCallInCallingx();
127
92
  } catch (error) {
128
93
  logger.error(`startCallingxCall: Error starting call in callingx: ${call.cid}`, error);
129
- recoverAudioToClassicMode();
130
94
  }
131
95
  } else if (isIncomingCall) {
132
96
  logger.debug(`joinCallingxCall: Joining incoming call ${call.cid}`);
@@ -156,7 +120,6 @@ export async function joinCallingxCall(call, activeCalls) {
156
120
  await CallingxModule.answerIncomingCall(call.cid);
157
121
  } catch (error) {
158
122
  logger.error(`Error joining incoming call in callingx: ${call.cid}`, error);
159
- recoverAudioToClassicMode();
160
123
  }
161
124
  }
162
125
  }
@@ -172,4 +135,28 @@ export async function endCallingxCall(call, reason) {
172
135
  logger.error(`endCallingxCall: Error ending call in callingx: ${call.cid}`, error);
173
136
  }
174
137
  }
138
+ export async function wireAudioEngineSubscription() {
139
+ if (!CallingxModule || !CallingxModule.isSetup || Platform.OS !== 'ios') {
140
+ return;
141
+ }
142
+ const logger = videoLoggerSystem.getLogger('callingx');
143
+ try {
144
+ logger.debug('wireEngineSubscription: Wiring engine subscription');
145
+ CallingxModule.wireAudioEngineSubscription();
146
+ } catch (error) {
147
+ logger.error('wireAudioEngineSubscription: Error wiring engine subscription', error);
148
+ }
149
+ }
150
+ export function unwireAudioEngineSubscription() {
151
+ if (!CallingxModule || !CallingxModule.isSetup || Platform.OS !== 'ios') {
152
+ return;
153
+ }
154
+ const logger = videoLoggerSystem.getLogger('callingx');
155
+ try {
156
+ logger.debug('unwireEngineSubscription: Cancelling engine subscription');
157
+ CallingxModule.unwireAudioEngineSubscription();
158
+ } catch (error) {
159
+ logger.error('unwireAudioEngineSubscription: Error cancelling engine subscription', error);
160
+ }
161
+ }
175
162
  //# sourceMappingURL=callingx.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","Platform","getCallingxLibIfAvailable","CallingState","videoLoggerSystem","CallingxModule","recoverAudioToClassicMode","OS","isSetup","isTelecomBacked","hasRegisteredCall","getLogger","debug","StreamInCallManagerNativeModule","StreamInCallManager","logger","warn","stop","setTelecomManagedMode","start","error","getCallDisplayName","callMembers","participants","currentUserId","names","length","flatMap","member","user","id","name","participant","userId","find","sort","join","getCallDisplayNameFromCall","call","state","custom","display_name","members","registerOutgoingCall","isOwnTracksLoopbackAllowed","isOutcomingCall","ringing","isCreatedByMe","cid","callDisplayName","startCall","createdBy","settings","video","enabled","joinCallingxCall","activeCalls","isIncomingCall","startCallInCallingx","isOngoingCallsEnabled","activeCallsToLeave","filter","c","callingState","LEFT","activeCall","leave","reason","catch","e","displayIncomingCall","answerIncomingCall","endCallingxCall","isCallTracked","endCallWithReason"],"sourceRoot":"../../../../../src","sources":["utils/internal/callingx/callingx.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Platform","getCallingxLibIfAvailable","CallingState","videoLoggerSystem","CallingxModule","getCallDisplayName","callMembers","participants","currentUserId","names","length","flatMap","member","user","id","name","participant","userId","find","sort","join","getCallDisplayNameFromCall","call","state","custom","display_name","members","registerOutgoingCall","isSetup","isOwnTracksLoopbackAllowed","isOutcomingCall","ringing","isCreatedByMe","logger","getLogger","debug","cid","callDisplayName","startCall","createdBy","settings","video","enabled","error","joinCallingxCall","activeCalls","isIncomingCall","startCallInCallingx","isOngoingCallsEnabled","activeCallsToLeave","filter","c","callingState","LEFT","activeCall","leave","reason","catch","e","displayIncomingCall","answerIncomingCall","endCallingxCall","isCallTracked","endCallWithReason","wireAudioEngineSubscription","OS","unwireAudioEngineSubscription"],"sourceRoot":"../../../../../src","sources":["utils/internal/callingx/callingx.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ import { setCallMediaEngineProvider, videoLoggerSystem } from '@stream-io/video-client';
4
+ import { CallFactory } from '@stream-io/react-native-webrtc';
5
+ import { callManager } from '../../modules/call-manager';
6
+ const logger = videoLoggerSystem.getLogger('CallMediaEngine');
7
+
8
+ /**
9
+ * Registers the React Native {@link CallMediaEngine} provider.
10
+ *
11
+ * Once registered, every `Call.ensureMediaFactory()` builds the call's native
12
+ * `PeerConnectionFactory` (with the call's audio configuration) and sets it as
13
+ * the single live factory. The WebRTC globals (`getUserMedia`/`getDisplayMedia`/
14
+ * `new RTCPeerConnection`) then resolve to it, so the call's tracks and peer
15
+ * connections are created with — and torn down with — that one native factory,
16
+ * which is what lets the call own its AudioDeviceModule. The engine itself only
17
+ * manages the factory lifecycle (`dispose` at leave).
18
+ *
19
+ * @internal
20
+ */
21
+ export function registerCallMediaEngine() {
22
+ setCallMediaEngineProvider(async () => {
23
+ const config = callManager.getStoredConfig();
24
+ const bypassVoiceProcessing = config?.audioRole === 'listener';
25
+ const factory = await CallFactory.create({
26
+ bypassVoiceProcessing
27
+ });
28
+ logger.debug(`Created per-call factory (bypassVoiceProcessing=${bypassVoiceProcessing})`);
29
+ return {
30
+ dispose: async () => {
31
+ logger.debug('Disposing per-call factory');
32
+ return await factory.dispose();
33
+ }
34
+ };
35
+ });
36
+ }
37
+ //# sourceMappingURL=registerMediaEngine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["setCallMediaEngineProvider","videoLoggerSystem","CallFactory","callManager","logger","getLogger","registerCallMediaEngine","config","getStoredConfig","bypassVoiceProcessing","audioRole","factory","create","debug","dispose"],"sourceRoot":"../../../../src","sources":["utils/internal/registerMediaEngine.ts"],"mappings":";;AAAA,SAEEA,0BAA0B,EAC1BC,iBAAiB,QACZ,yBAAyB;AAChC,SAASC,WAAW,QAAQ,gCAAgC;AAC5D,SAASC,WAAW,QAAQ,4BAA4B;AAExD,MAAMC,MAAM,GAAGH,iBAAiB,CAACI,SAAS,CAAC,iBAAiB,CAAC;;AAE7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,uBAAuBA,CAAA,EAAG;EACxCN,0BAA0B,CAAC,YAAsC;IAC/D,MAAMO,MAAM,GAAGJ,WAAW,CAACK,eAAe,CAAC,CAAC;IAC5C,MAAMC,qBAAqB,GAAGF,MAAM,EAAEG,SAAS,KAAK,UAAU;IAC9D,MAAMC,OAAO,GAAG,MAAMT,WAAW,CAACU,MAAM,CAAC;MACvCH;IACF,CAAC,CAAC;IACFL,MAAM,CAACS,KAAK,CACV,mDAAmDJ,qBAAqB,GAC1E,CAAC;IAED,OAAO;MACLK,OAAO,EAAE,MAAAA,CAAA,KAAY;QACnBV,MAAM,CAACS,KAAK,CAAC,4BAA4B,CAAC;QAC1C,OAAO,MAAMF,OAAO,CAACG,OAAO,CAAC,CAAC;MAChC;IACF,CAAC;EACH,CAAC,CAAC;AACJ","ignoreList":[]}
@@ -1,13 +1,28 @@
1
1
  "use strict";
2
2
 
3
+ import { videoLoggerSystem } from '@stream-io/video-client';
3
4
  import { NativeModules, PermissionsAndroid, Platform } from 'react-native';
4
- import { AudioDeviceModule, AudioEngineMuteMode, audioDeviceModuleEvents } from '@stream-io/react-native-webrtc';
5
+ import { AudioEngineMuteMode, audioDeviceModuleEvents } from '@stream-io/react-native-webrtc';
5
6
  import { getCallingxLibIfAvailable } from '../push/libs/callingx';
6
- import { endCallingxCall, registerOutgoingCall, joinCallingxCall } from './callingx/callingx';
7
+ import { endCallingxCall, registerOutgoingCall, joinCallingxCall, wireAudioEngineSubscription, unwireAudioEngineSubscription } from './callingx/callingx';
8
+ import { registerCallMediaEngine } from './registerMediaEngine';
9
+ import { callManager as publicCallManager } from '../../modules/call-manager';
7
10
  const StreamInCallManagerNativeModule = NativeModules.StreamInCallManager;
8
11
  const StreamVideoReactNativeModule = NativeModules.StreamVideoReactNative;
9
12
  const CallingxModule = getCallingxLibIfAvailable();
10
13
 
14
+ /**
15
+ * Runs a fire-and-forget native call, logging instead of throwing on a bridge
16
+ * error so it can't crash the caller (e.g. the join/leave flow).
17
+ */
18
+ const safeNativeCall = (label, fn) => {
19
+ try {
20
+ fn();
21
+ } catch (error) {
22
+ videoLoggerSystem.getLogger('CallManager').warn(`${label} failed`, error);
23
+ }
24
+ };
25
+
11
26
  /**
12
27
  * Checks if StreamInCallManager should be bypassed because CallKit is handling
13
28
  * the audio session via CallingX.
@@ -38,71 +53,113 @@ const shouldBypassForCallKit = ({
38
53
  * run it in "telecom-managed" mode where it only keeps proximity/keep-screen-on/mute.
39
54
  */
40
55
  const isAndroidTelecomManaged = ({
41
- isRingingTypeCall
56
+ cid
42
57
  }) => {
43
- if (Platform.OS !== 'android') {
58
+ if (Platform.OS !== 'android' || !CallingxModule) {
44
59
  return false;
45
60
  }
46
- if (!CallingxModule) {
61
+ if (!CallingxModule.isSetup || !CallingxModule.isTelecomBacked) {
47
62
  return false;
48
63
  }
49
- return CallingxModule.isSetup && CallingxModule.isTelecomBacked && (isRingingTypeCall || CallingxModule.isOngoingCallsEnabled);
64
+ // Trust Telecom's actual per-call registration. A call that never registered
65
+ // (e.g. Telecom registration failed) is not managed, so start() falls through
66
+ // to the classic path — this is where audio recovery happens.
67
+ return CallingxModule.isCallTracked(cid);
50
68
  };
51
69
  const streamRNVideoSDKGlobals = {
52
70
  callingX: {
53
71
  joinCall: joinCallingxCall,
54
72
  endCall: endCallingxCall,
55
- registerOutgoingCall: registerOutgoingCall
73
+ registerOutgoingCall: registerOutgoingCall,
74
+ wireAudioEngineSubscription: wireAudioEngineSubscription,
75
+ unwireAudioEngineSubscription: unwireAudioEngineSubscription
56
76
  },
57
77
  callManager: {
58
78
  setup: ({
59
79
  defaultDevice,
60
- isRingingTypeCall
80
+ isRingingTypeCall,
81
+ cid
61
82
  }) => {
62
- if (shouldBypassForCallKit({
83
+ const isTelecomManaged = isAndroidTelecomManaged({
84
+ cid
85
+ });
86
+ const isCallKitManaged = shouldBypassForCallKit({
63
87
  isRingingTypeCall
64
- })) {
65
- // Forward the sticky preference; callingx reads it on next CallKit activation.
66
- CallingxModule?.setDefaultAudioDeviceEndpointType(defaultDevice);
67
- return;
88
+ });
89
+ if (Platform.OS === 'android') {
90
+ StreamInCallManagerNativeModule.setTelecomManagedMode(isTelecomManaged);
68
91
  }
69
- if (isAndroidTelecomManaged({
70
- isRingingTypeCall
71
- })) {
72
- // Telecom owns routing; forward the sticky preference to callingx and run the
73
- // in-call manager in telecom-managed mode (proximity/keep-screen-on only).
74
- CallingxModule?.setDefaultAudioDeviceEndpointType(defaultDevice);
75
- StreamInCallManagerNativeModule.setTelecomManagedMode(true);
76
- StreamInCallManagerNativeModule.setup();
77
- return;
92
+ if (isTelecomManaged || isCallKitManaged) {
93
+ safeNativeCall('setup defaultAudioDevice (callingx)', () => CallingxModule?.setDefaultAudioDeviceEndpointType(defaultDevice));
78
94
  }
79
- if (Platform.OS === 'android') {
80
- StreamInCallManagerNativeModule.setTelecomManagedMode(false);
95
+ if (!isTelecomManaged) {
96
+ safeNativeCall('setup defaultAudioDevice', () => StreamInCallManagerNativeModule.setDefaultAudioDeviceEndpointType(defaultDevice));
81
97
  }
82
- StreamInCallManagerNativeModule.setDefaultAudioDeviceEndpointType(defaultDevice);
83
- StreamInCallManagerNativeModule.setup();
84
98
  },
85
99
  start: ({
86
- isRingingTypeCall
100
+ isRingingTypeCall,
101
+ cid
87
102
  }) => {
103
+ // Apply the audio config a consumer recorded via `callManager.start(config)` at this single
104
+ // join-time start, before the native audio manager is activated.
105
+ const config = publicCallManager.getStoredConfig();
106
+ const deviceOverride = config?.audioRole === 'communicator' ? config.deviceEndpointType : undefined;
88
107
  if (shouldBypassForCallKit({
89
108
  isRingingTypeCall
90
109
  })) {
110
+ // CallKit owns activation. Only forward an explicit endpoint override; the
111
+ // SpeakerManager-derived default was already forwarded via `setup`.
112
+ if (deviceOverride) {
113
+ safeNativeCall('start defaultAudioDevice (callingx)', () => CallingxModule?.setDefaultAudioDeviceEndpointType(deviceOverride));
114
+ safeNativeCall('start defaultAudioDevice', () => StreamInCallManagerNativeModule.setDefaultAudioDeviceEndpointType(deviceOverride));
115
+ }
91
116
  return;
92
117
  }
93
- // Android telecom-managed calls still start (for proximity/keep-screen-on);
94
- // the native side skips routing/focus internally.
118
+ const isTelecomManaged = isAndroidTelecomManaged({
119
+ cid
120
+ });
121
+ if (Platform.OS === 'android') {
122
+ StreamInCallManagerNativeModule.setTelecomManagedMode(isTelecomManaged);
123
+ }
124
+ if (config?.audioRole) {
125
+ StreamInCallManagerNativeModule.setAudioRole(config.audioRole);
126
+ }
127
+ if (deviceOverride) {
128
+ // Override the SpeakerManager-derived default device (set via `setup`).
129
+ if (isTelecomManaged) {
130
+ safeNativeCall('start defaultAudioDevice (callingx)', () => CallingxModule?.setDefaultAudioDeviceEndpointType(deviceOverride));
131
+ } else {
132
+ safeNativeCall('start defaultAudioDevice', () => StreamInCallManagerNativeModule.setDefaultAudioDeviceEndpointType(deviceOverride));
133
+ }
134
+ }
135
+ const stereoOutput = config?.audioRole === 'listener';
136
+ StreamInCallManagerNativeModule.setEnableStereoAudioOutput(stereoOutput);
95
137
  StreamInCallManagerNativeModule.start();
96
138
  },
97
139
  stop: ({
98
- isRingingTypeCall
140
+ isRingingTypeCall,
141
+ shouldStopCallManager
99
142
  }) => {
100
- if (shouldBypassForCallKit({
101
- isRingingTypeCall
102
- })) {
103
- return;
143
+ // Clear the stored audio config so it doesn't carry into the next call.
144
+ publicCallManager.stop();
145
+
146
+ // We want to interact with ADM only when it was instantiated. This guards a case when
147
+ // leave is invoked for ringing call - in this case PC Factory and ADM are not yet created.
148
+ if (shouldStopCallManager) {
149
+ // Teardown of setMutedRecordingPrepared. Done here (before the CallKit gate)
150
+ // so it runs on both paths and while the call factory is still alive: leave()
151
+ // calls stop() before disposing the engine, so the ADM resolves to the call's
152
+ // factory rather than a default.
153
+ if (Platform.OS === 'ios') {
154
+ StreamInCallManagerNativeModule.setRecordingAlwaysPreparedMode(false);
155
+ }
156
+ if (shouldBypassForCallKit({
157
+ isRingingTypeCall
158
+ })) {
159
+ return;
160
+ }
161
+ StreamInCallManagerNativeModule.stop();
104
162
  }
105
- StreamInCallManagerNativeModule.stop();
106
163
  },
107
164
  // iOS-only. Keep the AVAudioEngine mic-input (voice-processing) chain
108
165
  // prepared while muted so the engine stays full-duplex and remote audio
@@ -116,9 +173,9 @@ const streamRNVideoSDKGlobals = {
116
173
  if (enabled) {
117
174
  // Mute via the voice-processing unit (it's the default, fail safe config here) so the input chain
118
175
  // stays built while muted, rather than tearing the engine down.
119
- AudioDeviceModule.setMuteMode(AudioEngineMuteMode.VoiceProcessing).catch(() => {});
176
+ StreamInCallManagerNativeModule.setMuteMode(AudioEngineMuteMode.VoiceProcessing);
120
177
  }
121
- AudioDeviceModule.setRecordingAlwaysPreparedMode(enabled).catch(() => {});
178
+ StreamInCallManagerNativeModule.setRecordingAlwaysPreparedMode(enabled);
122
179
  }
123
180
  },
124
181
  permissions: {
@@ -153,5 +210,6 @@ export function registerSDKGlobals() {
153
210
  if (!globalThis.streamRNVideoSDK) {
154
211
  globalThis.streamRNVideoSDK = streamRNVideoSDKGlobals;
155
212
  }
213
+ registerCallMediaEngine();
156
214
  }
157
215
  //# sourceMappingURL=registerSDKGlobals.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","PermissionsAndroid","Platform","AudioDeviceModule","AudioEngineMuteMode","audioDeviceModuleEvents","getCallingxLibIfAvailable","endCallingxCall","registerOutgoingCall","joinCallingxCall","StreamInCallManagerNativeModule","StreamInCallManager","StreamVideoReactNativeModule","StreamVideoReactNative","CallingxModule","shouldBypassForCallKit","isRingingTypeCall","OS","bypass","isSetup","isOngoingCallsEnabled","isAndroidTelecomManaged","isTelecomBacked","streamRNVideoSDKGlobals","callingX","joinCall","endCall","callManager","setup","defaultDevice","setDefaultAudioDeviceEndpointType","setTelecomManagedMode","start","stop","setMutedRecordingPrepared","enabled","setMuteMode","VoiceProcessing","catch","setRecordingAlwaysPreparedMode","permissions","check","permission","nativeAndroidPermission","PERMISSIONS","CAMERA","RECORD_AUDIO","Boolean","checkPermission","nativeEvents","speechActivity","subscribe","cb","subscription","addSpeechActivityListener","data","isSoundDetected","event","remove","registerSDKGlobals","globalThis","streamRNVideoSDK"],"sourceRoot":"../../../../src","sources":["utils/internal/registerSDKGlobals.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["videoLoggerSystem","NativeModules","PermissionsAndroid","Platform","AudioEngineMuteMode","audioDeviceModuleEvents","getCallingxLibIfAvailable","endCallingxCall","registerOutgoingCall","joinCallingxCall","wireAudioEngineSubscription","unwireAudioEngineSubscription","registerCallMediaEngine","callManager","publicCallManager","StreamInCallManagerNativeModule","StreamInCallManager","StreamVideoReactNativeModule","StreamVideoReactNative","CallingxModule","safeNativeCall","label","fn","error","getLogger","warn","shouldBypassForCallKit","isRingingTypeCall","OS","bypass","isSetup","isOngoingCallsEnabled","isAndroidTelecomManaged","cid","isTelecomBacked","isCallTracked","streamRNVideoSDKGlobals","callingX","joinCall","endCall","setup","defaultDevice","isTelecomManaged","isCallKitManaged","setTelecomManagedMode","setDefaultAudioDeviceEndpointType","start","config","getStoredConfig","deviceOverride","audioRole","deviceEndpointType","undefined","setAudioRole","stereoOutput","setEnableStereoAudioOutput","stop","shouldStopCallManager","setRecordingAlwaysPreparedMode","setMutedRecordingPrepared","enabled","setMuteMode","VoiceProcessing","permissions","check","permission","nativeAndroidPermission","PERMISSIONS","CAMERA","RECORD_AUDIO","Boolean","checkPermission","nativeEvents","speechActivity","subscribe","cb","subscription","addSpeechActivityListener","data","isSoundDetected","event","remove","registerSDKGlobals","globalThis","streamRNVideoSDK"],"sourceRoot":"../../../../src","sources":["utils/internal/registerSDKGlobals.ts"],"mappings":"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","ignoreList":[]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { CallingState, videoLoggerSystem } from '@stream-io/video-client';
4
4
  import { AppState, Platform } from 'react-native';
5
- import { getFirebaseMessagingLib, getFirebaseMessagingLibNoThrow } from './libs';
5
+ import { getFirebaseMessagingLib } from './libs';
6
6
  import { pushUnsubscriptionCallbacks } from './internal/constants';
7
7
  import { canListenToWS, shouldCallBeClosed } from './internal/utils';
8
8
  import { setPushLogoutCallback } from '../internal/pushLogoutCallback';
@@ -49,14 +49,12 @@ export async function initAndroidPushToken(client, pushConfig, setUnsubscribeLis
49
49
  logger.debug(`sending firebase token: ${token} for userId: ${userId}`);
50
50
  await client.addDevice(token, 'firebase', push_provider_name);
51
51
  };
52
- const messaging = pushConfig.isExpo ? getFirebaseMessagingLibNoThrow(true) : getFirebaseMessagingLib();
53
- if (messaging) {
54
- logger.debug(`setting firebase token listeners`);
55
- const unsubscribe = messaging().onTokenRefresh(refreshedToken => setDeviceToken(refreshedToken));
56
- setUnsubscribeListener(unsubscribe);
57
- const token = await messaging().getToken();
58
- await setDeviceToken(token);
59
- }
52
+ const messaging = getFirebaseMessagingLib();
53
+ logger.debug(`setting firebase token listeners`);
54
+ const unsubscribe = messaging().onTokenRefresh(refreshedToken => setDeviceToken(refreshedToken));
55
+ setUnsubscribeListener(unsubscribe);
56
+ const token = await messaging().getToken();
57
+ await setDeviceToken(token);
60
58
  }
61
59
 
62
60
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["CallingState","videoLoggerSystem","AppState","Platform","getFirebaseMessagingLib","getFirebaseMessagingLibNoThrow","pushUnsubscriptionCallbacks","canListenToWS","shouldCallBeClosed","setPushLogoutCallback","StreamVideoRN","getCallingxLib","lastFirebaseToken","token","userId","initAndroidPushToken","client","pushConfig","setUnsubscribeListener","OS","android","pushProviderName","logger","getLogger","setDeviceToken","streamClient","_user","id","anonymous","debug","removeDevice","err","warn","push_provider_name","addDevice","messaging","isExpo","unsubscribe","onTokenRefresh","refreshedToken","getToken","firebaseDataHandler","data","getConfig","push","sender","type","call_cid","callingx","createStreamVideoClient","stopService","asForegroundService","backgroundTaskOwner","acquireBackgroundTask","catch","e","error","finishBackgroundTask","log","releaseBackgroundTask","_client","callFromPush","onRingingCall","mustEndCall","endCallReason","endCallWithReason","leave","reject","unsubscribeFunctions","on","event","_canListenToWS","forEach","fn","mustEndCallFromEvent","endCallReasonFromEvent","stateSubscription","state","callingState$","subscribe","callingState","IDLE","LEFT","endCallSubscription","addEventListener","callId","RINGING","reason","appStateSubscription","nextAppState","remove","get","cb","set"],"sourceRoot":"../../../../src","sources":["utils/push/android.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["CallingState","videoLoggerSystem","AppState","Platform","getFirebaseMessagingLib","pushUnsubscriptionCallbacks","canListenToWS","shouldCallBeClosed","setPushLogoutCallback","StreamVideoRN","getCallingxLib","lastFirebaseToken","token","userId","initAndroidPushToken","client","pushConfig","setUnsubscribeListener","OS","android","pushProviderName","logger","getLogger","setDeviceToken","streamClient","_user","id","anonymous","debug","removeDevice","err","warn","push_provider_name","addDevice","messaging","unsubscribe","onTokenRefresh","refreshedToken","getToken","firebaseDataHandler","data","getConfig","push","sender","type","call_cid","callingx","createStreamVideoClient","stopService","asForegroundService","backgroundTaskOwner","acquireBackgroundTask","catch","e","error","finishBackgroundTask","log","releaseBackgroundTask","_client","callFromPush","onRingingCall","mustEndCall","endCallReason","endCallWithReason","leave","reject","unsubscribeFunctions","on","event","_canListenToWS","forEach","fn","mustEndCallFromEvent","endCallReasonFromEvent","stateSubscription","state","callingState$","subscribe","callingState","IDLE","LEFT","endCallSubscription","addEventListener","callId","RINGING","reason","appStateSubscription","nextAppState","remove","get","cb","set"],"sourceRoot":"../../../../src","sources":["utils/push/android.ts"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  import { lib } from './lib';
4
- import { videoLoggerSystem } from '@stream-io/video-client';
5
4
  const INSTALLATION_INSTRUCTION = 'Please see https://rnfirebase.io/messaging/usage#installation for installation instructions';
6
5
  export function getFirebaseMessagingLib() {
7
6
  if (!lib) {
@@ -9,11 +8,4 @@ export function getFirebaseMessagingLib() {
9
8
  }
10
9
  return lib;
11
10
  }
12
- export function getFirebaseMessagingLibNoThrow(isExpo) {
13
- if (!lib) {
14
- const logger = videoLoggerSystem.getLogger('getFirebaseMessagingLibNoThrow');
15
- logger.debug(`${isExpo ? 'In Expo, @react-native-firebase/messaging library is required to receive ringing notifications in app killed state for Android.' : ''}${INSTALLATION_INSTRUCTION}`);
16
- }
17
- return lib;
18
- }
19
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["lib","videoLoggerSystem","INSTALLATION_INSTRUCTION","getFirebaseMessagingLib","Error","getFirebaseMessagingLibNoThrow","isExpo","logger","getLogger","debug"],"sourceRoot":"../../../../../../src","sources":["utils/push/libs/firebaseMessaging/index.ts"],"mappings":";;AAAA,SAASA,GAAG,QAAmB,OAAO;AACtC,SAASC,iBAAiB,QAAQ,yBAAyB;AAK3D,MAAMC,wBAAwB,GAC5B,6FAA6F;AAE/F,OAAO,SAASC,uBAAuBA,CAAA,EAA0B;EAC/D,IAAI,CAACH,GAAG,EAAE;IACR,MAAMI,KAAK,CACT,qDAAqD,GACnDF,wBACJ,CAAC;EACH;EACA,OAAOF,GAAG;AACZ;AAEA,OAAO,SAASK,8BAA8BA,CAC5CC,MAAe,EACoB;EACnC,IAAI,CAACN,GAAG,EAAE;IACR,MAAMO,MAAM,GAAGN,iBAAiB,CAACO,SAAS,CACxC,gCACF,CAAC;IACDD,MAAM,CAACE,KAAK,CACV,GACEH,MAAM,GACF,iIAAiI,GACjI,EAAE,GACLJ,wBAAwB,EAC7B,CAAC;EACH;EACA,OAAOF,GAAG;AACZ","ignoreList":[]}
1
+ {"version":3,"names":["lib","INSTALLATION_INSTRUCTION","getFirebaseMessagingLib","Error"],"sourceRoot":"../../../../../../src","sources":["utils/push/libs/firebaseMessaging/index.ts"],"mappings":";;AAAA,SAASA,GAAG,QAAmB,OAAO;AAKtC,MAAMC,wBAAwB,GAC5B,6FAA6F;AAE/F,OAAO,SAASC,uBAAuBA,CAAA,EAA0B;EAC/D,IAAI,CAACF,GAAG,EAAE;IACR,MAAMG,KAAK,CACT,qDAAqD,GACnDF,wBACJ,CAAC;EACH;EACA,OAAOD,GAAG;AACZ","ignoreList":[]}
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
 
3
- export const version = '1.43.0';
3
+ export const version = '1.44.0';
4
4
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Lobby.d.ts","sourceRoot":"","sources":["../../../../../src/components/Call/Lobby/Lobby.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,aAAa,EAAW,MAAM,OAAO,CAAC;AAY3D,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B;;OAEG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACzC;;OAEG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC;IAC3D;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,WAAW,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;CACtD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,GAAI,+EAMnB,UAAU,sBAoEZ,CAAC"}
1
+ {"version":3,"file":"Lobby.d.ts","sourceRoot":"","sources":["../../../../../src/components/Call/Lobby/Lobby.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,aAAa,EAAW,MAAM,OAAO,CAAC;AAW3D,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B;;OAEG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACzC;;OAEG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC;IAC3D;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,WAAW,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;CACtD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,GAAI,+EAMnB,UAAU,sBA8DZ,CAAC"}
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import { ViewStyle } from 'react-native';
3
+ /**
4
+ * Props for the {@link LobbyCameraPreview} component.
5
+ */
6
+ export type LobbyCameraPreviewProps = {
7
+ /**
8
+ * Resembles the CSS style object-fit.
9
+ *
10
+ * @default 'cover'
11
+ */
12
+ objectFit?: 'contain' | 'cover';
13
+ /**
14
+ * Style applied to the preview view.
15
+ */
16
+ style?: ViewStyle;
17
+ };
18
+ /**
19
+ * The lobby runs before the call is joined. This component drives the native
20
+ * camera capturer directly via {@link RTCCameraPreviewView} which requires
21
+ * no track/peer connection factory to be created.
22
+ *
23
+ * It is driven by the *intended* camera state (optimistic): the lobby camera
24
+ * toggle only updates `optimisticStatus`; the real WebRTC track is acquired and
25
+ * published at join.
26
+ */
27
+ export declare const LobbyCameraPreview: ({ style, objectFit, }: LobbyCameraPreviewProps) => React.JSX.Element;
28
+ //# sourceMappingURL=LobbyCameraPreview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LobbyCameraPreview.d.ts","sourceRoot":"","sources":["../../../../../src/components/Call/Lobby/LobbyCameraPreview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AACnD,OAAO,EAAwB,SAAS,EAAE,MAAM,cAAc,CAAC;AAO/D;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC;;;;OAIG;IACH,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAChC;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,GAAI,uBAGhC,uBAAuB,sBAiCzB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * from './Lobby';
2
+ export * from './LobbyCameraPreview';
2
3
  export * from './JoinCallButton';
3
4
  export * from './LobbyFooter';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/Call/Lobby/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/Call/Lobby/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC"}
@@ -1,13 +1,15 @@
1
- import { LayoutChangeEvent } from 'react-native';
2
- import { Call, type VideoTrackType } from '@stream-io/video-client';
3
- export type TrackSubscriberHandle = {
4
- onLayoutUpdate: (event: LayoutChangeEvent) => void;
5
- };
1
+ import { Call, SfuModels, type VideoTrackType } from '@stream-io/video-client';
2
+ import { BehaviorSubject } from 'rxjs';
6
3
  type TrackSubscriberProps = {
7
4
  participantSessionId: string;
8
5
  call: Call;
9
6
  trackType: VideoTrackType;
10
7
  isVisible: boolean;
8
+ /**
9
+ * The dimensions of the view rendering the track, owned by the parent so that
10
+ * the last reported layout survives a remount of this component.
11
+ */
12
+ dimensions$: BehaviorSubject<SfuModels.VideoDimension | undefined>;
11
13
  };
12
14
  /**
13
15
  * This component is used to subscribe to the video + audio track of the participant in the following cases:
@@ -20,6 +22,9 @@ type TrackSubscriberProps = {
20
22
  * 1. When the participant stops publishing the video track
21
23
  * 2. When the participant becomes invisible
22
24
  */
23
- declare const TrackSubscriber: import("react").ForwardRefExoticComponent<TrackSubscriberProps & import("react").RefAttributes<TrackSubscriberHandle>>;
25
+ declare const TrackSubscriber: {
26
+ (props: TrackSubscriberProps): null;
27
+ displayName: string;
28
+ };
24
29
  export default TrackSubscriber;
25
30
  //# sourceMappingURL=TrackSubscriber.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TrackSubscriber.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,IAAI,EAOJ,KAAK,cAAc,EACpB,MAAM,yBAAyB,CAAC;AASjC,MAAM,MAAM,qBAAqB,GAAG;IAClC,cAAc,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACpD,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,cAAc,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;EAUE;AACF,QAAA,MAAM,eAAe,wHA0EpB,CAAC;AAIF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"TrackSubscriber.d.ts","sourceRoot":"","sources":["../../../../../../src/components/Participant/ParticipantView/VideoRenderer/TrackSubscriber.tsx"],"names":[],"mappings":"AACA,OAAO,EACL,IAAI,EAKJ,SAAS,EAET,KAAK,cAAc,EACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,eAAe,EAMhB,MAAM,MAAM,CAAC;AAEd,KAAK,oBAAoB,GAAG;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,cAAc,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,WAAW,EAAE,eAAe,CAAC,SAAS,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;CACpE,CAAC;AAEF;;;;;;;;;;EAUE;AACF,QAAA,MAAM,eAAe;YAAW,oBAAoB;;CAsDnD,CAAC;AAIF,eAAe,eAAe,CAAC"}