@stream-io/video-react-native-sdk 0.7.29 → 0.8.1
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 +24 -0
- package/dist/commonjs/contexts/BackgroundFilters.js +14 -6
- package/dist/commonjs/contexts/BackgroundFilters.js.map +1 -1
- package/dist/commonjs/version.js +1 -1
- package/dist/commonjs/version.js.map +1 -1
- package/dist/module/contexts/BackgroundFilters.js +13 -5
- package/dist/module/contexts/BackgroundFilters.js.map +1 -1
- package/dist/module/version.js +1 -1
- package/dist/module/version.js.map +1 -1
- package/dist/typescript/contexts/BackgroundFilters.d.ts.map +1 -1
- package/dist/typescript/version.d.ts +1 -1
- package/dist/typescript/version.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/contexts/BackgroundFilters.tsx +14 -6
- package/src/version.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,30 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
### [0.8.1](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-native-sdk-0.8.0...@stream-io/video-react-native-sdk-0.8.1) (2024-06-12)
|
|
6
|
+
|
|
7
|
+
### Dependency Updates
|
|
8
|
+
|
|
9
|
+
* `@stream-io/video-filters-react-native` updated to version `0.2.1`
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
* docs to make video filters usable without the RN SDK ([6061f4d](https://github.com/GetStream/stream-video-js/commit/6061f4d5b83d1ed46051dde12c7d3e269ec26aeb))
|
|
14
|
+
|
|
15
|
+
## [0.8.0](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-native-sdk-0.7.29...@stream-io/video-react-native-sdk-0.8.0) (2024-06-12)
|
|
16
|
+
|
|
17
|
+
### Dependency Updates
|
|
18
|
+
|
|
19
|
+
* `@stream-io/video-filters-react-native` updated to version `0.2.0`
|
|
20
|
+
|
|
21
|
+
### ⚠ BREAKING CHANGES
|
|
22
|
+
|
|
23
|
+
* **react-native:** add ios video filters (#1400)
|
|
24
|
+
|
|
25
|
+
### Features
|
|
26
|
+
|
|
27
|
+
* **react-native:** add ios video filters ([#1400](https://github.com/GetStream/stream-video-js/issues/1400)) ([dbad806](https://github.com/GetStream/stream-video-js/commit/dbad806e136de7d60a10d292431c8cfe74bd28f9))
|
|
28
|
+
|
|
5
29
|
### [0.7.29](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-native-sdk-0.7.28...@stream-io/video-react-native-sdk-0.7.29) (2024-06-12)
|
|
6
30
|
|
|
7
31
|
### Dependency Updates
|
|
@@ -9,6 +9,14 @@ var _videoReactBindings = require("@stream-io/video-react-bindings");
|
|
|
9
9
|
var _reactNative = require("react-native");
|
|
10
10
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
11
11
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
12
|
+
const isSupported = function () {
|
|
13
|
+
if (_reactNative.Platform.OS === 'ios') {
|
|
14
|
+
// only supported on ios 15 and above
|
|
15
|
+
const currentVersion = parseInt(_reactNative.Platform.Version, 10);
|
|
16
|
+
return currentVersion >= 15;
|
|
17
|
+
}
|
|
18
|
+
return _reactNative.Platform.OS === 'android';
|
|
19
|
+
}();
|
|
12
20
|
let videoFiltersModule;
|
|
13
21
|
try {
|
|
14
22
|
videoFiltersModule = require('@stream-io/video-filters-react-native');
|
|
@@ -35,8 +43,6 @@ const useBackgroundFilters = () => {
|
|
|
35
43
|
}
|
|
36
44
|
return context;
|
|
37
45
|
};
|
|
38
|
-
exports.useBackgroundFilters = useBackgroundFilters;
|
|
39
|
-
const isSupported = _reactNative.Platform.OS === 'android';
|
|
40
46
|
|
|
41
47
|
/**
|
|
42
48
|
* A provider component that enables the use of background filters in your app.
|
|
@@ -44,6 +50,7 @@ const isSupported = _reactNative.Platform.OS === 'android';
|
|
|
44
50
|
* Please make sure you have the `@stream-io/video-filters-react-native` package installed
|
|
45
51
|
* in your project before using this component.
|
|
46
52
|
*/
|
|
53
|
+
exports.useBackgroundFilters = useBackgroundFilters;
|
|
47
54
|
const BackgroundFiltersProvider = ({
|
|
48
55
|
children
|
|
49
56
|
}) => {
|
|
@@ -54,14 +61,15 @@ const BackgroundFiltersProvider = ({
|
|
|
54
61
|
const isBlurRegisteredRef = (0, _react.useRef)(false);
|
|
55
62
|
const registeredImageFiltersSetRef = (0, _react.useRef)(new Set());
|
|
56
63
|
const [currentBackgroundFilter, setCurrentBackgroundFilter] = (0, _react.useState)();
|
|
57
|
-
const applyBackgroundBlurFilter = (0, _react.useCallback)(blurIntensity => {
|
|
64
|
+
const applyBackgroundBlurFilter = (0, _react.useCallback)(async blurIntensity => {
|
|
58
65
|
var _call$camera$state$me;
|
|
59
66
|
if (!isSupported) {
|
|
60
67
|
return;
|
|
61
68
|
}
|
|
62
69
|
if (!isBlurRegisteredRef.current) {
|
|
63
70
|
var _videoFiltersModule;
|
|
64
|
-
(_videoFiltersModule = videoFiltersModule) === null || _videoFiltersModule === void 0
|
|
71
|
+
await ((_videoFiltersModule = videoFiltersModule) === null || _videoFiltersModule === void 0 ? void 0 : _videoFiltersModule.registerBackgroundBlurVideoFilters());
|
|
72
|
+
isBlurRegisteredRef.current = true;
|
|
65
73
|
}
|
|
66
74
|
let filterName = 'BackgroundBlurMedium';
|
|
67
75
|
if (blurIntensity === 'heavy') {
|
|
@@ -76,7 +84,7 @@ const BackgroundFiltersProvider = ({
|
|
|
76
84
|
blur: blurIntensity
|
|
77
85
|
});
|
|
78
86
|
}, [call]);
|
|
79
|
-
const applyBackgroundImageFilter = (0, _react.useCallback)(imageSource => {
|
|
87
|
+
const applyBackgroundImageFilter = (0, _react.useCallback)(async imageSource => {
|
|
80
88
|
var _call$camera$state$me2;
|
|
81
89
|
if (!isSupported) {
|
|
82
90
|
return;
|
|
@@ -86,7 +94,7 @@ const BackgroundFiltersProvider = ({
|
|
|
86
94
|
const registeredImageFiltersSet = registeredImageFiltersSetRef.current;
|
|
87
95
|
if (!registeredImageFiltersSet.has(imageUri)) {
|
|
88
96
|
var _videoFiltersModule2;
|
|
89
|
-
(_videoFiltersModule2 = videoFiltersModule) === null || _videoFiltersModule2 === void 0
|
|
97
|
+
await ((_videoFiltersModule2 = videoFiltersModule) === null || _videoFiltersModule2 === void 0 ? void 0 : _videoFiltersModule2.registerVirtualBackgroundFilter(imageSource));
|
|
90
98
|
registeredImageFiltersSetRef.current.add(imageUri);
|
|
91
99
|
}
|
|
92
100
|
const filterName = `VirtualBackground-${imageUri}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_videoReactBindings","_reactNative","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","videoFiltersModule","_e","resolveAssetSourceFunc","Image","resolveAssetSource","BackgroundFiltersContext","createContext","undefined","useBackgroundFilters","context","useContext","Error","exports","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_videoReactBindings","_reactNative","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","isSupported","Platform","OS","currentVersion","parseInt","Version","videoFiltersModule","_e","resolveAssetSourceFunc","Image","resolveAssetSource","BackgroundFiltersContext","createContext","undefined","useBackgroundFilters","context","useContext","Error","exports","BackgroundFiltersProvider","children","useCall","isBlurRegisteredRef","useRef","registeredImageFiltersSetRef","Set","currentBackgroundFilter","setCurrentBackgroundFilter","useState","applyBackgroundBlurFilter","useCallback","blurIntensity","_call$camera$state$me","current","_videoFiltersModule","registerBackgroundBlurVideoFilters","filterName","camera","state","mediaStream","getVideoTracks","forEach","track","_setVideoEffect","blur","applyBackgroundImageFilter","imageSource","_call$camera$state$me2","source","imageUri","uri","registeredImageFiltersSet","_videoFiltersModule2","registerVirtualBackgroundFilter","add","image","disableAllFilters","_call$camera$state$me3","value","useMemo","createElement","Provider"],"sourceRoot":"../../../src","sources":["contexts/BackgroundFilters.tsx"],"mappings":"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"}
|
package/dist/commonjs/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["version","exports"],"sourceRoot":"../../src","sources":["version.ts"],"mappings":";;;;;;AAAO,MAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG,
|
|
1
|
+
{"version":3,"names":["version","exports"],"sourceRoot":"../../src","sources":["version.ts"],"mappings":";;;;;;AAAO,MAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG,OAAO"}
|
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
import React, { createContext, useCallback, useContext, useMemo, useRef, useState } from 'react';
|
|
2
2
|
import { useCall } from '@stream-io/video-react-bindings';
|
|
3
3
|
import { Platform } from 'react-native';
|
|
4
|
+
const isSupported = function () {
|
|
5
|
+
if (Platform.OS === 'ios') {
|
|
6
|
+
// only supported on ios 15 and above
|
|
7
|
+
const currentVersion = parseInt(Platform.Version, 10);
|
|
8
|
+
return currentVersion >= 15;
|
|
9
|
+
}
|
|
10
|
+
return Platform.OS === 'android';
|
|
11
|
+
}();
|
|
4
12
|
let videoFiltersModule;
|
|
5
13
|
try {
|
|
6
14
|
videoFiltersModule = require('@stream-io/video-filters-react-native');
|
|
@@ -28,7 +36,6 @@ export const useBackgroundFilters = () => {
|
|
|
28
36
|
}
|
|
29
37
|
return context;
|
|
30
38
|
};
|
|
31
|
-
const isSupported = Platform.OS === 'android';
|
|
32
39
|
|
|
33
40
|
/**
|
|
34
41
|
* A provider component that enables the use of background filters in your app.
|
|
@@ -46,14 +53,15 @@ export const BackgroundFiltersProvider = ({
|
|
|
46
53
|
const isBlurRegisteredRef = useRef(false);
|
|
47
54
|
const registeredImageFiltersSetRef = useRef(new Set());
|
|
48
55
|
const [currentBackgroundFilter, setCurrentBackgroundFilter] = useState();
|
|
49
|
-
const applyBackgroundBlurFilter = useCallback(blurIntensity => {
|
|
56
|
+
const applyBackgroundBlurFilter = useCallback(async blurIntensity => {
|
|
50
57
|
var _call$camera$state$me;
|
|
51
58
|
if (!isSupported) {
|
|
52
59
|
return;
|
|
53
60
|
}
|
|
54
61
|
if (!isBlurRegisteredRef.current) {
|
|
55
62
|
var _videoFiltersModule;
|
|
56
|
-
(_videoFiltersModule = videoFiltersModule) === null || _videoFiltersModule === void 0
|
|
63
|
+
await ((_videoFiltersModule = videoFiltersModule) === null || _videoFiltersModule === void 0 ? void 0 : _videoFiltersModule.registerBackgroundBlurVideoFilters());
|
|
64
|
+
isBlurRegisteredRef.current = true;
|
|
57
65
|
}
|
|
58
66
|
let filterName = 'BackgroundBlurMedium';
|
|
59
67
|
if (blurIntensity === 'heavy') {
|
|
@@ -68,7 +76,7 @@ export const BackgroundFiltersProvider = ({
|
|
|
68
76
|
blur: blurIntensity
|
|
69
77
|
});
|
|
70
78
|
}, [call]);
|
|
71
|
-
const applyBackgroundImageFilter = useCallback(imageSource => {
|
|
79
|
+
const applyBackgroundImageFilter = useCallback(async imageSource => {
|
|
72
80
|
var _call$camera$state$me2;
|
|
73
81
|
if (!isSupported) {
|
|
74
82
|
return;
|
|
@@ -78,7 +86,7 @@ export const BackgroundFiltersProvider = ({
|
|
|
78
86
|
const registeredImageFiltersSet = registeredImageFiltersSetRef.current;
|
|
79
87
|
if (!registeredImageFiltersSet.has(imageUri)) {
|
|
80
88
|
var _videoFiltersModule2;
|
|
81
|
-
(_videoFiltersModule2 = videoFiltersModule) === null || _videoFiltersModule2 === void 0
|
|
89
|
+
await ((_videoFiltersModule2 = videoFiltersModule) === null || _videoFiltersModule2 === void 0 ? void 0 : _videoFiltersModule2.registerVirtualBackgroundFilter(imageSource));
|
|
82
90
|
registeredImageFiltersSetRef.current.add(imageUri);
|
|
83
91
|
}
|
|
84
92
|
const filterName = `VirtualBackground-${imageUri}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","createContext","useCallback","useContext","useMemo","useRef","useState","useCall","Platform","videoFiltersModule","require","_e","Image","resolveAssetSourceFunc","resolveAssetSource","BackgroundFiltersContext","undefined","useBackgroundFilters","context","Error","
|
|
1
|
+
{"version":3,"names":["React","createContext","useCallback","useContext","useMemo","useRef","useState","useCall","Platform","isSupported","OS","currentVersion","parseInt","Version","videoFiltersModule","require","_e","Image","resolveAssetSourceFunc","resolveAssetSource","BackgroundFiltersContext","undefined","useBackgroundFilters","context","Error","BackgroundFiltersProvider","children","call","isBlurRegisteredRef","registeredImageFiltersSetRef","Set","currentBackgroundFilter","setCurrentBackgroundFilter","applyBackgroundBlurFilter","blurIntensity","_call$camera$state$me","current","_videoFiltersModule","registerBackgroundBlurVideoFilters","filterName","camera","state","mediaStream","getVideoTracks","forEach","track","_setVideoEffect","blur","applyBackgroundImageFilter","imageSource","_call$camera$state$me2","source","imageUri","uri","registeredImageFiltersSet","has","_videoFiltersModule2","registerVirtualBackgroundFilter","add","image","disableAllFilters","_call$camera$state$me3","value","createElement","Provider"],"sourceRoot":"../../../src","sources":["contexts/BackgroundFilters.tsx"],"mappings":"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"}
|
package/dist/module/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const version = '0.
|
|
1
|
+
export const version = '0.8.1';
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["version"],"sourceRoot":"../../src","sources":["version.ts"],"mappings":"AAAA,OAAO,MAAMA,OAAO,GAAG,
|
|
1
|
+
{"version":3,"names":["version"],"sourceRoot":"../../src","sources":["version.ts"],"mappings":"AAAA,OAAO,MAAMA,OAAO,GAAG,OAAO"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackgroundFilters.d.ts","sourceRoot":"","sources":["../../../src/contexts/BackgroundFilters.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,iBAAiB,EAOlB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"BackgroundFilters.d.ts","sourceRoot":"","sources":["../../../src/contexts/BackgroundFilters.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,iBAAiB,EAOlB,MAAM,OAAO,CAAC;AAuBf,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,QAAA,MAAM,sBAAsB,iCAA2B,CAAC;AAGxD,KAAK,eAAe,GAAG,OAAO,CAC5B,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC,CAAC,CAAC,EAC5C,KAAK,CAAC,GAAG,CAAC,CACX,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEzD,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,OAAO,CAAC;AAEpD,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC;;OAEG;IACH,uBAAuB,EAAE,uBAAuB,GAAG,SAAS,CAAC;IAC7D;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,0BAA0B,EAAE,CAAC,WAAW,EAAE,eAAe,KAAK,IAAI,CAAC;IACnE;;;;OAIG;IACH,yBAAyB,EAAE,CAAC,aAAa,EAAE,aAAa,KAAK,IAAI,CAAC;IAClE;;OAEG;IACH,iBAAiB,EAAE,MAAM,IAAI,CAAC;CAC/B,CAAC;AASF;;GAEG;AACH,eAAO,MAAM,oBAAoB,4BAahC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,iBAAkB,iBAAiB,sBA8FxE,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "0.
|
|
1
|
+
export declare const version = "0.8.1";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,UAAU,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stream-io/video-react-native-sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.1",
|
|
4
4
|
"packageManager": "yarn@3.2.4",
|
|
5
5
|
"main": "dist/commonjs/index.js",
|
|
6
6
|
"module": "dist/module/index.js",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"@react-native-community/push-notification-ios": ">=1.11.0",
|
|
60
60
|
"@react-native-firebase/app": ">=17.5.0",
|
|
61
61
|
"@react-native-firebase/messaging": ">=17.5.0",
|
|
62
|
-
"@stream-io/react-native-webrtc": "^118.0
|
|
62
|
+
"@stream-io/react-native-webrtc": "^118.1.0",
|
|
63
63
|
"@stream-io/video-filters-react-native": ">=0.1.0",
|
|
64
64
|
"expo": ">=47.0.0",
|
|
65
65
|
"expo-build-properties": "*",
|
|
@@ -121,8 +121,8 @@
|
|
|
121
121
|
"@react-native-firebase/app": "17.5.0",
|
|
122
122
|
"@react-native-firebase/messaging": "17.5.0",
|
|
123
123
|
"@react-native/eslint-config": "^0.74.83",
|
|
124
|
-
"@stream-io/react-native-webrtc": "118.0
|
|
125
|
-
"@stream-io/video-filters-react-native": "^0.
|
|
124
|
+
"@stream-io/react-native-webrtc": "118.1.0",
|
|
125
|
+
"@stream-io/video-filters-react-native": "^0.2.1",
|
|
126
126
|
"@testing-library/jest-native": "^5.4.2",
|
|
127
127
|
"@testing-library/react-native": "^12.1.2",
|
|
128
128
|
"@tsconfig/node14": "14.1.0",
|
|
@@ -11,6 +11,15 @@ import { MediaStream } from '@stream-io/react-native-webrtc';
|
|
|
11
11
|
import { useCall } from '@stream-io/video-react-bindings';
|
|
12
12
|
import { Platform } from 'react-native';
|
|
13
13
|
|
|
14
|
+
const isSupported = (function () {
|
|
15
|
+
if (Platform.OS === 'ios') {
|
|
16
|
+
// only supported on ios 15 and above
|
|
17
|
+
const currentVersion = parseInt(Platform.Version, 10);
|
|
18
|
+
return currentVersion >= 15;
|
|
19
|
+
}
|
|
20
|
+
return Platform.OS === 'android';
|
|
21
|
+
})();
|
|
22
|
+
|
|
14
23
|
type VideoFiltersModuleType =
|
|
15
24
|
typeof import('@stream-io/video-filters-react-native');
|
|
16
25
|
|
|
@@ -91,8 +100,6 @@ export const useBackgroundFilters = () => {
|
|
|
91
100
|
return context;
|
|
92
101
|
};
|
|
93
102
|
|
|
94
|
-
const isSupported = Platform.OS === 'android';
|
|
95
|
-
|
|
96
103
|
/**
|
|
97
104
|
* A provider component that enables the use of background filters in your app.
|
|
98
105
|
*
|
|
@@ -112,12 +119,13 @@ export const BackgroundFiltersProvider = ({ children }: PropsWithChildren) => {
|
|
|
112
119
|
useState<CurrentBackgroundFilter>();
|
|
113
120
|
|
|
114
121
|
const applyBackgroundBlurFilter = useCallback(
|
|
115
|
-
(blurIntensity: BlurIntensity) => {
|
|
122
|
+
async (blurIntensity: BlurIntensity) => {
|
|
116
123
|
if (!isSupported) {
|
|
117
124
|
return;
|
|
118
125
|
}
|
|
119
126
|
if (!isBlurRegisteredRef.current) {
|
|
120
|
-
videoFiltersModule?.registerBackgroundBlurVideoFilters();
|
|
127
|
+
await videoFiltersModule?.registerBackgroundBlurVideoFilters();
|
|
128
|
+
isBlurRegisteredRef.current = true;
|
|
121
129
|
}
|
|
122
130
|
let filterName = 'BackgroundBlurMedium';
|
|
123
131
|
if (blurIntensity === 'heavy') {
|
|
@@ -136,7 +144,7 @@ export const BackgroundFiltersProvider = ({ children }: PropsWithChildren) => {
|
|
|
136
144
|
);
|
|
137
145
|
|
|
138
146
|
const applyBackgroundImageFilter = useCallback(
|
|
139
|
-
(imageSource: ImageSourceType) => {
|
|
147
|
+
async (imageSource: ImageSourceType) => {
|
|
140
148
|
if (!isSupported) {
|
|
141
149
|
return;
|
|
142
150
|
}
|
|
@@ -144,7 +152,7 @@ export const BackgroundFiltersProvider = ({ children }: PropsWithChildren) => {
|
|
|
144
152
|
const imageUri = source.uri;
|
|
145
153
|
const registeredImageFiltersSet = registeredImageFiltersSetRef.current;
|
|
146
154
|
if (!registeredImageFiltersSet.has(imageUri)) {
|
|
147
|
-
videoFiltersModule?.registerVirtualBackgroundFilter(
|
|
155
|
+
await videoFiltersModule?.registerVirtualBackgroundFilter(imageSource);
|
|
148
156
|
registeredImageFiltersSetRef.current.add(imageUri);
|
|
149
157
|
}
|
|
150
158
|
const filterName = `VirtualBackground-${imageUri}`;
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = '0.
|
|
1
|
+
export const version = '0.8.1';
|