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
@@ -4,106 +4,223 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.MFBanDoSo = void 0;
7
-
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
9
-
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _constants = require("./MFBanDoSo/constants");
10
+ var _helpers = require("./MFBanDoSo/helpers");
11
+ var _propTypes = require("./MFBanDoSo/propTypes");
10
12
  var _MFMapView = require("./MFMapView");
11
-
13
+ var _ui = require("./MFBanDoSo/ui");
12
14
  var _GeojsonStyleUtils = require("./internal/GeojsonStyleUtils");
13
-
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
- const FilterStylePropType = _propTypes.default.shape({
17
- kind: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)]),
18
- kind_detail: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)])
19
- });
20
-
21
- const DrawLinePropType = _propTypes.default.shape({
22
- color: _propTypes.default.string,
23
- width: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.array])
24
- });
25
-
26
- const DrawFillPropType = _propTypes.default.shape({
27
- color: _propTypes.default.string
28
- });
29
-
30
- const DrawSymbolPropType = _propTypes.default.shape({
31
- icon_image: _propTypes.default.string,
32
- icon_index: _propTypes.default.number,
33
- icon_color: _propTypes.default.string,
34
- use_direct_icon_url: _propTypes.default.bool
35
- });
36
-
37
- const CategoryStylePropType = _propTypes.default.shape({
38
- line: _propTypes.default.arrayOf(_propTypes.default.shape({
39
- layer: _propTypes.default.string,
40
- filter: FilterStylePropType,
41
- draw: DrawLinePropType
42
- })),
43
- fill: _propTypes.default.arrayOf(_propTypes.default.shape({
44
- layer: _propTypes.default.string,
45
- filter: FilterStylePropType,
46
- draw: DrawFillPropType
47
- })),
48
- symbol: _propTypes.default.arrayOf(_propTypes.default.shape({
49
- layer: _propTypes.default.string,
50
- filter: FilterStylePropType,
51
- draw: DrawSymbolPropType
52
- }))
53
- });
54
-
55
- const CategoryItemPropType = _propTypes.default.shape({
56
- key: _propTypes.default.string,
57
- title: _propTypes.default.string,
58
- group: _propTypes.default.string,
59
- order: _propTypes.default.number,
60
- checked: _propTypes.default.bool,
61
- style: CategoryStylePropType
62
- });
63
-
15
+ var _jsxRuntime = require("react/jsx-runtime");
16
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
64
17
  class MFBanDoSo extends _MFMapView.MFMapView {
65
18
  constructor(props) {
66
19
  super(props);
67
20
  this._appliedGeojsonStyle = null;
21
+ this._isMounted = false;
22
+ this._categoryRequestId = 0;
23
+ this._selectorAnim = new _reactNative.Animated.Value(0);
24
+ this.state = {
25
+ ...this.state,
26
+ categoryItems: [],
27
+ expandedGroupKeys: {},
28
+ groupTitleByKey: {},
29
+ groupOrderedKeys: [],
30
+ isLegendVisible: false,
31
+ isSelectorVisible: false,
32
+ isSelectorMounted: false
33
+ };
34
+ this._toggleItem = this._toggleItem.bind(this);
35
+ this._toggleGroupChecked = this._toggleGroupChecked.bind(this);
36
+ this._toggleGroup = this._toggleGroup.bind(this);
37
+ this._toggleSelectorVisibility = this._toggleSelectorVisibility.bind(this);
38
+ this._toggleLegendVisibility = this._toggleLegendVisibility.bind(this);
39
+ this._openSelector = this._openSelector.bind(this);
40
+ this._closeSelector = this._closeSelector.bind(this);
68
41
  }
69
-
70
42
  componentDidMount() {
43
+ this._isMounted = true;
44
+ this._loadCategoryItems();
71
45
  this._syncGeojsonStyle();
72
46
  }
73
-
74
47
  componentDidUpdate(prevProps, prevState) {
75
48
  const mapReadyChanged = prevState.isReady !== this.state.isReady;
76
49
  const mapStyleChanged = prevProps.mapStyle !== this.props.mapStyle;
77
- const sourceUrlChanged = prevProps.sourceUrl !== this.props.sourceUrl;
78
- const itemsChanged = (0, _GeojsonStyleUtils.createCategoryItemsSignature)(prevProps.items) !== (0, _GeojsonStyleUtils.createCategoryItemsSignature)(this.props.items);
79
-
80
- if (mapReadyChanged || mapStyleChanged || sourceUrlChanged || itemsChanged) {
50
+ const isStagingChanged = prevProps.isStaging !== this.props.isStaging;
51
+ if (isStagingChanged) {
52
+ this._loadCategoryItems();
53
+ }
54
+ const itemsChanged = (0, _helpers.createSelectedCategoryItemsSignature)(prevState.categoryItems) !== (0, _helpers.createSelectedCategoryItemsSignature)(this.state.categoryItems);
55
+ if (mapReadyChanged || mapStyleChanged || isStagingChanged || itemsChanged) {
81
56
  this._syncGeojsonStyle();
82
57
  }
83
58
  }
84
-
59
+ componentWillUnmount() {
60
+ this._isMounted = false;
61
+ }
62
+ async _loadCategoryItems() {
63
+ const requestId = this._categoryRequestId + 1;
64
+ this._categoryRequestId = requestId;
65
+ try {
66
+ const response = await fetch((0, _constants.getCategoryConfigUrl)(this.props.isStaging));
67
+ if (!response.ok) {
68
+ throw new Error(`Failed to fetch category config: ${response.status}`);
69
+ }
70
+ const json = await response.json();
71
+ const nextItems = (0, _helpers.resolveItemsFromCategoryResponse)(json);
72
+ const groupMetadata = (0, _helpers.resolveCategoryGroupMetadataFromResponse)(json);
73
+ if (!this._isMounted || requestId !== this._categoryRequestId) {
74
+ return;
75
+ }
76
+ this.setState(prevState => {
77
+ const categoryItems = (0, _helpers.normalizeCategoryItems)(nextItems);
78
+ const groupSections = (0, _helpers.createCategoryGroupSections)(categoryItems, groupMetadata.titleByKey, groupMetadata.orderedKeys);
79
+ return {
80
+ categoryItems,
81
+ groupTitleByKey: groupMetadata.titleByKey,
82
+ groupOrderedKeys: groupMetadata.orderedKeys,
83
+ expandedGroupKeys: (0, _helpers.reconcileExpandedGroupKeys)(groupSections, prevState.expandedGroupKeys)
84
+ };
85
+ });
86
+ } catch (error) {
87
+ if (requestId !== this._categoryRequestId) {
88
+ return;
89
+ }
90
+ console.warn('Cannot load category items', error);
91
+ }
92
+ }
93
+ _toggleItem(targetKey, targetIndex) {
94
+ this.setState(prevState => ({
95
+ categoryItems: (0, _helpers.toggleCategoryItemChecked)(prevState.categoryItems, targetKey, targetIndex)
96
+ }));
97
+ }
98
+ _toggleGroup(groupKey) {
99
+ if (typeof groupKey !== 'string' || groupKey.length === 0) {
100
+ return;
101
+ }
102
+ this.setState(prevState => ({
103
+ expandedGroupKeys: {
104
+ ...prevState.expandedGroupKeys,
105
+ [groupKey]: !(prevState.expandedGroupKeys[groupKey] !== false)
106
+ }
107
+ }));
108
+ }
109
+ _toggleGroupChecked(groupKey, checkedValue) {
110
+ this.setState(prevState => ({
111
+ categoryItems: (0, _helpers.toggleCategoryGroupChecked)(prevState.categoryItems, groupKey, checkedValue)
112
+ }));
113
+ }
114
+ _toggleSelectorVisibility() {
115
+ if (this.state.isSelectorVisible) {
116
+ this._closeSelector();
117
+ return;
118
+ }
119
+ this._openSelector();
120
+ }
121
+ _toggleLegendVisibility() {
122
+ this.setState(prevState => ({
123
+ isLegendVisible: !prevState.isLegendVisible
124
+ }));
125
+ }
126
+ _openSelector() {
127
+ this.setState({
128
+ isSelectorMounted: true,
129
+ isSelectorVisible: true
130
+ }, () => {
131
+ _reactNative.Animated.timing(this._selectorAnim, {
132
+ toValue: 1,
133
+ duration: _constants.SELECTOR_OPEN_DURATION_MS,
134
+ easing: _reactNative.Easing.out(_reactNative.Easing.cubic),
135
+ useNativeDriver: true
136
+ }).start();
137
+ });
138
+ }
139
+ _closeSelector() {
140
+ _reactNative.Animated.timing(this._selectorAnim, {
141
+ toValue: 0,
142
+ duration: _constants.SELECTOR_CLOSE_DURATION_MS,
143
+ easing: _reactNative.Easing.in(_reactNative.Easing.cubic),
144
+ useNativeDriver: true
145
+ }).start(() => {
146
+ if (!this._isMounted) {
147
+ return;
148
+ }
149
+ this.setState({
150
+ isSelectorVisible: false,
151
+ isSelectorMounted: false
152
+ });
153
+ });
154
+ }
85
155
  _syncGeojsonStyle() {
86
156
  if (!this.state.isReady) {
87
157
  return;
88
158
  }
89
-
90
- const items = this.props.items || [];
91
- const geojsonStyle = (0, _GeojsonStyleUtils.buildGeojsonStyle)(this.props.mapStyle, this.props.sourceUrl, items);
92
-
159
+ const items = (0, _helpers.getSelectedCategoryItems)(this.state.categoryItems);
160
+ const geojsonStyle = (0, _GeojsonStyleUtils.buildGeojsonStyle)(this.props.mapStyle, (0, _constants.getSourceUrl)(this.props.isStaging), items);
93
161
  if (!geojsonStyle || geojsonStyle === this._appliedGeojsonStyle) {
94
162
  return;
95
163
  }
96
-
97
164
  this._appliedGeojsonStyle = geojsonStyle;
98
-
99
165
  this._runCommand('setMapStyle', [geojsonStyle]);
100
166
  }
101
-
167
+ render() {
168
+ const items = this.state.categoryItems;
169
+ const groupSections = (0, _helpers.createCategoryGroupSections)(items, this.state.groupTitleByKey, this.state.groupOrderedKeys);
170
+ const hasItems = Array.isArray(items) && items.length > 0;
171
+ const showLayerButton = hasItems;
172
+ const showSelector = this.state.isSelectorMounted && hasItems;
173
+ const showLegendButton = hasItems;
174
+ const showLegend = this.state.isLegendVisible && hasItems;
175
+ const selectorTitle = _constants.SELECTOR_TITLE;
176
+ const legendTitle = _constants.LEGEND_TITLE;
177
+ const backdropAnimatedStyle = {
178
+ opacity: this._selectorAnim.interpolate({
179
+ inputRange: [0, 1],
180
+ outputRange: [0, 1]
181
+ })
182
+ };
183
+ const panelAnimatedStyle = {
184
+ transform: [{
185
+ translateX: this._selectorAnim.interpolate({
186
+ inputRange: [0, 1],
187
+ outputRange: [_constants.SELECTOR_DRAWER_TRANSLATE_X, 0]
188
+ })
189
+ }]
190
+ };
191
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.default.Fragment, {
192
+ children: [super.render(), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ui.LayerButton, {
193
+ show: showLayerButton,
194
+ isActive: this.state.isSelectorVisible,
195
+ onPress: this._toggleSelectorVisibility
196
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ui.LegendButton, {
197
+ show: showLegendButton,
198
+ isActive: this.state.isLegendVisible,
199
+ onPress: this._toggleLegendVisibility
200
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ui.SelectorDrawer, {
201
+ show: showSelector,
202
+ title: selectorTitle,
203
+ groupSections: groupSections,
204
+ expandedGroupKeys: this.state.expandedGroupKeys,
205
+ backdropAnimatedStyle: backdropAnimatedStyle,
206
+ panelAnimatedStyle: panelAnimatedStyle,
207
+ onClose: this._toggleSelectorVisibility,
208
+ onToggleGroup: this._toggleGroup,
209
+ onToggleGroupChecked: this._toggleGroupChecked,
210
+ onToggleItem: this._toggleItem
211
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_ui.LegendPanel, {
212
+ show: showLegend,
213
+ title: legendTitle,
214
+ items: items,
215
+ getItemColor: item => (0, _helpers.resolveCategoryItemColor)(item)
216
+ })]
217
+ });
218
+ }
102
219
  }
103
-
104
220
  exports.MFBanDoSo = MFBanDoSo;
105
- MFBanDoSo.propTypes = { ..._MFMapView.MFMapView.propTypes,
106
- items: _propTypes.default.arrayOf(CategoryItemPropType),
107
- sourceUrl: _propTypes.default.string.isRequired
221
+ MFBanDoSo.propTypes = _propTypes.banDoSoPropTypes;
222
+ MFBanDoSo.defaultProps = {
223
+ ..._MFMapView.MFMapView.defaultProps,
224
+ isStaging: true
108
225
  };
109
226
  //# sourceMappingURL=MFBanDoSo.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["FilterStylePropType","PropTypes","shape","kind","oneOfType","string","arrayOf","kind_detail","DrawLinePropType","color","width","number","array","DrawFillPropType","DrawSymbolPropType","icon_image","icon_index","icon_color","use_direct_icon_url","bool","CategoryStylePropType","line","layer","filter","draw","fill","symbol","CategoryItemPropType","key","title","group","order","checked","style","MFBanDoSo","MFMapView","constructor","props","_appliedGeojsonStyle","componentDidMount","_syncGeojsonStyle","componentDidUpdate","prevProps","prevState","mapReadyChanged","isReady","state","mapStyleChanged","mapStyle","sourceUrlChanged","sourceUrl","itemsChanged","createCategoryItemsSignature","items","geojsonStyle","buildGeojsonStyle","_runCommand","propTypes","isRequired"],"sources":["MFBanDoSo.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { MFMapView } from './MFMapView';\nimport {\n buildGeojsonStyle,\n createCategoryItemsSignature,\n} from './internal/GeojsonStyleUtils';\n\nconst FilterStylePropType = PropTypes.shape({\n kind: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n kind_detail: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.arrayOf(PropTypes.string),\n ]),\n});\n\nconst DrawLinePropType = PropTypes.shape({\n color: PropTypes.string,\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.array]),\n});\n\nconst DrawFillPropType = PropTypes.shape({\n color: PropTypes.string,\n});\n\nconst DrawSymbolPropType = PropTypes.shape({\n icon_image: PropTypes.string,\n icon_index: PropTypes.number,\n icon_color: PropTypes.string,\n use_direct_icon_url: PropTypes.bool,\n});\n\nconst CategoryStylePropType = PropTypes.shape({\n line: PropTypes.arrayOf(\n PropTypes.shape({\n layer: PropTypes.string,\n filter: FilterStylePropType,\n draw: DrawLinePropType,\n })\n ),\n fill: PropTypes.arrayOf(\n PropTypes.shape({\n layer: PropTypes.string,\n filter: FilterStylePropType,\n draw: DrawFillPropType,\n })\n ),\n symbol: PropTypes.arrayOf(\n PropTypes.shape({\n layer: PropTypes.string,\n filter: FilterStylePropType,\n draw: DrawSymbolPropType,\n })\n ),\n});\n\nconst CategoryItemPropType = PropTypes.shape({\n key: PropTypes.string,\n title: PropTypes.string,\n group: PropTypes.string,\n order: PropTypes.number,\n checked: PropTypes.bool,\n style: CategoryStylePropType,\n});\n\nclass MFBanDoSo extends MFMapView {\n constructor(props) {\n super(props);\n this._appliedGeojsonStyle = null;\n }\n\n componentDidMount() {\n this._syncGeojsonStyle();\n }\n\n componentDidUpdate(prevProps, prevState) {\n const mapReadyChanged = prevState.isReady !== this.state.isReady;\n const mapStyleChanged = prevProps.mapStyle !== this.props.mapStyle;\n const sourceUrlChanged = prevProps.sourceUrl !== this.props.sourceUrl;\n const itemsChanged =\n createCategoryItemsSignature(prevProps.items) !==\n createCategoryItemsSignature(this.props.items);\n\n if (\n mapReadyChanged ||\n mapStyleChanged ||\n sourceUrlChanged ||\n itemsChanged\n ) {\n this._syncGeojsonStyle();\n }\n }\n\n _syncGeojsonStyle() {\n if (!this.state.isReady) {\n return;\n }\n\n const items = this.props.items || [];\n\n const geojsonStyle = buildGeojsonStyle(\n this.props.mapStyle,\n this.props.sourceUrl,\n items\n );\n\n if (!geojsonStyle || geojsonStyle === this._appliedGeojsonStyle) {\n return;\n }\n\n this._appliedGeojsonStyle = geojsonStyle;\n this._runCommand('setMapStyle', [geojsonStyle]);\n }\n}\n\nMFBanDoSo.propTypes = {\n ...MFMapView.propTypes,\n items: PropTypes.arrayOf(CategoryItemPropType),\n sourceUrl: PropTypes.string.isRequired,\n};\n\nexport { MFBanDoSo };\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_constants","_helpers","_propTypes","_MFMapView","_ui","_GeojsonStyleUtils","_jsxRuntime","e","__esModule","default","MFBanDoSo","MFMapView","constructor","props","_appliedGeojsonStyle","_isMounted","_categoryRequestId","_selectorAnim","Animated","Value","state","categoryItems","expandedGroupKeys","groupTitleByKey","groupOrderedKeys","isLegendVisible","isSelectorVisible","isSelectorMounted","_toggleItem","bind","_toggleGroupChecked","_toggleGroup","_toggleSelectorVisibility","_toggleLegendVisibility","_openSelector","_closeSelector","componentDidMount","_loadCategoryItems","_syncGeojsonStyle","componentDidUpdate","prevProps","prevState","mapReadyChanged","isReady","mapStyleChanged","mapStyle","isStagingChanged","isStaging","itemsChanged","createSelectedCategoryItemsSignature","componentWillUnmount","requestId","response","fetch","getCategoryConfigUrl","ok","Error","status","json","nextItems","resolveItemsFromCategoryResponse","groupMetadata","resolveCategoryGroupMetadataFromResponse","setState","normalizeCategoryItems","groupSections","createCategoryGroupSections","titleByKey","orderedKeys","reconcileExpandedGroupKeys","error","console","warn","targetKey","targetIndex","toggleCategoryItemChecked","groupKey","length","checkedValue","toggleCategoryGroupChecked","timing","toValue","duration","SELECTOR_OPEN_DURATION_MS","easing","Easing","out","cubic","useNativeDriver","start","SELECTOR_CLOSE_DURATION_MS","in","items","getSelectedCategoryItems","geojsonStyle","buildGeojsonStyle","getSourceUrl","_runCommand","render","hasItems","Array","isArray","showLayerButton","showSelector","showLegendButton","showLegend","selectorTitle","SELECTOR_TITLE","legendTitle","LEGEND_TITLE","backdropAnimatedStyle","opacity","interpolate","inputRange","outputRange","panelAnimatedStyle","transform","translateX","SELECTOR_DRAWER_TRANSLATE_X","jsxs","Fragment","children","jsx","LayerButton","show","isActive","onPress","LegendButton","SelectorDrawer","title","onClose","onToggleGroup","onToggleGroupChecked","onToggleItem","LegendPanel","getItemColor","item","resolveCategoryItemColor","exports","propTypes","banDoSoPropTypes","defaultProps"],"sourceRoot":"..\\..\\..\\src","sources":["components/MFBanDoSo.js"],"mappings":"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","ignoreList":[]}
@@ -4,188 +4,131 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.MFBuilding = void 0;
7
-
8
7
  var _react = _interopRequireDefault(require("react"));
9
-
10
8
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
-
12
9
  var _deprecatedReactNativePropTypes = require("deprecated-react-native-prop-types");
13
-
10
+ var _ViewManagerCommand = require("../native/ViewManagerCommand");
14
11
  var _reactNative = require("react-native");
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
-
18
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
19
-
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
20
14
  // if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)
21
15
  const viewPropTypes = _deprecatedReactNativePropTypes.ViewPropTypes || View.propTypes;
22
- const propTypes = { ...viewPropTypes,
23
-
24
- /**
25
- * The name of the building.
16
+ const propTypes = {
17
+ ...viewPropTypes,
18
+ /**
19
+ * The name of the building.
26
20
  */
27
21
  name: _propTypes.default.string,
28
-
29
- /**
30
- * The position of the building
22
+ /**
23
+ * The position of the building
31
24
  */
32
25
  coordinate: _propTypes.default.shape({
33
- /**
34
- * Position for the building.
26
+ /**
27
+ * Position for the building.
35
28
  */
36
29
  latitude: _propTypes.default.number.isRequired,
37
30
  longitude: _propTypes.default.number.isRequired
38
31
  }),
39
-
40
- /**
41
- * The model URL for the building.
32
+ /**
33
+ * The model URL for the building.
42
34
  */
43
35
  modelUrl: _propTypes.default.string,
44
-
45
- /**
46
- * The texture URL for the building.
36
+ /**
37
+ * The texture URL for the building.
47
38
  */
48
39
  textureUrl: _propTypes.default.string,
49
-
50
- /**
51
- * The scale of the building.
40
+ /**
41
+ * The scale of the building.
52
42
  */
53
43
  scale: _propTypes.default.number,
54
-
55
- /**
56
- * The bearing of the building.
44
+ /**
45
+ * The bearing of the building.
57
46
  */
58
47
  bearing: _propTypes.default.number,
59
-
60
- /**
61
- * The elevation of the building.
48
+ /**
49
+ * The elevation of the building.
62
50
  */
63
51
  elevation: _propTypes.default.number,
64
-
65
- /**
66
- * Is the building selectable by the user ?
52
+ /**
53
+ * Is the building selectable by the user ?
67
54
  */
68
55
  selected: _propTypes.default.bool,
69
-
70
- /**
71
- * touchable
56
+ /**
57
+ * touchable
72
58
  */
73
59
  touchable: _propTypes.default.bool,
74
-
75
- /**
76
- * visible
60
+ /**
61
+ * visible
77
62
  */
78
63
  visible: _propTypes.default.bool,
79
-
80
- /**
81
- * userData
64
+ /**
65
+ * userData
82
66
  */
83
67
  userData: _propTypes.default.object,
84
-
85
- /**
86
- * Callback that is called when the user presses on the building
68
+ /**
69
+ * Callback that is called when the user presses on the building
87
70
  */
88
71
  onPress: _propTypes.default.func
89
72
  };
90
-
91
73
  class MFBuilding extends _react.default.Component {
92
74
  constructor(props) {
93
75
  super(props);
94
76
  this._onPress = this._onPress.bind(this);
95
77
  this._ref = this._ref.bind(this);
96
78
  }
97
-
98
79
  _onPress(event) {
99
80
  event.stopPropagation();
100
-
101
81
  if (this.props.onPress) {
102
82
  this.props.onPress(event);
103
83
  }
104
84
  }
105
-
106
85
  _ref(ref) {
107
86
  this.building = ref;
108
87
  }
109
-
110
88
  setName(name) {
111
89
  this._runCommand("setName", [name]);
112
90
  }
113
-
114
91
  setScale(scale) {
115
92
  this._runCommand("setScale", [scale]);
116
93
  }
117
-
118
94
  setBearing(bearing) {
119
95
  this._runCommand("setBearing", [bearing]);
120
96
  }
121
-
122
97
  setElevation(elevation) {
123
98
  this._runCommand("setElevation", [elevation]);
124
99
  }
125
-
126
100
  setSelected(selected) {
127
101
  this._runCommand("setSelected", [selected]);
128
102
  }
129
-
130
103
  setTouchable(touchable) {
131
104
  this._runCommand("setTouchable", [touchable]);
132
105
  }
133
-
134
106
  setVisible(visible) {
135
107
  this._runCommand("setVisible", [visible]);
136
108
  }
137
-
138
109
  setUserData(userData) {
139
110
  this._runCommand("setUserData", [userData]);
140
111
  }
141
-
142
112
  _getHandle() {
143
113
  return (0, _reactNative.findNodeHandle)(this.building);
144
114
  }
145
-
146
115
  _runCommand(name, args) {
147
- switch (_reactNative.Platform.OS) {
148
- case 'android':
149
- _reactNative.NativeModules.UIManager.dispatchViewManagerCommand(this._getHandle(), this._uiManagerCommand(name), args);
150
-
151
- break;
152
-
153
- case 'ios':
154
- this._mapManagerCommand(name)(this._getHandle(), ...args);
155
-
156
- break;
157
-
158
- default:
159
- break;
160
- }
161
- }
162
-
163
- _uiManagerCommand(name) {
164
- const UIManager = _reactNative.NativeModules.UIManager;
165
- const componentName = "RMFBuilding";
166
-
167
- if (!UIManager.getViewManagerConfig) {
168
- // RN < 0.58
169
- return UIManager[componentName].Commands[name];
170
- } // RN >= 0.58
171
-
172
-
173
- return UIManager.getViewManagerConfig(componentName).Commands[name];
174
- }
175
-
176
- _mapManagerCommand(name) {
177
- return _reactNative.NativeModules[`RMFBuilding`][name];
116
+ return (0, _ViewManagerCommand.runViewManagerCommand)({
117
+ componentName: 'RMFBuilding',
118
+ moduleName: 'RMFBuilding',
119
+ commandName: name,
120
+ args,
121
+ reactTag: this._getHandle()
122
+ });
178
123
  }
179
-
180
124
  render() {
181
- return /*#__PURE__*/_react.default.createElement(RMFBuilding, _extends({}, this.props, {
125
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(RMFBuilding, {
126
+ ...this.props,
182
127
  ref: this._ref,
183
128
  onPress: this._onPress
184
- }));
129
+ });
185
130
  }
186
-
187
131
  }
188
-
189
132
  exports.MFBuilding = MFBuilding;
190
133
  MFBuilding.propTypes = propTypes;
191
134
  var RMFBuilding = (0, _reactNative.requireNativeComponent)(`RMFBuilding`, MFBuilding);
@@ -1 +1 @@
1
- {"version":3,"names":["viewPropTypes","ViewPropTypes","View","propTypes","name","PropTypes","string","coordinate","shape","latitude","number","isRequired","longitude","modelUrl","textureUrl","scale","bearing","elevation","selected","bool","touchable","visible","userData","object","onPress","func","MFBuilding","React","Component","constructor","props","_onPress","bind","_ref","event","stopPropagation","ref","building","setName","_runCommand","setScale","setBearing","setElevation","setSelected","setTouchable","setVisible","setUserData","_getHandle","findNodeHandle","args","Platform","OS","NativeModules","UIManager","dispatchViewManagerCommand","_uiManagerCommand","_mapManagerCommand","componentName","getViewManagerConfig","Commands","render","RMFBuilding","requireNativeComponent"],"sources":["MFBuilding.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {ViewPropTypes} from 'deprecated-react-native-prop-types';\nimport {\n requireNativeComponent,\n Platform,\n NativeModules,\n findNodeHandle\n} from 'react-native';\n\n// if ViewPropTypes is not defined fall back to View.propType (to support RN < 0.44)\nconst viewPropTypes = ViewPropTypes || View.propTypes;\n\nconst propTypes = {\n ...viewPropTypes,\n\n /**\n * The name of the building.\n */\n name: PropTypes.string,\n\n /**\n * The position of the building\n */\n coordinate: PropTypes.shape({\n /**\n * Position for the building.\n */\n latitude: PropTypes.number.isRequired,\n longitude: PropTypes.number.isRequired,\n }),\n\n /**\n * The model URL for the building.\n */\n modelUrl: PropTypes.string,\n\n /**\n * The texture URL for the building.\n */\n textureUrl: PropTypes.string,\n\n /**\n * The scale of the building.\n */\n scale: PropTypes.number,\n\n /**\n * The bearing of the building.\n */\n bearing: PropTypes.number,\n\n /**\n * The elevation of the building.\n */\n elevation: PropTypes.number,\n\n /**\n * Is the building selectable by the user ?\n */\n selected: PropTypes.bool,\n\n /**\n * touchable\n */\n touchable: PropTypes.bool,\n\n /**\n * visible\n */\n visible: PropTypes.bool,\n\n /**\n * userData\n */\n userData:PropTypes.object,\n\n /**\n * Callback that is called when the user presses on the building\n */\n onPress: PropTypes.func,\n};\n\n\nclass MFBuilding extends React.Component {\n constructor(props) {\n super(props);\n this._onPress = this._onPress.bind(this)\n this._ref = this._ref.bind(this)\n }\n\n _onPress(event) {\n event.stopPropagation();\n if (this.props.onPress) {\n this.props.onPress(event);\n }\n }\n\n _ref(ref) {\n this.building = ref;\n }\n\n setName(name) {\n this._runCommand(\"setName\", [name])\n }\n\n setScale(scale) {\n this._runCommand(\"setScale\", [scale])\n }\n\n setBearing(bearing) {\n this._runCommand(\"setBearing\", [bearing])\n }\n\n setElevation(elevation) {\n this._runCommand(\"setElevation\", [elevation])\n }\n\n setSelected(selected) {\n this._runCommand(\"setSelected\", [selected])\n }\n\n setTouchable(touchable) {\n this._runCommand(\"setTouchable\", [touchable])\n }\n\n setVisible(visible) {\n this._runCommand(\"setVisible\", [visible])\n }\n\n setUserData(userData) {\n this._runCommand(\"setUserData\", [userData])\n }\n\n _getHandle() {\n return findNodeHandle(this.building);\n }\n\n _runCommand(name, args) {\n switch (Platform.OS) {\n case 'android':\n NativeModules.UIManager.dispatchViewManagerCommand(\n this._getHandle(),\n this._uiManagerCommand(name),\n args\n );\n break;\n\n case 'ios':\n this._mapManagerCommand(name)(this._getHandle(), ...args);\n break;\n\n default:\n break;\n }\n }\n\n _uiManagerCommand(name) {\n const UIManager = NativeModules.UIManager;\n const componentName = \"RMFBuilding\";\n\n if (!UIManager.getViewManagerConfig) {\n // RN < 0.58\n return UIManager[componentName].Commands[name];\n }\n\n // RN >= 0.58\n return UIManager.getViewManagerConfig(componentName).Commands[name];\n }\n\n _mapManagerCommand(name) {\n return NativeModules[`RMFBuilding`][name];\n }\n\n render() {\n return <RMFBuilding\n {...this.props}\n ref={this._ref}\n onPress={this._onPress}\n />;\n }\n}\n\nMFBuilding.propTypes = propTypes;\n\nvar RMFBuilding = requireNativeComponent(`RMFBuilding`, MFBuilding);\n\nexport { MFBuilding }"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_propTypes","_deprecatedReactNativePropTypes","_ViewManagerCommand","_reactNative","_jsxRuntime","e","__esModule","default","viewPropTypes","ViewPropTypes","View","propTypes","name","PropTypes","string","coordinate","shape","latitude","number","isRequired","longitude","modelUrl","textureUrl","scale","bearing","elevation","selected","bool","touchable","visible","userData","object","onPress","func","MFBuilding","React","Component","constructor","props","_onPress","bind","_ref","event","stopPropagation","ref","building","setName","_runCommand","setScale","setBearing","setElevation","setSelected","setTouchable","setVisible","setUserData","_getHandle","findNodeHandle","args","runViewManagerCommand","componentName","moduleName","commandName","reactTag","render","jsx","RMFBuilding","exports","requireNativeComponent"],"sourceRoot":"..\\..\\..\\src","sources":["components/MFBuilding.js"],"mappings":"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","ignoreList":[]}