@lodev09/react-native-true-sheet 4.0.0-beta.1 → 4.0.0-beta.11

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 (221) hide show
  1. package/README.md +25 -4
  2. package/android/build.gradle +22 -1
  3. package/android/src/main/java/com/lodev09/truesheet/TrueSheetContainerView.kt +24 -7
  4. package/android/src/main/java/com/lodev09/truesheet/TrueSheetContentView.kt +211 -182
  5. package/android/src/main/java/com/lodev09/truesheet/TrueSheetContentViewManager.kt +5 -1
  6. package/android/src/main/java/com/lodev09/truesheet/TrueSheetFooterView.kt +14 -19
  7. package/android/src/main/java/com/lodev09/truesheet/TrueSheetOverlayView.kt +106 -0
  8. package/android/src/main/java/com/lodev09/truesheet/TrueSheetOverlayViewManager.kt +45 -0
  9. package/android/src/main/java/com/lodev09/truesheet/TrueSheetPackage.kt +2 -1
  10. package/android/src/main/java/com/lodev09/truesheet/TrueSheetStateUpdater.kt +18 -0
  11. package/android/src/main/java/com/lodev09/truesheet/TrueSheetView.kt +82 -39
  12. package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewController.kt +275 -88
  13. package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewManager.kt +26 -1
  14. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetCoordinatorLayout.kt +75 -3
  15. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetDetentCalculator.kt +56 -34
  16. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetOverlayRootView.kt +137 -0
  17. package/android/src/main/java/com/lodev09/truesheet/events/TrueSheetLifecycleEvents.kt +15 -0
  18. package/android/src/main/java/com/lodev09/truesheet/utils/KeyboardUtils.kt +1 -1
  19. package/android/src/main/java/com/lodev09/truesheet/utils/TouchEventDeduper.kt +31 -0
  20. package/android/src/main/java/com/lodev09/truesheet/utils/ViewUtils.kt +19 -7
  21. package/android/src/main/jni/TrueSheetSpec.h +1 -0
  22. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewComponentDescriptor.h +0 -8
  23. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewShadowNode.cpp +52 -29
  24. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewShadowNode.h +6 -1
  25. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewState.cpp +1 -1
  26. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewState.h +6 -4
  27. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetFooterViewShadowNode.cpp +7 -0
  28. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetLayoutUtils.h +46 -0
  29. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetOverlayViewComponentDescriptor.h +21 -0
  30. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetOverlayViewShadowNode.cpp +17 -0
  31. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetOverlayViewShadowNode.h +36 -0
  32. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetViewShadowNode.cpp +4 -35
  33. package/ios/TrueSheetContainerView.h +14 -7
  34. package/ios/TrueSheetContainerView.mm +10 -7
  35. package/ios/TrueSheetContentView.h +31 -15
  36. package/ios/TrueSheetContentView.mm +148 -188
  37. package/ios/TrueSheetFooterView.h +6 -0
  38. package/ios/TrueSheetFooterView.mm +48 -2
  39. package/ios/TrueSheetModule.h +2 -7
  40. package/ios/TrueSheetModule.mm +7 -16
  41. package/ios/TrueSheetOverlayView.h +32 -0
  42. package/ios/TrueSheetOverlayView.mm +161 -0
  43. package/ios/TrueSheetView.mm +171 -29
  44. package/ios/TrueSheetViewController.h +10 -0
  45. package/ios/TrueSheetViewController.mm +256 -74
  46. package/ios/core/TrueSheetGrabberView.mm +13 -3
  47. package/ios/core/TrueSheetOverlayContainerView.h +31 -0
  48. package/ios/core/TrueSheetOverlayContainerView.mm +35 -0
  49. package/ios/events/TrueSheetLifecycleEvents.h +2 -0
  50. package/ios/events/TrueSheetLifecycleEvents.mm +8 -0
  51. package/ios/tvos/TrueSheetStubs.mm +12 -0
  52. package/ios/utils/UIView+ScrollEdgeInteraction.h +1 -0
  53. package/ios/utils/UIView+ScrollEdgeInteraction.mm +24 -2
  54. package/lib/module/TrueSheet.js +149 -34
  55. package/lib/module/TrueSheet.js.map +1 -1
  56. package/lib/module/TrueSheet.web.js +122 -53
  57. package/lib/module/TrueSheet.web.js.map +1 -1
  58. package/lib/module/TrueSheetOverlay.js +30 -0
  59. package/lib/module/TrueSheetOverlay.js.map +1 -0
  60. package/lib/module/TrueSheetOverlay.web.js +35 -0
  61. package/lib/module/TrueSheetOverlay.web.js.map +1 -0
  62. package/lib/module/TrueSheetPeek.web.js +3 -3
  63. package/lib/module/TrueSheetPeek.web.js.map +1 -1
  64. package/lib/module/fabric/TrueSheetContentViewNativeComponent.ts +1 -1
  65. package/lib/module/fabric/TrueSheetOverlayViewNativeComponent.ts +12 -0
  66. package/lib/module/fabric/TrueSheetViewNativeComponent.ts +5 -0
  67. package/lib/module/index.js +1 -0
  68. package/lib/module/index.js.map +1 -1
  69. package/lib/module/mocks/index.js +10 -0
  70. package/lib/module/mocks/index.js.map +1 -1
  71. package/lib/module/mocks/navigation.js +31 -21
  72. package/lib/module/mocks/navigation.js.map +1 -1
  73. package/lib/module/mocks/navigationExpoRouter.js +21 -0
  74. package/lib/module/mocks/navigationExpoRouter.js.map +1 -0
  75. package/lib/module/mocks/reanimated.js +1 -1
  76. package/lib/module/mocks/reanimated.js.map +1 -1
  77. package/lib/module/navigation/{TrueSheetView.js → TrueSheetNavigatorContent.js} +14 -12
  78. package/lib/module/navigation/TrueSheetNavigatorContent.js.map +1 -0
  79. package/lib/module/navigation/actions.js +50 -0
  80. package/lib/module/navigation/actions.js.map +1 -0
  81. package/lib/module/navigation/base-types.js +2 -0
  82. package/lib/module/navigation/base-types.js.map +1 -0
  83. package/lib/module/navigation/{TrueSheetRouter.js → createTrueSheetRouter.js} +11 -24
  84. package/lib/module/navigation/createTrueSheetRouter.js.map +1 -0
  85. package/lib/module/navigation/expo-router/base-types.js +2 -0
  86. package/lib/module/navigation/expo-router/base-types.js.map +1 -0
  87. package/lib/module/navigation/expo-router/index.js +50 -0
  88. package/lib/module/navigation/expo-router/index.js.map +1 -0
  89. package/lib/module/navigation/expo-router/types.js +4 -0
  90. package/lib/module/navigation/expo-router/types.js.map +1 -0
  91. package/lib/module/navigation/index.js +43 -2
  92. package/lib/module/navigation/index.js.map +1 -1
  93. package/lib/module/navigation/navigator.js +10 -0
  94. package/lib/module/navigation/navigator.js.map +1 -0
  95. package/lib/module/navigation/screen/ReanimatedTrueSheetScreen.js +2 -2
  96. package/lib/module/navigation/screen/ReanimatedTrueSheetScreen.js.map +1 -1
  97. package/lib/module/navigation/screen/TrueSheetScreen.js +2 -2
  98. package/lib/module/navigation/screen/TrueSheetScreen.js.map +1 -1
  99. package/lib/module/navigation/screen/useSheetScreenState.js +5 -4
  100. package/lib/module/navigation/screen/useSheetScreenState.js.map +1 -1
  101. package/lib/module/navigation/useTrueSheetNavigation.js +1 -1
  102. package/lib/module/navigation/useTrueSheetNavigation.js.map +1 -1
  103. package/lib/module/web/dom.js +10 -0
  104. package/lib/module/web/dom.js.map +1 -0
  105. package/lib/module/web/vaul/constants.js +4 -0
  106. package/lib/module/web/vaul/constants.js.map +1 -1
  107. package/lib/module/web/vaul/context.js.map +1 -1
  108. package/lib/module/web/vaul/helpers.js +10 -4
  109. package/lib/module/web/vaul/helpers.js.map +1 -1
  110. package/lib/module/web/vaul/index.js +35 -2
  111. package/lib/module/web/vaul/index.js.map +1 -1
  112. package/lib/typescript/src/TrueSheet.d.ts +6 -0
  113. package/lib/typescript/src/TrueSheet.d.ts.map +1 -1
  114. package/lib/typescript/src/TrueSheet.types.d.ts +72 -1
  115. package/lib/typescript/src/TrueSheet.types.d.ts.map +1 -1
  116. package/lib/typescript/src/TrueSheet.web.d.ts.map +1 -1
  117. package/lib/typescript/src/TrueSheetOverlay.d.ts +8 -0
  118. package/lib/typescript/src/TrueSheetOverlay.d.ts.map +1 -0
  119. package/lib/typescript/src/TrueSheetOverlay.web.d.ts +8 -0
  120. package/lib/typescript/src/TrueSheetOverlay.web.d.ts.map +1 -0
  121. package/lib/typescript/src/TrueSheetPeek.web.d.ts.map +1 -1
  122. package/lib/typescript/src/fabric/TrueSheetOverlayViewNativeComponent.d.ts +6 -0
  123. package/lib/typescript/src/fabric/TrueSheetOverlayViewNativeComponent.d.ts.map +1 -0
  124. package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts +4 -0
  125. package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts.map +1 -1
  126. package/lib/typescript/src/index.d.ts +1 -0
  127. package/lib/typescript/src/index.d.ts.map +1 -1
  128. package/lib/typescript/src/mocks/index.d.ts +4 -0
  129. package/lib/typescript/src/mocks/index.d.ts.map +1 -1
  130. package/lib/typescript/src/mocks/navigation.d.ts +5 -1
  131. package/lib/typescript/src/mocks/navigation.d.ts.map +1 -1
  132. package/lib/typescript/src/mocks/navigationExpoRouter.d.ts +22 -0
  133. package/lib/typescript/src/mocks/navigationExpoRouter.d.ts.map +1 -0
  134. package/lib/typescript/src/mocks/reanimated.d.ts.map +1 -1
  135. package/lib/typescript/src/navigation/TrueSheetNavigatorContent.d.ts +5 -0
  136. package/lib/typescript/src/navigation/TrueSheetNavigatorContent.d.ts.map +1 -0
  137. package/lib/typescript/src/navigation/actions.d.ts +71 -0
  138. package/lib/typescript/src/navigation/actions.d.ts.map +1 -0
  139. package/lib/typescript/src/navigation/base-types.d.ts +9 -0
  140. package/lib/typescript/src/navigation/base-types.d.ts.map +1 -0
  141. package/lib/typescript/src/navigation/createTrueSheetRouter.d.ts +3 -0
  142. package/lib/typescript/src/navigation/createTrueSheetRouter.d.ts.map +1 -0
  143. package/lib/typescript/src/navigation/expo-router/base-types.d.ts +8 -0
  144. package/lib/typescript/src/navigation/expo-router/base-types.d.ts.map +1 -0
  145. package/lib/typescript/src/navigation/expo-router/index.d.ts +37 -0
  146. package/lib/typescript/src/navigation/expo-router/index.d.ts.map +1 -0
  147. package/lib/typescript/src/navigation/expo-router/types.d.ts +44 -0
  148. package/lib/typescript/src/navigation/expo-router/types.d.ts.map +1 -0
  149. package/lib/typescript/src/navigation/index.d.ts +42 -3
  150. package/lib/typescript/src/navigation/index.d.ts.map +1 -1
  151. package/lib/typescript/src/navigation/navigator.d.ts +7 -0
  152. package/lib/typescript/src/navigation/navigator.d.ts.map +1 -0
  153. package/lib/typescript/src/navigation/screen/ReanimatedTrueSheetScreen.d.ts +1 -1
  154. package/lib/typescript/src/navigation/screen/ReanimatedTrueSheetScreen.d.ts.map +1 -1
  155. package/lib/typescript/src/navigation/screen/TrueSheetScreen.d.ts +1 -1
  156. package/lib/typescript/src/navigation/screen/TrueSheetScreen.d.ts.map +1 -1
  157. package/lib/typescript/src/navigation/screen/types.d.ts +3 -4
  158. package/lib/typescript/src/navigation/screen/types.d.ts.map +1 -1
  159. package/lib/typescript/src/navigation/screen/useSheetScreenState.d.ts +5 -6
  160. package/lib/typescript/src/navigation/screen/useSheetScreenState.d.ts.map +1 -1
  161. package/lib/typescript/src/navigation/types.d.ts +65 -5
  162. package/lib/typescript/src/navigation/types.d.ts.map +1 -1
  163. package/lib/typescript/src/navigation/useTrueSheetNavigation.d.ts +1 -1
  164. package/lib/typescript/src/navigation/useTrueSheetNavigation.d.ts.map +1 -1
  165. package/lib/typescript/src/web/dom.d.ts +7 -0
  166. package/lib/typescript/src/web/dom.d.ts.map +1 -0
  167. package/lib/typescript/src/web/vaul/constants.d.ts +1 -0
  168. package/lib/typescript/src/web/vaul/constants.d.ts.map +1 -1
  169. package/lib/typescript/src/web/vaul/context.d.ts +1 -0
  170. package/lib/typescript/src/web/vaul/context.d.ts.map +1 -1
  171. package/lib/typescript/src/web/vaul/helpers.d.ts.map +1 -1
  172. package/lib/typescript/src/web/vaul/index.d.ts +7 -1
  173. package/lib/typescript/src/web/vaul/index.d.ts.map +1 -1
  174. package/package.json +32 -9
  175. package/react-native.config.js +1 -0
  176. package/src/TrueSheet.tsx +184 -46
  177. package/src/TrueSheet.types.ts +77 -1
  178. package/src/TrueSheet.web.tsx +135 -64
  179. package/src/TrueSheetOverlay.tsx +24 -0
  180. package/src/TrueSheetOverlay.web.tsx +33 -0
  181. package/src/TrueSheetPeek.web.tsx +4 -3
  182. package/src/fabric/TrueSheetContentViewNativeComponent.ts +1 -1
  183. package/src/fabric/TrueSheetOverlayViewNativeComponent.ts +12 -0
  184. package/src/fabric/TrueSheetViewNativeComponent.ts +5 -0
  185. package/src/index.ts +1 -0
  186. package/src/mocks/index.ts +7 -0
  187. package/src/mocks/navigation.ts +32 -25
  188. package/src/mocks/navigationExpoRouter.ts +41 -0
  189. package/src/mocks/reanimated.ts +8 -9
  190. package/src/navigation/{TrueSheetView.tsx → TrueSheetNavigatorContent.tsx} +24 -17
  191. package/src/navigation/actions.ts +78 -0
  192. package/src/navigation/base-types.ts +20 -0
  193. package/src/navigation/createTrueSheetRouter.ts +194 -0
  194. package/src/navigation/expo-router/base-types.ts +18 -0
  195. package/src/navigation/expo-router/index.ts +90 -0
  196. package/src/navigation/expo-router/types.ts +116 -0
  197. package/src/navigation/index.ts +68 -2
  198. package/src/navigation/navigator.ts +18 -0
  199. package/src/navigation/screen/ReanimatedTrueSheetScreen.tsx +2 -2
  200. package/src/navigation/screen/TrueSheetScreen.tsx +2 -2
  201. package/src/navigation/screen/types.ts +4 -6
  202. package/src/navigation/screen/useSheetScreenState.ts +10 -15
  203. package/src/navigation/types.ts +99 -16
  204. package/src/navigation/useTrueSheetNavigation.ts +1 -1
  205. package/src/web/dom.ts +9 -0
  206. package/src/web/vaul/constants.ts +4 -0
  207. package/src/web/vaul/context.ts +1 -0
  208. package/src/web/vaul/helpers.ts +13 -6
  209. package/src/web/vaul/index.tsx +46 -1
  210. package/lib/module/navigation/TrueSheetRouter.js.map +0 -1
  211. package/lib/module/navigation/TrueSheetView.js.map +0 -1
  212. package/lib/module/navigation/createTrueSheetNavigator.js +0 -63
  213. package/lib/module/navigation/createTrueSheetNavigator.js.map +0 -1
  214. package/lib/typescript/src/navigation/TrueSheetRouter.d.ts +0 -57
  215. package/lib/typescript/src/navigation/TrueSheetRouter.d.ts.map +0 -1
  216. package/lib/typescript/src/navigation/TrueSheetView.d.ts +0 -10
  217. package/lib/typescript/src/navigation/TrueSheetView.d.ts.map +0 -1
  218. package/lib/typescript/src/navigation/createTrueSheetNavigator.d.ts +0 -35
  219. package/lib/typescript/src/navigation/createTrueSheetNavigator.d.ts.map +0 -1
  220. package/src/navigation/TrueSheetRouter.ts +0 -234
  221. package/src/navigation/createTrueSheetNavigator.tsx +0 -93
@@ -1,6 +1,47 @@
1
1
  "use strict";
2
2
 
3
- export { createTrueSheetNavigator } from "./createTrueSheetNavigator.js";
4
- export { TrueSheetActions } from "./TrueSheetRouter.js";
3
+ import { createStandardNavigationFactories, StackRouter } from '@react-navigation/native';
4
+ import { createTrueSheetRouter } from "./createTrueSheetRouter.js";
5
+ import { trueSheetNavigator } from "./navigator.js";
6
+ const {
7
+ createNavigator,
8
+ createScreen
9
+ } = createStandardNavigationFactories(trueSheetNavigator, createTrueSheetRouter(StackRouter), ({
10
+ state,
11
+ navigation
12
+ }) => ({
13
+ routes: state.routes,
14
+ dispatch: navigation.dispatch
15
+ }));
16
+
17
+ /**
18
+ * Creates a TrueSheet navigator.
19
+ *
20
+ * @example
21
+ * ```tsx
22
+ * const Sheet = createTrueSheetNavigator();
23
+ *
24
+ * function App() {
25
+ * return (
26
+ * <Sheet.Navigator>
27
+ * <Sheet.Screen name="Home" component={HomeScreen} />
28
+ * <Sheet.Screen
29
+ * name="Details"
30
+ * component={DetailsSheet}
31
+ * options={{ detents: [0.5, 1] }}
32
+ * />
33
+ * </Sheet.Navigator>
34
+ * );
35
+ * }
36
+ * ```
37
+ */
38
+ export const createTrueSheetNavigator = createNavigator;
39
+
40
+ /**
41
+ * Creates a screen configuration for the static API.
42
+ */
43
+ export const createTrueSheetScreen = createScreen;
44
+ export { TrueSheetActions } from "./actions.js";
45
+ export { createTrueSheetRouter } from "./createTrueSheetRouter.js";
5
46
  export { useTrueSheetNavigation } from "./useTrueSheetNavigation.js";
6
47
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createTrueSheetNavigator","TrueSheetActions","useTrueSheetNavigation"],"sourceRoot":"../../../src","sources":["navigation/index.ts"],"mappings":";;AAAA,SAASA,wBAAwB,QAAQ,+BAA4B;AACrE,SAASC,gBAAgB,QAAkC,sBAAmB;AAC9E,SAASC,sBAAsB,QAAQ,6BAA0B","ignoreList":[]}
1
+ {"version":3,"names":["createStandardNavigationFactories","StackRouter","createTrueSheetRouter","trueSheetNavigator","createNavigator","createScreen","state","navigation","routes","dispatch","createTrueSheetNavigator","createTrueSheetScreen","TrueSheetActions","useTrueSheetNavigation"],"sourceRoot":"../../../src","sources":["navigation/index.ts"],"mappings":";;AAAA,SACEA,iCAAiC,EACjCC,WAAW,QAEN,0BAA0B;AAEjC,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SAASC,kBAAkB,QAAQ,gBAAa;AAmBhD,MAAM;EAAEC,eAAe;EAAEC;AAAa,CAAC,GAAGL,iCAAiC,CAKzEG,kBAAkB,EAClBD,qBAAqB,CAACD,WAAiC,CAAC,EACxD,CAAC;EAAEK,KAAK;EAAEC;AAAW,CAAC,MAAM;EAAEC,MAAM,EAAEF,KAAK,CAACE,MAAM;EAAEC,QAAQ,EAAEF,UAAU,CAACE;AAAS,CAAC,CACrF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAGN,eAAe;;AAEvD;AACA;AACA;AACA,OAAO,MAAMO,qBAAqB,GAAGN,YAAY;AAEjD,SAASO,gBAAgB,QAAkC,cAAW;AACtE,SAASV,qBAAqB,QAAQ,4BAAyB;AAC/D,SAASW,sBAAsB,QAAQ,6BAA0B","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ import { createStandardNavigator } from 'standard-navigation';
4
+ import { TrueSheetNavigatorContent } from "./TrueSheetNavigatorContent.js";
5
+ /**
6
+ * Framework-agnostic TrueSheet navigator.
7
+ * Wired into React Navigation via `./index` and Expo Router via `./expo-router`.
8
+ */
9
+ export const trueSheetNavigator = createStandardNavigator(TrueSheetNavigatorContent);
10
+ //# sourceMappingURL=navigator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createStandardNavigator","TrueSheetNavigatorContent","trueSheetNavigator"],"sourceRoot":"../../../src","sources":["navigation/navigator.ts"],"mappings":";;AAAA,SAASA,uBAAuB,QAAQ,qBAAqB;AAE7D,SAASC,yBAAyB,QAAQ,gCAA6B;AAOvE;AACA;AACA;AACA;AACA,OAAO,MAAMC,kBAAkB,GAAGF,uBAAuB,CAIvDC,yBAAyB,CAAC","ignoreList":[]}
@@ -10,7 +10,7 @@ const AnimatedTrueSheet = Animated.createAnimatedComponent(TrueSheet);
10
10
  export const ReanimatedTrueSheetScreen = ({
11
11
  detentIndex,
12
12
  resizeKey,
13
- navigation,
13
+ dispatch,
14
14
  emit,
15
15
  routeKey,
16
16
  closing,
@@ -30,7 +30,7 @@ export const ReanimatedTrueSheetScreen = ({
30
30
  detentIndex,
31
31
  resizeKey,
32
32
  closing,
33
- navigation,
33
+ dispatch,
34
34
  routeKey,
35
35
  emit
36
36
  });
@@ -1 +1 @@
1
- {"version":3,"names":["Animated","scheduleOnRN","useReanimatedPositionChangeHandler","TrueSheet","useSheetScreenState","jsx","_jsx","AnimatedTrueSheet","createAnimatedComponent","ReanimatedTrueSheetScreen","detentIndex","resizeKey","navigation","emit","routeKey","closing","detents","children","positionChangeHandler","sheetProps","ref","initialDetentIndex","eventHandlers","onPositionChange","reanimatedPositionChangeHandler","payload","nativeEvent","name"],"sourceRoot":"../../../../src","sources":["navigation/screen/ReanimatedTrueSheetScreen.tsx"],"mappings":";;AAAA,OAAOA,QAAQ,MAAM,yBAAyB;AAC9C,SAASC,YAAY,QAAQ,uBAAuB;AAEpD,SAASC,kCAAkC,QAAQ,2BAAkB;AACrE,SAASC,SAAS,QAAQ,iBAAiB;AAG3C,SAASC,mBAAmB,QAAQ,0BAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE5D,MAAMC,iBAAiB,GAAGP,QAAQ,CAACQ,uBAAuB,CAACL,SAAS,CAAC;AAErE,OAAO,MAAMM,yBAAyB,GAAGA,CAAC;EACxCC,WAAW;EACXC,SAAS;EACTC,UAAU;EACVC,IAAI;EACJC,QAAQ;EACRC,OAAO;EACPC,OAAO;EACPC,QAAQ;EACRC,qBAAqB;EACrB,GAAGC;AACiB,CAAC,KAAK;EAC1B,MAAM;IACJC,GAAG;IACHC,kBAAkB;IAClBC,aAAa,EAAE;MAAEC,gBAAgB;MAAE,GAAGD;IAAc;EACtD,CAAC,GAAGlB,mBAAmB,CAAC;IACtBM,WAAW;IACXC,SAAS;IACTI,OAAO;IACPH,UAAU;IACVE,QAAQ;IACRD;EACF,CAAC,CAAC;EAEF,MAAMW,+BAA+B,GAAGtB,kCAAkC,CACvEuB,OAAO,IAAK;IACX,SAAS;;IACTP,qBAAqB,GAAGO,OAAO,CAAC;IAChCxB,YAAY,CAACsB,gBAAgB,EAAE;MAC7BG,WAAW,EAAED;IACf,CAAwB,CAAC;EAC3B,CAAC,EACD,CAACF,gBAAgB,EAAEL,qBAAqB,CAC1C,CAAC;EAED,oBACEZ,IAAA,CAACC,iBAAiB;IAChBa,GAAG,EAAEA,GAAI;IACTO,IAAI,EAAE,oBAAoBb,QAAQ,EAAG;IACrCO,kBAAkB,EAAEA,kBAAmB;IACvCL,OAAO,EAAEA,OAAQ;IACjBO,gBAAgB,EAAEC,+BAAgC;IAAA,GAC9CL,UAAU;IAAA,GACVG,aAAa;IAAAL,QAAA,EAEhBA;EAAQ,CACQ,CAAC;AAExB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Animated","scheduleOnRN","useReanimatedPositionChangeHandler","TrueSheet","useSheetScreenState","jsx","_jsx","AnimatedTrueSheet","createAnimatedComponent","ReanimatedTrueSheetScreen","detentIndex","resizeKey","dispatch","emit","routeKey","closing","detents","children","positionChangeHandler","sheetProps","ref","initialDetentIndex","eventHandlers","onPositionChange","reanimatedPositionChangeHandler","payload","nativeEvent","name"],"sourceRoot":"../../../../src","sources":["navigation/screen/ReanimatedTrueSheetScreen.tsx"],"mappings":";;AAAA,OAAOA,QAAQ,MAAM,yBAAyB;AAC9C,SAASC,YAAY,QAAQ,uBAAuB;AAEpD,SAASC,kCAAkC,QAAQ,2BAAkB;AACrE,SAASC,SAAS,QAAQ,iBAAiB;AAG3C,SAASC,mBAAmB,QAAQ,0BAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE5D,MAAMC,iBAAiB,GAAGP,QAAQ,CAACQ,uBAAuB,CAACL,SAAS,CAAC;AAErE,OAAO,MAAMM,yBAAyB,GAAGA,CAAC;EACxCC,WAAW;EACXC,SAAS;EACTC,QAAQ;EACRC,IAAI;EACJC,QAAQ;EACRC,OAAO;EACPC,OAAO;EACPC,QAAQ;EACRC,qBAAqB;EACrB,GAAGC;AACiB,CAAC,KAAK;EAC1B,MAAM;IACJC,GAAG;IACHC,kBAAkB;IAClBC,aAAa,EAAE;MAAEC,gBAAgB;MAAE,GAAGD;IAAc;EACtD,CAAC,GAAGlB,mBAAmB,CAAC;IACtBM,WAAW;IACXC,SAAS;IACTI,OAAO;IACPH,QAAQ;IACRE,QAAQ;IACRD;EACF,CAAC,CAAC;EAEF,MAAMW,+BAA+B,GAAGtB,kCAAkC,CACvEuB,OAAO,IAAK;IACX,SAAS;;IACTP,qBAAqB,GAAGO,OAAO,CAAC;IAChCxB,YAAY,CAACsB,gBAAgB,EAAE;MAC7BG,WAAW,EAAED;IACf,CAAwB,CAAC;EAC3B,CAAC,EACD,CAACF,gBAAgB,EAAEL,qBAAqB,CAC1C,CAAC;EAED,oBACEZ,IAAA,CAACC,iBAAiB;IAChBa,GAAG,EAAEA,GAAI;IACTO,IAAI,EAAE,oBAAoBb,QAAQ,EAAG;IACrCO,kBAAkB,EAAEA,kBAAmB;IACvCL,OAAO,EAAEA,OAAQ;IACjBO,gBAAgB,EAAEC,+BAAgC;IAAA,GAC9CL,UAAU;IAAA,GACVG,aAAa;IAAAL,QAAA,EAEhBA;EAAQ,CACQ,CAAC;AAExB,CAAC","ignoreList":[]}
@@ -7,7 +7,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
7
7
  export const TrueSheetScreen = ({
8
8
  detentIndex,
9
9
  resizeKey,
10
- navigation,
10
+ dispatch,
11
11
  emit,
12
12
  routeKey,
13
13
  closing,
@@ -27,7 +27,7 @@ export const TrueSheetScreen = ({
27
27
  detentIndex,
28
28
  resizeKey,
29
29
  closing,
30
- navigation,
30
+ dispatch,
31
31
  routeKey,
32
32
  emit
33
33
  });
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","TrueSheet","useSheetScreenState","jsx","_jsx","TrueSheetScreen","detentIndex","resizeKey","navigation","emit","routeKey","closing","detents","children","positionChangeHandler","sheetProps","ref","initialDetentIndex","eventHandlers","onPositionChange","handlePositionChange","e","nativeEvent","name"],"sourceRoot":"../../../../src","sources":["navigation/screen/TrueSheetScreen.tsx"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,OAAO;AAEnC,SAASC,SAAS,QAAQ,iBAAiB;AAG3C,SAASC,mBAAmB,QAAQ,0BAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE5D,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAC9BC,WAAW;EACXC,SAAS;EACTC,UAAU;EACVC,IAAI;EACJC,QAAQ;EACRC,OAAO;EACPC,OAAO;EACPC,QAAQ;EACRC,qBAAqB;EACrB,GAAGC;AACiB,CAAC,KAAK;EAC1B,MAAM;IACJC,GAAG;IACHC,kBAAkB;IAClBC,aAAa,EAAE;MAAEC,gBAAgB;MAAE,GAAGD;IAAc;EACtD,CAAC,GAAGhB,mBAAmB,CAAC;IACtBI,WAAW;IACXC,SAAS;IACTI,OAAO;IACPH,UAAU;IACVE,QAAQ;IACRD;EACF,CAAC,CAAC;EAEF,MAAMW,oBAAoB,GAAGpB,WAAW,CACrCqB,CAAsB,IAAK;IAC1BF,gBAAgB,CAACE,CAAC,CAAC;IACnBP,qBAAqB,GAAGO,CAAC,CAACC,WAAW,CAAC;EACxC,CAAC,EACD,CAACH,gBAAgB,EAAEL,qBAAqB,CAC1C,CAAC;EAED,oBACEV,IAAA,CAACH,SAAS;IACRe,GAAG,EAAEA,GAAI;IACTO,IAAI,EAAE,oBAAoBb,QAAQ,EAAG;IACrCO,kBAAkB,EAAEA,kBAAmB;IACvCL,OAAO,EAAEA,OAAQ;IACjBO,gBAAgB,EAAEC,oBAAqB;IAAA,GACnCL,UAAU;IAAA,GACVG,aAAa;IAAAL,QAAA,EAEhBA;EAAQ,CACA,CAAC;AAEhB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","TrueSheet","useSheetScreenState","jsx","_jsx","TrueSheetScreen","detentIndex","resizeKey","dispatch","emit","routeKey","closing","detents","children","positionChangeHandler","sheetProps","ref","initialDetentIndex","eventHandlers","onPositionChange","handlePositionChange","e","nativeEvent","name"],"sourceRoot":"../../../../src","sources":["navigation/screen/TrueSheetScreen.tsx"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,OAAO;AAEnC,SAASC,SAAS,QAAQ,iBAAiB;AAG3C,SAASC,mBAAmB,QAAQ,0BAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE5D,OAAO,MAAMC,eAAe,GAAGA,CAAC;EAC9BC,WAAW;EACXC,SAAS;EACTC,QAAQ;EACRC,IAAI;EACJC,QAAQ;EACRC,OAAO;EACPC,OAAO;EACPC,QAAQ;EACRC,qBAAqB;EACrB,GAAGC;AACiB,CAAC,KAAK;EAC1B,MAAM;IACJC,GAAG;IACHC,kBAAkB;IAClBC,aAAa,EAAE;MAAEC,gBAAgB;MAAE,GAAGD;IAAc;EACtD,CAAC,GAAGhB,mBAAmB,CAAC;IACtBI,WAAW;IACXC,SAAS;IACTI,OAAO;IACPH,QAAQ;IACRE,QAAQ;IACRD;EACF,CAAC,CAAC;EAEF,MAAMW,oBAAoB,GAAGpB,WAAW,CACrCqB,CAAsB,IAAK;IAC1BF,gBAAgB,CAACE,CAAC,CAAC;IACnBP,qBAAqB,GAAGO,CAAC,CAACC,WAAW,CAAC;EACxC,CAAC,EACD,CAACH,gBAAgB,EAAEL,qBAAqB,CAC1C,CAAC;EAED,oBACEV,IAAA,CAACH,SAAS;IACRe,GAAG,EAAEA,GAAI;IACTO,IAAI,EAAE,oBAAoBb,QAAQ,EAAG;IACrCO,kBAAkB,EAAEA,kBAAmB;IACvCL,OAAO,EAAEA,OAAQ;IACjBO,gBAAgB,EAAEC,oBAAqB;IAAA,GACnCL,UAAU;IAAA,GACVG,aAAa;IAAAL,QAAA,EAEhBA;EAAQ,CACA,CAAC;AAEhB,CAAC","ignoreList":[]}
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
 
3
3
  import { useCallback, useEffect, useMemo, useRef } from 'react';
4
- import { TrueSheetActions } from "../TrueSheetRouter.js";
4
+ import { TrueSheetActions } from "../actions.js";
5
5
  export const useSheetScreenState = props => {
6
6
  const {
7
7
  detentIndex,
8
8
  resizeKey,
9
9
  closing,
10
- navigation,
10
+ dispatch,
11
11
  routeKey,
12
12
  emit
13
13
  } = props;
@@ -38,16 +38,17 @@ export const useSheetScreenState = props => {
38
38
  const onDidDismiss = useCallback(() => {
39
39
  emitEvent('sheetDidDismiss', undefined);
40
40
  isDismissedRef.current = true;
41
- navigation.dispatch({
41
+ dispatch({
42
42
  ...TrueSheetActions.remove(),
43
43
  source: routeKey
44
44
  });
45
- }, [emitEvent, navigation, routeKey]);
45
+ }, [emitEvent, dispatch, routeKey]);
46
46
  const eventHandlers = useMemo(() => ({
47
47
  onWillPresent: e => emitEvent('sheetWillPresent', e.nativeEvent),
48
48
  onDidPresent: e => emitEvent('sheetDidPresent', e.nativeEvent),
49
49
  onWillDismiss: _e => emitEvent('sheetWillDismiss', undefined),
50
50
  onDidDismiss,
51
+ onDismissAttempt: _e => emitEvent('sheetDismissAttempt', undefined),
51
52
  onDetentChange: e => emitEvent('sheetDetentChange', e.nativeEvent),
52
53
  onDragBegin: e => emitEvent('sheetDragBegin', e.nativeEvent),
53
54
  onDragChange: e => emitEvent('sheetDragChange', e.nativeEvent),
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useMemo","useRef","TrueSheetActions","useSheetScreenState","props","detentIndex","resizeKey","closing","navigation","routeKey","emit","ref","isDismissedRef","isFirstRenderRef","initialDetentIndexRef","current","dismiss","resize","emitEvent","type","data","target","onDidDismiss","undefined","dispatch","remove","source","eventHandlers","onWillPresent","e","nativeEvent","onDidPresent","onWillDismiss","_e","onDetentChange","onDragBegin","onDragChange","onDragEnd","onPositionChange","onWillFocus","onDidFocus","onWillBlur","onDidBlur","initialDetentIndex"],"sourceRoot":"../../../../src","sources":["navigation/screen/useSheetScreenState.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useMemo","useRef","TrueSheetActions","useSheetScreenState","props","detentIndex","resizeKey","closing","dispatch","routeKey","emit","ref","isDismissedRef","isFirstRenderRef","initialDetentIndexRef","current","dismiss","resize","emitEvent","type","data","target","onDidDismiss","undefined","remove","source","eventHandlers","onWillPresent","e","nativeEvent","onDidPresent","onWillDismiss","_e","onDismissAttempt","onDetentChange","onDragBegin","onDragChange","onDragEnd","onPositionChange","onWillFocus","onDidFocus","onWillBlur","onDidBlur","initialDetentIndex"],"sourceRoot":"../../../../src","sources":["navigation/screen/useSheetScreenState.ts"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import { useNavigation } from '@react-navigation/core';
3
+ import { useNavigation } from '@react-navigation/native';
4
4
  /**
5
5
  * Hook to access TrueSheet navigation with the resize helper.
6
6
  *
@@ -1 +1 @@
1
- {"version":3,"names":["useNavigation","useTrueSheetNavigation"],"sourceRoot":"../../../src","sources":["navigation/useTrueSheetNavigation.ts"],"mappings":";;AAAA,SAASA,aAAa,QAA4B,wBAAwB;AAI1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,sBAAsB,GAAGA,CAAA,KAEHD,aAAa,CAA6B,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useNavigation","useTrueSheetNavigation"],"sourceRoot":"../../../src","sources":["navigation/useTrueSheetNavigation.ts"],"mappings":";;AAAA,SAASA,aAAa,QAA4B,0BAA0B;AAI5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,sBAAsB,GAAGA,CAAA,KAEHD,aAAa,CAA6B,CAAC","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ /// <reference lib="dom" />
4
+
5
+ /**
6
+ * Resolves a React Native web `View` ref value to its underlying DOM element —
7
+ * RN-web refs expose the host DOM node directly.
8
+ */
9
+ export const getDOMElement = view => view instanceof HTMLElement ? view : null;
10
+ //# sourceMappingURL=dom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getDOMElement","view","HTMLElement"],"sourceRoot":"../../../src","sources":["web/dom.ts"],"mappings":";;AAAA;;AAGA;AACA;AACA;AACA;AACA,OAAO,MAAMA,aAAa,GAAIC,IAAiB,IAC7CA,IAAI,YAAYC,WAAW,GAAGD,IAAI,GAAG,IAAI","ignoreList":[]}
@@ -7,6 +7,10 @@ export const TRANSITIONS = {
7
7
  export const VELOCITY_THRESHOLD = 0.4;
8
8
  export const DEFAULT_PEEK_HEIGHT = 150;
9
9
  export const CLOSE_THRESHOLD = 0.25;
10
+
11
+ // Minimum downward pull (px) on a non-dismissible drawer at its first snap
12
+ // point before the release counts as a dismiss attempt.
13
+ export const DISMISS_ATTEMPT_THRESHOLD = 24;
10
14
  export const SCROLL_LOCK_TIMEOUT = 100;
11
15
  export const BORDER_RADIUS = 8;
12
16
  export const NESTED_DISPLACEMENT = 16;
@@ -1 +1 @@
1
- {"version":3,"names":["TRANSITIONS","DURATION","EASE","VELOCITY_THRESHOLD","DEFAULT_PEEK_HEIGHT","CLOSE_THRESHOLD","SCROLL_LOCK_TIMEOUT","BORDER_RADIUS","NESTED_DISPLACEMENT","WINDOW_TOP_OFFSET","DRAG_CLASS"],"sourceRoot":"../../../../src","sources":["web/vaul/constants.ts"],"mappings":";;AAAA,OAAO,MAAMA,WAAW,GAAG;EACzBC,QAAQ,EAAE,GAAG;EACbC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACzB,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAG,GAAG;AAErC,OAAO,MAAMC,mBAAmB,GAAG,GAAG;AAEtC,OAAO,MAAMC,eAAe,GAAG,IAAI;AAEnC,OAAO,MAAMC,mBAAmB,GAAG,GAAG;AAEtC,OAAO,MAAMC,aAAa,GAAG,CAAC;AAE9B,OAAO,MAAMC,mBAAmB,GAAG,EAAE;AAErC,OAAO,MAAMC,iBAAiB,GAAG,EAAE;AAEnC,OAAO,MAAMC,UAAU,GAAG,eAAe","ignoreList":[]}
1
+ {"version":3,"names":["TRANSITIONS","DURATION","EASE","VELOCITY_THRESHOLD","DEFAULT_PEEK_HEIGHT","CLOSE_THRESHOLD","DISMISS_ATTEMPT_THRESHOLD","SCROLL_LOCK_TIMEOUT","BORDER_RADIUS","NESTED_DISPLACEMENT","WINDOW_TOP_OFFSET","DRAG_CLASS"],"sourceRoot":"../../../../src","sources":["web/vaul/constants.ts"],"mappings":";;AAAA,OAAO,MAAMA,WAAW,GAAG;EACzBC,QAAQ,EAAE,GAAG;EACbC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACzB,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAG,GAAG;AAErC,OAAO,MAAMC,mBAAmB,GAAG,GAAG;AAEtC,OAAO,MAAMC,eAAe,GAAG,IAAI;;AAEnC;AACA;AACA,OAAO,MAAMC,yBAAyB,GAAG,EAAE;AAE3C,OAAO,MAAMC,mBAAmB,GAAG,GAAG;AAEtC,OAAO,MAAMC,aAAa,GAAG,CAAC;AAE9B,OAAO,MAAMC,mBAAmB,GAAG,EAAE;AAErC,OAAO,MAAMC,iBAAiB,GAAG,EAAE;AAEnC,OAAO,MAAMC,UAAU,GAAG,eAAe","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["React","DrawerContext","createContext","drawerRef","current","overlayRef","onPress","onRelease","onDrag","onTouchDrag","onTouchRelease","onNestedDrag","onNestedOpenChange","onNestedRelease","openProp","undefined","dismissible","isOpen","isDragging","keyboardIsOpen","snapPointsOffset","snapPoints","handleOnly","modal","shouldFade","activeSnapPoint","onOpenChange","setActiveSnapPoint","closeDrawer","direction","shouldAnimate","shouldScaleBackground","setBackgroundColorOnScale","noBodyStyles","container","autoFocus","onPositionChangeRef","setContentHeight","detached","detachedOffset","detachedRadius","useDrawerContext","context","useContext","Error"],"sourceRoot":"../../../../src","sources":["web/vaul/context.ts"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAuDzB,OAAO,MAAMC,aAAa,gBAAGD,KAAK,CAACE,aAAa,CAAqB;EACnEC,SAAS,EAAE;IAAEC,OAAO,EAAE;EAAK,CAAC;EAC5BC,UAAU,EAAE;IAAED,OAAO,EAAE;EAAK,CAAC;EAC7BE,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;EACjBC,SAAS,EAAEA,CAAA,KAAM,CAAC,CAAC;EACnBC,MAAM,EAAEA,CAAA,KAAM,CAAC,CAAC;EAChBC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,cAAc,EAAEA,CAAA,KAAM,CAAC,CAAC;EACxBC,YAAY,EAAEA,CAAA,KAAM,CAAC,CAAC;EACtBC,kBAAkB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC5BC,eAAe,EAAEA,CAAA,KAAM,CAAC,CAAC;EACzBC,QAAQ,EAAEC,SAAS;EACnBC,WAAW,EAAE,KAAK;EAClBC,MAAM,EAAE,KAAK;EACbC,UAAU,EAAE,KAAK;EACjBC,cAAc,EAAE;IAAEf,OAAO,EAAE;EAAM,CAAC;EAClCgB,gBAAgB,EAAE,IAAI;EACtBC,UAAU,EAAE,IAAI;EAChBC,UAAU,EAAE,KAAK;EACjBC,KAAK,EAAE,KAAK;EACZC,UAAU,EAAE,KAAK;EACjBC,eAAe,EAAE,IAAI;EACrBC,YAAY,EAAEA,CAAA,KAAM,CAAC,CAAC;EACtBC,kBAAkB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC5BC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,SAAS,EAAE,QAAQ;EACnBC,aAAa,EAAE;IAAE1B,OAAO,EAAE;EAAK,CAAC;EAChC2B,qBAAqB,EAAE,KAAK;EAC5BC,yBAAyB,EAAE,IAAI;EAC/BC,YAAY,EAAE,KAAK;EACnBC,SAAS,EAAE,IAAI;EACfC,SAAS,EAAE,KAAK;EAChBC,mBAAmB,EAAE;IAAEhC,OAAO,EAAEW;EAAU,CAAC;EAC3CsB,gBAAgB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC1BC,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE,CAAC;EACjBC,cAAc,EAAE;AAClB,CAAC,CAAC;AAEF,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;EACpC,MAAMC,OAAO,GAAG1C,KAAK,CAAC2C,UAAU,CAAC1C,aAAa,CAAC;EAC/C,IAAI,CAACyC,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CAAC,oDAAoD,CAAC;EACvE;EACA,OAAOF,OAAO;AAChB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","DrawerContext","createContext","drawerRef","current","overlayRef","onPress","onRelease","onDrag","onTouchDrag","onTouchRelease","onNestedDrag","onNestedOpenChange","onNestedRelease","openProp","undefined","dismissible","isOpen","isDragging","keyboardIsOpen","snapPointsOffset","snapPoints","handleOnly","modal","shouldFade","activeSnapPoint","onOpenChange","setActiveSnapPoint","closeDrawer","direction","shouldAnimate","shouldScaleBackground","setBackgroundColorOnScale","noBodyStyles","container","autoFocus","onPositionChangeRef","setContentHeight","detached","detachedOffset","detachedRadius","useDrawerContext","context","useContext","Error"],"sourceRoot":"../../../../src","sources":["web/vaul/context.ts"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAwDzB,OAAO,MAAMC,aAAa,gBAAGD,KAAK,CAACE,aAAa,CAAqB;EACnEC,SAAS,EAAE;IAAEC,OAAO,EAAE;EAAK,CAAC;EAC5BC,UAAU,EAAE;IAAED,OAAO,EAAE;EAAK,CAAC;EAC7BE,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;EACjBC,SAAS,EAAEA,CAAA,KAAM,CAAC,CAAC;EACnBC,MAAM,EAAEA,CAAA,KAAM,CAAC,CAAC;EAChBC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,cAAc,EAAEA,CAAA,KAAM,CAAC,CAAC;EACxBC,YAAY,EAAEA,CAAA,KAAM,CAAC,CAAC;EACtBC,kBAAkB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC5BC,eAAe,EAAEA,CAAA,KAAM,CAAC,CAAC;EACzBC,QAAQ,EAAEC,SAAS;EACnBC,WAAW,EAAE,KAAK;EAClBC,MAAM,EAAE,KAAK;EACbC,UAAU,EAAE,KAAK;EACjBC,cAAc,EAAE;IAAEf,OAAO,EAAE;EAAM,CAAC;EAClCgB,gBAAgB,EAAE,IAAI;EACtBC,UAAU,EAAE,IAAI;EAChBC,UAAU,EAAE,KAAK;EACjBC,KAAK,EAAE,KAAK;EACZC,UAAU,EAAE,KAAK;EACjBC,eAAe,EAAE,IAAI;EACrBC,YAAY,EAAEA,CAAA,KAAM,CAAC,CAAC;EACtBC,kBAAkB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC5BC,WAAW,EAAEA,CAAA,KAAM,CAAC,CAAC;EACrBC,SAAS,EAAE,QAAQ;EACnBC,aAAa,EAAE;IAAE1B,OAAO,EAAE;EAAK,CAAC;EAChC2B,qBAAqB,EAAE,KAAK;EAC5BC,yBAAyB,EAAE,IAAI;EAC/BC,YAAY,EAAE,KAAK;EACnBC,SAAS,EAAE,IAAI;EACfC,SAAS,EAAE,KAAK;EAChBC,mBAAmB,EAAE;IAAEhC,OAAO,EAAEW;EAAU,CAAC;EAC3CsB,gBAAgB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC1BC,QAAQ,EAAE,KAAK;EACfC,cAAc,EAAE,CAAC;EACjBC,cAAc,EAAE;AAClB,CAAC,CAAC;AAEF,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;EACpC,MAAMC,OAAO,GAAG1C,KAAK,CAAC2C,UAAU,CAAC1C,aAAa,CAAC;EAC/C,IAAI,CAACyC,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CAAC,oDAAoD,CAAC;EACvE;EACA,OAAOF,OAAO;AAChB,CAAC","ignoreList":[]}
@@ -1,5 +1,9 @@
1
1
  "use strict";
2
2
 
3
+ // CSSStyleDeclaration has no string index signature, so dynamic camelCase
4
+ // keys are assigned through this writable-record view. Values include
5
+ // undefined: originals captured for unknown keys read back as undefined.
6
+
3
7
  const cache = new WeakMap();
4
8
  export function isInView(el) {
5
9
  const rect = el.getBoundingClientRect();
@@ -11,13 +15,14 @@ export function isInView(el) {
11
15
  export function set(el, styles, ignoreCache = false) {
12
16
  if (!el || !(el instanceof HTMLElement)) return;
13
17
  let originalStyles = {};
18
+ const style = el.style;
14
19
  Object.entries(styles).forEach(([key, value]) => {
15
20
  if (key.startsWith('--')) {
16
21
  el.style.setProperty(key, value);
17
22
  return;
18
23
  }
19
- originalStyles[key] = el.style[key];
20
- el.style[key] = value;
24
+ originalStyles[key] = style[key];
25
+ style[key] = value;
21
26
  });
22
27
  if (ignoreCache) return;
23
28
  cache.set(el, originalStyles);
@@ -28,11 +33,12 @@ export function reset(el, prop) {
28
33
  if (!originalStyles) {
29
34
  return;
30
35
  }
36
+ const style = el.style;
31
37
  if (prop) {
32
- el.style[prop] = originalStyles[prop];
38
+ style[prop] = originalStyles[prop];
33
39
  } else {
34
40
  Object.entries(originalStyles).forEach(([key, value]) => {
35
- el.style[key] = value;
41
+ style[key] = value;
36
42
  });
37
43
  }
38
44
  }
@@ -1 +1 @@
1
- {"version":3,"names":["cache","WeakMap","isInView","el","rect","getBoundingClientRect","window","visualViewport","top","left","bottom","height","right","width","set","styles","ignoreCache","HTMLElement","originalStyles","Object","entries","forEach","key","value","startsWith","style","setProperty","reset","prop","get","isVertical","direction","getTranslate","element","getComputedStyle","transform","webkitTransform","mozTransform","mat","match","parseFloat","split","dampenValue","v","Math","log","assignStyle","prevStyle","cssText","assign","chain","fns","args","fn"],"sourceRoot":"../../../../src","sources":["web/vaul/helpers.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["cache","WeakMap","isInView","el","rect","getBoundingClientRect","window","visualViewport","top","left","bottom","height","right","width","set","styles","ignoreCache","HTMLElement","originalStyles","style","Object","entries","forEach","key","value","startsWith","setProperty","reset","prop","get","isVertical","direction","getTranslate","element","getComputedStyle","transform","webkitTransform","mozTransform","mat","match","parseFloat","split","dampenValue","v","Math","log","assignStyle","prevStyle","cssText","assign","chain","fns","args","fn"],"sourceRoot":"../../../../src","sources":["web/vaul/helpers.ts"],"mappings":"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","ignoreList":[]}
@@ -7,7 +7,7 @@ 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";
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
11
  import { dampenValue, 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";
@@ -28,6 +28,7 @@ export function Root({
28
28
  closeThreshold = CLOSE_THRESHOLD,
29
29
  scrollLockTimeout = SCROLL_LOCK_TIMEOUT,
30
30
  dismissible = true,
31
+ onDismissAttempt,
31
32
  draggable = true,
32
33
  handleOnly = false,
33
34
  fadeFromIndex = snapPoints && snapPoints.length - 1,
@@ -82,6 +83,7 @@ export function Root({
82
83
  const isAllowedToDrag = React.useRef(false);
83
84
  const nestedOpenChangeTimer = React.useRef(null);
84
85
  const pointerStart = React.useRef(0);
86
+ const dismissAttempted = React.useRef(false);
85
87
  const keyboardIsOpen = React.useRef(false);
86
88
  const shouldAnimate = React.useRef(!defaultOpen);
87
89
  const previousDiffFromInitial = React.useRef(0);
@@ -299,7 +301,14 @@ export function Root({
299
301
  const noCloseSnapPointsPreCondition = snapPoints && !dismissible && !isDraggingInDirection;
300
302
 
301
303
  // 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;
304
+ if (noCloseSnapPointsPreCondition && activeSnapPointIndex === 0) {
305
+ // The drawer stays put. Remember a deliberate pull that would otherwise
306
+ // have dragged it (content at its top) so release() can report it.
307
+ if (-draggedDistance > DISMISS_ATTEMPT_THRESHOLD && (isAllowedToDrag.current || shouldDrag(event.target, isDraggingInDirection))) {
308
+ dismissAttempted.current = true;
309
+ }
310
+ return;
311
+ }
303
312
 
304
313
  // We need to capture last time when drag with scroll was triggered and have a timeout between
305
314
  const absDraggedDistance = Math.abs(draggedDistance);
@@ -504,6 +513,19 @@ export function Root({
504
513
  unfreezeScrollables();
505
514
  setIsDragging(false);
506
515
  dragEndTime.current = new Date();
516
+ if (dismissAttempted.current) {
517
+ dismissAttempted.current = false;
518
+ if (isOpen) onDismissAttempt?.();
519
+ }
520
+
521
+ // The press that started this "drag" may have dismissed the drawer (e.g. a
522
+ // back button acting on pointerdown). Snapping now would overwrite the
523
+ // dismiss transform that closeDrawer just wrote and freeze the sheet in
524
+ // place until it unmounts.
525
+ if (!isOpen) {
526
+ if (pointerEvent) onReleaseProp?.(pointerEvent, false);
527
+ return;
528
+ }
507
529
  const swipeAmount = getTranslate(drawerRef.current, direction);
508
530
 
509
531
  // Drag overshoot below the lowest snap point translates the detached
@@ -648,6 +670,7 @@ export function Root({
648
670
  onTouchDrag: (event, pointerEvent) => drag(event, pointerEvent),
649
671
  onTouchRelease: (event, pointerEvent) => release(event, pointerEvent),
650
672
  dismissible,
673
+ onDismissAttempt,
651
674
  shouldAnimate,
652
675
  handleOnly,
653
676
  isOpen,
@@ -772,6 +795,7 @@ export const Content = /*#__PURE__*/React.forwardRef(({
772
795
  snapPoints,
773
796
  setActiveSnapPoint,
774
797
  dismissible,
798
+ onDismissAttempt,
775
799
  container,
776
800
  handleOnly,
777
801
  shouldAnimate,
@@ -1048,6 +1072,8 @@ export const Content = /*#__PURE__*/React.forwardRef(({
1048
1072
  e.preventDefault();
1049
1073
  if (hasSnapPoints && typeof activeSnapPointIndex === 'number' && activeSnapPointIndex > 0) {
1050
1074
  setActiveSnapPoint(snapPoints[0]);
1075
+ } else {
1076
+ onDismissAttempt?.();
1051
1077
  }
1052
1078
  }
1053
1079
  },
@@ -1170,6 +1196,7 @@ export const Handle = /*#__PURE__*/React.forwardRef(({
1170
1196
  activeSnapPoint,
1171
1197
  setActiveSnapPoint,
1172
1198
  dismissible,
1199
+ onDismissAttempt,
1173
1200
  handleOnly,
1174
1201
  isOpen,
1175
1202
  onPress,
@@ -1206,6 +1233,12 @@ export const Handle = /*#__PURE__*/React.forwardRef(({
1206
1233
  closeDrawer();
1207
1234
  return;
1208
1235
  }
1236
+
1237
+ // Mirrors native: a single-detent sheet's handle tap is a dismiss.
1238
+ if (isLastSnapPoint && snapPoints.length === 1) {
1239
+ onDismissAttempt?.();
1240
+ return;
1241
+ }
1209
1242
  const currentSnapIndex = snapPoints.findIndex(point => point === activeSnapPoint);
1210
1243
  if (currentSnapIndex === -1) return; // activeSnapPoint not found in snapPoints
1211
1244
  const nextSnapPoint = snapPoints[currentSnapIndex + 1];