@lodev09/react-native-true-sheet 4.0.0-beta.0 → 4.0.0-beta.2

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 (388) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +42 -31
  3. package/RNTrueSheet.podspec +10 -2
  4. package/android/build.gradle +2 -1
  5. package/android/src/main/java/com/lodev09/truesheet/TrueSheetContainerView.kt +174 -49
  6. package/android/src/main/java/com/lodev09/truesheet/TrueSheetContainerViewManager.kt +7 -0
  7. package/android/src/main/java/com/lodev09/truesheet/TrueSheetContentView.kt +371 -18
  8. package/android/src/main/java/com/lodev09/truesheet/TrueSheetContentViewManager.kt +14 -0
  9. package/android/src/main/java/com/lodev09/truesheet/TrueSheetFooterView.kt +156 -21
  10. package/android/src/main/java/com/lodev09/truesheet/TrueSheetFooterViewManager.kt +14 -0
  11. package/android/src/main/java/com/lodev09/truesheet/TrueSheetHeaderView.kt +38 -0
  12. package/android/src/main/java/com/lodev09/truesheet/TrueSheetHeaderViewManager.kt +28 -0
  13. package/android/src/main/java/com/lodev09/truesheet/TrueSheetModule.kt +84 -24
  14. package/android/src/main/java/com/lodev09/truesheet/TrueSheetPackage.kt +5 -4
  15. package/android/src/main/java/com/lodev09/truesheet/TrueSheetPeekView.kt +72 -0
  16. package/android/src/main/java/com/lodev09/truesheet/TrueSheetPeekViewManager.kt +33 -0
  17. package/android/src/main/java/com/lodev09/truesheet/TrueSheetStateUpdater.kt +45 -0
  18. package/android/src/main/java/com/lodev09/truesheet/TrueSheetView.kt +526 -231
  19. package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewController.kt +1224 -603
  20. package/android/src/main/java/com/lodev09/truesheet/TrueSheetViewManager.kt +136 -29
  21. package/android/src/main/java/com/lodev09/truesheet/core/RNScreensEventObserver.kt +63 -0
  22. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetBottomSheetBehavior.kt +36 -0
  23. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetBottomSheetView.kt +255 -0
  24. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetCoordinatorLayout.kt +303 -0
  25. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetDetentCalculator.kt +277 -0
  26. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetDimView.kt +162 -0
  27. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetGrabberView.kt +180 -0
  28. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetKeyboardObserver.kt +207 -0
  29. package/android/src/main/java/com/lodev09/truesheet/core/TrueSheetStackManager.kt +220 -0
  30. package/android/src/main/java/com/lodev09/truesheet/events/TrueSheetDragEvents.kt +71 -0
  31. package/android/src/main/java/com/lodev09/truesheet/events/TrueSheetFocusEvents.kt +65 -0
  32. package/android/src/main/java/com/lodev09/truesheet/events/TrueSheetLifecycleEvents.kt +112 -0
  33. package/android/src/main/java/com/lodev09/truesheet/events/TrueSheetStateEvents.kt +56 -0
  34. package/android/src/main/java/com/lodev09/truesheet/utils/KeyboardUtils.kt +84 -0
  35. package/android/src/main/java/com/lodev09/truesheet/utils/ScreenUtils.kt +93 -67
  36. package/android/src/main/java/com/lodev09/truesheet/utils/TouchEventDeduper.kt +31 -0
  37. package/android/src/main/java/com/lodev09/truesheet/utils/ViewUtils.kt +30 -0
  38. package/android/src/main/jni/CMakeLists.txt +63 -0
  39. package/android/src/main/jni/TrueSheetSpec.h +19 -0
  40. package/android/src/main/jni/TrueSheetStateUpdater.cpp +96 -0
  41. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewComponentDescriptor.h +24 -0
  42. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewShadowNode.cpp +43 -0
  43. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewShadowNode.h +28 -0
  44. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewState.cpp +11 -0
  45. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetContentViewState.h +37 -0
  46. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetFooterViewComponentDescriptor.h +24 -0
  47. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetFooterViewShadowNode.cpp +56 -0
  48. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetFooterViewShadowNode.h +28 -0
  49. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetFooterViewState.cpp +11 -0
  50. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetFooterViewState.h +41 -0
  51. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetInsets.cpp +18 -0
  52. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetInsets.h +16 -0
  53. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetViewComponentDescriptor.h +28 -0
  54. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetViewShadowNode.cpp +61 -0
  55. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetViewShadowNode.h +45 -0
  56. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetViewState.cpp +23 -0
  57. package/common/cpp/react/renderer/components/TrueSheetSpec/TrueSheetViewState.h +52 -0
  58. package/ios/TrueSheetContainerView.h +81 -6
  59. package/ios/TrueSheetContainerView.mm +275 -21
  60. package/ios/TrueSheetContentView.h +38 -1
  61. package/ios/TrueSheetContentView.mm +413 -43
  62. package/ios/TrueSheetFooterView.h +27 -2
  63. package/ios/TrueSheetFooterView.mm +141 -35
  64. package/ios/{events/OnDidDismissEvent.h → TrueSheetHeaderView.h} +10 -7
  65. package/ios/TrueSheetHeaderView.mm +64 -0
  66. package/ios/TrueSheetModule.mm +92 -5
  67. package/ios/TrueSheetPeekView.h +32 -0
  68. package/ios/TrueSheetPeekView.mm +99 -0
  69. package/ios/TrueSheetView.h +7 -15
  70. package/ios/TrueSheetView.mm +633 -215
  71. package/ios/TrueSheetViewController.h +84 -16
  72. package/ios/TrueSheetViewController.mm +1133 -333
  73. package/ios/core/RNScreensEventObserver.h +46 -0
  74. package/ios/core/RNScreensEventObserver.mm +280 -0
  75. package/ios/core/TrueSheetBlurView.h +27 -0
  76. package/ios/core/TrueSheetBlurView.mm +82 -0
  77. package/ios/core/TrueSheetDetentCalculator.h +107 -0
  78. package/ios/core/TrueSheetDetentCalculator.mm +197 -0
  79. package/ios/core/TrueSheetGrabberView.h +72 -0
  80. package/ios/core/TrueSheetGrabberView.mm +178 -0
  81. package/ios/core/TrueSheetKeyboardObserver.h +39 -0
  82. package/ios/core/TrueSheetKeyboardObserver.mm +112 -0
  83. package/ios/events/TrueSheetDragEvents.h +39 -0
  84. package/ios/events/TrueSheetDragEvents.mm +62 -0
  85. package/ios/events/{OnPositionChangeEvent.h → TrueSheetFocusEvents.h} +8 -5
  86. package/ios/events/TrueSheetFocusEvents.mm +49 -0
  87. package/ios/events/TrueSheetLifecycleEvents.h +40 -0
  88. package/ios/events/TrueSheetLifecycleEvents.mm +71 -0
  89. package/ios/events/TrueSheetStateEvents.h +35 -0
  90. package/ios/events/TrueSheetStateEvents.mm +49 -0
  91. package/ios/tvos/TrueSheetStubs.mm +154 -0
  92. package/ios/{events/OnMountEvent.h → utils/BlurUtil.h} +5 -7
  93. package/ios/utils/BlurUtil.mm +69 -0
  94. package/ios/utils/GestureUtil.h +7 -0
  95. package/ios/utils/GestureUtil.mm +12 -0
  96. package/ios/utils/PlatformUtil.h +15 -0
  97. package/ios/utils/UIView+FirstResponder.h +15 -0
  98. package/ios/utils/UIView+FirstResponder.mm +26 -0
  99. package/ios/{events/OnWillDismissEvent.h → utils/UIView+ScrollEdgeInteraction.h} +6 -7
  100. package/ios/utils/UIView+ScrollEdgeInteraction.mm +62 -0
  101. package/ios/utils/WindowUtil.mm +17 -1
  102. package/lib/module/TrueSheet.js +230 -64
  103. package/lib/module/TrueSheet.js.map +1 -1
  104. package/lib/module/TrueSheet.web.js +1203 -0
  105. package/lib/module/TrueSheet.web.js.map +1 -0
  106. package/lib/module/TrueSheetPeek.js +15 -0
  107. package/lib/module/TrueSheetPeek.js.map +1 -0
  108. package/lib/module/TrueSheetPeek.web.js +55 -0
  109. package/lib/module/TrueSheetPeek.web.js.map +1 -0
  110. package/lib/module/TrueSheetProvider.js +28 -0
  111. package/lib/module/TrueSheetProvider.js.map +1 -0
  112. package/lib/module/TrueSheetProvider.web.js +157 -0
  113. package/lib/module/TrueSheetProvider.web.js.map +1 -0
  114. package/lib/module/fabric/TrueSheetContainerViewNativeComponent.ts +1 -1
  115. package/lib/module/fabric/TrueSheetContentViewNativeComponent.ts +5 -1
  116. package/lib/module/fabric/TrueSheetFooterViewNativeComponent.ts +10 -2
  117. package/lib/module/fabric/TrueSheetHeaderViewNativeComponent.ts +8 -0
  118. package/lib/module/fabric/TrueSheetPeekViewNativeComponent.ts +8 -0
  119. package/lib/module/fabric/TrueSheetViewNativeComponent.ts +105 -18
  120. package/lib/module/index.js +3 -3
  121. package/lib/module/index.js.map +1 -1
  122. package/lib/module/mocks/index.js +93 -0
  123. package/lib/module/mocks/index.js.map +1 -0
  124. package/lib/module/mocks/navigation.js +95 -0
  125. package/lib/module/mocks/navigation.js.map +1 -0
  126. package/lib/module/mocks/navigationExpoRouter.js +21 -0
  127. package/lib/module/mocks/navigationExpoRouter.js.map +1 -0
  128. package/lib/module/mocks/reanimated.js +91 -0
  129. package/lib/module/mocks/reanimated.js.map +1 -0
  130. package/lib/module/navigation/TrueSheetNavigatorContent.js +73 -0
  131. package/lib/module/navigation/TrueSheetNavigatorContent.js.map +1 -0
  132. package/lib/module/navigation/actions.js +50 -0
  133. package/lib/module/navigation/actions.js.map +1 -0
  134. package/lib/module/navigation/createTrueSheetRouter.js +166 -0
  135. package/lib/module/navigation/createTrueSheetRouter.js.map +1 -0
  136. package/lib/module/navigation/expo-router/index.js +48 -0
  137. package/lib/module/navigation/expo-router/index.js.map +1 -0
  138. package/lib/module/navigation/index.js +47 -0
  139. package/lib/module/navigation/index.js.map +1 -0
  140. package/lib/module/navigation/navigator.js +10 -0
  141. package/lib/module/navigation/navigator.js.map +1 -0
  142. package/lib/module/navigation/screen/ReanimatedTrueSheetScreen.js +56 -0
  143. package/lib/module/navigation/screen/ReanimatedTrueSheetScreen.js.map +1 -0
  144. package/lib/module/navigation/screen/TrueSheetScreen.js +49 -0
  145. package/lib/module/navigation/screen/TrueSheetScreen.js.map +1 -0
  146. package/lib/module/navigation/screen/index.js +5 -0
  147. package/lib/module/navigation/screen/index.js.map +1 -0
  148. package/lib/module/navigation/screen/types.js +4 -0
  149. package/lib/module/navigation/screen/types.js.map +1 -0
  150. package/lib/module/navigation/screen/useSheetScreenState.js +68 -0
  151. package/lib/module/navigation/screen/useSheetScreenState.js.map +1 -0
  152. package/lib/module/navigation/types.js +4 -0
  153. package/lib/module/navigation/types.js.map +1 -0
  154. package/lib/module/navigation/useTrueSheetNavigation.js +24 -0
  155. package/lib/module/navigation/useTrueSheetNavigation.js.map +1 -0
  156. package/lib/module/reanimated/ReanimatedTrueSheet.js +15 -9
  157. package/lib/module/reanimated/ReanimatedTrueSheet.js.map +1 -1
  158. package/lib/module/reanimated/ReanimatedTrueSheet.web.js +81 -0
  159. package/lib/module/reanimated/ReanimatedTrueSheet.web.js.map +1 -0
  160. package/lib/module/reanimated/ReanimatedTrueSheetProvider.js +4 -2
  161. package/lib/module/reanimated/ReanimatedTrueSheetProvider.js.map +1 -1
  162. package/lib/module/reanimated/index.js +2 -2
  163. package/lib/module/reanimated/index.js.map +1 -1
  164. package/lib/module/reanimated/useReanimatedPositionChangeHandler.web.js +20 -0
  165. package/lib/module/reanimated/useReanimatedPositionChangeHandler.web.js.map +1 -0
  166. package/lib/module/specs/NativeTrueSheetModule.js.map +1 -1
  167. package/lib/module/web/constants.js +16 -0
  168. package/lib/module/web/constants.js.map +1 -0
  169. package/lib/module/web/dom.js +10 -0
  170. package/lib/module/web/dom.js.map +1 -0
  171. package/lib/module/web/vaul/README.md +9 -0
  172. package/lib/module/web/vaul/browser.js +30 -0
  173. package/lib/module/web/vaul/browser.js.map +1 -0
  174. package/lib/module/web/vaul/constants.js +15 -0
  175. package/lib/module/web/vaul/constants.js.map +1 -0
  176. package/lib/module/web/vaul/context.js +59 -0
  177. package/lib/module/web/vaul/context.js.map +1 -0
  178. package/lib/module/web/vaul/helpers.js +99 -0
  179. package/lib/module/web/vaul/helpers.js.map +1 -0
  180. package/lib/module/web/vaul/index.js +1309 -0
  181. package/lib/module/web/vaul/index.js.map +1 -0
  182. package/lib/module/web/vaul/style.css +287 -0
  183. package/lib/module/web/vaul/style.css.d.js +2 -0
  184. package/lib/module/web/vaul/style.css.d.js.map +1 -0
  185. package/lib/module/web/vaul/types.js +2 -0
  186. package/lib/module/web/vaul/types.js.map +1 -0
  187. package/lib/module/web/vaul/use-composed-refs.js +34 -0
  188. package/lib/module/web/vaul/use-composed-refs.js.map +1 -0
  189. package/lib/module/web/vaul/use-controllable-state.js +54 -0
  190. package/lib/module/web/vaul/use-controllable-state.js.map +1 -0
  191. package/lib/module/web/vaul/use-position-fixed.js +123 -0
  192. package/lib/module/web/vaul/use-position-fixed.js.map +1 -0
  193. package/lib/module/web/vaul/use-prevent-scroll.js +258 -0
  194. package/lib/module/web/vaul/use-prevent-scroll.js.map +1 -0
  195. package/lib/module/web/vaul/use-scale-background.js +57 -0
  196. package/lib/module/web/vaul/use-scale-background.js.map +1 -0
  197. package/lib/module/web/vaul/use-snap-points.js +305 -0
  198. package/lib/module/web/vaul/use-snap-points.js.map +1 -0
  199. package/lib/typescript/src/TrueSheet.d.ts +51 -14
  200. package/lib/typescript/src/TrueSheet.d.ts.map +1 -1
  201. package/lib/typescript/src/TrueSheet.types.d.ts +463 -54
  202. package/lib/typescript/src/TrueSheet.types.d.ts.map +1 -1
  203. package/lib/typescript/src/TrueSheet.web.d.ts +5 -0
  204. package/lib/typescript/src/TrueSheet.web.d.ts.map +1 -0
  205. package/lib/typescript/src/TrueSheetPeek.d.ts +9 -0
  206. package/lib/typescript/src/TrueSheetPeek.d.ts.map +1 -0
  207. package/lib/typescript/src/TrueSheetPeek.web.d.ts +28 -0
  208. package/lib/typescript/src/TrueSheetPeek.web.d.ts.map +1 -0
  209. package/lib/typescript/src/TrueSheetProvider.d.ts +18 -0
  210. package/lib/typescript/src/TrueSheetProvider.d.ts.map +1 -0
  211. package/lib/typescript/src/TrueSheetProvider.web.d.ts +27 -0
  212. package/lib/typescript/src/TrueSheetProvider.web.d.ts.map +1 -0
  213. package/lib/typescript/src/fabric/TrueSheetContainerViewNativeComponent.d.ts.map +1 -1
  214. package/lib/typescript/src/fabric/TrueSheetContentViewNativeComponent.d.ts.map +1 -1
  215. package/lib/typescript/src/fabric/TrueSheetFooterViewNativeComponent.d.ts +2 -0
  216. package/lib/typescript/src/fabric/TrueSheetFooterViewNativeComponent.d.ts.map +1 -1
  217. package/lib/typescript/src/fabric/TrueSheetHeaderViewNativeComponent.d.ts +6 -0
  218. package/lib/typescript/src/fabric/TrueSheetHeaderViewNativeComponent.d.ts.map +1 -0
  219. package/lib/typescript/src/fabric/TrueSheetPeekViewNativeComponent.d.ts +6 -0
  220. package/lib/typescript/src/fabric/TrueSheetPeekViewNativeComponent.d.ts.map +1 -0
  221. package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts +67 -16
  222. package/lib/typescript/src/fabric/TrueSheetViewNativeComponent.d.ts.map +1 -1
  223. package/lib/typescript/src/index.d.ts +2 -2
  224. package/lib/typescript/src/index.d.ts.map +1 -1
  225. package/lib/typescript/src/mocks/index.d.ts +43 -0
  226. package/lib/typescript/src/mocks/index.d.ts.map +1 -0
  227. package/lib/typescript/src/mocks/navigation.d.ts +70 -0
  228. package/lib/typescript/src/mocks/navigation.d.ts.map +1 -0
  229. package/lib/typescript/src/mocks/navigationExpoRouter.d.ts +22 -0
  230. package/lib/typescript/src/mocks/navigationExpoRouter.d.ts.map +1 -0
  231. package/lib/typescript/src/mocks/reanimated.d.ts +48 -0
  232. package/lib/typescript/src/mocks/reanimated.d.ts.map +1 -0
  233. package/lib/typescript/src/navigation/TrueSheetNavigatorContent.d.ts +5 -0
  234. package/lib/typescript/src/navigation/TrueSheetNavigatorContent.d.ts.map +1 -0
  235. package/lib/typescript/src/navigation/actions.d.ts +71 -0
  236. package/lib/typescript/src/navigation/actions.d.ts.map +1 -0
  237. package/lib/typescript/src/navigation/createTrueSheetRouter.d.ts +14 -0
  238. package/lib/typescript/src/navigation/createTrueSheetRouter.d.ts.map +1 -0
  239. package/lib/typescript/src/navigation/expo-router/index.d.ts +37 -0
  240. package/lib/typescript/src/navigation/expo-router/index.d.ts.map +1 -0
  241. package/lib/typescript/src/navigation/index.d.ts +46 -0
  242. package/lib/typescript/src/navigation/index.d.ts.map +1 -0
  243. package/lib/typescript/src/navigation/navigator.d.ts +7 -0
  244. package/lib/typescript/src/navigation/navigator.d.ts.map +1 -0
  245. package/lib/typescript/src/navigation/screen/ReanimatedTrueSheetScreen.d.ts +3 -0
  246. package/lib/typescript/src/navigation/screen/ReanimatedTrueSheetScreen.d.ts.map +1 -0
  247. package/lib/typescript/src/navigation/screen/TrueSheetScreen.d.ts +3 -0
  248. package/lib/typescript/src/navigation/screen/TrueSheetScreen.d.ts.map +1 -0
  249. package/lib/typescript/src/navigation/screen/index.d.ts +4 -0
  250. package/lib/typescript/src/navigation/screen/index.d.ts.map +1 -0
  251. package/lib/typescript/src/navigation/screen/types.d.ts +14 -0
  252. package/lib/typescript/src/navigation/screen/types.d.ts.map +1 -0
  253. package/lib/typescript/src/navigation/screen/useSheetScreenState.d.ts +33 -0
  254. package/lib/typescript/src/navigation/screen/useSheetScreenState.d.ts.map +1 -0
  255. package/lib/typescript/src/navigation/types.d.ts +177 -0
  256. package/lib/typescript/src/navigation/types.d.ts.map +1 -0
  257. package/lib/typescript/src/navigation/useTrueSheetNavigation.d.ts +23 -0
  258. package/lib/typescript/src/navigation/useTrueSheetNavigation.d.ts.map +1 -0
  259. package/lib/typescript/src/reanimated/ReanimatedTrueSheet.d.ts.map +1 -1
  260. package/lib/typescript/src/reanimated/ReanimatedTrueSheet.web.d.ts +41 -0
  261. package/lib/typescript/src/reanimated/ReanimatedTrueSheet.web.d.ts.map +1 -0
  262. package/lib/typescript/src/reanimated/ReanimatedTrueSheetProvider.d.ts +8 -2
  263. package/lib/typescript/src/reanimated/ReanimatedTrueSheetProvider.d.ts.map +1 -1
  264. package/lib/typescript/src/reanimated/useReanimatedPositionChangeHandler.web.d.ts +15 -0
  265. package/lib/typescript/src/reanimated/useReanimatedPositionChangeHandler.web.d.ts.map +1 -0
  266. package/lib/typescript/src/specs/NativeTrueSheetModule.d.ts +25 -3
  267. package/lib/typescript/src/specs/NativeTrueSheetModule.d.ts.map +1 -1
  268. package/lib/typescript/src/web/constants.d.ts +14 -0
  269. package/lib/typescript/src/web/constants.d.ts.map +1 -0
  270. package/lib/typescript/src/web/dom.d.ts +7 -0
  271. package/lib/typescript/src/web/dom.d.ts.map +1 -0
  272. package/lib/typescript/src/web/vaul/browser.d.ts +8 -0
  273. package/lib/typescript/src/web/vaul/browser.d.ts.map +1 -0
  274. package/lib/typescript/src/web/vaul/constants.d.ts +13 -0
  275. package/lib/typescript/src/web/vaul/constants.d.ts.map +1 -0
  276. package/lib/typescript/src/web/vaul/context.d.ts +53 -0
  277. package/lib/typescript/src/web/vaul/context.d.ts.map +1 -0
  278. package/lib/typescript/src/web/vaul/helpers.d.ts +17 -0
  279. package/lib/typescript/src/web/vaul/helpers.d.ts.map +1 -0
  280. package/lib/typescript/src/web/vaul/index.d.ts +228 -0
  281. package/lib/typescript/src/web/vaul/index.d.ts.map +1 -0
  282. package/lib/typescript/src/web/vaul/types.d.ts +7 -0
  283. package/lib/typescript/src/web/vaul/types.d.ts.map +1 -0
  284. package/lib/typescript/src/web/vaul/use-composed-refs.d.ts +14 -0
  285. package/lib/typescript/src/web/vaul/use-composed-refs.d.ts.map +1 -0
  286. package/lib/typescript/src/web/vaul/use-controllable-state.d.ts +9 -0
  287. package/lib/typescript/src/web/vaul/use-controllable-state.d.ts.map +1 -0
  288. package/lib/typescript/src/web/vaul/use-position-fixed.d.ts +19 -0
  289. package/lib/typescript/src/web/vaul/use-position-fixed.d.ts.map +1 -0
  290. package/lib/typescript/src/web/vaul/use-prevent-scroll.d.ts +18 -0
  291. package/lib/typescript/src/web/vaul/use-prevent-scroll.d.ts.map +1 -0
  292. package/lib/typescript/src/web/vaul/use-scale-background.d.ts +2 -0
  293. package/lib/typescript/src/web/vaul/use-scale-background.d.ts.map +1 -0
  294. package/lib/typescript/src/web/vaul/use-snap-points.d.ts +38 -0
  295. package/lib/typescript/src/web/vaul/use-snap-points.d.ts.map +1 -0
  296. package/package.json +95 -36
  297. package/react-native.config.js +9 -2
  298. package/src/TrueSheet.tsx +281 -62
  299. package/src/TrueSheet.types.ts +525 -71
  300. package/src/TrueSheet.web.tsx +1362 -0
  301. package/src/TrueSheetPeek.tsx +11 -0
  302. package/src/TrueSheetPeek.web.tsx +64 -0
  303. package/src/TrueSheetProvider.tsx +33 -0
  304. package/src/TrueSheetProvider.web.tsx +220 -0
  305. package/src/fabric/TrueSheetContainerViewNativeComponent.ts +1 -1
  306. package/src/fabric/TrueSheetContentViewNativeComponent.ts +5 -1
  307. package/src/fabric/TrueSheetFooterViewNativeComponent.ts +10 -2
  308. package/src/fabric/TrueSheetHeaderViewNativeComponent.ts +8 -0
  309. package/src/fabric/TrueSheetPeekViewNativeComponent.ts +8 -0
  310. package/src/fabric/TrueSheetViewNativeComponent.ts +105 -18
  311. package/src/index.ts +2 -2
  312. package/src/mocks/index.ts +89 -0
  313. package/src/mocks/navigation.ts +79 -0
  314. package/src/mocks/navigationExpoRouter.ts +40 -0
  315. package/src/mocks/reanimated.ts +100 -0
  316. package/src/navigation/TrueSheetNavigatorContent.tsx +106 -0
  317. package/src/navigation/actions.ts +78 -0
  318. package/src/navigation/createTrueSheetRouter.ts +222 -0
  319. package/src/navigation/expo-router/index.ts +89 -0
  320. package/src/navigation/index.ts +81 -0
  321. package/src/navigation/navigator.ts +18 -0
  322. package/src/navigation/screen/ReanimatedTrueSheetScreen.tsx +61 -0
  323. package/src/navigation/screen/TrueSheetScreen.tsx +54 -0
  324. package/src/navigation/screen/index.ts +3 -0
  325. package/src/navigation/screen/types.ts +19 -0
  326. package/src/navigation/screen/useSheetScreenState.ts +100 -0
  327. package/src/navigation/types.ts +251 -0
  328. package/src/navigation/useTrueSheetNavigation.ts +26 -0
  329. package/src/reanimated/ReanimatedTrueSheet.tsx +12 -7
  330. package/src/reanimated/ReanimatedTrueSheet.web.tsx +75 -0
  331. package/src/reanimated/ReanimatedTrueSheetProvider.tsx +12 -8
  332. package/src/reanimated/useReanimatedPositionChangeHandler.web.ts +31 -0
  333. package/src/specs/NativeTrueSheetModule.ts +28 -3
  334. package/src/web/constants.ts +13 -0
  335. package/src/web/dom.ts +9 -0
  336. package/src/web/vaul/README.md +9 -0
  337. package/src/web/vaul/browser.ts +38 -0
  338. package/src/web/vaul/constants.ts +20 -0
  339. package/src/web/vaul/context.ts +101 -0
  340. package/src/web/vaul/helpers.ts +131 -0
  341. package/src/web/vaul/index.tsx +1740 -0
  342. package/src/web/vaul/style.css +287 -0
  343. package/src/web/vaul/style.css.d.ts +1 -0
  344. package/src/web/vaul/types.ts +7 -0
  345. package/src/web/vaul/use-composed-refs.ts +35 -0
  346. package/src/web/vaul/use-controllable-state.ts +66 -0
  347. package/src/web/vaul/use-position-fixed.ts +147 -0
  348. package/src/web/vaul/use-prevent-scroll.ts +309 -0
  349. package/src/web/vaul/use-scale-background.ts +64 -0
  350. package/src/web/vaul/use-snap-points.ts +455 -0
  351. package/android/src/main/java/com/lodev09/truesheet/events/DetentChangeEvent.kt +0 -26
  352. package/android/src/main/java/com/lodev09/truesheet/events/DidDismissEvent.kt +0 -20
  353. package/android/src/main/java/com/lodev09/truesheet/events/DidPresentEvent.kt +0 -26
  354. package/android/src/main/java/com/lodev09/truesheet/events/DragBeginEvent.kt +0 -26
  355. package/android/src/main/java/com/lodev09/truesheet/events/DragChangeEvent.kt +0 -26
  356. package/android/src/main/java/com/lodev09/truesheet/events/DragEndEvent.kt +0 -26
  357. package/android/src/main/java/com/lodev09/truesheet/events/MountEvent.kt +0 -20
  358. package/android/src/main/java/com/lodev09/truesheet/events/PositionChangeEvent.kt +0 -32
  359. package/android/src/main/java/com/lodev09/truesheet/events/SizeChangeEvent.kt +0 -27
  360. package/android/src/main/java/com/lodev09/truesheet/events/WillDismissEvent.kt +0 -20
  361. package/android/src/main/java/com/lodev09/truesheet/events/WillPresentEvent.kt +0 -26
  362. package/android/src/main/res/values/styles.xml +0 -8
  363. package/ios/events/OnDetentChangeEvent.h +0 -28
  364. package/ios/events/OnDetentChangeEvent.mm +0 -30
  365. package/ios/events/OnDidDismissEvent.mm +0 -25
  366. package/ios/events/OnDidPresentEvent.h +0 -28
  367. package/ios/events/OnDidPresentEvent.mm +0 -30
  368. package/ios/events/OnDragBeginEvent.h +0 -28
  369. package/ios/events/OnDragBeginEvent.mm +0 -30
  370. package/ios/events/OnDragChangeEvent.h +0 -28
  371. package/ios/events/OnDragChangeEvent.mm +0 -30
  372. package/ios/events/OnDragEndEvent.h +0 -28
  373. package/ios/events/OnDragEndEvent.mm +0 -30
  374. package/ios/events/OnMountEvent.mm +0 -25
  375. package/ios/events/OnPositionChangeEvent.mm +0 -32
  376. package/ios/events/OnSizeChangeEvent.h +0 -28
  377. package/ios/events/OnSizeChangeEvent.mm +0 -30
  378. package/ios/events/OnWillDismissEvent.mm +0 -25
  379. package/ios/events/OnWillPresentEvent.h +0 -28
  380. package/ios/events/OnWillPresentEvent.mm +0 -30
  381. package/ios/utils/LayoutUtil.h +0 -44
  382. package/ios/utils/LayoutUtil.mm +0 -50
  383. package/lib/module/TrueSheetGrabber.js +0 -51
  384. package/lib/module/TrueSheetGrabber.js.map +0 -1
  385. package/lib/typescript/src/TrueSheetGrabber.d.ts +0 -39
  386. package/lib/typescript/src/TrueSheetGrabber.d.ts.map +0 -1
  387. package/src/TrueSheetGrabber.tsx +0 -82
  388. package/src/__mocks__/index.js +0 -67
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createElement","forwardRef","isValidElement","useCallback","useEffect","useImperativeHandle","useMemo","useRef","useState","StyleSheet","useColorScheme","useWindowDimensions","View","measurePeekContentHeight","TrueSheetPeekContext","usePortalContainer","useRegisterSheet","useSheetStack","COLOR_SURFACE_CONTAINER_LOW_DARK","COLOR_SURFACE_CONTAINER_LOW_LIGHT","DEFAULT_ANCHOR_OFFSET","DEFAULT_CORNER_RADIUS","DEFAULT_DETACHED_OFFSET","DEFAULT_FORM_SHEET_HEIGHT_RATIO","DEFAULT_FORM_SHEET_WIDTH","DEFAULT_GRABBER_COLOR_DARK","DEFAULT_GRABBER_COLOR_LIGHT","DEFAULT_GRABBER_HEIGHT","DEFAULT_GRABBER_TOP_MARGIN","DEFAULT_GRABBER_WIDTH","DEFAULT_MAX_WIDTH","getDOMElement","Drawer","DEFAULT_PEEK_HEIGHT","TRANSITIONS","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","findVerticalScroller","root","el","querySelectorAll","overflowY","window","getComputedStyle","TrueSheetComponent","props","ref","children","name","dismissible","draggable","cornerRadius","style","backgroundColor","backgroundColorProp","maxContentHeight","maxContentWidth","anchor","anchorOffset","grabber","grabberOptions","accessibilityOptions","detents","dimmed","dimmedDetentIndex","initialDetentIndex","header","headerStyle","headerOptions","footer","footerStyle","footerOptions","presentation","detached","detachedOffset","elevation","insetAdjustment","initialDetentAnimated","onPositionChange","onWillPresent","onDidPresent","onWillDismiss","onDidDismiss","onDetentChange","onDragBegin","onDragChange","onDragEnd","onMount","onWillFocus","onDidFocus","onWillBlur","onDidBlur","validDetents","filter","d","snapPointsProps","length","snapPoints","fadeFromIndex","Math","min","width","windowWidth","height","windowHeight","isLandscapeOrTablet","isFormSheet","effectiveDetached","colorScheme","shouldAutoPresent","isOpen","setIsOpen","activeSnapPoint","setActiveSnapPoint","current","includes","validDetentsRef","hasAutoDetent","handleSetActiveSnapPoint","snapPoint","handleOpenChange","open","portalContainer","handlePointerDownOutside","e","target","Node","contains","preventDefault","Element","wrapper","drawerContentRef","closest","dismissAboveRef","methods","present","index","detent","undefined","Error","dismiss","resize","dismissStack","animated","methodsRef","headerHeight","setHeaderHeight","footerHeight","setFooterHeight","handleHeaderLayout","nativeEvent","layout","handleFooterLayout","headerElRef","footerElRef","peekContentHeight","setPeekContentHeight","contentRef","peekElRef","peekContext","peekRef","absoluteHeader","position","absoluteHeaderRef","resolvedHeaderStyle","absoluteHeaderStyle","absoluteFooter","absoluteFooterRef","footerOwnsInset","Boolean","resolvedFooterStyle","flat","flatten","base","paddingBottom","paddingVertical","padding","baseCss","peekHeight","hasBoundedScrollable","setHasBoundedScrollable","scrollableAutoHeight","setScrollableAutoHeight","pinnedScrollerRef","measureNaturalHeight","contentEl","isConnected","headerEl","footerEl","offsetHeight","scroller","scrollContent","firstElementChild","HTMLElement","clientHeight","max","canceled","rafId","mutationObserver","resizeObserver","attach","drawerEl","requestAnimationFrame","measure","observed","observe","disconnect","ResizeObserver","MutationObserver","childList","subtree","cancelAnimationFrame","isScrollLocked","measuredContentHeight","setMeasuredContentHeight","effectiveMaxContentHeight","effectiveDetachedOffset","visibleHeight","onWillPresentRef","onDidPresentRef","onWillDismissRef","onDidDismissRef","onDetentChangeRef","onDragBeginRef","onDragChangeRef","onDragEndRef","onPositionChangeRef","activeSnapPointRef","geometryInputsRef","computeDetentGeometry","inputs","windowH","innerHeight","effectiveH","ceiling","measuredHeight","autoHeight","peekEl","livePeekContentHeight","livePeekHeight","positions","values","h","push","computeDetentInfo","live","snap","indexOf","getBoundingClientRect","top","interpolateFromPosition","count","epsilon","firstPos","lastPos","indexRaw","detentRaw","indexProgress","detentProgress","clamped","i","pos","nextPos","range","progress","clampedProgress","sizedLayoutRef","isDraggingRef","isSettlingAfterDragRef","updateSizedLayoutHeight","node","abs","SIZED_LAYOUT_HEIGHT","minHeight","handlePositionChange","realtime","onMountRef","wasOpenRef","wasOpen","onWillBlurRef","fireDone","onDidFocusRef","onDidBlurRef","start","drawer","onWillFocusRef","targets","waitForSettle","pending","flatMap","getAnimations","a","playState","Promise","allSettled","map","finished","then","detentChangeStateRef","prev","handleDrag","handleRelease","_event","isNested","dismissAbove","descendants","parent","parentWrapper","transition","DURATION","EASE","join","wrapperTransition","CLIP_NONE","setClip","next","clipPath","transform","computeTargetY","parentSnap","Number","parseFloat","getPropertyValue","nodeRef","childSnap","applyFormClip","form","find","isFormSheetRef","childDrawer","childWrapper","snapY","childBottomGap","bottom","childMaxW","maxWidth","innerWidth","formLeft","formRight","formBottom","rect","left","right","radius","apply","child","targetY","match","currentY","raf","observer","attributes","attributeFilter","prevDescendantCountRef","prevCount","gained","lost","useSizedLayout","effectiveCornerRadius","dropShadow","mergedContentStyle","display","flexDirection","borderTopLeftRadius","borderTopRightRadius","overflow","defaultGrabberColor","grabberHeight","footerFloatStyle","pointerEvents","wrapperStyle","needsMargins","marginLeft","marginRight","handleStyle","topMargin","borderRadius","color","opacity","zIndex","Provider","value","Root","onOpenChange","onDrag","onRelease","repositionInputs","modal","nested","detachedRadius","initialAnimated","detachedWrapperStyle","onContentHeightChange","contentHeight","Portal","container","Overlay","overlayStyle","Content","onPointerDownOutside","detachedSiblings","onLayout","Title","visuallyHiddenStyle","paneTitle","Handle","sizedLayoutStyle","contentFillStyle","relativeFooterStyle","inset","marginTop","flex","margin","clip","whiteSpace","border","STATIC_METHOD_ERROR","TrueSheet","rejectStatic","dismissAll"],"sourceRoot":"../../src","sources":["TrueSheet.web.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ import TrueSheetPeekViewNativeComponent from './fabric/TrueSheetPeekViewNativeComponent';
4
+
5
+ /**
6
+ * Wrapper component that marks its children as the sheet's peek content.
7
+ * When rendered within a `TrueSheet`, the `"peek"` detent reveals everything
8
+ * from the top of the sheet through the bottom of this component — content
9
+ * below it stays hidden until the sheet is expanded.
10
+ */
11
+ import { jsx as _jsx } from "react/jsx-runtime";
12
+ export const TrueSheetPeek = props => /*#__PURE__*/_jsx(TrueSheetPeekViewNativeComponent, {
13
+ ...props
14
+ });
15
+ //# sourceMappingURL=TrueSheetPeek.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TrueSheetPeekViewNativeComponent","jsx","_jsx","TrueSheetPeek","props"],"sourceRoot":"../../src","sources":["TrueSheetPeek.tsx"],"mappings":";;AAEA,OAAOA,gCAAgC,MAAM,2CAA2C;;AAExF;AACA;AACA;AACA;AACA;AACA;AALA,SAAAC,GAAA,IAAAC,IAAA;AAMA,OAAO,MAAMC,aAAa,GAAIC,KAAgB,iBAAKF,IAAA,CAACF,gCAAgC;EAAA,GAAKI;AAAK,CAAG,CAAC","ignoreList":[]}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+
3
+ import { createContext, useContext, useEffect, useRef } from 'react';
4
+ import { View } from 'react-native';
5
+ import { getDOMElement } from "./web/dom.js";
6
+
7
+ /**
8
+ * Reports the measured peek content height to the owning TrueSheet.
9
+ * @internal
10
+ */
11
+ import { jsx as _jsx } from "react/jsx-runtime";
12
+ export const TrueSheetPeekContext = /*#__PURE__*/createContext(null);
13
+
14
+ /**
15
+ * Distance from the top of the content view to the bottom of the peek view,
16
+ * so the peek view's offset within the content (padding, views above it)
17
+ * counts toward the peek detent. Both rects live in the drawer's transformed
18
+ * subtree, so an in-flight translate cancels out of the delta.
19
+ * @internal
20
+ */
21
+ export const measurePeekContentHeight = (peekElement, contentElement) => peekElement.getBoundingClientRect().bottom - contentElement.getBoundingClientRect().top;
22
+
23
+ /**
24
+ * Wrapper component that marks its children as the sheet's peek content.
25
+ * When rendered within a `TrueSheet`, the `"peek"` detent reveals everything
26
+ * from the top of the sheet through the bottom of this component — content
27
+ * below it stays hidden until the sheet is expanded.
28
+ */
29
+ export const TrueSheetPeek = ({
30
+ onLayout,
31
+ ...rest
32
+ }) => {
33
+ const context = useContext(TrueSheetPeekContext);
34
+ const localRef = useRef(null);
35
+
36
+ // Register into the sheet's peek ref so it can measure the peek live
37
+ // during detent geometry computation (state lags the first willPresent).
38
+ const viewRef = context?.peekRef ?? localRef;
39
+ useEffect(() => () => context?.setPeekContentHeight(0), [context]);
40
+ const handleLayout = event => {
41
+ if (context) {
42
+ const peekElement = getDOMElement(viewRef.current);
43
+ const contentElement = getDOMElement(context.contentRef.current);
44
+ const bottom = peekElement && contentElement ? measurePeekContentHeight(peekElement, contentElement) : event.nativeEvent.layout.height;
45
+ context.setPeekContentHeight(bottom);
46
+ }
47
+ onLayout?.(event);
48
+ };
49
+ return /*#__PURE__*/_jsx(View, {
50
+ ...rest,
51
+ ref: viewRef,
52
+ onLayout: handleLayout
53
+ });
54
+ };
55
+ //# sourceMappingURL=TrueSheetPeek.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","useContext","useEffect","useRef","View","getDOMElement","jsx","_jsx","TrueSheetPeekContext","measurePeekContentHeight","peekElement","contentElement","getBoundingClientRect","bottom","top","TrueSheetPeek","onLayout","rest","context","localRef","viewRef","peekRef","setPeekContentHeight","handleLayout","event","current","contentRef","nativeEvent","layout","height","ref"],"sourceRoot":"../../src","sources":["TrueSheetPeek.web.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAkBC,UAAU,EAAEC,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACpF,SAAiCC,IAAI,QAAwB,cAAc;AAE3E,SAASC,aAAa,QAAQ,cAAW;;AAEzC;AACA;AACA;AACA;AAHA,SAAAC,GAAA,IAAAC,IAAA;AAUA,OAAO,MAAMC,oBAAoB,gBAAGR,aAAa,CAAmC,IAAI,CAAC;;AAEzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMS,wBAAwB,GAAGA,CACtCC,WAAwB,EACxBC,cAA2B,KAE3BD,WAAW,CAACE,qBAAqB,CAAC,CAAC,CAACC,MAAM,GAAGF,cAAc,CAACC,qBAAqB,CAAC,CAAC,CAACE,GAAG;;AAEzF;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,aAAa,GAAGA,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAgB,CAAC,KAAK;EACjE,MAAMC,OAAO,GAAGjB,UAAU,CAACO,oBAAoB,CAAC;EAChD,MAAMW,QAAQ,GAAGhB,MAAM,CAAO,IAAI,CAAC;;EAEnC;EACA;EACA,MAAMiB,OAAO,GAAGF,OAAO,EAAEG,OAAO,IAAIF,QAAQ;EAE5CjB,SAAS,CAAC,MAAM,MAAMgB,OAAO,EAAEI,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAACJ,OAAO,CAAC,CAAC;EAElE,MAAMK,YAAY,GAAIC,KAAwB,IAAK;IACjD,IAAIN,OAAO,EAAE;MACX,MAAMR,WAAW,GAAGL,aAAa,CAACe,OAAO,CAACK,OAAO,CAAC;MAClD,MAAMd,cAAc,GAAGN,aAAa,CAACa,OAAO,CAACQ,UAAU,CAACD,OAAO,CAAC;MAEhE,MAAMZ,MAAM,GACVH,WAAW,IAAIC,cAAc,GACzBF,wBAAwB,CAACC,WAAW,EAAEC,cAAc,CAAC,GACrDa,KAAK,CAACG,WAAW,CAACC,MAAM,CAACC,MAAM;MAErCX,OAAO,CAACI,oBAAoB,CAACT,MAAM,CAAC;IACtC;IAEAG,QAAQ,GAAGQ,KAAK,CAAC;EACnB,CAAC;EAED,oBAAOjB,IAAA,CAACH,IAAI;IAAA,GAAKa,IAAI;IAAEa,GAAG,EAAEV,OAAQ;IAACJ,QAAQ,EAAEO;EAAa,CAAE,CAAC;AACjE,CAAC","ignoreList":[]}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ import { TrueSheet } from './TrueSheet';
4
+ /**
5
+ * Provider for TrueSheet on native platforms.
6
+ * This is a pass-through component - no context is needed on native
7
+ * since TrueSheet uses static instance methods internally.
8
+ */
9
+ export function TrueSheetProvider({
10
+ children
11
+ }) {
12
+ return children;
13
+ }
14
+
15
+ /**
16
+ * Hook to control TrueSheet instances by name.
17
+ * On native, this maps directly to TrueSheet static methods.
18
+ */
19
+ export function useTrueSheet() {
20
+ return {
21
+ present: TrueSheet.present,
22
+ dismiss: TrueSheet.dismiss,
23
+ dismissStack: TrueSheet.dismissStack,
24
+ resize: TrueSheet.resize,
25
+ dismissAll: TrueSheet.dismissAll
26
+ };
27
+ }
28
+ //# sourceMappingURL=TrueSheetProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TrueSheet","TrueSheetProvider","children","useTrueSheet","present","dismiss","dismissStack","resize","dismissAll"],"sourceRoot":"../../src","sources":["TrueSheetProvider.tsx"],"mappings":";;AAEA,SAASA,SAAS,QAAQ,aAAa;AASvC;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,iBAAiBA,CAAC;EAAEC;AAAiC,CAAC,EAAE;EACtE,OAAOA,QAAQ;AACjB;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASC,YAAYA,CAAA,EAA2B;EACrD,OAAO;IACLC,OAAO,EAAEJ,SAAS,CAACI,OAAO;IAC1BC,OAAO,EAAEL,SAAS,CAACK,OAAO;IAC1BC,YAAY,EAAEN,SAAS,CAACM,YAAY;IACpCC,MAAM,EAAEP,SAAS,CAACO,MAAM;IACxBC,UAAU,EAAER,SAAS,CAACQ;EACxB,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,157 @@
1
+ "use strict";
2
+
3
+ import { createContext, useCallback, useContext, useEffect, useLayoutEffect, useMemo, useRef, useSyncExternalStore } from 'react';
4
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
+ const SheetContext = /*#__PURE__*/createContext(null);
6
+ const NO_PROVIDER_ERROR = 'TrueSheet: useTrueSheet() requires a <TrueSheetProvider> ancestor on web.';
7
+ const EMPTY_STACK = Object.freeze([]);
8
+ export function TrueSheetProvider({
9
+ children
10
+ }) {
11
+ const namedSheetsRef = useRef(new Map());
12
+ const stackRef = useRef(EMPTY_STACK);
13
+ const listenersRef = useRef(new Set());
14
+
15
+ // Stable portal container created once. Attached to an anchor div rendered
16
+ // in this provider's tree so the sheets unmount cleanly with the provider
17
+ // (e.g., when a screen-scoped provider unmounts on navigation).
18
+ const portalContainer = useMemo(() => typeof document !== 'undefined' ? document.createElement('div') : null, []);
19
+ const anchorRef = useRef(null);
20
+ useLayoutEffect(() => {
21
+ const anchor = anchorRef.current;
22
+ if (!anchor || !portalContainer) return;
23
+ anchor.appendChild(portalContainer);
24
+ return () => {
25
+ if (portalContainer.parentNode) {
26
+ portalContainer.parentNode.removeChild(portalContainer);
27
+ }
28
+ };
29
+ }, [portalContainer]);
30
+ const value = useMemo(() => {
31
+ const notify = () => listenersRef.current.forEach(listener => listener());
32
+ return {
33
+ registerByName: (name, ref) => {
34
+ namedSheetsRef.current.set(name, ref);
35
+ return () => {
36
+ if (namedSheetsRef.current.get(name) === ref) {
37
+ namedSheetsRef.current.delete(name);
38
+ }
39
+ };
40
+ },
41
+ resolveByName: name => {
42
+ const ref = namedSheetsRef.current.get(name);
43
+ const methods = ref?.current;
44
+ if (!methods) {
45
+ throw new Error(`TrueSheet: no sheet registered with name "${name}"`);
46
+ }
47
+ return methods;
48
+ },
49
+ pushOpen: entry => {
50
+ if (stackRef.current.some(e => e.ref === entry.ref)) return;
51
+ stackRef.current = [...stackRef.current, entry];
52
+ notify();
53
+ },
54
+ popOpen: entry => {
55
+ const idx = stackRef.current.findIndex(e => e.ref === entry.ref);
56
+ if (idx < 0) return;
57
+ stackRef.current = [...stackRef.current.slice(0, idx), ...stackRef.current.slice(idx + 1)];
58
+ notify();
59
+ },
60
+ subscribeStack: listener => {
61
+ listenersRef.current.add(listener);
62
+ return () => {
63
+ listenersRef.current.delete(listener);
64
+ };
65
+ },
66
+ getStackSnapshot: () => stackRef.current,
67
+ portalContainer
68
+ };
69
+ }, [portalContainer]);
70
+ return /*#__PURE__*/_jsxs(SheetContext.Provider, {
71
+ value: value,
72
+ children: [children, /*#__PURE__*/_jsx("div", {
73
+ ref: anchorRef
74
+ })]
75
+ });
76
+ }
77
+ export function usePortalContainer() {
78
+ const ctx = useContext(SheetContext);
79
+ return ctx?.portalContainer ?? null;
80
+ }
81
+ export function useTrueSheet() {
82
+ const ctx = useContext(SheetContext);
83
+ return useMemo(() => {
84
+ if (!ctx) {
85
+ const reject = async () => {
86
+ throw new Error(NO_PROVIDER_ERROR);
87
+ };
88
+ return {
89
+ present: reject,
90
+ resize: reject,
91
+ dismiss: reject,
92
+ dismissStack: reject,
93
+ dismissAll: reject
94
+ };
95
+ }
96
+ return {
97
+ present: (name, index, animated) => ctx.resolveByName(name).present(index, animated),
98
+ resize: (name, index) => ctx.resolveByName(name).resize(index),
99
+ dismiss: (name, animated) => ctx.resolveByName(name).dismiss(animated),
100
+ dismissStack: (name, animated) => ctx.resolveByName(name).dismissStack(animated),
101
+ dismissAll: async animated => {
102
+ const stack = ctx.getStackSnapshot();
103
+ await Promise.all([...stack].reverse().map(entry => entry.ref.current?.dismiss(animated)));
104
+ }
105
+ };
106
+ }, [ctx]);
107
+ }
108
+ export function useRegisterSheet(name, ref) {
109
+ const ctx = useContext(SheetContext);
110
+ useEffect(() => {
111
+ if (!ctx || !name) return;
112
+ return ctx.registerByName(name, ref);
113
+ }, [ctx, name, ref]);
114
+ }
115
+
116
+ /**
117
+ * Registers the sheet in the open stack while `isOpen` is true and returns
118
+ * live data used by each sheet to render stacked visuals and dismiss children.
119
+ */
120
+ export function useSheetStack(ref, nodeRef, isOpen, isFormSheet) {
121
+ const ctx = useContext(SheetContext);
122
+ const isFormSheetRef = useRef(isFormSheet);
123
+ isFormSheetRef.current = isFormSheet;
124
+ const entry = useMemo(() => ({
125
+ ref,
126
+ nodeRef,
127
+ isFormSheetRef
128
+ }), [ref, nodeRef]);
129
+ useEffect(() => {
130
+ if (!ctx || !isOpen) return;
131
+ ctx.pushOpen(entry);
132
+ return () => ctx.popOpen(entry);
133
+ }, [ctx, entry, isOpen]);
134
+ const subscribe = useCallback(listener => {
135
+ if (!ctx) return () => {};
136
+ return ctx.subscribeStack(listener);
137
+ }, [ctx]);
138
+ const getSnapshot = useCallback(() => ctx ? ctx.getStackSnapshot() : EMPTY_STACK, [ctx]);
139
+ const stack = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
140
+ const stackIndex = stack.findIndex(e => e.ref === ref);
141
+ const isNested = stackIndex > 0;
142
+ const descendants = useMemo(() => stackIndex < 0 ? EMPTY_STACK : stack.slice(stackIndex + 1), [stack, stackIndex]);
143
+ const dismissAbove = useCallback(async animated => {
144
+ if (!ctx) return;
145
+ const snapshot = ctx.getStackSnapshot();
146
+ const idx = snapshot.findIndex(e => e.ref === ref);
147
+ if (idx < 0) return;
148
+ const above = snapshot.slice(idx + 1);
149
+ await Promise.all([...above].reverse().map(e => e.ref.current?.dismiss(animated)));
150
+ }, [ctx, ref]);
151
+ return {
152
+ descendants,
153
+ isNested,
154
+ dismissAbove
155
+ };
156
+ }
157
+ //# sourceMappingURL=TrueSheetProvider.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","useCallback","useContext","useEffect","useLayoutEffect","useMemo","useRef","useSyncExternalStore","jsx","_jsx","jsxs","_jsxs","SheetContext","NO_PROVIDER_ERROR","EMPTY_STACK","Object","freeze","TrueSheetProvider","children","namedSheetsRef","Map","stackRef","listenersRef","Set","portalContainer","document","createElement","anchorRef","anchor","current","appendChild","parentNode","removeChild","value","notify","forEach","listener","registerByName","name","ref","set","get","delete","resolveByName","methods","Error","pushOpen","entry","some","e","popOpen","idx","findIndex","slice","subscribeStack","add","getStackSnapshot","Provider","usePortalContainer","ctx","useTrueSheet","reject","present","resize","dismiss","dismissStack","dismissAll","index","animated","stack","Promise","all","reverse","map","useRegisterSheet","useSheetStack","nodeRef","isOpen","isFormSheet","isFormSheetRef","subscribe","getSnapshot","stackIndex","isNested","descendants","dismissAbove","snapshot","above"],"sourceRoot":"../../src","sources":["TrueSheetProvider.web.tsx"],"mappings":"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","ignoreList":[]}
@@ -5,4 +5,4 @@ export interface NativeProps extends ViewProps {
5
5
  // No props needed - container accesses props from parent TrueSheetView
6
6
  }
7
7
 
8
- export default codegenNativeComponent<NativeProps>('TrueSheetContainerView', {});
8
+ export default codegenNativeComponent<NativeProps>('TrueSheetContainerView');
@@ -5,4 +5,8 @@ export interface NativeProps extends ViewProps {
5
5
  // No props needed - size will be controlled by parent
6
6
  }
7
7
 
8
- export default codegenNativeComponent<NativeProps>('TrueSheetContentView', {});
8
+ // interfaceOnly: shadow node/state/descriptor are custom (common/cpp) so the
9
+ // content can be bounded to the container when a ScrollView is pinned
10
+ export default codegenNativeComponent<NativeProps>('TrueSheetContentView', {
11
+ interfaceOnly: true,
12
+ });
@@ -1,8 +1,16 @@
1
1
  import type { ViewProps } from 'react-native';
2
+ import type { WithDefault } from 'react-native/Libraries/Types/CodegenTypes';
2
3
  import { codegenNativeComponent } from 'react-native';
3
4
 
4
5
  export interface NativeProps extends ViewProps {
5
- // Footer-specific props can be added here if needed
6
+ // Seeds the footer's first layout with the sheet's bottom safe-area inset
7
+ // (insetAdjustment: 'automatic') so a late-set footer doesn't need a second
8
+ // layout pass — and a visible sheet resize — once native pushes the inset
9
+ autoBottomInset?: WithDefault<boolean, false>;
6
10
  }
7
11
 
8
- export default codegenNativeComponent<NativeProps>('TrueSheetFooterView', {});
12
+ // interfaceOnly: shadow node/state/descriptor are custom (common/cpp) so the
13
+ // footer can absorb the sheet's bottom safe-area inset as padding
14
+ export default codegenNativeComponent<NativeProps>('TrueSheetFooterView', {
15
+ interfaceOnly: true,
16
+ });
@@ -0,0 +1,8 @@
1
+ import type { ViewProps } from 'react-native';
2
+ import { codegenNativeComponent } from 'react-native';
3
+
4
+ export interface NativeProps extends ViewProps {
5
+ // Header-specific props can be added here if needed
6
+ }
7
+
8
+ export default codegenNativeComponent<NativeProps>('TrueSheetHeaderView', {});
@@ -0,0 +1,8 @@
1
+ import type { ViewProps } from 'react-native';
2
+ import { codegenNativeComponent } from 'react-native';
3
+
4
+ export interface NativeProps extends ViewProps {
5
+ // Peek-specific props can be added here if needed
6
+ }
7
+
8
+ export default codegenNativeComponent<NativeProps>('TrueSheetPeekView', {});
@@ -1,50 +1,131 @@
1
- import type { ViewProps } from 'react-native';
1
+ import type { ColorValue, ProcessedColorValue, ViewProps } from 'react-native';
2
2
  import type {
3
3
  DirectEventHandler,
4
4
  Double,
5
5
  Int32,
6
6
  WithDefault,
7
- Float,
8
7
  } from 'react-native/Libraries/Types/CodegenTypes';
9
8
  import { codegenNativeComponent } from 'react-native';
10
9
 
10
+ type GrabberOptionsType = Readonly<{
11
+ width?: Double;
12
+ height?: Double;
13
+ topMargin?: Double;
14
+ cornerRadius?: WithDefault<Double, -1>;
15
+ color?: ProcessedColorValue | null;
16
+ adaptive?: WithDefault<boolean, true>;
17
+ }>;
18
+
19
+ type AccessibilityOptionsType = Readonly<{
20
+ grabberLabel?: WithDefault<string, 'Sheet Grabber'>;
21
+ grabberHint?: WithDefault<string, 'Double-tap to expand. Swipe up or down to resize the sheet'>;
22
+ expandedValue?: WithDefault<string, 'Expanded'>;
23
+ collapsedValue?: WithDefault<string, 'Collapsed'>;
24
+ detentValue?: WithDefault<string, 'Detent {index} of {count}'>;
25
+ expandActionLabel?: WithDefault<string, 'Expand'>;
26
+ collapseActionLabel?: WithDefault<string, 'Collapse'>;
27
+ paneTitle?: WithDefault<string, 'Bottom sheet'>;
28
+ }>;
29
+
30
+ type BlurOptionsType = Readonly<{
31
+ intensity?: WithDefault<Double, -1>;
32
+ interaction?: WithDefault<boolean, true>;
33
+ }>;
34
+
35
+ type ScrollEdgeEffect = 'automatic' | 'hard' | 'soft' | 'hidden';
36
+
37
+ type ScrollableOptionsType = Readonly<{
38
+ keyboardScrollOffset?: WithDefault<Double, 0>;
39
+ scrollingExpandsSheet?: WithDefault<boolean, true>;
40
+ topScrollEdgeEffect?: WithDefault<ScrollEdgeEffect, 'hidden'>;
41
+ bottomScrollEdgeEffect?: WithDefault<ScrollEdgeEffect, 'hidden'>;
42
+ }>;
43
+
44
+ type FooterOptionsType = Readonly<{
45
+ // Named uniquely across option structs — codegen derives the enum name from
46
+ // the field name, so a second `position` would redefine TrueSheetViewPosition
47
+ footerPosition?: WithDefault<'relative' | 'absolute', 'relative'>;
48
+ keyboardOffset?: WithDefault<Double, 0>;
49
+ }>;
50
+
51
+ type HeaderOptionsType = Readonly<{
52
+ position?: WithDefault<'relative' | 'absolute', 'relative'>;
53
+ }>;
54
+
11
55
  export interface DetentInfoEventPayload {
12
56
  index: Int32;
13
57
  position: Double;
58
+ detent: Double;
14
59
  }
15
60
 
16
61
  export interface PositionChangeEventPayload {
17
- index: Int32;
62
+ index: Double;
18
63
  position: Double;
19
- transitioning: boolean;
20
- }
21
-
22
- export interface SizeChangeEventPayload {
23
- width: Double;
24
- height: Double;
64
+ detent: Double;
65
+ realtime: boolean;
25
66
  }
26
67
 
27
68
  export interface NativeProps extends ViewProps {
28
69
  // Array properties
29
- detents?: ReadonlyArray<Float>;
70
+ detents?: ReadonlyArray<Double>;
30
71
 
31
72
  // Number properties - use 0 as default to avoid nil insertion
32
- maxHeight?: WithDefault<Double, 0>;
33
- background?: WithDefault<Int32, 0>;
73
+ maxContentHeight?: WithDefault<Double, 0>;
74
+ maxContentWidth?: WithDefault<Double, 0>;
34
75
  cornerRadius?: WithDefault<Double, -1>;
76
+ elevation?: WithDefault<Double, -1>;
77
+
78
+ // Color properties
79
+ backgroundColor?: ColorValue;
35
80
  initialDetentIndex?: WithDefault<Int32, -1>;
36
- dimmedIndex?: WithDefault<Int32, 0>;
81
+ dimmedDetentIndex?: WithDefault<Int32, 0>;
37
82
 
38
83
  // String properties - use empty string as default to avoid nil insertion
39
- blurTint?: WithDefault<string, ''>;
40
- keyboardMode?: WithDefault<'resize' | 'pan', 'resize'>;
84
+ backgroundBlur?: WithDefault<
85
+ | 'none'
86
+ | 'light'
87
+ | 'dark'
88
+ | 'default'
89
+ | 'extra-light'
90
+ | 'regular'
91
+ | 'prominent'
92
+ | 'system-ultra-thin-material'
93
+ | 'system-thin-material'
94
+ | 'system-material'
95
+ | 'system-thick-material'
96
+ | 'system-chrome-material'
97
+ | 'system-ultra-thin-material-light'
98
+ | 'system-thin-material-light'
99
+ | 'system-material-light'
100
+ | 'system-thick-material-light'
101
+ | 'system-chrome-material-light'
102
+ | 'system-ultra-thin-material-dark'
103
+ | 'system-thin-material-dark'
104
+ | 'system-material-dark'
105
+ | 'system-thick-material-dark'
106
+ | 'system-chrome-material-dark',
107
+ 'none'
108
+ >;
109
+
110
+ anchor?: WithDefault<'left' | 'center' | 'right', 'center'>;
111
+ anchorOffset?: WithDefault<Double, 16>;
112
+ insetAdjustment?: WithDefault<'automatic' | 'never', 'automatic'>;
113
+
114
+ // Blur options
115
+ blurOptions?: BlurOptionsType;
41
116
 
42
117
  // Boolean properties - match defaults from TrueSheet.types.ts
43
118
  grabber?: WithDefault<boolean, true>;
119
+ grabberOptions?: GrabberOptionsType;
120
+ accessibilityOptions?: AccessibilityOptionsType;
44
121
  dismissible?: WithDefault<boolean, true>;
122
+ draggable?: WithDefault<boolean, true>;
45
123
  dimmed?: WithDefault<boolean, true>;
46
124
  initialDetentAnimated?: WithDefault<boolean, true>;
47
- edgeToEdgeFullScreen?: WithDefault<boolean, false>;
125
+ scrollableOptions?: ScrollableOptionsType;
126
+ headerOptions?: HeaderOptionsType;
127
+ footerOptions?: FooterOptionsType;
128
+ presentation?: WithDefault<'page' | 'form', 'page'>;
48
129
 
49
130
  // Event handlers
50
131
  onMount?: DirectEventHandler<null>;
@@ -57,7 +138,13 @@ export interface NativeProps extends ViewProps {
57
138
  onDragChange?: DirectEventHandler<DetentInfoEventPayload>;
58
139
  onDragEnd?: DirectEventHandler<DetentInfoEventPayload>;
59
140
  onPositionChange?: DirectEventHandler<PositionChangeEventPayload>;
60
- onSizeChange?: DirectEventHandler<SizeChangeEventPayload>;
141
+ onWillFocus?: DirectEventHandler<null>;
142
+ onDidFocus?: DirectEventHandler<null>;
143
+ onWillBlur?: DirectEventHandler<null>;
144
+ onDidBlur?: DirectEventHandler<null>;
145
+ onVisibilityChange?: DirectEventHandler<Readonly<{ visible: boolean }>>;
61
146
  }
62
147
 
63
- export default codegenNativeComponent<NativeProps>('TrueSheetView');
148
+ export default codegenNativeComponent<NativeProps>('TrueSheetView', {
149
+ interfaceOnly: true,
150
+ });
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
- export * from "./TrueSheet.js";
3
+ export * from './TrueSheet';
4
4
  export * from "./TrueSheet.types.js";
5
- export * from "./TrueSheetGrabber.js";
6
- export * from "./reanimated/index.js";
5
+ export { TrueSheetPeek } from './TrueSheetPeek';
6
+ export { TrueSheetProvider, useTrueSheet } from './TrueSheetProvider';
7
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,cAAc,gBAAa;AAC3B,cAAc,sBAAmB;AACjC,cAAc,uBAAoB;AAClC,cAAc,uBAAc","ignoreList":[]}
1
+ {"version":3,"names":["TrueSheetPeek","TrueSheetProvider","useTrueSheet"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,cAAc,aAAa;AAC3B,cAAc,sBAAmB;AACjC,SAASA,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,iBAAiB,EAAEC,YAAY,QAAQ,qBAAqB","ignoreList":[]}