@lodev09/react-native-true-sheet 4.0.0-beta.3 → 4.0.0-beta.30

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 (244) hide show
  1. package/README.md +28 -5
  2. package/android/build.gradle +23 -1
  3. package/android/proguard-rules.pro +3 -0
  4. package/android/src/main/java/com/lodev09/truesheet/TrueSheetContainerView.kt +50 -16
  5. package/android/src/main/java/com/lodev09/truesheet/TrueSheetContentView.kt +303 -184
  6. package/android/src/main/java/com/lodev09/truesheet/TrueSheetContentViewManager.kt +5 -1
  7. package/android/src/main/java/com/lodev09/truesheet/TrueSheetFooterView.kt +38 -109
  8. package/android/src/main/java/com/lodev09/truesheet/TrueSheetModule.kt +13 -0
  9. package/android/src/main/java/com/lodev09/truesheet/TrueSheetOverlayView.kt +127 -0
  10. package/android/src/main/java/com/lodev09/truesheet/TrueSheetOverlayViewManager.kt +45 -0
  11. package/android/src/main/java/com/lodev09/truesheet/TrueSheetPackage.kt +2 -1
  12. package/android/src/main/java/com/lodev09/truesheet/TrueSheetStateUpdater.kt +29 -3
  13. package/android/src/main/java/com/lodev09/truesheet/TrueSheetView.kt +234 -66
  14. package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewController.kt +491 -186
  15. package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewManager.kt +64 -10
  16. package/android/src/main/java/com/lodev09/truesheet/core/RNScreensEventObserver.kt +31 -14
  17. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetBottomSheetBehavior.kt +135 -0
  18. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetBottomSheetView.kt +23 -23
  19. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetCoordinatorLayout.kt +130 -6
  20. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetDetentCalculator.kt +104 -39
  21. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetDimView.kt +14 -17
  22. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetGrabberView.kt +2 -4
  23. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetOverlayRootView.kt +148 -0
  24. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetStackManager.kt +33 -40
  25. package/android/src/main/java/com/lodev09/truesheet/events/TrueSheetLifecycleEvents.kt +15 -0
  26. package/android/src/main/java/com/lodev09/truesheet/utils/ColorUtils.kt +19 -0
  27. package/android/src/main/java/com/lodev09/truesheet/utils/KeyboardUtils.kt +15 -2
  28. package/android/src/main/java/com/lodev09/truesheet/utils/ScreenUtils.kt +0 -12
  29. package/android/src/main/java/com/lodev09/truesheet/utils/ViewUtils.kt +19 -7
  30. package/android/src/main/jni/TrueSheetSpec.h +1 -0
  31. package/android/src/main/jni/TrueSheetStateUpdater.cpp +37 -6
  32. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewComponentDescriptor.h +1 -9
  33. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewShadowNode.cpp +114 -30
  34. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewShadowNode.h +30 -7
  35. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewState.cpp +2 -2
  36. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewState.h +9 -8
  37. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetFooterViewComponentDescriptor.h +3 -5
  38. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetFooterViewShadowNode.cpp +14 -3
  39. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetFooterViewShadowNode.h +5 -6
  40. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetFooterViewState.cpp +1 -1
  41. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetFooterViewState.h +10 -6
  42. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetInsets.cpp +1 -1
  43. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetInsets.h +1 -1
  44. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetLayoutUtils.h +43 -0
  45. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetOverlayViewComponentDescriptor.h +21 -0
  46. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetOverlayViewShadowNode.cpp +17 -0
  47. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetOverlayViewShadowNode.h +33 -0
  48. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetViewComponentDescriptor.h +3 -5
  49. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetViewShadowNode.cpp +7 -40
  50. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetViewShadowNode.h +3 -7
  51. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetViewState.cpp +3 -5
  52. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetViewState.h +4 -5
  53. package/ios/TrueSheetContainerView.h +23 -7
  54. package/ios/TrueSheetContainerView.mm +45 -25
  55. package/ios/TrueSheetContentView.h +44 -15
  56. package/ios/TrueSheetContentView.mm +221 -190
  57. package/ios/TrueSheetFooterView.mm +133 -28
  58. package/ios/TrueSheetModule.h +2 -7
  59. package/ios/TrueSheetModule.mm +18 -18
  60. package/ios/TrueSheetOverlayView.h +42 -0
  61. package/ios/TrueSheetOverlayView.mm +175 -0
  62. package/ios/TrueSheetView.h +2 -0
  63. package/ios/TrueSheetView.mm +268 -52
  64. package/ios/TrueSheetViewController.h +36 -3
  65. package/ios/TrueSheetViewController.mm +797 -102
  66. package/ios/core/RNScreensEventObserver.mm +31 -28
  67. package/ios/core/TrueSheetBlurView.h +0 -2
  68. package/ios/core/TrueSheetBlurView.mm +3 -36
  69. package/ios/core/TrueSheetDetentCalculator.h +18 -1
  70. package/ios/core/TrueSheetDetentCalculator.mm +44 -9
  71. package/ios/core/TrueSheetDimView.h +27 -0
  72. package/ios/core/TrueSheetDimView.mm +41 -0
  73. package/ios/core/TrueSheetGrabberView.mm +13 -3
  74. package/ios/core/TrueSheetKeyboardObserver.h +7 -0
  75. package/ios/core/TrueSheetKeyboardObserver.mm +107 -15
  76. package/ios/core/TrueSheetOverlayContainerView.h +31 -0
  77. package/ios/core/TrueSheetOverlayContainerView.mm +35 -0
  78. package/ios/events/TrueSheetLifecycleEvents.h +2 -0
  79. package/ios/events/TrueSheetLifecycleEvents.mm +8 -0
  80. package/ios/tvos/TrueSheetStubs.mm +12 -0
  81. package/ios/utils/UIView+ScrollEdgeInteraction.h +1 -0
  82. package/ios/utils/UIView+ScrollEdgeInteraction.mm +24 -2
  83. package/lib/module/TrueSheet.js +222 -54
  84. package/lib/module/TrueSheet.js.map +1 -1
  85. package/lib/module/TrueSheet.web.js +364 -275
  86. package/lib/module/TrueSheet.web.js.map +1 -1
  87. package/lib/module/TrueSheetBackground.js +15 -0
  88. package/lib/module/TrueSheetBackground.js.map +1 -0
  89. package/lib/module/TrueSheetOverlay.js +30 -0
  90. package/lib/module/TrueSheetOverlay.js.map +1 -0
  91. package/lib/module/TrueSheetOverlay.web.js +35 -0
  92. package/lib/module/TrueSheetOverlay.web.js.map +1 -0
  93. package/lib/module/TrueSheetPeek.web.js +20 -15
  94. package/lib/module/TrueSheetPeek.web.js.map +1 -1
  95. package/lib/module/TrueSheetProvider.web.js +13 -9
  96. package/lib/module/TrueSheetProvider.web.js.map +1 -1
  97. package/lib/module/detentBackgrounds.js +21 -0
  98. package/lib/module/detentBackgrounds.js.map +1 -0
  99. package/lib/module/fabric/TrueSheetContentViewNativeComponent.ts +1 -1
  100. package/lib/module/fabric/TrueSheetFooterViewNativeComponent.ts +2 -3
  101. package/lib/module/fabric/TrueSheetOverlayViewNativeComponent.ts +12 -0
  102. package/lib/module/fabric/TrueSheetViewNativeComponent.ts +89 -73
  103. package/lib/module/index.js +1 -0
  104. package/lib/module/index.js.map +1 -1
  105. package/lib/module/mocks/index.js +18 -2
  106. package/lib/module/mocks/index.js.map +1 -1
  107. package/lib/module/mocks/navigationExpoRouter.js.map +1 -1
  108. package/lib/module/navigation/base-types.js +2 -0
  109. package/lib/module/navigation/base-types.js.map +1 -0
  110. package/lib/module/navigation/createTrueSheetRouter.js +158 -100
  111. package/lib/module/navigation/createTrueSheetRouter.js.map +1 -1
  112. package/lib/module/navigation/expo-router/base-types.js +2 -0
  113. package/lib/module/navigation/expo-router/base-types.js.map +1 -0
  114. package/lib/module/navigation/expo-router/extendTrueSheetRouter.js +71 -0
  115. package/lib/module/navigation/expo-router/extendTrueSheetRouter.js.map +1 -0
  116. package/lib/module/navigation/expo-router/index.js +18 -7
  117. package/lib/module/navigation/expo-router/index.js.map +1 -1
  118. package/lib/module/navigation/expo-router/types.js +4 -0
  119. package/lib/module/navigation/expo-router/types.js.map +1 -0
  120. package/lib/module/navigation/index.js.map +1 -1
  121. package/lib/module/navigation/screen/useSheetScreenState.js +1 -0
  122. package/lib/module/navigation/screen/useSheetScreenState.js.map +1 -1
  123. package/lib/module/scrollable.js +28 -0
  124. package/lib/module/scrollable.js.map +1 -0
  125. package/lib/module/web/constants.js +1 -1
  126. package/lib/module/web/constants.js.map +1 -1
  127. package/lib/module/web/keyboard.js +69 -0
  128. package/lib/module/web/keyboard.js.map +1 -0
  129. package/lib/module/web/layout.js +168 -0
  130. package/lib/module/web/layout.js.map +1 -0
  131. package/lib/module/web/vaul/constants.js +9 -0
  132. package/lib/module/web/vaul/constants.js.map +1 -1
  133. package/lib/module/web/vaul/context.js +4 -0
  134. package/lib/module/web/vaul/context.js.map +1 -1
  135. package/lib/module/web/vaul/helpers.js +1 -0
  136. package/lib/module/web/vaul/helpers.js.map +1 -1
  137. package/lib/module/web/vaul/index.js +83 -21
  138. package/lib/module/web/vaul/index.js.map +1 -1
  139. package/lib/module/web/vaul/use-snap-points.js +57 -28
  140. package/lib/module/web/vaul/use-snap-points.js.map +1 -1
  141. package/lib/typescript/src/TrueSheet.d.ts +18 -1
  142. package/lib/typescript/src/TrueSheet.d.ts.map +1 -1
  143. package/lib/typescript/src/TrueSheet.types.d.ts +209 -35
  144. package/lib/typescript/src/TrueSheet.types.d.ts.map +1 -1
  145. package/lib/typescript/src/TrueSheet.web.d.ts.map +1 -1
  146. package/lib/typescript/src/TrueSheetBackground.d.ts +3 -0
  147. package/lib/typescript/src/TrueSheetBackground.d.ts.map +1 -0
  148. package/lib/typescript/src/TrueSheetOverlay.d.ts +8 -0
  149. package/lib/typescript/src/TrueSheetOverlay.d.ts.map +1 -0
  150. package/lib/typescript/src/TrueSheetOverlay.web.d.ts +8 -0
  151. package/lib/typescript/src/TrueSheetOverlay.web.d.ts.map +1 -0
  152. package/lib/typescript/src/TrueSheetPeek.web.d.ts +8 -4
  153. package/lib/typescript/src/TrueSheetPeek.web.d.ts.map +1 -1
  154. package/lib/typescript/src/TrueSheetProvider.web.d.ts +5 -1
  155. package/lib/typescript/src/TrueSheetProvider.web.d.ts.map +1 -1
  156. package/lib/typescript/src/detentBackgrounds.d.ts +10 -0
  157. package/lib/typescript/src/detentBackgrounds.d.ts.map +1 -0
  158. package/lib/typescript/src/fabric/TrueSheetFooterViewNativeComponent.d.ts +2 -3
  159. package/lib/typescript/src/fabric/TrueSheetFooterViewNativeComponent.d.ts.map +1 -1
  160. package/lib/typescript/src/fabric/TrueSheetOverlayViewNativeComponent.d.ts +6 -0
  161. package/lib/typescript/src/fabric/TrueSheetOverlayViewNativeComponent.d.ts.map +1 -0
  162. package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts +76 -65
  163. package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts.map +1 -1
  164. package/lib/typescript/src/index.d.ts +1 -0
  165. package/lib/typescript/src/index.d.ts.map +1 -1
  166. package/lib/typescript/src/mocks/index.d.ts +4 -0
  167. package/lib/typescript/src/mocks/index.d.ts.map +1 -1
  168. package/lib/typescript/src/mocks/navigationExpoRouter.d.ts +3 -3
  169. package/lib/typescript/src/mocks/navigationExpoRouter.d.ts.map +1 -1
  170. package/lib/typescript/src/navigation/base-types.d.ts +9 -0
  171. package/lib/typescript/src/navigation/base-types.d.ts.map +1 -0
  172. package/lib/typescript/src/navigation/createTrueSheetRouter.d.ts +36 -10
  173. package/lib/typescript/src/navigation/createTrueSheetRouter.d.ts.map +1 -1
  174. package/lib/typescript/src/navigation/expo-router/base-types.d.ts +8 -0
  175. package/lib/typescript/src/navigation/expo-router/base-types.d.ts.map +1 -0
  176. package/lib/typescript/src/navigation/expo-router/extendTrueSheetRouter.d.ts +33 -0
  177. package/lib/typescript/src/navigation/expo-router/extendTrueSheetRouter.d.ts.map +1 -0
  178. package/lib/typescript/src/navigation/expo-router/index.d.ts +9 -6
  179. package/lib/typescript/src/navigation/expo-router/index.d.ts.map +1 -1
  180. package/lib/typescript/src/navigation/expo-router/types.d.ts +44 -0
  181. package/lib/typescript/src/navigation/expo-router/types.d.ts.map +1 -0
  182. package/lib/typescript/src/navigation/index.d.ts +3 -4
  183. package/lib/typescript/src/navigation/index.d.ts.map +1 -1
  184. package/lib/typescript/src/navigation/screen/useSheetScreenState.d.ts +2 -1
  185. package/lib/typescript/src/navigation/screen/useSheetScreenState.d.ts.map +1 -1
  186. package/lib/typescript/src/navigation/types.d.ts +43 -6
  187. package/lib/typescript/src/navigation/types.d.ts.map +1 -1
  188. package/lib/typescript/src/scrollable.d.ts +2 -0
  189. package/lib/typescript/src/scrollable.d.ts.map +1 -0
  190. package/lib/typescript/src/web/constants.d.ts +1 -1
  191. package/lib/typescript/src/web/constants.d.ts.map +1 -1
  192. package/lib/typescript/src/web/keyboard.d.ts +15 -0
  193. package/lib/typescript/src/web/keyboard.d.ts.map +1 -0
  194. package/lib/typescript/src/web/layout.d.ts +20 -0
  195. package/lib/typescript/src/web/layout.d.ts.map +1 -0
  196. package/lib/typescript/src/web/vaul/constants.d.ts +3 -0
  197. package/lib/typescript/src/web/vaul/constants.d.ts.map +1 -1
  198. package/lib/typescript/src/web/vaul/context.d.ts +5 -1
  199. package/lib/typescript/src/web/vaul/context.d.ts.map +1 -1
  200. package/lib/typescript/src/web/vaul/helpers.d.ts +1 -0
  201. package/lib/typescript/src/web/vaul/helpers.d.ts.map +1 -1
  202. package/lib/typescript/src/web/vaul/index.d.ts +20 -1
  203. package/lib/typescript/src/web/vaul/index.d.ts.map +1 -1
  204. package/lib/typescript/src/web/vaul/types.d.ts +9 -0
  205. package/lib/typescript/src/web/vaul/types.d.ts.map +1 -1
  206. package/lib/typescript/src/web/vaul/use-snap-points.d.ts +6 -4
  207. package/lib/typescript/src/web/vaul/use-snap-points.d.ts.map +1 -1
  208. package/package.json +18 -8
  209. package/react-native.config.js +1 -0
  210. package/src/TrueSheet.tsx +257 -62
  211. package/src/TrueSheet.types.ts +225 -35
  212. package/src/TrueSheet.web.tsx +445 -333
  213. package/src/TrueSheetBackground.tsx +17 -0
  214. package/src/TrueSheetOverlay.tsx +24 -0
  215. package/src/TrueSheetOverlay.web.tsx +33 -0
  216. package/src/TrueSheetPeek.web.tsx +25 -23
  217. package/src/TrueSheetProvider.web.tsx +22 -13
  218. package/src/detentBackgrounds.ts +24 -0
  219. package/src/fabric/TrueSheetContentViewNativeComponent.ts +1 -1
  220. package/src/fabric/TrueSheetFooterViewNativeComponent.ts +2 -3
  221. package/src/fabric/TrueSheetOverlayViewNativeComponent.ts +12 -0
  222. package/src/fabric/TrueSheetViewNativeComponent.ts +89 -73
  223. package/src/index.ts +1 -0
  224. package/src/mocks/index.ts +17 -2
  225. package/src/mocks/navigationExpoRouter.ts +6 -5
  226. package/src/navigation/base-types.ts +20 -0
  227. package/src/navigation/createTrueSheetRouter.ts +220 -144
  228. package/src/navigation/expo-router/base-types.ts +18 -0
  229. package/src/navigation/expo-router/extendTrueSheetRouter.ts +99 -0
  230. package/src/navigation/expo-router/index.ts +41 -30
  231. package/src/navigation/expo-router/types.ts +116 -0
  232. package/src/navigation/index.ts +6 -7
  233. package/src/navigation/screen/useSheetScreenState.ts +2 -0
  234. package/src/navigation/types.ts +81 -23
  235. package/src/scrollable.ts +25 -0
  236. package/src/web/constants.ts +1 -1
  237. package/src/web/keyboard.ts +79 -0
  238. package/src/web/layout.ts +196 -0
  239. package/src/web/vaul/constants.ts +9 -0
  240. package/src/web/vaul/context.ts +7 -1
  241. package/src/web/vaul/helpers.ts +5 -0
  242. package/src/web/vaul/index.tsx +113 -16
  243. package/src/web/vaul/types.ts +10 -0
  244. package/src/web/vaul/use-snap-points.ts +86 -33
@@ -7,8 +7,8 @@ import { Presence } from '@radix-ui/react-presence';
7
7
  import { DrawerContext, useDrawerContext } from "./context.js";
8
8
  import './style.css';
9
9
  import { isIOS, isMobileFirefox } from "./browser.js";
10
- import { BORDER_RADIUS, CLOSE_THRESHOLD, DRAG_CLASS, NESTED_DISPLACEMENT, SCROLL_LOCK_TIMEOUT, TRANSITIONS, VELOCITY_THRESHOLD, WINDOW_TOP_OFFSET } from "./constants.js";
11
- import { dampenValue, getTranslate, isVertical, reset, set } from "./helpers.js";
10
+ import { BORDER_RADIUS, CLOSE_THRESHOLD, DISMISS_ATTEMPT_THRESHOLD, DRAG_CLASS, NESTED_DISPLACEMENT, SCROLL_LOCK_TIMEOUT, TRANSITIONS, VELOCITY_THRESHOLD, WINDOW_TOP_OFFSET } from "./constants.js";
11
+ import { dampenValue, getSnapPointTransform, getTranslate, isVertical, reset, set } from "./helpers.js";
12
12
  import { useComposedRefs } from "./use-composed-refs.js";
13
13
  import { useControllableState } from "./use-controllable-state.js";
14
14
  import { usePositionFixed } from "./use-position-fixed.js";
@@ -28,6 +28,8 @@ export function Root({
28
28
  closeThreshold = CLOSE_THRESHOLD,
29
29
  scrollLockTimeout = SCROLL_LOCK_TIMEOUT,
30
30
  dismissible = true,
31
+ dismissThreshold = 'half',
32
+ onDismissAttempt,
31
33
  draggable = true,
32
34
  handleOnly = false,
33
35
  fadeFromIndex = snapPoints && snapPoints.length - 1,
@@ -56,7 +58,8 @@ export function Root({
56
58
  peekHeight,
57
59
  initialAnimated = true,
58
60
  onContentHeightChange,
59
- contentHeight: contentHeightProp
61
+ contentHeight: contentHeightProp,
62
+ keyboardViewport
60
63
  }) {
61
64
  const [isOpen = false, setIsOpen] = useControllableState({
62
65
  defaultProp: defaultOpen,
@@ -82,8 +85,10 @@ export function Root({
82
85
  const isAllowedToDrag = React.useRef(false);
83
86
  const nestedOpenChangeTimer = React.useRef(null);
84
87
  const pointerStart = React.useRef(0);
88
+ const dismissAttempted = React.useRef(false);
85
89
  const keyboardIsOpen = React.useRef(false);
86
90
  const shouldAnimate = React.useRef(!defaultOpen);
91
+ const hasPresented = React.useRef(false);
87
92
  const previousDiffFromInitial = React.useRef(0);
88
93
  const drawerRef = React.useRef(null);
89
94
  const drawerHeightRef = React.useRef(drawerRef.current?.getBoundingClientRect().height || 0);
@@ -98,9 +103,13 @@ export function Root({
98
103
  React.useEffect(() => {
99
104
  onContentHeightChangeRef.current?.(measuredContentHeight);
100
105
  }, [measuredContentHeight]);
101
- const onSnapPointChange = React.useCallback(activeSnapPointIndex => {
106
+ const onSnapPointChange = React.useCallback((activeSnapPointIndex, animated) => {
102
107
  // Change openTime ref when we reach the last snap point to prevent dragging for 500ms incase it's scrollable.
103
108
  if (snapPoints && activeSnapPointIndex === snapPointsOffset.length - 1) openTime.current = new Date();
109
+ // Instant snaps do not emit transition events for position tracking.
110
+ if (!animated && drawerRef.current) {
111
+ onPositionChangeRef.current?.(drawerRef.current.getBoundingClientRect().top);
112
+ }
104
113
  }, []);
105
114
  const {
106
115
  activeSnapPoint,
@@ -127,7 +136,8 @@ export function Root({
127
136
  detachedOffset: detached ? detachedOffset : 0,
128
137
  maxContentHeight,
129
138
  peekHeight,
130
- initialAnimated
139
+ initialAnimated,
140
+ keyboardViewport
131
141
  });
132
142
  usePreventScroll({
133
143
  isDisabled: !isOpen || isDragging || !modal || justReleased || !hasBeenOpened || !repositionInputs || !disablePreventScroll
@@ -299,7 +309,14 @@ export function Root({
299
309
  const noCloseSnapPointsPreCondition = snapPoints && !dismissible && !isDraggingInDirection;
300
310
 
301
311
  // Disallow dragging down to close when first snap point is the active one and dismissible prop is set to false.
302
- if (noCloseSnapPointsPreCondition && activeSnapPointIndex === 0) return;
312
+ if (noCloseSnapPointsPreCondition && activeSnapPointIndex === 0) {
313
+ // The drawer stays put. Remember a deliberate pull that would otherwise
314
+ // have dragged it (content at its top) so release() can report it.
315
+ if (-draggedDistance > DISMISS_ATTEMPT_THRESHOLD && (isAllowedToDrag.current || shouldDrag(event.target, isDraggingInDirection))) {
316
+ dismissAttempted.current = true;
317
+ }
318
+ return;
319
+ }
303
320
 
304
321
  // We need to capture last time when drag with scroll was triggered and have a timeout between
305
322
  const absDraggedDistance = Math.abs(draggedDistance);
@@ -504,6 +521,19 @@ export function Root({
504
521
  unfreezeScrollables();
505
522
  setIsDragging(false);
506
523
  dragEndTime.current = new Date();
524
+ if (dismissAttempted.current) {
525
+ dismissAttempted.current = false;
526
+ if (isOpen) onDismissAttempt?.();
527
+ }
528
+
529
+ // The press that started this "drag" may have dismissed the drawer (e.g. a
530
+ // back button acting on pointerdown). Snapping now would overwrite the
531
+ // dismiss transform that closeDrawer just wrote and freeze the sheet in
532
+ // place until it unmounts.
533
+ if (!isOpen) {
534
+ if (pointerEvent) onReleaseProp?.(pointerEvent, false);
535
+ return;
536
+ }
507
537
  const swipeAmount = getTranslate(drawerRef.current, direction);
508
538
 
509
539
  // Drag overshoot below the lowest snap point translates the detached
@@ -532,7 +562,8 @@ export function Root({
532
562
  draggedDistance: distMoved * directionMultiplier,
533
563
  closeDrawer,
534
564
  velocity,
535
- dismissible
565
+ dismissible,
566
+ dismissThreshold
536
567
  });
537
568
  if (pointerEvent) onReleaseProp?.(pointerEvent, true);
538
569
  return;
@@ -648,7 +679,10 @@ export function Root({
648
679
  onTouchDrag: (event, pointerEvent) => drag(event, pointerEvent),
649
680
  onTouchRelease: (event, pointerEvent) => release(event, pointerEvent),
650
681
  dismissible,
682
+ onDismissAttempt,
651
683
  shouldAnimate,
684
+ initialAnimated,
685
+ hasPresented,
652
686
  handleOnly,
653
687
  isOpen,
654
688
  isDragging,
@@ -673,7 +707,8 @@ export function Root({
673
707
  detached,
674
708
  detachedOffset: detached ? detachedOffset : 0,
675
709
  detachedRadius: detached ? detachedRadius : 0,
676
- detachedWrapperStyle
710
+ detachedWrapperStyle,
711
+ keyboardViewport
677
712
  },
678
713
  children: children
679
714
  })
@@ -772,16 +807,20 @@ export const Content = /*#__PURE__*/React.forwardRef(({
772
807
  snapPoints,
773
808
  setActiveSnapPoint,
774
809
  dismissible,
810
+ onDismissAttempt,
775
811
  container,
776
812
  handleOnly,
777
813
  shouldAnimate,
814
+ initialAnimated,
815
+ hasPresented,
778
816
  autoFocus,
779
817
  onPositionChangeRef,
780
818
  setContentHeight,
781
819
  detached,
782
820
  detachedOffset,
783
821
  detachedRadius,
784
- detachedWrapperStyle: detachedWrapperStyleProp
822
+ detachedWrapperStyle: detachedWrapperStyleProp,
823
+ keyboardViewport
785
824
  } = useDrawerContext();
786
825
  // Always measure the inner wrapper's natural height. The drawer itself may
787
826
  // be styled to a fixed viewport height, so we measure an inner wrapper
@@ -885,10 +924,10 @@ export const Content = /*#__PURE__*/React.forwardRef(({
885
924
  // same detent). Without this, position goes stale mid-animation because
886
925
  // the drawer's `transitionrun` never fires.
887
926
  const onTransitionRun = e => {
888
- if ((e.target === drawer || e.target === wrapper) && e.propertyName === 'transform') state.start();
927
+ if ((e.target === drawer || e.target === wrapper) && (e.propertyName === 'transform' || e.propertyName === '--snap-point-height')) state.start();
889
928
  };
890
929
  const onTransitionDone = e => {
891
- if ((e.target === drawer || e.target === wrapper) && e.propertyName === 'transform') state.stop();
930
+ if ((e.target === drawer || e.target === wrapper) && (e.propertyName === 'transform' || e.propertyName === '--snap-point-height')) state.stop();
892
931
  };
893
932
  const onAnimationStart = e => {
894
933
  if (e.target === drawer || e.target === wrapper) state.start();
@@ -939,20 +978,26 @@ export const Content = /*#__PURE__*/React.forwardRef(({
939
978
  // with a bottom gap and rounded bottom corners; otherwise it sits flush.
940
979
  // Transform/transition are managed imperatively (via drag overshoot and the
941
980
  // dismiss effect) so React doesn't skip DOM writes for values it thinks it
942
- // already owns.
981
+ // already owns. Above a soft keyboard the wrapper fits the visual viewport,
982
+ // which the full-height layout viewport extends behind.
943
983
  const wrapperStyle = React.useMemo(() => ({
944
984
  position: 'fixed',
945
- top: 0,
946
985
  left: 0,
947
986
  right: 0,
948
- bottom: detached ? detachedOffset : 0,
987
+ ...(keyboardViewport ? {
988
+ top: keyboardViewport.top,
989
+ height: Math.max(0, keyboardViewport.height - (detached ? detachedOffset : 0))
990
+ } : {
991
+ top: 0,
992
+ bottom: detached ? detachedOffset : 0
993
+ }),
949
994
  overflow: 'hidden',
950
995
  contain: 'paint',
951
996
  pointerEvents: 'none',
952
997
  borderBottomLeftRadius: detached ? detachedRadius : 0,
953
998
  borderBottomRightRadius: detached ? detachedRadius : 0,
954
999
  ...detachedWrapperStyleProp
955
- }), [detached, detachedOffset, detachedRadius, detachedWrapperStyleProp]);
1000
+ }), [detached, detachedOffset, detachedRadius, detachedWrapperStyleProp, keyboardViewport]);
956
1001
 
957
1002
  // Translate the wrapper off-screen on dismiss so the whole card slides out
958
1003
  // as one. The reset-then-target pattern on open forces the browser to
@@ -975,15 +1020,22 @@ export const Content = /*#__PURE__*/React.forwardRef(({
975
1020
  wrapper.style.transform = `translate3d(0, ${viewportH}px, 0)`;
976
1021
  } else if (isOpen && !wasOpenRef.current) {
977
1022
  wrapper.style.transition = 'none';
978
- wrapper.style.transform = `translate3d(0, ${viewportH}px, 0)`;
979
- // eslint-disable-next-line no-void
980
- void wrapper.offsetHeight;
981
- wrapper.style.transition = transition;
1023
+ if (hasPresented.current || initialAnimated) {
1024
+ wrapper.style.transform = `translate3d(0, ${viewportH}px, 0)`;
1025
+ // eslint-disable-next-line no-void
1026
+ void wrapper.offsetHeight;
1027
+ wrapper.style.transition = transition;
1028
+ }
982
1029
  wrapper.style.transform = 'translate3d(0, 0, 0)';
1030
+ hasPresented.current = true;
983
1031
  }
984
1032
  }
985
1033
  wasOpenRef.current = isOpen;
986
- }, [isOpen, detached, drawerRef]);
1034
+ }, [isOpen, detached, drawerRef, initialAnimated, hasPresented]);
1035
+
1036
+ // Subsequent snap writes belong to useSnapPoints. A React style update on
1037
+ // release would overwrite the live drag value before its transition starts.
1038
+ const initialSnapPointOffset = React.useRef(snapPointsOffset?.[activeSnapPointIndex ?? 0] ?? 0);
987
1039
  const contentNode = /*#__PURE__*/_jsx(DialogPrimitive.Content, {
988
1040
  "data-vaul-drawer-direction": direction,
989
1041
  "data-vaul-drawer": "",
@@ -995,7 +1047,8 @@ export const Content = /*#__PURE__*/React.forwardRef(({
995
1047
  ...rest,
996
1048
  ref: composedRef,
997
1049
  style: snapPointsOffset && snapPointsOffset.length > 0 ? {
998
- '--snap-point-height': `${snapPointsOffset[activeSnapPointIndex ?? 0]}px`,
1050
+ '--snap-point-height': `${initialSnapPointOffset.current}px`,
1051
+ 'transform': getSnapPointTransform(direction),
999
1052
  ...style,
1000
1053
  'pointerEvents': 'auto'
1001
1054
  } : {
@@ -1048,6 +1101,8 @@ export const Content = /*#__PURE__*/React.forwardRef(({
1048
1101
  e.preventDefault();
1049
1102
  if (hasSnapPoints && typeof activeSnapPointIndex === 'number' && activeSnapPointIndex > 0) {
1050
1103
  setActiveSnapPoint(snapPoints[0]);
1104
+ } else {
1105
+ onDismissAttempt?.();
1051
1106
  }
1052
1107
  }
1053
1108
  },
@@ -1170,6 +1225,7 @@ export const Handle = /*#__PURE__*/React.forwardRef(({
1170
1225
  activeSnapPoint,
1171
1226
  setActiveSnapPoint,
1172
1227
  dismissible,
1228
+ onDismissAttempt,
1173
1229
  handleOnly,
1174
1230
  isOpen,
1175
1231
  onPress,
@@ -1206,6 +1262,12 @@ export const Handle = /*#__PURE__*/React.forwardRef(({
1206
1262
  closeDrawer();
1207
1263
  return;
1208
1264
  }
1265
+
1266
+ // Mirrors native: a single-detent sheet's handle tap is a dismiss.
1267
+ if (isLastSnapPoint && snapPoints.length === 1) {
1268
+ onDismissAttempt?.();
1269
+ return;
1270
+ }
1209
1271
  const currentSnapIndex = snapPoints.findIndex(point => point === activeSnapPoint);
1210
1272
  if (currentSnapIndex === -1) return; // activeSnapPoint not found in snapPoints
1211
1273
  const nextSnapPoint = snapPoints[currentSnapIndex + 1];
@@ -1 +1 @@
1
- {"version":3,"names":["React","DialogPrimitive","Presence","DrawerContext","useDrawerContext","isIOS","isMobileFirefox","BORDER_RADIUS","CLOSE_THRESHOLD","DRAG_CLASS","NESTED_DISPLACEMENT","SCROLL_LOCK_TIMEOUT","TRANSITIONS","VELOCITY_THRESHOLD","WINDOW_TOP_OFFSET","dampenValue","getTranslate","isVertical","reset","set","useComposedRefs","useControllableState","usePositionFixed","isInput","isScrollable","usePreventScroll","useScaleBackground","useSnapPoints","jsx","_jsx","jsxs","_jsxs","Root","open","openProp","onOpenChange","children","onDrag","onDragProp","onRelease","onReleaseProp","snapPoints","shouldScaleBackground","setBackgroundColorOnScale","closeThreshold","scrollLockTimeout","dismissible","draggable","handleOnly","fadeFromIndex","length","activeSnapPoint","activeSnapPointProp","setActiveSnapPoint","setActiveSnapPointProp","fixed","modal","onClose","nested","noBodyStyles","direction","defaultOpen","disablePreventScroll","snapToSequentialPoint","preventScrollRestoration","repositionInputs","onAnimationEnd","onPositionChange","container","autoFocus","detached","detachedOffset","detachedRadius","detachedWrapperStyle","maxContentHeight","peekHeight","initialAnimated","onContentHeightChange","contentHeight","contentHeightProp","isOpen","setIsOpen","defaultProp","prop","onChange","o","restorePositionSetting","setTimeout","DURATION","hasBeenOpened","setHasBeenOpened","useState","isDragging","setIsDragging","justReleased","setJustReleased","overlayRef","useRef","openTime","dragStartTime","dragEndTime","lastTimeDragPrevented","isAllowedToDrag","nestedOpenChangeTimer","pointerStart","keyboardIsOpen","shouldAnimate","previousDiffFromInitial","drawerRef","drawerHeightRef","current","getBoundingClientRect","height","drawerWidthRef","width","initialDrawerHeight","measuredContentHeight","setContentHeight","onContentHeightChangeRef","useEffect","onSnapPointChange","useCallback","activeSnapPointIndex","snapPointsOffset","Date","onReleaseSnapPoints","onDragSnapPoints","shouldFade","getPercentageDragged","getSnapPointsPercentageDragged","isDisabled","frozenScrollablesRef","freezeScrollables","target","frozen","element","HTMLElement","push","overflowX","style","overflowY","parentElement","unfreezeScrollables","getScale","window","innerWidth","onPress","event","contains","addEventListener","once","setPointerCapture","pointerId","pageY","pageX","shouldDrag","el","isDraggingInDirection","highlightedText","getSelection","toString","swipeAmount","date","tagName","hasAttribute","closest","getTime","atLastSnapPoint","restOffset","scrollHeight","clientHeight","scrollTop","getAttribute","parentNode","drag","pointerEvent","directionMultiplier","draggedDistance","noCloseSnapPointsPreCondition","absDraggedDistance","Math","abs","wrapper","document","querySelector","drawerDimension","percentageDragged","snapPointPercentageDragged","classList","add","pointerType","transition","dampenedDraggedDistance","translateValue","min","transform","opacityValue","opacity","scaleValue","borderRadiusValue","max","borderRadius","requestAnimationFrame","undefined","onPositionChangeRef","onVisualViewportChange","focusedElement","activeElement","visualViewportHeight","visualViewport","totalHeight","innerHeight","diffFromInitial","drawerHeight","isTallEnough","offsetFromTop","top","activeSnapPointHeight","newDrawerHeight","bottom","removeEventListener","closeDrawer","fromWithin","cancelDrag","resetDrawer","currentSwipeAmount","EASE","join","overflow","transformOrigin","transitionProperty","transitionDuration","transitionTimingFunction","remove","release","wrapperSwipeAmount","hasMoved","Boolean","Number","isNaN","timeTaken","distMoved","velocity","visibleDrawerHeight","visibleDrawerWidth","isHorizontalSwipe","documentElement","scrollBehavior","onNestedOpenChange","scale","initialTranslate","clearTimeout","onNestedDrag","_event","initialScale","newScale","newTranslate","onNestedRelease","dim","translate","Provider","value","onTouchDrag","onTouchRelease","Overlay","forwardRef","rest","ref","composedRef","hasSnapPoints","delayedSnapPoints","setDelayedSnapPoints","onMouseUp","isBelowFade","present","overlayStyle","displayName","pointerEvents","Content","onPointerDownOutside","onEscapeKeyDown","onOpenAutoFocus","detachedSiblings","detachedWrapperStyleProp","autoRoRef","setAutoSizeNode","node","disconnect","measure","offsetHeight","ro","ResizeObserver","observe","pointerStartRef","lastKnownPointerEventRef","continuingCanceledTouchRef","wasBeyondThePointRef","isDeltaInDirection","delta","dir","threshold","deltaY","y","deltaX","x","isDeltaX","dFactor","includes","isReverseDirection","positionTrackingRef","drawer","state","rafId","movingCount","lastPosition","NaN","start","stop","emit","cb","position","tick","onTransitionRun","e","propertyName","onTransitionDone","onAnimationStart","onAnimationDone","cancelAnimationFrame","handleOnPointerUp","wrapperStyle","useMemo","left","right","contain","borderBottomLeftRadius","borderBottomRightRadius","wasOpenRef","viewportH","contentNode","onPointerDown","preventDefault","defaultPrevented","onFocusOutside","onPointerMove","yPosition","xPosition","swipeStartThreshold","isAllowedToSwipe","onPointerUp","onPointerCancel","onPointerOut","onTouchMove","touch","touches","onTouchEnd","changedTouches","onTouchCancel","onContextMenu","autoSizeWrapperStyle","display","LONG_HANDLE_PRESS_TIMEOUT","DOUBLE_TAP_TIMEOUT","Handle","preventCycle","closeTimeoutIdRef","shouldCancelInteractionRef","handleStartCycle","handleCancelInteraction","handleCycleSnapPoints","isLastSnapPoint","currentSnapIndex","findIndex","point","nextSnapPoint","handleStartInteraction","onClick","NestedRoot","nestedIsOpen","Error","p","Portal","props","context","portalProps","Drawer","Trigger","Close","Title","Description"],"sourceRoot":"../../../../src","sources":["web/vaul/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","DialogPrimitive","Presence","DrawerContext","useDrawerContext","isIOS","isMobileFirefox","BORDER_RADIUS","CLOSE_THRESHOLD","DISMISS_ATTEMPT_THRESHOLD","DRAG_CLASS","NESTED_DISPLACEMENT","SCROLL_LOCK_TIMEOUT","TRANSITIONS","VELOCITY_THRESHOLD","WINDOW_TOP_OFFSET","dampenValue","getSnapPointTransform","getTranslate","isVertical","reset","set","useComposedRefs","useControllableState","usePositionFixed","isInput","isScrollable","usePreventScroll","useScaleBackground","useSnapPoints","jsx","_jsx","jsxs","_jsxs","Root","open","openProp","onOpenChange","children","onDrag","onDragProp","onRelease","onReleaseProp","snapPoints","shouldScaleBackground","setBackgroundColorOnScale","closeThreshold","scrollLockTimeout","dismissible","dismissThreshold","onDismissAttempt","draggable","handleOnly","fadeFromIndex","length","activeSnapPoint","activeSnapPointProp","setActiveSnapPoint","setActiveSnapPointProp","fixed","modal","onClose","nested","noBodyStyles","direction","defaultOpen","disablePreventScroll","snapToSequentialPoint","preventScrollRestoration","repositionInputs","onAnimationEnd","onPositionChange","container","autoFocus","detached","detachedOffset","detachedRadius","detachedWrapperStyle","maxContentHeight","peekHeight","initialAnimated","onContentHeightChange","contentHeight","contentHeightProp","keyboardViewport","isOpen","setIsOpen","defaultProp","prop","onChange","o","restorePositionSetting","setTimeout","DURATION","hasBeenOpened","setHasBeenOpened","useState","isDragging","setIsDragging","justReleased","setJustReleased","overlayRef","useRef","openTime","dragStartTime","dragEndTime","lastTimeDragPrevented","isAllowedToDrag","nestedOpenChangeTimer","pointerStart","dismissAttempted","keyboardIsOpen","shouldAnimate","hasPresented","previousDiffFromInitial","drawerRef","drawerHeightRef","current","getBoundingClientRect","height","drawerWidthRef","width","initialDrawerHeight","measuredContentHeight","setContentHeight","onContentHeightChangeRef","useEffect","onSnapPointChange","useCallback","activeSnapPointIndex","animated","snapPointsOffset","Date","onPositionChangeRef","top","onReleaseSnapPoints","onDragSnapPoints","shouldFade","getPercentageDragged","getSnapPointsPercentageDragged","isDisabled","frozenScrollablesRef","freezeScrollables","target","frozen","element","HTMLElement","push","overflowX","style","overflowY","parentElement","unfreezeScrollables","getScale","window","innerWidth","onPress","event","contains","addEventListener","once","setPointerCapture","pointerId","pageY","pageX","shouldDrag","el","isDraggingInDirection","highlightedText","getSelection","toString","swipeAmount","date","tagName","hasAttribute","closest","getTime","atLastSnapPoint","restOffset","scrollHeight","clientHeight","scrollTop","getAttribute","parentNode","drag","pointerEvent","directionMultiplier","draggedDistance","noCloseSnapPointsPreCondition","absDraggedDistance","Math","abs","wrapper","document","querySelector","drawerDimension","percentageDragged","snapPointPercentageDragged","classList","add","pointerType","transition","dampenedDraggedDistance","translateValue","min","transform","opacityValue","opacity","scaleValue","borderRadiusValue","max","borderRadius","requestAnimationFrame","undefined","onVisualViewportChange","focusedElement","activeElement","visualViewportHeight","visualViewport","totalHeight","innerHeight","diffFromInitial","drawerHeight","isTallEnough","offsetFromTop","activeSnapPointHeight","newDrawerHeight","bottom","removeEventListener","closeDrawer","fromWithin","cancelDrag","resetDrawer","currentSwipeAmount","EASE","join","overflow","transformOrigin","transitionProperty","transitionDuration","transitionTimingFunction","remove","release","wrapperSwipeAmount","hasMoved","Boolean","Number","isNaN","timeTaken","distMoved","velocity","visibleDrawerHeight","visibleDrawerWidth","isHorizontalSwipe","documentElement","scrollBehavior","onNestedOpenChange","scale","initialTranslate","clearTimeout","onNestedDrag","_event","initialScale","newScale","newTranslate","onNestedRelease","dim","translate","Provider","value","onTouchDrag","onTouchRelease","Overlay","forwardRef","rest","ref","composedRef","hasSnapPoints","delayedSnapPoints","setDelayedSnapPoints","onMouseUp","isBelowFade","present","overlayStyle","displayName","pointerEvents","Content","onPointerDownOutside","onEscapeKeyDown","onOpenAutoFocus","detachedSiblings","detachedWrapperStyleProp","autoRoRef","setAutoSizeNode","node","disconnect","measure","offsetHeight","ro","ResizeObserver","observe","pointerStartRef","lastKnownPointerEventRef","continuingCanceledTouchRef","wasBeyondThePointRef","isDeltaInDirection","delta","dir","threshold","deltaY","y","deltaX","x","isDeltaX","dFactor","includes","isReverseDirection","positionTrackingRef","drawer","state","rafId","movingCount","lastPosition","NaN","start","stop","emit","cb","position","tick","onTransitionRun","e","propertyName","onTransitionDone","onAnimationStart","onAnimationDone","cancelAnimationFrame","handleOnPointerUp","wrapperStyle","useMemo","left","right","contain","borderBottomLeftRadius","borderBottomRightRadius","wasOpenRef","viewportH","initialSnapPointOffset","contentNode","onPointerDown","preventDefault","defaultPrevented","onFocusOutside","onPointerMove","yPosition","xPosition","swipeStartThreshold","isAllowedToSwipe","onPointerUp","onPointerCancel","onPointerOut","onTouchMove","touch","touches","onTouchEnd","changedTouches","onTouchCancel","onContextMenu","autoSizeWrapperStyle","display","LONG_HANDLE_PRESS_TIMEOUT","DOUBLE_TAP_TIMEOUT","Handle","preventCycle","closeTimeoutIdRef","shouldCancelInteractionRef","handleStartCycle","handleCancelInteraction","handleCycleSnapPoints","isLastSnapPoint","currentSnapIndex","findIndex","point","nextSnapPoint","handleStartInteraction","onClick","NestedRoot","nestedIsOpen","Error","p","Portal","props","context","portalProps","Drawer","Trigger","Close","Title","Description"],"sourceRoot":"../../../../src","sources":["web/vaul/index.tsx"],"mappings":"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","ignoreList":[]}