@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,275 +0,0 @@
1
- import * as React from 'react';
2
- import { Component } from 'react';
3
- import { Animated, Platform } from 'react-native';
4
-
5
- import { State } from '../../State';
6
- import { BaseButton } from '../GestureButtons';
7
-
8
- import {
9
- GestureEvent,
10
- HandlerStateChangeEvent,
11
- } from '../../handlers/gestureHandlerCommon';
12
- import type { NativeViewGestureHandlerPayload } from '../../handlers/GestureHandlerEventPayload';
13
- import type { GenericTouchableProps } from './GenericTouchableProps';
14
-
15
- /**
16
- * Each touchable is a states' machine which preforms transitions.
17
- * On very beginning (and on the very end or recognition) touchable is
18
- * UNDETERMINED. Then it moves to BEGAN. If touchable recognizes that finger
19
- * travel outside it transits to special MOVED_OUTSIDE state. Gesture recognition
20
- * finishes in UNDETERMINED state.
21
- */
22
- export const TOUCHABLE_STATE = {
23
- UNDETERMINED: 0,
24
- BEGAN: 1,
25
- MOVED_OUTSIDE: 2,
26
- } as const;
27
-
28
- type TouchableState = (typeof TOUCHABLE_STATE)[keyof typeof TOUCHABLE_STATE];
29
-
30
- interface InternalProps {
31
- onStateChange?: (oldState: TouchableState, newState: TouchableState) => void;
32
- }
33
-
34
- // TODO: maybe can be better
35
- // TODO: all clearTimeout have ! added, maybe they shouldn't ?
36
- type Timeout = ReturnType<typeof setTimeout> | null | undefined;
37
-
38
- /**
39
- * GenericTouchable is not intented to be used as it is.
40
- * Should be treated as a source for the rest of touchables
41
- */
42
-
43
- export default class GenericTouchable extends Component<
44
- GenericTouchableProps & InternalProps
45
- > {
46
- static defaultProps = {
47
- delayLongPress: 600,
48
- extraButtonProps: {
49
- rippleColor: 'transparent',
50
- exclusive: true,
51
- },
52
- };
53
-
54
- // Timeout handlers
55
- pressInTimeout: Timeout;
56
- pressOutTimeout: Timeout;
57
- longPressTimeout: Timeout;
58
-
59
- // This flag is required since recognition of longPress implies not-invoking onPress
60
- longPressDetected = false;
61
-
62
- pointerInside = true;
63
-
64
- // State of touchable
65
- STATE: TouchableState = TOUCHABLE_STATE.UNDETERMINED;
66
-
67
- // handlePressIn in called on first touch on traveling inside component.
68
- // Handles state transition with delay.
69
- handlePressIn() {
70
- if (this.props.delayPressIn) {
71
- this.pressInTimeout = setTimeout(() => {
72
- this.moveToState(TOUCHABLE_STATE.BEGAN);
73
- this.pressInTimeout = null;
74
- }, this.props.delayPressIn);
75
- } else {
76
- this.moveToState(TOUCHABLE_STATE.BEGAN);
77
- }
78
- if (this.props.onLongPress) {
79
- const time =
80
- (this.props.delayPressIn || 0) + (this.props.delayLongPress || 0);
81
- this.longPressTimeout = setTimeout(this.onLongPressDetected, time);
82
- }
83
- }
84
- // handleMoveOutside in called on traveling outside component.
85
- // Handles state transition with delay.
86
- handleMoveOutside() {
87
- if (this.props.delayPressOut) {
88
- this.pressOutTimeout =
89
- this.pressOutTimeout ||
90
- setTimeout(() => {
91
- this.moveToState(TOUCHABLE_STATE.MOVED_OUTSIDE);
92
- this.pressOutTimeout = null;
93
- }, this.props.delayPressOut);
94
- } else {
95
- this.moveToState(TOUCHABLE_STATE.MOVED_OUTSIDE);
96
- }
97
- }
98
-
99
- // handleGoToUndetermined transits to UNDETERMINED state with proper delay
100
- handleGoToUndetermined() {
101
- clearTimeout(this.pressOutTimeout!); // TODO: maybe it can be undefined
102
- if (this.props.delayPressOut) {
103
- this.pressOutTimeout = setTimeout(() => {
104
- if (this.STATE === TOUCHABLE_STATE.UNDETERMINED) {
105
- this.moveToState(TOUCHABLE_STATE.BEGAN);
106
- }
107
- this.moveToState(TOUCHABLE_STATE.UNDETERMINED);
108
- this.pressOutTimeout = null;
109
- }, this.props.delayPressOut);
110
- } else {
111
- if (this.STATE === TOUCHABLE_STATE.UNDETERMINED) {
112
- this.moveToState(TOUCHABLE_STATE.BEGAN);
113
- }
114
- this.moveToState(TOUCHABLE_STATE.UNDETERMINED);
115
- }
116
- }
117
-
118
- componentDidMount() {
119
- this.reset();
120
- }
121
- // Reset timeout to prevent memory leaks.
122
- reset() {
123
- this.longPressDetected = false;
124
- this.pointerInside = true;
125
- clearTimeout(this.pressInTimeout!);
126
- clearTimeout(this.pressOutTimeout!);
127
- clearTimeout(this.longPressTimeout!);
128
- this.pressOutTimeout = null;
129
- this.longPressTimeout = null;
130
- this.pressInTimeout = null;
131
- }
132
-
133
- // All states' transitions are defined here.
134
- moveToState(newState: TouchableState) {
135
- if (newState === this.STATE) {
136
- // Ignore dummy transitions
137
- return;
138
- }
139
- if (newState === TOUCHABLE_STATE.BEGAN) {
140
- // First touch and moving inside
141
- this.props.onPressIn?.();
142
- } else if (newState === TOUCHABLE_STATE.MOVED_OUTSIDE) {
143
- // Moving outside
144
- this.props.onPressOut?.();
145
- } else if (newState === TOUCHABLE_STATE.UNDETERMINED) {
146
- // Need to reset each time on transition to UNDETERMINED
147
- this.reset();
148
- if (this.STATE === TOUCHABLE_STATE.BEGAN) {
149
- // ... and if it happens inside button.
150
- this.props.onPressOut?.();
151
- }
152
- }
153
- // Finally call lister (used by subclasses)
154
- this.props.onStateChange?.(this.STATE, newState);
155
- // ... and make transition.
156
- this.STATE = newState;
157
- }
158
-
159
- onGestureEvent = ({
160
- nativeEvent: { pointerInside },
161
- }: GestureEvent<NativeViewGestureHandlerPayload>) => {
162
- if (this.pointerInside !== pointerInside) {
163
- if (pointerInside) {
164
- this.onMoveIn();
165
- } else {
166
- this.onMoveOut();
167
- }
168
- }
169
- this.pointerInside = pointerInside;
170
- };
171
-
172
- onHandlerStateChange = ({
173
- nativeEvent,
174
- }: HandlerStateChangeEvent<NativeViewGestureHandlerPayload>) => {
175
- const { state } = nativeEvent;
176
- if (state === State.CANCELLED || state === State.FAILED) {
177
- // Need to handle case with external cancellation (e.g. by ScrollView)
178
- this.moveToState(TOUCHABLE_STATE.UNDETERMINED);
179
- } else if (
180
- // This platform check is an implication of slightly different behavior of handlers on different platform.
181
- // And Android "Active" state is achieving on first move of a finger, not on press in.
182
- // On iOS event on "Began" is not delivered.
183
- state === (Platform.OS !== 'android' ? State.ACTIVE : State.BEGAN) &&
184
- this.STATE === TOUCHABLE_STATE.UNDETERMINED
185
- ) {
186
- // Moving inside requires
187
- this.handlePressIn();
188
- } else if (state === State.END) {
189
- const shouldCallOnPress =
190
- !this.longPressDetected &&
191
- this.STATE !== TOUCHABLE_STATE.MOVED_OUTSIDE &&
192
- this.pressOutTimeout === null;
193
- this.handleGoToUndetermined();
194
- if (shouldCallOnPress) {
195
- // Calls only inside component whether no long press was called previously
196
- this.props.onPress?.();
197
- }
198
- }
199
- };
200
-
201
- onLongPressDetected = () => {
202
- this.longPressDetected = true;
203
- // Checked for in the caller of `onLongPressDetected`, but better to check twice
204
- this.props.onLongPress?.();
205
- };
206
-
207
- componentWillUnmount() {
208
- // To prevent memory leaks
209
- this.reset();
210
- }
211
-
212
- onMoveIn() {
213
- if (this.STATE === TOUCHABLE_STATE.MOVED_OUTSIDE) {
214
- // This call is not throttled with delays (like in RN's implementation).
215
- this.moveToState(TOUCHABLE_STATE.BEGAN);
216
- }
217
- }
218
-
219
- onMoveOut() {
220
- // Long press should no longer be detected
221
- clearTimeout(this.longPressTimeout!);
222
- this.longPressTimeout = null;
223
- if (this.STATE === TOUCHABLE_STATE.BEGAN) {
224
- this.handleMoveOutside();
225
- }
226
- }
227
-
228
- render() {
229
- const hitSlop =
230
- (typeof this.props.hitSlop === 'number'
231
- ? {
232
- top: this.props.hitSlop,
233
- left: this.props.hitSlop,
234
- bottom: this.props.hitSlop,
235
- right: this.props.hitSlop,
236
- }
237
- : this.props.hitSlop) ?? undefined;
238
-
239
- const coreProps = {
240
- accessible: this.props.accessible !== false,
241
- accessibilityLabel: this.props.accessibilityLabel,
242
- accessibilityHint: this.props.accessibilityHint,
243
- accessibilityRole: this.props.accessibilityRole,
244
- // TODO: check if changed to no 's' correctly, also removed 2 props that are no longer available: `accessibilityComponentType` and `accessibilityTraits`,
245
- // would be good to check if it is ok for sure, see: https://github.com/facebook/react-native/issues/24016
246
- accessibilityState: this.props.accessibilityState,
247
- accessibilityActions: this.props.accessibilityActions,
248
- onAccessibilityAction: this.props.onAccessibilityAction,
249
- nativeID: this.props.nativeID,
250
- onLayout: this.props.onLayout,
251
- };
252
-
253
- return (
254
- <BaseButton
255
- style={this.props.containerStyle}
256
- onHandlerStateChange={
257
- // TODO: not sure if it can be undefined instead of null
258
- this.props.disabled ? undefined : this.onHandlerStateChange
259
- }
260
- onGestureEvent={this.onGestureEvent}
261
- hitSlop={hitSlop}
262
- userSelect={this.props.userSelect}
263
- shouldActivateOnStart={this.props.shouldActivateOnStart}
264
- disallowInterruption={this.props.disallowInterruption}
265
- testID={this.props.testID}
266
- touchSoundDisabled={this.props.touchSoundDisabled ?? false}
267
- enabled={!this.props.disabled}
268
- {...this.props.extraButtonProps}>
269
- <Animated.View {...coreProps} style={this.props.style}>
270
- {this.props.children}
271
- </Animated.View>
272
- </BaseButton>
273
- );
274
- }
275
- }
@@ -1,28 +0,0 @@
1
- import type {
2
- StyleProp,
3
- ViewStyle,
4
- TouchableWithoutFeedbackProps,
5
- Insets,
6
- } from 'react-native';
7
- import type { UserSelect } from '../../handlers/gestureHandlerCommon';
8
- import { ExtraButtonProps } from './ExtraButtonProps';
9
-
10
- export interface GenericTouchableProps
11
- extends Omit<TouchableWithoutFeedbackProps, 'hitSlop'> {
12
- // Decided to drop not used fields from RN's implementation.
13
- // e.g. onBlur and onFocus as well as deprecated props. - TODO: this comment may be unuseful in this moment
14
- // TODO: in RN these events get native event parameter, which prolly could be used in our implementation too
15
- onPress?: () => void;
16
- onPressIn?: () => void;
17
- onPressOut?: () => void;
18
- onLongPress?: () => void;
19
-
20
- nativeID?: string;
21
- shouldActivateOnStart?: boolean;
22
- disallowInterruption?: boolean;
23
-
24
- containerStyle?: StyleProp<ViewStyle>;
25
- hitSlop?: Insets | number;
26
- userSelect?: UserSelect;
27
- extraButtonProps?: ExtraButtonProps;
28
- }
@@ -1,118 +0,0 @@
1
- import * as React from 'react';
2
- import { Component } from 'react';
3
- import GenericTouchable, { TOUCHABLE_STATE } from './GenericTouchable';
4
- import type { GenericTouchableProps } from './GenericTouchableProps';
5
- import {
6
- StyleSheet,
7
- View,
8
- TouchableHighlightProps as RNTouchableHighlightProps,
9
- ColorValue,
10
- ViewProps,
11
- } from 'react-native';
12
-
13
- interface State {
14
- extraChildStyle: null | {
15
- opacity?: number;
16
- };
17
- extraUnderlayStyle: null | {
18
- backgroundColor?: ColorValue;
19
- };
20
- }
21
-
22
- /**
23
- * @deprecated TouchableHighlight will be removed in the future version of Gesture Handler. Use Pressable instead.
24
- */
25
- export type TouchableHighlightProps = RNTouchableHighlightProps &
26
- GenericTouchableProps;
27
-
28
- /**
29
- * @deprecated TouchableHighlight will be removed in the future version of Gesture Handler. Use Pressable instead.
30
- *
31
- * TouchableHighlight follows RN's implementation
32
- */
33
- export default class TouchableHighlight extends Component<
34
- TouchableHighlightProps,
35
- State
36
- > {
37
- static defaultProps = {
38
- ...GenericTouchable.defaultProps,
39
- activeOpacity: 0.85,
40
- delayPressOut: 100,
41
- underlayColor: 'black',
42
- };
43
-
44
- constructor(props: TouchableHighlightProps) {
45
- super(props);
46
- this.state = {
47
- extraChildStyle: null,
48
- extraUnderlayStyle: null,
49
- };
50
- }
51
-
52
- // Copied from RN
53
- showUnderlay = () => {
54
- if (!this.hasPressHandler()) {
55
- return;
56
- }
57
- this.setState({
58
- extraChildStyle: {
59
- opacity: this.props.activeOpacity,
60
- },
61
- extraUnderlayStyle: {
62
- backgroundColor: this.props.underlayColor,
63
- },
64
- });
65
- this.props.onShowUnderlay?.();
66
- };
67
-
68
- hasPressHandler = () =>
69
- this.props.onPress ||
70
- this.props.onPressIn ||
71
- this.props.onPressOut ||
72
- this.props.onLongPress;
73
-
74
- hideUnderlay = () => {
75
- this.setState({
76
- extraChildStyle: null,
77
- extraUnderlayStyle: null,
78
- });
79
- this.props.onHideUnderlay?.();
80
- };
81
-
82
- renderChildren() {
83
- if (!this.props.children) {
84
- return <View />;
85
- }
86
-
87
- const child = React.Children.only(
88
- this.props.children
89
- ) as React.ReactElement<ViewProps>; // TODO: not sure if OK but fixes error
90
- return React.cloneElement(child, {
91
- style: StyleSheet.compose(child.props.style, this.state.extraChildStyle),
92
- });
93
- }
94
-
95
- onStateChange = (_from: number, to: number) => {
96
- if (to === TOUCHABLE_STATE.BEGAN) {
97
- this.showUnderlay();
98
- } else if (
99
- to === TOUCHABLE_STATE.UNDETERMINED ||
100
- to === TOUCHABLE_STATE.MOVED_OUTSIDE
101
- ) {
102
- this.hideUnderlay();
103
- }
104
- };
105
-
106
- render() {
107
- const { style = {}, ...rest } = this.props;
108
- const { extraUnderlayStyle } = this.state;
109
- return (
110
- <GenericTouchable
111
- {...rest}
112
- style={[style, extraUnderlayStyle]}
113
- onStateChange={this.onStateChange}>
114
- {this.renderChildren()}
115
- </GenericTouchable>
116
- );
117
- }
118
- }
@@ -1,83 +0,0 @@
1
- import { Platform, ColorValue } from 'react-native';
2
- import * as React from 'react';
3
- import { Component } from 'react';
4
- import GenericTouchable from './GenericTouchable';
5
- import {
6
- TouchableNativeFeedbackProps,
7
- TouchableNativeFeedbackExtraProps,
8
- } from './TouchableNativeFeedbackProps';
9
-
10
- /**
11
- * @deprecated TouchableNativeFeedback will be removed in the future version of Gesture Handler. Use Pressable instead.
12
- *
13
- * TouchableNativeFeedback behaves slightly different than RN's TouchableNativeFeedback.
14
- * There's small difference with handling long press ripple since RN's implementation calls
15
- * ripple animation via bridge. This solution leaves all animations' handling for native components so
16
- * it follows native behaviours.
17
- */
18
- export default class TouchableNativeFeedback extends Component<TouchableNativeFeedbackProps> {
19
- static defaultProps = {
20
- ...GenericTouchable.defaultProps,
21
- useForeground: true,
22
- extraButtonProps: {
23
- // Disable hiding ripple on Android
24
- rippleColor: null,
25
- },
26
- };
27
-
28
- // Could be taken as RNTouchableNativeFeedback.SelectableBackground etc. but the API may change
29
- static SelectableBackground = (rippleRadius?: number) => ({
30
- type: 'ThemeAttrAndroid',
31
- // I added `attribute` prop to clone the implementation of RN and be able to use only 2 types
32
- attribute: 'selectableItemBackground',
33
- rippleRadius,
34
- });
35
- static SelectableBackgroundBorderless = (rippleRadius?: number) => ({
36
- type: 'ThemeAttrAndroid',
37
- attribute: 'selectableItemBackgroundBorderless',
38
- rippleRadius,
39
- });
40
- static Ripple = (
41
- color: ColorValue,
42
- borderless: boolean,
43
- rippleRadius?: number
44
- ) => ({
45
- type: 'RippleAndroid',
46
- color,
47
- borderless,
48
- rippleRadius,
49
- });
50
-
51
- static canUseNativeForeground = () =>
52
- Platform.OS === 'android' && Platform.Version >= 23;
53
-
54
- getExtraButtonProps() {
55
- const extraProps: TouchableNativeFeedbackExtraProps = {};
56
- const { background } = this.props;
57
- if (background) {
58
- // I changed type values to match those used in RN
59
- // TODO(TS): check if it works the same as previous implementation - looks like it works the same as RN component, so it should be ok
60
- if (background.type === 'RippleAndroid') {
61
- extraProps['borderless'] = background.borderless;
62
- extraProps['rippleColor'] = background.color;
63
- } else if (background.type === 'ThemeAttrAndroid') {
64
- extraProps['borderless'] =
65
- background.attribute === 'selectableItemBackgroundBorderless';
66
- }
67
- // I moved it from above since it should be available in all options
68
- extraProps['rippleRadius'] = background.rippleRadius;
69
- }
70
- extraProps['foreground'] = this.props.useForeground;
71
- return extraProps;
72
- }
73
- render() {
74
- const { style = {}, ...rest } = this.props;
75
- return (
76
- <GenericTouchable
77
- {...rest}
78
- style={style}
79
- extraButtonProps={this.getExtraButtonProps()}
80
- />
81
- );
82
- }
83
- }
@@ -1,8 +0,0 @@
1
- import { TouchableNativeFeedback as RNTouchableNativeFeedback } from 'react-native';
2
-
3
- /**
4
- * @deprecated TouchableNativeFeedback will be removed in the future version of Gesture Handler. Use Pressable instead.
5
- */
6
- const TouchableNativeFeedback = RNTouchableNativeFeedback;
7
-
8
- export default TouchableNativeFeedback;
@@ -1,10 +0,0 @@
1
- import type { TouchableNativeFeedbackProps as RNTouchableNativeFeedbackProps } from 'react-native';
2
- import type { GenericTouchableProps } from './GenericTouchableProps';
3
- import { ExtraButtonProps } from './ExtraButtonProps';
4
-
5
- export type TouchableNativeFeedbackExtraProps = ExtraButtonProps;
6
- /**
7
- * @deprecated TouchableNativeFeedback will be removed in the future version of Gesture Handler. Use Pressable instead.
8
- */
9
- export type TouchableNativeFeedbackProps = RNTouchableNativeFeedbackProps &
10
- GenericTouchableProps;
@@ -1,78 +0,0 @@
1
- import {
2
- Animated,
3
- Easing,
4
- StyleSheet,
5
- View,
6
- TouchableOpacityProps as RNTouchableOpacityProps,
7
- } from 'react-native';
8
- import GenericTouchable, { TOUCHABLE_STATE } from './GenericTouchable';
9
- import type { GenericTouchableProps } from './GenericTouchableProps';
10
- import * as React from 'react';
11
- import { Component } from 'react';
12
-
13
- /**
14
- * @deprecated TouchableOpacity will be removed in the future version of Gesture Handler. Use Pressable instead.
15
- */
16
- export type TouchableOpacityProps = RNTouchableOpacityProps &
17
- GenericTouchableProps & {
18
- useNativeAnimations?: boolean;
19
- };
20
-
21
- /**
22
- * @deprecated TouchableOpacity will be removed in the future version of Gesture Handler. Use Pressable instead.
23
- *
24
- * TouchableOpacity bases on timing animation which has been used in RN's core
25
- */
26
- export default class TouchableOpacity extends Component<TouchableOpacityProps> {
27
- static defaultProps = {
28
- ...GenericTouchable.defaultProps,
29
- activeOpacity: 0.2,
30
- };
31
-
32
- // Opacity is 1 one by default but could be overwritten
33
- getChildStyleOpacityWithDefault = () => {
34
- const childStyle = StyleSheet.flatten(this.props.style) || {};
35
- return childStyle.opacity == null
36
- ? 1
37
- : (childStyle.opacity.valueOf() as number);
38
- };
39
-
40
- opacity = new Animated.Value(this.getChildStyleOpacityWithDefault());
41
-
42
- setOpacityTo = (value: number, duration: number) => {
43
- Animated.timing(this.opacity, {
44
- toValue: value,
45
- duration: duration,
46
- easing: Easing.inOut(Easing.quad),
47
- useNativeDriver: this.props.useNativeAnimations ?? true,
48
- }).start();
49
- };
50
-
51
- onStateChange = (_from: number, to: number) => {
52
- if (to === TOUCHABLE_STATE.BEGAN) {
53
- this.setOpacityTo(this.props.activeOpacity!, 0);
54
- } else if (
55
- to === TOUCHABLE_STATE.UNDETERMINED ||
56
- to === TOUCHABLE_STATE.MOVED_OUTSIDE
57
- ) {
58
- this.setOpacityTo(this.getChildStyleOpacityWithDefault(), 150);
59
- }
60
- };
61
-
62
- render() {
63
- const { style = {}, ...rest } = this.props;
64
- return (
65
- <GenericTouchable
66
- {...rest}
67
- style={[
68
- style,
69
- {
70
- opacity: this.opacity as unknown as number, // TODO: fix this
71
- },
72
- ]}
73
- onStateChange={this.onStateChange}>
74
- {this.props.children ? this.props.children : <View />}
75
- </GenericTouchable>
76
- );
77
- }
78
- }
@@ -1,39 +0,0 @@
1
- import * as React from 'react';
2
- import { PropsWithChildren } from 'react';
3
- import GenericTouchable from './GenericTouchable';
4
- import type { GenericTouchableProps } from './GenericTouchableProps';
5
-
6
- /**
7
- * @deprecated TouchableWithoutFeedback will be removed in the future version of Gesture Handler. Use Pressable instead.
8
- */
9
- export type TouchableWithoutFeedbackProps = GenericTouchableProps;
10
-
11
- /**
12
- * @deprecated TouchableWithoutFeedback will be removed in the future version of Gesture Handler. Use Pressable instead.
13
- */
14
- const TouchableWithoutFeedback = React.forwardRef<
15
- GenericTouchable,
16
- PropsWithChildren<TouchableWithoutFeedbackProps>
17
- >(
18
- (
19
- {
20
- delayLongPress = 600,
21
- extraButtonProps = {
22
- rippleColor: 'transparent',
23
- exclusive: true,
24
- },
25
- ...rest
26
- },
27
-
28
- ref
29
- ) => (
30
- <GenericTouchable
31
- ref={ref}
32
- delayLongPress={delayLongPress}
33
- extraButtonProps={extraButtonProps}
34
- {...rest}
35
- />
36
- )
37
- );
38
-
39
- export default TouchableWithoutFeedback;
@@ -1,7 +0,0 @@
1
- export type { TouchableHighlightProps } from './TouchableHighlight';
2
- export type { TouchableOpacityProps } from './TouchableOpacity';
3
- export type { TouchableWithoutFeedbackProps } from './TouchableWithoutFeedback';
4
- export { default as TouchableNativeFeedback } from './TouchableNativeFeedback';
5
- export { default as TouchableWithoutFeedback } from './TouchableWithoutFeedback';
6
- export { default as TouchableOpacity } from './TouchableOpacity';
7
- export { default as TouchableHighlight } from './TouchableHighlight';
@@ -1,26 +0,0 @@
1
- import { BaseGesture, GestureRef } from '../handlers/gestures/gesture';
2
-
3
- export type RelationPropName =
4
- | 'simultaneousWithExternalGesture'
5
- | 'requireExternalGestureToFail'
6
- | 'blocksExternalGesture';
7
-
8
- export type RelationPropType =
9
- | Exclude<GestureRef, number>
10
- | Exclude<GestureRef, number>[];
11
-
12
- export function applyRelationProp(
13
- gesture: BaseGesture<any>,
14
- relationPropName: RelationPropName,
15
- relationProp: RelationPropType
16
- ) {
17
- if (!relationProp) {
18
- return;
19
- }
20
-
21
- if (Array.isArray(relationProp)) {
22
- gesture[relationPropName](...relationProp);
23
- } else {
24
- gesture[relationPropName](relationProp);
25
- }
26
- }
@@ -1,3 +0,0 @@
1
- import { findNodeHandle } from 'react-native';
2
-
3
- export default findNodeHandle;