@react-native-ohos/react-native-amap3d 3.2.5-rc.1 → 3.2.6-rc.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 (34) hide show
  1. package/README.md +1 -1
  2. package/harmony/rn_amap3d/index.ets +2 -0
  3. package/harmony/rn_amap3d/obfuscation-rules.txt +5 -1
  4. package/harmony/rn_amap3d/oh-package.json5 +5 -4
  5. package/harmony/rn_amap3d/src/main/cpp/AMap3dEventEmitRequestHandler.h +105 -94
  6. package/harmony/rn_amap3d/src/main/cpp/AMapEventEmitters.cpp +22 -12
  7. package/harmony/rn_amap3d/src/main/cpp/AMapEventEmitters.h +4 -1
  8. package/harmony/rn_amap3d/src/main/cpp/MapViewJSIBinder.h +40 -20
  9. package/harmony/rn_amap3d/src/main/cpp/MapViewPackage.h +6 -3
  10. package/harmony/rn_amap3d/src/main/cpp/Props.cpp +5 -5
  11. package/harmony/rn_amap3d/src/main/cpp/Props.h +14 -11
  12. package/harmony/rn_amap3d/src/main/cpp/ShadowNodes.cpp +7 -7
  13. package/harmony/rn_amap3d/src/main/cpp/ShadowNodes.h +14 -14
  14. package/harmony/rn_amap3d/src/main/ets/AMap3DModule.ts +52 -4
  15. package/harmony/rn_amap3d/src/main/ets/AMap3DPackage.ets +119 -0
  16. package/harmony/rn_amap3d/src/main/ets/DownloadIcon.ets +172 -0
  17. package/harmony/rn_amap3d/src/main/ets/View/AMapCircle.ets +2 -2
  18. package/harmony/rn_amap3d/src/main/ets/View/AMapMarker.ets +2 -2
  19. package/harmony/rn_amap3d/src/main/ets/View/AMapPolygon.ets +4 -2
  20. package/harmony/rn_amap3d/src/main/ets/View/AMapPolyline.ets +2 -2
  21. package/harmony/rn_amap3d/src/main/ets/View/MapView.ets +138 -61
  22. package/harmony/rn_amap3d/{ts.ts → ts.ets} +1 -1
  23. package/harmony/rn_amap3d.har +0 -0
  24. package/lib/src/map-view.tsx +2 -2
  25. package/lib/src/{map-viewNativeComponent.ts → map-viewNativeComponent.tsx} +6 -11
  26. package/package.json +10 -4
  27. package/harmony/rn_amap3d/BuildProfile.ets +0 -6
  28. package/harmony/rn_amap3d/src/main/ets/AMap3DPackage.ts +0 -46
  29. /package/lib/src/{circleNativeComponent.ts → circleNativeComponent.tsx} +0 -0
  30. /package/lib/src/{heat-mapNativeComponent.ts → heat-mapNativeComponent.tsx} +0 -0
  31. /package/lib/src/{markerNativeComponent.ts → markerNativeComponent.tsx} +0 -0
  32. /package/lib/src/{multi-pointNativeComponent.ts → multi-pointNativeComponent.tsx} +0 -0
  33. /package/lib/src/{polygonNativeComponent.ts → polygonNativeComponent.tsx} +0 -0
  34. /package/lib/src/{polylineNativeComponent.ts → polylineNativeComponent.tsx} +0 -0
package/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  # @react-native-ohos/react-native-amap3d
2
- This project is based on [react-native-amap3d](https://github.com/qiuxiang/react-native-amap3d)
2
+ This project is based on [react-native-amap3d@3.2.4](https://github.com/qiuxiang/react-native-amap3d/tree/v3.2.4)
3
3
  ## Documentation
4
4
  [中文](https://gitee.com/react-native-oh-library/usage-docs/tree/master/zh-cn/react-native-amap3d.md)
5
5
 
@@ -22,9 +22,11 @@
22
22
  * SOFTWARE.
23
23
  */
24
24
 
25
+ import { AMap3DPackage as MapViewPackage } from './src/main/ets/AMap3DPackage'
25
26
  export * from "./src/main/ets/View/MapView";
26
27
  export * from "./src/main/ets/View/AMapCircle";
27
28
  export * from "./src/main/ets/View/AMapMarker";
28
29
  export * from "./src/main/ets/View/AMapPolygon";
29
30
  export * from "./src/main/ets/View/AMapPolyline";
30
31
  export * from "./ts";
32
+ export default MapViewPackage
@@ -15,4 +15,8 @@
15
15
 
16
16
  # Keep options:
17
17
  # -keep-property-name: specifies property names that you want to keep
18
- # -keep-global-name: specifies names that you want to keep in the global scope
18
+ # -keep-global-name: specifies names that you want to keep in the global scope
19
+ -enable-property-obfuscation
20
+ -enable-toplevel-obfuscation
21
+ -enable-filename-obfuscation
22
+ -enable-export-obfuscation
@@ -3,14 +3,15 @@
3
3
  "devDependencies": {
4
4
  },
5
5
  "name": "@react-native-ohos/react-native-amap3d",
6
- "version": "3.2.5-rc.1",
6
+ "version": "3.2.6-rc.2",
7
7
  "description": "Please describe the basic information.",
8
8
  "main": "index.ets",
9
9
  "author": "",
10
10
  "license": "Apache-2.0",
11
11
  "dependencies": {
12
- "@rnoh/react-native-openharmony": "file:../react_native_openharmony",
13
- "@amap/amap_lbs_map3d": "2.1.0",
14
- "@amap/amap_lbs_common": ">=1.0.0",
12
+ "@rnoh/react-native-openharmony": "0.72.82",
13
+ "@amap/amap_lbs_map3d": "2.2.1",
14
+ "@amap/amap_lbs_common": ">=1.2.0",
15
+ "@amap/amap_lbs_location": "^1.2.2"
15
16
  }
16
17
  }
@@ -21,6 +21,9 @@
21
21
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
22
  * SOFTWARE.
23
23
  */
24
+ #ifndef AMAP3D_EVENT_EMIT_REQUEST_HANDLER_h
25
+ #define AMAP3D_EVENT_EMIT_REQUEST_HANDLER_h
26
+
24
27
  #pragma once
25
28
  #include "RNOH/ArkJS.h"
26
29
  #include "RNOH/EventEmitRequestHandler.h"
@@ -43,7 +46,8 @@ enum class AMapViewEventType {
43
46
 
44
47
  enum class AMapMarkerEventType { RNC_ONPress = 0, RNC_ONDragStart = 2, RNC_ONDrag = 3, RNC_ONDragEnd = 4 };
45
48
 
46
- AMapViewEventType getAMapViewEventType(ArkJS &arkJs, napi_value eventObject) {
49
+ AMapViewEventType getAMapViewEventType(ArkJS &arkJs, napi_value eventObject)
50
+ {
47
51
  auto eventType = arkJs.getString(arkJs.getObjectProperty(eventObject, "type"));
48
52
  if (eventType == "onPress") {
49
53
  return AMapViewEventType::RNC_ONPress;
@@ -62,7 +66,8 @@ AMapViewEventType getAMapViewEventType(ArkJS &arkJs, napi_value eventObject) {
62
66
  }
63
67
  }
64
68
 
65
- AMapMarkerEventType getAMapMarkerEventType(ArkJS &arkJs, napi_value eventObject) {
69
+ AMapMarkerEventType getAMapMarkerEventType(ArkJS &arkJs, napi_value eventObject)
70
+ {
66
71
  auto eventType = arkJs.getString(arkJs.getObjectProperty(eventObject, "type"));
67
72
  if (eventType == "onPress") {
68
73
  return AMapMarkerEventType::RNC_ONPress;
@@ -79,7 +84,8 @@ AMapMarkerEventType getAMapMarkerEventType(ArkJS &arkJs, napi_value eventObject)
79
84
 
80
85
  class AMapViewEventEmitRequestHandler : public EventEmitRequestHandler {
81
86
  public:
82
- void handleEvent(EventEmitRequestHandler::Context const &ctx) override {
87
+ void handleEvent(EventEmitRequestHandler::Context const &ctx) override
88
+ {
83
89
  LOG(INFO) << "AMapViewEventEmitRequestHandler AMapViewEventType::RNC_ONLoad entry";
84
90
  if (ctx.eventName != "AMapView") {
85
91
  return;
@@ -91,75 +97,78 @@ public:
91
97
  }
92
98
  LOG(INFO) << "AMapViewEventEmitRequestHandler AMapViewEventType eventEmitter not nullptr";
93
99
  switch (getAMapViewEventType(arkJs, ctx.payload)) {
94
- case AMapViewEventType::RNC_ONPress: {
95
- RNOHNapiObject target = arkJs.getObject((arkJs.getObjectProperty(ctx.payload, "LatLng")));
96
- double latitude = (double)arkJs.getDouble(target.getProperty("latitude"));
97
- double longitude = (double)arkJs.getDouble(target.getProperty("longitude"));
98
- facebook::react::MapViewEventEmitter::onPressEvent event{latitude, longitude};
99
- eventEmitter->onPress(event);
100
- break;
101
- }
102
- case AMapViewEventType::RNC_ONPressPoi: {
103
- RNOHNapiObject Poi = arkJs.getObject((arkJs.getObjectProperty(ctx.payload, "Poi")));
104
- std::string id = (std::string)arkJs.getString(Poi.getProperty("poiid"));
105
- std::string name = (std::string)arkJs.getString(Poi.getProperty("name"));
106
- RNOHNapiObject latLngObject = arkJs.getObject(Poi.getProperty("coordinate"));
107
- double latitude = (double)arkJs.getDouble(latLngObject.getProperty("latitude"));
108
- double longitude = (double)arkJs.getDouble(latLngObject.getProperty("longitude"));
109
- facebook::react::MapViewEventEmitter::LatLng latLngC{latitude, longitude};
110
- facebook::react::MapViewEventEmitter::onMapPoiEvent event{id, name, latLngC};
111
- eventEmitter->onPressPoi(event);
112
- break;
113
- }
114
- case AMapViewEventType::RNC_ONLongPress: {
115
- RNOHNapiObject target = arkJs.getObject((arkJs.getObjectProperty(ctx.payload, "LatLng")));
116
- double latitude = (double)arkJs.getDouble(target.getProperty("latitude"));
117
- double longitude = (double)arkJs.getDouble(target.getProperty("longitude"));
118
- facebook::react::MapViewEventEmitter::onLongPressEvent event{latitude, longitude};
119
- eventEmitter->onLongPress(event);
120
- break;
121
- }
122
- case AMapViewEventType::RNC_ONCameraMove: {
123
- RNOHNapiObject cameraPosition = arkJs.getObject((arkJs.getObjectProperty(ctx.payload, "CameraPosition")));
124
- double zoom = (double)arkJs.getDouble(cameraPosition.getProperty("zoom"));
125
- double bearing = (double)arkJs.getDouble(cameraPosition.getProperty("bearing"));
126
- double tilt = (double)arkJs.getDouble(cameraPosition.getProperty("tilt"));
127
- RNOHNapiObject target = arkJs.getObject(cameraPosition.getProperty("target"));
128
- double latitude = (double)arkJs.getDouble(target.getProperty("latitude"));
129
- double longitude = (double)arkJs.getDouble(target.getProperty("longitude"));
130
- facebook::react::MapViewEventEmitter::LatLng targetL{latitude, longitude};
131
- facebook::react::MapViewEventEmitter::CameraPosition event{targetL, zoom, bearing, tilt};
132
- eventEmitter->onCameraMove(event);
133
- break;
134
- }
135
- case AMapViewEventType::RNC_ONCameraIdle: {
136
- RNOHNapiObject cameraPosition = arkJs.getObject((arkJs.getObjectProperty(ctx.payload, "CameraPosition")));
137
- double zoom = (double)arkJs.getDouble(cameraPosition.getProperty("zoom"));
138
- double bearing = (double)arkJs.getDouble(cameraPosition.getProperty("bearing"));
139
- double tilt = (double)arkJs.getDouble(cameraPosition.getProperty("tilt"));
140
- RNOHNapiObject target = arkJs.getObject(cameraPosition.getProperty("target"));
141
- double latitude = (double)arkJs.getDouble(target.getProperty("latitude"));
142
- double longitude = (double)arkJs.getDouble(target.getProperty("longitude"));
143
- facebook::react::MapViewEventEmitter::LatLng targetL{latitude, longitude};
144
- facebook::react::MapViewEventEmitter::CameraPosition event{targetL, zoom, bearing, tilt};
145
- eventEmitter->onCameraIdle(event);
146
- break;
147
- }
148
- case AMapViewEventType::RNC_ONLoad: {
149
- LOG(INFO) << "AMapViewEventEmitRequestHandler AMapViewEventType::RNC_ONLoad entry";
150
- facebook::react::MapViewEventEmitter::onLoadEvent event{};
151
- eventEmitter->onLoad(event);
152
- break;
153
- }
154
- default:
155
- break;
156
- }
100
+ case AMapViewEventType::RNC_ONPress: {
101
+ RNOHNapiObject target = arkJs.getObject((arkJs.getObjectProperty(ctx.payload, "LatLng")));
102
+ double latitude = (double)arkJs.getDouble(target.getProperty("latitude"));
103
+ double longitude = (double)arkJs.getDouble(target.getProperty("longitude"));
104
+ facebook::react::MapViewEventEmitter::onPressEvent event{latitude, longitude};
105
+ eventEmitter->onPress(event);
106
+ break;
107
+ }
108
+ case AMapViewEventType::RNC_ONPressPoi: {
109
+ RNOHNapiObject Poi = arkJs.getObject((arkJs.getObjectProperty(ctx.payload, "Poi")));
110
+ std::string id = (std::string)arkJs.getString(Poi.getProperty("poiid"));
111
+ std::string name = (std::string)arkJs.getString(Poi.getProperty("name"));
112
+ RNOHNapiObject latLngObject = arkJs.getObject(Poi.getProperty("coordinate"));
113
+ double latitude = (double)arkJs.getDouble(latLngObject.getProperty("latitude"));
114
+ double longitude = (double)arkJs.getDouble(latLngObject.getProperty("longitude"));
115
+ facebook::react::MapViewEventEmitter::LatLng latLngC{latitude, longitude};
116
+ facebook::react::MapViewEventEmitter::onMapPoiEvent event{id, name, latLngC};
117
+ eventEmitter->onPressPoi(event);
118
+ break;
119
+ }
120
+ case AMapViewEventType::RNC_ONLongPress: {
121
+ RNOHNapiObject target = arkJs.getObject((arkJs.getObjectProperty(ctx.payload, "LatLng")));
122
+ double latitude = (double)arkJs.getDouble(target.getProperty("latitude"));
123
+ double longitude = (double)arkJs.getDouble(target.getProperty("longitude"));
124
+ facebook::react::MapViewEventEmitter::onLongPressEvent event{latitude, longitude};
125
+ eventEmitter->onLongPress(event);
126
+ break;
127
+ }
128
+ case AMapViewEventType::RNC_ONCameraMove: {
129
+ RNOHNapiObject cameraPosition = arkJs.getObject((arkJs.getObjectProperty(ctx.payload,
130
+ "CameraPosition")));
131
+ double zoom = (double)arkJs.getDouble(cameraPosition.getProperty("zoom"));
132
+ double bearing = (double)arkJs.getDouble(cameraPosition.getProperty("bearing"));
133
+ double tilt = (double)arkJs.getDouble(cameraPosition.getProperty("tilt"));
134
+ RNOHNapiObject target = arkJs.getObject(cameraPosition.getProperty("target"));
135
+ double latitude = (double)arkJs.getDouble(target.getProperty("latitude"));
136
+ double longitude = (double)arkJs.getDouble(target.getProperty("longitude"));
137
+ facebook::react::MapViewEventEmitter::LatLng targetL{latitude, longitude};
138
+ facebook::react::MapViewEventEmitter::CameraPosition event{targetL, zoom, bearing, tilt};
139
+ eventEmitter->onCameraMove(event);
140
+ break;
141
+ }
142
+ case AMapViewEventType::RNC_ONCameraIdle: {
143
+ RNOHNapiObject cameraPosition = arkJs.getObject((arkJs.getObjectProperty(ctx.payload,
144
+ "CameraPosition")));
145
+ double zoom = (double)arkJs.getDouble(cameraPosition.getProperty("zoom"));
146
+ double bearing = (double)arkJs.getDouble(cameraPosition.getProperty("bearing"));
147
+ double tilt = (double)arkJs.getDouble(cameraPosition.getProperty("tilt"));
148
+ RNOHNapiObject target = arkJs.getObject(cameraPosition.getProperty("target"));
149
+ double latitude = (double)arkJs.getDouble(target.getProperty("latitude"));
150
+ double longitude = (double)arkJs.getDouble(target.getProperty("longitude"));
151
+ facebook::react::MapViewEventEmitter::LatLng targetL{latitude, longitude};
152
+ facebook::react::MapViewEventEmitter::CameraPosition event{targetL, zoom, bearing, tilt};
153
+ eventEmitter->onCameraIdle(event);
154
+ break;
155
+ }
156
+ case AMapViewEventType::RNC_ONLoad: {
157
+ LOG(INFO) << "AMapViewEventEmitRequestHandler AMapViewEventType::RNC_ONLoad entry";
158
+ facebook::react::MapViewEventEmitter::onLoadEvent event{};
159
+ eventEmitter->onLoad(event);
160
+ break;
161
+ }
162
+ default:
163
+ break;
164
+ }
157
165
  };
158
166
  };
159
167
 
160
168
  class AMapMarkerEventEmitRequestHandler : public EventEmitRequestHandler {
161
169
  public:
162
- void handleEvent(EventEmitRequestHandler::Context const &ctx) override {
170
+ void handleEvent(EventEmitRequestHandler::Context const &ctx) override
171
+ {
163
172
  if (ctx.eventName != "AMapMarker") {
164
173
  return;
165
174
  }
@@ -170,38 +179,39 @@ public:
170
179
  }
171
180
 
172
181
  switch (getAMapMarkerEventType(arkJs, ctx.payload)) {
173
- case AMapMarkerEventType::RNC_ONPress: {
174
- facebook::react::MarkerEventEmitter::onPressEvent event{};
175
- eventEmitter->onPress(event);
176
- break;
177
- }
178
- case AMapMarkerEventType::RNC_ONDragStart: {
179
- facebook::react::MarkerEventEmitter::onDragStartEvent event{};
180
- eventEmitter->onDragStart(event);
181
- break;
182
- }
183
- case AMapMarkerEventType::RNC_ONDrag: {
184
- facebook::react::MarkerEventEmitter::onDragEvent event{};
185
- eventEmitter->onDrag(event);
186
- break;
187
- }
188
- case AMapMarkerEventType::RNC_ONDragEnd: {
189
- RNOHNapiObject target = arkJs.getObject((arkJs.getObjectProperty(ctx.payload, "LatLng")));
190
- double latitude = (double)arkJs.getDouble(target.getProperty("latitude"));
191
- double longitude = (double)arkJs.getDouble(target.getProperty("longitude"));
192
- facebook::react::MarkerEventEmitter::onDragEndEvent event{latitude, longitude};
193
- eventEmitter->onDragEnd(event);
194
- break;
195
- }
196
- default:
197
- break;
182
+ case AMapMarkerEventType::RNC_ONPress: {
183
+ facebook::react::MarkerEventEmitter::onPressEvent event{};
184
+ eventEmitter->onPress(event);
185
+ break;
186
+ }
187
+ case AMapMarkerEventType::RNC_ONDragStart: {
188
+ facebook::react::MarkerEventEmitter::onDragStartEvent event{};
189
+ eventEmitter->onDragStart(event);
190
+ break;
191
+ }
192
+ case AMapMarkerEventType::RNC_ONDrag: {
193
+ facebook::react::MarkerEventEmitter::onDragEvent event{};
194
+ eventEmitter->onDrag(event);
195
+ break;
196
+ }
197
+ case AMapMarkerEventType::RNC_ONDragEnd: {
198
+ RNOHNapiObject target = arkJs.getObject((arkJs.getObjectProperty(ctx.payload, "LatLng")));
199
+ double latitude = (double)arkJs.getDouble(target.getProperty("latitude"));
200
+ double longitude = (double)arkJs.getDouble(target.getProperty("longitude"));
201
+ facebook::react::MarkerEventEmitter::onDragEndEvent event{latitude, longitude};
202
+ eventEmitter->onDragEnd(event);
203
+ break;
204
+ }
205
+ default:
206
+ break;
198
207
  }
199
208
  };
200
209
  };
201
210
 
202
211
  class AMapPolylineEventEmitRequestHandler : public EventEmitRequestHandler {
203
212
  public:
204
- void handleEvent(EventEmitRequestHandler::Context const &ctx) override {
213
+ void handleEvent(EventEmitRequestHandler::Context const &ctx) override
214
+ {
205
215
  if (ctx.eventName != "AMapPolyline") {
206
216
  return;
207
217
  }
@@ -215,4 +225,5 @@ public:
215
225
  };
216
226
  };
217
227
 
218
- } // namespace rnoh
228
+ } // namespace rnoh
229
+ #endif
@@ -25,8 +25,8 @@
25
25
 
26
26
  namespace facebook {
27
27
  namespace react {
28
- void MapViewEventEmitter::onPress(struct onPressEvent event) const {
29
-
28
+ void MapViewEventEmitter::onPress(struct onPressEvent event) const
29
+ {
30
30
  dispatchEvent("Press", [event = std::move(event)](jsi::Runtime &runtime) {
31
31
  auto payload = jsi::Object(runtime);
32
32
  payload.setProperty(runtime, "latitude", event.latitude);
@@ -34,7 +34,8 @@ void MapViewEventEmitter::onPress(struct onPressEvent event) const {
34
34
  return payload;
35
35
  });
36
36
  }
37
- void MapViewEventEmitter::onPressPoi(struct onMapPoiEvent event) const {
37
+ void MapViewEventEmitter::onPressPoi(struct onMapPoiEvent event) const
38
+ {
38
39
  dispatchEvent("PressPoi", [event = std::move(event)](jsi::Runtime &runtime) {
39
40
  auto payload = jsi::Object(runtime);
40
41
  payload.setProperty(runtime, "id", event.id);
@@ -47,7 +48,8 @@ void MapViewEventEmitter::onPressPoi(struct onMapPoiEvent event) const {
47
48
  });
48
49
  }
49
50
 
50
- void MapViewEventEmitter::onLongPress(struct onLongPressEvent event) const {
51
+ void MapViewEventEmitter::onLongPress(struct onLongPressEvent event) const
52
+ {
51
53
  dispatchEvent("LongPress", [event = std::move(event)](jsi::Runtime &runtime) {
52
54
  auto payload = jsi::Object(runtime);
53
55
  payload.setProperty(runtime, "latitude", event.latitude);
@@ -56,7 +58,8 @@ void MapViewEventEmitter::onLongPress(struct onLongPressEvent event) const {
56
58
  });
57
59
  }
58
60
 
59
- void MapViewEventEmitter::onCameraMove(struct CameraPosition event) const {
61
+ void MapViewEventEmitter::onCameraMove(struct CameraPosition event) const
62
+ {
60
63
  dispatchEvent("CameraMove", [event = std::move(event)](jsi::Runtime &runtime) {
61
64
  auto payload = jsi::Object(runtime);
62
65
  payload.setProperty(runtime, "zoom", event.zoom);
@@ -70,7 +73,8 @@ void MapViewEventEmitter::onCameraMove(struct CameraPosition event) const {
70
73
  });
71
74
  }
72
75
 
73
- void MapViewEventEmitter::onCameraIdle(struct CameraPosition event) const {
76
+ void MapViewEventEmitter::onCameraIdle(struct CameraPosition event) const
77
+ {
74
78
  dispatchEvent("CameraIdle", [event = std::move(event)](jsi::Runtime &runtime) {
75
79
  auto payload = jsi::Object(runtime);
76
80
  payload.setProperty(runtime, "zoom", event.zoom);
@@ -84,7 +88,8 @@ void MapViewEventEmitter::onCameraIdle(struct CameraPosition event) const {
84
88
  });
85
89
  }
86
90
 
87
- void MapViewEventEmitter::onLoad(struct onLoadEvent event) const {
91
+ void MapViewEventEmitter::onLoad(struct onLoadEvent event) const
92
+ {
88
93
  dispatchEvent("Load", [event = std::move(event)](jsi::Runtime &runtime) {
89
94
  auto payload = jsi::Object(runtime);
90
95
  return payload;
@@ -92,28 +97,32 @@ void MapViewEventEmitter::onLoad(struct onLoadEvent event) const {
92
97
  }
93
98
 
94
99
 
95
- void MarkerEventEmitter::onPress(struct onPressEvent event) const {
100
+ void MarkerEventEmitter::onPress(struct onPressEvent event) const
101
+ {
96
102
  dispatchEvent("Press", [event = std::move(event)](jsi::Runtime &runtime) {
97
103
  auto payload = jsi::Object(runtime);
98
104
  return payload;
99
105
  });
100
106
  }
101
107
 
102
- void MarkerEventEmitter::onDragStart(struct onDragStartEvent event) const {
108
+ void MarkerEventEmitter::onDragStart(struct onDragStartEvent event) const
109
+ {
103
110
  dispatchEvent("DragStart", [event = std::move(event)](jsi::Runtime &runtime) {
104
111
  auto payload = jsi::Object(runtime);
105
112
  return payload;
106
113
  });
107
114
  }
108
115
 
109
- void MarkerEventEmitter::onDrag(struct onDragEvent event) const {
116
+ void MarkerEventEmitter::onDrag(struct onDragEvent event) const
117
+ {
110
118
  dispatchEvent("Drag", [event = std::move(event)](jsi::Runtime &runtime) {
111
119
  auto payload = jsi::Object(runtime);
112
120
  return payload;
113
121
  });
114
122
  }
115
123
 
116
- void MarkerEventEmitter::onDragEnd(struct onDragEndEvent event) const {
124
+ void MarkerEventEmitter::onDragEnd(struct onDragEndEvent event) const
125
+ {
117
126
  dispatchEvent("DragEnd", [event = std::move(event)](jsi::Runtime &runtime) {
118
127
  auto payload = jsi::Object(runtime);
119
128
  payload.setProperty(runtime, "latitude", event.latitude);
@@ -122,7 +131,8 @@ void MarkerEventEmitter::onDragEnd(struct onDragEndEvent event) const {
122
131
  });
123
132
  }
124
133
 
125
- void PolylineEventEmitter::onPress(struct onPressEvent event) const {
134
+ void PolylineEventEmitter::onPress(struct onPressEvent event) const
135
+ {
126
136
  dispatchEvent("Press", [event = std::move(event)](jsi::Runtime &runtime) {
127
137
  auto payload = jsi::Object(runtime);
128
138
  return payload;
@@ -21,6 +21,8 @@
21
21
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
22
  * SOFTWARE.
23
23
  */
24
+ #ifndef AMAPEVENTEMITTERS_H
25
+ #define AMAPEVENTEMITTERS_H
24
26
 
25
27
  #pragma once
26
28
  #include "react/renderer/components/view/ViewEventEmitter.h"
@@ -108,4 +110,5 @@ public:
108
110
  using ViewEventEmitter::ViewEventEmitter;
109
111
  };
110
112
  } // namespace react
111
- } // namespace facebook
113
+ } // namespace facebook
114
+ #endif
@@ -4,7 +4,8 @@
4
4
 
5
5
  namespace rnoh {
6
6
  class MapViewJSIBinder : public ViewComponentJSIBinder {
7
- facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override {
7
+ facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override
8
+ {
8
9
  auto object = ViewComponentJSIBinder::createNativeProps(rt);
9
10
  object.setProperty(rt, "mapType", "number");
10
11
  object.setProperty(rt, "initialCameraPosition", "Object");
@@ -30,7 +31,8 @@ class MapViewJSIBinder : public ViewComponentJSIBinder {
30
31
  {
31
32
  return facebook::jsi::Object(rt);
32
33
  }
33
- facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override {
34
+ facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override
35
+ {
34
36
  facebook::jsi::Object events(rt);
35
37
  events.setProperty(rt, "topPress", createDirectEvent(rt, "onPress"));
36
38
  events.setProperty(rt, "topPressPoi", createDirectEvent(rt, "onPressPoi"));
@@ -43,7 +45,8 @@ class MapViewJSIBinder : public ViewComponentJSIBinder {
43
45
  };
44
46
 
45
47
  class CircleJSIBinder : public ViewComponentJSIBinder {
46
- facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override {
48
+ facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override
49
+ {
47
50
  auto object = ViewComponentJSIBinder::createNativeProps(rt);
48
51
  object.setProperty(rt, "center", "Object");
49
52
  object.setProperty(rt, "strokeColor", "number");
@@ -53,50 +56,59 @@ class CircleJSIBinder : public ViewComponentJSIBinder {
53
56
  object.setProperty(rt, "zIndex", "number");
54
57
  return object;
55
58
  }
56
- facebook::jsi::Object createBubblingEventTypes(facebook::jsi::Runtime &rt) override {
59
+ facebook::jsi::Object createBubblingEventTypes(facebook::jsi::Runtime &rt) override
60
+ {
57
61
  return facebook::jsi::Object(rt);
58
62
  }
59
- facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override {
63
+ facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override
64
+ {
60
65
  facebook::jsi::Object events(rt);
61
66
  return events;
62
67
  }
63
68
  };
64
69
 
65
70
  class HeatMapJSIBinder : public ViewComponentJSIBinder {
66
- facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override {
71
+ facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override
72
+ {
67
73
  auto object = ViewComponentJSIBinder::createNativeProps(rt);
68
74
  object.setProperty(rt, "data", "array");
69
75
  object.setProperty(rt, "radius", "number");
70
76
  object.setProperty(rt, "opacity", "number");
71
77
  return object;
72
78
  }
73
- facebook::jsi::Object createBubblingEventTypes(facebook::jsi::Runtime &rt) override {
79
+ facebook::jsi::Object createBubblingEventTypes(facebook::jsi::Runtime &rt) override
80
+ {
74
81
  return facebook::jsi::Object(rt);
75
82
  }
76
- facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override {
83
+ facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override
84
+ {
77
85
  facebook::jsi::Object events(rt);
78
86
  return events;
79
87
  }
80
88
  };
81
89
 
82
90
  class MultipointJSIBinder : public ViewComponentJSIBinder {
83
- facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override {
91
+ facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override
92
+ {
84
93
  auto object = ViewComponentJSIBinder::createNativeProps(rt);
85
94
  object.setProperty(rt, "items", "array");
86
95
  object.setProperty(rt, "icon", "Object");
87
96
  return object;
88
97
  }
89
- facebook::jsi::Object createBubblingEventTypes(facebook::jsi::Runtime &rt) override {
98
+ facebook::jsi::Object createBubblingEventTypes(facebook::jsi::Runtime &rt) override
99
+ {
90
100
  return facebook::jsi::Object(rt);
91
101
  }
92
- facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override {
102
+ facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override
103
+ {
93
104
  facebook::jsi::Object events(rt);
94
105
  return events;
95
106
  }
96
107
  };
97
108
 
98
109
  class MarkerJSIBinder : public ViewComponentJSIBinder {
99
- facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override {
110
+ facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override
111
+ {
100
112
  auto object = ViewComponentJSIBinder::createNativeProps(rt);
101
113
  object.setProperty(rt, "position", "Object");
102
114
  object.setProperty(rt, "opacity", "number");
@@ -109,10 +121,12 @@ class MarkerJSIBinder : public ViewComponentJSIBinder {
109
121
  return object;
110
122
  }
111
123
 
112
- facebook::jsi::Object createBubblingEventTypes(facebook::jsi::Runtime &rt) override {
124
+ facebook::jsi::Object createBubblingEventTypes(facebook::jsi::Runtime &rt) override
125
+ {
113
126
  return facebook::jsi::Object(rt);
114
127
  }
115
- facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override {
128
+ facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override
129
+ {
116
130
  facebook::jsi::Object events(rt);
117
131
  events.setProperty(rt, "topPress", createDirectEvent(rt, "onPress"));
118
132
  events.setProperty(rt, "topDragStart", createDirectEvent(rt, "onDragStart"));
@@ -123,7 +137,8 @@ class MarkerJSIBinder : public ViewComponentJSIBinder {
123
137
  };
124
138
 
125
139
  class PolygonJSIBinder : public ViewComponentJSIBinder {
126
- facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override {
140
+ facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override
141
+ {
127
142
  auto object = ViewComponentJSIBinder::createNativeProps(rt);
128
143
  object.setProperty(rt, "points", "array");
129
144
  object.setProperty(rt, "strokeWidth", "number");
@@ -132,17 +147,20 @@ class PolygonJSIBinder : public ViewComponentJSIBinder {
132
147
  object.setProperty(rt, "zIndex", "number");
133
148
  return object;
134
149
  }
135
- facebook::jsi::Object createBubblingEventTypes(facebook::jsi::Runtime &rt) override {
150
+ facebook::jsi::Object createBubblingEventTypes(facebook::jsi::Runtime &rt) override
151
+ {
136
152
  return facebook::jsi::Object(rt);
137
153
  }
138
- facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override {
154
+ facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override
155
+ {
139
156
  facebook::jsi::Object events(rt);
140
157
  return events;
141
158
  }
142
159
  };
143
160
 
144
161
  class PolylineJSIBinder : public ViewComponentJSIBinder {
145
- facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override {
162
+ facebook::jsi::Object createNativeProps(facebook::jsi::Runtime &rt) override
163
+ {
146
164
  auto object = ViewComponentJSIBinder::createNativeProps(rt);
147
165
  object.setProperty(rt, "points", "array");
148
166
  object.setProperty(rt, "dotted", "boolean");
@@ -154,10 +172,12 @@ class PolylineJSIBinder : public ViewComponentJSIBinder {
154
172
  object.setProperty(rt, "width", "number");
155
173
  return object;
156
174
  }
157
- facebook::jsi::Object createBubblingEventTypes(facebook::jsi::Runtime &rt) override {
175
+ facebook::jsi::Object createBubblingEventTypes(facebook::jsi::Runtime &rt) override
176
+ {
158
177
  return facebook::jsi::Object(rt);
159
178
  }
160
- facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override {
179
+ facebook::jsi::Object createDirectEventTypes(facebook::jsi::Runtime &rt) override
180
+ {
161
181
  facebook::jsi::Object events(rt);
162
182
  events.setProperty(rt, "topPress", createDirectEvent(rt, "onPress"));
163
183
  return events;
@@ -12,7 +12,8 @@ namespace rnoh {
12
12
  class MapViewPackage : public Package {
13
13
  public:
14
14
  MapViewPackage(Package::Context ctx) : Package(ctx) {}
15
- std::vector<facebook::react::ComponentDescriptorProvider> createComponentDescriptorProviders() override {
15
+ std::vector<facebook::react::ComponentDescriptorProvider> createComponentDescriptorProviders() override
16
+ {
16
17
  return {facebook::react::concreteComponentDescriptorProvider<facebook::react::MapViewComponentDescriptor>(),
17
18
  facebook::react::concreteComponentDescriptorProvider<facebook::react::HeatMapComponentDescriptor>(),
18
19
  facebook::react::concreteComponentDescriptorProvider<facebook::react::CircleComponentDescriptor>(),
@@ -22,7 +23,8 @@ public:
22
23
  facebook::react::concreteComponentDescriptorProvider<facebook::react::MarkerComponentDescriptor>()};
23
24
  }
24
25
 
25
- ComponentJSIBinderByString createComponentJSIBinderByName() override {
26
+ ComponentJSIBinderByString createComponentJSIBinderByName() override
27
+ {
26
28
  return {{"AMapView", std::make_shared<MapViewJSIBinder>()},
27
29
  {"AMapHeatMap", std::make_shared<HeatMapJSIBinder>()},
28
30
  {"AMapCircle", std::make_shared<CircleJSIBinder>()},
@@ -31,7 +33,8 @@ public:
31
33
  {"AMapMultiPoint", std::make_shared<MultipointJSIBinder>()},
32
34
  {"AMapMarker", std::make_shared<MarkerJSIBinder>()}};
33
35
  }
34
- EventEmitRequestHandlers createEventEmitRequestHandlers() override {
36
+ EventEmitRequestHandlers createEventEmitRequestHandlers() override
37
+ {
35
38
  return {
36
39
  {std::make_shared<AMapViewEventEmitRequestHandler>()},
37
40
  {std::make_shared<AMapMarkerEventEmitRequestHandler>()},
@@ -56,18 +56,18 @@ MarkerProps::MarkerProps(const PropsParserContext &context, const MarkerProps &s
56
56
  : ViewProps(context, sourceProps, rawProps),
57
57
  draggable(convertRawProp(context, rawProps, "draggable", sourceProps.draggable, false)),
58
58
  flat(convertRawProp(context, rawProps, "flat", sourceProps.flat, false)),
59
- anchor(convertRawProp(context, rawProps, "anchor", sourceProps.anchor, {0,0})),
60
- centerOffset(convertRawProp(context, rawProps, "centerOffset", sourceProps.centerOffset, {0,0})),
61
- position(convertRawProp(context, rawProps, "position", sourceProps.position, {0,0})),
59
+ anchor(convertRawProp(context, rawProps, "anchor", sourceProps.anchor, {0, 0})),
60
+ centerOffset(convertRawProp(context, rawProps, "centerOffset", sourceProps.centerOffset, {0, 0})),
61
+ position(convertRawProp(context, rawProps, "position", sourceProps.position, {0, 0})),
62
62
  levelIndex(convertRawProp(context, rawProps, "zIndex", sourceProps.levelIndex, 0)),
63
- icon(convertRawProp(context, rawProps, "icon", sourceProps.icon,{"/0", 0, 0, 0, "/0", "/0", "/0"})) {}
63
+ icon(convertRawProp(context, rawProps, "icon", sourceProps.icon, {"/0", 0, 0, 0, "/0", "/0", "/0"})) {}
64
64
 
65
65
  PolylineProps::PolylineProps(const PropsParserContext &context, const PolylineProps &sourceProps,
66
66
  const RawProps &rawProps)
67
67
  : ViewProps(context, sourceProps, rawProps),
68
68
  width(convertRawProp(context, rawProps, "width", sourceProps.width, 1.f)),
69
69
  color(convertRawProp(context, rawProps, "color", sourceProps.color, 0x000000)),
70
- colors(convertRawProp(context, rawProps, "colors", sourceProps.colors, {0xFF5566,0x112233,0x114477})),
70
+ colors(convertRawProp(context, rawProps, "colors", sourceProps.colors, {0xFF5566, 0x112233, 0x114477})),
71
71
  levelIndex(convertRawProp(context, rawProps, "zIndex", sourceProps.levelIndex, 0.f)),
72
72
  geodesic(convertRawProp(context, rawProps, "geodesic", sourceProps.geodesic, false)),
73
73
  dotted(convertRawProp(context, rawProps, "dotted", sourceProps.dotted, false)),