@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,58 +0,0 @@
1
- import { isFabric, tagMessage } from '../../../utils';
2
- import { getShadowNodeFromRef } from '../../../getShadowNodeFromRef';
3
-
4
- import { GestureDetectorState } from './types';
5
- import React, { useCallback } from 'react';
6
- import { Platform } from 'react-native';
7
- import findNodeHandle from '../../../findNodeHandle';
8
-
9
- declare const global: {
10
- isViewFlatteningDisabled: (node: unknown) => boolean | null; // JSI function
11
- };
12
-
13
- // Ref handler for the Wrap component attached under the GestureDetector.
14
- // It's responsible for setting the viewRef on the state and triggering the reattaching of handlers
15
- // if the view has changed.
16
- export function useViewRefHandler(
17
- state: GestureDetectorState,
18
- updateAttachedGestures: (skipConfigUpdate?: boolean) => void
19
- ) {
20
- const refHandler = useCallback(
21
- (ref: React.Component | null) => {
22
- if (ref === null) {
23
- return;
24
- }
25
-
26
- state.viewRef = ref;
27
-
28
- // if it's the first render, also set the previousViewTag to prevent reattaching gestures when not needed
29
- if (state.previousViewTag === -1) {
30
- state.previousViewTag = findNodeHandle(state.viewRef) as number;
31
- }
32
-
33
- // Pass true as `skipConfigUpdate`. Here we only want to trigger the eventual reattaching of handlers
34
- // in case the view has changed. If the view doesn't change, the update will be handled by detector.
35
- if (!state.firstRender) {
36
- updateAttachedGestures(true);
37
- }
38
-
39
- if (__DEV__ && isFabric() && global.isViewFlatteningDisabled) {
40
- const node = getShadowNodeFromRef(ref);
41
- // amznmod_react - isViewFlatteningDisabled is not available on kepler.
42
- // View flattening is not applicable on kepler, skip the check.
43
- // @ts-ignore 'kepler' is a valid Platform.OS value on Kepler devices
44
- if (Platform.OS !== 'kepler' && global.isViewFlatteningDisabled(node) === false) {
45
- console.error(
46
- tagMessage(
47
- 'GestureDetector has received a child that may get view-flattened. ' +
48
- '\nTo prevent it from misbehaving you need to wrap the child with a `<View collapsable={false}>`.'
49
- )
50
- );
51
- }
52
- }
53
- },
54
- [state, updateAttachedGestures]
55
- );
56
-
57
- return refHandler;
58
- }
@@ -1,181 +0,0 @@
1
- import { Platform } from 'react-native';
2
-
3
- import { isTestEnv, tagMessage } from '../../../utils';
4
- import { GestureRef, BaseGesture, GestureType } from '../gesture';
5
-
6
- import { flingGestureHandlerProps } from '../../FlingGestureHandler';
7
- import { forceTouchGestureHandlerProps } from '../../ForceTouchGestureHandler';
8
- import { longPressGestureHandlerProps } from '../../LongPressGestureHandler';
9
- import {
10
- panGestureHandlerProps,
11
- panGestureHandlerCustomNativeProps,
12
- } from '../../PanGestureHandler';
13
- import { tapGestureHandlerProps } from '../../TapGestureHandler';
14
- import { hoverGestureHandlerProps } from '../hoverGesture';
15
- import { nativeViewGestureHandlerProps } from '../../NativeViewGestureHandler';
16
- import {
17
- HandlerStateChangeEvent,
18
- baseGestureHandlerWithDetectorProps,
19
- } from '../../gestureHandlerCommon';
20
- import { isNewWebImplementationEnabled } from '../../../EnableNewWebImplementation';
21
- import { RNRenderer } from '../../../RNRenderer';
22
- import { useCallback, useRef, useState } from 'react';
23
- import { Reanimated } from '../reanimatedWrapper';
24
- import { onGestureHandlerEvent } from '../eventReceiver';
25
- import { WebEventHandler } from './types';
26
-
27
- export const ALLOWED_PROPS = [
28
- ...baseGestureHandlerWithDetectorProps,
29
- ...tapGestureHandlerProps,
30
- ...panGestureHandlerProps,
31
- ...panGestureHandlerCustomNativeProps,
32
- ...longPressGestureHandlerProps,
33
- ...forceTouchGestureHandlerProps,
34
- ...flingGestureHandlerProps,
35
- ...hoverGestureHandlerProps,
36
- ...nativeViewGestureHandlerProps,
37
- ];
38
-
39
- function convertToHandlerTag(ref: GestureRef): number {
40
- if (typeof ref === 'number') {
41
- return ref;
42
- } else if (ref instanceof BaseGesture) {
43
- return ref.handlerTag;
44
- } else {
45
- // @ts-ignore in this case it should be a ref either to gesture object or
46
- // a gesture handler component, in both cases handlerTag property exists
47
- return ref.current?.handlerTag ?? -1;
48
- }
49
- }
50
-
51
- function extractValidHandlerTags(interactionGroup: GestureRef[] | undefined) {
52
- return (
53
- interactionGroup?.map(convertToHandlerTag)?.filter((tag) => tag > 0) ?? []
54
- );
55
- }
56
-
57
- export function extractGestureRelations(gesture: GestureType) {
58
- const requireToFail = extractValidHandlerTags(gesture.config.requireToFail);
59
- const simultaneousWith = extractValidHandlerTags(
60
- gesture.config.simultaneousWith
61
- );
62
- const blocksHandlers = extractValidHandlerTags(gesture.config.blocksHandlers);
63
-
64
- return {
65
- waitFor: requireToFail,
66
- simultaneousHandlers: simultaneousWith,
67
- blocksHandlers: blocksHandlers,
68
- };
69
- }
70
-
71
- export function checkGestureCallbacksForWorklets(gesture: GestureType) {
72
- if (!__DEV__) {
73
- return;
74
- }
75
- // If a gesture is explicitly marked to run on the JS thread there is no need to check
76
- // if callbacks are worklets as the user is aware they will be ran on the JS thread
77
- if (gesture.config.runOnJS) {
78
- return;
79
- }
80
-
81
- const areSomeNotWorklets = gesture.handlers.isWorklet.includes(false);
82
- const areSomeWorklets = gesture.handlers.isWorklet.includes(true);
83
-
84
- // If some of the callbacks are worklets and some are not, and the gesture is not
85
- // explicitly marked with `.runOnJS(true)` show an error
86
- if (areSomeNotWorklets && areSomeWorklets) {
87
- console.error(
88
- tagMessage(
89
- `Some of the callbacks in the gesture are worklets and some are not. Either make sure that all calbacks are marked as 'worklet' if you wish to run them on the UI thread or use '.runOnJS(true)' modifier on the gesture explicitly to run all callbacks on the JS thread.`
90
- )
91
- );
92
- }
93
-
94
- if (Reanimated === undefined) {
95
- // If Reanimated is not available, we can't run worklets, so we shouldn't show the warning
96
- return;
97
- }
98
-
99
- const areAllNotWorklets = !areSomeWorklets && areSomeNotWorklets;
100
- // If none of the callbacks are worklets and the gesture is not explicitly marked with
101
- // `.runOnJS(true)` show a warning
102
- if (areAllNotWorklets && !isTestEnv()) {
103
- console.warn(
104
- tagMessage(
105
- `None of the callbacks in the gesture are worklets. If you wish to run them on the JS thread use '.runOnJS(true)' modifier on the gesture to make this explicit. Otherwise, mark the callbacks as 'worklet' to run them on the UI thread.`
106
- )
107
- );
108
- }
109
- }
110
-
111
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
112
- export function validateDetectorChildren(ref: any) {
113
- // Finds the first native view under the Wrap component and traverses the fiber tree upwards
114
- // to check whether there is more than one native view as a pseudo-direct child of GestureDetector
115
- // i.e. this is not ok:
116
- // Wrap
117
- // |
118
- // / \
119
- // / \
120
- // / \
121
- // / \
122
- // NativeView NativeView
123
- //
124
- // but this is fine:
125
- // Wrap
126
- // |
127
- // NativeView
128
- // |
129
- // / \
130
- // / \
131
- // / \
132
- // / \
133
- // NativeView NativeView
134
- if (__DEV__ && Platform.OS !== 'web') {
135
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
136
- const wrapType =
137
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
138
- ref._reactInternals.elementType;
139
-
140
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
141
- let instance =
142
- RNRenderer.findHostInstance_DEPRECATED(
143
- ref
144
- )._internalFiberInstanceHandleDEV;
145
-
146
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
147
- while (instance && instance.elementType !== wrapType) {
148
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
149
- if (instance.sibling) {
150
- throw new Error(
151
- 'GestureDetector has more than one native view as its children. This can happen if you are using a custom component that renders multiple views, like React.Fragment. You should wrap content of GestureDetector with a <View> or <Animated.View>.'
152
- );
153
- }
154
-
155
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
156
- instance = instance.return;
157
- }
158
- }
159
- }
160
-
161
- export function useForceRender() {
162
- const [renderState, setRenderState] = useState(false);
163
- const forceRender = useCallback(() => {
164
- setRenderState(!renderState);
165
- }, [renderState, setRenderState]);
166
-
167
- return forceRender;
168
- }
169
-
170
- export function useWebEventHandlers() {
171
- return useRef<WebEventHandler>({
172
- onGestureHandlerEvent: (e: HandlerStateChangeEvent<unknown>) => {
173
- onGestureHandlerEvent(e.nativeEvent);
174
- },
175
- onGestureHandlerStateChange: isNewWebImplementationEnabled()
176
- ? (e: HandlerStateChangeEvent<unknown>) => {
177
- onGestureHandlerEvent(e.nativeEvent);
178
- }
179
- : undefined,
180
- });
181
- }
@@ -1,173 +0,0 @@
1
- import { DeviceEventEmitter, NativeEventEmitter, EmitterSubscription, Platform } from 'react-native';
2
- import RNGestureHandlerModule from "../../RNGestureHandlerModule";
3
- import type KeplerGestureHandlerModule from "../../RNGestureHandlerModule.kepler"
4
- import { State } from '../../State';
5
- import { TouchEventType } from '../../TouchEventType';
6
- import {
7
- GestureTouchEvent,
8
- GestureUpdateEvent,
9
- GestureStateChangeEvent,
10
- } from '../gestureHandlerCommon';
11
- import { findHandler, findOldGestureHandler } from '../handlersRegistry';
12
- import { BaseGesture } from './gesture';
13
- import {
14
- GestureStateManager,
15
- GestureStateManagerType,
16
- } from './gestureStateManager';
17
-
18
- let gestureHandlerEventSubscription: EmitterSubscription | null = null;
19
- let gestureHandlerStateChangeEventSubscription: EmitterSubscription | null =
20
- null;
21
-
22
- const gestureStateManagers: Map<number, GestureStateManagerType> = new Map<
23
- number,
24
- GestureStateManagerType
25
- >();
26
-
27
- const lastUpdateEvent: (GestureUpdateEvent | undefined)[] = [];
28
-
29
- function isStateChangeEvent(
30
- event: GestureUpdateEvent | GestureStateChangeEvent | GestureTouchEvent
31
- ): event is GestureStateChangeEvent {
32
- // @ts-ignore oldState doesn't exist on GestureTouchEvent and that's the point
33
- return event.oldState != null;
34
- }
35
-
36
- function isTouchEvent(
37
- event: GestureUpdateEvent | GestureStateChangeEvent | GestureTouchEvent
38
- ): event is GestureTouchEvent {
39
- return event.eventType != null;
40
- }
41
-
42
- export function onGestureHandlerEvent(
43
- event: GestureUpdateEvent | GestureStateChangeEvent | GestureTouchEvent
44
- ) {
45
- const handler = findHandler(event.handlerTag) as BaseGesture<
46
- Record<string, unknown>
47
- >;
48
-
49
- if (handler) {
50
- if (isStateChangeEvent(event)) {
51
- if (
52
- event.oldState === State.UNDETERMINED &&
53
- event.state === State.BEGAN
54
- ) {
55
- handler.handlers.onBegin?.(event);
56
- } else if (
57
- (event.oldState === State.BEGAN ||
58
- event.oldState === State.UNDETERMINED) &&
59
- event.state === State.ACTIVE
60
- ) {
61
- handler.handlers.onStart?.(event);
62
- lastUpdateEvent[handler.handlers.handlerTag] = event;
63
- } else if (event.oldState !== event.state && event.state === State.END) {
64
- if (event.oldState === State.ACTIVE) {
65
- handler.handlers.onEnd?.(event, true);
66
- }
67
- handler.handlers.onFinalize?.(event, true);
68
- lastUpdateEvent[handler.handlers.handlerTag] = undefined;
69
- } else if (
70
- (event.state === State.FAILED || event.state === State.CANCELLED) &&
71
- event.oldState !== event.state
72
- ) {
73
- if (event.oldState === State.ACTIVE) {
74
- handler.handlers.onEnd?.(event, false);
75
- }
76
- handler.handlers.onFinalize?.(event, false);
77
- gestureStateManagers.delete(event.handlerTag);
78
- lastUpdateEvent[handler.handlers.handlerTag] = undefined;
79
- }
80
- } else if (isTouchEvent(event)) {
81
- if (!gestureStateManagers.has(event.handlerTag)) {
82
- gestureStateManagers.set(
83
- event.handlerTag,
84
- GestureStateManager.create(event.handlerTag)
85
- );
86
- }
87
-
88
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
89
- const manager = gestureStateManagers.get(event.handlerTag)!;
90
-
91
- switch (event.eventType) {
92
- case TouchEventType.TOUCHES_DOWN:
93
- handler.handlers?.onTouchesDown?.(event, manager);
94
- break;
95
- case TouchEventType.TOUCHES_MOVE:
96
- handler.handlers?.onTouchesMove?.(event, manager);
97
- break;
98
- case TouchEventType.TOUCHES_UP:
99
- handler.handlers?.onTouchesUp?.(event, manager);
100
- break;
101
- case TouchEventType.TOUCHES_CANCELLED:
102
- handler.handlers?.onTouchesCancelled?.(event, manager);
103
- break;
104
- }
105
- } else {
106
- handler.handlers.onUpdate?.(event);
107
-
108
- if (handler.handlers.onChange && handler.handlers.changeEventCalculator) {
109
- handler.handlers.onChange?.(
110
- handler.handlers.changeEventCalculator?.(
111
- event,
112
- lastUpdateEvent[handler.handlers.handlerTag]
113
- )
114
- );
115
-
116
- lastUpdateEvent[handler.handlers.handlerTag] = event;
117
- }
118
- }
119
- } else {
120
- const oldHandler = findOldGestureHandler(event.handlerTag);
121
- if (oldHandler) {
122
- const nativeEvent = { nativeEvent: event };
123
- if (isStateChangeEvent(event)) {
124
- oldHandler.onGestureStateChange(nativeEvent);
125
- } else {
126
- oldHandler.onGestureEvent(nativeEvent);
127
- }
128
- return;
129
- }
130
- }
131
- }
132
-
133
- export function startListening() {
134
- stopListening();
135
- // @ts-ignore
136
- if (Platform.OS === 'kepler') {
137
- // @ts-ignore
138
- const eventEmitter = new NativeEventEmitter(RNGestureHandlerModule as typeof KeplerGestureHandlerModule)
139
-
140
- gestureHandlerEventSubscription = eventEmitter.addListener(
141
- 'onGestureHandlerEvent',
142
- onGestureHandlerEvent
143
- );
144
-
145
- gestureHandlerStateChangeEventSubscription = eventEmitter.addListener(
146
- 'onGestureHandlerStateChange',
147
- onGestureHandlerEvent
148
- );
149
- } else {
150
- console.log(["[SWM] outside kepler"])
151
- gestureHandlerEventSubscription = DeviceEventEmitter.addListener(
152
- 'onGestureHandlerEvent',
153
- onGestureHandlerEvent
154
- );
155
-
156
- gestureHandlerStateChangeEventSubscription = DeviceEventEmitter.addListener(
157
- 'onGestureHandlerStateChange',
158
- onGestureHandlerEvent
159
- );
160
- }
161
- }
162
-
163
- export function stopListening() {
164
- if (gestureHandlerEventSubscription) {
165
- gestureHandlerEventSubscription.remove();
166
- gestureHandlerEventSubscription = null;
167
- }
168
-
169
- if (gestureHandlerStateChangeEventSubscription) {
170
- gestureHandlerStateChangeEventSubscription.remove();
171
- gestureHandlerStateChangeEventSubscription = null;
172
- }
173
- }
@@ -1,36 +0,0 @@
1
- import { BaseGesture, BaseGestureConfig } from './gesture';
2
- import { FlingGestureConfig } from '../FlingGestureHandler';
3
- import type { FlingGestureHandlerEventPayload } from '../GestureHandlerEventPayload';
4
-
5
- export class FlingGesture extends BaseGesture<FlingGestureHandlerEventPayload> {
6
- public config: BaseGestureConfig & FlingGestureConfig = {};
7
-
8
- constructor() {
9
- super();
10
-
11
- this.handlerName = 'FlingGestureHandler';
12
- }
13
-
14
- /**
15
- * Determine exact number of points required to handle the fling gesture.
16
- * @param pointers
17
- */
18
- numberOfPointers(pointers: number) {
19
- this.config.numberOfPointers = pointers;
20
- return this;
21
- }
22
-
23
- /**
24
- * Expressed allowed direction of movement.
25
- * Expected values are exported as constants in the Directions object.
26
- * Arguments can be combined using `|` operator. Default value is set to `Directions.RIGHT`.
27
- * @param direction
28
- * @see https://docs.swmansion.com/react-native-gesture-handler/docs/gestures/fling-gesture/#directionvalue-directions
29
- */
30
- direction(direction: number) {
31
- this.config.direction = direction;
32
- return this;
33
- }
34
- }
35
-
36
- export type FlingGestureType = InstanceType<typeof FlingGesture>;
@@ -1,95 +0,0 @@
1
- import { BaseGestureConfig, ContinousBaseGesture } from './gesture';
2
- import { ForceTouchGestureConfig } from '../ForceTouchGestureHandler';
3
- import type { ForceTouchGestureHandlerEventPayload } from '../GestureHandlerEventPayload';
4
- import { GestureUpdateEvent } from '../gestureHandlerCommon';
5
-
6
- /**
7
- * @deprecated ForceTouch gesture is deprecated and will be removed in the future.
8
- */
9
- export type ForceTouchGestureChangeEventPayload = {
10
- forceChange: number;
11
- };
12
-
13
- function changeEventCalculator(
14
- current: GestureUpdateEvent<ForceTouchGestureHandlerEventPayload>,
15
- previous?: GestureUpdateEvent<ForceTouchGestureHandlerEventPayload>
16
- ) {
17
- 'worklet';
18
- let changePayload: ForceTouchGestureChangeEventPayload;
19
- if (previous === undefined) {
20
- changePayload = {
21
- forceChange: current.force,
22
- };
23
- } else {
24
- changePayload = {
25
- forceChange: current.force - previous.force,
26
- };
27
- }
28
-
29
- return { ...current, ...changePayload };
30
- }
31
-
32
- /**
33
- * @deprecated ForceTouch gesture is deprecated and will be removed in the future.
34
- */
35
- export class ForceTouchGesture extends ContinousBaseGesture<
36
- ForceTouchGestureHandlerEventPayload,
37
- ForceTouchGestureChangeEventPayload
38
- > {
39
- public config: BaseGestureConfig & ForceTouchGestureConfig = {};
40
-
41
- constructor() {
42
- super();
43
-
44
- this.handlerName = 'ForceTouchGestureHandler';
45
- }
46
-
47
- /**
48
- * A minimal pressure that is required before gesture can activate.
49
- * Should be a value from range [0.0, 1.0]. Default is 0.2.
50
- * @param force
51
- */
52
- minForce(force: number) {
53
- this.config.minForce = force;
54
- return this;
55
- }
56
-
57
- /**
58
- * A maximal pressure that could be applied for gesture.
59
- * If the pressure is greater, gesture fails. Should be a value from range [0.0, 1.0].
60
- * @param force
61
- */
62
- maxForce(force: number) {
63
- this.config.maxForce = force;
64
- return this;
65
- }
66
-
67
- /**
68
- * Value defining if haptic feedback has to be performed on activation.
69
- * @param value
70
- */
71
- feedbackOnActivation(value: boolean) {
72
- this.config.feedbackOnActivation = value;
73
- return this;
74
- }
75
-
76
- onChange(
77
- callback: (
78
- event: GestureUpdateEvent<
79
- GestureUpdateEvent<
80
- ForceTouchGestureHandlerEventPayload &
81
- ForceTouchGestureChangeEventPayload
82
- >
83
- >
84
- ) => void
85
- ) {
86
- // @ts-ignore TS being overprotective, ForceTouchGestureHandlerEventPayload is Record
87
- this.handlers.changeEventCalculator = changeEventCalculator;
88
- return super.onChange(callback);
89
- }
90
- }
91
-
92
- /**
93
- * @deprecated ForceTouch gesture is deprecated and will be removed in the future.
94
- */
95
- export type ForceTouchGestureType = InstanceType<typeof ForceTouchGesture>;