@amazon-devices/react-native-gesture-handler 4.0.1 → 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 (507) hide show
  1. package/kepler-compatibility.json +2 -1
  2. package/lib/commonjs/index.js +0 -268
  3. package/package.json +1 -1
  4. package/src/index.ts +0 -168
  5. package/README.md +0 -70
  6. package/lib/commonjs/ActionType.js +0 -15
  7. package/lib/commonjs/Directions.js +0 -31
  8. package/lib/commonjs/EnableNewWebImplementation.js +0 -40
  9. package/lib/commonjs/GestureHandlerRootViewContext.js +0 -10
  10. package/lib/commonjs/PlatformConstants.js +0 -9
  11. package/lib/commonjs/PlatformConstants.kepler.js +0 -12
  12. package/lib/commonjs/PlatformConstants.web.js +0 -12
  13. package/lib/commonjs/PointerType.js +0 -15
  14. package/lib/commonjs/RNGestureHandlerModule.js +0 -12
  15. package/lib/commonjs/RNGestureHandlerModule.kepler.js +0 -29
  16. package/lib/commonjs/RNGestureHandlerModule.web.js +0 -95
  17. package/lib/commonjs/RNGestureHandlerModule.windows.js +0 -56
  18. package/lib/commonjs/RNRenderer.js +0 -14
  19. package/lib/commonjs/RNRenderer.web.js +0 -10
  20. package/lib/commonjs/State.js +0 -19
  21. package/lib/commonjs/TouchEventType.js +0 -16
  22. package/lib/commonjs/components/DrawerLayout.js +0 -548
  23. package/lib/commonjs/components/GestureButtons.js +0 -212
  24. package/lib/commonjs/components/GestureButtonsProps.js +0 -6
  25. package/lib/commonjs/components/GestureComponents.js +0 -106
  26. package/lib/commonjs/components/GestureComponents.web.js +0 -39
  27. package/lib/commonjs/components/GestureHandlerButton.js +0 -10
  28. package/lib/commonjs/components/GestureHandlerButton.web.js +0 -16
  29. package/lib/commonjs/components/GestureHandlerRootView.android.js +0 -36
  30. package/lib/commonjs/components/GestureHandlerRootView.js +0 -35
  31. package/lib/commonjs/components/GestureHandlerRootView.kepler.js +0 -21
  32. package/lib/commonjs/components/GestureHandlerRootView.web.js +0 -30
  33. package/lib/commonjs/components/Pressable/Pressable.js +0 -274
  34. package/lib/commonjs/components/Pressable/PressableProps.js +0 -6
  35. package/lib/commonjs/components/Pressable/StateMachine.js +0 -44
  36. package/lib/commonjs/components/Pressable/index.js +0 -14
  37. package/lib/commonjs/components/Pressable/stateDefinitions.js +0 -88
  38. package/lib/commonjs/components/Pressable/utils.js +0 -92
  39. package/lib/commonjs/components/ReanimatedDrawerLayout.js +0 -357
  40. package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeable.js +0 -337
  41. package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js +0 -12
  42. package/lib/commonjs/components/ReanimatedSwipeable/index.js +0 -21
  43. package/lib/commonjs/components/Swipeable.js +0 -370
  44. package/lib/commonjs/components/Text.js +0 -60
  45. package/lib/commonjs/components/gestureHandlerRootHOC.js +0 -37
  46. package/lib/commonjs/components/touchables/ExtraButtonProps.js +0 -2
  47. package/lib/commonjs/components/touchables/GenericTouchable.js +0 -245
  48. package/lib/commonjs/components/touchables/GenericTouchableProps.js +0 -6
  49. package/lib/commonjs/components/touchables/TouchableHighlight.js +0 -93
  50. package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js +0 -84
  51. package/lib/commonjs/components/touchables/TouchableNativeFeedback.js +0 -13
  52. package/lib/commonjs/components/touchables/TouchableNativeFeedbackProps.js +0 -6
  53. package/lib/commonjs/components/touchables/TouchableOpacity.js +0 -65
  54. package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js +0 -33
  55. package/lib/commonjs/components/touchables/index.js +0 -35
  56. package/lib/commonjs/components/utils.js +0 -17
  57. package/lib/commonjs/findNodeHandle.js +0 -9
  58. package/lib/commonjs/findNodeHandle.web.js +0 -39
  59. package/lib/commonjs/getShadowNodeFromRef.js +0 -51
  60. package/lib/commonjs/getShadowNodeFromRef.web.js +0 -14
  61. package/lib/commonjs/ghQueueMicrotask.js +0 -10
  62. package/lib/commonjs/handlers/FlingGestureHandler.js +0 -31
  63. package/lib/commonjs/handlers/ForceTouchGestureHandler.js +0 -46
  64. package/lib/commonjs/handlers/GestureHandlerEventPayload.js +0 -6
  65. package/lib/commonjs/handlers/LongPressGestureHandler.js +0 -33
  66. package/lib/commonjs/handlers/NativeViewGestureHandler.js +0 -32
  67. package/lib/commonjs/handlers/PanGestureHandler.js +0 -112
  68. package/lib/commonjs/handlers/PinchGestureHandler.js +0 -29
  69. package/lib/commonjs/handlers/PressabilityDebugView.js +0 -13
  70. package/lib/commonjs/handlers/PressabilityDebugView.web.js +0 -11
  71. package/lib/commonjs/handlers/RotationGestureHandler.js +0 -29
  72. package/lib/commonjs/handlers/TapGestureHandler.js +0 -33
  73. package/lib/commonjs/handlers/createHandler.js +0 -405
  74. package/lib/commonjs/handlers/createNativeWrapper.js +0 -77
  75. package/lib/commonjs/handlers/customDirectEventTypes.js +0 -13
  76. package/lib/commonjs/handlers/customDirectEventTypes.web.js +0 -10
  77. package/lib/commonjs/handlers/gestureHandlerCommon.js +0 -27
  78. package/lib/commonjs/handlers/gestureHandlerTypesCompat.js +0 -6
  79. package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.js +0 -32
  80. package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.web.js +0 -41
  81. package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js +0 -67
  82. package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js +0 -20
  83. package/lib/commonjs/handlers/gestures/GestureDetector/index.js +0 -125
  84. package/lib/commonjs/handlers/gestures/GestureDetector/needsToReattach.js +0 -22
  85. package/lib/commonjs/handlers/gestures/GestureDetector/types.js +0 -6
  86. package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js +0 -66
  87. package/lib/commonjs/handlers/gestures/GestureDetector/useAnimatedGesture.js +0 -143
  88. package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js +0 -47
  89. package/lib/commonjs/handlers/gestures/GestureDetector/useMountReactions.js +0 -41
  90. package/lib/commonjs/handlers/gestures/GestureDetector/useViewRefHandler.js +0 -45
  91. package/lib/commonjs/handlers/gestures/GestureDetector/utils.js +0 -143
  92. package/lib/commonjs/handlers/gestures/eventReceiver.js +0 -117
  93. package/lib/commonjs/handlers/gestures/flingGesture.js +0 -37
  94. package/lib/commonjs/handlers/gestures/forceTouchGesture.js +0 -80
  95. package/lib/commonjs/handlers/gestures/gesture.js +0 -338
  96. package/lib/commonjs/handlers/gestures/gestureComposition.js +0 -90
  97. package/lib/commonjs/handlers/gestures/gestureObjects.js +0 -132
  98. package/lib/commonjs/handlers/gestures/gestureStateManager.js +0 -70
  99. package/lib/commonjs/handlers/gestures/gestureStateManager.web.js +0 -28
  100. package/lib/commonjs/handlers/gestures/hoverGesture.js +0 -57
  101. package/lib/commonjs/handlers/gestures/longPressGesture.js +0 -46
  102. package/lib/commonjs/handlers/gestures/manualGesture.js +0 -25
  103. package/lib/commonjs/handlers/gestures/nativeGesture.js +0 -34
  104. package/lib/commonjs/handlers/gestures/panGesture.js +0 -197
  105. package/lib/commonjs/handlers/gestures/pinchGesture.js +0 -38
  106. package/lib/commonjs/handlers/gestures/reanimatedWrapper.js +0 -29
  107. package/lib/commonjs/handlers/gestures/rotationGesture.js +0 -38
  108. package/lib/commonjs/handlers/gestures/tapGesture.js +0 -87
  109. package/lib/commonjs/handlers/getNextHandlerTag.js +0 -11
  110. package/lib/commonjs/handlers/handlersRegistry.js +0 -50
  111. package/lib/commonjs/handlers/utils.js +0 -69
  112. package/lib/commonjs/init.js +0 -25
  113. package/lib/commonjs/jestUtils/index.js +0 -19
  114. package/lib/commonjs/jestUtils/jestUtils.js +0 -316
  115. package/lib/commonjs/mocks/Pressable.js +0 -13
  116. package/lib/commonjs/mocks/mocks.js +0 -70
  117. package/lib/commonjs/mocks.js +0 -61
  118. package/lib/commonjs/mountRegistry.js +0 -37
  119. package/lib/commonjs/specs/NativeRNGestureHandlerModule.js +0 -9
  120. package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.kepler.js +0 -20
  121. package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.ts +0 -24
  122. package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.kepler.js +0 -17
  123. package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -7
  124. package/lib/commonjs/typeUtils.js +0 -2
  125. package/lib/commonjs/utils.js +0 -95
  126. package/lib/commonjs/web/Gestures.js +0 -48
  127. package/lib/commonjs/web/constants.js +0 -9
  128. package/lib/commonjs/web/detectors/RotationGestureDetector.js +0 -124
  129. package/lib/commonjs/web/detectors/ScaleGestureDetector.js +0 -111
  130. package/lib/commonjs/web/handlers/FlingGestureHandler.js +0 -143
  131. package/lib/commonjs/web/handlers/GestureHandler.js +0 -689
  132. package/lib/commonjs/web/handlers/HoverGestureHandler.js +0 -45
  133. package/lib/commonjs/web/handlers/IGestureHandler.js +0 -2
  134. package/lib/commonjs/web/handlers/LongPressGestureHandler.js +0 -146
  135. package/lib/commonjs/web/handlers/ManualGestureHandler.js +0 -38
  136. package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +0 -141
  137. package/lib/commonjs/web/handlers/PanGestureHandler.js +0 -399
  138. package/lib/commonjs/web/handlers/PinchGestureHandler.js +0 -122
  139. package/lib/commonjs/web/handlers/RotationGestureHandler.js +0 -129
  140. package/lib/commonjs/web/handlers/TapGestureHandler.js +0 -215
  141. package/lib/commonjs/web/interfaces.js +0 -32
  142. package/lib/commonjs/web/tools/CircularBuffer.js +0 -40
  143. package/lib/commonjs/web/tools/EventManager.js +0 -94
  144. package/lib/commonjs/web/tools/GestureHandlerDelegate.js +0 -6
  145. package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js +0 -267
  146. package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js +0 -165
  147. package/lib/commonjs/web/tools/InteractionManager.js +0 -96
  148. package/lib/commonjs/web/tools/KeyboardEventManager.js +0 -108
  149. package/lib/commonjs/web/tools/LeastSquareSolver.js +0 -159
  150. package/lib/commonjs/web/tools/NodeManager.js +0 -39
  151. package/lib/commonjs/web/tools/PointerEventManager.js +0 -189
  152. package/lib/commonjs/web/tools/PointerTracker.js +0 -192
  153. package/lib/commonjs/web/tools/Vector.js +0 -37
  154. package/lib/commonjs/web/tools/VelocityTracker.js +0 -85
  155. package/lib/commonjs/web/tools/WheelEventManager.js +0 -55
  156. package/lib/commonjs/web/utils.js +0 -235
  157. package/lib/commonjs/web_hammer/DiscreteGestureHandler.js +0 -93
  158. package/lib/commonjs/web_hammer/DraggingGestureHandler.js +0 -43
  159. package/lib/commonjs/web_hammer/Errors.js +0 -13
  160. package/lib/commonjs/web_hammer/FlingGestureHandler.js +0 -139
  161. package/lib/commonjs/web_hammer/GestureHandler.js +0 -484
  162. package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js +0 -45
  163. package/lib/commonjs/web_hammer/LongPressGestureHandler.js +0 -57
  164. package/lib/commonjs/web_hammer/NativeViewGestureHandler.js +0 -57
  165. package/lib/commonjs/web_hammer/NodeManager.js +0 -41
  166. package/lib/commonjs/web_hammer/PanGestureHandler.js +0 -167
  167. package/lib/commonjs/web_hammer/PinchGestureHandler.js +0 -31
  168. package/lib/commonjs/web_hammer/PressGestureHandler.js +0 -153
  169. package/lib/commonjs/web_hammer/RotationGestureHandler.js +0 -32
  170. package/lib/commonjs/web_hammer/TapGestureHandler.js +0 -165
  171. package/lib/commonjs/web_hammer/constants.js +0 -51
  172. package/lib/commonjs/web_hammer/utils.js +0 -32
  173. package/lib/module/ActionType.js +0 -11
  174. package/lib/module/Directions.js +0 -27
  175. package/lib/module/EnableNewWebImplementation.js +0 -34
  176. package/lib/module/GestureHandlerRootViewContext.js +0 -5
  177. package/lib/module/PlatformConstants.js +0 -5
  178. package/lib/module/PlatformConstants.kepler.js +0 -8
  179. package/lib/module/PlatformConstants.web.js +0 -8
  180. package/lib/module/PointerType.js +0 -11
  181. package/lib/module/RNGestureHandlerModule.js +0 -8
  182. package/lib/module/RNGestureHandlerModule.kepler.js +0 -25
  183. package/lib/module/RNGestureHandlerModule.web.js +0 -90
  184. package/lib/module/RNGestureHandlerModule.windows.js +0 -50
  185. package/lib/module/RNRenderer.js +0 -6
  186. package/lib/module/RNRenderer.web.js +0 -6
  187. package/lib/module/State.js +0 -15
  188. package/lib/module/TouchEventType.js +0 -12
  189. package/lib/module/components/DrawerLayout.js +0 -541
  190. package/lib/module/components/GestureButtons.js +0 -200
  191. package/lib/module/components/GestureButtonsProps.js +0 -4
  192. package/lib/module/components/GestureComponents.js +0 -100
  193. package/lib/module/components/GestureComponents.web.js +0 -32
  194. package/lib/module/components/GestureHandlerButton.js +0 -5
  195. package/lib/module/components/GestureHandlerButton.web.js +0 -11
  196. package/lib/module/components/GestureHandlerRootView.android.js +0 -30
  197. package/lib/module/components/GestureHandlerRootView.js +0 -29
  198. package/lib/module/components/GestureHandlerRootView.kepler.js +0 -15
  199. package/lib/module/components/GestureHandlerRootView.web.js +0 -24
  200. package/lib/module/components/Pressable/Pressable.js +0 -268
  201. package/lib/module/components/Pressable/PressableProps.js +0 -4
  202. package/lib/module/components/Pressable/StateMachine.js +0 -40
  203. package/lib/module/components/Pressable/index.js +0 -4
  204. package/lib/module/components/Pressable/stateDefinitions.js +0 -83
  205. package/lib/module/components/Pressable/utils.js +0 -84
  206. package/lib/module/components/ReanimatedDrawerLayout.js +0 -352
  207. package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeable.js +0 -332
  208. package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js +0 -8
  209. package/lib/module/components/ReanimatedSwipeable/index.js +0 -5
  210. package/lib/module/components/Swipeable.js +0 -364
  211. package/lib/module/components/Text.js +0 -55
  212. package/lib/module/components/gestureHandlerRootHOC.js +0 -33
  213. package/lib/module/components/touchables/ExtraButtonProps.js +0 -2
  214. package/lib/module/components/touchables/GenericTouchable.js +0 -239
  215. package/lib/module/components/touchables/GenericTouchableProps.js +0 -4
  216. package/lib/module/components/touchables/TouchableHighlight.js +0 -87
  217. package/lib/module/components/touchables/TouchableNativeFeedback.android.js +0 -77
  218. package/lib/module/components/touchables/TouchableNativeFeedback.js +0 -10
  219. package/lib/module/components/touchables/TouchableNativeFeedbackProps.js +0 -4
  220. package/lib/module/components/touchables/TouchableOpacity.js +0 -59
  221. package/lib/module/components/touchables/TouchableWithoutFeedback.js +0 -27
  222. package/lib/module/components/touchables/index.js +0 -7
  223. package/lib/module/components/utils.js +0 -13
  224. package/lib/module/findNodeHandle.js +0 -5
  225. package/lib/module/findNodeHandle.web.js +0 -35
  226. package/lib/module/getShadowNodeFromRef.js +0 -47
  227. package/lib/module/getShadowNodeFromRef.web.js +0 -10
  228. package/lib/module/ghQueueMicrotask.js +0 -6
  229. package/lib/module/handlers/FlingGestureHandler.js +0 -26
  230. package/lib/module/handlers/ForceTouchGestureHandler.js +0 -41
  231. package/lib/module/handlers/GestureHandlerEventPayload.js +0 -4
  232. package/lib/module/handlers/LongPressGestureHandler.js +0 -28
  233. package/lib/module/handlers/NativeViewGestureHandler.js +0 -27
  234. package/lib/module/handlers/PanGestureHandler.js +0 -105
  235. package/lib/module/handlers/PinchGestureHandler.js +0 -25
  236. package/lib/module/handlers/PressabilityDebugView.js +0 -5
  237. package/lib/module/handlers/PressabilityDebugView.web.js +0 -7
  238. package/lib/module/handlers/RotationGestureHandler.js +0 -25
  239. package/lib/module/handlers/TapGestureHandler.js +0 -28
  240. package/lib/module/handlers/createHandler.js +0 -399
  241. package/lib/module/handlers/createNativeWrapper.js +0 -74
  242. package/lib/module/handlers/customDirectEventTypes.js +0 -5
  243. package/lib/module/handlers/customDirectEventTypes.web.js +0 -7
  244. package/lib/module/handlers/gestureHandlerCommon.js +0 -26
  245. package/lib/module/handlers/gestureHandlerTypesCompat.js +0 -4
  246. package/lib/module/handlers/gestures/GestureDetector/Wrap.js +0 -26
  247. package/lib/module/handlers/gestures/GestureDetector/Wrap.web.js +0 -36
  248. package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js +0 -62
  249. package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js +0 -15
  250. package/lib/module/handlers/gestures/GestureDetector/index.js +0 -117
  251. package/lib/module/handlers/gestures/GestureDetector/needsToReattach.js +0 -18
  252. package/lib/module/handlers/gestures/GestureDetector/types.js +0 -4
  253. package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js +0 -61
  254. package/lib/module/handlers/gestures/GestureDetector/useAnimatedGesture.js +0 -139
  255. package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js +0 -43
  256. package/lib/module/handlers/gestures/GestureDetector/useMountReactions.js +0 -37
  257. package/lib/module/handlers/gestures/GestureDetector/useViewRefHandler.js +0 -40
  258. package/lib/module/handlers/gestures/GestureDetector/utils.js +0 -134
  259. package/lib/module/handlers/gestures/eventReceiver.js +0 -110
  260. package/lib/module/handlers/gestures/flingGesture.js +0 -32
  261. package/lib/module/handlers/gestures/forceTouchGesture.js +0 -76
  262. package/lib/module/handlers/gestures/gesture.js +0 -332
  263. package/lib/module/handlers/gestures/gestureComposition.js +0 -83
  264. package/lib/module/handlers/gestures/gestureObjects.js +0 -129
  265. package/lib/module/handlers/gestures/gestureStateManager.js +0 -66
  266. package/lib/module/handlers/gestures/gestureStateManager.web.js +0 -23
  267. package/lib/module/handlers/gestures/hoverGesture.js +0 -52
  268. package/lib/module/handlers/gestures/longPressGesture.js +0 -41
  269. package/lib/module/handlers/gestures/manualGesture.js +0 -20
  270. package/lib/module/handlers/gestures/nativeGesture.js +0 -29
  271. package/lib/module/handlers/gestures/panGesture.js +0 -192
  272. package/lib/module/handlers/gestures/pinchGesture.js +0 -33
  273. package/lib/module/handlers/gestures/reanimatedWrapper.js +0 -26
  274. package/lib/module/handlers/gestures/rotationGesture.js +0 -33
  275. package/lib/module/handlers/gestures/tapGesture.js +0 -82
  276. package/lib/module/handlers/getNextHandlerTag.js +0 -7
  277. package/lib/module/handlers/handlersRegistry.js +0 -39
  278. package/lib/module/handlers/utils.js +0 -61
  279. package/lib/module/index.js +0 -31
  280. package/lib/module/init.js +0 -19
  281. package/lib/module/jestUtils/index.js +0 -4
  282. package/lib/module/jestUtils/jestUtils.js +0 -311
  283. package/lib/module/mocks/Pressable.js +0 -4
  284. package/lib/module/mocks/mocks.js +0 -64
  285. package/lib/module/mocks.js +0 -57
  286. package/lib/module/mountRegistry.js +0 -32
  287. package/lib/module/specs/NativeRNGestureHandlerModule.js +0 -5
  288. package/lib/module/specs/RNGestureHandlerButtonNativeComponent.kepler.js +0 -14
  289. package/lib/module/specs/RNGestureHandlerButtonNativeComponent.ts +0 -24
  290. package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.kepler.js +0 -11
  291. package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -7
  292. package/lib/module/typeUtils.js +0 -2
  293. package/lib/module/utils.js +0 -81
  294. package/lib/module/web/Gestures.js +0 -42
  295. package/lib/module/web/constants.js +0 -5
  296. package/lib/module/web/detectors/RotationGestureDetector.js +0 -119
  297. package/lib/module/web/detectors/ScaleGestureDetector.js +0 -106
  298. package/lib/module/web/handlers/FlingGestureHandler.js +0 -137
  299. package/lib/module/web/handlers/GestureHandler.js +0 -682
  300. package/lib/module/web/handlers/HoverGestureHandler.js +0 -39
  301. package/lib/module/web/handlers/IGestureHandler.js +0 -2
  302. package/lib/module/web/handlers/LongPressGestureHandler.js +0 -140
  303. package/lib/module/web/handlers/ManualGestureHandler.js +0 -32
  304. package/lib/module/web/handlers/NativeViewGestureHandler.js +0 -135
  305. package/lib/module/web/handlers/PanGestureHandler.js +0 -393
  306. package/lib/module/web/handlers/PinchGestureHandler.js +0 -116
  307. package/lib/module/web/handlers/RotationGestureHandler.js +0 -123
  308. package/lib/module/web/handlers/TapGestureHandler.js +0 -209
  309. package/lib/module/web/interfaces.js +0 -28
  310. package/lib/module/web/tools/CircularBuffer.js +0 -35
  311. package/lib/module/web/tools/EventManager.js +0 -89
  312. package/lib/module/web/tools/GestureHandlerDelegate.js +0 -4
  313. package/lib/module/web/tools/GestureHandlerOrchestrator.js +0 -261
  314. package/lib/module/web/tools/GestureHandlerWebDelegate.js +0 -159
  315. package/lib/module/web/tools/InteractionManager.js +0 -91
  316. package/lib/module/web/tools/KeyboardEventManager.js +0 -102
  317. package/lib/module/web/tools/LeastSquareSolver.js +0 -154
  318. package/lib/module/web/tools/NodeManager.js +0 -34
  319. package/lib/module/web/tools/PointerEventManager.js +0 -183
  320. package/lib/module/web/tools/PointerTracker.js +0 -186
  321. package/lib/module/web/tools/Vector.js +0 -32
  322. package/lib/module/web/tools/VelocityTracker.js +0 -79
  323. package/lib/module/web/tools/WheelEventManager.js +0 -49
  324. package/lib/module/web/utils.js +0 -223
  325. package/lib/module/web_hammer/DiscreteGestureHandler.js +0 -87
  326. package/lib/module/web_hammer/DraggingGestureHandler.js +0 -37
  327. package/lib/module/web_hammer/Errors.js +0 -8
  328. package/lib/module/web_hammer/FlingGestureHandler.js +0 -133
  329. package/lib/module/web_hammer/GestureHandler.js +0 -478
  330. package/lib/module/web_hammer/IndiscreteGestureHandler.js +0 -41
  331. package/lib/module/web_hammer/LongPressGestureHandler.js +0 -51
  332. package/lib/module/web_hammer/NativeViewGestureHandler.js +0 -51
  333. package/lib/module/web_hammer/NodeManager.js +0 -33
  334. package/lib/module/web_hammer/PanGestureHandler.js +0 -162
  335. package/lib/module/web_hammer/PinchGestureHandler.js +0 -26
  336. package/lib/module/web_hammer/PressGestureHandler.js +0 -148
  337. package/lib/module/web_hammer/RotationGestureHandler.js +0 -27
  338. package/lib/module/web_hammer/TapGestureHandler.js +0 -160
  339. package/lib/module/web_hammer/constants.js +0 -46
  340. package/lib/module/web_hammer/utils.js +0 -21
  341. package/src/ActionType.ts +0 -9
  342. package/src/Directions.ts +0 -26
  343. package/src/EnableNewWebImplementation.ts +0 -53
  344. package/src/GestureHandlerRootViewContext.ts +0 -3
  345. package/src/PlatformConstants.kepler.ts +0 -5
  346. package/src/PlatformConstants.ts +0 -8
  347. package/src/PlatformConstants.web.ts +0 -5
  348. package/src/PointerType.ts +0 -7
  349. package/src/RNGestureHandlerModule.kepler.ts +0 -63
  350. package/src/RNGestureHandlerModule.ts +0 -5
  351. package/src/RNGestureHandlerModule.web.ts +0 -124
  352. package/src/RNGestureHandlerModule.windows.ts +0 -62
  353. package/src/RNRenderer.ts +0 -3
  354. package/src/RNRenderer.web.ts +0 -3
  355. package/src/State.ts +0 -13
  356. package/src/TouchEventType.ts +0 -11
  357. package/src/components/DrawerLayout.tsx +0 -788
  358. package/src/components/GestureButtons.tsx +0 -272
  359. package/src/components/GestureButtonsProps.ts +0 -156
  360. package/src/components/GestureComponents.tsx +0 -148
  361. package/src/components/GestureComponents.web.tsx +0 -41
  362. package/src/components/GestureHandlerButton.tsx +0 -5
  363. package/src/components/GestureHandlerButton.web.tsx +0 -6
  364. package/src/components/GestureHandlerRootView.android.tsx +0 -32
  365. package/src/components/GestureHandlerRootView.kepler.tsx +0 -18
  366. package/src/components/GestureHandlerRootView.tsx +0 -28
  367. package/src/components/GestureHandlerRootView.web.tsx +0 -22
  368. package/src/components/Pressable/Pressable.tsx +0 -401
  369. package/src/components/Pressable/PressableProps.tsx +0 -174
  370. package/src/components/Pressable/StateMachine.tsx +0 -57
  371. package/src/components/Pressable/index.ts +0 -5
  372. package/src/components/Pressable/stateDefinitions.ts +0 -126
  373. package/src/components/Pressable/utils.ts +0 -140
  374. package/src/components/ReanimatedDrawerLayout.tsx +0 -754
  375. package/src/components/ReanimatedSwipeable/ReanimatedSwipeable.tsx +0 -607
  376. package/src/components/ReanimatedSwipeable/ReanimatedSwipeableProps.ts +0 -199
  377. package/src/components/ReanimatedSwipeable/index.ts +0 -6
  378. package/src/components/Swipeable.tsx +0 -595
  379. package/src/components/Text.tsx +0 -77
  380. package/src/components/gestureHandlerRootHOC.tsx +0 -33
  381. package/src/components/touchables/ExtraButtonProps.ts +0 -7
  382. package/src/components/touchables/GenericTouchable.tsx +0 -275
  383. package/src/components/touchables/GenericTouchableProps.ts +0 -28
  384. package/src/components/touchables/TouchableHighlight.tsx +0 -118
  385. package/src/components/touchables/TouchableNativeFeedback.android.tsx +0 -83
  386. package/src/components/touchables/TouchableNativeFeedback.tsx +0 -8
  387. package/src/components/touchables/TouchableNativeFeedbackProps.tsx +0 -10
  388. package/src/components/touchables/TouchableOpacity.tsx +0 -78
  389. package/src/components/touchables/TouchableWithoutFeedback.tsx +0 -39
  390. package/src/components/touchables/index.ts +0 -7
  391. package/src/components/utils.ts +0 -26
  392. package/src/findNodeHandle.ts +0 -3
  393. package/src/findNodeHandle.web.ts +0 -41
  394. package/src/getShadowNodeFromRef.ts +0 -50
  395. package/src/getShadowNodeFromRef.web.ts +0 -7
  396. package/src/ghQueueMicrotask.ts +0 -8
  397. package/src/handlers/FlingGestureHandler.ts +0 -64
  398. package/src/handlers/ForceTouchGestureHandler.ts +0 -88
  399. package/src/handlers/GestureHandlerEventPayload.ts +0 -229
  400. package/src/handlers/LongPressGestureHandler.ts +0 -65
  401. package/src/handlers/NativeViewGestureHandler.ts +0 -59
  402. package/src/handlers/PanGestureHandler.ts +0 -282
  403. package/src/handlers/PinchGestureHandler.ts +0 -32
  404. package/src/handlers/PressabilityDebugView.tsx +0 -2
  405. package/src/handlers/PressabilityDebugView.web.tsx +0 -4
  406. package/src/handlers/RotationGestureHandler.ts +0 -32
  407. package/src/handlers/TapGestureHandler.ts +0 -99
  408. package/src/handlers/createHandler.tsx +0 -586
  409. package/src/handlers/createNativeWrapper.tsx +0 -89
  410. package/src/handlers/customDirectEventTypes.ts +0 -2
  411. package/src/handlers/customDirectEventTypes.web.ts +0 -5
  412. package/src/handlers/gestureHandlerCommon.ts +0 -211
  413. package/src/handlers/gestureHandlerTypesCompat.ts +0 -101
  414. package/src/handlers/gestures/GestureDetector/Wrap.tsx +0 -35
  415. package/src/handlers/gestures/GestureDetector/Wrap.web.tsx +0 -42
  416. package/src/handlers/gestures/GestureDetector/attachHandlers.ts +0 -112
  417. package/src/handlers/gestures/GestureDetector/dropHandlers.ts +0 -17
  418. package/src/handlers/gestures/GestureDetector/index.tsx +0 -191
  419. package/src/handlers/gestures/GestureDetector/needsToReattach.ts +0 -27
  420. package/src/handlers/gestures/GestureDetector/types.ts +0 -32
  421. package/src/handlers/gestures/GestureDetector/updateHandlers.ts +0 -92
  422. package/src/handlers/gestures/GestureDetector/useAnimatedGesture.ts +0 -209
  423. package/src/handlers/gestures/GestureDetector/useDetectorUpdater.ts +0 -69
  424. package/src/handlers/gestures/GestureDetector/useMountReactions.ts +0 -51
  425. package/src/handlers/gestures/GestureDetector/useViewRefHandler.ts +0 -58
  426. package/src/handlers/gestures/GestureDetector/utils.ts +0 -181
  427. package/src/handlers/gestures/eventReceiver.ts +0 -173
  428. package/src/handlers/gestures/flingGesture.ts +0 -36
  429. package/src/handlers/gestures/forceTouchGesture.ts +0 -95
  430. package/src/handlers/gestures/gesture.ts +0 -472
  431. package/src/handlers/gestures/gestureComposition.ts +0 -124
  432. package/src/handlers/gestures/gestureObjects.ts +0 -143
  433. package/src/handlers/gestures/gestureStateManager.ts +0 -76
  434. package/src/handlers/gestures/gestureStateManager.web.ts +0 -26
  435. package/src/handlers/gestures/hoverGesture.ts +0 -77
  436. package/src/handlers/gestures/longPressGesture.ts +0 -45
  437. package/src/handlers/gestures/manualGesture.ts +0 -31
  438. package/src/handlers/gestures/nativeGesture.ts +0 -33
  439. package/src/handlers/gestures/panGesture.ts +0 -221
  440. package/src/handlers/gestures/pinchGesture.ts +0 -51
  441. package/src/handlers/gestures/reanimatedWrapper.ts +0 -57
  442. package/src/handlers/gestures/rotationGesture.ts +0 -51
  443. package/src/handlers/gestures/tapGesture.ts +0 -86
  444. package/src/handlers/getNextHandlerTag.ts +0 -5
  445. package/src/handlers/handlersRegistry.ts +0 -58
  446. package/src/handlers/utils.ts +0 -76
  447. package/src/init.ts +0 -18
  448. package/src/jestUtils/index.ts +0 -1
  449. package/src/jestUtils/jestUtils.ts +0 -513
  450. package/src/mocks/Pressable.tsx +0 -1
  451. package/src/mocks/mocks.tsx +0 -70
  452. package/src/mocks.ts +0 -67
  453. package/src/mountRegistry.ts +0 -51
  454. package/src/specs/NativeRNGestureHandlerModule.ts +0 -26
  455. package/src/specs/RNGestureHandlerButtonNativeComponent.kepler.ts +0 -27
  456. package/src/specs/RNGestureHandlerButtonNativeComponent.ts +0 -24
  457. package/src/specs/RNGestureHandlerRootViewNativeComponent.kepler.ts +0 -21
  458. package/src/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -7
  459. package/src/typeUtils.ts +0 -1
  460. package/src/utils.ts +0 -107
  461. package/src/web/Gestures.ts +0 -41
  462. package/src/web/constants.ts +0 -2
  463. package/src/web/detectors/RotationGestureDetector.ts +0 -170
  464. package/src/web/detectors/ScaleGestureDetector.ts +0 -171
  465. package/src/web/handlers/FlingGestureHandler.ts +0 -196
  466. package/src/web/handlers/GestureHandler.ts +0 -881
  467. package/src/web/handlers/HoverGestureHandler.ts +0 -49
  468. package/src/web/handlers/IGestureHandler.ts +0 -49
  469. package/src/web/handlers/LongPressGestureHandler.ts +0 -175
  470. package/src/web/handlers/ManualGestureHandler.ts +0 -37
  471. package/src/web/handlers/NativeViewGestureHandler.ts +0 -175
  472. package/src/web/handlers/PanGestureHandler.ts +0 -571
  473. package/src/web/handlers/PinchGestureHandler.ts +0 -152
  474. package/src/web/handlers/RotationGestureHandler.ts +0 -166
  475. package/src/web/handlers/TapGestureHandler.ts +0 -274
  476. package/src/web/interfaces.ts +0 -190
  477. package/src/web/tools/CircularBuffer.ts +0 -42
  478. package/src/web/tools/EventManager.ts +0 -108
  479. package/src/web/tools/GestureHandlerDelegate.ts +0 -26
  480. package/src/web/tools/GestureHandlerOrchestrator.ts +0 -392
  481. package/src/web/tools/GestureHandlerWebDelegate.ts +0 -227
  482. package/src/web/tools/InteractionManager.ts +0 -135
  483. package/src/web/tools/KeyboardEventManager.ts +0 -133
  484. package/src/web/tools/LeastSquareSolver.ts +0 -182
  485. package/src/web/tools/NodeManager.ts +0 -48
  486. package/src/web/tools/PointerEventManager.ts +0 -226
  487. package/src/web/tools/PointerTracker.ts +0 -228
  488. package/src/web/tools/Vector.ts +0 -59
  489. package/src/web/tools/VelocityTracker.ts +0 -98
  490. package/src/web/tools/WheelEventManager.ts +0 -48
  491. package/src/web/utils.ts +0 -293
  492. package/src/web_hammer/DiscreteGestureHandler.ts +0 -82
  493. package/src/web_hammer/DraggingGestureHandler.ts +0 -34
  494. package/src/web_hammer/Errors.ts +0 -7
  495. package/src/web_hammer/FlingGestureHandler.ts +0 -134
  496. package/src/web_hammer/GestureHandler.ts +0 -600
  497. package/src/web_hammer/IndiscreteGestureHandler.ts +0 -33
  498. package/src/web_hammer/LongPressGestureHandler.ts +0 -56
  499. package/src/web_hammer/NativeViewGestureHandler.ts +0 -47
  500. package/src/web_hammer/NodeManager.ts +0 -33
  501. package/src/web_hammer/PanGestureHandler.ts +0 -226
  502. package/src/web_hammer/PinchGestureHandler.ts +0 -25
  503. package/src/web_hammer/PressGestureHandler.ts +0 -170
  504. package/src/web_hammer/RotationGestureHandler.ts +0 -25
  505. package/src/web_hammer/TapGestureHandler.ts +0 -172
  506. package/src/web_hammer/constants.ts +0 -48
  507. 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
- }