@stream-io/video-react-native-sdk 1.19.0 → 1.20.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 (67) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/android/src/main/java/com/streamvideo/reactnative/StreamVideoReactNativeModule.kt +10 -0
  3. package/android/src/main/java/com/streamvideo/reactnative/util/PiPHelper.kt +18 -0
  4. package/dist/commonjs/components/Call/CallContent/CallContent.js +20 -0
  5. package/dist/commonjs/components/Call/CallContent/CallContent.js.map +1 -1
  6. package/dist/commonjs/components/Call/CallLayout/CallParticipantsGrid.js +10 -1
  7. package/dist/commonjs/components/Call/CallLayout/CallParticipantsGrid.js.map +1 -1
  8. package/dist/commonjs/components/Participant/ParticipantView/VideoRenderer.js +3 -2
  9. package/dist/commonjs/components/Participant/ParticipantView/VideoRenderer.js.map +1 -1
  10. package/dist/commonjs/contexts/BackgroundFilters.js +4 -0
  11. package/dist/commonjs/contexts/BackgroundFilters.js.map +1 -1
  12. package/dist/commonjs/hooks/useAndroidKeepCallAliveEffect.js +31 -12
  13. package/dist/commonjs/hooks/useAndroidKeepCallAliveEffect.js.map +1 -1
  14. package/dist/commonjs/hooks/useTrackDimensions.js +31 -35
  15. package/dist/commonjs/hooks/useTrackDimensions.js.map +1 -1
  16. package/dist/commonjs/providers/StreamCall/AppStateListener.js +3 -2
  17. package/dist/commonjs/providers/StreamCall/AppStateListener.js.map +1 -1
  18. package/dist/commonjs/providers/StreamCall/DeviceStats.js +19 -8
  19. package/dist/commonjs/providers/StreamCall/DeviceStats.js.map +1 -1
  20. package/dist/commonjs/utils/StreamVideoRN/index.js +22 -6
  21. package/dist/commonjs/utils/StreamVideoRN/index.js.map +1 -1
  22. package/dist/commonjs/version.js +1 -1
  23. package/dist/module/components/Call/CallContent/CallContent.js +22 -2
  24. package/dist/module/components/Call/CallContent/CallContent.js.map +1 -1
  25. package/dist/module/components/Call/CallLayout/CallParticipantsGrid.js +10 -1
  26. package/dist/module/components/Call/CallLayout/CallParticipantsGrid.js.map +1 -1
  27. package/dist/module/components/Participant/ParticipantView/VideoRenderer.js +3 -2
  28. package/dist/module/components/Participant/ParticipantView/VideoRenderer.js.map +1 -1
  29. package/dist/module/contexts/BackgroundFilters.js +4 -0
  30. package/dist/module/contexts/BackgroundFilters.js.map +1 -1
  31. package/dist/module/hooks/useAndroidKeepCallAliveEffect.js +31 -12
  32. package/dist/module/hooks/useAndroidKeepCallAliveEffect.js.map +1 -1
  33. package/dist/module/hooks/useTrackDimensions.js +30 -35
  34. package/dist/module/hooks/useTrackDimensions.js.map +1 -1
  35. package/dist/module/providers/StreamCall/AppStateListener.js +3 -2
  36. package/dist/module/providers/StreamCall/AppStateListener.js.map +1 -1
  37. package/dist/module/providers/StreamCall/DeviceStats.js +20 -9
  38. package/dist/module/providers/StreamCall/DeviceStats.js.map +1 -1
  39. package/dist/module/utils/StreamVideoRN/index.js +23 -6
  40. package/dist/module/utils/StreamVideoRN/index.js.map +1 -1
  41. package/dist/module/version.js +1 -1
  42. package/dist/typescript/components/Call/CallContent/CallContent.d.ts.map +1 -1
  43. package/dist/typescript/components/Call/CallLayout/CallParticipantsGrid.d.ts.map +1 -1
  44. package/dist/typescript/components/Participant/ParticipantView/VideoRenderer.d.ts.map +1 -1
  45. package/dist/typescript/contexts/BackgroundFilters.d.ts.map +1 -1
  46. package/dist/typescript/hooks/useAndroidKeepCallAliveEffect.d.ts.map +1 -1
  47. package/dist/typescript/hooks/useTrackDimensions.d.ts +2 -2
  48. package/dist/typescript/hooks/useTrackDimensions.d.ts.map +1 -1
  49. package/dist/typescript/providers/StreamCall/AppStateListener.d.ts.map +1 -1
  50. package/dist/typescript/providers/StreamCall/DeviceStats.d.ts.map +1 -1
  51. package/dist/typescript/utils/StreamVideoRN/index.d.ts +6 -2
  52. package/dist/typescript/utils/StreamVideoRN/index.d.ts.map +1 -1
  53. package/dist/typescript/utils/StreamVideoRN/types.d.ts +6 -1
  54. package/dist/typescript/utils/StreamVideoRN/types.d.ts.map +1 -1
  55. package/dist/typescript/version.d.ts +1 -1
  56. package/package.json +7 -7
  57. package/src/components/Call/CallContent/CallContent.tsx +39 -3
  58. package/src/components/Call/CallLayout/CallParticipantsGrid.tsx +12 -5
  59. package/src/components/Participant/ParticipantView/VideoRenderer.tsx +7 -2
  60. package/src/contexts/BackgroundFilters.tsx +4 -0
  61. package/src/hooks/useAndroidKeepCallAliveEffect.ts +30 -10
  62. package/src/hooks/useTrackDimensions.ts +51 -34
  63. package/src/providers/StreamCall/AppStateListener.tsx +3 -5
  64. package/src/providers/StreamCall/DeviceStats.tsx +20 -9
  65. package/src/utils/StreamVideoRN/index.ts +41 -6
  66. package/src/utils/StreamVideoRN/types.ts +6 -0
  67. package/src/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_videoReactBindings","require","_react","useTrackDimensions","participant","trackDimensions","setTrackDimensions","useState","width","height","call","useCall","sessionId","useEffect","startReportingStatsFor","stopReportingStatsFor","sub","state","callStatsReport$","subscribe","report","reportForTracks","participants","trackStats","flatMap","r","streams","filter","track","kind","stat","frameWidth","frameHeight","prev","unsubscribe"],"sourceRoot":"../../../src","sources":["hooks/useTrackDimensions.ts"],"mappings":";;;;;;AACA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,SAASE,kBAAkBA,CAACC,WAAmC,EAAE;EACtE,MAAM,CAACC,eAAe,EAAEC,kBAAkB,CAAC,GAAG,IAAAC,eAAQ,EAAC;IACrDC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE;EACV,CAAC,CAAC;EACF,MAAMC,IAAI,GAAG,IAAAC,2BAAO,EAAC,CAAC;EACtB,MAAM;IAAEC;EAAU,CAAC,GAAGR,WAAW;EAEjC,IAAAS,gBAAS,EAAC,MAAM;IACd,IAAI,CAACH,IAAI,EAAE;IACXA,IAAI,CAACI,sBAAsB,CAACF,SAAS,CAAC;IACtC,OAAO,MAAM;MACXF,IAAI,CAACK,qBAAqB,CAACH,SAAS,CAAC;IACvC,CAAC;EACH,CAAC,EAAE,CAACF,IAAI,EAAEE,SAAS,CAAC,CAAC;;EAErB;EACA;EACA;EACA,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAI,CAACH,IAAI,EAAE;IACX,MAAMM,GAAG,GAAGN,IAAI,CAACO,KAAK,CAACC,gBAAgB,CAACC,SAAS,CAAEC,MAAM,IAAK;MAC5D,IAAI,CAACA,MAAM,EAAE;MACb,MAAMC,eAAe,GAAGD,MAAM,CAACE,YAAY,CAACV,SAAS,CAAC;MACtD,MAAMW,UAAU,GAAGF,eAAe,EAC9BG,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAACC,OAAO,CAAC,CAC1BC,MAAM,CAAEC,KAAK,IAAKA,KAAK,CAACC,IAAI,KAAK,OAAO,CAAC;MAC5C,IAAI,CAACN,UAAU,EAAE;MACjB,MAAMO,IAAI,GAAGP,UAAU,CAAC,CAAC,CAAC;MAC1B,IAAIO,IAAI,EAAE;QACR,MAAM;UAAEC,UAAU,GAAG,CAAC;UAAEC,WAAW,GAAG;QAAE,CAAC,GAAGF,IAAI;QAChDxB,kBAAkB,CAAE2B,IAAI,IAAK;UAC3B,IAAIA,IAAI,CAACzB,KAAK,KAAKuB,UAAU,IAAIE,IAAI,CAACxB,MAAM,KAAKuB,WAAW,EAAE;YAC5D,OAAO;cAAExB,KAAK,EAAEuB,UAAU;cAAEtB,MAAM,EAAEuB;YAAY,CAAC;UACnD;UACA,OAAOC,IAAI;QACb,CAAC,CAAC;MACJ;IACF,CAAC,CAAC;IACF,OAAO,MAAMjB,GAAG,CAACkB,WAAW,CAAC,CAAC;EAChC,CAAC,EAAE,CAACxB,IAAI,EAAEE,SAAS,CAAC,CAAC;EAErB,OAAOP,eAAe;AACxB","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","webRTCEventEmitter","NativeEventEmitter","NativeModules","WebRTCModule","useTrackDimensions","participant","trackType","videoStream","screenShareStream","stream","track","getVideoTracks","trackId","id","trackDimensions","setTrackDimensions","useState","settings","getSettings","width","height","useEffect","handleVideoTrackDimensionChanged","eventData","prev","subscription","addListener","remove"],"sourceRoot":"../../../src","sources":["hooks/useTrackDimensions.ts"],"mappings":";;;;;;AAIA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,MAAME,kBAAkB,GAAG,IAAIC,+BAAkB,CAACC,0BAAa,CAACC,YAAY,CAAC;;AAE7E;AACA;AACA;AACA;AACA;AACO,SAASC,kBAAkBA,CAChCC,WAAmC,EACnCC,SAAyB,EACzB;EACA,MAAM;IAAEC,WAAW;IAAEC;EAAkB,CAAC,GAAGH,WAAW;EACtD,MAAMI,MAAM,GACVH,SAAS,KAAK,kBAAkB,GAAGE,iBAAiB,GAAGD,WAAW;EACpE,MAAM,CAACG,KAAK,CAAC,GAAGD,MAAM,EAAEE,cAAc,CAAC,CAAC,IAAI,EAAE;EAC9C,MAAMC,OAAO,GAAGF,KAAK,EAAEG,EAAE;EAEzB,MAAM,CAACC,eAAe,EAAEC,kBAAkB,CAAC,GAAG,IAAAC,eAAQ,EAAC,MAAM;IAC3D,MAAMC,QAAQ,GAAGP,KAAK,EAAEQ,WAAW,CAAC,CAAC;IACrC,MAAMC,KAAK,GAAGF,QAAQ,EAAEE,KAAK,IAAI,CAAC;IAClC,MAAMC,MAAM,GAAGH,QAAQ,EAAEG,MAAM,IAAI,CAAC;IACpC,OAAO;MACLD,KAAK;MACLC;IACF,CAAC;EACH,CAAC,CAAC;;EAEF;EACA,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAI,CAACT,OAAO,IAAI,CAACV,0BAAa,CAACC,YAAY,EAAE;IAE7C,MAAMmB,gCAAgC,GAAIC,SAKzC,IAAK;MACJ;MACA,IAAIA,SAAS,CAACX,OAAO,KAAKA,OAAO,EAAE;QACjCG,kBAAkB,CAAES,IAAI,IAAK;UAC3B,IACEA,IAAI,CAACL,KAAK,KAAKI,SAAS,CAACJ,KAAK,IAC9BK,IAAI,CAACJ,MAAM,KAAKG,SAAS,CAACH,MAAM,EAChC;YACA,OAAO;cAAED,KAAK,EAAEI,SAAS,CAACJ,KAAK;cAAEC,MAAM,EAAEG,SAAS,CAACH;YAAO,CAAC;UAC7D;UACA,OAAOI,IAAI;QACb,CAAC,CAAC;MACJ;IACF,CAAC;IAED,MAAMC,YAAY,GAAGzB,kBAAkB,CAAC0B,WAAW,CACjD,4BAA4B,EAC5BJ,gCACF,CAAC;IAED,OAAO,MAAM;MACXG,YAAY,CAACE,MAAM,CAAC,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,CAACf,OAAO,EAAEF,KAAK,CAAC,CAAC;EAEpB,OAAOI,eAAe;AACxB","ignoreList":[]}
@@ -50,8 +50,9 @@ const AppStateListener = () => {
50
50
  const subscription = _reactNative.AppState.addEventListener('change', nextAppState => {
51
51
  const logger = (0, _videoClient.getLogger)(['AppStateListener']);
52
52
  if (appState.current.match(/background/) && nextAppState === 'active') {
53
- if (call?.camera?.state.status === 'enabled' && _reactNative.Platform.OS === 'android') {
54
- // when device is locked and resumed, the status isnt made disabled but stays enabled
53
+ if (call?.camera?.state.status === 'enabled') {
54
+ // Android: when device is locked and resumed, the status isnt made disabled but stays enabled
55
+ // iOS PiP: when local track was replaced by remote track, the local track shown is blank
55
56
  // as a workaround we stop the track and enable again if its already in enabled state
56
57
  call?.camera?.disable(true).then(() => {
57
58
  call?.camera?.enable();
@@ -1 +1 @@
1
- {"version":3,"names":["_videoReactBindings","require","_react","_reactNative","_shouldDisableIOSLocalVideoOnBackground","_rxSubjects","_videoClient","PIP_CHANGE_EVENT","isAndroid8OrAbove","Platform","OS","Version","AppStateListener","call","useCall","appState","useRef","AppState","currentState","cameraDisabledByAppState","useEffect","disablePiP","RxUtils","getCurrentValue","disablePiPMode$","logger","getLogger","initialPipMode","isInPiPModeAndroid$","next","NativeModules","StreamVideoReactNative","isInPiPMode","then","isInPiP","eventEmitter","NativeEventEmitter","subscriptionPiPChange","addListener","remove","subscription","addEventListener","nextAppState","current","match","camera","state","status","disable","enable","resume","disableCameraIfNeeded","shouldDisableIOSLocalVideoOnBackgroundRef","exports"],"sourceRoot":"../../../../src","sources":["providers/StreamCall/AppStateListener.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_videoReactBindings","require","_react","_reactNative","_shouldDisableIOSLocalVideoOnBackground","_rxSubjects","_videoClient","PIP_CHANGE_EVENT","isAndroid8OrAbove","Platform","OS","Version","AppStateListener","call","useCall","appState","useRef","AppState","currentState","cameraDisabledByAppState","useEffect","disablePiP","RxUtils","getCurrentValue","disablePiPMode$","logger","getLogger","initialPipMode","isInPiPModeAndroid$","next","NativeModules","StreamVideoReactNative","isInPiPMode","then","isInPiP","eventEmitter","NativeEventEmitter","subscriptionPiPChange","addListener","remove","subscription","addEventListener","nextAppState","current","match","camera","state","status","disable","enable","resume","disableCameraIfNeeded","shouldDisableIOSLocalVideoOnBackgroundRef","exports"],"sourceRoot":"../../../../src","sources":["providers/StreamCall/AppStateListener.tsx"],"mappings":"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","ignoreList":[]}
@@ -18,14 +18,25 @@ const DeviceStats = () => {
18
18
  useCallCallingState
19
19
  } = (0, _videoReactBindings.useCallStateHooks)();
20
20
  const callingState = useCallCallingState();
21
+ const call = (0, _videoReactBindings.useCall)();
21
22
  (0, _react.useEffect)(() => {
22
- if (callingState !== _videoClient.CallingState.JOINED) {
23
- return;
24
- }
25
- _reactNative.NativeModules?.StreamVideoReactNative.isLowPowerModeEnabled().then(initialPowerMode => (0, _videoClient.setPowerState)(initialPowerMode));
26
- const powerModeSubscription = eventEmitter?.addListener('isLowPowerModeEnabled', isLowPowerMode => (0, _videoClient.setPowerState)(isLowPowerMode));
27
- _reactNative.NativeModules?.StreamVideoReactNative.currentThermalState().then(initialState => (0, _videoClient.setThermalState)(initialState));
28
- const thermalStateSubscription = eventEmitter?.addListener('thermalStateDidChange', thermalState => (0, _videoClient.setThermalState)(thermalState));
23
+ if (!call || callingState !== _videoClient.CallingState.JOINED) return;
24
+ _reactNative.NativeModules?.StreamVideoReactNative.isLowPowerModeEnabled().then(initialPowerMode => {
25
+ (0, _videoClient.setPowerState)(initialPowerMode);
26
+ call.tracer.trace('device.lowPowerMode', initialPowerMode);
27
+ });
28
+ const powerModeSubscription = eventEmitter?.addListener('isLowPowerModeEnabled', isLowPowerMode => {
29
+ (0, _videoClient.setPowerState)(isLowPowerMode);
30
+ call.tracer.trace('device.lowPowerMode', isLowPowerMode);
31
+ });
32
+ _reactNative.NativeModules?.StreamVideoReactNative.currentThermalState().then(initialState => {
33
+ (0, _videoClient.setThermalState)(initialState);
34
+ call.tracer.trace('device.thermalState', initialState);
35
+ });
36
+ const thermalStateSubscription = eventEmitter?.addListener('thermalStateDidChange', thermalState => {
37
+ (0, _videoClient.setThermalState)(thermalState);
38
+ call.tracer.trace('device.thermalStateChanged', thermalState);
39
+ });
29
40
 
30
41
  // on android we need to explicitly start and stop the thermal status updates
31
42
  if (_reactNative.Platform.OS === 'android') {
@@ -38,7 +49,7 @@ const DeviceStats = () => {
38
49
  _reactNative.NativeModules?.StreamVideoReactNative.stopThermalStatusUpdates();
39
50
  }
40
51
  };
41
- }, [callingState]);
52
+ }, [call, callingState]);
42
53
  return null;
43
54
  };
44
55
  exports.DeviceStats = DeviceStats;
@@ -1 +1 @@
1
- {"version":3,"names":["_videoReactBindings","require","_react","_videoClient","_reactNative","eventEmitter","NativeModules","StreamVideoReactNative","NativeEventEmitter","undefined","DeviceStats","useCallCallingState","useCallStateHooks","callingState","useEffect","CallingState","JOINED","isLowPowerModeEnabled","then","initialPowerMode","setPowerState","powerModeSubscription","addListener","isLowPowerMode","currentThermalState","initialState","setThermalState","thermalStateSubscription","thermalState","Platform","OS","startThermalStatusUpdates","remove","stopThermalStatusUpdates","exports"],"sourceRoot":"../../../../src","sources":["providers/StreamCall/DeviceStats.tsx"],"mappings":";;;;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAKA,IAAAG,YAAA,GAAAH,OAAA;AAEA,MAAMI,YAAY,GAAGC,0BAAa,EAAEC,sBAAsB,GACtD,IAAIC,+BAAkB,CAACF,0BAAa,EAAEC,sBAAsB,CAAC,GAC7DE,SAAS;;AAEb;AACA;AACA;AACO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC/B,MAAM;IAAEC;EAAoB,CAAC,GAAG,IAAAC,qCAAiB,EAAC,CAAC;EACnD,MAAMC,YAAY,GAAGF,mBAAmB,CAAC,CAAC;EAE1C,IAAAG,gBAAS,EAAC,MAAM;IACd,IAAID,YAAY,KAAKE,yBAAY,CAACC,MAAM,EAAE;MACxC;IACF;IAEAV,0BAAa,EAAEC,sBAAsB,CAACU,qBAAqB,CAAC,CAAC,CAACC,IAAI,CAC/DC,gBAAyB,IAAK,IAAAC,0BAAa,EAACD,gBAAgB,CAC/D,CAAC;IAED,MAAME,qBAAqB,GAAGhB,YAAY,EAAEiB,WAAW,CACrD,uBAAuB,EACtBC,cAAuB,IAAK,IAAAH,0BAAa,EAACG,cAAc,CAC3D,CAAC;IAEDjB,0BAAa,EAAEC,sBAAsB,CAACiB,mBAAmB,CAAC,CAAC,CAACN,IAAI,CAC7DO,YAAoB,IAAK,IAAAC,4BAAe,EAACD,YAAY,CACxD,CAAC;IAED,MAAME,wBAAwB,GAAGtB,YAAY,EAAEiB,WAAW,CACxD,uBAAuB,EACtBM,YAAoB,IAAK,IAAAF,4BAAe,EAACE,YAAY,CACxD,CAAC;;IAED;IACA,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;MAC7BxB,0BAAa,EAAEC,sBAAsB,CAACwB,yBAAyB,CAAC,CAAC;IACnE;IAEA,OAAO,MAAM;MACXV,qBAAqB,EAAEW,MAAM,CAAC,CAAC;MAC/BL,wBAAwB,EAAEK,MAAM,CAAC,CAAC;MAClC,IAAIH,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;QAC7BxB,0BAAa,EAAEC,sBAAsB,CAAC0B,wBAAwB,CAAC,CAAC;MAClE;IACF,CAAC;EACH,CAAC,EAAE,CAACpB,YAAY,CAAC,CAAC;EAElB,OAAO,IAAI;AACb,CAAC;AAACqB,OAAA,CAAAxB,WAAA,GAAAA,WAAA","ignoreList":[]}
1
+ {"version":3,"names":["_videoReactBindings","require","_react","_videoClient","_reactNative","eventEmitter","NativeModules","StreamVideoReactNative","NativeEventEmitter","undefined","DeviceStats","useCallCallingState","useCallStateHooks","callingState","call","useCall","useEffect","CallingState","JOINED","isLowPowerModeEnabled","then","initialPowerMode","setPowerState","tracer","trace","powerModeSubscription","addListener","isLowPowerMode","currentThermalState","initialState","setThermalState","thermalStateSubscription","thermalState","Platform","OS","startThermalStatusUpdates","remove","stopThermalStatusUpdates","exports"],"sourceRoot":"../../../../src","sources":["providers/StreamCall/DeviceStats.tsx"],"mappings":";;;;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAKA,IAAAG,YAAA,GAAAH,OAAA;AAEA,MAAMI,YAAY,GAAGC,0BAAa,EAAEC,sBAAsB,GACtD,IAAIC,+BAAkB,CAACF,0BAAa,EAAEC,sBAAsB,CAAC,GAC7DE,SAAS;;AAEb;AACA;AACA;AACO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC/B,MAAM;IAAEC;EAAoB,CAAC,GAAG,IAAAC,qCAAiB,EAAC,CAAC;EACnD,MAAMC,YAAY,GAAGF,mBAAmB,CAAC,CAAC;EAC1C,MAAMG,IAAI,GAAG,IAAAC,2BAAO,EAAC,CAAC;EAEtB,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAI,CAACF,IAAI,IAAID,YAAY,KAAKI,yBAAY,CAACC,MAAM,EAAE;IAEnDZ,0BAAa,EAAEC,sBAAsB,CAACY,qBAAqB,CAAC,CAAC,CAACC,IAAI,CAC/DC,gBAAyB,IAAK;MAC7B,IAAAC,0BAAa,EAACD,gBAAgB,CAAC;MAC/BP,IAAI,CAACS,MAAM,CAACC,KAAK,CAAC,qBAAqB,EAAEH,gBAAgB,CAAC;IAC5D,CACF,CAAC;IAED,MAAMI,qBAAqB,GAAGpB,YAAY,EAAEqB,WAAW,CACrD,uBAAuB,EACtBC,cAAuB,IAAK;MAC3B,IAAAL,0BAAa,EAACK,cAAc,CAAC;MAC7Bb,IAAI,CAACS,MAAM,CAACC,KAAK,CAAC,qBAAqB,EAAEG,cAAc,CAAC;IAC1D,CACF,CAAC;IAEDrB,0BAAa,EAAEC,sBAAsB,CAACqB,mBAAmB,CAAC,CAAC,CAACR,IAAI,CAC7DS,YAAoB,IAAK;MACxB,IAAAC,4BAAe,EAACD,YAAY,CAAC;MAC7Bf,IAAI,CAACS,MAAM,CAACC,KAAK,CAAC,qBAAqB,EAAEK,YAAY,CAAC;IACxD,CACF,CAAC;IAED,MAAME,wBAAwB,GAAG1B,YAAY,EAAEqB,WAAW,CACxD,uBAAuB,EACtBM,YAAoB,IAAK;MACxB,IAAAF,4BAAe,EAACE,YAAY,CAAC;MAC7BlB,IAAI,CAACS,MAAM,CAACC,KAAK,CAAC,4BAA4B,EAAEQ,YAAY,CAAC;IAC/D,CACF,CAAC;;IAED;IACA,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;MAC7B5B,0BAAa,EAAEC,sBAAsB,CAAC4B,yBAAyB,CAAC,CAAC;IACnE;IAEA,OAAO,MAAM;MACXV,qBAAqB,EAAEW,MAAM,CAAC,CAAC;MAC/BL,wBAAwB,EAAEK,MAAM,CAAC,CAAC;MAClC,IAAIH,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;QAC7B5B,0BAAa,EAAEC,sBAAsB,CAAC8B,wBAAwB,CAAC,CAAC;MAClE;IACF,CAAC;EACH,CAAC,EAAE,CAACvB,IAAI,EAAED,YAAY,CAAC,CAAC;EAExB,OAAO,IAAI;AACb,CAAC;AAACyB,OAAA,CAAA5B,WAAA,GAAAA,WAAA","ignoreList":[]}
@@ -9,6 +9,24 @@ var _newNotificationCallbacks = _interopRequireDefault(require("../internal/newN
9
9
  var _setupIosCallKeepEvents = require("../push/setupIosCallKeepEvents");
10
10
  var _setupIosVoipPushEvents = require("../push/setupIosVoipPushEvents");
11
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ // Utility type for deep partial
13
+
14
+ // Helper function for deep merging
15
+ function deepMerge(target, source) {
16
+ const result = {
17
+ ...target
18
+ };
19
+ for (const key in source) {
20
+ if (source[key] !== undefined) {
21
+ if (typeof source[key] === 'object' && source[key] !== null && !Array.isArray(source[key]) && typeof target[key] === 'object' && target[key] !== null && !Array.isArray(target[key])) {
22
+ result[key] = deepMerge(target[key], source[key]);
23
+ } else {
24
+ result[key] = source[key];
25
+ }
26
+ }
27
+ }
28
+ return result;
29
+ }
12
30
  const DEFAULT_STREAM_VIDEO_CONFIG = {
13
31
  foregroundService: {
14
32
  android: {
@@ -22,7 +40,8 @@ const DEFAULT_STREAM_VIDEO_CONFIG = {
22
40
  notificationTexts: {
23
41
  title: 'Call in progress',
24
42
  body: 'Tap to return to the call'
25
- }
43
+ },
44
+ taskToRun: () => new Promise(() => {})
26
45
  }
27
46
  }
28
47
  };
@@ -32,13 +51,10 @@ class StreamVideoRN {
32
51
  /**
33
52
  * Update the global config for StreamVideoRN except for push config.
34
53
  * To set push config use `StreamVideoRN.setPushConfig` instead.
35
- * This function accepts a partial config object that will be merged with the default config.
54
+ * This function accepts a partial config object that will be deeply merged with the default config.
36
55
  */
37
56
  static updateConfig(updateConfig) {
38
- this.config = {
39
- ...this.config,
40
- ...updateConfig
41
- };
57
+ this.config = deepMerge(this.config, updateConfig);
42
58
  }
43
59
  static updateAndroidIncomingCallChannel(updateChannel) {
44
60
  const prevChannel = this.config.push?.android?.incomingCallChannel;
@@ -1 +1 @@
1
- {"version":3,"names":["_pushLogoutCallback","_interopRequireDefault","require","_newNotificationCallbacks","_setupIosCallKeepEvents","_setupIosVoipPushEvents","e","__esModule","default","DEFAULT_STREAM_VIDEO_CONFIG","foregroundService","android","channel","id","name","lights","vibration","importance","notificationTexts","title","body","StreamVideoRN","config","updateConfig","updateAndroidIncomingCallChannel","updateChannel","prevChannel","push","incomingCallChannel","setPushConfig","pushConfig","__DEV__","navigateAcceptCall","navigateToIncomingCall","Error","setupIosCallKeepEvents","setupIosVoipPushEvents","getConfig","onPushLogout","pushLogoutCallbacks","current","Promise","all","map","callback","then","resolve","clearPushLogoutCallbacks","addOnNewCallNotificationListener","newNotificationCallbacks","filter","cb","exports"],"sourceRoot":"../../../../src","sources":["utils/StreamVideoRN/index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_pushLogoutCallback","_interopRequireDefault","require","_newNotificationCallbacks","_setupIosCallKeepEvents","_setupIosVoipPushEvents","e","__esModule","default","deepMerge","target","source","result","key","undefined","Array","isArray","DEFAULT_STREAM_VIDEO_CONFIG","foregroundService","android","channel","id","name","lights","vibration","importance","notificationTexts","title","body","taskToRun","Promise","StreamVideoRN","config","updateConfig","updateAndroidIncomingCallChannel","updateChannel","prevChannel","push","incomingCallChannel","setPushConfig","pushConfig","__DEV__","navigateAcceptCall","navigateToIncomingCall","Error","setupIosCallKeepEvents","setupIosVoipPushEvents","getConfig","onPushLogout","pushLogoutCallbacks","current","all","map","callback","then","resolve","clearPushLogoutCallbacks","addOnNewCallNotificationListener","newNotificationCallbacks","filter","cb","exports"],"sourceRoot":"../../../../src","sources":["utils/StreamVideoRN/index.ts"],"mappings":"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","ignoreList":[]}
@@ -4,5 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.version = void 0;
7
- const version = exports.version = '1.19.0';
7
+ const version = exports.version = '1.20.0';
8
8
  //# sourceMappingURL=version.js.map
@@ -1,10 +1,11 @@
1
1
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
2
  import React, { useEffect, useMemo, useRef, useState } from 'react';
3
- import { StyleSheet, View } from 'react-native';
3
+ import { StyleSheet, View, NativeModules, Platform } from 'react-native';
4
4
  import InCallManager from 'react-native-incall-manager';
5
5
  import { CallParticipantsGrid, CallParticipantsSpotlight } from '../CallLayout';
6
6
  import { CallControls as DefaultCallControls } from '../CallControls';
7
- import { useCallStateHooks } from '@stream-io/video-react-bindings';
7
+ import { useCall, useCallStateHooks } from '@stream-io/video-react-bindings';
8
+ import { CallingState, getLogger } from '@stream-io/video-client';
8
9
  import { Z_INDEX } from '../../../constants';
9
10
  import { useDebouncedValue } from '../../../utils/hooks';
10
11
  import { FloatingParticipantView as DefaultFloatingParticipantView } from '../../Participant';
@@ -38,6 +39,7 @@ export const CallContent = ({
38
39
  callContent
39
40
  }
40
41
  } = useTheme();
42
+ const call = useCall();
41
43
  const {
42
44
  useHasOngoingScreenShare,
43
45
  useRemoteParticipants,
@@ -51,6 +53,24 @@ export const CallContent = ({
51
53
  const isInPiPMode = useIsInPiPMode();
52
54
  const hasScreenShare = useHasOngoingScreenShare();
53
55
  const showSpotlightLayout = hasScreenShare || layout === 'spotlight';
56
+ useEffect(() => {
57
+ if (isInPiPMode && Platform.OS === 'android') {
58
+ const unsubFunc = call?.on('call.ended', () => {
59
+ getLogger(['CallContent'])('debug', `exiting PiP mode due to call.ended`);
60
+ NativeModules.StreamVideoReactNative.exitPipMode();
61
+ });
62
+ const subscription = call?.state.callingState$.subscribe(state => {
63
+ if (state === CallingState.LEFT) {
64
+ getLogger(['CallContent'])('debug', `exiting PiP mode due to callingState: LEFT`);
65
+ NativeModules.StreamVideoReactNative.exitPipMode();
66
+ }
67
+ });
68
+ return () => {
69
+ unsubFunc?.();
70
+ subscription?.unsubscribe();
71
+ };
72
+ }
73
+ }, [isInPiPMode, call]);
54
74
  const showFloatingView = !showSpotlightLayout && !isInPiPMode && remoteParticipants.length > 0 && remoteParticipants.length < 3;
55
75
  const isRemoteParticipantInFloatingView = showFloatingView && showRemoteParticipantInFloatingView && remoteParticipants.length === 1;
56
76
 
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useMemo","useRef","useState","StyleSheet","View","InCallManager","CallParticipantsGrid","CallParticipantsSpotlight","CallControls","DefaultCallControls","useCallStateHooks","Z_INDEX","useDebouncedValue","FloatingParticipantView","DefaultFloatingParticipantView","useTheme","useAutoEnterPiPEffect","useIsInPiPMode","ScreenShareOverlay","DefaultScreenShareOverlay","RTCViewPipIOS","CallContent","onHangupCallHandler","CallParticipantsList","ParticipantLabel","ParticipantNetworkQualityIndicator","ParticipantReaction","ParticipantVideoFallback","ParticipantView","VideoRenderer","layout","landscape","supportedReactions","iOSPiPIncludeLocalParticipantVideo","disablePictureInPicture","initialInCallManagerAudioMode","showRemoteParticipantInFloatingView","setShowRemoteParticipantInFloatingView","styles","useStyles","theme","callContent","useHasOngoingScreenShare","useRemoteParticipants","useLocalParticipant","incallManagerModeRef","_remoteParticipants","remoteParticipants","localParticipant","isInPiPMode","hasScreenShare","showSpotlightLayout","showFloatingView","length","isRemoteParticipantInFloatingView","start","media","current","stop","handleFloatingViewParticipantSwitch","prevState","participantViewProps","callParticipantsGridProps","showLocalParticipant","callParticipantsSpotlightProps","landscapeStyles","flexDirection","createElement","Fragment","includeLocalParticipantVideo","style","container","content","callParticipantsContainer","view","topContainer","pointerEvents","_extends","participant","onPressHandler","objectFit","create","flex","paddingBottom","variants","insets","bottom","paddingLeft","left","paddingRight","right","paddingTop","top","backgroundColor","colors","sheetPrimary","absoluteFillObject","zIndex","IN_FRONT"],"sourceRoot":"../../../../../src","sources":["components/Call/CallContent/CallContent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useEffect","useMemo","useRef","useState","StyleSheet","View","NativeModules","Platform","InCallManager","CallParticipantsGrid","CallParticipantsSpotlight","CallControls","DefaultCallControls","useCall","useCallStateHooks","CallingState","getLogger","Z_INDEX","useDebouncedValue","FloatingParticipantView","DefaultFloatingParticipantView","useTheme","useAutoEnterPiPEffect","useIsInPiPMode","ScreenShareOverlay","DefaultScreenShareOverlay","RTCViewPipIOS","CallContent","onHangupCallHandler","CallParticipantsList","ParticipantLabel","ParticipantNetworkQualityIndicator","ParticipantReaction","ParticipantVideoFallback","ParticipantView","VideoRenderer","layout","landscape","supportedReactions","iOSPiPIncludeLocalParticipantVideo","disablePictureInPicture","initialInCallManagerAudioMode","showRemoteParticipantInFloatingView","setShowRemoteParticipantInFloatingView","styles","useStyles","theme","callContent","call","useHasOngoingScreenShare","useRemoteParticipants","useLocalParticipant","incallManagerModeRef","_remoteParticipants","remoteParticipants","localParticipant","isInPiPMode","hasScreenShare","showSpotlightLayout","OS","unsubFunc","on","StreamVideoReactNative","exitPipMode","subscription","state","callingState$","subscribe","LEFT","unsubscribe","showFloatingView","length","isRemoteParticipantInFloatingView","start","media","current","stop","handleFloatingViewParticipantSwitch","prevState","participantViewProps","callParticipantsGridProps","showLocalParticipant","callParticipantsSpotlightProps","landscapeStyles","flexDirection","createElement","Fragment","includeLocalParticipantVideo","style","container","content","callParticipantsContainer","view","topContainer","pointerEvents","_extends","participant","onPressHandler","objectFit","create","flex","paddingBottom","variants","insets","bottom","paddingLeft","left","paddingRight","right","paddingTop","top","backgroundColor","colors","sheetPrimary","absoluteFillObject","zIndex","IN_FRONT"],"sourceRoot":"../../../../../src","sources":["components/Call/CallContent/CallContent.tsx"],"mappings":"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","ignoreList":[]}
@@ -51,7 +51,16 @@ export const CallParticipantsGrid = ({
51
51
  };
52
52
  const isInPiPMode = useIsInPiPMode();
53
53
  const showFloatingView = !isInPiPMode && remoteParticipants.length > 0 && remoteParticipants.length < 3;
54
- let participants = showFloatingView ? showLocalParticipant && localParticipant ? [localParticipant] : remoteParticipants : allParticipants;
54
+ let participants;
55
+ if (showFloatingView) {
56
+ if (showLocalParticipant && localParticipant) {
57
+ participants = [localParticipant];
58
+ } else {
59
+ participants = remoteParticipants;
60
+ }
61
+ } else {
62
+ participants = allParticipants;
63
+ }
55
64
  if (isInPiPMode) {
56
65
  if (dominantSpeaker && !dominantSpeaker.isLocalParticipant) {
57
66
  participants = [dominantSpeaker];
@@ -1 +1 @@
1
- {"version":3,"names":["React","StyleSheet","View","useCallStateHooks","useDebouncedValue","CallParticipantsList","DefaultCallParticipantsList","ComponentTestIds","useTheme","useIsInPiPMode","CallParticipantsGrid","ParticipantLabel","ParticipantNetworkQualityIndicator","ParticipantReaction","ParticipantVideoFallback","ParticipantView","VideoRenderer","showLocalParticipant","supportedReactions","landscape","theme","colors","callParticipantsGrid","useRemoteParticipants","useParticipants","useLocalParticipant","useDominantSpeaker","_remoteParticipants","localParticipant","_allParticipants","dominantSpeaker","remoteParticipants","allParticipants","landscapeStyles","flexDirection","isInPiPMode","showFloatingView","length","participants","isLocalParticipant","participantViewProps","createElement","style","styles","container","backgroundColor","sheetPrimary","testID","CALL_PARTICIPANTS_GRID","_extends","create","flex"],"sourceRoot":"../../../../../src","sources":["components/Call/CallLayout/CallParticipantsGrid.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","StyleSheet","View","useCallStateHooks","useDebouncedValue","CallParticipantsList","DefaultCallParticipantsList","ComponentTestIds","useTheme","useIsInPiPMode","CallParticipantsGrid","ParticipantLabel","ParticipantNetworkQualityIndicator","ParticipantReaction","ParticipantVideoFallback","ParticipantView","VideoRenderer","showLocalParticipant","supportedReactions","landscape","theme","colors","callParticipantsGrid","useRemoteParticipants","useParticipants","useLocalParticipant","useDominantSpeaker","_remoteParticipants","localParticipant","_allParticipants","dominantSpeaker","remoteParticipants","allParticipants","landscapeStyles","flexDirection","isInPiPMode","showFloatingView","length","participants","isLocalParticipant","participantViewProps","createElement","style","styles","container","backgroundColor","sheetPrimary","testID","CALL_PARTICIPANTS_GRID","_extends","create","flex"],"sourceRoot":"../../../../../src","sources":["components/Call/CallLayout/CallParticipantsGrid.tsx"],"mappings":"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","ignoreList":[]}
@@ -54,7 +54,8 @@ export const VideoRenderer = ({
54
54
  register: registerIosScreenshot,
55
55
  deregister: deregisterIosScreenshot
56
56
  } = useScreenshotIosContext();
57
- const videoDimensions = useTrackDimensions(participant);
57
+ const videoDimensions = useTrackDimensions(participant, trackType);
58
+ const isVideoDimensionsValid = videoDimensions.width > 0 && videoDimensions.height > 0;
58
59
  const {
59
60
  isLocalParticipant,
60
61
  sessionId,
@@ -207,7 +208,7 @@ export const VideoRenderer = ({
207
208
  return /*#__PURE__*/React.createElement(View, {
208
209
  onLayout: onLayout,
209
210
  style: [styles.container, videoRenderer.container]
210
- }, canShowVideo && videoStreamToRender ? /*#__PURE__*/React.createElement(RTCView, {
211
+ }, canShowVideo && videoStreamToRender && (objectFit || isVideoDimensionsValid) ? /*#__PURE__*/React.createElement(RTCView, {
211
212
  style: [styles.videoStream, videoRenderer.videoStream],
212
213
  streamURL: videoStreamToRender.toURL(),
213
214
  mirror: mirror,
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useRef","Platform","StyleSheet","View","RTCView","CallingState","hasPausedTrack","hasScreenShare","hasVideo","VisibilityState","useCall","useCallStateHooks","ParticipantVideoFallback","DefaultParticipantVideoFallback","useTheme","useTrackDimensions","useScreenshotIosContext","DEFAULT_VIEWPORT_VISIBILITY_STATE","videoTrack","UNKNOWN","screenShareTrack","VideoRenderer","trackType","participant","isVisible","objectFit","videoZOrder","theme","videoRenderer","call","useCallCallingState","useCameraState","useIncomingVideoSettings","isParticipantVideoEnabled","callingState","pendingVideoLayoutRef","undefined","subscribedVideoLayoutRef","direction","viewRef","register","registerIosScreenshot","deregister","deregisterIosScreenshot","videoDimensions","isLocalParticipant","sessionId","viewportVisibilityState","videoStream","screenShareStream","isScreenSharing","isPublishingVideoTrack","hasJoinedCall","JOINED","videoStreamToRender","canShowVideo","OS","current","mirror","VISIBLE","state","updateParticipant","p","INVISIBLE","updateIsNeeded","dimension","updateParticipantTracks","dynascaleManager","applyTrackSubscriptions","onLayout","event","width","Math","trunc","nativeEvent","layout","height","createElement","style","styles","container","streamURL","toURL","ref","zOrder","create","absoluteFillObject"],"sourceRoot":"../../../../../src","sources":["components/Participant/ParticipantView/VideoRenderer.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useEffect","useRef","Platform","StyleSheet","View","RTCView","CallingState","hasPausedTrack","hasScreenShare","hasVideo","VisibilityState","useCall","useCallStateHooks","ParticipantVideoFallback","DefaultParticipantVideoFallback","useTheme","useTrackDimensions","useScreenshotIosContext","DEFAULT_VIEWPORT_VISIBILITY_STATE","videoTrack","UNKNOWN","screenShareTrack","VideoRenderer","trackType","participant","isVisible","objectFit","videoZOrder","theme","videoRenderer","call","useCallCallingState","useCameraState","useIncomingVideoSettings","isParticipantVideoEnabled","callingState","pendingVideoLayoutRef","undefined","subscribedVideoLayoutRef","direction","viewRef","register","registerIosScreenshot","deregister","deregisterIosScreenshot","videoDimensions","isVideoDimensionsValid","width","height","isLocalParticipant","sessionId","viewportVisibilityState","videoStream","screenShareStream","isScreenSharing","isPublishingVideoTrack","hasJoinedCall","JOINED","videoStreamToRender","canShowVideo","OS","current","mirror","VISIBLE","state","updateParticipant","p","INVISIBLE","updateIsNeeded","dimension","updateParticipantTracks","dynascaleManager","applyTrackSubscriptions","onLayout","event","Math","trunc","nativeEvent","layout","createElement","style","styles","container","streamURL","toURL","ref","zOrder","create","absoluteFillObject"],"sourceRoot":"../../../../../src","sources":["components/Participant/ParticipantView/VideoRenderer.tsx"],"mappings":"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","ignoreList":[]}
@@ -67,6 +67,7 @@ export const BackgroundFiltersProvider = ({
67
67
  } else if (blurIntensity === 'light') {
68
68
  filterName = 'BackgroundBlurLight';
69
69
  }
70
+ call?.tracer.trace('backgroundFilters.apply', filterName);
70
71
  call?.camera.state.mediaStream?.getVideoTracks().forEach(track => {
71
72
  track._setVideoEffect(filterName);
72
73
  });
@@ -88,6 +89,7 @@ export const BackgroundFiltersProvider = ({
88
89
  } else if (blurIntensity === 'light') {
89
90
  filterName = 'BlurLight';
90
91
  }
92
+ call?.tracer.trace('backgroundFilters.apply', filterName);
91
93
  call?.camera.state.mediaStream?.getVideoTracks().forEach(track => {
92
94
  track._setVideoEffect(filterName);
93
95
  });
@@ -107,6 +109,7 @@ export const BackgroundFiltersProvider = ({
107
109
  registeredImageFiltersSetRef.current.add(imageUri);
108
110
  }
109
111
  const filterName = `VirtualBackground-${imageUri}`;
112
+ call?.tracer.trace('backgroundFilters.apply', filterName);
110
113
  call?.camera.state.mediaStream?.getVideoTracks().forEach(track => {
111
114
  track._setVideoEffect(filterName);
112
115
  });
@@ -118,6 +121,7 @@ export const BackgroundFiltersProvider = ({
118
121
  if (!isSupported) {
119
122
  return;
120
123
  }
124
+ call?.tracer.trace('backgroundFilters.disableAll', null);
121
125
  call?.camera.state.mediaStream?.getVideoTracks().forEach(track => {
122
126
  track._setVideoEffect(null);
123
127
  });
@@ -1 +1 @@
1
- {"version":3,"names":["React","createContext","useCallback","useContext","useMemo","useRef","useState","useCall","Image","Platform","isSupported","OS","currentVersion","parseInt","Version","videoFiltersModule","require","resolveAssetSourceFunc","resolveAssetSource","BackgroundFiltersContext","undefined","useBackgroundFilters","context","Error","BackgroundFiltersProvider","children","call","isBackgroundBlurRegisteredRef","isVideoBlurRegisteredRef","registeredImageFiltersSetRef","Set","currentBackgroundFilter","setCurrentBackgroundFilter","applyBackgroundBlurFilter","blurIntensity","current","registerBackgroundBlurVideoFilters","filterName","camera","state","mediaStream","getVideoTracks","forEach","track","_setVideoEffect","blur","applyVideoBlurFilter","registerBlurVideoFilters","applyBackgroundImageFilter","imageSource","source","imageUri","uri","registeredImageFiltersSet","has","registerVirtualBackgroundFilter","add","image","disableAllFilters","value","createElement","Provider"],"sourceRoot":"../../../src","sources":["contexts/BackgroundFilters.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","createContext","useCallback","useContext","useMemo","useRef","useState","useCall","Image","Platform","isSupported","OS","currentVersion","parseInt","Version","videoFiltersModule","require","resolveAssetSourceFunc","resolveAssetSource","BackgroundFiltersContext","undefined","useBackgroundFilters","context","Error","BackgroundFiltersProvider","children","call","isBackgroundBlurRegisteredRef","isVideoBlurRegisteredRef","registeredImageFiltersSetRef","Set","currentBackgroundFilter","setCurrentBackgroundFilter","applyBackgroundBlurFilter","blurIntensity","current","registerBackgroundBlurVideoFilters","filterName","tracer","trace","camera","state","mediaStream","getVideoTracks","forEach","track","_setVideoEffect","blur","applyVideoBlurFilter","registerBlurVideoFilters","applyBackgroundImageFilter","imageSource","source","imageUri","uri","registeredImageFiltersSet","has","registerVirtualBackgroundFilter","add","image","disableAllFilters","value","createElement","Provider"],"sourceRoot":"../../../src","sources":["contexts/BackgroundFilters.tsx"],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,9 @@ import { AppState, NativeModules, Platform } from 'react-native';
5
5
  import { CallingState, getLogger } from '@stream-io/video-client';
6
6
  import { getKeepCallAliveForegroundServiceTypes, getNotifeeLibNoThrowForKeepCallAlive } from '../utils/push/libs/notifee';
7
7
  const notifeeLib = getNotifeeLibNoThrowForKeepCallAlive();
8
+ const callToPassToForegroundService = {
9
+ current: undefined
10
+ };
8
11
  function setForegroundService() {
9
12
  if (Platform.OS === 'ios' || !notifeeLib) return;
10
13
  NativeModules.StreamVideoReactNative.isCallAliveConfigured().then(isConfigured => {
@@ -14,35 +17,46 @@ function setForegroundService() {
14
17
  return;
15
18
  }
16
19
  notifeeLib.default.registerForegroundService(() => {
17
- return new Promise(() => {
20
+ const task = new Promise(resolve => {
18
21
  const logger = getLogger(['setForegroundService method']);
19
22
  logger('info', 'Foreground service running for call in progress');
23
+ // any task to run from SDK in the foreground service must be added
24
+ resolve(true);
20
25
  });
26
+ const videoConfig = StreamVideoRN.getConfig();
27
+ const foregroundServiceConfig = videoConfig.foregroundService;
28
+ const {
29
+ taskToRun
30
+ } = foregroundServiceConfig.android;
31
+ const call = callToPassToForegroundService.current;
32
+ if (!call) {
33
+ const logger = getLogger(['setForegroundService method']);
34
+ logger('warn', 'No call to pass to foreground service');
35
+ return task.then(() => new Promise(() => {}));
36
+ }
37
+ callToPassToForegroundService.current = undefined;
38
+ return task.then(() => taskToRun(call));
21
39
  });
22
40
  });
23
41
  }
24
42
  async function startForegroundService(call_cid) {
25
- const videoConfig = StreamVideoRN.getConfig();
26
- const foregroundServiceConfig = videoConfig.foregroundService;
27
- const {
28
- title,
29
- body
30
- } = foregroundServiceConfig.android.notificationTexts;
31
-
32
- // check for notification permission and then start the foreground service
33
- if (!notifeeLib) return;
34
43
  const isCallAliveConfigured = await NativeModules.StreamVideoReactNative.isCallAliveConfigured();
35
44
  if (!isCallAliveConfigured) {
36
45
  const logger = getLogger(['startForegroundService']);
37
46
  logger('info', 'KeepCallAlive is not configured. Skipping foreground service setup.');
38
47
  return;
39
48
  }
49
+ // check for notification permission and then start the foreground service
50
+ if (!notifeeLib) return;
40
51
  const settings = await notifeeLib.default.getNotificationSettings();
41
52
  if (settings.authorizationStatus !== notifeeLib.AuthorizationStatus.AUTHORIZED) {
42
53
  const logger = getLogger(['startForegroundService']);
43
54
  logger('info', 'Notification permission not granted, can not start foreground service to keep the call alive');
44
55
  return;
45
56
  }
57
+ const videoConfig = StreamVideoRN.getConfig();
58
+ const foregroundServiceConfig = videoConfig.foregroundService;
59
+ const notificationTexts = foregroundServiceConfig.android.notificationTexts;
46
60
  const channelId = foregroundServiceConfig.android.channel.id;
47
61
  await notifeeLib.default.createChannel(foregroundServiceConfig.android.channel);
48
62
  const foregroundServiceTypes = await getKeepCallAliveForegroundServiceTypes();
@@ -52,8 +66,8 @@ async function startForegroundService(call_cid) {
52
66
  requestAnimationFrame(() => {
53
67
  notifeeLib.default.displayNotification({
54
68
  id: call_cid,
55
- title,
56
- body,
69
+ title: notificationTexts.title,
70
+ body: notificationTexts.body,
57
71
  android: {
58
72
  channelId,
59
73
  smallIcon: videoConfig.push?.android.smallIcon,
@@ -83,6 +97,7 @@ let isSetForegroundServiceRan = false;
83
97
  export const useAndroidKeepCallAliveEffect = () => {
84
98
  const foregroundServiceStartedRef = useRef(false);
85
99
  const call = useCall();
100
+ callToPassToForegroundService.current = call;
86
101
  const activeCallCid = call?.cid;
87
102
  const {
88
103
  useCallCallingState
@@ -111,6 +126,7 @@ export const useAndroidKeepCallAliveEffect = () => {
111
126
  const displayedNotifications = await notifee.getDisplayedNotifications();
112
127
  const activeCallNotification = displayedNotifications.find(notification => notification.id === activeCallCid);
113
128
  if (activeCallNotification) {
129
+ callToPassToForegroundService.current = undefined;
114
130
  // this means that we have a incoming call notification shown as foreground service and we must stop it
115
131
  notifee.stopForegroundService();
116
132
  notifee.cancelDisplayedNotification(activeCallCid);
@@ -143,6 +159,7 @@ export const useAndroidKeepCallAliveEffect = () => {
143
159
  };
144
160
  } else if (callingState === CallingState.IDLE || callingState === CallingState.LEFT) {
145
161
  if (foregroundServiceStartedRef.current) {
162
+ callToPassToForegroundService.current = undefined;
146
163
  // stop foreground service when the call is not active
147
164
  notifeeLib.default.stopForegroundService();
148
165
  foregroundServiceStartedRef.current = false;
@@ -150,6 +167,7 @@ export const useAndroidKeepCallAliveEffect = () => {
150
167
  notifeeLib.default.getDisplayedNotifications().then(displayedNotifications => {
151
168
  const activeCallNotification = displayedNotifications.find(notification => notification.id === activeCallCid);
152
169
  if (activeCallNotification) {
170
+ callToPassToForegroundService.current = undefined;
153
171
  // this means that we have a incoming call notification shown as foreground service and we must stop it
154
172
  notifeeLib.default.stopForegroundService();
155
173
  }
@@ -163,6 +181,7 @@ export const useAndroidKeepCallAliveEffect = () => {
163
181
  // stop foreground service when this effect is unmounted
164
182
  if (foregroundServiceStartedRef.current) {
165
183
  if (!notifeeLib) return;
184
+ callToPassToForegroundService.current = undefined;
166
185
  notifeeLib.default.stopForegroundService();
167
186
  foregroundServiceStartedRef.current = false;
168
187
  }