@amazon-devices/react-native-gesture-handler 4.0.0 → 4.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (516) hide show
  1. package/SystemModules/amzn__react-native-gesture-handler-4.modules.txt +3 -0
  2. package/SystemModules/amzn__react-native-gesture-handler-4.private.modules.txt +81 -35
  3. package/kepler-compatibility.json +3 -1
  4. package/lib/commonjs/RNGestureHandlerModule.kepler.js.map +1 -1
  5. package/lib/commonjs/index.js +0 -268
  6. package/lib/module/RNGestureHandlerModule.kepler.js.map +1 -1
  7. package/lib/typescript/RNGestureHandlerModule.kepler.d.ts.map +1 -1
  8. package/oss-attribution/attribution.txt +0 -0
  9. package/oss-attribution/licenseInfos.json +1 -0
  10. package/package.json +1 -1
  11. package/src/index.ts +0 -168
  12. package/README.md +0 -70
  13. package/SystemBundles/6340ec90c9b9f38941444b2ca176a58b9d8116a6cd975690f53747ed00595c90.bundle +0 -14669
  14. package/SystemBundles/6340ec90c9b9f38941444b2ca176a58b9d8116a6cd975690f53747ed00595c90.map +0 -5041
  15. package/lib/commonjs/ActionType.js +0 -15
  16. package/lib/commonjs/Directions.js +0 -31
  17. package/lib/commonjs/EnableNewWebImplementation.js +0 -40
  18. package/lib/commonjs/GestureHandlerRootViewContext.js +0 -10
  19. package/lib/commonjs/PlatformConstants.js +0 -9
  20. package/lib/commonjs/PlatformConstants.kepler.js +0 -12
  21. package/lib/commonjs/PlatformConstants.web.js +0 -12
  22. package/lib/commonjs/PointerType.js +0 -15
  23. package/lib/commonjs/RNGestureHandlerModule.js +0 -12
  24. package/lib/commonjs/RNGestureHandlerModule.kepler.js +0 -32
  25. package/lib/commonjs/RNGestureHandlerModule.web.js +0 -95
  26. package/lib/commonjs/RNGestureHandlerModule.windows.js +0 -56
  27. package/lib/commonjs/RNRenderer.js +0 -14
  28. package/lib/commonjs/RNRenderer.web.js +0 -10
  29. package/lib/commonjs/State.js +0 -19
  30. package/lib/commonjs/TouchEventType.js +0 -16
  31. package/lib/commonjs/components/DrawerLayout.js +0 -548
  32. package/lib/commonjs/components/GestureButtons.js +0 -212
  33. package/lib/commonjs/components/GestureButtonsProps.js +0 -6
  34. package/lib/commonjs/components/GestureComponents.js +0 -106
  35. package/lib/commonjs/components/GestureComponents.web.js +0 -39
  36. package/lib/commonjs/components/GestureHandlerButton.js +0 -10
  37. package/lib/commonjs/components/GestureHandlerButton.web.js +0 -16
  38. package/lib/commonjs/components/GestureHandlerRootView.android.js +0 -36
  39. package/lib/commonjs/components/GestureHandlerRootView.js +0 -35
  40. package/lib/commonjs/components/GestureHandlerRootView.kepler.js +0 -21
  41. package/lib/commonjs/components/GestureHandlerRootView.web.js +0 -30
  42. package/lib/commonjs/components/Pressable/Pressable.js +0 -274
  43. package/lib/commonjs/components/Pressable/PressableProps.js +0 -6
  44. package/lib/commonjs/components/Pressable/StateMachine.js +0 -44
  45. package/lib/commonjs/components/Pressable/index.js +0 -14
  46. package/lib/commonjs/components/Pressable/stateDefinitions.js +0 -88
  47. package/lib/commonjs/components/Pressable/utils.js +0 -92
  48. package/lib/commonjs/components/ReanimatedDrawerLayout.js +0 -357
  49. package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeable.js +0 -337
  50. package/lib/commonjs/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js +0 -12
  51. package/lib/commonjs/components/ReanimatedSwipeable/index.js +0 -21
  52. package/lib/commonjs/components/Swipeable.js +0 -370
  53. package/lib/commonjs/components/Text.js +0 -60
  54. package/lib/commonjs/components/gestureHandlerRootHOC.js +0 -37
  55. package/lib/commonjs/components/touchables/ExtraButtonProps.js +0 -2
  56. package/lib/commonjs/components/touchables/GenericTouchable.js +0 -245
  57. package/lib/commonjs/components/touchables/GenericTouchableProps.js +0 -6
  58. package/lib/commonjs/components/touchables/TouchableHighlight.js +0 -93
  59. package/lib/commonjs/components/touchables/TouchableNativeFeedback.android.js +0 -84
  60. package/lib/commonjs/components/touchables/TouchableNativeFeedback.js +0 -13
  61. package/lib/commonjs/components/touchables/TouchableNativeFeedbackProps.js +0 -6
  62. package/lib/commonjs/components/touchables/TouchableOpacity.js +0 -65
  63. package/lib/commonjs/components/touchables/TouchableWithoutFeedback.js +0 -33
  64. package/lib/commonjs/components/touchables/index.js +0 -35
  65. package/lib/commonjs/components/utils.js +0 -17
  66. package/lib/commonjs/findNodeHandle.js +0 -9
  67. package/lib/commonjs/findNodeHandle.web.js +0 -39
  68. package/lib/commonjs/getShadowNodeFromRef.js +0 -51
  69. package/lib/commonjs/getShadowNodeFromRef.web.js +0 -14
  70. package/lib/commonjs/ghQueueMicrotask.js +0 -10
  71. package/lib/commonjs/handlers/FlingGestureHandler.js +0 -31
  72. package/lib/commonjs/handlers/ForceTouchGestureHandler.js +0 -46
  73. package/lib/commonjs/handlers/GestureHandlerEventPayload.js +0 -6
  74. package/lib/commonjs/handlers/LongPressGestureHandler.js +0 -33
  75. package/lib/commonjs/handlers/NativeViewGestureHandler.js +0 -32
  76. package/lib/commonjs/handlers/PanGestureHandler.js +0 -112
  77. package/lib/commonjs/handlers/PinchGestureHandler.js +0 -29
  78. package/lib/commonjs/handlers/PressabilityDebugView.js +0 -13
  79. package/lib/commonjs/handlers/PressabilityDebugView.web.js +0 -11
  80. package/lib/commonjs/handlers/RotationGestureHandler.js +0 -29
  81. package/lib/commonjs/handlers/TapGestureHandler.js +0 -33
  82. package/lib/commonjs/handlers/createHandler.js +0 -405
  83. package/lib/commonjs/handlers/createNativeWrapper.js +0 -77
  84. package/lib/commonjs/handlers/customDirectEventTypes.js +0 -13
  85. package/lib/commonjs/handlers/customDirectEventTypes.web.js +0 -10
  86. package/lib/commonjs/handlers/gestureHandlerCommon.js +0 -27
  87. package/lib/commonjs/handlers/gestureHandlerTypesCompat.js +0 -6
  88. package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.js +0 -32
  89. package/lib/commonjs/handlers/gestures/GestureDetector/Wrap.web.js +0 -41
  90. package/lib/commonjs/handlers/gestures/GestureDetector/attachHandlers.js +0 -67
  91. package/lib/commonjs/handlers/gestures/GestureDetector/dropHandlers.js +0 -20
  92. package/lib/commonjs/handlers/gestures/GestureDetector/index.js +0 -125
  93. package/lib/commonjs/handlers/gestures/GestureDetector/needsToReattach.js +0 -22
  94. package/lib/commonjs/handlers/gestures/GestureDetector/types.js +0 -6
  95. package/lib/commonjs/handlers/gestures/GestureDetector/updateHandlers.js +0 -66
  96. package/lib/commonjs/handlers/gestures/GestureDetector/useAnimatedGesture.js +0 -143
  97. package/lib/commonjs/handlers/gestures/GestureDetector/useDetectorUpdater.js +0 -47
  98. package/lib/commonjs/handlers/gestures/GestureDetector/useMountReactions.js +0 -41
  99. package/lib/commonjs/handlers/gestures/GestureDetector/useViewRefHandler.js +0 -45
  100. package/lib/commonjs/handlers/gestures/GestureDetector/utils.js +0 -143
  101. package/lib/commonjs/handlers/gestures/eventReceiver.js +0 -117
  102. package/lib/commonjs/handlers/gestures/flingGesture.js +0 -37
  103. package/lib/commonjs/handlers/gestures/forceTouchGesture.js +0 -80
  104. package/lib/commonjs/handlers/gestures/gesture.js +0 -338
  105. package/lib/commonjs/handlers/gestures/gestureComposition.js +0 -90
  106. package/lib/commonjs/handlers/gestures/gestureObjects.js +0 -132
  107. package/lib/commonjs/handlers/gestures/gestureStateManager.js +0 -70
  108. package/lib/commonjs/handlers/gestures/gestureStateManager.web.js +0 -28
  109. package/lib/commonjs/handlers/gestures/hoverGesture.js +0 -57
  110. package/lib/commonjs/handlers/gestures/longPressGesture.js +0 -46
  111. package/lib/commonjs/handlers/gestures/manualGesture.js +0 -25
  112. package/lib/commonjs/handlers/gestures/nativeGesture.js +0 -34
  113. package/lib/commonjs/handlers/gestures/panGesture.js +0 -197
  114. package/lib/commonjs/handlers/gestures/pinchGesture.js +0 -38
  115. package/lib/commonjs/handlers/gestures/reanimatedWrapper.js +0 -29
  116. package/lib/commonjs/handlers/gestures/rotationGesture.js +0 -38
  117. package/lib/commonjs/handlers/gestures/tapGesture.js +0 -87
  118. package/lib/commonjs/handlers/getNextHandlerTag.js +0 -11
  119. package/lib/commonjs/handlers/handlersRegistry.js +0 -50
  120. package/lib/commonjs/handlers/utils.js +0 -69
  121. package/lib/commonjs/init.js +0 -25
  122. package/lib/commonjs/jestUtils/index.js +0 -19
  123. package/lib/commonjs/jestUtils/jestUtils.js +0 -316
  124. package/lib/commonjs/mocks/Pressable.js +0 -13
  125. package/lib/commonjs/mocks/mocks.js +0 -70
  126. package/lib/commonjs/mocks.js +0 -61
  127. package/lib/commonjs/mountRegistry.js +0 -37
  128. package/lib/commonjs/specs/NativeRNGestureHandlerModule.js +0 -9
  129. package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.kepler.js +0 -20
  130. package/lib/commonjs/specs/RNGestureHandlerButtonNativeComponent.ts +0 -24
  131. package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.kepler.js +0 -17
  132. package/lib/commonjs/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -7
  133. package/lib/commonjs/typeUtils.js +0 -2
  134. package/lib/commonjs/utils.js +0 -95
  135. package/lib/commonjs/web/Gestures.js +0 -48
  136. package/lib/commonjs/web/constants.js +0 -9
  137. package/lib/commonjs/web/detectors/RotationGestureDetector.js +0 -124
  138. package/lib/commonjs/web/detectors/ScaleGestureDetector.js +0 -111
  139. package/lib/commonjs/web/handlers/FlingGestureHandler.js +0 -143
  140. package/lib/commonjs/web/handlers/GestureHandler.js +0 -689
  141. package/lib/commonjs/web/handlers/HoverGestureHandler.js +0 -45
  142. package/lib/commonjs/web/handlers/IGestureHandler.js +0 -2
  143. package/lib/commonjs/web/handlers/LongPressGestureHandler.js +0 -146
  144. package/lib/commonjs/web/handlers/ManualGestureHandler.js +0 -38
  145. package/lib/commonjs/web/handlers/NativeViewGestureHandler.js +0 -141
  146. package/lib/commonjs/web/handlers/PanGestureHandler.js +0 -399
  147. package/lib/commonjs/web/handlers/PinchGestureHandler.js +0 -122
  148. package/lib/commonjs/web/handlers/RotationGestureHandler.js +0 -129
  149. package/lib/commonjs/web/handlers/TapGestureHandler.js +0 -215
  150. package/lib/commonjs/web/interfaces.js +0 -32
  151. package/lib/commonjs/web/tools/CircularBuffer.js +0 -40
  152. package/lib/commonjs/web/tools/EventManager.js +0 -94
  153. package/lib/commonjs/web/tools/GestureHandlerDelegate.js +0 -6
  154. package/lib/commonjs/web/tools/GestureHandlerOrchestrator.js +0 -267
  155. package/lib/commonjs/web/tools/GestureHandlerWebDelegate.js +0 -165
  156. package/lib/commonjs/web/tools/InteractionManager.js +0 -96
  157. package/lib/commonjs/web/tools/KeyboardEventManager.js +0 -108
  158. package/lib/commonjs/web/tools/LeastSquareSolver.js +0 -159
  159. package/lib/commonjs/web/tools/NodeManager.js +0 -39
  160. package/lib/commonjs/web/tools/PointerEventManager.js +0 -189
  161. package/lib/commonjs/web/tools/PointerTracker.js +0 -192
  162. package/lib/commonjs/web/tools/Vector.js +0 -37
  163. package/lib/commonjs/web/tools/VelocityTracker.js +0 -85
  164. package/lib/commonjs/web/tools/WheelEventManager.js +0 -55
  165. package/lib/commonjs/web/utils.js +0 -235
  166. package/lib/commonjs/web_hammer/DiscreteGestureHandler.js +0 -93
  167. package/lib/commonjs/web_hammer/DraggingGestureHandler.js +0 -43
  168. package/lib/commonjs/web_hammer/Errors.js +0 -13
  169. package/lib/commonjs/web_hammer/FlingGestureHandler.js +0 -139
  170. package/lib/commonjs/web_hammer/GestureHandler.js +0 -484
  171. package/lib/commonjs/web_hammer/IndiscreteGestureHandler.js +0 -45
  172. package/lib/commonjs/web_hammer/LongPressGestureHandler.js +0 -57
  173. package/lib/commonjs/web_hammer/NativeViewGestureHandler.js +0 -57
  174. package/lib/commonjs/web_hammer/NodeManager.js +0 -41
  175. package/lib/commonjs/web_hammer/PanGestureHandler.js +0 -167
  176. package/lib/commonjs/web_hammer/PinchGestureHandler.js +0 -31
  177. package/lib/commonjs/web_hammer/PressGestureHandler.js +0 -153
  178. package/lib/commonjs/web_hammer/RotationGestureHandler.js +0 -32
  179. package/lib/commonjs/web_hammer/TapGestureHandler.js +0 -165
  180. package/lib/commonjs/web_hammer/constants.js +0 -51
  181. package/lib/commonjs/web_hammer/utils.js +0 -32
  182. package/lib/module/ActionType.js +0 -11
  183. package/lib/module/Directions.js +0 -27
  184. package/lib/module/EnableNewWebImplementation.js +0 -34
  185. package/lib/module/GestureHandlerRootViewContext.js +0 -5
  186. package/lib/module/PlatformConstants.js +0 -5
  187. package/lib/module/PlatformConstants.kepler.js +0 -8
  188. package/lib/module/PlatformConstants.web.js +0 -8
  189. package/lib/module/PointerType.js +0 -11
  190. package/lib/module/RNGestureHandlerModule.js +0 -8
  191. package/lib/module/RNGestureHandlerModule.kepler.js +0 -26
  192. package/lib/module/RNGestureHandlerModule.web.js +0 -90
  193. package/lib/module/RNGestureHandlerModule.windows.js +0 -50
  194. package/lib/module/RNRenderer.js +0 -6
  195. package/lib/module/RNRenderer.web.js +0 -6
  196. package/lib/module/State.js +0 -15
  197. package/lib/module/TouchEventType.js +0 -12
  198. package/lib/module/components/DrawerLayout.js +0 -541
  199. package/lib/module/components/GestureButtons.js +0 -200
  200. package/lib/module/components/GestureButtonsProps.js +0 -4
  201. package/lib/module/components/GestureComponents.js +0 -100
  202. package/lib/module/components/GestureComponents.web.js +0 -32
  203. package/lib/module/components/GestureHandlerButton.js +0 -5
  204. package/lib/module/components/GestureHandlerButton.web.js +0 -11
  205. package/lib/module/components/GestureHandlerRootView.android.js +0 -30
  206. package/lib/module/components/GestureHandlerRootView.js +0 -29
  207. package/lib/module/components/GestureHandlerRootView.kepler.js +0 -15
  208. package/lib/module/components/GestureHandlerRootView.web.js +0 -24
  209. package/lib/module/components/Pressable/Pressable.js +0 -268
  210. package/lib/module/components/Pressable/PressableProps.js +0 -4
  211. package/lib/module/components/Pressable/StateMachine.js +0 -40
  212. package/lib/module/components/Pressable/index.js +0 -4
  213. package/lib/module/components/Pressable/stateDefinitions.js +0 -83
  214. package/lib/module/components/Pressable/utils.js +0 -84
  215. package/lib/module/components/ReanimatedDrawerLayout.js +0 -352
  216. package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeable.js +0 -332
  217. package/lib/module/components/ReanimatedSwipeable/ReanimatedSwipeableProps.js +0 -8
  218. package/lib/module/components/ReanimatedSwipeable/index.js +0 -5
  219. package/lib/module/components/Swipeable.js +0 -364
  220. package/lib/module/components/Text.js +0 -55
  221. package/lib/module/components/gestureHandlerRootHOC.js +0 -33
  222. package/lib/module/components/touchables/ExtraButtonProps.js +0 -2
  223. package/lib/module/components/touchables/GenericTouchable.js +0 -239
  224. package/lib/module/components/touchables/GenericTouchableProps.js +0 -4
  225. package/lib/module/components/touchables/TouchableHighlight.js +0 -87
  226. package/lib/module/components/touchables/TouchableNativeFeedback.android.js +0 -77
  227. package/lib/module/components/touchables/TouchableNativeFeedback.js +0 -10
  228. package/lib/module/components/touchables/TouchableNativeFeedbackProps.js +0 -4
  229. package/lib/module/components/touchables/TouchableOpacity.js +0 -59
  230. package/lib/module/components/touchables/TouchableWithoutFeedback.js +0 -27
  231. package/lib/module/components/touchables/index.js +0 -7
  232. package/lib/module/components/utils.js +0 -13
  233. package/lib/module/findNodeHandle.js +0 -5
  234. package/lib/module/findNodeHandle.web.js +0 -35
  235. package/lib/module/getShadowNodeFromRef.js +0 -47
  236. package/lib/module/getShadowNodeFromRef.web.js +0 -10
  237. package/lib/module/ghQueueMicrotask.js +0 -6
  238. package/lib/module/handlers/FlingGestureHandler.js +0 -26
  239. package/lib/module/handlers/ForceTouchGestureHandler.js +0 -41
  240. package/lib/module/handlers/GestureHandlerEventPayload.js +0 -4
  241. package/lib/module/handlers/LongPressGestureHandler.js +0 -28
  242. package/lib/module/handlers/NativeViewGestureHandler.js +0 -27
  243. package/lib/module/handlers/PanGestureHandler.js +0 -105
  244. package/lib/module/handlers/PinchGestureHandler.js +0 -25
  245. package/lib/module/handlers/PressabilityDebugView.js +0 -5
  246. package/lib/module/handlers/PressabilityDebugView.web.js +0 -7
  247. package/lib/module/handlers/RotationGestureHandler.js +0 -25
  248. package/lib/module/handlers/TapGestureHandler.js +0 -28
  249. package/lib/module/handlers/createHandler.js +0 -399
  250. package/lib/module/handlers/createNativeWrapper.js +0 -74
  251. package/lib/module/handlers/customDirectEventTypes.js +0 -5
  252. package/lib/module/handlers/customDirectEventTypes.web.js +0 -7
  253. package/lib/module/handlers/gestureHandlerCommon.js +0 -26
  254. package/lib/module/handlers/gestureHandlerTypesCompat.js +0 -4
  255. package/lib/module/handlers/gestures/GestureDetector/Wrap.js +0 -26
  256. package/lib/module/handlers/gestures/GestureDetector/Wrap.web.js +0 -36
  257. package/lib/module/handlers/gestures/GestureDetector/attachHandlers.js +0 -62
  258. package/lib/module/handlers/gestures/GestureDetector/dropHandlers.js +0 -15
  259. package/lib/module/handlers/gestures/GestureDetector/index.js +0 -117
  260. package/lib/module/handlers/gestures/GestureDetector/needsToReattach.js +0 -18
  261. package/lib/module/handlers/gestures/GestureDetector/types.js +0 -4
  262. package/lib/module/handlers/gestures/GestureDetector/updateHandlers.js +0 -61
  263. package/lib/module/handlers/gestures/GestureDetector/useAnimatedGesture.js +0 -139
  264. package/lib/module/handlers/gestures/GestureDetector/useDetectorUpdater.js +0 -43
  265. package/lib/module/handlers/gestures/GestureDetector/useMountReactions.js +0 -37
  266. package/lib/module/handlers/gestures/GestureDetector/useViewRefHandler.js +0 -40
  267. package/lib/module/handlers/gestures/GestureDetector/utils.js +0 -134
  268. package/lib/module/handlers/gestures/eventReceiver.js +0 -110
  269. package/lib/module/handlers/gestures/flingGesture.js +0 -32
  270. package/lib/module/handlers/gestures/forceTouchGesture.js +0 -76
  271. package/lib/module/handlers/gestures/gesture.js +0 -332
  272. package/lib/module/handlers/gestures/gestureComposition.js +0 -83
  273. package/lib/module/handlers/gestures/gestureObjects.js +0 -129
  274. package/lib/module/handlers/gestures/gestureStateManager.js +0 -66
  275. package/lib/module/handlers/gestures/gestureStateManager.web.js +0 -23
  276. package/lib/module/handlers/gestures/hoverGesture.js +0 -52
  277. package/lib/module/handlers/gestures/longPressGesture.js +0 -41
  278. package/lib/module/handlers/gestures/manualGesture.js +0 -20
  279. package/lib/module/handlers/gestures/nativeGesture.js +0 -29
  280. package/lib/module/handlers/gestures/panGesture.js +0 -192
  281. package/lib/module/handlers/gestures/pinchGesture.js +0 -33
  282. package/lib/module/handlers/gestures/reanimatedWrapper.js +0 -26
  283. package/lib/module/handlers/gestures/rotationGesture.js +0 -33
  284. package/lib/module/handlers/gestures/tapGesture.js +0 -82
  285. package/lib/module/handlers/getNextHandlerTag.js +0 -7
  286. package/lib/module/handlers/handlersRegistry.js +0 -39
  287. package/lib/module/handlers/utils.js +0 -61
  288. package/lib/module/index.js +0 -31
  289. package/lib/module/init.js +0 -19
  290. package/lib/module/jestUtils/index.js +0 -4
  291. package/lib/module/jestUtils/jestUtils.js +0 -311
  292. package/lib/module/mocks/Pressable.js +0 -4
  293. package/lib/module/mocks/mocks.js +0 -64
  294. package/lib/module/mocks.js +0 -57
  295. package/lib/module/mountRegistry.js +0 -32
  296. package/lib/module/specs/NativeRNGestureHandlerModule.js +0 -5
  297. package/lib/module/specs/RNGestureHandlerButtonNativeComponent.kepler.js +0 -14
  298. package/lib/module/specs/RNGestureHandlerButtonNativeComponent.ts +0 -24
  299. package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.kepler.js +0 -11
  300. package/lib/module/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -7
  301. package/lib/module/typeUtils.js +0 -2
  302. package/lib/module/utils.js +0 -81
  303. package/lib/module/web/Gestures.js +0 -42
  304. package/lib/module/web/constants.js +0 -5
  305. package/lib/module/web/detectors/RotationGestureDetector.js +0 -119
  306. package/lib/module/web/detectors/ScaleGestureDetector.js +0 -106
  307. package/lib/module/web/handlers/FlingGestureHandler.js +0 -137
  308. package/lib/module/web/handlers/GestureHandler.js +0 -682
  309. package/lib/module/web/handlers/HoverGestureHandler.js +0 -39
  310. package/lib/module/web/handlers/IGestureHandler.js +0 -2
  311. package/lib/module/web/handlers/LongPressGestureHandler.js +0 -140
  312. package/lib/module/web/handlers/ManualGestureHandler.js +0 -32
  313. package/lib/module/web/handlers/NativeViewGestureHandler.js +0 -135
  314. package/lib/module/web/handlers/PanGestureHandler.js +0 -393
  315. package/lib/module/web/handlers/PinchGestureHandler.js +0 -116
  316. package/lib/module/web/handlers/RotationGestureHandler.js +0 -123
  317. package/lib/module/web/handlers/TapGestureHandler.js +0 -209
  318. package/lib/module/web/interfaces.js +0 -28
  319. package/lib/module/web/tools/CircularBuffer.js +0 -35
  320. package/lib/module/web/tools/EventManager.js +0 -89
  321. package/lib/module/web/tools/GestureHandlerDelegate.js +0 -4
  322. package/lib/module/web/tools/GestureHandlerOrchestrator.js +0 -261
  323. package/lib/module/web/tools/GestureHandlerWebDelegate.js +0 -159
  324. package/lib/module/web/tools/InteractionManager.js +0 -91
  325. package/lib/module/web/tools/KeyboardEventManager.js +0 -102
  326. package/lib/module/web/tools/LeastSquareSolver.js +0 -154
  327. package/lib/module/web/tools/NodeManager.js +0 -34
  328. package/lib/module/web/tools/PointerEventManager.js +0 -183
  329. package/lib/module/web/tools/PointerTracker.js +0 -186
  330. package/lib/module/web/tools/Vector.js +0 -32
  331. package/lib/module/web/tools/VelocityTracker.js +0 -79
  332. package/lib/module/web/tools/WheelEventManager.js +0 -49
  333. package/lib/module/web/utils.js +0 -223
  334. package/lib/module/web_hammer/DiscreteGestureHandler.js +0 -87
  335. package/lib/module/web_hammer/DraggingGestureHandler.js +0 -37
  336. package/lib/module/web_hammer/Errors.js +0 -8
  337. package/lib/module/web_hammer/FlingGestureHandler.js +0 -133
  338. package/lib/module/web_hammer/GestureHandler.js +0 -478
  339. package/lib/module/web_hammer/IndiscreteGestureHandler.js +0 -41
  340. package/lib/module/web_hammer/LongPressGestureHandler.js +0 -51
  341. package/lib/module/web_hammer/NativeViewGestureHandler.js +0 -51
  342. package/lib/module/web_hammer/NodeManager.js +0 -33
  343. package/lib/module/web_hammer/PanGestureHandler.js +0 -162
  344. package/lib/module/web_hammer/PinchGestureHandler.js +0 -26
  345. package/lib/module/web_hammer/PressGestureHandler.js +0 -148
  346. package/lib/module/web_hammer/RotationGestureHandler.js +0 -27
  347. package/lib/module/web_hammer/TapGestureHandler.js +0 -160
  348. package/lib/module/web_hammer/constants.js +0 -46
  349. package/lib/module/web_hammer/utils.js +0 -21
  350. package/src/ActionType.ts +0 -9
  351. package/src/Directions.ts +0 -26
  352. package/src/EnableNewWebImplementation.ts +0 -53
  353. package/src/GestureHandlerRootViewContext.ts +0 -3
  354. package/src/PlatformConstants.kepler.ts +0 -5
  355. package/src/PlatformConstants.ts +0 -8
  356. package/src/PlatformConstants.web.ts +0 -5
  357. package/src/PointerType.ts +0 -7
  358. package/src/RNGestureHandlerModule.kepler.ts +0 -64
  359. package/src/RNGestureHandlerModule.ts +0 -5
  360. package/src/RNGestureHandlerModule.web.ts +0 -124
  361. package/src/RNGestureHandlerModule.windows.ts +0 -62
  362. package/src/RNRenderer.ts +0 -3
  363. package/src/RNRenderer.web.ts +0 -3
  364. package/src/State.ts +0 -13
  365. package/src/TouchEventType.ts +0 -11
  366. package/src/components/DrawerLayout.tsx +0 -788
  367. package/src/components/GestureButtons.tsx +0 -272
  368. package/src/components/GestureButtonsProps.ts +0 -156
  369. package/src/components/GestureComponents.tsx +0 -148
  370. package/src/components/GestureComponents.web.tsx +0 -41
  371. package/src/components/GestureHandlerButton.tsx +0 -5
  372. package/src/components/GestureHandlerButton.web.tsx +0 -6
  373. package/src/components/GestureHandlerRootView.android.tsx +0 -32
  374. package/src/components/GestureHandlerRootView.kepler.tsx +0 -18
  375. package/src/components/GestureHandlerRootView.tsx +0 -28
  376. package/src/components/GestureHandlerRootView.web.tsx +0 -22
  377. package/src/components/Pressable/Pressable.tsx +0 -401
  378. package/src/components/Pressable/PressableProps.tsx +0 -174
  379. package/src/components/Pressable/StateMachine.tsx +0 -57
  380. package/src/components/Pressable/index.ts +0 -5
  381. package/src/components/Pressable/stateDefinitions.ts +0 -126
  382. package/src/components/Pressable/utils.ts +0 -140
  383. package/src/components/ReanimatedDrawerLayout.tsx +0 -754
  384. package/src/components/ReanimatedSwipeable/ReanimatedSwipeable.tsx +0 -607
  385. package/src/components/ReanimatedSwipeable/ReanimatedSwipeableProps.ts +0 -199
  386. package/src/components/ReanimatedSwipeable/index.ts +0 -6
  387. package/src/components/Swipeable.tsx +0 -595
  388. package/src/components/Text.tsx +0 -77
  389. package/src/components/gestureHandlerRootHOC.tsx +0 -33
  390. package/src/components/touchables/ExtraButtonProps.ts +0 -7
  391. package/src/components/touchables/GenericTouchable.tsx +0 -275
  392. package/src/components/touchables/GenericTouchableProps.ts +0 -28
  393. package/src/components/touchables/TouchableHighlight.tsx +0 -118
  394. package/src/components/touchables/TouchableNativeFeedback.android.tsx +0 -83
  395. package/src/components/touchables/TouchableNativeFeedback.tsx +0 -8
  396. package/src/components/touchables/TouchableNativeFeedbackProps.tsx +0 -10
  397. package/src/components/touchables/TouchableOpacity.tsx +0 -78
  398. package/src/components/touchables/TouchableWithoutFeedback.tsx +0 -39
  399. package/src/components/touchables/index.ts +0 -7
  400. package/src/components/utils.ts +0 -26
  401. package/src/findNodeHandle.ts +0 -3
  402. package/src/findNodeHandle.web.ts +0 -41
  403. package/src/getShadowNodeFromRef.ts +0 -50
  404. package/src/getShadowNodeFromRef.web.ts +0 -7
  405. package/src/ghQueueMicrotask.ts +0 -8
  406. package/src/handlers/FlingGestureHandler.ts +0 -64
  407. package/src/handlers/ForceTouchGestureHandler.ts +0 -88
  408. package/src/handlers/GestureHandlerEventPayload.ts +0 -229
  409. package/src/handlers/LongPressGestureHandler.ts +0 -65
  410. package/src/handlers/NativeViewGestureHandler.ts +0 -59
  411. package/src/handlers/PanGestureHandler.ts +0 -282
  412. package/src/handlers/PinchGestureHandler.ts +0 -32
  413. package/src/handlers/PressabilityDebugView.tsx +0 -2
  414. package/src/handlers/PressabilityDebugView.web.tsx +0 -4
  415. package/src/handlers/RotationGestureHandler.ts +0 -32
  416. package/src/handlers/TapGestureHandler.ts +0 -99
  417. package/src/handlers/createHandler.tsx +0 -586
  418. package/src/handlers/createNativeWrapper.tsx +0 -89
  419. package/src/handlers/customDirectEventTypes.ts +0 -2
  420. package/src/handlers/customDirectEventTypes.web.ts +0 -5
  421. package/src/handlers/gestureHandlerCommon.ts +0 -211
  422. package/src/handlers/gestureHandlerTypesCompat.ts +0 -101
  423. package/src/handlers/gestures/GestureDetector/Wrap.tsx +0 -35
  424. package/src/handlers/gestures/GestureDetector/Wrap.web.tsx +0 -42
  425. package/src/handlers/gestures/GestureDetector/attachHandlers.ts +0 -112
  426. package/src/handlers/gestures/GestureDetector/dropHandlers.ts +0 -17
  427. package/src/handlers/gestures/GestureDetector/index.tsx +0 -191
  428. package/src/handlers/gestures/GestureDetector/needsToReattach.ts +0 -27
  429. package/src/handlers/gestures/GestureDetector/types.ts +0 -32
  430. package/src/handlers/gestures/GestureDetector/updateHandlers.ts +0 -92
  431. package/src/handlers/gestures/GestureDetector/useAnimatedGesture.ts +0 -209
  432. package/src/handlers/gestures/GestureDetector/useDetectorUpdater.ts +0 -69
  433. package/src/handlers/gestures/GestureDetector/useMountReactions.ts +0 -51
  434. package/src/handlers/gestures/GestureDetector/useViewRefHandler.ts +0 -58
  435. package/src/handlers/gestures/GestureDetector/utils.ts +0 -181
  436. package/src/handlers/gestures/eventReceiver.ts +0 -173
  437. package/src/handlers/gestures/flingGesture.ts +0 -36
  438. package/src/handlers/gestures/forceTouchGesture.ts +0 -95
  439. package/src/handlers/gestures/gesture.ts +0 -472
  440. package/src/handlers/gestures/gestureComposition.ts +0 -124
  441. package/src/handlers/gestures/gestureObjects.ts +0 -143
  442. package/src/handlers/gestures/gestureStateManager.ts +0 -76
  443. package/src/handlers/gestures/gestureStateManager.web.ts +0 -26
  444. package/src/handlers/gestures/hoverGesture.ts +0 -77
  445. package/src/handlers/gestures/longPressGesture.ts +0 -45
  446. package/src/handlers/gestures/manualGesture.ts +0 -31
  447. package/src/handlers/gestures/nativeGesture.ts +0 -33
  448. package/src/handlers/gestures/panGesture.ts +0 -221
  449. package/src/handlers/gestures/pinchGesture.ts +0 -51
  450. package/src/handlers/gestures/reanimatedWrapper.ts +0 -57
  451. package/src/handlers/gestures/rotationGesture.ts +0 -51
  452. package/src/handlers/gestures/tapGesture.ts +0 -86
  453. package/src/handlers/getNextHandlerTag.ts +0 -5
  454. package/src/handlers/handlersRegistry.ts +0 -58
  455. package/src/handlers/utils.ts +0 -76
  456. package/src/init.ts +0 -18
  457. package/src/jestUtils/index.ts +0 -1
  458. package/src/jestUtils/jestUtils.ts +0 -513
  459. package/src/mocks/Pressable.tsx +0 -1
  460. package/src/mocks/mocks.tsx +0 -70
  461. package/src/mocks.ts +0 -67
  462. package/src/mountRegistry.ts +0 -51
  463. package/src/specs/NativeRNGestureHandlerModule.ts +0 -26
  464. package/src/specs/RNGestureHandlerButtonNativeComponent.kepler.ts +0 -27
  465. package/src/specs/RNGestureHandlerButtonNativeComponent.ts +0 -24
  466. package/src/specs/RNGestureHandlerRootViewNativeComponent.kepler.ts +0 -21
  467. package/src/specs/RNGestureHandlerRootViewNativeComponent.ts +0 -7
  468. package/src/typeUtils.ts +0 -1
  469. package/src/utils.ts +0 -107
  470. package/src/web/Gestures.ts +0 -41
  471. package/src/web/constants.ts +0 -2
  472. package/src/web/detectors/RotationGestureDetector.ts +0 -170
  473. package/src/web/detectors/ScaleGestureDetector.ts +0 -171
  474. package/src/web/handlers/FlingGestureHandler.ts +0 -196
  475. package/src/web/handlers/GestureHandler.ts +0 -881
  476. package/src/web/handlers/HoverGestureHandler.ts +0 -49
  477. package/src/web/handlers/IGestureHandler.ts +0 -49
  478. package/src/web/handlers/LongPressGestureHandler.ts +0 -175
  479. package/src/web/handlers/ManualGestureHandler.ts +0 -37
  480. package/src/web/handlers/NativeViewGestureHandler.ts +0 -175
  481. package/src/web/handlers/PanGestureHandler.ts +0 -571
  482. package/src/web/handlers/PinchGestureHandler.ts +0 -152
  483. package/src/web/handlers/RotationGestureHandler.ts +0 -166
  484. package/src/web/handlers/TapGestureHandler.ts +0 -274
  485. package/src/web/interfaces.ts +0 -190
  486. package/src/web/tools/CircularBuffer.ts +0 -42
  487. package/src/web/tools/EventManager.ts +0 -108
  488. package/src/web/tools/GestureHandlerDelegate.ts +0 -26
  489. package/src/web/tools/GestureHandlerOrchestrator.ts +0 -392
  490. package/src/web/tools/GestureHandlerWebDelegate.ts +0 -227
  491. package/src/web/tools/InteractionManager.ts +0 -135
  492. package/src/web/tools/KeyboardEventManager.ts +0 -133
  493. package/src/web/tools/LeastSquareSolver.ts +0 -182
  494. package/src/web/tools/NodeManager.ts +0 -48
  495. package/src/web/tools/PointerEventManager.ts +0 -226
  496. package/src/web/tools/PointerTracker.ts +0 -228
  497. package/src/web/tools/Vector.ts +0 -59
  498. package/src/web/tools/VelocityTracker.ts +0 -98
  499. package/src/web/tools/WheelEventManager.ts +0 -48
  500. package/src/web/utils.ts +0 -293
  501. package/src/web_hammer/DiscreteGestureHandler.ts +0 -82
  502. package/src/web_hammer/DraggingGestureHandler.ts +0 -34
  503. package/src/web_hammer/Errors.ts +0 -7
  504. package/src/web_hammer/FlingGestureHandler.ts +0 -134
  505. package/src/web_hammer/GestureHandler.ts +0 -600
  506. package/src/web_hammer/IndiscreteGestureHandler.ts +0 -33
  507. package/src/web_hammer/LongPressGestureHandler.ts +0 -56
  508. package/src/web_hammer/NativeViewGestureHandler.ts +0 -47
  509. package/src/web_hammer/NodeManager.ts +0 -33
  510. package/src/web_hammer/PanGestureHandler.ts +0 -226
  511. package/src/web_hammer/PinchGestureHandler.ts +0 -25
  512. package/src/web_hammer/PressGestureHandler.ts +0 -170
  513. package/src/web_hammer/RotationGestureHandler.ts +0 -25
  514. package/src/web_hammer/TapGestureHandler.ts +0 -172
  515. package/src/web_hammer/constants.ts +0 -48
  516. package/src/web_hammer/utils.ts +0 -24
@@ -1,548 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _react = _interopRequireWildcard(require("react"));
8
- var React = _react;
9
- var _invariant = _interopRequireDefault(require("invariant"));
10
- var _reactNative = require("react-native");
11
- var _PanGestureHandler = require("../handlers/PanGestureHandler");
12
- var _TapGestureHandler = require("../handlers/TapGestureHandler");
13
- var _State = require("../State");
14
- var _jsxRuntime = require("react/jsx-runtime");
15
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
17
- // This component is based on RN's DrawerLayoutAndroid API
18
- //
19
- // It perhaps deserves to be put in a separate repo, but since it relies on
20
- // react-native-gesture-handler library which isn't very popular at the moment I
21
- // decided to keep it here for the time being. It will allow us to move faster
22
- // and fix issues that may arise in gesture handler library that could be found
23
- // when using the drawer component
24
-
25
- const DRAG_TOSS = 0.05;
26
- const IDLE = 'Idle';
27
- const DRAGGING = 'Dragging';
28
- const SETTLING = 'Settling';
29
-
30
- /**
31
- * @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
32
- */
33
-
34
- /**
35
- * @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
36
- */
37
-
38
- /**
39
- * @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
40
- */
41
-
42
- /**
43
- * @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
44
- */
45
-
46
- /**
47
- * @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
48
- */
49
-
50
- // Animated.AnimatedInterpolation has been converted to a generic type
51
- // in @types/react-native 0.70. This way we can maintain compatibility
52
- // with all versions of @types/react-native`
53
-
54
- /**
55
- * @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
56
- */
57
-
58
- /**
59
- * @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
60
- */
61
-
62
- /**
63
- * @deprecated DrawerLayout is deprecated. Use Reanimated version of DrawerLayout instead.
64
- */
65
-
66
- /**
67
- * @deprecated use Reanimated version of DrawerLayout instead
68
- */
69
- class DrawerLayout extends _react.Component {
70
- static defaultProps = {
71
- drawerWidth: 200,
72
- drawerPosition: 'left',
73
- useNativeAnimations: true,
74
- drawerType: 'front',
75
- edgeWidth: 20,
76
- minSwipeDistance: 3,
77
- overlayColor: 'rgba(0, 0, 0, 0.7)',
78
- drawerLockMode: 'unlocked',
79
- enableTrackpadTwoFingerGesture: false
80
- };
81
- constructor(props) {
82
- super(props);
83
- const dragX = new _reactNative.Animated.Value(0);
84
- const touchX = new _reactNative.Animated.Value(0);
85
- const drawerTranslation = new _reactNative.Animated.Value(0);
86
- this.state = {
87
- dragX,
88
- touchX,
89
- drawerTranslation,
90
- containerWidth: 0,
91
- drawerState: IDLE,
92
- drawerOpened: false
93
- };
94
- this.updateAnimatedEvent(props, this.state);
95
- }
96
- shouldComponentUpdate(props, state) {
97
- if (this.props.drawerPosition !== props.drawerPosition || this.props.drawerWidth !== props.drawerWidth || this.props.drawerType !== props.drawerType || this.state.containerWidth !== state.containerWidth) {
98
- this.updateAnimatedEvent(props, state);
99
- }
100
- return true;
101
- }
102
- accessibilityIsModalView = /*#__PURE__*/React.createRef();
103
- pointerEventsView = /*#__PURE__*/React.createRef();
104
- panGestureHandler = /*#__PURE__*/React.createRef();
105
- drawerShown = false;
106
- static positions = {
107
- Left: 'left',
108
- Right: 'right'
109
- };
110
- updateAnimatedEvent = (props, state) => {
111
- // Event definition is based on
112
- const {
113
- drawerPosition,
114
- drawerWidth,
115
- drawerType
116
- } = props;
117
- const {
118
- dragX: dragXValue,
119
- touchX: touchXValue,
120
- drawerTranslation,
121
- containerWidth
122
- } = state;
123
- let dragX = dragXValue;
124
- let touchX = touchXValue;
125
- if (drawerPosition !== 'left') {
126
- // Most of the code is written in a way to handle left-side drawer. In
127
- // order to handle right-side drawer the only thing we need to do is to
128
- // reverse events coming from gesture handler in a way they emulate
129
- // left-side drawer gestures. E.g. dragX is simply -dragX, and touchX is
130
- // calulcated by subtracing real touchX from the width of the container
131
- // (such that when touch happens at the right edge the value is simply 0)
132
- dragX = _reactNative.Animated.multiply(new _reactNative.Animated.Value(-1), dragXValue); // TODO(TS): (for all "as" in this file) make sure we can map this
133
- touchX = _reactNative.Animated.add(new _reactNative.Animated.Value(containerWidth), _reactNative.Animated.multiply(new _reactNative.Animated.Value(-1), touchXValue)); // TODO(TS): make sure we can map this;
134
- touchXValue.setValue(containerWidth);
135
- } else {
136
- touchXValue.setValue(0);
137
- }
138
-
139
- // While closing the drawer when user starts gesture outside of its area (in greyed
140
- // out part of the window), we want the drawer to follow only once finger reaches the
141
- // edge of the drawer.
142
- // E.g. on the diagram below drawer is illustrate by X signs and the greyed out area by
143
- // dots. The touch gesture starts at '*' and moves left, touch path is indicated by
144
- // an arrow pointing left
145
- // 1) +---------------+ 2) +---------------+ 3) +---------------+ 4) +---------------+
146
- // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
147
- // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
148
- // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
149
- // |XXXXXXXX|......| |XXXXXXXX|.<-*..| |XXXXXXXX|<--*..| |XXXXX|<-----*..|
150
- // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
151
- // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
152
- // |XXXXXXXX|......| |XXXXXXXX|......| |XXXXXXXX|......| |XXXXX|.........|
153
- // +---------------+ +---------------+ +---------------+ +---------------+
154
- //
155
- // For the above to work properly we define animated value that will keep
156
- // start position of the gesture. Then we use that value to calculate how
157
- // much we need to subtract from the dragX. If the gesture started on the
158
- // greyed out area we take the distance from the edge of the drawer to the
159
- // start position. Otherwise we don't subtract at all and the drawer be
160
- // pulled back as soon as you start the pan.
161
- //
162
- // This is used only when drawerType is "front"
163
- //
164
- let translationX = dragX;
165
- if (drawerType === 'front') {
166
- const startPositionX = _reactNative.Animated.add(touchX, _reactNative.Animated.multiply(new _reactNative.Animated.Value(-1), dragX));
167
- const dragOffsetFromOnStartPosition = startPositionX.interpolate({
168
- inputRange: [drawerWidth - 1, drawerWidth, drawerWidth + 1],
169
- outputRange: [0, 0, 1]
170
- });
171
- translationX = _reactNative.Animated.add(dragX, dragOffsetFromOnStartPosition); // TODO: as above
172
- }
173
- this.openValue = _reactNative.Animated.add(translationX, drawerTranslation).interpolate({
174
- inputRange: [0, drawerWidth],
175
- outputRange: [0, 1],
176
- extrapolate: 'clamp'
177
- });
178
- const gestureOptions = {
179
- useNativeDriver: props.useNativeAnimations
180
- };
181
- if (this.props.onDrawerSlide) {
182
- gestureOptions.listener = ev => {
183
- const translationX = Math.floor(Math.abs(ev.nativeEvent.translationX));
184
- const position = translationX / this.state.containerWidth;
185
- this.props.onDrawerSlide?.(position);
186
- };
187
- }
188
- this.onGestureEvent = _reactNative.Animated.event([{
189
- nativeEvent: {
190
- translationX: dragXValue,
191
- x: touchXValue
192
- }
193
- }], gestureOptions);
194
- };
195
- handleContainerLayout = ({
196
- nativeEvent
197
- }) => {
198
- this.setState({
199
- containerWidth: nativeEvent.layout.width
200
- });
201
- };
202
- emitStateChanged = (newState, drawerWillShow) => {
203
- this.props.onDrawerStateChanged?.(newState, drawerWillShow);
204
- };
205
- openingHandlerStateChange = ({
206
- nativeEvent
207
- }) => {
208
- if (nativeEvent.oldState === _State.State.ACTIVE) {
209
- this.handleRelease({
210
- nativeEvent
211
- });
212
- } else if (nativeEvent.state === _State.State.ACTIVE) {
213
- this.emitStateChanged(DRAGGING, false);
214
- this.setState({
215
- drawerState: DRAGGING
216
- });
217
- if (this.props.keyboardDismissMode === 'on-drag') {
218
- _reactNative.Keyboard.dismiss();
219
- }
220
- if (this.props.hideStatusBar) {
221
- _reactNative.StatusBar.setHidden(true, this.props.statusBarAnimation || 'slide');
222
- }
223
- }
224
- };
225
- onTapHandlerStateChange = ({
226
- nativeEvent
227
- }) => {
228
- if (this.drawerShown && nativeEvent.oldState === _State.State.ACTIVE && this.props.drawerLockMode !== 'locked-open') {
229
- this.closeDrawer();
230
- }
231
- };
232
- handleRelease = ({
233
- nativeEvent
234
- }) => {
235
- const {
236
- drawerWidth,
237
- drawerPosition,
238
- drawerType
239
- } = this.props;
240
- const {
241
- containerWidth
242
- } = this.state;
243
- let {
244
- translationX: dragX,
245
- velocityX,
246
- x: touchX
247
- } = nativeEvent;
248
- if (drawerPosition !== 'left') {
249
- // See description in _updateAnimatedEvent about why events are flipped
250
- // for right-side drawer
251
- dragX = -dragX;
252
- touchX = containerWidth - touchX;
253
- velocityX = -velocityX;
254
- }
255
- const gestureStartX = touchX - dragX;
256
- let dragOffsetBasedOnStart = 0;
257
- if (drawerType === 'front') {
258
- dragOffsetBasedOnStart = gestureStartX > drawerWidth ? gestureStartX - drawerWidth : 0;
259
- }
260
- const startOffsetX = dragX + dragOffsetBasedOnStart + (this.drawerShown ? drawerWidth : 0);
261
- const projOffsetX = startOffsetX + DRAG_TOSS * velocityX;
262
- const shouldOpen = projOffsetX > drawerWidth / 2;
263
- if (shouldOpen) {
264
- this.animateDrawer(startOffsetX, drawerWidth, velocityX);
265
- } else {
266
- this.animateDrawer(startOffsetX, 0, velocityX);
267
- }
268
- };
269
- updateShowing = showing => {
270
- this.drawerShown = showing;
271
- this.accessibilityIsModalView.current?.setNativeProps({
272
- accessibilityViewIsModal: showing
273
- });
274
- this.pointerEventsView.current?.setNativeProps({
275
- pointerEvents: showing ? 'auto' : 'none'
276
- });
277
- const {
278
- drawerPosition,
279
- minSwipeDistance,
280
- edgeWidth
281
- } = this.props;
282
- const fromLeft = drawerPosition === 'left';
283
- // gestureOrientation is 1 if the expected gesture is from left to right and
284
- // -1 otherwise e.g. when drawer is on the left and is closed we expect left
285
- // to right gesture, thus orientation will be 1.
286
- const gestureOrientation = (fromLeft ? 1 : -1) * (this.drawerShown ? -1 : 1);
287
- // When drawer is closed we want the hitSlop to be horizontally shorter than
288
- // the container size by the value of SLOP. This will make it only activate
289
- // when gesture happens not further than SLOP away from the edge
290
- const hitSlop = fromLeft ? {
291
- left: 0,
292
- width: showing ? undefined : edgeWidth
293
- } : {
294
- right: 0,
295
- width: showing ? undefined : edgeWidth
296
- };
297
- // @ts-ignore internal API, maybe could be fixed in handler types
298
- this.panGestureHandler.current?.setNativeProps({
299
- hitSlop,
300
- activeOffsetX: gestureOrientation * minSwipeDistance
301
- });
302
- };
303
- animateDrawer = (fromValue, toValue, velocity, speed) => {
304
- this.state.dragX.setValue(0);
305
- this.state.touchX.setValue(this.props.drawerPosition === 'left' ? 0 : this.state.containerWidth);
306
- if (fromValue != null) {
307
- let nextFramePosition = fromValue;
308
- if (this.props.useNativeAnimations) {
309
- // When using native driver, we predict the next position of the
310
- // animation because it takes one frame of a roundtrip to pass RELEASE
311
- // event from native driver to JS before we can start animating. Without
312
- // it, it is more noticable that the frame is dropped.
313
- if (fromValue < toValue && velocity > 0) {
314
- nextFramePosition = Math.min(fromValue + velocity / 60.0, toValue);
315
- } else if (fromValue > toValue && velocity < 0) {
316
- nextFramePosition = Math.max(fromValue + velocity / 60.0, toValue);
317
- }
318
- }
319
- this.state.drawerTranslation.setValue(nextFramePosition);
320
- }
321
- const willShow = toValue !== 0;
322
- this.updateShowing(willShow);
323
- this.emitStateChanged(SETTLING, willShow);
324
- this.setState({
325
- drawerState: SETTLING
326
- });
327
- if (this.props.hideStatusBar) {
328
- _reactNative.StatusBar.setHidden(willShow, this.props.statusBarAnimation || 'slide');
329
- }
330
- _reactNative.Animated.spring(this.state.drawerTranslation, {
331
- velocity,
332
- bounciness: 0,
333
- toValue,
334
- useNativeDriver: this.props.useNativeAnimations,
335
- speed: speed ?? undefined
336
- }).start(({
337
- finished
338
- }) => {
339
- if (finished) {
340
- this.emitStateChanged(IDLE, willShow);
341
- this.setState({
342
- drawerOpened: willShow
343
- });
344
- if (this.state.drawerState !== DRAGGING) {
345
- // It's possilbe that user started drag while the drawer
346
- // was settling, don't override state in this case
347
- this.setState({
348
- drawerState: IDLE
349
- });
350
- }
351
- if (willShow) {
352
- this.props.onDrawerOpen?.();
353
- } else {
354
- this.props.onDrawerClose?.();
355
- }
356
- }
357
- });
358
- };
359
-
360
- // eslint-disable-next-line @eslint-react/no-unused-class-component-members
361
- openDrawer = (options = {}) => {
362
- this.animateDrawer(
363
- // TODO: decide if it should be null or undefined is the proper value
364
- undefined, this.props.drawerWidth, options.velocity ? options.velocity : 0, options.speed);
365
-
366
- // We need to force the update, otherwise the overlay is not rerendered and
367
- // it would not be clickable
368
- this.forceUpdate();
369
- };
370
- closeDrawer = (options = {}) => {
371
- // TODO: decide if it should be null or undefined is the proper value
372
- this.animateDrawer(undefined, 0, options.velocity ? options.velocity : 0, options.speed);
373
-
374
- // We need to force the update, otherwise the overlay is not rerendered and
375
- // it would be still clickable
376
- this.forceUpdate();
377
- };
378
- renderOverlay = () => {
379
- /* Overlay styles */
380
- (0, _invariant.default)(this.openValue, 'should be set');
381
- let overlayOpacity;
382
- if (this.state.drawerState !== IDLE) {
383
- overlayOpacity = this.openValue;
384
- } else {
385
- overlayOpacity = this.state.drawerOpened ? 1 : 0;
386
- }
387
- const dynamicOverlayStyles = {
388
- opacity: overlayOpacity,
389
- backgroundColor: this.props.overlayColor
390
- };
391
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_TapGestureHandler.TapGestureHandler, {
392
- onHandlerStateChange: this.onTapHandlerStateChange,
393
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
394
- pointerEvents: this.drawerShown ? 'auto' : 'none',
395
- ref: this.pointerEventsView,
396
- style: [styles.overlay, dynamicOverlayStyles]
397
- })
398
- });
399
- };
400
- renderDrawer = () => {
401
- const {
402
- drawerBackgroundColor,
403
- drawerWidth,
404
- drawerPosition,
405
- drawerType,
406
- drawerContainerStyle,
407
- contentContainerStyle
408
- } = this.props;
409
- const fromLeft = drawerPosition === 'left';
410
- const drawerSlide = drawerType !== 'back';
411
- const containerSlide = drawerType !== 'front';
412
-
413
- // We rely on row and row-reverse flex directions to position the drawer
414
- // properly. Apparently for RTL these are flipped which requires us to use
415
- // the opposite setting for the drawer to appear from left or right
416
- // according to the drawerPosition prop
417
- const reverseContentDirection = _reactNative.I18nManager.isRTL ? fromLeft : !fromLeft;
418
- const dynamicDrawerStyles = {
419
- backgroundColor: drawerBackgroundColor,
420
- width: drawerWidth
421
- };
422
- const openValue = this.openValue;
423
- (0, _invariant.default)(openValue, 'should be set');
424
- let containerStyles;
425
- if (containerSlide) {
426
- const containerTranslateX = openValue.interpolate({
427
- inputRange: [0, 1],
428
- outputRange: fromLeft ? [0, drawerWidth] : [0, -drawerWidth],
429
- extrapolate: 'clamp'
430
- });
431
- containerStyles = {
432
- transform: [{
433
- translateX: containerTranslateX
434
- }]
435
- };
436
- }
437
- let drawerTranslateX = 0;
438
- if (drawerSlide) {
439
- const closedDrawerOffset = fromLeft ? -drawerWidth : drawerWidth;
440
- if (this.state.drawerState !== IDLE) {
441
- drawerTranslateX = openValue.interpolate({
442
- inputRange: [0, 1],
443
- outputRange: [closedDrawerOffset, 0],
444
- extrapolate: 'clamp'
445
- });
446
- } else {
447
- drawerTranslateX = this.state.drawerOpened ? 0 : closedDrawerOffset;
448
- }
449
- }
450
- const drawerStyles = {
451
- transform: [{
452
- translateX: drawerTranslateX
453
- }],
454
- flexDirection: reverseContentDirection ? 'row-reverse' : 'row'
455
- };
456
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Animated.View, {
457
- style: styles.main,
458
- onLayout: this.handleContainerLayout,
459
- children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Animated.View, {
460
- style: [drawerType === 'front' ? styles.containerOnBack : styles.containerInFront, containerStyles, contentContainerStyle],
461
- importantForAccessibility: this.drawerShown ? 'no-hide-descendants' : 'yes',
462
- children: [typeof this.props.children === 'function' ? this.props.children(this.openValue) : this.props.children, this.renderOverlay()]
463
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Animated.View, {
464
- pointerEvents: "box-none",
465
- ref: this.accessibilityIsModalView,
466
- accessibilityViewIsModal: this.drawerShown,
467
- style: [styles.drawerContainer, drawerStyles, drawerContainerStyle],
468
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
469
- style: dynamicDrawerStyles,
470
- children: this.props.renderNavigationView(this.openValue)
471
- })
472
- })]
473
- });
474
- };
475
- setPanGestureRef = ref => {
476
- // TODO(TS): make sure it is OK taken from
477
- // https://github.com/DefinitelyTyped/DefinitelyTyped/issues/31065#issuecomment-596081842
478
- this.panGestureHandler.current = ref;
479
- this.props.onGestureRef?.(ref);
480
- };
481
- render() {
482
- const {
483
- drawerPosition,
484
- drawerLockMode,
485
- edgeWidth,
486
- minSwipeDistance
487
- } = this.props;
488
- const fromLeft = drawerPosition === 'left';
489
-
490
- // gestureOrientation is 1 if the expected gesture is from left to right and
491
- // -1 otherwise e.g. when drawer is on the left and is closed we expect left
492
- // to right gesture, thus orientation will be 1.
493
- const gestureOrientation = (fromLeft ? 1 : -1) * (this.drawerShown ? -1 : 1);
494
-
495
- // When drawer is closed we want the hitSlop to be horizontally shorter than
496
- // the container size by the value of SLOP. This will make it only activate
497
- // when gesture happens not further than SLOP away from the edge
498
- const hitSlop = fromLeft ? {
499
- left: 0,
500
- width: this.drawerShown ? undefined : edgeWidth
501
- } : {
502
- right: 0,
503
- width: this.drawerShown ? undefined : edgeWidth
504
- };
505
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PanGestureHandler.PanGestureHandler
506
- // @ts-ignore could be fixed in handler types
507
- , {
508
- userSelect: this.props.userSelect,
509
- activeCursor: this.props.activeCursor,
510
- mouseButton: this.props.mouseButton,
511
- enableContextMenu: this.props.enableContextMenu,
512
- ref: this.setPanGestureRef,
513
- hitSlop: hitSlop,
514
- activeOffsetX: gestureOrientation * minSwipeDistance,
515
- failOffsetY: [-15, 15],
516
- onGestureEvent: this.onGestureEvent,
517
- onHandlerStateChange: this.openingHandlerStateChange,
518
- enableTrackpadTwoFingerGesture: this.props.enableTrackpadTwoFingerGesture,
519
- enabled: drawerLockMode !== 'locked-closed' && drawerLockMode !== 'locked-open',
520
- children: this.renderDrawer()
521
- });
522
- }
523
- }
524
- exports.default = DrawerLayout;
525
- const styles = _reactNative.StyleSheet.create({
526
- drawerContainer: {
527
- ..._reactNative.StyleSheet.absoluteFillObject,
528
- zIndex: 1001,
529
- flexDirection: 'row'
530
- },
531
- containerInFront: {
532
- ..._reactNative.StyleSheet.absoluteFillObject,
533
- zIndex: 1002
534
- },
535
- containerOnBack: {
536
- ..._reactNative.StyleSheet.absoluteFillObject
537
- },
538
- main: {
539
- flex: 1,
540
- zIndex: 0,
541
- overflow: 'hidden'
542
- },
543
- overlay: {
544
- ..._reactNative.StyleSheet.absoluteFillObject,
545
- zIndex: 1000
546
- }
547
- });
548
- //# sourceMappingURL=DrawerLayout.js.map