@sbaiahmed1/react-native-blur 0.3.0-beta.0 → 3.0.0-beta.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/README.md +1 -0
- package/android/src/main/java/com/sbaiahmed1/reactnativeblur/ReactNativeBlurView.kt +8 -0
- package/android/src/main/java/com/sbaiahmed1/reactnativeblur/ReactNativeBlurViewManager.kt +5 -0
- package/ios/ReactNativeBlurView.mm +8 -0
- package/ios/ReactNativeBlurView.swift +15 -3
- package/ios/ReactNativeBlurViewManager.m +6 -0
- package/lib/module/BlurView.js +3 -0
- package/lib/module/BlurView.js.map +1 -1
- package/lib/module/ReactNativeBlurViewNativeComponent.ts +1 -0
- package/lib/typescript/src/BlurView.d.ts +6 -0
- package/lib/typescript/src/BlurView.d.ts.map +1 -1
- package/lib/typescript/src/ReactNativeBlurViewNativeComponent.d.ts +1 -0
- package/lib/typescript/src/ReactNativeBlurViewNativeComponent.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/BlurView.tsx +10 -0
- package/src/ReactNativeBlurViewNativeComponent.ts +1 -0
package/README.md
CHANGED
|
@@ -343,6 +343,7 @@ All props are optional and have sensible defaults.
|
|
|
343
343
|
| `glassType` | `GlassType` | `'clear'` | The type of glass effect |
|
|
344
344
|
| `glassTintColor` | `string` | `'clear'` | The tint color for glass effect |
|
|
345
345
|
| `glassOpacity` | `number` | `1.0` | The opacity of glass effect (0-1) |
|
|
346
|
+
| `isInteractive` | `boolean` | `true` | (iOS only) Controls whether the liquid glass effect is interactive. When `false`, the liquid glass effect will not react to touch or movement. Only applicable when `type` is `'liquidGlass'` and iOS 26+. |
|
|
346
347
|
| `reducedTransparencyFallbackColor` | `string` | `'#FFFFFF'` | Fallback color when reduced transparency is enabled |
|
|
347
348
|
| `style` | `ViewStyle` | `undefined` | Style object for the blur view |
|
|
348
349
|
| `children` | `ReactNode` | `undefined` | Child components to render inside the blur view |
|
|
@@ -433,6 +433,14 @@ class ReactNativeBlurView : BlurView {
|
|
|
433
433
|
logDebug("setType: $type")
|
|
434
434
|
updateViewType()
|
|
435
435
|
}
|
|
436
|
+
|
|
437
|
+
/**
|
|
438
|
+
* Set the view type (blur or liquidGlass).
|
|
439
|
+
* @param type The view type string
|
|
440
|
+
*/
|
|
441
|
+
fun setIsInteractive(isInteractive: Boolean) {
|
|
442
|
+
logDebug("setType: $isInteractive")
|
|
443
|
+
}
|
|
436
444
|
|
|
437
445
|
/**
|
|
438
446
|
* Set the glass type for liquid glass effect.
|
|
@@ -63,6 +63,11 @@ class ReactNativeBlurViewManager : ViewGroupManager<ReactNativeBlurView>(),
|
|
|
63
63
|
override fun setGlassType(view: ReactNativeBlurView?, glassType: String?) {
|
|
64
64
|
view?.setGlassType(glassType ?: "clear")
|
|
65
65
|
}
|
|
66
|
+
|
|
67
|
+
@ReactProp(name = "isInteractive")
|
|
68
|
+
override fun setIsInteractive(view: ReactNativeBlurView?, isInteractive: Boolean) {
|
|
69
|
+
view?.setIsInteractive(isInteractive)
|
|
70
|
+
}
|
|
66
71
|
|
|
67
72
|
companion object {
|
|
68
73
|
const val NAME = "ReactNativeBlurView"
|
|
@@ -149,6 +149,9 @@ using namespace facebook::react;
|
|
|
149
149
|
[ReactNativeBlurViewHelper updateBlurView:_advancedBlurView withBlurType:blurTypeString];
|
|
150
150
|
}
|
|
151
151
|
|
|
152
|
+
// Set initial isInteractive from default props
|
|
153
|
+
[ReactNativeBlurViewHelper updateBlurView:_advancedBlurView withIsInteractive:bvProps.isInteractive];
|
|
154
|
+
|
|
152
155
|
// Set initial glassType from default props
|
|
153
156
|
if (bvProps.glassType != facebook::react::ReactNativeBlurViewGlassType::Clear) {
|
|
154
157
|
NSString *glassTypeString = [[NSString alloc] initWithUTF8String:toString(bvProps.glassType).c_str()];
|
|
@@ -217,6 +220,11 @@ using namespace facebook::react;
|
|
|
217
220
|
[ReactNativeBlurViewHelper updateBlurView:_advancedBlurView withType:blurTypeString];
|
|
218
221
|
}
|
|
219
222
|
|
|
223
|
+
// Update isInteractive if it has changed
|
|
224
|
+
if (oldViewProps.isInteractive != newViewProps.isInteractive) {
|
|
225
|
+
[ReactNativeBlurViewHelper updateBlurView:_advancedBlurView withIsInteractive:newViewProps.isInteractive];
|
|
226
|
+
}
|
|
227
|
+
|
|
220
228
|
// Update reducedTransparencyFallbackColor if it has changed
|
|
221
229
|
if (oldViewProps.reducedTransparencyFallbackColor != newViewProps.reducedTransparencyFallbackColor) {
|
|
222
230
|
if (!newViewProps.reducedTransparencyFallbackColor.empty()) {
|
|
@@ -130,6 +130,7 @@ private struct BasicColoredView: View {
|
|
|
130
130
|
var type: String
|
|
131
131
|
var glassType: String
|
|
132
132
|
var reducedTransparencyFallbackColor: UIColor
|
|
133
|
+
var isInteractive: Bool
|
|
133
134
|
|
|
134
135
|
var body: some View {
|
|
135
136
|
let blurIntensity = mapBlurAmountToIntensity(blurAmount)
|
|
@@ -150,7 +151,7 @@ private struct BasicColoredView: View {
|
|
|
150
151
|
baseGlassEffect
|
|
151
152
|
.tint(Color(glassTintColor)
|
|
152
153
|
.opacity(glassOpacity))
|
|
153
|
-
.interactive(
|
|
154
|
+
.interactive(isInteractive)
|
|
154
155
|
, in: .rect)
|
|
155
156
|
|
|
156
157
|
} else {
|
|
@@ -221,6 +222,12 @@ private struct BasicColoredView: View {
|
|
|
221
222
|
}
|
|
222
223
|
}
|
|
223
224
|
|
|
225
|
+
@objc public var isInteractive: Bool = true {
|
|
226
|
+
didSet {
|
|
227
|
+
updateView()
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
|
|
224
231
|
public override init(frame: CGRect) {
|
|
225
232
|
super.init(frame: frame)
|
|
226
233
|
setupHostingController()
|
|
@@ -233,7 +240,7 @@ private struct BasicColoredView: View {
|
|
|
233
240
|
|
|
234
241
|
private func setupHostingController() {
|
|
235
242
|
let blurStyle = blurStyleFromString(blurTypeString)
|
|
236
|
-
let swiftUIView = BasicColoredView(glassTintColor: glassTintColor, glassOpacity: glassOpacity, blurAmount: blurAmount, blurStyle: blurStyle, type: type, glassType: glassType, reducedTransparencyFallbackColor: reducedTransparencyFallbackColor)
|
|
243
|
+
let swiftUIView = BasicColoredView(glassTintColor: glassTintColor, glassOpacity: glassOpacity, blurAmount: blurAmount, blurStyle: blurStyle, type: type, glassType: glassType, reducedTransparencyFallbackColor: reducedTransparencyFallbackColor, isInteractive: isInteractive)
|
|
237
244
|
let hosting = UIHostingController(rootView: swiftUIView)
|
|
238
245
|
|
|
239
246
|
hosting.view.backgroundColor = .clear
|
|
@@ -252,7 +259,7 @@ private struct BasicColoredView: View {
|
|
|
252
259
|
|
|
253
260
|
private func updateView() {
|
|
254
261
|
let blurStyle = blurStyleFromString(blurTypeString)
|
|
255
|
-
let newSwiftUIView = BasicColoredView(glassTintColor: glassTintColor, glassOpacity: glassOpacity, blurAmount: blurAmount, blurStyle: blurStyle, type:type, glassType: glassType, reducedTransparencyFallbackColor: reducedTransparencyFallbackColor)
|
|
262
|
+
let newSwiftUIView = BasicColoredView(glassTintColor: glassTintColor, glassOpacity: glassOpacity, blurAmount: blurAmount, blurStyle: blurStyle, type:type, glassType: glassType, reducedTransparencyFallbackColor: reducedTransparencyFallbackColor, isInteractive: isInteractive)
|
|
256
263
|
hostingController?.rootView = newSwiftUIView
|
|
257
264
|
}
|
|
258
265
|
}
|
|
@@ -296,6 +303,11 @@ private struct BasicColoredView: View {
|
|
|
296
303
|
blurView.type = type
|
|
297
304
|
}
|
|
298
305
|
|
|
306
|
+
/// Updates the blur view with a new blur style.
|
|
307
|
+
@objc public static func updateBlurView(_ blurView: AdvancedBlurView, withIsInteractive isInteractive: Bool) {
|
|
308
|
+
blurView.isInteractive = isInteractive
|
|
309
|
+
}
|
|
310
|
+
|
|
299
311
|
/// Updates the blur view with a new reduced transparency fallback color.
|
|
300
312
|
@objc public static func updateBlurView(_ blurView: AdvancedBlurView, withReducedTransparencyFallbackColor fallbackColor: UIColor) {
|
|
301
313
|
blurView.reducedTransparencyFallbackColor = fallbackColor
|
|
@@ -56,6 +56,12 @@ RCT_CUSTOM_VIEW_PROPERTY(type, NSString, AdvancedBlurView)
|
|
|
56
56
|
[ReactNativeBlurViewHelper updateBlurView:view withType:type];
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
+
RCT_CUSTOM_VIEW_PROPERTY(isInteractive, NSNumber, AdvancedBlurView)
|
|
60
|
+
{
|
|
61
|
+
BOOL isInteractive = json ? [RCTConvert BOOL:json] : YES;
|
|
62
|
+
[ReactNativeBlurViewHelper updateBlurView:view withIsInteractive:isInteractive];
|
|
63
|
+
}
|
|
64
|
+
|
|
59
65
|
RCT_CUSTOM_VIEW_PROPERTY(reducedTransparencyFallbackColor, NSString, AdvancedBlurView)
|
|
60
66
|
{
|
|
61
67
|
NSString *colorString = json ? [RCTConvert NSString:json] : @"#FFFFFF";
|
package/lib/module/BlurView.js
CHANGED
|
@@ -36,6 +36,7 @@ export const BlurView = ({
|
|
|
36
36
|
glassType = 'clear',
|
|
37
37
|
glassTintColor = 'clear',
|
|
38
38
|
glassOpacity = 1.0,
|
|
39
|
+
isInteractive = true,
|
|
39
40
|
...props
|
|
40
41
|
}) => {
|
|
41
42
|
// If no children, render the blur view directly (for background use)
|
|
@@ -49,6 +50,7 @@ export const BlurView = ({
|
|
|
49
50
|
type: type,
|
|
50
51
|
reducedTransparencyFallbackColor: reducedTransparencyFallbackColor,
|
|
51
52
|
style: style,
|
|
53
|
+
isInteractive: isInteractive,
|
|
52
54
|
...props
|
|
53
55
|
});
|
|
54
56
|
}
|
|
@@ -66,6 +68,7 @@ export const BlurView = ({
|
|
|
66
68
|
glassTintColor: glassTintColor,
|
|
67
69
|
glassOpacity: glassOpacity,
|
|
68
70
|
type: type,
|
|
71
|
+
isInteractive: isInteractive,
|
|
69
72
|
reducedTransparencyFallbackColor: reducedTransparencyFallbackColor,
|
|
70
73
|
style: {
|
|
71
74
|
position: 'absolute',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","ReactNativeBlurView","jsx","_jsx","jsxs","_jsxs","BlurView","blurType","blurAmount","reducedTransparencyFallbackColor","style","children","type","glassType","glassTintColor","glassOpacity","props","Children","count","position","overflow","top","left","right","bottom","zIndex"],"sourceRoot":"../../src","sources":["BlurView.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AAEnC,OAAOC,mBAAmB,MAEnB,sCAAsC;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;
|
|
1
|
+
{"version":3,"names":["React","View","ReactNativeBlurView","jsx","_jsx","jsxs","_jsxs","BlurView","blurType","blurAmount","reducedTransparencyFallbackColor","style","children","type","glassType","glassTintColor","glassOpacity","isInteractive","props","Children","count","position","overflow","top","left","right","bottom","zIndex"],"sourceRoot":"../../src","sources":["BlurView.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,cAAc;AAEnC,OAAOC,mBAAmB,MAEnB,sCAAsC;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAwE9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,QAAiC,GAAGA,CAAC;EAChDC,QAAQ,GAAG,QAAQ;EACnBC,UAAU,GAAG,EAAE;EACfC,gCAAgC,GAAG,SAAS;EAC5CC,KAAK;EACLC,QAAQ;EACRC,IAAI,GAAG,MAAM;EACbC,SAAS,GAAG,OAAO;EACnBC,cAAc,GAAG,OAAO;EACxBC,YAAY,GAAG,GAAG;EAClBC,aAAa,GAAG,IAAI;EACpB,GAAGC;AACL,CAAC,KAAK;EACJ;EACA,IAAIlB,KAAK,CAACmB,QAAQ,CAACC,KAAK,CAACR,QAAQ,CAAC,KAAK,CAAC,EAAE;IACxC,oBACER,IAAA,CAACF,mBAAmB;MAClBM,QAAQ,EAAEA,QAAS;MACnBC,UAAU,EAAEA,UAAW;MACvBK,SAAS,EAAEA,SAAU;MACrBC,cAAc,EAAEA,cAAe;MAC/BC,YAAY,EAAEA,YAAa;MAC3BH,IAAI,EAAEA,IAAK;MACXH,gCAAgC,EAAEA,gCAAiC;MACnEC,KAAK,EAAEA,KAAM;MACbM,aAAa,EAAEA,aAAc;MAAA,GACzBC;IAAK,CACV,CAAC;EAEN;;EAEA;EACA,oBACEZ,KAAA,CAACL,IAAI;IAACU,KAAK,EAAE,CAAC;MAAEU,QAAQ,EAAE,UAAU;MAAEC,QAAQ,EAAE;IAAS,CAAC,EAAEX,KAAK,CAAE;IAAAC,QAAA,gBAEjER,IAAA,CAACF,mBAAmB;MAClBM,QAAQ,EAAEA,QAAS;MACnBC,UAAU,EAAEA,UAAW;MACvBK,SAAS,EAAEA,SAAU;MACrBC,cAAc,EAAEA,cAAe;MAC/BC,YAAY,EAAEA,YAAa;MAC3BH,IAAI,EAAEA,IAAK;MACXI,aAAa,EAAEA,aAAc;MAC7BP,gCAAgC,EAAEA,gCAAiC;MACnEC,KAAK,EAAE;QACLU,QAAQ,EAAE,UAAU;QACpBE,GAAG,EAAE,CAAC;QACNC,IAAI,EAAE,CAAC;QACPC,KAAK,EAAE,CAAC;QACRC,MAAM,EAAE;MACV,CAAE;MAAA,GACER;IAAK,CACV,CAAC,eAEFd,IAAA,CAACH,IAAI;MAACU,KAAK,EAAE;QAAEU,QAAQ,EAAE,UAAU;QAAEM,MAAM,EAAE;MAAE,CAAE;MAAAf,QAAA,EAAEA;IAAQ,CAAO,CAAC;EAAA,CAC/D,CAAC;AAEX,CAAC;AAED,eAAeL,QAAQ","ignoreList":[]}
|
|
@@ -28,6 +28,7 @@ interface NativeProps extends ViewProps {
|
|
|
28
28
|
blurType?: WithDefault<BlurType, 'xlight'>;
|
|
29
29
|
glassType?: WithDefault<GlassType, 'clear'>;
|
|
30
30
|
reducedTransparencyFallbackColor?: WithDefault<string, '#FFFFFF'>;
|
|
31
|
+
isInteractive?: WithDefault<boolean, true>;
|
|
31
32
|
}
|
|
32
33
|
|
|
33
34
|
export default codegenNativeComponent<NativeProps>('ReactNativeBlurView');
|
|
@@ -54,6 +54,12 @@ export interface BlurViewProps {
|
|
|
54
54
|
* @default 'blur'
|
|
55
55
|
*/
|
|
56
56
|
type?: 'blur' | 'liquidGlass';
|
|
57
|
+
/**
|
|
58
|
+
* Platform: iOS only
|
|
59
|
+
* Whether the blur view should be interactive
|
|
60
|
+
* @default true
|
|
61
|
+
*/
|
|
62
|
+
isInteractive?: boolean;
|
|
57
63
|
}
|
|
58
64
|
/**
|
|
59
65
|
* A cross-platform blur view component that provides native blur effects.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlurView.d.ts","sourceRoot":"","sources":["../../../src/BlurView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzD,OAA4B,EAC1B,KAAK,QAAQ,EACd,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAC;AAE3E,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,gCAAgC,CAAC,EAAE,MAAM,CAAC;IAE1C;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B;;;;OAIG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"BlurView.d.ts","sourceRoot":"","sources":["../../../src/BlurView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzD,OAA4B,EAC1B,KAAK,QAAQ,EACd,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAC;AAE3E,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,gCAAgC,CAAC,EAAE,MAAM,CAAC;IAE1C;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE3B;;;;OAIG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;IAE9B;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAyD5C,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
|
@@ -10,6 +10,7 @@ interface NativeProps extends ViewProps {
|
|
|
10
10
|
blurType?: WithDefault<BlurType, 'xlight'>;
|
|
11
11
|
glassType?: WithDefault<GlassType, 'clear'>;
|
|
12
12
|
reducedTransparencyFallbackColor?: WithDefault<string, '#FFFFFF'>;
|
|
13
|
+
isInteractive?: WithDefault<boolean, true>;
|
|
13
14
|
}
|
|
14
15
|
declare const _default: import("react-native/Libraries/Utilities/codegenNativeComponent").NativeComponentType<NativeProps>;
|
|
15
16
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactNativeBlurViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/ReactNativeBlurViewNativeComponent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EACV,WAAW,EACX,MAAM,EACP,MAAM,2CAA2C,CAAC;AAEnD,MAAM,MAAM,QAAQ,GAChB,QAAQ,GACR,OAAO,GACP,MAAM,GACN,WAAW,GACX,SAAS,GACT,WAAW,GACX,yBAAyB,GACzB,oBAAoB,GACpB,gBAAgB,GAChB,qBAAqB,GACrB,sBAAsB,CAAC;AAE3B,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AAE5C,UAAU,WAAY,SAAQ,SAAS;IACrC,cAAc,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACxC,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACvC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,aAAa,EAAE,MAAM,CAAC,CAAC;IACnD,QAAQ,CAAC,EAAE,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC3C,SAAS,CAAC,EAAE,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5C,gCAAgC,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ReactNativeBlurViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/ReactNativeBlurViewNativeComponent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EACV,WAAW,EACX,MAAM,EACP,MAAM,2CAA2C,CAAC;AAEnD,MAAM,MAAM,QAAQ,GAChB,QAAQ,GACR,OAAO,GACP,MAAM,GACN,WAAW,GACX,SAAS,GACT,WAAW,GACX,yBAAyB,GACzB,oBAAoB,GACpB,gBAAgB,GAChB,qBAAqB,GACrB,sBAAsB,CAAC;AAE3B,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AAE5C,UAAU,WAAY,SAAQ,SAAS;IACrC,cAAc,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACxC,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACvC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,aAAa,EAAE,MAAM,CAAC,CAAC;IACnD,QAAQ,CAAC,EAAE,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC3C,SAAS,CAAC,EAAE,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5C,gCAAgC,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAClE,aAAa,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;CAC5C;;AAED,wBAA0E"}
|
package/package.json
CHANGED
package/src/BlurView.tsx
CHANGED
|
@@ -66,6 +66,13 @@ export interface BlurViewProps {
|
|
|
66
66
|
* @default 'blur'
|
|
67
67
|
*/
|
|
68
68
|
type?: 'blur' | 'liquidGlass';
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Platform: iOS only
|
|
72
|
+
* Whether the blur view should be interactive
|
|
73
|
+
* @default true
|
|
74
|
+
*/
|
|
75
|
+
isInteractive?: boolean;
|
|
69
76
|
}
|
|
70
77
|
|
|
71
78
|
/**
|
|
@@ -100,6 +107,7 @@ export const BlurView: React.FC<BlurViewProps> = ({
|
|
|
100
107
|
glassType = 'clear',
|
|
101
108
|
glassTintColor = 'clear',
|
|
102
109
|
glassOpacity = 1.0,
|
|
110
|
+
isInteractive = true,
|
|
103
111
|
...props
|
|
104
112
|
}) => {
|
|
105
113
|
// If no children, render the blur view directly (for background use)
|
|
@@ -114,6 +122,7 @@ export const BlurView: React.FC<BlurViewProps> = ({
|
|
|
114
122
|
type={type}
|
|
115
123
|
reducedTransparencyFallbackColor={reducedTransparencyFallbackColor}
|
|
116
124
|
style={style}
|
|
125
|
+
isInteractive={isInteractive}
|
|
117
126
|
{...props}
|
|
118
127
|
/>
|
|
119
128
|
);
|
|
@@ -130,6 +139,7 @@ export const BlurView: React.FC<BlurViewProps> = ({
|
|
|
130
139
|
glassTintColor={glassTintColor}
|
|
131
140
|
glassOpacity={glassOpacity}
|
|
132
141
|
type={type}
|
|
142
|
+
isInteractive={isInteractive}
|
|
133
143
|
reducedTransparencyFallbackColor={reducedTransparencyFallbackColor}
|
|
134
144
|
style={{
|
|
135
145
|
position: 'absolute',
|
|
@@ -28,6 +28,7 @@ interface NativeProps extends ViewProps {
|
|
|
28
28
|
blurType?: WithDefault<BlurType, 'xlight'>;
|
|
29
29
|
glassType?: WithDefault<GlassType, 'clear'>;
|
|
30
30
|
reducedTransparencyFallbackColor?: WithDefault<string, '#FFFFFF'>;
|
|
31
|
+
isInteractive?: WithDefault<boolean, true>;
|
|
31
32
|
}
|
|
32
33
|
|
|
33
34
|
export default codegenNativeComponent<NativeProps>('ReactNativeBlurView');
|