@react-native-oh-tpl/react-native-gesture-handler 2.12.9-1 → 2.14.1-2.14.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. package/DrawerLayout/index.ts +2 -0
  2. package/Swipeable/index.ts +2 -0
  3. package/harmony/gesture_handler/BuildProfile.ets +15 -4
  4. package/harmony/gesture_handler/hvigorfile.ts +1 -1
  5. package/harmony/gesture_handler/index.ets +2 -2
  6. package/harmony/gesture_handler/oh-package-lock.json5 +4 -4
  7. package/harmony/gesture_handler/oh-package.json5 +4 -4
  8. package/harmony/gesture_handler/src/main/cpp/GestureHandlerPackage.cpp +64 -18
  9. package/harmony/gesture_handler/src/main/cpp/GestureHandlerPackage.h +3 -3
  10. package/harmony/gesture_handler/src/main/cpp/RNGestureHandlerRootViewJSIBinder.h +2 -2
  11. package/harmony/gesture_handler/src/main/cpp/{RNGestureHandlerButtonComponentInstance.h → componentInstances/RNGestureHandlerButtonComponentInstance.h} +2 -2
  12. package/harmony/gesture_handler/src/main/cpp/componentInstances/RNGestureHandlerRootViewComponentInstance.h +242 -0
  13. package/harmony/gesture_handler/src/main/ets/{GestureHandler.ts → core/GestureHandler.ts} +46 -25
  14. package/harmony/gesture_handler/src/main/ets/{GestureHandlerOrchestrator.ts → core/GestureHandlerOrchestrator.ts} +122 -67
  15. package/harmony/gesture_handler/src/main/ets/{GestureHandlerRegistry.ts → core/GestureHandlerRegistry.ts} +7 -0
  16. package/harmony/gesture_handler/src/main/ets/{Event.ts → core/IncomingEvent.ts} +30 -20
  17. package/harmony/gesture_handler/src/main/ets/core/InteractionManager.ts +144 -0
  18. package/harmony/gesture_handler/src/main/ets/{OutgoingEvent.ts → core/OutgoingEvent.ts} +1 -1
  19. package/harmony/gesture_handler/src/main/ets/core/OutgoingEventDispatcher.ts +12 -0
  20. package/harmony/gesture_handler/src/main/ets/{PointerTracker.ts → core/PointerTracker.ts} +4 -4
  21. package/harmony/gesture_handler/src/main/ets/core/RNGHLogger.ts +12 -0
  22. package/harmony/gesture_handler/src/main/ets/core/Vector2D.ts +80 -0
  23. package/harmony/gesture_handler/src/main/ets/{VelocityTracker.ts → core/VelocityTracker.ts} +13 -5
  24. package/harmony/gesture_handler/src/main/ets/core/View.ts +21 -0
  25. package/harmony/gesture_handler/src/main/ets/core/index.ts +13 -0
  26. package/harmony/gesture_handler/src/main/ets/detectors/ScaleGestureDetector.ts +169 -0
  27. package/harmony/gesture_handler/src/main/ets/gesture-handlers/FlingGestureHandler.ts +211 -0
  28. package/harmony/gesture_handler/src/main/ets/gesture-handlers/GestureHandlerFactory.ts +64 -0
  29. package/harmony/gesture_handler/src/main/ets/gesture-handlers/LongPressGestureHandler.ts +127 -0
  30. package/harmony/gesture_handler/src/main/ets/gesture-handlers/ManualGestureHandler.ts +42 -0
  31. package/harmony/gesture_handler/src/main/ets/{NativeViewGestureHandler.ts → gesture-handlers/NativeViewGestureHandler.ts} +15 -15
  32. package/harmony/gesture_handler/src/main/ets/{PanGestureHandler.ts → gesture-handlers/PanGestureHandler.ts} +27 -13
  33. package/harmony/gesture_handler/src/main/ets/gesture-handlers/PinchGestureHandler.ts +159 -0
  34. package/harmony/gesture_handler/src/main/ets/gesture-handlers/RotationGestureHandler.ts +164 -0
  35. package/harmony/gesture_handler/src/main/ets/{TapGestureHandler.ts → gesture-handlers/TapGestureHandler.ts} +11 -11
  36. package/harmony/gesture_handler/src/main/ets/gesture-handlers/detectors/RotationGestureDetector.ts +167 -0
  37. package/harmony/gesture_handler/src/main/ets/gesture-handlers/index.ts +1 -0
  38. package/harmony/gesture_handler/src/main/ets/namespace/RNGestureHandlerModule.ts +8 -9
  39. package/harmony/gesture_handler/src/main/ets/namespace/{RNGestureHandlerButton.ts → components/RNGestureHandlerButton.ts} +35 -36
  40. package/harmony/gesture_handler/src/main/ets/namespace/{RNGestureHandlerRootView.ts → components/RNGestureHandlerRootView.ts} +23 -23
  41. package/harmony/gesture_handler/src/main/ets/namespace/components/ts.ts +2 -0
  42. package/harmony/gesture_handler/src/main/ets/namespace/ts.ts +2 -3
  43. package/harmony/gesture_handler/src/main/ets/rnoh/GestureHandlerArkUIAdapter.ts +240 -0
  44. package/harmony/gesture_handler/src/main/ets/{GestureHandlerPackage.ts → rnoh/GestureHandlerPackage.ts} +4 -4
  45. package/harmony/gesture_handler/src/main/ets/rnoh/Logger.ts +49 -0
  46. package/harmony/gesture_handler/src/main/ets/rnoh/OutgoingEventDispatchers.ts +71 -0
  47. package/harmony/gesture_handler/src/main/ets/rnoh/RNGHRootTouchHandlerArkTS.ts +108 -0
  48. package/harmony/gesture_handler/src/main/ets/rnoh/RNGHRootTouchHandlerCAPI.ts +110 -0
  49. package/harmony/gesture_handler/src/main/ets/{RNGestureHandlerButton.ets → rnoh/RNGestureHandlerButton.ets} +3 -3
  50. package/harmony/gesture_handler/src/main/ets/{RNGestureHandlerModule.ts → rnoh/RNGestureHandlerModule.ts} +76 -27
  51. package/harmony/gesture_handler/src/main/ets/{RNGestureHandlerRootView.ets → rnoh/RNGestureHandlerRootView.ets} +3 -3
  52. package/harmony/gesture_handler/src/main/ets/rnoh/RNOHGestureResponder.ts +24 -0
  53. package/harmony/gesture_handler/src/main/ets/rnoh/RNOHScrollLocker.ts +32 -0
  54. package/harmony/gesture_handler/src/main/ets/rnoh/View.ts +134 -0
  55. package/harmony/gesture_handler/src/main/ets/rnoh/ViewRegistry.ts +95 -0
  56. package/harmony/gesture_handler/src/main/module.json5 +8 -6
  57. package/harmony/gesture_handler/ts.ts +2 -2
  58. package/harmony/gesture_handler.har +0 -0
  59. package/lib/commonjs/index.js +126 -141
  60. package/lib/commonjs/index.js.map +1 -1
  61. package/lib/module/index.js +13 -146
  62. package/lib/module/index.js.map +1 -1
  63. package/lib/typescript/index.d.ts +39 -1
  64. package/lib/typescript/index.d.ts.map +1 -1
  65. package/package.json +13 -10
  66. package/src/index.ts +140 -140
  67. package/harmony/gesture_handler/src/main/cpp/RNGestureHandlerPackage.h +0 -72
  68. package/harmony/gesture_handler/src/main/cpp/RNGestureHandlerRootViewComponentInstance.h +0 -123
  69. package/harmony/gesture_handler/src/main/ets/EventDispatcher.ts +0 -53
  70. package/harmony/gesture_handler/src/main/ets/GestureHandlerArkUIAdapter.ts +0 -203
  71. package/harmony/gesture_handler/src/main/ets/GestureHandlerFactory.ts +0 -45
  72. package/harmony/gesture_handler/src/main/ets/InteractionManager.ts +0 -109
  73. package/harmony/gesture_handler/src/main/ets/RNGHLogger.ts +0 -48
  74. package/harmony/gesture_handler/src/main/ets/RNGHRootTouchHandlerArkTS.ts +0 -60
  75. package/harmony/gesture_handler/src/main/ets/RNGHRootTouchHandlerCAPI.ts +0 -87
  76. package/harmony/gesture_handler/src/main/ets/RNOHScrollLocker.ts +0 -23
  77. package/harmony/gesture_handler/src/main/ets/Vector2D.ts +0 -36
  78. package/harmony/gesture_handler/src/main/ets/View.ts +0 -71
  79. package/harmony/gesture_handler/src/main/ets/ViewRegistry.ts +0 -43
  80. package/harmony/gesture_handler/src/main/ets/pages/Index.ets +0 -17
  81. package/harmony/gesture_handler/src/main/ets/webviewability/WebviewAbility.ts +0 -41
  82. /package/harmony/gesture_handler/src/main/ets/{CircularBuffer.ts → core/CircularBuffer.ts} +0 -0
  83. /package/harmony/gesture_handler/src/main/ets/{LeastSquareSolver.ts → core/LeastSquareSolver.ts} +0 -0
  84. /package/harmony/gesture_handler/src/main/ets/{RNGHError.ts → core/RNGHError.ts} +0 -0
  85. /package/harmony/gesture_handler/src/main/ets/{State.ts → core/State.ts} +0 -0
  86. /package/harmony/gesture_handler/src/main/ets/{types.ts → rnoh/types.ts} +0 -0
@@ -1,10 +1,48 @@
1
+ export { Directions } from 'react-native-gesture-handler/src/Directions';
1
2
  export { State } from 'react-native-gesture-handler/src/State';
3
+ export { default as gestureHandlerRootHOC } from 'react-native-gesture-handler/src/components/gestureHandlerRootHOC';
2
4
  export { default as GestureHandlerRootView } from './components/GestureHandlerRootView';
5
+ export type { GestureEvent, HandlerStateChangeEvent, GestureEventPayload, HandlerStateChangeEventPayload, GestureTouchEvent, TouchData, GestureUpdateEvent, GestureStateChangeEvent, } from 'react-native-gesture-handler/src/handlers/gestureHandlerCommon';
3
6
  export type { GestureType } from 'react-native-gesture-handler/src/handlers/gestures/gesture';
7
+ export type { TapGestureHandlerEventPayload, TapGestureHandlerProps, } from 'react-native-gesture-handler/src/handlers/TapGestureHandler';
8
+ export type { ForceTouchGestureHandlerEventPayload, ForceTouchGestureHandlerProps, } from 'react-native-gesture-handler/src/handlers/ForceTouchGestureHandler';
9
+ export type { ForceTouchGestureChangeEventPayload } from 'react-native-gesture-handler/src/handlers/gestures/forceTouchGesture';
10
+ export type { LongPressGestureHandlerEventPayload, LongPressGestureHandlerProps, } from 'react-native-gesture-handler/src/handlers/LongPressGestureHandler';
11
+ export type { PanGestureHandlerEventPayload, PanGestureHandlerProps, } from 'react-native-gesture-handler/src/handlers/PanGestureHandler';
12
+ export type { PanGestureChangeEventPayload } from 'react-native-gesture-handler/src/handlers/gestures/panGesture';
13
+ export type { PinchGestureHandlerEventPayload, PinchGestureHandlerProps, } from 'react-native-gesture-handler/src/handlers/PinchGestureHandler';
14
+ export type { PinchGestureChangeEventPayload } from 'react-native-gesture-handler/src/handlers/gestures/pinchGesture';
15
+ export type { RotationGestureHandlerEventPayload, RotationGestureHandlerProps, } from 'react-native-gesture-handler/src/handlers/RotationGestureHandler';
16
+ export type { FlingGestureHandlerEventPayload, FlingGestureHandlerProps, } from 'react-native-gesture-handler/src/handlers/FlingGestureHandler';
4
17
  export { TapGestureHandler } from 'react-native-gesture-handler/src/handlers/TapGestureHandler';
18
+ export { LongPressGestureHandler } from 'react-native-gesture-handler/src/handlers/LongPressGestureHandler';
5
19
  export { PanGestureHandler } from 'react-native-gesture-handler/src/handlers/PanGestureHandler';
20
+ export { PinchGestureHandler } from 'react-native-gesture-handler/src/handlers/PinchGestureHandler';
21
+ export { RotationGestureHandler } from 'react-native-gesture-handler/src/handlers/RotationGestureHandler';
22
+ export { FlingGestureHandler } from 'react-native-gesture-handler/src/handlers/FlingGestureHandler';
23
+ export { default as createNativeWrapper } from 'react-native-gesture-handler/src/handlers/createNativeWrapper';
24
+ export type { NativeViewGestureHandlerPayload, NativeViewGestureHandlerProps, } from 'react-native-gesture-handler/src/handlers/NativeViewGestureHandler';
6
25
  export { GestureDetector } from 'react-native-gesture-handler/src/handlers/gestures/GestureDetector';
7
26
  export { GestureObjects as Gesture } from 'react-native-gesture-handler/src/handlers/gestures/gestureObjects';
8
- export { TouchableOpacity, TouchableWithoutFeedback, } from 'react-native-gesture-handler/src/components/touchables';
27
+ export type { TapGestureType as TapGesture } from 'react-native-gesture-handler/src/handlers/gestures/tapGesture';
28
+ export type { PanGestureType as PanGesture } from 'react-native-gesture-handler/src/handlers/gestures/panGesture';
29
+ export type { FlingGestureType as FlingGesture } from 'react-native-gesture-handler/src/handlers/gestures/flingGesture';
30
+ export type { LongPressGestureType as LongPressGesture } from 'react-native-gesture-handler/src/handlers/gestures/longPressGesture';
31
+ export type { PinchGestureType as PinchGesture } from 'react-native-gesture-handler/src/handlers/gestures/pinchGesture';
32
+ export type { RotationGestureType as RotationGesture } from 'react-native-gesture-handler/src/handlers/gestures/rotationGesture';
33
+ export type { ForceTouchGestureType as ForceTouchGesture } from 'react-native-gesture-handler/src/handlers/gestures/forceTouchGesture';
34
+ export type { NativeGestureType as NativeGesture } from 'react-native-gesture-handler/src/handlers/gestures/nativeGesture';
35
+ export type { ManualGestureType as ManualGesture } from 'react-native-gesture-handler/src/handlers/gestures/manualGesture';
36
+ export type { ComposedGestureType as ComposedGesture, RaceGestureType as RaceGesture, SimultaneousGestureType as SimultaneousGesture, ExclusiveGestureType as ExclusiveGesture, } from 'react-native-gesture-handler/src/handlers/gestures/gestureComposition';
37
+ export type { GestureStateManagerType as GestureStateManager } from 'react-native-gesture-handler/src/handlers/gestures/gestureStateManager';
38
+ export { NativeViewGestureHandler } from 'react-native-gesture-handler/src/handlers/NativeViewGestureHandler';
39
+ export type { RawButtonProps, BaseButtonProps, RectButtonProps, BorderlessButtonProps, } from 'react-native-gesture-handler/src/components/GestureButtons';
40
+ export { RawButton, BaseButton, RectButton, BorderlessButton, PureNativeButton, } from 'react-native-gesture-handler/src/components/GestureButtons';
41
+ export { TouchableHighlight, TouchableNativeFeedback, TouchableOpacity, TouchableWithoutFeedback, } from 'react-native-gesture-handler/src/components/touchables';
9
42
  export { ScrollView, Switch, TextInput, DrawerLayoutAndroid, FlatList, RefreshControl, } from 'react-native-gesture-handler/src/components/GestureComponents';
43
+ export type { GestureHandlerGestureEvent, GestureHandlerStateChangeEvent, GestureHandlerGestureEventNativeEvent, GestureHandlerStateChangeNativeEvent, NativeViewGestureHandlerGestureEvent, NativeViewGestureHandlerStateChangeEvent, TapGestureHandlerGestureEvent, TapGestureHandlerStateChangeEvent, ForceTouchGestureHandlerGestureEvent, ForceTouchGestureHandlerStateChangeEvent, LongPressGestureHandlerGestureEvent, LongPressGestureHandlerStateChangeEvent, PanGestureHandlerGestureEvent, PanGestureHandlerStateChangeEvent, PinchGestureHandlerGestureEvent, PinchGestureHandlerStateChangeEvent, RotationGestureHandlerGestureEvent, RotationGestureHandlerStateChangeEvent, FlingGestureHandlerGestureEvent, FlingGestureHandlerStateChangeEvent, NativeViewGestureHandlerProperties, TapGestureHandlerProperties, LongPressGestureHandlerProperties, PanGestureHandlerProperties, PinchGestureHandlerProperties, RotationGestureHandlerProperties, FlingGestureHandlerProperties, ForceTouchGestureHandlerProperties, RawButtonProperties, BaseButtonProperties, RectButtonProperties, BorderlessButtonProperties, } from 'react-native-gesture-handler/src/handlers/gestureHandlerTypesCompat';
44
+ export { default as Swipeable } from 'react-native-gesture-handler/src/components/Swipeable';
45
+ export type { DrawerLayoutProps, DrawerPosition, DrawerState, DrawerType, DrawerLockMode, DrawerKeyboardDismissMode, } from 'react-native-gesture-handler/src/components/DrawerLayout';
46
+ export { default as DrawerLayout } from 'react-native-gesture-handler/src/components/DrawerLayout';
47
+ export { enableExperimentalWebImplementation, enableLegacyWebImplementation, } from 'react-native-gesture-handler/src/EnableNewWebImplementation';
10
48
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,EAAE,MAAM,wCAAwC,CAAC;AAE/D,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAexF,YAAY,EAAE,WAAW,EAAE,MAAM,4DAA4D,CAAC;AAgC9F,OAAO,EAAE,iBAAiB,EAAE,MAAM,6DAA6D,CAAC;AAGhG,OAAO,EAAE,iBAAiB,EAAE,MAAM,6DAA6D,CAAC;AAShG,OAAO,EAAE,eAAe,EAAE,MAAM,oEAAoE,CAAC;AACrG,OAAO,EAAE,cAAc,IAAI,OAAO,EAAE,MAAM,mEAAmE,CAAC;AA+B9G,OAAO,EAGL,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,wDAAwD,CAAC;AAChE,OAAO,EACL,UAAU,EACV,MAAM,EACN,SAAS,EACT,mBAAmB,EACnB,QAAQ,EACR,cAAc,GACf,MAAM,+DAA+D,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "type": "git",
9
9
  "url": "https://github.com/react-native-oh-library/react-native-harmony-gesture-handler.git"
10
10
  },
11
- "version": "2.12.9-1",
11
+ "version": "2.14.1-2.14.12",
12
12
  "description": "",
13
13
  "react-native": "src/index.ts",
14
14
  "main": "lib/commonjs/index.js",
@@ -17,21 +17,22 @@
17
17
  "scripts": {
18
18
  "prepack": "bob build",
19
19
  "test": "jest",
20
- "pack:harmony": "react-native pack-harmony --oh-module-path ../tester/harmony/react_native_modules/gesture_handler --harmony-dir-path ./harmony --package-json-path ./package.json",
21
- "pack:prod": "npm run pack:harmony && npm pack"
20
+ "pack:prod": "npm pack",
21
+ "update_version": "node ./scripts/update-version.js",
22
+ "deploy": "node ./scripts/deploy.js"
22
23
  },
23
24
  "peerDependencies": {
24
25
  "react": "*",
25
26
  "react-native": "*",
26
- "react-native-harmony": "*"
27
+ "react-native-harmony": "*",
28
+ "react-native-gesture-handler": "2.14.1"
27
29
  },
28
30
  "keywords": [],
29
31
  "author": "",
30
32
  "license": "ISC",
31
- "dependencies": {
32
- "react-native-gesture-handler": "2.12.1"
33
- },
34
33
  "devDependencies": {
34
+ "@types/hoist-non-react-statics": "^3.3.1",
35
+ "react-native-gesture-handler": "2.14.1",
35
36
  "@babel/core": "^7.12.9",
36
37
  "@babel/plugin-proposal-class-properties": "^7.12.1",
37
38
  "@babel/preset-env": "^7.12.11",
@@ -45,9 +46,11 @@
45
46
  "typescript": "4.5.5"
46
47
  },
47
48
  "files": [
48
- "harmony",
49
+ "./harmony/*",
49
50
  "src",
50
- "lib"
51
+ "lib",
52
+ "DrawerLayout/",
53
+ "Swipeable/"
51
54
  ],
52
55
  "react-native-builder-bob": {
53
56
  "source": "src",
@@ -63,4 +66,4 @@
63
66
  ]
64
67
  ]
65
68
  }
66
- }
69
+ }
package/src/index.ts CHANGED
@@ -6,103 +6,103 @@ global.isFormsStackingContext = () => true; // TODO: add using JSI
6
6
 
7
7
  import { initialize } from 'react-native-gesture-handler/src/init';
8
8
 
9
- // export { Directions } from './Directions';
9
+ export { Directions } from 'react-native-gesture-handler/src/Directions';
10
10
  export { State } from 'react-native-gesture-handler/src/State';
11
- // export { default as gestureHandlerRootHOC } from './components/gestureHandlerRootHOC';
11
+ export { default as gestureHandlerRootHOC } from 'react-native-gesture-handler/src/components/gestureHandlerRootHOC';
12
12
  export { default as GestureHandlerRootView } from './components/GestureHandlerRootView';
13
- // export type {
14
- // // event types
15
- // GestureEvent,
16
- // HandlerStateChangeEvent,
17
- // // event payloads types
18
- // GestureEventPayload,
19
- // HandlerStateChangeEventPayload,
20
- // // pointer events
21
- // GestureTouchEvent,
22
- // TouchData,
23
- // // new api event types
24
- // GestureUpdateEvent,
25
- // GestureStateChangeEvent,
26
- // } from './handlers/gestureHandlerCommon';
13
+ export type {
14
+ // event types
15
+ GestureEvent,
16
+ HandlerStateChangeEvent,
17
+ // event payloads types
18
+ GestureEventPayload,
19
+ HandlerStateChangeEventPayload,
20
+ // pointer events
21
+ GestureTouchEvent,
22
+ TouchData,
23
+ // new api event types
24
+ GestureUpdateEvent,
25
+ GestureStateChangeEvent,
26
+ } from 'react-native-gesture-handler/src/handlers/gestureHandlerCommon';
27
27
  export type { GestureType } from 'react-native-gesture-handler/src/handlers/gestures/gesture';
28
- // export type {
29
- // TapGestureHandlerEventPayload,
30
- // TapGestureHandlerProps,
31
- // } from './handlers/TapGestureHandler';
32
- // export type {
33
- // ForceTouchGestureHandlerEventPayload,
34
- // ForceTouchGestureHandlerProps,
35
- // } from './handlers/ForceTouchGestureHandler';
36
- // export type { ForceTouchGestureChangeEventPayload } from './handlers/gestures/forceTouchGesture';
37
- // export type {
38
- // LongPressGestureHandlerEventPayload,
39
- // LongPressGestureHandlerProps,
40
- // } from './handlers/LongPressGestureHandler';
41
- // export type {
42
- // PanGestureHandlerEventPayload,
43
- // PanGestureHandlerProps,
44
- // } from './handlers/PanGestureHandler';
45
- // export type { PanGestureChangeEventPayload } from './handlers/gestures/panGesture';
46
- // export type {
47
- // PinchGestureHandlerEventPayload,
48
- // PinchGestureHandlerProps,
49
- // } from './handlers/PinchGestureHandler';
50
- // export type { PinchGestureChangeEventPayload } from './handlers/gestures/pinchGesture';
51
- // export type {
52
- // RotationGestureHandlerEventPayload,
53
- // RotationGestureHandlerProps,
54
- // } from './handlers/RotationGestureHandler';
55
- // export type {
56
- // FlingGestureHandlerEventPayload,
57
- // FlingGestureHandlerProps,
58
- // } from './handlers/FlingGestureHandler';
28
+ export type {
29
+ TapGestureHandlerEventPayload,
30
+ TapGestureHandlerProps,
31
+ } from 'react-native-gesture-handler/src/handlers/TapGestureHandler';
32
+ export type {
33
+ ForceTouchGestureHandlerEventPayload,
34
+ ForceTouchGestureHandlerProps,
35
+ } from 'react-native-gesture-handler/src/handlers/ForceTouchGestureHandler';
36
+ export type { ForceTouchGestureChangeEventPayload } from 'react-native-gesture-handler/src/handlers/gestures/forceTouchGesture';
37
+ export type {
38
+ LongPressGestureHandlerEventPayload,
39
+ LongPressGestureHandlerProps,
40
+ } from 'react-native-gesture-handler/src/handlers/LongPressGestureHandler';
41
+ export type {
42
+ PanGestureHandlerEventPayload,
43
+ PanGestureHandlerProps,
44
+ } from 'react-native-gesture-handler/src/handlers/PanGestureHandler';
45
+ export type { PanGestureChangeEventPayload } from 'react-native-gesture-handler/src/handlers/gestures/panGesture';
46
+ export type {
47
+ PinchGestureHandlerEventPayload,
48
+ PinchGestureHandlerProps,
49
+ } from 'react-native-gesture-handler/src/handlers/PinchGestureHandler';
50
+ export type { PinchGestureChangeEventPayload } from 'react-native-gesture-handler/src/handlers/gestures/pinchGesture';
51
+ export type {
52
+ RotationGestureHandlerEventPayload,
53
+ RotationGestureHandlerProps,
54
+ } from 'react-native-gesture-handler/src/handlers/RotationGestureHandler';
55
+ export type {
56
+ FlingGestureHandlerEventPayload,
57
+ FlingGestureHandlerProps,
58
+ } from 'react-native-gesture-handler/src/handlers/FlingGestureHandler';
59
59
  export { TapGestureHandler } from 'react-native-gesture-handler/src/handlers/TapGestureHandler';
60
60
  // export { ForceTouchGestureHandler } from './handlers/ForceTouchGestureHandler';
61
- // export { LongPressGestureHandler } from './handlers/LongPressGestureHandler';
61
+ export { LongPressGestureHandler } from 'react-native-gesture-handler/src/handlers/LongPressGestureHandler';
62
62
  export { PanGestureHandler } from 'react-native-gesture-handler/src/handlers/PanGestureHandler';
63
- // export { PinchGestureHandler } from './handlers/PinchGestureHandler';
64
- // export { RotationGestureHandler } from './handlers/RotationGestureHandler';
65
- // export { FlingGestureHandler } from './handlers/FlingGestureHandler';
66
- // export { default as createNativeWrapper } from './handlers/createNativeWrapper';
67
- // export type {
68
- // NativeViewGestureHandlerPayload,
69
- // NativeViewGestureHandlerProps,
70
- // } from './handlers/NativeViewGestureHandler';
63
+ export { PinchGestureHandler } from 'react-native-gesture-handler/src/handlers/PinchGestureHandler';
64
+ export { RotationGestureHandler } from 'react-native-gesture-handler/src/handlers/RotationGestureHandler';
65
+ export { FlingGestureHandler } from 'react-native-gesture-handler/src/handlers/FlingGestureHandler';
66
+ export { default as createNativeWrapper } from 'react-native-gesture-handler/src/handlers/createNativeWrapper';
67
+ export type {
68
+ NativeViewGestureHandlerPayload,
69
+ NativeViewGestureHandlerProps,
70
+ } from 'react-native-gesture-handler/src/handlers/NativeViewGestureHandler';
71
71
  export { GestureDetector } from 'react-native-gesture-handler/src/handlers/gestures/GestureDetector';
72
72
  export { GestureObjects as Gesture } from 'react-native-gesture-handler/src/handlers/gestures/gestureObjects';
73
- // export type { TapGestureType as TapGesture } from './handlers/gestures/tapGesture';
74
- // export type { PanGestureType as PanGesture } from './handlers/gestures/panGesture';
75
- // export type { FlingGestureType as FlingGesture } from './handlers/gestures/flingGesture';
76
- // export type { LongPressGestureType as LongPressGesture } from './handlers/gestures/longPressGesture';
77
- // export type { PinchGestureType as PinchGesture } from './handlers/gestures/pinchGesture';
78
- // export type { RotationGestureType as RotationGesture } from './handlers/gestures/rotationGesture';
79
- // export type { ForceTouchGestureType as ForceTouchGesture } from './handlers/gestures/forceTouchGesture';
80
- // export type { NativeGestureType as NativeGesture } from './handlers/gestures/nativeGesture';
81
- // export type { ManualGestureType as ManualGesture } from './handlers/gestures/manualGesture';
82
- // export type {
83
- // ComposedGestureType as ComposedGesture,
84
- // RaceGestureType as RaceGesture,
85
- // SimultaneousGestureType as SimultaneousGesture,
86
- // ExclusiveGestureType as ExclusiveGesture,
87
- // } from './handlers/gestures/gestureComposition';
88
- // export type { GestureStateManagerType as GestureStateManager } from './handlers/gestures/gestureStateManager';
89
- // export { NativeViewGestureHandler } from './handlers/NativeViewGestureHandler';
90
- // export type {
91
- // RawButtonProps,
92
- // BaseButtonProps,
93
- // RectButtonProps,
94
- // BorderlessButtonProps,
95
- // } from './components/GestureButtons';
96
- // export {
97
- // RawButton,
98
- // BaseButton,
99
- // RectButton,
100
- // BorderlessButton,
101
- // PureNativeButton,
102
- // } from './components/GestureButtons';
73
+ export type { TapGestureType as TapGesture } from 'react-native-gesture-handler/src/handlers/gestures/tapGesture';
74
+ export type { PanGestureType as PanGesture } from 'react-native-gesture-handler/src/handlers/gestures/panGesture';
75
+ export type { FlingGestureType as FlingGesture } from 'react-native-gesture-handler/src/handlers/gestures/flingGesture';
76
+ export type { LongPressGestureType as LongPressGesture } from 'react-native-gesture-handler/src/handlers/gestures/longPressGesture';
77
+ export type { PinchGestureType as PinchGesture } from 'react-native-gesture-handler/src/handlers/gestures/pinchGesture';
78
+ export type { RotationGestureType as RotationGesture } from 'react-native-gesture-handler/src/handlers/gestures/rotationGesture';
79
+ export type { ForceTouchGestureType as ForceTouchGesture } from 'react-native-gesture-handler/src/handlers/gestures/forceTouchGesture';
80
+ export type { NativeGestureType as NativeGesture } from 'react-native-gesture-handler/src/handlers/gestures/nativeGesture';
81
+ export type { ManualGestureType as ManualGesture } from 'react-native-gesture-handler/src/handlers/gestures/manualGesture';
82
+ export type {
83
+ ComposedGestureType as ComposedGesture,
84
+ RaceGestureType as RaceGesture,
85
+ SimultaneousGestureType as SimultaneousGesture,
86
+ ExclusiveGestureType as ExclusiveGesture,
87
+ } from 'react-native-gesture-handler/src/handlers/gestures/gestureComposition';
88
+ export type { GestureStateManagerType as GestureStateManager } from 'react-native-gesture-handler/src/handlers/gestures/gestureStateManager';
89
+ export { NativeViewGestureHandler } from 'react-native-gesture-handler/src/handlers/NativeViewGestureHandler';
90
+ export type {
91
+ RawButtonProps,
92
+ BaseButtonProps,
93
+ RectButtonProps,
94
+ BorderlessButtonProps,
95
+ } from 'react-native-gesture-handler/src/components/GestureButtons';
103
96
  export {
104
- // TouchableHighlight,
105
- // TouchableNativeFeedback,
97
+ RawButton,
98
+ BaseButton,
99
+ RectButton,
100
+ BorderlessButton,
101
+ PureNativeButton,
102
+ } from 'react-native-gesture-handler/src/components/GestureButtons';
103
+ export {
104
+ TouchableHighlight,
105
+ TouchableNativeFeedback,
106
106
  TouchableOpacity,
107
107
  TouchableWithoutFeedback,
108
108
  } from 'react-native-gesture-handler/src/components/touchables';
@@ -114,59 +114,59 @@ export {
114
114
  FlatList,
115
115
  RefreshControl,
116
116
  } from 'react-native-gesture-handler/src/components/GestureComponents';
117
- // export type {
118
- // //events
119
- // GestureHandlerGestureEvent,
120
- // GestureHandlerStateChangeEvent,
121
- // //event payloads
122
- // GestureHandlerGestureEventNativeEvent,
123
- // GestureHandlerStateChangeNativeEvent,
124
- // NativeViewGestureHandlerGestureEvent,
125
- // NativeViewGestureHandlerStateChangeEvent,
126
- // TapGestureHandlerGestureEvent,
127
- // TapGestureHandlerStateChangeEvent,
128
- // ForceTouchGestureHandlerGestureEvent,
129
- // ForceTouchGestureHandlerStateChangeEvent,
130
- // LongPressGestureHandlerGestureEvent,
131
- // LongPressGestureHandlerStateChangeEvent,
132
- // PanGestureHandlerGestureEvent,
133
- // PanGestureHandlerStateChangeEvent,
134
- // PinchGestureHandlerGestureEvent,
135
- // PinchGestureHandlerStateChangeEvent,
136
- // RotationGestureHandlerGestureEvent,
137
- // RotationGestureHandlerStateChangeEvent,
138
- // FlingGestureHandlerGestureEvent,
139
- // FlingGestureHandlerStateChangeEvent,
140
- // // handlers props
141
- // NativeViewGestureHandlerProperties,
142
- // TapGestureHandlerProperties,
143
- // LongPressGestureHandlerProperties,
144
- // PanGestureHandlerProperties,
145
- // PinchGestureHandlerProperties,
146
- // RotationGestureHandlerProperties,
147
- // FlingGestureHandlerProperties,
148
- // ForceTouchGestureHandlerProperties,
149
- // // buttons props
150
- // RawButtonProperties,
151
- // BaseButtonProperties,
152
- // RectButtonProperties,
153
- // BorderlessButtonProperties,
154
- // } from './handlers/gestureHandlerTypesCompat';
117
+ export type {
118
+ //events
119
+ GestureHandlerGestureEvent,
120
+ GestureHandlerStateChangeEvent,
121
+ //event payloads
122
+ GestureHandlerGestureEventNativeEvent,
123
+ GestureHandlerStateChangeNativeEvent,
124
+ NativeViewGestureHandlerGestureEvent,
125
+ NativeViewGestureHandlerStateChangeEvent,
126
+ TapGestureHandlerGestureEvent,
127
+ TapGestureHandlerStateChangeEvent,
128
+ ForceTouchGestureHandlerGestureEvent,
129
+ ForceTouchGestureHandlerStateChangeEvent,
130
+ LongPressGestureHandlerGestureEvent,
131
+ LongPressGestureHandlerStateChangeEvent,
132
+ PanGestureHandlerGestureEvent,
133
+ PanGestureHandlerStateChangeEvent,
134
+ PinchGestureHandlerGestureEvent,
135
+ PinchGestureHandlerStateChangeEvent,
136
+ RotationGestureHandlerGestureEvent,
137
+ RotationGestureHandlerStateChangeEvent,
138
+ FlingGestureHandlerGestureEvent,
139
+ FlingGestureHandlerStateChangeEvent,
140
+ // handlers props
141
+ NativeViewGestureHandlerProperties,
142
+ TapGestureHandlerProperties,
143
+ LongPressGestureHandlerProperties,
144
+ PanGestureHandlerProperties,
145
+ PinchGestureHandlerProperties,
146
+ RotationGestureHandlerProperties,
147
+ FlingGestureHandlerProperties,
148
+ ForceTouchGestureHandlerProperties,
149
+ // buttons props
150
+ RawButtonProperties,
151
+ BaseButtonProperties,
152
+ RectButtonProperties,
153
+ BorderlessButtonProperties,
154
+ } from 'react-native-gesture-handler/src/handlers/gestureHandlerTypesCompat';
155
155
 
156
- // export { default as Swipeable } from './components/Swipeable';
157
- // export type {
158
- // DrawerLayoutProps,
159
- // DrawerPosition,
160
- // DrawerState,
161
- // DrawerType,
162
- // DrawerLockMode,
163
- // DrawerKeyboardDismissMode,
164
- // } from './components/DrawerLayout';
165
- // export { default as DrawerLayout } from './components/DrawerLayout';
156
+ export { default as Swipeable } from 'react-native-gesture-handler/src/components/Swipeable';
157
+ export type {
158
+ DrawerLayoutProps,
159
+ DrawerPosition,
160
+ DrawerState,
161
+ DrawerType,
162
+ DrawerLockMode,
163
+ DrawerKeyboardDismissMode,
164
+ } from 'react-native-gesture-handler/src/components/DrawerLayout';
165
+ export { default as DrawerLayout } from 'react-native-gesture-handler/src/components/DrawerLayout';
166
166
 
167
- // export {
168
- // enableExperimentalWebImplementation,
169
- // enableLegacyWebImplementation,
170
- // } from './EnableNewWebImplementation';
167
+ export {
168
+ enableExperimentalWebImplementation,
169
+ enableLegacyWebImplementation,
170
+ } from 'react-native-gesture-handler/src/EnableNewWebImplementation';
171
171
 
172
172
  initialize();
@@ -1,72 +0,0 @@
1
- // #pragma once
2
- //
3
- // // This file was generated.
4
- //
5
- // #include "RNOH/Package.h"
6
- // #include "RNOH/ArkTSTurboModule.h"
7
- // #include "RNGestureHandlerModule.h"
8
- // #include "RNGestureHandlerButtonComponentDescriptor.h"
9
- // #include "RNGestureHandlerRootViewComponentDescriptor.h"
10
- // #include "RNGestureHandlerButtonJSIBinder.h"
11
- // #include "RNGestureHandlerRootViewJSIBinder.h"
12
- //
13
- // namespace rnoh {
14
- //
15
- // class RNOHGeneratedPackageTurboModuleFactoryDelegate : public TurboModuleFactoryDelegate {
16
- // public:
17
- // SharedTurboModule createTurboModule(Context ctx, const std::string &name) const override {
18
- // if (name == "RNGestureHandlerModule") {
19
- // return std::make_shared<RNGestureHandlerModule>(ctx, name);
20
- // }
21
- // return nullptr;
22
- // };
23
- // };
24
- //
25
- // class GeneratedEventEmitRequestHandler : public EventEmitRequestHandler {
26
- // public:
27
- // void handleEvent(Context const &ctx) override {
28
- // auto eventEmitter = ctx.shadowViewRegistry->getEventEmitter<facebook::react::EventEmitter>(ctx.tag);
29
- // if (eventEmitter == nullptr) {
30
- // return;
31
- // }
32
- //
33
- // std::vector<std::string> supportedEventNames = {
34
- // "directEvent",
35
- // "bubblingEvent",
36
- // };
37
- // if (std::find(supportedEventNames.begin(), supportedEventNames.end(), ctx.eventName) != supportedEventNames.end()) {
38
- // eventEmitter->dispatchEvent(ctx.eventName, ArkJS(ctx.env).getDynamic(ctx.payload));
39
- // }
40
- // }
41
- // };
42
- //
43
- // class RNOHGeneratedPackage : public Package {
44
- // public:
45
- // RNOHGeneratedPackage(Package::Context ctx) : Package(ctx){};
46
- //
47
- // std::unique_ptr<TurboModuleFactoryDelegate> createTurboModuleFactoryDelegate() override {
48
- // return std::make_unique<RNOHGeneratedPackageTurboModuleFactoryDelegate>();
49
- // }
50
- //
51
- // std::vector<facebook::react::ComponentDescriptorProvider> createComponentDescriptorProviders() override {
52
- // return {
53
- // facebook::react::concreteComponentDescriptorProvider<facebook::react::RNGestureHandlerButtonComponentDescriptor>(),
54
- // facebook::react::concreteComponentDescriptorProvider<facebook::react::RNGestureHandlerRootViewComponentDescriptor>(),
55
- // };
56
- // }
57
- //
58
- // ComponentJSIBinderByString createComponentJSIBinderByName() override {
59
- // return {
60
- // {"RNGestureHandlerButton", std::make_shared<RNGestureHandlerButtonJSIBinder>()},
61
- // {"RNGestureHandlerRootView", std::make_shared<RNGestureHandlerRootViewJSIBinder>()},
62
- // };
63
- // };
64
- //
65
- // EventEmitRequestHandlers createEventEmitRequestHandlers() override {
66
- // return {
67
- // std::make_shared<GeneratedEventEmitRequestHandler>(),
68
- // };
69
- // }
70
- // };
71
- //
72
- // } // namespace rnoh
@@ -1,123 +0,0 @@
1
- #pragma once
2
- #import "RNOH/CppComponentInstance.h"
3
- #import "RNOH/arkui/StackNode.h"
4
- #import "RNOH/arkui/ArkUINodeRegistry.h"
5
- #import "RNOH/arkui/NativeNodeApi.h"
6
- #import "RNGestureHandlerRootViewComponentDescriptor.h"
7
- #include "RNOH/arkui/TouchEventDispatcher.h"
8
-
9
- namespace rnoh {
10
- class RNGestureHandlerRootViewComponentInstance
11
- : public CppComponentInstance<facebook::react::RNGestureHandlerRootViewShadowNode>,
12
- public TouchEventHandler {
13
- private:
14
- StackNode m_stackNode;
15
-
16
- public:
17
- RNGestureHandlerRootViewComponentInstance(Context context) : CppComponentInstance(std::move(context)) {
18
- ArkUINodeRegistry::getInstance().registerTouchHandler(&m_stackNode, this);
19
- NativeNodeApi::getInstance()->registerNodeEvent(m_stackNode.getArkUINodeHandle(), NODE_TOUCH_EVENT, 0, nullptr);
20
- m_deps->arkTSChannel->postMessage("RNGH::ROOT_CREATED", m_tag);
21
- };
22
-
23
- ~RNGestureHandlerRootViewComponentInstance() {
24
- ArkUINodeRegistry::getInstance().unregisterTouchHandler(&m_stackNode);
25
- NativeNodeApi::getInstance()->unregisterNodeEvent(m_stackNode.getArkUINodeHandle(), NODE_TOUCH_EVENT);
26
- }
27
-
28
- StackNode &getLocalRootArkUINode() override { return m_stackNode; };
29
-
30
- void onTouchEvent(ArkUI_UIInputEvent *e) override {
31
- folly::dynamic payload = folly::dynamic::object;
32
- payload["action"] = static_cast<int>(OH_ArkUI_UIInputEvent_GetAction(e));
33
- payload["actionTouch"] = this->convertNodeTouchPointToDynamic(getActiveTouchFromEvent(e));
34
- folly::dynamic touchPoints = folly::dynamic::array();
35
- touchPoints.push_back(this->convertNodeTouchPointToDynamic(getActiveTouchFromEvent(e)));
36
- payload["touchPoints"] = touchPoints;
37
- payload["sourceType"] = static_cast<int>(OH_ArkUI_UIInputEvent_GetSourceType(e));
38
- payload["timestamp"] = OH_ArkUI_UIInputEvent_GetEventTime(e);
39
- payload["rootTag"] = m_tag;
40
- m_deps->arkTSChannel->postMessage("RNGH::TOUCH_EVENT", payload);
41
- }
42
-
43
- private:
44
- struct TouchPoint {
45
- int32_t contactAreaHeight;
46
- int32_t contactAreaWidth;
47
- int32_t id;
48
- int32_t nodeX;
49
- int32_t nodeY;
50
- int64_t pressedTime;
51
- double pressure;
52
- int32_t rawX;
53
- int32_t rawY;
54
- int32_t screenX;
55
- int32_t screenY;
56
- double tiltX;
57
- double tiltY;
58
- int32_t toolHeight;
59
- int32_t toolWidth;
60
- int32_t toolX;
61
- int32_t toolY;
62
- int32_t toolType;
63
- int32_t windowX;
64
- int32_t windowY;
65
- };
66
-
67
- TouchPoint getActiveTouchFromEvent(ArkUI_UIInputEvent *event) {
68
- TouchPoint actionTouch{};
69
- actionTouch = TouchPoint{
70
- .contactAreaHeight = int32_t(OH_ArkUI_PointerEvent_GetTouchAreaHeight(event, 0)),
71
- .contactAreaWidth = int32_t(OH_ArkUI_PointerEvent_GetTouchAreaWidth(event, 0)),
72
- .id = OH_ArkUI_PointerEvent_GetPointerId(event, 0),
73
- .nodeX = int32_t(OH_ArkUI_PointerEvent_GetX(event)),
74
- .nodeY = int32_t(OH_ArkUI_PointerEvent_GetY(event)),
75
- .pressure = double(OH_ArkUI_PointerEvent_GetPressure(event, 0)),
76
- .screenX = int32_t(OH_ArkUI_PointerEvent_GetDisplayX(event)),
77
- .screenY = int32_t(OH_ArkUI_PointerEvent_GetDisplayY(event)),
78
- .tiltX = double(OH_ArkUI_PointerEvent_GetTiltX(event, 0)),
79
- .tiltY = double(OH_ArkUI_PointerEvent_GetTiltX(event, 0)),
80
- .toolType = int32_t(OH_ArkUI_UIInputEvent_GetToolType(event)),
81
- .windowX = int32_t(OH_ArkUI_PointerEvent_GetWindowX(event)),
82
- .windowY = int32_t(OH_ArkUI_PointerEvent_GetWindowY(event)),
83
- };
84
- return actionTouch;
85
- }
86
-
87
- folly::dynamic convertNodeTouchPointToDynamic(TouchPoint actionTouch) {
88
- folly::dynamic result = folly::dynamic::object;
89
- result["contactAreaHeight"] = actionTouch.contactAreaHeight;
90
- result["contactAreaWidth"] = actionTouch.contactAreaWidth;
91
- result["id"] = actionTouch.id;
92
- result["nodeX"] = actionTouch.nodeX;
93
- result["nodeY"] = actionTouch.nodeY;
94
- // result["pressedTime"] = actionTouch.pressedTime;
95
- result["pressure"] = actionTouch.pressure;
96
- // result["rawX"] = actionTouch.rawX;
97
- // result["rawY"] = actionTouch.rawY;
98
- result["screenX"] = actionTouch.screenX;
99
- result["screenY"] = actionTouch.screenY;
100
- result["tiltX"] = actionTouch.tiltX;
101
- result["tiltY"] = actionTouch.tiltY;
102
- // result["toolHeight"] = actionTouch.toolHeight;
103
- // result["toolWidth"] = actionTouch.toolWidth;
104
- // result["toolX"] = actionTouch.toolX;
105
- // result["toolY"] = actionTouch.toolY;
106
- result["toolType"] = static_cast<int>(actionTouch.toolType);
107
- result["windowX"] = actionTouch.windowX;
108
- result["windowY"] = actionTouch.windowY;
109
- return result;
110
- }
111
-
112
- protected:
113
- void onChildInserted(ComponentInstance::Shared const &childComponentInstance, std::size_t index) override {
114
- CppComponentInstance::onChildInserted(childComponentInstance, index);
115
- m_stackNode.insertChild(childComponentInstance->getLocalRootArkUINode(), index);
116
- };
117
-
118
- void onChildRemoved(ComponentInstance::Shared const &childComponentInstance) override {
119
- CppComponentInstance::onChildRemoved(childComponentInstance);
120
- m_stackNode.removeChild(childComponentInstance->getLocalRootArkUINode());
121
- };
122
- };
123
- } // namespace rnoh