@mustmove/bottom-sheet 1.0.5 → 1.0.6

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.
@@ -34,6 +34,7 @@ function BottomSheetContentComponent({
34
34
  animatedDetentsState,
35
35
  animatedSheetHeight,
36
36
  animatedKeyboardState,
37
+ animatedScrollableState,
37
38
  isInTemporaryPosition
38
39
  } = (0, _hooks.useBottomSheetInternal)();
39
40
  //#endregion
@@ -42,7 +43,8 @@ function BottomSheetContentComponent({
42
43
  const animatedContentHeightMax = (0, _reactNativeReanimated.useDerivedValue)(() => {
43
44
  const {
44
45
  containerHeight,
45
- handleHeight
46
+ handleHeight,
47
+ contentHeight: measuredContentHeight
46
48
  } = animatedLayoutState.get();
47
49
 
48
50
  /**
@@ -94,6 +96,16 @@ function BottomSheetContentComponent({
94
96
  }
95
97
  }
96
98
 
99
+ /**
100
+ * When the keyboard is shown and the content is non-scrollable (VIEW type),
101
+ * ensure the content height doesn't shrink below the measured content height.
102
+ * This prevents clipping of fixed-layout content (e.g. buttons at the bottom)
103
+ * when the container shrinks on Android with adjustResize.
104
+ */
105
+ if (keyboardStatus === _constants.KEYBOARD_STATUS.SHOWN && measuredContentHeight !== _constants.INITIAL_LAYOUT_VALUE && animatedScrollableState.get().type === _constants.SCROLLABLE_TYPE.VIEW && contentHeight < measuredContentHeight) {
106
+ contentHeight = measuredContentHeight;
107
+ }
108
+
97
109
  /**
98
110
  * before the container is measured, `contentHeight` value will be below zero,
99
111
  * which will lead to freeze the scrollable.
@@ -101,7 +113,7 @@ function BottomSheetContentComponent({
101
113
  * @link (https://github.com/gorhom/react-native-bottom-sheet/issues/470)
102
114
  */
103
115
  return Math.max(contentHeight, 0);
104
- }, [animatedLayoutState, animatedKeyboardState, animatedSheetHeight, animatedPosition, isInTemporaryPosition, keyboardBehavior]);
116
+ }, [animatedLayoutState, animatedKeyboardState, animatedSheetHeight, animatedScrollableState, animatedPosition, isInTemporaryPosition, keyboardBehavior]);
105
117
  const animatedPaddingBottom = (0, _reactNativeReanimated.useDerivedValue)(() => {
106
118
  const containerHeight = animatedLayoutState.get().containerHeight;
107
119
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeReanimated","_constants","_hooks","_utilities","_bottomSheetDraggableView","_interopRequireDefault","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","BottomSheetContentComponent","detached","animationConfigs","overrideReduceMotion","keyboardBehavior","accessible","accessibilityLabel","accessibilityHint","accessibilityRole","children","enableDynamicSizing","overDragResistanceFactor","enableContentPanningGesture","animatedPosition","animatedLayoutState","animatedDetentsState","animatedSheetHeight","animatedKeyboardState","isInTemporaryPosition","useBottomSheetInternal","animatedContentHeightMax","useDerivedValue","containerHeight","handleHeight","INITIAL_LAYOUT_VALUE","status","keyboardStatus","heightWithinContainer","keyboardHeightWithinContainer","contentHeight","Math","max","KEYBOARD_BEHAVIOR","extend","KEYBOARD_STATUS","SHOWN","fillParent","interactive","animatedPaddingBottom","highestDetentPosition","highestSnapPoint","overDragSafePaddingBottom","sqrt","paddingBottom","contentMaskContainerAnimatedStyle","useAnimatedStyle","height","animate","point","configs","contentContainerStyle","useMemo","overflow","DraggableView","BottomSheetDraggableView","Animated","View","jsx","style","BottomSheetContent","exports","memo","displayName"],"sourceRoot":"../../../../src","sources":["components/bottomSheet/BottomSheetContent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeReanimated","_constants","_hooks","_utilities","_bottomSheetDraggableView","_interopRequireDefault","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","BottomSheetContentComponent","detached","animationConfigs","overrideReduceMotion","keyboardBehavior","accessible","accessibilityLabel","accessibilityHint","accessibilityRole","children","enableDynamicSizing","overDragResistanceFactor","enableContentPanningGesture","animatedPosition","animatedLayoutState","animatedDetentsState","animatedSheetHeight","animatedKeyboardState","animatedScrollableState","isInTemporaryPosition","useBottomSheetInternal","animatedContentHeightMax","useDerivedValue","containerHeight","handleHeight","contentHeight","measuredContentHeight","INITIAL_LAYOUT_VALUE","status","keyboardStatus","heightWithinContainer","keyboardHeightWithinContainer","Math","max","KEYBOARD_BEHAVIOR","extend","KEYBOARD_STATUS","SHOWN","fillParent","interactive","type","SCROLLABLE_TYPE","VIEW","animatedPaddingBottom","highestDetentPosition","highestSnapPoint","overDragSafePaddingBottom","sqrt","paddingBottom","contentMaskContainerAnimatedStyle","useAnimatedStyle","height","animate","point","configs","contentContainerStyle","useMemo","overflow","DraggableView","BottomSheetDraggableView","Animated","View","jsx","style","BottomSheetContent","exports","memo","displayName"],"sourceRoot":"../../../../src","sources":["components/bottomSheet/BottomSheetContent.tsx"],"mappings":"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","ignoreList":[]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  import React, { memo, useMemo } from 'react';
4
4
  import Animated, { useAnimatedStyle, useDerivedValue } from 'react-native-reanimated';
5
- import { INITIAL_LAYOUT_VALUE, KEYBOARD_BEHAVIOR, KEYBOARD_STATUS } from '../../constants';
5
+ import { INITIAL_LAYOUT_VALUE, KEYBOARD_BEHAVIOR, KEYBOARD_STATUS, SCROLLABLE_TYPE } from '../../constants';
6
6
  import { useBottomSheetInternal } from '../../hooks';
7
7
  import { animate } from '../../utilities';
8
8
  import BottomSheetDraggableView from '../bottomSheetDraggableView';
@@ -28,6 +28,7 @@ function BottomSheetContentComponent({
28
28
  animatedDetentsState,
29
29
  animatedSheetHeight,
30
30
  animatedKeyboardState,
31
+ animatedScrollableState,
31
32
  isInTemporaryPosition
32
33
  } = useBottomSheetInternal();
33
34
  //#endregion
@@ -36,7 +37,8 @@ function BottomSheetContentComponent({
36
37
  const animatedContentHeightMax = useDerivedValue(() => {
37
38
  const {
38
39
  containerHeight,
39
- handleHeight
40
+ handleHeight,
41
+ contentHeight: measuredContentHeight
40
42
  } = animatedLayoutState.get();
41
43
 
42
44
  /**
@@ -88,6 +90,16 @@ function BottomSheetContentComponent({
88
90
  }
89
91
  }
90
92
 
93
+ /**
94
+ * When the keyboard is shown and the content is non-scrollable (VIEW type),
95
+ * ensure the content height doesn't shrink below the measured content height.
96
+ * This prevents clipping of fixed-layout content (e.g. buttons at the bottom)
97
+ * when the container shrinks on Android with adjustResize.
98
+ */
99
+ if (keyboardStatus === KEYBOARD_STATUS.SHOWN && measuredContentHeight !== INITIAL_LAYOUT_VALUE && animatedScrollableState.get().type === SCROLLABLE_TYPE.VIEW && contentHeight < measuredContentHeight) {
100
+ contentHeight = measuredContentHeight;
101
+ }
102
+
91
103
  /**
92
104
  * before the container is measured, `contentHeight` value will be below zero,
93
105
  * which will lead to freeze the scrollable.
@@ -95,7 +107,7 @@ function BottomSheetContentComponent({
95
107
  * @link (https://github.com/gorhom/react-native-bottom-sheet/issues/470)
96
108
  */
97
109
  return Math.max(contentHeight, 0);
98
- }, [animatedLayoutState, animatedKeyboardState, animatedSheetHeight, animatedPosition, isInTemporaryPosition, keyboardBehavior]);
110
+ }, [animatedLayoutState, animatedKeyboardState, animatedSheetHeight, animatedScrollableState, animatedPosition, isInTemporaryPosition, keyboardBehavior]);
99
111
  const animatedPaddingBottom = useDerivedValue(() => {
100
112
  const containerHeight = animatedLayoutState.get().containerHeight;
101
113
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["React","memo","useMemo","Animated","useAnimatedStyle","useDerivedValue","INITIAL_LAYOUT_VALUE","KEYBOARD_BEHAVIOR","KEYBOARD_STATUS","useBottomSheetInternal","animate","BottomSheetDraggableView","jsx","_jsx","BottomSheetContentComponent","detached","animationConfigs","overrideReduceMotion","keyboardBehavior","accessible","accessibilityLabel","accessibilityHint","accessibilityRole","children","enableDynamicSizing","overDragResistanceFactor","enableContentPanningGesture","animatedPosition","animatedLayoutState","animatedDetentsState","animatedSheetHeight","animatedKeyboardState","isInTemporaryPosition","animatedContentHeightMax","containerHeight","handleHeight","get","status","keyboardStatus","heightWithinContainer","keyboardHeightWithinContainer","contentHeight","Math","max","extend","SHOWN","fillParent","interactive","animatedPaddingBottom","highestDetentPosition","highestSnapPoint","overDragSafePaddingBottom","sqrt","paddingBottom","contentMaskContainerAnimatedStyle","height","point","configs","contentContainerStyle","overflow","DraggableView","View","style","BottomSheetContent","displayName"],"sourceRoot":"../../../../src","sources":["components/bottomSheet/BottomSheetContent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","memo","useMemo","Animated","useAnimatedStyle","useDerivedValue","INITIAL_LAYOUT_VALUE","KEYBOARD_BEHAVIOR","KEYBOARD_STATUS","SCROLLABLE_TYPE","useBottomSheetInternal","animate","BottomSheetDraggableView","jsx","_jsx","BottomSheetContentComponent","detached","animationConfigs","overrideReduceMotion","keyboardBehavior","accessible","accessibilityLabel","accessibilityHint","accessibilityRole","children","enableDynamicSizing","overDragResistanceFactor","enableContentPanningGesture","animatedPosition","animatedLayoutState","animatedDetentsState","animatedSheetHeight","animatedKeyboardState","animatedScrollableState","isInTemporaryPosition","animatedContentHeightMax","containerHeight","handleHeight","contentHeight","measuredContentHeight","get","status","keyboardStatus","heightWithinContainer","keyboardHeightWithinContainer","Math","max","extend","SHOWN","fillParent","interactive","type","VIEW","animatedPaddingBottom","highestDetentPosition","highestSnapPoint","overDragSafePaddingBottom","sqrt","paddingBottom","contentMaskContainerAnimatedStyle","height","point","configs","contentContainerStyle","overflow","DraggableView","View","style","BottomSheetContent","displayName"],"sourceRoot":"../../../../src","sources":["components/bottomSheet/BottomSheetContent.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"BottomSheetContent.d.ts","sourceRoot":"","sources":["../../../../src/components/bottomSheet/BottomSheetContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzD,OAAiB,EACf,KAAK,aAAa,EAGnB,MAAM,yBAAyB,CAAC;AAOjC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAG9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD,KAAK,kBAAkB,GAAG;IACxB,KAAK,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CAClC,GAAG,IAAI,CACN,gBAAgB,EACd,UAAU,GACV,UAAU,GACV,kBAAkB,GAClB,sBAAsB,GACtB,kBAAkB,CACrB,GACC,0BAA0B,GAC1B,SAAS,CAAC;AAEZ,iBAAS,2BAA2B,CAAC,EACnC,QAAQ,EACR,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,QAAQ,GACT,EAAE,kBAAkB,qBAuNpB;AAED,eAAO,MAAM,kBAAkB,+DAAoC,CAAC"}
1
+ {"version":3,"file":"BottomSheetContent.d.ts","sourceRoot":"","sources":["../../../../src/components/bottomSheet/BottomSheetContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzD,OAAiB,EACf,KAAK,aAAa,EAGnB,MAAM,yBAAyB,CAAC;AAQjC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAG9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD,KAAK,kBAAkB,GAAG;IACxB,KAAK,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CAClC,GAAG,IAAI,CACN,gBAAgB,EACd,UAAU,GACV,UAAU,GACV,kBAAkB,GAClB,sBAAsB,GACtB,kBAAkB,CACrB,GACC,0BAA0B,GAC1B,SAAS,CAAC;AAEZ,iBAAS,2BAA2B,CAAC,EACnC,QAAQ,EACR,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,QAAQ,GACT,EAAE,kBAAkB,qBAwOpB;AAED,eAAO,MAAM,kBAAkB,+DAAoC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mustmove/bottom-sheet",
3
- "version": "1.0.5",
3
+ "version": "1.0.6",
4
4
  "description": "A performant interactive bottom sheet with fully configurable options 🚀",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -9,6 +9,7 @@ import {
9
9
  INITIAL_LAYOUT_VALUE,
10
10
  KEYBOARD_BEHAVIOR,
11
11
  KEYBOARD_STATUS,
12
+ SCROLLABLE_TYPE,
12
13
  } from '../../constants';
13
14
  import { useBottomSheetInternal } from '../../hooks';
14
15
  import type { NullableAccessibilityProps } from '../../types';
@@ -50,13 +51,14 @@ function BottomSheetContentComponent({
50
51
  animatedDetentsState,
51
52
  animatedSheetHeight,
52
53
  animatedKeyboardState,
54
+ animatedScrollableState,
53
55
  isInTemporaryPosition,
54
56
  } = useBottomSheetInternal();
55
57
  //#endregion
56
58
 
57
59
  //#region variables
58
60
  const animatedContentHeightMax = useDerivedValue(() => {
59
- const { containerHeight, handleHeight } = animatedLayoutState.get();
61
+ const { containerHeight, handleHeight, contentHeight: measuredContentHeight } = animatedLayoutState.get();
60
62
 
61
63
  /**
62
64
  * if container height is not yet calculated, then we exit the method
@@ -121,6 +123,21 @@ function BottomSheetContentComponent({
121
123
  }
122
124
  }
123
125
 
126
+ /**
127
+ * When the keyboard is shown and the content is non-scrollable (VIEW type),
128
+ * ensure the content height doesn't shrink below the measured content height.
129
+ * This prevents clipping of fixed-layout content (e.g. buttons at the bottom)
130
+ * when the container shrinks on Android with adjustResize.
131
+ */
132
+ if (
133
+ keyboardStatus === KEYBOARD_STATUS.SHOWN &&
134
+ measuredContentHeight !== INITIAL_LAYOUT_VALUE &&
135
+ animatedScrollableState.get().type === SCROLLABLE_TYPE.VIEW &&
136
+ contentHeight < measuredContentHeight
137
+ ) {
138
+ contentHeight = measuredContentHeight;
139
+ }
140
+
124
141
  /**
125
142
  * before the container is measured, `contentHeight` value will be below zero,
126
143
  * which will lead to freeze the scrollable.
@@ -132,6 +149,7 @@ function BottomSheetContentComponent({
132
149
  animatedLayoutState,
133
150
  animatedKeyboardState,
134
151
  animatedSheetHeight,
152
+ animatedScrollableState,
135
153
  animatedPosition,
136
154
  isInTemporaryPosition,
137
155
  keyboardBehavior,