@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.
- package/CHANGELOG.md +28 -0
- package/android/src/main/java/com/streamvideo/reactnative/StreamVideoReactNativeModule.kt +10 -0
- package/android/src/main/java/com/streamvideo/reactnative/util/PiPHelper.kt +18 -0
- package/dist/commonjs/components/Call/CallContent/CallContent.js +20 -0
- package/dist/commonjs/components/Call/CallContent/CallContent.js.map +1 -1
- package/dist/commonjs/components/Call/CallLayout/CallParticipantsGrid.js +10 -1
- package/dist/commonjs/components/Call/CallLayout/CallParticipantsGrid.js.map +1 -1
- package/dist/commonjs/components/Participant/ParticipantView/VideoRenderer.js +3 -2
- package/dist/commonjs/components/Participant/ParticipantView/VideoRenderer.js.map +1 -1
- package/dist/commonjs/contexts/BackgroundFilters.js +4 -0
- package/dist/commonjs/contexts/BackgroundFilters.js.map +1 -1
- package/dist/commonjs/hooks/useAndroidKeepCallAliveEffect.js +31 -12
- package/dist/commonjs/hooks/useAndroidKeepCallAliveEffect.js.map +1 -1
- package/dist/commonjs/hooks/useTrackDimensions.js +31 -35
- package/dist/commonjs/hooks/useTrackDimensions.js.map +1 -1
- package/dist/commonjs/providers/StreamCall/AppStateListener.js +3 -2
- package/dist/commonjs/providers/StreamCall/AppStateListener.js.map +1 -1
- package/dist/commonjs/providers/StreamCall/DeviceStats.js +19 -8
- package/dist/commonjs/providers/StreamCall/DeviceStats.js.map +1 -1
- package/dist/commonjs/utils/StreamVideoRN/index.js +22 -6
- package/dist/commonjs/utils/StreamVideoRN/index.js.map +1 -1
- package/dist/commonjs/version.js +1 -1
- package/dist/module/components/Call/CallContent/CallContent.js +22 -2
- package/dist/module/components/Call/CallContent/CallContent.js.map +1 -1
- package/dist/module/components/Call/CallLayout/CallParticipantsGrid.js +10 -1
- package/dist/module/components/Call/CallLayout/CallParticipantsGrid.js.map +1 -1
- package/dist/module/components/Participant/ParticipantView/VideoRenderer.js +3 -2
- package/dist/module/components/Participant/ParticipantView/VideoRenderer.js.map +1 -1
- package/dist/module/contexts/BackgroundFilters.js +4 -0
- package/dist/module/contexts/BackgroundFilters.js.map +1 -1
- package/dist/module/hooks/useAndroidKeepCallAliveEffect.js +31 -12
- package/dist/module/hooks/useAndroidKeepCallAliveEffect.js.map +1 -1
- package/dist/module/hooks/useTrackDimensions.js +30 -35
- package/dist/module/hooks/useTrackDimensions.js.map +1 -1
- package/dist/module/providers/StreamCall/AppStateListener.js +3 -2
- package/dist/module/providers/StreamCall/AppStateListener.js.map +1 -1
- package/dist/module/providers/StreamCall/DeviceStats.js +20 -9
- package/dist/module/providers/StreamCall/DeviceStats.js.map +1 -1
- package/dist/module/utils/StreamVideoRN/index.js +23 -6
- package/dist/module/utils/StreamVideoRN/index.js.map +1 -1
- package/dist/module/version.js +1 -1
- package/dist/typescript/components/Call/CallContent/CallContent.d.ts.map +1 -1
- package/dist/typescript/components/Call/CallLayout/CallParticipantsGrid.d.ts.map +1 -1
- package/dist/typescript/components/Participant/ParticipantView/VideoRenderer.d.ts.map +1 -1
- package/dist/typescript/contexts/BackgroundFilters.d.ts.map +1 -1
- package/dist/typescript/hooks/useAndroidKeepCallAliveEffect.d.ts.map +1 -1
- package/dist/typescript/hooks/useTrackDimensions.d.ts +2 -2
- package/dist/typescript/hooks/useTrackDimensions.d.ts.map +1 -1
- package/dist/typescript/providers/StreamCall/AppStateListener.d.ts.map +1 -1
- package/dist/typescript/providers/StreamCall/DeviceStats.d.ts.map +1 -1
- package/dist/typescript/utils/StreamVideoRN/index.d.ts +6 -2
- package/dist/typescript/utils/StreamVideoRN/index.d.ts.map +1 -1
- package/dist/typescript/utils/StreamVideoRN/types.d.ts +6 -1
- package/dist/typescript/utils/StreamVideoRN/types.d.ts.map +1 -1
- package/dist/typescript/version.d.ts +1 -1
- package/package.json +7 -7
- package/src/components/Call/CallContent/CallContent.tsx +39 -3
- package/src/components/Call/CallLayout/CallParticipantsGrid.tsx +12 -5
- package/src/components/Participant/ParticipantView/VideoRenderer.tsx +7 -2
- package/src/contexts/BackgroundFilters.tsx +4 -0
- package/src/hooks/useAndroidKeepCallAliveEffect.ts +30 -10
- package/src/hooks/useTrackDimensions.ts +51 -34
- package/src/providers/StreamCall/AppStateListener.tsx +3 -5
- package/src/providers/StreamCall/DeviceStats.tsx +20 -9
- package/src/utils/StreamVideoRN/index.ts +41 -6
- package/src/utils/StreamVideoRN/types.ts +6 -0
- package/src/version.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
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'
|
|
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":";;;;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAMA,IAAAG,uCAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAIA,IAAAK,YAAA,GAAAL,OAAA;AAEA,MAAMM,gBAAgB,GAAG,yCAAyC;AAElE,MAAMC,iBAAiB,GAAGC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAID,qBAAQ,CAACE,OAAO,IAAI,EAAE;;AAE7E;AACA;AACA;AACO,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;EACpC,MAAMC,IAAI,GAAG,IAAAC,2BAAO,EAAC,CAAC;EACtB,MAAMC,QAAQ,GAAG,IAAAC,aAAM,EAACC,qBAAQ,CAACC,YAAY,CAAC;EAC9C,MAAMC,wBAAwB,GAAG,IAAAH,aAAM,EAAU,KAAK,CAAC;;EAEvD;EACA,IAAAI,gBAAS,EAAC,MAAM;IACd,IAAI,CAACZ,iBAAiB,EAAE;MACtB;IACF;IAEA,MAAMa,UAAU,GAAGC,oBAAO,CAACC,eAAe,CAACC,2BAAe,CAAC;IAC3D,MAAMC,MAAM,GAAG,IAAAC,sBAAS,EAAC,CAAC,kBAAkB,CAAC,CAAC;IAC9C,MAAMC,cAAc,GAClB,CAACN,UAAU,IAAIJ,qBAAQ,CAACC,YAAY,KAAK,YAAY;IACvDU,+BAAmB,CAACC,IAAI,CAACF,cAAc,CAAC;IACxCF,MAAM,CAAC,OAAO,EAAE,mCAAmC,EAAEE,cAAc,CAAC;IAEpEG,0BAAa,EAAEC,sBAAsB,EAAEC,WAAW,CAAC,CAAC,CAACC,IAAI,CACtDC,OAAmC,IAAK;MACvCN,+BAAmB,CAACC,IAAI,CAAC,CAAC,CAACK,OAAO,CAAC;MACnCT,MAAM,CACJ,OAAO,EACP,gEAAgE,EAChE,CAAC,CAACS,OACJ,CAAC;IACH,CACF,CAAC;IAED,MAAMC,YAAY,GAAG,IAAIC,+BAAkB,CACzCN,0BAAa,CAACC,sBAChB,CAAC;IAED,MAAMM,qBAAqB,GAAGF,YAAY,CAACG,WAAW,CACpD/B,gBAAgB,EACfyB,WAAoB,IAAK;MACxBJ,+BAAmB,CAACC,IAAI,CAACG,WAAW,CAAC;IACvC,CACF,CAAC;IAED,OAAO,MAAM;MACXK,qBAAqB,CAACE,MAAM,CAAC,CAAC;IAChC,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAnB,gBAAS,EAAC,MAAM;IACd;IACA;IACA;IACA,MAAMoB,YAAY,GAAGvB,qBAAQ,CAACwB,gBAAgB,CAAC,QAAQ,EAAGC,YAAY,IAAK;MACzE,MAAMjB,MAAM,GAAG,IAAAC,sBAAS,EAAC,CAAC,kBAAkB,CAAC,CAAC;MAC9C,IAAIX,QAAQ,CAAC4B,OAAO,CAACC,KAAK,CAAC,YAAY,CAAC,IAAIF,YAAY,KAAK,QAAQ,EAAE;QACrE,
|
|
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
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
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;
|
|
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","
|
|
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":[]}
|
package/dist/commonjs/version.js
CHANGED
|
@@ -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":";AAAA,OAAOA,KAAK,IAAIC,SAAS,EAAEC,OAAO,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AACnE,
|
|
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
|
|
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":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,QAAwB,cAAc;AAC/D,SAASC,iBAAiB,QAAQ,iCAAiC;AACnE,SAASC,iBAAiB,QAAQ,wCAAwC;AAC1E,SACEC,oBAAoB,IAAIC,2BAA2B,QAE9C,8CAA8C;AACrD,SAASC,gBAAgB,QAAQ,4BAA4B;AAC7D,SAASC,QAAQ,QAAQ,gCAAgC;AAGzD,SAASC,cAAc,QAAQ,+BAA+B;;
|
|
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","
|
|
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":"AAAA,OAAOA,KAAK,IACVC,aAAa,EAEbC,WAAW,EACXC,UAAU,EACVC,OAAO,EACPC,MAAM,EACNC,QAAQ,QACH,OAAO;AAEd,SAASC,OAAO,QAAQ,iCAAiC;AACzD,SAASC,KAAK,EAAEC,QAAQ,QAAQ,cAAc;AAE9C,MAAMC,WAAW,GAAI,YAAY;EAC/B,IAAID,QAAQ,CAACE,EAAE,KAAK,KAAK,EAAE;IACzB;IACA,MAAMC,cAAc,GAAGC,QAAQ,CAACJ,QAAQ,CAACK,OAAO,EAAE,EAAE,CAAC;IACrD,OAAOF,cAAc,IAAI,EAAE;EAC7B;EACA,OAAOH,QAAQ,CAACE,EAAE,KAAK,SAAS;AAClC,CAAC,CAAE,CAAC;AAKJ,IAAII,kBAAsD;AAE1D,IAAI;EACFA,kBAAkB,GAAGC,OAAO,CAAC,uCAAuC,CAAC;AACvE,CAAC,CAAC,MAAM,CAAC;AAET,MAAMC,sBAAsB,GAAGT,KAAK,CAACU,kBAAkB;;AAEvD;;AAgDA;AACA;AACA;AACA,MAAMC,wBAAwB,gBAAGlB,aAAa,CAE5CmB,SAAS,CAAC;;AAEZ;AACA;AACA;AACA,OAAO,MAAMC,oBAAoB,GAAGA,CAAA,KAAM;EACxC,MAAMC,OAAO,GAAGnB,UAAU,CAACgB,wBAAwB,CAAC;EACpD,IAAI,CAACG,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CACb,sEACF,CAAC;EACH;EACA,IAAI,CAACR,kBAAkB,EAAE;IACvB,MAAM,IAAIQ,KAAK,CACb,uFACF,CAAC;EACH;EACA,OAAOD,OAAO;AAChB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAME,yBAAyB,GAAGA,CAAC;EAAEC;AAA4B,CAAC,KAAK;EAC5E,IAAI,CAACV,kBAAkB,EAAE;IACvB,MAAM,IAAIQ,KAAK,CACb,uFACF,CAAC;EACH;EACA,MAAMG,IAAI,GAAGnB,OAAO,CAAC,CAAC;EACtB,MAAMoB,6BAA6B,GAAGtB,MAAM,CAAC,KAAK,CAAC;EACnD,MAAMuB,wBAAwB,GAAGvB,MAAM,CAAC,KAAK,CAAC;EAC9C,MAAMwB,4BAA4B,GAAGxB,MAAM,CAAC,IAAIyB,GAAG,CAAS,CAAC,CAAC;EAE9D,MAAM,CAACC,uBAAuB,EAAEC,0BAA0B,CAAC,GACzD1B,QAAQ,CAA0B,CAAC;EAErC,MAAM2B,yBAAyB,GAAG/B,WAAW,CAC3C,MAAOgC,aAA4B,IAAK;IACtC,IAAI,CAACxB,WAAW,EAAE;MAChB;IACF;IACA,IAAI,CAACiB,6BAA6B,CAACQ,OAAO,EAAE;MAC1C,MAAMpB,kBAAkB,EAAEqB,kCAAkC,CAAC,CAAC;MAC9DT,6BAA6B,CAACQ,OAAO,GAAG,IAAI;IAC9C;IACA,IAAIE,UAAU,GAAG,sBAAsB;IACvC,IAAIH,aAAa,KAAK,OAAO,EAAE;MAC7BG,UAAU,GAAG,qBAAqB;IACpC,CAAC,MAAM,IAAIH,aAAa,KAAK,OAAO,EAAE;MACpCG,UAAU,GAAG,qBAAqB;IACpC;
|
|
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
|
-
|
|
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
|
}
|