react-native-maps 1.21.0-alpha.14 → 1.21.0-alpha.140

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 (256) hide show
  1. package/android/build.gradle +73 -53
  2. package/android/gradlew +1 -2
  3. package/android/src/main/RCTAppDependencyProvider.h +25 -0
  4. package/android/src/main/RCTAppDependencyProvider.mm +55 -0
  5. package/android/src/main/RCTModulesConformingToProtocolsProvider.h +18 -0
  6. package/android/src/main/RCTModulesConformingToProtocolsProvider.mm +33 -0
  7. package/android/src/main/RCTThirdPartyComponentsProvider.h +16 -0
  8. package/android/src/main/RCTThirdPartyComponentsProvider.mm +28 -0
  9. package/android/src/main/ReactAppDependencyProvider.podspec +34 -0
  10. package/android/src/main/java/com/facebook/fbreact/specs/NativeAirMapsModuleSpec.java +63 -0
  11. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCalloutManagerDelegate.java +35 -0
  12. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCalloutManagerInterface.java +17 -0
  13. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCircleManagerDelegate.java +49 -0
  14. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCircleManagerInterface.java +23 -0
  15. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsGooglePolygonManagerDelegate.java +49 -0
  16. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsGooglePolygonManagerInterface.java +23 -0
  17. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerDelegate.java +209 -0
  18. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerInterface.java +74 -0
  19. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMarkerManagerDelegate.java +104 -0
  20. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMarkerManagerInterface.java +39 -0
  21. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsOverlayManagerDelegate.java +46 -0
  22. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsOverlayManagerInterface.java +23 -0
  23. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsPolylineManagerDelegate.java +58 -0
  24. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsPolylineManagerInterface.java +26 -0
  25. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsUrlTileManagerDelegate.java +62 -0
  26. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsUrlTileManagerInterface.java +27 -0
  27. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsWMSTileManagerDelegate.java +56 -0
  28. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsWMSTileManagerInterface.java +25 -0
  29. package/android/src/main/java/com/rnmaps/fabric/CalloutManager.java +77 -0
  30. package/android/src/main/java/com/rnmaps/fabric/CircleManager.java +94 -0
  31. package/android/src/main/java/com/rnmaps/fabric/JSONUtil.java +86 -0
  32. package/android/src/main/java/com/rnmaps/fabric/MapViewManager.java +624 -0
  33. package/android/src/main/java/com/rnmaps/fabric/MarkerManager.java +258 -0
  34. package/android/src/main/java/com/rnmaps/fabric/NativeAirMapsModule.java +235 -2
  35. package/android/src/main/java/com/rnmaps/fabric/OverlayManager.java +95 -0
  36. package/android/src/main/java/com/rnmaps/fabric/PolygonManager.java +89 -0
  37. package/android/src/main/java/com/rnmaps/fabric/PolylineManager.java +121 -0
  38. package/android/src/main/java/com/rnmaps/fabric/UrlTileManager.java +124 -0
  39. package/android/src/main/java/com/rnmaps/fabric/WMSTileManager.java +114 -0
  40. package/android/src/main/java/com/rnmaps/fabric/event/OnCalloutPressEvent.java +25 -0
  41. package/android/src/main/java/com/rnmaps/fabric/event/OnDeselectEvent.java +28 -0
  42. package/android/src/main/java/com/rnmaps/fabric/event/OnDoublePressEvent.java +27 -0
  43. package/android/src/main/java/com/rnmaps/fabric/event/OnDragEndEvent.java +28 -0
  44. package/android/src/main/java/com/rnmaps/fabric/event/OnDragEvent.java +28 -0
  45. package/android/src/main/java/com/rnmaps/fabric/event/OnDragStartEvent.java +28 -0
  46. package/android/src/main/java/com/rnmaps/fabric/event/OnIndoorBuildingFocusedEvent.java +28 -0
  47. package/android/src/main/java/com/rnmaps/fabric/event/OnIndoorLevelActivatedEvent.java +28 -0
  48. package/android/src/main/java/com/rnmaps/fabric/event/OnKmlReadyEvent.java +28 -0
  49. package/android/src/main/java/com/rnmaps/fabric/event/OnLongPressEvent.java +28 -0
  50. package/android/src/main/java/com/rnmaps/fabric/event/OnMapLoadedEvent.java +29 -0
  51. package/android/src/main/java/com/rnmaps/fabric/event/OnMapReadyEvent.java +29 -0
  52. package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDeselectEvent.java +28 -0
  53. package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDragEndEvent.java +28 -0
  54. package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDragEvent.java +28 -0
  55. package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDragStartEvent.java +28 -0
  56. package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerPressEvent.java +28 -0
  57. package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerSelectEvent.java +28 -0
  58. package/android/src/main/java/com/rnmaps/fabric/event/OnPanDragEvent.java +28 -0
  59. package/android/src/main/java/com/rnmaps/fabric/event/OnPoiClickEvent.java +27 -0
  60. package/android/src/main/java/com/rnmaps/fabric/event/OnPressEvent.java +27 -0
  61. package/android/src/main/java/com/rnmaps/fabric/event/OnRegionChangeCompleteEvent.java +30 -0
  62. package/android/src/main/java/com/rnmaps/fabric/event/OnRegionChangeEvent.java +48 -0
  63. package/android/src/main/java/com/rnmaps/fabric/event/OnRegionChangeStartEvent.java +33 -0
  64. package/android/src/main/java/com/rnmaps/fabric/event/OnSelectEvent.java +28 -0
  65. package/android/src/main/java/com/rnmaps/fabric/event/OnUserLocationChangeEvent.java +28 -0
  66. package/android/src/main/java/com/rnmaps/maps/MapAirModulePackage.java +55 -3
  67. package/android/src/main/java/com/rnmaps/maps/MapCallout.java +18 -0
  68. package/android/src/main/java/com/rnmaps/maps/MapCircle.java +24 -0
  69. package/android/src/main/java/com/rnmaps/maps/MapManager.java +14 -14
  70. package/android/src/main/java/com/rnmaps/maps/MapMarker.java +637 -556
  71. package/android/src/main/java/com/rnmaps/maps/MapMarkerManager.java +3 -3
  72. package/android/src/main/java/com/rnmaps/maps/MapModule.java +206 -206
  73. package/android/src/main/java/com/rnmaps/maps/MapOverlay.java +267 -151
  74. package/android/src/main/java/com/rnmaps/maps/MapPolygon.java +31 -1
  75. package/android/src/main/java/com/rnmaps/maps/MapPolyline.java +207 -141
  76. package/android/src/main/java/com/rnmaps/maps/MapPolylineManager.java +1 -16
  77. package/android/src/main/java/com/rnmaps/maps/MapUrlTile.java +18 -18
  78. package/android/src/main/java/com/rnmaps/maps/MapUrlTileManager.java +10 -14
  79. package/android/src/main/java/com/rnmaps/maps/MapView.java +1649 -1336
  80. package/android/src/main/java/com/rnmaps/maps/MapWMSTile.java +3 -3
  81. package/android/src/main/java/com/rnmaps/maps/MapWMSTileManager.java +10 -10
  82. package/android/src/main/jni/CMakeLists.txt +36 -0
  83. package/android/src/main/jni/RNMapsSpecs-generated.cpp +68 -0
  84. package/android/src/main/jni/RNMapsSpecs.h +31 -0
  85. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.cpp +31 -0
  86. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.h +33 -0
  87. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/EventEmitters.cpp +979 -0
  88. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/EventEmitters.h +860 -0
  89. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/Props.cpp +227 -0
  90. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/Props.h +1263 -0
  91. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/RNMapsSpecsJSI-generated.cpp +74 -0
  92. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/RNMapsSpecsJSI.h +268 -0
  93. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.cpp +26 -0
  94. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.h +131 -0
  95. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/States.cpp +16 -0
  96. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/States.h +137 -0
  97. package/ios/AirGoogleMaps/AIRGoogleMap.h +10 -11
  98. package/ios/AirGoogleMaps/AIRGoogleMap.m +104 -71
  99. package/ios/AirGoogleMaps/AIRGoogleMapCircle.m +23 -11
  100. package/ios/AirGoogleMaps/AIRGoogleMapManager.h +1 -0
  101. package/ios/AirGoogleMaps/AIRGoogleMapManager.m +254 -250
  102. package/ios/AirGoogleMaps/AIRGoogleMapMarker.m +6 -3
  103. package/ios/AirGoogleMaps/AIRGoogleMapMarkerManager.m +1 -1
  104. package/ios/AirGoogleMaps/AIRGoogleMapPolygon.m +3 -0
  105. package/ios/AirGoogleMaps/AIRGoogleMapPolyline.h +0 -1
  106. package/ios/AirGoogleMaps/AIRGoogleMapPolyline.m +0 -7
  107. package/ios/AirGoogleMaps/AIRGoogleMapUrlTile.m +2 -2
  108. package/ios/AirGoogleMaps/AIRGoogleMapWMSTile.h +1 -1
  109. package/ios/AirGoogleMaps/AIRGoogleMapWMSTile.m +4 -4
  110. package/ios/AirGoogleMaps/RNMapsGoogleMapView.h +1 -1
  111. package/ios/AirGoogleMaps/RNMapsGoogleMapView.mm +123 -43
  112. package/ios/AirGoogleMaps/RNMapsGoogleMapViewManager.mm +16 -1
  113. package/ios/AirGoogleMaps/RNMapsGooglePolygonView.h +26 -0
  114. package/ios/AirGoogleMaps/RNMapsGooglePolygonView.mm +217 -0
  115. package/ios/AirGoogleMaps/RNMapsGooglePolygonViewManager.mm +26 -0
  116. package/ios/AirMaps/AIRMap.h +8 -9
  117. package/ios/AirMaps/AIRMap.m +222 -239
  118. package/ios/AirMaps/AIRMapManager.m +10 -7
  119. package/ios/AirMaps/AIRMapMarker.h +1 -0
  120. package/ios/AirMaps/AIRMapMarker.m +142 -67
  121. package/ios/AirMaps/Callout/SMCalloutView.m +1 -1
  122. package/ios/AirMaps/FabricPlaceholders/PlaceHolderGoogleMapView.h +28 -0
  123. package/ios/AirMaps/FabricPlaceholders/PlaceHolderGoogleMapView.mm +68 -0
  124. package/ios/AirMaps/FabricPlaceholders/PlaceHolderPolygonView.h +25 -0
  125. package/ios/AirMaps/FabricPlaceholders/PlaceHolderPolygonView.mm +43 -0
  126. package/ios/AirMaps/RNMapsAirModule.h +1 -1
  127. package/ios/AirMaps/RNMapsAirModule.mm +4 -3
  128. package/ios/AirMaps/RNMapsDefines.h +1 -0
  129. package/ios/AirMaps/RNMapsMapView.h +1 -1
  130. package/ios/AirMaps/RNMapsMapView.mm +119 -95
  131. package/ios/AirMaps/RNMapsMapViewManager.mm +19 -1
  132. package/ios/AirMaps/RNMapsMarkerView.h +24 -0
  133. package/ios/AirMaps/RNMapsMarkerView.mm +430 -0
  134. package/ios/AirMaps/RNMapsMarkerViewManager.mm +28 -0
  135. package/ios/AirMaps.xcodeproj/project.pbxproj +20 -0
  136. package/ios/generated/RCTAppDependencyProvider.h +25 -0
  137. package/ios/generated/RCTAppDependencyProvider.mm +55 -0
  138. package/ios/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
  139. package/ios/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
  140. package/ios/generated/RCTThirdPartyComponentsProvider.h +16 -0
  141. package/ios/generated/RCTThirdPartyComponentsProvider.mm +26 -0
  142. package/ios/{AirMaps → generated}/RNMapsAirModuleDelegate.h +2 -2
  143. package/ios/generated/RNMapsSpecs/ComponentDescriptors.cpp +29 -0
  144. package/ios/generated/RNMapsSpecs/ComponentDescriptors.h +31 -0
  145. package/ios/generated/RNMapsSpecs/EventEmitters.cpp +977 -0
  146. package/ios/generated/RNMapsSpecs/EventEmitters.h +846 -0
  147. package/ios/generated/RNMapsSpecs/Props.cpp +194 -0
  148. package/ios/generated/RNMapsSpecs/Props.h +1224 -0
  149. package/ios/generated/RNMapsSpecs/RCTComponentViewHelpers.h +591 -0
  150. package/ios/generated/RNMapsSpecs/RNMapsSpecs-generated.mm +92 -0
  151. package/ios/generated/RNMapsSpecs/RNMapsSpecs.h +137 -0
  152. package/ios/generated/RNMapsSpecs/ShadowNodes.cpp +24 -0
  153. package/ios/generated/RNMapsSpecs/ShadowNodes.h +109 -0
  154. package/ios/generated/RNMapsSpecs/States.cpp +16 -0
  155. package/ios/generated/RNMapsSpecs/States.h +113 -0
  156. package/ios/generated/RNMapsSpecsJSI-generated.cpp +74 -0
  157. package/ios/generated/RNMapsSpecsJSI.h +268 -0
  158. package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
  159. package/package.json +26 -19
  160. package/react-native-google-maps.podspec +26 -0
  161. package/react-native-maps-generated.podspec +31 -0
  162. package/react-native-maps.podspec +55 -15
  163. package/react-native.config.js +16 -0
  164. package/src/AnimatedRegion.ts +169 -0
  165. package/src/Geojson.tsx +541 -0
  166. package/src/MapCallout.tsx +77 -0
  167. package/src/MapCalloutSubview.tsx +64 -0
  168. package/src/MapCircle.tsx +162 -0
  169. package/src/MapHeatmap.tsx +125 -0
  170. package/src/MapLocalTile.tsx +60 -0
  171. package/src/MapMarker.tsx +531 -0
  172. package/src/MapMarkerNativeComponent.ts +51 -0
  173. package/src/MapOverlay.tsx +156 -0
  174. package/src/MapPolygon.tsx +188 -0
  175. package/src/MapPolygon.types.ts +25 -0
  176. package/src/MapPolyline.tsx +215 -0
  177. package/src/MapUrlTile.tsx +169 -0
  178. package/src/MapView.tsx +1230 -0
  179. package/src/MapView.types.ts +212 -0
  180. package/src/MapView.web.ts +2 -0
  181. package/src/MapViewNativeComponent.ts +86 -0
  182. package/src/MapWMSTile.tsx +148 -0
  183. package/src/ProviderConstants.ts +2 -0
  184. package/src/createFabricMap.tsx +253 -0
  185. package/src/decorateMapComponent.ts +227 -0
  186. package/src/fixImageProp.ts +17 -0
  187. package/src/index.ts +52 -0
  188. package/src/sharedTypes.ts +101 -0
  189. package/src/specs/NativeAirMapsModule.ts +36 -0
  190. package/src/specs/NativeComponentCallout.ts +63 -0
  191. package/src/specs/NativeComponentCircle.ts +93 -0
  192. package/src/specs/NativeComponentGoogleMapView.ts +922 -0
  193. package/src/specs/NativeComponentGooglePolygon.ts +94 -0
  194. package/src/specs/NativeComponentMapView.ts +1100 -0
  195. package/src/specs/NativeComponentMarker.ts +326 -0
  196. package/src/specs/NativeComponentOverlay.ts +89 -0
  197. package/src/specs/NativeComponentPolyline.ts +124 -0
  198. package/src/specs/NativeComponentUrlTile.ts +128 -0
  199. package/src/specs/NativeComponentWMSTile.ts +107 -0
  200. package/lib/AnimatedRegion.d.ts +0 -19
  201. package/lib/AnimatedRegion.js +0 -134
  202. package/lib/Geojson.d.ts +0 -204
  203. package/lib/Geojson.js +0 -166
  204. package/lib/MapCallout.d.ts +0 -40
  205. package/lib/MapCallout.js +0 -51
  206. package/lib/MapCalloutSubview.d.ts +0 -34
  207. package/lib/MapCalloutSubview.js +0 -48
  208. package/lib/MapCircle.d.ts +0 -117
  209. package/lib/MapCircle.js +0 -53
  210. package/lib/MapHeatmap.d.ts +0 -78
  211. package/lib/MapHeatmap.js +0 -59
  212. package/lib/MapLocalTile.d.ts +0 -35
  213. package/lib/MapLocalTile.js +0 -44
  214. package/lib/MapMarker.d.ts +0 -309
  215. package/lib/MapMarker.js +0 -116
  216. package/lib/MapMarkerNativeComponent.d.ts +0 -15
  217. package/lib/MapMarkerNativeComponent.js +0 -17
  218. package/lib/MapOverlay.d.ts +0 -87
  219. package/lib/MapOverlay.js +0 -63
  220. package/lib/MapPolygon.d.ts +0 -140
  221. package/lib/MapPolygon.js +0 -53
  222. package/lib/MapPolygon.types.d.ts +0 -18
  223. package/lib/MapPolygon.types.js +0 -2
  224. package/lib/MapPolyline.d.ts +0 -156
  225. package/lib/MapPolyline.js +0 -53
  226. package/lib/MapUrlTile.d.ts +0 -134
  227. package/lib/MapUrlTile.js +0 -44
  228. package/lib/MapView.d.ts +0 -715
  229. package/lib/MapView.js +0 -447
  230. package/lib/MapView.types.d.ts +0 -161
  231. package/lib/MapView.types.js +0 -2
  232. package/lib/MapView.web.d.ts +0 -1
  233. package/lib/MapView.web.js +0 -9
  234. package/lib/MapViewNativeComponent.d.ts +0 -18
  235. package/lib/MapViewNativeComponent.js +0 -19
  236. package/lib/MapWMSTile.d.ts +0 -116
  237. package/lib/MapWMSTile.js +0 -44
  238. package/lib/ProviderConstants.d.ts +0 -2
  239. package/lib/ProviderConstants.js +0 -5
  240. package/lib/createFabricMap.d.ts +0 -23
  241. package/lib/createFabricMap.js +0 -175
  242. package/lib/decorateMapComponent.d.ts +0 -36
  243. package/lib/decorateMapComponent.js +0 -80
  244. package/lib/index.d.ts +0 -38
  245. package/lib/index.js +0 -81
  246. package/lib/sharedTypes.d.ts +0 -81
  247. package/lib/sharedTypes.js +0 -2
  248. package/lib/sharedTypesInternal.js +0 -2
  249. package/lib/specs/NativeAirMapsModule.d.ts +0 -31
  250. package/lib/specs/NativeAirMapsModule.js +0 -4
  251. package/lib/specs/NativeComponentGoogleMapView.d.ts +0 -713
  252. package/lib/specs/NativeComponentGoogleMapView.js +0 -21
  253. package/lib/specs/NativeComponentMapView.d.ts +0 -855
  254. package/lib/specs/NativeComponentMapView.js +0 -21
  255. /package/ios/{AirMaps → generated}/RNMapsHostVewDelegate.h +0 -0
  256. /package/{lib/sharedTypesInternal.d.ts → src/sharedTypesInternal.ts} +0 -0
@@ -111,13 +111,13 @@ RCT_EXPORT_VIEW_PROPERTY(legalLabelInsets, UIEdgeInsets)
111
111
  RCT_EXPORT_VIEW_PROPERTY(mapPadding, UIEdgeInsets)
112
112
  RCT_EXPORT_VIEW_PROPERTY(mapType, MKMapType)
113
113
  RCT_EXPORT_VIEW_PROPERTY(cameraZoomRange, NSDictionary)
114
- RCT_EXPORT_VIEW_PROPERTY(onMapReady, RCTBubblingEventBlock)
115
- RCT_EXPORT_VIEW_PROPERTY(onChange, RCTBubblingEventBlock)
114
+ RCT_EXPORT_VIEW_PROPERTY(onMapReady, RCTDirectEventBlock)
115
+ RCT_EXPORT_VIEW_PROPERTY(onRegionChange, RCTDirectEventBlock)
116
116
  RCT_EXPORT_VIEW_PROPERTY(onRegionChangeStart, RCTDirectEventBlock)
117
- RCT_EXPORT_VIEW_PROPERTY(onPanDrag, RCTBubblingEventBlock)
117
+ RCT_EXPORT_VIEW_PROPERTY(onPanDrag, RCTDirectEventBlock)
118
118
  RCT_EXPORT_VIEW_PROPERTY(onPress, RCTBubblingEventBlock)
119
119
  RCT_EXPORT_VIEW_PROPERTY(onLongPress, RCTBubblingEventBlock)
120
- RCT_EXPORT_VIEW_PROPERTY(onDoublePress, RCTBubblingEventBlock)
120
+ RCT_EXPORT_VIEW_PROPERTY(onDoublePress, RCTDirectEventBlock)
121
121
  RCT_EXPORT_VIEW_PROPERTY(onMarkerPress, RCTDirectEventBlock)
122
122
  RCT_EXPORT_VIEW_PROPERTY(onMarkerSelect, RCTDirectEventBlock)
123
123
  RCT_EXPORT_VIEW_PROPERTY(onMarkerDeselect, RCTDirectEventBlock)
@@ -125,7 +125,7 @@ RCT_EXPORT_VIEW_PROPERTY(onMarkerDragStart, RCTDirectEventBlock)
125
125
  RCT_EXPORT_VIEW_PROPERTY(onMarkerDrag, RCTDirectEventBlock)
126
126
  RCT_EXPORT_VIEW_PROPERTY(onMarkerDragEnd, RCTDirectEventBlock)
127
127
  RCT_EXPORT_VIEW_PROPERTY(onCalloutPress, RCTDirectEventBlock)
128
- RCT_EXPORT_VIEW_PROPERTY(onUserLocationChange, RCTBubblingEventBlock)
128
+ RCT_EXPORT_VIEW_PROPERTY(onUserLocationChange, RCTDirectEventBlock)
129
129
  RCT_CUSTOM_VIEW_PROPERTY(initialRegion, MKCoordinateRegion, AIRMap)
130
130
  {
131
131
  if (json == nil) return;
@@ -935,6 +935,9 @@ static int kDragCenterContext;
935
935
  {
936
936
  // Don't send region did change events until map has
937
937
  // started rendering, as these won't represent the final location
938
+ if (animated && mapView.ignoreRegionChanges){
939
+ mapView.ignoreRegionChanges = false;
940
+ }
938
941
  if(mapView.hasStartedRendering){
939
942
  [self _regionChanged:mapView];
940
943
  }
@@ -1003,14 +1006,14 @@ static int kDragCenterContext;
1003
1006
 
1004
1007
  - (void)_emitRegionChangeEvent:(AIRMap *)mapView continuous:(BOOL)continuous
1005
1008
  {
1006
- if (!mapView.ignoreRegionChanges && mapView.onChange) {
1009
+ if (!mapView.ignoreRegionChanges && mapView.onRegionChange) {
1007
1010
  MKCoordinateRegion region = mapView.region;
1008
1011
  if (!CLLocationCoordinate2DIsValid(region.center)) {
1009
1012
  return;
1010
1013
  }
1011
1014
 
1012
1015
  #define FLUSH_NAN(value) (isnan(value) ? 0 : value)
1013
- mapView.onChange(@{
1016
+ mapView.onRegionChange(@{
1014
1017
  @"continuous": @(continuous),
1015
1018
  @"region": @{
1016
1019
  @"latitude": @(FLUSH_NAN(region.center.latitude)),
@@ -55,6 +55,7 @@
55
55
  - (void)hideCalloutView;
56
56
  - (void)addTapGestureRecognizer;
57
57
  - (void)setUseLegacyPinView:(BOOL)value;
58
+ - (void)animateToCoordinate:(CLLocationCoordinate2D)newCoordinate duration:(NSTimeInterval)duration;
58
59
 
59
60
  @end
60
61
 
@@ -14,6 +14,8 @@
14
14
  #import <React/RCTImageLoaderProtocol.h>
15
15
  #import <React/RCTUtils.h>
16
16
  #import <React/UIView+React.h>
17
+ #import <React/RCTImageLoader.h>
18
+ #import <React/RCTBridge+Private.h>
17
19
 
18
20
  NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
19
21
 
@@ -28,6 +30,13 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
28
30
  BOOL _calloutIsOpen;
29
31
  NSInteger _zIndexBeforeOpen;
30
32
  BOOL _useLegacyPinView;
33
+
34
+ CADisplayLink *_displayLink;
35
+ CLLocationCoordinate2D _startCoordinate;
36
+ CLLocationCoordinate2D _endCoordinate;
37
+ NSTimeInterval _animationStartTime;
38
+ NSTimeInterval _animationDuration;
39
+ BOOL _isAnimating;
31
40
  }
32
41
 
33
42
  - (instancetype)initWithFrame:(CGRect)frame {
@@ -52,10 +61,10 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
52
61
 
53
62
  // Avoid crashes due to nan coords
54
63
  if (isnan(center.x) || isnan(center.y) ||
55
- isnan(bounds.origin.x) || isnan(bounds.origin.y) ||
56
- isnan(bounds.size.width) || isnan(bounds.size.height)) {
64
+ isnan(bounds.origin.x) || isnan(bounds.origin.y) ||
65
+ isnan(bounds.size.width) || isnan(bounds.size.height)) {
57
66
  RCTLogError(@"Invalid layout for (%@)%@. position: %@. bounds: %@",
58
- self.reactTag, self, NSStringFromCGPoint(center), NSStringFromCGRect(bounds));
67
+ self.reactTag, self, NSStringFromCGPoint(center), NSStringFromCGRect(bounds));
59
68
  return;
60
69
  }
61
70
 
@@ -68,6 +77,7 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
68
77
  self.calloutView = (AIRMapCallout *)subview;
69
78
  } else {
70
79
  [super insertReactSubview:(UIView *)subview atIndex:atIndex];
80
+ [self addSubview:subview];
71
81
  }
72
82
  }
73
83
  - (void) setFrame:(CGRect)frame {
@@ -84,6 +94,7 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
84
94
  self.calloutView = nil;
85
95
  } else {
86
96
  [super removeReactSubview:(UIView *)subview];
97
+ [(UIView *) subview removeFromSuperview];
87
98
  }
88
99
  }
89
100
 
@@ -104,7 +115,8 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
104
115
 
105
116
  _pinView.draggable = self.draggable;
106
117
  _pinView.layer.zPosition = self.zIndex;
107
-
118
+ _pinView.displayPriority = self.displayPriority;
119
+ _pinView.zPriority = self.zIndex;
108
120
  return _pinView;
109
121
  }
110
122
 
@@ -115,11 +127,14 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
115
127
  [self addGestureRecognizerToView:_markerView];
116
128
  _markerView.annotation = self;
117
129
 
118
- _markerView.draggable = self.draggable;
119
- _markerView.layer.zPosition = self.zIndex;
120
- _markerView.markerTintColor = self.pinColor;
121
- _markerView.titleVisibility = self.titleVisibility ?: MKFeatureVisibilityHidden;
122
- _markerView.subtitleVisibility = self.subtitleVisibility ?: MKFeatureVisibilityHidden;
130
+ _markerView.draggable = self.draggable;
131
+ _markerView.layer.zPosition = self.zIndex;
132
+ _markerView.markerTintColor = self.pinColor;
133
+ _markerView.titleVisibility = self.titleVisibility ?: MKFeatureVisibilityHidden;
134
+ _markerView.subtitleVisibility = self.subtitleVisibility ?: MKFeatureVisibilityHidden;
135
+ _markerView.displayPriority = self.displayPriority;
136
+ _markerView.zPriority = self.zIndex;
137
+
123
138
 
124
139
  }
125
140
  return _markerView ?: _pinView;
@@ -129,6 +144,7 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
129
144
  // In either case, we want to return the AIRMapMarker since it is both an MKAnnotation and an
130
145
  // MKAnnotationView all at the same time.
131
146
  self.layer.zPosition = self.zIndex;
147
+ self.zPriority = self.zIndex;
132
148
  return self;
133
149
  }
134
150
  }
@@ -138,7 +154,7 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
138
154
  // Set everything necessary on the calloutView before it becomes visible.
139
155
 
140
156
  // Apply the MKAnnotationView's desired calloutOffset (from the top-middle of the view)
141
- if ([self shouldUsePinView] && !_hasSetCalloutOffset && _useLegacyPinView) {
157
+ if ([self shouldUsePinView] && !_hasSetCalloutOffset && _useLegacyPinView) {
142
158
  calloutView.calloutOffset = CGPointMake(-8,0);
143
159
  } else {
144
160
  calloutView.calloutOffset = self.calloutOffset;
@@ -183,12 +199,12 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
183
199
  [self.map selectAnnotation:self animated:NO];
184
200
 
185
201
  id event = @{
186
- @"action": @"marker-select",
187
- @"id": self.identifier ?: @"unknown",
188
- @"coordinate": @{
189
- @"latitude": @(self.coordinate.latitude),
190
- @"longitude": @(self.coordinate.longitude)
191
- }
202
+ @"action": @"marker-select",
203
+ @"id": self.identifier ?: @"unknown",
204
+ @"coordinate": @{
205
+ @"latitude": @(self.coordinate.latitude),
206
+ @"longitude": @(self.coordinate.longitude)
207
+ }
192
208
  };
193
209
 
194
210
  if (self.map.onMarkerSelect) self.map.onMarkerSelect(event);
@@ -204,9 +220,9 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
204
220
  // This is where we present our custom callout view... MapKit's built-in callout doesn't have the flexibility
205
221
  // we need, but a lot of work was done by Nick Farina to make this identical to MapKit's built-in.
206
222
  [self.map.calloutView presentCalloutFromRect:annotationView.bounds
207
- inView:annotationView
208
- constrainedToView:self.map
209
- animated:YES];
223
+ inView:annotationView
224
+ constrainedToView:self.map
225
+ animated:YES];
210
226
  }
211
227
 
212
228
  #pragma mark - Tap Gesture & Events.
@@ -249,19 +265,19 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
249
265
  }
250
266
 
251
267
  id event = @{
252
- @"action": calloutSubview ? @"callout-inside-press" : @"callout-press",
253
- @"id": marker.identifier ?: @"unknown",
254
- @"point": @{
255
- @"x": @(touchPointReal.x),
256
- @"y": @(touchPointReal.y),
257
- },
258
- @"frame": @{
259
- @"x": @(bubbleFrame.origin.x),
260
- @"y": @(bubbleFrame.origin.y),
261
- @"width": @(bubbleFrame.size.width),
262
- @"height": @(bubbleFrame.size.height),
263
- }
264
- };
268
+ @"action": calloutSubview ? @"callout-inside-press" : @"callout-press",
269
+ @"id": marker.identifier ?: @"unknown",
270
+ @"point": @{
271
+ @"x": @(touchPointReal.x),
272
+ @"y": @(touchPointReal.y),
273
+ },
274
+ @"frame": @{
275
+ @"x": @(bubbleFrame.origin.x),
276
+ @"y": @(bubbleFrame.origin.y),
277
+ @"width": @(bubbleFrame.size.width),
278
+ @"height": @(bubbleFrame.size.height),
279
+ }
280
+ };
265
281
 
266
282
  if (calloutSubview) calloutSubview.onPress(event);
267
283
  if (marker.onCalloutPress) marker.onCalloutPress(event);
@@ -274,17 +290,17 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
274
290
  // the actual marker got clicked
275
291
  CGPoint touchPointReal = [recognizer locationInView:self.calloutView];
276
292
  id event = @{
277
- @"action": @"marker-press",
278
- @"id": marker.identifier ?: @"unknown",
279
- @"coordinate": @{
280
- @"latitude": @(marker.coordinate.latitude),
281
- @"longitude": @(marker.coordinate.longitude)
282
- },
283
- @"position": @{
284
- @"x": @(touchPointReal.x),
285
- @"y": @(touchPointReal.y),
286
- }
287
- };
293
+ @"action": @"marker-press",
294
+ @"id": marker.identifier ?: @"unknown",
295
+ @"coordinate": @{
296
+ @"latitude": @(marker.coordinate.latitude),
297
+ @"longitude": @(marker.coordinate.longitude)
298
+ },
299
+ @"position": @{
300
+ @"x": @(touchPointReal.x),
301
+ @"y": @(touchPointReal.y),
302
+ }
303
+ };
288
304
 
289
305
  if (marker.onPress) marker.onPress(event);
290
306
  if (marker.map.onMarkerPress) marker.map.onMarkerPress(event);
@@ -303,12 +319,12 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
303
319
  [self.map deselectAnnotation:self animated:NO];
304
320
 
305
321
  id event = @{
306
- @"action": @"marker-deselect",
307
- @"id": self.identifier ?: @"unknown",
308
- @"coordinate": @{
309
- @"latitude": @(self.coordinate.latitude),
310
- @"longitude": @(self.coordinate.longitude)
311
- }
322
+ @"action": @"marker-deselect",
323
+ @"id": self.identifier ?: @"unknown",
324
+ @"coordinate": @{
325
+ @"latitude": @(self.coordinate.latitude),
326
+ @"longitude": @(self.coordinate.longitude)
327
+ }
312
328
  };
313
329
 
314
330
  if (self.map.onMarkerDeselect) self.map.onMarkerDeselect(event);
@@ -333,7 +349,7 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
333
349
 
334
350
  - (void)setOpacity:(double)opacity
335
351
  {
336
- [self setAlpha:opacity];
352
+ [self setAlpha:opacity];
337
353
  }
338
354
 
339
355
  - (void)setImageSrc:(NSString *)imageSrc
@@ -344,22 +360,25 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
344
360
  _reloadImageCancellationBlock();
345
361
  _reloadImageCancellationBlock = nil;
346
362
  }
347
- _reloadImageCancellationBlock = [[_bridge moduleForName:@"ImageLoader"] loadImageWithURLRequest:[RCTConvert NSURLRequest:_imageSrc]
348
- size:self.bounds.size
349
- scale:RCTScreenScale()
350
- clipped:YES
351
- resizeMode:RCTResizeModeCenter
352
- progressBlock:nil
353
- partialLoadBlock:nil
354
- completionBlock:^(NSError *error, UIImage *image) {
355
- if (error) {
356
- // TODO(lmr): do something with the error?
357
- NSLog(@"%@", error);
358
- }
359
- dispatch_async(dispatch_get_main_queue(), ^{
360
- self.image = image;
361
- });
362
- }];
363
+ __weak __typeof(self) weakSelf = self;
364
+
365
+ _reloadImageCancellationBlock = [[[RCTBridge currentBridge] moduleForName:@"ImageLoader"] loadImageWithURLRequest:[RCTConvert NSURLRequest:_imageSrc]
366
+ size:self.bounds.size
367
+ scale:RCTScreenScale()
368
+ clipped:YES
369
+ resizeMode:RCTResizeModeCenter
370
+ progressBlock:nil
371
+ partialLoadBlock:nil
372
+ completionBlock:^(NSError *error, UIImage *image) {
373
+ if (error) {
374
+ // TODO(lmr): do something with the error?
375
+ NSLog(@"failed to load image: %@", error);
376
+ }
377
+ dispatch_async(dispatch_get_main_queue(), ^{
378
+ __strong __typeof(weakSelf) strongSelf = weakSelf;
379
+ strongSelf.image = image;
380
+ });
381
+ }];
363
382
  }
364
383
 
365
384
  - (void)setPinColor:(UIColor *)pinColor
@@ -381,7 +400,7 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
381
400
  }
382
401
 
383
402
  - (BOOL)isSelected {
384
- return _isPreselected || [super isSelected];
403
+ return _isPreselected || [super isSelected];
385
404
  }
386
405
 
387
406
  - (void)dealloc {
@@ -393,9 +412,65 @@ NSInteger const AIR_CALLOUT_OPEN_ZINDEX_BASELINE = 999;
393
412
  self.layer.zPosition = _zIndex;
394
413
  }
395
414
  }
415
+ - (void)layoutSubviews
416
+ {
417
+ [super layoutSubviews];
418
+
419
+ CGRect reactFrame = self.frame;
420
+
421
+ UIView *firstSubView = self.subviews.firstObject;
422
+ if (firstSubView && (CGRectGetWidth(firstSubView.frame) > CGRectGetWidth(reactFrame) ||
423
+ CGRectGetHeight(firstSubView.frame) > CGRectGetHeight(reactFrame))) {
424
+ reactFrame = firstSubView.frame;
425
+ }
426
+ [self reactSetFrame:reactFrame];
427
+ }
396
428
 
397
429
  - (void)setUseLegacyPinView:(BOOL)value {
398
430
  _useLegacyPinView = value;
399
431
  }
400
432
 
433
+ - (void)animateToCoordinate:(CLLocationCoordinate2D)newCoordinate duration:(NSTimeInterval)duration {
434
+ if (_isAnimating) {
435
+ NSLog(@"Animation already in progress. Rejecting new animation request.");
436
+ return;
437
+ }
438
+
439
+ // Mark as animating
440
+ _isAnimating = YES;
441
+
442
+ // Store animation parameters
443
+ _startCoordinate = self.coordinate;
444
+ _endCoordinate = newCoordinate;
445
+ _animationDuration = duration;
446
+ _animationStartTime = [NSDate timeIntervalSinceReferenceDate];
447
+
448
+ // Start a CADisplayLink
449
+ if (_displayLink) {
450
+ [_displayLink invalidate];
451
+ }
452
+ _displayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(updatePosition)];
453
+ [_displayLink addToRunLoop:[NSRunLoop mainRunLoop] forMode:NSRunLoopCommonModes];
454
+ }
455
+
456
+ - (void)updatePosition {
457
+ NSTimeInterval elapsed = [NSDate timeIntervalSinceReferenceDate] - _animationStartTime;
458
+ CGFloat progress = MIN(elapsed / _animationDuration, 1.0);
459
+
460
+ // Interpolate coordinates
461
+ CLLocationDegrees currentLatitude = _startCoordinate.latitude + progress * (_endCoordinate.latitude - _startCoordinate.latitude);
462
+ CLLocationDegrees currentLongitude = _startCoordinate.longitude + progress * (_endCoordinate.longitude - _startCoordinate.longitude);
463
+
464
+ // Update annotation's coordinate
465
+ CLLocationCoordinate2D currentCoordinate = CLLocationCoordinate2DMake(currentLatitude, currentLongitude);
466
+ [self setValue:[NSValue valueWithMKCoordinate:currentCoordinate] forKey:@"coordinate"];
467
+
468
+ // Stop the animation when complete
469
+ if (progress == 1.0) {
470
+ [_displayLink invalidate];
471
+ _displayLink = nil;
472
+ _isAnimating = NO; // Reset the animation state
473
+ }
474
+ }
475
+
401
476
  @end
@@ -855,4 +855,4 @@ static UIImage *blackArrowImage = nil, *whiteArrowImage = nil, *grayArrowImage =
855
855
  - (CGFloat)frameBottom { return self.frame.origin.y + self.frame.size.height; }
856
856
  - (void)setFrameBottom:(CGFloat)bottom { self.frame = (CGRect){ .origin=self.frame.origin, .size.width=self.frame.size.width, .size.height=fmaxf(bottom-self.frame.origin.y,0) }; }
857
857
 
858
- @end
858
+ @end
@@ -0,0 +1,28 @@
1
+ //
2
+ // RNMapsGoogleMapView.h
3
+ //
4
+ //
5
+ // Created by Salah Ghanim on 23.11.24.
6
+ // Copyright © 2024 react-native-maps. All rights reserved.
7
+ //
8
+ #ifdef RCT_NEW_ARCH_ENABLED
9
+ #include "RNMapsDefines.h"
10
+
11
+ #if HAVE_GOOGLE_MAPS == 0
12
+
13
+ #import <React/RCTViewComponentView.h>
14
+ #import <UIKit/UIKit.h>
15
+ #import <react-native-maps-generated/RNMapsHostVewDelegate.h>
16
+
17
+
18
+
19
+ NS_ASSUME_NONNULL_BEGIN
20
+
21
+ @interface RNMapsGoogleMapView : RCTViewComponentView
22
+
23
+ @end
24
+
25
+ NS_ASSUME_NONNULL_END
26
+
27
+ #endif
28
+ #endif
@@ -0,0 +1,68 @@
1
+ //
2
+ // RNMapsGoogleMapView.mm
3
+ //
4
+ //
5
+ // Created by Salah Ghanim on 23.11.24.
6
+ // Copyright © 2024 react-native-maps. All rights reserved.
7
+ //
8
+ #include "RNMapsDefines.h"
9
+
10
+ #if HAVE_GOOGLE_MAPS == 0
11
+
12
+ #import <react-native-maps-generated/ComponentDescriptors.h>
13
+ #import <react-native-maps-generated/EventEmitters.h>
14
+ #import <react-native-maps-generated/Props.h>
15
+ #import <react-native-maps-generated/RCTComponentViewHelpers.h>
16
+ #import "RCTFabricComponentsPlugins.h"
17
+ #import <React/RCTConversions.h>
18
+ #import "PlaceHolderGoogleMapView.h"
19
+
20
+ using namespace facebook::react;
21
+
22
+
23
+ @implementation RNMapsGoogleMapView
24
+
25
+
26
+ #pragma mark - JS Commands
27
+ - (void)animateToRegion:(NSString *)regionJSON duration:(NSInteger)duration{
28
+ }
29
+ - (void)setCamera:(NSString *)cameraJSON{
30
+ }
31
+
32
+ - (void)animateCamera:(NSString *)cameraJSON duration:(NSInteger)duration{
33
+ }
34
+
35
+ - (void)fitToElements:(NSString *)edgePaddingJSON animated:(BOOL)animated {
36
+ }
37
+
38
+ - (void)fitToSuppliedMarkers:(NSString *)markersJSON edgePaddingJSON:(NSString *)edgePaddingJSON animated:(BOOL)animated {
39
+ }
40
+ - (void)fitToCoordinates:(NSString *)coordinatesJSON edgePaddingJSON:(NSString *)edgePaddingJSON animated:(BOOL)animated {
41
+
42
+ }
43
+ - (void) setIndoorActiveLevelIndex:(NSInteger)activeLevelIndex
44
+ {
45
+
46
+ }
47
+
48
+ #pragma mark - Native commands
49
+
50
+ - (void)handleCommand:(const NSString *)commandName args:(const NSArray *)args
51
+ {
52
+ }
53
+
54
+
55
+ + (ComponentDescriptorProvider)componentDescriptorProvider
56
+ {
57
+ return concreteComponentDescriptorProvider<RNMapsGoogleMapViewComponentDescriptor>();
58
+ }
59
+
60
+
61
+ @end
62
+
63
+ Class<RCTComponentViewProtocol> RNMapsGoogleMapViewCls(void)
64
+ {
65
+ return RNMapsGoogleMapView.class;
66
+ }
67
+
68
+ #endif
@@ -0,0 +1,25 @@
1
+ //
2
+ // RNMapsGoogleMapView.h
3
+ //
4
+ //
5
+ // Created by Salah Ghanim on 23.11.24.
6
+ // Copyright © 2024 react-native-maps. All rights reserved.
7
+ //
8
+ #ifdef RCT_NEW_ARCH_ENABLED
9
+ #include "RNMapsDefines.h"
10
+
11
+ #if HAVE_GOOGLE_MAPS == 0
12
+
13
+ #import <React/RCTViewComponentView.h>
14
+ #import <UIKit/UIKit.h>
15
+
16
+
17
+ NS_ASSUME_NONNULL_BEGIN
18
+ @interface RNMapsGooglePolygonView : RCTViewComponentView
19
+
20
+ @end
21
+
22
+ NS_ASSUME_NONNULL_END
23
+
24
+ #endif
25
+ #endif
@@ -0,0 +1,43 @@
1
+ //
2
+ // RNMapsGoogleMapView.mm
3
+ //
4
+ //
5
+ // Created by Salah Ghanim on 23.11.24.
6
+ // Copyright © 2024 react-native-maps. All rights reserved.
7
+ //
8
+ #include "RNMapsDefines.h"
9
+
10
+ #if HAVE_GOOGLE_MAPS == 0
11
+
12
+ #import <react-native-maps-generated/ComponentDescriptors.h>
13
+ #import <react-native-maps-generated/EventEmitters.h>
14
+ #import <react-native-maps-generated/Props.h>
15
+ #import <react-native-maps-generated/RCTComponentViewHelpers.h>
16
+
17
+ #import "RCTFabricComponentsPlugins.h"
18
+ #import <React/RCTConversions.h>
19
+ #import "PlaceHolderPolygonView.h"
20
+
21
+ using namespace facebook::react;
22
+
23
+
24
+ @interface RNMapsGooglePolygonView () <RCTRNMapsGooglePolygonViewProtocol>
25
+ @end
26
+
27
+ @implementation RNMapsGooglePolygonView
28
+
29
+
30
+
31
+ + (ComponentDescriptorProvider)componentDescriptorProvider
32
+ {
33
+ return concreteComponentDescriptorProvider<RNMapsGooglePolygonComponentDescriptor>();
34
+ }
35
+
36
+ @end
37
+
38
+ Class<RCTComponentViewProtocol> RNMapsGooglePolygonCls(void)
39
+ {
40
+ return RNMapsGooglePolygonView.class;
41
+ }
42
+
43
+ #endif
@@ -3,7 +3,7 @@
3
3
  #ifdef RCT_NEW_ARCH_ENABLED
4
4
 
5
5
  #import <Foundation/Foundation.h>
6
- #import <RNMapsSpecs/RNMapsSpecs.h>
6
+ #import <react-native-maps-generated/RNMapsSpecs.h>
7
7
 
8
8
  NS_ASSUME_NONNULL_BEGIN
9
9
 
@@ -37,7 +37,7 @@
37
37
  resolve:(RCTPromiseResolveBlock)resolve
38
38
  reject:(RCTPromiseRejectBlock)reject {
39
39
  [self executeWithMapView:tag success:^(id<RNMapsAirModuleDelegate> mapView) {
40
- resolve([mapView getCamera]);
40
+ resolve([mapView getCameraDic]);
41
41
  } reject:reject];
42
42
 
43
43
  }
@@ -60,12 +60,13 @@
60
60
  } reject:reject];
61
61
  }
62
62
  - (void)takeSnapshot:(double)tag
63
- config:(NSDictionary *)config
63
+ config:(NSString *)configStr
64
64
  resolve:(RCTPromiseResolveBlock)resolve
65
65
  reject:(RCTPromiseRejectBlock)reject
66
66
  {
67
+ NSDictionary* config = [RCTConvert dictonaryFromString:configStr];
67
68
  [self executeWithMapView:tag success:^(id<RNMapsAirModuleDelegate> mapView) {
68
- [mapView takeSnapshotWithConfig:config callback:resolve];
69
+ [mapView takeSnapshotWithConfig:config success:resolve error:reject];
69
70
  } reject:reject];
70
71
  }
71
72
 
@@ -0,0 +1 @@
1
+ #define HAVE_GOOGLE_MAPS 1
@@ -9,7 +9,7 @@
9
9
 
10
10
  #import <React/RCTViewComponentView.h>
11
11
  #import <UIKit/UIKit.h>
12
- #import "RNMapsHostVewDelegate.h"
12
+ #import <react-native-maps-generated/RNMapsHostVewDelegate.h>
13
13
 
14
14
  @class AIRMap;
15
15