react-native-maps 0.31.1 → 1.0.0-alpha.1

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 (301) hide show
  1. package/android/build.gradle +89 -33
  2. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  3. package/android/gradle/wrapper/gradle-wrapper.properties +5 -0
  4. package/android/gradlew +251 -0
  5. package/android/gradlew.bat +94 -0
  6. package/android/src/main/AndroidManifest.xml +1 -5
  7. package/android/src/main/RCTAppDependencyProvider.h +25 -0
  8. package/android/src/main/RCTAppDependencyProvider.mm +55 -0
  9. package/android/src/main/RCTModulesConformingToProtocolsProvider.h +18 -0
  10. package/android/src/main/RCTModulesConformingToProtocolsProvider.mm +33 -0
  11. package/android/src/main/RCTThirdPartyComponentsProvider.h +16 -0
  12. package/android/src/main/RCTThirdPartyComponentsProvider.mm +28 -0
  13. package/android/src/main/ReactAppDependencyProvider.podspec +34 -0
  14. package/android/src/main/java/com/facebook/fbreact/specs/NativeAirMapsModuleSpec.java +63 -0
  15. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCalloutManagerDelegate.java +35 -0
  16. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCalloutManagerInterface.java +17 -0
  17. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCircleManagerDelegate.java +49 -0
  18. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCircleManagerInterface.java +23 -0
  19. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsGooglePolygonManagerDelegate.java +49 -0
  20. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsGooglePolygonManagerInterface.java +23 -0
  21. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerDelegate.java +209 -0
  22. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerInterface.java +74 -0
  23. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMarkerManagerDelegate.java +104 -0
  24. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMarkerManagerInterface.java +39 -0
  25. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsOverlayManagerDelegate.java +45 -0
  26. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsOverlayManagerInterface.java +22 -0
  27. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsPolylineManagerDelegate.java +58 -0
  28. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsPolylineManagerInterface.java +26 -0
  29. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsUrlTileManagerDelegate.java +62 -0
  30. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsUrlTileManagerInterface.java +27 -0
  31. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsWMSTileManagerDelegate.java +56 -0
  32. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsWMSTileManagerInterface.java +25 -0
  33. package/android/src/main/java/com/rnmaps/fabric/CalloutManager.java +77 -0
  34. package/android/src/main/java/com/rnmaps/fabric/CircleManager.java +94 -0
  35. package/android/src/main/java/com/rnmaps/fabric/JSONUtil.java +86 -0
  36. package/android/src/main/java/com/rnmaps/fabric/MapViewManager.java +623 -0
  37. package/android/src/main/java/com/rnmaps/fabric/MarkerManager.java +258 -0
  38. package/android/src/main/java/com/rnmaps/fabric/NativeAirMapsModule.java +284 -0
  39. package/android/src/main/java/com/rnmaps/fabric/OverlayManager.java +101 -0
  40. package/android/src/main/java/com/rnmaps/fabric/PolygonManager.java +89 -0
  41. package/android/src/main/java/com/rnmaps/fabric/PolylineManager.java +121 -0
  42. package/android/src/main/java/com/rnmaps/fabric/UrlTileManager.java +124 -0
  43. package/android/src/main/java/com/rnmaps/fabric/WMSTileManager.java +114 -0
  44. package/android/src/main/java/com/rnmaps/fabric/event/OnCalloutPressEvent.java +25 -0
  45. package/android/src/main/java/com/rnmaps/fabric/event/OnDeselectEvent.java +28 -0
  46. package/android/src/main/java/com/rnmaps/fabric/event/OnDoublePressEvent.java +27 -0
  47. package/android/src/main/java/com/rnmaps/fabric/event/OnDragEndEvent.java +28 -0
  48. package/android/src/main/java/com/rnmaps/fabric/event/OnDragEvent.java +28 -0
  49. package/android/src/main/java/com/rnmaps/fabric/event/OnDragStartEvent.java +28 -0
  50. package/android/src/main/java/com/rnmaps/fabric/event/OnIndoorBuildingFocusedEvent.java +28 -0
  51. package/android/src/main/java/com/rnmaps/fabric/event/OnIndoorLevelActivatedEvent.java +28 -0
  52. package/android/src/main/java/com/rnmaps/fabric/event/OnKmlReadyEvent.java +28 -0
  53. package/android/src/main/java/com/rnmaps/fabric/event/OnLongPressEvent.java +28 -0
  54. package/android/src/main/java/com/rnmaps/fabric/event/OnMapLoadedEvent.java +29 -0
  55. package/android/src/main/java/com/rnmaps/fabric/event/OnMapReadyEvent.java +29 -0
  56. package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDeselectEvent.java +28 -0
  57. package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDragEndEvent.java +28 -0
  58. package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDragEvent.java +28 -0
  59. package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDragStartEvent.java +28 -0
  60. package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerPressEvent.java +28 -0
  61. package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerSelectEvent.java +28 -0
  62. package/android/src/main/java/com/rnmaps/fabric/event/OnPanDragEvent.java +28 -0
  63. package/android/src/main/java/com/rnmaps/fabric/event/OnPoiClickEvent.java +27 -0
  64. package/android/src/main/java/com/rnmaps/fabric/event/OnPressEvent.java +27 -0
  65. package/android/src/main/java/com/rnmaps/fabric/event/OnRegionChangeCompleteEvent.java +30 -0
  66. package/android/src/main/java/com/rnmaps/fabric/event/OnRegionChangeEvent.java +48 -0
  67. package/android/src/main/java/com/rnmaps/fabric/event/OnRegionChangeStartEvent.java +33 -0
  68. package/android/src/main/java/com/rnmaps/fabric/event/OnSelectEvent.java +28 -0
  69. package/android/src/main/java/com/rnmaps/fabric/event/OnUserLocationChangeEvent.java +28 -0
  70. package/android/src/main/java/com/{airbnb/android/react → rnmaps}/maps/FileUtil.java +3 -6
  71. package/android/src/main/java/com/{airbnb/android/react → rnmaps}/maps/FusedLocationSource.java +5 -2
  72. package/android/src/main/java/com/{airbnb/android/react → rnmaps}/maps/ImageReadable.java +1 -1
  73. package/android/src/main/java/com/{airbnb/android/react → rnmaps}/maps/ImageReader.java +5 -7
  74. package/android/src/main/java/com/{airbnb/android/react → rnmaps}/maps/ImageUtil.java +1 -2
  75. package/android/src/main/java/com/{airbnb/android/react → rnmaps}/maps/LatLngBoundsUtils.java +1 -1
  76. package/android/src/main/java/com/rnmaps/maps/MapAirModulePackage.java +98 -0
  77. package/android/src/main/java/com/rnmaps/maps/MapCallout.java +41 -0
  78. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapCalloutManager.java → rnmaps/maps/MapCalloutManager.java} +6 -6
  79. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapCircle.java → rnmaps/maps/MapCircle.java} +34 -8
  80. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapCircleManager.java → rnmaps/maps/MapCircleManager.java} +15 -20
  81. package/android/src/main/java/com/rnmaps/maps/MapFeature.java +17 -0
  82. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapGradientPolyline.java → rnmaps/maps/MapGradientPolyline.java} +9 -12
  83. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapGradientPolylineManager.java → rnmaps/maps/MapGradientPolylineManager.java} +13 -18
  84. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapHeatmap.java → rnmaps/maps/MapHeatmap.java} +8 -9
  85. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapHeatmapManager.java → rnmaps/maps/MapHeatmapManager.java} +8 -8
  86. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapLocalTile.java → rnmaps/maps/MapLocalTile.java} +19 -16
  87. package/android/src/main/java/com/rnmaps/maps/MapLocalTileManager.java +54 -0
  88. package/android/src/main/java/com/rnmaps/maps/MapManager.java +504 -0
  89. package/android/src/main/java/com/rnmaps/maps/MapMarker.java +706 -0
  90. package/android/src/main/java/com/rnmaps/maps/MapMarkerManager.java +368 -0
  91. package/android/src/main/java/com/rnmaps/maps/MapModule.java +283 -0
  92. package/android/src/main/java/com/rnmaps/maps/MapOverlay.java +262 -0
  93. package/android/src/main/java/com/rnmaps/maps/MapOverlayManager.java +97 -0
  94. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapPolygon.java → rnmaps/maps/MapPolygon.java} +73 -9
  95. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapPolygonManager.java → rnmaps/maps/MapPolygonManager.java} +22 -22
  96. package/android/src/main/java/com/rnmaps/maps/MapPolyline.java +230 -0
  97. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapPolylineManager.java → rnmaps/maps/MapPolylineManager.java} +18 -38
  98. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapTileProvider.java → rnmaps/maps/MapTileProvider.java} +55 -76
  99. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapTileWorker.java → rnmaps/maps/MapTileWorker.java} +7 -14
  100. package/android/src/main/java/com/rnmaps/maps/MapUIBlock.java +64 -0
  101. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapUrlTile.java → rnmaps/maps/MapUrlTile.java} +29 -29
  102. package/android/src/main/java/com/rnmaps/maps/MapUrlTileManager.java +87 -0
  103. package/android/src/main/java/com/rnmaps/maps/MapView.java +1844 -0
  104. package/android/src/main/java/com/{airbnb/android/react/maps/AirMapWMSTile.java → rnmaps/maps/MapWMSTile.java} +11 -17
  105. package/android/src/main/java/com/rnmaps/maps/MapWMSTileManager.java +81 -0
  106. package/android/src/main/java/com/rnmaps/maps/MapsPackage.java +45 -0
  107. package/android/src/main/java/com/{airbnb/android/react → rnmaps}/maps/RegionChangeEvent.java +1 -1
  108. package/android/src/main/java/com/{airbnb/android/react → rnmaps}/maps/SizeReportingShadowNode.java +1 -1
  109. package/android/src/main/java/com/{airbnb/android/react → rnmaps}/maps/ViewAttacherGroup.java +2 -7
  110. package/android/src/main/java/com/{airbnb/android/react → rnmaps}/maps/ViewChangesTracker.java +12 -11
  111. package/android/src/main/jni/CMakeLists.txt +36 -0
  112. package/android/src/main/jni/RNMapsSpecs-generated.cpp +68 -0
  113. package/android/src/main/jni/RNMapsSpecs.h +31 -0
  114. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.cpp +31 -0
  115. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.h +33 -0
  116. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/EventEmitters.cpp +979 -0
  117. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/EventEmitters.h +860 -0
  118. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/Props.cpp +227 -0
  119. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/Props.h +1297 -0
  120. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/RNMapsSpecsJSI-generated.cpp +74 -0
  121. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/RNMapsSpecsJSI.h +268 -0
  122. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.cpp +26 -0
  123. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.h +131 -0
  124. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/States.cpp +16 -0
  125. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/States.h +137 -0
  126. package/app.plugin.js +1 -0
  127. package/ios/AirGoogleMaps/AIRGMSMarker.h +2 -0
  128. package/ios/AirGoogleMaps/AIRGoogleMap.h +22 -12
  129. package/ios/AirGoogleMaps/{AIRGoogleMap.m → AIRGoogleMap.mm} +407 -130
  130. package/ios/AirGoogleMaps/AIRGoogleMapCircle.h +2 -3
  131. package/ios/AirGoogleMaps/AIRGoogleMapCircle.m +42 -3
  132. package/ios/AirGoogleMaps/AIRGoogleMapCoordinate.h +13 -0
  133. package/ios/AirGoogleMaps/AIRGoogleMapCoordinate.m +10 -0
  134. package/ios/AirGoogleMaps/AIRGoogleMapHeatmap.h +1 -1
  135. package/ios/AirGoogleMaps/AIRGoogleMapManager.h +11 -0
  136. package/ios/AirGoogleMaps/AIRGoogleMapManager.mm +543 -0
  137. package/ios/AirGoogleMaps/AIRGoogleMapMarker.h +4 -0
  138. package/ios/AirGoogleMaps/AIRGoogleMapMarker.m +369 -237
  139. package/ios/AirGoogleMaps/AIRGoogleMapMarkerManager.m +3 -2
  140. package/ios/AirGoogleMaps/AIRGoogleMapOverlay.h +0 -1
  141. package/ios/AirGoogleMaps/AIRGoogleMapPolygon.h +7 -6
  142. package/ios/AirGoogleMaps/AIRGoogleMapPolygon.m +62 -5
  143. package/ios/AirGoogleMaps/AIRGoogleMapPolygonManager.m +3 -3
  144. package/ios/AirGoogleMaps/AIRGoogleMapPolyline.h +4 -3
  145. package/ios/AirGoogleMaps/AIRGoogleMapPolyline.m +9 -9
  146. package/ios/AirGoogleMaps/AIRGoogleMapPolylineManager.m +2 -2
  147. package/ios/AirGoogleMaps/AIRGoogleMapUrlTile.m +2 -2
  148. package/ios/AirGoogleMaps/AIRGoogleMapWMSTile.h +1 -1
  149. package/ios/AirGoogleMaps/AIRGoogleMapWMSTile.m +4 -4
  150. package/ios/AirGoogleMaps/RCTConvert+GMSMapViewType.h +3 -0
  151. package/ios/AirGoogleMaps/RCTConvert+GMSMapViewType.m +18 -0
  152. package/ios/AirGoogleMaps/RNMapsGoogleMapView.h +29 -0
  153. package/ios/AirGoogleMaps/RNMapsGoogleMapView.mm +678 -0
  154. package/ios/AirGoogleMaps/RNMapsGoogleMapViewManager.mm +40 -0
  155. package/ios/AirGoogleMaps/RNMapsGooglePolygonView.h +26 -0
  156. package/ios/AirGoogleMaps/RNMapsGooglePolygonView.mm +226 -0
  157. package/ios/AirGoogleMaps/RNMapsGooglePolygonViewManager.mm +26 -0
  158. package/ios/AirGoogleMaps/Resources/GoogleMapsPrivacy.bundle/PrivacyInfo.xcprivacy +110 -0
  159. package/ios/AirMaps/AIRMap.h +19 -14
  160. package/ios/AirMaps/{AIRMap.m → AIRMap.mm} +333 -120
  161. package/ios/AirMaps/AIRMapCircle.m +1 -53
  162. package/ios/AirMaps/AIRMapCoordinate.m +2 -4
  163. package/ios/AirMaps/AIRMapManager.m +64 -218
  164. package/ios/AirMaps/AIRMapMarker.h +5 -0
  165. package/ios/AirMaps/AIRMapMarker.m +180 -69
  166. package/ios/AirMaps/AIRMapMarkerManager.m +3 -0
  167. package/ios/AirMaps/AIRMapOverlay.m +2 -2
  168. package/ios/AirMaps/AIRMapPolygon.m +0 -52
  169. package/ios/AirMaps/AIRMapPolyline.m +3 -2
  170. package/ios/AirMaps/AIRMapWMSTile.m +8 -8
  171. package/ios/AirMaps/Callout/SMCalloutView.m +1 -1
  172. package/ios/AirMaps/FabricPlaceholders/PlaceHolderGoogleMapView.h +25 -0
  173. package/ios/AirMaps/FabricPlaceholders/PlaceHolderGoogleMapView.mm +77 -0
  174. package/ios/AirMaps/FabricPlaceholders/PlaceHolderPolygonView.h +25 -0
  175. package/ios/AirMaps/FabricPlaceholders/PlaceHolderPolygonView.mm +52 -0
  176. package/ios/AirMaps/RCTComponentData+Maps.h +13 -0
  177. package/ios/AirMaps/RCTComponentData+Maps.m +55 -0
  178. package/ios/AirMaps/RCTConvert+AirMap.h +6 -1
  179. package/ios/AirMaps/RCTConvert+AirMap.m +18 -0
  180. package/ios/AirMaps/RNMapsAirModule.h +15 -0
  181. package/ios/AirMaps/RNMapsAirModule.mm +164 -0
  182. package/ios/AirMaps/RNMapsDefines.h +1 -0
  183. package/ios/AirMaps/RNMapsMapView.h +27 -0
  184. package/ios/AirMaps/RNMapsMapView.mm +577 -0
  185. package/ios/AirMaps/RNMapsMapViewManager.mm +42 -0
  186. package/ios/AirMaps/RNMapsMarkerView.h +24 -0
  187. package/ios/AirMaps/RNMapsMarkerView.mm +439 -0
  188. package/ios/AirMaps/RNMapsMarkerViewManager.mm +28 -0
  189. package/ios/AirMaps/UIView+AirMap.h +11 -0
  190. package/ios/AirMaps/UIView+AirMap.m +20 -0
  191. package/ios/AirMaps/module.modulemap +6 -0
  192. package/ios/AirMaps.xcodeproj/project.pbxproj +44 -4
  193. package/ios/PrivacyInfo.xcprivacy +37 -0
  194. package/ios/generated/RCTAppDependencyProvider.h +25 -0
  195. package/ios/generated/RCTAppDependencyProvider.mm +55 -0
  196. package/ios/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
  197. package/ios/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
  198. package/ios/generated/RCTThirdPartyComponentsProvider.h +16 -0
  199. package/ios/generated/RCTThirdPartyComponentsProvider.mm +26 -0
  200. package/ios/generated/RNMapsAirModuleDelegate.h +24 -0
  201. package/ios/generated/RNMapsHostVewDelegate.h +17 -0
  202. package/ios/generated/RNMapsSpecs/ComponentDescriptors.cpp +29 -0
  203. package/ios/generated/RNMapsSpecs/ComponentDescriptors.h +31 -0
  204. package/ios/generated/RNMapsSpecs/EventEmitters.cpp +977 -0
  205. package/ios/generated/RNMapsSpecs/EventEmitters.h +846 -0
  206. package/ios/generated/RNMapsSpecs/Props.cpp +194 -0
  207. package/ios/generated/RNMapsSpecs/Props.h +1224 -0
  208. package/ios/generated/RNMapsSpecs/RCTComponentViewHelpers.h +591 -0
  209. package/ios/generated/RNMapsSpecs/RNMapsSpecs-generated.mm +92 -0
  210. package/ios/generated/RNMapsSpecs/RNMapsSpecs.h +137 -0
  211. package/ios/generated/RNMapsSpecs/ShadowNodes.cpp +24 -0
  212. package/ios/generated/RNMapsSpecs/ShadowNodes.h +109 -0
  213. package/ios/generated/RNMapsSpecs/States.cpp +16 -0
  214. package/ios/generated/RNMapsSpecs/States.h +113 -0
  215. package/ios/generated/RNMapsSpecsJSI-generated.cpp +74 -0
  216. package/ios/generated/RNMapsSpecsJSI.h +268 -0
  217. package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
  218. package/ios/generated/module.modulemap +15 -0
  219. package/package.json +57 -34
  220. package/plugin/build/android.js +58 -0
  221. package/plugin/build/index.js +10 -0
  222. package/plugin/build/ios.js +176 -0
  223. package/plugin/build/types.js +2 -0
  224. package/react-native-maps.podspec +114 -11
  225. package/react-native.config.js +15 -0
  226. package/src/{AnimatedRegion.js → AnimatedRegion.ts} +26 -21
  227. package/src/Geojson.tsx +541 -0
  228. package/src/MapCallout.tsx +77 -0
  229. package/src/MapCalloutSubview.tsx +64 -0
  230. package/src/MapCircle.tsx +162 -0
  231. package/src/MapHeatmap.tsx +125 -0
  232. package/src/MapLocalTile.tsx +60 -0
  233. package/src/MapMarker.tsx +531 -0
  234. package/src/MapMarkerNativeComponent.ts +51 -0
  235. package/src/MapOverlay.tsx +178 -0
  236. package/src/MapPolygon.tsx +188 -0
  237. package/src/MapPolygon.types.ts +25 -0
  238. package/src/MapPolyline.tsx +215 -0
  239. package/src/MapUrlTile.tsx +169 -0
  240. package/src/MapView.tsx +1235 -0
  241. package/src/MapView.types.ts +212 -0
  242. package/src/MapView.web.ts +2 -0
  243. package/src/MapViewNativeComponent.ts +86 -0
  244. package/src/MapWMSTile.tsx +148 -0
  245. package/src/ProviderConstants.ts +2 -0
  246. package/src/createFabricMap.tsx +253 -0
  247. package/src/decorateMapComponent.ts +230 -0
  248. package/src/fixImageProp.ts +17 -0
  249. package/src/index.ts +52 -0
  250. package/src/sharedTypes.ts +101 -0
  251. package/src/sharedTypesInternal.ts +1 -0
  252. package/src/specs/NativeAirMapsModule.ts +36 -0
  253. package/src/specs/NativeComponentCallout.ts +63 -0
  254. package/src/specs/NativeComponentCircle.ts +93 -0
  255. package/src/specs/NativeComponentGoogleMapView.ts +922 -0
  256. package/src/specs/NativeComponentGooglePolygon.ts +94 -0
  257. package/src/specs/NativeComponentMapView.ts +1100 -0
  258. package/src/specs/NativeComponentMarker.ts +326 -0
  259. package/src/specs/NativeComponentOverlay.ts +98 -0
  260. package/src/specs/NativeComponentPolyline.ts +124 -0
  261. package/src/specs/NativeComponentUrlTile.ts +128 -0
  262. package/src/specs/NativeComponentWMSTile.ts +107 -0
  263. package/LICENSE +0 -21
  264. package/README.md +0 -652
  265. package/android/src/main/assets/ula.kml +0 -1214
  266. package/android/src/main/java/com/airbnb/android/react/maps/AirMapCallout.java +0 -23
  267. package/android/src/main/java/com/airbnb/android/react/maps/AirMapFeature.java +0 -18
  268. package/android/src/main/java/com/airbnb/android/react/maps/AirMapLiteManager.java +0 -20
  269. package/android/src/main/java/com/airbnb/android/react/maps/AirMapLocalTileManager.java +0 -56
  270. package/android/src/main/java/com/airbnb/android/react/maps/AirMapManager.java +0 -500
  271. package/android/src/main/java/com/airbnb/android/react/maps/AirMapMarker.java +0 -630
  272. package/android/src/main/java/com/airbnb/android/react/maps/AirMapMarkerManager.java +0 -370
  273. package/android/src/main/java/com/airbnb/android/react/maps/AirMapModule.java +0 -380
  274. package/android/src/main/java/com/airbnb/android/react/maps/AirMapOverlay.java +0 -169
  275. package/android/src/main/java/com/airbnb/android/react/maps/AirMapOverlayManager.java +0 -81
  276. package/android/src/main/java/com/airbnb/android/react/maps/AirMapPolyline.java +0 -162
  277. package/android/src/main/java/com/airbnb/android/react/maps/AirMapUrlTileManager.java +0 -97
  278. package/android/src/main/java/com/airbnb/android/react/maps/AirMapView.java +0 -1384
  279. package/android/src/main/java/com/airbnb/android/react/maps/AirMapWMSTileManager.java +0 -87
  280. package/android/src/main/java/com/airbnb/android/react/maps/MapsPackage.java +0 -65
  281. package/index.d.ts +0 -637
  282. package/ios/AirGoogleMaps/AIRGoogleMapManager.m +0 -690
  283. package/ios/User.xcconfig +0 -0
  284. package/react-native-google-maps.podspec +0 -22
  285. package/src/Geojson.js +0 -334
  286. package/src/MapCallout.js +0 -51
  287. package/src/MapCalloutSubview.js +0 -44
  288. package/src/MapCircle.js +0 -150
  289. package/src/MapHeatmap.js +0 -99
  290. package/src/MapLocalTile.js +0 -52
  291. package/src/MapMarker.js +0 -377
  292. package/src/MapOverlay.js +0 -86
  293. package/src/MapPolygon.js +0 -202
  294. package/src/MapPolyline.js +0 -168
  295. package/src/MapUrlTile.js +0 -131
  296. package/src/MapView.js +0 -1160
  297. package/src/MapView.web.js +0 -1
  298. package/src/MapWMSTile.js +0 -122
  299. package/src/ProviderConstants.js +0 -2
  300. package/src/decorateMapComponent.js +0 -112
  301. package/src/index.js +0 -31
@@ -1,22 +0,0 @@
1
- require 'json'
2
-
3
- package = JSON.parse(File.read(File.join(__dir__, 'package.json')))
4
-
5
- Pod::Spec.new do |s|
6
- s.name = "react-native-google-maps"
7
- s.version = package['version']
8
- s.summary = "React Native Mapview component for iOS + Android"
9
-
10
- s.authors = { "intelligibabble" => "leland.m.richardson@gmail.com" }
11
- s.homepage = "https://github.com/react-native-maps/react-native-maps#readme"
12
- s.license = "MIT"
13
- s.platform = :ios, "12.0"
14
-
15
- s.source = { :git => "https://github.com/react-native-maps/react-native-maps.git", :tag=> "v#{s.version}" }
16
- s.source_files = "ios/AirGoogleMaps/**/*.{h,m}"
17
- s.compiler_flags = '-DHAVE_GOOGLE_MAPS=1', '-DHAVE_GOOGLE_MAPS_UTILS=1', '-fno-modules'
18
-
19
- s.dependency 'React-Core'
20
- s.dependency 'GoogleMaps', '6.1.1'
21
- s.dependency 'Google-Maps-iOS-Utils', '4.1.0'
22
- end
package/src/Geojson.js DELETED
@@ -1,334 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import Marker from './MapMarker';
4
- import Polyline from './MapPolyline';
5
- import Polygon from './MapPolygon';
6
- import { ColorPropType } from 'deprecated-react-native-prop-types';
7
-
8
- const propTypes = {
9
- /**
10
- * [Geojson](https://geojson.org/) description of object.
11
- */
12
- geojson: PropTypes.object.isRequired,
13
-
14
- /**
15
- * The stroke color to use for the path.
16
- */
17
- strokeColor: ColorPropType,
18
-
19
- /**
20
- * The fill color to use for the path.
21
- */
22
- fillColor: ColorPropType,
23
-
24
- /**
25
- * The stroke width to use for the path.
26
- */
27
- strokeWidth: PropTypes.number,
28
-
29
- /**
30
- * The offset (in points) at which to start drawing the dash pattern.
31
- *
32
- * Use this property to start drawing a dashed line partway through a segment or gap. For
33
- * example, a phase value of 6 for the patter 5-2-3-2 would cause drawing to begin in the
34
- * middle of the first gap.
35
- *
36
- * The default value of this property is 0.
37
- *
38
- * @platform ios
39
- */
40
- lineDashPhase: PropTypes.number,
41
-
42
- /**
43
- * Make the `Polygon` or `Polyline` tappable
44
- *
45
- */
46
- tappable: PropTypes.bool,
47
-
48
- /**
49
- * An array of numbers specifying the dash pattern to use for the path.
50
- *
51
- * The array contains one or more numbers that indicate the lengths (measured in points) of the
52
- * line segments and gaps in the pattern. The values in the array alternate, starting with the
53
- * first line segment length, followed by the first gap length, followed by the second line
54
- * segment length, and so on.
55
- *
56
- * This property is set to `null` by default, which indicates no line dash pattern.
57
- *
58
- * @platform ios
59
- */
60
- lineDashPattern: PropTypes.arrayOf(PropTypes.number),
61
-
62
- /**
63
- * The line cap style to apply to the open ends of the path.
64
- * The default style is `round`.
65
- *
66
- * @platform ios
67
- */
68
- lineCap: PropTypes.oneOf(['butt', 'round', 'square']),
69
-
70
- /**
71
- * The line join style to apply to corners of the path.
72
- * The default style is `round`.
73
- *
74
- * @platform ios
75
- */
76
- lineJoin: PropTypes.oneOf(['miter', 'round', 'bevel']),
77
-
78
- /**
79
- * The limiting value that helps avoid spikes at junctions between connected line segments.
80
- * The miter limit helps you avoid spikes in paths that use the `miter` `lineJoin` style. If
81
- * the ratio of the miter length—that is, the diagonal length of the miter join—to the line
82
- * thickness exceeds the miter limit, the joint is converted to a bevel join. The default
83
- * miter limit is 10, which results in the conversion of miters whose angle at the joint
84
- * is less than 11 degrees.
85
- *
86
- * @platform ios
87
- */
88
- miterLimit: PropTypes.number,
89
-
90
- /**
91
- * The order in which this tile overlay is drawn with respect to other overlays. An overlay
92
- * with a larger z-index is drawn over overlays with smaller z-indices. The order of overlays
93
- * with the same z-index is arbitrary. The default zIndex is 0.
94
- *
95
- * @platform android
96
- */
97
- zIndex: PropTypes.number,
98
-
99
- /**
100
- * Callback that is called when the user presses on the polygon
101
- */
102
- onPress: PropTypes.func,
103
-
104
- /**
105
- * Component to render in place of the default marker when the overlay type is a `point`
106
- *
107
- */
108
- markerComponent: PropTypes.node,
109
-
110
- /**
111
- * The title of the marker. This is only used if the <Marker /> component has no children that
112
- * are a `<Callout />`, in which case the default callout behavior will be used, which
113
- * will show both the `title` and the `description`, if provided.
114
- */
115
- title: PropTypes.string,
116
- };
117
-
118
- const Geojson = (props) => {
119
- const {
120
- title,
121
- image,
122
- zIndex,
123
- onPress,
124
- lineCap,
125
- lineJoin,
126
- tappable,
127
- miterLimit,
128
- lineDashPhase,
129
- lineDashPattern,
130
- markerComponent,
131
- } = props;
132
- const overlays = makeOverlays(props.geojson.features);
133
- return (
134
- <React.Fragment>
135
- {overlays.map((overlay, index) => {
136
- const fillColor = getColor(props, overlay, 'fill', 'fillColor');
137
- const strokeColor = getColor(props, overlay, 'stroke', 'strokeColor');
138
- const markerColor = getColor(props, overlay, 'marker-color', 'color');
139
- const strokeWidth = getStrokeWidth(props, overlay);
140
- if (overlay.type === 'point') {
141
- return (
142
- <Marker
143
- key={index}
144
- coordinate={overlay.coordinates}
145
- image={image}
146
- title={title}
147
- pinColor={markerColor}
148
- zIndex={zIndex}
149
- onPress={() => onPress && onPress(overlay)}
150
- >
151
- {markerComponent}
152
- </Marker>
153
- );
154
- }
155
- if (overlay.type === 'polygon') {
156
- return (
157
- <Polygon
158
- key={index}
159
- coordinates={overlay.coordinates}
160
- holes={overlay.holes}
161
- strokeColor={strokeColor}
162
- fillColor={fillColor}
163
- strokeWidth={strokeWidth}
164
- tappable={tappable}
165
- onPress={() => onPress && onPress(overlay)}
166
- zIndex={zIndex}
167
- />
168
- );
169
- }
170
- if (overlay.type === 'polyline') {
171
- return (
172
- <Polyline
173
- key={index}
174
- coordinates={overlay.coordinates}
175
- strokeColor={strokeColor}
176
- strokeWidth={strokeWidth}
177
- lineDashPhase={lineDashPhase}
178
- lineDashPattern={lineDashPattern}
179
- lineCap={lineCap}
180
- lineJoin={lineJoin}
181
- miterLimit={miterLimit}
182
- zIndex={zIndex}
183
- tappable={tappable}
184
- onPress={() => onPress && onPress(overlay)}
185
- />
186
- );
187
- }
188
- })}
189
- </React.Fragment>
190
- );
191
- };
192
-
193
- Geojson.propTypes = propTypes;
194
-
195
- export default Geojson;
196
-
197
- export const makeOverlays = (features) => {
198
- const points = features
199
- .filter(
200
- (f) =>
201
- f.geometry &&
202
- (f.geometry.type === 'Point' || f.geometry.type === 'MultiPoint')
203
- )
204
- .map((feature) =>
205
- makeCoordinates(feature).map((coordinates) =>
206
- makeOverlay(coordinates, feature)
207
- )
208
- )
209
- .reduce(flatten, [])
210
- .map((overlay) => ({ ...overlay, type: 'point' }));
211
-
212
- const lines = features
213
- .filter(
214
- (f) =>
215
- f.geometry &&
216
- (f.geometry.type === 'LineString' ||
217
- f.geometry.type === 'MultiLineString')
218
- )
219
- .map((feature) =>
220
- makeCoordinates(feature).map((coordinates) =>
221
- makeOverlay(coordinates, feature)
222
- )
223
- )
224
- .reduce(flatten, [])
225
- .map((overlay) => ({ ...overlay, type: 'polyline' }));
226
-
227
- const multipolygons = features
228
- .filter((f) => f.geometry && f.geometry.type === 'MultiPolygon')
229
- .map((feature) =>
230
- makeCoordinates(feature).map((coordinates) =>
231
- makeOverlay(coordinates, feature)
232
- )
233
- )
234
- .reduce(flatten, []);
235
-
236
- const polygons = features
237
- .filter((f) => f.geometry && f.geometry.type === 'Polygon')
238
- .map((feature) => makeOverlay(makeCoordinates(feature), feature))
239
- .reduce(flatten, [])
240
- .concat(multipolygons)
241
- .map((overlay) => ({ ...overlay, type: 'polygon' }));
242
-
243
- return points.concat(lines).concat(polygons);
244
- };
245
-
246
- const flatten = (prev, curr) => prev.concat(curr);
247
-
248
- const makeOverlay = (coordinates, feature) => {
249
- let overlay = {
250
- feature,
251
- };
252
- if (
253
- feature.geometry.type === 'Polygon' ||
254
- feature.geometry.type === 'MultiPolygon'
255
- ) {
256
- overlay.coordinates = coordinates[0];
257
- if (coordinates.length > 1) {
258
- overlay.holes = coordinates.slice(1);
259
- }
260
- } else {
261
- overlay.coordinates = coordinates;
262
- }
263
- return overlay;
264
- };
265
-
266
- const makePoint = (c) => ({ latitude: c[1], longitude: c[0] });
267
-
268
- const makeLine = (l) => l.map(makePoint);
269
-
270
- const makeCoordinates = (feature) => {
271
- const g = feature.geometry;
272
- if (g.type === 'Point') {
273
- return [makePoint(g.coordinates)];
274
- } else if (g.type === 'MultiPoint') {
275
- return g.coordinates.map(makePoint);
276
- } else if (g.type === 'LineString') {
277
- return [makeLine(g.coordinates)];
278
- } else if (g.type === 'MultiLineString') {
279
- return g.coordinates.map(makeLine);
280
- } else if (g.type === 'Polygon') {
281
- return g.coordinates.map(makeLine);
282
- } else if (g.type === 'MultiPolygon') {
283
- return g.coordinates.map((p) => p.map(makeLine));
284
- } else {
285
- return [];
286
- }
287
- };
288
-
289
- const doesOverlayContainProperty = (overlay, property) => {
290
- // Geojson may have 0 for the opacity when intention is to not specify the
291
- // opacity. Therefore, we evaluate the truthiness of the propery where 0
292
- // would return false.
293
- return (
294
- overlay.feature &&
295
- overlay.feature.properties &&
296
- overlay.feature.properties[property]
297
- );
298
- };
299
-
300
- const getRgbaFromHex = (hex, alpha = 1) => {
301
- const [r, g, b] = hex.match(/\w\w/g).map((x) => parseInt(x, 16));
302
- return `rgba(${r},${g},${b},${alpha})`;
303
- };
304
-
305
- const getColor = (props, overlay, colorType, overrideColorProp) => {
306
- if (props.hasOwnProperty(overrideColorProp)) {
307
- return props[overrideColorProp];
308
- }
309
- if (doesOverlayContainProperty(overlay, colorType)) {
310
- let color = overlay.feature.properties[colorType];
311
- const opacityProperty = colorType + '-opacity';
312
- if (
313
- doesOverlayContainProperty(overlay, opacityProperty) &&
314
- color[0] === '#'
315
- ) {
316
- color = getRgbaFromHex(
317
- color,
318
- overlay.feature.properties[opacityProperty]
319
- );
320
- }
321
- return color;
322
- }
323
- return;
324
- };
325
-
326
- const getStrokeWidth = (props, overlay) => {
327
- if (props.hasOwnProperty('strokeWidth')) {
328
- return props.strokeWidth;
329
- }
330
- if (doesOverlayContainProperty(overlay, 'stroke-width')) {
331
- return overlay.feature.properties['stroke-width'];
332
- }
333
- return;
334
- };
package/src/MapCallout.js DELETED
@@ -1,51 +0,0 @@
1
- import PropTypes from 'prop-types';
2
- import React from 'react';
3
- import { StyleSheet } from 'react-native';
4
- import { ViewPropTypes } from 'deprecated-react-native-prop-types';
5
- import decorateMapComponent, {
6
- SUPPORTED,
7
- USES_DEFAULT_IMPLEMENTATION,
8
- } from './decorateMapComponent';
9
-
10
- const propTypes = {
11
- ...ViewPropTypes,
12
- tooltip: PropTypes.bool,
13
- onPress: PropTypes.func,
14
- alphaHitTest: PropTypes.bool,
15
- };
16
-
17
- const defaultProps = {
18
- tooltip: false,
19
- alphaHitTest: false,
20
- };
21
-
22
- class MapCallout extends React.Component {
23
- render() {
24
- const AIRMapCallout = this.getAirComponent();
25
- return (
26
- <AIRMapCallout
27
- {...this.props}
28
- style={[styles.callout, this.props.style]}
29
- />
30
- );
31
- }
32
- }
33
-
34
- MapCallout.propTypes = propTypes;
35
- MapCallout.defaultProps = defaultProps;
36
-
37
- const styles = StyleSheet.create({
38
- callout: {
39
- position: 'absolute',
40
- },
41
- });
42
-
43
- export default decorateMapComponent(MapCallout, {
44
- componentType: 'Callout',
45
- providers: {
46
- google: {
47
- ios: SUPPORTED,
48
- android: USES_DEFAULT_IMPLEMENTATION,
49
- },
50
- },
51
- });
@@ -1,44 +0,0 @@
1
- import PropTypes from 'prop-types';
2
- import React from 'react';
3
- import { StyleSheet } from 'react-native';
4
- import { ViewPropTypes } from 'deprecated-react-native-prop-types';
5
- import decorateMapComponent, {
6
- SUPPORTED,
7
- NOT_SUPPORTED,
8
- } from './decorateMapComponent';
9
-
10
- const propTypes = {
11
- ...ViewPropTypes,
12
- onPress: PropTypes.func,
13
- };
14
-
15
- const defaultProps = {};
16
-
17
- class MapCalloutSubview extends React.Component {
18
- render() {
19
- const AIRMapCalloutSubview = this.getAirComponent();
20
- return (
21
- <AIRMapCalloutSubview
22
- {...this.props}
23
- style={[styles.calloutSubview, this.props.style]}
24
- />
25
- );
26
- }
27
- }
28
-
29
- MapCalloutSubview.propTypes = propTypes;
30
- MapCalloutSubview.defaultProps = defaultProps;
31
-
32
- const styles = StyleSheet.create({
33
- calloutSubview: {},
34
- });
35
-
36
- export default decorateMapComponent(MapCalloutSubview, {
37
- componentType: 'CalloutSubview',
38
- providers: {
39
- google: {
40
- ios: SUPPORTED,
41
- android: NOT_SUPPORTED,
42
- },
43
- },
44
- });
package/src/MapCircle.js DELETED
@@ -1,150 +0,0 @@
1
- import PropTypes from 'prop-types';
2
- import React from 'react';
3
- import {
4
- ColorPropType,
5
- ViewPropTypes,
6
- } from 'deprecated-react-native-prop-types';
7
- import decorateMapComponent, {
8
- USES_DEFAULT_IMPLEMENTATION,
9
- SUPPORTED,
10
- } from './decorateMapComponent';
11
-
12
- const propTypes = {
13
- ...ViewPropTypes,
14
-
15
- /**
16
- * The coordinate of the center of the circle
17
- */
18
- center: PropTypes.shape({
19
- /**
20
- * Coordinates for the center of the circle.
21
- */
22
- latitude: PropTypes.number.isRequired,
23
- longitude: PropTypes.number.isRequired,
24
- }).isRequired,
25
-
26
- /**
27
- * The radius of the circle to be drawn (in meters)
28
- */
29
- radius: PropTypes.number.isRequired,
30
-
31
- /**
32
- * Callback that is called when the user presses on the circle
33
- */
34
- onPress: PropTypes.func,
35
-
36
- /**
37
- * The stroke width to use for the path.
38
- */
39
- strokeWidth: PropTypes.number,
40
-
41
- /**
42
- * The stroke color to use for the path.
43
- */
44
- strokeColor: ColorPropType,
45
-
46
- /**
47
- * The fill color to use for the path.
48
- */
49
- fillColor: ColorPropType,
50
-
51
- /**
52
- * The order in which this tile overlay is drawn with respect to other overlays. An overlay
53
- * with a larger z-index is drawn over overlays with smaller z-indices. The order of overlays
54
- * with the same z-index is arbitrary. The default zIndex is 0.
55
- *
56
- * @platform android
57
- */
58
- zIndex: PropTypes.number,
59
-
60
- /**
61
- * The line cap style to apply to the open ends of the path.
62
- * The default style is `round`.
63
- *
64
- * @platform ios
65
- */
66
- lineCap: PropTypes.oneOf(['butt', 'round', 'square']),
67
-
68
- /**
69
- * The line join style to apply to corners of the path.
70
- * The default style is `round`.
71
- *
72
- * @platform ios
73
- */
74
- lineJoin: PropTypes.oneOf(['miter', 'round', 'bevel']),
75
-
76
- /**
77
- * The limiting value that helps avoid spikes at junctions between connected line segments.
78
- * The miter limit helps you avoid spikes in paths that use the `miter` `lineJoin` style. If
79
- * the ratio of the miter length—that is, the diagonal length of the miter join—to the line
80
- * thickness exceeds the miter limit, the joint is converted to a bevel join. The default
81
- * miter limit is 10, which results in the conversion of miters whose angle at the joint
82
- * is less than 11 degrees.
83
- *
84
- * @platform ios
85
- */
86
- miterLimit: PropTypes.number,
87
-
88
- /**
89
- * The offset (in points) at which to start drawing the dash pattern.
90
- *
91
- * Use this property to start drawing a dashed line partway through a segment or gap. For
92
- * example, a phase value of 6 for the patter 5-2-3-2 would cause drawing to begin in the
93
- * middle of the first gap.
94
- *
95
- * The default value of this property is 0.
96
- *
97
- * @platform ios
98
- */
99
- lineDashPhase: PropTypes.number,
100
-
101
- /**
102
- * An array of numbers specifying the dash pattern to use for the path.
103
- *
104
- * The array contains one or more numbers that indicate the lengths (measured in points) of the
105
- * line segments and gaps in the pattern. The values in the array alternate, starting with the
106
- * first line segment length, followed by the first gap length, followed by the second line
107
- * segment length, and so on.
108
- *
109
- * This property is set to `null` by default, which indicates no line dash pattern.
110
- *
111
- * @platform ios
112
- */
113
- lineDashPattern: PropTypes.arrayOf(PropTypes.number),
114
- };
115
-
116
- const defaultProps = {
117
- strokeColor: '#000',
118
- strokeWidth: 1,
119
- };
120
-
121
- class MapCircle extends React.Component {
122
- setNativeProps(props) {
123
- this.circle.setNativeProps(props);
124
- }
125
-
126
- render() {
127
- const AIRMapCircle = this.getAirComponent();
128
- return (
129
- <AIRMapCircle
130
- {...this.props}
131
- ref={(ref) => {
132
- this.circle = ref;
133
- }}
134
- />
135
- );
136
- }
137
- }
138
-
139
- MapCircle.propTypes = propTypes;
140
- MapCircle.defaultProps = defaultProps;
141
-
142
- export default decorateMapComponent(MapCircle, {
143
- componentType: 'Circle',
144
- providers: {
145
- google: {
146
- ios: SUPPORTED,
147
- android: USES_DEFAULT_IMPLEMENTATION,
148
- },
149
- },
150
- });
package/src/MapHeatmap.js DELETED
@@ -1,99 +0,0 @@
1
- import PropTypes from 'prop-types';
2
- import React from 'react';
3
- import { processColor } from 'react-native';
4
- import { ViewPropTypes } from 'deprecated-react-native-prop-types';
5
- import decorateMapComponent, {
6
- SUPPORTED,
7
- USES_DEFAULT_IMPLEMENTATION,
8
- } from './decorateMapComponent';
9
-
10
- const propTypes = {
11
- ...ViewPropTypes,
12
-
13
- /**
14
- * Array of heatmap entries to apply towards density.
15
- */
16
- points: PropTypes.arrayOf(
17
- PropTypes.shape({
18
- /**
19
- * Latitude/Longitude coordinates
20
- */
21
- latitude: PropTypes.number.isRequired,
22
- longitude: PropTypes.number.isRequired,
23
- weight: PropTypes.number,
24
- })
25
- ),
26
-
27
- /**
28
- * The radius of the heatmap points in pixels, between 10 and 50
29
- * (default 20).
30
- */
31
- radius: PropTypes.number,
32
-
33
- /**
34
- * The opacity of the heatmap (default 0.7).
35
- */
36
- opacity: PropTypes.number,
37
-
38
- /**
39
- * Heatmap gradient configuration.
40
- */
41
- gradient: PropTypes.shape({
42
- /**
43
- * Colors (one or more) to use for gradient.
44
- */
45
- colors: PropTypes.arrayOf(PropTypes.string),
46
- /**
47
- * Array of floating point values from 0 to 1 representing
48
- * where each color starts.
49
- */
50
- startPoints: PropTypes.arrayOf(PropTypes.number),
51
- /**
52
- * Resolution of color map -- number corresponding to the
53
- * number of steps colors are interpolated into (default 256).
54
- */
55
- colorMapSize: PropTypes.number,
56
- }),
57
- };
58
-
59
- const defaultProps = {
60
- strokeColor: '#000',
61
- strokeWidth: 1,
62
- };
63
-
64
- class MapHeatmap extends React.Component {
65
- setNativeProps(props) {
66
- this.heatmap.setNativeProps(props);
67
- }
68
-
69
- render() {
70
- const AIRMapHeatmap = this.getAirComponent();
71
- let gradient;
72
- if (this.props.gradient) {
73
- gradient = Object.assign({}, this.props.gradient);
74
- gradient.colors = gradient.colors.map((c) => processColor(c));
75
- }
76
- return (
77
- <AIRMapHeatmap
78
- {...this.props}
79
- gradient={gradient}
80
- ref={(ref) => {
81
- this.heatmap = ref;
82
- }}
83
- />
84
- );
85
- }
86
- }
87
-
88
- MapHeatmap.propTypes = propTypes;
89
- MapHeatmap.defaultProps = defaultProps;
90
-
91
- export default decorateMapComponent(MapHeatmap, {
92
- componentType: 'Heatmap',
93
- providers: {
94
- google: {
95
- ios: SUPPORTED,
96
- android: USES_DEFAULT_IMPLEMENTATION,
97
- },
98
- },
99
- });