react-native-gesture-handler 2.17.0 → 2.18.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (428) hide show
  1. package/ReanimatedSwipeable/package.json +6 -0
  2. package/android/build.gradle +0 -105
  3. package/android/gradle.properties +0 -7
  4. package/android/paper/src/main/java/com/swmansion/gesturehandler/NativeRNGestureHandlerModuleSpec.java +22 -10
  5. package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerOrchestrator.kt +1 -1
  6. package/android/src/main/java/com/swmansion/gesturehandler/core/NativeViewGestureHandler.kt +16 -0
  7. package/android/src/main/java/com/swmansion/gesturehandler/core/PinchGestureHandler.kt +7 -8
  8. package/android/src/main/java/com/swmansion/gesturehandler/core/RotationGestureDetector.kt +14 -4
  9. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerEvent.kt +3 -1
  10. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerStateChangeEvent.kt +3 -1
  11. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerTouchEvent.kt +2 -1
  12. package/android/src/main/java/com/swmansion/gesturehandler/react/RNViewConfigurationHelper.kt +8 -7
  13. package/android/src/main/jni/cpp-adapter.cpp +5 -3
  14. package/apple/Handlers/RNFlingHandler.m +1 -0
  15. package/apple/Handlers/RNForceTouchHandler.m +2 -0
  16. package/apple/Handlers/RNLongPressHandler.m +2 -1
  17. package/apple/Handlers/RNManualHandler.m +1 -0
  18. package/apple/Handlers/RNNativeViewHandler.mm +31 -27
  19. package/apple/Handlers/RNPanHandler.m +1 -0
  20. package/apple/Handlers/RNPinchHandler.m +1 -0
  21. package/apple/Handlers/RNRotationHandler.m +1 -0
  22. package/apple/Handlers/RNTapHandler.m +1 -0
  23. package/apple/RNGestureHandlerModule.mm +3 -2
  24. package/apple/RNRootViewGestureRecognizer.m +5 -0
  25. package/lib/commonjs/Directions.js +2 -2
  26. package/lib/commonjs/Directions.js.map +1 -1
  27. package/lib/commonjs/RNGestureHandlerModule.web.js +2 -2
  28. package/lib/commonjs/RNGestureHandlerModule.web.js.map +1 -1
  29. package/lib/commonjs/components/DrawerLayout.js +2 -2
  30. package/lib/commonjs/components/DrawerLayout.js.map +1 -1
  31. package/lib/commonjs/components/GestureButtons.js +3 -3
  32. package/lib/commonjs/components/GestureButtons.js.map +1 -1
  33. package/lib/commonjs/components/GestureButtonsProps.js +6 -0
  34. package/lib/commonjs/components/GestureButtonsProps.js.map +1 -0
  35. package/lib/commonjs/components/GestureComponents.js +1 -1
  36. package/lib/commonjs/components/GestureComponents.js.map +1 -1
  37. package/lib/commonjs/components/GestureHandlerButton.js.map +1 -1
  38. package/lib/commonjs/components/GestureHandlerRootView.android.js +1 -1
  39. package/lib/commonjs/components/GestureHandlerRootView.android.js.map +1 -1
  40. package/lib/commonjs/components/GestureHandlerRootView.js +1 -1
  41. package/lib/commonjs/components/GestureHandlerRootView.js.map +1 -1
  42. package/lib/commonjs/components/Pressable/Pressable.js +334 -0
  43. package/lib/commonjs/components/Pressable/Pressable.js.map +1 -0
  44. package/lib/commonjs/components/Pressable/PressableProps.js +6 -0
  45. package/lib/commonjs/components/Pressable/PressableProps.js.map +1 -0
  46. package/lib/commonjs/components/Pressable/index.js +24 -0
  47. package/lib/commonjs/components/Pressable/index.js.map +1 -0
  48. package/lib/commonjs/components/Pressable/utils.js +136 -0
  49. package/lib/commonjs/components/Pressable/utils.js.map +1 -0
  50. package/lib/commonjs/components/ReanimatedSwipeable.js +317 -0
  51. package/lib/commonjs/components/ReanimatedSwipeable.js.map +1 -0
  52. package/lib/commonjs/components/Swipeable.js +3 -3
  53. package/lib/commonjs/components/Swipeable.js.map +1 -1
  54. package/lib/commonjs/components/touchables/GenericTouchable.js +4 -4
  55. package/lib/commonjs/components/touchables/GenericTouchable.js.map +1 -1
  56. package/lib/commonjs/components/touchables/GenericTouchableProps.js +6 -0
  57. package/lib/commonjs/components/touchables/GenericTouchableProps.js.map +1 -0
  58. package/lib/commonjs/components/touchables/TouchableHighlight.js.map +1 -1
  59. package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js +1 -1
  60. package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js.map +1 -1
  61. package/lib/commonjs/components/touchables/TouchableNativeFeedbackProps.js +6 -0
  62. package/lib/commonjs/components/touchables/TouchableNativeFeedbackProps.js.map +1 -0
  63. package/lib/commonjs/components/touchables/TouchableOpacity.js.map +1 -1
  64. package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js.map +1 -1
  65. package/lib/commonjs/getShadowNodeFromRef.js +2 -2
  66. package/lib/commonjs/getShadowNodeFromRef.js.map +1 -1
  67. package/lib/commonjs/ghQueueMicrotask.js +3 -4
  68. package/lib/commonjs/ghQueueMicrotask.js.map +1 -1
  69. package/lib/commonjs/handlers/FlingGestureHandler.js.map +1 -1
  70. package/lib/commonjs/handlers/ForceTouchGestureHandler.js.map +1 -1
  71. package/lib/commonjs/handlers/GestureHandlerEventPayload.js +2 -0
  72. package/lib/commonjs/handlers/GestureHandlerEventPayload.js.map +1 -0
  73. package/lib/commonjs/handlers/LongPressGestureHandler.js.map +1 -1
  74. package/lib/commonjs/handlers/NativeViewGestureHandler.js.map +1 -1
  75. package/lib/commonjs/handlers/PanGestureHandler.js.map +1 -1
  76. package/lib/commonjs/handlers/PinchGestureHandler.js.map +1 -1
  77. package/lib/commonjs/handlers/RotationGestureHandler.js.map +1 -1
  78. package/lib/commonjs/handlers/TapGestureHandler.js.map +1 -1
  79. package/lib/commonjs/handlers/createHandler.js +21 -19
  80. package/lib/commonjs/handlers/createHandler.js.map +1 -1
  81. package/lib/commonjs/handlers/createNativeWrapper.js +3 -3
  82. package/lib/commonjs/handlers/createNativeWrapper.js.map +1 -1
  83. package/lib/commonjs/handlers/gestureHandlerCommon.js +0 -86
  84. package/lib/commonjs/handlers/gestureHandlerCommon.js.map +1 -1
  85. package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.js.map +1 -1
  86. package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js +9 -9
  87. package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js.map +1 -1
  88. package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js +2 -2
  89. package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js.map +1 -1
  90. package/lib/commonjs/handlers/gestures/GestureDetector/index.js +1 -1
  91. package/lib/commonjs/handlers/gestures/GestureDetector/index.js.map +1 -1
  92. package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js +21 -31
  93. package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js.map +1 -1
  94. package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js +1 -1
  95. package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js.map +1 -1
  96. package/lib/commonjs/handlers/gestures/GestureDetector/utils.js +5 -5
  97. package/lib/commonjs/handlers/gestures/GestureDetector/utils.js.map +1 -1
  98. package/lib/commonjs/handlers/gestures/flingGesture.js.map +1 -1
  99. package/lib/commonjs/handlers/gestures/forceTouchGesture.js.map +1 -1
  100. package/lib/commonjs/handlers/gestures/gesture.js +7 -7
  101. package/lib/commonjs/handlers/gestures/gesture.js.map +1 -1
  102. package/lib/commonjs/handlers/gestures/gestureComposition.js +5 -5
  103. package/lib/commonjs/handlers/gestures/gestureComposition.js.map +1 -1
  104. package/lib/commonjs/handlers/gestures/gestureStateManager.js +1 -1
  105. package/lib/commonjs/handlers/gestures/gestureStateManager.js.map +1 -1
  106. package/lib/commonjs/handlers/gestures/longPressGesture.js.map +1 -1
  107. package/lib/commonjs/handlers/gestures/nativeGesture.js.map +1 -1
  108. package/lib/commonjs/handlers/gestures/panGesture.js.map +1 -1
  109. package/lib/commonjs/handlers/gestures/pinchGesture.js.map +1 -1
  110. package/lib/commonjs/handlers/gestures/rotationGesture.js.map +1 -1
  111. package/lib/commonjs/handlers/gestures/tapGesture.js.map +1 -1
  112. package/lib/commonjs/handlers/getNextHandlerTag.js +12 -0
  113. package/lib/commonjs/handlers/getNextHandlerTag.js.map +1 -0
  114. package/lib/commonjs/handlers/handlersRegistry.js +0 -6
  115. package/lib/commonjs/handlers/handlersRegistry.js.map +1 -1
  116. package/lib/commonjs/handlers/utils.js +91 -0
  117. package/lib/commonjs/handlers/utils.js.map +1 -0
  118. package/lib/commonjs/index.js +8 -0
  119. package/lib/commonjs/index.js.map +1 -1
  120. package/lib/commonjs/init.js +1 -1
  121. package/lib/commonjs/init.js.map +1 -1
  122. package/lib/commonjs/jestUtils/jestUtils.js +2 -2
  123. package/lib/commonjs/jestUtils/jestUtils.js.map +1 -1
  124. package/lib/commonjs/mocks.js +2 -2
  125. package/lib/commonjs/mocks.js.map +1 -1
  126. package/lib/commonjs/utils.js +1 -1
  127. package/lib/commonjs/utils.js.map +1 -1
  128. package/lib/commonjs/web/Gestures.js +1 -1
  129. package/lib/commonjs/web/Gestures.js.map +1 -1
  130. package/lib/commonjs/web/detectors/RotationGestureDetector.js +1 -1
  131. package/lib/commonjs/web/detectors/RotationGestureDetector.js.map +1 -1
  132. package/lib/commonjs/web/detectors/ScaleGestureDetector.js +4 -4
  133. package/lib/commonjs/web/detectors/ScaleGestureDetector.js.map +1 -1
  134. package/lib/commonjs/web/handlers/FlingGestureHandler.js +1 -1
  135. package/lib/commonjs/web/handlers/FlingGestureHandler.js.map +1 -1
  136. package/lib/commonjs/web/handlers/GestureHandler.js +6 -11
  137. package/lib/commonjs/web/handlers/GestureHandler.js.map +1 -1
  138. package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +1 -1
  139. package/lib/commonjs/web/handlers/NativeViewGestureHandler.js.map +1 -1
  140. package/lib/commonjs/web/handlers/PanGestureHandler.js +1 -1
  141. package/lib/commonjs/web/handlers/PanGestureHandler.js.map +1 -1
  142. package/lib/commonjs/web/handlers/TapGestureHandler.js +1 -1
  143. package/lib/commonjs/web/handlers/TapGestureHandler.js.map +1 -1
  144. package/lib/commonjs/web/tools/EventManager.js +2 -2
  145. package/lib/commonjs/web/tools/EventManager.js.map +1 -1
  146. package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js +4 -11
  147. package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js.map +1 -1
  148. package/lib/commonjs/web/tools/LeastSquareSolver.js +18 -18
  149. package/lib/commonjs/web/tools/LeastSquareSolver.js.map +1 -1
  150. package/lib/commonjs/web/tools/PointerEventManager.js +2 -2
  151. package/lib/commonjs/web/tools/PointerEventManager.js.map +1 -1
  152. package/lib/commonjs/web/tools/PointerTracker.js +1 -1
  153. package/lib/commonjs/web/tools/PointerTracker.js.map +1 -1
  154. package/lib/commonjs/web/tools/TouchEventManager.js +4 -4
  155. package/lib/commonjs/web/tools/TouchEventManager.js.map +1 -1
  156. package/lib/commonjs/web/tools/VelocityTracker.js +6 -6
  157. package/lib/commonjs/web/tools/VelocityTracker.js.map +1 -1
  158. package/lib/commonjs/web_hammer/NodeManager.js +2 -0
  159. package/lib/commonjs/web_hammer/NodeManager.js.map +1 -1
  160. package/lib/module/Directions.js +2 -2
  161. package/lib/module/Directions.js.map +1 -1
  162. package/lib/module/RNGestureHandlerModule.web.js +2 -2
  163. package/lib/module/RNGestureHandlerModule.web.js.map +1 -1
  164. package/lib/module/components/DrawerLayout.js +2 -2
  165. package/lib/module/components/DrawerLayout.js.map +1 -1
  166. package/lib/module/components/GestureButtons.js +3 -3
  167. package/lib/module/components/GestureButtons.js.map +1 -1
  168. package/lib/module/components/GestureButtonsProps.js +2 -0
  169. package/lib/module/components/GestureButtonsProps.js.map +1 -0
  170. package/lib/module/components/GestureComponents.js +1 -1
  171. package/lib/module/components/GestureComponents.js.map +1 -1
  172. package/lib/module/components/GestureHandlerButton.js.map +1 -1
  173. package/lib/module/components/GestureHandlerRootView.android.js +1 -1
  174. package/lib/module/components/GestureHandlerRootView.android.js.map +1 -1
  175. package/lib/module/components/GestureHandlerRootView.js +1 -1
  176. package/lib/module/components/GestureHandlerRootView.js.map +1 -1
  177. package/lib/module/components/Pressable/Pressable.js +309 -0
  178. package/lib/module/components/Pressable/Pressable.js.map +1 -0
  179. package/lib/module/components/Pressable/PressableProps.js +2 -0
  180. package/lib/module/components/Pressable/PressableProps.js.map +1 -0
  181. package/lib/module/components/Pressable/index.js +3 -0
  182. package/lib/module/components/Pressable/index.js.map +1 -0
  183. package/lib/module/components/Pressable/utils.js +120 -0
  184. package/lib/module/components/Pressable/utils.js.map +1 -0
  185. package/lib/module/components/ReanimatedSwipeable.js +293 -0
  186. package/lib/module/components/ReanimatedSwipeable.js.map +1 -0
  187. package/lib/module/components/Swipeable.js +3 -3
  188. package/lib/module/components/Swipeable.js.map +1 -1
  189. package/lib/module/components/touchables/GenericTouchable.js +4 -4
  190. package/lib/module/components/touchables/GenericTouchable.js.map +1 -1
  191. package/lib/module/components/touchables/GenericTouchableProps.js +2 -0
  192. package/lib/module/components/touchables/GenericTouchableProps.js.map +1 -0
  193. package/lib/module/components/touchables/TouchableHighlight.js.map +1 -1
  194. package/lib/module/components/touchables/TouchableNativeFeedback.android.js +1 -1
  195. package/lib/module/components/touchables/TouchableNativeFeedback.android.js.map +1 -1
  196. package/lib/module/components/touchables/TouchableNativeFeedbackProps.js +2 -0
  197. package/lib/module/components/touchables/TouchableNativeFeedbackProps.js.map +1 -0
  198. package/lib/module/components/touchables/TouchableOpacity.js.map +1 -1
  199. package/lib/module/components/touchables/TouchableWithoutFeedback.js.map +1 -1
  200. package/lib/module/getShadowNodeFromRef.js +2 -2
  201. package/lib/module/getShadowNodeFromRef.js.map +1 -1
  202. package/lib/module/ghQueueMicrotask.js +3 -4
  203. package/lib/module/ghQueueMicrotask.js.map +1 -1
  204. package/lib/module/handlers/FlingGestureHandler.js.map +1 -1
  205. package/lib/module/handlers/ForceTouchGestureHandler.js.map +1 -1
  206. package/lib/module/handlers/GestureHandlerEventPayload.js +2 -0
  207. package/lib/module/handlers/GestureHandlerEventPayload.js.map +1 -0
  208. package/lib/module/handlers/LongPressGestureHandler.js.map +1 -1
  209. package/lib/module/handlers/NativeViewGestureHandler.js.map +1 -1
  210. package/lib/module/handlers/PanGestureHandler.js.map +1 -1
  211. package/lib/module/handlers/PinchGestureHandler.js.map +1 -1
  212. package/lib/module/handlers/RotationGestureHandler.js.map +1 -1
  213. package/lib/module/handlers/TapGestureHandler.js.map +1 -1
  214. package/lib/module/handlers/createHandler.js +6 -5
  215. package/lib/module/handlers/createHandler.js.map +1 -1
  216. package/lib/module/handlers/createNativeWrapper.js +3 -3
  217. package/lib/module/handlers/createNativeWrapper.js.map +1 -1
  218. package/lib/module/handlers/gestureHandlerCommon.js +0 -72
  219. package/lib/module/handlers/gestureHandlerCommon.js.map +1 -1
  220. package/lib/module/handlers/gestures/GestureDetector/Wrap.js.map +1 -1
  221. package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js +4 -4
  222. package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js.map +1 -1
  223. package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js +1 -1
  224. package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js.map +1 -1
  225. package/lib/module/handlers/gestures/GestureDetector/index.js +1 -1
  226. package/lib/module/handlers/gestures/GestureDetector/index.js.map +1 -1
  227. package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js +18 -28
  228. package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js.map +1 -1
  229. package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js +1 -1
  230. package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js.map +1 -1
  231. package/lib/module/handlers/gestures/GestureDetector/utils.js +5 -5
  232. package/lib/module/handlers/gestures/GestureDetector/utils.js.map +1 -1
  233. package/lib/module/handlers/gestures/flingGesture.js.map +1 -1
  234. package/lib/module/handlers/gestures/forceTouchGesture.js.map +1 -1
  235. package/lib/module/handlers/gestures/gesture.js +6 -6
  236. package/lib/module/handlers/gestures/gesture.js.map +1 -1
  237. package/lib/module/handlers/gestures/gestureComposition.js +5 -5
  238. package/lib/module/handlers/gestures/gestureComposition.js.map +1 -1
  239. package/lib/module/handlers/gestures/gestureStateManager.js +1 -1
  240. package/lib/module/handlers/gestures/gestureStateManager.js.map +1 -1
  241. package/lib/module/handlers/gestures/longPressGesture.js.map +1 -1
  242. package/lib/module/handlers/gestures/nativeGesture.js.map +1 -1
  243. package/lib/module/handlers/gestures/panGesture.js.map +1 -1
  244. package/lib/module/handlers/gestures/pinchGesture.js.map +1 -1
  245. package/lib/module/handlers/gestures/rotationGesture.js.map +1 -1
  246. package/lib/module/handlers/gestures/tapGesture.js.map +1 -1
  247. package/lib/module/handlers/getNextHandlerTag.js +5 -0
  248. package/lib/module/handlers/getNextHandlerTag.js.map +1 -0
  249. package/lib/module/handlers/handlersRegistry.js +0 -4
  250. package/lib/module/handlers/handlersRegistry.js.map +1 -1
  251. package/lib/module/handlers/utils.js +73 -0
  252. package/lib/module/handlers/utils.js.map +1 -0
  253. package/lib/module/index.js +1 -0
  254. package/lib/module/index.js.map +1 -1
  255. package/lib/module/init.js +1 -1
  256. package/lib/module/init.js.map +1 -1
  257. package/lib/module/jestUtils/jestUtils.js +2 -2
  258. package/lib/module/jestUtils/jestUtils.js.map +1 -1
  259. package/lib/module/mocks.js +2 -2
  260. package/lib/module/mocks.js.map +1 -1
  261. package/lib/module/utils.js +1 -1
  262. package/lib/module/utils.js.map +1 -1
  263. package/lib/module/web/Gestures.js +1 -1
  264. package/lib/module/web/Gestures.js.map +1 -1
  265. package/lib/module/web/detectors/RotationGestureDetector.js +1 -1
  266. package/lib/module/web/detectors/RotationGestureDetector.js.map +1 -1
  267. package/lib/module/web/detectors/ScaleGestureDetector.js +4 -4
  268. package/lib/module/web/detectors/ScaleGestureDetector.js.map +1 -1
  269. package/lib/module/web/handlers/FlingGestureHandler.js +1 -1
  270. package/lib/module/web/handlers/FlingGestureHandler.js.map +1 -1
  271. package/lib/module/web/handlers/GestureHandler.js +6 -11
  272. package/lib/module/web/handlers/GestureHandler.js.map +1 -1
  273. package/lib/module/web/handlers/NativeViewGestureHandler.js +1 -1
  274. package/lib/module/web/handlers/NativeViewGestureHandler.js.map +1 -1
  275. package/lib/module/web/handlers/PanGestureHandler.js +1 -1
  276. package/lib/module/web/handlers/PanGestureHandler.js.map +1 -1
  277. package/lib/module/web/handlers/TapGestureHandler.js +1 -1
  278. package/lib/module/web/handlers/TapGestureHandler.js.map +1 -1
  279. package/lib/module/web/tools/EventManager.js +2 -2
  280. package/lib/module/web/tools/EventManager.js.map +1 -1
  281. package/lib/module/web/tools/GestureHandlerWebDelegate.js +4 -11
  282. package/lib/module/web/tools/GestureHandlerWebDelegate.js.map +1 -1
  283. package/lib/module/web/tools/LeastSquareSolver.js +18 -18
  284. package/lib/module/web/tools/LeastSquareSolver.js.map +1 -1
  285. package/lib/module/web/tools/PointerEventManager.js +2 -2
  286. package/lib/module/web/tools/PointerEventManager.js.map +1 -1
  287. package/lib/module/web/tools/PointerTracker.js +1 -1
  288. package/lib/module/web/tools/PointerTracker.js.map +1 -1
  289. package/lib/module/web/tools/TouchEventManager.js +4 -4
  290. package/lib/module/web/tools/TouchEventManager.js.map +1 -1
  291. package/lib/module/web/tools/VelocityTracker.js +6 -6
  292. package/lib/module/web/tools/VelocityTracker.js.map +1 -1
  293. package/lib/module/web_hammer/NodeManager.js +1 -1
  294. package/lib/module/web_hammer/NodeManager.js.map +1 -1
  295. package/lib/typescript/RNGestureHandlerModule.web.d.ts +1 -1
  296. package/lib/typescript/components/GestureButtons.d.ts +2 -85
  297. package/lib/typescript/components/GestureButtonsProps.d.ts +99 -0
  298. package/lib/typescript/components/GestureHandlerButton.d.ts +1 -1
  299. package/lib/typescript/components/Pressable/Pressable.d.ts +3 -0
  300. package/lib/typescript/components/Pressable/PressableProps.d.ts +116 -0
  301. package/lib/typescript/components/Pressable/index.d.ts +2 -0
  302. package/lib/typescript/components/Pressable/utils.d.ts +15 -0
  303. package/lib/typescript/components/ReanimatedSwipeable.d.ts +125 -0
  304. package/lib/typescript/components/touchables/GenericTouchable.d.ts +4 -16
  305. package/lib/typescript/components/touchables/GenericTouchableProps.d.ts +14 -0
  306. package/lib/typescript/components/touchables/TouchableHighlight.d.ts +1 -1
  307. package/lib/typescript/components/touchables/TouchableNativeFeedback.android.d.ts +2 -9
  308. package/lib/typescript/components/touchables/TouchableNativeFeedbackProps.d.ts +9 -0
  309. package/lib/typescript/components/touchables/TouchableOpacity.d.ts +1 -1
  310. package/lib/typescript/components/touchables/TouchableWithoutFeedback.d.ts +2 -1
  311. package/lib/typescript/handlers/FlingGestureHandler.d.ts +2 -6
  312. package/lib/typescript/handlers/ForceTouchGestureHandler.d.ts +1 -10
  313. package/lib/typescript/handlers/GestureHandlerEventPayload.d.ts +159 -0
  314. package/lib/typescript/handlers/LongPressGestureHandler.d.ts +2 -35
  315. package/lib/typescript/handlers/NativeViewGestureHandler.d.ts +2 -6
  316. package/lib/typescript/handlers/PanGestureHandler.d.ts +3 -51
  317. package/lib/typescript/handlers/PinchGestureHandler.d.ts +2 -23
  318. package/lib/typescript/handlers/RotationGestureHandler.d.ts +2 -23
  319. package/lib/typescript/handlers/TapGestureHandler.d.ts +2 -6
  320. package/lib/typescript/handlers/gestureHandlerCommon.d.ts +0 -5
  321. package/lib/typescript/handlers/gestureHandlerTypesCompat.d.ts +10 -9
  322. package/lib/typescript/handlers/gestures/GestureDetector/types.d.ts +1 -0
  323. package/lib/typescript/handlers/gestures/GestureDetector/utils.d.ts +1 -0
  324. package/lib/typescript/handlers/gestures/flingGesture.d.ts +2 -1
  325. package/lib/typescript/handlers/gestures/forceTouchGesture.d.ts +2 -1
  326. package/lib/typescript/handlers/gestures/gesture.d.ts +2 -8
  327. package/lib/typescript/handlers/gestures/longPressGesture.d.ts +2 -1
  328. package/lib/typescript/handlers/gestures/nativeGesture.d.ts +2 -1
  329. package/lib/typescript/handlers/gestures/panGesture.d.ts +2 -1
  330. package/lib/typescript/handlers/gestures/pinchGesture.d.ts +1 -1
  331. package/lib/typescript/handlers/gestures/rotationGesture.d.ts +1 -1
  332. package/lib/typescript/handlers/gestures/tapGesture.d.ts +2 -1
  333. package/lib/typescript/handlers/getNextHandlerTag.d.ts +1 -0
  334. package/lib/typescript/handlers/handlersRegistry.d.ts +1 -2
  335. package/lib/typescript/handlers/utils.d.ts +6 -0
  336. package/lib/typescript/index.d.ts +12 -9
  337. package/lib/typescript/jestUtils/jestUtils.d.ts +9 -7
  338. package/lib/typescript/web/handlers/FlingGestureHandler.d.ts +1 -0
  339. package/lib/typescript/web/handlers/GestureHandler.d.ts +1 -0
  340. package/lib/typescript/web/handlers/HoverGestureHandler.d.ts +1 -0
  341. package/lib/typescript/web/handlers/LongPressGestureHandler.d.ts +1 -0
  342. package/lib/typescript/web/handlers/ManualGestureHandler.d.ts +1 -0
  343. package/lib/typescript/web/handlers/NativeViewGestureHandler.d.ts +1 -0
  344. package/lib/typescript/web/handlers/PanGestureHandler.d.ts +1 -0
  345. package/lib/typescript/web/handlers/PinchGestureHandler.d.ts +1 -0
  346. package/lib/typescript/web/handlers/RotationGestureHandler.d.ts +1 -0
  347. package/lib/typescript/web/handlers/TapGestureHandler.d.ts +1 -0
  348. package/lib/typescript/web_hammer/NodeManager.d.ts +4 -5
  349. package/package.json +14 -16
  350. package/src/Directions.ts +2 -2
  351. package/src/RNGestureHandlerModule.web.ts +2 -2
  352. package/src/components/DrawerLayout.tsx +7 -9
  353. package/src/components/GestureButtons.tsx +13 -123
  354. package/src/components/GestureButtonsProps.ts +115 -0
  355. package/src/components/GestureComponents.tsx +1 -1
  356. package/src/components/GestureHandlerButton.tsx +1 -1
  357. package/src/components/GestureHandlerRootView.android.tsx +1 -1
  358. package/src/components/GestureHandlerRootView.tsx +1 -1
  359. package/src/components/Pressable/Pressable.tsx +398 -0
  360. package/src/components/Pressable/PressableProps.tsx +149 -0
  361. package/src/components/Pressable/index.ts +2 -0
  362. package/src/components/Pressable/utils.ts +180 -0
  363. package/src/components/ReanimatedSwipeable.tsx +629 -0
  364. package/src/components/Swipeable.tsx +6 -6
  365. package/src/components/touchables/GenericTouchable.tsx +9 -36
  366. package/src/components/touchables/GenericTouchableProps.ts +26 -0
  367. package/src/components/touchables/TouchableHighlight.tsx +2 -4
  368. package/src/components/touchables/TouchableNativeFeedback.android.tsx +7 -17
  369. package/src/components/touchables/TouchableNativeFeedbackProps.tsx +12 -0
  370. package/src/components/touchables/TouchableOpacity.tsx +3 -5
  371. package/src/components/touchables/TouchableWithoutFeedback.tsx +2 -1
  372. package/src/getShadowNodeFromRef.ts +2 -2
  373. package/src/ghQueueMicrotask.ts +7 -4
  374. package/src/handlers/FlingGestureHandler.ts +1 -6
  375. package/src/handlers/ForceTouchGestureHandler.ts +1 -12
  376. package/src/handlers/GestureHandlerEventPayload.ts +184 -0
  377. package/src/handlers/LongPressGestureHandler.ts +1 -40
  378. package/src/handlers/NativeViewGestureHandler.ts +1 -7
  379. package/src/handlers/PanGestureHandler.ts +1 -58
  380. package/src/handlers/PinchGestureHandler.ts +1 -27
  381. package/src/handlers/RotationGestureHandler.ts +1 -27
  382. package/src/handlers/TapGestureHandler.ts +1 -6
  383. package/src/handlers/createHandler.tsx +6 -11
  384. package/src/handlers/createNativeWrapper.tsx +3 -3
  385. package/src/handlers/gestureHandlerCommon.ts +3 -79
  386. package/src/handlers/gestureHandlerTypesCompat.ts +16 -30
  387. package/src/handlers/gestures/GestureDetector/Wrap.tsx +1 -1
  388. package/src/handlers/gestures/GestureDetector/attachHandlers.ts +4 -7
  389. package/src/handlers/gestures/GestureDetector/dropHandlers.ts +1 -1
  390. package/src/handlers/gestures/GestureDetector/index.tsx +1 -1
  391. package/src/handlers/gestures/GestureDetector/updateHandlers.ts +20 -30
  392. package/src/handlers/gestures/GestureDetector/useDetectorUpdater.ts +1 -1
  393. package/src/handlers/gestures/GestureDetector/utils.ts +5 -5
  394. package/src/handlers/gestures/flingGesture.ts +2 -4
  395. package/src/handlers/gestures/forceTouchGesture.ts +2 -4
  396. package/src/handlers/gestures/gesture.ts +17 -15
  397. package/src/handlers/gestures/gestureComposition.ts +5 -5
  398. package/src/handlers/gestures/gestureStateManager.ts +1 -1
  399. package/src/handlers/gestures/longPressGesture.ts +2 -4
  400. package/src/handlers/gestures/nativeGesture.ts +2 -4
  401. package/src/handlers/gestures/panGesture.ts +2 -4
  402. package/src/handlers/gestures/pinchGesture.ts +1 -1
  403. package/src/handlers/gestures/rotationGesture.ts +1 -1
  404. package/src/handlers/gestures/tapGesture.ts +2 -4
  405. package/src/handlers/getNextHandlerTag.ts +5 -0
  406. package/src/handlers/handlersRegistry.ts +0 -6
  407. package/src/handlers/utils.ts +75 -0
  408. package/src/index.ts +25 -36
  409. package/src/init.ts +1 -1
  410. package/src/jestUtils/jestUtils.ts +12 -10
  411. package/src/mocks.ts +2 -2
  412. package/src/utils.ts +1 -1
  413. package/src/web/Gestures.ts +1 -1
  414. package/src/web/detectors/RotationGestureDetector.ts +1 -1
  415. package/src/web/detectors/ScaleGestureDetector.ts +4 -4
  416. package/src/web/handlers/FlingGestureHandler.ts +1 -1
  417. package/src/web/handlers/GestureHandler.ts +8 -14
  418. package/src/web/handlers/NativeViewGestureHandler.ts +3 -3
  419. package/src/web/handlers/PanGestureHandler.ts +1 -1
  420. package/src/web/handlers/TapGestureHandler.ts +1 -1
  421. package/src/web/tools/EventManager.ts +2 -2
  422. package/src/web/tools/GestureHandlerWebDelegate.ts +3 -8
  423. package/src/web/tools/LeastSquareSolver.ts +18 -18
  424. package/src/web/tools/PointerEventManager.ts +2 -2
  425. package/src/web/tools/PointerTracker.ts +2 -1
  426. package/src/web/tools/TouchEventManager.ts +4 -4
  427. package/src/web/tools/VelocityTracker.ts +6 -6
  428. package/src/web_hammer/NodeManager.ts +2 -11
@@ -1,13 +1,14 @@
1
- import { BaseButtonProps, BorderlessButtonProps, RawButtonProps, RectButtonProps } from '../components/GestureButtons';
1
+ import type { BaseButtonProps, BorderlessButtonProps, RawButtonProps, RectButtonProps } from '../components/GestureButtonsProps';
2
2
  import { GestureEvent, GestureEventPayload, HandlerStateChangeEvent, HandlerStateChangeEventPayload } from './gestureHandlerCommon';
3
- import { FlingGestureHandlerEventPayload, FlingGestureHandlerProps } from './FlingGestureHandler';
4
- import { ForceTouchGestureHandlerEventPayload, ForceTouchGestureHandlerProps } from './ForceTouchGestureHandler';
5
- import { LongPressGestureHandlerEventPayload, LongPressGestureHandlerProps } from './LongPressGestureHandler';
6
- import { PanGestureHandlerEventPayload, PanGestureHandlerProps } from './PanGestureHandler';
7
- import { PinchGestureHandlerEventPayload, PinchGestureHandlerProps } from './PinchGestureHandler';
8
- import { RotationGestureHandlerEventPayload, RotationGestureHandlerProps } from './RotationGestureHandler';
9
- import { TapGestureHandlerEventPayload, TapGestureHandlerProps } from './TapGestureHandler';
10
- import { NativeViewGestureHandlerPayload, NativeViewGestureHandlerProps } from './NativeViewGestureHandler';
3
+ import type { FlingGestureHandlerProps } from './FlingGestureHandler';
4
+ import type { FlingGestureHandlerEventPayload, ForceTouchGestureHandlerEventPayload, LongPressGestureHandlerEventPayload, PanGestureHandlerEventPayload, PinchGestureHandlerEventPayload, RotationGestureHandlerEventPayload, TapGestureHandlerEventPayload, NativeViewGestureHandlerPayload } from './GestureHandlerEventPayload';
5
+ import type { ForceTouchGestureHandlerProps } from './ForceTouchGestureHandler';
6
+ import type { LongPressGestureHandlerProps } from './LongPressGestureHandler';
7
+ import type { PanGestureHandlerProps } from './PanGestureHandler';
8
+ import type { PinchGestureHandlerProps } from './PinchGestureHandler';
9
+ import type { RotationGestureHandlerProps } from './RotationGestureHandler';
10
+ import type { TapGestureHandlerProps } from './TapGestureHandler';
11
+ import type { NativeViewGestureHandlerProps } from './NativeViewGestureHandler';
11
12
  export type GestureHandlerGestureEventNativeEvent = GestureEventPayload;
12
13
  export type GestureHandlerStateChangeNativeEvent = HandlerStateChangeEventPayload;
13
14
  export type GestureHandlerGestureEvent = GestureEvent;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { GestureType, HandlerCallbacks } from '../gesture';
2
3
  import { SharedValue } from '../reanimatedWrapper';
3
4
  import { HandlerStateChangeEvent } from '../../gestureHandlerCommon';
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { GestureType } from '../gesture';
2
3
  import { WebEventHandler } from './types';
3
4
  export declare const ALLOWED_PROPS: string[];
@@ -1,5 +1,6 @@
1
1
  import { BaseGesture, BaseGestureConfig } from './gesture';
2
- import { FlingGestureConfig, FlingGestureHandlerEventPayload } from '../FlingGestureHandler';
2
+ import { FlingGestureConfig } from '../FlingGestureHandler';
3
+ import type { FlingGestureHandlerEventPayload } from '../GestureHandlerEventPayload';
3
4
  export declare class FlingGesture extends BaseGesture<FlingGestureHandlerEventPayload> {
4
5
  config: BaseGestureConfig & FlingGestureConfig;
5
6
  constructor();
@@ -1,5 +1,6 @@
1
1
  import { BaseGestureConfig, ContinousBaseGesture } from './gesture';
2
- import { ForceTouchGestureConfig, ForceTouchGestureHandlerEventPayload } from '../ForceTouchGestureHandler';
2
+ import { ForceTouchGestureConfig } from '../ForceTouchGestureHandler';
3
+ import type { ForceTouchGestureHandlerEventPayload } from '../GestureHandlerEventPayload';
3
4
  import { GestureUpdateEvent } from '../gestureHandlerCommon';
4
5
  export type ForceTouchGestureChangeEventPayload = {
5
6
  forceChange: number;
@@ -1,13 +1,7 @@
1
- import { FlingGestureHandlerEventPayload } from '../FlingGestureHandler';
2
- import { ForceTouchGestureHandlerEventPayload } from '../ForceTouchGestureHandler';
1
+ /// <reference types="react" />
3
2
  import { HitSlop, CommonGestureConfig, GestureTouchEvent, GestureStateChangeEvent, GestureUpdateEvent, ActiveCursor, MouseButton } from '../gestureHandlerCommon';
4
3
  import { GestureStateManagerType } from './gestureStateManager';
5
- import { LongPressGestureHandlerEventPayload } from '../LongPressGestureHandler';
6
- import { PanGestureHandlerEventPayload } from '../PanGestureHandler';
7
- import { PinchGestureHandlerEventPayload } from '../PinchGestureHandler';
8
- import { RotationGestureHandlerEventPayload } from '../RotationGestureHandler';
9
- import { TapGestureHandlerEventPayload } from '../TapGestureHandler';
10
- import { NativeViewGestureHandlerPayload } from '../NativeViewGestureHandler';
4
+ import type { FlingGestureHandlerEventPayload, ForceTouchGestureHandlerEventPayload, LongPressGestureHandlerEventPayload, PanGestureHandlerEventPayload, PinchGestureHandlerEventPayload, RotationGestureHandlerEventPayload, TapGestureHandlerEventPayload, NativeViewGestureHandlerPayload } from '../GestureHandlerEventPayload';
11
5
  export type GestureType = BaseGesture<Record<string, unknown>> | BaseGesture<Record<string, never>> | BaseGesture<TapGestureHandlerEventPayload> | BaseGesture<PanGestureHandlerEventPayload> | BaseGesture<LongPressGestureHandlerEventPayload> | BaseGesture<RotationGestureHandlerEventPayload> | BaseGesture<PinchGestureHandlerEventPayload> | BaseGesture<FlingGestureHandlerEventPayload> | BaseGesture<ForceTouchGestureHandlerEventPayload> | BaseGesture<NativeViewGestureHandlerPayload>;
12
6
  export type GestureRef = number | GestureType | React.RefObject<GestureType | undefined> | React.RefObject<React.ComponentType | undefined>;
13
7
  export interface BaseGestureConfig extends CommonGestureConfig, Record<string, unknown> {
@@ -1,5 +1,6 @@
1
1
  import { BaseGesture, BaseGestureConfig } from './gesture';
2
- import { LongPressGestureConfig, LongPressGestureHandlerEventPayload } from '../LongPressGestureHandler';
2
+ import { LongPressGestureConfig } from '../LongPressGestureHandler';
3
+ import type { LongPressGestureHandlerEventPayload } from '../GestureHandlerEventPayload';
3
4
  export declare class LongPressGesture extends BaseGesture<LongPressGestureHandlerEventPayload> {
4
5
  config: BaseGestureConfig & LongPressGestureConfig;
5
6
  constructor();
@@ -1,5 +1,6 @@
1
1
  import { BaseGestureConfig, BaseGesture } from './gesture';
2
- import { NativeViewGestureConfig, NativeViewGestureHandlerPayload } from '../NativeViewGestureHandler';
2
+ import { NativeViewGestureConfig } from '../NativeViewGestureHandler';
3
+ import type { NativeViewGestureHandlerPayload } from '../GestureHandlerEventPayload';
3
4
  export declare class NativeGesture extends BaseGesture<NativeViewGestureHandlerPayload> {
4
5
  config: BaseGestureConfig & NativeViewGestureConfig;
5
6
  constructor();
@@ -1,6 +1,7 @@
1
1
  import { BaseGestureConfig, ContinousBaseGesture } from './gesture';
2
2
  import { GestureUpdateEvent } from '../gestureHandlerCommon';
3
- import { PanGestureConfig, PanGestureHandlerEventPayload } from '../PanGestureHandler';
3
+ import { PanGestureConfig } from '../PanGestureHandler';
4
+ import type { PanGestureHandlerEventPayload } from '../GestureHandlerEventPayload';
4
5
  export type PanGestureChangeEventPayload = {
5
6
  changeX: number;
6
7
  changeY: number;
@@ -1,5 +1,5 @@
1
1
  import { ContinousBaseGesture } from './gesture';
2
- import { PinchGestureHandlerEventPayload } from '../PinchGestureHandler';
2
+ import type { PinchGestureHandlerEventPayload } from '../GestureHandlerEventPayload';
3
3
  import { GestureUpdateEvent } from '../gestureHandlerCommon';
4
4
  export type PinchGestureChangeEventPayload = {
5
5
  scaleChange: number;
@@ -1,5 +1,5 @@
1
1
  import { ContinousBaseGesture } from './gesture';
2
- import { RotationGestureHandlerEventPayload } from '../RotationGestureHandler';
2
+ import type { RotationGestureHandlerEventPayload } from '../GestureHandlerEventPayload';
3
3
  import { GestureUpdateEvent } from '../gestureHandlerCommon';
4
4
  type RotationGestureChangeEventPayload = {
5
5
  rotationChange: number;
@@ -1,5 +1,6 @@
1
1
  import { BaseGestureConfig, BaseGesture } from './gesture';
2
- import { TapGestureConfig, TapGestureHandlerEventPayload } from '../TapGestureHandler';
2
+ import { TapGestureConfig } from '../TapGestureHandler';
3
+ import type { TapGestureHandlerEventPayload } from '../GestureHandlerEventPayload';
3
4
  export declare class TapGesture extends BaseGesture<TapGestureHandlerEventPayload> {
4
5
  config: BaseGestureConfig & TapGestureConfig;
5
6
  constructor();
@@ -0,0 +1 @@
1
+ export declare function getNextHandlerTag(): number;
@@ -1,13 +1,12 @@
1
1
  import { GestureType } from './gestures/gesture';
2
2
  import { GestureEvent, HandlerStateChangeEvent } from './gestureHandlerCommon';
3
3
  export declare const handlerIDToTag: Record<string, number>;
4
- export declare function getNextHandlerTag(): number;
5
4
  export declare function registerHandler(handlerTag: number, handler: GestureType, testID?: string): void;
6
5
  export declare function registerOldGestureHandler(handlerTag: number, handler: GestureHandlerCallbacks): void;
7
6
  export declare function unregisterHandler(handlerTag: number, testID?: string): void;
8
7
  export declare function findHandler(handlerTag: number): GestureType | undefined;
9
8
  export declare function findOldGestureHandler(handlerTag: number): GestureHandlerCallbacks | undefined;
10
- export declare function findHandlerByTestID(testID: string): import("./gestures/gesture").BaseGesture<Record<string, unknown>> | import("./gestures/gesture").BaseGesture<Record<string, never>> | import("./gestures/gesture").BaseGesture<import("./TapGestureHandler").TapGestureHandlerEventPayload> | import("./gestures/gesture").BaseGesture<import("./PanGestureHandler").PanGestureHandlerEventPayload> | import("./gestures/gesture").BaseGesture<import("./LongPressGestureHandler").LongPressGestureHandlerEventPayload> | import("./gestures/gesture").BaseGesture<import("./RotationGestureHandler").RotationGestureHandlerEventPayload> | import("./gestures/gesture").BaseGesture<import("./PinchGestureHandler").PinchGestureHandlerEventPayload> | import("./gestures/gesture").BaseGesture<import("./ForceTouchGestureHandler").ForceTouchGestureHandlerEventPayload> | import("./gestures/gesture").BaseGesture<import("./NativeViewGestureHandler").NativeViewGestureHandlerPayload> | null;
9
+ export declare function findHandlerByTestID(testID: string): import("./gestures/gesture").BaseGesture<Record<string, unknown>> | import("./gestures/gesture").BaseGesture<Record<string, never>> | import("./gestures/gesture").BaseGesture<import("./GestureHandlerEventPayload").TapGestureHandlerEventPayload> | import("./gestures/gesture").BaseGesture<import("./GestureHandlerEventPayload").PanGestureHandlerEventPayload> | import("./gestures/gesture").BaseGesture<import("./GestureHandlerEventPayload").LongPressGestureHandlerEventPayload> | import("./gestures/gesture").BaseGesture<import("./GestureHandlerEventPayload").RotationGestureHandlerEventPayload> | import("./gestures/gesture").BaseGesture<import("./GestureHandlerEventPayload").PinchGestureHandlerEventPayload> | import("./gestures/gesture").BaseGesture<import("./GestureHandlerEventPayload").ForceTouchGestureHandlerEventPayload> | import("./gestures/gesture").BaseGesture<import("./GestureHandlerEventPayload").NativeViewGestureHandlerPayload> | null;
11
10
  export interface GestureHandlerCallbacks {
12
11
  onGestureEvent: (event: GestureEvent<any>) => void;
13
12
  onGestureStateChange: (event: HandlerStateChangeEvent<any>) => void;
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ export declare function filterConfig(props: Record<string, unknown>, validProps: string[], defaults?: Record<string, unknown>): {
3
+ [x: string]: unknown;
4
+ };
5
+ export declare function findNodeHandle(node: null | number | React.Component<any, any> | React.ComponentClass<any>): null | number | React.Component<any, any> | React.ComponentClass<any>;
6
+ export declare function scheduleFlushOperations(): void;
@@ -6,16 +6,17 @@ export { default as GestureHandlerRootView } from './components/GestureHandlerRo
6
6
  export type { GestureEvent, HandlerStateChangeEvent, GestureEventPayload, HandlerStateChangeEventPayload, GestureTouchEvent, TouchData, GestureUpdateEvent, GestureStateChangeEvent, } from './handlers/gestureHandlerCommon';
7
7
  export { MouseButton } from './handlers/gestureHandlerCommon';
8
8
  export type { GestureType } from './handlers/gestures/gesture';
9
- export type { TapGestureHandlerEventPayload, TapGestureHandlerProps, } from './handlers/TapGestureHandler';
10
- export type { ForceTouchGestureHandlerEventPayload, ForceTouchGestureHandlerProps, } from './handlers/ForceTouchGestureHandler';
9
+ export type { TapGestureHandlerEventPayload, ForceTouchGestureHandlerEventPayload, LongPressGestureHandlerEventPayload, PanGestureHandlerEventPayload, PinchGestureHandlerEventPayload, RotationGestureHandlerEventPayload, NativeViewGestureHandlerPayload, FlingGestureHandlerEventPayload, } from './handlers/GestureHandlerEventPayload';
10
+ export type { TapGestureHandlerProps } from './handlers/TapGestureHandler';
11
+ export type { ForceTouchGestureHandlerProps } from './handlers/ForceTouchGestureHandler';
11
12
  export type { ForceTouchGestureChangeEventPayload } from './handlers/gestures/forceTouchGesture';
12
- export type { LongPressGestureHandlerEventPayload, LongPressGestureHandlerProps, } from './handlers/LongPressGestureHandler';
13
- export type { PanGestureHandlerEventPayload, PanGestureHandlerProps, } from './handlers/PanGestureHandler';
13
+ export type { LongPressGestureHandlerProps } from './handlers/LongPressGestureHandler';
14
+ export type { PanGestureHandlerProps } from './handlers/PanGestureHandler';
14
15
  export type { PanGestureChangeEventPayload } from './handlers/gestures/panGesture';
15
- export type { PinchGestureHandlerEventPayload, PinchGestureHandlerProps, } from './handlers/PinchGestureHandler';
16
+ export type { PinchGestureHandlerProps } from './handlers/PinchGestureHandler';
16
17
  export type { PinchGestureChangeEventPayload } from './handlers/gestures/pinchGesture';
17
- export type { RotationGestureHandlerEventPayload, RotationGestureHandlerProps, } from './handlers/RotationGestureHandler';
18
- export type { FlingGestureHandlerEventPayload, FlingGestureHandlerProps, } from './handlers/FlingGestureHandler';
18
+ export type { RotationGestureHandlerProps } from './handlers/RotationGestureHandler';
19
+ export type { FlingGestureHandlerProps } from './handlers/FlingGestureHandler';
19
20
  export { TapGestureHandler } from './handlers/TapGestureHandler';
20
21
  export { ForceTouchGestureHandler } from './handlers/ForceTouchGestureHandler';
21
22
  export { LongPressGestureHandler } from './handlers/LongPressGestureHandler';
@@ -24,7 +25,7 @@ export { PinchGestureHandler } from './handlers/PinchGestureHandler';
24
25
  export { RotationGestureHandler } from './handlers/RotationGestureHandler';
25
26
  export { FlingGestureHandler } from './handlers/FlingGestureHandler';
26
27
  export { default as createNativeWrapper } from './handlers/createNativeWrapper';
27
- export type { NativeViewGestureHandlerPayload, NativeViewGestureHandlerProps, } from './handlers/NativeViewGestureHandler';
28
+ export type { NativeViewGestureHandlerProps } from './handlers/NativeViewGestureHandler';
28
29
  export { GestureDetector } from './handlers/gestures/GestureDetector';
29
30
  export { GestureObjects as Gesture } from './handlers/gestures/gestureObjects';
30
31
  export type { TapGestureType as TapGesture } from './handlers/gestures/tapGesture';
@@ -40,7 +41,7 @@ export type { HoverGestureType as HoverGesture } from './handlers/gestures/hover
40
41
  export type { ComposedGestureType as ComposedGesture, RaceGestureType as RaceGesture, SimultaneousGestureType as SimultaneousGesture, ExclusiveGestureType as ExclusiveGesture, } from './handlers/gestures/gestureComposition';
41
42
  export type { GestureStateManagerType as GestureStateManager } from './handlers/gestures/gestureStateManager';
42
43
  export { NativeViewGestureHandler } from './handlers/NativeViewGestureHandler';
43
- export type { RawButtonProps, BaseButtonProps, RectButtonProps, BorderlessButtonProps, } from './components/GestureButtons';
44
+ export type { RawButtonProps, BaseButtonProps, RectButtonProps, BorderlessButtonProps, } from './components/GestureButtonsProps';
44
45
  export { RawButton, BaseButton, RectButton, BorderlessButton, PureNativeButton, } from './components/GestureButtons';
45
46
  export type { TouchableHighlightProps, TouchableOpacityProps, TouchableWithoutFeedbackProps, } from './components/touchables';
46
47
  export { TouchableHighlight, TouchableNativeFeedback, TouchableOpacity, TouchableWithoutFeedback, } from './components/touchables';
@@ -49,6 +50,8 @@ export { HoverEffect } from './handlers/gestures/hoverGesture';
49
50
  export type { GestureHandlerGestureEvent, GestureHandlerStateChangeEvent, GestureHandlerGestureEventNativeEvent, GestureHandlerStateChangeNativeEvent, NativeViewGestureHandlerGestureEvent, NativeViewGestureHandlerStateChangeEvent, TapGestureHandlerGestureEvent, TapGestureHandlerStateChangeEvent, ForceTouchGestureHandlerGestureEvent, ForceTouchGestureHandlerStateChangeEvent, LongPressGestureHandlerGestureEvent, LongPressGestureHandlerStateChangeEvent, PanGestureHandlerGestureEvent, PanGestureHandlerStateChangeEvent, PinchGestureHandlerGestureEvent, PinchGestureHandlerStateChangeEvent, RotationGestureHandlerGestureEvent, RotationGestureHandlerStateChangeEvent, FlingGestureHandlerGestureEvent, FlingGestureHandlerStateChangeEvent, NativeViewGestureHandlerProperties, TapGestureHandlerProperties, LongPressGestureHandlerProperties, PanGestureHandlerProperties, PinchGestureHandlerProperties, RotationGestureHandlerProperties, FlingGestureHandlerProperties, ForceTouchGestureHandlerProperties, RawButtonProperties, BaseButtonProperties, RectButtonProperties, BorderlessButtonProperties, } from './handlers/gestureHandlerTypesCompat';
50
51
  export type { SwipeableProps } from './components/Swipeable';
51
52
  export { default as Swipeable } from './components/Swipeable';
53
+ export type { PressableProps } from './components/Pressable';
54
+ export { default as Pressable } from './components/Pressable';
52
55
  export type { DrawerLayoutProps, DrawerPosition, DrawerState, DrawerType, DrawerLockMode, DrawerKeyboardDismissMode, } from './components/DrawerLayout';
53
56
  export { default as DrawerLayout } from './components/DrawerLayout';
54
57
  export { enableExperimentalWebImplementation, enableLegacyWebImplementation, } from './EnableNewWebImplementation';
@@ -1,6 +1,7 @@
1
+ /// <reference types="react" />
1
2
  import { ReactTestInstance } from 'react-test-renderer';
2
3
  import { FlingGestureHandler } from '../handlers/FlingGestureHandler';
3
- import { ForceTouchGestureHandler, ForceTouchGestureHandlerEventPayload } from '../handlers/ForceTouchGestureHandler';
4
+ import { ForceTouchGestureHandler } from '../handlers/ForceTouchGestureHandler';
4
5
  import { BaseGestureHandlerProps, GestureEvent, HandlerStateChangeEvent } from '../handlers/gestureHandlerCommon';
5
6
  import { FlingGesture } from '../handlers/gestures/flingGesture';
6
7
  import { ForceTouchGesture } from '../handlers/gestures/forceTouchGesture';
@@ -11,12 +12,13 @@ import { PanGesture } from '../handlers/gestures/panGesture';
11
12
  import { PinchGesture } from '../handlers/gestures/pinchGesture';
12
13
  import { RotationGesture } from '../handlers/gestures/rotationGesture';
13
14
  import { TapGesture } from '../handlers/gestures/tapGesture';
14
- import { LongPressGestureHandler, LongPressGestureHandlerEventPayload } from '../handlers/LongPressGestureHandler';
15
- import { NativeViewGestureHandler, NativeViewGestureHandlerPayload } from '../handlers/NativeViewGestureHandler';
16
- import { PanGestureHandler, PanGestureHandlerEventPayload } from '../handlers/PanGestureHandler';
17
- import { PinchGestureHandler, PinchGestureHandlerEventPayload } from '../handlers/PinchGestureHandler';
18
- import { RotationGestureHandler, RotationGestureHandlerEventPayload } from '../handlers/RotationGestureHandler';
19
- import { TapGestureHandler, TapGestureHandlerEventPayload } from '../handlers/TapGestureHandler';
15
+ import { LongPressGestureHandler } from '../handlers/LongPressGestureHandler';
16
+ import type { ForceTouchGestureHandlerEventPayload, LongPressGestureHandlerEventPayload, NativeViewGestureHandlerPayload, PanGestureHandlerEventPayload, PinchGestureHandlerEventPayload, RotationGestureHandlerEventPayload, TapGestureHandlerEventPayload } from '../handlers/GestureHandlerEventPayload';
17
+ import { NativeViewGestureHandler } from '../handlers/NativeViewGestureHandler';
18
+ import { PanGestureHandler } from '../handlers/PanGestureHandler';
19
+ import { PinchGestureHandler } from '../handlers/PinchGestureHandler';
20
+ import { RotationGestureHandler } from '../handlers/RotationGestureHandler';
21
+ import { TapGestureHandler } from '../handlers/TapGestureHandler';
20
22
  type GestureHandlerTestEvent<TEventPayload extends Record<string, unknown> = Record<string, unknown>> = (GestureEvent<TEventPayload> | HandlerStateChangeEvent<TEventPayload>)['nativeEvent'];
21
23
  type AllGestures = TapGesture | PanGesture | LongPressGesture | RotationGesture | PinchGesture | FlingGesture | ForceTouchGesture | NativeGesture;
22
24
  type AllHandlers = TapGestureHandler | PanGestureHandler | LongPressGestureHandler | RotationGestureHandler | PinchGestureHandler | FlingGestureHandler | ForceTouchGestureHandler | NativeViewGestureHandler;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { AdaptedEvent, Config } from '../interfaces';
2
3
  import GestureHandler from './GestureHandler';
3
4
  export default class FlingGestureHandler extends GestureHandler {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { State } from '../../State';
2
3
  import { Config, AdaptedEvent } from '../interfaces';
3
4
  import EventManager from '../tools/EventManager';
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { AdaptedEvent, Config } from '../interfaces';
2
3
  import GestureHandler from './GestureHandler';
3
4
  export default class HoverGestureHandler extends GestureHandler {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { State } from '../../State';
2
3
  import { AdaptedEvent, Config } from '../interfaces';
3
4
  import GestureHandler from './GestureHandler';
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { AdaptedEvent, Config } from '../interfaces';
2
3
  import GestureHandler from './GestureHandler';
3
4
  export default class ManualGestureHandler extends GestureHandler {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { AdaptedEvent, Config } from '../interfaces';
2
3
  import GestureHandler from './GestureHandler';
3
4
  export default class NativeViewGestureHandler extends GestureHandler {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { AdaptedEvent, Config } from '../interfaces';
2
3
  import GestureHandler from './GestureHandler';
3
4
  export default class PanGestureHandler extends GestureHandler {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { AdaptedEvent, Config } from '../interfaces';
2
3
  import GestureHandler from './GestureHandler';
3
4
  export default class PinchGestureHandler extends GestureHandler {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { AdaptedEvent, Config } from '../interfaces';
2
3
  import GestureHandler from './GestureHandler';
3
4
  export default class RotationGestureHandler extends GestureHandler {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { AdaptedEvent, Config } from '../interfaces';
2
3
  import GestureHandler from './GestureHandler';
3
4
  export default class TapGestureHandler extends GestureHandler {
@@ -1,8 +1,7 @@
1
- import { ValueOf } from '../typeUtils';
2
- import { HammerGestures } from '../web/Gestures';
3
- export declare function getHandler(tag: number): import("./NativeViewGestureHandler").default | import("./PanGestureHandler").default | import("./TapGestureHandler").default | import("./LongPressGestureHandler").default | import("./PinchGestureHandler").default | import("./RotationGestureHandler").default | import("./FlingGestureHandler").default;
4
- export declare function createGestureHandler(handlerTag: number, handler: InstanceType<ValueOf<typeof HammerGestures>>): void;
1
+ export declare const gestures: Record<number, any>;
2
+ export declare function getHandler(tag: number): any;
3
+ export declare function createGestureHandler(handlerTag: number, handler: any): void;
5
4
  export declare function dropGestureHandler(handlerTag: number): void;
6
5
  export declare function getNodes(): {
7
- [x: number]: import("./NativeViewGestureHandler").default | import("./PanGestureHandler").default | import("./TapGestureHandler").default | import("./LongPressGestureHandler").default | import("./PinchGestureHandler").default | import("./RotationGestureHandler").default | import("./FlingGestureHandler").default;
6
+ [x: number]: any;
8
7
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-gesture-handler",
3
- "version": "2.17.0",
3
+ "version": "2.18.0",
4
4
  "description": "Experimental implementation of a new declarative API for gesture handling in react-native",
5
5
  "scripts": {
6
6
  "prepare": "bob build && husky install",
@@ -15,7 +15,9 @@
15
15
  "lint:js": "eslint --ext '.js,.ts,.tsx' src/ example/src FabricExample/src MacOSExample/src && yarn prettier --check './{src,example,FabricExample,MacOSExample}/**/*.{js,jsx,ts,tsx}'",
16
16
  "lint:js-root": "eslint --ext '.js,.ts,.tsx' src/ && yarn prettier --check './src/**/*.{js,jsx,ts,tsx}'",
17
17
  "lint:android": "./android/gradlew -p android spotlessCheck -q",
18
- "checkIntegrity": "(cd ./FabricExample/android && ./gradlew generateCodegenArtifactsFromSchema -PskipCodegenCopyTask) && (cd ./android && ./gradlew checkIntegrityBetweenArchitectures)"
18
+ "circular-dependency-check": "yarn madge --extensions js,ts,tsx --circular src",
19
+ "architectures-consistency-check": "node ./scripts/codegen-check-consistency.js",
20
+ "sync-architectures": "node ./scripts/codegen-sync-archs.js"
19
21
  },
20
22
  "react-native": "src/index.ts",
21
23
  "main": "lib/commonjs/index.js",
@@ -39,6 +41,7 @@
39
41
  "android/noreanimated/src/main/java/",
40
42
  "apple/",
41
43
  "Swipeable/",
44
+ "ReanimatedSwipeable/",
42
45
  "jest-utils/",
43
46
  "DrawerLayout/",
44
47
  "README.md",
@@ -65,21 +68,15 @@
65
68
  "invariant": "^2.2.4",
66
69
  "prop-types": "^15.7.2"
67
70
  },
68
- "jest": {
69
- "preset": "react-native",
70
- "modulePathIgnorePatterns": [
71
- "<rootDir>/lib/"
72
- ]
73
- },
74
71
  "devDependencies": {
75
72
  "@babel/core": "^7.12.9",
76
73
  "@babel/plugin-proposal-class-properties": "^7.12.1",
77
74
  "@babel/preset-env": "^7.12.11",
78
75
  "@babel/preset-typescript": "^7.12.7",
79
76
  "@babel/runtime": "^7.12.5",
80
- "@react-native/babel-preset": "^0.73.19",
81
- "@testing-library/jest-native": "^4.0.4",
82
- "@testing-library/react-native": "^9.0.0",
77
+ "@react-native/babel-preset": "^0.74.85",
78
+ "@testing-library/jest-native": "^5.4.3",
79
+ "@testing-library/react-native": "^12.5.1",
83
80
  "@types/hammerjs": "^2.0.38",
84
81
  "@types/hoist-non-react-statics": "^3.3.1",
85
82
  "@types/jest": "^27.0.3",
@@ -96,17 +93,17 @@
96
93
  "eslint-plugin-jest": "^26.0.0",
97
94
  "expo": "^35.0.1",
98
95
  "husky": "^8.0.1",
99
- "jest": "^26.6.3",
96
+ "jest": "^28.1.0",
100
97
  "lint-staged": "^12.3.2",
101
98
  "madge": "^6.1.0",
102
- "prettier": "^2.7.1",
99
+ "prettier": "2.7.1",
103
100
  "react": "18.2.0",
104
101
  "react-dom": "^16.12.0",
105
- "react-native": "0.74.1",
102
+ "react-native": "0.74.3",
106
103
  "react-native-builder-bob": "^0.17.1",
107
104
  "react-native-reanimated": "^3.12.0",
108
105
  "react-native-web": "^0.11.7",
109
- "react-test-renderer": "17.0.2",
106
+ "react-test-renderer": "18.2.0",
110
107
  "release-it": "^13.6.5",
111
108
  "typescript": "5.0.4"
112
109
  },
@@ -117,7 +114,8 @@
117
114
  "lint-staged": {
118
115
  "./{src,example,FabricExample,MacOSExample}/**/*.{ts,tsx}": "yarn format:js",
119
116
  "android/**/*.kt": "yarn format:android",
120
- "apple/**/*.{h,m,mm,cpp}": "yarn format:ios"
117
+ "apple/**/*.{h,m,mm,cpp}": "yarn format:ios",
118
+ "src/specs/*.ts": "yarn sync-architectures"
121
119
  },
122
120
  "release-it": {
123
121
  "hooks": {
package/src/Directions.ts CHANGED
@@ -3,7 +3,7 @@ const LEFT = 2;
3
3
  const UP = 4;
4
4
  const DOWN = 8;
5
5
 
6
- // public interface
6
+ // Public interface
7
7
  export const Directions = {
8
8
  RIGHT: RIGHT,
9
9
  LEFT: LEFT,
@@ -11,7 +11,7 @@ export const Directions = {
11
11
  DOWN: DOWN,
12
12
  } as const;
13
13
 
14
- // internal interface
14
+ // Internal interface
15
15
  export const DiagonalDirections = {
16
16
  UP_RIGHT: UP | RIGHT,
17
17
  DOWN_RIGHT: DOWN | RIGHT,
@@ -67,10 +67,10 @@ export default {
67
67
  }
68
68
 
69
69
  if (isNewWebImplementationEnabled()) {
70
- //@ts-ignore Types should be HTMLElement or React.Component
70
+ // @ts-ignore Types should be HTMLElement or React.Component
71
71
  NodeManager.getHandler(handlerTag).init(newView, propsRef);
72
72
  } else {
73
- //@ts-ignore Types should be HTMLElement or React.Component
73
+ // @ts-ignore Types should be HTMLElement or React.Component
74
74
  HammerNodeManager.getHandler(handlerTag).setView(newView, propsRef);
75
75
  }
76
76
  },
@@ -30,14 +30,12 @@ import {
30
30
  ActiveCursor,
31
31
  MouseButton,
32
32
  } from '../handlers/gestureHandlerCommon';
33
- import {
34
- PanGestureHandler,
33
+ import { PanGestureHandler } from '../handlers/PanGestureHandler';
34
+ import type {
35
35
  PanGestureHandlerEventPayload,
36
- } from '../handlers/PanGestureHandler';
37
- import {
38
- TapGestureHandler,
39
36
  TapGestureHandlerEventPayload,
40
- } from '../handlers/TapGestureHandler';
37
+ } from '../handlers/GestureHandlerEventPayload';
38
+ import { TapGestureHandler } from '../handlers/TapGestureHandler';
41
39
  import { State } from '../State';
42
40
 
43
41
  const DRAG_TOSS = 0.05;
@@ -156,7 +154,7 @@ export interface DrawerLayoutProps {
156
154
 
157
155
  onGestureRef?: (ref: PanGestureHandler) => void;
158
156
 
159
- // implicit `children` prop has been removed in @types/react^18.0.0
157
+ // Implicit `children` prop has been removed in @types/react^18.0.0
160
158
  children?:
161
159
  | React.ReactNode
162
160
  | ((openValue?: AnimatedInterpolation) => React.ReactNode);
@@ -521,7 +519,7 @@ export default class DrawerLayout extends Component<
521
519
  this.emitStateChanged(IDLE, willShow);
522
520
  this.setState({ drawerOpened: willShow });
523
521
  if (this.state.drawerState !== DRAGGING) {
524
- // it's possilbe that user started drag while the drawer
522
+ // It's possilbe that user started drag while the drawer
525
523
  // was settling, don't override state in this case
526
524
  this.setState({ drawerState: IDLE });
527
525
  }
@@ -603,7 +601,7 @@ export default class DrawerLayout extends Component<
603
601
  const drawerSlide = drawerType !== 'back';
604
602
  const containerSlide = drawerType !== 'front';
605
603
 
606
- // we rely on row and row-reverse flex directions to position the drawer
604
+ // We rely on row and row-reverse flex directions to position the drawer
607
605
  // properly. Apparently for RTL these are flipped which requires us to use
608
606
  // the opposite setting for the drawer to appear from left or right
609
607
  // according to the drawerPosition prop