@react-native-oh-tpl/react-native-gesture-handler 2.12.1-0.0.1 → 2.12.6-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 (921) hide show
  1. package/README.md +1 -62
  2. package/{LICENSE → harmony/gesture_handler/LICENSE} +21 -21
  3. package/harmony/gesture_handler/OAT.xml +44 -0
  4. package/harmony/gesture_handler/README.OpenSource +11 -0
  5. package/harmony/gesture_handler/README.md +1 -0
  6. package/harmony/gesture_handler/build-profile.json5 +8 -0
  7. package/harmony/gesture_handler/hvigorfile.ts +2 -0
  8. package/harmony/gesture_handler/index.ets +3 -0
  9. package/harmony/gesture_handler/oh-package.json5 +13 -0
  10. package/harmony/gesture_handler/src/main/cpp/CMakeLists.txt +8 -0
  11. package/harmony/gesture_handler/src/main/cpp/GestureHandlerPackage.cpp +34 -0
  12. package/harmony/gesture_handler/src/main/cpp/GestureHandlerPackage.h +15 -0
  13. package/harmony/gesture_handler/src/main/cpp/RNGestureHandlerButtonComponentDescriptor.h +60 -0
  14. package/harmony/gesture_handler/src/main/cpp/RNGestureHandlerModule.cpp +17 -0
  15. package/harmony/gesture_handler/src/main/cpp/RNGestureHandlerModule.h +12 -0
  16. package/harmony/gesture_handler/src/main/cpp/RNGestureHandlerRootViewComponentDescriptor.h +60 -0
  17. package/{src/web/tools → harmony/gesture_handler/src/main/ets}/CircularBuffer.ts +42 -42
  18. package/harmony/gesture_handler/src/main/ets/Event.ts +68 -0
  19. package/harmony/gesture_handler/src/main/ets/EventDispatcher.ts +38 -0
  20. package/harmony/gesture_handler/src/main/ets/GestureHandler.ts +663 -0
  21. package/harmony/gesture_handler/src/main/ets/GestureHandlerArkUIAdapter.ets +202 -0
  22. package/harmony/gesture_handler/src/main/ets/GestureHandlerFactory.ts +45 -0
  23. package/harmony/gesture_handler/src/main/ets/GestureHandlerOrchestrator.ts +280 -0
  24. package/harmony/gesture_handler/src/main/ets/GestureHandlerPackage.ts +22 -0
  25. package/harmony/gesture_handler/src/main/ets/GestureHandlerRegistry.ts +28 -0
  26. package/{src/web/tools → harmony/gesture_handler/src/main/ets}/InteractionManager.ts +109 -130
  27. package/{src/web/tools → harmony/gesture_handler/src/main/ets}/LeastSquareSolver.ts +182 -182
  28. package/harmony/gesture_handler/src/main/ets/NativeViewGestureHandler.ts +115 -0
  29. package/harmony/gesture_handler/src/main/ets/OutgoingEvent.ts +34 -0
  30. package/harmony/gesture_handler/src/main/ets/PanGestureHandler.ts +328 -0
  31. package/{src/web/tools → harmony/gesture_handler/src/main/ets}/PointerTracker.ts +239 -240
  32. package/harmony/gesture_handler/src/main/ets/RNGHError.ts +5 -0
  33. package/harmony/gesture_handler/src/main/ets/RNGHLogger.ts +29 -0
  34. package/harmony/gesture_handler/src/main/ets/RNGHRootTouchHandler.ets +58 -0
  35. package/harmony/gesture_handler/src/main/ets/RNGestureHandlerButton.ets +37 -0
  36. package/harmony/gesture_handler/src/main/ets/RNGestureHandlerModule.ts +125 -0
  37. package/harmony/gesture_handler/src/main/ets/RNGestureHandlerRootView.ets +57 -0
  38. package/harmony/gesture_handler/src/main/ets/RNOHScrollLocker.ts +11 -0
  39. package/harmony/gesture_handler/src/main/ets/State.ts +47 -0
  40. package/harmony/gesture_handler/src/main/ets/TapGestureHandler.ts +206 -0
  41. package/harmony/gesture_handler/src/main/ets/Vector2D.ts +36 -0
  42. package/{src/web/tools → harmony/gesture_handler/src/main/ets}/VelocityTracker.ts +98 -98
  43. package/harmony/gesture_handler/src/main/ets/View.ts +71 -0
  44. package/harmony/gesture_handler/src/main/ets/ViewRegistry.ts +43 -0
  45. package/harmony/gesture_handler/src/main/ets/pages/Index.ets +17 -0
  46. package/harmony/gesture_handler/src/main/ets/webviewability/WebviewAbility.ts +41 -0
  47. package/harmony/gesture_handler/src/main/module.json5 +7 -0
  48. package/harmony/gesture_handler/src/main/resources/base/element/color.json +8 -0
  49. package/harmony/gesture_handler/src/main/resources/base/element/string.json +16 -0
  50. package/harmony/gesture_handler/src/main/resources/base/media/icon.png +0 -0
  51. package/harmony/gesture_handler/src/main/resources/base/profile/main_pages.json +5 -0
  52. package/harmony/gesture_handler/src/main/resources/en_US/element/string.json +16 -0
  53. package/harmony/gesture_handler/src/main/resources/zh_CN/element/string.json +16 -0
  54. package/harmony/gesture_handler/ts.ts +1 -0
  55. package/harmony/gesture_handler.har +0 -0
  56. package/lib/commonjs/RNGestureHandlerModule.js +2 -22
  57. package/lib/commonjs/RNGestureHandlerModule.js.map +1 -1
  58. package/lib/commonjs/components/GestureButtons.js +88 -142
  59. package/lib/commonjs/components/GestureButtons.js.map +1 -1
  60. package/lib/commonjs/components/GestureHandlerButton.js +2 -7
  61. package/lib/commonjs/components/GestureHandlerButton.js.map +1 -1
  62. package/lib/commonjs/components/GestureHandlerRootView.js +13 -13
  63. package/lib/commonjs/components/GestureHandlerRootView.js.map +1 -1
  64. package/lib/commonjs/components/RNGestureHandlerButton.js +23 -0
  65. package/lib/commonjs/components/RNGestureHandlerButton.js.map +1 -0
  66. package/lib/commonjs/components/touchables/GenericTouchable.js +103 -145
  67. package/lib/commonjs/components/touchables/GenericTouchable.js.map +1 -1
  68. package/lib/commonjs/components/touchables/TouchableOpacity.js +34 -53
  69. package/lib/commonjs/components/touchables/TouchableOpacity.js.map +1 -1
  70. package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js +4 -12
  71. package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js.map +1 -1
  72. package/lib/commonjs/components/touchables/index.js +2 -21
  73. package/lib/commonjs/components/touchables/index.js.map +1 -1
  74. package/lib/commonjs/handlers/NativeViewGestureHandler.js +6 -14
  75. package/lib/commonjs/handlers/NativeViewGestureHandler.js.map +1 -1
  76. package/lib/commonjs/handlers/PanGestureHandler.js +12 -32
  77. package/lib/commonjs/handlers/PanGestureHandler.js.map +1 -1
  78. package/lib/commonjs/handlers/TapGestureHandler.js +6 -11
  79. package/lib/commonjs/handlers/TapGestureHandler.js.map +1 -1
  80. package/lib/commonjs/handlers/createHandler.js +141 -223
  81. package/lib/commonjs/handlers/createHandler.js.map +1 -1
  82. package/lib/commonjs/handlers/createNativeWrapper.js +22 -32
  83. package/lib/commonjs/handlers/createNativeWrapper.js.map +1 -1
  84. package/lib/commonjs/handlers/gestureHandlerCommon.js +6 -87
  85. package/lib/commonjs/handlers/gestureHandlerCommon.js.map +1 -1
  86. package/lib/commonjs/handlers/gestures/GestureDetector.js +111 -226
  87. package/lib/commonjs/handlers/gestures/GestureDetector.js.map +1 -1
  88. package/lib/commonjs/index.js +168 -211
  89. package/lib/commonjs/index.js.map +1 -1
  90. package/lib/commonjs/init.js +7 -15
  91. package/lib/commonjs/init.js.map +1 -1
  92. package/lib/module/RNGestureHandlerModule.js +2 -18
  93. package/lib/module/RNGestureHandlerModule.js.map +1 -1
  94. package/lib/module/components/GestureButtons.js +83 -121
  95. package/lib/module/components/GestureButtons.js.map +1 -1
  96. package/lib/module/components/GestureHandlerButton.js +2 -2
  97. package/lib/module/components/GestureHandlerButton.js.map +1 -1
  98. package/lib/module/components/GestureHandlerRootView.js +11 -3
  99. package/lib/module/components/GestureHandlerRootView.js.map +1 -1
  100. package/lib/module/components/RNGestureHandlerButton.js +17 -0
  101. package/lib/module/components/RNGestureHandlerButton.js.map +1 -0
  102. package/lib/module/components/touchables/GenericTouchable.js +98 -133
  103. package/lib/module/components/touchables/GenericTouchable.js.map +1 -1
  104. package/lib/module/components/touchables/TouchableOpacity.js +29 -43
  105. package/lib/module/components/touchables/TouchableOpacity.js.map +1 -1
  106. package/lib/module/components/touchables/TouchableWithoutFeedback.js +1 -2
  107. package/lib/module/components/touchables/TouchableWithoutFeedback.js.map +1 -1
  108. package/lib/module/components/touchables/index.js +5 -2
  109. package/lib/module/components/touchables/index.js.map +1 -1
  110. package/lib/module/handlers/NativeViewGestureHandler.js +1 -1
  111. package/lib/module/handlers/NativeViewGestureHandler.js.map +1 -1
  112. package/lib/module/handlers/PanGestureHandler.js +6 -21
  113. package/lib/module/handlers/PanGestureHandler.js.map +1 -1
  114. package/lib/module/handlers/TapGestureHandler.js +2 -1
  115. package/lib/module/handlers/TapGestureHandler.js.map +1 -1
  116. package/lib/module/handlers/createHandler.js +140 -196
  117. package/lib/module/handlers/createHandler.js.map +1 -1
  118. package/lib/module/handlers/createNativeWrapper.js +17 -22
  119. package/lib/module/handlers/createNativeWrapper.js.map +1 -1
  120. package/lib/module/handlers/gestureHandlerCommon.js +5 -71
  121. package/lib/module/handlers/gestureHandlerCommon.js.map +1 -1
  122. package/lib/module/handlers/gestures/GestureDetector.js +99 -175
  123. package/lib/module/handlers/gestures/GestureDetector.js.map +1 -1
  124. package/lib/module/index.js +160 -18
  125. package/lib/module/index.js.map +1 -1
  126. package/lib/module/init.js +6 -5
  127. package/lib/module/init.js.map +1 -1
  128. package/lib/typescript/RNGestureHandlerModule.d.ts +7 -13
  129. package/lib/typescript/RNGestureHandlerModule.d.ts.map +1 -0
  130. package/lib/typescript/components/GestureButtons.d.ts +122 -121
  131. package/lib/typescript/components/GestureButtons.d.ts.map +1 -0
  132. package/lib/typescript/components/GestureHandlerButton.d.ts +5 -4
  133. package/lib/typescript/components/GestureHandlerButton.d.ts.map +1 -0
  134. package/lib/typescript/components/GestureHandlerRootView.d.ts +7 -6
  135. package/lib/typescript/components/GestureHandlerRootView.d.ts.map +1 -0
  136. package/lib/typescript/components/RNGestureHandlerButton.d.ts +2 -0
  137. package/lib/typescript/components/RNGestureHandlerButton.d.ts.map +1 -0
  138. package/lib/typescript/components/touchables/GenericTouchable.d.ts +68 -68
  139. package/lib/typescript/components/touchables/GenericTouchable.d.ts.map +1 -0
  140. package/lib/typescript/components/touchables/TouchableOpacity.d.ts +26 -25
  141. package/lib/typescript/components/touchables/TouchableOpacity.d.ts.map +1 -0
  142. package/lib/typescript/components/touchables/TouchableWithoutFeedback.d.ts +8 -7
  143. package/lib/typescript/components/touchables/TouchableWithoutFeedback.d.ts.map +1 -0
  144. package/lib/typescript/components/touchables/index.d.ts +4 -7
  145. package/lib/typescript/components/touchables/index.d.ts.map +1 -0
  146. package/lib/typescript/handlers/NativeViewGestureHandler.d.ts +29 -28
  147. package/lib/typescript/handlers/NativeViewGestureHandler.d.ts.map +1 -0
  148. package/lib/typescript/handlers/PanGestureHandler.d.ts +140 -139
  149. package/lib/typescript/handlers/PanGestureHandler.d.ts.map +1 -0
  150. package/lib/typescript/handlers/TapGestureHandler.d.ts +58 -57
  151. package/lib/typescript/handlers/TapGestureHandler.d.ts.map +1 -0
  152. package/lib/typescript/handlers/createHandler.d.ts +12 -11
  153. package/lib/typescript/handlers/createHandler.d.ts.map +1 -0
  154. package/lib/typescript/handlers/createNativeWrapper.d.ts +4 -3
  155. package/lib/typescript/handlers/createNativeWrapper.d.ts.map +1 -0
  156. package/lib/typescript/handlers/gestureHandlerCommon.d.ts +2 -68
  157. package/lib/typescript/handlers/gestureHandlerCommon.d.ts.map +1 -0
  158. package/lib/typescript/handlers/gestures/GestureDetector.d.ts +24 -19
  159. package/lib/typescript/handlers/gestures/GestureDetector.d.ts.map +1 -0
  160. package/lib/typescript/index.d.ts +9 -52
  161. package/lib/typescript/index.d.ts.map +1 -0
  162. package/lib/typescript/init.d.ts +3 -2
  163. package/lib/typescript/init.d.ts.map +1 -0
  164. package/package.json +70 -156
  165. package/src/RNGestureHandlerModule.ts +6 -50
  166. package/src/components/GestureButtons.tsx +334 -332
  167. package/src/components/GestureHandlerButton.tsx +5 -5
  168. package/src/components/GestureHandlerRootView.tsx +34 -23
  169. package/src/components/RNGestureHandlerButton.tsx +23 -0
  170. package/src/components/touchables/GenericTouchable.tsx +301 -301
  171. package/src/components/touchables/TouchableOpacity.tsx +76 -75
  172. package/src/components/touchables/TouchableWithoutFeedback.tsx +14 -14
  173. package/src/components/touchables/index.ts +7 -7
  174. package/src/handlers/NativeViewGestureHandler.ts +55 -55
  175. package/src/handlers/PanGestureHandler.ts +327 -325
  176. package/src/handlers/TapGestureHandler.ts +95 -94
  177. package/src/handlers/createHandler.tsx +535 -533
  178. package/src/handlers/createNativeWrapper.tsx +81 -80
  179. package/src/handlers/gestureHandlerCommon.ts +15 -250
  180. package/src/handlers/gestures/GestureDetector.tsx +823 -822
  181. package/src/index.ts +172 -174
  182. package/src/init.ts +18 -18
  183. package/DrawerLayout/package.json +0 -6
  184. package/RNGestureHandler.podspec +0 -44
  185. package/Swipeable/package.json +0 -6
  186. package/android/build.gradle +0 -209
  187. package/android/common/src/main/java/com/swmansion/common/GestureHandlerStateManager.kt +0 -5
  188. package/android/fabric/src/main/java/com/swmansion/gesturehandler/RNGestureHandlerComponentsRegistry.java +0 -29
  189. package/android/fabric/src/main/java/com/swmansion/gesturehandler/ReactContextExtensions.kt +0 -12
  190. package/android/gradle.properties +0 -19
  191. package/android/noreanimated/src/main/java/com/swmansion/gesturehandler/ReanimatedEventDispatcher.kt +0 -10
  192. package/android/paper/src/main/java/com/facebook/react/viewmanagers/RNGestureHandlerButtonManagerDelegate.java +0 -50
  193. package/android/paper/src/main/java/com/facebook/react/viewmanagers/RNGestureHandlerButtonManagerInterface.java +0 -23
  194. package/android/paper/src/main/java/com/facebook/react/viewmanagers/RNGestureHandlerRootViewManagerDelegate.java +0 -25
  195. package/android/paper/src/main/java/com/facebook/react/viewmanagers/RNGestureHandlerRootViewManagerInterface.java +0 -16
  196. package/android/paper/src/main/java/com/swmansion/gesturehandler/ReactContextExtensions.kt +0 -13
  197. package/android/reanimated/src/main/java/com/swmansion/gesturehandler/ReanimatedEventDispatcher.kt +0 -17
  198. package/android/src/main/AndroidManifest.xml +0 -3
  199. package/android/src/main/java/com/swmansion/gesturehandler/RNGestureHandlerPackage.kt +0 -21
  200. package/android/src/main/java/com/swmansion/gesturehandler/core/FlingGestureHandler.kt +0 -100
  201. package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandler.kt +0 -807
  202. package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerInteractionController.kt +0 -8
  203. package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerOrchestrator.kt +0 -671
  204. package/android/src/main/java/com/swmansion/gesturehandler/core/GestureHandlerRegistry.kt +0 -8
  205. package/android/src/main/java/com/swmansion/gesturehandler/core/GestureUtils.kt +0 -47
  206. package/android/src/main/java/com/swmansion/gesturehandler/core/HoverGestureHandler.kt +0 -120
  207. package/android/src/main/java/com/swmansion/gesturehandler/core/LongPressGestureHandler.kt +0 -100
  208. package/android/src/main/java/com/swmansion/gesturehandler/core/ManualGestureHandler.kt +0 -11
  209. package/android/src/main/java/com/swmansion/gesturehandler/core/NativeViewGestureHandler.kt +0 -257
  210. package/android/src/main/java/com/swmansion/gesturehandler/core/OnTouchEventListener.kt +0 -9
  211. package/android/src/main/java/com/swmansion/gesturehandler/core/PanGestureHandler.kt +0 -322
  212. package/android/src/main/java/com/swmansion/gesturehandler/core/PinchGestureHandler.kt +0 -103
  213. package/android/src/main/java/com/swmansion/gesturehandler/core/PointerEventsConfig.kt +0 -23
  214. package/android/src/main/java/com/swmansion/gesturehandler/core/RotationGestureDetector.kt +0 -125
  215. package/android/src/main/java/com/swmansion/gesturehandler/core/RotationGestureHandler.kt +0 -93
  216. package/android/src/main/java/com/swmansion/gesturehandler/core/ScaleGestureDetector.java +0 -558
  217. package/android/src/main/java/com/swmansion/gesturehandler/core/TapGestureHandler.kt +0 -168
  218. package/android/src/main/java/com/swmansion/gesturehandler/core/ViewConfigurationHelper.kt +0 -10
  219. package/android/src/main/java/com/swmansion/gesturehandler/react/Extensions.kt +0 -16
  220. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.kt +0 -423
  221. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerEnabledRootView.kt +0 -15
  222. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerEvent.kt +0 -75
  223. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerInteractionManager.kt +0 -74
  224. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerModule.kt +0 -702
  225. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRegistry.kt +0 -100
  226. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootHelper.kt +0 -142
  227. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootInterface.kt +0 -5
  228. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootView.kt +0 -78
  229. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerRootViewManager.kt +0 -51
  230. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerStateChangeEvent.kt +0 -78
  231. package/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerTouchEvent.kt +0 -69
  232. package/android/src/main/java/com/swmansion/gesturehandler/react/RNViewConfigurationHelper.kt +0 -51
  233. package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/FlingGestureHandlerEventDataBuilder.kt +0 -30
  234. package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/GestureHandlerEventDataBuilder.kt +0 -22
  235. package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/HoverGestureHandlerEventDataBuilder.kt +0 -30
  236. package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/LongPressGestureHandlerEventDataBuilder.kt +0 -33
  237. package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/ManualGestureHandlerEventDataBuilder.kt +0 -5
  238. package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/NativeGestureHandlerEventDataBuilder.kt +0 -18
  239. package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/PanGestureHandlerEventDataBuilder.kt +0 -42
  240. package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/PinchGestureHandlerEventDataBuilder.kt +0 -30
  241. package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/RotationGestureHandlerEventDataBuilder.kt +0 -30
  242. package/android/src/main/java/com/swmansion/gesturehandler/react/eventbuilders/TapGestureHandlerEventDataBuilder.kt +0 -30
  243. package/android/src/main/jni/CMakeLists.txt +0 -37
  244. package/android/src/main/jni/cpp-adapter.cpp +0 -44
  245. package/ios/Handlers/RNFlingHandler.h +0 -4
  246. package/ios/Handlers/RNFlingHandler.m +0 -152
  247. package/ios/Handlers/RNForceTouchHandler.h +0 -4
  248. package/ios/Handlers/RNForceTouchHandler.m +0 -175
  249. package/ios/Handlers/RNHoverHandler.h +0 -12
  250. package/ios/Handlers/RNHoverHandler.m +0 -153
  251. package/ios/Handlers/RNLongPressHandler.h +0 -12
  252. package/ios/Handlers/RNLongPressHandler.m +0 -183
  253. package/ios/Handlers/RNManualHandler.h +0 -4
  254. package/ios/Handlers/RNManualHandler.m +0 -88
  255. package/ios/Handlers/RNNativeViewHandler.h +0 -15
  256. package/ios/Handlers/RNNativeViewHandler.mm +0 -193
  257. package/ios/Handlers/RNPanHandler.h +0 -12
  258. package/ios/Handlers/RNPanHandler.m +0 -331
  259. package/ios/Handlers/RNPinchHandler.h +0 -12
  260. package/ios/Handlers/RNPinchHandler.m +0 -95
  261. package/ios/Handlers/RNRotationHandler.h +0 -12
  262. package/ios/Handlers/RNRotationHandler.m +0 -93
  263. package/ios/Handlers/RNTapHandler.h +0 -12
  264. package/ios/Handlers/RNTapHandler.m +0 -265
  265. package/ios/RNGHTouchEventType.h +0 -9
  266. package/ios/RNGestureHandler.h +0 -90
  267. package/ios/RNGestureHandler.m +0 -493
  268. package/ios/RNGestureHandler.xcodeproj/project.pbxproj +0 -690
  269. package/ios/RNGestureHandler.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  270. package/ios/RNGestureHandlerActionType.h +0 -10
  271. package/ios/RNGestureHandlerButton.h +0 -19
  272. package/ios/RNGestureHandlerButton.m +0 -77
  273. package/ios/RNGestureHandlerButtonComponentView.h +0 -17
  274. package/ios/RNGestureHandlerButtonComponentView.mm +0 -64
  275. package/ios/RNGestureHandlerButtonManager.h +0 -5
  276. package/ios/RNGestureHandlerButtonManager.m +0 -34
  277. package/ios/RNGestureHandlerDirection.h +0 -8
  278. package/ios/RNGestureHandlerEvents.h +0 -65
  279. package/ios/RNGestureHandlerEvents.m +0 -260
  280. package/ios/RNGestureHandlerManager.h +0 -35
  281. package/ios/RNGestureHandlerManager.mm +0 -367
  282. package/ios/RNGestureHandlerModule.h +0 -7
  283. package/ios/RNGestureHandlerModule.mm +0 -320
  284. package/ios/RNGestureHandlerPointerTracker.h +0 -25
  285. package/ios/RNGestureHandlerPointerTracker.m +0 -243
  286. package/ios/RNGestureHandlerRegistry.h +0 -21
  287. package/ios/RNGestureHandlerRegistry.m +0 -63
  288. package/ios/RNGestureHandlerRootViewComponentView.mm +0 -21
  289. package/ios/RNGestureHandlerState.h +0 -10
  290. package/ios/RNGestureHandlerStateManager.h +0 -5
  291. package/ios/RNManualActivationRecognizer.h +0 -10
  292. package/ios/RNManualActivationRecognizer.m +0 -88
  293. package/ios/RNRootViewGestureRecognizer.h +0 -17
  294. package/ios/RNRootViewGestureRecognizer.m +0 -106
  295. package/jest-utils/package.json +0 -6
  296. package/jestSetup.js +0 -7
  297. package/lib/commonjs/ActionType.js +0 -15
  298. package/lib/commonjs/ActionType.js.map +0 -1
  299. package/lib/commonjs/Directions.js +0 -15
  300. package/lib/commonjs/Directions.js.map +0 -1
  301. package/lib/commonjs/EnableNewWebImplementation.js +0 -35
  302. package/lib/commonjs/EnableNewWebImplementation.js.map +0 -1
  303. package/lib/commonjs/GestureHandlerRootViewContext.js +0 -15
  304. package/lib/commonjs/GestureHandlerRootViewContext.js.map +0 -1
  305. package/lib/commonjs/PlatformConstants.js +0 -15
  306. package/lib/commonjs/PlatformConstants.js.map +0 -1
  307. package/lib/commonjs/PlatformConstants.web.js +0 -14
  308. package/lib/commonjs/PlatformConstants.web.js.map +0 -1
  309. package/lib/commonjs/RNGestureHandlerModule.macos.js +0 -149
  310. package/lib/commonjs/RNGestureHandlerModule.macos.js.map +0 -1
  311. package/lib/commonjs/RNGestureHandlerModule.web.js +0 -163
  312. package/lib/commonjs/RNGestureHandlerModule.web.js.map +0 -1
  313. package/lib/commonjs/RNGestureHandlerModule.windows.js +0 -158
  314. package/lib/commonjs/RNGestureHandlerModule.windows.js.map +0 -1
  315. package/lib/commonjs/RNRenderer.js +0 -16
  316. package/lib/commonjs/RNRenderer.js.map +0 -1
  317. package/lib/commonjs/RNRenderer.web.js +0 -11
  318. package/lib/commonjs/RNRenderer.web.js.map +0 -1
  319. package/lib/commonjs/State.js +0 -18
  320. package/lib/commonjs/State.js.map +0 -1
  321. package/lib/commonjs/TouchEventType.js +0 -16
  322. package/lib/commonjs/TouchEventType.js.map +0 -1
  323. package/lib/commonjs/components/DrawerLayout.js +0 -566
  324. package/lib/commonjs/components/DrawerLayout.js.map +0 -1
  325. package/lib/commonjs/components/GestureComponents.js +0 -115
  326. package/lib/commonjs/components/GestureComponents.js.map +0 -1
  327. package/lib/commonjs/components/GestureComponents.web.js +0 -52
  328. package/lib/commonjs/components/GestureComponents.web.js.map +0 -1
  329. package/lib/commonjs/components/GestureHandlerButton.web.js +0 -24
  330. package/lib/commonjs/components/GestureHandlerButton.web.js.map +0 -1
  331. package/lib/commonjs/components/GestureHandlerRootView.android.js +0 -31
  332. package/lib/commonjs/components/GestureHandlerRootView.android.js.map +0 -1
  333. package/lib/commonjs/components/GestureHandlerRootView.web.js +0 -25
  334. package/lib/commonjs/components/GestureHandlerRootView.web.js.map +0 -1
  335. package/lib/commonjs/components/Swipeable.js +0 -408
  336. package/lib/commonjs/components/Swipeable.js.map +0 -1
  337. package/lib/commonjs/components/gestureHandlerRootHOC.js +0 -40
  338. package/lib/commonjs/components/gestureHandlerRootHOC.js.map +0 -1
  339. package/lib/commonjs/components/touchables/TouchableHighlight.js +0 -109
  340. package/lib/commonjs/components/touchables/TouchableHighlight.js.map +0 -1
  341. package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js +0 -100
  342. package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js.map +0 -1
  343. package/lib/commonjs/components/touchables/TouchableNativeFeedback.js +0 -12
  344. package/lib/commonjs/components/touchables/TouchableNativeFeedback.js.map +0 -1
  345. package/lib/commonjs/getReactNativeVersion.js +0 -22
  346. package/lib/commonjs/getReactNativeVersion.js.map +0 -1
  347. package/lib/commonjs/getReactNativeVersion.web.js +0 -11
  348. package/lib/commonjs/getReactNativeVersion.web.js.map +0 -1
  349. package/lib/commonjs/getShadowNodeFromRef.js +0 -27
  350. package/lib/commonjs/getShadowNodeFromRef.js.map +0 -1
  351. package/lib/commonjs/getShadowNodeFromRef.web.js +0 -15
  352. package/lib/commonjs/getShadowNodeFromRef.web.js.map +0 -1
  353. package/lib/commonjs/ghQueueMicrotask.js +0 -12
  354. package/lib/commonjs/ghQueueMicrotask.js.map +0 -1
  355. package/lib/commonjs/handlers/FlingGestureHandler.js +0 -25
  356. package/lib/commonjs/handlers/FlingGestureHandler.js.map +0 -1
  357. package/lib/commonjs/handlers/ForceTouchGestureHandler.js +0 -49
  358. package/lib/commonjs/handlers/ForceTouchGestureHandler.js.map +0 -1
  359. package/lib/commonjs/handlers/LongPressGestureHandler.js +0 -27
  360. package/lib/commonjs/handlers/LongPressGestureHandler.js.map +0 -1
  361. package/lib/commonjs/handlers/PinchGestureHandler.js +0 -23
  362. package/lib/commonjs/handlers/PinchGestureHandler.js.map +0 -1
  363. package/lib/commonjs/handlers/PressabilityDebugView.js +0 -14
  364. package/lib/commonjs/handlers/PressabilityDebugView.js.map +0 -1
  365. package/lib/commonjs/handlers/PressabilityDebugView.web.js +0 -12
  366. package/lib/commonjs/handlers/PressabilityDebugView.web.js.map +0 -1
  367. package/lib/commonjs/handlers/RotationGestureHandler.js +0 -23
  368. package/lib/commonjs/handlers/RotationGestureHandler.js.map +0 -1
  369. package/lib/commonjs/handlers/gestureHandlerTypesCompat.js +0 -6
  370. package/lib/commonjs/handlers/gestureHandlerTypesCompat.js.map +0 -1
  371. package/lib/commonjs/handlers/gestures/eventReceiver.js +0 -147
  372. package/lib/commonjs/handlers/gestures/eventReceiver.js.map +0 -1
  373. package/lib/commonjs/handlers/gestures/flingGesture.js +0 -34
  374. package/lib/commonjs/handlers/gestures/flingGesture.js.map +0 -1
  375. package/lib/commonjs/handlers/gestures/forceTouchGesture.js +0 -65
  376. package/lib/commonjs/handlers/gestures/forceTouchGesture.js.map +0 -1
  377. package/lib/commonjs/handlers/gestures/gesture.js +0 -241
  378. package/lib/commonjs/handlers/gestures/gesture.js.map +0 -1
  379. package/lib/commonjs/handlers/gestures/gestureComposition.js +0 -105
  380. package/lib/commonjs/handlers/gestures/gestureComposition.js.map +0 -1
  381. package/lib/commonjs/handlers/gestures/gestureObjects.js +0 -90
  382. package/lib/commonjs/handlers/gestures/gestureObjects.js.map +0 -1
  383. package/lib/commonjs/handlers/gestures/gestureStateManager.js +0 -65
  384. package/lib/commonjs/handlers/gestures/gestureStateManager.js.map +0 -1
  385. package/lib/commonjs/handlers/gestures/gestureStateManager.web.js +0 -32
  386. package/lib/commonjs/handlers/gestures/gestureStateManager.web.js.map +0 -1
  387. package/lib/commonjs/handlers/gestures/hoverGesture.js +0 -74
  388. package/lib/commonjs/handlers/gestures/hoverGesture.js.map +0 -1
  389. package/lib/commonjs/handlers/gestures/longPressGesture.js +0 -35
  390. package/lib/commonjs/handlers/gestures/longPressGesture.js.map +0 -1
  391. package/lib/commonjs/handlers/gestures/manualGesture.js +0 -31
  392. package/lib/commonjs/handlers/gestures/manualGesture.js.map +0 -1
  393. package/lib/commonjs/handlers/gestures/nativeGesture.js +0 -34
  394. package/lib/commonjs/handlers/gestures/nativeGesture.js.map +0 -1
  395. package/lib/commonjs/handlers/gestures/panGesture.js +0 -149
  396. package/lib/commonjs/handlers/gestures/panGesture.js.map +0 -1
  397. package/lib/commonjs/handlers/gestures/pinchGesture.js +0 -45
  398. package/lib/commonjs/handlers/gestures/pinchGesture.js.map +0 -1
  399. package/lib/commonjs/handlers/gestures/reanimatedWrapper.js +0 -37
  400. package/lib/commonjs/handlers/gestures/reanimatedWrapper.js.map +0 -1
  401. package/lib/commonjs/handlers/gestures/rotationGesture.js +0 -45
  402. package/lib/commonjs/handlers/gestures/rotationGesture.js.map +0 -1
  403. package/lib/commonjs/handlers/gestures/tapGesture.js +0 -60
  404. package/lib/commonjs/handlers/gestures/tapGesture.js.map +0 -1
  405. package/lib/commonjs/handlers/handlersRegistry.js +0 -67
  406. package/lib/commonjs/handlers/handlersRegistry.js.map +0 -1
  407. package/lib/commonjs/jestUtils/index.js +0 -20
  408. package/lib/commonjs/jestUtils/index.js.map +0 -1
  409. package/lib/commonjs/jestUtils/jestUtils.js +0 -375
  410. package/lib/commonjs/jestUtils/jestUtils.js.map +0 -1
  411. package/lib/commonjs/mocks.js +0 -66
  412. package/lib/commonjs/mocks.js.map +0 -1
  413. package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.js +0 -15
  414. package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.js.map +0 -1
  415. package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.js +0 -15
  416. package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.js.map +0 -1
  417. package/lib/commonjs/typeUtils.js +0 -2
  418. package/lib/commonjs/typeUtils.js.map +0 -1
  419. package/lib/commonjs/utils.js +0 -63
  420. package/lib/commonjs/utils.js.map +0 -1
  421. package/lib/commonjs/web/constants.js +0 -16
  422. package/lib/commonjs/web/constants.js.map +0 -1
  423. package/lib/commonjs/web/detectors/RotationGestureDetector.js +0 -165
  424. package/lib/commonjs/web/detectors/RotationGestureDetector.js.map +0 -1
  425. package/lib/commonjs/web/detectors/ScaleGestureDetector.js +0 -156
  426. package/lib/commonjs/web/detectors/ScaleGestureDetector.js.map +0 -1
  427. package/lib/commonjs/web/handlers/FlingGestureHandler.js +0 -167
  428. package/lib/commonjs/web/handlers/FlingGestureHandler.js.map +0 -1
  429. package/lib/commonjs/web/handlers/GestureHandler.js +0 -794
  430. package/lib/commonjs/web/handlers/GestureHandler.js.map +0 -1
  431. package/lib/commonjs/web/handlers/HoverGestureHandler.js +0 -62
  432. package/lib/commonjs/web/handlers/HoverGestureHandler.js.map +0 -1
  433. package/lib/commonjs/web/handlers/LongPressGestureHandler.js +0 -151
  434. package/lib/commonjs/web/handlers/LongPressGestureHandler.js.map +0 -1
  435. package/lib/commonjs/web/handlers/ManualGestureHandler.js +0 -61
  436. package/lib/commonjs/web/handlers/ManualGestureHandler.js.map +0 -1
  437. package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +0 -178
  438. package/lib/commonjs/web/handlers/NativeViewGestureHandler.js.map +0 -1
  439. package/lib/commonjs/web/handlers/PanGestureHandler.js +0 -448
  440. package/lib/commonjs/web/handlers/PanGestureHandler.js.map +0 -1
  441. package/lib/commonjs/web/handlers/PinchGestureHandler.js +0 -174
  442. package/lib/commonjs/web/handlers/PinchGestureHandler.js.map +0 -1
  443. package/lib/commonjs/web/handlers/RotationGestureHandler.js +0 -186
  444. package/lib/commonjs/web/handlers/RotationGestureHandler.js.map +0 -1
  445. package/lib/commonjs/web/handlers/TapGestureHandler.js +0 -280
  446. package/lib/commonjs/web/handlers/TapGestureHandler.js.map +0 -1
  447. package/lib/commonjs/web/interfaces.js +0 -55
  448. package/lib/commonjs/web/interfaces.js.map +0 -1
  449. package/lib/commonjs/web/tools/CircularBuffer.js +0 -59
  450. package/lib/commonjs/web/tools/CircularBuffer.js.map +0 -1
  451. package/lib/commonjs/web/tools/EventManager.js +0 -127
  452. package/lib/commonjs/web/tools/EventManager.js.map +0 -1
  453. package/lib/commonjs/web/tools/GestureHandlerDelegate.js +0 -6
  454. package/lib/commonjs/web/tools/GestureHandlerDelegate.js.map +0 -1
  455. package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js +0 -349
  456. package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js.map +0 -1
  457. package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js +0 -118
  458. package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js.map +0 -1
  459. package/lib/commonjs/web/tools/InteractionManager.js +0 -114
  460. package/lib/commonjs/web/tools/InteractionManager.js.map +0 -1
  461. package/lib/commonjs/web/tools/LeastSquareSolver.js +0 -204
  462. package/lib/commonjs/web/tools/LeastSquareSolver.js.map +0 -1
  463. package/lib/commonjs/web/tools/NodeManager.js +0 -48
  464. package/lib/commonjs/web/tools/NodeManager.js.map +0 -1
  465. package/lib/commonjs/web/tools/PointerEventManager.js +0 -198
  466. package/lib/commonjs/web/tools/PointerEventManager.js.map +0 -1
  467. package/lib/commonjs/web/tools/PointerTracker.js +0 -226
  468. package/lib/commonjs/web/tools/PointerTracker.js.map +0 -1
  469. package/lib/commonjs/web/tools/TouchEventManager.js +0 -138
  470. package/lib/commonjs/web/tools/TouchEventManager.js.map +0 -1
  471. package/lib/commonjs/web/tools/VelocityTracker.js +0 -111
  472. package/lib/commonjs/web/tools/VelocityTracker.js.map +0 -1
  473. package/lib/commonjs/web/utils.js +0 -15
  474. package/lib/commonjs/web/utils.js.map +0 -1
  475. package/lib/commonjs/web_hammer/DiscreteGestureHandler.js +0 -105
  476. package/lib/commonjs/web_hammer/DiscreteGestureHandler.js.map +0 -1
  477. package/lib/commonjs/web_hammer/DraggingGestureHandler.js +0 -53
  478. package/lib/commonjs/web_hammer/DraggingGestureHandler.js.map +0 -1
  479. package/lib/commonjs/web_hammer/Errors.js +0 -16
  480. package/lib/commonjs/web_hammer/Errors.js.map +0 -1
  481. package/lib/commonjs/web_hammer/FlingGestureHandler.js +0 -170
  482. package/lib/commonjs/web_hammer/FlingGestureHandler.js.map +0 -1
  483. package/lib/commonjs/web_hammer/GestureHandler.js +0 -579
  484. package/lib/commonjs/web_hammer/GestureHandler.js.map +0 -1
  485. package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js +0 -54
  486. package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js.map +0 -1
  487. package/lib/commonjs/web_hammer/LongPressGestureHandler.js +0 -71
  488. package/lib/commonjs/web_hammer/LongPressGestureHandler.js.map +0 -1
  489. package/lib/commonjs/web_hammer/NativeViewGestureHandler.js +0 -66
  490. package/lib/commonjs/web_hammer/NativeViewGestureHandler.js.map +0 -1
  491. package/lib/commonjs/web_hammer/NodeManager.js +0 -46
  492. package/lib/commonjs/web_hammer/NodeManager.js.map +0 -1
  493. package/lib/commonjs/web_hammer/PanGestureHandler.js +0 -208
  494. package/lib/commonjs/web_hammer/PanGestureHandler.js.map +0 -1
  495. package/lib/commonjs/web_hammer/PinchGestureHandler.js +0 -40
  496. package/lib/commonjs/web_hammer/PinchGestureHandler.js.map +0 -1
  497. package/lib/commonjs/web_hammer/PressGestureHandler.js +0 -188
  498. package/lib/commonjs/web_hammer/PressGestureHandler.js.map +0 -1
  499. package/lib/commonjs/web_hammer/RotationGestureHandler.js +0 -44
  500. package/lib/commonjs/web_hammer/RotationGestureHandler.js.map +0 -1
  501. package/lib/commonjs/web_hammer/TapGestureHandler.js +0 -192
  502. package/lib/commonjs/web_hammer/TapGestureHandler.js.map +0 -1
  503. package/lib/commonjs/web_hammer/constants.js +0 -64
  504. package/lib/commonjs/web_hammer/constants.js.map +0 -1
  505. package/lib/commonjs/web_hammer/utils.js +0 -42
  506. package/lib/commonjs/web_hammer/utils.js.map +0 -1
  507. package/lib/module/ActionType.js +0 -7
  508. package/lib/module/ActionType.js.map +0 -1
  509. package/lib/module/Directions.js +0 -7
  510. package/lib/module/Directions.js.map +0 -1
  511. package/lib/module/EnableNewWebImplementation.js +0 -22
  512. package/lib/module/EnableNewWebImplementation.js.map +0 -1
  513. package/lib/module/GestureHandlerRootViewContext.js +0 -3
  514. package/lib/module/GestureHandlerRootViewContext.js.map +0 -1
  515. package/lib/module/PlatformConstants.js +0 -5
  516. package/lib/module/PlatformConstants.js.map +0 -1
  517. package/lib/module/PlatformConstants.web.js +0 -7
  518. package/lib/module/PlatformConstants.web.js.map +0 -1
  519. package/lib/module/RNGestureHandlerModule.macos.js +0 -110
  520. package/lib/module/RNGestureHandlerModule.macos.js.map +0 -1
  521. package/lib/module/RNGestureHandlerModule.web.js +0 -122
  522. package/lib/module/RNGestureHandlerModule.web.js.map +0 -1
  523. package/lib/module/RNGestureHandlerModule.windows.js +0 -118
  524. package/lib/module/RNGestureHandlerModule.windows.js.map +0 -1
  525. package/lib/module/RNRenderer.js +0 -4
  526. package/lib/module/RNRenderer.js.map +0 -1
  527. package/lib/module/RNRenderer.web.js +0 -4
  528. package/lib/module/RNRenderer.web.js.map +0 -1
  529. package/lib/module/State.js +0 -10
  530. package/lib/module/State.js.map +0 -1
  531. package/lib/module/TouchEventType.js +0 -8
  532. package/lib/module/TouchEventType.js.map +0 -1
  533. package/lib/module/components/DrawerLayout.js +0 -551
  534. package/lib/module/components/DrawerLayout.js.map +0 -1
  535. package/lib/module/components/GestureComponents.js +0 -90
  536. package/lib/module/components/GestureComponents.js.map +0 -1
  537. package/lib/module/components/GestureComponents.web.js +0 -28
  538. package/lib/module/components/GestureComponents.web.js.map +0 -1
  539. package/lib/module/components/GestureHandlerButton.web.js +0 -9
  540. package/lib/module/components/GestureHandlerButton.web.js.map +0 -1
  541. package/lib/module/components/GestureHandlerRootView.android.js +0 -14
  542. package/lib/module/components/GestureHandlerRootView.android.js.map +0 -1
  543. package/lib/module/components/GestureHandlerRootView.web.js +0 -9
  544. package/lib/module/components/GestureHandlerRootView.web.js.map +0 -1
  545. package/lib/module/components/Swipeable.js +0 -390
  546. package/lib/module/components/Swipeable.js.map +0 -1
  547. package/lib/module/components/gestureHandlerRootHOC.js +0 -22
  548. package/lib/module/components/gestureHandlerRootHOC.js.map +0 -1
  549. package/lib/module/components/touchables/TouchableHighlight.js +0 -95
  550. package/lib/module/components/touchables/TouchableHighlight.js.map +0 -1
  551. package/lib/module/components/touchables/TouchableNativeFeedback.android.js +0 -84
  552. package/lib/module/components/touchables/TouchableNativeFeedback.android.js.map +0 -1
  553. package/lib/module/components/touchables/TouchableNativeFeedback.js +0 -3
  554. package/lib/module/components/touchables/TouchableNativeFeedback.js.map +0 -1
  555. package/lib/module/getReactNativeVersion.js +0 -10
  556. package/lib/module/getReactNativeVersion.js.map +0 -1
  557. package/lib/module/getReactNativeVersion.web.js +0 -4
  558. package/lib/module/getReactNativeVersion.web.js.map +0 -1
  559. package/lib/module/getShadowNodeFromRef.js +0 -20
  560. package/lib/module/getShadowNodeFromRef.js.map +0 -1
  561. package/lib/module/getShadowNodeFromRef.web.js +0 -8
  562. package/lib/module/getShadowNodeFromRef.web.js.map +0 -1
  563. package/lib/module/ghQueueMicrotask.js +0 -5
  564. package/lib/module/ghQueueMicrotask.js.map +0 -1
  565. package/lib/module/handlers/FlingGestureHandler.js +0 -11
  566. package/lib/module/handlers/FlingGestureHandler.js.map +0 -1
  567. package/lib/module/handlers/ForceTouchGestureHandler.js +0 -31
  568. package/lib/module/handlers/ForceTouchGestureHandler.js.map +0 -1
  569. package/lib/module/handlers/LongPressGestureHandler.js +0 -13
  570. package/lib/module/handlers/LongPressGestureHandler.js.map +0 -1
  571. package/lib/module/handlers/PinchGestureHandler.js +0 -10
  572. package/lib/module/handlers/PinchGestureHandler.js.map +0 -1
  573. package/lib/module/handlers/PressabilityDebugView.js +0 -3
  574. package/lib/module/handlers/PressabilityDebugView.js.map +0 -1
  575. package/lib/module/handlers/PressabilityDebugView.web.js +0 -5
  576. package/lib/module/handlers/PressabilityDebugView.web.js.map +0 -1
  577. package/lib/module/handlers/RotationGestureHandler.js +0 -10
  578. package/lib/module/handlers/RotationGestureHandler.js.map +0 -1
  579. package/lib/module/handlers/gestureHandlerTypesCompat.js +0 -2
  580. package/lib/module/handlers/gestureHandlerTypesCompat.js.map +0 -1
  581. package/lib/module/handlers/gestures/eventReceiver.js +0 -131
  582. package/lib/module/handlers/gestures/eventReceiver.js.map +0 -1
  583. package/lib/module/handlers/gestures/flingGesture.js +0 -24
  584. package/lib/module/handlers/gestures/flingGesture.js.map +0 -1
  585. package/lib/module/handlers/gestures/forceTouchGesture.js +0 -56
  586. package/lib/module/handlers/gestures/forceTouchGesture.js.map +0 -1
  587. package/lib/module/handlers/gestures/gesture.js +0 -222
  588. package/lib/module/handlers/gestures/gesture.js.map +0 -1
  589. package/lib/module/handlers/gestures/gestureComposition.js +0 -90
  590. package/lib/module/handlers/gestures/gestureComposition.js.map +0 -1
  591. package/lib/module/handlers/gestures/gestureObjects.js +0 -71
  592. package/lib/module/handlers/gestures/gestureObjects.js.map +0 -1
  593. package/lib/module/handlers/gestures/gestureStateManager.js +0 -54
  594. package/lib/module/handlers/gestures/gestureStateManager.js.map +0 -1
  595. package/lib/module/handlers/gestures/gestureStateManager.web.js +0 -21
  596. package/lib/module/handlers/gestures/gestureStateManager.web.js.map +0 -1
  597. package/lib/module/handlers/gestures/hoverGesture.js +0 -62
  598. package/lib/module/handlers/gestures/hoverGesture.js.map +0 -1
  599. package/lib/module/handlers/gestures/longPressGesture.js +0 -25
  600. package/lib/module/handlers/gestures/longPressGesture.js.map +0 -1
  601. package/lib/module/handlers/gestures/manualGesture.js +0 -22
  602. package/lib/module/handlers/gestures/manualGesture.js.map +0 -1
  603. package/lib/module/handlers/gestures/nativeGesture.js +0 -24
  604. package/lib/module/handlers/gestures/nativeGesture.js.map +0 -1
  605. package/lib/module/handlers/gestures/panGesture.js +0 -140
  606. package/lib/module/handlers/gestures/panGesture.js.map +0 -1
  607. package/lib/module/handlers/gestures/pinchGesture.js +0 -36
  608. package/lib/module/handlers/gestures/pinchGesture.js.map +0 -1
  609. package/lib/module/handlers/gestures/reanimatedWrapper.js +0 -30
  610. package/lib/module/handlers/gestures/reanimatedWrapper.js.map +0 -1
  611. package/lib/module/handlers/gestures/rotationGesture.js +0 -36
  612. package/lib/module/handlers/gestures/rotationGesture.js.map +0 -1
  613. package/lib/module/handlers/gestures/tapGesture.js +0 -50
  614. package/lib/module/handlers/gestures/tapGesture.js.map +0 -1
  615. package/lib/module/handlers/handlersRegistry.js +0 -44
  616. package/lib/module/handlers/handlersRegistry.js.map +0 -1
  617. package/lib/module/jestUtils/index.js +0 -2
  618. package/lib/module/jestUtils/index.js.map +0 -1
  619. package/lib/module/jestUtils/jestUtils.js +0 -350
  620. package/lib/module/jestUtils/jestUtils.js.map +0 -1
  621. package/lib/module/mocks.js +0 -56
  622. package/lib/module/mocks.js.map +0 -1
  623. package/lib/module/specs/RNGestureHandlerButtonNativeComponent.js +0 -3
  624. package/lib/module/specs/RNGestureHandlerButtonNativeComponent.js.map +0 -1
  625. package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.js +0 -3
  626. package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.js.map +0 -1
  627. package/lib/module/typeUtils.js +0 -2
  628. package/lib/module/typeUtils.js.map +0 -1
  629. package/lib/module/utils.js +0 -44
  630. package/lib/module/utils.js.map +0 -1
  631. package/lib/module/web/constants.js +0 -8
  632. package/lib/module/web/constants.js.map +0 -1
  633. package/lib/module/web/detectors/RotationGestureDetector.js +0 -155
  634. package/lib/module/web/detectors/RotationGestureDetector.js.map +0 -1
  635. package/lib/module/web/detectors/ScaleGestureDetector.js +0 -145
  636. package/lib/module/web/detectors/ScaleGestureDetector.js.map +0 -1
  637. package/lib/module/web/handlers/FlingGestureHandler.js +0 -152
  638. package/lib/module/web/handlers/FlingGestureHandler.js.map +0 -1
  639. package/lib/module/web/handlers/GestureHandler.js +0 -776
  640. package/lib/module/web/handlers/GestureHandler.js.map +0 -1
  641. package/lib/module/web/handlers/HoverGestureHandler.js +0 -47
  642. package/lib/module/web/handlers/HoverGestureHandler.js.map +0 -1
  643. package/lib/module/web/handlers/LongPressGestureHandler.js +0 -136
  644. package/lib/module/web/handlers/LongPressGestureHandler.js.map +0 -1
  645. package/lib/module/web/handlers/ManualGestureHandler.js +0 -49
  646. package/lib/module/web/handlers/ManualGestureHandler.js.map +0 -1
  647. package/lib/module/web/handlers/NativeViewGestureHandler.js +0 -163
  648. package/lib/module/web/handlers/NativeViewGestureHandler.js.map +0 -1
  649. package/lib/module/web/handlers/PanGestureHandler.js +0 -433
  650. package/lib/module/web/handlers/PanGestureHandler.js.map +0 -1
  651. package/lib/module/web/handlers/PinchGestureHandler.js +0 -159
  652. package/lib/module/web/handlers/PinchGestureHandler.js.map +0 -1
  653. package/lib/module/web/handlers/RotationGestureHandler.js +0 -171
  654. package/lib/module/web/handlers/RotationGestureHandler.js.map +0 -1
  655. package/lib/module/web/handlers/TapGestureHandler.js +0 -265
  656. package/lib/module/web/handlers/TapGestureHandler.js.map +0 -1
  657. package/lib/module/web/interfaces.js +0 -45
  658. package/lib/module/web/interfaces.js.map +0 -1
  659. package/lib/module/web/tools/CircularBuffer.js +0 -50
  660. package/lib/module/web/tools/CircularBuffer.js.map +0 -1
  661. package/lib/module/web/tools/EventManager.js +0 -118
  662. package/lib/module/web/tools/EventManager.js.map +0 -1
  663. package/lib/module/web/tools/GestureHandlerDelegate.js +0 -2
  664. package/lib/module/web/tools/GestureHandlerDelegate.js.map +0 -1
  665. package/lib/module/web/tools/GestureHandlerOrchestrator.js +0 -335
  666. package/lib/module/web/tools/GestureHandlerOrchestrator.js.map +0 -1
  667. package/lib/module/web/tools/GestureHandlerWebDelegate.js +0 -102
  668. package/lib/module/web/tools/GestureHandlerWebDelegate.js.map +0 -1
  669. package/lib/module/web/tools/InteractionManager.js +0 -105
  670. package/lib/module/web/tools/InteractionManager.js.map +0 -1
  671. package/lib/module/web/tools/LeastSquareSolver.js +0 -195
  672. package/lib/module/web/tools/LeastSquareSolver.js.map +0 -1
  673. package/lib/module/web/tools/NodeManager.js +0 -39
  674. package/lib/module/web/tools/NodeManager.js.map +0 -1
  675. package/lib/module/web/tools/PointerEventManager.js +0 -184
  676. package/lib/module/web/tools/PointerEventManager.js.map +0 -1
  677. package/lib/module/web/tools/PointerTracker.js +0 -213
  678. package/lib/module/web/tools/PointerTracker.js.map +0 -1
  679. package/lib/module/web/tools/TouchEventManager.js +0 -124
  680. package/lib/module/web/tools/TouchEventManager.js.map +0 -1
  681. package/lib/module/web/tools/VelocityTracker.js +0 -98
  682. package/lib/module/web/tools/VelocityTracker.js.map +0 -1
  683. package/lib/module/web/utils.js +0 -8
  684. package/lib/module/web/utils.js.map +0 -1
  685. package/lib/module/web_hammer/DiscreteGestureHandler.js +0 -94
  686. package/lib/module/web_hammer/DiscreteGestureHandler.js.map +0 -1
  687. package/lib/module/web_hammer/DraggingGestureHandler.js +0 -40
  688. package/lib/module/web_hammer/DraggingGestureHandler.js.map +0 -1
  689. package/lib/module/web_hammer/Errors.js +0 -7
  690. package/lib/module/web_hammer/Errors.js.map +0 -1
  691. package/lib/module/web_hammer/FlingGestureHandler.js +0 -156
  692. package/lib/module/web_hammer/FlingGestureHandler.js.map +0 -1
  693. package/lib/module/web_hammer/GestureHandler.js +0 -563
  694. package/lib/module/web_hammer/GestureHandler.js.map +0 -1
  695. package/lib/module/web_hammer/IndiscreteGestureHandler.js +0 -44
  696. package/lib/module/web_hammer/IndiscreteGestureHandler.js.map +0 -1
  697. package/lib/module/web_hammer/LongPressGestureHandler.js +0 -58
  698. package/lib/module/web_hammer/LongPressGestureHandler.js.map +0 -1
  699. package/lib/module/web_hammer/NativeViewGestureHandler.js +0 -49
  700. package/lib/module/web_hammer/NativeViewGestureHandler.js.map +0 -1
  701. package/lib/module/web_hammer/NodeManager.js +0 -33
  702. package/lib/module/web_hammer/NodeManager.js.map +0 -1
  703. package/lib/module/web_hammer/PanGestureHandler.js +0 -194
  704. package/lib/module/web_hammer/PanGestureHandler.js.map +0 -1
  705. package/lib/module/web_hammer/PinchGestureHandler.js +0 -29
  706. package/lib/module/web_hammer/PinchGestureHandler.js.map +0 -1
  707. package/lib/module/web_hammer/PressGestureHandler.js +0 -174
  708. package/lib/module/web_hammer/PressGestureHandler.js.map +0 -1
  709. package/lib/module/web_hammer/RotationGestureHandler.js +0 -32
  710. package/lib/module/web_hammer/RotationGestureHandler.js.map +0 -1
  711. package/lib/module/web_hammer/TapGestureHandler.js +0 -180
  712. package/lib/module/web_hammer/TapGestureHandler.js.map +0 -1
  713. package/lib/module/web_hammer/constants.js +0 -43
  714. package/lib/module/web_hammer/constants.js.map +0 -1
  715. package/lib/module/web_hammer/utils.js +0 -19
  716. package/lib/module/web_hammer/utils.js.map +0 -1
  717. package/lib/typescript/ActionType.d.ts +0 -7
  718. package/lib/typescript/Directions.d.ts +0 -7
  719. package/lib/typescript/EnableNewWebImplementation.d.ts +0 -3
  720. package/lib/typescript/GestureHandlerRootViewContext.d.ts +0 -3
  721. package/lib/typescript/PlatformConstants.d.ts +0 -5
  722. package/lib/typescript/PlatformConstants.web.d.ts +0 -4
  723. package/lib/typescript/RNGestureHandlerModule.macos.d.ts +0 -47
  724. package/lib/typescript/RNGestureHandlerModule.web.d.ts +0 -50
  725. package/lib/typescript/RNGestureHandlerModule.windows.d.ts +0 -48
  726. package/lib/typescript/RNRenderer.d.ts +0 -1
  727. package/lib/typescript/RNRenderer.web.d.ts +0 -3
  728. package/lib/typescript/State.d.ts +0 -9
  729. package/lib/typescript/TouchEventType.d.ts +0 -8
  730. package/lib/typescript/components/DrawerLayout.d.ts +0 -148
  731. package/lib/typescript/components/GestureComponents.d.ts +0 -22
  732. package/lib/typescript/components/GestureComponents.web.d.ts +0 -8
  733. package/lib/typescript/components/GestureHandlerButton.web.d.ts +0 -4
  734. package/lib/typescript/components/GestureHandlerRootView.android.d.ts +0 -6
  735. package/lib/typescript/components/GestureHandlerRootView.web.d.ts +0 -6
  736. package/lib/typescript/components/Swipeable.d.ts +0 -178
  737. package/lib/typescript/components/gestureHandlerRootHOC.d.ts +0 -3
  738. package/lib/typescript/components/touchables/TouchableHighlight.d.ts +0 -36
  739. package/lib/typescript/components/touchables/TouchableNativeFeedback.android.d.ts +0 -45
  740. package/lib/typescript/components/touchables/TouchableNativeFeedback.d.ts +0 -2
  741. package/lib/typescript/getReactNativeVersion.d.ts +0 -4
  742. package/lib/typescript/getReactNativeVersion.web.d.ts +0 -1
  743. package/lib/typescript/getShadowNodeFromRef.d.ts +0 -1
  744. package/lib/typescript/getShadowNodeFromRef.web.d.ts +0 -1
  745. package/lib/typescript/ghQueueMicrotask.d.ts +0 -1
  746. package/lib/typescript/handlers/FlingGestureHandler.d.ts +0 -34
  747. package/lib/typescript/handlers/ForceTouchGestureHandler.d.ts +0 -44
  748. package/lib/typescript/handlers/LongPressGestureHandler.d.ts +0 -56
  749. package/lib/typescript/handlers/PinchGestureHandler.d.ts +0 -29
  750. package/lib/typescript/handlers/PressabilityDebugView.d.ts +0 -1
  751. package/lib/typescript/handlers/PressabilityDebugView.web.d.ts +0 -1
  752. package/lib/typescript/handlers/RotationGestureHandler.d.ts +0 -29
  753. package/lib/typescript/handlers/gestureHandlerTypesCompat.d.ts +0 -42
  754. package/lib/typescript/handlers/gestures/eventReceiver.d.ts +0 -4
  755. package/lib/typescript/handlers/gestures/flingGesture.d.ts +0 -9
  756. package/lib/typescript/handlers/gestures/forceTouchGesture.d.ts +0 -15
  757. package/lib/typescript/handlers/gestures/gesture.d.ts +0 -110
  758. package/lib/typescript/handlers/gestures/gestureComposition.d.ts +0 -21
  759. package/lib/typescript/handlers/gestures/gestureObjects.d.ts +0 -41
  760. package/lib/typescript/handlers/gestures/gestureStateManager.d.ts +0 -9
  761. package/lib/typescript/handlers/gestures/gestureStateManager.web.d.ts +0 -4
  762. package/lib/typescript/handlers/gestures/hoverGesture.d.ts +0 -32
  763. package/lib/typescript/handlers/gestures/longPressGesture.d.ts +0 -9
  764. package/lib/typescript/handlers/gestures/manualGesture.d.ts +0 -7
  765. package/lib/typescript/handlers/gestures/nativeGesture.d.ts +0 -9
  766. package/lib/typescript/handlers/gestures/panGesture.d.ts +0 -26
  767. package/lib/typescript/handlers/gestures/pinchGesture.d.ts +0 -11
  768. package/lib/typescript/handlers/gestures/reanimatedWrapper.d.ts +0 -14
  769. package/lib/typescript/handlers/gestures/rotationGesture.d.ts +0 -12
  770. package/lib/typescript/handlers/gestures/tapGesture.d.ts +0 -14
  771. package/lib/typescript/handlers/handlersRegistry.d.ts +0 -14
  772. package/lib/typescript/jestUtils/index.d.ts +0 -1
  773. package/lib/typescript/jestUtils/jestUtils.d.ts +0 -28
  774. package/lib/typescript/mocks.d.ts +0 -44
  775. package/lib/typescript/specs/RNGestureHandlerButtonNativeComponent.d.ts +0 -14
  776. package/lib/typescript/specs/RNGestureHandlerRootViewNativeComponent.d.ts +0 -6
  777. package/lib/typescript/typeUtils.d.ts +0 -1
  778. package/lib/typescript/utils.d.ts +0 -8
  779. package/lib/typescript/web/constants.d.ts +0 -7
  780. package/lib/typescript/web/detectors/RotationGestureDetector.d.ts +0 -30
  781. package/lib/typescript/web/detectors/ScaleGestureDetector.d.ts +0 -29
  782. package/lib/typescript/web/handlers/FlingGestureHandler.d.ts +0 -27
  783. package/lib/typescript/web/handlers/GestureHandler.d.ts +0 -90
  784. package/lib/typescript/web/handlers/HoverGestureHandler.d.ts +0 -10
  785. package/lib/typescript/web/handlers/LongPressGestureHandler.d.ts +0 -26
  786. package/lib/typescript/web/handlers/ManualGestureHandler.d.ts +0 -12
  787. package/lib/typescript/web/handlers/NativeViewGestureHandler.d.ts +0 -24
  788. package/lib/typescript/web/handlers/PanGestureHandler.d.ts +0 -55
  789. package/lib/typescript/web/handlers/PinchGestureHandler.d.ts +0 -28
  790. package/lib/typescript/web/handlers/RotationGestureHandler.d.ts +0 -29
  791. package/lib/typescript/web/handlers/TapGestureHandler.d.ts +0 -39
  792. package/lib/typescript/web/interfaces.d.ts +0 -141
  793. package/lib/typescript/web/tools/CircularBuffer.d.ts +0 -11
  794. package/lib/typescript/web/tools/EventManager.d.ts +0 -34
  795. package/lib/typescript/web/tools/GestureHandlerDelegate.d.ts +0 -22
  796. package/lib/typescript/web/tools/GestureHandlerOrchestrator.d.ts +0 -29
  797. package/lib/typescript/web/tools/GestureHandlerWebDelegate.d.ts +0 -21
  798. package/lib/typescript/web/tools/InteractionManager.d.ts +0 -17
  799. package/lib/typescript/web/tools/LeastSquareSolver.d.ts +0 -12
  800. package/lib/typescript/web/tools/NodeManager.d.ts +0 -11
  801. package/lib/typescript/web/tools/PointerEventManager.d.ts +0 -8
  802. package/lib/typescript/web/tools/PointerTracker.d.ts +0 -53
  803. package/lib/typescript/web/tools/TouchEventManager.d.ts +0 -6
  804. package/lib/typescript/web/tools/VelocityTracker.d.ts +0 -13
  805. package/lib/typescript/web/utils.d.ts +0 -4
  806. package/lib/typescript/web_hammer/DiscreteGestureHandler.d.ts +0 -20
  807. package/lib/typescript/web_hammer/DraggingGestureHandler.d.ts +0 -15
  808. package/lib/typescript/web_hammer/Errors.d.ts +0 -3
  809. package/lib/typescript/web_hammer/FlingGestureHandler.d.ts +0 -43
  810. package/lib/typescript/web_hammer/GestureHandler.d.ts +0 -145
  811. package/lib/typescript/web_hammer/IndiscreteGestureHandler.d.ts +0 -40
  812. package/lib/typescript/web_hammer/LongPressGestureHandler.d.ts +0 -38
  813. package/lib/typescript/web_hammer/NativeViewGestureHandler.d.ts +0 -7
  814. package/lib/typescript/web_hammer/NodeManager.d.ts +0 -8
  815. package/lib/typescript/web_hammer/PanGestureHandler.d.ts +0 -56
  816. package/lib/typescript/web_hammer/PinchGestureHandler.d.ts +0 -13
  817. package/lib/typescript/web_hammer/PressGestureHandler.d.ts +0 -83
  818. package/lib/typescript/web_hammer/RotationGestureHandler.d.ts +0 -13
  819. package/lib/typescript/web_hammer/TapGestureHandler.d.ts +0 -57
  820. package/lib/typescript/web_hammer/constants.d.ts +0 -39
  821. package/lib/typescript/web_hammer/utils.d.ts +0 -9
  822. package/src/ActionType.ts +0 -9
  823. package/src/Directions.ts +0 -9
  824. package/src/EnableNewWebImplementation.ts +0 -35
  825. package/src/GestureHandlerRootViewContext.ts +0 -3
  826. package/src/PlatformConstants.ts +0 -8
  827. package/src/PlatformConstants.web.ts +0 -5
  828. package/src/RNGestureHandlerModule.macos.ts +0 -133
  829. package/src/RNGestureHandlerModule.web.ts +0 -146
  830. package/src/RNGestureHandlerModule.windows.ts +0 -144
  831. package/src/RNRenderer.ts +0 -3
  832. package/src/RNRenderer.web.ts +0 -3
  833. package/src/State.ts +0 -13
  834. package/src/TouchEventType.ts +0 -10
  835. package/src/components/DrawerLayout.tsx +0 -743
  836. package/src/components/GestureComponents.tsx +0 -148
  837. package/src/components/GestureComponents.web.tsx +0 -41
  838. package/src/components/GestureHandlerButton.web.tsx +0 -6
  839. package/src/components/GestureHandlerRootView.android.tsx +0 -24
  840. package/src/components/GestureHandlerRootView.web.tsx +0 -17
  841. package/src/components/Swipeable.tsx +0 -584
  842. package/src/components/gestureHandlerRootHOC.tsx +0 -32
  843. package/src/components/touchables/TouchableHighlight.tsx +0 -115
  844. package/src/components/touchables/TouchableNativeFeedback.android.tsx +0 -91
  845. package/src/components/touchables/TouchableNativeFeedback.tsx +0 -3
  846. package/src/getReactNativeVersion.ts +0 -11
  847. package/src/getReactNativeVersion.web.ts +0 -3
  848. package/src/getShadowNodeFromRef.ts +0 -22
  849. package/src/getShadowNodeFromRef.web.ts +0 -7
  850. package/src/ghQueueMicrotask.ts +0 -5
  851. package/src/handlers/FlingGestureHandler.ts +0 -59
  852. package/src/handlers/ForceTouchGestureHandler.ts +0 -90
  853. package/src/handlers/LongPressGestureHandler.ts +0 -88
  854. package/src/handlers/PinchGestureHandler.ts +0 -48
  855. package/src/handlers/PressabilityDebugView.tsx +0 -2
  856. package/src/handlers/PressabilityDebugView.web.tsx +0 -4
  857. package/src/handlers/RotationGestureHandler.ts +0 -48
  858. package/src/handlers/gestureHandlerTypesCompat.ts +0 -106
  859. package/src/handlers/gestures/eventReceiver.ts +0 -155
  860. package/src/handlers/gestures/flingGesture.ts +0 -27
  861. package/src/handlers/gestures/forceTouchGesture.ts +0 -74
  862. package/src/handlers/gestures/gesture.ts +0 -349
  863. package/src/handlers/gestures/gestureComposition.ts +0 -122
  864. package/src/handlers/gestures/gestureObjects.ts +0 -84
  865. package/src/handlers/gestures/gestureStateManager.ts +0 -62
  866. package/src/handlers/gestures/gestureStateManager.web.ts +0 -24
  867. package/src/handlers/gestures/hoverGesture.ts +0 -83
  868. package/src/handlers/gestures/longPressGesture.ts +0 -28
  869. package/src/handlers/gestures/manualGesture.ts +0 -31
  870. package/src/handlers/gestures/nativeGesture.ts +0 -27
  871. package/src/handlers/gestures/panGesture.ts +0 -152
  872. package/src/handlers/gestures/pinchGesture.ts +0 -51
  873. package/src/handlers/gestures/reanimatedWrapper.ts +0 -56
  874. package/src/handlers/gestures/rotationGesture.ts +0 -51
  875. package/src/handlers/gestures/tapGesture.ts +0 -53
  876. package/src/handlers/handlersRegistry.ts +0 -60
  877. package/src/jestUtils/index.ts +0 -1
  878. package/src/jestUtils/jestUtils.ts +0 -505
  879. package/src/mocks.ts +0 -67
  880. package/src/specs/RNGestureHandlerButtonNativeComponent.ts +0 -18
  881. package/src/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -6
  882. package/src/typeUtils.ts +0 -1
  883. package/src/utils.ts +0 -54
  884. package/src/web/constants.ts +0 -8
  885. package/src/web/detectors/RotationGestureDetector.ts +0 -168
  886. package/src/web/detectors/ScaleGestureDetector.ts +0 -172
  887. package/src/web/handlers/FlingGestureHandler.ts +0 -161
  888. package/src/web/handlers/GestureHandler.ts +0 -849
  889. package/src/web/handlers/HoverGestureHandler.ts +0 -43
  890. package/src/web/handlers/LongPressGestureHandler.ts +0 -125
  891. package/src/web/handlers/ManualGestureHandler.ts +0 -43
  892. package/src/web/handlers/NativeViewGestureHandler.ts +0 -167
  893. package/src/web/handlers/PanGestureHandler.ts +0 -485
  894. package/src/web/handlers/PinchGestureHandler.ts +0 -158
  895. package/src/web/handlers/RotationGestureHandler.ts +0 -172
  896. package/src/web/handlers/TapGestureHandler.ts +0 -273
  897. package/src/web/interfaces.ts +0 -167
  898. package/src/web/tools/EventManager.ts +0 -104
  899. package/src/web/tools/GestureHandlerDelegate.ts +0 -23
  900. package/src/web/tools/GestureHandlerOrchestrator.ts +0 -389
  901. package/src/web/tools/GestureHandlerWebDelegate.ts +0 -115
  902. package/src/web/tools/NodeManager.ts +0 -43
  903. package/src/web/tools/PointerEventManager.ts +0 -202
  904. package/src/web/tools/TouchEventManager.ts +0 -167
  905. package/src/web/utils.ts +0 -8
  906. package/src/web_hammer/DiscreteGestureHandler.ts +0 -82
  907. package/src/web_hammer/DraggingGestureHandler.ts +0 -34
  908. package/src/web_hammer/Errors.ts +0 -7
  909. package/src/web_hammer/FlingGestureHandler.ts +0 -134
  910. package/src/web_hammer/GestureHandler.ts +0 -599
  911. package/src/web_hammer/IndiscreteGestureHandler.ts +0 -33
  912. package/src/web_hammer/LongPressGestureHandler.ts +0 -56
  913. package/src/web_hammer/NativeViewGestureHandler.ts +0 -47
  914. package/src/web_hammer/NodeManager.ts +0 -42
  915. package/src/web_hammer/PanGestureHandler.ts +0 -226
  916. package/src/web_hammer/PinchGestureHandler.ts +0 -25
  917. package/src/web_hammer/PressGestureHandler.ts +0 -167
  918. package/src/web_hammer/RotationGestureHandler.ts +0 -25
  919. package/src/web_hammer/TapGestureHandler.ts +0 -172
  920. package/src/web_hammer/constants.ts +0 -48
  921. package/src/web_hammer/utils.ts +0 -24
@@ -1,533 +1,535 @@
1
- import * as React from 'react';
2
- import {
3
- Platform,
4
- UIManager,
5
- DeviceEventEmitter,
6
- EmitterSubscription,
7
- } from 'react-native';
8
- // @ts-ignore - it isn't typed by TS & don't have definitelyTyped types
9
- import deepEqual from 'lodash/isEqual';
10
- import RNGestureHandlerModule from '../RNGestureHandlerModule';
11
- import type RNGestureHandlerModuleWeb from '../RNGestureHandlerModule.web';
12
- import { State } from '../State';
13
- import {
14
- handlerIDToTag,
15
- getNextHandlerTag,
16
- registerOldGestureHandler,
17
- } from './handlersRegistry';
18
-
19
- import {
20
- BaseGestureHandlerProps,
21
- filterConfig,
22
- GestureEvent,
23
- HandlerStateChangeEvent,
24
- findNodeHandle,
25
- scheduleFlushOperations,
26
- } from './gestureHandlerCommon';
27
- import { ValueOf } from '../typeUtils';
28
- import { isFabric, isJestEnv, tagMessage } from '../utils';
29
- import { ActionType } from '../ActionType';
30
- import { PressabilityDebugView } from './PressabilityDebugView';
31
- import GestureHandlerRootViewContext from '../GestureHandlerRootViewContext';
32
- import { ghQueueMicrotask } from '../ghQueueMicrotask';
33
-
34
- const UIManagerAny = UIManager as any;
35
-
36
- const customGHEventsConfigFabricAndroid = {
37
- topOnGestureHandlerEvent: { registrationName: 'onGestureHandlerEvent' },
38
- topOnGestureHandlerStateChange: {
39
- registrationName: 'onGestureHandlerStateChange',
40
- },
41
- };
42
-
43
- const customGHEventsConfig = {
44
- onGestureHandlerEvent: { registrationName: 'onGestureHandlerEvent' },
45
- onGestureHandlerStateChange: {
46
- registrationName: 'onGestureHandlerStateChange',
47
- },
48
-
49
- // When using React Native Gesture Handler for Animated.event with useNativeDriver: true
50
- // on Android with Fabric enabled, the native part still sends the native events to JS
51
- // but prefixed with "top". We cannot simply rename the events above so they are prefixed
52
- // with "top" instead of "on" because in such case Animated.events would not be registered.
53
- // That's why we need to register another pair of event names.
54
- // The incoming events will be queued but never handled.
55
- // Without this piece of code below, you'll get the following JS error:
56
- // Unsupported top level event type "topOnGestureHandlerEvent" dispatched
57
- ...(isFabric() &&
58
- Platform.OS === 'android' &&
59
- customGHEventsConfigFabricAndroid),
60
- };
61
-
62
- // Add gesture specific events to genericDirectEventTypes object exported from UIManager
63
- // native module.
64
- // Once new event types are registered with react it is possible to dispatch these
65
- // events to all kind of native views.
66
- UIManagerAny.genericDirectEventTypes = {
67
- ...UIManagerAny.genericDirectEventTypes,
68
- ...customGHEventsConfig,
69
- };
70
- // In newer versions of RN the `genericDirectEventTypes` is located in the object
71
- // returned by UIManager.getViewManagerConfig('getConstants') or in older RN UIManager.getConstants(), we need to add it there as well to make
72
- // it compatible with RN 61+
73
- const UIManagerConstants =
74
- UIManagerAny.getViewManagerConfig?.('getConstants') ??
75
- UIManagerAny.getConstants?.();
76
-
77
- if (UIManagerConstants) {
78
- UIManagerConstants.genericDirectEventTypes = {
79
- ...UIManagerConstants.genericDirectEventTypes,
80
- ...customGHEventsConfig,
81
- };
82
- }
83
-
84
- // Wrap JS responder calls and notify gesture handler manager
85
- const {
86
- setJSResponder: oldSetJSResponder = () => {
87
- //no operation
88
- },
89
- clearJSResponder: oldClearJSResponder = () => {
90
- //no operation
91
- },
92
- } = UIManagerAny;
93
- UIManagerAny.setJSResponder = (tag: number, blockNativeResponder: boolean) => {
94
- RNGestureHandlerModule.handleSetJSResponder(tag, blockNativeResponder);
95
- oldSetJSResponder(tag, blockNativeResponder);
96
- };
97
- UIManagerAny.clearJSResponder = () => {
98
- RNGestureHandlerModule.handleClearJSResponder();
99
- oldClearJSResponder();
100
- };
101
-
102
- let allowTouches = true;
103
- const DEV_ON_ANDROID = __DEV__ && Platform.OS === 'android';
104
- // Toggled inspector blocks touch events in order to allow inspecting on Android
105
- // This needs to be a global variable in order to set initial state for `allowTouches` property in Handler component
106
- if (DEV_ON_ANDROID) {
107
- DeviceEventEmitter.addListener('toggleElementInspector', () => {
108
- allowTouches = !allowTouches;
109
- });
110
- }
111
-
112
- type HandlerProps<T extends Record<string, unknown>> = Readonly<
113
- React.PropsWithChildren<BaseGestureHandlerProps<T>>
114
- >;
115
- function hasUnresolvedRefs<T extends Record<string, unknown>>(
116
- props: HandlerProps<T>
117
- ) {
118
- // TODO(TS) - add type for extract arg
119
- const extract = (refs: any | any[]) => {
120
- if (!Array.isArray(refs)) {
121
- return refs && refs.current === null;
122
- }
123
- return refs.some((r) => r && r.current === null);
124
- };
125
- return extract(props['simultaneousHandlers']) || extract(props['waitFor']);
126
- }
127
-
128
- const stateToPropMappings = {
129
- [State.UNDETERMINED]: undefined,
130
- [State.BEGAN]: 'onBegan',
131
- [State.FAILED]: 'onFailed',
132
- [State.CANCELLED]: 'onCancelled',
133
- [State.ACTIVE]: 'onActivated',
134
- [State.END]: 'onEnded',
135
- } as const;
136
-
137
- type CreateHandlerArgs<HandlerPropsT extends Record<string, unknown>> =
138
- Readonly<{
139
- name: string;
140
- allowedProps: Readonly<Extract<keyof HandlerPropsT, string>[]>;
141
- config: Readonly<Record<string, unknown>>;
142
- transformProps?: (props: HandlerPropsT) => HandlerPropsT;
143
- customNativeProps?: Readonly<string[]>;
144
- }>;
145
-
146
- // TODO(TS) fix event types
147
- type InternalEventHandlers = {
148
- onGestureHandlerEvent?: (event: any) => void;
149
- onGestureHandlerStateChange?: (event: any) => void;
150
- };
151
-
152
- const UNRESOLVED_REFS_RETRY_LIMIT = 1;
153
-
154
- // TODO(TS) - make sure that BaseGestureHandlerProps doesn't need other generic parameter to work with custom properties.
155
- export default function createHandler<
156
- T extends BaseGestureHandlerProps<U>,
157
- U extends Record<string, unknown>
158
- >({
159
- name,
160
- allowedProps = [],
161
- config = {},
162
- transformProps,
163
- customNativeProps = [],
164
- }: CreateHandlerArgs<T>): React.ComponentType<T & React.RefAttributes<any>> {
165
- interface HandlerState {
166
- allowTouches: boolean;
167
- }
168
- class Handler extends React.Component<
169
- T & InternalEventHandlers,
170
- HandlerState
171
- > {
172
- static displayName = name;
173
- static contextType = GestureHandlerRootViewContext;
174
-
175
- private handlerTag: number;
176
- private config: Record<string, unknown>;
177
- private propsRef: React.MutableRefObject<unknown>;
178
- private isMountedRef: React.MutableRefObject<boolean | null>;
179
- private viewNode: any;
180
- private viewTag?: number;
181
- private inspectorToggleListener?: EmitterSubscription;
182
-
183
- constructor(props: T & InternalEventHandlers) {
184
- super(props);
185
- this.handlerTag = getNextHandlerTag();
186
- this.config = {};
187
- this.propsRef = React.createRef();
188
- this.isMountedRef = React.createRef();
189
- this.state = { allowTouches };
190
- if (props.id) {
191
- if (handlerIDToTag[props.id] !== undefined) {
192
- throw new Error(`Handler with ID "${props.id}" already registered`);
193
- }
194
- handlerIDToTag[props.id] = this.handlerTag;
195
- }
196
- }
197
-
198
- componentDidMount() {
199
- const props: HandlerProps<U> = this.props;
200
- this.isMountedRef.current = true;
201
-
202
- if (DEV_ON_ANDROID) {
203
- this.inspectorToggleListener = DeviceEventEmitter.addListener(
204
- 'toggleElementInspector',
205
- () => {
206
- this.setState((_) => ({ allowTouches }));
207
- this.update(UNRESOLVED_REFS_RETRY_LIMIT);
208
- }
209
- );
210
- }
211
- if (hasUnresolvedRefs(props)) {
212
- // If there are unresolved refs (e.g. ".current" has not yet been set)
213
- // passed as `simultaneousHandlers` or `waitFor`, we enqueue a call to
214
- // _update method that will try to update native handler props using
215
- // queueMicrotask. This makes it so update() function gets called after all
216
- // react components are mounted and we expect the missing ref object to
217
- // be resolved by then.
218
- ghQueueMicrotask(() => {
219
- this.update(UNRESOLVED_REFS_RETRY_LIMIT);
220
- });
221
- }
222
-
223
- this.createGestureHandler(
224
- filterConfig(
225
- transformProps ? transformProps(this.props) : this.props,
226
- [...allowedProps, ...customNativeProps],
227
- config
228
- )
229
- );
230
-
231
- this.attachGestureHandler(findNodeHandle(this.viewNode) as number); // TODO(TS) - check if this can be null
232
- }
233
-
234
- componentDidUpdate() {
235
- const viewTag = findNodeHandle(this.viewNode);
236
- if (this.viewTag !== viewTag) {
237
- this.attachGestureHandler(viewTag as number); // TODO(TS) - check interaction between _viewTag & findNodeHandle
238
- }
239
- this.update(UNRESOLVED_REFS_RETRY_LIMIT);
240
- }
241
-
242
- componentWillUnmount() {
243
- this.inspectorToggleListener?.remove();
244
- this.isMountedRef.current = false;
245
- RNGestureHandlerModule.dropGestureHandler(this.handlerTag);
246
- scheduleFlushOperations();
247
- // We can't use this.props.id directly due to TS generic type narrowing bug, see https://github.com/microsoft/TypeScript/issues/13995 for more context
248
- const handlerID: string | undefined = this.props.id;
249
- if (handlerID) {
250
- // eslint-disable-next-line @typescript-eslint/no-dynamic-delete
251
- delete handlerIDToTag[handlerID];
252
- }
253
- }
254
-
255
- private onGestureHandlerEvent = (event: GestureEvent<U>) => {
256
- if (event.nativeEvent.handlerTag === this.handlerTag) {
257
- if (typeof this.props.onGestureEvent === 'function') {
258
- this.props.onGestureEvent?.(event);
259
- }
260
- } else {
261
- this.props.onGestureHandlerEvent?.(event);
262
- }
263
- };
264
-
265
- // TODO(TS) - make sure this is right type for event
266
- private onGestureHandlerStateChange = (
267
- event: HandlerStateChangeEvent<U>
268
- ) => {
269
- if (event.nativeEvent.handlerTag === this.handlerTag) {
270
- if (typeof this.props.onHandlerStateChange === 'function') {
271
- this.props.onHandlerStateChange?.(event);
272
- }
273
-
274
- const state: ValueOf<typeof State> = event.nativeEvent.state;
275
- const stateEventName = stateToPropMappings[state];
276
- const eventHandler = stateEventName && this.props[stateEventName];
277
- if (eventHandler && typeof eventHandler === 'function') {
278
- eventHandler(event);
279
- }
280
- } else {
281
- this.props.onGestureHandlerStateChange?.(event);
282
- }
283
- };
284
-
285
- private refHandler = (node: any) => {
286
- this.viewNode = node;
287
-
288
- const child = React.Children.only(this.props.children);
289
- // TODO(TS) fix ref type
290
- const { ref }: any = child;
291
- if (ref !== null) {
292
- if (typeof ref === 'function') {
293
- ref(node);
294
- } else {
295
- ref.current = node;
296
- }
297
- }
298
- };
299
-
300
- private createGestureHandler = (
301
- newConfig: Readonly<Record<string, unknown>>
302
- ) => {
303
- this.config = newConfig;
304
-
305
- RNGestureHandlerModule.createGestureHandler(
306
- name,
307
- this.handlerTag,
308
- newConfig
309
- );
310
- };
311
-
312
- private attachGestureHandler = (newViewTag: number) => {
313
- this.viewTag = newViewTag;
314
-
315
- if (Platform.OS === 'web') {
316
- // typecast due to dynamic resolution, attachGestureHandler should have web version signature in this branch
317
- (
318
- RNGestureHandlerModule.attachGestureHandler as typeof RNGestureHandlerModuleWeb.attachGestureHandler
319
- )(
320
- this.handlerTag,
321
- newViewTag,
322
- ActionType.JS_FUNCTION_OLD_API, // ignored on web
323
- this.propsRef
324
- );
325
- } else {
326
- registerOldGestureHandler(this.handlerTag, {
327
- onGestureEvent: this.onGestureHandlerEvent,
328
- onGestureStateChange: this.onGestureHandlerStateChange,
329
- });
330
-
331
- const actionType = (() => {
332
- if (
333
- (this.props?.onGestureEvent &&
334
- 'current' in this.props.onGestureEvent) ||
335
- (this.props?.onHandlerStateChange &&
336
- 'current' in this.props.onHandlerStateChange)
337
- ) {
338
- // Reanimated worklet
339
- return ActionType.REANIMATED_WORKLET;
340
- } else if (
341
- this.props?.onGestureEvent &&
342
- '__isNative' in this.props.onGestureEvent
343
- ) {
344
- // Animated.event with useNativeDriver: true
345
- return ActionType.NATIVE_ANIMATED_EVENT;
346
- } else {
347
- // JS callback or Animated.event with useNativeDriver: false
348
- return ActionType.JS_FUNCTION_OLD_API;
349
- }
350
- })();
351
-
352
- RNGestureHandlerModule.attachGestureHandler(
353
- this.handlerTag,
354
- newViewTag,
355
- actionType
356
- );
357
- }
358
-
359
- scheduleFlushOperations();
360
- };
361
-
362
- private updateGestureHandler = (
363
- newConfig: Readonly<Record<string, unknown>>
364
- ) => {
365
- this.config = newConfig;
366
-
367
- RNGestureHandlerModule.updateGestureHandler(this.handlerTag, newConfig);
368
- scheduleFlushOperations();
369
- };
370
-
371
- private update(remainingTries: number) {
372
- if (!this.isMountedRef.current) {
373
- return;
374
- }
375
-
376
- const props: HandlerProps<U> = this.props;
377
-
378
- // When ref is set via a function i.e. `ref={(r) => refObject.current = r}` instead of
379
- // `ref={refObject}` it's possible that it won't be resolved in time. Seems like trying
380
- // again is easy enough fix.
381
- if (hasUnresolvedRefs(props) && remainingTries > 0) {
382
- ghQueueMicrotask(() => {
383
- this.update(remainingTries - 1);
384
- });
385
- } else {
386
- const newConfig = filterConfig(
387
- transformProps ? transformProps(this.props) : this.props,
388
- [...allowedProps, ...customNativeProps],
389
- config
390
- );
391
- if (!deepEqual(this.config, newConfig)) {
392
- this.updateGestureHandler(newConfig);
393
- }
394
- }
395
- }
396
-
397
- setNativeProps(updates: any) {
398
- const mergedProps = { ...this.props, ...updates };
399
- const newConfig = filterConfig(
400
- transformProps ? transformProps(mergedProps) : mergedProps,
401
- [...allowedProps, ...customNativeProps],
402
- config
403
- );
404
- this.updateGestureHandler(newConfig);
405
- }
406
-
407
- render() {
408
- if (__DEV__ && !this.context && !isJestEnv() && Platform.OS !== 'web') {
409
- throw new Error(
410
- name +
411
- ' must be used as a descendant of GestureHandlerRootView. Otherwise the gestures will not be recognized. See https://docs.swmansion.com/react-native-gesture-handler/docs/installation for more details.'
412
- );
413
- }
414
-
415
- let gestureEventHandler = this.onGestureHandlerEvent;
416
- // Another instance of https://github.com/microsoft/TypeScript/issues/13995
417
- type OnGestureEventHandlers = {
418
- onGestureEvent?: BaseGestureHandlerProps<U>['onGestureEvent'];
419
- onGestureHandlerEvent?: InternalEventHandlers['onGestureHandlerEvent'];
420
- };
421
- const { onGestureEvent, onGestureHandlerEvent }: OnGestureEventHandlers =
422
- this.props;
423
- if (onGestureEvent && typeof onGestureEvent !== 'function') {
424
- // If it's not a method it should be an native Animated.event
425
- // object. We set it directly as the handler for the view
426
- // In this case nested handlers are not going to be supported
427
- if (onGestureHandlerEvent) {
428
- throw new Error(
429
- 'Nesting touch handlers with native animated driver is not supported yet'
430
- );
431
- }
432
- gestureEventHandler = onGestureEvent;
433
- } else {
434
- if (
435
- onGestureHandlerEvent &&
436
- typeof onGestureHandlerEvent !== 'function'
437
- ) {
438
- throw new Error(
439
- 'Nesting touch handlers with native animated driver is not supported yet'
440
- );
441
- }
442
- }
443
-
444
- let gestureStateEventHandler = this.onGestureHandlerStateChange;
445
- // Another instance of https://github.com/microsoft/TypeScript/issues/13995
446
- type OnGestureStateChangeHandlers = {
447
- onHandlerStateChange?: BaseGestureHandlerProps<U>['onHandlerStateChange'];
448
- onGestureHandlerStateChange?: InternalEventHandlers['onGestureHandlerStateChange'];
449
- };
450
- const {
451
- onHandlerStateChange,
452
- onGestureHandlerStateChange,
453
- }: OnGestureStateChangeHandlers = this.props;
454
- if (onHandlerStateChange && typeof onHandlerStateChange !== 'function') {
455
- // If it's not a method it should be an native Animated.event
456
- // object. We set it directly as the handler for the view
457
- // In this case nested handlers are not going to be supported
458
- if (onGestureHandlerStateChange) {
459
- throw new Error(
460
- 'Nesting touch handlers with native animated driver is not supported yet'
461
- );
462
- }
463
- gestureStateEventHandler = onHandlerStateChange;
464
- } else {
465
- if (
466
- onGestureHandlerStateChange &&
467
- typeof onGestureHandlerStateChange !== 'function'
468
- ) {
469
- throw new Error(
470
- 'Nesting touch handlers with native animated driver is not supported yet'
471
- );
472
- }
473
- }
474
- const events = {
475
- onGestureHandlerEvent: this.state.allowTouches
476
- ? gestureEventHandler
477
- : undefined,
478
- onGestureHandlerStateChange: this.state.allowTouches
479
- ? gestureStateEventHandler
480
- : undefined,
481
- };
482
-
483
- this.propsRef.current = events;
484
-
485
- let child: any = null;
486
- try {
487
- child = React.Children.only(this.props.children);
488
- } catch (e) {
489
- throw new Error(
490
- tagMessage(
491
- `${name} got more than one view as a child. If you want the gesture to work on multiple views, wrap them with a common parent and attach the gesture to that view.`
492
- )
493
- );
494
- }
495
-
496
- let grandChildren = child.props.children;
497
- if (
498
- __DEV__ &&
499
- child.type &&
500
- (child.type === 'RNGestureHandlerButton' ||
501
- child.type.name === 'View' ||
502
- child.type.displayName === 'View')
503
- ) {
504
- grandChildren = React.Children.toArray(grandChildren);
505
- grandChildren.push(
506
- <PressabilityDebugView
507
- key="pressabilityDebugView"
508
- color="mediumspringgreen"
509
- hitSlop={child.props.hitSlop}
510
- />
511
- );
512
- }
513
-
514
- return React.cloneElement(
515
- child,
516
- {
517
- ref: this.refHandler,
518
- collapsable: false,
519
- ...(isJestEnv()
520
- ? {
521
- handlerType: name,
522
- handlerTag: this.handlerTag,
523
- }
524
- : {}),
525
- testID: this.props.testID ?? child.props.testID,
526
- ...events,
527
- },
528
- grandChildren
529
- );
530
- }
531
- }
532
- return Handler;
533
- }
1
+ // RNGH: patching the import to RNGestureHandlerModule
2
+
3
+ import * as React from 'react';
4
+ import {
5
+ Platform,
6
+ UIManager,
7
+ DeviceEventEmitter,
8
+ EmitterSubscription,
9
+ } from 'react-native';
10
+ // @ts-ignore - it isn't typed by TS & don't have definitelyTyped types
11
+ import deepEqual from 'lodash/isEqual';
12
+ import {RNGestureHandlerModule} from '../RNGestureHandlerModule'; // RNGH: patch
13
+ import type RNGestureHandlerModuleWeb from 'react-native-gesture-handler/src/RNGestureHandlerModule.web';
14
+ import { State } from 'react-native-gesture-handler/src/State';
15
+ import {
16
+ handlerIDToTag,
17
+ getNextHandlerTag,
18
+ registerOldGestureHandler,
19
+ } from 'react-native-gesture-handler/src/handlers/handlersRegistry';
20
+
21
+ import {
22
+ BaseGestureHandlerProps,
23
+ filterConfig,
24
+ GestureEvent,
25
+ HandlerStateChangeEvent,
26
+ findNodeHandle,
27
+ // scheduleFlushOperations, // RNGH: patch
28
+ } from 'react-native-gesture-handler/src/handlers/gestureHandlerCommon';
29
+ import { scheduleFlushOperations } from "../handlers/gestureHandlerCommon" // RNGH: patch
30
+ import { ValueOf } from 'react-native-gesture-handler/src/typeUtils';
31
+ import { isFabric, isJestEnv, tagMessage } from 'react-native-gesture-handler/src/utils';
32
+ import { ActionType } from 'react-native-gesture-handler/src/ActionType';
33
+ import { PressabilityDebugView } from 'react-native-gesture-handler/src/handlers/PressabilityDebugView';
34
+ import GestureHandlerRootViewContext from 'react-native-gesture-handler/src/GestureHandlerRootViewContext';
35
+
36
+ const UIManagerAny = UIManager as any;
37
+
38
+ const customGHEventsConfigFabricAndroid = {
39
+ topOnGestureHandlerEvent: { registrationName: 'onGestureHandlerEvent' },
40
+ topOnGestureHandlerStateChange: {
41
+ registrationName: 'onGestureHandlerStateChange',
42
+ },
43
+ };
44
+
45
+ const customGHEventsConfig = {
46
+ onGestureHandlerEvent: { registrationName: 'onGestureHandlerEvent' },
47
+ onGestureHandlerStateChange: {
48
+ registrationName: 'onGestureHandlerStateChange',
49
+ },
50
+
51
+ // When using React Native Gesture Handler for Animated.event with useNativeDriver: true
52
+ // on Android with Fabric enabled, the native part still sends the native events to JS
53
+ // but prefixed with "top". We cannot simply rename the events above so they are prefixed
54
+ // with "top" instead of "on" because in such case Animated.events would not be registered.
55
+ // That's why we need to register another pair of event names.
56
+ // The incoming events will be queued but never handled.
57
+ // Without this piece of code below, you'll get the following JS error:
58
+ // Unsupported top level event type "topOnGestureHandlerEvent" dispatched
59
+ ...(isFabric() &&
60
+ Platform.OS === 'android' &&
61
+ customGHEventsConfigFabricAndroid),
62
+ };
63
+
64
+ // Add gesture specific events to genericDirectEventTypes object exported from UIManager
65
+ // native module.
66
+ // Once new event types are registered with react it is possible to dispatch these
67
+ // events to all kind of native views.
68
+ UIManagerAny.genericDirectEventTypes = {
69
+ ...UIManagerAny.genericDirectEventTypes,
70
+ ...customGHEventsConfig,
71
+ };
72
+ // In newer versions of RN the `genericDirectEventTypes` is located in the object
73
+ // returned by UIManager.getViewManagerConfig('getConstants') or in older RN UIManager.getConstants(), we need to add it there as well to make
74
+ // it compatible with RN 61+
75
+ const UIManagerConstants =
76
+ UIManagerAny.getViewManagerConfig?.('getConstants') ??
77
+ UIManagerAny.getConstants?.();
78
+
79
+ if (UIManagerConstants) {
80
+ UIManagerConstants.genericDirectEventTypes = {
81
+ ...UIManagerConstants.genericDirectEventTypes,
82
+ ...customGHEventsConfig,
83
+ };
84
+ }
85
+
86
+ // Wrap JS responder calls and notify gesture handler manager
87
+ const {
88
+ setJSResponder: oldSetJSResponder = () => {
89
+ //no operation
90
+ },
91
+ clearJSResponder: oldClearJSResponder = () => {
92
+ //no operation
93
+ },
94
+ } = UIManagerAny;
95
+ UIManagerAny.setJSResponder = (tag: number, blockNativeResponder: boolean) => {
96
+ RNGestureHandlerModule.handleSetJSResponder(tag, blockNativeResponder);
97
+ oldSetJSResponder(tag, blockNativeResponder);
98
+ };
99
+ UIManagerAny.clearJSResponder = () => {
100
+ RNGestureHandlerModule.handleClearJSResponder();
101
+ oldClearJSResponder();
102
+ };
103
+
104
+ let allowTouches = true;
105
+ const DEV_ON_ANDROID = __DEV__ && Platform.OS === 'android';
106
+ // Toggled inspector blocks touch events in order to allow inspecting on Android
107
+ // This needs to be a global variable in order to set initial state for `allowTouches` property in Handler component
108
+ if (DEV_ON_ANDROID) {
109
+ DeviceEventEmitter.addListener('toggleElementInspector', () => {
110
+ allowTouches = !allowTouches;
111
+ });
112
+ }
113
+
114
+ type HandlerProps<T extends Record<string, unknown>> = Readonly<
115
+ React.PropsWithChildren<BaseGestureHandlerProps<T>>
116
+ >;
117
+ function hasUnresolvedRefs<T extends Record<string, unknown>>(
118
+ props: HandlerProps<T>
119
+ ) {
120
+ // TODO(TS) - add type for extract arg
121
+ const extract = (refs: any | any[]) => {
122
+ if (!Array.isArray(refs)) {
123
+ return refs && refs.current === null;
124
+ }
125
+ return refs.some((r) => r && r.current === null);
126
+ };
127
+ return extract(props['simultaneousHandlers']) || extract(props['waitFor']);
128
+ }
129
+
130
+ const stateToPropMappings = {
131
+ [State.UNDETERMINED]: undefined,
132
+ [State.BEGAN]: 'onBegan',
133
+ [State.FAILED]: 'onFailed',
134
+ [State.CANCELLED]: 'onCancelled',
135
+ [State.ACTIVE]: 'onActivated',
136
+ [State.END]: 'onEnded',
137
+ } as const;
138
+
139
+ type CreateHandlerArgs<HandlerPropsT extends Record<string, unknown>> =
140
+ Readonly<{
141
+ name: string;
142
+ allowedProps: Readonly<Extract<keyof HandlerPropsT, string>[]>;
143
+ config: Readonly<Record<string, unknown>>;
144
+ transformProps?: (props: HandlerPropsT) => HandlerPropsT;
145
+ customNativeProps?: Readonly<string[]>;
146
+ }>;
147
+
148
+ // TODO(TS) fix event types
149
+ type InternalEventHandlers = {
150
+ onGestureHandlerEvent?: (event: any) => void;
151
+ onGestureHandlerStateChange?: (event: any) => void;
152
+ };
153
+
154
+ const UNRESOLVED_REFS_RETRY_LIMIT = 1;
155
+
156
+ // TODO(TS) - make sure that BaseGestureHandlerProps doesn't need other generic parameter to work with custom properties.
157
+ export default function createHandler<
158
+ T extends BaseGestureHandlerProps<U>,
159
+ U extends Record<string, unknown>
160
+ >({
161
+ name,
162
+ allowedProps = [],
163
+ config = {},
164
+ transformProps,
165
+ customNativeProps = [],
166
+ }: CreateHandlerArgs<T>): React.ComponentType<T & React.RefAttributes<any>> {
167
+ interface HandlerState {
168
+ allowTouches: boolean;
169
+ }
170
+ class Handler extends React.Component<
171
+ T & InternalEventHandlers,
172
+ HandlerState
173
+ > {
174
+ static displayName = name;
175
+ static contextType = GestureHandlerRootViewContext;
176
+
177
+ private handlerTag: number;
178
+ private config: Record<string, unknown>;
179
+ private propsRef: React.MutableRefObject<unknown>;
180
+ private isMountedRef: React.MutableRefObject<boolean | null>;
181
+ private viewNode: any;
182
+ private viewTag?: number;
183
+ private inspectorToggleListener?: EmitterSubscription;
184
+
185
+ constructor(props: T & InternalEventHandlers) {
186
+ super(props);
187
+ this.handlerTag = getNextHandlerTag();
188
+ this.config = {};
189
+ this.propsRef = React.createRef();
190
+ this.isMountedRef = React.createRef();
191
+ this.state = { allowTouches };
192
+ if (props.id) {
193
+ if (handlerIDToTag[props.id] !== undefined) {
194
+ throw new Error(`Handler with ID "${props.id}" already registered`);
195
+ }
196
+ handlerIDToTag[props.id] = this.handlerTag;
197
+ }
198
+ }
199
+
200
+ componentDidMount() {
201
+ const props: HandlerProps<U> = this.props;
202
+ this.isMountedRef.current = true;
203
+
204
+ if (DEV_ON_ANDROID) {
205
+ this.inspectorToggleListener = DeviceEventEmitter.addListener(
206
+ 'toggleElementInspector',
207
+ () => {
208
+ this.setState((_) => ({ allowTouches }));
209
+ this.update(UNRESOLVED_REFS_RETRY_LIMIT);
210
+ }
211
+ );
212
+ }
213
+ if (hasUnresolvedRefs(props)) {
214
+ // If there are unresolved refs (e.g. ".current" has not yet been set)
215
+ // passed as `simultaneousHandlers` or `waitFor`, we enqueue a call to
216
+ // _update method that will try to update native handler props using
217
+ // queueMicrotask. This makes it so update() function gets called after all
218
+ // react components are mounted and we expect the missing ref object to
219
+ // be resolved by then.
220
+ queueMicrotask(() => {
221
+ this.update(UNRESOLVED_REFS_RETRY_LIMIT);
222
+ });
223
+ }
224
+
225
+ this.createGestureHandler(
226
+ filterConfig(
227
+ transformProps ? transformProps(this.props) : this.props,
228
+ [...allowedProps, ...customNativeProps],
229
+ config
230
+ )
231
+ );
232
+
233
+ this.attachGestureHandler(findNodeHandle(this.viewNode) as number); // TODO(TS) - check if this can be null
234
+ }
235
+
236
+ componentDidUpdate() {
237
+ const viewTag = findNodeHandle(this.viewNode);
238
+ if (this.viewTag !== viewTag) {
239
+ this.attachGestureHandler(viewTag as number); // TODO(TS) - check interaction between _viewTag & findNodeHandle
240
+ }
241
+ this.update(UNRESOLVED_REFS_RETRY_LIMIT);
242
+ }
243
+
244
+ componentWillUnmount() {
245
+ this.inspectorToggleListener?.remove();
246
+ this.isMountedRef.current = false;
247
+ RNGestureHandlerModule.dropGestureHandler(this.handlerTag);
248
+ scheduleFlushOperations();
249
+ // We can't use this.props.id directly due to TS generic type narrowing bug, see https://github.com/microsoft/TypeScript/issues/13995 for more context
250
+ const handlerID: string | undefined = this.props.id;
251
+ if (handlerID) {
252
+ // eslint-disable-next-line @typescript-eslint/no-dynamic-delete
253
+ delete handlerIDToTag[handlerID];
254
+ }
255
+ }
256
+
257
+ private onGestureHandlerEvent = (event: GestureEvent<U>) => {
258
+ if (event.nativeEvent.handlerTag === this.handlerTag) {
259
+ if (typeof this.props.onGestureEvent === 'function') {
260
+ this.props.onGestureEvent?.(event);
261
+ }
262
+ } else {
263
+ this.props.onGestureHandlerEvent?.(event);
264
+ }
265
+ };
266
+
267
+ // TODO(TS) - make sure this is right type for event
268
+ private onGestureHandlerStateChange = (
269
+ event: HandlerStateChangeEvent<U>
270
+ ) => {
271
+ if (event.nativeEvent.handlerTag === this.handlerTag) {
272
+ if (typeof this.props.onHandlerStateChange === 'function') {
273
+ this.props.onHandlerStateChange?.(event);
274
+ }
275
+
276
+ const state: ValueOf<typeof State> = event.nativeEvent.state;
277
+ const stateEventName = stateToPropMappings[state];
278
+ const eventHandler = stateEventName && this.props[stateEventName];
279
+ if (eventHandler && typeof eventHandler === 'function') {
280
+ eventHandler(event);
281
+ }
282
+ } else {
283
+ this.props.onGestureHandlerStateChange?.(event);
284
+ }
285
+ };
286
+
287
+ private refHandler = (node: any) => {
288
+ this.viewNode = node;
289
+
290
+ const child = React.Children.only(this.props.children);
291
+ // TODO(TS) fix ref type
292
+ const { ref }: any = child;
293
+ if (ref !== null) {
294
+ if (typeof ref === 'function') {
295
+ ref(node);
296
+ } else {
297
+ ref.current = node;
298
+ }
299
+ }
300
+ };
301
+
302
+ private createGestureHandler = (
303
+ newConfig: Readonly<Record<string, unknown>>
304
+ ) => {
305
+ this.config = newConfig;
306
+
307
+ RNGestureHandlerModule.createGestureHandler(
308
+ name,
309
+ this.handlerTag,
310
+ newConfig
311
+ );
312
+ };
313
+
314
+ private attachGestureHandler = (newViewTag: number) => {
315
+ this.viewTag = newViewTag;
316
+
317
+ if (Platform.OS === 'web') {
318
+ // typecast due to dynamic resolution, attachGestureHandler should have web version signature in this branch
319
+ (
320
+ RNGestureHandlerModule.attachGestureHandler as typeof RNGestureHandlerModuleWeb.attachGestureHandler
321
+ )(
322
+ this.handlerTag,
323
+ newViewTag,
324
+ ActionType.JS_FUNCTION_OLD_API, // ignored on web
325
+ this.propsRef
326
+ );
327
+ } else {
328
+ registerOldGestureHandler(this.handlerTag, {
329
+ onGestureEvent: this.onGestureHandlerEvent,
330
+ onGestureStateChange: this.onGestureHandlerStateChange,
331
+ });
332
+
333
+ const actionType = (() => {
334
+ if (
335
+ (this.props?.onGestureEvent &&
336
+ 'current' in this.props.onGestureEvent) ||
337
+ (this.props?.onHandlerStateChange &&
338
+ 'current' in this.props.onHandlerStateChange)
339
+ ) {
340
+ // Reanimated worklet
341
+ return ActionType.REANIMATED_WORKLET;
342
+ } else if (
343
+ this.props?.onGestureEvent &&
344
+ '__isNative' in this.props.onGestureEvent
345
+ ) {
346
+ // Animated.event with useNativeDriver: true
347
+ return ActionType.NATIVE_ANIMATED_EVENT;
348
+ } else {
349
+ // JS callback or Animated.event with useNativeDriver: false
350
+ return ActionType.JS_FUNCTION_OLD_API;
351
+ }
352
+ })();
353
+
354
+ RNGestureHandlerModule.attachGestureHandler(
355
+ this.handlerTag,
356
+ newViewTag,
357
+ actionType
358
+ );
359
+ }
360
+
361
+ scheduleFlushOperations();
362
+ };
363
+
364
+ private updateGestureHandler = (
365
+ newConfig: Readonly<Record<string, unknown>>
366
+ ) => {
367
+ this.config = newConfig;
368
+
369
+ RNGestureHandlerModule.updateGestureHandler(this.handlerTag, newConfig);
370
+ scheduleFlushOperations();
371
+ };
372
+
373
+ private update(remainingTries: number) {
374
+ if (!this.isMountedRef.current) {
375
+ return;
376
+ }
377
+
378
+ const props: HandlerProps<U> = this.props;
379
+
380
+ // When ref is set via a function i.e. `ref={(r) => refObject.current = r}` instead of
381
+ // `ref={refObject}` it's possible that it won't be resolved in time. Seems like trying
382
+ // again is easy enough fix.
383
+ if (hasUnresolvedRefs(props) && remainingTries > 0) {
384
+ queueMicrotask(() => {
385
+ this.update(remainingTries - 1);
386
+ });
387
+ } else {
388
+ const newConfig = filterConfig(
389
+ transformProps ? transformProps(this.props) : this.props,
390
+ [...allowedProps, ...customNativeProps],
391
+ config
392
+ );
393
+ if (!deepEqual(this.config, newConfig)) {
394
+ this.updateGestureHandler(newConfig);
395
+ }
396
+ }
397
+ }
398
+
399
+ setNativeProps(updates: any) {
400
+ const mergedProps = { ...this.props, ...updates };
401
+ const newConfig = filterConfig(
402
+ transformProps ? transformProps(mergedProps) : mergedProps,
403
+ [...allowedProps, ...customNativeProps],
404
+ config
405
+ );
406
+ this.updateGestureHandler(newConfig);
407
+ }
408
+
409
+ render() {
410
+ if (__DEV__ && !this.context && !isJestEnv() && Platform.OS !== 'web' && (Platform.OS as any) !== "harmony") { // RNOH: patch
411
+ throw new Error(
412
+ name +
413
+ ' must be used as a descendant of GestureHandlerRootView. Otherwise the gestures will not be recognized. See https://docs.swmansion.com/react-native-gesture-handler/docs/installation for more details.'
414
+ );
415
+ }
416
+
417
+ let gestureEventHandler = this.onGestureHandlerEvent;
418
+ // Another instance of https://github.com/microsoft/TypeScript/issues/13995
419
+ type OnGestureEventHandlers = {
420
+ onGestureEvent?: BaseGestureHandlerProps<U>['onGestureEvent'];
421
+ onGestureHandlerEvent?: InternalEventHandlers['onGestureHandlerEvent'];
422
+ };
423
+ const { onGestureEvent, onGestureHandlerEvent }: OnGestureEventHandlers =
424
+ this.props;
425
+ if (onGestureEvent && typeof onGestureEvent !== 'function') {
426
+ // If it's not a method it should be an native Animated.event
427
+ // object. We set it directly as the handler for the view
428
+ // In this case nested handlers are not going to be supported
429
+ if (onGestureHandlerEvent) {
430
+ throw new Error(
431
+ 'Nesting touch handlers with native animated driver is not supported yet'
432
+ );
433
+ }
434
+ gestureEventHandler = onGestureEvent;
435
+ } else {
436
+ if (
437
+ onGestureHandlerEvent &&
438
+ typeof onGestureHandlerEvent !== 'function'
439
+ ) {
440
+ throw new Error(
441
+ 'Nesting touch handlers with native animated driver is not supported yet'
442
+ );
443
+ }
444
+ }
445
+
446
+ let gestureStateEventHandler = this.onGestureHandlerStateChange;
447
+ // Another instance of https://github.com/microsoft/TypeScript/issues/13995
448
+ type OnGestureStateChangeHandlers = {
449
+ onHandlerStateChange?: BaseGestureHandlerProps<U>['onHandlerStateChange'];
450
+ onGestureHandlerStateChange?: InternalEventHandlers['onGestureHandlerStateChange'];
451
+ };
452
+ const {
453
+ onHandlerStateChange,
454
+ onGestureHandlerStateChange,
455
+ }: OnGestureStateChangeHandlers = this.props;
456
+ if (onHandlerStateChange && typeof onHandlerStateChange !== 'function') {
457
+ // If it's not a method it should be an native Animated.event
458
+ // object. We set it directly as the handler for the view
459
+ // In this case nested handlers are not going to be supported
460
+ if (onGestureHandlerStateChange) {
461
+ throw new Error(
462
+ 'Nesting touch handlers with native animated driver is not supported yet'
463
+ );
464
+ }
465
+ gestureStateEventHandler = onHandlerStateChange;
466
+ } else {
467
+ if (
468
+ onGestureHandlerStateChange &&
469
+ typeof onGestureHandlerStateChange !== 'function'
470
+ ) {
471
+ throw new Error(
472
+ 'Nesting touch handlers with native animated driver is not supported yet'
473
+ );
474
+ }
475
+ }
476
+ const events = {
477
+ onGestureHandlerEvent: this.state.allowTouches
478
+ ? gestureEventHandler
479
+ : undefined,
480
+ onGestureHandlerStateChange: this.state.allowTouches
481
+ ? gestureStateEventHandler
482
+ : undefined,
483
+ };
484
+
485
+ this.propsRef.current = events;
486
+
487
+ let child: any = null;
488
+ try {
489
+ child = React.Children.only(this.props.children);
490
+ } catch (e) {
491
+ throw new Error(
492
+ tagMessage(
493
+ `${name} got more than one view as a child. If you want the gesture to work on multiple views, wrap them with a common parent and attach the gesture to that view.`
494
+ )
495
+ );
496
+ }
497
+
498
+ let grandChildren = child.props.children;
499
+ if (
500
+ __DEV__ &&
501
+ child.type &&
502
+ (child.type === 'RNGestureHandlerButton' ||
503
+ child.type.name === 'View' ||
504
+ child.type.displayName === 'View')
505
+ ) {
506
+ grandChildren = React.Children.toArray(grandChildren);
507
+ grandChildren.push(
508
+ <PressabilityDebugView
509
+ key="pressabilityDebugView"
510
+ color="mediumspringgreen"
511
+ hitSlop={child.props.hitSlop}
512
+ />
513
+ );
514
+ }
515
+
516
+ return React.cloneElement(
517
+ child,
518
+ {
519
+ ref: this.refHandler,
520
+ collapsable: false,
521
+ ...(isJestEnv()
522
+ ? {
523
+ handlerType: name,
524
+ handlerTag: this.handlerTag,
525
+ }
526
+ : {}),
527
+ testID: this.props.testID ?? child.props.testID,
528
+ ...events,
529
+ },
530
+ grandChildren
531
+ );
532
+ }
533
+ }
534
+ return Handler;
535
+ }