@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
@@ -2,8 +2,8 @@
2
2
 
3
3
  // @ts-nocheck — vendored upstream, incompatible with noUncheckedIndexedAccess
4
4
  import React from 'react';
5
- import { set, isVertical } from "./helpers.js";
6
- import { DEFAULT_PEEK_HEIGHT, TRANSITIONS, VELOCITY_THRESHOLD } from "./constants.js";
5
+ import { set, isVertical, getSnapPointTransform } from "./helpers.js";
6
+ import { DEFAULT_PEEK_HEIGHT, SHORT_DISMISS_DISTANCE, SHORT_DISMISS_VELOCITY, TRANSITIONS, VELOCITY_THRESHOLD } from "./constants.js";
7
7
  import { useControllableState } from "./use-controllable-state.js";
8
8
  export function useSnapPoints({
9
9
  activeSnapPointProp,
@@ -21,7 +21,8 @@ export function useSnapPoints({
21
21
  detachedOffset = 0,
22
22
  maxContentHeight,
23
23
  peekHeight,
24
- initialAnimated = true
24
+ initialAnimated = true,
25
+ keyboardViewport
25
26
  }) {
26
27
  const [activeSnapPoint, setActiveSnapPoint] = useControllableState({
27
28
  prop: activeSnapPointProp,
@@ -51,7 +52,7 @@ export function useSnapPoints({
51
52
  height: container.getBoundingClientRect().height
52
53
  } : typeof window !== 'undefined' ? {
53
54
  width: window.innerWidth,
54
- height: window.innerHeight
55
+ height: keyboardViewport?.height ?? window.innerHeight
55
56
  } : {
56
57
  width: 0,
57
58
  height: 0
@@ -61,6 +62,9 @@ export function useSnapPoints({
61
62
  // reserves a fixed gap at the bottom — the floating card stays offset
62
63
  // from the viewport edge through drag, snap and resize.
63
64
  const effectiveHeight = Math.max(0, containerSize.height - (detachedOffset || 0));
65
+ // Above a keyboard, fractional snap points keep their full-height size and
66
+ // only cap at the visible area — mirrors native, where the sheet rises.
67
+ const fractionHeight = keyboardViewport ? Math.max(0, keyboardViewport.layoutHeight - (detachedOffset || 0)) : effectiveHeight;
64
68
  return snapPoints?.map(snapPoint => {
65
69
  // 'auto' resolves to measured content height. Falls back to half the
66
70
  // container so the initial snap is close to final before ResizeObserver
@@ -73,10 +77,10 @@ export function useSnapPoints({
73
77
  snapPointAsNumber = parseInt(resolved, 10);
74
78
  }
75
79
  if (isVertical(direction)) {
76
- const rawHeight = isPx ? snapPointAsNumber : windowDimensions ? resolved * effectiveHeight : 0;
77
- // Cap px/'auto' snap points so a content taller than the viewport
78
- // doesn't push the drawer past the top edge (offset would go
79
- // negative). Fractional detents are already ≤ effectiveHeight.
80
+ const rawHeight = isPx ? snapPointAsNumber : windowDimensions ? resolved * fractionHeight : 0;
81
+ // Cap snap points so content taller than the viewport (or a
82
+ // fraction above a keyboard) doesn't push the drawer past the top
83
+ // edge (offset would go negative).
80
84
  // `maxContentHeight`, when set, caps the visible sheet further so
81
85
  // full/'auto' detents respect the user's ceiling.
82
86
  const ceiling = maxContentHeight !== undefined ? Math.min(effectiveHeight, maxContentHeight) : effectiveHeight;
@@ -93,7 +97,8 @@ export function useSnapPoints({
93
97
  }
94
98
  return width;
95
99
  }) ?? [];
96
- }, [snapPoints, windowDimensions, container, contentHeight, detachedOffset, maxContentHeight, peekHeight]);
100
+ }, [snapPoints, windowDimensions, container, contentHeight, detachedOffset, maxContentHeight, peekHeight, keyboardViewport]);
101
+ const getViewportHeight = () => keyboardViewport?.height ?? window.innerHeight;
97
102
  const activeSnapPointOffset = React.useMemo(() => activeSnapPointIndex !== null ? snapPointsOffset?.[activeSnapPointIndex] : null, [snapPointsOffset, activeSnapPointIndex]);
98
103
 
99
104
  // Detached-only: the drawer sits inside a clip wrapper. When drag overshoots
@@ -110,41 +115,52 @@ export function useSnapPoints({
110
115
  });
111
116
  };
112
117
 
113
- // Skip the transition on the very first snap when the consumer opts out of
114
- // the initial presentation animation. All subsequent snaps still animate.
118
+ // Initial measurements can take several commits before the first paint.
119
+ // Keep all of them unanimated when initial presentation animation is disabled.
115
120
  const hasSnappedRef = React.useRef(false);
121
+ const initialSnapFrameRef = React.useRef(null);
122
+ React.useEffect(() => () => {
123
+ if (initialSnapFrameRef.current !== null) {
124
+ window.cancelAnimationFrame(initialSnapFrameRef.current);
125
+ initialSnapFrameRef.current = null;
126
+ }
127
+ }, []);
116
128
  const snapToPoint = React.useCallback(dimension => {
129
+ if (!drawerRef.current) return;
117
130
  const newSnapPointIndex = snapPointsOffset?.findIndex(snapPointDim => snapPointDim === dimension) ?? null;
118
- onSnapPointChange(newSnapPointIndex);
119
131
  const animateThisSnap = hasSnappedRef.current || initialAnimated;
120
- hasSnappedRef.current = true;
121
- // `--snap-point-height` transitions alongside `transform` (registered via
122
- // @property) so layouts derived from it (e.g. the scrollable fill) resize
123
- // in sync with the drawer's slide instead of jumping to the target.
132
+ if (initialSnapFrameRef.current === null) {
133
+ initialSnapFrameRef.current = window.requestAnimationFrame(() => {
134
+ hasSnappedRef.current = true;
135
+ });
136
+ }
137
+ // One animated value drives both the translation and the visible height.
124
138
  set(drawerRef.current, {
125
- 'transition': animateThisSnap ? `transform ${TRANSITIONS.DURATION}s cubic-bezier(${TRANSITIONS.EASE.join(',')}), --snap-point-height ${TRANSITIONS.DURATION}s cubic-bezier(${TRANSITIONS.EASE.join(',')})` : 'none',
126
- 'transform': isVertical(direction) ? `translate3d(0, ${dimension}px, 0)` : `translate3d(${dimension}px, 0, 0)`,
139
+ 'transition': animateThisSnap ? `--snap-point-height ${TRANSITIONS.DURATION}s cubic-bezier(${TRANSITIONS.EASE.join(',')})` : 'none',
140
+ 'transform': getSnapPointTransform(direction),
127
141
  '--snap-point-height': `${dimension}px`
128
142
  });
129
143
 
130
144
  // Snapping implies drag overshoot (if any) should be undone.
131
145
  setDetachedWrapperTransform(0, animateThisSnap);
146
+ const overlayTransition = animateThisSnap ? `opacity ${TRANSITIONS.DURATION}s cubic-bezier(${TRANSITIONS.EASE.join(',')})` : 'none';
132
147
  if (snapPointsOffset && newSnapPointIndex !== snapPointsOffset.length - 1 && fadeFromIndex !== undefined && newSnapPointIndex !== fadeFromIndex && newSnapPointIndex < fadeFromIndex) {
133
148
  set(overlayRef.current, {
134
- transition: `opacity ${TRANSITIONS.DURATION}s cubic-bezier(${TRANSITIONS.EASE.join(',')})`,
149
+ transition: overlayTransition,
135
150
  opacity: '0',
136
151
  pointerEvents: 'none'
137
152
  });
138
153
  } else {
139
154
  set(overlayRef.current, {
140
- transition: `opacity ${TRANSITIONS.DURATION}s cubic-bezier(${TRANSITIONS.EASE.join(',')})`,
155
+ transition: overlayTransition,
141
156
  opacity: '1',
142
157
  pointerEvents: 'auto'
143
158
  });
144
159
  }
160
+ onSnapPointChange(newSnapPointIndex, animateThisSnap);
145
161
  setActiveSnapPoint(snapPoints?.[Math.max(newSnapPointIndex, 0)]);
146
- }, [drawerRef.current, snapPoints, snapPointsOffset, fadeFromIndex, overlayRef, setActiveSnapPoint]);
147
- React.useEffect(() => {
162
+ }, [drawerRef.current, snapPoints, snapPointsOffset, fadeFromIndex, overlayRef, setActiveSnapPoint, initialAnimated]);
163
+ React.useLayoutEffect(() => {
148
164
  if (!isOpen) return;
149
165
  if (activeSnapPoint || activeSnapPointProp) {
150
166
  const newIndex = snapPoints?.findIndex(snapPoint => snapPoint === activeSnapPointProp || snapPoint === activeSnapPoint) ?? -1;
@@ -157,7 +173,8 @@ export function useSnapPoints({
157
173
  draggedDistance,
158
174
  closeDrawer,
159
175
  velocity,
160
- dismissible
176
+ dismissible,
177
+ dismissThreshold
161
178
  }) {
162
179
  if (fadeFromIndex === undefined) return;
163
180
  const currentPosition = direction === 'bottom' || direction === 'right' ? (activeSnapPointOffset ?? 0) - draggedDistance : (activeSnapPointOffset ?? 0) + draggedDistance;
@@ -170,11 +187,23 @@ export function useSnapPoints({
170
187
  });
171
188
  }
172
189
 
190
+ // Short threshold: below the lowest detent, close on a short drag or any
191
+ // downward fling, like Compose Material3's sheet.
192
+ if (dismissThreshold === 'short' && dismissible && (direction === 'bottom' || direction === 'right') && currentPosition > snapPointsOffset[0]) {
193
+ const overshoot = currentPosition - snapPointsOffset[0];
194
+ if (velocity > SHORT_DISMISS_VELOCITY || overshoot > SHORT_DISMISS_DISTANCE) {
195
+ closeDrawer();
196
+ } else {
197
+ snapToPoint(snapPointsOffset[0]);
198
+ }
199
+ return;
200
+ }
201
+
173
202
  // Distance-based dismiss: when overshooting past the lowest detent by more
174
203
  // than half of its visible height, commit to dismiss regardless of
175
204
  // velocity — lets a slow drag-down still close the sheet.
176
205
  if (dismissible && (direction === 'bottom' || direction === 'right') && currentPosition > snapPointsOffset[0]) {
177
- const viewportDim = isVertical(direction) ? window.innerHeight : window.innerWidth;
206
+ const viewportDim = isVertical(direction) ? getViewportHeight() : window.innerWidth;
178
207
  const effectiveDim = Math.max(0, viewportDim - (detachedOffset || 0));
179
208
  const visibleAtLowest = Math.max(0, effectiveDim - snapPointsOffset[0]);
180
209
  const overshoot = currentPosition - snapPointsOffset[0];
@@ -197,7 +226,7 @@ export function useSnapPoints({
197
226
  if (typeof prev !== 'number' || typeof curr !== 'number') return prev;
198
227
  return Math.abs(curr - currentPosition) < Math.abs(prev - currentPosition) ? curr : prev;
199
228
  });
200
- const dim = isVertical(direction) ? window.innerHeight : window.innerWidth;
229
+ const dim = isVertical(direction) ? getViewportHeight() : window.innerWidth;
201
230
  if (velocity > VELOCITY_THRESHOLD && Math.abs(draggedDistance) < dim * 0.4) {
202
231
  const dragDirection = hasDraggedUp ? 1 : -1; // 1 = up, -1 = down
203
232
 
@@ -234,7 +263,7 @@ export function useSnapPoints({
234
263
  if ((direction === 'bottom' || direction === 'right') && newValue > snapPointsOffset[0]) {
235
264
  const excess = newValue - snapPointsOffset[0];
236
265
  set(drawerRef.current, {
237
- 'transform': isVertical(direction) ? `translate3d(0, ${snapPointsOffset[0]}px, 0)` : `translate3d(${snapPointsOffset[0]}px, 0, 0)`,
266
+ 'transform': getSnapPointTransform(direction),
238
267
  '--snap-point-height': `${snapPointsOffset[0]}px`
239
268
  });
240
269
  setDetachedWrapperTransform(excess, false);
@@ -245,7 +274,7 @@ export function useSnapPoints({
245
274
  // derived from it (e.g. the scrollable fill) resize with the drawer
246
275
  // instead of staying cut off at the last detent's visible height.
247
276
  set(drawerRef.current, {
248
- 'transform': isVertical(direction) ? `translate3d(0, ${newValue}px, 0)` : `translate3d(${newValue}px, 0, 0)`,
277
+ 'transform': getSnapPointTransform(direction),
249
278
  '--snap-point-height': `${newValue}px`
250
279
  });
251
280
  }
@@ -259,7 +288,7 @@ export function useSnapPoints({
259
288
  if (activeSnapPointIndex === 0 && !isDraggingDown) {
260
289
  const activeOffset = snapPointsOffset[activeSnapPointIndex];
261
290
  if (activeOffset === undefined) return 0;
262
- const windowDim = isVertical(direction) ? window.innerHeight : window.innerWidth;
291
+ const windowDim = isVertical(direction) ? getViewportHeight() : window.innerWidth;
263
292
  const dismissOffset = direction === 'bottom' || direction === 'right' ? windowDim : -windowDim;
264
293
  const dismissRange = Math.abs(dismissOffset - activeOffset);
265
294
  return dismissRange > 0 ? Math.min(1, absDraggedDistance / dismissRange) : 0;
@@ -1 +1 @@
1
- {"version":3,"names":["React","set","isVertical","DEFAULT_PEEK_HEIGHT","TRANSITIONS","VELOCITY_THRESHOLD","useControllableState","useSnapPoints","activeSnapPointProp","setActiveSnapPointProp","snapPoints","drawerRef","overlayRef","fadeFromIndex","onSnapPointChange","direction","container","snapToSequentialPoint","isOpen","contentHeight","detachedOffset","maxContentHeight","peekHeight","initialAnimated","activeSnapPoint","setActiveSnapPoint","prop","defaultProp","onChange","windowDimensions","setWindowDimensions","useState","window","innerWidth","innerHeight","undefined","useEffect","onResize","addEventListener","removeEventListener","isLastSnapPoint","useMemo","length","activeSnapPointIndex","findIndex","snapPoint","shouldFade","Number","isNaN","snapPointsOffset","containerSize","width","getBoundingClientRect","height","effectiveHeight","Math","max","map","resolved","isPx","snapPointAsNumber","parseInt","rawHeight","ceiling","min","rawWidth","activeSnapPointOffset","setDetachedWrapperTransform","y","animated","current","wrapper","closest","transition","DURATION","EASE","join","transform","hasSnappedRef","useRef","snapToPoint","useCallback","dimension","newSnapPointIndex","snapPointDim","animateThisSnap","opacity","pointerEvents","newIndex","onRelease","draggedDistance","closeDrawer","velocity","dismissible","currentPosition","isOverlaySnapPoint","isFirst","hasDraggedUp","viewportDim","effectiveDim","visibleAtLowest","overshoot","closestSnapPoint","reduce","prev","curr","abs","dim","dragDirection","onDrag","newValue","excess","getPercentageDragged","absDraggedDistance","isDraggingDown","activeOffset","windowDim","dismissOffset","dismissRange","isOverlaySnapPointOrHigher","targetSnapPointIndex","snapPointDistance","percentageDragged"],"sourceRoot":"../../../../src","sources":["web/vaul/use-snap-points.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","set","isVertical","getSnapPointTransform","DEFAULT_PEEK_HEIGHT","SHORT_DISMISS_DISTANCE","SHORT_DISMISS_VELOCITY","TRANSITIONS","VELOCITY_THRESHOLD","useControllableState","useSnapPoints","activeSnapPointProp","setActiveSnapPointProp","snapPoints","drawerRef","overlayRef","fadeFromIndex","onSnapPointChange","direction","container","snapToSequentialPoint","isOpen","contentHeight","detachedOffset","maxContentHeight","peekHeight","initialAnimated","keyboardViewport","activeSnapPoint","setActiveSnapPoint","prop","defaultProp","onChange","windowDimensions","setWindowDimensions","useState","window","innerWidth","innerHeight","undefined","useEffect","onResize","addEventListener","removeEventListener","isLastSnapPoint","useMemo","length","activeSnapPointIndex","findIndex","snapPoint","shouldFade","Number","isNaN","snapPointsOffset","containerSize","width","getBoundingClientRect","height","effectiveHeight","Math","max","fractionHeight","layoutHeight","map","resolved","isPx","snapPointAsNumber","parseInt","rawHeight","ceiling","min","rawWidth","getViewportHeight","activeSnapPointOffset","setDetachedWrapperTransform","y","animated","current","wrapper","closest","transition","DURATION","EASE","join","transform","hasSnappedRef","useRef","initialSnapFrameRef","cancelAnimationFrame","snapToPoint","useCallback","dimension","newSnapPointIndex","snapPointDim","animateThisSnap","requestAnimationFrame","overlayTransition","opacity","pointerEvents","useLayoutEffect","newIndex","onRelease","draggedDistance","closeDrawer","velocity","dismissible","dismissThreshold","currentPosition","isOverlaySnapPoint","isFirst","hasDraggedUp","overshoot","viewportDim","effectiveDim","visibleAtLowest","closestSnapPoint","reduce","prev","curr","abs","dim","dragDirection","onDrag","newValue","excess","getPercentageDragged","absDraggedDistance","isDraggingDown","activeOffset","windowDim","dismissOffset","dismissRange","isOverlaySnapPointOrHigher","targetSnapPointIndex","snapPointDistance","percentageDragged"],"sourceRoot":"../../../../src","sources":["web/vaul/use-snap-points.ts"],"mappings":"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","ignoreList":[]}
@@ -3,9 +3,11 @@ import type { TrueSheetProps, TrueSheetMethods } from './TrueSheet.types';
3
3
  interface TrueSheetState {
4
4
  shouldRenderNativeView: boolean;
5
5
  initialPresentReady: boolean;
6
+ scrollableHandle: number | null;
6
7
  }
7
8
  export declare class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetState> implements TrueSheetMethods {
8
9
  displayName: string;
10
+ static contextType: import("react").Context<number>;
9
11
  private readonly nativeRef;
10
12
  private cachedGrabberOptions;
11
13
  private resolvedGrabberOptions;
@@ -17,15 +19,24 @@ export declare class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetSt
17
19
  */
18
20
  private static readonly instances;
19
21
  /**
20
- * Resolver to be called when mount event is received
22
+ * All mounted sheets, named or not.
23
+ */
24
+ private static readonly mountedInstances;
25
+ /**
26
+ * Resolver to be called when mount event is received, or with `false` when the present is cancelled
21
27
  */
22
28
  private presentationResolver;
29
+ /**
30
+ * Settles once a scheduled lazy unmount has committed
31
+ */
32
+ private nativeViewUnmount;
23
33
  /**
24
34
  * Tracks if a present operation is in progress
25
35
  */
26
36
  private isPresenting;
27
37
  constructor(props: TrueSheetProps);
28
38
  private onInitialPresentReady;
39
+ private updateScrollableHandle;
29
40
  private validateDetents;
30
41
  private static getInstance;
31
42
  private get handle();
@@ -75,6 +86,7 @@ export declare class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetSt
75
86
  private onWillPresent;
76
87
  private onDidPresent;
77
88
  private onWillDismiss;
89
+ private onDismissAttempt;
78
90
  private onDidDismiss;
79
91
  private onMount;
80
92
  private onDragBegin;
@@ -93,6 +105,11 @@ export declare class TrueSheet extends PureComponent<TrueSheetProps, TrueSheetSt
93
105
  * @param animated - Whether to animate the presentation (default: true)
94
106
  */
95
107
  present(index?: number, animated?: boolean): Promise<void>;
108
+ /**
109
+ * Cancels a present still waiting on the lazy mount. Returns whether one was pending.
110
+ */
111
+ private cancelPendingPresent;
112
+ private unmountNativeView;
96
113
  /**
97
114
  * Resize the sheet to a given detent index.
98
115
  * @param index - The detent index to resize to
@@ -1 +1 @@
1
- {"version":3,"file":"TrueSheet.d.ts","sourceRoot":"","sources":["../../../src/TrueSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAGb,KAAK,SAAS,EAKf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAgBjB,MAAM,mBAAmB,CAAC;AAuC3B,UAAU,cAAc;IACtB,sBAAsB,EAAE,OAAO,CAAC;IAChC,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAeD,qBAAa,SACX,SAAQ,aAAa,CAAC,cAAc,EAAE,cAAc,CACpD,YAAW,gBAAgB;IAE3B,WAAW,SAAe;IAE1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IAExD,OAAO,CAAC,oBAAoB,CAA+C;IAC3E,OAAO,CAAC,sBAAsB,CAAsC;IACpE,OAAO,CAAC,uBAAuB,CAAwC;IACvE,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,cAAc,CAAiB;IAEvC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAqC;IAEtE;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAA6B;IAEzD;;OAEG;IACH,OAAO,CAAC,YAAY,CAAkB;gBAE1B,KAAK,EAAE,cAAc;IAmCjC,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,eAAe;IAkCvB,OAAO,CAAC,MAAM,CAAC,WAAW;IAU1B,OAAO,KAAK,MAAM,GAOjB;IAED;;;;;;;OAOG;WACiB,OAAO,CACzB,IAAI,EAAE,MAAM,EACZ,KAAK,GAAE,MAAU,EACjB,QAAQ,GAAE,OAAc,GACvB,OAAO,CAAC,IAAI,CAAC;IAShB;;;;;;OAMG;WACiB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IASlF;;;;;;OAMG;WACiB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IASvF;;;;;;OAMG;WACiB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStE;;;;;OAKG;WACiB,UAAU,CAAC,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,eAAe;IAkBvB;;;;OAIG;IACU,OAAO,CAAC,KAAK,GAAE,MAAU,EAAE,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBhF;;;OAGG;IACU,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD;;;OAGG;IACU,OAAO,CAAC,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D;;;;OAIG;IACU,YAAY,CAAC,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlE,iBAAiB,IAAI,IAAI;IAIzB,kBAAkB,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI;IAsBnD,oBAAoB,IAAI,IAAI;IAO5B,MAAM,IAAI,SAAS;CA4JpB"}
1
+ {"version":3,"file":"TrueSheet.d.ts","sourceRoot":"","sources":["../../../src/TrueSheet.tsx"],"names":[],"mappings":"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"}