@oxy.so/bloom 4.22.0 → 4.22.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.
Files changed (32) hide show
  1. package/docs/bottom-sheet.mdx +4 -0
  2. package/docs/chip.mdx +1 -0
  3. package/lib/commonjs/bottom-sheet/BottomSheet.js +35 -43
  4. package/lib/commonjs/bottom-sheet/BottomSheet.js.map +1 -1
  5. package/lib/commonjs/bottom-sheet/BottomSheetBase.js +1 -1
  6. package/lib/commonjs/chip/ChipRow.js +2 -0
  7. package/lib/commonjs/chip/ChipRow.js.map +1 -1
  8. package/lib/module/bottom-sheet/BottomSheet.js +36 -44
  9. package/lib/module/bottom-sheet/BottomSheet.js.map +1 -1
  10. package/lib/module/bottom-sheet/BottomSheetBase.js +1 -1
  11. package/lib/module/chip/ChipRow.js +2 -0
  12. package/lib/module/chip/ChipRow.js.map +1 -1
  13. package/lib/typescript/commonjs/bottom-sheet/BottomSheet.d.ts.map +1 -1
  14. package/lib/typescript/commonjs/bottom-sheet/types.d.ts +2 -1
  15. package/lib/typescript/commonjs/bottom-sheet/types.d.ts.map +1 -1
  16. package/lib/typescript/commonjs/chip/ChipRow.d.ts +1 -1
  17. package/lib/typescript/commonjs/chip/ChipRow.d.ts.map +1 -1
  18. package/lib/typescript/commonjs/chip/types.d.ts +9 -0
  19. package/lib/typescript/commonjs/chip/types.d.ts.map +1 -1
  20. package/lib/typescript/module/bottom-sheet/BottomSheet.d.ts.map +1 -1
  21. package/lib/typescript/module/bottom-sheet/types.d.ts +2 -1
  22. package/lib/typescript/module/bottom-sheet/types.d.ts.map +1 -1
  23. package/lib/typescript/module/chip/ChipRow.d.ts +1 -1
  24. package/lib/typescript/module/chip/ChipRow.d.ts.map +1 -1
  25. package/lib/typescript/module/chip/types.d.ts +9 -0
  26. package/lib/typescript/module/chip/types.d.ts.map +1 -1
  27. package/package.json +1 -1
  28. package/src/bottom-sheet/BottomSheet.tsx +32 -36
  29. package/src/bottom-sheet/BottomSheetBase.tsx +1 -1
  30. package/src/bottom-sheet/types.ts +2 -1
  31. package/src/chip/ChipRow.tsx +2 -0
  32. package/src/chip/types.ts +9 -0
@@ -31,6 +31,10 @@ function Example() {
31
31
  }
32
32
  ```
33
33
 
34
+ ## Keyboard
35
+
36
+ On native the sheet follows the keyboard through `react-native-keyboard-controller`, using the app's **one** `<KeyboardProvider>` at its root (`OxyProvider` mounts it for Oxy apps). The sheet mounts no provider of its own inside its `Modal`, and neither should anything else: every provider suspends its main-window callback while a `Modal` is up and resumes it from the dialog's dismiss listener, of which a dialog keeps only the last. With two providers, one stays suspended after the first sheet closes, and every `KeyboardAvoidingView` under it stops following the keyboard until the app restarts (Alia #608, Android 16). Without any root provider the sheet does not track the keyboard, like every other keyboard-controller consumer in that app.
37
+
34
38
  ## Ref methods
35
39
 
36
40
  | Method | Description |
package/docs/chip.mdx CHANGED
@@ -125,6 +125,7 @@ import { Chip, ChipRow } from '@oxy.so/bloom/chip';
125
125
  | `contentInset` | side padding inside the scroller |
126
126
  | `fadeColor` | the surface BEHIND the row — the row cannot know it. Default the page background; pass the card colour when the row sits on a card, or the fade blends into the wrong thing |
127
127
  | `ringInset` | room kept for a pill's focus ring inside the scroller, taken back out with negative margins so the row still lines up. Default 4 |
128
+ | `keyboardShouldPersistTaps` | native: whether a tap on a pill while the keyboard is open reaches the pill. Default `handled` (React Native's own `never` spends the first tap dismissing the keyboard) |
128
129
  | `role` / `accessibilityLabel` | the row's semantics, which belong to the caller |
129
130
 
130
131
  The fade is web only (it is a CSS gradient); the row scrolls on both platforms.
@@ -23,45 +23,39 @@ var _jsxRuntime = require("react/jsx-runtime");
23
23
  // the specifier shape that does NOT work.
24
24
  const noopKeyboardHandler = (_handlers, _deps) => {};
25
25
  let useKeyboardHandler = noopKeyboardHandler;
26
-
27
- // react-native-keyboard-controller's <KeyboardProvider>. We re-establish it
28
- // INSIDE the sheet's RN <Modal> (see the render below): a <Modal> mounts into
29
- // its OWN native root, and neither the app-root GestureHandlerRootView nor the
30
- // app-root KeyboardProvider's native KeyboardControllerView extend across that
31
- // boundary. Without a provider inside the Modal, keyboard-controller consumers
32
- // (this sheet's keyboard tracker, plus any TextInputs in `children`) read the
33
- // default empty KeyboardContext — logging "Couldn't find real values for
34
- // KeyboardContext ..." — and receive no keyboard insets. When the optional
35
- // module is absent, or on web (no RN Modal native-window boundary, keyboard is
36
- // the browser's concern), this resolves to a passthrough that just renders its
37
- // children, so no provider is introduced where one isn't needed.
38
- const PassthroughKeyboardProvider = ({
39
- children
40
- }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
41
- children: children
42
- });
43
- let KeyboardProvider = PassthroughKeyboardProvider;
44
26
  if (_reactNative.Platform.OS !== 'web' && typeof require !== 'undefined') {
45
27
  try {
46
28
  const keyboardController = require('react-native-keyboard-controller');
47
29
  useKeyboardHandler = keyboardController.useKeyboardHandler ?? noopKeyboardHandler;
48
- KeyboardProvider = keyboardController.KeyboardProvider ?? PassthroughKeyboardProvider;
49
30
  } catch {
50
- // react-native-keyboard-controller not available — keep the no-op
51
- // handler and passthrough provider.
31
+ // react-native-keyboard-controller not available — keep the no-op handler.
52
32
  }
53
33
  }
54
34
 
55
35
  /**
56
- * Registers the sheet's keyboard-height tracker. It lives in its own tiny
57
- * component — rendered INSIDE the Modal, under the re-established
58
- * <KeyboardProvider> — so `useKeyboardHandler` reads the in-Modal
59
- * KeyboardContext whose native KeyboardControllerView actually receives the
60
- * Modal window's keyboard insets (the app-root provider does not cross the
61
- * Modal's native-window boundary). It writes the live keyboard height into the
62
- * shared value that drives the sheet's translate/height styles. Renders
63
- * nothing. No-ops when react-native-keyboard-controller isn't installed / on
64
- * web (`useKeyboardHandler` is the module-level no-op there).
36
+ * Registers the sheet's keyboard-height tracker, writing the live keyboard
37
+ * height into the shared value that drives the sheet's translate/height styles.
38
+ * Renders nothing.
39
+ *
40
+ * It reads the APP's one `<KeyboardProvider>`, and the sheet deliberately does
41
+ * not mount a second one inside its `<Modal>`:
42
+ *
43
+ * - React context crosses a `<Modal>` like any other element, so this hook
44
+ * finds the app-root provider from inside the sheet.
45
+ * - The native events cross too: when a `<Modal>` shows, the root provider's
46
+ * `ModalAttachedWatcher` (keyboard-controller ≥ 1.13, Android) attaches a
47
+ * keyboard callback to the dialog's window and propagates it to the ROOT
48
+ * provider's view, which is where this handler is registered.
49
+ * - A second provider breaks the app until it restarts. Every provider's
50
+ * watcher answers the same `topShow`: each SUSPENDS its own main-window
51
+ * callback and then calls `dialog.setOnDismissListener` to un-suspend it —
52
+ * and a dialog keeps only the LAST listener. So on dismiss one provider
53
+ * resumes and the others stay suspended for good: after the first sheet, the
54
+ * app's `KeyboardAvoidingView`s never saw the keyboard again (Alia #608,
55
+ * Android 16, keyboard-controller 1.21.9 and unchanged in 1.22.5).
56
+ *
57
+ * No app-root provider means keyboard-controller works nowhere in that app; the
58
+ * hook then no-ops (and warns in development) like every other consumer.
65
59
  */
66
60
  function SheetKeyboardSync({
67
61
  keyboardHeight
@@ -82,10 +76,10 @@ function SheetKeyboardSync({
82
76
  }
83
77
 
84
78
  /**
85
- * Native shell: RN's `<Modal>` (its own native root window) + the
86
- * re-established `<KeyboardProvider>` + the sheet's keyboard tracker + a
87
- * `<GestureHandlerRootView>` (the app-root GHRV does not cross the Modal's
88
- * native-window boundary, so pan gestures need their own root here).
79
+ * Native shell: RN's `<Modal>` (its own native root window) + the sheet's
80
+ * keyboard tracker + a `<GestureHandlerRootView>` (the app-root GHRV does not
81
+ * cross the Modal's native-window boundary, so pan gestures need their own root
82
+ * here). No `<KeyboardProvider>`: see `SheetKeyboardSync`.
89
83
  */
90
84
  function NativeShell({
91
85
  visible,
@@ -99,15 +93,13 @@ function NativeShell({
99
93
  animationType: "none",
100
94
  statusBarTranslucent: true,
101
95
  onRequestClose: onRequestClose,
102
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_blurTarget.GlassBlurWindow, {
103
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(KeyboardProvider, {
104
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(SheetKeyboardSync, {
105
- keyboardHeight: keyboardHeight
106
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeGestureHandler.GestureHandlerRootView, {
107
- style: styles.rootView,
108
- children: children
109
- })]
110
- })
96
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_blurTarget.GlassBlurWindow, {
97
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(SheetKeyboardSync, {
98
+ keyboardHeight: keyboardHeight
99
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeGestureHandler.GestureHandlerRootView, {
100
+ style: styles.rootView,
101
+ children: children
102
+ })]
111
103
  })
112
104
  });
113
105
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_blurTarget","_reactNativeGestureHandler","_BottomSheetBase","_jsxRuntime","noopKeyboardHandler","_handlers","_deps","useKeyboardHandler","PassthroughKeyboardProvider","children","jsx","Fragment","KeyboardProvider","Platform","OS","keyboardController","SheetKeyboardSync","keyboardHeight","onMove","e","value","height","onEnd","NativeShell","visible","onRequestClose","Modal","transparent","animationType","statusBarTranslucent","GlassBlurWindow","jsxs","GestureHandlerRootView","style","styles","rootView","BottomSheet","exports","forwardRef","props","ref","BottomSheetBase","Shell","displayName","StyleSheet","create","flex","_default","default"],"sourceRoot":"../../../src","sources":["bottom-sheet/BottomSheet.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNative","_blurTarget","_reactNativeGestureHandler","_BottomSheetBase","_jsxRuntime","noopKeyboardHandler","_handlers","_deps","useKeyboardHandler","Platform","OS","keyboardController","SheetKeyboardSync","keyboardHeight","onMove","e","value","height","onEnd","NativeShell","visible","onRequestClose","children","jsx","Modal","transparent","animationType","statusBarTranslucent","jsxs","GlassBlurWindow","GestureHandlerRootView","style","styles","rootView","BottomSheet","exports","forwardRef","props","ref","BottomSheetBase","Shell","displayName","StyleSheet","create","flex","_default","default"],"sourceRoot":"../../../src","sources":["bottom-sheet/BottomSheet.tsx"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,0BAAA,GAAAH,OAAA;AAEA,IAAAI,gBAAA,GAAAJ,OAAA;AAAoD,IAAAK,WAAA,GAAAL,OAAA;AAGpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMM,mBAAmB,GAAGA,CAACC,SAA0D,EAAEC,KAAgB,KAAK,CAAC,CAAC;AAChH,IAAIC,kBAAwG,GAAGH,mBAAmB;AAElI,IAAII,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAI,OAAOX,OAAO,KAAK,WAAW,EAAE;EACzD,IAAI;IACA,MAAMY,kBAAkB,GAAGZ,OAAO,CAAC,kCAAkC,CAAC;IACtES,kBAAkB,GAAGG,kBAAkB,CAACH,kBAAkB,IAAIH,mBAAmB;EACrF,CAAC,CAAC,MAAM;IACJ;EAAA;AAER;;AAEA;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,SAASO,iBAAiBA,CAAC;EAAEC;AAAwD,CAAC,EAAE;EACpFL,kBAAkB,CAAC;IACfM,MAAM,EAAGC,CAAC,IAAK;MACX,SAAS;;MACTF,cAAc,CAACG,KAAK,GAAGD,CAAC,CAACE,MAAM;IACnC,CAAC;IACDC,KAAK,EAAGH,CAAC,IAAK;MACV,SAAS;;MACTF,cAAc,CAACG,KAAK,GAAGD,CAAC,CAACE,MAAM;IACnC;EACJ,CAAC,EAAE,EAAE,CAAC;EACN,OAAO,IAAI;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAASE,WAAWA,CAAC;EAAEC,OAAO;EAAEC,cAAc;EAAER,cAAc;EAAES;AAAgC,CAAC,EAAE;EAC/F,oBACI,IAAAlB,WAAA,CAAAmB,GAAA,EAACvB,YAAA,CAAAwB,KAAK;IAACJ,OAAO,EAAEA,OAAQ;IAACK,WAAW;IAACC,aAAa,EAAC,MAAM;IAACC,oBAAoB;IAACN,cAAc,EAAEA,cAAe;IAAAC,QAAA,eAS1G,IAAAlB,WAAA,CAAAwB,IAAA,EAAC3B,WAAA,CAAA4B,eAAe;MAAAP,QAAA,gBACZ,IAAAlB,WAAA,CAAAmB,GAAA,EAACX,iBAAiB;QAACC,cAAc,EAAEA;MAAe,CAAE,CAAC,eACrD,IAAAT,WAAA,CAAAmB,GAAA,EAACrB,0BAAA,CAAA4B,sBAAsB;QAACC,KAAK,EAAEC,MAAM,CAACC,QAAS;QAAAX,QAAA,EAAEA;MAAQ,CAAyB,CAAC;IAAA,CACtE;EAAC,CACf,CAAC;AAEhB;AAEA,MAAMY,WAAW,GAAAC,OAAA,CAAAD,WAAA,gBAAG,IAAAE,iBAAU,EAAC,CAACC,KAAuB,EAAEC,GAAuC,kBAC5F,IAAAlC,WAAA,CAAAmB,GAAA,EAACpB,gBAAA,CAAAoC,eAAe;EAAA,GAAKF,KAAK;EAAEC,GAAG,EAAEA,GAAI;EAACE,KAAK,EAAErB;AAAY,CAAE,CAC9D,CAAC;AAEFe,WAAW,CAACO,WAAW,GAAG,aAAa;AAEvC,MAAMT,MAAM,GAAGU,uBAAU,CAACC,MAAM,CAAC;EAC7BV,QAAQ,EAAE;IACNW,IAAI,EAAE;EACV;AACJ,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAV,OAAA,CAAAW,OAAA,GAEYZ,WAAW","ignoreList":[]}
@@ -571,7 +571,7 @@ const BottomSheetBase = exports.BottomSheetBase = /*#__PURE__*/(0, _react.forwar
571
571
  }, [colors.background, theme.isDark, detached]);
572
572
 
573
573
  // Publish the sheet's keyboard shared value to the shell so the native
574
- // shell can drive it from inside its own <KeyboardProvider>. Kept stable
574
+ // shell's keyboard tracker can drive it. Kept stable
575
575
  // (shared values are stable refs) so the shell never re-mounts for this.
576
576
  if (!rendered) return null;
577
577
 
@@ -59,6 +59,7 @@ function ChipRowComponent({
59
59
  role = 'group',
60
60
  accessibilityLabel,
61
61
  disabled,
62
+ keyboardShouldPersistTaps = 'handled',
62
63
  style,
63
64
  contentContainerStyle,
64
65
  testID
@@ -148,6 +149,7 @@ function ChipRowComponent({
148
149
  } : {}),
149
150
  horizontal: true,
150
151
  showsHorizontalScrollIndicator: false,
152
+ keyboardShouldPersistTaps: keyboardShouldPersistTaps,
151
153
  scrollEventThrottle: 16,
152
154
  onScroll: onScroll,
153
155
  onLayout: onLayout,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_adoptStyleSheet","_useTheme","_shared","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","IS_WEB","Platform","OS","CHIP_ROW_EDGE","exports","STYLE_ID","TRACK","BLOOM_CHIP_ROW_CSS","ChipRowComponent","children","gap","contentInset","fadeColor","ringInset","role","accessibilityLabel","disabled","style","contentContainerStyle","testID","theme","useTheme","React","useEffect","adoptStyleSheet","scroll","setScroll","useState","x","viewport","content","overflow","useMemo","chipRowOverflow","fade","colors","background","onScroll","useCallback","event","contentOffset","layoutMeasurement","contentSize","nativeEvent","width","onLayout","layout","previous","onContentSizeChange","edgeStyle","side","position","top","bottom","left","right","backgroundImage","jsxs","View","undefined","minWidth","jsx","ScrollView","dataSet","bloomChipRowTrack","horizontal","showsHorizontalScrollIndicator","scrollEventThrottle","flexGrow","marginTop","marginBottom","marginLeft","marginRight","flexDirection","alignItems","paddingTop","paddingBottom","paddingLeft","paddingRight","pointerEvents","next","ChipRow","memo","displayName"],"sourceRoot":"../../../src","sources":["chip/ChipRow.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_adoptStyleSheet","_useTheme","_shared","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","IS_WEB","Platform","OS","CHIP_ROW_EDGE","exports","STYLE_ID","TRACK","BLOOM_CHIP_ROW_CSS","ChipRowComponent","children","gap","contentInset","fadeColor","ringInset","role","accessibilityLabel","disabled","keyboardShouldPersistTaps","style","contentContainerStyle","testID","theme","useTheme","React","useEffect","adoptStyleSheet","scroll","setScroll","useState","x","viewport","content","overflow","useMemo","chipRowOverflow","fade","colors","background","onScroll","useCallback","event","contentOffset","layoutMeasurement","contentSize","nativeEvent","width","onLayout","layout","previous","onContentSizeChange","edgeStyle","side","position","top","bottom","left","right","backgroundImage","jsxs","View","undefined","minWidth","jsx","ScrollView","dataSet","bloomChipRowTrack","horizontal","showsHorizontalScrollIndicator","scrollEventThrottle","flexGrow","marginTop","marginBottom","marginLeft","marginRight","flexDirection","alignItems","paddingTop","paddingBottom","paddingLeft","paddingRight","pointerEvents","next","ChipRow","memo","displayName"],"sourceRoot":"../../../src","sources":["chip/ChipRow.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AASA,IAAAE,gBAAA,GAAAF,OAAA;AAEA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAA+D,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAD,wBAAAO,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAT,uBAAA,YAAAA,CAAAO,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAG/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,MAAMkB,MAAM,GAAGC,qBAAQ,CAACC,EAAE,KAAK,KAAK;;AAEpC;AACO,MAAMC,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,EAAE;AAE/B,MAAME,QAAQ,GAAG,wBAAwB;AACzC,MAAMC,KAAK,GAAG,6BAA6B;AAE3C,MAAMC,kBAAkB,GAAG;AAC3B,EAAED,KAAK;AACP;AACA;AACA;AACA,EAAEA,KAAK;AACP;AACA;AACA,CAAC;AAED,SAASE,gBAAgBA,CAAC;EACxBC,QAAQ;EACRC,GAAG,GAAG,CAAC;EACPC,YAAY,GAAG,CAAC;EAChBC,SAAS;EACTC,SAAS,GAAG,CAAC;EACbC,IAAI,GAAG,OAAO;EACdC,kBAAkB;EAClBC,QAAQ;EACRC,yBAAyB,GAAG,SAAS;EACrCC,KAAK;EACLC,qBAAqB;EACrBC;AACY,CAAC,EAAE;EACf,MAAMC,KAAK,GAAG,IAAAC,kBAAQ,EAAC,CAAC;EACxBC,cAAK,CAACC,SAAS,CAAC,MAAM;IACpB,IAAAC,gCAAe,EAACpB,QAAQ,EAAEE,kBAAkB,CAAC;EAC/C,CAAC,EAAE,EAAE,CAAC;EAEN,MAAM,CAACmB,MAAM,EAAEC,SAAS,CAAC,GAAG,IAAAC,eAAQ,EAAgB;IAAEC,CAAC,EAAE,CAAC;IAAEC,QAAQ,EAAE,CAAC;IAAEC,OAAO,EAAE;EAAE,CAAC,CAAC;EACtF,MAAMC,QAAQ,GAAG,IAAAC,cAAO,EAAC,MAAM,IAAAC,uBAAe,EAACR,MAAM,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EACjE,MAAMS,IAAI,GAAGvB,SAAS,IAAIS,KAAK,CAACe,MAAM,CAACC,UAAU;EAEjD,MAAMC,QAAQ,GAAG,IAAAC,kBAAW,EAAEC,KAA8C,IAAK;IAC/E,MAAM;MAAEC,aAAa;MAAEC,iBAAiB;MAAEC;IAAY,CAAC,GAAGH,KAAK,CAACI,WAAW;IAC3EjB,SAAS,CAAC;MAAEE,CAAC,EAAEY,aAAa,CAACZ,CAAC;MAAEC,QAAQ,EAAEY,iBAAiB,CAACG,KAAK;MAAEd,OAAO,EAAEY,WAAW,CAACE;IAAM,CAAC,CAAC;EAClG,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,QAAQ,GAAG,IAAAP,kBAAW,EAAEC,KAAwB,IAAK;IACzD,MAAM;MAAEK;IAAM,CAAC,GAAGL,KAAK,CAACI,WAAW,CAACG,MAAM;IAC1CpB,SAAS,CAAEqB,QAAQ,IAAMA,QAAQ,CAAClB,QAAQ,KAAKe,KAAK,GAAGG,QAAQ,GAAG;MAAE,GAAGA,QAAQ;MAAElB,QAAQ,EAAEe;IAAM,CAAE,CAAC;EACtG,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMI,mBAAmB,GAAG,IAAAV,kBAAW,EAAEM,KAAa,IAAK;IACzDlB,SAAS,CAAEqB,QAAQ,IAAMA,QAAQ,CAACjB,OAAO,KAAKc,KAAK,GAAGG,QAAQ,GAAG;MAAE,GAAGA,QAAQ;MAAEjB,OAAO,EAAEc;IAAM,CAAE,CAAC;EACpG,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA;EACA;EACA;EACA;EACA,MAAMK,SAAS,GAAIC,IAAsB,KAAmB;IAC1DC,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,CAACxC,SAAS;IACfyC,MAAM,EAAE,CAACzC,SAAS;IAClB,IAAIsC,IAAI,KAAK,MAAM,GAAG;MAAEI,IAAI,EAAE,CAAC1C;IAAU,CAAC,GAAG;MAAE2C,KAAK,EAAE,CAAC3C;IAAU,CAAC,CAAC;IACnEgC,KAAK,EAAE1C,aAAa;IACpBsD,eAAe,EAAE,sBAAsBN,IAAI,KAAK,MAAM,GAAG,OAAO,GAAG,MAAM,KAAKhB,IAAI,QAAQA,IAAI;EAChG,CAAC,CAAC;EAEF;IAAA;IACE;IACA;IACA;IACA,IAAAvD,WAAA,CAAA8E,IAAA,EAAClF,YAAA,CAAAmF,IAAI;MACH7C,IAAI,EAAEA,IAAK;MACXC,kBAAkB,EAAEA,kBAAmB;MACvC,iBAAeC,QAAQ,IAAI4C;MAC3B;MACA;MACA;MACA;MACA;MACA;MAAA;MACA1C,KAAK,EAAE,CAAC;QAAEkC,QAAQ,EAAE,UAAU;QAAES,QAAQ,EAAE;MAAE,CAAC,EAAE3C,KAAK,CAAE;MACtDE,MAAM,EAAEA,MAAO;MAAAX,QAAA,gBAEf,IAAA7B,WAAA,CAAAkF,GAAA,EAACtF,YAAA,CAAAuF,UAAU;QAAA,IACJ/D,MAAM,GAAI;UAAEgE,OAAO,EAAE;YAAEC,iBAAiB,EAAE;UAAG;QAAE,CAAC,GAA+B,CAAC,CAAC;QACtFC,UAAU;QACVC,8BAA8B,EAAE,KAAM;QACtClD,yBAAyB,EAAEA,yBAA0B;QACrDmD,mBAAmB,EAAE,EAAG;QACxB9B,QAAQ,EAAEA,QAAS;QACnBQ,QAAQ,EAAEA,QAAS;QACnBG,mBAAmB,EAAEA;QACrB;QACA;QAAA;QACA/B,KAAK,EAAE;UACLmD,QAAQ,EAAE,CAAC;UACXR,QAAQ,EAAE,CAAC;UACXS,SAAS,EAAE,CAACzD,SAAS;UACrB0D,YAAY,EAAE,CAAC1D,SAAS;UACxB2D,UAAU,EAAE,CAAC3D,SAAS;UACtB4D,WAAW,EAAE,CAAC5D;QAChB,CAAE;QACFM,qBAAqB,EAAE,CACrB;UACEuD,aAAa,EAAE,KAAK;UACpBC,UAAU,EAAE,QAAQ;UACpBjE,GAAG;UACHkE,UAAU,EAAE/D,SAAS;UACrBgE,aAAa,EAAEhE,SAAS;UACxBiE,WAAW,EAAEnE,YAAY,GAAGE,SAAS;UACrCkE,YAAY,EAAEpE,YAAY,GAAGE;QAC/B,CAAC,EACDM,qBAAqB,CACrB;QACFC,MAAM,EAAEA,MAAM,GAAG,GAAGA,MAAM,QAAQ,GAAGwC,SAAU;QAAAnD,QAAA,EAE9CA;MAAQ,CACC,CAAC,EACZT,MAAM,IAAIgC,QAAQ,CAACgB,QAAQ,gBAC1B,IAAApE,WAAA,CAAAkF,GAAA,EAACtF,YAAA,CAAAmF,IAAI;QAACqB,aAAa,EAAC,MAAM;QAAC9D,KAAK,EAAEgC,SAAS,CAAC,MAAM,CAAE;QAAC9B,MAAM,EAAEA,MAAM,GAAG,GAAGA,MAAM,aAAa,GAAGwC;MAAU,CAAE,CAAC,GAC1G,IAAI,EACP5D,MAAM,IAAIgC,QAAQ,CAACiD,IAAI,gBACtB,IAAArG,WAAA,CAAAkF,GAAA,EAACtF,YAAA,CAAAmF,IAAI;QAACqB,aAAa,EAAC,MAAM;QAAC9D,KAAK,EAAEgC,SAAS,CAAC,OAAO,CAAE;QAAC9B,MAAM,EAAEA,MAAM,GAAG,GAAGA,MAAM,WAAW,GAAGwC;MAAU,CAAE,CAAC,GACzG,IAAI;IAAA,CACJ;EAAC;AAEX;AAEO,MAAMsB,OAAO,GAAA9E,OAAA,CAAA8E,OAAA,gBAAG,IAAAC,WAAI,EAAC3E,gBAAgB,CAAC;AAC7C0E,OAAO,CAACE,WAAW,GAAG,SAAS","ignoreList":[]}
@@ -5,7 +5,7 @@ import { Modal, Platform, StyleSheet } from 'react-native';
5
5
  import { GlassBlurWindow } from "../glass/blur-target.js";
6
6
  import { GestureHandlerRootView } from 'react-native-gesture-handler';
7
7
  import { BottomSheetBase } from "./BottomSheetBase.js";
8
- import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
9
  // Keyboard handling — only on native platforms. On web, keyboard events are
10
10
  // handled by the browser (and the web build resolves to `index.web.tsx`, which
11
11
  // never imports this module). `react-native-keyboard-controller` is an OPTIONAL
@@ -19,45 +19,39 @@ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-run
19
19
  // the specifier shape that does NOT work.
20
20
  const noopKeyboardHandler = (_handlers, _deps) => {};
21
21
  let useKeyboardHandler = noopKeyboardHandler;
22
-
23
- // react-native-keyboard-controller's <KeyboardProvider>. We re-establish it
24
- // INSIDE the sheet's RN <Modal> (see the render below): a <Modal> mounts into
25
- // its OWN native root, and neither the app-root GestureHandlerRootView nor the
26
- // app-root KeyboardProvider's native KeyboardControllerView extend across that
27
- // boundary. Without a provider inside the Modal, keyboard-controller consumers
28
- // (this sheet's keyboard tracker, plus any TextInputs in `children`) read the
29
- // default empty KeyboardContext — logging "Couldn't find real values for
30
- // KeyboardContext ..." — and receive no keyboard insets. When the optional
31
- // module is absent, or on web (no RN Modal native-window boundary, keyboard is
32
- // the browser's concern), this resolves to a passthrough that just renders its
33
- // children, so no provider is introduced where one isn't needed.
34
- const PassthroughKeyboardProvider = ({
35
- children
36
- }) => /*#__PURE__*/_jsx(_Fragment, {
37
- children: children
38
- });
39
- let KeyboardProvider = PassthroughKeyboardProvider;
40
22
  if (Platform.OS !== 'web' && typeof require !== 'undefined') {
41
23
  try {
42
24
  const keyboardController = require('react-native-keyboard-controller');
43
25
  useKeyboardHandler = keyboardController.useKeyboardHandler ?? noopKeyboardHandler;
44
- KeyboardProvider = keyboardController.KeyboardProvider ?? PassthroughKeyboardProvider;
45
26
  } catch {
46
- // react-native-keyboard-controller not available — keep the no-op
47
- // handler and passthrough provider.
27
+ // react-native-keyboard-controller not available — keep the no-op handler.
48
28
  }
49
29
  }
50
30
 
51
31
  /**
52
- * Registers the sheet's keyboard-height tracker. It lives in its own tiny
53
- * component — rendered INSIDE the Modal, under the re-established
54
- * <KeyboardProvider> — so `useKeyboardHandler` reads the in-Modal
55
- * KeyboardContext whose native KeyboardControllerView actually receives the
56
- * Modal window's keyboard insets (the app-root provider does not cross the
57
- * Modal's native-window boundary). It writes the live keyboard height into the
58
- * shared value that drives the sheet's translate/height styles. Renders
59
- * nothing. No-ops when react-native-keyboard-controller isn't installed / on
60
- * web (`useKeyboardHandler` is the module-level no-op there).
32
+ * Registers the sheet's keyboard-height tracker, writing the live keyboard
33
+ * height into the shared value that drives the sheet's translate/height styles.
34
+ * Renders nothing.
35
+ *
36
+ * It reads the APP's one `<KeyboardProvider>`, and the sheet deliberately does
37
+ * not mount a second one inside its `<Modal>`:
38
+ *
39
+ * - React context crosses a `<Modal>` like any other element, so this hook
40
+ * finds the app-root provider from inside the sheet.
41
+ * - The native events cross too: when a `<Modal>` shows, the root provider's
42
+ * `ModalAttachedWatcher` (keyboard-controller ≥ 1.13, Android) attaches a
43
+ * keyboard callback to the dialog's window and propagates it to the ROOT
44
+ * provider's view, which is where this handler is registered.
45
+ * - A second provider breaks the app until it restarts. Every provider's
46
+ * watcher answers the same `topShow`: each SUSPENDS its own main-window
47
+ * callback and then calls `dialog.setOnDismissListener` to un-suspend it —
48
+ * and a dialog keeps only the LAST listener. So on dismiss one provider
49
+ * resumes and the others stay suspended for good: after the first sheet, the
50
+ * app's `KeyboardAvoidingView`s never saw the keyboard again (Alia #608,
51
+ * Android 16, keyboard-controller 1.21.9 and unchanged in 1.22.5).
52
+ *
53
+ * No app-root provider means keyboard-controller works nowhere in that app; the
54
+ * hook then no-ops (and warns in development) like every other consumer.
61
55
  */
62
56
  function SheetKeyboardSync({
63
57
  keyboardHeight
@@ -78,10 +72,10 @@ function SheetKeyboardSync({
78
72
  }
79
73
 
80
74
  /**
81
- * Native shell: RN's `<Modal>` (its own native root window) + the
82
- * re-established `<KeyboardProvider>` + the sheet's keyboard tracker + a
83
- * `<GestureHandlerRootView>` (the app-root GHRV does not cross the Modal's
84
- * native-window boundary, so pan gestures need their own root here).
75
+ * Native shell: RN's `<Modal>` (its own native root window) + the sheet's
76
+ * keyboard tracker + a `<GestureHandlerRootView>` (the app-root GHRV does not
77
+ * cross the Modal's native-window boundary, so pan gestures need their own root
78
+ * here). No `<KeyboardProvider>`: see `SheetKeyboardSync`.
85
79
  */
86
80
  function NativeShell({
87
81
  visible,
@@ -95,15 +89,13 @@ function NativeShell({
95
89
  animationType: "none",
96
90
  statusBarTranslucent: true,
97
91
  onRequestClose: onRequestClose,
98
- children: /*#__PURE__*/_jsx(GlassBlurWindow, {
99
- children: /*#__PURE__*/_jsxs(KeyboardProvider, {
100
- children: [/*#__PURE__*/_jsx(SheetKeyboardSync, {
101
- keyboardHeight: keyboardHeight
102
- }), /*#__PURE__*/_jsx(GestureHandlerRootView, {
103
- style: styles.rootView,
104
- children: children
105
- })]
106
- })
92
+ children: /*#__PURE__*/_jsxs(GlassBlurWindow, {
93
+ children: [/*#__PURE__*/_jsx(SheetKeyboardSync, {
94
+ keyboardHeight: keyboardHeight
95
+ }), /*#__PURE__*/_jsx(GestureHandlerRootView, {
96
+ style: styles.rootView,
97
+ children: children
98
+ })]
107
99
  })
108
100
  });
109
101
  }
@@ -1 +1 @@
1
- {"version":3,"names":["forwardRef","Modal","Platform","StyleSheet","GlassBlurWindow","GestureHandlerRootView","BottomSheetBase","Fragment","_Fragment","jsx","_jsx","jsxs","_jsxs","noopKeyboardHandler","_handlers","_deps","useKeyboardHandler","PassthroughKeyboardProvider","children","KeyboardProvider","OS","require","keyboardController","SheetKeyboardSync","keyboardHeight","onMove","e","value","height","onEnd","NativeShell","visible","onRequestClose","transparent","animationType","statusBarTranslucent","style","styles","rootView","BottomSheet","props","ref","Shell","displayName","create","flex"],"sourceRoot":"../../../src","sources":["bottom-sheet/BottomSheet.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["forwardRef","Modal","Platform","StyleSheet","GlassBlurWindow","GestureHandlerRootView","BottomSheetBase","jsx","_jsx","jsxs","_jsxs","noopKeyboardHandler","_handlers","_deps","useKeyboardHandler","OS","require","keyboardController","SheetKeyboardSync","keyboardHeight","onMove","e","value","height","onEnd","NativeShell","visible","onRequestClose","children","transparent","animationType","statusBarTranslucent","style","styles","rootView","BottomSheet","props","ref","Shell","displayName","create","flex"],"sourceRoot":"../../../src","sources":["bottom-sheet/BottomSheet.tsx"],"mappings":";;AACA,SAASA,UAAU,QAAQ,OAAO;AAClC,SAASC,KAAK,EAAEC,QAAQ,EAAEC,UAAU,QAAQ,cAAc;AAE1D,SAASC,eAAe,QAAQ,yBAAsB;AACtD,SAASC,sBAAsB,QAAQ,8BAA8B;AAErE,SAASC,eAAe,QAAQ,sBAAmB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAGpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,mBAAmB,GAAGA,CAACC,SAA0D,EAAEC,KAAgB,KAAK,CAAC,CAAC;AAChH,IAAIC,kBAAwG,GAAGH,mBAAmB;AAElI,IAAIT,QAAQ,CAACa,EAAE,KAAK,KAAK,IAAI,OAAOC,OAAO,KAAK,WAAW,EAAE;EACzD,IAAI;IACA,MAAMC,kBAAkB,GAAGD,OAAO,CAAC,kCAAkC,CAAC;IACtEF,kBAAkB,GAAGG,kBAAkB,CAACH,kBAAkB,IAAIH,mBAAmB;EACrF,CAAC,CAAC,MAAM;IACJ;EAAA;AAER;;AAEA;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,SAASO,iBAAiBA,CAAC;EAAEC;AAAwD,CAAC,EAAE;EACpFL,kBAAkB,CAAC;IACfM,MAAM,EAAGC,CAAC,IAAK;MACX,SAAS;;MACTF,cAAc,CAACG,KAAK,GAAGD,CAAC,CAACE,MAAM;IACnC,CAAC;IACDC,KAAK,EAAGH,CAAC,IAAK;MACV,SAAS;;MACTF,cAAc,CAACG,KAAK,GAAGD,CAAC,CAACE,MAAM;IACnC;EACJ,CAAC,EAAE,EAAE,CAAC;EACN,OAAO,IAAI;AACf;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAASE,WAAWA,CAAC;EAAEC,OAAO;EAAEC,cAAc;EAAER,cAAc;EAAES;AAAgC,CAAC,EAAE;EAC/F,oBACIpB,IAAA,CAACP,KAAK;IAACyB,OAAO,EAAEA,OAAQ;IAACG,WAAW;IAACC,aAAa,EAAC,MAAM;IAACC,oBAAoB;IAACJ,cAAc,EAAEA,cAAe;IAAAC,QAAA,eAS1GlB,KAAA,CAACN,eAAe;MAAAwB,QAAA,gBACZpB,IAAA,CAACU,iBAAiB;QAACC,cAAc,EAAEA;MAAe,CAAE,CAAC,eACrDX,IAAA,CAACH,sBAAsB;QAAC2B,KAAK,EAAEC,MAAM,CAACC,QAAS;QAAAN,QAAA,EAAEA;MAAQ,CAAyB,CAAC;IAAA,CACtE;EAAC,CACf,CAAC;AAEhB;AAEA,MAAMO,WAAW,gBAAGnC,UAAU,CAAC,CAACoC,KAAuB,EAAEC,GAAuC,kBAC5F7B,IAAA,CAACF,eAAe;EAAA,GAAK8B,KAAK;EAAEC,GAAG,EAAEA,GAAI;EAACC,KAAK,EAAEb;AAAY,CAAE,CAC9D,CAAC;AAEFU,WAAW,CAACI,WAAW,GAAG,aAAa;AAEvC,MAAMN,MAAM,GAAG9B,UAAU,CAACqC,MAAM,CAAC;EAC7BN,QAAQ,EAAE;IACNO,IAAI,EAAE;EACV;AACJ,CAAC,CAAC;AAEF,eAAeN,WAAW;AAI1B,SAASA,WAAW","ignoreList":[]}
@@ -566,7 +566,7 @@ export const BottomSheetBase = /*#__PURE__*/forwardRef((props, ref) => {
566
566
  }, [colors.background, theme.isDark, detached]);
567
567
 
568
568
  // Publish the sheet's keyboard shared value to the shell so the native
569
- // shell can drive it from inside its own <KeyboardProvider>. Kept stable
569
+ // shell's keyboard tracker can drive it. Kept stable
570
570
  // (shared values are stable refs) so the shell never re-mounts for this.
571
571
  if (!rendered) return null;
572
572
 
@@ -54,6 +54,7 @@ function ChipRowComponent({
54
54
  role = 'group',
55
55
  accessibilityLabel,
56
56
  disabled,
57
+ keyboardShouldPersistTaps = 'handled',
57
58
  style,
58
59
  contentContainerStyle,
59
60
  testID
@@ -143,6 +144,7 @@ function ChipRowComponent({
143
144
  } : {}),
144
145
  horizontal: true,
145
146
  showsHorizontalScrollIndicator: false,
147
+ keyboardShouldPersistTaps: keyboardShouldPersistTaps,
146
148
  scrollEventThrottle: 16,
147
149
  onScroll: onScroll,
148
150
  onLayout: onLayout,
@@ -1 +1 @@
1
- {"version":3,"names":["React","memo","useCallback","useMemo","useState","Platform","ScrollView","View","adoptStyleSheet","useTheme","chipRowOverflow","jsx","_jsx","jsxs","_jsxs","IS_WEB","OS","CHIP_ROW_EDGE","STYLE_ID","TRACK","BLOOM_CHIP_ROW_CSS","ChipRowComponent","children","gap","contentInset","fadeColor","ringInset","role","accessibilityLabel","disabled","style","contentContainerStyle","testID","theme","useEffect","scroll","setScroll","x","viewport","content","overflow","fade","colors","background","onScroll","event","contentOffset","layoutMeasurement","contentSize","nativeEvent","width","onLayout","layout","previous","onContentSizeChange","edgeStyle","side","position","top","bottom","left","right","backgroundImage","undefined","minWidth","dataSet","bloomChipRowTrack","horizontal","showsHorizontalScrollIndicator","scrollEventThrottle","flexGrow","marginTop","marginBottom","marginLeft","marginRight","flexDirection","alignItems","paddingTop","paddingBottom","paddingLeft","paddingRight","pointerEvents","next","ChipRow","displayName"],"sourceRoot":"../../../src","sources":["chip/ChipRow.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","memo","useCallback","useMemo","useState","Platform","ScrollView","View","adoptStyleSheet","useTheme","chipRowOverflow","jsx","_jsx","jsxs","_jsxs","IS_WEB","OS","CHIP_ROW_EDGE","STYLE_ID","TRACK","BLOOM_CHIP_ROW_CSS","ChipRowComponent","children","gap","contentInset","fadeColor","ringInset","role","accessibilityLabel","disabled","keyboardShouldPersistTaps","style","contentContainerStyle","testID","theme","useEffect","scroll","setScroll","x","viewport","content","overflow","fade","colors","background","onScroll","event","contentOffset","layoutMeasurement","contentSize","nativeEvent","width","onLayout","layout","previous","onContentSizeChange","edgeStyle","side","position","top","bottom","left","right","backgroundImage","undefined","minWidth","dataSet","bloomChipRowTrack","horizontal","showsHorizontalScrollIndicator","scrollEventThrottle","flexGrow","marginTop","marginBottom","marginLeft","marginRight","flexDirection","alignItems","paddingTop","paddingBottom","paddingLeft","paddingRight","pointerEvents","next","ChipRow","displayName"],"sourceRoot":"../../../src","sources":["chip/ChipRow.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"BottomSheet.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/BottomSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAyB,MAAM,SAAS,CAAC;AA6FvF,QAAA,MAAM,WAAW,yFAEf,CAAC;AAUH,eAAe,WAAW,CAAC;AAE3B,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"BottomSheet.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/BottomSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAyB,MAAM,SAAS,CAAC;AAyFvF,QAAA,MAAM,WAAW,yFAEf,CAAC;AAUH,eAAe,WAAW,CAAC;AAE3B,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -129,7 +129,8 @@ export interface BottomSheetProps {
129
129
  /**
130
130
  * Props consumed by a platform Shell — the outermost wrapper that hosts the
131
131
  * sheet body in a full-screen overlay. Native wraps it in RN's `<Modal>` +
132
- * `<KeyboardProvider>` + `<GestureHandlerRootView>`; web wraps it in bloom's
132
+ * `<GestureHandlerRootView>` (keyboard tracking reads the app's own root
133
+ * `<KeyboardProvider>`, never a second one); web wraps it in bloom's
133
134
  * stable DOM `<Portal>` + a fixed `<GestureHandlerRootView>`. Splitting the
134
135
  * shell is what lets web avoid RN-Web's `<Modal>`/`ModalPortal`, whose host
135
136
  * node is orphaned under React 19 concurrent/StrictMode so the sheet mounts
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAkB,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACtG,OAAiB,EAAE,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEzF,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;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC;;;;;;;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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAkB,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACtG,OAAiB,EAAE,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEzF,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;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC;;;;;;;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;;;;;;;;;GASG;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"}
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import type { ChipRowProps } from './types';
3
3
  /** Width of each edge's fade. */
4
4
  export declare const CHIP_ROW_EDGE = 40;
5
- declare function ChipRowComponent({ children, gap, contentInset, fadeColor, ringInset, role, accessibilityLabel, disabled, style, contentContainerStyle, testID, }: ChipRowProps): import("react/jsx-runtime").JSX.Element;
5
+ declare function ChipRowComponent({ children, gap, contentInset, fadeColor, ringInset, role, accessibilityLabel, disabled, keyboardShouldPersistTaps, style, contentContainerStyle, testID, }: ChipRowProps): import("react/jsx-runtime").JSX.Element;
6
6
  export declare const ChipRow: React.MemoExoticComponent<typeof ChipRowComponent>;
7
7
  export {};
8
8
  //# sourceMappingURL=ChipRow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChipRow.d.ts","sourceRoot":"","sources":["../../../../src/chip/ChipRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAcpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AA4B5C,iCAAiC;AACjC,eAAO,MAAM,aAAa,KAAK,CAAC;AAehC,iBAAS,gBAAgB,CAAC,EACxB,QAAQ,EACR,GAAO,EACP,YAAgB,EAChB,SAAS,EACT,SAAa,EACb,IAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,KAAK,EACL,qBAAqB,EACrB,MAAM,GACP,EAAE,YAAY,2CAiGd;AAED,eAAO,MAAM,OAAO,oDAAyB,CAAC"}
1
+ {"version":3,"file":"ChipRow.d.ts","sourceRoot":"","sources":["../../../../src/chip/ChipRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAcpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AA4B5C,iCAAiC;AACjC,eAAO,MAAM,aAAa,KAAK,CAAC;AAehC,iBAAS,gBAAgB,CAAC,EACxB,QAAQ,EACR,GAAO,EACP,YAAgB,EAChB,SAAS,EACT,SAAa,EACb,IAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,yBAAqC,EACrC,KAAK,EACL,qBAAqB,EACrB,MAAM,GACP,EAAE,YAAY,2CAkGd;AAED,eAAO,MAAM,OAAO,oDAAyB,CAAC"}
@@ -127,6 +127,15 @@ export interface ChipRowProps {
127
127
  accessibilityLabel?: string;
128
128
  /** Marks the whole row disabled to assistive technology (web `aria-disabled`). */
129
129
  disabled?: boolean;
130
+ /**
131
+ * Whether a tap on a pill while the software keyboard is open reaches the
132
+ * pill. Default `handled`: the pill takes the press and the keyboard stays.
133
+ * React Native's own default (`never`) spends the first tap dismissing the
134
+ * keyboard, so a row of pills under a text field — a composer's audience and
135
+ * language pills, a search screen's filters — needed two taps, and the first
136
+ * one dropped the keyboard the reader was typing with. Native only.
137
+ */
138
+ keyboardShouldPersistTaps?: 'always' | 'never' | 'handled';
130
139
  style?: StyleProp<ViewStyle>;
131
140
  contentContainerStyle?: StyleProp<ViewStyle>;
132
141
  testID?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/chip/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/chip/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC3E,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEpE,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAErE;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,GAAG,KAAK,CAAC;AAE/E;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,UAAU,CAAC;AAElD;;;GAGG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAE5G;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,KAAK,CAAC;AAE/D,MAAM,WAAW,SAAS;IACxB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,yBAAyB,EAAE,kBAAkB,CAAC;IACnE,YAAY,CAAC,EAAE,OAAO,yBAAyB,EAAE,kBAAkB,CAAC;IAEpE,gCAAgC;IAChC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;;OAIG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,sBAAsB;IACtB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;;;;;OAKG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB;IACnB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,sCAAsC;IACtC,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,qDAAqD;IACrD,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,IAAI,CAAC;IACzE,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,iBAAiB;IACjB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,gCAAgC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mFAAmF;IACnF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8FAA8F;IAC9F,IAAI,CAAC,EAAE,OAAO,GAAG,YAAY,GAAG,SAAS,CAAC;IAC1C,qFAAqF;IACrF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kFAAkF;IAClF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;OAOG;IACH,yBAAyB,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IAC3D,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,qBAAqB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"BottomSheet.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/BottomSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAyB,MAAM,SAAS,CAAC;AA6FvF,QAAA,MAAM,WAAW,yFAEf,CAAC;AAUH,eAAe,WAAW,CAAC;AAE3B,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"BottomSheet.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/BottomSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAyB,MAAM,SAAS,CAAC;AAyFvF,QAAA,MAAM,WAAW,yFAEf,CAAC;AAUH,eAAe,WAAW,CAAC;AAE3B,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -129,7 +129,8 @@ export interface BottomSheetProps {
129
129
  /**
130
130
  * Props consumed by a platform Shell — the outermost wrapper that hosts the
131
131
  * sheet body in a full-screen overlay. Native wraps it in RN's `<Modal>` +
132
- * `<KeyboardProvider>` + `<GestureHandlerRootView>`; web wraps it in bloom's
132
+ * `<GestureHandlerRootView>` (keyboard tracking reads the app's own root
133
+ * `<KeyboardProvider>`, never a second one); web wraps it in bloom's
133
134
  * stable DOM `<Portal>` + a fixed `<GestureHandlerRootView>`. Splitting the
134
135
  * shell is what lets web avoid RN-Web's `<Modal>`/`ModalPortal`, whose host
135
136
  * node is orphaned under React 19 concurrent/StrictMode so the sheet mounts
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAkB,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACtG,OAAiB,EAAE,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEzF,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;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC;;;;;;;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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/bottom-sheet/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAkB,KAAK,iBAAiB,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACtG,OAAiB,EAAE,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEzF,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;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACvC;;;;;;;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;;;;;;;;;GASG;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"}
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import type { ChipRowProps } from './types';
3
3
  /** Width of each edge's fade. */
4
4
  export declare const CHIP_ROW_EDGE = 40;
5
- declare function ChipRowComponent({ children, gap, contentInset, fadeColor, ringInset, role, accessibilityLabel, disabled, style, contentContainerStyle, testID, }: ChipRowProps): import("react/jsx-runtime").JSX.Element;
5
+ declare function ChipRowComponent({ children, gap, contentInset, fadeColor, ringInset, role, accessibilityLabel, disabled, keyboardShouldPersistTaps, style, contentContainerStyle, testID, }: ChipRowProps): import("react/jsx-runtime").JSX.Element;
6
6
  export declare const ChipRow: React.MemoExoticComponent<typeof ChipRowComponent>;
7
7
  export {};
8
8
  //# sourceMappingURL=ChipRow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChipRow.d.ts","sourceRoot":"","sources":["../../../../src/chip/ChipRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAcpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AA4B5C,iCAAiC;AACjC,eAAO,MAAM,aAAa,KAAK,CAAC;AAehC,iBAAS,gBAAgB,CAAC,EACxB,QAAQ,EACR,GAAO,EACP,YAAgB,EAChB,SAAS,EACT,SAAa,EACb,IAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,KAAK,EACL,qBAAqB,EACrB,MAAM,GACP,EAAE,YAAY,2CAiGd;AAED,eAAO,MAAM,OAAO,oDAAyB,CAAC"}
1
+ {"version":3,"file":"ChipRow.d.ts","sourceRoot":"","sources":["../../../../src/chip/ChipRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAcpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AA4B5C,iCAAiC;AACjC,eAAO,MAAM,aAAa,KAAK,CAAC;AAehC,iBAAS,gBAAgB,CAAC,EACxB,QAAQ,EACR,GAAO,EACP,YAAgB,EAChB,SAAS,EACT,SAAa,EACb,IAAc,EACd,kBAAkB,EAClB,QAAQ,EACR,yBAAqC,EACrC,KAAK,EACL,qBAAqB,EACrB,MAAM,GACP,EAAE,YAAY,2CAkGd;AAED,eAAO,MAAM,OAAO,oDAAyB,CAAC"}
@@ -127,6 +127,15 @@ export interface ChipRowProps {
127
127
  accessibilityLabel?: string;
128
128
  /** Marks the whole row disabled to assistive technology (web `aria-disabled`). */
129
129
  disabled?: boolean;
130
+ /**
131
+ * Whether a tap on a pill while the software keyboard is open reaches the
132
+ * pill. Default `handled`: the pill takes the press and the keyboard stays.
133
+ * React Native's own default (`never`) spends the first tap dismissing the
134
+ * keyboard, so a row of pills under a text field — a composer's audience and
135
+ * language pills, a search screen's filters — needed two taps, and the first
136
+ * one dropped the keyboard the reader was typing with. Native only.
137
+ */
138
+ keyboardShouldPersistTaps?: 'always' | 'never' | 'handled';
130
139
  style?: StyleProp<ViewStyle>;
131
140
  contentContainerStyle?: StyleProp<ViewStyle>;
132
141
  testID?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/chip/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/chip/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxy.so/bloom",
3
- "version": "4.22.0",
3
+ "version": "4.22.1",
4
4
  "packageManager": "bun@1.3.14",
5
5
  "description": "Bloom UI — Oxy ecosystem component library for React Native + Expo + Web",
6
6
  "main": "lib/commonjs/index.js",
@@ -22,41 +22,39 @@ import type { BottomSheetProps, BottomSheetRef, BottomSheetShellProps } from './
22
22
  const noopKeyboardHandler = (_handlers: Record<string, (e: { height: number }) => void>, _deps: unknown[]) => {};
23
23
  let useKeyboardHandler: (handlers: Record<string, (e: { height: number }) => void>, deps: unknown[]) => void = noopKeyboardHandler;
24
24
 
25
- // react-native-keyboard-controller's <KeyboardProvider>. We re-establish it
26
- // INSIDE the sheet's RN <Modal> (see the render below): a <Modal> mounts into
27
- // its OWN native root, and neither the app-root GestureHandlerRootView nor the
28
- // app-root KeyboardProvider's native KeyboardControllerView extend across that
29
- // boundary. Without a provider inside the Modal, keyboard-controller consumers
30
- // (this sheet's keyboard tracker, plus any TextInputs in `children`) read the
31
- // default empty KeyboardContext — logging "Couldn't find real values for
32
- // KeyboardContext ..." — and receive no keyboard insets. When the optional
33
- // module is absent, or on web (no RN Modal native-window boundary, keyboard is
34
- // the browser's concern), this resolves to a passthrough that just renders its
35
- // children, so no provider is introduced where one isn't needed.
36
- const PassthroughKeyboardProvider = ({ children }: { children: React.ReactNode }) => <>{children}</>;
37
- let KeyboardProvider: React.ComponentType<{ children: React.ReactNode }> = PassthroughKeyboardProvider;
38
-
39
25
  if (Platform.OS !== 'web' && typeof require !== 'undefined') {
40
26
  try {
41
27
  const keyboardController = require('react-native-keyboard-controller');
42
28
  useKeyboardHandler = keyboardController.useKeyboardHandler ?? noopKeyboardHandler;
43
- KeyboardProvider = keyboardController.KeyboardProvider ?? PassthroughKeyboardProvider;
44
29
  } catch {
45
- // react-native-keyboard-controller not available — keep the no-op
46
- // handler and passthrough provider.
30
+ // react-native-keyboard-controller not available — keep the no-op handler.
47
31
  }
48
32
  }
49
33
 
50
34
  /**
51
- * Registers the sheet's keyboard-height tracker. It lives in its own tiny
52
- * component — rendered INSIDE the Modal, under the re-established
53
- * <KeyboardProvider> — so `useKeyboardHandler` reads the in-Modal
54
- * KeyboardContext whose native KeyboardControllerView actually receives the
55
- * Modal window's keyboard insets (the app-root provider does not cross the
56
- * Modal's native-window boundary). It writes the live keyboard height into the
57
- * shared value that drives the sheet's translate/height styles. Renders
58
- * nothing. No-ops when react-native-keyboard-controller isn't installed / on
59
- * web (`useKeyboardHandler` is the module-level no-op there).
35
+ * Registers the sheet's keyboard-height tracker, writing the live keyboard
36
+ * height into the shared value that drives the sheet's translate/height styles.
37
+ * Renders nothing.
38
+ *
39
+ * It reads the APP's one `<KeyboardProvider>`, and the sheet deliberately does
40
+ * not mount a second one inside its `<Modal>`:
41
+ *
42
+ * - React context crosses a `<Modal>` like any other element, so this hook
43
+ * finds the app-root provider from inside the sheet.
44
+ * - The native events cross too: when a `<Modal>` shows, the root provider's
45
+ * `ModalAttachedWatcher` (keyboard-controller ≥ 1.13, Android) attaches a
46
+ * keyboard callback to the dialog's window and propagates it to the ROOT
47
+ * provider's view, which is where this handler is registered.
48
+ * - A second provider breaks the app until it restarts. Every provider's
49
+ * watcher answers the same `topShow`: each SUSPENDS its own main-window
50
+ * callback and then calls `dialog.setOnDismissListener` to un-suspend it —
51
+ * and a dialog keeps only the LAST listener. So on dismiss one provider
52
+ * resumes and the others stay suspended for good: after the first sheet, the
53
+ * app's `KeyboardAvoidingView`s never saw the keyboard again (Alia #608,
54
+ * Android 16, keyboard-controller 1.21.9 and unchanged in 1.22.5).
55
+ *
56
+ * No app-root provider means keyboard-controller works nowhere in that app; the
57
+ * hook then no-ops (and warns in development) like every other consumer.
60
58
  */
61
59
  function SheetKeyboardSync({ keyboardHeight }: { keyboardHeight: SharedValue<number> }) {
62
60
  useKeyboardHandler({
@@ -73,27 +71,25 @@ function SheetKeyboardSync({ keyboardHeight }: { keyboardHeight: SharedValue<num
73
71
  }
74
72
 
75
73
  /**
76
- * Native shell: RN's `<Modal>` (its own native root window) + the
77
- * re-established `<KeyboardProvider>` + the sheet's keyboard tracker + a
78
- * `<GestureHandlerRootView>` (the app-root GHRV does not cross the Modal's
79
- * native-window boundary, so pan gestures need their own root here).
74
+ * Native shell: RN's `<Modal>` (its own native root window) + the sheet's
75
+ * keyboard tracker + a `<GestureHandlerRootView>` (the app-root GHRV does not
76
+ * cross the Modal's native-window boundary, so pan gestures need their own root
77
+ * here). No `<KeyboardProvider>`: see `SheetKeyboardSync`.
80
78
  */
81
79
  function NativeShell({ visible, onRequestClose, keyboardHeight, children }: BottomSheetShellProps) {
82
80
  return (
83
81
  <Modal visible={visible} transparent animationType="none" statusBarTranslucent onRequestClose={onRequestClose}>
84
82
  {/*
85
83
  This <Modal> is its own native window — the same boundary the
86
- KeyboardProvider and GestureHandlerRootView above are re-established
87
- for. `GlassBlurWindow` declares it to the glass layer, which is the
84
+ GestureHandlerRootView below is re-established for.
85
+ `GlassBlurWindow` declares it to the glass layer, which is the
88
86
  ONLY thing that lets a backdrop in here take an Android blur target:
89
87
  a BlurView in the app's own window would be a descendant of what it
90
88
  blurs, and that segfaults. See `glass/blur-target.tsx`.
91
89
  */}
92
90
  <GlassBlurWindow>
93
- <KeyboardProvider>
94
- <SheetKeyboardSync keyboardHeight={keyboardHeight} />
95
- <GestureHandlerRootView style={styles.rootView}>{children}</GestureHandlerRootView>
96
- </KeyboardProvider>
91
+ <SheetKeyboardSync keyboardHeight={keyboardHeight} />
92
+ <GestureHandlerRootView style={styles.rootView}>{children}</GestureHandlerRootView>
97
93
  </GlassBlurWindow>
98
94
  </Modal>
99
95
  );
@@ -606,7 +606,7 @@ export const BottomSheetBase = forwardRef((props: BottomSheetBaseProps, ref: Rea
606
606
  }, [colors.background, theme.isDark, detached]);
607
607
 
608
608
  // Publish the sheet's keyboard shared value to the shell so the native
609
- // shell can drive it from inside its own <KeyboardProvider>. Kept stable
609
+ // shell's keyboard tracker can drive it. Kept stable
610
610
  // (shared values are stable refs) so the shell never re-mounts for this.
611
611
  if (!rendered) return null;
612
612
 
@@ -127,7 +127,8 @@ export interface BottomSheetProps {
127
127
  /**
128
128
  * Props consumed by a platform Shell — the outermost wrapper that hosts the
129
129
  * sheet body in a full-screen overlay. Native wraps it in RN's `<Modal>` +
130
- * `<KeyboardProvider>` + `<GestureHandlerRootView>`; web wraps it in bloom's
130
+ * `<GestureHandlerRootView>` (keyboard tracking reads the app's own root
131
+ * `<KeyboardProvider>`, never a second one); web wraps it in bloom's
131
132
  * stable DOM `<Portal>` + a fixed `<GestureHandlerRootView>`. Splitting the
132
133
  * shell is what lets web avoid RN-Web's `<Modal>`/`ModalPortal`, whose host
133
134
  * node is orphaned under React 19 concurrent/StrictMode so the sheet mounts
@@ -65,6 +65,7 @@ function ChipRowComponent({
65
65
  role = 'group',
66
66
  accessibilityLabel,
67
67
  disabled,
68
+ keyboardShouldPersistTaps = 'handled',
68
69
  style,
69
70
  contentContainerStyle,
70
71
  testID,
@@ -127,6 +128,7 @@ function ChipRowComponent({
127
128
  {...(IS_WEB ? ({ dataSet: { bloomChipRowTrack: '' } } as Record<string, unknown>) : {})}
128
129
  horizontal
129
130
  showsHorizontalScrollIndicator={false}
131
+ keyboardShouldPersistTaps={keyboardShouldPersistTaps}
130
132
  scrollEventThrottle={16}
131
133
  onScroll={onScroll}
132
134
  onLayout={onLayout}
package/src/chip/types.ts CHANGED
@@ -132,6 +132,15 @@ export interface ChipRowProps {
132
132
  accessibilityLabel?: string;
133
133
  /** Marks the whole row disabled to assistive technology (web `aria-disabled`). */
134
134
  disabled?: boolean;
135
+ /**
136
+ * Whether a tap on a pill while the software keyboard is open reaches the
137
+ * pill. Default `handled`: the pill takes the press and the keyboard stays.
138
+ * React Native's own default (`never`) spends the first tap dismissing the
139
+ * keyboard, so a row of pills under a text field — a composer's audience and
140
+ * language pills, a search screen's filters — needed two taps, and the first
141
+ * one dropped the keyboard the reader was typing with. Native only.
142
+ */
143
+ keyboardShouldPersistTaps?: 'always' | 'never' | 'handled';
135
144
  style?: StyleProp<ViewStyle>;
136
145
  contentContainerStyle?: StyleProp<ViewStyle>;
137
146
  testID?: string;