@oxyhq/bloom 0.59.1 → 0.59.3

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 (68) hide show
  1. package/README.md +4 -3
  2. package/lib/commonjs/bottom-sheet/BottomSheetBase.js +38 -23
  3. package/lib/commonjs/bottom-sheet/BottomSheetBase.js.map +1 -1
  4. package/lib/commonjs/dialog/Dialog.js +2 -5
  5. package/lib/commonjs/dialog/Dialog.js.map +1 -1
  6. package/lib/commonjs/dialog/DialogBottomSheet.js +0 -4
  7. package/lib/commonjs/dialog/DialogBottomSheet.js.map +1 -1
  8. package/lib/commonjs/dialog/SheetShell.js +2 -2
  9. package/lib/commonjs/dialog/SheetShell.js.map +1 -1
  10. package/lib/commonjs/overlay/blur-target.js +53 -0
  11. package/lib/commonjs/overlay/blur-target.js.map +1 -0
  12. package/lib/commonjs/overlay/index.js +15 -5
  13. package/lib/commonjs/overlay/index.js.map +1 -1
  14. package/lib/commonjs/provider/index.js +4 -6
  15. package/lib/commonjs/provider/index.js.map +1 -1
  16. package/lib/commonjs/styles/radii.js +9 -0
  17. package/lib/commonjs/styles/radii.js.map +1 -0
  18. package/lib/module/bottom-sheet/BottomSheetBase.js +40 -25
  19. package/lib/module/bottom-sheet/BottomSheetBase.js.map +1 -1
  20. package/lib/module/dialog/Dialog.js +2 -5
  21. package/lib/module/dialog/Dialog.js.map +1 -1
  22. package/lib/module/dialog/DialogBottomSheet.js +1 -5
  23. package/lib/module/dialog/DialogBottomSheet.js.map +1 -1
  24. package/lib/module/dialog/SheetShell.js +2 -2
  25. package/lib/module/dialog/SheetShell.js.map +1 -1
  26. package/lib/module/overlay/blur-target.js +48 -0
  27. package/lib/module/overlay/blur-target.js.map +1 -0
  28. package/lib/module/overlay/index.js +14 -5
  29. package/lib/module/overlay/index.js.map +1 -1
  30. package/lib/module/provider/index.js +4 -6
  31. package/lib/module/provider/index.js.map +1 -1
  32. package/lib/module/styles/radii.js +5 -0
  33. package/lib/module/styles/radii.js.map +1 -0
  34. package/lib/typescript/commonjs/bottom-sheet/BottomSheetBase.d.ts +4 -5
  35. package/lib/typescript/commonjs/bottom-sheet/BottomSheetBase.d.ts.map +1 -1
  36. package/lib/typescript/commonjs/dialog/Dialog.d.ts.map +1 -1
  37. package/lib/typescript/commonjs/dialog/DialogBottomSheet.d.ts.map +1 -1
  38. package/lib/typescript/commonjs/dialog/SheetShell.d.ts.map +1 -1
  39. package/lib/typescript/commonjs/overlay/blur-target.d.ts +21 -0
  40. package/lib/typescript/commonjs/overlay/blur-target.d.ts.map +1 -0
  41. package/lib/typescript/commonjs/overlay/index.d.ts +7 -2
  42. package/lib/typescript/commonjs/overlay/index.d.ts.map +1 -1
  43. package/lib/typescript/commonjs/provider/index.d.ts.map +1 -1
  44. package/lib/typescript/commonjs/styles/radii.d.ts +3 -0
  45. package/lib/typescript/commonjs/styles/radii.d.ts.map +1 -0
  46. package/lib/typescript/module/bottom-sheet/BottomSheetBase.d.ts +4 -5
  47. package/lib/typescript/module/bottom-sheet/BottomSheetBase.d.ts.map +1 -1
  48. package/lib/typescript/module/dialog/Dialog.d.ts.map +1 -1
  49. package/lib/typescript/module/dialog/DialogBottomSheet.d.ts.map +1 -1
  50. package/lib/typescript/module/dialog/SheetShell.d.ts.map +1 -1
  51. package/lib/typescript/module/overlay/blur-target.d.ts +21 -0
  52. package/lib/typescript/module/overlay/blur-target.d.ts.map +1 -0
  53. package/lib/typescript/module/overlay/index.d.ts +7 -2
  54. package/lib/typescript/module/overlay/index.d.ts.map +1 -1
  55. package/lib/typescript/module/provider/index.d.ts.map +1 -1
  56. package/lib/typescript/module/styles/radii.d.ts +3 -0
  57. package/lib/typescript/module/styles/radii.d.ts.map +1 -0
  58. package/package.json +1 -1
  59. package/src/__tests__/BottomSheet.test.tsx +46 -1
  60. package/src/__tests__/BottomSheetGesture.test.tsx +21 -3
  61. package/src/bottom-sheet/BottomSheetBase.tsx +46 -29
  62. package/src/dialog/Dialog.tsx +2 -4
  63. package/src/dialog/DialogBottomSheet.tsx +0 -4
  64. package/src/dialog/SheetShell.tsx +2 -2
  65. package/src/overlay/blur-target.tsx +45 -0
  66. package/src/overlay/index.tsx +21 -5
  67. package/src/provider/index.tsx +14 -11
  68. package/src/styles/radii.ts +2 -0
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useImperativeHandle","useMemo","useRef","Pressable","StyleSheet","View","BottomSheet","Z_INDEX","useTheme","Context","jsx","_jsx","jsxs","_jsxs","SheetShell","control","label","header","onClose","contentStyle","children","theme","ref","closeCallbacks","callQueuedCallbacks","queued","current","cb","e","console","error","open","present","close","push","dismiss","handleDismiss","context","isWithinDialog","sheetStyle","maxWidth","backgroundColor","colors","background","borderRadius","onDismiss","enablePanDownToClose","detached","backdropOpacity","style","Provider","value","SheetHandle","onPress","accessibilityLabel","styles","body","handleContainer","accessibilityHint","hitSlop","top","bottom","left","right","handleBar","text","create","position","width","alignItems","zIndex","floating","height","alignSelf","opacity","paddingTop","paddingHorizontal","paddingBottom"],"sourceRoot":"../../../src","sources":["dialog/SheetShell.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,mBAAmB,EAAEC,OAAO,EAAEC,MAAM,QAAQ,OAAO;AAChF,SAASC,SAAS,EAAEC,UAAU,EAAEC,IAAI,QAAwC,cAAc;AAE1F,SAASC,WAAW,QAA6B,iBAAiB;AAClE,SAASC,OAAO,QAAQ,sBAAmB;AAC3C,SAASC,QAAQ,QAAQ,uBAAoB;AAC7C,SAASC,OAAO,QAAQ,cAAW;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAapC;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,UAAUA,CAAC;EACzBC,OAAO;EACPC,KAAK;EACLC,MAAM;EACNC,OAAO;EACPC,YAAY;EACZC;AACe,CAAC,EAAE;EAClB,MAAMC,KAAK,GAAGb,QAAQ,CAAC,CAAC;EACxB,MAAMc,GAAG,GAAGpB,MAAM,CAAiB,IAAI,CAAC;EACxC,MAAMqB,cAAc,GAAGrB,MAAM,CAAiB,EAAE,CAAC;EAEjD,MAAMsB,mBAAmB,GAAGzB,WAAW,CAAC,MAAM;IAC5C,MAAM0B,MAAM,GAAGF,cAAc,CAACG,OAAO;IACrCH,cAAc,CAACG,OAAO,GAAG,EAAE;IAC3B,KAAK,MAAMC,EAAE,IAAIF,MAAM,EAAE;MACvB,IAAI;QACFE,EAAE,CAAC,CAAC;MACN,CAAC,CAAC,OAAOC,CAAC,EAAE;QACV,IAAI,OAAOC,OAAO,KAAK,WAAW,IAAIA,OAAO,CAACC,KAAK,EAAE;UACnDD,OAAO,CAACC,KAAK,CAAC,kCAAkC,EAAEF,CAAC,CAAC;QACtD;MACF;IACF;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMG,IAAI,GAAGhC,WAAW,CAAC,MAAM;IAC7BuB,GAAG,CAACI,OAAO,EAAEM,OAAO,CAAC,CAAC;EACxB,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,KAAK,GAAGlC,WAAW,CAA+B4B,EAAE,IAAK;IAC7D,IAAI,OAAOA,EAAE,KAAK,UAAU,EAAE;MAC5BJ,cAAc,CAACG,OAAO,CAACQ,IAAI,CAACP,EAAE,CAAC;IACjC;IACAL,GAAG,CAACI,OAAO,EAAES,OAAO,CAAC,CAAC;EACxB,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,aAAa,GAAGrC,WAAW,CAAC,MAAM;IACtCyB,mBAAmB,CAAC,CAAC;IACrBN,OAAO,GAAG,CAAC;EACb,CAAC,EAAE,CAACM,mBAAmB,EAAEN,OAAO,CAAC,CAAC;EAElClB,mBAAmB,CAACe,OAAO,CAACO,GAAG,EAAE,OAAO;IAAES,IAAI;IAAEE;EAAM,CAAC,CAAC,EAAE,CAACF,IAAI,EAAEE,KAAK,CAAC,CAAC;EAExE,MAAMI,OAAO,GAAGpC,OAAO,CACrB,OAAO;IAAEgC,KAAK;IAAEK,cAAc,EAAE;EAAK,CAAC,CAAC,EACvC,CAACL,KAAK,CACR,CAAC;EAED,MAAMM,UAAU,GAAGtC,OAAO,CACxB,OAAO;IACLuC,QAAQ,EAAE,GAAG;IACbC,eAAe,EAAEpB,KAAK,CAACqB,MAAM,CAACC,UAAU;IACxCC,YAAY,EAAE;EAChB,CAAC,CAAC,EACF,CAACvB,KAAK,CAACqB,MAAM,CAACC,UAAU,CAC1B,CAAC;EAED,oBACEhC,IAAA,CAACL,WAAW;IACVgB,GAAG,EAAEA,GAAI;IACTuB,SAAS,EAAET,aAAc;IACzBU,oBAAoB;IACpBC,QAAQ;IACRC,eAAe,EAAE,GAAI;IACrBC,KAAK,EAAEV,UAAW;IAAAnB,QAAA,eAElBP,KAAA,CAACJ,OAAO,CAACyC,QAAQ;MAACC,KAAK,EAAEd,OAAQ;MAAAjB,QAAA,gBAC/BT,IAAA,CAACyC,WAAW;QAACC,OAAO,EAAEA,CAAA,KAAMpB,KAAK,CAAC;MAAE,CAAE,CAAC,EACtChB,MAAM,eACPN,IAAA,CAACN,IAAI;QACHiD,kBAAkB,EAAEtC,KAAM;QAC1BiC,KAAK,EAAE,CAACM,MAAM,CAACC,IAAI,EAAE;UAAEf,eAAe,EAAEpB,KAAK,CAACqB,MAAM,CAACC;QAAW,CAAC,EAAExB,YAAY,CAAE;QAAAC,QAAA,EAEhFA;MAAQ,CACL,CAAC;IAAA,CACS;EAAC,CACR,CAAC;AAElB;AAEA,SAASgC,WAAWA,CAAC;EAAEC;AAAiC,CAAC,EAAE;EACzD,MAAMhC,KAAK,GAAGb,QAAQ,CAAC,CAAC;EACxB,oBACEG,IAAA,CAACN,IAAI;IAAC4C,KAAK,EAAEM,MAAM,CAACE,eAAgB;IAAArC,QAAA,eAClCT,IAAA,CAACR,SAAS;MACRkD,OAAO,EAAEA,OAAQ;MACjBC,kBAAkB,EAAC,SAAS;MAC5BI,iBAAiB,EAAC,cAAc;MAChCC,OAAO,EAAE;QAAEC,GAAG,EAAE,EAAE;QAAEC,MAAM,EAAE,EAAE;QAAEC,IAAI,EAAE,EAAE;QAAEC,KAAK,EAAE;MAAG,CAAE;MAAA3C,QAAA,eAEtDT,IAAA,CAACN,IAAI;QAAC4C,KAAK,EAAE,CAACM,MAAM,CAACS,SAAS,EAAE;UAAEvB,eAAe,EAAEpB,KAAK,CAACqB,MAAM,CAACuB;QAAK,CAAC;MAAE,CAAE;IAAC,CAClE;EAAC,CACR,CAAC;AAEX;AAEA,MAAMV,MAAM,GAAGnD,UAAU,CAAC8D,MAAM,CAAC;EAC/BT,eAAe,EAAE;IACfU,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAE,MAAM;IACbC,UAAU,EAAE,QAAQ;IACpBC,MAAM,EAAE/D,OAAO,CAACgE,QAAQ;IACxBC,MAAM,EAAE;EACV,CAAC;EACDR,SAAS,EAAE;IACTJ,GAAG,EAAE,CAAC;IACNQ,KAAK,EAAE,EAAE;IACTI,MAAM,EAAE,CAAC;IACT5B,YAAY,EAAE,CAAC;IACf6B,SAAS,EAAE,QAAQ;IACnBC,OAAO,EAAE;EACX,CAAC;EACDlB,IAAI,EAAE;IACJmB,UAAU,EAAE,EAAE;IACdC,iBAAiB,EAAE,EAAE;IACrBC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useImperativeHandle","useMemo","useRef","Pressable","StyleSheet","View","BottomSheet","DETACHED_SHEET_RADIUS","Z_INDEX","useTheme","Context","jsx","_jsx","jsxs","_jsxs","SheetShell","control","label","header","onClose","contentStyle","children","theme","ref","closeCallbacks","callQueuedCallbacks","queued","current","cb","e","console","error","open","present","close","push","dismiss","handleDismiss","context","isWithinDialog","sheetStyle","maxWidth","backgroundColor","colors","background","borderRadius","onDismiss","enablePanDownToClose","detached","style","Provider","value","SheetHandle","onPress","accessibilityLabel","styles","body","handleContainer","accessibilityHint","hitSlop","top","bottom","left","right","handleBar","text","create","position","width","alignItems","zIndex","floating","height","alignSelf","opacity","paddingTop","paddingHorizontal","paddingBottom"],"sourceRoot":"../../../src","sources":["dialog/SheetShell.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ import { createContext, useContext, useRef } from 'react';
4
+ import { BlurTargetView } from 'expo-blur';
5
+ import { Platform, StyleSheet } from 'react-native';
6
+ import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
7
+ const BlurTargetContext = /*#__PURE__*/createContext(null);
8
+
9
+ /**
10
+ * Gives Android overlay blurs a real view to sample.
11
+ *
12
+ * Expo Blur 56+ intentionally disables the Dimezis implementation unless a
13
+ * `BlurTargetView` is supplied. Bloom's sheets render their backdrop inside a
14
+ * native `Modal`, so the target must live around the app content in the
15
+ * underlying window and travel to the modal through React context.
16
+ *
17
+ * Only modal backdrops consume this target. Ordinary in-tree BlurViews never
18
+ * target their own ancestor, avoiding the recursive capture/crash that causes.
19
+ */
20
+ export function BloomBlurTargetProvider({
21
+ children
22
+ }) {
23
+ const targetRef = useRef(null);
24
+ if (Platform.OS !== 'android') {
25
+ return /*#__PURE__*/_jsx(_Fragment, {
26
+ children: children
27
+ });
28
+ }
29
+ return /*#__PURE__*/_jsx(BlurTargetContext.Provider, {
30
+ value: targetRef,
31
+ children: /*#__PURE__*/_jsx(BlurTargetView, {
32
+ ref: targetRef,
33
+ style: styles.target,
34
+ children: children
35
+ })
36
+ });
37
+ }
38
+
39
+ /** Internal target used only by Bloom's native modal backdrops. */
40
+ export function useBloomBlurTarget() {
41
+ return useContext(BlurTargetContext);
42
+ }
43
+ const styles = StyleSheet.create({
44
+ target: {
45
+ flex: 1
46
+ }
47
+ });
48
+ //# sourceMappingURL=blur-target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","useContext","useRef","BlurTargetView","Platform","StyleSheet","Fragment","_Fragment","jsx","_jsx","BlurTargetContext","BloomBlurTargetProvider","children","targetRef","OS","Provider","value","ref","style","styles","target","useBloomBlurTarget","create","flex"],"sourceRoot":"../../../src","sources":["overlay/blur-target.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,EAAEC,MAAM,QAAwC,OAAO;AACzF,SAASC,cAAc,QAAQ,WAAW;AAC1C,SAASC,QAAQ,EAAEC,UAAU,QAAmB,cAAc;AAAC,SAAAC,QAAA,IAAAC,SAAA,EAAAC,GAAA,IAAAC,IAAA;AAI/D,MAAMC,iBAAiB,gBAAGV,aAAa,CAAuB,IAAI,CAAC;;AAEnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASW,uBAAuBA,CAAC;EAAEC;AAAkC,CAAC,EAAE;EAC7E,MAAMC,SAAS,GAAGX,MAAM,CAAO,IAAI,CAAC;EAEpC,IAAIE,QAAQ,CAACU,EAAE,KAAK,SAAS,EAAE;IAC7B,oBAAOL,IAAA,CAAAF,SAAA;MAAAK,QAAA,EAAGA;IAAQ,CAAG,CAAC;EACxB;EAEA,oBACEH,IAAA,CAACC,iBAAiB,CAACK,QAAQ;IAACC,KAAK,EAAEH,SAAU;IAAAD,QAAA,eAC3CH,IAAA,CAACN,cAAc;MAACc,GAAG,EAAEJ,SAAU;MAACK,KAAK,EAAEC,MAAM,CAACC,MAAO;MAAAR,QAAA,EAClDA;IAAQ,CACK;EAAC,CACS,CAAC;AAEjC;;AAEA;AACA,OAAO,SAASS,kBAAkBA,CAAA,EAAyB;EACzD,OAAOpB,UAAU,CAACS,iBAAiB,CAAC;AACtC;AAEA,MAAMS,MAAM,GAAGd,UAAU,CAACiB,MAAM,CAAC;EAC/BF,MAAM,EAAE;IACNG,IAAI,EAAE;EACR;AACF,CAAC,CAAC","ignoreList":[]}
@@ -43,6 +43,7 @@
43
43
  */
44
44
  import { forwardRef, memo } from 'react';
45
45
  import { BlurView } from 'expo-blur';
46
+ import Animated, { useAnimatedProps } from 'react-native-reanimated';
46
47
  import { Platform, Pressable, StyleSheet, View } from 'react-native';
47
48
  import { WEB_POSITION_FIXED } from "../styles/web-view-style.js";
48
49
 
@@ -54,6 +55,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
54
55
  export const BACKDROP_BLUR_INTENSITY = 40;
55
56
  /** Dim laid over the blur — the blur alone does not give enough contrast. */
56
57
  export const BACKDROP_DIM_OPACITY = 0.45;
58
+ const AnimatedBlurView = Animated.createAnimatedComponent(BlurView);
57
59
  /**
58
60
  * Outermost node of a portaled surface. Fills the viewport and re-enables
59
61
  * pointer events for its own children while empty gaps stay click-through
@@ -85,12 +87,17 @@ export const Backdrop = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(function Backd
85
87
  blurTint = 'dark',
86
88
  dimColor = '#000',
87
89
  dimOpacity = BACKDROP_DIM_OPACITY,
90
+ blurTarget,
91
+ blurProgress,
88
92
  style,
89
93
  children,
90
94
  accessibilityLabel = 'Dismiss',
91
95
  testID
92
96
  }, ref) {
93
97
  const inert = disabled || !onPress;
98
+ const animatedBlurProps = useAnimatedProps(() => ({
99
+ intensity: Math.max(0, Math.min(100, blurIntensity * (blurProgress?.value ?? 1)))
100
+ }), [blurIntensity, blurProgress]);
94
101
  return /*#__PURE__*/_jsxs(Pressable
95
102
  // MUST forward the ref: surfaces animate the backdrop through
96
103
  // `Animated.createAnimatedComponent(Backdrop)`, and reanimated applies
@@ -112,13 +119,15 @@ export const Backdrop = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(function Backd
112
119
  accessibilityLabel: inert ? undefined : accessibilityLabel,
113
120
  testID: testID,
114
121
  style: [StyleSheet.absoluteFill, style],
115
- children: [blurIntensity > 0 ? /*#__PURE__*/_jsx(BlurView, {
122
+ children: [blurIntensity > 0 ? /*#__PURE__*/_jsx(AnimatedBlurView, {
116
123
  intensity: blurIntensity,
117
- tint: blurTint
118
- // Android's default blur is a no-op on many devices; this is the
119
- // implementation that actually renders there.
124
+ animatedProps: animatedBlurProps,
125
+ tint: blurTint,
126
+ blurTarget: blurTarget
127
+ // Expo disables Android blur without an explicit target. Sheets get
128
+ // one from BloomProvider; targetless surfaces degrade without warning.
120
129
  ,
121
- experimentalBlurMethod: "dimezisBlurView",
130
+ blurMethod: Platform.OS === 'android' && blurTarget ? 'dimezisBlurViewSdk31Plus' : undefined,
122
131
  pointerEvents: "none",
123
132
  style: StyleSheet.absoluteFill
124
133
  }) : null, /*#__PURE__*/_jsx(View, {
@@ -1 +1 @@
1
- {"version":3,"names":["forwardRef","memo","BlurView","Platform","Pressable","StyleSheet","View","WEB_POSITION_FIXED","jsx","_jsx","jsxs","_jsxs","BACKDROP_BLUR_INTENSITY","BACKDROP_DIM_OPACITY","OverlayRoot","children","style","testID","pointerEvents","styles","root","displayName","Backdrop","onPress","disabled","blurIntensity","blurTint","dimColor","dimOpacity","accessibilityLabel","ref","inert","undefined","focusable","accessibilityRole","absoluteFill","intensity","tint","experimentalBlurMethod","backgroundColor","opacity","create","position","OS","top","left","right","bottom"],"sourceRoot":"../../../src","sources":["overlay/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["forwardRef","memo","BlurView","Animated","useAnimatedProps","Platform","Pressable","StyleSheet","View","WEB_POSITION_FIXED","jsx","_jsx","jsxs","_jsxs","BACKDROP_BLUR_INTENSITY","BACKDROP_DIM_OPACITY","AnimatedBlurView","createAnimatedComponent","OverlayRoot","children","style","testID","pointerEvents","styles","root","displayName","Backdrop","onPress","disabled","blurIntensity","blurTint","dimColor","dimOpacity","blurTarget","blurProgress","accessibilityLabel","ref","inert","animatedBlurProps","intensity","Math","max","min","value","undefined","focusable","accessibilityRole","absoluteFill","animatedProps","tint","blurMethod","OS","backgroundColor","opacity","create","position","top","left","right","bottom"],"sourceRoot":"../../../src","sources":["overlay/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -35,6 +35,7 @@
35
35
 
36
36
  import { ImageResolverProvider } from "../image-resolver/index.js";
37
37
  import { BloomHapticsProvider } from "../hooks/useHaptics.js";
38
+ import { BloomBlurTargetProvider } from "../overlay/blur-target.js";
38
39
  import { TabBarMinimizeProvider } from "../tab-bar/minimize-context.js";
39
40
  import { BloomThemeProvider } from "../theme/index.js";
40
41
  import { ScrollRestorationProvider } from './scroll-provider';
@@ -45,11 +46,8 @@ export function BloomProvider({
45
46
  haptics = true,
46
47
  ...themeProps
47
48
  }) {
48
- return (
49
- /*#__PURE__*/
50
- // `value` is passed unconditionally (null when unset) so toggling a resolver
51
- // never changes the tree shape and remounts everything below it.
52
- _jsx(ImageResolverProvider, {
49
+ return /*#__PURE__*/_jsx(BloomBlurTargetProvider, {
50
+ children: /*#__PURE__*/_jsx(ImageResolverProvider, {
53
51
  value: imageResolver ?? null,
54
52
  children: /*#__PURE__*/_jsx(BloomThemeProvider, {
55
53
  ...themeProps,
@@ -63,7 +61,7 @@ export function BloomProvider({
63
61
  })
64
62
  })
65
63
  })
66
- );
64
+ });
67
65
  }
68
66
  BloomProvider.displayName = 'BloomProvider';
69
67
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ImageResolverProvider","BloomHapticsProvider","TabBarMinimizeProvider","BloomThemeProvider","ScrollRestorationProvider","jsx","_jsx","BloomProvider","children","imageResolver","haptics","themeProps","value","enabled","displayName"],"sourceRoot":"../../../src","sources":["provider/index.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,qBAAqB,QAA4B,4BAAmB;AAC7E,SAASC,oBAAoB,QAAQ,wBAAqB;AAC1D,SAASC,sBAAsB,QAAQ,gCAA6B;AACpE,SAASC,kBAAkB,QAAsC,mBAAU;AAC3E,SAASC,yBAAyB,QAAQ,mBAAmB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAc9D,OAAO,SAASC,aAAaA,CAAC;EAC5BC,QAAQ;EACRC,aAAa;EACbC,OAAO,GAAG,IAAI;EACd,GAAGC;AACe,CAAC,EAAE;EACrB;IAAA;IACE;IACA;IACAL,IAAA,CAACN,qBAAqB;MAACY,KAAK,EAAEH,aAAa,IAAI,IAAK;MAAAD,QAAA,eAClDF,IAAA,CAACH,kBAAkB;QAAA,GAAKQ,UAAU;QAAAH,QAAA,eAChCF,IAAA,CAACF,yBAAyB;UAAAI,QAAA,eACxBF,IAAA,CAACL,oBAAoB;YAACY,OAAO,EAAEH,OAAQ;YAAAF,QAAA,eACrCF,IAAA,CAACJ,sBAAsB;cAAAM,QAAA,EAAEA;YAAQ,CAAyB;UAAC,CACvC;QAAC,CACE;MAAC,CACV;IAAC,CACA;EAAC;AAE5B;AAEAD,aAAa,CAACO,WAAW,GAAG,eAAe","ignoreList":[]}
1
+ {"version":3,"names":["ImageResolverProvider","BloomHapticsProvider","BloomBlurTargetProvider","TabBarMinimizeProvider","BloomThemeProvider","ScrollRestorationProvider","jsx","_jsx","BloomProvider","children","imageResolver","haptics","themeProps","value","enabled","displayName"],"sourceRoot":"../../../src","sources":["provider/index.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,SAASA,qBAAqB,QAA4B,4BAAmB;AAC7E,SAASC,oBAAoB,QAAQ,wBAAqB;AAC1D,SAASC,uBAAuB,QAAQ,2BAAwB;AAChE,SAASC,sBAAsB,QAAQ,gCAA6B;AACpE,SAASC,kBAAkB,QAAsC,mBAAU;AAC3E,SAASC,yBAAyB,QAAQ,mBAAmB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAc9D,OAAO,SAASC,aAAaA,CAAC;EAC5BC,QAAQ;EACRC,aAAa;EACbC,OAAO,GAAG,IAAI;EACd,GAAGC;AACe,CAAC,EAAE;EACrB,oBACEL,IAAA,CAACL,uBAAuB;IAAAO,QAAA,eAGtBF,IAAA,CAACP,qBAAqB;MAACa,KAAK,EAAEH,aAAa,IAAI,IAAK;MAAAD,QAAA,eAClDF,IAAA,CAACH,kBAAkB;QAAA,GAAKQ,UAAU;QAAAH,QAAA,eAChCF,IAAA,CAACF,yBAAyB;UAAAI,QAAA,eACxBF,IAAA,CAACN,oBAAoB;YAACa,OAAO,EAAEH,OAAQ;YAAAF,QAAA,eACrCF,IAAA,CAACJ,sBAAsB;cAAAM,QAAA,EAAEA;YAAQ,CAAyB;UAAC,CACvC;QAAC,CACE;MAAC,CACV;IAAC,CACA;EAAC,CACD,CAAC;AAE9B;AAEAD,aAAa,CAACO,WAAW,GAAG,eAAe","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ /** Radius for floating bottom sheets and native detached dialog cards. */
4
+ export const DETACHED_SHEET_RADIUS = 32;
5
+ //# sourceMappingURL=radii.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DETACHED_SHEET_RADIUS"],"sourceRoot":"../../../src","sources":["styles/radii.ts"],"mappings":";;AAAA;AACA,OAAO,MAAMA,qBAAqB,GAAG,EAAE","ignoreList":[]}
@@ -82,12 +82,11 @@ export interface BottomSheetProps {
82
82
  */
83
83
  manualActivation?: boolean;
84
84
  /**
85
- * When `true`, the backdrop dims proportionally with drag distance — the
86
- * overlay fades from full opacity (sheet at rest) to 30% as the sheet is
87
- * pulled down 40% of the screen height. iOS Photos style. The base
88
- * `backdropOpacity` still controls the resting dim level.
85
+ * When `true`, the backdrop and native blur fade proportionally with drag
86
+ * distance fully visible at rest and fully gone once the sheet leaves the
87
+ * viewport. The base `backdropOpacity` still controls the resting dim level.
89
88
  *
90
- * Defaults to `false` (constant opacity during drag).
89
+ * Defaults to `true`. Set to `false` only for a deliberately fixed backdrop.
91
90
  */
92
91
  dynamicBackdrop?: boolean;
93
92
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"BottomSheetBase.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/BottomSheetBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAMH,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,SAAS,EACjB,MAAM,cAAc,CAAC;AAItB,OAAiB,EACb,KAAK,aAAa,EAGlB,KAAK,WAAW,EAMnB,MAAM,yBAAyB,CAAC;AAyBjC,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IACjH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5C,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IACxC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B;;;;OAIG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACjD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B;;;OAGG;IACH,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC1D,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;CACrD;AAID,eAAO,MAAM,eAAe,6FA4mB1B,CAAC"}
1
+ {"version":3,"file":"BottomSheetBase.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/BottomSheetBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAMH,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,SAAS,EACjB,MAAM,cAAc,CAAC;AAItB,OAAiB,EACb,KAAK,aAAa,EAGlB,KAAK,WAAW,EAOnB,MAAM,yBAAyB,CAAC;AA2BjC,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IACjH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5C,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IACxC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B;;;;OAIG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACjD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B;;;OAGG;IACH,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC1D,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;CACrD;AAID,eAAO,MAAM,eAAe,6FA8nB1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../../src/dialog/Dialog.tsx"],"names":[],"mappings":"AA0CA,OAAO,EAIL,4BAA4B,EAK7B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,YAAY,EAGZ,WAAW,EACZ,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,4BAA4B,EAAE,CAAC;AAExC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,MAAM,CAAC,EACrB,SAAS,EACT,GAAG,IAAI,EACR,EAAE,WAAW,2CAab;AA+fD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,WAAW,EACX,OAAO,EACP,SAAS,GACV,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB,2CAoBA"}
1
+ {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../../src/dialog/Dialog.tsx"],"names":[],"mappings":"AA2CA,OAAO,EAIL,4BAA4B,EAK7B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,YAAY,EAGZ,WAAW,EACZ,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,4BAA4B,EAAE,CAAC;AAExC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,MAAM,CAAC,EACrB,SAAS,EACT,GAAG,IAAI,EACR,EAAE,WAAW,2CAab;AA4fD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,WAAW,EACX,OAAO,EACP,SAAS,GACV,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB,2CAoBA"}
@@ -1 +1 @@
1
- {"version":3,"file":"DialogBottomSheet.d.ts","sourceRoot":"","sources":["../../../../src/dialog/DialogBottomSheet.tsx"],"names":[],"mappings":"AAkCA,OAAO,KAAK,EAAsB,WAAW,EAAE,MAAM,SAAS,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,OAAO,EACP,IAAI,EAAE,cAAc,EACpB,SAAS,EACT,OAAO,EACP,MAAM,EACN,KAAK,EACL,WAAW,EACX,OAAO,EACP,MAAM,EACN,cAAyC,EACzC,UAAiB,EACjB,iBAAwB,EACxB,cAA+C,EAC/C,UAAU,EACV,KAAK,EACL,KAAK,EACL,UAAU,EACV,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,KAAK,EACL,QAAQ,GACT,EAAE,sBAAsB,2CAmPxB;AAED;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,WAAW,EACT,SAAS,GACT,MAAM,GACN,WAAW,GACX,SAAS,GACT,QAAQ,GACR,OAAO,GACP,aAAa,GACb,SAAS,GACT,QAAQ,GACR,gBAAgB,GAChB,YAAY,GACZ,mBAAmB,GACnB,gBAAgB,GAChB,YAAY,GACZ,OAAO,GACP,OAAO,GACP,YAAY,GACZ,gBAAgB,GAChB,gBAAgB,GAChB,oBAAoB,GACpB,OAAO,GACP,UAAU,CACb,CAAC"}
1
+ {"version":3,"file":"DialogBottomSheet.d.ts","sourceRoot":"","sources":["../../../../src/dialog/DialogBottomSheet.tsx"],"names":[],"mappings":"AAiCA,OAAO,KAAK,EAAsB,WAAW,EAAE,MAAM,SAAS,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,OAAO,EACP,IAAI,EAAE,cAAc,EACpB,SAAS,EACT,OAAO,EACP,MAAM,EACN,KAAK,EACL,WAAW,EACX,OAAO,EACP,MAAM,EACN,cAAyC,EACzC,UAAiB,EACjB,iBAAwB,EACxB,cAA+C,EAC/C,UAAU,EACV,KAAK,EACL,KAAK,EACL,UAAU,EACV,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,KAAK,EACL,QAAQ,GACT,EAAE,sBAAsB,2CAgPxB;AAED;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,WAAW,EACT,SAAS,GACT,MAAM,GACN,WAAW,GACX,SAAS,GACT,QAAQ,GACR,OAAO,GACP,aAAa,GACb,SAAS,GACT,QAAQ,GACR,gBAAgB,GAChB,YAAY,GACZ,mBAAmB,GACnB,gBAAgB,GAChB,YAAY,GACZ,OAAO,GACP,OAAO,GACP,YAAY,GACZ,gBAAgB,GAChB,gBAAgB,GAChB,oBAAoB,GACpB,OAAO,GACP,UAAU,CACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SheetShell.d.ts","sourceRoot":"","sources":["../../../../src/dialog/SheetShell.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAA4D,MAAM,OAAO,CAAC;AACjF,OAAO,EAA+B,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAM3F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,qEAAqE;IACrE,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,KAAK,EACL,MAAM,EACN,OAAO,EACP,YAAY,EACZ,QAAQ,GACT,EAAE,eAAe,2CAwEjB"}
1
+ {"version":3,"file":"SheetShell.d.ts","sourceRoot":"","sources":["../../../../src/dialog/SheetShell.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAA4D,MAAM,OAAO,CAAC;AACjF,OAAO,EAA+B,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAO3F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,qEAAqE;IACrE,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,KAAK,EACL,MAAM,EACN,OAAO,EACP,YAAY,EACZ,QAAQ,GACT,EAAE,eAAe,2CAuEjB"}
@@ -0,0 +1,21 @@
1
+ import { type ReactNode, type RefObject } from 'react';
2
+ import { type View } from 'react-native';
3
+ type BlurTargetRef = RefObject<View | null>;
4
+ /**
5
+ * Gives Android overlay blurs a real view to sample.
6
+ *
7
+ * Expo Blur 56+ intentionally disables the Dimezis implementation unless a
8
+ * `BlurTargetView` is supplied. Bloom's sheets render their backdrop inside a
9
+ * native `Modal`, so the target must live around the app content in the
10
+ * underlying window and travel to the modal through React context.
11
+ *
12
+ * Only modal backdrops consume this target. Ordinary in-tree BlurViews never
13
+ * target their own ancestor, avoiding the recursive capture/crash that causes.
14
+ */
15
+ export declare function BloomBlurTargetProvider({ children }: {
16
+ children: ReactNode;
17
+ }): import("react/jsx-runtime").JSX.Element;
18
+ /** Internal target used only by Bloom's native modal backdrops. */
19
+ export declare function useBloomBlurTarget(): BlurTargetRef | null;
20
+ export {};
21
+ //# sourceMappingURL=blur-target.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blur-target.d.ts","sourceRoot":"","sources":["../../../../src/overlay/blur-target.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE1F,OAAO,EAAwB,KAAK,IAAI,EAAE,MAAM,cAAc,CAAC;AAE/D,KAAK,aAAa,GAAG,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;AAI5C;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAc5E;AAED,mEAAmE;AACnE,wBAAgB,kBAAkB,IAAI,aAAa,GAAG,IAAI,CAEzD"}
@@ -39,8 +39,9 @@
39
39
  * Use `<OverlayRoot>` for the surface's outermost node and `<Backdrop>` for its
40
40
  * dimming layer; do not re-implement either with raw `View`s.
41
41
  */
42
- import { type ReactNode } from 'react';
43
- import { View, type StyleProp, type ViewStyle } from 'react-native';
42
+ import { type ReactNode, type RefObject } from 'react';
43
+ import { type SharedValue } from 'react-native-reanimated';
44
+ import { View, type StyleProp, type View as NativeView, type ViewStyle } from 'react-native';
44
45
  /**
45
46
  * One blur radius for every Bloom overlay. Surfaces differ in what they show,
46
47
  * not in how the app behind them recedes.
@@ -76,6 +77,10 @@ export interface BackdropProps {
76
77
  dimColor?: string;
77
78
  /** Dim opacity, 0–1. */
78
79
  dimOpacity?: number;
80
+ /** Android view sampled by the native blur. Modal surfaces receive this from BloomProvider. */
81
+ blurTarget?: RefObject<NativeView | null>;
82
+ /** Live visibility progress used to reduce native blur while a surface leaves. */
83
+ blurProgress?: SharedValue<number>;
79
84
  /** Extra style on the press target — animated opacity, insets, z-index. */
80
85
  style?: StyleProp<ViewStyle>;
81
86
  /** Rendered ON TOP of the dim, inside the press target (Dialog's panel does this). */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/overlay/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzD,OAAO,EAIL,IAAI,EACJ,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB;;;GAGG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,6EAA6E;AAC7E,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAEzC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,gBAAgB,2CAMxE;yBANe,WAAW;;;AAU3B,MAAM,WAAW,aAAa;IAC5B,gFAAgF;IAChF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IACxC,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,sFAAsF;IACtF,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,eAAO,MAAM,QAAQ,2FAuDlB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/overlay/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzE,OAAiB,EAAE,KAAK,WAAW,EAAoB,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAIL,IAAI,EACJ,KAAK,SAAS,EACd,KAAK,IAAI,IAAI,UAAU,EACvB,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB;;;GAGG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,6EAA6E;AAC7E,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAIzC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,gBAAgB,2CAMxE;yBANe,WAAW;;;AAU3B,MAAM,WAAW,aAAa;IAC5B,gFAAgF;IAChF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IACxC,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+FAA+F;IAC/F,UAAU,CAAC,EAAE,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IAC1C,kFAAkF;IAClF,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,2EAA2E;IAC3E,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,sFAAsF;IACtF,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,eAAO,MAAM,QAAQ,2FA+DlB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/provider/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAG9E,OAAO,EAAsB,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAG5E,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC;IACnF,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,wFAAwF;IACxF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,aAAa,EACb,OAAc,EACd,GAAG,UAAU,EACd,EAAE,kBAAkB,2CAcpB;yBAnBe,aAAa"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/provider/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAI9E,OAAO,EAAsB,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAG5E,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC;IACnF,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,wFAAwF;IACxF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,aAAa,EACb,OAAc,EACd,GAAG,UAAU,EACd,EAAE,kBAAkB,2CAgBpB;yBArBe,aAAa"}
@@ -0,0 +1,3 @@
1
+ /** Radius for floating bottom sheets and native detached dialog cards. */
2
+ export declare const DETACHED_SHEET_RADIUS = 32;
3
+ //# sourceMappingURL=radii.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radii.d.ts","sourceRoot":"","sources":["../../../../src/styles/radii.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,eAAO,MAAM,qBAAqB,KAAK,CAAC"}
@@ -82,12 +82,11 @@ export interface BottomSheetProps {
82
82
  */
83
83
  manualActivation?: boolean;
84
84
  /**
85
- * When `true`, the backdrop dims proportionally with drag distance — the
86
- * overlay fades from full opacity (sheet at rest) to 30% as the sheet is
87
- * pulled down 40% of the screen height. iOS Photos style. The base
88
- * `backdropOpacity` still controls the resting dim level.
85
+ * When `true`, the backdrop and native blur fade proportionally with drag
86
+ * distance fully visible at rest and fully gone once the sheet leaves the
87
+ * viewport. The base `backdropOpacity` still controls the resting dim level.
89
88
  *
90
- * Defaults to `false` (constant opacity during drag).
89
+ * Defaults to `true`. Set to `false` only for a deliberately fixed backdrop.
91
90
  */
92
91
  dynamicBackdrop?: boolean;
93
92
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"BottomSheetBase.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/BottomSheetBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAMH,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,SAAS,EACjB,MAAM,cAAc,CAAC;AAItB,OAAiB,EACb,KAAK,aAAa,EAGlB,KAAK,WAAW,EAMnB,MAAM,yBAAyB,CAAC;AAyBjC,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IACjH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5C,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IACxC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B;;;;OAIG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACjD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B;;;OAGG;IACH,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC1D,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;CACrD;AAID,eAAO,MAAM,eAAe,6FA4mB1B,CAAC"}
1
+ {"version":3,"file":"BottomSheetBase.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/BottomSheetBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAMH,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,SAAS,EACjB,MAAM,cAAc,CAAC;AAItB,OAAiB,EACb,KAAK,aAAa,EAGlB,KAAK,WAAW,EAOnB,MAAM,yBAAyB,CAAC;AA2BjC,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IAC7F,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;IACjH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5C,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;IACxC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B;;;;OAIG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACjD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IAClC,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B;;;OAGG;IACH,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC1D,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;CACrD;AAID,eAAO,MAAM,eAAe,6FA8nB1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../../src/dialog/Dialog.tsx"],"names":[],"mappings":"AA0CA,OAAO,EAIL,4BAA4B,EAK7B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,YAAY,EAGZ,WAAW,EACZ,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,4BAA4B,EAAE,CAAC;AAExC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,MAAM,CAAC,EACrB,SAAS,EACT,GAAG,IAAI,EACR,EAAE,WAAW,2CAab;AA+fD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,WAAW,EACX,OAAO,EACP,SAAS,GACV,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB,2CAoBA"}
1
+ {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../../src/dialog/Dialog.tsx"],"names":[],"mappings":"AA2CA,OAAO,EAIL,4BAA4B,EAK7B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,YAAY,EAGZ,WAAW,EACZ,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,4BAA4B,EAAE,CAAC;AAExC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,MAAM,CAAC,EACrB,SAAS,EACT,GAAG,IAAI,EACR,EAAE,WAAW,2CAab;AA4fD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,WAAW,EACX,OAAO,EACP,SAAS,GACV,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB,2CAoBA"}
@@ -1 +1 @@
1
- {"version":3,"file":"DialogBottomSheet.d.ts","sourceRoot":"","sources":["../../../../src/dialog/DialogBottomSheet.tsx"],"names":[],"mappings":"AAkCA,OAAO,KAAK,EAAsB,WAAW,EAAE,MAAM,SAAS,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,OAAO,EACP,IAAI,EAAE,cAAc,EACpB,SAAS,EACT,OAAO,EACP,MAAM,EACN,KAAK,EACL,WAAW,EACX,OAAO,EACP,MAAM,EACN,cAAyC,EACzC,UAAiB,EACjB,iBAAwB,EACxB,cAA+C,EAC/C,UAAU,EACV,KAAK,EACL,KAAK,EACL,UAAU,EACV,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,KAAK,EACL,QAAQ,GACT,EAAE,sBAAsB,2CAmPxB;AAED;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,WAAW,EACT,SAAS,GACT,MAAM,GACN,WAAW,GACX,SAAS,GACT,QAAQ,GACR,OAAO,GACP,aAAa,GACb,SAAS,GACT,QAAQ,GACR,gBAAgB,GAChB,YAAY,GACZ,mBAAmB,GACnB,gBAAgB,GAChB,YAAY,GACZ,OAAO,GACP,OAAO,GACP,YAAY,GACZ,gBAAgB,GAChB,gBAAgB,GAChB,oBAAoB,GACpB,OAAO,GACP,UAAU,CACb,CAAC"}
1
+ {"version":3,"file":"DialogBottomSheet.d.ts","sourceRoot":"","sources":["../../../../src/dialog/DialogBottomSheet.tsx"],"names":[],"mappings":"AAiCA,OAAO,KAAK,EAAsB,WAAW,EAAE,MAAM,SAAS,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,OAAO,EACP,IAAI,EAAE,cAAc,EACpB,SAAS,EACT,OAAO,EACP,MAAM,EACN,KAAK,EACL,WAAW,EACX,OAAO,EACP,MAAM,EACN,cAAyC,EACzC,UAAiB,EACjB,iBAAwB,EACxB,cAA+C,EAC/C,UAAU,EACV,KAAK,EACL,KAAK,EACL,UAAU,EACV,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,KAAK,EACL,QAAQ,GACT,EAAE,sBAAsB,2CAgPxB;AAED;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,WAAW,EACT,SAAS,GACT,MAAM,GACN,WAAW,GACX,SAAS,GACT,QAAQ,GACR,OAAO,GACP,aAAa,GACb,SAAS,GACT,QAAQ,GACR,gBAAgB,GAChB,YAAY,GACZ,mBAAmB,GACnB,gBAAgB,GAChB,YAAY,GACZ,OAAO,GACP,OAAO,GACP,YAAY,GACZ,gBAAgB,GAChB,gBAAgB,GAChB,oBAAoB,GACpB,OAAO,GACP,UAAU,CACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SheetShell.d.ts","sourceRoot":"","sources":["../../../../src/dialog/SheetShell.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAA4D,MAAM,OAAO,CAAC;AACjF,OAAO,EAA+B,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAM3F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,qEAAqE;IACrE,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,KAAK,EACL,MAAM,EACN,OAAO,EACP,YAAY,EACZ,QAAQ,GACT,EAAE,eAAe,2CAwEjB"}
1
+ {"version":3,"file":"SheetShell.d.ts","sourceRoot":"","sources":["../../../../src/dialog/SheetShell.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAA4D,MAAM,OAAO,CAAC;AACjF,OAAO,EAA+B,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAO3F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,qEAAqE;IACrE,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,KAAK,EACL,MAAM,EACN,OAAO,EACP,YAAY,EACZ,QAAQ,GACT,EAAE,eAAe,2CAuEjB"}
@@ -0,0 +1,21 @@
1
+ import { type ReactNode, type RefObject } from 'react';
2
+ import { type View } from 'react-native';
3
+ type BlurTargetRef = RefObject<View | null>;
4
+ /**
5
+ * Gives Android overlay blurs a real view to sample.
6
+ *
7
+ * Expo Blur 56+ intentionally disables the Dimezis implementation unless a
8
+ * `BlurTargetView` is supplied. Bloom's sheets render their backdrop inside a
9
+ * native `Modal`, so the target must live around the app content in the
10
+ * underlying window and travel to the modal through React context.
11
+ *
12
+ * Only modal backdrops consume this target. Ordinary in-tree BlurViews never
13
+ * target their own ancestor, avoiding the recursive capture/crash that causes.
14
+ */
15
+ export declare function BloomBlurTargetProvider({ children }: {
16
+ children: ReactNode;
17
+ }): import("react/jsx-runtime").JSX.Element;
18
+ /** Internal target used only by Bloom's native modal backdrops. */
19
+ export declare function useBloomBlurTarget(): BlurTargetRef | null;
20
+ export {};
21
+ //# sourceMappingURL=blur-target.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blur-target.d.ts","sourceRoot":"","sources":["../../../../src/overlay/blur-target.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE1F,OAAO,EAAwB,KAAK,IAAI,EAAE,MAAM,cAAc,CAAC;AAE/D,KAAK,aAAa,GAAG,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;AAI5C;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAc5E;AAED,mEAAmE;AACnE,wBAAgB,kBAAkB,IAAI,aAAa,GAAG,IAAI,CAEzD"}
@@ -39,8 +39,9 @@
39
39
  * Use `<OverlayRoot>` for the surface's outermost node and `<Backdrop>` for its
40
40
  * dimming layer; do not re-implement either with raw `View`s.
41
41
  */
42
- import { type ReactNode } from 'react';
43
- import { View, type StyleProp, type ViewStyle } from 'react-native';
42
+ import { type ReactNode, type RefObject } from 'react';
43
+ import { type SharedValue } from 'react-native-reanimated';
44
+ import { View, type StyleProp, type View as NativeView, type ViewStyle } from 'react-native';
44
45
  /**
45
46
  * One blur radius for every Bloom overlay. Surfaces differ in what they show,
46
47
  * not in how the app behind them recedes.
@@ -76,6 +77,10 @@ export interface BackdropProps {
76
77
  dimColor?: string;
77
78
  /** Dim opacity, 0–1. */
78
79
  dimOpacity?: number;
80
+ /** Android view sampled by the native blur. Modal surfaces receive this from BloomProvider. */
81
+ blurTarget?: RefObject<NativeView | null>;
82
+ /** Live visibility progress used to reduce native blur while a surface leaves. */
83
+ blurProgress?: SharedValue<number>;
79
84
  /** Extra style on the press target — animated opacity, insets, z-index. */
80
85
  style?: StyleProp<ViewStyle>;
81
86
  /** Rendered ON TOP of the dim, inside the press target (Dialog's panel does this). */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/overlay/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzD,OAAO,EAIL,IAAI,EACJ,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB;;;GAGG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,6EAA6E;AAC7E,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAEzC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,gBAAgB,2CAMxE;yBANe,WAAW;;;AAU3B,MAAM,WAAW,aAAa;IAC5B,gFAAgF;IAChF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IACxC,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,sFAAsF;IACtF,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,eAAO,MAAM,QAAQ,2FAuDlB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/overlay/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzE,OAAiB,EAAE,KAAK,WAAW,EAAoB,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAIL,IAAI,EACJ,KAAK,SAAS,EACd,KAAK,IAAI,IAAI,UAAU,EACvB,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB;;;GAGG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,6EAA6E;AAC7E,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAIzC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,gBAAgB,2CAMxE;yBANe,WAAW;;;AAU3B,MAAM,WAAW,aAAa;IAC5B,gFAAgF;IAChF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IACxC,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+FAA+F;IAC/F,UAAU,CAAC,EAAE,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IAC1C,kFAAkF;IAClF,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,2EAA2E;IAC3E,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,sFAAsF;IACtF,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,eAAO,MAAM,QAAQ,2FA+DlB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/provider/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAG9E,OAAO,EAAsB,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAG5E,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC;IACnF,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,wFAAwF;IACxF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,aAAa,EACb,OAAc,EACd,GAAG,UAAU,EACd,EAAE,kBAAkB,2CAcpB;yBAnBe,aAAa"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/provider/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAI9E,OAAO,EAAsB,KAAK,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAG5E,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC;IACnF,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,wFAAwF;IACxF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,aAAa,EACb,OAAc,EACd,GAAG,UAAU,EACd,EAAE,kBAAkB,2CAgBpB;yBArBe,aAAa"}
@@ -0,0 +1,3 @@
1
+ /** Radius for floating bottom sheets and native detached dialog cards. */
2
+ export declare const DETACHED_SHEET_RADIUS = 32;
3
+ //# sourceMappingURL=radii.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radii.d.ts","sourceRoot":"","sources":["../../../../src/styles/radii.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,eAAO,MAAM,qBAAqB,KAAK,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxyhq/bloom",
3
- "version": "0.59.1",
3
+ "version": "0.59.3",
4
4
  "description": "Bloom UI — Oxy ecosystem component library for React Native + Expo + Web",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -1,9 +1,10 @@
1
1
  import React, { createRef } from 'react';
2
- import { Dimensions, Text } from 'react-native';
2
+ import { Dimensions, Platform, Text } from 'react-native';
3
3
  import { act, render, within } from '@testing-library/react-native';
4
4
 
5
5
  import { BloomThemeProvider } from '../theme/BloomThemeProvider';
6
6
  import BottomSheet, { type BottomSheetRef } from '../bottom-sheet';
7
+ import { BloomBlurTargetProvider } from '../overlay/blur-target';
7
8
 
8
9
  function renderWithTheme(ui: React.ReactElement) {
9
10
  return render(
@@ -107,6 +108,50 @@ describe('BottomSheet', () => {
107
108
  });
108
109
  });
109
110
 
111
+ describe('detached material', () => {
112
+ it('keeps the Android blur visible over a lighter dim and uses the rounder floating shape', () => {
113
+ const previousOS = Platform.OS;
114
+ Platform.OS = 'android';
115
+ try {
116
+ const ref = createRef<BottomSheetRef>();
117
+ const { UNSAFE_getByType, UNSAFE_getAllByType } = renderWithTheme(
118
+ <BloomBlurTargetProvider>
119
+ <BottomSheet ref={ref} detached>
120
+ <Text>Floating content</Text>
121
+ </BottomSheet>
122
+ </BloomBlurTargetProvider>,
123
+ );
124
+
125
+ act(() => {
126
+ ref.current?.present();
127
+ });
128
+
129
+ UNSAFE_getByType('BlurTargetView' as never);
130
+ const blur = UNSAFE_getByType('BlurView' as never);
131
+ expect(blur.props.blurMethod).toBe('dimezisBlurViewSdk31Plus');
132
+ expect(blur.props.blurTarget).toEqual(expect.objectContaining({ current: null }));
133
+
134
+ const views = UNSAFE_getAllByType('View' as never);
135
+ expect(
136
+ views.some((view) => {
137
+ const style = JSON.stringify(view.props.style);
138
+ return style.includes('"backgroundColor":"#000"') && style.includes('"opacity":0.45');
139
+ }),
140
+ ).toBe(true);
141
+
142
+ const animatedViews = UNSAFE_getAllByType('Animated.View' as never);
143
+ expect(
144
+ animatedViews.some((view) => {
145
+ const style = JSON.stringify(view.props.style);
146
+ return style.includes('"left":16') && style.includes('"borderRadius":32');
147
+ }),
148
+ ).toBe(true);
149
+ } finally {
150
+ Platform.OS = previousOS;
151
+ }
152
+ });
153
+ });
154
+
110
155
  describe('scrollable prop', () => {
111
156
  it('renders children directly when scrollable is false (no internal ScrollView wrap)', () => {
112
157
  // When scrollable={false}, the screen owns its own scrolling primitive
@@ -77,18 +77,19 @@ jest.mock('react-native-gesture-handler', () => {
77
77
 
78
78
  function renderSheet(onDismiss: () => void) {
79
79
  const ref = createRef<BottomSheetRef>();
80
- const utils = render(
80
+ const tree = () => (
81
81
  <BloomThemeProvider mode="light" colorPreset="teal">
82
82
  <BottomSheet ref={ref} onDismiss={onDismiss}>
83
83
  <Text>Body</Text>
84
84
  </BottomSheet>
85
- </BloomThemeProvider>,
85
+ </BloomThemeProvider>
86
86
  );
87
+ const utils = render(tree());
87
88
  // Present so the sheet mounts and the pan gesture is constructed.
88
89
  act(() => {
89
90
  ref.current?.present();
90
91
  });
91
- return utils;
92
+ return { ...utils, rerenderSheet: () => utils.rerender(tree()) };
92
93
  }
93
94
 
94
95
  describe('BottomSheet pan-to-dismiss gesture', () => {
@@ -132,4 +133,21 @@ describe('BottomSheet pan-to-dismiss gesture', () => {
132
133
  });
133
134
  expect(onDismiss).not.toHaveBeenCalled();
134
135
  });
136
+
137
+ it('reduces native blur intensity continuously with the downward drag by default', () => {
138
+ const utils = renderSheet(() => {});
139
+ const bodyPan = mockPanGestures.find((g) => typeof g.onEnd === 'function');
140
+ const sheet = utils
141
+ .UNSAFE_getAllByType('Animated.View' as never)
142
+ .find((view) => typeof view.props.onLayout === 'function');
143
+
144
+ act(() => {
145
+ sheet?.props.onLayout({ nativeEvent: { layout: { height: 800 } } });
146
+ bodyPan?.onUpdate?.({ translationY: 400 });
147
+ utils.rerenderSheet();
148
+ });
149
+
150
+ const blur = utils.UNSAFE_getByType('BlurView' as never);
151
+ expect(blur.props.animatedProps.intensity).toBeCloseTo(20);
152
+ });
135
153
  });