react-native-gesture-handler 2.27.1 → 2.27.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 (394) hide show
  1. package/ReanimatedSwipeable/package.json +4 -4
  2. package/android/build.gradle +8 -1
  3. package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandler.kt +14 -8
  4. package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerOrchestrator.kt +10 -5
  5. package/apple/RNGestureHandler.h +4 -0
  6. package/apple/RNGestureHandler.mm +41 -6
  7. package/jestSetup.js +22 -3
  8. package/lib/commonjs/components/Pressable/Pressable.js +12 -21
  9. package/lib/commonjs/components/Pressable/Pressable.js.map +1 -1
  10. package/lib/commonjs/components/Pressable/StateMachine.js +8 -2
  11. package/lib/commonjs/components/Pressable/StateMachine.js.map +1 -1
  12. package/lib/commonjs/components/Pressable/stateDefinitions.js +22 -23
  13. package/lib/commonjs/components/Pressable/stateDefinitions.js.map +1 -1
  14. package/lib/commonjs/components/{ReanimatedSwipeable.js → ReanimatedSwipeable/ReanimatedSwipeable.js} +30 -39
  15. package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeable.js.map +1 -0
  16. package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js +12 -0
  17. package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js.map +1 -0
  18. package/lib/commonjs/components/ReanimatedSwipeable/index.js +21 -0
  19. package/lib/commonjs/components/ReanimatedSwipeable/index.js.map +1 -0
  20. package/lib/commonjs/mocks/Pressable.js +13 -0
  21. package/lib/commonjs/mocks/Pressable.js.map +1 -0
  22. package/lib/commonjs/{mocks.js → mocks/mocks.js} +8 -11
  23. package/lib/commonjs/mocks/mocks.js.map +1 -0
  24. package/lib/commonjs/web/handlers/GestureHandler.js +1 -0
  25. package/lib/commonjs/web/handlers/GestureHandler.js.map +1 -1
  26. package/lib/module/components/Pressable/Pressable.js +14 -23
  27. package/lib/module/components/Pressable/Pressable.js.map +1 -1
  28. package/lib/module/components/Pressable/StateMachine.js +8 -2
  29. package/lib/module/components/Pressable/StateMachine.js.map +1 -1
  30. package/lib/module/components/Pressable/stateDefinitions.js +21 -22
  31. package/lib/module/components/Pressable/stateDefinitions.js.map +1 -1
  32. package/lib/module/components/{ReanimatedSwipeable.js → ReanimatedSwipeable/ReanimatedSwipeable.js} +24 -33
  33. package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeable.js.map +1 -0
  34. package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js +8 -0
  35. package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js.map +1 -0
  36. package/lib/module/components/ReanimatedSwipeable/index.js +5 -0
  37. package/lib/module/components/ReanimatedSwipeable/index.js.map +1 -0
  38. package/lib/module/mocks/Pressable.js +4 -0
  39. package/lib/module/mocks/Pressable.js.map +1 -0
  40. package/lib/module/{mocks.js → mocks/mocks.js} +7 -11
  41. package/lib/module/mocks/mocks.js.map +1 -0
  42. package/lib/module/web/handlers/GestureHandler.js +1 -0
  43. package/lib/module/web/handlers/GestureHandler.js.map +1 -1
  44. package/lib/typescript/ActionType.d.ts +1 -0
  45. package/lib/typescript/Directions.d.ts +1 -0
  46. package/lib/typescript/EnableNewWebImplementation.d.ts +1 -0
  47. package/lib/typescript/GestureHandlerRootViewContext.d.ts +1 -0
  48. package/lib/typescript/PlatformConstants.d.ts +1 -0
  49. package/lib/typescript/PlatformConstants.web.d.ts +1 -0
  50. package/lib/typescript/PointerType.d.ts +1 -0
  51. package/lib/typescript/RNGestureHandlerModule.d.ts +1 -0
  52. package/lib/typescript/RNGestureHandlerModule.web.d.ts +1 -0
  53. package/lib/typescript/RNGestureHandlerModule.windows.d.ts +1 -0
  54. package/lib/typescript/RNRenderer.d.ts +1 -0
  55. package/lib/typescript/RNRenderer.web.d.ts +1 -0
  56. package/lib/typescript/State.d.ts +1 -0
  57. package/lib/typescript/TouchEventType.d.ts +1 -0
  58. package/lib/typescript/components/DrawerLayout.d.ts +1 -0
  59. package/lib/typescript/components/GestureButtons.d.ts +1 -0
  60. package/lib/typescript/components/GestureButtonsProps.d.ts +10 -1
  61. package/lib/typescript/components/GestureButtonsProps.d.ts.map +1 -1
  62. package/lib/typescript/components/GestureComponents.d.ts +1 -0
  63. package/lib/typescript/components/GestureComponents.web.d.ts +1 -0
  64. package/lib/typescript/components/GestureHandlerButton.d.ts +1 -0
  65. package/lib/typescript/components/GestureHandlerButton.web.d.ts +1 -0
  66. package/lib/typescript/components/GestureHandlerRootView.android.d.ts +1 -0
  67. package/lib/typescript/components/GestureHandlerRootView.d.ts +1 -0
  68. package/lib/typescript/components/GestureHandlerRootView.web.d.ts +1 -0
  69. package/lib/typescript/components/Pressable/Pressable.d.ts +1 -0
  70. package/lib/typescript/components/Pressable/Pressable.d.ts.map +1 -1
  71. package/lib/typescript/components/Pressable/PressableProps.d.ts +3 -4
  72. package/lib/typescript/components/Pressable/PressableProps.d.ts.map +1 -1
  73. package/lib/typescript/components/Pressable/StateMachine.d.ts +4 -2
  74. package/lib/typescript/components/Pressable/StateMachine.d.ts.map +1 -1
  75. package/lib/typescript/components/Pressable/index.d.ts +1 -0
  76. package/lib/typescript/components/Pressable/stateDefinitions.d.ts +3 -2
  77. package/lib/typescript/components/Pressable/stateDefinitions.d.ts.map +1 -1
  78. package/lib/typescript/components/Pressable/utils.d.ts +1 -0
  79. package/lib/typescript/components/ReanimatedDrawerLayout.d.ts +1 -0
  80. package/lib/typescript/components/ReanimatedSwipeable/ReanimatedSwipeable.d.ts +6 -0
  81. package/lib/typescript/components/ReanimatedSwipeable/ReanimatedSwipeable.d.ts.map +1 -0
  82. package/lib/typescript/components/{ReanimatedSwipeable.d.ts → ReanimatedSwipeable/ReanimatedSwipeableProps.d.ts} +10 -7
  83. package/lib/typescript/components/ReanimatedSwipeable/ReanimatedSwipeableProps.d.ts.map +1 -0
  84. package/lib/typescript/components/ReanimatedSwipeable/index.d.ts +3 -0
  85. package/lib/typescript/components/ReanimatedSwipeable/index.d.ts.map +1 -0
  86. package/lib/typescript/components/Swipeable.d.ts +1 -0
  87. package/lib/typescript/components/Text.d.ts +1 -0
  88. package/lib/typescript/components/gestureHandlerRootHOC.d.ts +1 -0
  89. package/lib/typescript/components/touchables/ExtraButtonProps.d.ts +1 -0
  90. package/lib/typescript/components/touchables/GenericTouchable.d.ts +1 -0
  91. package/lib/typescript/components/touchables/GenericTouchableProps.d.ts +1 -0
  92. package/lib/typescript/components/touchables/TouchableHighlight.d.ts +1 -0
  93. package/lib/typescript/components/touchables/TouchableNativeFeedback.android.d.ts +1 -0
  94. package/lib/typescript/components/touchables/TouchableNativeFeedback.d.ts +1 -0
  95. package/lib/typescript/components/touchables/TouchableNativeFeedbackProps.d.ts +1 -0
  96. package/lib/typescript/components/touchables/TouchableOpacity.d.ts +1 -0
  97. package/lib/typescript/components/touchables/TouchableWithoutFeedback.d.ts +1 -0
  98. package/lib/typescript/components/touchables/index.d.ts +1 -0
  99. package/lib/typescript/components/utils.d.ts +1 -0
  100. package/lib/typescript/findNodeHandle.d.ts +1 -0
  101. package/lib/typescript/findNodeHandle.web.d.ts +1 -0
  102. package/lib/typescript/getShadowNodeFromRef.d.ts +1 -0
  103. package/lib/typescript/getShadowNodeFromRef.web.d.ts +1 -0
  104. package/lib/typescript/ghQueueMicrotask.d.ts +1 -0
  105. package/lib/typescript/handlers/FlingGestureHandler.d.ts +1 -0
  106. package/lib/typescript/handlers/ForceTouchGestureHandler.d.ts +1 -0
  107. package/lib/typescript/handlers/GestureHandlerEventPayload.d.ts +1 -0
  108. package/lib/typescript/handlers/LongPressGestureHandler.d.ts +1 -0
  109. package/lib/typescript/handlers/NativeViewGestureHandler.d.ts +1 -0
  110. package/lib/typescript/handlers/PanGestureHandler.d.ts +1 -0
  111. package/lib/typescript/handlers/PinchGestureHandler.d.ts +1 -0
  112. package/lib/typescript/handlers/PressabilityDebugView.d.ts +1 -0
  113. package/lib/typescript/handlers/PressabilityDebugView.web.d.ts +1 -0
  114. package/lib/typescript/handlers/RotationGestureHandler.d.ts +1 -0
  115. package/lib/typescript/handlers/TapGestureHandler.d.ts +1 -0
  116. package/lib/typescript/handlers/createHandler.d.ts +1 -0
  117. package/lib/typescript/handlers/createNativeWrapper.d.ts +1 -0
  118. package/lib/typescript/handlers/customDirectEventTypes.d.ts +1 -0
  119. package/lib/typescript/handlers/customDirectEventTypes.web.d.ts +1 -0
  120. package/lib/typescript/handlers/gestureHandlerCommon.d.ts +1 -0
  121. package/lib/typescript/handlers/gestureHandlerTypesCompat.d.ts +1 -0
  122. package/lib/typescript/handlers/gestures/GestureDetector/Wrap.d.ts +1 -0
  123. package/lib/typescript/handlers/gestures/GestureDetector/Wrap.web.d.ts +1 -0
  124. package/lib/typescript/handlers/gestures/GestureDetector/attachHandlers.d.ts +1 -0
  125. package/lib/typescript/handlers/gestures/GestureDetector/dropHandlers.d.ts +1 -0
  126. package/lib/typescript/handlers/gestures/GestureDetector/index.d.ts +1 -0
  127. package/lib/typescript/handlers/gestures/GestureDetector/needsToReattach.d.ts +1 -0
  128. package/lib/typescript/handlers/gestures/GestureDetector/types.d.ts +1 -0
  129. package/lib/typescript/handlers/gestures/GestureDetector/updateHandlers.d.ts +1 -0
  130. package/lib/typescript/handlers/gestures/GestureDetector/useAnimatedGesture.d.ts +1 -0
  131. package/lib/typescript/handlers/gestures/GestureDetector/useDetectorUpdater.d.ts +1 -0
  132. package/lib/typescript/handlers/gestures/GestureDetector/useMountReactions.d.ts +1 -0
  133. package/lib/typescript/handlers/gestures/GestureDetector/useViewRefHandler.d.ts +1 -0
  134. package/lib/typescript/handlers/gestures/GestureDetector/utils.d.ts +1 -0
  135. package/lib/typescript/handlers/gestures/eventReceiver.d.ts +1 -0
  136. package/lib/typescript/handlers/gestures/flingGesture.d.ts +1 -0
  137. package/lib/typescript/handlers/gestures/forceTouchGesture.d.ts +1 -0
  138. package/lib/typescript/handlers/gestures/gesture.d.ts +1 -0
  139. package/lib/typescript/handlers/gestures/gestureComposition.d.ts +1 -0
  140. package/lib/typescript/handlers/gestures/gestureObjects.d.ts +1 -0
  141. package/lib/typescript/handlers/gestures/gestureStateManager.d.ts +1 -0
  142. package/lib/typescript/handlers/gestures/gestureStateManager.web.d.ts +1 -0
  143. package/lib/typescript/handlers/gestures/hoverGesture.d.ts +1 -0
  144. package/lib/typescript/handlers/gestures/longPressGesture.d.ts +1 -0
  145. package/lib/typescript/handlers/gestures/manualGesture.d.ts +1 -0
  146. package/lib/typescript/handlers/gestures/nativeGesture.d.ts +1 -0
  147. package/lib/typescript/handlers/gestures/panGesture.d.ts +1 -0
  148. package/lib/typescript/handlers/gestures/pinchGesture.d.ts +1 -0
  149. package/lib/typescript/handlers/gestures/reanimatedWrapper.d.ts +1 -0
  150. package/lib/typescript/handlers/gestures/rotationGesture.d.ts +1 -0
  151. package/lib/typescript/handlers/gestures/tapGesture.d.ts +1 -0
  152. package/lib/typescript/handlers/getNextHandlerTag.d.ts +1 -0
  153. package/lib/typescript/handlers/handlersRegistry.d.ts +1 -0
  154. package/lib/typescript/handlers/utils.d.ts +1 -0
  155. package/lib/typescript/index.d.ts +1 -0
  156. package/lib/typescript/init.d.ts +1 -0
  157. package/lib/typescript/jestUtils/index.d.ts +1 -0
  158. package/lib/typescript/jestUtils/jestUtils.d.ts +1 -0
  159. package/lib/typescript/mocks/Pressable.d.ts +2 -0
  160. package/lib/typescript/mocks/Pressable.d.ts.map +1 -0
  161. package/lib/typescript/{mocks.d.ts → mocks/mocks.d.ts} +5 -4
  162. package/lib/typescript/mocks/mocks.d.ts.map +1 -0
  163. package/lib/typescript/mountRegistry.d.ts +1 -0
  164. package/lib/typescript/specs/NativeRNGestureHandlerModule.d.ts +1 -0
  165. package/lib/typescript/specs/RNGestureHandlerButtonNativeComponent.d.ts +1 -0
  166. package/lib/typescript/specs/RNGestureHandlerRootViewNativeComponent.d.ts +1 -0
  167. package/lib/typescript/typeUtils.d.ts +1 -0
  168. package/lib/typescript/utils.d.ts +1 -0
  169. package/lib/typescript/web/Gestures.d.ts +1 -0
  170. package/lib/typescript/web/constants.d.ts +1 -0
  171. package/lib/typescript/web/detectors/RotationGestureDetector.d.ts +1 -0
  172. package/lib/typescript/web/detectors/ScaleGestureDetector.d.ts +1 -0
  173. package/lib/typescript/web/handlers/FlingGestureHandler.d.ts +1 -0
  174. package/lib/typescript/web/handlers/GestureHandler.d.ts +1 -0
  175. package/lib/typescript/web/handlers/GestureHandler.d.ts.map +1 -1
  176. package/lib/typescript/web/handlers/HoverGestureHandler.d.ts +1 -0
  177. package/lib/typescript/web/handlers/IGestureHandler.d.ts +1 -0
  178. package/lib/typescript/web/handlers/LongPressGestureHandler.d.ts +1 -0
  179. package/lib/typescript/web/handlers/ManualGestureHandler.d.ts +1 -0
  180. package/lib/typescript/web/handlers/NativeViewGestureHandler.d.ts +1 -0
  181. package/lib/typescript/web/handlers/PanGestureHandler.d.ts +1 -0
  182. package/lib/typescript/web/handlers/PinchGestureHandler.d.ts +1 -0
  183. package/lib/typescript/web/handlers/RotationGestureHandler.d.ts +1 -0
  184. package/lib/typescript/web/handlers/TapGestureHandler.d.ts +1 -0
  185. package/lib/typescript/web/interfaces.d.ts +1 -0
  186. package/lib/typescript/web/tools/CircularBuffer.d.ts +1 -0
  187. package/lib/typescript/web/tools/EventManager.d.ts +1 -0
  188. package/lib/typescript/web/tools/GestureHandlerDelegate.d.ts +1 -0
  189. package/lib/typescript/web/tools/GestureHandlerOrchestrator.d.ts +1 -0
  190. package/lib/typescript/web/tools/GestureHandlerWebDelegate.d.ts +1 -0
  191. package/lib/typescript/web/tools/InteractionManager.d.ts +1 -0
  192. package/lib/typescript/web/tools/KeyboardEventManager.d.ts +1 -0
  193. package/lib/typescript/web/tools/LeastSquareSolver.d.ts +1 -0
  194. package/lib/typescript/web/tools/NodeManager.d.ts +1 -0
  195. package/lib/typescript/web/tools/PointerEventManager.d.ts +1 -0
  196. package/lib/typescript/web/tools/PointerTracker.d.ts +1 -0
  197. package/lib/typescript/web/tools/Vector.d.ts +1 -0
  198. package/lib/typescript/web/tools/VelocityTracker.d.ts +1 -0
  199. package/lib/typescript/web/tools/WheelEventManager.d.ts +1 -0
  200. package/lib/typescript/web/utils.d.ts +1 -0
  201. package/lib/typescript/web_hammer/DiscreteGestureHandler.d.ts +1 -0
  202. package/lib/typescript/web_hammer/DraggingGestureHandler.d.ts +1 -0
  203. package/lib/typescript/web_hammer/Errors.d.ts +1 -0
  204. package/lib/typescript/web_hammer/FlingGestureHandler.d.ts +1 -0
  205. package/lib/typescript/web_hammer/GestureHandler.d.ts +1 -0
  206. package/lib/typescript/web_hammer/IndiscreteGestureHandler.d.ts +1 -0
  207. package/lib/typescript/web_hammer/LongPressGestureHandler.d.ts +1 -0
  208. package/lib/typescript/web_hammer/NativeViewGestureHandler.d.ts +1 -0
  209. package/lib/typescript/web_hammer/NodeManager.d.ts +1 -0
  210. package/lib/typescript/web_hammer/PanGestureHandler.d.ts +1 -0
  211. package/lib/typescript/web_hammer/PinchGestureHandler.d.ts +1 -0
  212. package/lib/typescript/web_hammer/PressGestureHandler.d.ts +1 -0
  213. package/lib/typescript/web_hammer/RotationGestureHandler.d.ts +1 -0
  214. package/lib/typescript/web_hammer/TapGestureHandler.d.ts +1 -0
  215. package/lib/typescript/web_hammer/constants.d.ts +1 -0
  216. package/lib/typescript/web_hammer/utils.d.ts +1 -0
  217. package/package.json +1 -1
  218. package/src/components/GestureButtonsProps.ts +10 -0
  219. package/src/components/Pressable/Pressable.tsx +20 -31
  220. package/src/components/Pressable/PressableProps.tsx +2 -4
  221. package/src/components/Pressable/StateMachine.tsx +12 -4
  222. package/src/components/Pressable/stateDefinitions.ts +23 -23
  223. package/src/components/ReanimatedSwipeable/ReanimatedSwipeable.tsx +603 -0
  224. package/src/components/ReanimatedSwipeable/ReanimatedSwipeableProps.ts +199 -0
  225. package/src/components/ReanimatedSwipeable/index.ts +6 -0
  226. package/src/mocks/Pressable.tsx +1 -0
  227. package/src/{mocks.tsx → mocks/mocks.tsx} +7 -11
  228. package/src/web/handlers/GestureHandler.ts +1 -0
  229. package/lib/commonjs/components/ReanimatedSwipeable.js.map +0 -1
  230. package/lib/commonjs/mocks.js.map +0 -1
  231. package/lib/module/components/ReanimatedSwipeable.js.map +0 -1
  232. package/lib/module/mocks.js.map +0 -1
  233. package/lib/typescript/ActionType.js +0 -6
  234. package/lib/typescript/Directions.js +0 -18
  235. package/lib/typescript/EnableNewWebImplementation.js +0 -30
  236. package/lib/typescript/GestureHandlerRootViewContext.js +0 -2
  237. package/lib/typescript/PlatformConstants.js +0 -3
  238. package/lib/typescript/PlatformConstants.web.js +0 -5
  239. package/lib/typescript/PointerType.js +0 -8
  240. package/lib/typescript/RNGestureHandlerModule.js +0 -4
  241. package/lib/typescript/RNGestureHandlerModule.web.js +0 -92
  242. package/lib/typescript/RNGestureHandlerModule.windows.js +0 -47
  243. package/lib/typescript/RNRenderer.js +0 -3
  244. package/lib/typescript/RNRenderer.web.js +0 -3
  245. package/lib/typescript/State.js +0 -9
  246. package/lib/typescript/TouchEventType.js +0 -7
  247. package/lib/typescript/components/DrawerLayout.js +0 -417
  248. package/lib/typescript/components/GestureButtons.js +0 -165
  249. package/lib/typescript/components/GestureButtonsProps.js +0 -1
  250. package/lib/typescript/components/GestureComponents.js +0 -67
  251. package/lib/typescript/components/GestureComponents.web.js +0 -21
  252. package/lib/typescript/components/GestureHandlerButton.js +0 -2
  253. package/lib/typescript/components/GestureHandlerButton.web.js +0 -3
  254. package/lib/typescript/components/GestureHandlerRootView.android.js +0 -17
  255. package/lib/typescript/components/GestureHandlerRootView.js +0 -16
  256. package/lib/typescript/components/GestureHandlerRootView.web.js +0 -11
  257. package/lib/typescript/components/Pressable/Pressable.js +0 -231
  258. package/lib/typescript/components/Pressable/PressableProps.js +0 -1
  259. package/lib/typescript/components/Pressable/StateMachine.js +0 -34
  260. package/lib/typescript/components/Pressable/index.js +0 -1
  261. package/lib/typescript/components/Pressable/stateDefinitions.js +0 -104
  262. package/lib/typescript/components/Pressable/utils.js +0 -80
  263. package/lib/typescript/components/ReanimatedDrawerLayout.js +0 -364
  264. package/lib/typescript/components/ReanimatedSwipeable.d.ts.map +0 -1
  265. package/lib/typescript/components/ReanimatedSwipeable.js +0 -400
  266. package/lib/typescript/components/Swipeable.js +0 -287
  267. package/lib/typescript/components/Text.js +0 -38
  268. package/lib/typescript/components/gestureHandlerRootHOC.js +0 -18
  269. package/lib/typescript/components/touchables/ExtraButtonProps.js +0 -1
  270. package/lib/typescript/components/touchables/GenericTouchable.js +0 -221
  271. package/lib/typescript/components/touchables/GenericTouchableProps.js +0 -1
  272. package/lib/typescript/components/touchables/TouchableHighlight.js +0 -75
  273. package/lib/typescript/components/touchables/TouchableNativeFeedback.android.js +0 -65
  274. package/lib/typescript/components/touchables/TouchableNativeFeedback.js +0 -6
  275. package/lib/typescript/components/touchables/TouchableNativeFeedbackProps.js +0 -1
  276. package/lib/typescript/components/touchables/TouchableOpacity.js +0 -51
  277. package/lib/typescript/components/touchables/TouchableWithoutFeedback.js +0 -10
  278. package/lib/typescript/components/touchables/index.js +0 -4
  279. package/lib/typescript/components/utils.js +0 -11
  280. package/lib/typescript/findNodeHandle.js +0 -2
  281. package/lib/typescript/findNodeHandle.web.js +0 -31
  282. package/lib/typescript/getShadowNodeFromRef.js +0 -45
  283. package/lib/typescript/getShadowNodeFromRef.web.js +0 -7
  284. package/lib/typescript/ghQueueMicrotask.js +0 -7
  285. package/lib/typescript/handlers/FlingGestureHandler.js +0 -19
  286. package/lib/typescript/handlers/ForceTouchGestureHandler.js +0 -37
  287. package/lib/typescript/handlers/GestureHandlerEventPayload.js +0 -1
  288. package/lib/typescript/handlers/LongPressGestureHandler.js +0 -22
  289. package/lib/typescript/handlers/NativeViewGestureHandler.js +0 -20
  290. package/lib/typescript/handlers/PanGestureHandler.js +0 -128
  291. package/lib/typescript/handlers/PinchGestureHandler.js +0 -12
  292. package/lib/typescript/handlers/PressabilityDebugView.js +0 -2
  293. package/lib/typescript/handlers/PressabilityDebugView.web.js +0 -4
  294. package/lib/typescript/handlers/RotationGestureHandler.js +0 -12
  295. package/lib/typescript/handlers/TapGestureHandler.js +0 -26
  296. package/lib/typescript/handlers/createHandler.js +0 -375
  297. package/lib/typescript/handlers/createNativeWrapper.js +0 -67
  298. package/lib/typescript/handlers/customDirectEventTypes.js +0 -2
  299. package/lib/typescript/handlers/customDirectEventTypes.web.js +0 -4
  300. package/lib/typescript/handlers/gestureHandlerCommon.js +0 -42
  301. package/lib/typescript/handlers/gestureHandlerTypesCompat.js +0 -1
  302. package/lib/typescript/handlers/gestures/GestureDetector/Wrap.js +0 -22
  303. package/lib/typescript/handlers/gestures/GestureDetector/Wrap.web.js +0 -24
  304. package/lib/typescript/handlers/gestures/GestureDetector/attachHandlers.js +0 -55
  305. package/lib/typescript/handlers/gestures/GestureDetector/dropHandlers.js +0 -12
  306. package/lib/typescript/handlers/gestures/GestureDetector/index.js +0 -114
  307. package/lib/typescript/handlers/gestures/GestureDetector/needsToReattach.js +0 -18
  308. package/lib/typescript/handlers/gestures/GestureDetector/types.js +0 -1
  309. package/lib/typescript/handlers/gestures/GestureDetector/updateHandlers.js +0 -54
  310. package/lib/typescript/handlers/gestures/GestureDetector/useAnimatedGesture.js +0 -137
  311. package/lib/typescript/handlers/gestures/GestureDetector/useDetectorUpdater.js +0 -48
  312. package/lib/typescript/handlers/gestures/GestureDetector/useMountReactions.js +0 -35
  313. package/lib/typescript/handlers/gestures/GestureDetector/useViewRefHandler.js +0 -32
  314. package/lib/typescript/handlers/gestures/GestureDetector/utils.js +0 -140
  315. package/lib/typescript/handlers/gestures/eventReceiver.js +0 -105
  316. package/lib/typescript/handlers/gestures/flingGesture.js +0 -27
  317. package/lib/typescript/handlers/gestures/forceTouchGesture.js +0 -57
  318. package/lib/typescript/handlers/gestures/gesture.js +0 -303
  319. package/lib/typescript/handlers/gestures/gestureComposition.js +0 -78
  320. package/lib/typescript/handlers/gestures/gestureObjects.js +0 -125
  321. package/lib/typescript/handlers/gestures/gestureStateManager.js +0 -60
  322. package/lib/typescript/handlers/gestures/gestureStateManager.web.js +0 -19
  323. package/lib/typescript/handlers/gestures/hoverGesture.js +0 -45
  324. package/lib/typescript/handlers/gestures/longPressGesture.js +0 -35
  325. package/lib/typescript/handlers/gestures/manualGesture.js +0 -16
  326. package/lib/typescript/handlers/gestures/nativeGesture.js +0 -24
  327. package/lib/typescript/handlers/gestures/panGesture.js +0 -181
  328. package/lib/typescript/handlers/gestures/pinchGesture.js +0 -27
  329. package/lib/typescript/handlers/gestures/reanimatedWrapper.js +0 -23
  330. package/lib/typescript/handlers/gestures/rotationGesture.js +0 -27
  331. package/lib/typescript/handlers/gestures/tapGesture.js +0 -72
  332. package/lib/typescript/handlers/getNextHandlerTag.js +0 -4
  333. package/lib/typescript/handlers/handlersRegistry.js +0 -36
  334. package/lib/typescript/handlers/utils.js +0 -58
  335. package/lib/typescript/index.js +0 -28
  336. package/lib/typescript/init.js +0 -15
  337. package/lib/typescript/jestUtils/index.js +0 -1
  338. package/lib/typescript/jestUtils/jestUtils.js +0 -290
  339. package/lib/typescript/mocks.d.ts.map +0 -1
  340. package/lib/typescript/mocks.js +0 -59
  341. package/lib/typescript/mountRegistry.js +0 -29
  342. package/lib/typescript/specs/NativeRNGestureHandlerModule.js +0 -2
  343. package/lib/typescript/specs/RNGestureHandlerButtonNativeComponent.js +0 -2
  344. package/lib/typescript/specs/RNGestureHandlerRootViewNativeComponent.js +0 -2
  345. package/lib/typescript/typeUtils.js +0 -1
  346. package/lib/typescript/utils.js +0 -80
  347. package/lib/typescript/web/Gestures.js +0 -38
  348. package/lib/typescript/web/constants.js +0 -2
  349. package/lib/typescript/web/detectors/RotationGestureDetector.js +0 -122
  350. package/lib/typescript/web/detectors/ScaleGestureDetector.js +0 -117
  351. package/lib/typescript/web/handlers/FlingGestureHandler.js +0 -133
  352. package/lib/typescript/web/handlers/GestureHandler.js +0 -656
  353. package/lib/typescript/web/handlers/HoverGestureHandler.js +0 -37
  354. package/lib/typescript/web/handlers/IGestureHandler.js +0 -1
  355. package/lib/typescript/web/handlers/LongPressGestureHandler.js +0 -136
  356. package/lib/typescript/web/handlers/ManualGestureHandler.js +0 -29
  357. package/lib/typescript/web/handlers/NativeViewGestureHandler.js +0 -133
  358. package/lib/typescript/web/handlers/PanGestureHandler.js +0 -420
  359. package/lib/typescript/web/handlers/PinchGestureHandler.js +0 -117
  360. package/lib/typescript/web/handlers/RotationGestureHandler.js +0 -122
  361. package/lib/typescript/web/handlers/TapGestureHandler.js +0 -202
  362. package/lib/typescript/web/interfaces.js +0 -25
  363. package/lib/typescript/web/tools/CircularBuffer.js +0 -37
  364. package/lib/typescript/web/tools/EventManager.js +0 -85
  365. package/lib/typescript/web/tools/GestureHandlerDelegate.js +0 -1
  366. package/lib/typescript/web/tools/GestureHandlerOrchestrator.js +0 -273
  367. package/lib/typescript/web/tools/GestureHandlerWebDelegate.js +0 -169
  368. package/lib/typescript/web/tools/InteractionManager.js +0 -91
  369. package/lib/typescript/web/tools/KeyboardEventManager.js +0 -73
  370. package/lib/typescript/web/tools/LeastSquareSolver.js +0 -147
  371. package/lib/typescript/web/tools/NodeManager.js +0 -28
  372. package/lib/typescript/web/tools/PointerEventManager.js +0 -179
  373. package/lib/typescript/web/tools/PointerTracker.js +0 -161
  374. package/lib/typescript/web/tools/Vector.js +0 -43
  375. package/lib/typescript/web/tools/VelocityTracker.js +0 -76
  376. package/lib/typescript/web/tools/WheelEventManager.js +0 -40
  377. package/lib/typescript/web/utils.js +0 -233
  378. package/lib/typescript/web_hammer/DiscreteGestureHandler.js +0 -48
  379. package/lib/typescript/web_hammer/DraggingGestureHandler.js +0 -25
  380. package/lib/typescript/web_hammer/Errors.js +0 -5
  381. package/lib/typescript/web_hammer/FlingGestureHandler.js +0 -119
  382. package/lib/typescript/web_hammer/GestureHandler.js +0 -469
  383. package/lib/typescript/web_hammer/IndiscreteGestureHandler.js +0 -26
  384. package/lib/typescript/web_hammer/LongPressGestureHandler.js +0 -46
  385. package/lib/typescript/web_hammer/NativeViewGestureHandler.js +0 -40
  386. package/lib/typescript/web_hammer/NodeManager.js +0 -28
  387. package/lib/typescript/web_hammer/PanGestureHandler.js +0 -151
  388. package/lib/typescript/web_hammer/PinchGestureHandler.js +0 -19
  389. package/lib/typescript/web_hammer/PressGestureHandler.js +0 -133
  390. package/lib/typescript/web_hammer/RotationGestureHandler.js +0 -20
  391. package/lib/typescript/web_hammer/TapGestureHandler.js +0 -142
  392. package/lib/typescript/web_hammer/constants.js +0 -42
  393. package/lib/typescript/web_hammer/utils.js +0 -15
  394. package/src/components/ReanimatedSwipeable.tsx +0 -811
@@ -1,6 +1,6 @@
1
1
  import React, {
2
2
  useCallback,
3
- useLayoutEffect,
3
+ useEffect,
4
4
  useMemo,
5
5
  useRef,
6
6
  useState,
@@ -14,9 +14,9 @@ import {
14
14
  } from './PressableProps';
15
15
  import {
16
16
  Insets,
17
+ LayoutChangeEvent,
17
18
  Platform,
18
19
  StyleProp,
19
- View,
20
20
  ViewStyle,
21
21
  processColor,
22
22
  } from 'react-native';
@@ -35,10 +35,8 @@ import {
35
35
  RelationPropName,
36
36
  RelationPropType,
37
37
  } from '../utils';
38
- import {
39
- getConfiguredStateMachine,
40
- StateMachineEvent,
41
- } from './stateDefinitions';
38
+ import { getStatesConfig, StateMachineEvent } from './stateDefinitions';
39
+ import { PressableStateMachine } from './StateMachine';
42
40
 
43
41
  const DEFAULT_LONG_PRESS_DURATION = 500;
44
42
  const IS_TEST_ENV = isTestEnv();
@@ -47,7 +45,6 @@ let IS_FABRIC: null | boolean = null;
47
45
 
48
46
  const Pressable = (props: PressableProps) => {
49
47
  const {
50
- ref,
51
48
  testOnly_pressed,
52
49
  hitSlop,
53
50
  pressRetentionOffset,
@@ -61,6 +58,7 @@ const Pressable = (props: PressableProps) => {
61
58
  onPressIn,
62
59
  onPressOut,
63
60
  onLongPress,
61
+ onLayout,
64
62
  style,
65
63
  children,
66
64
  android_disableSound,
@@ -70,7 +68,6 @@ const Pressable = (props: PressableProps) => {
70
68
  simultaneousWithExternalGesture,
71
69
  requireExternalGestureToFail,
72
70
  blocksExternalGesture,
73
- dimensionsAfterResize,
74
71
  ...remainingProps
75
72
  } = props;
76
73
 
@@ -80,9 +77,6 @@ const Pressable = (props: PressableProps) => {
80
77
  blocksExternalGesture,
81
78
  };
82
79
 
83
- // used only if `ref` is undefined
84
- const fallbackRef = useRef<View>(null);
85
-
86
80
  const [pressedState, setPressedState] = useState(testOnly_pressed ?? false);
87
81
 
88
82
  const longPressTimeoutRef = useRef<number | null>(null);
@@ -110,21 +104,6 @@ const Pressable = (props: PressableProps) => {
110
104
  normalizedPressRetentionOffset
111
105
  );
112
106
 
113
- useLayoutEffect(() => {
114
- if (dimensionsAfterResize) {
115
- dimensions.current = dimensionsAfterResize;
116
- } else {
117
- requestAnimationFrame(() => {
118
- (ref ?? fallbackRef).current?.measure((_x, _y, width, height) => {
119
- dimensions.current = {
120
- width,
121
- height,
122
- };
123
- });
124
- });
125
- }
126
- }, [dimensionsAfterResize, ref]);
127
-
128
107
  const cancelLongPress = useCallback(() => {
129
108
  if (longPressTimeoutRef.current) {
130
109
  clearTimeout(longPressTimeoutRef.current);
@@ -222,10 +201,12 @@ const Pressable = (props: PressableProps) => {
222
201
  [handleFinalize, innerHandlePressIn, onPress, onPressOut]
223
202
  );
224
203
 
225
- const stateMachine = useMemo(
226
- () => getConfiguredStateMachine(handlePressIn, handlePressOut),
227
- [handlePressIn, handlePressOut]
228
- );
204
+ const stateMachine = useMemo(() => new PressableStateMachine(), []);
205
+
206
+ useEffect(() => {
207
+ const configuration = getStatesConfig(handlePressIn, handlePressOut);
208
+ stateMachine.setStates(configuration);
209
+ }, [handlePressIn, handlePressOut, stateMachine]);
229
210
 
230
211
  const hoverInTimeout = useRef<number | null>(null);
231
212
  const hoverOutTimeout = useRef<number | null>(null);
@@ -376,11 +357,19 @@ const Pressable = (props: PressableProps) => {
376
357
  : processColor(unprocessedRippleColor);
377
358
  }, [android_ripple]);
378
359
 
360
+ const setDimensions = useCallback(
361
+ (event: LayoutChangeEvent) => {
362
+ onLayout?.(event);
363
+ dimensions.current = event.nativeEvent.layout;
364
+ },
365
+ [onLayout]
366
+ );
367
+
379
368
  return (
380
369
  <GestureDetector gesture={gesture}>
381
370
  <NativeButton
382
371
  {...remainingProps}
383
- ref={ref ?? fallbackRef}
372
+ onLayout={setDimensions}
384
373
  accessible={accessible !== false}
385
374
  hitSlop={appliedHitSlop}
386
375
  enabled={isPressableEnabled}
@@ -66,7 +66,7 @@ export interface PressableProps
66
66
  /**
67
67
  * A reference to the pressable element.
68
68
  */
69
- ref?: React.RefObject<View>;
69
+ ref?: React.Ref<View>;
70
70
 
71
71
  /**
72
72
  * Either children or a render prop that receives a boolean reflecting whether
@@ -168,9 +168,7 @@ export interface PressableProps
168
168
  blocksExternalGesture?: RelationPropType;
169
169
 
170
170
  /**
171
- * Defines the dimensions of the Pressable after it's been resized.
172
- * This property does not affect Pressable's physical appearance.
173
- * Required when the Pressable is resized **and** uses pressRetentionOffset.
171
+ * @deprecated This property is no longer used, and will be removed in the future.
174
172
  */
175
173
  dimensionsAfterResize?: PressableDimensions;
176
174
  }
@@ -1,27 +1,35 @@
1
1
  import { PressableEvent } from './PressableProps';
2
2
 
3
- interface StateDefinition {
3
+ export interface StateDefinition {
4
4
  eventName: string;
5
5
  callback?: (event: PressableEvent) => void;
6
6
  }
7
7
 
8
8
  class PressableStateMachine {
9
- private states: StateDefinition[];
9
+ private states: StateDefinition[] | null;
10
10
  private currentStepIndex: number;
11
11
  private eventPayload: PressableEvent | null;
12
12
 
13
- constructor(steps: StateDefinition[]) {
14
- this.states = steps;
13
+ constructor() {
14
+ this.states = null;
15
15
  this.currentStepIndex = 0;
16
16
  this.eventPayload = null;
17
17
  }
18
18
 
19
+ public setStates(states: StateDefinition[]) {
20
+ this.states = states;
21
+ }
22
+
19
23
  public reset() {
20
24
  this.currentStepIndex = 0;
21
25
  this.eventPayload = null;
22
26
  }
23
27
 
24
28
  public handleEvent(eventName: string, eventPayload?: PressableEvent) {
29
+ if (!this.states) {
30
+ return;
31
+ }
32
+
25
33
  const step = this.states[this.currentStepIndex];
26
34
  this.eventPayload = eventPayload || this.eventPayload;
27
35
 
@@ -1,6 +1,6 @@
1
1
  import { Platform } from 'react-native';
2
2
  import { PressableEvent } from './PressableProps';
3
- import { PressableStateMachine } from './StateMachine';
3
+ import { StateDefinition } from './StateMachine';
4
4
 
5
5
  export enum StateMachineEvent {
6
6
  NATIVE_BEGIN = 'nativeBegin',
@@ -9,11 +9,11 @@ export enum StateMachineEvent {
9
9
  LONG_PRESS_TOUCHES_DOWN = 'longPressTouchesDown',
10
10
  }
11
11
 
12
- function getAndroidStateMachine(
12
+ function getAndroidStatesConfig(
13
13
  handlePressIn: (event: PressableEvent) => void,
14
14
  handlePressOut: (event: PressableEvent) => void
15
15
  ) {
16
- return new PressableStateMachine([
16
+ return [
17
17
  {
18
18
  eventName: StateMachineEvent.NATIVE_BEGIN,
19
19
  },
@@ -25,14 +25,14 @@ function getAndroidStateMachine(
25
25
  eventName: StateMachineEvent.FINALIZE,
26
26
  callback: handlePressOut,
27
27
  },
28
- ]);
28
+ ];
29
29
  }
30
30
 
31
- function getIosStateMachine(
31
+ function getIosStatesConfig(
32
32
  handlePressIn: (event: PressableEvent) => void,
33
33
  handlePressOut: (event: PressableEvent) => void
34
34
  ) {
35
- return new PressableStateMachine([
35
+ return [
36
36
  {
37
37
  eventName: StateMachineEvent.LONG_PRESS_TOUCHES_DOWN,
38
38
  },
@@ -44,14 +44,14 @@ function getIosStateMachine(
44
44
  eventName: StateMachineEvent.FINALIZE,
45
45
  callback: handlePressOut,
46
46
  },
47
- ]);
47
+ ];
48
48
  }
49
49
 
50
- function getWebStateMachine(
50
+ function getWebStatesConfig(
51
51
  handlePressIn: (event: PressableEvent) => void,
52
52
  handlePressOut: (event: PressableEvent) => void
53
53
  ) {
54
- return new PressableStateMachine([
54
+ return [
55
55
  {
56
56
  eventName: StateMachineEvent.NATIVE_BEGIN,
57
57
  },
@@ -66,14 +66,14 @@ function getWebStateMachine(
66
66
  eventName: StateMachineEvent.FINALIZE,
67
67
  callback: handlePressOut,
68
68
  },
69
- ]);
69
+ ];
70
70
  }
71
71
 
72
- function getMacosStateMachine(
72
+ function getMacosStatesConfig(
73
73
  handlePressIn: (event: PressableEvent) => void,
74
74
  handlePressOut: (event: PressableEvent) => void
75
75
  ) {
76
- return new PressableStateMachine([
76
+ return [
77
77
  {
78
78
  eventName: StateMachineEvent.LONG_PRESS_TOUCHES_DOWN,
79
79
  },
@@ -88,14 +88,14 @@ function getMacosStateMachine(
88
88
  eventName: StateMachineEvent.FINALIZE,
89
89
  callback: handlePressOut,
90
90
  },
91
- ]);
91
+ ];
92
92
  }
93
93
 
94
- function getUniversalStateMachine(
94
+ function getUniversalStatesConfig(
95
95
  handlePressIn: (event: PressableEvent) => void,
96
96
  handlePressOut: (event: PressableEvent) => void
97
97
  ) {
98
- return new PressableStateMachine([
98
+ return [
99
99
  {
100
100
  eventName: StateMachineEvent.FINALIZE,
101
101
  callback: (event: PressableEvent) => {
@@ -103,23 +103,23 @@ function getUniversalStateMachine(
103
103
  handlePressOut(event);
104
104
  },
105
105
  },
106
- ]);
106
+ ];
107
107
  }
108
108
 
109
- export function getConfiguredStateMachine(
109
+ export function getStatesConfig(
110
110
  handlePressIn: (event: PressableEvent) => void,
111
111
  handlePressOut: (event: PressableEvent) => void
112
- ) {
112
+ ): StateDefinition[] {
113
113
  if (Platform.OS === 'android') {
114
- return getAndroidStateMachine(handlePressIn, handlePressOut);
114
+ return getAndroidStatesConfig(handlePressIn, handlePressOut);
115
115
  } else if (Platform.OS === 'ios') {
116
- return getIosStateMachine(handlePressIn, handlePressOut);
116
+ return getIosStatesConfig(handlePressIn, handlePressOut);
117
117
  } else if (Platform.OS === 'web') {
118
- return getWebStateMachine(handlePressIn, handlePressOut);
118
+ return getWebStatesConfig(handlePressIn, handlePressOut);
119
119
  } else if (Platform.OS === 'macos') {
120
- return getMacosStateMachine(handlePressIn, handlePressOut);
120
+ return getMacosStatesConfig(handlePressIn, handlePressOut);
121
121
  } else {
122
122
  // Unknown platform - using minimal universal setup.
123
- return getUniversalStateMachine(handlePressIn, handlePressOut);
123
+ return getUniversalStatesConfig(handlePressIn, handlePressOut);
124
124
  }
125
125
  }