react-native-gesture-handler 2.26.0 → 2.27.1

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 (415) hide show
  1. package/README.md +69 -0
  2. package/android/src/main/jni/CMakeLists.txt +7 -26
  3. package/lib/commonjs/components/Pressable/Pressable.js +139 -188
  4. package/lib/commonjs/components/Pressable/Pressable.js.map +1 -1
  5. package/lib/commonjs/components/Pressable/StateMachine.js +38 -0
  6. package/lib/commonjs/components/Pressable/StateMachine.js.map +1 -0
  7. package/lib/commonjs/components/Pressable/stateDefinitions.js +88 -0
  8. package/lib/commonjs/components/Pressable/stateDefinitions.js.map +1 -0
  9. package/lib/commonjs/components/Pressable/utils.js +1 -1
  10. package/lib/commonjs/components/Pressable/utils.js.map +1 -1
  11. package/lib/commonjs/handlers/gestures/forceTouchGesture.js +12 -0
  12. package/lib/commonjs/handlers/gestures/forceTouchGesture.js.map +1 -1
  13. package/lib/commonjs/handlers/gestures/gestureObjects.js +3 -1
  14. package/lib/commonjs/handlers/gestures/gestureObjects.js.map +1 -1
  15. package/lib/commonjs/web/detectors/RotationGestureDetector.js +3 -0
  16. package/lib/commonjs/web/detectors/RotationGestureDetector.js.map +1 -1
  17. package/lib/commonjs/web/handlers/FlingGestureHandler.js +3 -0
  18. package/lib/commonjs/web/handlers/FlingGestureHandler.js.map +1 -1
  19. package/lib/commonjs/web/handlers/GestureHandler.js +6 -6
  20. package/lib/commonjs/web/handlers/GestureHandler.js.map +1 -1
  21. package/lib/commonjs/web/handlers/PanGestureHandler.js +24 -33
  22. package/lib/commonjs/web/handlers/PanGestureHandler.js.map +1 -1
  23. package/lib/commonjs/web/handlers/TapGestureHandler.js +15 -17
  24. package/lib/commonjs/web/handlers/TapGestureHandler.js.map +1 -1
  25. package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js +1 -1
  26. package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js.map +1 -1
  27. package/lib/commonjs/web/tools/PointerEventManager.js +1 -1
  28. package/lib/commonjs/web/tools/PointerEventManager.js.map +1 -1
  29. package/lib/commonjs/web/tools/PointerTracker.js +12 -11
  30. package/lib/commonjs/web/tools/PointerTracker.js.map +1 -1
  31. package/lib/commonjs/web/tools/Vector.js +1 -1
  32. package/lib/commonjs/web/tools/Vector.js.map +1 -1
  33. package/lib/module/components/Pressable/Pressable.js +141 -190
  34. package/lib/module/components/Pressable/Pressable.js.map +1 -1
  35. package/lib/module/components/Pressable/StateMachine.js +34 -0
  36. package/lib/module/components/Pressable/StateMachine.js.map +1 -0
  37. package/lib/module/components/Pressable/stateDefinitions.js +83 -0
  38. package/lib/module/components/Pressable/stateDefinitions.js.map +1 -0
  39. package/lib/module/components/Pressable/utils.js +1 -1
  40. package/lib/module/components/Pressable/utils.js.map +1 -1
  41. package/lib/module/handlers/gestures/forceTouchGesture.js +13 -0
  42. package/lib/module/handlers/gestures/forceTouchGesture.js.map +1 -1
  43. package/lib/module/handlers/gestures/gestureObjects.js +3 -1
  44. package/lib/module/handlers/gestures/gestureObjects.js.map +1 -1
  45. package/lib/module/web/detectors/RotationGestureDetector.js +3 -0
  46. package/lib/module/web/detectors/RotationGestureDetector.js.map +1 -1
  47. package/lib/module/web/handlers/FlingGestureHandler.js +3 -0
  48. package/lib/module/web/handlers/FlingGestureHandler.js.map +1 -1
  49. package/lib/module/web/handlers/GestureHandler.js +6 -6
  50. package/lib/module/web/handlers/GestureHandler.js.map +1 -1
  51. package/lib/module/web/handlers/PanGestureHandler.js +24 -33
  52. package/lib/module/web/handlers/PanGestureHandler.js.map +1 -1
  53. package/lib/module/web/handlers/TapGestureHandler.js +15 -17
  54. package/lib/module/web/handlers/TapGestureHandler.js.map +1 -1
  55. package/lib/module/web/tools/GestureHandlerOrchestrator.js +1 -1
  56. package/lib/module/web/tools/GestureHandlerOrchestrator.js.map +1 -1
  57. package/lib/module/web/tools/PointerEventManager.js +1 -1
  58. package/lib/module/web/tools/PointerEventManager.js.map +1 -1
  59. package/lib/module/web/tools/PointerTracker.js +12 -11
  60. package/lib/module/web/tools/PointerTracker.js.map +1 -1
  61. package/lib/module/web/tools/Vector.js +1 -1
  62. package/lib/module/web/tools/Vector.js.map +1 -1
  63. package/lib/typescript/ActionType.d.ts +0 -1
  64. package/lib/typescript/ActionType.js +6 -0
  65. package/lib/typescript/Directions.d.ts +0 -1
  66. package/lib/typescript/Directions.js +18 -0
  67. package/lib/typescript/EnableNewWebImplementation.d.ts +0 -1
  68. package/lib/typescript/EnableNewWebImplementation.js +30 -0
  69. package/lib/typescript/GestureHandlerRootViewContext.d.ts +0 -1
  70. package/lib/typescript/GestureHandlerRootViewContext.js +2 -0
  71. package/lib/typescript/PlatformConstants.d.ts +0 -1
  72. package/lib/typescript/PlatformConstants.js +3 -0
  73. package/lib/typescript/PlatformConstants.web.d.ts +0 -1
  74. package/lib/typescript/PlatformConstants.web.js +5 -0
  75. package/lib/typescript/PointerType.d.ts +0 -1
  76. package/lib/typescript/PointerType.js +8 -0
  77. package/lib/typescript/RNGestureHandlerModule.d.ts +0 -1
  78. package/lib/typescript/RNGestureHandlerModule.js +4 -0
  79. package/lib/typescript/RNGestureHandlerModule.web.d.ts +0 -1
  80. package/lib/typescript/RNGestureHandlerModule.web.js +92 -0
  81. package/lib/typescript/RNGestureHandlerModule.windows.d.ts +0 -1
  82. package/lib/typescript/RNGestureHandlerModule.windows.js +47 -0
  83. package/lib/typescript/RNRenderer.d.ts +0 -1
  84. package/lib/typescript/RNRenderer.js +3 -0
  85. package/lib/typescript/RNRenderer.web.d.ts +0 -1
  86. package/lib/typescript/RNRenderer.web.js +3 -0
  87. package/lib/typescript/State.d.ts +0 -1
  88. package/lib/typescript/State.js +9 -0
  89. package/lib/typescript/TouchEventType.d.ts +0 -1
  90. package/lib/typescript/TouchEventType.js +7 -0
  91. package/lib/typescript/components/DrawerLayout.d.ts +0 -1
  92. package/lib/typescript/components/DrawerLayout.js +417 -0
  93. package/lib/typescript/components/GestureButtons.d.ts +0 -1
  94. package/lib/typescript/components/GestureButtons.js +165 -0
  95. package/lib/typescript/components/GestureButtonsProps.d.ts +0 -1
  96. package/lib/typescript/components/GestureButtonsProps.js +1 -0
  97. package/lib/typescript/components/GestureComponents.d.ts +0 -1
  98. package/lib/typescript/components/GestureComponents.js +67 -0
  99. package/lib/typescript/components/GestureComponents.web.d.ts +0 -1
  100. package/lib/typescript/components/GestureComponents.web.js +21 -0
  101. package/lib/typescript/components/GestureHandlerButton.d.ts +0 -1
  102. package/lib/typescript/components/GestureHandlerButton.js +2 -0
  103. package/lib/typescript/components/GestureHandlerButton.web.d.ts +0 -1
  104. package/lib/typescript/components/GestureHandlerButton.web.js +3 -0
  105. package/lib/typescript/components/GestureHandlerRootView.android.d.ts +0 -1
  106. package/lib/typescript/components/GestureHandlerRootView.android.js +17 -0
  107. package/lib/typescript/components/GestureHandlerRootView.d.ts +0 -1
  108. package/lib/typescript/components/GestureHandlerRootView.js +16 -0
  109. package/lib/typescript/components/GestureHandlerRootView.web.d.ts +0 -1
  110. package/lib/typescript/components/GestureHandlerRootView.web.js +11 -0
  111. package/lib/typescript/components/Pressable/Pressable.d.ts +1 -3
  112. package/lib/typescript/components/Pressable/Pressable.d.ts.map +1 -1
  113. package/lib/typescript/components/Pressable/Pressable.js +231 -0
  114. package/lib/typescript/components/Pressable/PressableProps.d.ts +15 -2
  115. package/lib/typescript/components/Pressable/PressableProps.d.ts.map +1 -1
  116. package/lib/typescript/components/Pressable/PressableProps.js +1 -0
  117. package/lib/typescript/components/Pressable/StateMachine.d.ts +14 -0
  118. package/lib/typescript/components/Pressable/StateMachine.d.ts.map +1 -0
  119. package/lib/typescript/components/Pressable/StateMachine.js +34 -0
  120. package/lib/typescript/components/Pressable/index.d.ts +0 -1
  121. package/lib/typescript/components/Pressable/index.js +1 -0
  122. package/lib/typescript/components/Pressable/stateDefinitions.d.ts +9 -0
  123. package/lib/typescript/components/Pressable/stateDefinitions.d.ts.map +1 -0
  124. package/lib/typescript/components/Pressable/stateDefinitions.js +104 -0
  125. package/lib/typescript/components/Pressable/utils.d.ts +3 -7
  126. package/lib/typescript/components/Pressable/utils.d.ts.map +1 -1
  127. package/lib/typescript/components/Pressable/utils.js +80 -0
  128. package/lib/typescript/components/ReanimatedDrawerLayout.d.ts +0 -1
  129. package/lib/typescript/components/ReanimatedDrawerLayout.js +364 -0
  130. package/lib/typescript/components/ReanimatedSwipeable.d.ts +0 -1
  131. package/lib/typescript/components/ReanimatedSwipeable.js +400 -0
  132. package/lib/typescript/components/Swipeable.d.ts +0 -1
  133. package/lib/typescript/components/Swipeable.js +287 -0
  134. package/lib/typescript/components/Text.d.ts +0 -1
  135. package/lib/typescript/components/Text.js +38 -0
  136. package/lib/typescript/components/gestureHandlerRootHOC.d.ts +0 -1
  137. package/lib/typescript/components/gestureHandlerRootHOC.js +18 -0
  138. package/lib/typescript/components/touchables/ExtraButtonProps.d.ts +0 -1
  139. package/lib/typescript/components/touchables/ExtraButtonProps.js +1 -0
  140. package/lib/typescript/components/touchables/GenericTouchable.d.ts +0 -1
  141. package/lib/typescript/components/touchables/GenericTouchable.js +221 -0
  142. package/lib/typescript/components/touchables/GenericTouchableProps.d.ts +0 -1
  143. package/lib/typescript/components/touchables/GenericTouchableProps.js +1 -0
  144. package/lib/typescript/components/touchables/TouchableHighlight.d.ts +0 -1
  145. package/lib/typescript/components/touchables/TouchableHighlight.js +75 -0
  146. package/lib/typescript/components/touchables/TouchableNativeFeedback.android.d.ts +0 -1
  147. package/lib/typescript/components/touchables/TouchableNativeFeedback.android.js +65 -0
  148. package/lib/typescript/components/touchables/TouchableNativeFeedback.d.ts +0 -1
  149. package/lib/typescript/components/touchables/TouchableNativeFeedback.js +6 -0
  150. package/lib/typescript/components/touchables/TouchableNativeFeedbackProps.d.ts +0 -1
  151. package/lib/typescript/components/touchables/TouchableNativeFeedbackProps.js +1 -0
  152. package/lib/typescript/components/touchables/TouchableOpacity.d.ts +0 -1
  153. package/lib/typescript/components/touchables/TouchableOpacity.js +51 -0
  154. package/lib/typescript/components/touchables/TouchableWithoutFeedback.d.ts +0 -1
  155. package/lib/typescript/components/touchables/TouchableWithoutFeedback.js +10 -0
  156. package/lib/typescript/components/touchables/index.d.ts +0 -1
  157. package/lib/typescript/components/touchables/index.js +4 -0
  158. package/lib/typescript/components/utils.d.ts +0 -1
  159. package/lib/typescript/components/utils.js +11 -0
  160. package/lib/typescript/findNodeHandle.d.ts +0 -1
  161. package/lib/typescript/findNodeHandle.js +2 -0
  162. package/lib/typescript/findNodeHandle.web.d.ts +0 -1
  163. package/lib/typescript/findNodeHandle.web.js +31 -0
  164. package/lib/typescript/getShadowNodeFromRef.d.ts +0 -1
  165. package/lib/typescript/getShadowNodeFromRef.js +45 -0
  166. package/lib/typescript/getShadowNodeFromRef.web.d.ts +0 -1
  167. package/lib/typescript/getShadowNodeFromRef.web.js +7 -0
  168. package/lib/typescript/ghQueueMicrotask.d.ts +0 -1
  169. package/lib/typescript/ghQueueMicrotask.js +7 -0
  170. package/lib/typescript/handlers/FlingGestureHandler.d.ts +0 -1
  171. package/lib/typescript/handlers/FlingGestureHandler.js +19 -0
  172. package/lib/typescript/handlers/ForceTouchGestureHandler.d.ts +0 -1
  173. package/lib/typescript/handlers/ForceTouchGestureHandler.js +37 -0
  174. package/lib/typescript/handlers/GestureHandlerEventPayload.d.ts +3 -1
  175. package/lib/typescript/handlers/GestureHandlerEventPayload.d.ts.map +1 -1
  176. package/lib/typescript/handlers/GestureHandlerEventPayload.js +1 -0
  177. package/lib/typescript/handlers/LongPressGestureHandler.d.ts +0 -1
  178. package/lib/typescript/handlers/LongPressGestureHandler.js +22 -0
  179. package/lib/typescript/handlers/NativeViewGestureHandler.d.ts +0 -1
  180. package/lib/typescript/handlers/NativeViewGestureHandler.js +20 -0
  181. package/lib/typescript/handlers/PanGestureHandler.d.ts +0 -1
  182. package/lib/typescript/handlers/PanGestureHandler.js +128 -0
  183. package/lib/typescript/handlers/PinchGestureHandler.d.ts +0 -1
  184. package/lib/typescript/handlers/PinchGestureHandler.js +12 -0
  185. package/lib/typescript/handlers/PressabilityDebugView.d.ts +0 -1
  186. package/lib/typescript/handlers/PressabilityDebugView.js +2 -0
  187. package/lib/typescript/handlers/PressabilityDebugView.web.d.ts +0 -1
  188. package/lib/typescript/handlers/PressabilityDebugView.web.js +4 -0
  189. package/lib/typescript/handlers/RotationGestureHandler.d.ts +0 -1
  190. package/lib/typescript/handlers/RotationGestureHandler.js +12 -0
  191. package/lib/typescript/handlers/TapGestureHandler.d.ts +0 -1
  192. package/lib/typescript/handlers/TapGestureHandler.js +26 -0
  193. package/lib/typescript/handlers/createHandler.d.ts +0 -1
  194. package/lib/typescript/handlers/createHandler.js +375 -0
  195. package/lib/typescript/handlers/createNativeWrapper.d.ts +0 -1
  196. package/lib/typescript/handlers/createNativeWrapper.js +67 -0
  197. package/lib/typescript/handlers/customDirectEventTypes.d.ts +0 -1
  198. package/lib/typescript/handlers/customDirectEventTypes.js +2 -0
  199. package/lib/typescript/handlers/customDirectEventTypes.web.d.ts +0 -1
  200. package/lib/typescript/handlers/customDirectEventTypes.web.js +4 -0
  201. package/lib/typescript/handlers/gestureHandlerCommon.d.ts +0 -1
  202. package/lib/typescript/handlers/gestureHandlerCommon.js +42 -0
  203. package/lib/typescript/handlers/gestureHandlerTypesCompat.d.ts +9 -1
  204. package/lib/typescript/handlers/gestureHandlerTypesCompat.d.ts.map +1 -1
  205. package/lib/typescript/handlers/gestureHandlerTypesCompat.js +1 -0
  206. package/lib/typescript/handlers/gestures/GestureDetector/Wrap.d.ts +0 -1
  207. package/lib/typescript/handlers/gestures/GestureDetector/Wrap.js +22 -0
  208. package/lib/typescript/handlers/gestures/GestureDetector/Wrap.web.d.ts +0 -1
  209. package/lib/typescript/handlers/gestures/GestureDetector/Wrap.web.js +24 -0
  210. package/lib/typescript/handlers/gestures/GestureDetector/attachHandlers.d.ts +0 -1
  211. package/lib/typescript/handlers/gestures/GestureDetector/attachHandlers.js +55 -0
  212. package/lib/typescript/handlers/gestures/GestureDetector/dropHandlers.d.ts +0 -1
  213. package/lib/typescript/handlers/gestures/GestureDetector/dropHandlers.js +12 -0
  214. package/lib/typescript/handlers/gestures/GestureDetector/index.d.ts +0 -1
  215. package/lib/typescript/handlers/gestures/GestureDetector/index.js +114 -0
  216. package/lib/typescript/handlers/gestures/GestureDetector/needsToReattach.d.ts +0 -1
  217. package/lib/typescript/handlers/gestures/GestureDetector/needsToReattach.js +18 -0
  218. package/lib/typescript/handlers/gestures/GestureDetector/types.d.ts +0 -1
  219. package/lib/typescript/handlers/gestures/GestureDetector/types.js +1 -0
  220. package/lib/typescript/handlers/gestures/GestureDetector/updateHandlers.d.ts +0 -1
  221. package/lib/typescript/handlers/gestures/GestureDetector/updateHandlers.js +54 -0
  222. package/lib/typescript/handlers/gestures/GestureDetector/useAnimatedGesture.d.ts +0 -1
  223. package/lib/typescript/handlers/gestures/GestureDetector/useAnimatedGesture.js +137 -0
  224. package/lib/typescript/handlers/gestures/GestureDetector/useDetectorUpdater.d.ts +0 -1
  225. package/lib/typescript/handlers/gestures/GestureDetector/useDetectorUpdater.js +48 -0
  226. package/lib/typescript/handlers/gestures/GestureDetector/useMountReactions.d.ts +0 -1
  227. package/lib/typescript/handlers/gestures/GestureDetector/useMountReactions.js +35 -0
  228. package/lib/typescript/handlers/gestures/GestureDetector/useViewRefHandler.d.ts +0 -1
  229. package/lib/typescript/handlers/gestures/GestureDetector/useViewRefHandler.js +32 -0
  230. package/lib/typescript/handlers/gestures/GestureDetector/utils.d.ts +0 -1
  231. package/lib/typescript/handlers/gestures/GestureDetector/utils.js +140 -0
  232. package/lib/typescript/handlers/gestures/eventReceiver.d.ts +0 -1
  233. package/lib/typescript/handlers/gestures/eventReceiver.js +105 -0
  234. package/lib/typescript/handlers/gestures/flingGesture.d.ts +0 -1
  235. package/lib/typescript/handlers/gestures/flingGesture.js +27 -0
  236. package/lib/typescript/handlers/gestures/forceTouchGesture.d.ts +9 -1
  237. package/lib/typescript/handlers/gestures/forceTouchGesture.d.ts.map +1 -1
  238. package/lib/typescript/handlers/gestures/forceTouchGesture.js +57 -0
  239. package/lib/typescript/handlers/gestures/gesture.d.ts +0 -1
  240. package/lib/typescript/handlers/gestures/gesture.js +303 -0
  241. package/lib/typescript/handlers/gestures/gestureComposition.d.ts +0 -1
  242. package/lib/typescript/handlers/gestures/gestureComposition.js +78 -0
  243. package/lib/typescript/handlers/gestures/gestureObjects.d.ts +3 -2
  244. package/lib/typescript/handlers/gestures/gestureObjects.d.ts.map +1 -1
  245. package/lib/typescript/handlers/gestures/gestureObjects.js +125 -0
  246. package/lib/typescript/handlers/gestures/gestureStateManager.d.ts +0 -1
  247. package/lib/typescript/handlers/gestures/gestureStateManager.js +60 -0
  248. package/lib/typescript/handlers/gestures/gestureStateManager.web.d.ts +0 -1
  249. package/lib/typescript/handlers/gestures/gestureStateManager.web.js +19 -0
  250. package/lib/typescript/handlers/gestures/hoverGesture.d.ts +0 -1
  251. package/lib/typescript/handlers/gestures/hoverGesture.js +45 -0
  252. package/lib/typescript/handlers/gestures/longPressGesture.d.ts +0 -1
  253. package/lib/typescript/handlers/gestures/longPressGesture.js +35 -0
  254. package/lib/typescript/handlers/gestures/manualGesture.d.ts +0 -1
  255. package/lib/typescript/handlers/gestures/manualGesture.js +16 -0
  256. package/lib/typescript/handlers/gestures/nativeGesture.d.ts +0 -1
  257. package/lib/typescript/handlers/gestures/nativeGesture.js +24 -0
  258. package/lib/typescript/handlers/gestures/panGesture.d.ts +0 -1
  259. package/lib/typescript/handlers/gestures/panGesture.js +181 -0
  260. package/lib/typescript/handlers/gestures/pinchGesture.d.ts +0 -1
  261. package/lib/typescript/handlers/gestures/pinchGesture.js +27 -0
  262. package/lib/typescript/handlers/gestures/reanimatedWrapper.d.ts +0 -1
  263. package/lib/typescript/handlers/gestures/reanimatedWrapper.js +23 -0
  264. package/lib/typescript/handlers/gestures/rotationGesture.d.ts +0 -1
  265. package/lib/typescript/handlers/gestures/rotationGesture.js +27 -0
  266. package/lib/typescript/handlers/gestures/tapGesture.d.ts +0 -1
  267. package/lib/typescript/handlers/gestures/tapGesture.js +72 -0
  268. package/lib/typescript/handlers/getNextHandlerTag.d.ts +0 -1
  269. package/lib/typescript/handlers/getNextHandlerTag.js +4 -0
  270. package/lib/typescript/handlers/handlersRegistry.d.ts +0 -1
  271. package/lib/typescript/handlers/handlersRegistry.js +36 -0
  272. package/lib/typescript/handlers/utils.d.ts +0 -1
  273. package/lib/typescript/handlers/utils.js +58 -0
  274. package/lib/typescript/index.d.ts +0 -1
  275. package/lib/typescript/index.js +28 -0
  276. package/lib/typescript/init.d.ts +0 -1
  277. package/lib/typescript/init.js +15 -0
  278. package/lib/typescript/jestUtils/index.d.ts +0 -1
  279. package/lib/typescript/jestUtils/index.js +1 -0
  280. package/lib/typescript/jestUtils/jestUtils.d.ts +0 -1
  281. package/lib/typescript/jestUtils/jestUtils.js +290 -0
  282. package/lib/typescript/mocks.d.ts +0 -1
  283. package/lib/typescript/mocks.js +59 -0
  284. package/lib/typescript/mountRegistry.d.ts +0 -1
  285. package/lib/typescript/mountRegistry.js +29 -0
  286. package/lib/typescript/specs/NativeRNGestureHandlerModule.d.ts +0 -1
  287. package/lib/typescript/specs/NativeRNGestureHandlerModule.js +2 -0
  288. package/lib/typescript/specs/RNGestureHandlerButtonNativeComponent.d.ts +0 -1
  289. package/lib/typescript/specs/RNGestureHandlerButtonNativeComponent.js +2 -0
  290. package/lib/typescript/specs/RNGestureHandlerRootViewNativeComponent.d.ts +0 -1
  291. package/lib/typescript/specs/RNGestureHandlerRootViewNativeComponent.js +2 -0
  292. package/lib/typescript/typeUtils.d.ts +0 -1
  293. package/lib/typescript/typeUtils.js +1 -0
  294. package/lib/typescript/utils.d.ts +0 -1
  295. package/lib/typescript/utils.js +80 -0
  296. package/lib/typescript/web/Gestures.d.ts +0 -1
  297. package/lib/typescript/web/Gestures.js +38 -0
  298. package/lib/typescript/web/constants.d.ts +0 -1
  299. package/lib/typescript/web/constants.js +2 -0
  300. package/lib/typescript/web/detectors/RotationGestureDetector.d.ts +0 -1
  301. package/lib/typescript/web/detectors/RotationGestureDetector.d.ts.map +1 -1
  302. package/lib/typescript/web/detectors/RotationGestureDetector.js +122 -0
  303. package/lib/typescript/web/detectors/ScaleGestureDetector.d.ts +0 -1
  304. package/lib/typescript/web/detectors/ScaleGestureDetector.js +117 -0
  305. package/lib/typescript/web/handlers/FlingGestureHandler.d.ts +0 -1
  306. package/lib/typescript/web/handlers/FlingGestureHandler.d.ts.map +1 -1
  307. package/lib/typescript/web/handlers/FlingGestureHandler.js +133 -0
  308. package/lib/typescript/web/handlers/GestureHandler.d.ts +0 -1
  309. package/lib/typescript/web/handlers/GestureHandler.d.ts.map +1 -1
  310. package/lib/typescript/web/handlers/GestureHandler.js +656 -0
  311. package/lib/typescript/web/handlers/HoverGestureHandler.d.ts +0 -1
  312. package/lib/typescript/web/handlers/HoverGestureHandler.js +37 -0
  313. package/lib/typescript/web/handlers/IGestureHandler.d.ts +0 -1
  314. package/lib/typescript/web/handlers/IGestureHandler.js +1 -0
  315. package/lib/typescript/web/handlers/LongPressGestureHandler.d.ts +0 -1
  316. package/lib/typescript/web/handlers/LongPressGestureHandler.js +136 -0
  317. package/lib/typescript/web/handlers/ManualGestureHandler.d.ts +0 -1
  318. package/lib/typescript/web/handlers/ManualGestureHandler.js +29 -0
  319. package/lib/typescript/web/handlers/NativeViewGestureHandler.d.ts +0 -1
  320. package/lib/typescript/web/handlers/NativeViewGestureHandler.js +133 -0
  321. package/lib/typescript/web/handlers/PanGestureHandler.d.ts +2 -1
  322. package/lib/typescript/web/handlers/PanGestureHandler.d.ts.map +1 -1
  323. package/lib/typescript/web/handlers/PanGestureHandler.js +420 -0
  324. package/lib/typescript/web/handlers/PinchGestureHandler.d.ts +0 -1
  325. package/lib/typescript/web/handlers/PinchGestureHandler.js +117 -0
  326. package/lib/typescript/web/handlers/RotationGestureHandler.d.ts +0 -1
  327. package/lib/typescript/web/handlers/RotationGestureHandler.js +122 -0
  328. package/lib/typescript/web/handlers/TapGestureHandler.d.ts +1 -1
  329. package/lib/typescript/web/handlers/TapGestureHandler.d.ts.map +1 -1
  330. package/lib/typescript/web/handlers/TapGestureHandler.js +202 -0
  331. package/lib/typescript/web/interfaces.d.ts +0 -1
  332. package/lib/typescript/web/interfaces.js +25 -0
  333. package/lib/typescript/web/tools/CircularBuffer.d.ts +0 -1
  334. package/lib/typescript/web/tools/CircularBuffer.js +37 -0
  335. package/lib/typescript/web/tools/EventManager.d.ts +0 -1
  336. package/lib/typescript/web/tools/EventManager.js +85 -0
  337. package/lib/typescript/web/tools/GestureHandlerDelegate.d.ts +0 -1
  338. package/lib/typescript/web/tools/GestureHandlerDelegate.js +1 -0
  339. package/lib/typescript/web/tools/GestureHandlerOrchestrator.d.ts +0 -1
  340. package/lib/typescript/web/tools/GestureHandlerOrchestrator.d.ts.map +1 -1
  341. package/lib/typescript/web/tools/GestureHandlerOrchestrator.js +273 -0
  342. package/lib/typescript/web/tools/GestureHandlerWebDelegate.d.ts +0 -1
  343. package/lib/typescript/web/tools/GestureHandlerWebDelegate.js +169 -0
  344. package/lib/typescript/web/tools/InteractionManager.d.ts +0 -1
  345. package/lib/typescript/web/tools/InteractionManager.js +91 -0
  346. package/lib/typescript/web/tools/KeyboardEventManager.d.ts +0 -1
  347. package/lib/typescript/web/tools/KeyboardEventManager.js +73 -0
  348. package/lib/typescript/web/tools/LeastSquareSolver.d.ts +0 -1
  349. package/lib/typescript/web/tools/LeastSquareSolver.js +147 -0
  350. package/lib/typescript/web/tools/NodeManager.d.ts +0 -1
  351. package/lib/typescript/web/tools/NodeManager.js +28 -0
  352. package/lib/typescript/web/tools/PointerEventManager.d.ts +0 -1
  353. package/lib/typescript/web/tools/PointerEventManager.js +179 -0
  354. package/lib/typescript/web/tools/PointerTracker.d.ts +3 -4
  355. package/lib/typescript/web/tools/PointerTracker.d.ts.map +1 -1
  356. package/lib/typescript/web/tools/PointerTracker.js +161 -0
  357. package/lib/typescript/web/tools/Vector.d.ts +1 -2
  358. package/lib/typescript/web/tools/Vector.js +43 -0
  359. package/lib/typescript/web/tools/VelocityTracker.d.ts +0 -1
  360. package/lib/typescript/web/tools/VelocityTracker.js +76 -0
  361. package/lib/typescript/web/tools/WheelEventManager.d.ts +0 -1
  362. package/lib/typescript/web/tools/WheelEventManager.js +40 -0
  363. package/lib/typescript/web/utils.d.ts +0 -1
  364. package/lib/typescript/web/utils.js +233 -0
  365. package/lib/typescript/web_hammer/DiscreteGestureHandler.d.ts +0 -1
  366. package/lib/typescript/web_hammer/DiscreteGestureHandler.js +48 -0
  367. package/lib/typescript/web_hammer/DraggingGestureHandler.d.ts +0 -1
  368. package/lib/typescript/web_hammer/DraggingGestureHandler.js +25 -0
  369. package/lib/typescript/web_hammer/Errors.d.ts +0 -1
  370. package/lib/typescript/web_hammer/Errors.js +5 -0
  371. package/lib/typescript/web_hammer/FlingGestureHandler.d.ts +0 -1
  372. package/lib/typescript/web_hammer/FlingGestureHandler.js +119 -0
  373. package/lib/typescript/web_hammer/GestureHandler.d.ts +0 -1
  374. package/lib/typescript/web_hammer/GestureHandler.js +469 -0
  375. package/lib/typescript/web_hammer/IndiscreteGestureHandler.d.ts +0 -1
  376. package/lib/typescript/web_hammer/IndiscreteGestureHandler.js +26 -0
  377. package/lib/typescript/web_hammer/LongPressGestureHandler.d.ts +0 -1
  378. package/lib/typescript/web_hammer/LongPressGestureHandler.js +46 -0
  379. package/lib/typescript/web_hammer/NativeViewGestureHandler.d.ts +0 -1
  380. package/lib/typescript/web_hammer/NativeViewGestureHandler.js +40 -0
  381. package/lib/typescript/web_hammer/NodeManager.d.ts +0 -1
  382. package/lib/typescript/web_hammer/NodeManager.js +28 -0
  383. package/lib/typescript/web_hammer/PanGestureHandler.d.ts +0 -1
  384. package/lib/typescript/web_hammer/PanGestureHandler.js +151 -0
  385. package/lib/typescript/web_hammer/PinchGestureHandler.d.ts +0 -1
  386. package/lib/typescript/web_hammer/PinchGestureHandler.js +19 -0
  387. package/lib/typescript/web_hammer/PressGestureHandler.d.ts +0 -1
  388. package/lib/typescript/web_hammer/PressGestureHandler.js +133 -0
  389. package/lib/typescript/web_hammer/RotationGestureHandler.d.ts +0 -1
  390. package/lib/typescript/web_hammer/RotationGestureHandler.js +20 -0
  391. package/lib/typescript/web_hammer/TapGestureHandler.d.ts +0 -1
  392. package/lib/typescript/web_hammer/TapGestureHandler.js +142 -0
  393. package/lib/typescript/web_hammer/constants.d.ts +0 -1
  394. package/lib/typescript/web_hammer/constants.js +42 -0
  395. package/lib/typescript/web_hammer/utils.d.ts +0 -1
  396. package/lib/typescript/web_hammer/utils.js +15 -0
  397. package/package.json +4 -2
  398. package/src/components/Pressable/Pressable.tsx +357 -445
  399. package/src/components/Pressable/PressableProps.tsx +15 -0
  400. package/src/components/Pressable/StateMachine.tsx +49 -0
  401. package/src/components/Pressable/stateDefinitions.ts +125 -0
  402. package/src/components/Pressable/utils.ts +11 -7
  403. package/src/handlers/GestureHandlerEventPayload.ts +3 -0
  404. package/src/handlers/gestureHandlerTypesCompat.ts +9 -0
  405. package/src/handlers/gestures/forceTouchGesture.ts +9 -0
  406. package/src/handlers/gestures/gestureObjects.ts +3 -1
  407. package/src/web/detectors/RotationGestureDetector.ts +4 -0
  408. package/src/web/handlers/FlingGestureHandler.ts +4 -0
  409. package/src/web/handlers/GestureHandler.ts +9 -3
  410. package/src/web/handlers/PanGestureHandler.ts +25 -36
  411. package/src/web/handlers/TapGestureHandler.ts +14 -19
  412. package/src/web/tools/GestureHandlerOrchestrator.ts +1 -0
  413. package/src/web/tools/PointerEventManager.ts +1 -1
  414. package/src/web/tools/PointerTracker.ts +17 -15
  415. package/src/web/tools/Vector.ts +1 -1
@@ -1,29 +1,31 @@
1
1
  "use strict";
2
2
 
3
- import React, { forwardRef, useCallback, useMemo, useRef, useState } from 'react';
3
+ import React, { useCallback, useLayoutEffect, useMemo, useRef, useState } from 'react';
4
4
  import { GestureObjects as Gesture } from '../../handlers/gestures/gestureObjects';
5
5
  import { GestureDetector } from '../../handlers/gestures/GestureDetector';
6
6
  import { Platform, processColor } from 'react-native';
7
7
  import NativeButton from '../GestureHandlerButton';
8
- import { numberAsInset, gestureToPressableEvent, isTouchWithinInset, gestureTouchToPressableEvent, addInsets } from './utils';
8
+ import { gestureToPressableEvent, addInsets, numberAsInset, gestureTouchToPressableEvent, isTouchWithinInset } from './utils';
9
9
  import { PressabilityDebugView } from '../../handlers/PressabilityDebugView';
10
10
  import { INT32_MAX, isFabric, isTestEnv } from '../../utils';
11
11
  import { applyRelationProp } from '../utils';
12
+ import { getConfiguredStateMachine, StateMachineEvent } from './stateDefinitions';
12
13
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
14
  const DEFAULT_LONG_PRESS_DURATION = 500;
14
15
  const IS_TEST_ENV = isTestEnv();
15
16
  let IS_FABRIC = null;
16
- const Pressable = /*#__PURE__*/forwardRef((props, pressableRef) => {
17
+ const Pressable = props => {
17
18
  const {
19
+ ref,
18
20
  testOnly_pressed,
19
21
  hitSlop,
20
22
  pressRetentionOffset,
21
23
  delayHoverIn,
22
- onHoverIn,
23
24
  delayHoverOut,
24
- onHoverOut,
25
25
  delayLongPress,
26
26
  unstable_pressDelay,
27
+ onHoverIn,
28
+ onHoverOut,
27
29
  onPress,
28
30
  onPressIn,
29
31
  onPressOut,
@@ -37,6 +39,7 @@ const Pressable = /*#__PURE__*/forwardRef((props, pressableRef) => {
37
39
  simultaneousWithExternalGesture,
38
40
  requireExternalGestureToFail,
39
41
  blocksExternalGesture,
42
+ dimensionsAfterResize,
40
43
  ...remainingProps
41
44
  } = props;
42
45
  const relationProps = {
@@ -44,17 +47,105 @@ const Pressable = /*#__PURE__*/forwardRef((props, pressableRef) => {
44
47
  requireExternalGestureToFail,
45
48
  blocksExternalGesture
46
49
  };
47
- const [pressedState, setPressedState] = useState(testOnly_pressed ?? false);
48
50
 
49
- // Disabled when onLongPress has been called
50
- const isPressCallbackEnabled = useRef(true);
51
- const hasPassedBoundsChecks = useRef(false);
52
- const shouldPreventNativeEffects = useRef(false);
51
+ // used only if `ref` is undefined
52
+ const fallbackRef = useRef(null);
53
+ const [pressedState, setPressedState] = useState(testOnly_pressed ?? false);
54
+ const longPressTimeoutRef = useRef(null);
55
+ const pressDelayTimeoutRef = useRef(null);
56
+ const isOnPressAllowed = useRef(true);
57
+ const isCurrentlyPressed = useRef(false);
58
+ const dimensions = useRef({
59
+ width: 0,
60
+ height: 0
61
+ });
53
62
  const normalizedHitSlop = useMemo(() => typeof hitSlop === 'number' ? numberAsInset(hitSlop) : hitSlop ?? {}, [hitSlop]);
54
63
  const normalizedPressRetentionOffset = useMemo(() => typeof pressRetentionOffset === 'number' ? numberAsInset(pressRetentionOffset) : pressRetentionOffset ?? {}, [pressRetentionOffset]);
64
+ const appliedHitSlop = addInsets(normalizedHitSlop, normalizedPressRetentionOffset);
65
+ useLayoutEffect(() => {
66
+ if (dimensionsAfterResize) {
67
+ dimensions.current = dimensionsAfterResize;
68
+ } else {
69
+ requestAnimationFrame(() => {
70
+ (ref ?? fallbackRef).current?.measure((_x, _y, width, height) => {
71
+ dimensions.current = {
72
+ width,
73
+ height
74
+ };
75
+ });
76
+ });
77
+ }
78
+ }, [dimensionsAfterResize, ref]);
79
+ const cancelLongPress = useCallback(() => {
80
+ if (longPressTimeoutRef.current) {
81
+ clearTimeout(longPressTimeoutRef.current);
82
+ longPressTimeoutRef.current = null;
83
+ isOnPressAllowed.current = true;
84
+ }
85
+ }, []);
86
+ const cancelDelayedPress = useCallback(() => {
87
+ if (pressDelayTimeoutRef.current) {
88
+ clearTimeout(pressDelayTimeoutRef.current);
89
+ pressDelayTimeoutRef.current = null;
90
+ }
91
+ }, []);
92
+ const startLongPress = useCallback(event => {
93
+ if (onLongPress) {
94
+ cancelLongPress();
95
+ longPressTimeoutRef.current = setTimeout(() => {
96
+ isOnPressAllowed.current = false;
97
+ onLongPress(event);
98
+ }, delayLongPress ?? DEFAULT_LONG_PRESS_DURATION);
99
+ }
100
+ }, [onLongPress, cancelLongPress, delayLongPress]);
101
+ const innerHandlePressIn = useCallback(event => {
102
+ onPressIn?.(event);
103
+ startLongPress(event);
104
+ setPressedState(true);
105
+ if (pressDelayTimeoutRef.current) {
106
+ clearTimeout(pressDelayTimeoutRef.current);
107
+ pressDelayTimeoutRef.current = null;
108
+ }
109
+ }, [onPressIn, startLongPress]);
110
+ const handleFinalize = useCallback(() => {
111
+ isCurrentlyPressed.current = false;
112
+ cancelLongPress();
113
+ cancelDelayedPress();
114
+ setPressedState(false);
115
+ }, [cancelDelayedPress, cancelLongPress]);
116
+ const handlePressIn = useCallback(event => {
117
+ if (!isTouchWithinInset(dimensions.current, normalizedHitSlop, event.nativeEvent.changedTouches.at(-1))) {
118
+ // Ignoring pressIn within pressRetentionOffset
119
+ return;
120
+ }
121
+ isCurrentlyPressed.current = true;
122
+ if (unstable_pressDelay) {
123
+ pressDelayTimeoutRef.current = setTimeout(() => {
124
+ innerHandlePressIn(event);
125
+ }, unstable_pressDelay);
126
+ } else {
127
+ innerHandlePressIn(event);
128
+ }
129
+ }, [innerHandlePressIn, normalizedHitSlop, unstable_pressDelay]);
130
+ const handlePressOut = useCallback((event, success = true) => {
131
+ if (!isCurrentlyPressed.current) {
132
+ // Some prop configurations may lead to handlePressOut being called mutliple times.
133
+ return;
134
+ }
135
+ isCurrentlyPressed.current = false;
136
+ if (pressDelayTimeoutRef.current) {
137
+ innerHandlePressIn(event);
138
+ }
139
+ onPressOut?.(event);
140
+ if (isOnPressAllowed.current && success) {
141
+ onPress?.(event);
142
+ }
143
+ handleFinalize();
144
+ }, [handleFinalize, innerHandlePressIn, onPress, onPressOut]);
145
+ const stateMachine = useMemo(() => getConfiguredStateMachine(handlePressIn, handlePressOut), [handlePressIn, handlePressOut]);
55
146
  const hoverInTimeout = useRef(null);
56
147
  const hoverOutTimeout = useRef(null);
57
- const hoverGesture = useMemo(() => Gesture.Hover().manualActivation(true) // Stops Hover from blocking Native gesture activation on web
148
+ const hoverGesture = useMemo(() => Gesture.Hover().manualActivation(true) // Prevents Hover blocking Gesture.Native() on web
58
149
  .cancelsTouchesInView(false).onBegin(event => {
59
150
  if (hoverOutTimeout.current) {
60
151
  clearTimeout(hoverOutTimeout.current);
@@ -74,203 +165,63 @@ const Pressable = /*#__PURE__*/forwardRef((props, pressableRef) => {
74
165
  }
75
166
  onHoverOut?.(gestureToPressableEvent(event));
76
167
  }), [delayHoverIn, delayHoverOut, onHoverIn, onHoverOut]);
77
- const pressDelayTimeoutRef = useRef(null);
78
- const isTouchPropagationAllowed = useRef(false);
79
-
80
- // iOS only: due to varying flow of gestures, events sometimes have to be saved for later use
81
- const deferredEventPayload = useRef(null);
82
- const pressInHandler = useCallback(event => {
83
- if (handlingOnTouchesDown.current) {
84
- deferredEventPayload.current = event;
85
- }
86
- if (!isTouchPropagationAllowed.current) {
87
- return;
88
- }
89
- deferredEventPayload.current = null;
90
- onPressIn?.(event);
91
- isPressCallbackEnabled.current = true;
92
- pressDelayTimeoutRef.current = null;
93
- setPressedState(true);
94
- }, [onPressIn]);
95
- const pressOutHandler = useCallback(event => {
96
- if (!isTouchPropagationAllowed.current) {
97
- hasPassedBoundsChecks.current = false;
98
- isPressCallbackEnabled.current = true;
99
- deferredEventPayload.current = null;
100
- if (longPressTimeoutRef.current) {
101
- clearTimeout(longPressTimeoutRef.current);
102
- longPressTimeoutRef.current = null;
103
- }
104
- if (pressDelayTimeoutRef.current) {
105
- clearTimeout(pressDelayTimeoutRef.current);
106
- pressDelayTimeoutRef.current = null;
107
- }
108
- return;
109
- }
110
- if (!hasPassedBoundsChecks.current || event.nativeEvent.touches.length > event.nativeEvent.changedTouches.length) {
111
- return;
112
- }
113
- if (unstable_pressDelay && pressDelayTimeoutRef.current !== null) {
114
- // When delay is preemptively finished by lifting touches,
115
- // we want to immediately activate it's effects - pressInHandler,
116
- // even though we are located at the pressOutHandler
117
- clearTimeout(pressDelayTimeoutRef.current);
118
- pressInHandler(event);
119
- }
120
- if (deferredEventPayload.current) {
121
- onPressIn?.(deferredEventPayload.current);
122
- deferredEventPayload.current = null;
123
- }
124
- onPressOut?.(event);
125
- if (isPressCallbackEnabled.current) {
126
- onPress?.(event);
127
- }
128
- if (longPressTimeoutRef.current) {
129
- clearTimeout(longPressTimeoutRef.current);
130
- longPressTimeoutRef.current = null;
131
- }
132
- isTouchPropagationAllowed.current = false;
133
- hasPassedBoundsChecks.current = false;
134
- isPressCallbackEnabled.current = true;
135
- setPressedState(false);
136
- }, [onPress, onPressIn, onPressOut, pressInHandler, unstable_pressDelay]);
137
- const handlingOnTouchesDown = useRef(false);
138
- const onEndHandlingTouchesDown = useRef(null);
139
- const cancelledMidPress = useRef(false);
140
- const activateLongPress = useCallback(event => {
141
- if (!isTouchPropagationAllowed.current) {
142
- return;
143
- }
144
- if (hasPassedBoundsChecks.current && onLongPress) {
145
- onLongPress(gestureTouchToPressableEvent(event));
146
- isPressCallbackEnabled.current = false;
147
- }
148
- if (longPressTimeoutRef.current) {
149
- clearTimeout(longPressTimeoutRef.current);
150
- longPressTimeoutRef.current = null;
151
- }
152
- }, [onLongPress]);
153
- const longPressTimeoutRef = useRef(null);
154
- const longPressMinDuration = (delayLongPress ?? DEFAULT_LONG_PRESS_DURATION) + (unstable_pressDelay ?? 0);
155
- const innerPressableRef = useRef(null);
156
- const measureCallback = useCallback((width, height, event) => {
157
- if (!isTouchWithinInset({
158
- width,
159
- height
160
- }, normalizedHitSlop, event.changedTouches.at(-1)) || hasPassedBoundsChecks.current || cancelledMidPress.current) {
161
- cancelledMidPress.current = false;
162
- onEndHandlingTouchesDown.current = null;
163
- handlingOnTouchesDown.current = false;
164
- return;
165
- }
166
- hasPassedBoundsChecks.current = true;
167
-
168
- // In case of multiple touches, the first one starts long press gesture
169
- if (longPressTimeoutRef.current === null) {
170
- // Start long press gesture timer
171
- longPressTimeoutRef.current = setTimeout(() => activateLongPress(event), longPressMinDuration);
172
- }
173
- if (unstable_pressDelay) {
174
- pressDelayTimeoutRef.current = setTimeout(() => {
175
- pressInHandler(gestureTouchToPressableEvent(event));
176
- }, unstable_pressDelay);
177
- } else {
178
- pressInHandler(gestureTouchToPressableEvent(event));
179
- }
180
- onEndHandlingTouchesDown.current?.();
181
- onEndHandlingTouchesDown.current = null;
182
- handlingOnTouchesDown.current = false;
183
- }, [activateLongPress, longPressMinDuration, normalizedHitSlop, pressInHandler, unstable_pressDelay]);
184
- const pressAndTouchGesture = useMemo(() => Gesture.LongPress().minDuration(INT32_MAX) // Stops long press from blocking native gesture
185
- .maxDistance(INT32_MAX) // Stops long press from cancelling after set distance
168
+ const pressAndTouchGesture = useMemo(() => Gesture.LongPress().minDuration(INT32_MAX) // Stops long press from blocking Gesture.Native()
169
+ .maxDistance(INT32_MAX) // Stops long press from cancelling on touch move
186
170
  .cancelsTouchesInView(false).onTouchesDown(event => {
187
- handlingOnTouchesDown.current = true;
188
- if (pressableRef) {
189
- pressableRef.current?.measure((_x, _y, width, height) => {
190
- measureCallback(width, height, event);
191
- });
192
- } else {
193
- innerPressableRef.current?.measure((_x, _y, width, height) => {
194
- measureCallback(width, height, event);
195
- });
196
- }
197
- }).onTouchesUp(event => {
198
- if (handlingOnTouchesDown.current) {
199
- onEndHandlingTouchesDown.current = () => pressOutHandler(gestureTouchToPressableEvent(event));
200
- return;
171
+ const pressableEvent = gestureTouchToPressableEvent(event);
172
+ stateMachine.handleEvent(StateMachineEvent.LONG_PRESS_TOUCHES_DOWN, pressableEvent);
173
+ }).onTouchesUp(() => {
174
+ if (Platform.OS === 'android') {
175
+ // Prevents potential soft-locks
176
+ stateMachine.reset();
177
+ handleFinalize();
201
178
  }
202
- // On iOS, short taps will make LongPress gesture call onTouchesUp before Native gesture calls onStart
203
- // This variable ensures that onStart isn't detected as the first gesture since Pressable is pressed.
204
- if (deferredEventPayload.current !== null) {
205
- shouldPreventNativeEffects.current = true;
206
- }
207
- pressOutHandler(gestureTouchToPressableEvent(event));
208
179
  }).onTouchesCancelled(event => {
209
- isPressCallbackEnabled.current = false;
210
- if (handlingOnTouchesDown.current) {
211
- cancelledMidPress.current = true;
212
- onEndHandlingTouchesDown.current = () => pressOutHandler(gestureTouchToPressableEvent(event));
213
- return;
214
- }
215
- if (!hasPassedBoundsChecks.current || event.allTouches.length > event.changedTouches.length) {
216
- return;
180
+ const pressableEvent = gestureTouchToPressableEvent(event);
181
+ stateMachine.reset();
182
+ handlePressOut(pressableEvent, false);
183
+ }).onFinalize(() => {
184
+ if (Platform.OS === 'web') {
185
+ stateMachine.handleEvent(StateMachineEvent.FINALIZE);
186
+ handleFinalize();
217
187
  }
218
- pressOutHandler(gestureTouchToPressableEvent(event));
219
- }), [pressableRef, measureCallback, pressOutHandler]);
188
+ }), [stateMachine, handleFinalize, handlePressOut]);
220
189
 
221
190
  // RNButton is placed inside ButtonGesture to enable Android's ripple and to capture non-propagating events
222
- const buttonGesture = useMemo(() => Gesture.Native().onBegin(() => {
223
- // Android sets BEGAN state on press down
224
- if (Platform.OS === 'android' || Platform.OS === 'macos') {
225
- isTouchPropagationAllowed.current = true;
191
+ const buttonGesture = useMemo(() => Gesture.Native().onTouchesCancelled(event => {
192
+ if (Platform.OS !== 'macos' && Platform.OS !== 'web') {
193
+ // On MacOS cancel occurs in middle of gesture
194
+ // On Web cancel occurs on mouse move, which is unwanted
195
+ const pressableEvent = gestureTouchToPressableEvent(event);
196
+ stateMachine.reset();
197
+ handlePressOut(pressableEvent, false);
226
198
  }
199
+ }).onBegin(() => {
200
+ stateMachine.handleEvent(StateMachineEvent.NATIVE_BEGIN);
227
201
  }).onStart(() => {
228
- if (Platform.OS === 'web') {
229
- isTouchPropagationAllowed.current = true;
230
- }
231
-
232
- // iOS sets ACTIVE state on press down
233
- if (Platform.OS !== 'ios') {
234
- return;
202
+ if (Platform.OS !== 'android') {
203
+ // Gesture.Native().onStart() is broken with Android + hitSlop
204
+ stateMachine.handleEvent(StateMachineEvent.NATIVE_START);
235
205
  }
236
- if (deferredEventPayload.current) {
237
- isTouchPropagationAllowed.current = true;
238
- if (hasPassedBoundsChecks.current) {
239
- pressInHandler(deferredEventPayload.current);
240
- deferredEventPayload.current = null;
241
- } else {
242
- pressOutHandler(deferredEventPayload.current);
243
- isTouchPropagationAllowed.current = false;
244
- }
245
- return;
246
- }
247
- if (hasPassedBoundsChecks.current) {
248
- isTouchPropagationAllowed.current = true;
249
- return;
206
+ }).onFinalize(() => {
207
+ if (Platform.OS !== 'web') {
208
+ // On Web we use LongPress().onFinalize() instead of Native().onFinalize(),
209
+ // as Native cancels on mouse move, and LongPress does not.
210
+ stateMachine.handleEvent(StateMachineEvent.FINALIZE);
211
+ handleFinalize();
250
212
  }
251
- if (shouldPreventNativeEffects.current) {
252
- shouldPreventNativeEffects.current = false;
253
- if (!handlingOnTouchesDown.current) {
254
- return;
255
- }
256
- }
257
- isTouchPropagationAllowed.current = true;
258
- }), [pressInHandler, pressOutHandler]);
259
- const appliedHitSlop = addInsets(normalizedHitSlop, normalizedPressRetentionOffset);
213
+ }), [stateMachine, handlePressOut, handleFinalize]);
260
214
  const isPressableEnabled = disabled !== true;
261
215
  const gestures = [buttonGesture, pressAndTouchGesture, hoverGesture];
262
216
  for (const gesture of gestures) {
263
217
  gesture.enabled(isPressableEnabled);
264
218
  gesture.runOnJS(true);
265
219
  gesture.hitSlop(appliedHitSlop);
266
- gesture.shouldCancelWhenOutside(Platform.OS === 'web' ? false : true);
220
+ gesture.shouldCancelWhenOutside(Platform.OS !== 'web');
267
221
  Object.entries(relationProps).forEach(([relationName, relation]) => {
268
222
  applyRelationProp(gesture, relationName, relation);
269
223
  });
270
224
  }
271
-
272
- // Uses different hitSlop, to activate on hitSlop area instead of pressRetentionOffset area
273
- buttonGesture.hitSlop(normalizedHitSlop);
274
225
  const gesture = Gesture.Simultaneous(...gestures);
275
226
 
276
227
  // `cursor: 'pointer'` on `RNButton` crashes iOS
@@ -295,7 +246,7 @@ const Pressable = /*#__PURE__*/forwardRef((props, pressableRef) => {
295
246
  gesture: gesture,
296
247
  children: /*#__PURE__*/_jsxs(NativeButton, {
297
248
  ...remainingProps,
298
- ref: pressableRef ?? innerPressableRef,
249
+ ref: ref ?? fallbackRef,
299
250
  accessible: accessible !== false,
300
251
  hitSlop: appliedHitSlop,
301
252
  enabled: isPressableEnabled,
@@ -313,6 +264,6 @@ const Pressable = /*#__PURE__*/forwardRef((props, pressableRef) => {
313
264
  }) : null]
314
265
  })
315
266
  });
316
- });
267
+ };
317
268
  export default Pressable;
318
269
  //# sourceMappingURL=Pressable.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","forwardRef","useCallback","useMemo","useRef","useState","GestureObjects","Gesture","GestureDetector","Platform","processColor","NativeButton","numberAsInset","gestureToPressableEvent","isTouchWithinInset","gestureTouchToPressableEvent","addInsets","PressabilityDebugView","INT32_MAX","isFabric","isTestEnv","applyRelationProp","jsx","_jsx","jsxs","_jsxs","DEFAULT_LONG_PRESS_DURATION","IS_TEST_ENV","IS_FABRIC","Pressable","props","pressableRef","testOnly_pressed","hitSlop","pressRetentionOffset","delayHoverIn","onHoverIn","delayHoverOut","onHoverOut","delayLongPress","unstable_pressDelay","onPress","onPressIn","onPressOut","onLongPress","style","children","android_disableSound","android_ripple","disabled","accessible","simultaneousWithExternalGesture","requireExternalGestureToFail","blocksExternalGesture","remainingProps","relationProps","pressedState","setPressedState","isPressCallbackEnabled","hasPassedBoundsChecks","shouldPreventNativeEffects","normalizedHitSlop","normalizedPressRetentionOffset","hoverInTimeout","hoverOutTimeout","hoverGesture","Hover","manualActivation","cancelsTouchesInView","onBegin","event","current","clearTimeout","setTimeout","onFinalize","pressDelayTimeoutRef","isTouchPropagationAllowed","deferredEventPayload","pressInHandler","handlingOnTouchesDown","pressOutHandler","longPressTimeoutRef","nativeEvent","touches","length","changedTouches","onEndHandlingTouchesDown","cancelledMidPress","activateLongPress","longPressMinDuration","innerPressableRef","measureCallback","width","height","at","pressAndTouchGesture","LongPress","minDuration","maxDistance","onTouchesDown","measure","_x","_y","onTouchesUp","onTouchesCancelled","allTouches","buttonGesture","Native","OS","onStart","appliedHitSlop","isPressableEnabled","gestures","gesture","enabled","runOnJS","shouldCancelWhenOutside","Object","entries","forEach","relationName","relation","Simultaneous","pointerStyle","cursor","styleProp","pressed","childrenProp","rippleColor","defaultRippleColor","undefined","unprocessedRippleColor","color","ref","touchSoundDisabled","rippleRadius","radius","testOnly_onPress","testOnly_onPressIn","testOnly_onPressOut","testOnly_onLongPress","__DEV__"],"sourceRoot":"../../../../src","sources":["components/Pressable/Pressable.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useLayoutEffect","useMemo","useRef","useState","GestureObjects","Gesture","GestureDetector","Platform","processColor","NativeButton","gestureToPressableEvent","addInsets","numberAsInset","gestureTouchToPressableEvent","isTouchWithinInset","PressabilityDebugView","INT32_MAX","isFabric","isTestEnv","applyRelationProp","getConfiguredStateMachine","StateMachineEvent","jsx","_jsx","jsxs","_jsxs","DEFAULT_LONG_PRESS_DURATION","IS_TEST_ENV","IS_FABRIC","Pressable","props","ref","testOnly_pressed","hitSlop","pressRetentionOffset","delayHoverIn","delayHoverOut","delayLongPress","unstable_pressDelay","onHoverIn","onHoverOut","onPress","onPressIn","onPressOut","onLongPress","style","children","android_disableSound","android_ripple","disabled","accessible","simultaneousWithExternalGesture","requireExternalGestureToFail","blocksExternalGesture","dimensionsAfterResize","remainingProps","relationProps","fallbackRef","pressedState","setPressedState","longPressTimeoutRef","pressDelayTimeoutRef","isOnPressAllowed","isCurrentlyPressed","dimensions","width","height","normalizedHitSlop","normalizedPressRetentionOffset","appliedHitSlop","current","requestAnimationFrame","measure","_x","_y","cancelLongPress","clearTimeout","cancelDelayedPress","startLongPress","event","setTimeout","innerHandlePressIn","handleFinalize","handlePressIn","nativeEvent","changedTouches","at","handlePressOut","success","stateMachine","hoverInTimeout","hoverOutTimeout","hoverGesture","Hover","manualActivation","cancelsTouchesInView","onBegin","onFinalize","pressAndTouchGesture","LongPress","minDuration","maxDistance","onTouchesDown","pressableEvent","handleEvent","LONG_PRESS_TOUCHES_DOWN","onTouchesUp","OS","reset","onTouchesCancelled","FINALIZE","buttonGesture","Native","NATIVE_BEGIN","onStart","NATIVE_START","isPressableEnabled","gestures","gesture","enabled","runOnJS","shouldCancelWhenOutside","Object","entries","forEach","relationName","relation","Simultaneous","pointerStyle","cursor","styleProp","pressed","childrenProp","rippleColor","defaultRippleColor","undefined","unprocessedRippleColor","color","touchSoundDisabled","rippleRadius","radius","testOnly_onPress","testOnly_onPressIn","testOnly_onPressOut","testOnly_onLongPress","__DEV__"],"sourceRoot":"../../../../src","sources":["components/Pressable/Pressable.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ class PressableStateMachine {
4
+ constructor(steps) {
5
+ this.states = steps;
6
+ this.currentStepIndex = 0;
7
+ this.eventPayload = null;
8
+ }
9
+ reset() {
10
+ this.currentStepIndex = 0;
11
+ this.eventPayload = null;
12
+ }
13
+ handleEvent(eventName, eventPayload) {
14
+ const step = this.states[this.currentStepIndex];
15
+ this.eventPayload = eventPayload || this.eventPayload;
16
+ if (step.eventName !== eventName) {
17
+ if (this.currentStepIndex > 0) {
18
+ // retry with position at index 0
19
+ this.reset();
20
+ this.handleEvent(eventName, eventPayload);
21
+ }
22
+ return;
23
+ }
24
+ if (this.eventPayload && step.callback) {
25
+ step.callback(this.eventPayload);
26
+ }
27
+ this.currentStepIndex++;
28
+ if (this.currentStepIndex === this.states.length) {
29
+ this.reset();
30
+ }
31
+ }
32
+ }
33
+ export { PressableStateMachine };
34
+ //# sourceMappingURL=StateMachine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PressableStateMachine","constructor","steps","states","currentStepIndex","eventPayload","reset","handleEvent","eventName","step","callback","length"],"sourceRoot":"../../../../src","sources":["components/Pressable/StateMachine.tsx"],"mappings":";;AAOA,MAAMA,qBAAqB,CAAC;EAK1BC,WAAWA,CAACC,KAAwB,EAAE;IACpC,IAAI,CAACC,MAAM,GAAGD,KAAK;IACnB,IAAI,CAACE,gBAAgB,GAAG,CAAC;IACzB,IAAI,CAACC,YAAY,GAAG,IAAI;EAC1B;EAEOC,KAAKA,CAAA,EAAG;IACb,IAAI,CAACF,gBAAgB,GAAG,CAAC;IACzB,IAAI,CAACC,YAAY,GAAG,IAAI;EAC1B;EAEOE,WAAWA,CAACC,SAAiB,EAAEH,YAA6B,EAAE;IACnE,MAAMI,IAAI,GAAG,IAAI,CAACN,MAAM,CAAC,IAAI,CAACC,gBAAgB,CAAC;IAC/C,IAAI,CAACC,YAAY,GAAGA,YAAY,IAAI,IAAI,CAACA,YAAY;IAErD,IAAII,IAAI,CAACD,SAAS,KAAKA,SAAS,EAAE;MAChC,IAAI,IAAI,CAACJ,gBAAgB,GAAG,CAAC,EAAE;QAC7B;QACA,IAAI,CAACE,KAAK,CAAC,CAAC;QACZ,IAAI,CAACC,WAAW,CAACC,SAAS,EAAEH,YAAY,CAAC;MAC3C;MACA;IACF;IAEA,IAAI,IAAI,CAACA,YAAY,IAAII,IAAI,CAACC,QAAQ,EAAE;MACtCD,IAAI,CAACC,QAAQ,CAAC,IAAI,CAACL,YAAY,CAAC;IAClC;IAEA,IAAI,CAACD,gBAAgB,EAAE;IAEvB,IAAI,IAAI,CAACA,gBAAgB,KAAK,IAAI,CAACD,MAAM,CAACQ,MAAM,EAAE;MAChD,IAAI,CAACL,KAAK,CAAC,CAAC;IACd;EACF;AACF;AAEA,SAASN,qBAAqB","ignoreList":[]}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+
3
+ import { Platform } from 'react-native';
4
+ import { PressableStateMachine } from './StateMachine';
5
+ export let StateMachineEvent = /*#__PURE__*/function (StateMachineEvent) {
6
+ StateMachineEvent["NATIVE_BEGIN"] = "nativeBegin";
7
+ StateMachineEvent["NATIVE_START"] = "nativeStart";
8
+ StateMachineEvent["FINALIZE"] = "finalize";
9
+ StateMachineEvent["LONG_PRESS_TOUCHES_DOWN"] = "longPressTouchesDown";
10
+ return StateMachineEvent;
11
+ }({});
12
+ function getAndroidStateMachine(handlePressIn, handlePressOut) {
13
+ return new PressableStateMachine([{
14
+ eventName: StateMachineEvent.NATIVE_BEGIN
15
+ }, {
16
+ eventName: StateMachineEvent.LONG_PRESS_TOUCHES_DOWN,
17
+ callback: handlePressIn
18
+ }, {
19
+ eventName: StateMachineEvent.FINALIZE,
20
+ callback: handlePressOut
21
+ }]);
22
+ }
23
+ function getIosStateMachine(handlePressIn, handlePressOut) {
24
+ return new PressableStateMachine([{
25
+ eventName: StateMachineEvent.LONG_PRESS_TOUCHES_DOWN
26
+ }, {
27
+ eventName: StateMachineEvent.NATIVE_START,
28
+ callback: handlePressIn
29
+ }, {
30
+ eventName: StateMachineEvent.FINALIZE,
31
+ callback: handlePressOut
32
+ }]);
33
+ }
34
+ function getWebStateMachine(handlePressIn, handlePressOut) {
35
+ return new PressableStateMachine([{
36
+ eventName: StateMachineEvent.NATIVE_BEGIN
37
+ }, {
38
+ eventName: StateMachineEvent.NATIVE_START
39
+ }, {
40
+ eventName: StateMachineEvent.LONG_PRESS_TOUCHES_DOWN,
41
+ callback: handlePressIn
42
+ }, {
43
+ eventName: StateMachineEvent.FINALIZE,
44
+ callback: handlePressOut
45
+ }]);
46
+ }
47
+ function getMacosStateMachine(handlePressIn, handlePressOut) {
48
+ return new PressableStateMachine([{
49
+ eventName: StateMachineEvent.LONG_PRESS_TOUCHES_DOWN
50
+ }, {
51
+ eventName: StateMachineEvent.NATIVE_BEGIN,
52
+ callback: handlePressIn
53
+ }, {
54
+ eventName: StateMachineEvent.NATIVE_START
55
+ }, {
56
+ eventName: StateMachineEvent.FINALIZE,
57
+ callback: handlePressOut
58
+ }]);
59
+ }
60
+ function getUniversalStateMachine(handlePressIn, handlePressOut) {
61
+ return new PressableStateMachine([{
62
+ eventName: StateMachineEvent.FINALIZE,
63
+ callback: event => {
64
+ handlePressIn(event);
65
+ handlePressOut(event);
66
+ }
67
+ }]);
68
+ }
69
+ export function getConfiguredStateMachine(handlePressIn, handlePressOut) {
70
+ if (Platform.OS === 'android') {
71
+ return getAndroidStateMachine(handlePressIn, handlePressOut);
72
+ } else if (Platform.OS === 'ios') {
73
+ return getIosStateMachine(handlePressIn, handlePressOut);
74
+ } else if (Platform.OS === 'web') {
75
+ return getWebStateMachine(handlePressIn, handlePressOut);
76
+ } else if (Platform.OS === 'macos') {
77
+ return getMacosStateMachine(handlePressIn, handlePressOut);
78
+ } else {
79
+ // Unknown platform - using minimal universal setup.
80
+ return getUniversalStateMachine(handlePressIn, handlePressOut);
81
+ }
82
+ }
83
+ //# sourceMappingURL=stateDefinitions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","PressableStateMachine","StateMachineEvent","getAndroidStateMachine","handlePressIn","handlePressOut","eventName","NATIVE_BEGIN","LONG_PRESS_TOUCHES_DOWN","callback","FINALIZE","getIosStateMachine","NATIVE_START","getWebStateMachine","getMacosStateMachine","getUniversalStateMachine","event","getConfiguredStateMachine","OS"],"sourceRoot":"../../../../src","sources":["components/Pressable/stateDefinitions.ts"],"mappings":"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","ignoreList":[]}
@@ -36,7 +36,7 @@ const gestureToPressEvent = (event, timestamp, targetId) => ({
36
36
  // Always empty - legacy compatibility
37
37
  changedTouches: [] // Always empty - legacy compatibility
38
38
  });
39
- const isTouchWithinInset = (dimensions, inset, touch) => (touch?.x ?? 0) < (inset.right ?? 0) + dimensions.width && (touch?.y ?? 0) < (inset.bottom ?? 0) + dimensions.height && (touch?.x ?? 0) > -(inset.left ?? 0) && (touch?.y ?? 0) > -(inset.top ?? 0);
39
+ const isTouchWithinInset = (dimensions, inset, touch) => (touch?.locationX ?? 0) < (inset.right ?? 0) + dimensions.width && (touch?.locationY ?? 0) < (inset.bottom ?? 0) + dimensions.height && (touch?.locationX ?? 0) > -(inset.left ?? 0) && (touch?.locationY ?? 0) > -(inset.top ?? 0);
40
40
  const gestureToPressableEvent = event => {
41
41
  const timestamp = Date.now();
42
42
 
@@ -1 +1 @@
1
- {"version":3,"names":["numberAsInset","value","left","right","top","bottom","addInsets","a","b","touchDataToPressEvent","data","timestamp","targetId","identifier","id","locationX","x","locationY","y","pageX","absoluteX","pageY","absoluteY","target","touches","changedTouches","gestureToPressEvent","event","handlerTag","isTouchWithinInset","dimensions","inset","touch","width","height","gestureToPressableEvent","Date","now","pressEvent","nativeEvent","force","undefined","gestureTouchToPressableEvent","touchesList","allTouches","map","changedTouchesList","at"],"sourceRoot":"../../../../src","sources":["components/Pressable/utils.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["numberAsInset","value","left","right","top","bottom","addInsets","a","b","touchDataToPressEvent","data","timestamp","targetId","identifier","id","locationX","x","locationY","y","pageX","absoluteX","pageY","absoluteY","target","touches","changedTouches","gestureToPressEvent","event","handlerTag","isTouchWithinInset","dimensions","inset","touch","width","height","gestureToPressableEvent","Date","now","pressEvent","nativeEvent","force","undefined","gestureTouchToPressableEvent","touchesList","allTouches","map","changedTouchesList","at"],"sourceRoot":"../../../../src","sources":["components/Pressable/utils.ts"],"mappings":"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","ignoreList":[]}