@amazon-devices/react-native-gesture-handler 4.0.0 → 4.0.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 (516) hide show
  1. package/SystemModules/amzn__react-native-gesture-handler-4.modules.txt +3 -0
  2. package/SystemModules/amzn__react-native-gesture-handler-4.private.modules.txt +81 -35
  3. package/kepler-compatibility.json +3 -1
  4. package/lib/commonjs/RNGestureHandlerModule.kepler.js.map +1 -1
  5. package/lib/commonjs/index.js +0 -268
  6. package/lib/module/RNGestureHandlerModule.kepler.js.map +1 -1
  7. package/lib/typescript/RNGestureHandlerModule.kepler.d.ts.map +1 -1
  8. package/oss-attribution/attribution.txt +0 -0
  9. package/oss-attribution/licenseInfos.json +1 -0
  10. package/package.json +1 -1
  11. package/src/index.ts +0 -168
  12. package/README.md +0 -70
  13. package/SystemBundles/6340ec90c9b9f38941444b2ca176a58b9d8116a6cd975690f53747ed00595c90.bundle +0 -14669
  14. package/SystemBundles/6340ec90c9b9f38941444b2ca176a58b9d8116a6cd975690f53747ed00595c90.map +0 -5041
  15. package/lib/commonjs/ActionType.js +0 -15
  16. package/lib/commonjs/Directions.js +0 -31
  17. package/lib/commonjs/EnableNewWebImplementation.js +0 -40
  18. package/lib/commonjs/GestureHandlerRootViewContext.js +0 -10
  19. package/lib/commonjs/PlatformConstants.js +0 -9
  20. package/lib/commonjs/PlatformConstants.kepler.js +0 -12
  21. package/lib/commonjs/PlatformConstants.web.js +0 -12
  22. package/lib/commonjs/PointerType.js +0 -15
  23. package/lib/commonjs/RNGestureHandlerModule.js +0 -12
  24. package/lib/commonjs/RNGestureHandlerModule.kepler.js +0 -32
  25. package/lib/commonjs/RNGestureHandlerModule.web.js +0 -95
  26. package/lib/commonjs/RNGestureHandlerModule.windows.js +0 -56
  27. package/lib/commonjs/RNRenderer.js +0 -14
  28. package/lib/commonjs/RNRenderer.web.js +0 -10
  29. package/lib/commonjs/State.js +0 -19
  30. package/lib/commonjs/TouchEventType.js +0 -16
  31. package/lib/commonjs/components/DrawerLayout.js +0 -548
  32. package/lib/commonjs/components/GestureButtons.js +0 -212
  33. package/lib/commonjs/components/GestureButtonsProps.js +0 -6
  34. package/lib/commonjs/components/GestureComponents.js +0 -106
  35. package/lib/commonjs/components/GestureComponents.web.js +0 -39
  36. package/lib/commonjs/components/GestureHandlerButton.js +0 -10
  37. package/lib/commonjs/components/GestureHandlerButton.web.js +0 -16
  38. package/lib/commonjs/components/GestureHandlerRootView.android.js +0 -36
  39. package/lib/commonjs/components/GestureHandlerRootView.js +0 -35
  40. package/lib/commonjs/components/GestureHandlerRootView.kepler.js +0 -21
  41. package/lib/commonjs/components/GestureHandlerRootView.web.js +0 -30
  42. package/lib/commonjs/components/Pressable/Pressable.js +0 -274
  43. package/lib/commonjs/components/Pressable/PressableProps.js +0 -6
  44. package/lib/commonjs/components/Pressable/StateMachine.js +0 -44
  45. package/lib/commonjs/components/Pressable/index.js +0 -14
  46. package/lib/commonjs/components/Pressable/stateDefinitions.js +0 -88
  47. package/lib/commonjs/components/Pressable/utils.js +0 -92
  48. package/lib/commonjs/components/ReanimatedDrawerLayout.js +0 -357
  49. package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeable.js +0 -337
  50. package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js +0 -12
  51. package/lib/commonjs/components/ReanimatedSwipeable/index.js +0 -21
  52. package/lib/commonjs/components/Swipeable.js +0 -370
  53. package/lib/commonjs/components/Text.js +0 -60
  54. package/lib/commonjs/components/gestureHandlerRootHOC.js +0 -37
  55. package/lib/commonjs/components/touchables/ExtraButtonProps.js +0 -2
  56. package/lib/commonjs/components/touchables/GenericTouchable.js +0 -245
  57. package/lib/commonjs/components/touchables/GenericTouchableProps.js +0 -6
  58. package/lib/commonjs/components/touchables/TouchableHighlight.js +0 -93
  59. package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js +0 -84
  60. package/lib/commonjs/components/touchables/TouchableNativeFeedback.js +0 -13
  61. package/lib/commonjs/components/touchables/TouchableNativeFeedbackProps.js +0 -6
  62. package/lib/commonjs/components/touchables/TouchableOpacity.js +0 -65
  63. package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js +0 -33
  64. package/lib/commonjs/components/touchables/index.js +0 -35
  65. package/lib/commonjs/components/utils.js +0 -17
  66. package/lib/commonjs/findNodeHandle.js +0 -9
  67. package/lib/commonjs/findNodeHandle.web.js +0 -39
  68. package/lib/commonjs/getShadowNodeFromRef.js +0 -51
  69. package/lib/commonjs/getShadowNodeFromRef.web.js +0 -14
  70. package/lib/commonjs/ghQueueMicrotask.js +0 -10
  71. package/lib/commonjs/handlers/FlingGestureHandler.js +0 -31
  72. package/lib/commonjs/handlers/ForceTouchGestureHandler.js +0 -46
  73. package/lib/commonjs/handlers/GestureHandlerEventPayload.js +0 -6
  74. package/lib/commonjs/handlers/LongPressGestureHandler.js +0 -33
  75. package/lib/commonjs/handlers/NativeViewGestureHandler.js +0 -32
  76. package/lib/commonjs/handlers/PanGestureHandler.js +0 -112
  77. package/lib/commonjs/handlers/PinchGestureHandler.js +0 -29
  78. package/lib/commonjs/handlers/PressabilityDebugView.js +0 -13
  79. package/lib/commonjs/handlers/PressabilityDebugView.web.js +0 -11
  80. package/lib/commonjs/handlers/RotationGestureHandler.js +0 -29
  81. package/lib/commonjs/handlers/TapGestureHandler.js +0 -33
  82. package/lib/commonjs/handlers/createHandler.js +0 -405
  83. package/lib/commonjs/handlers/createNativeWrapper.js +0 -77
  84. package/lib/commonjs/handlers/customDirectEventTypes.js +0 -13
  85. package/lib/commonjs/handlers/customDirectEventTypes.web.js +0 -10
  86. package/lib/commonjs/handlers/gestureHandlerCommon.js +0 -27
  87. package/lib/commonjs/handlers/gestureHandlerTypesCompat.js +0 -6
  88. package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.js +0 -32
  89. package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.web.js +0 -41
  90. package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js +0 -67
  91. package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js +0 -20
  92. package/lib/commonjs/handlers/gestures/GestureDetector/index.js +0 -125
  93. package/lib/commonjs/handlers/gestures/GestureDetector/needsToReattach.js +0 -22
  94. package/lib/commonjs/handlers/gestures/GestureDetector/types.js +0 -6
  95. package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js +0 -66
  96. package/lib/commonjs/handlers/gestures/GestureDetector/useAnimatedGesture.js +0 -143
  97. package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js +0 -47
  98. package/lib/commonjs/handlers/gestures/GestureDetector/useMountReactions.js +0 -41
  99. package/lib/commonjs/handlers/gestures/GestureDetector/useViewRefHandler.js +0 -45
  100. package/lib/commonjs/handlers/gestures/GestureDetector/utils.js +0 -143
  101. package/lib/commonjs/handlers/gestures/eventReceiver.js +0 -117
  102. package/lib/commonjs/handlers/gestures/flingGesture.js +0 -37
  103. package/lib/commonjs/handlers/gestures/forceTouchGesture.js +0 -80
  104. package/lib/commonjs/handlers/gestures/gesture.js +0 -338
  105. package/lib/commonjs/handlers/gestures/gestureComposition.js +0 -90
  106. package/lib/commonjs/handlers/gestures/gestureObjects.js +0 -132
  107. package/lib/commonjs/handlers/gestures/gestureStateManager.js +0 -70
  108. package/lib/commonjs/handlers/gestures/gestureStateManager.web.js +0 -28
  109. package/lib/commonjs/handlers/gestures/hoverGesture.js +0 -57
  110. package/lib/commonjs/handlers/gestures/longPressGesture.js +0 -46
  111. package/lib/commonjs/handlers/gestures/manualGesture.js +0 -25
  112. package/lib/commonjs/handlers/gestures/nativeGesture.js +0 -34
  113. package/lib/commonjs/handlers/gestures/panGesture.js +0 -197
  114. package/lib/commonjs/handlers/gestures/pinchGesture.js +0 -38
  115. package/lib/commonjs/handlers/gestures/reanimatedWrapper.js +0 -29
  116. package/lib/commonjs/handlers/gestures/rotationGesture.js +0 -38
  117. package/lib/commonjs/handlers/gestures/tapGesture.js +0 -87
  118. package/lib/commonjs/handlers/getNextHandlerTag.js +0 -11
  119. package/lib/commonjs/handlers/handlersRegistry.js +0 -50
  120. package/lib/commonjs/handlers/utils.js +0 -69
  121. package/lib/commonjs/init.js +0 -25
  122. package/lib/commonjs/jestUtils/index.js +0 -19
  123. package/lib/commonjs/jestUtils/jestUtils.js +0 -316
  124. package/lib/commonjs/mocks/Pressable.js +0 -13
  125. package/lib/commonjs/mocks/mocks.js +0 -70
  126. package/lib/commonjs/mocks.js +0 -61
  127. package/lib/commonjs/mountRegistry.js +0 -37
  128. package/lib/commonjs/specs/NativeRNGestureHandlerModule.js +0 -9
  129. package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.kepler.js +0 -20
  130. package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.ts +0 -24
  131. package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.kepler.js +0 -17
  132. package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -7
  133. package/lib/commonjs/typeUtils.js +0 -2
  134. package/lib/commonjs/utils.js +0 -95
  135. package/lib/commonjs/web/Gestures.js +0 -48
  136. package/lib/commonjs/web/constants.js +0 -9
  137. package/lib/commonjs/web/detectors/RotationGestureDetector.js +0 -124
  138. package/lib/commonjs/web/detectors/ScaleGestureDetector.js +0 -111
  139. package/lib/commonjs/web/handlers/FlingGestureHandler.js +0 -143
  140. package/lib/commonjs/web/handlers/GestureHandler.js +0 -689
  141. package/lib/commonjs/web/handlers/HoverGestureHandler.js +0 -45
  142. package/lib/commonjs/web/handlers/IGestureHandler.js +0 -2
  143. package/lib/commonjs/web/handlers/LongPressGestureHandler.js +0 -146
  144. package/lib/commonjs/web/handlers/ManualGestureHandler.js +0 -38
  145. package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +0 -141
  146. package/lib/commonjs/web/handlers/PanGestureHandler.js +0 -399
  147. package/lib/commonjs/web/handlers/PinchGestureHandler.js +0 -122
  148. package/lib/commonjs/web/handlers/RotationGestureHandler.js +0 -129
  149. package/lib/commonjs/web/handlers/TapGestureHandler.js +0 -215
  150. package/lib/commonjs/web/interfaces.js +0 -32
  151. package/lib/commonjs/web/tools/CircularBuffer.js +0 -40
  152. package/lib/commonjs/web/tools/EventManager.js +0 -94
  153. package/lib/commonjs/web/tools/GestureHandlerDelegate.js +0 -6
  154. package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js +0 -267
  155. package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js +0 -165
  156. package/lib/commonjs/web/tools/InteractionManager.js +0 -96
  157. package/lib/commonjs/web/tools/KeyboardEventManager.js +0 -108
  158. package/lib/commonjs/web/tools/LeastSquareSolver.js +0 -159
  159. package/lib/commonjs/web/tools/NodeManager.js +0 -39
  160. package/lib/commonjs/web/tools/PointerEventManager.js +0 -189
  161. package/lib/commonjs/web/tools/PointerTracker.js +0 -192
  162. package/lib/commonjs/web/tools/Vector.js +0 -37
  163. package/lib/commonjs/web/tools/VelocityTracker.js +0 -85
  164. package/lib/commonjs/web/tools/WheelEventManager.js +0 -55
  165. package/lib/commonjs/web/utils.js +0 -235
  166. package/lib/commonjs/web_hammer/DiscreteGestureHandler.js +0 -93
  167. package/lib/commonjs/web_hammer/DraggingGestureHandler.js +0 -43
  168. package/lib/commonjs/web_hammer/Errors.js +0 -13
  169. package/lib/commonjs/web_hammer/FlingGestureHandler.js +0 -139
  170. package/lib/commonjs/web_hammer/GestureHandler.js +0 -484
  171. package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js +0 -45
  172. package/lib/commonjs/web_hammer/LongPressGestureHandler.js +0 -57
  173. package/lib/commonjs/web_hammer/NativeViewGestureHandler.js +0 -57
  174. package/lib/commonjs/web_hammer/NodeManager.js +0 -41
  175. package/lib/commonjs/web_hammer/PanGestureHandler.js +0 -167
  176. package/lib/commonjs/web_hammer/PinchGestureHandler.js +0 -31
  177. package/lib/commonjs/web_hammer/PressGestureHandler.js +0 -153
  178. package/lib/commonjs/web_hammer/RotationGestureHandler.js +0 -32
  179. package/lib/commonjs/web_hammer/TapGestureHandler.js +0 -165
  180. package/lib/commonjs/web_hammer/constants.js +0 -51
  181. package/lib/commonjs/web_hammer/utils.js +0 -32
  182. package/lib/module/ActionType.js +0 -11
  183. package/lib/module/Directions.js +0 -27
  184. package/lib/module/EnableNewWebImplementation.js +0 -34
  185. package/lib/module/GestureHandlerRootViewContext.js +0 -5
  186. package/lib/module/PlatformConstants.js +0 -5
  187. package/lib/module/PlatformConstants.kepler.js +0 -8
  188. package/lib/module/PlatformConstants.web.js +0 -8
  189. package/lib/module/PointerType.js +0 -11
  190. package/lib/module/RNGestureHandlerModule.js +0 -8
  191. package/lib/module/RNGestureHandlerModule.kepler.js +0 -26
  192. package/lib/module/RNGestureHandlerModule.web.js +0 -90
  193. package/lib/module/RNGestureHandlerModule.windows.js +0 -50
  194. package/lib/module/RNRenderer.js +0 -6
  195. package/lib/module/RNRenderer.web.js +0 -6
  196. package/lib/module/State.js +0 -15
  197. package/lib/module/TouchEventType.js +0 -12
  198. package/lib/module/components/DrawerLayout.js +0 -541
  199. package/lib/module/components/GestureButtons.js +0 -200
  200. package/lib/module/components/GestureButtonsProps.js +0 -4
  201. package/lib/module/components/GestureComponents.js +0 -100
  202. package/lib/module/components/GestureComponents.web.js +0 -32
  203. package/lib/module/components/GestureHandlerButton.js +0 -5
  204. package/lib/module/components/GestureHandlerButton.web.js +0 -11
  205. package/lib/module/components/GestureHandlerRootView.android.js +0 -30
  206. package/lib/module/components/GestureHandlerRootView.js +0 -29
  207. package/lib/module/components/GestureHandlerRootView.kepler.js +0 -15
  208. package/lib/module/components/GestureHandlerRootView.web.js +0 -24
  209. package/lib/module/components/Pressable/Pressable.js +0 -268
  210. package/lib/module/components/Pressable/PressableProps.js +0 -4
  211. package/lib/module/components/Pressable/StateMachine.js +0 -40
  212. package/lib/module/components/Pressable/index.js +0 -4
  213. package/lib/module/components/Pressable/stateDefinitions.js +0 -83
  214. package/lib/module/components/Pressable/utils.js +0 -84
  215. package/lib/module/components/ReanimatedDrawerLayout.js +0 -352
  216. package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeable.js +0 -332
  217. package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js +0 -8
  218. package/lib/module/components/ReanimatedSwipeable/index.js +0 -5
  219. package/lib/module/components/Swipeable.js +0 -364
  220. package/lib/module/components/Text.js +0 -55
  221. package/lib/module/components/gestureHandlerRootHOC.js +0 -33
  222. package/lib/module/components/touchables/ExtraButtonProps.js +0 -2
  223. package/lib/module/components/touchables/GenericTouchable.js +0 -239
  224. package/lib/module/components/touchables/GenericTouchableProps.js +0 -4
  225. package/lib/module/components/touchables/TouchableHighlight.js +0 -87
  226. package/lib/module/components/touchables/TouchableNativeFeedback.android.js +0 -77
  227. package/lib/module/components/touchables/TouchableNativeFeedback.js +0 -10
  228. package/lib/module/components/touchables/TouchableNativeFeedbackProps.js +0 -4
  229. package/lib/module/components/touchables/TouchableOpacity.js +0 -59
  230. package/lib/module/components/touchables/TouchableWithoutFeedback.js +0 -27
  231. package/lib/module/components/touchables/index.js +0 -7
  232. package/lib/module/components/utils.js +0 -13
  233. package/lib/module/findNodeHandle.js +0 -5
  234. package/lib/module/findNodeHandle.web.js +0 -35
  235. package/lib/module/getShadowNodeFromRef.js +0 -47
  236. package/lib/module/getShadowNodeFromRef.web.js +0 -10
  237. package/lib/module/ghQueueMicrotask.js +0 -6
  238. package/lib/module/handlers/FlingGestureHandler.js +0 -26
  239. package/lib/module/handlers/ForceTouchGestureHandler.js +0 -41
  240. package/lib/module/handlers/GestureHandlerEventPayload.js +0 -4
  241. package/lib/module/handlers/LongPressGestureHandler.js +0 -28
  242. package/lib/module/handlers/NativeViewGestureHandler.js +0 -27
  243. package/lib/module/handlers/PanGestureHandler.js +0 -105
  244. package/lib/module/handlers/PinchGestureHandler.js +0 -25
  245. package/lib/module/handlers/PressabilityDebugView.js +0 -5
  246. package/lib/module/handlers/PressabilityDebugView.web.js +0 -7
  247. package/lib/module/handlers/RotationGestureHandler.js +0 -25
  248. package/lib/module/handlers/TapGestureHandler.js +0 -28
  249. package/lib/module/handlers/createHandler.js +0 -399
  250. package/lib/module/handlers/createNativeWrapper.js +0 -74
  251. package/lib/module/handlers/customDirectEventTypes.js +0 -5
  252. package/lib/module/handlers/customDirectEventTypes.web.js +0 -7
  253. package/lib/module/handlers/gestureHandlerCommon.js +0 -26
  254. package/lib/module/handlers/gestureHandlerTypesCompat.js +0 -4
  255. package/lib/module/handlers/gestures/GestureDetector/Wrap.js +0 -26
  256. package/lib/module/handlers/gestures/GestureDetector/Wrap.web.js +0 -36
  257. package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js +0 -62
  258. package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js +0 -15
  259. package/lib/module/handlers/gestures/GestureDetector/index.js +0 -117
  260. package/lib/module/handlers/gestures/GestureDetector/needsToReattach.js +0 -18
  261. package/lib/module/handlers/gestures/GestureDetector/types.js +0 -4
  262. package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js +0 -61
  263. package/lib/module/handlers/gestures/GestureDetector/useAnimatedGesture.js +0 -139
  264. package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js +0 -43
  265. package/lib/module/handlers/gestures/GestureDetector/useMountReactions.js +0 -37
  266. package/lib/module/handlers/gestures/GestureDetector/useViewRefHandler.js +0 -40
  267. package/lib/module/handlers/gestures/GestureDetector/utils.js +0 -134
  268. package/lib/module/handlers/gestures/eventReceiver.js +0 -110
  269. package/lib/module/handlers/gestures/flingGesture.js +0 -32
  270. package/lib/module/handlers/gestures/forceTouchGesture.js +0 -76
  271. package/lib/module/handlers/gestures/gesture.js +0 -332
  272. package/lib/module/handlers/gestures/gestureComposition.js +0 -83
  273. package/lib/module/handlers/gestures/gestureObjects.js +0 -129
  274. package/lib/module/handlers/gestures/gestureStateManager.js +0 -66
  275. package/lib/module/handlers/gestures/gestureStateManager.web.js +0 -23
  276. package/lib/module/handlers/gestures/hoverGesture.js +0 -52
  277. package/lib/module/handlers/gestures/longPressGesture.js +0 -41
  278. package/lib/module/handlers/gestures/manualGesture.js +0 -20
  279. package/lib/module/handlers/gestures/nativeGesture.js +0 -29
  280. package/lib/module/handlers/gestures/panGesture.js +0 -192
  281. package/lib/module/handlers/gestures/pinchGesture.js +0 -33
  282. package/lib/module/handlers/gestures/reanimatedWrapper.js +0 -26
  283. package/lib/module/handlers/gestures/rotationGesture.js +0 -33
  284. package/lib/module/handlers/gestures/tapGesture.js +0 -82
  285. package/lib/module/handlers/getNextHandlerTag.js +0 -7
  286. package/lib/module/handlers/handlersRegistry.js +0 -39
  287. package/lib/module/handlers/utils.js +0 -61
  288. package/lib/module/index.js +0 -31
  289. package/lib/module/init.js +0 -19
  290. package/lib/module/jestUtils/index.js +0 -4
  291. package/lib/module/jestUtils/jestUtils.js +0 -311
  292. package/lib/module/mocks/Pressable.js +0 -4
  293. package/lib/module/mocks/mocks.js +0 -64
  294. package/lib/module/mocks.js +0 -57
  295. package/lib/module/mountRegistry.js +0 -32
  296. package/lib/module/specs/NativeRNGestureHandlerModule.js +0 -5
  297. package/lib/module/specs/RNGestureHandlerButtonNativeComponent.kepler.js +0 -14
  298. package/lib/module/specs/RNGestureHandlerButtonNativeComponent.ts +0 -24
  299. package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.kepler.js +0 -11
  300. package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -7
  301. package/lib/module/typeUtils.js +0 -2
  302. package/lib/module/utils.js +0 -81
  303. package/lib/module/web/Gestures.js +0 -42
  304. package/lib/module/web/constants.js +0 -5
  305. package/lib/module/web/detectors/RotationGestureDetector.js +0 -119
  306. package/lib/module/web/detectors/ScaleGestureDetector.js +0 -106
  307. package/lib/module/web/handlers/FlingGestureHandler.js +0 -137
  308. package/lib/module/web/handlers/GestureHandler.js +0 -682
  309. package/lib/module/web/handlers/HoverGestureHandler.js +0 -39
  310. package/lib/module/web/handlers/IGestureHandler.js +0 -2
  311. package/lib/module/web/handlers/LongPressGestureHandler.js +0 -140
  312. package/lib/module/web/handlers/ManualGestureHandler.js +0 -32
  313. package/lib/module/web/handlers/NativeViewGestureHandler.js +0 -135
  314. package/lib/module/web/handlers/PanGestureHandler.js +0 -393
  315. package/lib/module/web/handlers/PinchGestureHandler.js +0 -116
  316. package/lib/module/web/handlers/RotationGestureHandler.js +0 -123
  317. package/lib/module/web/handlers/TapGestureHandler.js +0 -209
  318. package/lib/module/web/interfaces.js +0 -28
  319. package/lib/module/web/tools/CircularBuffer.js +0 -35
  320. package/lib/module/web/tools/EventManager.js +0 -89
  321. package/lib/module/web/tools/GestureHandlerDelegate.js +0 -4
  322. package/lib/module/web/tools/GestureHandlerOrchestrator.js +0 -261
  323. package/lib/module/web/tools/GestureHandlerWebDelegate.js +0 -159
  324. package/lib/module/web/tools/InteractionManager.js +0 -91
  325. package/lib/module/web/tools/KeyboardEventManager.js +0 -102
  326. package/lib/module/web/tools/LeastSquareSolver.js +0 -154
  327. package/lib/module/web/tools/NodeManager.js +0 -34
  328. package/lib/module/web/tools/PointerEventManager.js +0 -183
  329. package/lib/module/web/tools/PointerTracker.js +0 -186
  330. package/lib/module/web/tools/Vector.js +0 -32
  331. package/lib/module/web/tools/VelocityTracker.js +0 -79
  332. package/lib/module/web/tools/WheelEventManager.js +0 -49
  333. package/lib/module/web/utils.js +0 -223
  334. package/lib/module/web_hammer/DiscreteGestureHandler.js +0 -87
  335. package/lib/module/web_hammer/DraggingGestureHandler.js +0 -37
  336. package/lib/module/web_hammer/Errors.js +0 -8
  337. package/lib/module/web_hammer/FlingGestureHandler.js +0 -133
  338. package/lib/module/web_hammer/GestureHandler.js +0 -478
  339. package/lib/module/web_hammer/IndiscreteGestureHandler.js +0 -41
  340. package/lib/module/web_hammer/LongPressGestureHandler.js +0 -51
  341. package/lib/module/web_hammer/NativeViewGestureHandler.js +0 -51
  342. package/lib/module/web_hammer/NodeManager.js +0 -33
  343. package/lib/module/web_hammer/PanGestureHandler.js +0 -162
  344. package/lib/module/web_hammer/PinchGestureHandler.js +0 -26
  345. package/lib/module/web_hammer/PressGestureHandler.js +0 -148
  346. package/lib/module/web_hammer/RotationGestureHandler.js +0 -27
  347. package/lib/module/web_hammer/TapGestureHandler.js +0 -160
  348. package/lib/module/web_hammer/constants.js +0 -46
  349. package/lib/module/web_hammer/utils.js +0 -21
  350. package/src/ActionType.ts +0 -9
  351. package/src/Directions.ts +0 -26
  352. package/src/EnableNewWebImplementation.ts +0 -53
  353. package/src/GestureHandlerRootViewContext.ts +0 -3
  354. package/src/PlatformConstants.kepler.ts +0 -5
  355. package/src/PlatformConstants.ts +0 -8
  356. package/src/PlatformConstants.web.ts +0 -5
  357. package/src/PointerType.ts +0 -7
  358. package/src/RNGestureHandlerModule.kepler.ts +0 -64
  359. package/src/RNGestureHandlerModule.ts +0 -5
  360. package/src/RNGestureHandlerModule.web.ts +0 -124
  361. package/src/RNGestureHandlerModule.windows.ts +0 -62
  362. package/src/RNRenderer.ts +0 -3
  363. package/src/RNRenderer.web.ts +0 -3
  364. package/src/State.ts +0 -13
  365. package/src/TouchEventType.ts +0 -11
  366. package/src/components/DrawerLayout.tsx +0 -788
  367. package/src/components/GestureButtons.tsx +0 -272
  368. package/src/components/GestureButtonsProps.ts +0 -156
  369. package/src/components/GestureComponents.tsx +0 -148
  370. package/src/components/GestureComponents.web.tsx +0 -41
  371. package/src/components/GestureHandlerButton.tsx +0 -5
  372. package/src/components/GestureHandlerButton.web.tsx +0 -6
  373. package/src/components/GestureHandlerRootView.android.tsx +0 -32
  374. package/src/components/GestureHandlerRootView.kepler.tsx +0 -18
  375. package/src/components/GestureHandlerRootView.tsx +0 -28
  376. package/src/components/GestureHandlerRootView.web.tsx +0 -22
  377. package/src/components/Pressable/Pressable.tsx +0 -401
  378. package/src/components/Pressable/PressableProps.tsx +0 -174
  379. package/src/components/Pressable/StateMachine.tsx +0 -57
  380. package/src/components/Pressable/index.ts +0 -5
  381. package/src/components/Pressable/stateDefinitions.ts +0 -126
  382. package/src/components/Pressable/utils.ts +0 -140
  383. package/src/components/ReanimatedDrawerLayout.tsx +0 -754
  384. package/src/components/ReanimatedSwipeable/ReanimatedSwipeable.tsx +0 -607
  385. package/src/components/ReanimatedSwipeable/ReanimatedSwipeableProps.ts +0 -199
  386. package/src/components/ReanimatedSwipeable/index.ts +0 -6
  387. package/src/components/Swipeable.tsx +0 -595
  388. package/src/components/Text.tsx +0 -77
  389. package/src/components/gestureHandlerRootHOC.tsx +0 -33
  390. package/src/components/touchables/ExtraButtonProps.ts +0 -7
  391. package/src/components/touchables/GenericTouchable.tsx +0 -275
  392. package/src/components/touchables/GenericTouchableProps.ts +0 -28
  393. package/src/components/touchables/TouchableHighlight.tsx +0 -118
  394. package/src/components/touchables/TouchableNativeFeedback.android.tsx +0 -83
  395. package/src/components/touchables/TouchableNativeFeedback.tsx +0 -8
  396. package/src/components/touchables/TouchableNativeFeedbackProps.tsx +0 -10
  397. package/src/components/touchables/TouchableOpacity.tsx +0 -78
  398. package/src/components/touchables/TouchableWithoutFeedback.tsx +0 -39
  399. package/src/components/touchables/index.ts +0 -7
  400. package/src/components/utils.ts +0 -26
  401. package/src/findNodeHandle.ts +0 -3
  402. package/src/findNodeHandle.web.ts +0 -41
  403. package/src/getShadowNodeFromRef.ts +0 -50
  404. package/src/getShadowNodeFromRef.web.ts +0 -7
  405. package/src/ghQueueMicrotask.ts +0 -8
  406. package/src/handlers/FlingGestureHandler.ts +0 -64
  407. package/src/handlers/ForceTouchGestureHandler.ts +0 -88
  408. package/src/handlers/GestureHandlerEventPayload.ts +0 -229
  409. package/src/handlers/LongPressGestureHandler.ts +0 -65
  410. package/src/handlers/NativeViewGestureHandler.ts +0 -59
  411. package/src/handlers/PanGestureHandler.ts +0 -282
  412. package/src/handlers/PinchGestureHandler.ts +0 -32
  413. package/src/handlers/PressabilityDebugView.tsx +0 -2
  414. package/src/handlers/PressabilityDebugView.web.tsx +0 -4
  415. package/src/handlers/RotationGestureHandler.ts +0 -32
  416. package/src/handlers/TapGestureHandler.ts +0 -99
  417. package/src/handlers/createHandler.tsx +0 -586
  418. package/src/handlers/createNativeWrapper.tsx +0 -89
  419. package/src/handlers/customDirectEventTypes.ts +0 -2
  420. package/src/handlers/customDirectEventTypes.web.ts +0 -5
  421. package/src/handlers/gestureHandlerCommon.ts +0 -211
  422. package/src/handlers/gestureHandlerTypesCompat.ts +0 -101
  423. package/src/handlers/gestures/GestureDetector/Wrap.tsx +0 -35
  424. package/src/handlers/gestures/GestureDetector/Wrap.web.tsx +0 -42
  425. package/src/handlers/gestures/GestureDetector/attachHandlers.ts +0 -112
  426. package/src/handlers/gestures/GestureDetector/dropHandlers.ts +0 -17
  427. package/src/handlers/gestures/GestureDetector/index.tsx +0 -191
  428. package/src/handlers/gestures/GestureDetector/needsToReattach.ts +0 -27
  429. package/src/handlers/gestures/GestureDetector/types.ts +0 -32
  430. package/src/handlers/gestures/GestureDetector/updateHandlers.ts +0 -92
  431. package/src/handlers/gestures/GestureDetector/useAnimatedGesture.ts +0 -209
  432. package/src/handlers/gestures/GestureDetector/useDetectorUpdater.ts +0 -69
  433. package/src/handlers/gestures/GestureDetector/useMountReactions.ts +0 -51
  434. package/src/handlers/gestures/GestureDetector/useViewRefHandler.ts +0 -58
  435. package/src/handlers/gestures/GestureDetector/utils.ts +0 -181
  436. package/src/handlers/gestures/eventReceiver.ts +0 -173
  437. package/src/handlers/gestures/flingGesture.ts +0 -36
  438. package/src/handlers/gestures/forceTouchGesture.ts +0 -95
  439. package/src/handlers/gestures/gesture.ts +0 -472
  440. package/src/handlers/gestures/gestureComposition.ts +0 -124
  441. package/src/handlers/gestures/gestureObjects.ts +0 -143
  442. package/src/handlers/gestures/gestureStateManager.ts +0 -76
  443. package/src/handlers/gestures/gestureStateManager.web.ts +0 -26
  444. package/src/handlers/gestures/hoverGesture.ts +0 -77
  445. package/src/handlers/gestures/longPressGesture.ts +0 -45
  446. package/src/handlers/gestures/manualGesture.ts +0 -31
  447. package/src/handlers/gestures/nativeGesture.ts +0 -33
  448. package/src/handlers/gestures/panGesture.ts +0 -221
  449. package/src/handlers/gestures/pinchGesture.ts +0 -51
  450. package/src/handlers/gestures/reanimatedWrapper.ts +0 -57
  451. package/src/handlers/gestures/rotationGesture.ts +0 -51
  452. package/src/handlers/gestures/tapGesture.ts +0 -86
  453. package/src/handlers/getNextHandlerTag.ts +0 -5
  454. package/src/handlers/handlersRegistry.ts +0 -58
  455. package/src/handlers/utils.ts +0 -76
  456. package/src/init.ts +0 -18
  457. package/src/jestUtils/index.ts +0 -1
  458. package/src/jestUtils/jestUtils.ts +0 -513
  459. package/src/mocks/Pressable.tsx +0 -1
  460. package/src/mocks/mocks.tsx +0 -70
  461. package/src/mocks.ts +0 -67
  462. package/src/mountRegistry.ts +0 -51
  463. package/src/specs/NativeRNGestureHandlerModule.ts +0 -26
  464. package/src/specs/RNGestureHandlerButtonNativeComponent.kepler.ts +0 -27
  465. package/src/specs/RNGestureHandlerButtonNativeComponent.ts +0 -24
  466. package/src/specs/RNGestureHandlerRootViewNativeComponent.kepler.ts +0 -21
  467. package/src/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -7
  468. package/src/typeUtils.ts +0 -1
  469. package/src/utils.ts +0 -107
  470. package/src/web/Gestures.ts +0 -41
  471. package/src/web/constants.ts +0 -2
  472. package/src/web/detectors/RotationGestureDetector.ts +0 -170
  473. package/src/web/detectors/ScaleGestureDetector.ts +0 -171
  474. package/src/web/handlers/FlingGestureHandler.ts +0 -196
  475. package/src/web/handlers/GestureHandler.ts +0 -881
  476. package/src/web/handlers/HoverGestureHandler.ts +0 -49
  477. package/src/web/handlers/IGestureHandler.ts +0 -49
  478. package/src/web/handlers/LongPressGestureHandler.ts +0 -175
  479. package/src/web/handlers/ManualGestureHandler.ts +0 -37
  480. package/src/web/handlers/NativeViewGestureHandler.ts +0 -175
  481. package/src/web/handlers/PanGestureHandler.ts +0 -571
  482. package/src/web/handlers/PinchGestureHandler.ts +0 -152
  483. package/src/web/handlers/RotationGestureHandler.ts +0 -166
  484. package/src/web/handlers/TapGestureHandler.ts +0 -274
  485. package/src/web/interfaces.ts +0 -190
  486. package/src/web/tools/CircularBuffer.ts +0 -42
  487. package/src/web/tools/EventManager.ts +0 -108
  488. package/src/web/tools/GestureHandlerDelegate.ts +0 -26
  489. package/src/web/tools/GestureHandlerOrchestrator.ts +0 -392
  490. package/src/web/tools/GestureHandlerWebDelegate.ts +0 -227
  491. package/src/web/tools/InteractionManager.ts +0 -135
  492. package/src/web/tools/KeyboardEventManager.ts +0 -133
  493. package/src/web/tools/LeastSquareSolver.ts +0 -182
  494. package/src/web/tools/NodeManager.ts +0 -48
  495. package/src/web/tools/PointerEventManager.ts +0 -226
  496. package/src/web/tools/PointerTracker.ts +0 -228
  497. package/src/web/tools/Vector.ts +0 -59
  498. package/src/web/tools/VelocityTracker.ts +0 -98
  499. package/src/web/tools/WheelEventManager.ts +0 -48
  500. package/src/web/utils.ts +0 -293
  501. package/src/web_hammer/DiscreteGestureHandler.ts +0 -82
  502. package/src/web_hammer/DraggingGestureHandler.ts +0 -34
  503. package/src/web_hammer/Errors.ts +0 -7
  504. package/src/web_hammer/FlingGestureHandler.ts +0 -134
  505. package/src/web_hammer/GestureHandler.ts +0 -600
  506. package/src/web_hammer/IndiscreteGestureHandler.ts +0 -33
  507. package/src/web_hammer/LongPressGestureHandler.ts +0 -56
  508. package/src/web_hammer/NativeViewGestureHandler.ts +0 -47
  509. package/src/web_hammer/NodeManager.ts +0 -33
  510. package/src/web_hammer/PanGestureHandler.ts +0 -226
  511. package/src/web_hammer/PinchGestureHandler.ts +0 -25
  512. package/src/web_hammer/PressGestureHandler.ts +0 -170
  513. package/src/web_hammer/RotationGestureHandler.ts +0 -25
  514. package/src/web_hammer/TapGestureHandler.ts +0 -172
  515. package/src/web_hammer/constants.ts +0 -48
  516. package/src/web_hammer/utils.ts +0 -24
@@ -1,513 +0,0 @@
1
- import invariant from 'invariant';
2
- import { DeviceEventEmitter } from 'react-native';
3
- import { ReactTestInstance } from 'react-test-renderer';
4
- import {
5
- FlingGestureHandler,
6
- flingHandlerName,
7
- } from '../handlers/FlingGestureHandler';
8
- import {
9
- ForceTouchGestureHandler,
10
- forceTouchHandlerName,
11
- } from '../handlers/ForceTouchGestureHandler';
12
- import {
13
- BaseGestureHandlerProps,
14
- GestureEvent,
15
- HandlerStateChangeEvent,
16
- } from '../handlers/gestureHandlerCommon';
17
- import { FlingGesture } from '../handlers/gestures/flingGesture';
18
- import { ForceTouchGesture } from '../handlers/gestures/forceTouchGesture';
19
- import { BaseGesture, GestureType } from '../handlers/gestures/gesture';
20
- import { LongPressGesture } from '../handlers/gestures/longPressGesture';
21
- import { NativeGesture } from '../handlers/gestures/nativeGesture';
22
- import { PanGesture } from '../handlers/gestures/panGesture';
23
- import { PinchGesture } from '../handlers/gestures/pinchGesture';
24
- import { RotationGesture } from '../handlers/gestures/rotationGesture';
25
- import { TapGesture } from '../handlers/gestures/tapGesture';
26
- import { findHandlerByTestID } from '../handlers/handlersRegistry';
27
- import {
28
- LongPressGestureHandler,
29
- longPressHandlerName,
30
- } from '../handlers/LongPressGestureHandler';
31
- import type {
32
- FlingGestureHandlerEventPayload,
33
- ForceTouchGestureHandlerEventPayload,
34
- LongPressGestureHandlerEventPayload,
35
- NativeViewGestureHandlerPayload,
36
- PanGestureHandlerEventPayload,
37
- PinchGestureHandlerEventPayload,
38
- RotationGestureHandlerEventPayload,
39
- TapGestureHandlerEventPayload,
40
- } from '../handlers/GestureHandlerEventPayload';
41
- import {
42
- NativeViewGestureHandler,
43
- nativeViewHandlerName,
44
- } from '../handlers/NativeViewGestureHandler';
45
- import {
46
- PanGestureHandler,
47
- panHandlerName,
48
- } from '../handlers/PanGestureHandler';
49
- import {
50
- PinchGestureHandler,
51
- pinchHandlerName,
52
- } from '../handlers/PinchGestureHandler';
53
- import {
54
- RotationGestureHandler,
55
- rotationHandlerName,
56
- } from '../handlers/RotationGestureHandler';
57
- import {
58
- TapGestureHandler,
59
- tapHandlerName,
60
- } from '../handlers/TapGestureHandler';
61
- import { State } from '../State';
62
- import { hasProperty, withPrevAndCurrent } from '../utils';
63
-
64
- // Load fireEvent conditionally, so RNGH may be used in setups without testing-library
65
- let fireEvent = (
66
- _element: ReactTestInstance,
67
- _name: string,
68
- ..._data: any[]
69
- ) => {
70
- // NOOP
71
- };
72
-
73
- try {
74
- // eslint-disable-next-line @typescript-eslint/no-var-requires
75
- fireEvent = require('@testing-library/react-native').fireEvent;
76
- } catch (_e) {
77
- // Do nothing if not available
78
- }
79
-
80
- type GestureHandlerTestEvent<
81
- TEventPayload extends Record<string, unknown> = Record<string, unknown>,
82
- > = (
83
- | GestureEvent<TEventPayload>
84
- | HandlerStateChangeEvent<TEventPayload>
85
- )['nativeEvent'];
86
-
87
- type HandlerNames = keyof DefaultEventsMapping;
88
-
89
- type WithNumberOfPointers<T> = {
90
- [P in keyof T]: T[P] & { numberOfPointers: number };
91
- };
92
- type DefaultEventsMapping = WithNumberOfPointers<{
93
- [flingHandlerName]: FlingGestureHandlerEventPayload;
94
- [forceTouchHandlerName]: ForceTouchGestureHandlerEventPayload;
95
- [longPressHandlerName]: LongPressGestureHandlerEventPayload;
96
- [nativeViewHandlerName]: NativeViewGestureHandlerPayload;
97
- [panHandlerName]: PanGestureHandlerEventPayload;
98
- [pinchHandlerName]: PinchGestureHandlerEventPayload;
99
- [rotationHandlerName]: RotationGestureHandlerEventPayload;
100
- [tapHandlerName]: TapGestureHandlerEventPayload;
101
- }>;
102
-
103
- const handlersDefaultEvents: DefaultEventsMapping = {
104
- [flingHandlerName]: {
105
- x: 0,
106
- y: 0,
107
- absoluteX: 0,
108
- absoluteY: 0,
109
- numberOfPointers: 1,
110
- },
111
- [forceTouchHandlerName]: {
112
- x: 0,
113
- y: 0,
114
- absoluteX: 0,
115
- absoluteY: 0,
116
- force: 1,
117
- numberOfPointers: 1,
118
- },
119
- [longPressHandlerName]: {
120
- x: 0,
121
- y: 0,
122
- absoluteX: 0,
123
- absoluteY: 0,
124
- duration: 100,
125
- numberOfPointers: 1,
126
- },
127
- [nativeViewHandlerName]: {
128
- pointerInside: true,
129
- numberOfPointers: 1,
130
- },
131
- [panHandlerName]: {
132
- x: 0,
133
- y: 0,
134
- absoluteX: 0,
135
- absoluteY: 0,
136
- translationX: 100,
137
- translationY: 0,
138
- velocityX: 3,
139
- velocityY: 0,
140
- numberOfPointers: 1,
141
- stylusData: undefined,
142
- },
143
- [pinchHandlerName]: {
144
- focalX: 0,
145
- focalY: 0,
146
- scale: 2,
147
- velocity: 1,
148
- numberOfPointers: 2,
149
- },
150
- [rotationHandlerName]: {
151
- anchorX: 0,
152
- anchorY: 0,
153
- rotation: 3.14,
154
- velocity: 2,
155
- numberOfPointers: 2,
156
- },
157
- [tapHandlerName]: {
158
- x: 0,
159
- y: 0,
160
- absoluteX: 0,
161
- absoluteY: 0,
162
- numberOfPointers: 1,
163
- },
164
- };
165
-
166
- function isGesture(
167
- componentOrGesture: ReactTestInstance | GestureType
168
- ): componentOrGesture is GestureType {
169
- return componentOrGesture instanceof BaseGesture;
170
- }
171
-
172
- interface WrappedGestureHandlerTestEvent {
173
- nativeEvent: GestureHandlerTestEvent;
174
- }
175
- function wrapWithNativeEvent(
176
- event: GestureHandlerTestEvent
177
- ): WrappedGestureHandlerTestEvent {
178
- return { nativeEvent: event };
179
- }
180
-
181
- function fillOldStateChanges(
182
- previousEvent: GestureHandlerTestEvent | null,
183
- currentEvent: Omit<GestureHandlerTestEvent, 'oldState'>
184
- ): GestureHandlerTestEvent {
185
- const isFirstEvent = previousEvent === null;
186
- if (isFirstEvent) {
187
- return {
188
- oldState: State.UNDETERMINED,
189
- ...currentEvent,
190
- } as GestureHandlerTestEvent;
191
- }
192
-
193
- const isGestureStateEvent = previousEvent.state !== currentEvent.state;
194
- if (isGestureStateEvent) {
195
- return {
196
- oldState: previousEvent?.state,
197
- ...currentEvent,
198
- } as GestureHandlerTestEvent;
199
- } else {
200
- return currentEvent as GestureHandlerTestEvent;
201
- }
202
- }
203
-
204
- type EventWithStates = Partial<
205
- Pick<GestureHandlerTestEvent, 'oldState' | 'state'>
206
- >;
207
- function validateStateTransitions(
208
- previousEvent: EventWithStates | null,
209
- currentEvent: EventWithStates
210
- ) {
211
- function stringify(event: Record<string, unknown> | null) {
212
- return JSON.stringify(event, null, 2);
213
- }
214
- function errorMsgWithBothEvents(description: string) {
215
- return `${description}, invalid event: ${stringify(
216
- currentEvent
217
- )}, previous event: ${stringify(previousEvent)}`;
218
- }
219
-
220
- function errorMsgWithCurrentEvent(description: string) {
221
- return `${description}, invalid event: ${stringify(currentEvent)}`;
222
- }
223
-
224
- invariant(
225
- hasProperty(currentEvent, 'state'),
226
- errorMsgWithCurrentEvent('every event must have state')
227
- );
228
-
229
- const isFirstEvent = previousEvent === null;
230
- if (isFirstEvent) {
231
- invariant(
232
- currentEvent.state === State.BEGAN,
233
- errorMsgWithCurrentEvent('first event must have BEGAN state')
234
- );
235
- }
236
-
237
- if (previousEvent !== null) {
238
- if (previousEvent.state !== currentEvent.state) {
239
- invariant(
240
- hasProperty(currentEvent, 'oldState'),
241
- errorMsgWithCurrentEvent(
242
- 'when state changes, oldState field should be present'
243
- )
244
- );
245
- invariant(
246
- currentEvent.oldState === previousEvent.state,
247
- errorMsgWithBothEvents(
248
- "when state changes, oldState should be the same as previous event' state"
249
- )
250
- );
251
- }
252
- }
253
-
254
- return currentEvent;
255
- }
256
-
257
- type EventWithoutStates = Omit<GestureHandlerTestEvent, 'oldState' | 'state'>;
258
- interface HandlerInfo {
259
- handlerType: HandlerNames;
260
- handlerTag: number;
261
- }
262
- function fillMissingDefaultsFor({
263
- handlerType,
264
- handlerTag,
265
- }: HandlerInfo): (
266
- event: Partial<GestureHandlerTestEvent>
267
- ) => EventWithoutStates {
268
- return (event) => {
269
- return {
270
- ...handlersDefaultEvents[handlerType],
271
- ...event,
272
- handlerTag,
273
- };
274
- };
275
- }
276
-
277
- function isDiscreteHandler(handlerType: HandlerNames) {
278
- return (
279
- handlerType === 'TapGestureHandler' ||
280
- handlerType === 'LongPressGestureHandler'
281
- );
282
- }
283
-
284
- function fillMissingStatesTransitions(
285
- events: EventWithoutStates[],
286
- isDiscreteHandler: boolean
287
- ): EventWithoutStates[] {
288
- type Event = EventWithoutStates | null;
289
- const _events = [...events];
290
- const lastEvent = _events[_events.length - 1] ?? null;
291
- const firstEvent = _events[0] ?? null;
292
-
293
- const shouldDuplicateFirstEvent =
294
- !isDiscreteHandler && !hasState(State.BEGAN)(firstEvent);
295
- if (shouldDuplicateFirstEvent) {
296
- const duplicated = { ...firstEvent, state: State.BEGAN };
297
- // @ts-ignore badly typed, property may exist and we don't want to copy it
298
- delete duplicated.oldState;
299
- _events.unshift(duplicated);
300
- }
301
-
302
- const shouldDuplicateLastEvent =
303
- !hasState(State.END)(lastEvent) ||
304
- !hasState(State.FAILED)(lastEvent) ||
305
- !hasState(State.CANCELLED)(lastEvent);
306
-
307
- if (shouldDuplicateLastEvent) {
308
- const duplicated = { ...lastEvent, state: State.END };
309
- // @ts-ignore badly typed, property may exist and we don't want to copy it
310
- delete duplicated.oldState;
311
- _events.push(duplicated);
312
- }
313
-
314
- function isWithoutState(event: Event) {
315
- return event !== null && !hasProperty(event, 'state');
316
- }
317
- function hasState(state: State) {
318
- return (event: Event) => event !== null && event.state === state;
319
- }
320
- function noEventsLeft(event: Event) {
321
- return event === null;
322
- }
323
-
324
- function trueFn() {
325
- return true;
326
- }
327
- interface Args {
328
- shouldConsumeEvent?: (event: Event) => boolean;
329
- shouldTransitionToNextState?: (nextEvent: Event) => boolean;
330
- }
331
- function fillEventsForCurrentState({
332
- shouldConsumeEvent = trueFn,
333
- shouldTransitionToNextState = trueFn,
334
- }: Args) {
335
- function peekCurrentEvent(): Event {
336
- return _events[0] ?? null;
337
- }
338
- function peekNextEvent(): Event {
339
- return _events[1] ?? null;
340
- }
341
- function consumeCurrentEvent() {
342
- _events.shift();
343
- }
344
- const currentEvent = peekCurrentEvent();
345
- const nextEvent = peekNextEvent();
346
- const currentRequiredState = REQUIRED_EVENTS[currentStateIdx];
347
-
348
- let eventData = {};
349
- const shouldUseEvent = shouldConsumeEvent(currentEvent);
350
- if (shouldUseEvent) {
351
- eventData = currentEvent!;
352
- consumeCurrentEvent();
353
- }
354
- transformedEvents.push({ state: currentRequiredState, ...eventData });
355
- if (shouldTransitionToNextState(nextEvent)) {
356
- currentStateIdx++;
357
- }
358
- }
359
-
360
- const REQUIRED_EVENTS = [State.BEGAN, State.ACTIVE, State.END];
361
-
362
- let currentStateIdx = 0;
363
- const transformedEvents: EventWithoutStates[] = [];
364
- let hasAllStates;
365
- let iterations = 0;
366
- do {
367
- const nextRequiredState = REQUIRED_EVENTS[currentStateIdx];
368
- if (nextRequiredState === State.BEGAN) {
369
- fillEventsForCurrentState({
370
- shouldConsumeEvent: (e: Event) =>
371
- isWithoutState(e) || hasState(State.BEGAN)(e),
372
- });
373
- } else if (nextRequiredState === State.ACTIVE) {
374
- const shouldConsumeEvent = (e: Event) =>
375
- isWithoutState(e) || hasState(State.ACTIVE)(e);
376
- const shouldTransitionToNextState = (nextEvent: Event) =>
377
- noEventsLeft(nextEvent) ||
378
- hasState(State.END)(nextEvent) ||
379
- hasState(State.FAILED)(nextEvent) ||
380
- hasState(State.CANCELLED)(nextEvent);
381
-
382
- fillEventsForCurrentState({
383
- shouldConsumeEvent,
384
- shouldTransitionToNextState,
385
- });
386
- } else if (nextRequiredState === State.END) {
387
- fillEventsForCurrentState({});
388
- }
389
- hasAllStates = currentStateIdx === REQUIRED_EVENTS.length;
390
-
391
- invariant(
392
- iterations++ <= 500,
393
- 'exceeded max number of iterations, please report a bug in RNGH repository with your test case'
394
- );
395
- } while (!hasAllStates);
396
-
397
- return transformedEvents;
398
- }
399
-
400
- type EventEmitter = (
401
- eventName: string,
402
- args: { nativeEvent: GestureHandlerTestEvent }
403
- ) => void;
404
- interface HandlerData {
405
- emitEvent: EventEmitter;
406
- handlerType: HandlerNames;
407
- handlerTag: number;
408
- enabled: boolean | undefined;
409
- }
410
- function getHandlerData(
411
- componentOrGesture: ReactTestInstance | GestureType
412
- ): HandlerData {
413
- if (isGesture(componentOrGesture)) {
414
- const gesture = componentOrGesture;
415
- return {
416
- emitEvent: (eventName, args) => {
417
- DeviceEventEmitter.emit(eventName, args.nativeEvent);
418
- },
419
- handlerType: gesture.handlerName as HandlerNames,
420
- handlerTag: gesture.handlerTag,
421
- enabled: gesture.config.enabled,
422
- };
423
- }
424
- const gestureHandlerComponent = componentOrGesture;
425
- return {
426
- emitEvent: (eventName, args) => {
427
- fireEvent(gestureHandlerComponent, eventName, args);
428
- },
429
- handlerType: gestureHandlerComponent.props.handlerType as HandlerNames,
430
- handlerTag: gestureHandlerComponent.props.handlerTag as number,
431
- enabled: gestureHandlerComponent.props.enabled,
432
- };
433
- }
434
- type AllGestures =
435
- | TapGesture
436
- | PanGesture
437
- | LongPressGesture
438
- | RotationGesture
439
- | PinchGesture
440
- | FlingGesture
441
- | ForceTouchGesture
442
- | NativeGesture;
443
-
444
- type AllHandlers =
445
- | TapGestureHandler
446
- | PanGestureHandler
447
- | LongPressGestureHandler
448
- | RotationGestureHandler
449
- | PinchGestureHandler
450
- | FlingGestureHandler
451
- | ForceTouchGestureHandler
452
- | NativeViewGestureHandler;
453
-
454
- // prettier-ignore
455
- type ClassComponentConstructor<P> = new (props: P) => React.Component<P, any, any>;
456
-
457
- type ExtractPayloadFromProps<T> =
458
- T extends BaseGestureHandlerProps<infer TPayload> ? TPayload : never;
459
-
460
- type ExtractConfig<T> =
461
- T extends BaseGesture<infer TGesturePayload>
462
- ? TGesturePayload
463
- : T extends ClassComponentConstructor<infer THandlerProps>
464
- ? ExtractPayloadFromProps<THandlerProps>
465
- : Record<string, unknown>;
466
-
467
- export function fireGestureHandler<THandler extends AllGestures | AllHandlers>(
468
- componentOrGesture: ReactTestInstance | GestureType,
469
- eventList: Partial<GestureHandlerTestEvent<ExtractConfig<THandler>>>[] = []
470
- ): void {
471
- const { emitEvent, handlerType, handlerTag, enabled } =
472
- getHandlerData(componentOrGesture);
473
-
474
- if (enabled === false) {
475
- return;
476
- }
477
-
478
- let _ = fillMissingStatesTransitions(
479
- eventList,
480
- isDiscreteHandler(handlerType)
481
- );
482
- _ = _.map(fillMissingDefaultsFor({ handlerTag, handlerType }));
483
- _ = withPrevAndCurrent(_, fillOldStateChanges);
484
- _ = withPrevAndCurrent(_, validateStateTransitions);
485
- // @ts-ignore TODO
486
- _ = _.map(wrapWithNativeEvent);
487
-
488
- const events = _ as unknown as WrappedGestureHandlerTestEvent[];
489
-
490
- const firstEvent = events.shift()!;
491
-
492
- emitEvent('onGestureHandlerStateChange', firstEvent);
493
- let lastSentEvent = firstEvent;
494
- for (const event of events) {
495
- const hasChangedState =
496
- lastSentEvent.nativeEvent.state !== event.nativeEvent.state;
497
-
498
- if (hasChangedState) {
499
- emitEvent('onGestureHandlerStateChange', event);
500
- } else {
501
- emitEvent('onGestureHandlerEvent', event);
502
- }
503
- lastSentEvent = event;
504
- }
505
- }
506
-
507
- export function getByGestureTestId(testID: string) {
508
- const handler = findHandlerByTestID(testID);
509
- if (handler === null) {
510
- throw new Error(`Handler with id: '${testID}' cannot be found`);
511
- }
512
- return handler;
513
- }
@@ -1 +0,0 @@
1
- export { Pressable as default } from 'react-native';
@@ -1,70 +0,0 @@
1
- import React from 'react';
2
- import {
3
- TouchableHighlight,
4
- TouchableNativeFeedback,
5
- TouchableOpacity,
6
- TouchableWithoutFeedback,
7
- ScrollView,
8
- FlatList,
9
- Switch,
10
- TextInput,
11
- DrawerLayoutAndroid,
12
- View,
13
- } from 'react-native';
14
- import { State } from '../State';
15
- import { Directions } from '../Directions';
16
-
17
- const NOOP = () => {
18
- // Do nothing
19
- };
20
- const PanGestureHandler = View;
21
- const attachGestureHandler = NOOP;
22
- const createGestureHandler = NOOP;
23
- const dropGestureHandler = NOOP;
24
- const updateGestureHandler = NOOP;
25
- const flushOperations = NOOP;
26
- const install = NOOP;
27
- const NativeViewGestureHandler = View;
28
- const TapGestureHandler = View;
29
- const ForceTouchGestureHandler = View;
30
- const LongPressGestureHandler = View;
31
- const PinchGestureHandler = View;
32
- const RotationGestureHandler = View;
33
- const FlingGestureHandler = View;
34
- export const RawButton = ({ enabled, ...rest }: any) => (
35
- <TouchableNativeFeedback disabled={enabled === false} {...rest}>
36
- <View />
37
- </TouchableNativeFeedback>
38
- );
39
- export const BaseButton = RawButton;
40
- export const RectButton = RawButton;
41
- export const BorderlessButton = TouchableNativeFeedback;
42
-
43
- export default {
44
- TouchableHighlight,
45
- TouchableNativeFeedback,
46
- TouchableOpacity,
47
- TouchableWithoutFeedback,
48
- ScrollView,
49
- FlatList,
50
- Switch,
51
- TextInput,
52
- DrawerLayoutAndroid,
53
- NativeViewGestureHandler,
54
- TapGestureHandler,
55
- ForceTouchGestureHandler,
56
- LongPressGestureHandler,
57
- PinchGestureHandler,
58
- RotationGestureHandler,
59
- FlingGestureHandler,
60
- PanGestureHandler,
61
- attachGestureHandler,
62
- createGestureHandler,
63
- dropGestureHandler,
64
- updateGestureHandler,
65
- flushOperations,
66
- install,
67
- // Probably can be removed
68
- Directions,
69
- State,
70
- } as const;
package/src/mocks.ts DELETED
@@ -1,67 +0,0 @@
1
- import {
2
- TouchableHighlight,
3
- TouchableNativeFeedback,
4
- TouchableOpacity,
5
- TouchableWithoutFeedback,
6
- ScrollView,
7
- FlatList,
8
- Switch,
9
- TextInput,
10
- DrawerLayoutAndroid,
11
- View,
12
- } from 'react-native';
13
- import { State } from './State';
14
- import { Directions } from './Directions';
15
-
16
- const NOOP = () => {
17
- // do nothing
18
- };
19
- const PanGestureHandler = View;
20
- const attachGestureHandler = NOOP;
21
- const createGestureHandler = NOOP;
22
- const dropGestureHandler = NOOP;
23
- const updateGestureHandler = NOOP;
24
- const flushOperations = NOOP;
25
- const NativeViewGestureHandler = View;
26
- const TapGestureHandler = View;
27
- const ForceTouchGestureHandler = View;
28
- const LongPressGestureHandler = View;
29
- const PinchGestureHandler = View;
30
- const RotationGestureHandler = View;
31
- const FlingGestureHandler = View;
32
- const RawButton = TouchableNativeFeedback;
33
- const BaseButton = TouchableNativeFeedback;
34
- const RectButton = TouchableNativeFeedback;
35
- const BorderlessButton = TouchableNativeFeedback;
36
-
37
- export default {
38
- TouchableHighlight,
39
- TouchableNativeFeedback,
40
- TouchableOpacity,
41
- TouchableWithoutFeedback,
42
- ScrollView,
43
- FlatList,
44
- Switch,
45
- TextInput,
46
- DrawerLayoutAndroid,
47
- NativeViewGestureHandler,
48
- TapGestureHandler,
49
- ForceTouchGestureHandler,
50
- LongPressGestureHandler,
51
- PinchGestureHandler,
52
- RotationGestureHandler,
53
- FlingGestureHandler,
54
- RawButton,
55
- BaseButton,
56
- RectButton,
57
- BorderlessButton,
58
- PanGestureHandler,
59
- attachGestureHandler,
60
- createGestureHandler,
61
- dropGestureHandler,
62
- updateGestureHandler,
63
- flushOperations,
64
- // probably can be removed
65
- Directions,
66
- State,
67
- } as const;
@@ -1,51 +0,0 @@
1
- import { GestureType } from './handlers/gestures/gesture';
2
-
3
- interface ReactComponentWithHandlerTag extends React.Component {
4
- handlerTag: number;
5
- }
6
-
7
- export type GestureMountListener = (
8
- gesture: GestureType | ReactComponentWithHandlerTag
9
- ) => void;
10
-
11
- // eslint-disable-next-line @typescript-eslint/no-extraneous-class
12
- export class MountRegistry {
13
- private static mountListeners = new Set<GestureMountListener>();
14
- private static unmountListeners = new Set<GestureMountListener>();
15
-
16
- static addMountListener(listener: GestureMountListener): () => void {
17
- this.mountListeners.add(listener);
18
-
19
- return () => {
20
- this.mountListeners.delete(listener);
21
- };
22
- }
23
-
24
- static addUnmountListener(listener: GestureMountListener): () => void {
25
- this.unmountListeners.add(listener);
26
-
27
- return () => {
28
- this.unmountListeners.delete(listener);
29
- };
30
- }
31
-
32
- static gestureHandlerWillMount(handler: React.Component) {
33
- this.mountListeners.forEach((listener) =>
34
- listener(handler as ReactComponentWithHandlerTag)
35
- );
36
- }
37
-
38
- static gestureHandlerWillUnmount(handler: React.Component) {
39
- this.unmountListeners.forEach((listener) =>
40
- listener(handler as ReactComponentWithHandlerTag)
41
- );
42
- }
43
-
44
- static gestureWillMount(gesture: GestureType) {
45
- this.mountListeners.forEach((listener) => listener(gesture));
46
- }
47
-
48
- static gestureWillUnmount(gesture: GestureType) {
49
- this.unmountListeners.forEach((listener) => listener(gesture));
50
- }
51
- }