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

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 (321) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +191 -133
  3. package/android/.gradle/8.9/checksums/checksums.lock +0 -0
  4. package/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
  5. package/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
  6. package/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
  7. package/android/.gradle/8.9/gc.properties +0 -0
  8. package/android/.gradle/9.2.0/checksums/checksums.lock +0 -0
  9. package/android/.gradle/9.2.0/fileChanges/last-build.bin +0 -0
  10. package/android/.gradle/9.2.0/fileHashes/fileHashes.bin +0 -0
  11. package/android/.gradle/9.2.0/fileHashes/fileHashes.lock +0 -0
  12. package/android/.gradle/9.2.0/gc.properties +0 -0
  13. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  14. package/android/.gradle/buildOutputCleanup/cache.properties +2 -0
  15. package/android/.gradle/vcs-1/gc.properties +0 -0
  16. package/android/build.gradle +60 -60
  17. package/android/src/main/AndroidManifest.xml +4 -4
  18. package/android/src/main/java/com/reactnativemap4dmap/ImageUtils.java +87 -87
  19. package/android/src/main/java/com/reactnativemap4dmap/Map4dMapModule.java +310 -298
  20. package/android/src/main/java/com/reactnativemap4dmap/Map4dMapPackage.java +35 -35
  21. package/android/src/main/java/com/reactnativemap4dmap/Map4dMapViewManager.java +31 -31
  22. package/android/src/main/java/com/reactnativemap4dmap/RMFBuilding.java +167 -167
  23. package/android/src/main/java/com/reactnativemap4dmap/RMFBuildingManager.java +121 -121
  24. package/android/src/main/java/com/reactnativemap4dmap/RMFCircle.java +105 -105
  25. package/android/src/main/java/com/reactnativemap4dmap/RMFCircleManager.java +121 -121
  26. package/android/src/main/java/com/reactnativemap4dmap/RMFDirectionsRenderer.java +502 -502
  27. package/android/src/main/java/com/reactnativemap4dmap/RMFDirectionsRendererManager.java +143 -143
  28. package/android/src/main/java/com/reactnativemap4dmap/RMFFeature.java +17 -17
  29. package/android/src/main/java/com/reactnativemap4dmap/RMFMapView.java +1172 -1172
  30. package/android/src/main/java/com/reactnativemap4dmap/RMFMapViewManager.java +231 -231
  31. package/android/src/main/java/com/reactnativemap4dmap/RMFMarker.java +412 -412
  32. package/android/src/main/java/com/reactnativemap4dmap/RMFMarkerManager.java +211 -211
  33. package/android/src/main/java/com/reactnativemap4dmap/RMFPOI.java +222 -222
  34. package/android/src/main/java/com/reactnativemap4dmap/RMFPOIManager.java +119 -119
  35. package/android/src/main/java/com/reactnativemap4dmap/RMFPolygon.java +172 -172
  36. package/android/src/main/java/com/reactnativemap4dmap/RMFPolygonManager.java +147 -147
  37. package/android/src/main/java/com/reactnativemap4dmap/RMFPolyline.java +146 -146
  38. package/android/src/main/java/com/reactnativemap4dmap/RMFPolylineManager.java +137 -137
  39. package/android/src/main/java/com/reactnativemap4dmap/RMFTileOverlay.java +95 -95
  40. package/android/src/main/java/com/reactnativemap4dmap/RMFTileOverlayManager.java +64 -64
  41. package/android/src/main/java/com/reactnativemap4dmap/SizeReportingShadowNode.java +31 -31
  42. package/android/src/main/java/com/reactnativemap4dmap/ViewAttacherGroup.java +31 -31
  43. package/android/src/main/java/com/reactnativemap4dmap/ViewChangesTracker.java +70 -70
  44. package/android/src/main/java/vn/map4d/map/annotations/RMFBitmapDescriptor.java +9 -9
  45. package/ios/Map4dMap.h +16 -7
  46. package/ios/Map4dMap.m +119 -14
  47. package/ios/Map4dMapTurbo.mm +16 -0
  48. package/ios/RCTConvert+Map4dMap.h +33 -33
  49. package/ios/RCTConvert+Map4dMap.m +112 -112
  50. package/ios/RMFCircle.h +37 -37
  51. package/ios/RMFCircle.m +100 -100
  52. package/ios/RMFCircleManager.h +18 -18
  53. package/ios/RMFCircleManager.m +127 -155
  54. package/ios/RMFCircleMap4d.h +23 -23
  55. package/ios/RMFCircleMap4d.m +13 -13
  56. package/ios/RMFCoordinate.h +22 -22
  57. package/ios/RMFCoordinate.m +13 -13
  58. package/ios/RMFDirectionsMarkerOptions.h +24 -24
  59. package/ios/RMFDirectionsMarkerOptions.m +23 -23
  60. package/ios/RMFDirectionsRenderer.h +47 -47
  61. package/ios/RMFDirectionsRenderer.m +182 -182
  62. package/ios/RMFDirectionsRendererManager.h +17 -17
  63. package/ios/RMFDirectionsRendererManager.m +86 -84
  64. package/ios/RMFDirectionsRendererMap4d.h +21 -21
  65. package/ios/RMFDirectionsRendererMap4d.m +12 -12
  66. package/ios/RMFDummyView.h +6 -6
  67. package/ios/RMFDummyView.m +12 -12
  68. package/ios/RMFEventResponse.h +39 -39
  69. package/ios/RMFEventResponse.m +98 -98
  70. package/ios/RMFIcon.h +24 -24
  71. package/ios/RMFIcon.m +35 -35
  72. package/ios/RMFMapView.h +84 -84
  73. package/ios/RMFMapView.m +376 -376
  74. package/ios/RMFMapViewManager.h +17 -17
  75. package/ios/RMFMapViewManager.m +424 -509
  76. package/ios/RMFMarker.h +57 -57
  77. package/ios/RMFMarker.m +267 -267
  78. package/ios/RMFMarkerManager.h +17 -17
  79. package/ios/RMFMarkerManager.m +128 -156
  80. package/ios/RMFMarkerMap4d.h +19 -19
  81. package/ios/RMFMarkerMap4d.m +13 -13
  82. package/ios/RMFPOI.h +38 -38
  83. package/ios/RMFPOI.m +123 -123
  84. package/ios/RMFPOIManager.h +18 -18
  85. package/ios/RMFPOIManager.m +134 -168
  86. package/ios/RMFPOIMap4d.h +22 -22
  87. package/ios/RMFPOIMap4d.m +12 -12
  88. package/ios/RMFPolygon.h +41 -41
  89. package/ios/RMFPolygon.m +106 -106
  90. package/ios/RMFPolygonManager.h +18 -18
  91. package/ios/RMFPolygonManager.m +119 -141
  92. package/ios/RMFPolygonMap4d.h +23 -23
  93. package/ios/RMFPolygonMap4d.m +15 -15
  94. package/ios/RMFPolyline.h +38 -38
  95. package/ios/RMFPolyline.m +101 -101
  96. package/ios/RMFPolylineManager.h +18 -18
  97. package/ios/RMFPolylineManager.m +117 -139
  98. package/ios/RMFPolylineMap4d.h +22 -22
  99. package/ios/RMFPolylineMap4d.m +15 -15
  100. package/ios/building/RMFBuilding.h +41 -41
  101. package/ios/building/RMFBuilding.m +104 -104
  102. package/ios/building/RMFBuildingManager.h +19 -19
  103. package/ios/building/RMFBuildingManager.m +105 -133
  104. package/ios/building/RMFBuildingMap4d.h +23 -23
  105. package/ios/building/RMFBuildingMap4d.m +15 -15
  106. package/ios/overlays/RMFTileOverlay.h +36 -36
  107. package/ios/overlays/RMFTileOverlay.m +64 -64
  108. package/ios/overlays/RMFTileOverlayManager.h +17 -17
  109. package/ios/overlays/RMFTileOverlayManager.m +27 -27
  110. package/lib/commonjs/components/MFBanDoSo/constants.js +27 -0
  111. package/lib/commonjs/components/MFBanDoSo/constants.js.map +1 -0
  112. package/lib/commonjs/components/MFBanDoSo/helpers.js +200 -0
  113. package/lib/commonjs/components/MFBanDoSo/helpers.js.map +1 -0
  114. package/lib/commonjs/components/MFBanDoSo/propTypes.js +18 -0
  115. package/lib/commonjs/components/MFBanDoSo/propTypes.js.map +1 -0
  116. package/lib/commonjs/components/MFBanDoSo/styles.js +328 -0
  117. package/lib/commonjs/components/MFBanDoSo/styles.js.map +1 -0
  118. package/lib/commonjs/components/MFBanDoSo/ui.js +220 -0
  119. package/lib/commonjs/components/MFBanDoSo/ui.js.map +1 -0
  120. package/lib/commonjs/components/MFBanDoSo.js +190 -73
  121. package/lib/commonjs/components/MFBanDoSo.js.map +1 -1
  122. package/lib/commonjs/components/MFBuilding.js +41 -98
  123. package/lib/commonjs/components/MFBuilding.js.map +1 -1
  124. package/lib/commonjs/components/MFCircle.js +40 -90
  125. package/lib/commonjs/components/MFCircle.js.map +1 -1
  126. package/lib/commonjs/components/MFDirectionsRenderer.js +47 -107
  127. package/lib/commonjs/components/MFDirectionsRenderer.js.map +1 -1
  128. package/lib/commonjs/components/MFMapView.js +119 -199
  129. package/lib/commonjs/components/MFMapView.js.map +1 -1
  130. package/lib/commonjs/components/MFMarker.js +50 -118
  131. package/lib/commonjs/components/MFMarker.js.map +1 -1
  132. package/lib/commonjs/components/MFPOI.js +37 -94
  133. package/lib/commonjs/components/MFPOI.js.map +1 -1
  134. package/lib/commonjs/components/MFPolygon.js +37 -91
  135. package/lib/commonjs/components/MFPolygon.js.map +1 -1
  136. package/lib/commonjs/components/MFPolyline.js +35 -87
  137. package/lib/commonjs/components/MFPolyline.js.map +1 -1
  138. package/lib/commonjs/components/MFTileOverlay.js +16 -24
  139. package/lib/commonjs/components/MFTileOverlay.js.map +1 -1
  140. package/lib/commonjs/components/Map4dMapView.js +1 -4
  141. package/lib/commonjs/components/Map4dMapView.js.map +1 -1
  142. package/lib/commonjs/components/extends/AreaFocusManager.js +20 -54
  143. package/lib/commonjs/components/extends/AreaFocusManager.js.map +1 -1
  144. package/lib/commonjs/components/extends/AreaFocuser.js +3 -19
  145. package/lib/commonjs/components/extends/AreaFocuser.js.map +1 -1
  146. package/lib/commonjs/components/extends/BoundHelper.js +0 -6
  147. package/lib/commonjs/components/extends/BoundHelper.js.map +1 -1
  148. package/lib/commonjs/components/extends/area/AreaFocusAreas.js +0 -37
  149. package/lib/commonjs/components/extends/area/AreaFocusAreas.js.map +1 -1
  150. package/lib/commonjs/components/extends/area/AreaFocusGeometryUtils.js +1 -35
  151. package/lib/commonjs/components/extends/area/AreaFocusGeometryUtils.js.map +1 -1
  152. package/lib/commonjs/components/extends/area/AreaFocusSession.js +0 -18
  153. package/lib/commonjs/components/extends/area/AreaFocusSession.js.map +1 -1
  154. package/lib/commonjs/components/extends/area/AreaFocusTypes.js +20 -21
  155. package/lib/commonjs/components/extends/area/AreaFocusTypes.js.map +1 -1
  156. package/lib/commonjs/components/internal/DefaultRoadmapStyle.js +1 -2
  157. package/lib/commonjs/components/internal/DefaultRoadmapStyle.js.map +1 -1
  158. package/lib/commonjs/components/internal/GeojsonStyleUtils.js +20 -31
  159. package/lib/commonjs/components/internal/GeojsonStyleUtils.js.map +1 -1
  160. package/lib/commonjs/index.js +0 -11
  161. package/lib/commonjs/index.js.map +1 -1
  162. package/lib/commonjs/native/Map4dMapNativeModule.js +10 -0
  163. package/lib/commonjs/native/Map4dMapNativeModule.js.map +1 -0
  164. package/lib/commonjs/native/NativeModuleResolver.js +35 -0
  165. package/lib/commonjs/native/NativeModuleResolver.js.map +1 -0
  166. package/lib/commonjs/native/ViewManagerCommand.js +67 -0
  167. package/lib/commonjs/native/ViewManagerCommand.js.map +1 -0
  168. package/lib/commonjs/package.json +1 -0
  169. package/lib/commonjs/specs/NativeMap4dMap.js +9 -0
  170. package/lib/commonjs/specs/NativeMap4dMap.js.map +1 -0
  171. package/lib/module/components/MFBanDoSo/constants.js +22 -0
  172. package/lib/module/components/MFBanDoSo/constants.js.map +1 -0
  173. package/lib/module/components/MFBanDoSo/helpers.js +188 -0
  174. package/lib/module/components/MFBanDoSo/helpers.js.map +1 -0
  175. package/lib/module/components/MFBanDoSo/propTypes.js +14 -0
  176. package/lib/module/components/MFBanDoSo/propTypes.js.map +1 -0
  177. package/lib/module/components/MFBanDoSo/styles.js +325 -0
  178. package/lib/module/components/MFBanDoSo/styles.js.map +1 -0
  179. package/lib/module/components/MFBanDoSo/ui.js +213 -0
  180. package/lib/module/components/MFBanDoSo/ui.js.map +1 -0
  181. package/lib/module/components/MFBanDoSo.js +192 -63
  182. package/lib/module/components/MFBanDoSo.js.map +1 -1
  183. package/lib/module/components/MFBuilding.js +43 -90
  184. package/lib/module/components/MFBuilding.js.map +1 -1
  185. package/lib/module/components/MFCircle.js +42 -82
  186. package/lib/module/components/MFCircle.js.map +1 -1
  187. package/lib/module/components/MFDirectionsRenderer.js +48 -99
  188. package/lib/module/components/MFDirectionsRenderer.js.map +1 -1
  189. package/lib/module/components/MFMapView.js +120 -188
  190. package/lib/module/components/MFMapView.js.map +1 -1
  191. package/lib/module/components/MFMarker.js +52 -109
  192. package/lib/module/components/MFMarker.js.map +1 -1
  193. package/lib/module/components/MFPOI.js +39 -86
  194. package/lib/module/components/MFPOI.js.map +1 -1
  195. package/lib/module/components/MFPolygon.js +39 -83
  196. package/lib/module/components/MFPolygon.js.map +1 -1
  197. package/lib/module/components/MFPolyline.js +37 -79
  198. package/lib/module/components/MFPolyline.js.map +1 -1
  199. package/lib/module/components/MFTileOverlay.js +19 -18
  200. package/lib/module/components/MFTileOverlay.js.map +1 -1
  201. package/lib/module/components/Map4dMapView.js +2 -0
  202. package/lib/module/components/Map4dMapView.js.map +1 -1
  203. package/lib/module/components/extends/AreaFocusManager.js +22 -48
  204. package/lib/module/components/extends/AreaFocusManager.js.map +1 -1
  205. package/lib/module/components/extends/AreaFocuser.js +5 -17
  206. package/lib/module/components/extends/AreaFocuser.js.map +1 -1
  207. package/lib/module/components/extends/BoundHelper.js +2 -5
  208. package/lib/module/components/extends/BoundHelper.js.map +1 -1
  209. package/lib/module/components/extends/area/AreaFocusAreas.js +2 -33
  210. package/lib/module/components/extends/area/AreaFocusAreas.js.map +1 -1
  211. package/lib/module/components/extends/area/AreaFocusGeometryUtils.js +2 -32
  212. package/lib/module/components/extends/area/AreaFocusGeometryUtils.js.map +1 -1
  213. package/lib/module/components/extends/area/AreaFocusSession.js +2 -17
  214. package/lib/module/components/extends/area/AreaFocusSession.js.map +1 -1
  215. package/lib/module/components/extends/area/AreaFocusTypes.js +21 -18
  216. package/lib/module/components/extends/area/AreaFocusTypes.js.map +1 -1
  217. package/lib/module/components/internal/DefaultRoadmapStyle.js +2 -0
  218. package/lib/module/components/internal/DefaultRoadmapStyle.js.map +1 -1
  219. package/lib/module/components/internal/GeojsonStyleUtils.js +21 -28
  220. package/lib/module/components/internal/GeojsonStyleUtils.js.map +1 -1
  221. package/lib/module/index.js +2 -0
  222. package/lib/module/index.js.map +1 -1
  223. package/lib/module/native/Map4dMapNativeModule.js +5 -0
  224. package/lib/module/native/Map4dMapNativeModule.js.map +1 -0
  225. package/lib/module/native/NativeModuleResolver.js +29 -0
  226. package/lib/module/native/NativeModuleResolver.js.map +1 -0
  227. package/lib/module/native/ViewManagerCommand.js +61 -0
  228. package/lib/module/native/ViewManagerCommand.js.map +1 -0
  229. package/lib/module/specs/NativeMap4dMap.js +5 -0
  230. package/lib/module/specs/NativeMap4dMap.js.map +1 -0
  231. package/lib/typescript/components/MFBanDoSo/constants.d.ts +8 -0
  232. package/lib/typescript/components/MFBanDoSo/constants.d.ts.map +1 -0
  233. package/lib/typescript/components/MFBanDoSo/helpers.d.ts +14 -0
  234. package/lib/typescript/components/MFBanDoSo/helpers.d.ts.map +1 -0
  235. package/lib/typescript/components/MFBanDoSo/propTypes.d.ts +2 -0
  236. package/lib/typescript/components/MFBanDoSo/propTypes.d.ts.map +1 -0
  237. package/lib/typescript/components/MFBanDoSo/styles.d.ts +462 -0
  238. package/lib/typescript/components/MFBanDoSo/styles.d.ts.map +1 -0
  239. package/lib/typescript/components/MFBanDoSo/ui.d.ts +30 -0
  240. package/lib/typescript/components/MFBanDoSo/ui.d.ts.map +1 -0
  241. package/lib/typescript/components/MFBanDoSo.d.ts +37 -0
  242. package/lib/typescript/components/MFBanDoSo.d.ts.map +1 -0
  243. package/lib/typescript/components/MFBuilding.d.ts +24 -0
  244. package/lib/typescript/components/MFBuilding.d.ts.map +1 -0
  245. package/lib/typescript/components/MFCircle.d.ts +24 -0
  246. package/lib/typescript/components/MFCircle.d.ts.map +1 -0
  247. package/lib/typescript/components/MFDirectionsRenderer.d.ts +19 -0
  248. package/lib/typescript/components/MFDirectionsRenderer.d.ts.map +1 -0
  249. package/lib/typescript/components/MFMapView.d.ts +66 -0
  250. package/lib/typescript/components/MFMapView.d.ts.map +1 -0
  251. package/lib/typescript/components/MFMarker.d.ts +26 -0
  252. package/lib/typescript/components/MFMarker.d.ts.map +1 -0
  253. package/lib/typescript/components/MFPOI.d.ts +24 -0
  254. package/lib/typescript/components/MFPOI.d.ts.map +1 -0
  255. package/lib/typescript/components/MFPolygon.d.ts +24 -0
  256. package/lib/typescript/components/MFPolygon.d.ts.map +1 -0
  257. package/lib/typescript/components/MFPolyline.d.ts +24 -0
  258. package/lib/typescript/components/MFPolyline.d.ts.map +1 -0
  259. package/lib/typescript/components/MFTileOverlay.d.ts +12 -0
  260. package/lib/typescript/components/MFTileOverlay.d.ts.map +1 -0
  261. package/lib/typescript/components/Map4dMapView.d.ts +2 -1
  262. package/lib/typescript/components/Map4dMapView.d.ts.map +1 -0
  263. package/lib/typescript/components/extends/AreaFocusManager.d.ts +34 -0
  264. package/lib/typescript/components/extends/AreaFocusManager.d.ts.map +1 -0
  265. package/lib/typescript/components/extends/AreaFocuser.d.ts +15 -0
  266. package/lib/typescript/components/extends/AreaFocuser.d.ts.map +1 -0
  267. package/lib/typescript/components/extends/BoundHelper.d.ts +11 -0
  268. package/lib/typescript/components/extends/BoundHelper.d.ts.map +1 -0
  269. package/lib/typescript/components/extends/area/AreaFocusAreas.d.ts +58 -0
  270. package/lib/typescript/components/extends/area/AreaFocusAreas.d.ts.map +1 -0
  271. package/lib/typescript/components/extends/area/AreaFocusGeometryUtils.d.ts +19 -0
  272. package/lib/typescript/components/extends/area/AreaFocusGeometryUtils.d.ts.map +1 -0
  273. package/lib/typescript/components/extends/area/AreaFocusSession.d.ts +14 -0
  274. package/lib/typescript/components/extends/area/AreaFocusSession.d.ts.map +1 -0
  275. package/lib/typescript/components/extends/area/AreaFocusTypes.d.ts +40 -0
  276. package/lib/typescript/components/extends/area/AreaFocusTypes.d.ts.map +1 -0
  277. package/lib/typescript/components/internal/DefaultRoadmapStyle.d.ts +820 -0
  278. package/lib/typescript/components/internal/DefaultRoadmapStyle.d.ts.map +1 -0
  279. package/lib/typescript/components/internal/GeojsonStyleUtils.d.ts +3 -0
  280. package/lib/typescript/components/internal/GeojsonStyleUtils.d.ts.map +1 -0
  281. package/lib/typescript/index.d.ts +13 -0
  282. package/lib/typescript/index.d.ts.map +1 -0
  283. package/lib/typescript/native/Map4dMapNativeModule.d.ts +2 -0
  284. package/lib/typescript/native/Map4dMapNativeModule.d.ts.map +1 -0
  285. package/lib/typescript/native/NativeModuleResolver.d.ts +3 -0
  286. package/lib/typescript/native/NativeModuleResolver.d.ts.map +1 -0
  287. package/lib/typescript/native/ViewManagerCommand.d.ts +11 -0
  288. package/lib/typescript/native/ViewManagerCommand.d.ts.map +1 -0
  289. package/package.json +168 -152
  290. package/react-native-map4d-map.podspec +20 -20
  291. package/src/components/MFBanDoSo/constants.js +32 -0
  292. package/src/components/MFBanDoSo/helpers.js +273 -0
  293. package/src/components/MFBanDoSo/propTypes.js +14 -0
  294. package/src/components/MFBanDoSo/styles.js +316 -0
  295. package/src/components/MFBanDoSo/ui.js +230 -0
  296. package/src/components/MFBanDoSo.js +314 -124
  297. package/src/components/MFBuilding.js +160 -187
  298. package/src/components/MFCircle.js +146 -173
  299. package/src/components/MFDirectionsRenderer.js +211 -237
  300. package/src/components/MFMapView.js +458 -464
  301. package/src/components/MFMarker.js +218 -246
  302. package/src/components/MFPOI.js +157 -184
  303. package/src/components/MFPolygon.js +159 -186
  304. package/src/components/MFPolyline.js +145 -172
  305. package/src/components/MFTileOverlay.js +45 -45
  306. package/src/components/Map4dMapView.tsx +26 -26
  307. package/src/components/extends/AreaFocusManager.js +196 -196
  308. package/src/components/extends/AreaFocuser.js +61 -61
  309. package/src/components/extends/BoundHelper.js +31 -31
  310. package/src/components/extends/area/AreaFocusAreas.js +164 -164
  311. package/src/components/extends/area/AreaFocusGeometryUtils.js +164 -164
  312. package/src/components/extends/area/AreaFocusSession.js +100 -100
  313. package/src/components/extends/area/AreaFocusTypes.js +36 -36
  314. package/src/components/internal/DefaultRoadmapStyle.js +3365 -3365
  315. package/src/components/internal/GeojsonStyleUtils.js +146 -143
  316. package/src/index.js +25 -25
  317. package/src/native/Map4dMapNativeModule.js +3 -0
  318. package/src/native/NativeModuleResolver.js +33 -0
  319. package/src/native/ViewManagerCommand.js +82 -0
  320. package/src/specs/NativeMap4dMap.js +12 -0
  321. package/ios/Map4dMapViewManager.m +0 -34
@@ -1,246 +1,218 @@
1
- import PropTypes from 'prop-types';
2
- import React from 'react';
3
- import {ViewPropTypes} from 'deprecated-react-native-prop-types';
4
- import {
5
- requireNativeComponent,
6
- StyleSheet,
7
- Platform,
8
- Image,
9
- NativeModules,
10
- findNodeHandle
11
- } from 'react-native';
12
-
13
- // if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)
14
- const viewPropTypes = ViewPropTypes || View.propTypes;
15
-
16
- const propTypes = {
17
- ...viewPropTypes,
18
-
19
- /**
20
- * The coordinate for the marker.
21
- */
22
- coordinate: PropTypes.shape({
23
- latitude: PropTypes.number.isRequired,
24
- longitude: PropTypes.number.isRequired,
25
- }).isRequired,
26
-
27
- /**
28
- * Default value is `false`
29
- */
30
- draggable: PropTypes.bool,
31
-
32
- /**
33
- * Sets the ground anchor point for the marker.
34
- */
35
- anchor: PropTypes.shape({
36
- x: PropTypes.number.isRequired,
37
- y: PropTypes.number.isRequired,
38
- }),
39
-
40
- /**
41
- *
42
- */
43
- elevation: PropTypes.number,
44
-
45
- /**
46
- *
47
- */
48
- rotation: PropTypes.number,
49
-
50
- /**
51
- * Sets the infor window anchor point for the marker.
52
- */
53
- infoWindowAnchor: PropTypes.shape({
54
- x: PropTypes.number.isRequired,
55
- y: PropTypes.number.isRequired,
56
- }),
57
-
58
- /**
59
- * The title of the marker.
60
- */
61
- title: PropTypes.string,
62
-
63
- /**
64
- * The snippet of the marker.
65
- */
66
- snippet: PropTypes.string,
67
-
68
- /**
69
- * Marker icon to render.
70
- */
71
- icon: PropTypes.shape({
72
- uri: PropTypes.any.isRequired,
73
- width: PropTypes.number.isRequired,
74
- height: PropTypes.number.isRequired,
75
- }),
76
-
77
-
78
- /**
79
- * zIndex
80
- */
81
- zIndex: PropTypes.number,
82
-
83
- /**
84
- * visible
85
- */
86
- visible: PropTypes.bool,
87
-
88
- /**
89
- * userData
90
- */
91
- userData:PropTypes.object,
92
-
93
- /**
94
- * Callback that is called when the user presses on the marker
95
- */
96
- onPress: PropTypes.func,
97
-
98
- /**
99
- * Callback that is called when the user presses on the info window
100
- */
101
- onPressInfoWindow: PropTypes.func,
102
-
103
- /**
104
- * Callback that is called when the user initiates a drag on this marker (if it is draggable)
105
- */
106
- onDragStart: PropTypes.func,
107
-
108
- /**
109
- * Callback called continuously as the marker is dragged
110
- */
111
- onDrag: PropTypes.func,
112
-
113
- /**
114
- * Callback that is called when a drag on this marker finishes. This is usually the point you
115
- * will want to setState on the marker's coordinate again
116
- */
117
- onDragEnd: PropTypes.func,
118
- };
119
-
120
-
121
- class MFMarker extends React.Component {
122
- constructor(props) {
123
- super(props);
124
- this._onPress = this._onPress.bind(this)
125
- this._ref = this._ref.bind(this)
126
- }
127
-
128
- setCoordinate(location) {
129
- this._runCommand("setCoordinate", [location])
130
- }
131
-
132
- setRotation(rotation) {
133
- this._runCommand("setRotation", [rotation])
134
- }
135
-
136
- setTitle(title) {
137
- this._runCommand("setTitle", [title])
138
- }
139
-
140
- setSnippet(snippet) {
141
- this._runCommand("setSnippet", [snippet])
142
- }
143
-
144
- setDraggable(draggable) {
145
- this._runCommand("setDraggable", [draggable])
146
- }
147
-
148
- setZIndex(zIndex) {
149
- this._runCommand("setZIndex", [zIndex])
150
- }
151
-
152
- setVisible(visible) {
153
- this._runCommand("setVisible", [visible])
154
- }
155
-
156
- setInfoWindowAnchor(anchor) {
157
- this._runCommand("setInfoWindowAnchor", [anchor])
158
- }
159
-
160
- setElevation(elevation) {
161
- this._runCommand("setElevation", [elevation])
162
- }
163
-
164
- setUserData(userData) {
165
- this._runCommand("setUserData", [userData])
166
- }
167
-
168
- _getHandle() {
169
- return findNodeHandle(this.marker);
170
- }
171
-
172
-
173
- _runCommand(name, args) {
174
- switch (Platform.OS) {
175
- case 'android':
176
- NativeModules.UIManager.dispatchViewManagerCommand(
177
- this._getHandle(),
178
- this._uiManagerCommand(name),
179
- args
180
- );
181
- break;
182
-
183
- case 'ios':
184
- //this.getMapManagerCommand(name)(this._getHandle(), ...args);
185
- this._mapManagerCommand(name)(this._getHandle(), ...args);
186
- break;
187
-
188
- default:
189
- break;
190
- }
191
- }
192
-
193
- _uiManagerCommand(name) {
194
- const UIManager = NativeModules.UIManager;
195
- const componentName = "RMFMarker";
196
-
197
- if (!UIManager.getViewManagerConfig) {
198
- // RN < 0.58
199
- return UIManager[componentName].Commands[name];
200
- }
201
-
202
- // RN >= 0.58
203
- return UIManager.getViewManagerConfig(componentName).Commands[name];
204
- }
205
-
206
- _mapManagerCommand(name) {
207
- return NativeModules[`RMFMarker`][name];
208
- }
209
-
210
- _onPress(event) {
211
- event.stopPropagation();
212
- if (this.props.onPress) {
213
- this.props.onPress(event);
214
- }
215
- }
216
-
217
- _ref(ref) {
218
- this.marker = ref;
219
- }
220
-
221
- render() {
222
- let icon = {};
223
- if (this.props.icon) {
224
- let uri = Image.resolveAssetSource(this.props.icon.uri) || {uri: this.props.icon.uri};
225
- icon = {uri: uri.uri, width: this.props.icon.width, height: this.props.icon.height}
226
- }
227
- return <RMFMarker
228
- {...this.props}
229
- icon={icon}
230
- ref={this._ref}
231
- style={[styles.marker, this.props.style]}
232
- onPress={this._onPress}
233
- />;
234
- }
235
- }
236
-
237
- MFMarker.propTypes = propTypes;
238
- var RMFMarker = requireNativeComponent(`RMFMarker`, MFMarker);
239
-
240
- const styles = StyleSheet.create({
241
- marker: {
242
- position: 'absolute'
243
- },
244
- });
245
-
246
- export {MFMarker}
1
+ import PropTypes from 'prop-types';
2
+ import React from 'react';
3
+ import {ViewPropTypes} from 'deprecated-react-native-prop-types';
4
+ import {runViewManagerCommand} from '../native/ViewManagerCommand';
5
+ import {
6
+ requireNativeComponent,
7
+ StyleSheet,
8
+ Image,
9
+ findNodeHandle
10
+ } from 'react-native';
11
+
12
+ // if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)
13
+ const viewPropTypes = ViewPropTypes || View.propTypes;
14
+
15
+ const propTypes = {
16
+ ...viewPropTypes,
17
+
18
+ /**
19
+ * The coordinate for the marker.
20
+ */
21
+ coordinate: PropTypes.shape({
22
+ latitude: PropTypes.number.isRequired,
23
+ longitude: PropTypes.number.isRequired,
24
+ }).isRequired,
25
+
26
+ /**
27
+ * Default value is `false`
28
+ */
29
+ draggable: PropTypes.bool,
30
+
31
+ /**
32
+ * Sets the ground anchor point for the marker.
33
+ */
34
+ anchor: PropTypes.shape({
35
+ x: PropTypes.number.isRequired,
36
+ y: PropTypes.number.isRequired,
37
+ }),
38
+
39
+ /**
40
+ *
41
+ */
42
+ elevation: PropTypes.number,
43
+
44
+ /**
45
+ *
46
+ */
47
+ rotation: PropTypes.number,
48
+
49
+ /**
50
+ * Sets the infor window anchor point for the marker.
51
+ */
52
+ infoWindowAnchor: PropTypes.shape({
53
+ x: PropTypes.number.isRequired,
54
+ y: PropTypes.number.isRequired,
55
+ }),
56
+
57
+ /**
58
+ * The title of the marker.
59
+ */
60
+ title: PropTypes.string,
61
+
62
+ /**
63
+ * The snippet of the marker.
64
+ */
65
+ snippet: PropTypes.string,
66
+
67
+ /**
68
+ * Marker icon to render.
69
+ */
70
+ icon: PropTypes.shape({
71
+ uri: PropTypes.any.isRequired,
72
+ width: PropTypes.number.isRequired,
73
+ height: PropTypes.number.isRequired,
74
+ }),
75
+
76
+
77
+ /**
78
+ * zIndex
79
+ */
80
+ zIndex: PropTypes.number,
81
+
82
+ /**
83
+ * visible
84
+ */
85
+ visible: PropTypes.bool,
86
+
87
+ /**
88
+ * userData
89
+ */
90
+ userData:PropTypes.object,
91
+
92
+ /**
93
+ * Callback that is called when the user presses on the marker
94
+ */
95
+ onPress: PropTypes.func,
96
+
97
+ /**
98
+ * Callback that is called when the user presses on the info window
99
+ */
100
+ onPressInfoWindow: PropTypes.func,
101
+
102
+ /**
103
+ * Callback that is called when the user initiates a drag on this marker (if it is draggable)
104
+ */
105
+ onDragStart: PropTypes.func,
106
+
107
+ /**
108
+ * Callback called continuously as the marker is dragged
109
+ */
110
+ onDrag: PropTypes.func,
111
+
112
+ /**
113
+ * Callback that is called when a drag on this marker finishes. This is usually the point you
114
+ * will want to setState on the marker's coordinate again
115
+ */
116
+ onDragEnd: PropTypes.func,
117
+ };
118
+
119
+
120
+ class MFMarker extends React.Component {
121
+ constructor(props) {
122
+ super(props);
123
+ this._onPress = this._onPress.bind(this)
124
+ this._ref = this._ref.bind(this)
125
+ }
126
+
127
+ setCoordinate(location) {
128
+ this._runCommand("setCoordinate", [location])
129
+ }
130
+
131
+ setRotation(rotation) {
132
+ this._runCommand("setRotation", [rotation])
133
+ }
134
+
135
+ setTitle(title) {
136
+ this._runCommand("setTitle", [title])
137
+ }
138
+
139
+ setSnippet(snippet) {
140
+ this._runCommand("setSnippet", [snippet])
141
+ }
142
+
143
+ setDraggable(draggable) {
144
+ this._runCommand("setDraggable", [draggable])
145
+ }
146
+
147
+ setZIndex(zIndex) {
148
+ this._runCommand("setZIndex", [zIndex])
149
+ }
150
+
151
+ setVisible(visible) {
152
+ this._runCommand("setVisible", [visible])
153
+ }
154
+
155
+ setInfoWindowAnchor(anchor) {
156
+ this._runCommand("setInfoWindowAnchor", [anchor])
157
+ }
158
+
159
+ setElevation(elevation) {
160
+ this._runCommand("setElevation", [elevation])
161
+ }
162
+
163
+ setUserData(userData) {
164
+ this._runCommand("setUserData", [userData])
165
+ }
166
+
167
+ _getHandle() {
168
+ return findNodeHandle(this.marker);
169
+ }
170
+
171
+
172
+ _runCommand(name, args) {
173
+ return runViewManagerCommand({
174
+ componentName: 'RMFMarker',
175
+ moduleName: 'RMFMarker',
176
+ commandName: name,
177
+ args,
178
+ reactTag: this._getHandle(),
179
+ });
180
+ }
181
+
182
+ _onPress(event) {
183
+ event.stopPropagation();
184
+ if (this.props.onPress) {
185
+ this.props.onPress(event);
186
+ }
187
+ }
188
+
189
+ _ref(ref) {
190
+ this.marker = ref;
191
+ }
192
+
193
+ render() {
194
+ let icon = {};
195
+ if (this.props.icon) {
196
+ let uri = Image.resolveAssetSource(this.props.icon.uri) || {uri: this.props.icon.uri};
197
+ icon = {uri: uri.uri, width: this.props.icon.width, height: this.props.icon.height}
198
+ }
199
+ return <RMFMarker
200
+ {...this.props}
201
+ icon={icon}
202
+ ref={this._ref}
203
+ style={[styles.marker, this.props.style]}
204
+ onPress={this._onPress}
205
+ />;
206
+ }
207
+ }
208
+
209
+ MFMarker.propTypes = propTypes;
210
+ var RMFMarker = requireNativeComponent(`RMFMarker`, MFMarker);
211
+
212
+ const styles = StyleSheet.create({
213
+ marker: {
214
+ position: 'absolute'
215
+ },
216
+ });
217
+
218
+ export {MFMarker}