react-native-map4d-map-dtqg 0.1.1 → 0.1.3

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 (229) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +133 -88
  3. package/android/build.gradle +60 -60
  4. package/android/src/main/AndroidManifest.xml +4 -4
  5. package/android/src/main/java/com/reactnativemap4dmap/ImageUtils.java +87 -87
  6. package/android/src/main/java/com/reactnativemap4dmap/Map4dMapModule.java +298 -298
  7. package/android/src/main/java/com/reactnativemap4dmap/Map4dMapPackage.java +35 -35
  8. package/android/src/main/java/com/reactnativemap4dmap/Map4dMapViewManager.java +31 -31
  9. package/android/src/main/java/com/reactnativemap4dmap/RMFBuilding.java +167 -167
  10. package/android/src/main/java/com/reactnativemap4dmap/RMFBuildingManager.java +121 -121
  11. package/android/src/main/java/com/reactnativemap4dmap/RMFCircle.java +105 -105
  12. package/android/src/main/java/com/reactnativemap4dmap/RMFCircleManager.java +121 -121
  13. package/android/src/main/java/com/reactnativemap4dmap/RMFDirectionsRenderer.java +502 -502
  14. package/android/src/main/java/com/reactnativemap4dmap/RMFDirectionsRendererManager.java +143 -143
  15. package/android/src/main/java/com/reactnativemap4dmap/RMFFeature.java +17 -17
  16. package/android/src/main/java/com/reactnativemap4dmap/RMFMapView.java +1172 -1172
  17. package/android/src/main/java/com/reactnativemap4dmap/RMFMapViewManager.java +231 -226
  18. package/android/src/main/java/com/reactnativemap4dmap/RMFMarker.java +412 -412
  19. package/android/src/main/java/com/reactnativemap4dmap/RMFMarkerManager.java +211 -211
  20. package/android/src/main/java/com/reactnativemap4dmap/RMFPOI.java +222 -222
  21. package/android/src/main/java/com/reactnativemap4dmap/RMFPOIManager.java +119 -119
  22. package/android/src/main/java/com/reactnativemap4dmap/RMFPolygon.java +172 -172
  23. package/android/src/main/java/com/reactnativemap4dmap/RMFPolygonManager.java +147 -147
  24. package/android/src/main/java/com/reactnativemap4dmap/RMFPolyline.java +146 -146
  25. package/android/src/main/java/com/reactnativemap4dmap/RMFPolylineManager.java +137 -137
  26. package/android/src/main/java/com/reactnativemap4dmap/RMFTileOverlay.java +95 -95
  27. package/android/src/main/java/com/reactnativemap4dmap/RMFTileOverlayManager.java +64 -64
  28. package/android/src/main/java/com/reactnativemap4dmap/SizeReportingShadowNode.java +31 -31
  29. package/android/src/main/java/com/reactnativemap4dmap/ViewAttacherGroup.java +31 -31
  30. package/android/src/main/java/com/reactnativemap4dmap/ViewChangesTracker.java +70 -70
  31. package/android/src/main/java/vn/map4d/map/annotations/RMFBitmapDescriptor.java +9 -9
  32. package/ios/Map4dMap.h +7 -7
  33. package/ios/Map4dMap.m +14 -14
  34. package/ios/Map4dMap.xcodeproj/project.pbxproj +2 -2
  35. package/ios/Map4dMapViewManager.m +34 -34
  36. package/ios/RCTConvert+Map4dMap.h +33 -33
  37. package/ios/RCTConvert+Map4dMap.m +112 -112
  38. package/ios/RMFCircle.h +37 -37
  39. package/ios/RMFCircle.m +100 -100
  40. package/ios/RMFCircleManager.h +18 -18
  41. package/ios/RMFCircleManager.m +155 -155
  42. package/ios/RMFCircleMap4d.h +23 -23
  43. package/ios/RMFCircleMap4d.m +13 -13
  44. package/ios/RMFCoordinate.h +22 -22
  45. package/ios/RMFCoordinate.m +13 -13
  46. package/ios/RMFDirectionsMarkerOptions.h +24 -24
  47. package/ios/RMFDirectionsMarkerOptions.m +23 -23
  48. package/ios/RMFDirectionsRenderer.h +47 -47
  49. package/ios/RMFDirectionsRenderer.m +182 -182
  50. package/ios/RMFDirectionsRendererManager.h +17 -17
  51. package/ios/RMFDirectionsRendererManager.m +84 -84
  52. package/ios/RMFDirectionsRendererMap4d.h +21 -21
  53. package/ios/RMFDirectionsRendererMap4d.m +12 -12
  54. package/ios/RMFDummyView.h +6 -6
  55. package/ios/RMFDummyView.m +12 -12
  56. package/ios/RMFEventResponse.h +39 -39
  57. package/ios/RMFEventResponse.m +98 -98
  58. package/ios/RMFIcon.h +24 -24
  59. package/ios/RMFIcon.m +35 -35
  60. package/ios/RMFMapView.h +84 -84
  61. package/ios/RMFMapView.m +376 -376
  62. package/ios/RMFMapViewManager.h +17 -17
  63. package/ios/RMFMapViewManager.m +509 -493
  64. package/ios/RMFMarker.h +57 -57
  65. package/ios/RMFMarker.m +267 -267
  66. package/ios/RMFMarkerManager.h +17 -17
  67. package/ios/RMFMarkerManager.m +156 -156
  68. package/ios/RMFMarkerMap4d.h +19 -19
  69. package/ios/RMFMarkerMap4d.m +13 -13
  70. package/ios/RMFPOI.h +38 -38
  71. package/ios/RMFPOI.m +123 -123
  72. package/ios/RMFPOIManager.h +18 -18
  73. package/ios/RMFPOIManager.m +168 -168
  74. package/ios/RMFPOIMap4d.h +22 -22
  75. package/ios/RMFPOIMap4d.m +12 -12
  76. package/ios/RMFPolygon.h +41 -41
  77. package/ios/RMFPolygon.m +106 -106
  78. package/ios/RMFPolygonManager.h +18 -18
  79. package/ios/RMFPolygonManager.m +141 -141
  80. package/ios/RMFPolygonMap4d.h +23 -23
  81. package/ios/RMFPolygonMap4d.m +15 -15
  82. package/ios/RMFPolyline.h +38 -38
  83. package/ios/RMFPolyline.m +101 -101
  84. package/ios/RMFPolylineManager.h +18 -18
  85. package/ios/RMFPolylineManager.m +139 -139
  86. package/ios/RMFPolylineMap4d.h +22 -22
  87. package/ios/RMFPolylineMap4d.m +15 -15
  88. package/ios/building/RMFBuilding.h +41 -41
  89. package/ios/building/RMFBuilding.m +104 -104
  90. package/ios/building/RMFBuildingManager.h +19 -19
  91. package/ios/building/RMFBuildingManager.m +133 -133
  92. package/ios/building/RMFBuildingMap4d.h +23 -23
  93. package/ios/building/RMFBuildingMap4d.m +15 -15
  94. package/ios/overlays/RMFTileOverlay.h +36 -36
  95. package/ios/overlays/RMFTileOverlay.m +64 -64
  96. package/ios/overlays/RMFTileOverlayManager.h +17 -17
  97. package/ios/overlays/RMFTileOverlayManager.m +27 -27
  98. package/lib/commonjs/components/MFBanDoSo.js +109 -0
  99. package/lib/commonjs/components/MFBanDoSo.js.map +1 -0
  100. package/lib/commonjs/components/MFBuilding.js +26 -26
  101. package/lib/commonjs/components/MFBuilding.js.map +1 -1
  102. package/lib/commonjs/components/MFCircle.js +20 -20
  103. package/lib/commonjs/components/MFCircle.js.map +1 -1
  104. package/lib/commonjs/components/MFDirectionsRenderer.js +32 -32
  105. package/lib/commonjs/components/MFDirectionsRenderer.js.map +1 -1
  106. package/lib/commonjs/components/MFMapView.js +89 -70
  107. package/lib/commonjs/components/MFMapView.js.map +1 -1
  108. package/lib/commonjs/components/MFMarker.js +35 -35
  109. package/lib/commonjs/components/MFMarker.js.map +1 -1
  110. package/lib/commonjs/components/MFPOI.js +20 -20
  111. package/lib/commonjs/components/MFPOI.js.map +1 -1
  112. package/lib/commonjs/components/MFPolygon.js +22 -22
  113. package/lib/commonjs/components/MFPolygon.js.map +1 -1
  114. package/lib/commonjs/components/MFPolyline.js +18 -18
  115. package/lib/commonjs/components/MFPolyline.js.map +1 -1
  116. package/lib/commonjs/components/MFTileOverlay.js +9 -9
  117. package/lib/commonjs/components/MFTileOverlay.js.map +1 -1
  118. package/lib/commonjs/components/Map4dMapView.js.map +1 -1
  119. package/lib/commonjs/components/extends/AreaFocusManager.js +205 -0
  120. package/lib/commonjs/components/extends/AreaFocusManager.js.map +1 -0
  121. package/lib/commonjs/components/extends/AreaFocuser.js +21 -259
  122. package/lib/commonjs/components/extends/AreaFocuser.js.map +1 -1
  123. package/lib/commonjs/components/extends/BoundHelper.js +36 -0
  124. package/lib/commonjs/components/extends/BoundHelper.js.map +1 -0
  125. package/lib/commonjs/components/extends/area/AreaFocusAreas.js +167 -0
  126. package/lib/commonjs/components/extends/area/AreaFocusAreas.js.map +1 -0
  127. package/lib/commonjs/components/extends/area/AreaFocusGeometryUtils.js +164 -0
  128. package/lib/commonjs/components/extends/area/AreaFocusGeometryUtils.js.map +1 -0
  129. package/lib/commonjs/components/extends/area/AreaFocusSession.js +100 -0
  130. package/lib/commonjs/components/extends/area/AreaFocusSession.js.map +1 -0
  131. package/lib/commonjs/components/extends/area/AreaFocusTypes.js +40 -0
  132. package/lib/commonjs/components/extends/area/AreaFocusTypes.js.map +1 -0
  133. package/lib/commonjs/components/internal/DefaultRoadmapStyle.js +2288 -0
  134. package/lib/commonjs/components/internal/DefaultRoadmapStyle.js.map +1 -0
  135. package/lib/commonjs/components/internal/GeojsonStyleUtils.js +139 -0
  136. package/lib/commonjs/components/internal/GeojsonStyleUtils.js.map +1 -0
  137. package/lib/commonjs/index.js +8 -0
  138. package/lib/commonjs/index.js.map +1 -1
  139. package/lib/module/components/MFBanDoSo.js +92 -0
  140. package/lib/module/components/MFBanDoSo.js.map +1 -0
  141. package/lib/module/components/MFBuilding.js +26 -26
  142. package/lib/module/components/MFBuilding.js.map +1 -1
  143. package/lib/module/components/MFCircle.js +20 -20
  144. package/lib/module/components/MFCircle.js.map +1 -1
  145. package/lib/module/components/MFDirectionsRenderer.js +32 -32
  146. package/lib/module/components/MFDirectionsRenderer.js.map +1 -1
  147. package/lib/module/components/MFMapView.js +88 -70
  148. package/lib/module/components/MFMapView.js.map +1 -1
  149. package/lib/module/components/MFMarker.js +35 -35
  150. package/lib/module/components/MFMarker.js.map +1 -1
  151. package/lib/module/components/MFPOI.js +20 -20
  152. package/lib/module/components/MFPOI.js.map +1 -1
  153. package/lib/module/components/MFPolygon.js +22 -22
  154. package/lib/module/components/MFPolygon.js.map +1 -1
  155. package/lib/module/components/MFPolyline.js +18 -18
  156. package/lib/module/components/MFPolyline.js.map +1 -1
  157. package/lib/module/components/MFTileOverlay.js +9 -9
  158. package/lib/module/components/MFTileOverlay.js.map +1 -1
  159. package/lib/module/components/Map4dMapView.js.map +1 -1
  160. package/lib/module/components/extends/AreaFocusManager.js +193 -0
  161. package/lib/module/components/extends/AreaFocusManager.js.map +1 -0
  162. package/lib/module/components/extends/AreaFocuser.js +21 -259
  163. package/lib/module/components/extends/AreaFocuser.js.map +1 -1
  164. package/lib/module/components/extends/BoundHelper.js +29 -0
  165. package/lib/module/components/extends/BoundHelper.js.map +1 -0
  166. package/lib/module/components/extends/area/AreaFocusAreas.js +156 -0
  167. package/lib/module/components/extends/area/AreaFocusAreas.js.map +1 -0
  168. package/lib/module/components/extends/area/AreaFocusGeometryUtils.js +153 -0
  169. package/lib/module/components/extends/area/AreaFocusGeometryUtils.js.map +1 -0
  170. package/lib/module/components/extends/area/AreaFocusSession.js +93 -0
  171. package/lib/module/components/extends/area/AreaFocusSession.js.map +1 -0
  172. package/lib/module/components/extends/area/AreaFocusTypes.js +33 -0
  173. package/lib/module/components/extends/area/AreaFocusTypes.js.map +1 -0
  174. package/lib/module/components/internal/DefaultRoadmapStyle.js +2281 -0
  175. package/lib/module/components/internal/DefaultRoadmapStyle.js.map +1 -0
  176. package/lib/module/components/internal/GeojsonStyleUtils.js +130 -0
  177. package/lib/module/components/internal/GeojsonStyleUtils.js.map +1 -0
  178. package/lib/module/index.js +2 -1
  179. package/lib/module/index.js.map +1 -1
  180. package/lib/typescript/components/Map4dMapView.d.ts +7 -7
  181. package/package.json +152 -152
  182. package/react-native-map4d-map.podspec +20 -20
  183. package/src/components/MFBanDoSo.js +124 -0
  184. package/src/components/MFBuilding.js +187 -187
  185. package/src/components/MFCircle.js +173 -173
  186. package/src/components/MFDirectionsRenderer.js +237 -237
  187. package/src/components/MFMapView.js +464 -447
  188. package/src/components/MFMarker.js +246 -246
  189. package/src/components/MFPOI.js +184 -184
  190. package/src/components/MFPolygon.js +186 -186
  191. package/src/components/MFPolyline.js +172 -172
  192. package/src/components/MFTileOverlay.js +45 -45
  193. package/src/components/Map4dMapView.tsx +26 -26
  194. package/src/components/extends/AreaFocusManager.js +196 -0
  195. package/src/components/extends/AreaFocuser.js +61 -338
  196. package/src/components/extends/BoundHelper.js +32 -0
  197. package/src/components/extends/area/AreaFocusAreas.js +164 -0
  198. package/src/components/extends/area/AreaFocusGeometryUtils.js +164 -0
  199. package/src/components/extends/area/AreaFocusSession.js +100 -0
  200. package/src/components/extends/area/AreaFocusTypes.js +36 -0
  201. package/src/components/internal/DefaultRoadmapStyle.js +3365 -0
  202. package/src/components/internal/GeojsonStyleUtils.js +143 -0
  203. package/src/index.js +25 -23
  204. package/android/.gradle/8.9/checksums/checksums.lock +0 -0
  205. package/android/.gradle/8.9/checksums/md5-checksums.bin +0 -0
  206. package/android/.gradle/8.9/checksums/sha1-checksums.bin +0 -0
  207. package/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
  208. package/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
  209. package/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
  210. package/android/.gradle/8.9/gc.properties +0 -0
  211. package/android/.gradle/9.0-milestone-1/checksums/checksums.lock +0 -0
  212. package/android/.gradle/9.0-milestone-1/checksums/md5-checksums.bin +0 -0
  213. package/android/.gradle/9.0-milestone-1/checksums/sha1-checksums.bin +0 -0
  214. package/android/.gradle/9.0-milestone-1/fileChanges/last-build.bin +0 -0
  215. package/android/.gradle/9.0-milestone-1/fileHashes/fileHashes.lock +0 -0
  216. package/android/.gradle/9.0-milestone-1/gc.properties +0 -0
  217. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  218. package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
  219. package/android/.gradle/config.properties +0 -2
  220. package/android/.gradle/vcs-1/gc.properties +0 -0
  221. package/android/.idea/AndroidProjectSystem.xml +0 -6
  222. package/android/.idea/caches/deviceStreaming.xml +0 -1570
  223. package/android/.idea/copilot.data.migration.ask2agent.xml +0 -6
  224. package/android/.idea/gradle.xml +0 -12
  225. package/android/.idea/migrations.xml +0 -10
  226. package/android/.idea/misc.xml +0 -10
  227. package/android/.idea/runConfigurations.xml +0 -17
  228. package/android/.idea/vcs.xml +0 -6
  229. package/android/local.properties +0 -8
@@ -1,188 +1,188 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import {ViewPropTypes} from 'deprecated-react-native-prop-types';
4
- import {
5
- requireNativeComponent,
6
- Platform,
7
- NativeModules,
8
- findNodeHandle
9
- } from 'react-native';
10
-
11
- // if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)
12
- const viewPropTypes = ViewPropTypes || View.propTypes;
13
-
14
- const propTypes = {
15
- ...viewPropTypes,
16
-
17
- /**
18
- * The name of the building.
19
- */
20
- name: PropTypes.string,
21
-
22
- /**
23
- * The position of the building
24
- */
25
- coordinate: PropTypes.shape({
26
- /**
27
- * Position for the building.
28
- */
29
- latitude: PropTypes.number.isRequired,
30
- longitude: PropTypes.number.isRequired,
31
- }),
32
-
33
- /**
34
- * The model URL for the building.
35
- */
36
- modelUrl: PropTypes.string,
37
-
38
- /**
39
- * The texture URL for the building.
40
- */
41
- textureUrl: PropTypes.string,
42
-
43
- /**
44
- * The scale of the building.
45
- */
46
- scale: PropTypes.number,
47
-
48
- /**
49
- * The bearing of the building.
50
- */
51
- bearing: PropTypes.number,
52
-
53
- /**
54
- * The elevation of the building.
55
- */
56
- elevation: PropTypes.number,
57
-
58
- /**
59
- * Is the building selectable by the user ?
60
- */
61
- selected: PropTypes.bool,
62
-
63
- /**
64
- * touchable
65
- */
66
- touchable: PropTypes.bool,
67
-
68
- /**
69
- * visible
70
- */
71
- visible: PropTypes.bool,
72
-
73
- /**
74
- * userData
75
- */
76
- userData:PropTypes.object,
77
-
78
- /**
79
- * Callback that is called when the user presses on the building
80
- */
81
- onPress: PropTypes.func,
82
- };
83
-
84
-
85
- class MFBuilding extends React.Component {
86
- constructor(props) {
87
- super(props);
88
- this._onPress = this._onPress.bind(this)
89
- this._ref = this._ref.bind(this)
90
- }
91
-
92
- _onPress(event) {
93
- event.stopPropagation();
94
- if (this.props.onPress) {
95
- this.props.onPress(event);
96
- }
97
- }
98
-
99
- _ref(ref) {
100
- this.building = ref;
101
- }
102
-
103
- setName(name) {
104
- this._runCommand("setName", [name])
105
- }
106
-
107
- setScale(scale) {
108
- this._runCommand("setScale", [scale])
109
- }
110
-
111
- setBearing(bearing) {
112
- this._runCommand("setBearing", [bearing])
113
- }
114
-
115
- setElevation(elevation) {
116
- this._runCommand("setElevation", [elevation])
117
- }
118
-
119
- setSelected(selected) {
120
- this._runCommand("setSelected", [selected])
121
- }
122
-
123
- setTouchable(touchable) {
124
- this._runCommand("setTouchable", [touchable])
125
- }
126
-
127
- setVisible(visible) {
128
- this._runCommand("setVisible", [visible])
129
- }
130
-
131
- setUserData(userData) {
132
- this._runCommand("setUserData", [userData])
133
- }
134
-
135
- _getHandle() {
136
- return findNodeHandle(this.building);
137
- }
138
-
139
- _runCommand(name, args) {
140
- switch (Platform.OS) {
141
- case 'android':
142
- NativeModules.UIManager.dispatchViewManagerCommand(
143
- this._getHandle(),
144
- this._uiManagerCommand(name),
145
- args
146
- );
147
- break;
148
-
149
- case 'ios':
150
- this._mapManagerCommand(name)(this._getHandle(), ...args);
151
- break;
152
-
153
- default:
154
- break;
155
- }
156
- }
157
-
158
- _uiManagerCommand(name) {
159
- const UIManager = NativeModules.UIManager;
160
- const componentName = "RMFBuilding";
161
-
162
- if (!UIManager.getViewManagerConfig) {
163
- // RN < 0.58
164
- return UIManager[componentName].Commands[name];
165
- }
166
-
167
- // RN >= 0.58
168
- return UIManager.getViewManagerConfig(componentName).Commands[name];
169
- }
170
-
171
- _mapManagerCommand(name) {
172
- return NativeModules[`RMFBuilding`][name];
173
- }
174
-
175
- render() {
176
- return <RMFBuilding
177
- {...this.props}
178
- ref={this._ref}
179
- onPress={this._onPress}
180
- />;
181
- }
182
- }
183
-
184
- MFBuilding.propTypes = propTypes;
185
-
186
- var RMFBuilding = requireNativeComponent(`RMFBuilding`, MFBuilding);
187
-
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import {ViewPropTypes} from 'deprecated-react-native-prop-types';
4
+ import {
5
+ requireNativeComponent,
6
+ Platform,
7
+ NativeModules,
8
+ findNodeHandle
9
+ } from 'react-native';
10
+
11
+ // if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)
12
+ const viewPropTypes = ViewPropTypes || View.propTypes;
13
+
14
+ const propTypes = {
15
+ ...viewPropTypes,
16
+
17
+ /**
18
+ * The name of the building.
19
+ */
20
+ name: PropTypes.string,
21
+
22
+ /**
23
+ * The position of the building
24
+ */
25
+ coordinate: PropTypes.shape({
26
+ /**
27
+ * Position for the building.
28
+ */
29
+ latitude: PropTypes.number.isRequired,
30
+ longitude: PropTypes.number.isRequired,
31
+ }),
32
+
33
+ /**
34
+ * The model URL for the building.
35
+ */
36
+ modelUrl: PropTypes.string,
37
+
38
+ /**
39
+ * The texture URL for the building.
40
+ */
41
+ textureUrl: PropTypes.string,
42
+
43
+ /**
44
+ * The scale of the building.
45
+ */
46
+ scale: PropTypes.number,
47
+
48
+ /**
49
+ * The bearing of the building.
50
+ */
51
+ bearing: PropTypes.number,
52
+
53
+ /**
54
+ * The elevation of the building.
55
+ */
56
+ elevation: PropTypes.number,
57
+
58
+ /**
59
+ * Is the building selectable by the user ?
60
+ */
61
+ selected: PropTypes.bool,
62
+
63
+ /**
64
+ * touchable
65
+ */
66
+ touchable: PropTypes.bool,
67
+
68
+ /**
69
+ * visible
70
+ */
71
+ visible: PropTypes.bool,
72
+
73
+ /**
74
+ * userData
75
+ */
76
+ userData:PropTypes.object,
77
+
78
+ /**
79
+ * Callback that is called when the user presses on the building
80
+ */
81
+ onPress: PropTypes.func,
82
+ };
83
+
84
+
85
+ class MFBuilding extends React.Component {
86
+ constructor(props) {
87
+ super(props);
88
+ this._onPress = this._onPress.bind(this)
89
+ this._ref = this._ref.bind(this)
90
+ }
91
+
92
+ _onPress(event) {
93
+ event.stopPropagation();
94
+ if (this.props.onPress) {
95
+ this.props.onPress(event);
96
+ }
97
+ }
98
+
99
+ _ref(ref) {
100
+ this.building = ref;
101
+ }
102
+
103
+ setName(name) {
104
+ this._runCommand("setName", [name])
105
+ }
106
+
107
+ setScale(scale) {
108
+ this._runCommand("setScale", [scale])
109
+ }
110
+
111
+ setBearing(bearing) {
112
+ this._runCommand("setBearing", [bearing])
113
+ }
114
+
115
+ setElevation(elevation) {
116
+ this._runCommand("setElevation", [elevation])
117
+ }
118
+
119
+ setSelected(selected) {
120
+ this._runCommand("setSelected", [selected])
121
+ }
122
+
123
+ setTouchable(touchable) {
124
+ this._runCommand("setTouchable", [touchable])
125
+ }
126
+
127
+ setVisible(visible) {
128
+ this._runCommand("setVisible", [visible])
129
+ }
130
+
131
+ setUserData(userData) {
132
+ this._runCommand("setUserData", [userData])
133
+ }
134
+
135
+ _getHandle() {
136
+ return findNodeHandle(this.building);
137
+ }
138
+
139
+ _runCommand(name, args) {
140
+ switch (Platform.OS) {
141
+ case 'android':
142
+ NativeModules.UIManager.dispatchViewManagerCommand(
143
+ this._getHandle(),
144
+ this._uiManagerCommand(name),
145
+ args
146
+ );
147
+ break;
148
+
149
+ case 'ios':
150
+ this._mapManagerCommand(name)(this._getHandle(), ...args);
151
+ break;
152
+
153
+ default:
154
+ break;
155
+ }
156
+ }
157
+
158
+ _uiManagerCommand(name) {
159
+ const UIManager = NativeModules.UIManager;
160
+ const componentName = "RMFBuilding";
161
+
162
+ if (!UIManager.getViewManagerConfig) {
163
+ // RN < 0.58
164
+ return UIManager[componentName].Commands[name];
165
+ }
166
+
167
+ // RN >= 0.58
168
+ return UIManager.getViewManagerConfig(componentName).Commands[name];
169
+ }
170
+
171
+ _mapManagerCommand(name) {
172
+ return NativeModules[`RMFBuilding`][name];
173
+ }
174
+
175
+ render() {
176
+ return <RMFBuilding
177
+ {...this.props}
178
+ ref={this._ref}
179
+ onPress={this._onPress}
180
+ />;
181
+ }
182
+ }
183
+
184
+ MFBuilding.propTypes = propTypes;
185
+
186
+ var RMFBuilding = requireNativeComponent(`RMFBuilding`, MFBuilding);
187
+
188
188
  export { MFBuilding }