@videosdk.live/react-sdk 0.3.8 → 0.3.10

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.
package/dist/index.js CHANGED
@@ -103,7 +103,12 @@ var events = {
103
103
  'whiteboard-started': eventPrifix + "-whiteboard-started",
104
104
  'whiteboard-stopped': eventPrifix + "-whiteboard-stopped",
105
105
  'paused-all-streams': eventPrifix + "-paused-all-streams",
106
- 'resumed-all-streams': eventPrifix + "-resumed-all-streams"
106
+ 'resumed-all-streams': eventPrifix + "-resumed-all-streams",
107
+ 'media-relay-started': eventPrifix + "-media-relay-started",
108
+ 'media-relay-stopped': eventPrifix + "-media-relay-stopped",
109
+ 'media-relay-error': eventPrifix + "-media-relay-error",
110
+ 'media-relay-request-response': eventPrifix + "-media-relay-request-response",
111
+ 'media-relay-request-received': eventPrifix + "-media-relay-request-received"
107
112
  };
108
113
  var eventEmitter = new EventEmitter();
109
114
  eventEmitter.setMaxListeners(9999);
@@ -191,7 +196,17 @@ var useMeeting = function useMeeting(_temp) {
191
196
  _ref$onCharacterJoine = _ref.onCharacterJoined,
192
197
  onCharacterJoined = _ref$onCharacterJoine === void 0 ? function () {} : _ref$onCharacterJoine,
193
198
  _ref$onCharacterLeft = _ref.onCharacterLeft,
194
- onCharacterLeft = _ref$onCharacterLeft === void 0 ? function () {} : _ref$onCharacterLeft;
199
+ onCharacterLeft = _ref$onCharacterLeft === void 0 ? function () {} : _ref$onCharacterLeft,
200
+ _ref$onMediaRelayStar = _ref.onMediaRelayStarted,
201
+ onMediaRelayStarted = _ref$onMediaRelayStar === void 0 ? function () {} : _ref$onMediaRelayStar,
202
+ _ref$onMediaRelayStop = _ref.onMediaRelayStopped,
203
+ onMediaRelayStopped = _ref$onMediaRelayStop === void 0 ? function () {} : _ref$onMediaRelayStop,
204
+ _ref$onMediaRelayErro = _ref.onMediaRelayError,
205
+ onMediaRelayError = _ref$onMediaRelayErro === void 0 ? function () {} : _ref$onMediaRelayErro,
206
+ _ref$onMediaRelayRequ = _ref.onMediaRelayRequestResponse,
207
+ onMediaRelayRequestResponse = _ref$onMediaRelayRequ === void 0 ? function () {} : _ref$onMediaRelayRequ,
208
+ _ref$onMediaRelayRequ2 = _ref.onMediaRelayRequestReceived,
209
+ onMediaRelayRequestReceived = _ref$onMediaRelayRequ2 === void 0 ? function () {} : _ref$onMediaRelayRequ2;
195
210
  React.useEffect(function () {
196
211
  eventEmitter.on(events['participant-joined'], onParticipantJoined);
197
212
  eventEmitter.on(events['participant-left'], onParticipantLeft);
@@ -227,6 +242,11 @@ var useMeeting = function useMeeting(_temp) {
227
242
  eventEmitter.on(events['participant-mode-changed'], onParticipantModeChanged);
228
243
  eventEmitter.on(events['character-joined'], onCharacterJoined);
229
244
  eventEmitter.on(events['character-left'], onCharacterLeft);
245
+ eventEmitter.on(events['media-relay-started'], onMediaRelayStarted);
246
+ eventEmitter.on(events['media-relay-stopped'], onMediaRelayStopped);
247
+ eventEmitter.on(events['media-relay-error'], onMediaRelayError);
248
+ eventEmitter.on(events['media-relay-request-response'], onMediaRelayRequestResponse);
249
+ eventEmitter.on(events['media-relay-request-received'], onMediaRelayRequestReceived);
230
250
  return function () {
231
251
  eventEmitter.off(events['meeting-state-changed'], onMeetingStateChanged);
232
252
  eventEmitter.off(events['participant-joined'], onParticipantJoined);
@@ -262,6 +282,11 @@ var useMeeting = function useMeeting(_temp) {
262
282
  eventEmitter.off(events['participant-mode-changed'], onParticipantModeChanged);
263
283
  eventEmitter.off(events['character-joined'], onCharacterJoined);
264
284
  eventEmitter.off(events['character-left'], onCharacterLeft);
285
+ eventEmitter.off(events['media-relay-started'], onMediaRelayStarted);
286
+ eventEmitter.off(events['media-relay-stopped'], onMediaRelayStopped);
287
+ eventEmitter.off(events['media-relay-error'], onMediaRelayError);
288
+ eventEmitter.off(events['media-relay-request-response'], onMediaRelayRequestResponse);
289
+ eventEmitter.off(events['media-relay-request-received'], onMediaRelayRequestReceived);
265
290
  };
266
291
  }, []);
267
292
  return React.useContext(MeetingProviderContex);
@@ -335,7 +360,17 @@ var MeetingConsumer = function MeetingConsumer(_ref2) {
335
360
  _ref2$onCharacterJoin = _ref2.onCharacterJoined,
336
361
  onCharacterJoined = _ref2$onCharacterJoin === void 0 ? function () {} : _ref2$onCharacterJoin,
337
362
  _ref2$onCharacterLeft = _ref2.onCharacterLeft,
338
- onCharacterLeft = _ref2$onCharacterLeft === void 0 ? function () {} : _ref2$onCharacterLeft;
363
+ onCharacterLeft = _ref2$onCharacterLeft === void 0 ? function () {} : _ref2$onCharacterLeft,
364
+ _ref2$onMediaRelaySta = _ref2.onMediaRelayStarted,
365
+ onMediaRelayStarted = _ref2$onMediaRelaySta === void 0 ? function () {} : _ref2$onMediaRelaySta,
366
+ _ref2$onMediaRelaySto = _ref2.onMediaRelayStopped,
367
+ onMediaRelayStopped = _ref2$onMediaRelaySto === void 0 ? function () {} : _ref2$onMediaRelaySto,
368
+ _ref2$onMediaRelayErr = _ref2.onMediaRelayError,
369
+ onMediaRelayError = _ref2$onMediaRelayErr === void 0 ? function () {} : _ref2$onMediaRelayErr,
370
+ _ref2$onMediaRelayReq = _ref2.onMediaRelayRequestResponse,
371
+ onMediaRelayRequestResponse = _ref2$onMediaRelayReq === void 0 ? function () {} : _ref2$onMediaRelayReq,
372
+ _ref2$onMediaRelayReq2 = _ref2.onMediaRelayRequestReceived,
373
+ onMediaRelayRequestReceived = _ref2$onMediaRelayReq2 === void 0 ? function () {} : _ref2$onMediaRelayReq2;
339
374
  React.useEffect(function () {
340
375
  eventEmitter.on(events['meeting-state-changed'], onMeetingStateChanged);
341
376
  eventEmitter.on(events['participant-joined'], onParticipantJoined);
@@ -371,6 +406,11 @@ var MeetingConsumer = function MeetingConsumer(_ref2) {
371
406
  eventEmitter.on(events['participant-mode-changed'], onParticipantModeChanged);
372
407
  eventEmitter.on(events['character-joined'], onCharacterJoined);
373
408
  eventEmitter.on(events['character-left'], onCharacterLeft);
409
+ eventEmitter.on(events['media-relay-started'], onMediaRelayStarted);
410
+ eventEmitter.on(events['media-relay-stopped'], onMediaRelayStopped);
411
+ eventEmitter.on(events['media-relay-error'], onMediaRelayError);
412
+ eventEmitter.on(events['media-relay-request-response'], onMediaRelayRequestResponse);
413
+ eventEmitter.on(events['media-relay-request-received'], onMediaRelayRequestReceived);
374
414
  return function () {
375
415
  eventEmitter.off(events['meeting-state-changed'], onMeetingStateChanged);
376
416
  eventEmitter.off(events['participant-joined'], onParticipantJoined);
@@ -406,12 +446,17 @@ var MeetingConsumer = function MeetingConsumer(_ref2) {
406
446
  eventEmitter.off(events['participant-mode-changed'], onParticipantModeChanged);
407
447
  eventEmitter.off(events['character-joined'], onCharacterJoined);
408
448
  eventEmitter.off(events['character-left'], onCharacterLeft);
449
+ eventEmitter.off(events['media-relay-started'], onMediaRelayStarted);
450
+ eventEmitter.off(events['media-relay-stopped'], onMediaRelayStopped);
451
+ eventEmitter.off(events['media-relay-error'], onMediaRelayError);
452
+ eventEmitter.off(events['media-relay-request-response'], onMediaRelayRequestResponse);
453
+ eventEmitter.off(events['media-relay-request-received'], onMediaRelayRequestReceived);
409
454
  };
410
455
  }, []);
411
456
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(MeetingProviderContex.Consumer, null, children));
412
457
  };
413
458
 
414
- var version = "0.3.0";
459
+ var version = "0.3.10";
415
460
 
416
461
  var MeetingProvider = function MeetingProvider(_ref) {
417
462
  var children = _ref.children,
@@ -419,7 +464,8 @@ var MeetingProvider = function MeetingProvider(_ref) {
419
464
  token = _ref.token,
420
465
  joinWithoutUserInteraction = _ref.joinWithoutUserInteraction,
421
466
  _reinitialiseMeetingOnConfigChange = _ref.reinitialiseMeetingOnConfigChange,
422
- deviceInfo = _ref.deviceInfo;
467
+ deviceInfo = _ref.deviceInfo,
468
+ keyProvider = _ref.keyProvider;
423
469
  var _useState = React.useState(null),
424
470
  meeting = _useState[0],
425
471
  setMeeting = _useState[1];
@@ -495,6 +541,7 @@ var MeetingProvider = function MeetingProvider(_ref) {
495
541
  var localWebcamOnRef = React.useRef();
496
542
  var localScreenShareOnRef = React.useRef();
497
543
  var isRecordingRef = React.useRef();
544
+ var keyProviderRef = React.useRef(keyProvider);
498
545
  var configRef = React.useRef(config);
499
546
  var tokenRef = React.useRef(token);
500
547
  var joinedOnFirstRender = React.useRef(false);
@@ -841,6 +888,21 @@ var MeetingProvider = function MeetingProvider(_ref) {
841
888
  }
842
889
  eventEmitter.emit(events['participant-mode-changed'], data);
843
890
  };
891
+ var _handle_media_relay_started = function _handle_media_relay_started(data) {
892
+ eventEmitter.emit(events['media-relay-started'], data);
893
+ };
894
+ var _handle_media_relay_stopped = function _handle_media_relay_stopped(data) {
895
+ eventEmitter.emit(events['media-relay-stopped'], data);
896
+ };
897
+ var _handle_media_relay_error = function _handle_media_relay_error(data) {
898
+ eventEmitter.emit(events['media-relay-error'], data);
899
+ };
900
+ var _handle_media_relay_request_response = function _handle_media_relay_request_response(data) {
901
+ eventEmitter.emit(events['media-relay-request-response'], data);
902
+ };
903
+ var _handle_media_relay_request_received = function _handle_media_relay_request_received(data) {
904
+ eventEmitter.emit(events['media-relay-request-received'], data);
905
+ };
844
906
  var join = function join() {
845
907
  var meeting = jsSdk.VideoSDK && jsSdk.VideoSDK.initMeeting(configRef.current);
846
908
  setMeeting(meeting);
@@ -889,6 +951,11 @@ var MeetingProvider = function MeetingProvider(_ref) {
889
951
  meeting.on('whiteboard-stopped', _handle_whiteboard_stopped);
890
952
  meeting.on('character-joined', _handle_character_joined);
891
953
  meeting.on('character-left', _handle_character_left);
954
+ meeting.on('media-relay-started', _handle_media_relay_started);
955
+ meeting.on('media-relay-stopped', _handle_media_relay_stopped);
956
+ meeting.on('media-relay-error', _handle_media_relay_error);
957
+ meeting.on('media-relay-request-response', _handle_media_relay_request_response);
958
+ meeting.on('media-relay-request-received', _handle_media_relay_request_received);
892
959
  meeting.localParticipant.on('stream-enabled', _handle_localParticipant_stream_enabled);
893
960
  meeting.localParticipant.on('stream-disabled', _handle_localParticipant_stream_disabled);
894
961
  meeting.join();
@@ -1123,8 +1190,27 @@ var MeetingProvider = function MeetingProvider(_ref) {
1123
1190
  meeting.disableAdaptiveSubscription();
1124
1191
  }
1125
1192
  };
1126
- var seekVideo = function seekVideo(_ref8) {
1127
- var currentTime = _ref8.currentTime;
1193
+ var requestMediaRelay = function requestMediaRelay(_ref8) {
1194
+ var destinationMeetingId = _ref8.destinationMeetingId,
1195
+ token = _ref8.token,
1196
+ kinds = _ref8.kinds;
1197
+ var meeting = meetingRef.current;
1198
+ if (meeting) {
1199
+ meeting.requestMediaRelay({
1200
+ destinationMeetingId: destinationMeetingId,
1201
+ token: token,
1202
+ kinds: kinds
1203
+ });
1204
+ }
1205
+ };
1206
+ var stopMediaRelay = function stopMediaRelay(destinationMeetingId) {
1207
+ var meeting = meetingRef.current;
1208
+ if (meeting) {
1209
+ meeting.stopMediaRelay(destinationMeetingId);
1210
+ }
1211
+ };
1212
+ var seekVideo = function seekVideo(_ref9) {
1213
+ var currentTime = _ref9.currentTime;
1128
1214
  var meeting = meetingRef.current;
1129
1215
  if (meeting) {
1130
1216
  meeting.seekVideo({
@@ -1144,9 +1230,9 @@ var MeetingProvider = function MeetingProvider(_ref) {
1144
1230
  meeting.stopLivestream();
1145
1231
  }
1146
1232
  };
1147
- var connectTo = function connectTo(_ref9) {
1148
- var meetingId = _ref9.meetingId,
1149
- payload = _ref9.payload;
1233
+ var connectTo = function connectTo(_ref10) {
1234
+ var meetingId = _ref10.meetingId,
1235
+ payload = _ref10.payload;
1150
1236
  try {
1151
1237
  var _meeting3 = meetingRef.current;
1152
1238
  var _temp = function () {
@@ -1176,6 +1262,7 @@ var MeetingProvider = function MeetingProvider(_ref) {
1176
1262
  };
1177
1263
  var initSDK = function initSDK() {
1178
1264
  jsSdk.VideoSDK.config(tokenRef.current);
1265
+ keyProviderRef.current && jsSdk.VideoSDK.setKeyProvider(keyProviderRef.current);
1179
1266
  if (deviceInfo) {
1180
1267
  jsSdk.VideoSDK.analytics(deviceInfo);
1181
1268
  } else {
@@ -1262,7 +1349,9 @@ var MeetingProvider = function MeetingProvider(_ref) {
1262
1349
  startHls: startHls,
1263
1350
  stopHls: stopHls,
1264
1351
  enableAdaptiveSubscription: enableAdaptiveSubscription,
1265
- disableAdaptiveSubscription: disableAdaptiveSubscription
1352
+ disableAdaptiveSubscription: disableAdaptiveSubscription,
1353
+ requestMediaRelay: requestMediaRelay,
1354
+ stopMediaRelay: stopMediaRelay
1266
1355
  }
1267
1356
  }, children);
1268
1357
  };
@@ -1280,7 +1369,15 @@ var useParticipant = function useParticipant(participantId, _temp) {
1280
1369
  _ref$onStreamPaused = _ref.onStreamPaused,
1281
1370
  onStreamPaused = _ref$onStreamPaused === void 0 ? function () {} : _ref$onStreamPaused,
1282
1371
  _ref$onStreamResumed = _ref.onStreamResumed,
1283
- onStreamResumed = _ref$onStreamResumed === void 0 ? function () {} : _ref$onStreamResumed;
1372
+ onStreamResumed = _ref$onStreamResumed === void 0 ? function () {} : _ref$onStreamResumed,
1373
+ _ref$onProducerAdded = _ref.onProducerAdded,
1374
+ onProducerAdded = _ref$onProducerAdded === void 0 ? function () {} : _ref$onProducerAdded,
1375
+ _ref$onProducerRemove = _ref.onProducerRemoved,
1376
+ onProducerRemoved = _ref$onProducerRemove === void 0 ? function () {} : _ref$onProducerRemove,
1377
+ _ref$onConsumerAdded = _ref.onConsumerAdded,
1378
+ onConsumerAdded = _ref$onConsumerAdded === void 0 ? function () {} : _ref$onConsumerAdded,
1379
+ _ref$onConsumerRemove = _ref.onConsumerRemoved,
1380
+ onConsumerRemoved = _ref$onConsumerRemove === void 0 ? function () {} : _ref$onConsumerRemove;
1284
1381
  var _useState = React.useState(null),
1285
1382
  webcamStream = _useState[0],
1286
1383
  setwebcamStream = _useState[1];
@@ -1417,6 +1514,9 @@ var useParticipant = function useParticipant(participantId, _temp) {
1417
1514
  var setViewPort = function setViewPort(width, height) {
1418
1515
  participant === null || participant === void 0 ? void 0 : participant.setViewPort(width, height);
1419
1516
  };
1517
+ var setScreenShareQuality = function setScreenShareQuality(quality) {
1518
+ participant === null || participant === void 0 ? void 0 : participant.setScreenShareQuality(quality);
1519
+ };
1420
1520
  var enableMic = function enableMic() {
1421
1521
  participant === null || participant === void 0 ? void 0 : participant.enableMic();
1422
1522
  };
@@ -1471,9 +1571,6 @@ var useParticipant = function useParticipant(participantId, _temp) {
1471
1571
  var stopConsumingMicStreams = function stopConsumingMicStreams() {
1472
1572
  participant === null || participant === void 0 ? void 0 : participant.stopConsumingMicStreams();
1473
1573
  };
1474
- var switchTo = function switchTo(data) {
1475
- return Promise.resolve(participant === null || participant === void 0 ? void 0 : participant.switchTo(data)).then(function () {});
1476
- };
1477
1574
  React.useEffect(function () {
1478
1575
  var streams = participant === null || participant === void 0 ? void 0 : participant.streams;
1479
1576
  if (streams) {
@@ -1497,6 +1594,18 @@ var useParticipant = function useParticipant(participantId, _temp) {
1497
1594
  });
1498
1595
  participant === null || participant === void 0 ? void 0 : participant.on('media-status-changed', _handleMediaStatusChanged);
1499
1596
  participant === null || participant === void 0 ? void 0 : participant.on('video-quality-changed', _handleVideoQualityChanged);
1597
+ participant === null || participant === void 0 ? void 0 : participant.on('producer-added', function (data) {
1598
+ onProducerAdded(data);
1599
+ });
1600
+ participant === null || participant === void 0 ? void 0 : participant.on('producer-removed', function (data) {
1601
+ onProducerRemoved(data);
1602
+ });
1603
+ participant === null || participant === void 0 ? void 0 : participant.on('consumer-added', function (data) {
1604
+ onConsumerAdded(data);
1605
+ });
1606
+ participant === null || participant === void 0 ? void 0 : participant.on('consumer-removed', function (data) {
1607
+ onConsumerRemoved(data);
1608
+ });
1500
1609
  eventEmitter.on(events['participant-mode-changed'], _handleParticipantModeChanged);
1501
1610
  return function () {
1502
1611
  participant === null || participant === void 0 ? void 0 : participant.off('stream-enabled', _handleStreamEnabled);
@@ -1527,6 +1636,7 @@ var useParticipant = function useParticipant(participantId, _temp) {
1527
1636
  stopConsumingMicStreams: stopConsumingMicStreams,
1528
1637
  stopConsumingWebcamStreams: stopConsumingWebcamStreams,
1529
1638
  setQuality: setQuality,
1639
+ setScreenShareQuality: setScreenShareQuality,
1530
1640
  setViewPort: setViewPort,
1531
1641
  enableMic: enableMic,
1532
1642
  disableMic: disableMic,
@@ -1536,7 +1646,6 @@ var useParticipant = function useParticipant(participantId, _temp) {
1536
1646
  pin: pin,
1537
1647
  unpin: unpin,
1538
1648
  remove: remove,
1539
- switchTo: switchTo,
1540
1649
  getAudioStats: getAudioStats,
1541
1650
  getVideoStats: getVideoStats,
1542
1651
  getShareStats: getShareStats,
@@ -1825,6 +1934,8 @@ var useCharacter = function useCharacter(_ref, _temp) {
1825
1934
  onUserMessage = _ref2$onUserMessage === void 0 ? function () {} : _ref2$onUserMessage,
1826
1935
  _ref2$onData = _ref2.onData,
1827
1936
  onData = _ref2$onData === void 0 ? function () {} : _ref2$onData,
1937
+ _ref2$onError = _ref2.onError,
1938
+ onError = _ref2$onError === void 0 ? function () {} : _ref2$onError,
1828
1939
  _ref2$onCharacterJoin = _ref2.onCharacterJoined,
1829
1940
  onCharacterJoined = _ref2$onCharacterJoin === void 0 ? function () {} : _ref2$onCharacterJoin,
1830
1941
  _ref2$onCharacterLeft = _ref2.onCharacterLeft,
@@ -1916,6 +2027,9 @@ var useCharacter = function useCharacter(_ref, _temp) {
1916
2027
  var _handleOnData = function _handleOnData(topic, d) {
1917
2028
  onData(topic, d);
1918
2029
  };
2030
+ var _handleOnError = function _handleOnError(d) {
2031
+ onError(d);
2032
+ };
1919
2033
  var _handleCharacterJoined = function _handleCharacterJoined() {
1920
2034
  onCharacterJoined();
1921
2035
  };
@@ -1996,6 +2110,7 @@ var useCharacter = function useCharacter(_ref, _temp) {
1996
2110
  character === null || character === void 0 ? void 0 : character.on('character-message', _handleCharacterMessage);
1997
2111
  character === null || character === void 0 ? void 0 : character.on('user-message', _handleUserMessage);
1998
2112
  character === null || character === void 0 ? void 0 : character.on('data', _handleOnData);
2113
+ character === null || character === void 0 ? void 0 : character.on('error', _handleOnError);
1999
2114
  character === null || character === void 0 ? void 0 : character.on('stream-enabled', _handleStreamEnabled);
2000
2115
  character === null || character === void 0 ? void 0 : character.on('stream-disabled', _handleStreamDisabled);
2001
2116
  character === null || character === void 0 ? void 0 : character.on('media-status-changed', _handleMediaStatusChanged);
@@ -2007,6 +2122,7 @@ var useCharacter = function useCharacter(_ref, _temp) {
2007
2122
  character === null || character === void 0 ? void 0 : character.off('character-message', _handleCharacterMessage);
2008
2123
  character === null || character === void 0 ? void 0 : character.off('user-message', _handleUserMessage);
2009
2124
  character === null || character === void 0 ? void 0 : character.off('data', _handleOnData);
2125
+ character === null || character === void 0 ? void 0 : character.off('error', _handleOnError);
2010
2126
  character === null || character === void 0 ? void 0 : character.off('stream-enabled', _handleStreamEnabled);
2011
2127
  character === null || character === void 0 ? void 0 : character.off('stream-disabled', _handleStreamDisabled);
2012
2128
  character === null || character === void 0 ? void 0 : character.off('media-status-changed', _handleMediaStatusChanged);
@@ -2150,12 +2266,15 @@ var createScreenShareVideoTrack = function createScreenShareVideoTrack(_ref2) {
2150
2266
  _ref2$optimizationMod = _ref2.optimizationMode,
2151
2267
  optimizationMode = _ref2$optimizationMod === void 0 ? undefined : _ref2$optimizationMod,
2152
2268
  _ref2$withAudio = _ref2.withAudio,
2153
- withAudio = _ref2$withAudio === void 0 ? 'enable' : _ref2$withAudio;
2269
+ withAudio = _ref2$withAudio === void 0 ? 'enable' : _ref2$withAudio,
2270
+ _ref2$multiStream = _ref2.multiStream,
2271
+ multiStream = _ref2$multiStream === void 0 ? false : _ref2$multiStream;
2154
2272
  try {
2155
2273
  return Promise.resolve(jsSdk.VideoSDK.createScreenShareVideoTrack({
2156
2274
  encoderConfig: encoderConfig,
2157
2275
  optimizationMode: optimizationMode,
2158
- withAudio: withAudio
2276
+ withAudio: withAudio,
2277
+ multiStream: multiStream
2159
2278
  }));
2160
2279
  } catch (e) {
2161
2280
  return Promise.reject(e);
@@ -2206,27 +2325,28 @@ var withAdaptiveObservers = function withAdaptiveObservers(VideoPlayerComponent)
2206
2325
  var resizeObserverRef = React.useRef(null);
2207
2326
  var _useParticipant = useParticipant(participantId),
2208
2327
  participant = _useParticipant.participant;
2328
+ var _useMeeting = useMeeting(),
2329
+ localParticipant = _useMeeting.localParticipant;
2209
2330
  React.useEffect(function () {
2210
- if (type === 'share' || !ref.current || !participant) return;
2331
+ if (type === 'share' || !ref.current || !participant || participantId === localParticipant.id) return;
2211
2332
  var element = ref.current;
2212
2333
  if (!element || !participant) return;
2213
2334
  if (observerRef.current) observerRef.current.disconnect();
2214
2335
  var handleIntersectionChange = debounce(function (entries) {
2215
- for (var _iterator = _createForOfIteratorHelperLoose(entries), _step; !(_step = _iterator()).done;) {
2216
- var entry = _step.value;
2217
- if (entry.intersectionRatio > 0) {
2218
- for (var _iterator2 = _createForOfIteratorHelperLoose(participant.streams.values()), _step2; !(_step2 = _iterator2()).done;) {
2219
- var stream = _step2.value;
2220
- if (stream.kind === 'video' && stream.pausedBy !== 'SUB_MANAGER') {
2221
- stream.resume();
2222
- }
2336
+ if (!Array.isArray(entries) || entries.length === 0) return;
2337
+ var entry = entries[entries.length - 1];
2338
+ if (entry.intersectionRatio > 0) {
2339
+ for (var _iterator = _createForOfIteratorHelperLoose(participant.streams.values()), _step; !(_step = _iterator()).done;) {
2340
+ var stream = _step.value;
2341
+ if (stream.kind === 'video' && stream.pausedBy !== 'SUB_MANAGER') {
2342
+ stream.resume();
2223
2343
  }
2224
- } else {
2225
- for (var _iterator3 = _createForOfIteratorHelperLoose(participant.streams.values()), _step3; !(_step3 = _iterator3()).done;) {
2226
- var _stream = _step3.value;
2227
- if (_stream.kind === 'video') {
2228
- _stream.pause();
2229
- }
2344
+ }
2345
+ } else {
2346
+ for (var _iterator2 = _createForOfIteratorHelperLoose(participant.streams.values()), _step2; !(_step2 = _iterator2()).done;) {
2347
+ var _stream = _step2.value;
2348
+ if (_stream.kind === 'video') {
2349
+ _stream.pause();
2230
2350
  }
2231
2351
  }
2232
2352
  }
@@ -2287,6 +2407,9 @@ var VideoSDKPlayer = React.forwardRef(function (_ref5, ref) {
2287
2407
  var mediaStream = new MediaStream();
2288
2408
  mediaStream.addTrack(stream.track);
2289
2409
  videoRef.current.srcObject = mediaStream;
2410
+ videoRef.current.setAttribute('playsinline', '');
2411
+ videoRef.current.setAttribute('x5-playsinline', '');
2412
+ videoRef.current.setAttribute('webkit-playsinline', '');
2290
2413
  videoRef.current.play()["catch"](function (error) {
2291
2414
  return console.error('videoRef.current.play() failed', error);
2292
2415
  });
@@ -2369,6 +2492,12 @@ Object.defineProperty(exports, 'DeviceInfo', {
2369
2492
  return jsSdk.DeviceInfo;
2370
2493
  }
2371
2494
  });
2495
+ Object.defineProperty(exports, 'ExternalE2EEKeyProvider', {
2496
+ enumerable: true,
2497
+ get: function () {
2498
+ return jsSdk.ExternalE2EEKeyProvider;
2499
+ }
2500
+ });
2372
2501
  Object.defineProperty(exports, 'MicrophoneDeviceInfo', {
2373
2502
  enumerable: true,
2374
2503
  get: function () {