@webority-technologies/mobile 0.0.14 → 0.0.15

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.
@@ -287,10 +287,15 @@ const BottomSheet = exports.BottomSheet = /*#__PURE__*/(0, _react.forwardRef)((p
287
287
  }, [keyboardBehavior, keyboardOffset]);
288
288
 
289
289
  // ───────── Animated styles ─────────
290
+ const safeAreaTop = insets.top;
290
291
  const sheetStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
291
- // Don't push past the screen top — keyboard offset is clamped to minTopY.
292
292
  const yWithKb = translateY.value + keyboardOffset.value;
293
- const clamped = yWithKb < minTopY ? minTopY : yWithKb;
293
+ // When the keyboard is up, allow the sheet to slide above its natural
294
+ // max-snap-point top (`minTopY`) so the input area stays visible. We still
295
+ // clamp to the safe-area top so the sheet doesn't disappear under the
296
+ // status bar / notch.
297
+ const lowerBound = keyboardOffset.value < 0 ? safeAreaTop : minTopY;
298
+ const clamped = yWithKb < lowerBound ? lowerBound : yWithKb;
294
299
  return {
295
300
  transform: [{
296
301
  translateY: clamped
@@ -335,8 +340,13 @@ const BottomSheet = exports.BottomSheet = /*#__PURE__*/(0, _react.forwardRef)((p
335
340
  testID: testID,
336
341
  accessibilityViewIsModal: accessibilityViewIsModal ?? isExpanded,
337
342
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
338
- style: [styles.backdrop, {
339
- backgroundColor: theme.colors.background.overlay
343
+ style: [styles.backdrop,
344
+ // Solid scrim — the theme `background.overlay` token bakes in alpha
345
+ // and double-multiplies with `backdropOpacity`, leaving the backdrop
346
+ // looking washed out. Standard modal scrims are solid black so the
347
+ // prop controls the actual final opacity.
348
+ {
349
+ backgroundColor: '#000'
340
350
  }, backdropStyle],
341
351
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
342
352
  style: _reactNative.StyleSheet.absoluteFill,
@@ -282,10 +282,15 @@ const BottomSheet = /*#__PURE__*/forwardRef((props, ref) => {
282
282
  }, [keyboardBehavior, keyboardOffset]);
283
283
 
284
284
  // ───────── Animated styles ─────────
285
+ const safeAreaTop = insets.top;
285
286
  const sheetStyle = useAnimatedStyle(() => {
286
- // Don't push past the screen top — keyboard offset is clamped to minTopY.
287
287
  const yWithKb = translateY.value + keyboardOffset.value;
288
- const clamped = yWithKb < minTopY ? minTopY : yWithKb;
288
+ // When the keyboard is up, allow the sheet to slide above its natural
289
+ // max-snap-point top (`minTopY`) so the input area stays visible. We still
290
+ // clamp to the safe-area top so the sheet doesn't disappear under the
291
+ // status bar / notch.
292
+ const lowerBound = keyboardOffset.value < 0 ? safeAreaTop : minTopY;
293
+ const clamped = yWithKb < lowerBound ? lowerBound : yWithKb;
289
294
  return {
290
295
  transform: [{
291
296
  translateY: clamped
@@ -330,8 +335,13 @@ const BottomSheet = /*#__PURE__*/forwardRef((props, ref) => {
330
335
  testID: testID,
331
336
  accessibilityViewIsModal: accessibilityViewIsModal ?? isExpanded,
332
337
  children: [/*#__PURE__*/_jsx(Animated.View, {
333
- style: [styles.backdrop, {
334
- backgroundColor: theme.colors.background.overlay
338
+ style: [styles.backdrop,
339
+ // Solid scrim — the theme `background.overlay` token bakes in alpha
340
+ // and double-multiplies with `backdropOpacity`, leaving the backdrop
341
+ // looking washed out. Standard modal scrims are solid black so the
342
+ // prop controls the actual final opacity.
343
+ {
344
+ backgroundColor: '#000'
335
345
  }, backdropStyle],
336
346
  children: /*#__PURE__*/_jsx(Pressable, {
337
347
  style: StyleSheet.absoluteFill,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webority-technologies/mobile",
3
- "version": "0.0.14",
3
+ "version": "0.0.15",
4
4
  "description": "Beautiful, animated, accessible React Native components plus API/auth/logging/network/storage utilities for Webority projects.",
5
5
  "keywords": [
6
6
  "react-native",