react-native-maps 1.21.0-alpha.99 → 1.22.0

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 (234) hide show
  1. package/README.md +9 -4
  2. package/android/build.gradle +65 -72
  3. package/android/gradle/wrapper/gradle-wrapper.properties +1 -1
  4. package/android/src/main/RCTAppDependencyProvider.h +25 -0
  5. package/android/src/main/RCTAppDependencyProvider.mm +55 -0
  6. package/android/src/main/RCTModulesConformingToProtocolsProvider.h +18 -0
  7. package/android/src/main/RCTModulesConformingToProtocolsProvider.mm +33 -0
  8. package/android/src/main/RCTThirdPartyComponentsProvider.h +16 -0
  9. package/android/src/main/RCTThirdPartyComponentsProvider.mm +28 -0
  10. package/android/src/main/ReactAppDependencyProvider.podspec +34 -0
  11. package/android/src/main/java/com/facebook/fbreact/specs/NativeAirMapsModuleSpec.java +63 -0
  12. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCalloutManagerDelegate.java +35 -0
  13. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCalloutManagerInterface.java +17 -0
  14. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCircleManagerDelegate.java +49 -0
  15. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCircleManagerInterface.java +23 -0
  16. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsGooglePolygonManagerDelegate.java +49 -0
  17. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsGooglePolygonManagerInterface.java +23 -0
  18. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerDelegate.java +209 -0
  19. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerInterface.java +74 -0
  20. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMarkerManagerDelegate.java +104 -0
  21. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMarkerManagerInterface.java +39 -0
  22. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsOverlayManagerDelegate.java +45 -0
  23. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsOverlayManagerInterface.java +22 -0
  24. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsPolylineManagerDelegate.java +58 -0
  25. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsPolylineManagerInterface.java +26 -0
  26. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsUrlTileManagerDelegate.java +62 -0
  27. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsUrlTileManagerInterface.java +27 -0
  28. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsWMSTileManagerDelegate.java +56 -0
  29. package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsWMSTileManagerInterface.java +25 -0
  30. package/android/src/main/java/com/rnmaps/fabric/MapViewManager.java +5 -1
  31. package/android/src/main/java/com/rnmaps/fabric/NativeAirMapsModule.java +1 -1
  32. package/android/src/main/java/com/rnmaps/fabric/OverlayManager.java +9 -3
  33. package/android/src/main/java/com/rnmaps/fabric/UrlTileManager.java +124 -0
  34. package/android/src/main/java/com/rnmaps/fabric/WMSTileManager.java +114 -0
  35. package/android/src/main/java/com/rnmaps/maps/MapAirModulePackage.java +19 -3
  36. package/android/src/main/java/com/rnmaps/maps/MapMarker.java +608 -603
  37. package/android/src/main/java/com/rnmaps/maps/MapMarkerManager.java +3 -3
  38. package/android/src/main/java/com/rnmaps/maps/MapOverlay.java +2 -22
  39. package/android/src/main/java/com/rnmaps/maps/MapOverlayManager.java +23 -1
  40. package/android/src/main/java/com/rnmaps/maps/MapUrlTile.java +18 -18
  41. package/android/src/main/java/com/rnmaps/maps/MapUrlTileManager.java +10 -14
  42. package/android/src/main/java/com/rnmaps/maps/MapView.java +58 -49
  43. package/android/src/main/java/com/rnmaps/maps/MapWMSTile.java +3 -3
  44. package/android/src/main/java/com/rnmaps/maps/MapWMSTileManager.java +10 -10
  45. package/android/src/main/jni/CMakeLists.txt +36 -0
  46. package/android/src/main/jni/RNMapsSpecs-generated.cpp +68 -0
  47. package/android/src/main/jni/RNMapsSpecs.h +31 -0
  48. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.cpp +31 -0
  49. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.h +33 -0
  50. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/EventEmitters.cpp +979 -0
  51. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/EventEmitters.h +860 -0
  52. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/Props.cpp +227 -0
  53. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/Props.h +1297 -0
  54. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/RNMapsSpecsJSI-generated.cpp +74 -0
  55. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/RNMapsSpecsJSI.h +268 -0
  56. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.cpp +26 -0
  57. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.h +131 -0
  58. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/States.cpp +16 -0
  59. package/android/src/main/jni/react/renderer/components/RNMapsSpecs/States.h +137 -0
  60. package/app.plugin.js +1 -0
  61. package/ios/AirGoogleMaps/AIRGoogleMap.h +13 -13
  62. package/ios/AirGoogleMaps/{AIRGoogleMap.m → AIRGoogleMap.mm} +32 -34
  63. package/ios/AirGoogleMaps/AIRGoogleMapManager.h +1 -0
  64. package/ios/AirGoogleMaps/AIRGoogleMapManager.mm +543 -0
  65. package/ios/AirGoogleMaps/AIRGoogleMapMarker.m +3 -3
  66. package/ios/AirGoogleMaps/AIRGoogleMapMarkerManager.m +1 -1
  67. package/ios/AirGoogleMaps/AIRGoogleMapUrlTile.m +2 -2
  68. package/ios/AirGoogleMaps/AIRGoogleMapWMSTile.m +2 -2
  69. package/ios/AirGoogleMaps/RNMapsGoogleMapView.h +5 -2
  70. package/ios/AirGoogleMaps/RNMapsGoogleMapView.mm +41 -33
  71. package/ios/AirGoogleMaps/RNMapsGoogleMapViewManager.mm +16 -1
  72. package/ios/AirGoogleMaps/RNMapsGooglePolygonView.mm +23 -14
  73. package/ios/AirGoogleMaps/RNMapsGooglePolygonViewManager.mm +1 -0
  74. package/ios/AirMaps/AIRMap.h +8 -9
  75. package/ios/AirMaps/{AIRMap.m → AIRMap.mm} +18 -14
  76. package/ios/AirMaps/AIRMapManager.m +8 -19
  77. package/ios/AirMaps/AIRMapMarker.m +57 -44
  78. package/ios/AirMaps/AIRMapOverlay.m +2 -2
  79. package/ios/AirMaps/AIRMapWMSTile.m +8 -8
  80. package/ios/AirMaps/FabricPlaceholders/PlaceHolderGoogleMapView.h +25 -0
  81. package/ios/AirMaps/FabricPlaceholders/PlaceHolderGoogleMapView.mm +77 -0
  82. package/ios/AirMaps/FabricPlaceholders/PlaceHolderPolygonView.h +25 -0
  83. package/ios/AirMaps/FabricPlaceholders/PlaceHolderPolygonView.mm +51 -0
  84. package/ios/AirMaps/RNMapsAirModule.h +2 -3
  85. package/ios/AirMaps/RNMapsAirModule.mm +14 -0
  86. package/ios/AirMaps/RNMapsDefines.h +1 -0
  87. package/ios/AirMaps/RNMapsMapView.h +5 -2
  88. package/ios/AirMaps/RNMapsMapView.mm +16 -6
  89. package/ios/AirMaps/RNMapsMapViewManager.mm +19 -1
  90. package/ios/AirMaps/RNMapsMarkerView.mm +12 -4
  91. package/ios/AirMaps/RNMapsMarkerViewManager.mm +7 -0
  92. package/ios/AirMaps/module.modulemap +6 -0
  93. package/ios/AirMaps.xcodeproj/project.pbxproj +15 -55
  94. package/ios/generated/RCTAppDependencyProvider.h +25 -0
  95. package/ios/generated/RCTAppDependencyProvider.mm +55 -0
  96. package/ios/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
  97. package/ios/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
  98. package/ios/generated/RCTThirdPartyComponentsProvider.h +16 -0
  99. package/ios/generated/RCTThirdPartyComponentsProvider.mm +26 -0
  100. package/ios/{AirMaps → generated}/RNMapsAirModuleDelegate.h +1 -1
  101. package/ios/generated/RNMapsSpecs/ComponentDescriptors.cpp +29 -0
  102. package/ios/generated/RNMapsSpecs/ComponentDescriptors.h +31 -0
  103. package/ios/generated/RNMapsSpecs/EventEmitters.cpp +977 -0
  104. package/ios/generated/RNMapsSpecs/EventEmitters.h +846 -0
  105. package/ios/generated/RNMapsSpecs/Props.cpp +194 -0
  106. package/ios/generated/RNMapsSpecs/Props.h +1224 -0
  107. package/ios/generated/RNMapsSpecs/RCTComponentViewHelpers.h +591 -0
  108. package/ios/generated/RNMapsSpecs/RNMapsSpecs-generated.mm +92 -0
  109. package/ios/generated/RNMapsSpecs/RNMapsSpecs.h +137 -0
  110. package/ios/generated/RNMapsSpecs/ShadowNodes.cpp +24 -0
  111. package/ios/generated/RNMapsSpecs/ShadowNodes.h +109 -0
  112. package/ios/generated/RNMapsSpecs/States.cpp +16 -0
  113. package/ios/generated/RNMapsSpecs/States.h +113 -0
  114. package/ios/generated/RNMapsSpecsJSI-generated.cpp +74 -0
  115. package/ios/generated/RNMapsSpecsJSI.h +268 -0
  116. package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
  117. package/ios/generated/module.modulemap +15 -0
  118. package/package.json +34 -27
  119. package/plugin/build/android.js +58 -0
  120. package/plugin/build/index.js +10 -0
  121. package/plugin/build/ios.js +172 -0
  122. package/react-native-google-maps.podspec +27 -0
  123. package/react-native-maps-generated.podspec +31 -0
  124. package/react-native-maps.podspec +52 -46
  125. package/react-native.config.js +16 -0
  126. package/src/AnimatedRegion.ts +169 -0
  127. package/src/Geojson.tsx +541 -0
  128. package/src/MapCallout.tsx +77 -0
  129. package/src/MapCalloutSubview.tsx +64 -0
  130. package/src/MapCircle.tsx +162 -0
  131. package/src/MapHeatmap.tsx +125 -0
  132. package/src/MapLocalTile.tsx +60 -0
  133. package/src/MapMarker.tsx +531 -0
  134. package/src/MapMarkerNativeComponent.ts +51 -0
  135. package/src/MapOverlay.tsx +178 -0
  136. package/src/MapPolygon.tsx +188 -0
  137. package/src/MapPolygon.types.ts +25 -0
  138. package/src/MapPolyline.tsx +215 -0
  139. package/src/MapUrlTile.tsx +169 -0
  140. package/src/MapView.tsx +1230 -0
  141. package/src/MapView.types.ts +212 -0
  142. package/src/MapView.web.ts +2 -0
  143. package/src/MapViewNativeComponent.ts +86 -0
  144. package/src/MapWMSTile.tsx +148 -0
  145. package/src/ProviderConstants.ts +2 -0
  146. package/src/createFabricMap.tsx +253 -0
  147. package/src/decorateMapComponent.ts +229 -0
  148. package/src/fixImageProp.ts +17 -0
  149. package/src/index.ts +52 -0
  150. package/src/sharedTypes.ts +101 -0
  151. package/{specs → src/specs}/NativeComponentCircle.ts +3 -4
  152. package/{specs → src/specs}/NativeComponentGoogleMapView.ts +15 -9
  153. package/{specs → src/specs}/NativeComponentMapView.ts +61 -32
  154. package/{specs → src/specs}/NativeComponentOverlay.ts +11 -2
  155. package/{specs → src/specs}/NativeComponentPolyline.ts +1 -1
  156. package/src/specs/NativeComponentUrlTile.ts +128 -0
  157. package/src/specs/NativeComponentWMSTile.ts +107 -0
  158. package/ios/AirGoogleMaps/AIRGoogleMapManager.m +0 -533
  159. package/lib/AnimatedRegion.d.ts +0 -19
  160. package/lib/AnimatedRegion.js +0 -134
  161. package/lib/Geojson.d.ts +0 -204
  162. package/lib/Geojson.js +0 -166
  163. package/lib/MapCallout.d.ts +0 -40
  164. package/lib/MapCallout.js +0 -51
  165. package/lib/MapCalloutSubview.d.ts +0 -34
  166. package/lib/MapCalloutSubview.js +0 -48
  167. package/lib/MapCircle.d.ts +0 -117
  168. package/lib/MapCircle.js +0 -53
  169. package/lib/MapHeatmap.d.ts +0 -78
  170. package/lib/MapHeatmap.js +0 -59
  171. package/lib/MapLocalTile.d.ts +0 -35
  172. package/lib/MapLocalTile.js +0 -44
  173. package/lib/MapMarker.d.ts +0 -322
  174. package/lib/MapMarker.js +0 -158
  175. package/lib/MapMarkerNativeComponent.d.ts +0 -15
  176. package/lib/MapMarkerNativeComponent.js +0 -15
  177. package/lib/MapOverlay.d.ts +0 -88
  178. package/lib/MapOverlay.js +0 -65
  179. package/lib/MapPolygon.d.ts +0 -140
  180. package/lib/MapPolygon.js +0 -53
  181. package/lib/MapPolygon.types.d.ts +0 -18
  182. package/lib/MapPolyline.d.ts +0 -156
  183. package/lib/MapPolyline.js +0 -53
  184. package/lib/MapUrlTile.d.ts +0 -134
  185. package/lib/MapUrlTile.js +0 -44
  186. package/lib/MapView.d.ts +0 -703
  187. package/lib/MapView.js +0 -427
  188. package/lib/MapView.types.d.ts +0 -161
  189. package/lib/MapView.types.js +0 -2
  190. package/lib/MapView.web.d.ts +0 -1
  191. package/lib/MapView.web.js +0 -9
  192. package/lib/MapViewNativeComponent.d.ts +0 -18
  193. package/lib/MapViewNativeComponent.js +0 -19
  194. package/lib/MapWMSTile.d.ts +0 -116
  195. package/lib/MapWMSTile.js +0 -44
  196. package/lib/ProviderConstants.d.ts +0 -2
  197. package/lib/ProviderConstants.js +0 -5
  198. package/lib/createFabricMap.d.ts +0 -24
  199. package/lib/createFabricMap.js +0 -188
  200. package/lib/decorateMapComponent.d.ts +0 -36
  201. package/lib/decorateMapComponent.js +0 -120
  202. package/lib/fixImageProp.d.ts +0 -4
  203. package/lib/fixImageProp.js +0 -16
  204. package/lib/index.d.ts +0 -38
  205. package/lib/index.js +0 -81
  206. package/lib/sharedTypes.d.ts +0 -81
  207. package/lib/sharedTypes.js +0 -2
  208. package/lib/sharedTypesInternal.js +0 -2
  209. package/lib/specs/NativeAirMapsModule.d.ts +0 -31
  210. package/lib/specs/NativeAirMapsModule.js +0 -4
  211. package/lib/specs/NativeComponentCallout.d.ts +0 -46
  212. package/lib/specs/NativeComponentCallout.js +0 -9
  213. package/lib/specs/NativeComponentCircle.d.ts +0 -74
  214. package/lib/specs/NativeComponentCircle.js +0 -7
  215. package/lib/specs/NativeComponentGoogleMapView.d.ts +0 -713
  216. package/lib/specs/NativeComponentGoogleMapView.js +0 -22
  217. package/lib/specs/NativeComponentGooglePolygon.d.ts +0 -75
  218. package/lib/specs/NativeComponentGooglePolygon.js +0 -7
  219. package/lib/specs/NativeComponentMapView.d.ts +0 -847
  220. package/lib/specs/NativeComponentMapView.js +0 -20
  221. package/lib/specs/NativeComponentMarker.d.ts +0 -258
  222. package/lib/specs/NativeComponentMarker.js +0 -19
  223. package/lib/specs/NativeComponentOverlay.d.ts +0 -67
  224. package/lib/specs/NativeComponentOverlay.js +0 -7
  225. package/lib/specs/NativeComponentPolyline.d.ts +0 -101
  226. package/lib/specs/NativeComponentPolyline.js +0 -7
  227. /package/ios/AirMaps/{UIView +AirMap.m → UIView+AirMap.m} +0 -0
  228. /package/ios/{AirMaps → generated}/RNMapsHostVewDelegate.h +0 -0
  229. /package/{lib/MapPolygon.types.js → plugin/build/types.js} +0 -0
  230. /package/{lib/sharedTypesInternal.d.ts → src/sharedTypesInternal.ts} +0 -0
  231. /package/{specs → src/specs}/NativeAirMapsModule.ts +0 -0
  232. /package/{specs → src/specs}/NativeComponentCallout.ts +0 -0
  233. /package/{specs → src/specs}/NativeComponentGooglePolygon.ts +0 -0
  234. /package/{specs → src/specs}/NativeComponentMarker.ts +0 -0
@@ -0,0 +1,27 @@
1
+ /**
2
+ * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
3
+ *
4
+ * Do not edit this file as changes may cause incorrect behavior and will be lost
5
+ * once the code is regenerated.
6
+ *
7
+ * @generated by codegen project: GeneratePropsJavaInterface.js
8
+ */
9
+
10
+ package com.facebook.react.viewmanagers;
11
+
12
+ import android.view.View;
13
+ import androidx.annotation.Nullable;
14
+
15
+ public interface RNMapsUrlTileManagerInterface<T extends View> {
16
+ void setDoubleTileSize(T view, boolean value);
17
+ void setFlipY(T view, boolean value);
18
+ void setMaximumNativeZ(T view, int value);
19
+ void setMaximumZ(T view, int value);
20
+ void setMinimumZ(T view, int value);
21
+ void setOfflineMode(T view, boolean value);
22
+ void setShouldReplaceMapContent(T view, boolean value);
23
+ void setTileCacheMaxAge(T view, int value);
24
+ void setTileCachePath(T view, @Nullable String value);
25
+ void setTileSize(T view, int value);
26
+ void setUrlTemplate(T view, @Nullable String value);
27
+ }
@@ -0,0 +1,56 @@
1
+ /**
2
+ * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
3
+ *
4
+ * Do not edit this file as changes may cause incorrect behavior and will be lost
5
+ * once the code is regenerated.
6
+ *
7
+ * @generated by codegen project: GeneratePropsJavaDelegate.js
8
+ */
9
+
10
+ package com.facebook.react.viewmanagers;
11
+
12
+ import android.view.View;
13
+ import androidx.annotation.Nullable;
14
+ import com.facebook.react.uimanager.BaseViewManager;
15
+ import com.facebook.react.uimanager.BaseViewManagerDelegate;
16
+ import com.facebook.react.uimanager.LayoutShadowNode;
17
+
18
+ public class RNMapsWMSTileManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNMapsWMSTileManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
19
+ public RNMapsWMSTileManagerDelegate(U viewManager) {
20
+ super(viewManager);
21
+ }
22
+ @Override
23
+ public void setProperty(T view, String propName, @Nullable Object value) {
24
+ switch (propName) {
25
+ case "maximumNativeZ":
26
+ mViewManager.setMaximumNativeZ(view, value == null ? 100 : ((Double) value).intValue());
27
+ break;
28
+ case "maximumZ":
29
+ mViewManager.setMaximumZ(view, value == null ? 100 : ((Double) value).intValue());
30
+ break;
31
+ case "minimumZ":
32
+ mViewManager.setMinimumZ(view, value == null ? 0 : ((Double) value).intValue());
33
+ break;
34
+ case "offlineMode":
35
+ mViewManager.setOfflineMode(view, value == null ? false : (boolean) value);
36
+ break;
37
+ case "shouldReplaceMapContent":
38
+ mViewManager.setShouldReplaceMapContent(view, value == null ? false : (boolean) value);
39
+ break;
40
+ case "tileCacheMaxAge":
41
+ mViewManager.setTileCacheMaxAge(view, value == null ? 0 : ((Double) value).intValue());
42
+ break;
43
+ case "tileCachePath":
44
+ mViewManager.setTileCachePath(view, value == null ? null : (String) value);
45
+ break;
46
+ case "tileSize":
47
+ mViewManager.setTileSize(view, value == null ? 256 : ((Double) value).intValue());
48
+ break;
49
+ case "urlTemplate":
50
+ mViewManager.setUrlTemplate(view, value == null ? null : (String) value);
51
+ break;
52
+ default:
53
+ super.setProperty(view, propName, value);
54
+ }
55
+ }
56
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
3
+ *
4
+ * Do not edit this file as changes may cause incorrect behavior and will be lost
5
+ * once the code is regenerated.
6
+ *
7
+ * @generated by codegen project: GeneratePropsJavaInterface.js
8
+ */
9
+
10
+ package com.facebook.react.viewmanagers;
11
+
12
+ import android.view.View;
13
+ import androidx.annotation.Nullable;
14
+
15
+ public interface RNMapsWMSTileManagerInterface<T extends View> {
16
+ void setMaximumNativeZ(T view, int value);
17
+ void setMaximumZ(T view, int value);
18
+ void setMinimumZ(T view, int value);
19
+ void setOfflineMode(T view, boolean value);
20
+ void setShouldReplaceMapContent(T view, boolean value);
21
+ void setTileCacheMaxAge(T view, int value);
22
+ void setTileCachePath(T view, @Nullable String value);
23
+ void setTileSize(T view, int value);
24
+ void setUrlTemplate(T view, @Nullable String value);
25
+ }
@@ -313,7 +313,6 @@ public class MapViewManager extends ViewGroupManager<MapView> implements RNMapsM
313
313
  }
314
314
 
315
315
  view.applyBaseMapPadding(left, top, right, bottom);
316
- view.map.setPadding(left, top, right, bottom);
317
316
  }
318
317
 
319
318
  @Override
@@ -461,6 +460,11 @@ public class MapViewManager extends ViewGroupManager<MapView> implements RNMapsM
461
460
  // do nothing (initialProp)
462
461
  }
463
462
 
463
+ @Override
464
+ public void setCustomMapStyleString(MapView view, @Nullable String value) {
465
+ view.setMapStyle(value);
466
+ }
467
+
464
468
  @Override
465
469
  public void setUserLocationAnnotationTitle(MapView view, @Nullable String value) {
466
470
  // not supported
@@ -16,7 +16,7 @@ import android.util.DisplayMetrics;
16
16
 
17
17
  import androidx.annotation.Nullable;
18
18
 
19
- import com.rnmaps.fabric.NativeAirMapsModuleSpec;
19
+ import com.facebook.fbreact.specs.NativeAirMapsModuleSpec;
20
20
  import com.facebook.react.bridge.Arguments;
21
21
  import com.facebook.react.bridge.Promise;
22
22
  import com.facebook.react.bridge.ReactApplicationContext;
@@ -4,7 +4,6 @@ package com.rnmaps.fabric;
4
4
  import androidx.annotation.Nullable;
5
5
 
6
6
  import com.facebook.react.bridge.ReactApplicationContext;
7
- import com.facebook.react.bridge.ReadableArray;
8
7
  import com.facebook.react.bridge.ReadableMap;
9
8
  import com.facebook.react.module.annotations.ReactModule;
10
9
  import com.facebook.react.uimanager.ThemedReactContext;
@@ -12,6 +11,8 @@ import com.facebook.react.uimanager.ViewGroupManager;
12
11
  import com.facebook.react.uimanager.ViewManagerDelegate;
13
12
  import com.facebook.react.viewmanagers.RNMapsOverlayManagerDelegate;
14
13
  import com.facebook.react.viewmanagers.RNMapsOverlayManagerInterface;
14
+ import com.google.android.gms.maps.model.LatLng;
15
+ import com.google.android.gms.maps.model.LatLngBounds;
15
16
  import com.rnmaps.maps.MapOverlay;
16
17
 
17
18
  import java.util.HashMap;
@@ -70,8 +71,13 @@ public class OverlayManager extends ViewGroupManager<MapOverlay> implements RNMa
70
71
  }
71
72
 
72
73
  @Override
73
- public void setBounds(MapOverlay view, @Nullable ReadableArray value) {
74
- view.setBounds(value);
74
+ public void setBounds(MapOverlay view, @Nullable ReadableMap value) {
75
+ LatLng sw = new LatLng(value.getMap("southWest").getDouble("latitude"),
76
+ value.getMap("southWest").getDouble("longitude"));
77
+ LatLng ne = new LatLng(value.getMap("northEast").getDouble("latitude"),
78
+ value.getMap("northEast").getDouble("longitude"));
79
+ LatLngBounds bounds = new LatLngBounds(sw, ne);
80
+ view.setBounds(bounds);
75
81
  }
76
82
 
77
83
  @Override
@@ -0,0 +1,124 @@
1
+ package com.rnmaps.fabric;
2
+
3
+ import androidx.annotation.NonNull;
4
+ import androidx.annotation.Nullable;
5
+
6
+ import com.facebook.react.bridge.ReactApplicationContext;
7
+ import com.facebook.react.module.annotations.ReactModule;
8
+ import com.facebook.react.uimanager.ThemedReactContext;
9
+ import com.facebook.react.uimanager.ViewGroupManager;
10
+ import com.facebook.react.uimanager.ViewManagerDelegate;
11
+ import com.facebook.react.viewmanagers.RNMapsUrlTileManagerDelegate;
12
+ import com.facebook.react.viewmanagers.RNMapsUrlTileManagerInterface;
13
+ import com.rnmaps.maps.MapPolyline;
14
+ import com.rnmaps.maps.MapUrlTile;
15
+
16
+ import java.util.HashMap;
17
+ import java.util.Map;
18
+
19
+ @ReactModule(name = UrlTileManager.REACT_CLASS)
20
+ public class UrlTileManager extends ViewGroupManager<MapUrlTile> implements RNMapsUrlTileManagerInterface<MapUrlTile> {
21
+ public static final String REACT_CLASS = "RNMapsUrlTile";
22
+
23
+ public UrlTileManager(ReactApplicationContext context) {
24
+ super(context);
25
+ }
26
+
27
+ private final RNMapsUrlTileManagerDelegate<MapUrlTile, UrlTileManager> delegate =
28
+ new RNMapsUrlTileManagerDelegate<>(this);
29
+
30
+ @Override
31
+ public ViewManagerDelegate<MapUrlTile> getDelegate() {
32
+ return delegate;
33
+ }
34
+
35
+ @Override
36
+ public String getName() {
37
+ return REACT_CLASS;
38
+ }
39
+
40
+ @Override
41
+ public MapUrlTile createViewInstance(ThemedReactContext context) {
42
+ return new MapUrlTile(context);
43
+ }
44
+
45
+
46
+ @Nullable
47
+ @Override
48
+ public Map<String, Object> getExportedCustomBubblingEventTypeConstants() {
49
+ return new HashMap<>();
50
+ }
51
+
52
+ @Nullable
53
+ @Override
54
+ public Map<String, Object> getExportedCustomDirectEventTypeConstants() {
55
+ return new HashMap<>();
56
+ }
57
+
58
+ @Override
59
+ public void setDoubleTileSize(MapUrlTile view, boolean value) {
60
+ view.setDoubleTileSize(value);
61
+ }
62
+
63
+ @Override
64
+ public void setFlipY(MapUrlTile view, boolean value) {
65
+ view.setFlipY(value);
66
+ }
67
+
68
+ @Override
69
+ public void setMaximumNativeZ(MapUrlTile view, int value) {
70
+ view.setMaximumNativeZ(value);
71
+ }
72
+
73
+ @Override
74
+ public void setMaximumZ(MapUrlTile view, int value) {
75
+ view.setMaximumZ(value);
76
+ }
77
+
78
+ @Override
79
+ public void setMinimumZ(MapUrlTile view, int value) {
80
+ view.setMinimumZ(value);
81
+ }
82
+
83
+ @Override
84
+ public void setOfflineMode(MapUrlTile view, boolean value) {
85
+ view.setOfflineMode(value);
86
+ }
87
+
88
+ @Override
89
+ public void setShouldReplaceMapContent(MapUrlTile view, boolean value) {
90
+ // not supported
91
+
92
+ }
93
+ @Override
94
+ public void setZIndex(@NonNull MapUrlTile view, float zIndex) {
95
+ super.setZIndex(view, zIndex);
96
+ view.setZIndex(zIndex);
97
+ }
98
+
99
+ @Override
100
+ public void setOpacity(@NonNull MapUrlTile view, float opacity) {
101
+ super.setOpacity(view, opacity);
102
+ view.setOpacity(opacity);
103
+ }
104
+
105
+ @Override
106
+ public void setTileCacheMaxAge(MapUrlTile view, int value) {
107
+ view.setTileCacheMaxAge(value);
108
+ }
109
+
110
+ @Override
111
+ public void setTileCachePath(MapUrlTile view, @Nullable String value) {
112
+ view.setTileCachePath(value);
113
+ }
114
+
115
+ @Override
116
+ public void setTileSize(MapUrlTile view, int value) {
117
+ view.setTileSize(value);
118
+ }
119
+
120
+ @Override
121
+ public void setUrlTemplate(MapUrlTile view, @Nullable String value) {
122
+ view.setUrlTemplate(value);
123
+ }
124
+ }
@@ -0,0 +1,114 @@
1
+ package com.rnmaps.fabric;
2
+
3
+ import androidx.annotation.NonNull;
4
+ import androidx.annotation.Nullable;
5
+
6
+ import com.facebook.react.bridge.ReactApplicationContext;
7
+ import com.facebook.react.module.annotations.ReactModule;
8
+ import com.facebook.react.uimanager.ThemedReactContext;
9
+ import com.facebook.react.uimanager.ViewGroupManager;
10
+ import com.facebook.react.uimanager.ViewManagerDelegate;
11
+ import com.facebook.react.viewmanagers.RNMapsWMSTileManagerDelegate;
12
+ import com.facebook.react.viewmanagers.RNMapsWMSTileManagerInterface;
13
+ import com.rnmaps.maps.MapWMSTile;
14
+
15
+ import java.util.HashMap;
16
+ import java.util.Map;
17
+
18
+ @ReactModule(name = WMSTileManager.REACT_CLASS)
19
+ public class WMSTileManager extends ViewGroupManager<MapWMSTile> implements RNMapsWMSTileManagerInterface<MapWMSTile> {
20
+ public static final String REACT_CLASS = "RNMapsWMSTile";
21
+
22
+ public WMSTileManager(ReactApplicationContext context) {
23
+ super(context);
24
+ }
25
+
26
+ private final RNMapsWMSTileManagerDelegate<MapWMSTile, WMSTileManager> delegate =
27
+ new RNMapsWMSTileManagerDelegate<>(this);
28
+
29
+ @Override
30
+ public ViewManagerDelegate<MapWMSTile> getDelegate() {
31
+ return delegate;
32
+ }
33
+
34
+ @Override
35
+ public String getName() {
36
+ return REACT_CLASS;
37
+ }
38
+
39
+ @Override
40
+ public MapWMSTile createViewInstance(ThemedReactContext context) {
41
+ return new MapWMSTile(context);
42
+ }
43
+
44
+
45
+ @Nullable
46
+ @Override
47
+ public Map<String, Object> getExportedCustomBubblingEventTypeConstants() {
48
+ return new HashMap<>();
49
+ }
50
+
51
+ @Nullable
52
+ @Override
53
+ public Map<String, Object> getExportedCustomDirectEventTypeConstants() {
54
+ return new HashMap<>();
55
+ }
56
+
57
+ @Override
58
+ public void setMaximumNativeZ(MapWMSTile view, int value) {
59
+ view.setMaximumNativeZ(value);
60
+ }
61
+
62
+ @Override
63
+ public void setMaximumZ(MapWMSTile view, int value) {
64
+ view.setMaximumZ(value);
65
+ }
66
+
67
+ @Override
68
+ public void setMinimumZ(MapWMSTile view, int value) {
69
+ view.setMinimumZ(value);
70
+ }
71
+
72
+ @Override
73
+ public void setOfflineMode(MapWMSTile view, boolean value) {
74
+ view.setOfflineMode(value);
75
+ }
76
+
77
+ @Override
78
+ public void setShouldReplaceMapContent(MapWMSTile view, boolean value) {
79
+ // not supported
80
+ }
81
+
82
+ @Override
83
+ public void setZIndex(@NonNull MapWMSTile view, float zIndex) {
84
+ super.setZIndex(view, zIndex);
85
+ view.setZIndex(zIndex);
86
+ }
87
+
88
+ @Override
89
+ public void setOpacity(@NonNull MapWMSTile view, float opacity) {
90
+ super.setOpacity(view, opacity);
91
+ view.setOpacity(opacity);
92
+ }
93
+
94
+ @Override
95
+ public void setTileCacheMaxAge(MapWMSTile view, int value) {
96
+ view.setTileCacheMaxAge(value);
97
+ }
98
+
99
+ @Override
100
+ public void setTileCachePath(MapWMSTile view, @Nullable String value) {
101
+ view.setTileCachePath(value);
102
+ }
103
+
104
+ @Override
105
+ public void setTileSize(MapWMSTile view, int value) {
106
+ view.setTileSize(value);
107
+ }
108
+
109
+ @Override
110
+ public void setUrlTemplate(MapWMSTile view, @Nullable String value) {
111
+ view.setUrlTemplate(value);
112
+ }
113
+
114
+ }
@@ -8,15 +8,17 @@ import com.facebook.react.bridge.ReactApplicationContext;
8
8
  import com.facebook.react.module.model.ReactModuleInfo;
9
9
  import com.facebook.react.module.model.ReactModuleInfoProvider;
10
10
  import com.facebook.react.uimanager.ViewManager;
11
+ import com.facebook.fbreact.specs.NativeAirMapsModuleSpec;
11
12
  import com.rnmaps.fabric.CalloutManager;
12
13
  import com.rnmaps.fabric.CircleManager;
13
14
  import com.rnmaps.fabric.MapViewManager;
14
15
  import com.rnmaps.fabric.MarkerManager;
15
16
  import com.rnmaps.fabric.NativeAirMapsModule;
16
- import com.rnmaps.fabric.NativeAirMapsModuleSpec;
17
17
  import com.rnmaps.fabric.OverlayManager;
18
18
  import com.rnmaps.fabric.PolygonManager;
19
19
  import com.rnmaps.fabric.PolylineManager;
20
+ import com.rnmaps.fabric.UrlTileManager;
21
+ import com.rnmaps.fabric.WMSTileManager;
20
22
 
21
23
  import java.util.HashMap;
22
24
  import java.util.List;
@@ -26,7 +28,15 @@ public class MapAirModulePackage extends TurboReactPackage {
26
28
 
27
29
  @Override
28
30
  public List<ViewManager> createViewManagers(ReactApplicationContext reactContext) {
29
- return List.of(new MapViewManager(reactContext), new MarkerManager(reactContext), new CalloutManager(reactContext), new PolygonManager(reactContext), new PolylineManager(reactContext), new CircleManager(reactContext), new OverlayManager(reactContext));
31
+ return List.of(new MapViewManager(reactContext),
32
+ new MarkerManager(reactContext),
33
+ new CalloutManager(reactContext),
34
+ new PolygonManager(reactContext),
35
+ new PolylineManager(reactContext),
36
+ new CircleManager(reactContext),
37
+ new OverlayManager(reactContext),
38
+ new UrlTileManager(reactContext),
39
+ new WMSTileManager(reactContext));
30
40
  }
31
41
 
32
42
 
@@ -53,8 +63,14 @@ public class MapAirModulePackage extends TurboReactPackage {
53
63
  if (MapViewManager.REACT_CLASS.equals(name)) {
54
64
  return new MapViewManager(reactContext);
55
65
  }
66
+ if (UrlTileManager.REACT_CLASS.equals(name)) {
67
+ return new UrlTileManager(reactContext);
68
+ }
69
+ if (WMSTileManager.REACT_CLASS.equals(name)) {
70
+ return new WMSTileManager(reactContext);
71
+ }
56
72
  if (NativeAirMapsModuleSpec.NAME.equals(name)) {
57
- return (NativeModule) new NativeAirMapsModule(reactContext);
73
+ return new NativeAirMapsModule(reactContext);
58
74
  } else {
59
75
  return null;
60
76
  }