@rnmapbox/maps 10.0.0-beta.76 → 10.0.0-beta.78

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 (426) hide show
  1. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/AbstractMapFeature.kt +10 -1
  2. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/annotation/RCTMGLMarkerView.kt +4 -2
  3. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/annotation/RCTMGLPointAnnotation.kt +4 -3
  4. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/CameraUpdateQueue.kt +1 -3
  5. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/RCTMGLCamera.kt +17 -22
  6. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/images/RCTMGLImages.kt +3 -2
  7. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocation.kt +3 -2
  8. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/mapview/RCTMGLMapView.kt +82 -75
  9. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/mapview/RCTMGLMapViewManager.kt +8 -6
  10. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/RCTMGLStyle.kt +7 -1
  11. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/RCTMGLStyleFactory.java +5 -5
  12. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/atmosphere/RCTMGLAtmosphere.kt +3 -2
  13. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTLayer.kt +43 -15
  14. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayer.kt +21 -0
  15. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayerManager.kt +65 -0
  16. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayer.kt +40 -0
  17. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayerManager.kt +76 -0
  18. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayer.kt +43 -0
  19. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayerManager.kt +76 -0
  20. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayer.kt +40 -0
  21. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayerManager.kt +76 -0
  22. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayer.kt +40 -0
  23. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayerManager.kt +76 -0
  24. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayer.kt +40 -0
  25. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayerManager.kt +76 -0
  26. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayer.kt +18 -0
  27. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayerManager.kt +65 -0
  28. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLSkyLayerManager.kt +76 -0
  29. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayer.kt +40 -0
  30. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayerManager.kt +76 -0
  31. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/light/RCTMGLLight.kt +4 -1
  32. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSource.kt +69 -0
  33. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSourceManager.kt +54 -0
  34. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterDemSource.kt +82 -0
  35. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterDemSourceManager.kt +30 -0
  36. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSource.kt +37 -0
  37. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSourceManager.kt +32 -0
  38. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSource.kt +5 -0
  39. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSourceManager.kt +10 -4
  40. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSource.kt +44 -0
  41. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSourceManager.kt +69 -0
  42. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSource.kt +78 -0
  43. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSourceManager.kt +69 -0
  44. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTSource.kt +107 -87
  45. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/terrain/RCTMGLTerrain.kt +3 -2
  46. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/PointAnnotationDragEvent.java +4 -2
  47. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLOfflineModule.kt +4 -4
  48. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/GeoJSONUtils.kt +52 -44
  49. package/ios/RCTMGL-v10/RCTMGLCamera.swift +11 -31
  50. package/ios/RCTMGL-v10/RCTMGLInteractiveElement.swift +13 -1
  51. package/ios/RCTMGL-v10/RCTMGLLayer.swift +35 -6
  52. package/ios/RCTMGL-v10/RCTMGLLocationModule.swift +27 -4
  53. package/ios/RCTMGL-v10/RCTMGLMapView.swift +17 -2
  54. package/ios/RCTMGL-v10/RCTMGLMapViewManager.m +1 -0
  55. package/ios/RCTMGL-v10/RCTMGLSource.swift +35 -17
  56. package/lib/commonjs/MGLModule.js.map +1 -1
  57. package/lib/commonjs/Mapbox.js +13 -6
  58. package/lib/commonjs/Mapbox.js.map +1 -1
  59. package/lib/commonjs/classes/AnimatedCoordinatesArray.js.map +1 -1
  60. package/lib/commonjs/classes/AnimatedExtractCoordinateFromArray.js.map +1 -1
  61. package/lib/commonjs/classes/AnimatedPoint.js.map +1 -1
  62. package/lib/commonjs/classes/AnimatedRouteCoordinatesArray.js.map +1 -1
  63. package/lib/commonjs/classes/AnimatedShape.js.map +1 -1
  64. package/lib/commonjs/classes/index.d.js.map +1 -1
  65. package/lib/commonjs/classes/index.js.map +1 -1
  66. package/lib/commonjs/components/AbstractLayer.js +1 -2
  67. package/lib/commonjs/components/AbstractLayer.js.map +1 -1
  68. package/lib/commonjs/components/AbstractSource.js.map +1 -1
  69. package/lib/commonjs/components/Annotation.js.map +1 -1
  70. package/lib/commonjs/components/Atmosphere.js.map +1 -1
  71. package/lib/commonjs/components/BackgroundLayer.js.map +1 -1
  72. package/lib/commonjs/components/Callout.js +7 -33
  73. package/lib/commonjs/components/Callout.js.map +1 -1
  74. package/lib/commonjs/components/Camera.js +4 -4
  75. package/lib/commonjs/components/Camera.js.map +1 -1
  76. package/lib/commonjs/components/CircleLayer.js.map +1 -1
  77. package/lib/commonjs/components/FillExtrusionLayer.js.map +1 -1
  78. package/lib/commonjs/components/FillLayer.js.map +1 -1
  79. package/lib/commonjs/components/HeadingIndicator.js +12 -3
  80. package/lib/commonjs/components/HeadingIndicator.js.map +1 -1
  81. package/lib/commonjs/components/HeatmapLayer.js.map +1 -1
  82. package/lib/commonjs/components/Image.js.map +1 -1
  83. package/lib/commonjs/components/ImageSource.js.map +1 -1
  84. package/lib/commonjs/components/Images.js.map +1 -1
  85. package/lib/commonjs/components/Light.js.map +1 -1
  86. package/lib/commonjs/components/LineLayer.js.map +1 -1
  87. package/lib/commonjs/components/MapView.js +12 -1
  88. package/lib/commonjs/components/MapView.js.map +1 -1
  89. package/lib/commonjs/components/MarkerView.js.map +1 -1
  90. package/lib/commonjs/components/NativeBridgeComponent.js.map +1 -1
  91. package/lib/commonjs/components/NativeUserLocation.js.map +1 -1
  92. package/lib/commonjs/components/PointAnnotation.js.map +1 -1
  93. package/lib/commonjs/components/RasterDemSource.js.map +1 -1
  94. package/lib/commonjs/components/RasterLayer.js.map +1 -1
  95. package/lib/commonjs/components/RasterSource.js.map +1 -1
  96. package/lib/commonjs/components/ShapeSource.js.map +1 -1
  97. package/lib/commonjs/components/SkyLayer.js.map +1 -1
  98. package/lib/commonjs/components/Style.js.map +1 -1
  99. package/lib/commonjs/components/SymbolLayer.js.map +1 -1
  100. package/lib/commonjs/components/Terrain.js.map +1 -1
  101. package/lib/commonjs/components/UserLocation.js +6 -5
  102. package/lib/commonjs/components/UserLocation.js.map +1 -1
  103. package/lib/commonjs/components/VectorSource.js.map +1 -1
  104. package/lib/commonjs/global.d.js.map +1 -1
  105. package/lib/commonjs/index.js.map +1 -1
  106. package/lib/commonjs/index.web.js.map +1 -1
  107. package/lib/commonjs/modules/location/locationManager.js.map +1 -1
  108. package/lib/commonjs/modules/offline/OfflineCreatePackOptions.js.map +1 -1
  109. package/lib/commonjs/modules/offline/OfflinePack.js.map +1 -1
  110. package/lib/commonjs/modules/offline/offlineManager.js.map +1 -1
  111. package/lib/commonjs/modules/snapshot/SnapshotOptions.js.map +1 -1
  112. package/lib/commonjs/modules/snapshot/snapshotManager.js.map +1 -1
  113. package/lib/commonjs/requestAndroidLocationPermissions.js.map +1 -1
  114. package/lib/commonjs/types/BaseProps.js.map +1 -1
  115. package/lib/commonjs/types/OnPressEvent.js.map +1 -1
  116. package/lib/commonjs/types/Position.js.map +1 -1
  117. package/lib/commonjs/types/index.js.map +1 -1
  118. package/lib/commonjs/utils/BridgeValue.js.map +1 -1
  119. package/lib/commonjs/utils/Logger.js.map +1 -1
  120. package/lib/commonjs/utils/MapboxStyles.d.js +84 -84
  121. package/lib/commonjs/utils/MapboxStyles.d.js.map +1 -1
  122. package/lib/commonjs/utils/StyleValue.js.map +1 -1
  123. package/lib/commonjs/utils/animated/Animated.js.map +1 -1
  124. package/lib/commonjs/utils/deprecation.js.map +1 -1
  125. package/lib/commonjs/utils/filterUtils.js.map +1 -1
  126. package/lib/commonjs/utils/geoUtils.js.map +1 -1
  127. package/lib/commonjs/utils/getAnnotationsLayerID.js.map +1 -1
  128. package/lib/commonjs/utils/index.js +0 -16
  129. package/lib/commonjs/utils/index.js.map +1 -1
  130. package/lib/commonjs/utils/nativeRef.js.map +1 -1
  131. package/lib/commonjs/utils/styleMap.js +1 -1217
  132. package/lib/commonjs/utils/styleMap.js.map +1 -1
  133. package/lib/commonjs/web/MapContext.js.map +1 -1
  134. package/lib/commonjs/web/MapboxModule.js.map +1 -1
  135. package/lib/commonjs/web/UnimplementedComponent.js.map +1 -1
  136. package/lib/commonjs/web/components/Camera.js.map +1 -1
  137. package/lib/commonjs/web/components/MapView.js.map +1 -1
  138. package/lib/commonjs/web/index.js.map +1 -1
  139. package/lib/commonjs/web/utils/Logger.js.map +1 -1
  140. package/lib/module/MGLModule.js.map +1 -1
  141. package/lib/module/Mapbox.js +6 -6
  142. package/lib/module/Mapbox.js.map +1 -1
  143. package/lib/module/classes/AnimatedCoordinatesArray.js.map +1 -1
  144. package/lib/module/classes/AnimatedExtractCoordinateFromArray.js.map +1 -1
  145. package/lib/module/classes/AnimatedPoint.js.map +1 -1
  146. package/lib/module/classes/AnimatedRouteCoordinatesArray.js.map +1 -1
  147. package/lib/module/classes/AnimatedShape.js.map +1 -1
  148. package/lib/module/classes/index.d.js.map +1 -1
  149. package/lib/module/classes/index.js.map +1 -1
  150. package/lib/module/components/AbstractLayer.js +1 -1
  151. package/lib/module/components/AbstractLayer.js.map +1 -1
  152. package/lib/module/components/AbstractSource.js.map +1 -1
  153. package/lib/module/components/Annotation.js.map +1 -1
  154. package/lib/module/components/Atmosphere.js.map +1 -1
  155. package/lib/module/components/BackgroundLayer.js.map +1 -1
  156. package/lib/module/components/Callout.js +7 -33
  157. package/lib/module/components/Callout.js.map +1 -1
  158. package/lib/module/components/Camera.js +3 -3
  159. package/lib/module/components/Camera.js.map +1 -1
  160. package/lib/module/components/CircleLayer.js.map +1 -1
  161. package/lib/module/components/FillExtrusionLayer.js.map +1 -1
  162. package/lib/module/components/FillLayer.js.map +1 -1
  163. package/lib/module/components/HeadingIndicator.js +12 -3
  164. package/lib/module/components/HeadingIndicator.js.map +1 -1
  165. package/lib/module/components/HeatmapLayer.js.map +1 -1
  166. package/lib/module/components/Image.js.map +1 -1
  167. package/lib/module/components/ImageSource.js.map +1 -1
  168. package/lib/module/components/Images.js.map +1 -1
  169. package/lib/module/components/Light.js.map +1 -1
  170. package/lib/module/components/LineLayer.js.map +1 -1
  171. package/lib/module/components/MapView.js +12 -1
  172. package/lib/module/components/MapView.js.map +1 -1
  173. package/lib/module/components/MarkerView.js.map +1 -1
  174. package/lib/module/components/NativeBridgeComponent.js.map +1 -1
  175. package/lib/module/components/NativeUserLocation.js.map +1 -1
  176. package/lib/module/components/PointAnnotation.js.map +1 -1
  177. package/lib/module/components/RasterDemSource.js.map +1 -1
  178. package/lib/module/components/RasterLayer.js.map +1 -1
  179. package/lib/module/components/RasterSource.js.map +1 -1
  180. package/lib/module/components/ShapeSource.js.map +1 -1
  181. package/lib/module/components/SkyLayer.js.map +1 -1
  182. package/lib/module/components/Style.js.map +1 -1
  183. package/lib/module/components/SymbolLayer.js.map +1 -1
  184. package/lib/module/components/Terrain.js.map +1 -1
  185. package/lib/module/components/UserLocation.js +5 -4
  186. package/lib/module/components/UserLocation.js.map +1 -1
  187. package/lib/module/components/VectorSource.js.map +1 -1
  188. package/lib/module/global.d.js.map +1 -1
  189. package/lib/module/index.js.map +1 -1
  190. package/lib/module/index.web.js.map +1 -1
  191. package/lib/module/modules/location/locationManager.js.map +1 -1
  192. package/lib/module/modules/offline/OfflineCreatePackOptions.js.map +1 -1
  193. package/lib/module/modules/offline/OfflinePack.js.map +1 -1
  194. package/lib/module/modules/offline/offlineManager.js.map +1 -1
  195. package/lib/module/modules/snapshot/SnapshotOptions.js.map +1 -1
  196. package/lib/module/modules/snapshot/snapshotManager.js.map +1 -1
  197. package/lib/module/requestAndroidLocationPermissions.js.map +1 -1
  198. package/lib/module/types/BaseProps.js.map +1 -1
  199. package/lib/module/types/OnPressEvent.js.map +1 -1
  200. package/lib/module/types/Position.js.map +1 -1
  201. package/lib/module/types/index.js.map +1 -1
  202. package/lib/module/utils/BridgeValue.js.map +1 -1
  203. package/lib/module/utils/Logger.js.map +1 -1
  204. package/lib/module/utils/MapboxStyles.d.js +84 -84
  205. package/lib/module/utils/MapboxStyles.d.js.map +1 -1
  206. package/lib/module/utils/StyleValue.js.map +1 -1
  207. package/lib/module/utils/animated/Animated.js.map +1 -1
  208. package/lib/module/utils/deprecation.js.map +1 -1
  209. package/lib/module/utils/filterUtils.js.map +1 -1
  210. package/lib/module/utils/geoUtils.js.map +1 -1
  211. package/lib/module/utils/getAnnotationsLayerID.js.map +1 -1
  212. package/lib/module/utils/index.js +0 -14
  213. package/lib/module/utils/index.js.map +1 -1
  214. package/lib/module/utils/nativeRef.js.map +1 -1
  215. package/lib/module/utils/styleMap.js +0 -1201
  216. package/lib/module/utils/styleMap.js.map +1 -1
  217. package/lib/module/web/MapContext.js.map +1 -1
  218. package/lib/module/web/MapboxModule.js.map +1 -1
  219. package/lib/module/web/UnimplementedComponent.js.map +1 -1
  220. package/lib/module/web/components/Camera.js.map +1 -1
  221. package/lib/module/web/components/MapView.js.map +1 -1
  222. package/lib/module/web/index.js.map +1 -1
  223. package/lib/module/web/utils/Logger.js.map +1 -1
  224. package/lib/typescript/MGLModule.d.ts.map +1 -1
  225. package/lib/typescript/Mapbox.d.ts +1 -1
  226. package/lib/typescript/Mapbox.d.ts.map +1 -1
  227. package/lib/typescript/components/AbstractLayer.d.ts +1 -0
  228. package/lib/typescript/components/AbstractLayer.d.ts.map +1 -1
  229. package/lib/typescript/components/AbstractSource.d.ts.map +1 -1
  230. package/lib/typescript/components/Annotation.d.ts.map +1 -1
  231. package/lib/typescript/components/Atmosphere.d.ts.map +1 -1
  232. package/lib/typescript/components/BackgroundLayer.d.ts +5 -1
  233. package/lib/typescript/components/BackgroundLayer.d.ts.map +1 -1
  234. package/lib/typescript/components/Callout.d.ts +41 -0
  235. package/lib/typescript/components/Callout.d.ts.map +1 -0
  236. package/lib/typescript/components/Camera.d.ts +2 -1
  237. package/lib/typescript/components/Camera.d.ts.map +1 -1
  238. package/lib/typescript/components/CircleLayer.d.ts +4 -0
  239. package/lib/typescript/components/CircleLayer.d.ts.map +1 -1
  240. package/lib/typescript/components/FillExtrusionLayer.d.ts +5 -1
  241. package/lib/typescript/components/FillExtrusionLayer.d.ts.map +1 -1
  242. package/lib/typescript/components/FillLayer.d.ts +4 -0
  243. package/lib/typescript/components/FillLayer.d.ts.map +1 -1
  244. package/lib/typescript/components/HeadingIndicator.d.ts +2 -1
  245. package/lib/typescript/components/HeadingIndicator.d.ts.map +1 -1
  246. package/lib/typescript/components/HeatmapLayer.d.ts +5 -1
  247. package/lib/typescript/components/HeatmapLayer.d.ts.map +1 -1
  248. package/lib/typescript/components/Image.d.ts.map +1 -1
  249. package/lib/typescript/components/ImageSource.d.ts +4 -0
  250. package/lib/typescript/components/ImageSource.d.ts.map +1 -1
  251. package/lib/typescript/components/Images.d.ts.map +1 -1
  252. package/lib/typescript/components/Light.d.ts.map +1 -1
  253. package/lib/typescript/components/LineLayer.d.ts +4 -0
  254. package/lib/typescript/components/LineLayer.d.ts.map +1 -1
  255. package/lib/typescript/components/MapView.d.ts +15 -5
  256. package/lib/typescript/components/MapView.d.ts.map +1 -1
  257. package/lib/typescript/components/MarkerView.d.ts.map +1 -1
  258. package/lib/typescript/components/NativeBridgeComponent.d.ts.map +1 -1
  259. package/lib/typescript/components/NativeUserLocation.d.ts.map +1 -1
  260. package/lib/typescript/components/PointAnnotation.d.ts +5 -9
  261. package/lib/typescript/components/PointAnnotation.d.ts.map +1 -1
  262. package/lib/typescript/components/RasterDemSource.d.ts +4 -0
  263. package/lib/typescript/components/RasterDemSource.d.ts.map +1 -1
  264. package/lib/typescript/components/RasterLayer.d.ts +5 -1
  265. package/lib/typescript/components/RasterLayer.d.ts.map +1 -1
  266. package/lib/typescript/components/RasterSource.d.ts +4 -0
  267. package/lib/typescript/components/RasterSource.d.ts.map +1 -1
  268. package/lib/typescript/components/ShapeSource.d.ts +4 -0
  269. package/lib/typescript/components/ShapeSource.d.ts.map +1 -1
  270. package/lib/typescript/components/SkyLayer.d.ts +4 -0
  271. package/lib/typescript/components/SkyLayer.d.ts.map +1 -1
  272. package/lib/typescript/components/Style.d.ts.map +1 -1
  273. package/lib/typescript/components/SymbolLayer.d.ts +5 -1
  274. package/lib/typescript/components/SymbolLayer.d.ts.map +1 -1
  275. package/lib/typescript/components/Terrain.d.ts.map +1 -1
  276. package/lib/typescript/components/UserLocation.d.ts +1 -1
  277. package/lib/typescript/components/UserLocation.d.ts.map +1 -1
  278. package/lib/typescript/components/VectorSource.d.ts +4 -0
  279. package/lib/typescript/components/VectorSource.d.ts.map +1 -1
  280. package/lib/typescript/index.d.ts.map +1 -1
  281. package/lib/typescript/modules/location/locationManager.d.ts.map +1 -1
  282. package/lib/typescript/modules/offline/OfflineCreatePackOptions.d.ts.map +1 -1
  283. package/lib/typescript/modules/offline/OfflinePack.d.ts.map +1 -1
  284. package/lib/typescript/modules/offline/offlineManager.d.ts.map +1 -1
  285. package/lib/typescript/modules/snapshot/SnapshotOptions.d.ts.map +1 -1
  286. package/lib/typescript/modules/snapshot/snapshotManager.d.ts.map +1 -1
  287. package/lib/typescript/requestAndroidLocationPermissions.d.ts.map +1 -1
  288. package/lib/typescript/types/BaseProps.d.ts +1 -0
  289. package/lib/typescript/types/BaseProps.d.ts.map +1 -1
  290. package/lib/typescript/types/OnPressEvent.d.ts.map +1 -1
  291. package/lib/typescript/types/Position.d.ts.map +1 -1
  292. package/lib/typescript/types/index.d.ts.map +1 -1
  293. package/lib/typescript/utils/BridgeValue.d.ts.map +1 -1
  294. package/lib/typescript/utils/Logger.d.ts.map +1 -1
  295. package/lib/typescript/utils/StyleValue.d.ts.map +1 -1
  296. package/lib/typescript/utils/animated/Animated.d.ts.map +1 -1
  297. package/lib/typescript/utils/deprecation.d.ts.map +1 -1
  298. package/lib/typescript/utils/filterUtils.d.ts.map +1 -1
  299. package/lib/typescript/utils/geoUtils.d.ts.map +1 -1
  300. package/lib/typescript/utils/getAnnotationsLayerID.d.ts.map +1 -1
  301. package/lib/typescript/utils/index.d.ts +0 -14
  302. package/lib/typescript/utils/index.d.ts.map +1 -1
  303. package/lib/typescript/utils/nativeRef.d.ts.map +1 -1
  304. package/lib/typescript/utils/styleMap.d.ts +0 -1406
  305. package/lib/typescript/utils/styleMap.d.ts.map +1 -1
  306. package/lib/typescript/web/MapContext.d.ts.map +1 -1
  307. package/lib/typescript/web/components/Camera.d.ts.map +1 -1
  308. package/lib/typescript/web/components/MapView.d.ts.map +1 -1
  309. package/lib/typescript/web/utils/Logger.d.ts.map +1 -1
  310. package/package.json +37 -39
  311. package/plugin/build/withMapbox.d.ts +10 -6
  312. package/plugin/build/withMapbox.js +122 -137
  313. package/plugin/install.md +21 -0
  314. package/plugin/src/withMapbox.ts +172 -139
  315. package/{javascript → src}/Mapbox.ts +4 -1
  316. package/{javascript → src}/components/AbstractLayer.tsx +2 -1
  317. package/{javascript → src}/components/BackgroundLayer.tsx +6 -1
  318. package/{javascript/components/Callout.js → src/components/Callout.tsx} +53 -45
  319. package/{javascript → src}/components/Camera.tsx +2 -1
  320. package/{javascript → src}/components/CircleLayer.tsx +5 -0
  321. package/{javascript → src}/components/FillExtrusionLayer.tsx +6 -1
  322. package/{javascript → src}/components/FillLayer.tsx +5 -0
  323. package/src/components/HeadingIndicator.tsx +41 -0
  324. package/{javascript → src}/components/HeatmapLayer.tsx +6 -1
  325. package/{javascript → src}/components/ImageSource.tsx +5 -0
  326. package/{javascript → src}/components/LineLayer.tsx +5 -0
  327. package/{javascript → src}/components/MapView.tsx +31 -7
  328. package/{javascript → src}/components/PointAnnotation.tsx +8 -4
  329. package/{javascript → src}/components/RasterDemSource.tsx +5 -0
  330. package/{javascript → src}/components/RasterLayer.tsx +6 -1
  331. package/{javascript → src}/components/RasterSource.tsx +5 -0
  332. package/{javascript → src}/components/ShapeSource.tsx +5 -0
  333. package/{javascript → src}/components/SkyLayer.tsx +5 -0
  334. package/{javascript → src}/components/SymbolLayer.tsx +6 -1
  335. package/{javascript → src}/components/UserLocation.tsx +2 -2
  336. package/{javascript → src}/components/VectorSource.tsx +5 -0
  337. package/{javascript → src}/types/BaseProps.ts +1 -0
  338. package/{javascript → src}/utils/index.ts +0 -8
  339. package/src/utils/styleMap.ts +284 -0
  340. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayer.java +0 -23
  341. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayerManager.java +0 -60
  342. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayer.java +0 -53
  343. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayerManager.java +0 -73
  344. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayer.java +0 -51
  345. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayerManager.java +0 -76
  346. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayer.java +0 -51
  347. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayerManager.java +0 -77
  348. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayer.java +0 -51
  349. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayerManager.java +0 -73
  350. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayer.java +0 -51
  351. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayerManager.java +0 -75
  352. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayer.java +0 -24
  353. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayerManager.java +0 -60
  354. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLSkyLayerManager.java +0 -73
  355. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayer.java +0 -51
  356. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayerManager.java +0 -71
  357. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSource.java +0 -76
  358. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSourceManager.java +0 -68
  359. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterDemSource.java +0 -122
  360. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterDemSourceManager.java +0 -64
  361. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSource.java +0 -43
  362. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSourceManager.java +0 -39
  363. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSource.java +0 -103
  364. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSourceManager.java +0 -80
  365. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSource.java +0 -100
  366. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSourceManager.java +0 -80
  367. package/javascript/components/Callout.d.ts +0 -35
  368. package/javascript/components/HeadingIndicator.tsx +0 -30
  369. package/javascript/utils/styleMap.ts +0 -1882
  370. package/lib/commonjs/components/Callout.d.js +0 -9
  371. package/lib/commonjs/components/Callout.d.js.map +0 -1
  372. package/lib/module/components/Callout.d.js +0 -2
  373. package/lib/module/components/Callout.d.js.map +0 -1
  374. /package/{javascript → src}/MGLModule.ts +0 -0
  375. /package/{javascript → src}/assets/heading.png +0 -0
  376. /package/{javascript → src}/assets/heading@2x.png +0 -0
  377. /package/{javascript → src}/assets/heading@3x.png +0 -0
  378. /package/{javascript → src}/classes/AnimatedCoordinatesArray.js +0 -0
  379. /package/{javascript → src}/classes/AnimatedExtractCoordinateFromArray.js +0 -0
  380. /package/{javascript → src}/classes/AnimatedPoint.js +0 -0
  381. /package/{javascript → src}/classes/AnimatedRouteCoordinatesArray.js +0 -0
  382. /package/{javascript → src}/classes/AnimatedShape.js +0 -0
  383. /package/{javascript → src}/classes/index.d.ts +0 -0
  384. /package/{javascript → src}/classes/index.js +0 -0
  385. /package/{javascript → src}/components/AbstractSource.tsx +0 -0
  386. /package/{javascript → src}/components/Annotation.tsx +0 -0
  387. /package/{javascript → src}/components/Atmosphere.tsx +0 -0
  388. /package/{javascript → src}/components/Image.tsx +0 -0
  389. /package/{javascript → src}/components/Images.tsx +0 -0
  390. /package/{javascript → src}/components/Light.tsx +0 -0
  391. /package/{javascript → src}/components/MarkerView.tsx +0 -0
  392. /package/{javascript → src}/components/NativeBridgeComponent.tsx +0 -0
  393. /package/{javascript → src}/components/NativeUserLocation.tsx +0 -0
  394. /package/{javascript → src}/components/Style.tsx +0 -0
  395. /package/{javascript → src}/components/Terrain.tsx +0 -0
  396. /package/{javascript → src}/global.d.ts +0 -0
  397. /package/{javascript → src}/index.ts +0 -0
  398. /package/{javascript → src}/index.web.js +0 -0
  399. /package/{javascript → src}/modules/location/locationManager.ts +0 -0
  400. /package/{javascript → src}/modules/offline/OfflineCreatePackOptions.ts +0 -0
  401. /package/{javascript → src}/modules/offline/OfflinePack.ts +0 -0
  402. /package/{javascript → src}/modules/offline/offlineManager.ts +0 -0
  403. /package/{javascript → src}/modules/snapshot/SnapshotOptions.ts +0 -0
  404. /package/{javascript → src}/modules/snapshot/snapshotManager.ts +0 -0
  405. /package/{javascript → src}/requestAndroidLocationPermissions.ts +0 -0
  406. /package/{javascript → src}/types/OnPressEvent.ts +0 -0
  407. /package/{javascript → src}/types/Position.ts +0 -0
  408. /package/{javascript → src}/types/index.ts +0 -0
  409. /package/{javascript → src}/utils/BridgeValue.ts +0 -0
  410. /package/{javascript → src}/utils/Logger.ts +0 -0
  411. /package/{javascript → src}/utils/MapboxStyles.d.ts +0 -0
  412. /package/{javascript → src}/utils/StyleValue.ts +0 -0
  413. /package/{javascript → src}/utils/animated/Animated.ts +0 -0
  414. /package/{javascript → src}/utils/deprecation.ts +0 -0
  415. /package/{javascript → src}/utils/filterUtils.ts +0 -0
  416. /package/{javascript → src}/utils/geoUtils.ts +0 -0
  417. /package/{javascript → src}/utils/getAnnotationsLayerID.ts +0 -0
  418. /package/{javascript → src}/utils/nativeRef.ts +0 -0
  419. /package/{javascript → src}/web/MapContext.ts +0 -0
  420. /package/{javascript → src}/web/MapboxModule.js +0 -0
  421. /package/{javascript → src}/web/UnimplementedComponent.js +0 -0
  422. /package/{javascript → src}/web/components/Camera.tsx +0 -0
  423. /package/{javascript → src}/web/components/MapView.tsx +0 -0
  424. /package/{javascript → src}/web/index.js +0 -0
  425. /package/{javascript → src}/web/install.md +0 -0
  426. /package/{javascript → src}/web/utils/Logger.ts +0 -0
@@ -33,96 +33,22 @@ type InstallerBlockName = 'pre' | 'post';
33
33
 
34
34
  export type MapboxPlugProps = {
35
35
  RNMapboxMapsImpl?: string;
36
- RNMapboxMapsDownloadToken?: string;
37
- };
38
-
39
- /**
40
- * Dangerously adds the custom installer hooks to the Podfile.
41
- * In the future this should be removed in favor of some custom hooks provided by Expo autolinking.
42
- *
43
- * https://github.com/rnmapbox/maps/blob/main/ios/install.md#react-native--0600
44
- * @param config
45
- * @returns
46
- */
47
- const withCocoaPodsInstallerBlocks: ConfigPlugin<MapboxPlugProps> = (
48
- c,
49
- { RNMapboxMapsImpl, RNMapboxMapsDownloadToken },
50
- ) => {
51
- return withDangerousMod(c, [
52
- 'ios',
53
- async (config) => {
54
- const file = path.join(config.modRequest.platformProjectRoot, 'Podfile');
55
36
 
56
- const contents = await promises.readFile(file, 'utf8');
37
+ /**
38
+ * @platform ios
39
+ */
40
+ RNMapboxMapsVersion?: string;
57
41
 
58
- await promises.writeFile(
59
- file,
60
- applyCocoaPodsModifications(contents, {
61
- RNMapboxMapsImpl,
62
- RNMapboxMapsDownloadToken,
63
- }),
64
- 'utf-8',
65
- );
66
- return config;
67
- },
68
- ]);
42
+ RNMapboxMapsDownloadToken?: string;
69
43
  };
70
44
 
71
- // Only the preinstaller block is required, the post installer block is
72
- // used for spm (swift package manager) which Expo doesn't currently support.
73
- export function applyCocoaPodsModifications(
74
- contents: string,
75
- { RNMapboxMapsImpl, RNMapboxMapsDownloadToken }: MapboxPlugProps,
76
- ): string {
77
- // Ensure installer blocks exist
78
- let src = addConstantBlock(
79
- contents,
80
- RNMapboxMapsImpl,
81
- RNMapboxMapsDownloadToken,
82
- );
83
- src = addInstallerBlock(src, 'pre');
84
- src = addInstallerBlock(src, 'post');
85
- src = addMapboxInstallerBlock(src, 'pre');
86
- src = addMapboxInstallerBlock(src, 'post');
87
- return src;
88
- }
89
-
90
- export function addConstantBlock(
91
- src: string,
92
- RNMapboxMapsImpl?: string,
93
- RNMapboxMapsDownloadToken?: string,
94
- ): string {
95
- const tag = `@rnmapbox/maps-rnmapboxmapsimpl`;
96
-
97
- if (RNMapboxMapsImpl == null) {
98
- const modified = removeGeneratedContents(src, tag);
99
- if (!modified) {
100
- return src;
101
- } else {
102
- return modified;
103
- }
104
- }
105
-
106
- return mergeContents({
107
- tag,
108
- src,
109
- newSrc: [
110
- `$RNMapboxMapsImpl = '${RNMapboxMapsImpl}'`,
111
- `$RNMapboxMapsDownloadToken = '${RNMapboxMapsDownloadToken}'`,
112
- ].join('\n'),
113
- anchor: /target .+ do/,
114
- // We can't go after the use_react_native block because it might have parameters, causing it to be multi-line (see react-native template).
115
- offset: 0,
116
- comment: '#',
117
- }).contents;
118
- }
119
-
120
- export function addInstallerBlock(
45
+ export const addInstallerBlock = (
121
46
  src: string,
122
47
  blockName: InstallerBlockName,
123
- ): string {
48
+ ): string => {
124
49
  const matchBlock = new RegExp(`${blockName}_install do \\|installer\\|`);
125
50
  const tag = `${blockName}_installer`;
51
+
126
52
  for (const line of src.split('\n')) {
127
53
  const contents = line.trim();
128
54
  // Ignore comments
@@ -148,13 +74,76 @@ export function addInstallerBlock(
148
74
  offset: 0,
149
75
  comment: '#',
150
76
  }).contents;
151
- }
77
+ };
152
78
 
153
- export function addMapboxInstallerBlock(
79
+ export const addConstantBlock = (
154
80
  src: string,
155
- blockName: InstallerBlockName,
156
- ): string {
81
+ {
82
+ RNMapboxMapsImpl,
83
+ RNMapboxMapsVersion,
84
+ RNMapboxMapsDownloadToken,
85
+ }: MapboxPlugProps,
86
+ ): string => {
87
+ const tag = `@rnmapbox/maps-rnmapboxmapsimpl`;
88
+
89
+ if (RNMapboxMapsImpl == null) {
90
+ const modified = removeGeneratedContents(src, tag);
91
+ if (!modified) {
92
+ return src;
93
+ } else {
94
+ return modified;
95
+ }
96
+ }
97
+
98
+ const newSrc = [
99
+ `$RNMapboxMapsImpl = '${RNMapboxMapsImpl}'`,
100
+ `$RNMapboxMapsDownloadToken = '${RNMapboxMapsDownloadToken}'`,
101
+ ];
102
+
103
+ if (RNMapboxMapsVersion) {
104
+ newSrc.push(`$RNMapboxMapsVersion = '${RNMapboxMapsVersion}'`);
105
+ }
106
+
157
107
  return mergeContents({
108
+ tag,
109
+ src,
110
+ newSrc: newSrc.join('\n'),
111
+ anchor: /target .+ do/,
112
+ // We can't go after the use_react_native block because it might have parameters, causing it to be multi-line (see react-native template).
113
+ offset: 0,
114
+ comment: '#',
115
+ }).contents;
116
+ };
117
+
118
+ // Only the preinstaller block is required, the post installer block is
119
+ // used for spm (swift package manager) which Expo doesn't currently support.
120
+ export const applyCocoaPodsModifications = (
121
+ contents: string,
122
+ {
123
+ RNMapboxMapsImpl,
124
+ RNMapboxMapsVersion,
125
+ RNMapboxMapsDownloadToken,
126
+ }: MapboxPlugProps,
127
+ ): string => {
128
+ // Ensure installer blocks exist
129
+ let src = addConstantBlock(contents, {
130
+ RNMapboxMapsImpl,
131
+ RNMapboxMapsVersion,
132
+ RNMapboxMapsDownloadToken,
133
+ });
134
+ src = addInstallerBlock(src, 'pre');
135
+ src = addInstallerBlock(src, 'post');
136
+ src = addMapboxInstallerBlock(src, 'pre');
137
+ src = addMapboxInstallerBlock(src, 'post');
138
+
139
+ return src;
140
+ };
141
+
142
+ export const addMapboxInstallerBlock = (
143
+ src: string,
144
+ blockName: InstallerBlockName,
145
+ ): string =>
146
+ mergeContents({
158
147
  tag: `@rnmapbox/maps-${blockName}_installer`,
159
148
  src,
160
149
  newSrc: ` $RNMapboxMaps.${blockName}_install(installer)`,
@@ -162,16 +151,49 @@ export function addMapboxInstallerBlock(
162
151
  offset: 1,
163
152
  comment: '#',
164
153
  }).contents;
165
- }
154
+
155
+ /**
156
+ * Dangerously adds the custom installer hooks to the Podfile.
157
+ * In the future this should be removed in favor of some custom hooks provided by Expo autolinking.
158
+ *
159
+ * https://github.com/rnmapbox/maps/blob/main/ios/install.md#react-native--0600
160
+ */
161
+ const withCocoaPodsInstallerBlocks: ConfigPlugin<MapboxPlugProps> = (
162
+ config,
163
+ { RNMapboxMapsImpl, RNMapboxMapsVersion, RNMapboxMapsDownloadToken },
164
+ ) =>
165
+ withDangerousMod(config, [
166
+ 'ios',
167
+ async (exportedConfig) => {
168
+ const file = path.join(
169
+ exportedConfig.modRequest.platformProjectRoot,
170
+ 'Podfile',
171
+ );
172
+
173
+ const contents = await promises.readFile(file, 'utf8');
174
+ await promises.writeFile(
175
+ file,
176
+ applyCocoaPodsModifications(contents, {
177
+ RNMapboxMapsImpl,
178
+ RNMapboxMapsVersion,
179
+ RNMapboxMapsDownloadToken,
180
+ }),
181
+ 'utf-8',
182
+ );
183
+
184
+ return exportedConfig;
185
+ },
186
+ ]);
166
187
 
167
188
  /**
168
189
  * Exclude building for arm64 on simulator devices in the pbxproj project.
169
190
  * Without this, production builds targeting simulators will fail.
170
191
  */
171
- export function setExcludedArchitectures(project: XcodeProject): XcodeProject {
172
- const configurations = project.pbxXCBuildConfigurationSection();
173
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
174
- // @ts-ignore
192
+ export const setExcludedArchitectures: (
193
+ project: XcodeProject,
194
+ ) => XcodeProject = (project: XcodeProject): XcodeProject => {
195
+ const configurations: { buildSettings: Record<string, string> }[] =
196
+ project.pbxXCBuildConfigurationSection();
175
197
  for (const { buildSettings } of Object.values(configurations || {})) {
176
198
  // Guessing that this is the best way to emulate Xcode.
177
199
  // Using `project.addToBuildSettings` modifies too many targets.
@@ -181,39 +203,39 @@ export function setExcludedArchitectures(project: XcodeProject): XcodeProject {
181
203
  }
182
204
 
183
205
  return project;
184
- }
206
+ };
207
+
208
+ const withExcludedSimulatorArchitectures: ConfigPlugin = (config) =>
209
+ withXcodeProject(config, (exportedConfig) => {
210
+ exportedConfig.modResults = setExcludedArchitectures(
211
+ exportedConfig.modResults,
212
+ );
185
213
 
186
- const withExcludedSimulatorArchitectures: ConfigPlugin = (c) => {
187
- return withXcodeProject(c, (config) => {
188
- config.modResults = setExcludedArchitectures(config.modResults);
189
- return config;
214
+ return exportedConfig;
190
215
  });
191
- };
192
216
 
193
217
  const withAndroidPropertiesDownloadToken: ConfigPlugin<MapboxPlugProps> = (
194
218
  config,
195
219
  { RNMapboxMapsDownloadToken },
196
220
  ) => {
197
221
  const key = 'MAPBOX_DOWNLOADS_TOKEN';
222
+
198
223
  if (RNMapboxMapsDownloadToken) {
199
- return withGradleProperties(config, (config) => {
200
- config.modResults = config.modResults.filter((item) => {
201
- if (item.type === 'property' && item.key === key) {
202
- return false;
203
- }
204
- return true;
205
- });
206
- config.modResults.push({
224
+ return withGradleProperties(config, (exportedConfig) => {
225
+ exportedConfig.modResults = exportedConfig.modResults.filter(
226
+ (item) => !(item.type === 'property' && item.key === key),
227
+ );
228
+ exportedConfig.modResults.push({
207
229
  type: 'property',
208
230
  key,
209
231
  value: RNMapboxMapsDownloadToken,
210
232
  });
211
233
 
212
- return config;
234
+ return exportedConfig;
213
235
  });
214
- } else {
215
- return config;
216
236
  }
237
+
238
+ return config;
217
239
  };
218
240
 
219
241
  const withAndroidPropertiesImpl2: ConfigPlugin<MapboxPlugProps> = (
@@ -221,25 +243,23 @@ const withAndroidPropertiesImpl2: ConfigPlugin<MapboxPlugProps> = (
221
243
  { RNMapboxMapsImpl },
222
244
  ) => {
223
245
  const key = 'expoRNMapboxMapsImpl';
246
+
224
247
  if (RNMapboxMapsImpl) {
225
- return withGradleProperties(config, (config) => {
226
- config.modResults = config.modResults.filter((item) => {
227
- if (item.type === 'property' && item.key === key) {
228
- return false;
229
- }
230
- return true;
231
- });
232
- config.modResults.push({
248
+ return withGradleProperties(config, (exportedConfig) => {
249
+ exportedConfig.modResults = exportedConfig.modResults.filter(
250
+ (item) => !(item.type === 'property' && item.key === key),
251
+ );
252
+ exportedConfig.modResults.push({
233
253
  type: 'property',
234
254
  key: key,
235
255
  value: RNMapboxMapsImpl,
236
256
  });
237
257
 
238
- return config;
258
+ return exportedConfig;
239
259
  });
240
- } else {
241
- return config;
242
260
  }
261
+
262
+ return config;
243
263
  };
244
264
 
245
265
  const withAndroidProperties: ConfigPlugin<MapboxPlugProps> = (
@@ -249,13 +269,18 @@ const withAndroidProperties: ConfigPlugin<MapboxPlugProps> = (
249
269
  config = withAndroidPropertiesDownloadToken(config, {
250
270
  RNMapboxMapsDownloadToken,
251
271
  });
252
- config = withAndroidPropertiesImpl2(config, { RNMapboxMapsImpl });
272
+ config = withAndroidPropertiesImpl2(config, {
273
+ RNMapboxMapsImpl,
274
+ });
275
+
253
276
  return config;
254
277
  };
255
278
 
256
279
  const addLibCppFilter = (appBuildGradle: string): string => {
257
- if (appBuildGradle.includes("pickFirst 'lib/x86/libc++_shared.so'"))
280
+ if (appBuildGradle.includes("pickFirst 'lib/x86/libc++_shared.so'")) {
258
281
  return appBuildGradle;
282
+ }
283
+
259
284
  return mergeContents({
260
285
  tag: `@rnmapbox/maps-libcpp`,
261
286
  src: appBuildGradle,
@@ -290,7 +315,7 @@ allprojects {
290
315
  `;
291
316
 
292
317
  // Fork of config-plugins mergeContents, but appends the contents to the end of the file.
293
- function appendContents({
318
+ const appendContents = ({
294
319
  src,
295
320
  newSrc,
296
321
  tag,
@@ -300,8 +325,9 @@ function appendContents({
300
325
  newSrc: string;
301
326
  tag: string;
302
327
  comment: string;
303
- }): MergeResults {
328
+ }): MergeResults => {
304
329
  const header = createGeneratedHeaderComment(newSrc, tag, comment);
330
+
305
331
  if (!src.includes(header)) {
306
332
  // Ensure the old generated contents are removed.
307
333
  const sanitizedTarget = removeGeneratedContents(src, tag);
@@ -320,47 +346,49 @@ function appendContents({
320
346
  didClear: !!sanitizedTarget,
321
347
  };
322
348
  }
349
+
323
350
  return { contents: src, didClear: false, didMerge: false };
324
- }
351
+ };
325
352
 
326
- export function addMapboxMavenRepo(src: string): string {
327
- return appendContents({
353
+ export const addMapboxMavenRepo = (src: string): string =>
354
+ appendContents({
328
355
  tag: '@rnmapbox/maps-v2-maven',
329
356
  src,
330
357
  newSrc: gradleMaven,
331
358
  comment: '//',
332
359
  }).contents;
333
- }
334
360
 
335
- const withAndroidAppGradle: ConfigPlugin<MapboxPlugProps> = (config) => {
336
- return withAppBuildGradle(config, ({ modResults, ...config }) => {
361
+ const withAndroidAppGradle: ConfigPlugin<MapboxPlugProps> = (config) =>
362
+ withAppBuildGradle(config, ({ modResults, ...exportedConfig }) => {
337
363
  if (modResults.language !== 'groovy') {
338
364
  WarningAggregator.addWarningAndroid(
339
365
  'withMapbox',
340
366
  `Cannot automatically configure app build.gradle if it's not groovy`,
341
367
  );
342
- return { modResults, ...config };
368
+
369
+ return { modResults, ...exportedConfig };
343
370
  }
344
371
 
345
372
  modResults.contents = addLibCppFilter(modResults.contents);
346
- return { modResults, ...config };
373
+
374
+ return { modResults, ...exportedConfig };
347
375
  });
348
- };
349
376
 
350
- const withAndroidProjectGradle: ConfigPlugin<MapboxPlugProps> = (config) => {
351
- return withProjectBuildGradle(config, ({ modResults, ...config }) => {
377
+ const withAndroidProjectGradle: ConfigPlugin<MapboxPlugProps> = (config) =>
378
+ withProjectBuildGradle(config, ({ modResults, ...exportedConfig }) => {
352
379
  if (modResults.language !== 'groovy') {
353
380
  WarningAggregator.addWarningAndroid(
354
381
  'withMapbox',
355
382
  `Cannot automatically configure app build.gradle if it's not groovy`,
356
383
  );
357
- return { modResults, ...config };
384
+
385
+ return { modResults, ...exportedConfig };
358
386
  }
359
387
 
360
388
  modResults.contents = addMapboxMavenRepo(modResults.contents);
361
- return { modResults, ...config };
389
+
390
+ return { modResults, ...exportedConfig };
362
391
  });
363
- };
364
392
 
365
393
  const withMapboxAndroid: ConfigPlugin<MapboxPlugProps> = (
366
394
  config,
@@ -372,22 +400,27 @@ const withMapboxAndroid: ConfigPlugin<MapboxPlugProps> = (
372
400
  });
373
401
  config = withAndroidProjectGradle(config, { RNMapboxMapsImpl });
374
402
  config = withAndroidAppGradle(config, { RNMapboxMapsImpl });
403
+
375
404
  return config;
376
405
  };
377
406
 
378
407
  const withMapbox: ConfigPlugin<MapboxPlugProps> = (
379
408
  config,
380
- { RNMapboxMapsImpl, RNMapboxMapsDownloadToken },
409
+ { RNMapboxMapsImpl, RNMapboxMapsVersion, RNMapboxMapsDownloadToken },
381
410
  ) => {
382
411
  config = withExcludedSimulatorArchitectures(config);
383
412
  config = withMapboxAndroid(config, {
384
413
  RNMapboxMapsImpl,
414
+ RNMapboxMapsVersion,
385
415
  RNMapboxMapsDownloadToken,
386
416
  });
387
- return withCocoaPodsInstallerBlocks(config, {
417
+ config = withCocoaPodsInstallerBlocks(config, {
388
418
  RNMapboxMapsImpl,
419
+ RNMapboxMapsVersion,
389
420
  RNMapboxMapsDownloadToken,
390
421
  });
422
+
423
+ return config;
391
424
  };
392
425
 
393
426
  export default createRunOncePlugin(withMapbox, pkg.name, pkg.version);
@@ -12,7 +12,10 @@ export { default as Light } from './components/Light';
12
12
  export { default as PointAnnotation } from './components/PointAnnotation';
13
13
  export { default as Annotation } from './components/Annotation';
14
14
  export { default as Callout } from './components/Callout';
15
- export { default as UserLocation } from './components/UserLocation';
15
+ export {
16
+ default as UserLocation,
17
+ UserLocationRenderMode,
18
+ } from './components/UserLocation';
16
19
  export { default as VectorSource } from './components/VectorSource';
17
20
  export { ShapeSource } from './components/ShapeSource';
18
21
  export { default as RasterSource } from './components/RasterSource';
@@ -1,4 +1,3 @@
1
- /* eslint react/prop-types:0 */
2
1
  import React from 'react';
3
2
  import { NativeMethods, processColor } from 'react-native';
4
3
 
@@ -9,6 +8,7 @@ import type { BaseProps } from '../types/BaseProps';
9
8
 
10
9
  type PropsBase = BaseProps & {
11
10
  id: string;
11
+ existing?: boolean;
12
12
  sourceID?: string;
13
13
  minZoomLevel?: number;
14
14
  maxZoomLevel?: number;
@@ -27,6 +27,7 @@ class AbstractLayer<
27
27
  return {
28
28
  ...this.props,
29
29
  id: this.props.id,
30
+ existing: this.props.existing,
30
31
  sourceID: this.props.sourceID,
31
32
  reactStyle: this.getStyle(this.props.style),
32
33
  minZoomLevel: this.props.minZoomLevel,
@@ -13,10 +13,15 @@ const MapboxGL = NativeModules.MGLModule;
13
13
 
14
14
  export type Props = {
15
15
  /**
16
- * A string that uniquely identifies the source in the style to which it is added.
16
+ * A string that uniquely identifies the layer in the style to which it is added.
17
17
  */
18
18
  id: string;
19
19
 
20
+ /**
21
+ * The id refers to en existing layer in the style. Does not create a new layer.
22
+ */
23
+ existing?: boolean;
24
+
20
25
  /**
21
26
  * The source from which to obtain the data to style.
22
27
  * If the source has not yet been added to the current style, the behavior is undefined.
@@ -1,15 +1,15 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
1
+ import React, { ReactNode } from 'react';
3
2
  import {
4
3
  View,
5
4
  Text,
6
5
  Animated,
7
6
  requireNativeComponent,
8
7
  StyleSheet,
8
+ ViewStyle,
9
+ ViewProps,
10
+ StyleProp,
9
11
  } from 'react-native';
10
12
 
11
- import { viewPropTypes } from '../utils';
12
-
13
13
  export const NATIVE_MODULE_NAME = 'RCTMGLCallout';
14
14
 
15
15
  const styles = StyleSheet.create({
@@ -48,60 +48,68 @@ const styles = StyleSheet.create({
48
48
  },
49
49
  });
50
50
 
51
+ type NativeProps = {
52
+ children: ReactNode;
53
+ style: StyleProp<ViewStyle>;
54
+ };
55
+
56
+ type Props = Omit<ViewProps, 'style'> & {
57
+ /**
58
+ * String that gets displayed in the default callout.
59
+ */
60
+ title: string;
61
+
62
+ /**
63
+ * Style property for the Animated.View wrapper, apply animations to this
64
+ */
65
+ style?: ViewStyle;
66
+
67
+ /**
68
+ * Style property for the native RCTMGLCallout container, set at your own risk.
69
+ */
70
+ containerStyle?: ViewStyle;
71
+
72
+ /**
73
+ * Style property for the content bubble.
74
+ */
75
+ contentStyle?: ViewStyle;
76
+
77
+ /**
78
+ * Style property for the triangle tip under the content.
79
+ */
80
+ tipStyle?: ViewStyle;
81
+
82
+ /**
83
+ * Style property for the title in the content bubble.
84
+ */
85
+ textStyle?: ViewStyle;
86
+ };
87
+
51
88
  /**
52
89
  * Callout that displays information about a selected annotation near the annotation.
53
90
  */
54
- class Callout extends React.PureComponent {
55
- static propTypes = {
56
- ...viewPropTypes,
57
-
58
- /**
59
- * String that gets displayed in the default callout.
60
- */
61
- title: PropTypes.string,
62
-
63
- /**
64
- * Style property for the Animated.View wrapper, apply animations to this
65
- */
66
- style: PropTypes.any,
67
-
68
- /**
69
- * Style property for the native RCTMGLCallout container, set at your own risk.
70
- */
71
- containerStyle: PropTypes.any,
72
-
73
- /**
74
- * Style property for the content bubble.
75
- */
76
- contentStyle: PropTypes.any,
77
-
78
- /**
79
- * Style property for the triangle tip under the content.
80
- */
81
- tipStyle: PropTypes.any,
82
-
83
- /**
84
- * Style property for the title in the content bubble.
85
- */
86
- textStyle: PropTypes.any,
87
- };
88
-
91
+ class Callout extends React.PureComponent<Props> {
89
92
  get _containerStyle() {
90
- return [
93
+ const style = [
91
94
  {
92
95
  position: 'absolute',
93
96
  zIndex: 999,
94
97
  backgroundColor: 'transparent',
95
- },
96
- this.props.containerStyle,
98
+ } as ViewStyle,
97
99
  ];
100
+
101
+ if (this.props.containerStyle) {
102
+ style.push(this.props.containerStyle);
103
+ }
104
+
105
+ return style;
98
106
  }
99
107
 
100
108
  get _hasChildren() {
101
109
  return React.Children.count(this.props.children) > 0;
102
110
  }
103
111
 
104
- _renderDefaultCallout() {
112
+ _renderDefaultCallout(): ReactNode {
105
113
  return (
106
114
  <Animated.View style={[styles.container, this.props.style]}>
107
115
  <View style={[styles.content, this.props.contentStyle]}>
@@ -114,7 +122,7 @@ class Callout extends React.PureComponent {
114
122
  );
115
123
  }
116
124
 
117
- _renderCustomCallout() {
125
+ _renderCustomCallout(): ReactNode {
118
126
  return (
119
127
  <Animated.View {...this.props} style={this.props.style}>
120
128
  {this.props.children}
@@ -134,6 +142,6 @@ class Callout extends React.PureComponent {
134
142
  }
135
143
  }
136
144
 
137
- const RCTMGLCallout = requireNativeComponent(NATIVE_MODULE_NAME, Callout);
145
+ const RCTMGLCallout = requireNativeComponent<NativeProps>(NATIVE_MODULE_NAME);
138
146
 
139
147
  export default Callout;
@@ -1,4 +1,3 @@
1
- import { Position } from '@turf/helpers';
2
1
  import React, {
3
2
  forwardRef,
4
3
  memo,
@@ -15,6 +14,8 @@ import { type NativeRefType } from '../utils/nativeRef';
15
14
 
16
15
  const NativeModule = NativeModules.MGLModule;
17
16
 
17
+ type Position = number[] | [number, number];
18
+
18
19
  export enum UserTrackingMode {
19
20
  Follow = 'normal',
20
21
  FollowWithHeading = 'compass',
@@ -18,6 +18,11 @@ export type Props = {
18
18
  */
19
19
  id: string;
20
20
 
21
+ /**
22
+ * The id refers to en existing layer in the style. Does not create a new layer.
23
+ */
24
+ existing?: boolean;
25
+
21
26
  /**
22
27
  * The source from which to obtain the data to style.
23
28
  * If the source has not yet been added to the current style, the behavior is undefined.