@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,25 @@
1
+ #import "RCTMGLNativeUserLocationManager.h"
2
+ #import "RCTMGLNativeUserLocation.h"
3
+
4
+ @implementation RCTMGLNativeUserLocationManager
5
+
6
+ RCT_EXPORT_MODULE(RCTMGLNativeUserLocation)
7
+ RCT_EXPORT_VIEW_PROPERTY(iosShowsUserHeadingIndicator, BOOL)
8
+
9
+
10
+ #pragma - View Properties
11
+
12
+
13
+ #pragma Methods
14
+
15
+ - (BOOL)requiresMainQueueSetup
16
+ {
17
+ return YES;
18
+ }
19
+
20
+ - (UIView *)view
21
+ {
22
+ return [[RCTMGLNativeUserLocation alloc] init];
23
+ }
24
+
25
+ @end
@@ -0,0 +1,41 @@
1
+ //
2
+ // RCTMGLPointAnnotation.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 10/12/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import <React/RCTComponent.h>
10
+ #import <UIKit/UIKit.h>
11
+ #import <React/RCTView.h>
12
+ #import "RCTMGLCallout.h"
13
+
14
+ @import Mapbox;
15
+
16
+ @interface RCTMGLPointAnnotation : MGLAnnotationView<MGLAnnotation>
17
+
18
+ @property (nonatomic, weak) MGLMapView *map;
19
+ @property (nonatomic, strong) RCTMGLCallout *calloutView;
20
+
21
+ @property (nonatomic, copy) NSString *id;
22
+ @property (nonatomic, copy) NSString *reactTitle;
23
+ @property (nonatomic, copy) NSString *reactSnippet;
24
+
25
+ @property (nonatomic, copy) NSString *reactCoordinate;
26
+ @property (nonatomic, assign) CLLocationCoordinate2D coordinate;
27
+
28
+ @property (nonatomic, copy) NSDictionary<NSString *, NSNumber *> *anchor;
29
+
30
+ @property (nonatomic, copy) RCTBubblingEventBlock onSelected;
31
+ @property (nonatomic, copy) RCTBubblingEventBlock onDeselected;
32
+ @property (nonatomic, copy) RCTBubblingEventBlock onDragStart;
33
+ @property (nonatomic, copy) RCTBubblingEventBlock onDrag;
34
+ @property (nonatomic, copy) RCTBubblingEventBlock onDragEnd;
35
+
36
+ @property (nonatomic, assign) BOOL reactSelected;
37
+ @property (nonatomic, assign) BOOL reactDraggable;
38
+
39
+ - (MGLAnnotationView *)getAnnotationView;
40
+
41
+ @end
@@ -0,0 +1,251 @@
1
+ //
2
+ // RCTMGLPointAnnotation.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 10/12/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLPointAnnotation.h"
10
+ #import "RCTMGLMapTouchEvent.h"
11
+ #import "RCTMGLUtils.h"
12
+ #import <React/UIView+React.h>
13
+
14
+ const float CENTER_X_OFFSET_BASE = -0.5f;
15
+ const float CENTER_Y_OFFSET_BASE = -0.5f;
16
+
17
+ @implementation RCTMGLPointAnnotation
18
+ {
19
+ UITapGestureRecognizer *customViewTap;
20
+ }
21
+
22
+ - (id)init
23
+ {
24
+ if (self = [super init]) {
25
+ customViewTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(_handleTap:)];
26
+ }
27
+ return self;
28
+ }
29
+
30
+ - (void)insertReactSubview:(UIView *)subview atIndex:(NSInteger)atIndex
31
+ {
32
+ if ([subview isKindOfClass:[RCTMGLCallout class]]) {
33
+ self.calloutView = (RCTMGLCallout *)subview;
34
+ self.calloutView.representedObject = self;
35
+ } else {
36
+ [super insertReactSubview:subview atIndex:0];
37
+ }
38
+ }
39
+
40
+ - (void)removeReactSubview:(UIView *)subview
41
+ {
42
+ if ([subview isKindOfClass:[RCTMGLCallout class]]) {
43
+ self.calloutView = nil;
44
+ } else {
45
+ [super removeReactSubview:subview];
46
+ }
47
+ }
48
+
49
+ - (void)reactSetFrame:(CGRect)frame
50
+ {
51
+ if ([_map.annotations containsObject:self]) {
52
+ [_map removeAnnotation:self];
53
+ }
54
+ [super reactSetFrame:frame];
55
+ [self _setCenterOffset:frame];
56
+ [self _addAnnotation];
57
+ }
58
+
59
+ - (void)setAnchor:(NSDictionary<NSString *, NSNumber *> *)anchor
60
+ {
61
+ _anchor = anchor;
62
+ [self _setCenterOffset:self.frame];
63
+ }
64
+
65
+ - (void)setMap:(MGLMapView *)map
66
+ {
67
+ if (map == nil) {
68
+ [_map removeAnnotation:self];
69
+ _map = nil;
70
+ } else {
71
+ _map = map;
72
+
73
+ // prevents annotations from flying in from the top left corner
74
+ // if the frame hasn't been set yet
75
+ if (![self _isFrameSet]) {
76
+ return;
77
+ }
78
+
79
+ [self _addAnnotation];
80
+ }
81
+ }
82
+
83
+ - (void)setReactSelected:(BOOL)reactSelected
84
+ {
85
+ _reactSelected = reactSelected;
86
+
87
+ if (_map != nil) {
88
+ if (_reactSelected) {
89
+ [_map selectAnnotation:self animated:NO completionHandler:nil];
90
+ } else {
91
+ [_map deselectAnnotation:self animated:NO];
92
+ }
93
+ }
94
+ }
95
+
96
+ - (void)setReactDraggable:(BOOL)reactDraggable
97
+ {
98
+ _reactDraggable = reactDraggable;
99
+ self.draggable = _reactDraggable;
100
+ }
101
+
102
+ - (void)setReactCoordinate:(NSString *)reactCoordinate
103
+ {
104
+ _reactCoordinate = reactCoordinate;
105
+ [self _updateCoordinate];
106
+ }
107
+
108
+ - (NSString *)reuseIdentifier
109
+ {
110
+ return _id;
111
+ }
112
+
113
+ - (NSString *)title
114
+ {
115
+ return _reactTitle;
116
+ }
117
+
118
+ - (NSString *)subtitle
119
+ {
120
+ return _reactSnippet;
121
+ }
122
+
123
+ - (NSString *)toolTip
124
+ {
125
+ return _reactTitle;
126
+ }
127
+
128
+ - (MGLAnnotationView *)getAnnotationView
129
+ {
130
+ if (self.reactSubviews.count == 0) {
131
+ // default pin view
132
+ return nil;
133
+ } else {
134
+ // custom view
135
+ self.enabled = YES;
136
+ const CGFloat defaultZPosition = 0.0;
137
+ if (self.layer.zPosition == defaultZPosition) {
138
+ self.layer.zPosition = [self _getZPosition];
139
+ }
140
+ [self addGestureRecognizer:customViewTap];
141
+ return self;
142
+ }
143
+ }
144
+
145
+ - (CGFloat)_getZPosition
146
+ {
147
+ double latitudeMax = 90.0;
148
+ return latitudeMax - self.coordinate.latitude;
149
+ }
150
+
151
+ - (void)_handleTap:(UITapGestureRecognizer *)recognizer
152
+ {
153
+ [_map selectAnnotation:self animated:NO completionHandler:nil];
154
+ }
155
+
156
+ - (void)_setCenterOffset:(CGRect)frame
157
+ {
158
+ if (frame.size.width == 0 || frame.size.height == 0 || _anchor == nil) {
159
+ return;
160
+ }
161
+
162
+ float x = [_anchor[@"x"] floatValue];
163
+ float y = [_anchor[@"y"] floatValue];
164
+
165
+ float dx = -(x * frame.size.width - (frame.size.width / 2));
166
+ float dy = -(y * frame.size.height - (frame.size.height / 2));
167
+
168
+ // special cases 0 and 1
169
+
170
+ if (x == 0) {
171
+ dx = frame.size.width / 2;
172
+ } else if (x == 1) {
173
+ dx = -frame.size.width / 2;
174
+ }
175
+
176
+ if (y == 0) {
177
+ dy = frame.size.height / 2;
178
+ } else if (y == 1) {
179
+ dy = -frame.size.height / 2;
180
+ }
181
+
182
+ self.centerOffset = CGVectorMake(dx, dy);
183
+ }
184
+
185
+
186
+ - (void)_updateCoordinate
187
+ {
188
+ if (_reactCoordinate == nil) {
189
+ return;
190
+ }
191
+
192
+ MGLPointFeature *feature = (MGLPointFeature *)[RCTMGLUtils shapeFromGeoJSON:_reactCoordinate];
193
+ if (feature == nil) {
194
+ return;
195
+ }
196
+
197
+ dispatch_async(dispatch_get_main_queue(), ^{
198
+ self.coordinate = feature.coordinate;
199
+ });
200
+ }
201
+
202
+ - (void)_addAnnotation
203
+ {
204
+ if ([_map.annotations containsObject:self]) {
205
+ return;
206
+ }
207
+
208
+ [_map addAnnotation:self];
209
+ if (_reactSelected) {
210
+ [_map selectAnnotation:self animated:NO completionHandler:nil];
211
+ }
212
+ }
213
+
214
+ - (BOOL)_isFrameSet
215
+ {
216
+ return self.frame.size.width > 0 && self.frame.size.height > 0;
217
+ }
218
+
219
+ - (void)setDragState:(MGLAnnotationViewDragState)dragState animated:(BOOL)animated {
220
+ [super setDragState:dragState animated:animated];
221
+ switch (dragState) {
222
+ case MGLAnnotationViewDragStateStarting: {
223
+ if (self.onDragStart != nil) {
224
+ RCTMGLMapTouchEvent *event = [RCTMGLMapTouchEvent makeAnnotationTapEvent:self];
225
+ self.onDragStart([event toJSON]);
226
+ }
227
+ break;
228
+ }
229
+
230
+ case MGLAnnotationViewDragStateDragging:
231
+ if (self.onDrag != nil) {
232
+ RCTMGLMapTouchEvent *event = [RCTMGLMapTouchEvent makeAnnotationTapEventOnDrag:self];
233
+ self.onDrag([event toJSON]);
234
+ }
235
+ break;
236
+
237
+ case MGLAnnotationViewDragStateEnding:
238
+ case MGLAnnotationViewDragStateCanceling: {
239
+ if (self.onDragEnd != nil) {
240
+ RCTMGLMapTouchEvent *event = [RCTMGLMapTouchEvent makeAnnotationTapEvent:self];
241
+ self.onDragEnd([event toJSON]);
242
+ }
243
+ break;
244
+ }
245
+
246
+ case MGLAnnotationViewDragStateNone:
247
+ return;
248
+ }
249
+ }
250
+
251
+ @end
@@ -0,0 +1,13 @@
1
+ //
2
+ // RCTMGLPointAnnotationManager.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 10/12/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "ViewManager.h"
10
+
11
+ @interface RCTMGLPointAnnotationManager : ViewManager
12
+
13
+ @end
@@ -0,0 +1,36 @@
1
+ //
2
+ // RCTMGLPointAnnotationManager.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 10/12/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLPointAnnotationManager.h"
10
+ #import "RCTMGLPointAnnotation.h"
11
+
12
+ @implementation RCTMGLPointAnnotationManager
13
+
14
+ RCT_EXPORT_MODULE()
15
+
16
+ RCT_EXPORT_VIEW_PROPERTY(id, NSString)
17
+ RCT_EXPORT_VIEW_PROPERTY(anchor, NSDictionary)
18
+
19
+ RCT_REMAP_VIEW_PROPERTY(selected, reactSelected, BOOL)
20
+ RCT_REMAP_VIEW_PROPERTY(title, reactTitle, NSString)
21
+ RCT_REMAP_VIEW_PROPERTY(snippet, reactSnippet, NSString)
22
+ RCT_REMAP_VIEW_PROPERTY(coordinate, reactCoordinate, NSString)
23
+ RCT_REMAP_VIEW_PROPERTY(draggable, reactDraggable, BOOL)
24
+
25
+ RCT_REMAP_VIEW_PROPERTY(onMapboxPointAnnotationSelected, onSelected, RCTBubblingEventBlock)
26
+ RCT_REMAP_VIEW_PROPERTY(onMapboxPointAnnotationDeselected, onDeselected, RCTBubblingEventBlock)
27
+ RCT_REMAP_VIEW_PROPERTY(onMapboxPointAnnotationDragStart, onDragStart, RCTBubblingEventBlock)
28
+ RCT_REMAP_VIEW_PROPERTY(onMapboxPointAnnotationDrag, onDrag, RCTBubblingEventBlock)
29
+ RCT_REMAP_VIEW_PROPERTY(onMapboxPointAnnotationDragEnd, onDragEnd, RCTBubblingEventBlock)
30
+
31
+ - (UIView *)view
32
+ {
33
+ return [[RCTMGLPointAnnotation alloc] init];
34
+ }
35
+
36
+ @end
@@ -0,0 +1,14 @@
1
+ //
2
+ // RCTMGLRasterLayer.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/25/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLLayer.h"
10
+ @import Mapbox;
11
+
12
+ @interface RCTMGLRasterLayer : RCTMGLLayer
13
+
14
+ @end
@@ -0,0 +1,30 @@
1
+ //
2
+ // RCTMGLRasterLayer.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/25/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLRasterLayer.h"
10
+ #import "RCTMGLStyle.h"
11
+
12
+ @implementation RCTMGLRasterLayer
13
+
14
+ - (MGLStyleLayer*)makeLayer:(MGLStyle*)style
15
+ {
16
+ MGLSource *source = [style sourceWithIdentifier:self.sourceID];
17
+ if (source == nil) { return nil; }
18
+ MGLRasterStyleLayer *layer = [[MGLRasterStyleLayer alloc] initWithIdentifier:self.id source:source];
19
+ return layer;
20
+ }
21
+
22
+ - (void)addStyles
23
+ {
24
+ RCTMGLStyle *style = [[RCTMGLStyle alloc] initWithMGLStyle:self.style];
25
+ style.bridge = self.bridge;
26
+ [style rasterLayer:(MGLRasterStyleLayer*)self.styleLayer withReactStyle:self.reactStyle isValid:^{ return [self isAddedToMap];
27
+ }];
28
+ }
29
+
30
+ @end
@@ -0,0 +1,13 @@
1
+ //
2
+ // RCTMGLRasterLayerManager.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/25/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "ViewManager.h"
10
+
11
+ @interface RCTMGLRasterLayerManager : ViewManager
12
+
13
+ @end
@@ -0,0 +1,35 @@
1
+ //
2
+ // RCTMGLRasterLayerManager.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/25/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLRasterLayerManager.h"
10
+ #import "RCTMGLRasterLayer.h"
11
+
12
+ @implementation RCTMGLRasterLayerManager
13
+
14
+ RCT_EXPORT_MODULE()
15
+
16
+ // standard layer props
17
+ RCT_EXPORT_VIEW_PROPERTY(id, NSString);
18
+ RCT_EXPORT_VIEW_PROPERTY(sourceID, NSString);
19
+
20
+ RCT_EXPORT_VIEW_PROPERTY(aboveLayerID, NSString);
21
+ RCT_EXPORT_VIEW_PROPERTY(belowLayerID, NSString);
22
+ RCT_EXPORT_VIEW_PROPERTY(layerIndex, NSNumber);
23
+ RCT_EXPORT_VIEW_PROPERTY(reactStyle, NSDictionary);
24
+
25
+ RCT_EXPORT_VIEW_PROPERTY(maxZoomLevel, NSNumber);
26
+ RCT_EXPORT_VIEW_PROPERTY(minZoomLevel, NSNumber);
27
+
28
+ - (UIView*)view
29
+ {
30
+ RCTMGLRasterLayer *layer = [[RCTMGLRasterLayer alloc] init];
31
+ layer.bridge = self.bridge;
32
+ return layer;
33
+ }
34
+
35
+ @end
@@ -0,0 +1,16 @@
1
+ //
2
+ // RCTMGLRasterSource.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/25/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLTileSource.h"
10
+ @import Mapbox;
11
+
12
+ @interface RCTMGLRasterSource : RCTMGLTileSource
13
+
14
+ @property (nonatomic, strong) NSNumber *tileSize;
15
+
16
+ @end
@@ -0,0 +1,35 @@
1
+ //
2
+ // RCTMGLRasterSource.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/25/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLRasterSource.h"
10
+
11
+ @implementation RCTMGLRasterSource
12
+
13
+ - (nullable MGLSource*)makeSource
14
+ {
15
+ if (self.url != nil) {
16
+ NSURL *url = [NSURL URLWithString:self.url];
17
+ if (self.tileSize != nil) {
18
+ return [[MGLRasterTileSource alloc] initWithIdentifier:self.id configurationURL:url tileSize:[self.tileSize floatValue]];
19
+ }
20
+ return [[MGLRasterTileSource alloc] initWithIdentifier:self.id configurationURL:url];
21
+ }
22
+ return [[MGLRasterTileSource alloc] initWithIdentifier:self.id tileURLTemplates:self.tileUrlTemplates options:[self getOptions]];
23
+ }
24
+
25
+ - (NSDictionary<MGLTileSourceOption,id> *)getOptions {
26
+ NSMutableDictionary<MGLTileSourceOption, id> *options = [[NSMutableDictionary alloc] initWithDictionary:[super getOptions]];
27
+
28
+ if (self.tileSize != nil) {
29
+ options[MGLTileSourceOptionTileSize] = _tileSize;
30
+ }
31
+
32
+ return options;
33
+ }
34
+
35
+ @end
@@ -0,0 +1,13 @@
1
+ //
2
+ // RCTMGLRasterSourceManager.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/25/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "ViewManager.h"
10
+
11
+ @interface RCTMGLRasterSourceManager : ViewManager
12
+
13
+ @end
@@ -0,0 +1,32 @@
1
+ //
2
+ // RCTMGLRasterSourceManager.m
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/25/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import "RCTMGLRasterSourceManager.h"
10
+ #import "RCTMGLRasterSource.h"
11
+
12
+ @implementation RCTMGLRasterSourceManager
13
+
14
+ RCT_EXPORT_MODULE()
15
+
16
+ RCT_EXPORT_VIEW_PROPERTY(id, NSString)
17
+ RCT_EXPORT_VIEW_PROPERTY(url, NSString)
18
+ RCT_EXPORT_VIEW_PROPERTY(tileUrlTemplates, NSArray)
19
+ RCT_EXPORT_VIEW_PROPERTY(attribution, NSString)
20
+
21
+ RCT_EXPORT_VIEW_PROPERTY(tileSize, NSNumber)
22
+ RCT_EXPORT_VIEW_PROPERTY(minZoomLevel, NSNumber)
23
+ RCT_EXPORT_VIEW_PROPERTY(maxZoomLevel, NSNumber)
24
+
25
+ RCT_EXPORT_VIEW_PROPERTY(tms, BOOL)
26
+
27
+ - (UIView*)view
28
+ {
29
+ return [RCTMGLRasterSource new];
30
+ }
31
+
32
+ @end
@@ -0,0 +1,52 @@
1
+ //
2
+ // RCTMGLShapeSource.h
3
+ // RCTMGL
4
+ //
5
+ // Created by Nick Italiano on 9/19/17.
6
+ // Copyright © 2017 Mapbox Inc. All rights reserved.
7
+ //
8
+
9
+ #import <React/RCTBridge.h>
10
+ #import "RCTMGLSource.h"
11
+
12
+ @import Mapbox;
13
+
14
+ @interface RCTMGLShapeSource : RCTMGLSource
15
+
16
+ @property (nonatomic, weak) RCTBridge *bridge;
17
+
18
+ @property (nonatomic, copy) NSString *url;
19
+ @property (nonatomic, copy) NSString *shape;
20
+
21
+ @property (nonatomic, strong) NSNumber *cluster;
22
+ @property (nonatomic, strong) NSNumber *clusterRadius;
23
+ @property (nonatomic, strong) NSNumber *clusterMaxZoomLevel;
24
+
25
+ @property (nonatomic, strong) NSNumber *maxZoomLevel;
26
+ @property (nonatomic, strong) NSNumber *buffer;
27
+ @property (nonatomic, strong) NSNumber *tolerance;
28
+ @property (nonatomic, strong) NSNumber *lineMetrics;
29
+
30
+ @property (nonatomic, copy) RCTBubblingEventBlock onPress;
31
+ @property (nonatomic, assign) BOOL hasPressListener;
32
+
33
+ - (nonnull NSArray<id <MGLFeature>> *)featuresMatchingPredicate:(nullable NSPredicate *)predicate;
34
+ - (nonnull NSArray<id <MGLFeature>> *)getClusterLeaves:(nonnull NSString *)featureJSON
35
+ number:(NSUInteger)number
36
+ offset:(NSUInteger)offset;
37
+ - (nonnull NSArray<id <MGLFeature>> *)getClusterChildren:(nonnull NSString *)featureJSON;
38
+
39
+ - (double)getClusterExpansionZoom:(nonnull NSString *)featureJSON;
40
+
41
+ // Deprecated. Will be removed in 9+ ver.
42
+ - (nonnull NSArray<id <MGLFeature>> *)getClusterLeavesById:(nonnull NSNumber *)clusterId
43
+ number:(NSUInteger)number
44
+ offset:(NSUInteger)offset;
45
+
46
+ // Deprecated. Will be removed in 9+ ver.
47
+ - (nonnull NSArray<id <MGLFeature>> *)getClusterChildrenById:(nonnull NSNumber *)clusterId;
48
+
49
+ // Deprecated. Will be removed in 9+ ver.
50
+ - (double)getClusterExpansionZoomById:(nonnull NSNumber *)clusterId;
51
+
52
+ @end