@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,595 +0,0 @@
1
- // Similarily to the DrawerLayout component this deserves to be put in a
2
- // separate repo. Although, keeping it here for the time being will allow us to
3
- // move faster and fix possible issues quicker
4
-
5
- import * as React from 'react';
6
- import { Component } from 'react';
7
- import {
8
- Animated,
9
- StyleSheet,
10
- View,
11
- I18nManager,
12
- LayoutChangeEvent,
13
- StyleProp,
14
- ViewStyle,
15
- } from 'react-native';
16
-
17
- import {
18
- GestureEvent,
19
- HandlerStateChangeEvent,
20
- } from '../handlers/gestureHandlerCommon';
21
- import {
22
- PanGestureHandler,
23
- PanGestureHandlerProps,
24
- } from '../handlers/PanGestureHandler';
25
- import {
26
- PanGestureHandlerEventPayload,
27
- TapGestureHandlerEventPayload,
28
- } from '../handlers/GestureHandlerEventPayload';
29
- import { TapGestureHandler } from '../handlers/TapGestureHandler';
30
- import { State } from '../State';
31
-
32
- const DRAG_TOSS = 0.05;
33
-
34
- type SwipeableExcludes = Exclude<
35
- keyof PanGestureHandlerProps,
36
- 'onGestureEvent' | 'onHandlerStateChange'
37
- >;
38
-
39
- // Animated.AnimatedInterpolation has been converted to a generic type
40
- // in @types/react-native 0.70. This way we can maintain compatibility
41
- // with all versions of @types/react-native
42
- type AnimatedInterpolation = ReturnType<Animated.Value['interpolate']>;
43
-
44
- export interface SwipeableProps
45
- extends Pick<PanGestureHandlerProps, SwipeableExcludes> {
46
- /**
47
- * Enables two-finger gestures on supported devices, for example iPads with
48
- * trackpads. If not enabled the gesture will require click + drag, with
49
- * `enableTrackpadTwoFingerGesture` swiping with two fingers will also trigger
50
- * the gesture.
51
- */
52
- enableTrackpadTwoFingerGesture?: boolean;
53
-
54
- /**
55
- * Specifies how much the visual interaction will be delayed compared to the
56
- * gesture distance. e.g. value of 1 will indicate that the swipeable panel
57
- * should exactly follow the gesture, 2 means it is going to be two times
58
- * "slower".
59
- */
60
- friction?: number;
61
-
62
- /**
63
- * Distance from the left edge at which released panel will animate to the
64
- * open state (or the open panel will animate into the closed state). By
65
- * default it's a half of the panel's width.
66
- */
67
- leftThreshold?: number;
68
-
69
- /**
70
- * Distance from the right edge at which released panel will animate to the
71
- * open state (or the open panel will animate into the closed state). By
72
- * default it's a half of the panel's width.
73
- */
74
- rightThreshold?: number;
75
-
76
- /**
77
- * Distance that the panel must be dragged from the left edge to be considered
78
- * a swipe. The default value is 10.
79
- */
80
- dragOffsetFromLeftEdge?: number;
81
-
82
- /**
83
- * Distance that the panel must be dragged from the right edge to be considered
84
- * a swipe. The default value is 10.
85
- */
86
- dragOffsetFromRightEdge?: number;
87
-
88
- /**
89
- * Value indicating if the swipeable panel can be pulled further than the left
90
- * actions panel's width. It is set to true by default as long as the left
91
- * panel render method is present.
92
- */
93
- overshootLeft?: boolean;
94
-
95
- /**
96
- * Value indicating if the swipeable panel can be pulled further than the
97
- * right actions panel's width. It is set to true by default as long as the
98
- * right panel render method is present.
99
- */
100
- overshootRight?: boolean;
101
-
102
- /**
103
- * Specifies how much the visual interaction will be delayed compared to the
104
- * gesture distance at overshoot. Default value is 1, it mean no friction, for
105
- * a native feel, try 8 or above.
106
- */
107
- overshootFriction?: number;
108
-
109
- /**
110
- * @deprecated Use `direction` argument of onSwipeableOpen()
111
- *
112
- * Called when left action panel gets open.
113
- */
114
- onSwipeableLeftOpen?: () => void;
115
-
116
- /**
117
- * @deprecated Use `direction` argument of onSwipeableOpen()
118
- *
119
- * Called when right action panel gets open.
120
- */
121
- onSwipeableRightOpen?: () => void;
122
-
123
- /**
124
- * Called when action panel gets open (either right or left).
125
- */
126
- onSwipeableOpen?: (direction: 'left' | 'right', swipeable: Swipeable) => void;
127
-
128
- /**
129
- * Called when action panel is closed.
130
- */
131
- onSwipeableClose?: (
132
- direction: 'left' | 'right',
133
- swipeable: Swipeable
134
- ) => void;
135
-
136
- /**
137
- * @deprecated Use `direction` argument of onSwipeableWillOpen()
138
- *
139
- * Called when left action panel starts animating on open.
140
- */
141
- onSwipeableLeftWillOpen?: () => void;
142
-
143
- /**
144
- * @deprecated Use `direction` argument of onSwipeableWillOpen()
145
- *
146
- * Called when right action panel starts animating on open.
147
- */
148
- onSwipeableRightWillOpen?: () => void;
149
-
150
- /**
151
- * Called when action panel starts animating on open (either right or left).
152
- */
153
- onSwipeableWillOpen?: (direction: 'left' | 'right') => void;
154
-
155
- /**
156
- * Called when action panel starts animating on close.
157
- */
158
- onSwipeableWillClose?: (direction: 'left' | 'right') => void;
159
-
160
- /**
161
- * Called when action panel starts being shown on dragging to open.
162
- */
163
- onSwipeableOpenStartDrag?: (direction: 'left' | 'right') => void;
164
-
165
- /**
166
- * Called when action panel starts being shown on dragging to close.
167
- */
168
- onSwipeableCloseStartDrag?: (direction: 'left' | 'right') => void;
169
-
170
- /**
171
- *
172
- * This map describes the values to use as inputRange for extra interpolation:
173
- * AnimatedValue: [startValue, endValue]
174
- *
175
- * progressAnimatedValue: [0, 1] dragAnimatedValue: [0, +]
176
- *
177
- * To support `rtl` flexbox layouts use `flexDirection` styling.
178
- * */
179
- renderLeftActions?: (
180
- progressAnimatedValue: AnimatedInterpolation,
181
- dragAnimatedValue: AnimatedInterpolation,
182
- swipeable: Swipeable
183
- ) => React.ReactNode;
184
- /**
185
- *
186
- * This map describes the values to use as inputRange for extra interpolation:
187
- * AnimatedValue: [startValue, endValue]
188
- *
189
- * progressAnimatedValue: [0, 1] dragAnimatedValue: [0, -]
190
- *
191
- * To support `rtl` flexbox layouts use `flexDirection` styling.
192
- * */
193
- renderRightActions?: (
194
- progressAnimatedValue: AnimatedInterpolation,
195
- dragAnimatedValue: AnimatedInterpolation,
196
- swipeable: Swipeable
197
- ) => React.ReactNode;
198
-
199
- useNativeAnimations?: boolean;
200
-
201
- animationOptions?: Record<string, unknown>;
202
-
203
- /**
204
- * Style object for the container (`Animated.View`), for example to override
205
- * `overflow: 'hidden'`.
206
- */
207
- containerStyle?: StyleProp<ViewStyle>;
208
-
209
- /**
210
- * Style object for the children container (`Animated.View`), for example to
211
- * apply `flex: 1`
212
- */
213
- childrenContainerStyle?: StyleProp<ViewStyle>;
214
- }
215
-
216
- type SwipeableState = {
217
- dragX: Animated.Value;
218
- rowTranslation: Animated.Value;
219
- rowState: number;
220
- leftWidth?: number;
221
- rightOffset?: number;
222
- rowWidth?: number;
223
- };
224
-
225
- /**
226
- * @deprecated use Reanimated version of Swipeable instead
227
- *
228
- * This component allows for implementing swipeable rows or similar interaction.
229
- */
230
-
231
- export default class Swipeable extends Component<
232
- SwipeableProps,
233
- SwipeableState
234
- > {
235
- static defaultProps = {
236
- friction: 1,
237
- overshootFriction: 1,
238
- useNativeAnimations: true,
239
- };
240
-
241
- constructor(props: SwipeableProps) {
242
- super(props);
243
- const dragX = new Animated.Value(0);
244
- this.state = {
245
- dragX,
246
- rowTranslation: new Animated.Value(0),
247
- rowState: 0,
248
- leftWidth: undefined,
249
- rightOffset: undefined,
250
- rowWidth: undefined,
251
- };
252
- this.updateAnimatedEvent(props, this.state);
253
-
254
- this.onGestureEvent = Animated.event(
255
- [{ nativeEvent: { translationX: dragX } }],
256
- { useNativeDriver: props.useNativeAnimations! }
257
- );
258
- }
259
-
260
- shouldComponentUpdate(props: SwipeableProps, state: SwipeableState) {
261
- if (
262
- this.props.friction !== props.friction ||
263
- this.props.overshootLeft !== props.overshootLeft ||
264
- this.props.overshootRight !== props.overshootRight ||
265
- this.props.overshootFriction !== props.overshootFriction ||
266
- this.state.leftWidth !== state.leftWidth ||
267
- this.state.rightOffset !== state.rightOffset ||
268
- this.state.rowWidth !== state.rowWidth
269
- ) {
270
- this.updateAnimatedEvent(props, state);
271
- }
272
-
273
- return true;
274
- }
275
-
276
- private onGestureEvent?: (
277
- event: GestureEvent<PanGestureHandlerEventPayload>
278
- ) => void;
279
- private transX?: AnimatedInterpolation;
280
- private showLeftAction?: AnimatedInterpolation | Animated.Value;
281
- private leftActionTranslate?: AnimatedInterpolation;
282
- private showRightAction?: AnimatedInterpolation | Animated.Value;
283
- private rightActionTranslate?: AnimatedInterpolation;
284
-
285
- private updateAnimatedEvent = (
286
- props: SwipeableProps,
287
- state: SwipeableState
288
- ) => {
289
- const { friction, overshootFriction } = props;
290
- const { dragX, rowTranslation, leftWidth = 0, rowWidth = 0 } = state;
291
- const { rightOffset = rowWidth } = state;
292
- const rightWidth = Math.max(0, rowWidth - rightOffset);
293
-
294
- const { overshootLeft = leftWidth > 0, overshootRight = rightWidth > 0 } =
295
- props;
296
-
297
- const transX = Animated.add(
298
- rowTranslation,
299
- dragX.interpolate({
300
- inputRange: [0, friction!],
301
- outputRange: [0, 1],
302
- })
303
- ).interpolate({
304
- inputRange: [-rightWidth - 1, -rightWidth, leftWidth, leftWidth + 1],
305
- outputRange: [
306
- -rightWidth - (overshootRight ? 1 / overshootFriction! : 0),
307
- -rightWidth,
308
- leftWidth,
309
- leftWidth + (overshootLeft ? 1 / overshootFriction! : 0),
310
- ],
311
- });
312
- this.transX = transX;
313
- this.showLeftAction =
314
- leftWidth > 0
315
- ? transX.interpolate({
316
- inputRange: [-1, 0, leftWidth],
317
- outputRange: [0, 0, 1],
318
- })
319
- : new Animated.Value(0);
320
- this.leftActionTranslate = this.showLeftAction.interpolate({
321
- inputRange: [0, Number.MIN_VALUE],
322
- outputRange: [-10000, 0],
323
- extrapolate: 'clamp',
324
- });
325
- this.showRightAction =
326
- rightWidth > 0
327
- ? transX.interpolate({
328
- inputRange: [-rightWidth, 0, 1],
329
- outputRange: [1, 0, 0],
330
- })
331
- : new Animated.Value(0);
332
- this.rightActionTranslate = this.showRightAction.interpolate({
333
- inputRange: [0, Number.MIN_VALUE],
334
- outputRange: [-10000, 0],
335
- extrapolate: 'clamp',
336
- });
337
- };
338
-
339
- private onTapHandlerStateChange = ({
340
- nativeEvent,
341
- }: HandlerStateChangeEvent<TapGestureHandlerEventPayload>) => {
342
- if (nativeEvent.oldState === State.ACTIVE) {
343
- this.close();
344
- }
345
- };
346
-
347
- private onHandlerStateChange = (
348
- ev: HandlerStateChangeEvent<PanGestureHandlerEventPayload>
349
- ) => {
350
- if (ev.nativeEvent.oldState === State.ACTIVE) {
351
- this.handleRelease(ev);
352
- }
353
-
354
- if (ev.nativeEvent.state === State.ACTIVE) {
355
- const { velocityX, translationX: dragX } = ev.nativeEvent;
356
- const { rowState } = this.state;
357
- const { friction } = this.props;
358
-
359
- const translationX = (dragX + DRAG_TOSS * velocityX) / friction!;
360
-
361
- const direction =
362
- rowState === -1
363
- ? 'right'
364
- : rowState === 1
365
- ? 'left'
366
- : translationX > 0
367
- ? 'left'
368
- : 'right';
369
-
370
- if (rowState === 0) {
371
- this.props.onSwipeableOpenStartDrag?.(direction);
372
- } else {
373
- this.props.onSwipeableCloseStartDrag?.(direction);
374
- }
375
- }
376
- };
377
-
378
- private handleRelease = (
379
- ev: HandlerStateChangeEvent<PanGestureHandlerEventPayload>
380
- ) => {
381
- const { velocityX, translationX: dragX } = ev.nativeEvent;
382
- const { leftWidth = 0, rowWidth = 0, rowState } = this.state;
383
- const { rightOffset = rowWidth } = this.state;
384
- const rightWidth = rowWidth - rightOffset;
385
- const {
386
- friction,
387
- leftThreshold = leftWidth / 2,
388
- rightThreshold = rightWidth / 2,
389
- } = this.props;
390
-
391
- const startOffsetX = this.currentOffset() + dragX / friction!;
392
- const translationX = (dragX + DRAG_TOSS * velocityX) / friction!;
393
-
394
- let toValue = 0;
395
- if (rowState === 0) {
396
- if (translationX > leftThreshold) {
397
- toValue = leftWidth;
398
- } else if (translationX < -rightThreshold) {
399
- toValue = -rightWidth;
400
- }
401
- } else if (rowState === 1) {
402
- // Swiped to left
403
- if (translationX > -leftThreshold) {
404
- toValue = leftWidth;
405
- }
406
- } else {
407
- // Swiped to right
408
- if (translationX < rightThreshold) {
409
- toValue = -rightWidth;
410
- }
411
- }
412
-
413
- this.animateRow(startOffsetX, toValue, velocityX / friction!);
414
- };
415
-
416
- private animateRow = (
417
- fromValue: number,
418
- toValue: number,
419
- velocityX?:
420
- | number
421
- | {
422
- x: number;
423
- y: number;
424
- }
425
- ) => {
426
- const { dragX, rowTranslation } = this.state;
427
- dragX.setValue(0);
428
- rowTranslation.setValue(fromValue);
429
-
430
- this.setState({ rowState: Math.sign(toValue) });
431
- Animated.spring(rowTranslation, {
432
- restSpeedThreshold: 1.7,
433
- restDisplacementThreshold: 0.4,
434
- velocity: velocityX,
435
- bounciness: 0,
436
- toValue,
437
- useNativeDriver: this.props.useNativeAnimations!,
438
- ...this.props.animationOptions,
439
- }).start(({ finished }) => {
440
- if (finished) {
441
- if (toValue > 0) {
442
- this.props.onSwipeableLeftOpen?.();
443
- this.props.onSwipeableOpen?.('left', this);
444
- } else if (toValue < 0) {
445
- this.props.onSwipeableRightOpen?.();
446
- this.props.onSwipeableOpen?.('right', this);
447
- } else {
448
- const closingDirection = fromValue > 0 ? 'left' : 'right';
449
- this.props.onSwipeableClose?.(closingDirection, this);
450
- }
451
- }
452
- });
453
- if (toValue > 0) {
454
- this.props.onSwipeableLeftWillOpen?.();
455
- this.props.onSwipeableWillOpen?.('left');
456
- } else if (toValue < 0) {
457
- this.props.onSwipeableRightWillOpen?.();
458
- this.props.onSwipeableWillOpen?.('right');
459
- } else {
460
- const closingDirection = fromValue > 0 ? 'left' : 'right';
461
- this.props.onSwipeableWillClose?.(closingDirection);
462
- }
463
- };
464
-
465
- private onRowLayout = ({ nativeEvent }: LayoutChangeEvent) => {
466
- this.setState({ rowWidth: nativeEvent.layout.width });
467
- };
468
-
469
- private currentOffset = () => {
470
- const { leftWidth = 0, rowWidth = 0, rowState } = this.state;
471
- const { rightOffset = rowWidth } = this.state;
472
- const rightWidth = rowWidth - rightOffset;
473
- if (rowState === 1) {
474
- return leftWidth;
475
- } else if (rowState === -1) {
476
- return -rightWidth;
477
- }
478
- return 0;
479
- };
480
-
481
- close = () => {
482
- this.animateRow(this.currentOffset(), 0);
483
- };
484
-
485
- // eslint-disable-next-line @eslint-react/no-unused-class-component-members
486
- openLeft = () => {
487
- const { leftWidth = 0 } = this.state;
488
- this.animateRow(this.currentOffset(), leftWidth);
489
- };
490
-
491
- // eslint-disable-next-line @eslint-react/no-unused-class-component-members
492
- openRight = () => {
493
- const { rowWidth = 0 } = this.state;
494
- const { rightOffset = rowWidth } = this.state;
495
- const rightWidth = rowWidth - rightOffset;
496
- this.animateRow(this.currentOffset(), -rightWidth);
497
- };
498
-
499
- // eslint-disable-next-line @eslint-react/no-unused-class-component-members
500
- reset = () => {
501
- const { dragX, rowTranslation } = this.state;
502
- dragX.setValue(0);
503
- rowTranslation.setValue(0);
504
- this.setState({ rowState: 0 });
505
- };
506
-
507
- render() {
508
- const { rowState } = this.state;
509
- const {
510
- children,
511
- renderLeftActions,
512
- renderRightActions,
513
- dragOffsetFromLeftEdge = 10,
514
- dragOffsetFromRightEdge = 10,
515
- } = this.props;
516
-
517
- const left = renderLeftActions && (
518
- <Animated.View
519
- style={[
520
- styles.leftActions,
521
- // All those and below parameters can have ! since they are all
522
- // asigned in constructor in `updateAnimatedEvent` but TS cannot spot
523
- // it for some reason
524
- { transform: [{ translateX: this.leftActionTranslate! }] },
525
- ]}>
526
- {renderLeftActions(this.showLeftAction!, this.transX!, this)}
527
- <View
528
- onLayout={({ nativeEvent }) =>
529
- this.setState({ leftWidth: nativeEvent.layout.x })
530
- }
531
- />
532
- </Animated.View>
533
- );
534
-
535
- const right = renderRightActions && (
536
- <Animated.View
537
- style={[
538
- styles.rightActions,
539
- { transform: [{ translateX: this.rightActionTranslate! }] },
540
- ]}>
541
- {renderRightActions(this.showRightAction!, this.transX!, this)}
542
- <View
543
- onLayout={({ nativeEvent }) =>
544
- this.setState({ rightOffset: nativeEvent.layout.x })
545
- }
546
- />
547
- </Animated.View>
548
- );
549
-
550
- return (
551
- <PanGestureHandler
552
- activeOffsetX={[-dragOffsetFromRightEdge, dragOffsetFromLeftEdge]}
553
- touchAction="pan-y"
554
- {...this.props}
555
- onGestureEvent={this.onGestureEvent}
556
- onHandlerStateChange={this.onHandlerStateChange}>
557
- <Animated.View
558
- onLayout={this.onRowLayout}
559
- style={[styles.container, this.props.containerStyle]}>
560
- {left}
561
- {right}
562
- <TapGestureHandler
563
- enabled={rowState !== 0}
564
- touchAction="pan-y"
565
- onHandlerStateChange={this.onTapHandlerStateChange}>
566
- <Animated.View
567
- pointerEvents={rowState === 0 ? 'auto' : 'box-only'}
568
- style={[
569
- {
570
- transform: [{ translateX: this.transX! }],
571
- },
572
- this.props.childrenContainerStyle,
573
- ]}>
574
- {children}
575
- </Animated.View>
576
- </TapGestureHandler>
577
- </Animated.View>
578
- </PanGestureHandler>
579
- );
580
- }
581
- }
582
-
583
- const styles = StyleSheet.create({
584
- container: {
585
- overflow: 'hidden',
586
- },
587
- leftActions: {
588
- ...StyleSheet.absoluteFillObject,
589
- flexDirection: I18nManager.isRTL ? 'row-reverse' : 'row',
590
- },
591
- rightActions: {
592
- ...StyleSheet.absoluteFillObject,
593
- flexDirection: I18nManager.isRTL ? 'row' : 'row-reverse',
594
- },
595
- });
@@ -1,77 +0,0 @@
1
- import React, {
2
- ForwardedRef,
3
- forwardRef,
4
- RefObject,
5
- useEffect,
6
- useRef,
7
- } from 'react';
8
- import {
9
- Platform,
10
- Text as RNText,
11
- TextProps as RNTextProps,
12
- } from 'react-native';
13
-
14
- import { GestureObjects as Gesture } from '../handlers/gestures/gestureObjects';
15
- import { GestureDetector } from '../handlers/gestures/GestureDetector';
16
-
17
- export const Text = forwardRef(
18
- (
19
- props: RNTextProps,
20
- ref: ForwardedRef<React.ComponentRef<typeof RNText>>
21
- ) => {
22
- const { onPress, onLongPress, ...rest } = props;
23
-
24
- const textRef = useRef<RNText | null>(null);
25
- const native = Gesture.Native().runOnJS(true);
26
-
27
- const refHandler = (node: any) => {
28
- textRef.current = node;
29
-
30
- if (ref === null) {
31
- return;
32
- }
33
-
34
- if (typeof ref === 'function') {
35
- ref(node);
36
- } else {
37
- ref.current = node;
38
- }
39
- };
40
-
41
- // This is a special case for `Text` component. After https://github.com/software-mansion/react-native-gesture-handler/pull/3379 we check for
42
- // `displayName` field. However, `Text` from RN has this field set to `Text`, but is also present in `RNSVGElements` set.
43
- // We don't want to treat our `Text` as the one from `SVG`, therefore we add special field to ref.
44
- refHandler.rngh = true;
45
-
46
- useEffect(() => {
47
- if (Platform.OS !== 'web') {
48
- return;
49
- }
50
-
51
- const textElement = ref
52
- ? (ref as RefObject<React.ComponentRef<typeof RNText>>).current
53
- : textRef.current;
54
-
55
- // At this point we are sure that textElement is div in HTML tree
56
- (textElement as unknown as HTMLDivElement)?.setAttribute(
57
- 'rnghtext',
58
- 'true'
59
- );
60
- }, []);
61
-
62
- return onPress || onLongPress ? (
63
- <GestureDetector gesture={native}>
64
- <RNText
65
- onPress={onPress}
66
- onLongPress={onLongPress}
67
- ref={refHandler}
68
- {...rest}
69
- />
70
- </GestureDetector>
71
- ) : (
72
- <RNText ref={ref} {...rest} />
73
- );
74
- }
75
- );
76
- // eslint-disable-next-line @typescript-eslint/no-redeclare
77
- export type Text = typeof Text & RNText;
@@ -1,33 +0,0 @@
1
- import * as React from 'react';
2
- import { StyleSheet, StyleProp, ViewStyle } from 'react-native';
3
- import hoistNonReactStatics from 'hoist-non-react-statics';
4
- import GestureHandlerRootView from './GestureHandlerRootView';
5
-
6
- /**
7
- * @deprecated `gestureHandlerRootHOC` is deprecated and will be removed in the future version of Gesture Handler.
8
- * Use `GestureHandlerRootView` directly instead.
9
- */
10
- export default function gestureHandlerRootHOC<P extends object>(
11
- Component: React.ComponentType<P>,
12
- containerStyles?: StyleProp<ViewStyle>
13
- ): React.ComponentType<P> {
14
- function Wrapper(props: P) {
15
- return (
16
- <GestureHandlerRootView style={[styles.container, containerStyles]}>
17
- <Component {...props} />
18
- </GestureHandlerRootView>
19
- );
20
- }
21
-
22
- Wrapper.displayName = `gestureHandlerRootHOC(${Component.displayName || Component.name
23
- })`;
24
-
25
- // @ts-ignore - hoistNonReactStatics uses old version of @types/react
26
- hoistNonReactStatics(Wrapper, Component);
27
-
28
- return Wrapper;
29
- }
30
-
31
- const styles = StyleSheet.create({
32
- container: { flex: 1 },
33
- });
@@ -1,7 +0,0 @@
1
- export type ExtraButtonProps = {
2
- borderless?: boolean;
3
- rippleColor?: number | string | null;
4
- rippleRadius?: number | null;
5
- foreground?: boolean;
6
- exclusive?: boolean;
7
- };