@maplibre/maplibre-react-native 8.6.0-beta.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 (381) hide show
  1. package/.eslintignore +3 -0
  2. package/.eslintrc.js +158 -0
  3. package/.gitattributes +1 -0
  4. package/.nvmrc +1 -0
  5. package/.prettierrc.js +7 -0
  6. package/.sonarcloud.properties +15 -0
  7. package/CHANGELOG.md +367 -0
  8. package/CODE_OF_CONDUCT.md +2 -0
  9. package/CONTRIBUTING.md +34 -0
  10. package/LICENSE.md +9 -0
  11. package/README.md +224 -0
  12. package/RELEASE.md +30 -0
  13. package/android/build.gradle +34 -0
  14. package/android/install.md +16 -0
  15. package/android/rctmgl/.settings/org.eclipse.buildship.core.prefs +2 -0
  16. package/android/rctmgl/build.gradle +61 -0
  17. package/android/rctmgl/proguard-rules.pro +25 -0
  18. package/android/rctmgl/src/main/AndroidManifest.xml +4 -0
  19. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/RCTMGLPackage.java +99 -0
  20. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/AbstractEvent.java +35 -0
  21. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/AbstractEventEmitter.java +80 -0
  22. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/AbstractMapFeature.java +19 -0
  23. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/MarkerView.java +23 -0
  24. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/MarkerViewManager.java +67 -0
  25. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/RCTMGLCallout.java +15 -0
  26. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/RCTMGLCalloutManager.java +22 -0
  27. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/RCTMGLMarkerView.java +112 -0
  28. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/RCTMGLMarkerViewManager.java +45 -0
  29. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/RCTMGLPointAnnotation.java +360 -0
  30. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/RCTMGLPointAnnotationManager.java +88 -0
  31. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/camera/CameraStop.java +249 -0
  32. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/camera/CameraUpdateItem.java +125 -0
  33. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/camera/CameraUpdateQueue.java +73 -0
  34. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/camera/RCTMGLCamera.java +530 -0
  35. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/camera/RCTMGLCameraManager.java +101 -0
  36. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/camera/constants/CameraMode.java +22 -0
  37. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/images/RCTMGLImages.java +234 -0
  38. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/images/RCTMGLImagesManager.java +103 -0
  39. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/location/LocationComponentManager.java +149 -0
  40. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocation.java +66 -0
  41. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocationManager.java +35 -0
  42. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/mapview/LayerSourceInfo.java +59 -0
  43. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/mapview/RCTMGLAndroidTextureMapView.java +16 -0
  44. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/mapview/RCTMGLAndroidTextureMapViewManager.java +31 -0
  45. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/mapview/RCTMGLMapView.java +1527 -0
  46. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/mapview/RCTMGLMapViewManager.java +353 -0
  47. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/mapview/helpers/CameraChangeTracker.java +41 -0
  48. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/RCTMGLStyle.java +83 -0
  49. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/RCTMGLStyleFactory.java +2242 -0
  50. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/RCTMGLStyleFunctionParser.java +108 -0
  51. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/RCTMGLStyleValue.java +212 -0
  52. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTLayer.java +287 -0
  53. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayer.java +27 -0
  54. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayerManager.java +64 -0
  55. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayer.java +55 -0
  56. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayerManager.java +77 -0
  57. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayer.java +55 -0
  58. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayerManager.java +80 -0
  59. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayer.java +55 -0
  60. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayerManager.java +80 -0
  61. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayer.java +55 -0
  62. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayerManager.java +77 -0
  63. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayer.java +55 -0
  64. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayerManager.java +79 -0
  65. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayer.java +27 -0
  66. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayerManager.java +64 -0
  67. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayer.java +55 -0
  68. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayerManager.java +75 -0
  69. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/light/RCTMGLLight.java +65 -0
  70. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/light/RCTMGLLightManager.java +29 -0
  71. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSource.java +81 -0
  72. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSourceManager.java +72 -0
  73. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSource.java +45 -0
  74. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSourceManager.java +44 -0
  75. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSource.java +302 -0
  76. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSourceManager.java +227 -0
  77. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSource.java +97 -0
  78. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSourceManager.java +80 -0
  79. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSource.java +64 -0
  80. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSourceManager.java +84 -0
  81. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTSource.java +244 -0
  82. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/AbstractEvent.java +66 -0
  83. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/AndroidCallbackEvent.java +38 -0
  84. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/EventEmitter.java +45 -0
  85. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/FeatureClickEvent.java +79 -0
  86. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/IEvent.java +18 -0
  87. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/ImageMissingEvent.java +42 -0
  88. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/LocationEvent.java +100 -0
  89. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/MapChangeEvent.java +47 -0
  90. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/MapClickEvent.java +51 -0
  91. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/MapUserTrackingModeEvent.java +36 -0
  92. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/OfflineEvent.java +29 -0
  93. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/PointAnnotationClickEvent.java +46 -0
  94. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/PointAnnotationDragEvent.java +51 -0
  95. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/constants/EventKeys.java +39 -0
  96. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/events/constants/EventTypes.java +51 -0
  97. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/http/CustomHeadersInterceptor.java +38 -0
  98. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/location/LocationManager.java +168 -0
  99. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/location/UserLocation.java +63 -0
  100. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/location/UserLocationVerticalAlignment.java +11 -0
  101. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/location/UserTrackingMode.java +63 -0
  102. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/location/UserTrackingState.java +19 -0
  103. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/modules/RCTMGLLocationModule.java +158 -0
  104. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/modules/RCTMGLLogging.java +140 -0
  105. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/modules/RCTMGLModule.java +348 -0
  106. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/modules/RCTMGLOfflineModule.java +597 -0
  107. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/modules/RCTMGLSnapshotModule.java +139 -0
  108. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/utils/BitmapUtils.java +129 -0
  109. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/utils/ConvertUtils.java +257 -0
  110. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/utils/DownloadMapImageTask.java +159 -0
  111. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/utils/ExpressionParser.java +74 -0
  112. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/utils/GeoJSONUtils.java +209 -0
  113. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/utils/GeoViewport.java +38 -0
  114. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/utils/ImageEntry.java +25 -0
  115. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/utils/ResourceUtils.java +30 -0
  116. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/utils/SimpleEventCallback.java +30 -0
  117. package/android/rctmgl/src/main/java/com/mapbox/rctmgl/utils/SphericalMercator.java +69 -0
  118. package/android/rctmgl/src/main/res/drawable/empty.xml +5 -0
  119. package/android/rctmgl/src/main/res/drawable/empty_drawable.png +0 -0
  120. package/android/rctmgl/src/main/res/drawable-xxhdpi/red_marker.png +0 -0
  121. package/android/rctmgl/src/main/res/layout/annotation.xml +17 -0
  122. package/android/rctmgl/src/main/res/values/strings.xml +3 -0
  123. package/android/settings.gradle +1 -0
  124. package/app.plugin.js +1 -0
  125. package/assets/heading.png +0 -0
  126. package/assets/heading@2x.png +0 -0
  127. package/assets/heading@3x.png +0 -0
  128. package/assets/indoor_building_map_android.png +0 -0
  129. package/assets/indoor_building_map_ios.png +0 -0
  130. package/assets/mapbox_logo.png +0 -0
  131. package/babel.config.js +9 -0
  132. package/docs/Annotation.md +39 -0
  133. package/docs/Annotations.md +17 -0
  134. package/docs/BackgroundLayer.md +166 -0
  135. package/docs/Callout.md +15 -0
  136. package/docs/Camera.md +162 -0
  137. package/docs/CircleLayer.md +453 -0
  138. package/docs/CustomHttpHeaders.md +87 -0
  139. package/docs/FillExtrusionLayer.md +327 -0
  140. package/docs/FillLayer.md +293 -0
  141. package/docs/GettingStarted.md +72 -0
  142. package/docs/HeadingIndicator.md +10 -0
  143. package/docs/HeatmapLayer.md +215 -0
  144. package/docs/ImageSource.md +12 -0
  145. package/docs/Images.md +12 -0
  146. package/docs/Light.md +159 -0
  147. package/docs/LineLayer.md +567 -0
  148. package/docs/Logger.md +23 -0
  149. package/docs/MapView.md +211 -0
  150. package/docs/MapboxGL.md +65 -0
  151. package/docs/MarkerView.md +14 -0
  152. package/docs/NativeUserLocation.md +11 -0
  153. package/docs/OfflineManager.md +246 -0
  154. package/docs/PointAnnotation.md +34 -0
  155. package/docs/RasterLayer.md +357 -0
  156. package/docs/RasterSource.md +17 -0
  157. package/docs/ShapeSource.md +100 -0
  158. package/docs/Style.md +10 -0
  159. package/docs/StyleSheet.md +430 -0
  160. package/docs/SymbolLayer.md +1658 -0
  161. package/docs/UserLocation.md +39 -0
  162. package/docs/VectorSource.md +48 -0
  163. package/docs/docs.json +6093 -0
  164. package/docs/snapshotManager.md +53 -0
  165. package/index.d.ts +953 -0
  166. package/ios/RCTMGL/CameraMode.h +18 -0
  167. package/ios/RCTMGL/CameraMode.m +18 -0
  168. package/ios/RCTMGL/CameraStop.h +26 -0
  169. package/ios/RCTMGL/CameraStop.m +83 -0
  170. package/ios/RCTMGL/CameraUpdateItem.h +18 -0
  171. package/ios/RCTMGL/CameraUpdateItem.m +178 -0
  172. package/ios/RCTMGL/CameraUpdateQueue.h +21 -0
  173. package/ios/RCTMGL/CameraUpdateQueue.m +74 -0
  174. package/ios/RCTMGL/FilterParser.h +14 -0
  175. package/ios/RCTMGL/FilterParser.m +22 -0
  176. package/ios/RCTMGL/MGLCustomHeaders.h +20 -0
  177. package/ios/RCTMGL/MGLCustomHeaders.m +98 -0
  178. package/ios/RCTMGL/MGLFaux3DUserLocationAnnotationView.h +23 -0
  179. package/ios/RCTMGL/MGLFaux3DUserLocationAnnotationView.m +474 -0
  180. package/ios/RCTMGL/MGLModule.h +13 -0
  181. package/ios/RCTMGL/MGLModule.m +269 -0
  182. package/ios/RCTMGL/MGLOfflineModule.h +19 -0
  183. package/ios/RCTMGL/MGLOfflineModule.m +516 -0
  184. package/ios/RCTMGL/MGLSnapshotModule.h +13 -0
  185. package/ios/RCTMGL/MGLSnapshotModule.m +80 -0
  186. package/ios/RCTMGL/MGLUserLocationHeadingArrowLayer.h +11 -0
  187. package/ios/RCTMGL/MGLUserLocationHeadingArrowLayer.m +57 -0
  188. package/ios/RCTMGL/MGLUserLocationHeadingBeamLayer.h +11 -0
  189. package/ios/RCTMGL/MGLUserLocationHeadingBeamLayer.m +102 -0
  190. package/ios/RCTMGL/MGLUserLocationHeadingIndicator.h +10 -0
  191. package/ios/RCTMGL/RCTConvert+Mapbox.h +16 -0
  192. package/ios/RCTMGL/RCTConvert+Mapbox.m +32 -0
  193. package/ios/RCTMGL/RCTMGL.h +13 -0
  194. package/ios/RCTMGL/RCTMGL.m +13 -0
  195. package/ios/RCTMGL/RCTMGLBackgroundLayer.h +14 -0
  196. package/ios/RCTMGL/RCTMGLBackgroundLayer.m +27 -0
  197. package/ios/RCTMGL/RCTMGLBackgroundLayerManager.h +13 -0
  198. package/ios/RCTMGL/RCTMGLBackgroundLayerManager.m +35 -0
  199. package/ios/RCTMGL/RCTMGLCallout.h +15 -0
  200. package/ios/RCTMGL/RCTMGLCallout.m +74 -0
  201. package/ios/RCTMGL/RCTMGLCalloutManager.h +13 -0
  202. package/ios/RCTMGL/RCTMGLCalloutManager.m +21 -0
  203. package/ios/RCTMGL/RCTMGLCamera.h +39 -0
  204. package/ios/RCTMGL/RCTMGLCamera.m +258 -0
  205. package/ios/RCTMGL/RCTMGLCameraManager.h +13 -0
  206. package/ios/RCTMGL/RCTMGLCameraManager.m +52 -0
  207. package/ios/RCTMGL/RCTMGLCircleLayer.h +13 -0
  208. package/ios/RCTMGL/RCTMGLCircleLayer.m +34 -0
  209. package/ios/RCTMGL/RCTMGLCircleLayerManager.h +13 -0
  210. package/ios/RCTMGL/RCTMGLCircleLayerManager.m +39 -0
  211. package/ios/RCTMGL/RCTMGLEvent.h +21 -0
  212. package/ios/RCTMGL/RCTMGLEvent.m +47 -0
  213. package/ios/RCTMGL/RCTMGLEventProtocol.h +16 -0
  214. package/ios/RCTMGL/RCTMGLEventTypes.h +50 -0
  215. package/ios/RCTMGL/RCTMGLEventTypes.m +49 -0
  216. package/ios/RCTMGL/RCTMGLFillExtrusionLayer.h +14 -0
  217. package/ios/RCTMGL/RCTMGLFillExtrusionLayer.m +32 -0
  218. package/ios/RCTMGL/RCTMGLFillExtrusionLayerManager.h +13 -0
  219. package/ios/RCTMGL/RCTMGLFillExtrusionLayerManager.m +39 -0
  220. package/ios/RCTMGL/RCTMGLFillLayer.h +14 -0
  221. package/ios/RCTMGL/RCTMGLFillLayer.m +33 -0
  222. package/ios/RCTMGL/RCTMGLFillLayerManager.h +13 -0
  223. package/ios/RCTMGL/RCTMGLFillLayerManager.m +37 -0
  224. package/ios/RCTMGL/RCTMGLHeatmapLayer.h +12 -0
  225. package/ios/RCTMGL/RCTMGLHeatmapLayer.m +30 -0
  226. package/ios/RCTMGL/RCTMGLHeatmapLayerManager.h +12 -0
  227. package/ios/RCTMGL/RCTMGLHeatmapLayerManager.m +38 -0
  228. package/ios/RCTMGL/RCTMGLImageQueue.h +19 -0
  229. package/ios/RCTMGL/RCTMGLImageQueue.m +57 -0
  230. package/ios/RCTMGL/RCTMGLImageQueueOperation.h +17 -0
  231. package/ios/RCTMGL/RCTMGLImageQueueOperation.m +138 -0
  232. package/ios/RCTMGL/RCTMGLImageSource.h +16 -0
  233. package/ios/RCTMGL/RCTMGLImageSource.m +60 -0
  234. package/ios/RCTMGL/RCTMGLImageSourceManager.h +13 -0
  235. package/ios/RCTMGL/RCTMGLImageSourceManager.m +25 -0
  236. package/ios/RCTMGL/RCTMGLImages.h +25 -0
  237. package/ios/RCTMGL/RCTMGLImages.m +126 -0
  238. package/ios/RCTMGL/RCTMGLImagesManager.h +5 -0
  239. package/ios/RCTMGL/RCTMGLImagesManager.m +21 -0
  240. package/ios/RCTMGL/RCTMGLLayer.h +52 -0
  241. package/ios/RCTMGL/RCTMGLLayer.m +236 -0
  242. package/ios/RCTMGL/RCTMGLLight.h +17 -0
  243. package/ios/RCTMGL/RCTMGLLight.m +46 -0
  244. package/ios/RCTMGL/RCTMGLLightManager.h +13 -0
  245. package/ios/RCTMGL/RCTMGLLightManager.m +23 -0
  246. package/ios/RCTMGL/RCTMGLLineLayer.h +14 -0
  247. package/ios/RCTMGL/RCTMGLLineLayer.m +33 -0
  248. package/ios/RCTMGL/RCTMGLLineLayerManager.h +13 -0
  249. package/ios/RCTMGL/RCTMGLLineLayerManager.m +40 -0
  250. package/ios/RCTMGL/RCTMGLLocation.h +19 -0
  251. package/ios/RCTMGL/RCTMGLLocation.m +32 -0
  252. package/ios/RCTMGL/RCTMGLLocationManager.h +30 -0
  253. package/ios/RCTMGL/RCTMGLLocationManager.m +180 -0
  254. package/ios/RCTMGL/RCTMGLLocationManagerDelegate.h +20 -0
  255. package/ios/RCTMGL/RCTMGLLocationModule.h +15 -0
  256. package/ios/RCTMGL/RCTMGLLocationModule.m +99 -0
  257. package/ios/RCTMGL/RCTMGLLogging.h +18 -0
  258. package/ios/RCTMGL/RCTMGLLogging.m +132 -0
  259. package/ios/RCTMGL/RCTMGLMapTouchEvent.h +25 -0
  260. package/ios/RCTMGL/RCTMGLMapTouchEvent.m +77 -0
  261. package/ios/RCTMGL/RCTMGLMapView.h +91 -0
  262. package/ios/RCTMGL/RCTMGLMapView.m +536 -0
  263. package/ios/RCTMGL/RCTMGLMapViewManager.h +17 -0
  264. package/ios/RCTMGL/RCTMGLMapViewManager.m +625 -0
  265. package/ios/RCTMGL/RCTMGLNativeUserLocation.h +18 -0
  266. package/ios/RCTMGL/RCTMGLNativeUserLocation.m +49 -0
  267. package/ios/RCTMGL/RCTMGLNativeUserLocationManager.h +5 -0
  268. package/ios/RCTMGL/RCTMGLNativeUserLocationManager.m +25 -0
  269. package/ios/RCTMGL/RCTMGLPointAnnotation.h +41 -0
  270. package/ios/RCTMGL/RCTMGLPointAnnotation.m +251 -0
  271. package/ios/RCTMGL/RCTMGLPointAnnotationManager.h +13 -0
  272. package/ios/RCTMGL/RCTMGLPointAnnotationManager.m +36 -0
  273. package/ios/RCTMGL/RCTMGLRasterLayer.h +14 -0
  274. package/ios/RCTMGL/RCTMGLRasterLayer.m +30 -0
  275. package/ios/RCTMGL/RCTMGLRasterLayerManager.h +13 -0
  276. package/ios/RCTMGL/RCTMGLRasterLayerManager.m +35 -0
  277. package/ios/RCTMGL/RCTMGLRasterSource.h +16 -0
  278. package/ios/RCTMGL/RCTMGLRasterSource.m +35 -0
  279. package/ios/RCTMGL/RCTMGLRasterSourceManager.h +13 -0
  280. package/ios/RCTMGL/RCTMGLRasterSourceManager.m +32 -0
  281. package/ios/RCTMGL/RCTMGLShapeSource.h +52 -0
  282. package/ios/RCTMGL/RCTMGLShapeSource.m +180 -0
  283. package/ios/RCTMGL/RCTMGLShapeSourceManager.h +14 -0
  284. package/ios/RCTMGL/RCTMGLShapeSourceManager.m +205 -0
  285. package/ios/RCTMGL/RCTMGLSource.h +35 -0
  286. package/ios/RCTMGL/RCTMGLSource.m +143 -0
  287. package/ios/RCTMGL/RCTMGLStyle.h +219 -0
  288. package/ios/RCTMGL/RCTMGLStyle.m +1654 -0
  289. package/ios/RCTMGL/RCTMGLStyleValue.h +27 -0
  290. package/ios/RCTMGL/RCTMGLStyleValue.m +167 -0
  291. package/ios/RCTMGL/RCTMGLSymbolLayer.h +19 -0
  292. package/ios/RCTMGL/RCTMGLSymbolLayer.m +121 -0
  293. package/ios/RCTMGL/RCTMGLSymbolLayerManager.h +13 -0
  294. package/ios/RCTMGL/RCTMGLSymbolLayerManager.m +40 -0
  295. package/ios/RCTMGL/RCTMGLTileSource.h +22 -0
  296. package/ios/RCTMGL/RCTMGLTileSource.m +31 -0
  297. package/ios/RCTMGL/RCTMGLUserLocation.h +15 -0
  298. package/ios/RCTMGL/RCTMGLUserLocation.m +38 -0
  299. package/ios/RCTMGL/RCTMGLUtils.h +31 -0
  300. package/ios/RCTMGL/RCTMGLUtils.m +218 -0
  301. package/ios/RCTMGL/RCTMGLVectorLayer.h +15 -0
  302. package/ios/RCTMGL/RCTMGLVectorLayer.m +59 -0
  303. package/ios/RCTMGL/RCTMGLVectorSource.h +16 -0
  304. package/ios/RCTMGL/RCTMGLVectorSource.m +28 -0
  305. package/ios/RCTMGL/RCTMGLVectorSourceManager.h +14 -0
  306. package/ios/RCTMGL/RCTMGLVectorSourceManager.m +79 -0
  307. package/ios/RCTMGL/RNMBImageUtils.h +17 -0
  308. package/ios/RCTMGL/RNMBImageUtils.m +31 -0
  309. package/ios/RCTMGL/ViewManager.h +16 -0
  310. package/ios/RCTMGL/ViewManager.m +63 -0
  311. package/ios/RCTMGL/index.d.ts +1164 -0
  312. package/ios/RCTMGL.xcodeproj/project.pbxproj +774 -0
  313. package/ios/install.md +44 -0
  314. package/javascript/components/AbstractLayer.js +75 -0
  315. package/javascript/components/AbstractSource.js +15 -0
  316. package/javascript/components/BackgroundLayer.js +97 -0
  317. package/javascript/components/Callout.js +139 -0
  318. package/javascript/components/Camera.js +665 -0
  319. package/javascript/components/CircleLayer.js +101 -0
  320. package/javascript/components/FillExtrusionLayer.js +98 -0
  321. package/javascript/components/FillLayer.js +94 -0
  322. package/javascript/components/HeadingIndicator.js +31 -0
  323. package/javascript/components/HeatmapLayer.js +99 -0
  324. package/javascript/components/ImageSource.js +82 -0
  325. package/javascript/components/Images.js +119 -0
  326. package/javascript/components/Light.js +47 -0
  327. package/javascript/components/LineLayer.js +94 -0
  328. package/javascript/components/MapView.js +817 -0
  329. package/javascript/components/MarkerView.js +87 -0
  330. package/javascript/components/NativeBridgeComponent.js +86 -0
  331. package/javascript/components/NativeUserLocation.js +41 -0
  332. package/javascript/components/PointAnnotation.js +216 -0
  333. package/javascript/components/RasterLayer.js +95 -0
  334. package/javascript/components/RasterSource.js +124 -0
  335. package/javascript/components/ShapeSource.js +357 -0
  336. package/javascript/components/Style.js +264 -0
  337. package/javascript/components/SymbolLayer.js +120 -0
  338. package/javascript/components/UserLocation.js +273 -0
  339. package/javascript/components/VectorSource.js +200 -0
  340. package/javascript/components/annotations/Annotation.js +122 -0
  341. package/javascript/index.js +153 -0
  342. package/javascript/modules/location/locationManager.js +101 -0
  343. package/javascript/modules/offline/OfflineCreatePackOptions.js +46 -0
  344. package/javascript/modules/offline/OfflinePack.js +40 -0
  345. package/javascript/modules/offline/offlineManager.js +378 -0
  346. package/javascript/modules/snapshot/SnapshotOptions.js +67 -0
  347. package/javascript/modules/snapshot/snapshotManager.js +62 -0
  348. package/javascript/utils/BridgeValue.js +81 -0
  349. package/javascript/utils/Logger.js +114 -0
  350. package/javascript/utils/animated/Animated.js +39 -0
  351. package/javascript/utils/animated/AnimatedCoordinatesArray.js +191 -0
  352. package/javascript/utils/animated/AnimatedExtractCoordinateFromArray.js +43 -0
  353. package/javascript/utils/animated/AnimatedPoint.js +126 -0
  354. package/javascript/utils/animated/AnimatedRouteCoordinatesArray.js +124 -0
  355. package/javascript/utils/animated/AnimatedShape.js +72 -0
  356. package/javascript/utils/deprecation.js +25 -0
  357. package/javascript/utils/filterUtils.js +7 -0
  358. package/javascript/utils/geoUtils.js +73 -0
  359. package/javascript/utils/index.js +113 -0
  360. package/javascript/utils/styleMap.js +1901 -0
  361. package/maplibre-react-native.podspec +79 -0
  362. package/package.json +120 -0
  363. package/plugin/build/withMapbox.d.ts +12 -0
  364. package/plugin/build/withMapbox.js +119 -0
  365. package/plugin/install.md +32 -0
  366. package/react-native.config.js +10 -0
  367. package/scripts/autogenHelpers/DocJSONBuilder.js +458 -0
  368. package/scripts/autogenHelpers/JSDocNodeTree.js +131 -0
  369. package/scripts/autogenHelpers/MarkdownBuilder.js +29 -0
  370. package/scripts/autogenHelpers/globals.js +507 -0
  371. package/scripts/autogenerate.js +374 -0
  372. package/scripts/download-style-spec.sh +15 -0
  373. package/scripts/templates/RCTMGLStyle.h.ejs +33 -0
  374. package/scripts/templates/RCTMGLStyle.m.ejs +97 -0
  375. package/scripts/templates/RCTMGLStyleFactory.java.ejs +107 -0
  376. package/scripts/templates/component.md.ejs +122 -0
  377. package/scripts/templates/index.d.ts.ejs +56 -0
  378. package/scripts/templates/styleMap.js.ejs +115 -0
  379. package/setup-jest.js +121 -0
  380. package/style-spec/v8.json +5798 -0
  381. package/tsconfig.json +65 -0
@@ -0,0 +1,258 @@
1
+ //
2
+ // RCTMGLCamera.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 6/22/18.
6
+ // Copyright © 2018 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLCamera.h"
10
+ #import "CameraStop.h"
11
+ #import "CameraUpdateQueue.h"
12
+ #import "RCTMGLLocation.h"
13
+ #import "RCTMGLUtils.h"
14
+ #import "RCTMGLLocationManager.h"
15
+ #import "RCTMGLEvent.h"
16
+ #import "RCTMGLEventTypes.h"
17
+ #import "CameraMode.h"
18
+
19
+ @implementation RCTMGLCamera
20
+ {
21
+ CameraUpdateQueue *cameraUpdateQueue;
22
+ RCTMGLCamera *followCamera;
23
+ }
24
+
25
+ - (instancetype)init
26
+ {
27
+ if (self = [super init]) {
28
+ cameraUpdateQueue = [[CameraUpdateQueue alloc] init];
29
+ }
30
+ return self;
31
+ }
32
+
33
+ - (void)dealloc {
34
+ if (_map) {
35
+ _map.reactCamera = nil;
36
+ }
37
+ }
38
+
39
+ - (void)setMaxZoomLevel:(NSNumber *)maxZoomLevel {
40
+ _maxZoomLevel = maxZoomLevel;
41
+ [self _updateMinMaxZoomLevel];
42
+ }
43
+
44
+ - (void)setMinZoomLevel:(NSNumber *)minZoomLevel {
45
+ _minZoomLevel = minZoomLevel;
46
+ [self _updateMinMaxZoomLevel];
47
+ }
48
+
49
+ - (void)setMaxBounds:(NSString *)maxBounds {
50
+ _maxBounds = maxBounds;
51
+ [self _updateMaxBounds];
52
+ }
53
+
54
+ - (void)setDefaultStop:(NSDictionary<NSString *,id> *)stop
55
+ {
56
+ _defaultStop = stop;
57
+ }
58
+
59
+ - (void)setStop:(NSDictionary<NSString *,id> *)stop
60
+ {
61
+ _stop = stop;
62
+
63
+ [self _updateCamera];
64
+ }
65
+
66
+ - (void)setMap:(RCTMGLMapView *)map
67
+ {
68
+ if (_map != nil) {
69
+ _map.reactCamera = nil;
70
+ }
71
+ _map = map;
72
+ _map.reactCamera = self;
73
+
74
+ [self _setInitialCamera];
75
+ [self _updateMinMaxZoomLevel];
76
+ [self _updateMaxBounds];
77
+ [self _updateCamera];
78
+ }
79
+
80
+ - (void)setFollowUserLocation:(BOOL)followUserLocation
81
+ {
82
+ _followUserLocation = followUserLocation;
83
+ [self _updateCameraFromTrackingMode];
84
+ }
85
+
86
+ - (void)setFollowUserMode:(NSString *)followUserMode
87
+ {
88
+ _followUserMode = followUserMode;
89
+ [self _updateCameraFromTrackingMode];
90
+ }
91
+
92
+ - (void)setFollowPitch:(NSNumber *)followPitch
93
+ {
94
+ _followPitch = followPitch;
95
+ [self _updateCameraFromTrackingMode];
96
+ }
97
+
98
+ - (void)setFollowZoomLevel:(NSNumber *)followZoomLevel
99
+ {
100
+ _followZoomLevel = followZoomLevel;
101
+ [self _updateCameraFromTrackingMode];
102
+ }
103
+
104
+ - (void)setFollowHeading:(NSNumber *)followHeading
105
+ {
106
+ _followHeading = followHeading;
107
+ [self _updateCameraFromTrackingMode];
108
+ }
109
+
110
+ - (void)_updateCameraFromJavascript
111
+ {
112
+ if (_stop == nil) {
113
+ return;
114
+ }
115
+
116
+ if (_followUserLocation) {
117
+ return;
118
+ }
119
+
120
+ if (_map != nil && _map.userTrackingMode != MGLUserTrackingModeNone) {
121
+ _map.userTrackingMode = MGLUserTrackingModeNone;
122
+ }
123
+ if (_stop[@"stops"]) {
124
+ NSArray* stops = _stop[@"stops"];
125
+ for (NSDictionary* stop in stops) {
126
+ [cameraUpdateQueue enqueue:[CameraStop fromDictionary:stop]];
127
+ }
128
+ } else {
129
+ [cameraUpdateQueue enqueue:[CameraStop fromDictionary:_stop]];
130
+ }
131
+ [cameraUpdateQueue execute:_map];
132
+ }
133
+
134
+ - (void)_setInitialCamera
135
+ {
136
+ if (! _defaultStop) {
137
+ return;
138
+ }
139
+
140
+ CameraStop* stop = [CameraStop fromDictionary:_defaultStop];
141
+ stop.duration = 0;
142
+ stop.mode = [NSNumber numberWithInt:RCT_MAPBOX_CAMERA_MODE_NONE];
143
+ CameraUpdateItem *item = [[CameraUpdateItem alloc] init];
144
+ item.cameraStop = stop;
145
+ [item execute:_map withCompletionHandler:^{ }];
146
+ }
147
+
148
+ - (void)_updateCamera
149
+ {
150
+ if (_map != nil) {
151
+ if (_followUserLocation) {
152
+ [self _updateCameraFromTrackingMode];
153
+ } else {
154
+ [self _updateCameraFromJavascript];
155
+ }
156
+ }
157
+ }
158
+
159
+ - (void)_updateMinMaxZoomLevel
160
+ {
161
+ if (_map != nil) {
162
+ if (_maxZoomLevel) {
163
+ _map.maximumZoomLevel = [_maxZoomLevel doubleValue];
164
+ }
165
+ if (_minZoomLevel) {
166
+ _map.minimumZoomLevel = [_minZoomLevel doubleValue];
167
+ }
168
+ }
169
+ }
170
+
171
+ - (void)_updateMaxBounds
172
+ {
173
+ if (_map != nil) {
174
+ if (_maxBounds) {
175
+ _map.maxBounds = [RCTMGLUtils fromFeatureCollection:_maxBounds];
176
+ }
177
+ }
178
+ }
179
+
180
+ - (void)_updateCameraFromTrackingMode
181
+ {
182
+ if (_map == nil) {
183
+ return;
184
+ }
185
+ if (!_followUserLocation) {
186
+ _map.userTrackingMode = MGLUserTrackingModeNone;
187
+ return;
188
+ }
189
+
190
+ if (_map.userTrackingMode != [self _userTrackingMode]) {
191
+ _map.showsUserLocation = [self _userTrackingMode] != MGLUserTrackingModeNone;
192
+ _map.userTrackingMode = [self _userTrackingMode];
193
+ }
194
+
195
+ MGLMapCamera *camera = _map.camera;
196
+ if (_followPitch != nil && [_followPitch floatValue] >= 0.0) {
197
+ camera.pitch = [_followPitch floatValue];
198
+ } else if (_stop != nil && _stop[@"pitch"] != nil) {
199
+ camera.pitch = [_stop[@"pitch"] floatValue];
200
+ }
201
+
202
+ if ([self _userTrackingMode] != MGLUserTrackingModeFollowWithCourse && [self _userTrackingMode] != MGLUserTrackingModeFollowWithHeading) {
203
+ if (_followHeading != nil && [_followHeading floatValue] >= 0.0) {
204
+ camera.heading = [_followHeading floatValue];
205
+ } else if (_stop != nil && _stop[@"heading"] != nil) {
206
+ camera.heading = [_stop[@"heading"] floatValue];
207
+ }
208
+ }
209
+
210
+ if (_followZoomLevel != nil && [_followZoomLevel doubleValue] >= 0.0) {
211
+ camera.altitude = [_map altitudeFromZoom:[_followZoomLevel doubleValue]];
212
+ }
213
+
214
+ [_map setCamera:camera animated:YES];
215
+ }
216
+
217
+ - (NSUInteger)_userTrackingMode
218
+ {
219
+ if ([_followUserMode isEqualToString:@"compass"]) {
220
+ return MGLUserTrackingModeFollowWithHeading;
221
+ } else if ([_followUserMode isEqualToString:@"course"]) {
222
+ return MGLUserTrackingModeFollowWithCourse;
223
+ } else if (_followUserLocation) {
224
+ return MGLUserTrackingModeFollow;
225
+ } else {
226
+ return MGLUserTrackingModeNone;
227
+ }
228
+ }
229
+
230
+ - (NSString*)_trackingModeToString:(MGLUserTrackingMode) mode {
231
+ switch (mode) {
232
+ case MGLUserTrackingModeFollowWithHeading:
233
+ return @"compass";
234
+ case MGLUserTrackingModeFollowWithCourse:
235
+ return @"course";
236
+ case MGLUserTrackingModeFollow:
237
+ return @"normal";
238
+ case MGLUserTrackingModeNone:
239
+ return [NSNull null];
240
+ }
241
+ }
242
+
243
+ - (void)initialLayout
244
+ {
245
+ [self _setInitialCamera];
246
+ [self _updateCamera];
247
+ }
248
+
249
+ - (void)didChangeUserTrackingMode:(MGLUserTrackingMode)mode animated:(BOOL)animated
250
+ {
251
+ NSDictionary *payload = @{ @"followUserMode": [self _trackingModeToString: mode], @"followUserLocation": @((BOOL)(mode != MGLUserTrackingModeNone)) };
252
+ RCTMGLEvent *event = [RCTMGLEvent makeEvent:RCT_MAPBOX_USER_TRACKING_MODE_CHANGE withPayload:payload];
253
+ if (_onUserTrackingModeChange) {
254
+ _onUserTrackingModeChange([event toJSON]);
255
+ }
256
+ }
257
+
258
+ @end
@@ -0,0 +1,13 @@
1
+ //
2
+ // RCTMGLCameraManager.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 6/22/18.
6
+ // Copyright © 2018 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "ViewManager.h"
10
+
11
+ @interface RCTMGLCameraManager : ViewManager
12
+
13
+ @end
@@ -0,0 +1,52 @@
1
+ //
2
+ // RCTMGLCameraManager.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 6/22/18.
6
+ // Copyright © 2018 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLCameraManager.h"
10
+ #import "RCTMGLCamera.h"
11
+
12
+ @implementation RCTMGLCameraManager
13
+
14
+ RCT_EXPORT_MODULE(RCTMGLCamera)
15
+
16
+ #pragma - View Properties
17
+
18
+ RCT_EXPORT_VIEW_PROPERTY(stop, NSDictionary)
19
+
20
+ RCT_EXPORT_VIEW_PROPERTY(animationDuration, NSNumber)
21
+ RCT_EXPORT_VIEW_PROPERTY(animationMode, NSString)
22
+
23
+ RCT_EXPORT_VIEW_PROPERTY(followUserLocation, BOOL)
24
+ RCT_EXPORT_VIEW_PROPERTY(followUserMode, NSString)
25
+ RCT_EXPORT_VIEW_PROPERTY(followZoomLevel, NSNumber)
26
+ RCT_EXPORT_VIEW_PROPERTY(followPitch, NSNumber)
27
+ RCT_EXPORT_VIEW_PROPERTY(followHeading, NSNumber)
28
+
29
+ RCT_EXPORT_VIEW_PROPERTY(alignment, NSString)
30
+
31
+ RCT_EXPORT_VIEW_PROPERTY(maxBounds, NSString)
32
+
33
+ RCT_EXPORT_VIEW_PROPERTY(maxZoomLevel, NSNumber)
34
+ RCT_EXPORT_VIEW_PROPERTY(minZoomLevel, NSNumber)
35
+
36
+ RCT_EXPORT_VIEW_PROPERTY(onUserTrackingModeChange, RCTBubblingEventBlock)
37
+
38
+ RCT_EXPORT_VIEW_PROPERTY(defaultStop, NSDictionary)
39
+
40
+ #pragma Methods
41
+
42
+ - (BOOL)requiresMainQueueSetup
43
+ {
44
+ return YES;
45
+ }
46
+
47
+ - (UIView *)view
48
+ {
49
+ return [[RCTMGLCamera alloc] init];
50
+ }
51
+
52
+ @end
@@ -0,0 +1,13 @@
1
+ //
2
+ // RCTMGLCircleLayer.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/18/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLVectorLayer.h"
10
+
11
+ @interface RCTMGLCircleLayer : RCTMGLVectorLayer
12
+
13
+ @end
@@ -0,0 +1,34 @@
1
+ //
2
+ // RCTMGLCircleLayer.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/18/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLCircleLayer.h"
10
+ #import "RCTMGLStyle.h"
11
+
12
+ #import <React/RCTLog.h>
13
+
14
+ @implementation RCTMGLCircleLayer
15
+
16
+ - (MGLCircleStyleLayer*)makeLayer:(MGLStyle*)style
17
+ {
18
+ MGLSource *source = [self layerWithSourceIDInStyle:style];
19
+ if (source == nil) { return nil; }
20
+ MGLCircleStyleLayer *layer = [[MGLCircleStyleLayer alloc] initWithIdentifier:self.id source:source];
21
+ layer.sourceLayerIdentifier = self.sourceLayerID;
22
+ return layer;
23
+ }
24
+
25
+ - (void)addStyles
26
+ {
27
+ RCTMGLStyle *style = [[RCTMGLStyle alloc] initWithMGLStyle:self.style];
28
+ style.bridge = self.bridge;
29
+ [style circleLayer:(MGLCircleStyleLayer*)self.styleLayer withReactStyle:self.reactStyle isValid:^{
30
+ return [self isAddedToMap];
31
+ }];
32
+ }
33
+
34
+ @end
@@ -0,0 +1,13 @@
1
+ //
2
+ // RCTMGLCircleLayerManager.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/18/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "ViewManager.h"
10
+
11
+ @interface RCTMGLCircleLayerManager : ViewManager
12
+
13
+ @end
@@ -0,0 +1,39 @@
1
+ //
2
+ // RCTMGLCircleLayerManager.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/18/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLCircleLayerManager.h"
10
+ #import "RCTMGLCircleLayer.h"
11
+
12
+ @implementation RCTMGLCircleLayerManager
13
+
14
+ RCT_EXPORT_MODULE()
15
+
16
+ // circle layer props
17
+ RCT_EXPORT_VIEW_PROPERTY(sourceLayerID, NSString);
18
+
19
+ // standard layer props
20
+ RCT_EXPORT_VIEW_PROPERTY(id, NSString);
21
+ RCT_EXPORT_VIEW_PROPERTY(sourceID, NSString);
22
+ RCT_EXPORT_VIEW_PROPERTY(filter, NSArray);
23
+
24
+ RCT_EXPORT_VIEW_PROPERTY(aboveLayerID, NSString);
25
+ RCT_EXPORT_VIEW_PROPERTY(belowLayerID, NSString);
26
+ RCT_EXPORT_VIEW_PROPERTY(layerIndex, NSNumber);
27
+ RCT_EXPORT_VIEW_PROPERTY(reactStyle, NSDictionary);
28
+
29
+ RCT_EXPORT_VIEW_PROPERTY(maxZoomLevel, NSNumber);
30
+ RCT_EXPORT_VIEW_PROPERTY(minZoomLevel, NSNumber);
31
+
32
+ - (UIView*)view
33
+ {
34
+ RCTMGLCircleLayer *layer = [RCTMGLCircleLayer new];
35
+ layer.bridge = self.bridge;
36
+ return layer;
37
+ }
38
+
39
+ @end
@@ -0,0 +1,21 @@
1
+ //
2
+ // RCTMGLEvent.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 8/25/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import <Foundation/Foundation.h>
10
+ #import "RCTMGLEventProtocol.h"
11
+
12
+ @interface RCTMGLEvent : NSObject<RCTMGLEventProtocol>
13
+
14
+ @property (nonatomic, copy) NSString *type;
15
+ @property (nonatomic, strong) NSDictionary *payload;
16
+ @property (nonatomic, readonly) NSTimeInterval timestamp;
17
+
18
+ + (RCTMGLEvent*)makeEvent:(NSString*)eventType;
19
+ + (RCTMGLEvent*)makeEvent:(NSString*)eventType withPayload:(NSDictionary*)payload;
20
+
21
+ @end
@@ -0,0 +1,47 @@
1
+ //
2
+ // RCTMGLEvent.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 8/25/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLEvent.h"
10
+
11
+ @implementation RCTMGLEvent
12
+
13
+ - (instancetype)init
14
+ {
15
+ if (self = [super init]) {
16
+ _timestamp = [[NSDate date] timeIntervalSince1970];
17
+ }
18
+ return self;
19
+ }
20
+
21
+ - (NSDictionary*)payload
22
+ {
23
+ if (_payload == nil) {
24
+ return @{};
25
+ }
26
+ return _payload;
27
+ }
28
+
29
+ - (NSDictionary*)toJSON
30
+ {
31
+ return @{ @"type": self.type, @"payload": self.payload };
32
+ }
33
+
34
+ + (RCTMGLEvent*)makeEvent:(NSString*)type
35
+ {
36
+ return [RCTMGLEvent makeEvent:type withPayload:@{}];
37
+ }
38
+
39
+ + (RCTMGLEvent*)makeEvent:(NSString*)type withPayload:(NSDictionary*)payload
40
+ {
41
+ RCTMGLEvent *event = [[RCTMGLEvent alloc] init];
42
+ event.type = type;
43
+ event.payload = payload;
44
+ return event;
45
+ }
46
+
47
+ @end
@@ -0,0 +1,16 @@
1
+ //
2
+ // RCTMGLEvent.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 8/25/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ @protocol RCTMGLEventProtocol <NSObject>
10
+
11
+ @property (nonatomic, copy) NSString *type;
12
+ @property (nonatomic, strong) NSDictionary *payload;
13
+
14
+ - (NSDictionary*)toJSON;
15
+
16
+ @end
@@ -0,0 +1,50 @@
1
+ //
2
+ // RCTMGLEventTypes.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 8/27/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import <Foundation/Foundation.h>
10
+
11
+ @interface RCTMGLEventTypes : NSObject
12
+
13
+ extern NSString *const RCT_MAPBOX_EVENT_TAP;
14
+ extern NSString *const RCT_MAPBOX_EVENT_LONGPRESS;
15
+
16
+ extern NSString *const RCT_MAPBOX_USER_LOCATION_UPDATE;
17
+ extern NSString *const RCT_MAPBOX_USER_TRACKING_MODE_CHANGE;
18
+
19
+ extern NSString *const RCT_MAPBOX_REGION_WILL_CHANGE_EVENT;
20
+ extern NSString *const RCT_MAPBOX_REGION_IS_CHANGING;
21
+ extern NSString *const RCT_MAPBOX_REGION_DID_CHANGE;
22
+
23
+ extern NSString *const RCT_MAPBOX_WILL_START_LOADING_MAP;
24
+ extern NSString *const RCT_MAPBOX_DID_FINISH_LOADING_MAP;
25
+ extern NSString *const RCT_MAPBOX_DID_FAIL_LOADING_MAP;
26
+
27
+ extern NSString *const RCT_MAPBOX_WILL_START_RENDERING_FRAME;
28
+ extern NSString *const RCT_MAPBOX_DID_FINSIH_RENDERING_FRAME;
29
+ extern NSString *const RCT_MAPBOX_DID_FINISH_RENDERING_FRAME_FULLY;
30
+
31
+ extern NSString *const RCT_MAPBOX_WILL_START_RENDERING_MAP;
32
+ extern NSString *const RCT_MAPBOX_DID_FINISH_RENDERING_MAP;
33
+ extern NSString *const RCT_MAPBOX_DID_FINISH_RENDERING_MAP_FULLY;
34
+
35
+ extern NSString *const RCT_MAPBOX_DID_FINISH_LOADING_STYLE;
36
+
37
+ extern NSString *const RCT_MAPBOX_ANNOTATION_TAP;
38
+
39
+ extern NSString *const RCT_MAPBOX_OFFLINE_PROGRESS;
40
+ extern NSString *const RCT_MAPBOX_OFFLINE_ERROR;
41
+ extern NSString *const RCT_MAPBOX_OFFLINE_TILE_LIMIT;
42
+
43
+ extern NSString *const RCT_MAPBOX_SHAPE_SOURCE_LAYER_PRESS;
44
+ extern NSString *const RCT_MAPBOX_VECTOR_SOURCE_LAYER_PRESS;
45
+
46
+ extern NSString *const RCT_MAPBOX_USER_LOCATION_UPDATE;
47
+
48
+ extern NSString *const RCT_MAPBOX_IMAGES_MISSING_IMAGE;
49
+
50
+ @end
@@ -0,0 +1,49 @@
1
+ //
2
+ // RCTMGLEventTypes.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 8/27/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLEventTypes.h"
10
+
11
+ @implementation RCTMGLEventTypes
12
+
13
+ NSString *const RCT_MAPBOX_EVENT_TAP = @"press";
14
+ NSString *const RCT_MAPBOX_EVENT_LONGPRESS = @"longpress";
15
+
16
+ NSString *const RCT_MAPBOX_USER_TRACKING_MODE_CHANGE = @"usertrackingmodechange";
17
+
18
+ NSString *const RCT_MAPBOX_REGION_WILL_CHANGE_EVENT = @"regionwillchange";
19
+ NSString *const RCT_MAPBOX_REGION_IS_CHANGING = @"regionischanging";
20
+ NSString *const RCT_MAPBOX_REGION_DID_CHANGE = @"regiondidchange";
21
+
22
+ NSString *const RCT_MAPBOX_WILL_START_LOADING_MAP = @"willstartloadingmap";
23
+ NSString *const RCT_MAPBOX_DID_FINISH_LOADING_MAP = @"didfinishloadingmap";
24
+ NSString *const RCT_MAPBOX_DID_FAIL_LOADING_MAP = @"didfailoadingmap";
25
+
26
+ NSString *const RCT_MAPBOX_WILL_START_RENDERING_FRAME = @"willstartrenderingframe";
27
+ NSString *const RCT_MAPBOX_DID_FINSIH_RENDERING_FRAME = @"didfinishrenderingframe";
28
+ NSString *const RCT_MAPBOX_DID_FINISH_RENDERING_FRAME_FULLY = @"didfinishrenderingframefully";
29
+
30
+ NSString *const RCT_MAPBOX_WILL_START_RENDERING_MAP = @"willstartrenderingmap";
31
+ NSString *const RCT_MAPBOX_DID_FINISH_RENDERING_MAP = @"didfinishrenderingmap";
32
+ NSString *const RCT_MAPBOX_DID_FINISH_RENDERING_MAP_FULLY = @"didfinishrenderingmapfully";
33
+
34
+ NSString *const RCT_MAPBOX_DID_FINISH_LOADING_STYLE = @"didfinishloadingstyle";
35
+
36
+ NSString *const RCT_MAPBOX_ANNOTATION_TAP = @"annotationtap";
37
+
38
+ NSString *const RCT_MAPBOX_OFFLINE_PROGRESS = @"offlinestatus";
39
+ NSString *const RCT_MAPBOX_OFFLINE_ERROR = @"offlineerror";
40
+ NSString *const RCT_MAPBOX_OFFLINE_TILE_LIMIT = @"offlinetilelimit";
41
+
42
+ NSString *const RCT_MAPBOX_SHAPE_SOURCE_LAYER_PRESS = @"shapesourcelayerpress";
43
+ NSString *const RCT_MAPBOX_VECTOR_SOURCE_LAYER_PRESS = @"vectorsourcelayerpress";
44
+
45
+ NSString *const RCT_MAPBOX_IMAGES_MISSING_IMAGE = @"imagesmissingimage";
46
+
47
+ NSString *const RCT_MAPBOX_USER_LOCATION_UPDATE = @"MapboxUserLocationUpdate";
48
+
49
+ @end
@@ -0,0 +1,14 @@
1
+ //
2
+ // RCTMGLFillExtrusionLayer.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/15/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLVectorLayer.h"
10
+ @import Mapbox;
11
+
12
+ @interface RCTMGLFillExtrusionLayer : RCTMGLVectorLayer
13
+
14
+ @end
@@ -0,0 +1,32 @@
1
+ //
2
+ // RCTMGLFillExtrusionLayer.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/15/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLFillExtrusionLayer.h"
10
+ #import "RCTMGLStyle.h"
11
+ #import <React/RCTLog.h>
12
+
13
+ @implementation RCTMGLFillExtrusionLayer
14
+
15
+ - (MGLFillExtrusionStyleLayer*)makeLayer:(MGLStyle*)style
16
+ {
17
+ MGLSource *source = [self layerWithSourceIDInStyle:style];
18
+ if (source == nil) { return nil; }
19
+ MGLFillExtrusionStyleLayer *layer = [[MGLFillExtrusionStyleLayer alloc] initWithIdentifier:self.id source:source];
20
+ layer.sourceLayerIdentifier = self.sourceLayerID;
21
+ return layer;
22
+ }
23
+
24
+ - (void)addStyles
25
+ {
26
+ RCTMGLStyle *style = [[RCTMGLStyle alloc] initWithMGLStyle:self.style];
27
+ style.bridge = self.bridge;
28
+ [style fillExtrusionLayer:(MGLFillExtrusionStyleLayer*)self.styleLayer withReactStyle:self.reactStyle isValid:^{ return [self isAddedToMap];
29
+ }];
30
+ }
31
+
32
+ @end
@@ -0,0 +1,13 @@
1
+ //
2
+ // RCTMGLFillExtrusionLayerManager.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/15/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "ViewManager.h"
10
+
11
+ @interface RCTMGLFillExtrusionLayerManager : ViewManager
12
+
13
+ @end