@rnmapbox/maps 10.0.0-beta.28

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 (648) hide show
  1. package/.eslintignore +1 -0
  2. package/.eslintrc.js +109 -0
  3. package/.gitattributes +1 -0
  4. package/.github/ISSUE_TEMPLATE/bug_report.md +75 -0
  5. package/.github/ISSUE_TEMPLATE/bug_setup.md +23 -0
  6. package/.github/ISSUE_TEMPLATE/feature.md +15 -0
  7. package/.github/dependabot.yml +42 -0
  8. package/.github/label-actions.yml +26 -0
  9. package/.github/pull_request_template.md +28 -0
  10. package/.github/stale.yml +11 -0
  11. package/.github/workflows/android-actions.yml +56 -0
  12. package/.github/workflows/bump-version.yml +54 -0
  13. package/.github/workflows/ios-actions.yml +81 -0
  14. package/.github/workflows/label-actions.yml +17 -0
  15. package/.github/workflows/on-push.yml +131 -0
  16. package/.github/workflows/publish.yml +29 -0
  17. package/.nvmrc +2 -0
  18. package/.prettierrc.js +4 -0
  19. package/.sonarcloud.properties +15 -0
  20. package/CHANGELOG.md +386 -0
  21. package/CONTRIBUTING.md +30 -0
  22. package/LICENSE.md +5 -0
  23. package/README-v10.md +86 -0
  24. package/README.md +283 -0
  25. package/RELEASE.md +28 -0
  26. package/android/install.md +137 -0
  27. package/android/rctmgl/.classpath +6 -0
  28. package/android/rctmgl/.settings/org.eclipse.buildship.core.prefs +2 -0
  29. package/android/rctmgl/build.gradle +148 -0
  30. package/android/rctmgl/proguard-rules.pro +25 -0
  31. package/android/rctmgl/src/main/AndroidManifest.xml +4 -0
  32. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/RCTMGLPackage.java +99 -0
  33. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/AbstractEvent.java +35 -0
  34. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/AbstractEventEmitter.java +80 -0
  35. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/AbstractMapFeature.java +19 -0
  36. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/MarkerView.java +23 -0
  37. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/MarkerViewManager.java +69 -0
  38. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/RCTMGLCallout.java +15 -0
  39. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/RCTMGLCalloutManager.java +22 -0
  40. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/RCTMGLMarkerView.java +112 -0
  41. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/RCTMGLMarkerViewManager.java +45 -0
  42. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/RCTMGLPointAnnotation.java +360 -0
  43. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/RCTMGLPointAnnotationManager.java +88 -0
  44. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/camera/CameraStop.java +249 -0
  45. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/camera/CameraUpdateItem.java +125 -0
  46. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/camera/CameraUpdateQueue.java +73 -0
  47. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/camera/RCTMGLCamera.java +530 -0
  48. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/camera/RCTMGLCameraManager.java +101 -0
  49. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/camera/constants/CameraMode.java +22 -0
  50. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/images/RCTMGLImages.java +234 -0
  51. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/images/RCTMGLImagesManager.java +103 -0
  52. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/location/LocationComponentManager.java +149 -0
  53. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocation.java +67 -0
  54. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocationManager.java +35 -0
  55. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/mapview/LayerSourceInfo.java +59 -0
  56. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/mapview/RCTMGLAndroidTextureMapView.java +16 -0
  57. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/mapview/RCTMGLAndroidTextureMapViewManager.java +31 -0
  58. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/mapview/RCTMGLMapView.java +1528 -0
  59. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/mapview/RCTMGLMapViewManager.java +355 -0
  60. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/mapview/helpers/CameraChangeTracker.java +41 -0
  61. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/RCTMGLStyle.java +83 -0
  62. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/RCTMGLStyleFactory.java +2275 -0
  63. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/RCTMGLStyleFunctionParser.java +108 -0
  64. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/RCTMGLStyleValue.java +216 -0
  65. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTLayer.java +287 -0
  66. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayer.java +27 -0
  67. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayerManager.java +64 -0
  68. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayer.java +55 -0
  69. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayerManager.java +77 -0
  70. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayer.java +55 -0
  71. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayerManager.java +80 -0
  72. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayer.java +55 -0
  73. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayerManager.java +80 -0
  74. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayer.java +55 -0
  75. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayerManager.java +77 -0
  76. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayer.java +55 -0
  77. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayerManager.java +79 -0
  78. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayer.java +27 -0
  79. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayerManager.java +64 -0
  80. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayer.java +55 -0
  81. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayerManager.java +75 -0
  82. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/light/RCTMGLLight.java +65 -0
  83. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/light/RCTMGLLightManager.java +29 -0
  84. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSource.java +81 -0
  85. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSourceManager.java +72 -0
  86. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSource.java +45 -0
  87. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSourceManager.java +44 -0
  88. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSource.java +316 -0
  89. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSourceManager.java +253 -0
  90. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSource.java +97 -0
  91. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSourceManager.java +80 -0
  92. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSource.java +64 -0
  93. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSourceManager.java +84 -0
  94. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTSource.java +244 -0
  95. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/AbstractEvent.java +66 -0
  96. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/AndroidCallbackEvent.java +38 -0
  97. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/EventEmitter.java +45 -0
  98. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/FeatureClickEvent.java +79 -0
  99. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/IEvent.java +18 -0
  100. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/ImageMissingEvent.java +42 -0
  101. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/LocationEvent.java +100 -0
  102. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/MapChangeEvent.java +47 -0
  103. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/MapClickEvent.java +51 -0
  104. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/MapUserTrackingModeEvent.java +36 -0
  105. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/OfflineEvent.java +29 -0
  106. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/PointAnnotationClickEvent.java +46 -0
  107. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/PointAnnotationDragEvent.java +51 -0
  108. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/constants/EventKeys.java +39 -0
  109. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/constants/EventTypes.java +51 -0
  110. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/http/CustomHeadersInterceptor.java +38 -0
  111. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/location/LocationManager.java +147 -0
  112. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/location/UserLocation.java +63 -0
  113. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/location/UserLocationVerticalAlignment.java +11 -0
  114. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/location/UserTrackingMode.java +63 -0
  115. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/location/UserTrackingState.java +19 -0
  116. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/modules/RCTMGLLocationModule.java +159 -0
  117. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/modules/RCTMGLLogging.java +140 -0
  118. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/modules/RCTMGLModule.java +376 -0
  119. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/modules/RCTMGLOfflineModule.java +597 -0
  120. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/modules/RCTMGLSnapshotModule.java +139 -0
  121. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/BitmapUtils.java +129 -0
  122. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/ClusterPropertyEntry.java +13 -0
  123. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/ConvertUtils.java +257 -0
  124. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/DownloadMapImageTask.java +159 -0
  125. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/ExpressionParser.java +74 -0
  126. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/GeoJSONUtils.java +209 -0
  127. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/GeoViewport.java +38 -0
  128. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/ImageEntry.java +25 -0
  129. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/ResourceUtils.java +30 -0
  130. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/SimpleEventCallback.java +30 -0
  131. package/android/rctmgl/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/SphericalMercator.java +69 -0
  132. package/android/rctmgl/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/InstanceManagerImpl.java +35 -0
  133. package/android/rctmgl/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/LocationEngineCallbackImpl.java +12 -0
  134. package/android/rctmgl/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/LocationEngineResultImpl.java +18 -0
  135. package/android/rctmgl/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/LocationManagerImpl.java +64 -0
  136. package/android/rctmgl/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/PermissionsManagerImpl.java +10 -0
  137. package/android/rctmgl/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/SymbolClickListenerImpl.java +18 -0
  138. package/android/rctmgl/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/TelemetryImpl.java +11 -0
  139. package/android/rctmgl/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/InstanceManagerImpl.java +42 -0
  140. package/android/rctmgl/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/LocationEngineCallbackImpl.java +12 -0
  141. package/android/rctmgl/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/LocationEngineResultImpl.java +18 -0
  142. package/android/rctmgl/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/LocationManagerImpl.java +64 -0
  143. package/android/rctmgl/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/PermissionsManagerImpl.java +10 -0
  144. package/android/rctmgl/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/SymbolClickListenerImpl.java +18 -0
  145. package/android/rctmgl/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/TelemetryImpl.java +7 -0
  146. package/android/rctmgl/src/main/java-v10/README.md +0 -0
  147. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/RCTMGLPackage.java +111 -0
  148. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/AbstractEvent.java +35 -0
  149. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/AbstractEventEmitter.java +82 -0
  150. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/AbstractMapFeature.java +15 -0
  151. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/annotation/RCTMGLCallout.kt +6 -0
  152. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/annotation/RCTMGLCalloutManager.java +18 -0
  153. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/annotation/RCTMGLMarkerView.kt +76 -0
  154. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/annotation/RCTMGLMarkerViewManager.java +45 -0
  155. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/annotation/RCTMGLPointAnnotation.kt +313 -0
  156. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/annotation/RCTMGLPointAnnotationManager.java +84 -0
  157. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/CameraStop.kt +228 -0
  158. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/CameraUpdateItem.java +167 -0
  159. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/CameraUpdateQueue.java +73 -0
  160. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/RCTMGLCamera.java +662 -0
  161. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/RCTMGLCameraManager.java +102 -0
  162. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/constants/CameraMode.java +18 -0
  163. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/images/RCTMGLImages.kt +201 -0
  164. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/images/RCTMGLImagesManager.java +103 -0
  165. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/CameraMode.java +62 -0
  166. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/LocationComponentManager.java +215 -0
  167. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocation.kt +58 -0
  168. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocationManager.java +34 -0
  169. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/RenderMode.java +42 -0
  170. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/UserLocation.java +59 -0
  171. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/UserTrackingMode.java +54 -0
  172. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/mapview/OnMapReadyCallback.java +9 -0
  173. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/mapview/RCTMGLAndroidTextureMapView.java +16 -0
  174. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/mapview/RCTMGLAndroidTextureMapViewManager.java +31 -0
  175. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/mapview/RCTMGLMapView.kt +1070 -0
  176. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/mapview/RCTMGLMapViewManager.kt +327 -0
  177. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/mapview/helpers/CameraChangeTracker.java +37 -0
  178. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/RCTMGLStyle.kt +62 -0
  179. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/RCTMGLStyleFactory.java +2638 -0
  180. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/RCTMGLStyleValue.kt +223 -0
  181. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTLayer.kt +274 -0
  182. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayer.java +23 -0
  183. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayerManager.java +60 -0
  184. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayer.java +53 -0
  185. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayerManager.java +73 -0
  186. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayer.java +51 -0
  187. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayerManager.java +76 -0
  188. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayer.java +51 -0
  189. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayerManager.java +77 -0
  190. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayer.java +51 -0
  191. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayerManager.java +73 -0
  192. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayer.java +51 -0
  193. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayerManager.java +75 -0
  194. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayer.java +24 -0
  195. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayerManager.java +60 -0
  196. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLSkyLayer.kt +35 -0
  197. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLSkyLayerManager.java +73 -0
  198. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayer.java +51 -0
  199. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayerManager.java +71 -0
  200. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/light/RCTMGLLight.kt +47 -0
  201. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/light/RCTMGLLightManager.java +25 -0
  202. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/AbstractSourceConsumer.kt +8 -0
  203. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSource.java +76 -0
  204. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSourceManager.java +68 -0
  205. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterDemSource.java +122 -0
  206. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterDemSourceManager.java +64 -0
  207. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSource.java +43 -0
  208. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSourceManager.java +39 -0
  209. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSource.kt +264 -0
  210. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSourceManager.kt +198 -0
  211. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSource.java +103 -0
  212. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSourceManager.java +80 -0
  213. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSource.java +103 -0
  214. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSourceManager.java +80 -0
  215. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTSource.kt +211 -0
  216. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/terrain/RCTMGLTerrain.kt +58 -0
  217. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/terrain/RCTMGLTerrainManager.kt +41 -0
  218. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/AbstractEvent.java +62 -0
  219. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/AndroidCallbackEvent.java +34 -0
  220. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/EventEmitter.java +45 -0
  221. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/FeatureClickEvent.java +79 -0
  222. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/IEvent.java +18 -0
  223. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/ImageMissingEvent.java +42 -0
  224. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/LocationEvent.java +100 -0
  225. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/MapChangeEvent.java +43 -0
  226. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/MapClickEvent.java +51 -0
  227. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/OfflineEvent.java +25 -0
  228. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/PointAnnotationClickEvent.java +42 -0
  229. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/PointAnnotationDragEvent.java +51 -0
  230. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/constants/EventKeys.java +39 -0
  231. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/constants/EventTypes.java +47 -0
  232. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/location/LocationManager.kt +199 -0
  233. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/location/UserLocationVerticalAlignment.java +7 -0
  234. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/location/UserTrackingState.java +15 -0
  235. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLLocationModule.java +160 -0
  236. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLLogging.kt +113 -0
  237. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLModule.kt +134 -0
  238. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLOfflineModule.kt +653 -0
  239. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLSnapshotModule.java +151 -0
  240. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/BitmapUtils.java +183 -0
  241. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/ConvertUtils.java +253 -0
  242. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/DownloadMapImageTask.kt +151 -0
  243. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/ExpressionParser.java +73 -0
  244. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/GeoJSONUtils.kt +217 -0
  245. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/ImageEntry.java +25 -0
  246. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/LatLng.java +51 -0
  247. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/LatLngBounds.java +42 -0
  248. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/LatLngQuad.java +27 -0
  249. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/Logger.kt +120 -0
  250. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/ReadableMapToValue.java +51 -0
  251. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/ResourceUtils.java +26 -0
  252. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/extensions/Point.kt +13 -0
  253. package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/extensions/ReadableArray.kt +23 -0
  254. package/android/rctmgl/src/main/res/drawable/empty.xml +5 -0
  255. package/android/rctmgl/src/main/res/drawable/empty_drawable.png +0 -0
  256. package/android/rctmgl/src/main/res/drawable-xxhdpi/red_marker.png +0 -0
  257. package/android/rctmgl/src/main/res/layout/annotation.xml +17 -0
  258. package/android/rctmgl/src/main/res/values/strings.xml +3 -0
  259. package/app.plugin.js +1 -0
  260. package/assets/React-icon.svg +9 -0
  261. package/assets/beta-maps-example-point-annotation-960-d280759f6a3d8d75458f399c7a044926.webp +0 -0
  262. package/assets/beta-maps-guides-migrate-3d-terrain-960-48b1080117817ccfd92e434d0df7546f.webp +0 -0
  263. package/assets/heading.png +0 -0
  264. package/assets/heading@2x.png +0 -0
  265. package/assets/heading@3x.png +0 -0
  266. package/assets/indoor_building_map_android.png +0 -0
  267. package/assets/indoor_building_map_ios.png +0 -0
  268. package/assets/intro-examples.png +0 -0
  269. package/assets/mapbox_logo.png +0 -0
  270. package/assets/maps-examples-building-extrusions-960-aaa140cce77da4e8b2dd216032b191b6.webp +0 -0
  271. package/assets/maps-examples-camera-animators-960-a51d57db7243158d19e4fffb8363ac47.webp +0 -0
  272. package/assets/maps-examples-data-driven-symbols-960-2e2061a6b8127ef305c1b6c159f8dc65.webp +0 -0
  273. package/assets/sponsors/sth.png +0 -0
  274. package/assets/sponsors/terrain.dance.png +0 -0
  275. package/babel.config.js +9 -0
  276. package/docs/Annotation.md +39 -0
  277. package/docs/Annotations.md +17 -0
  278. package/docs/Atmosphere.md +265 -0
  279. package/docs/BackgroundLayer.md +166 -0
  280. package/docs/Callout.md +15 -0
  281. package/docs/Camera.md +34 -0
  282. package/docs/CircleLayer.md +470 -0
  283. package/docs/CustomHttpHeaders.md +87 -0
  284. package/docs/FillExtrusionLayer.md +433 -0
  285. package/docs/FillLayer.md +310 -0
  286. package/docs/GettingStarted.md +87 -0
  287. package/docs/HeadingIndicator.md +10 -0
  288. package/docs/HeatmapLayer.md +215 -0
  289. package/docs/ImageSource.md +12 -0
  290. package/docs/Images.md +12 -0
  291. package/docs/Light.md +159 -0
  292. package/docs/LineLayer.md +606 -0
  293. package/docs/Logger.md +23 -0
  294. package/docs/MapView.md +227 -0
  295. package/docs/MapboxGL.md +84 -0
  296. package/docs/MarkerView.md +14 -0
  297. package/docs/NativeUserLocation.md +11 -0
  298. package/docs/OfflineManager.md +262 -0
  299. package/docs/PointAnnotation.md +34 -0
  300. package/docs/RasterDemSource.md +15 -0
  301. package/docs/RasterLayer.md +357 -0
  302. package/docs/RasterSource.md +17 -0
  303. package/docs/ShapeSource.md +101 -0
  304. package/docs/SkyLayer.md +259 -0
  305. package/docs/Style.md +10 -0
  306. package/docs/StyleSheet.md +430 -0
  307. package/docs/SymbolLayer.md +1658 -0
  308. package/docs/Terrain.md +22 -0
  309. package/docs/UserLocation.md +39 -0
  310. package/docs/VectorSource.md +48 -0
  311. package/docs/docs.json +6415 -0
  312. package/docs/snapshotManager.md +53 -0
  313. package/index.d.ts +1050 -0
  314. package/ios/RCTMGL/CameraMode.h +18 -0
  315. package/ios/RCTMGL/CameraMode.m +18 -0
  316. package/ios/RCTMGL/CameraStop.h +26 -0
  317. package/ios/RCTMGL/CameraStop.m +83 -0
  318. package/ios/RCTMGL/CameraUpdateItem.h +18 -0
  319. package/ios/RCTMGL/CameraUpdateItem.m +178 -0
  320. package/ios/RCTMGL/CameraUpdateQueue.h +21 -0
  321. package/ios/RCTMGL/CameraUpdateQueue.m +74 -0
  322. package/ios/RCTMGL/FilterParser.h +14 -0
  323. package/ios/RCTMGL/FilterParser.m +22 -0
  324. package/ios/RCTMGL/MGLCustomHeaders.h +20 -0
  325. package/ios/RCTMGL/MGLCustomHeaders.m +98 -0
  326. package/ios/RCTMGL/MGLFaux3DUserLocationAnnotationView.h +23 -0
  327. package/ios/RCTMGL/MGLFaux3DUserLocationAnnotationView.m +474 -0
  328. package/ios/RCTMGL/MGLModule.h +13 -0
  329. package/ios/RCTMGL/MGLModule.m +335 -0
  330. package/ios/RCTMGL/MGLOfflineModule.h +19 -0
  331. package/ios/RCTMGL/MGLOfflineModule.m +537 -0
  332. package/ios/RCTMGL/MGLSnapshotModule.h +13 -0
  333. package/ios/RCTMGL/MGLSnapshotModule.m +80 -0
  334. package/ios/RCTMGL/MGLUserLocationHeadingArrowLayer.h +11 -0
  335. package/ios/RCTMGL/MGLUserLocationHeadingArrowLayer.m +57 -0
  336. package/ios/RCTMGL/MGLUserLocationHeadingBeamLayer.h +11 -0
  337. package/ios/RCTMGL/MGLUserLocationHeadingBeamLayer.m +102 -0
  338. package/ios/RCTMGL/MGLUserLocationHeadingIndicator.h +10 -0
  339. package/ios/RCTMGL/RCTConvert+Mapbox.h +16 -0
  340. package/ios/RCTMGL/RCTConvert+Mapbox.m +32 -0
  341. package/ios/RCTMGL/RCTMGL.h +13 -0
  342. package/ios/RCTMGL/RCTMGL.m +13 -0
  343. package/ios/RCTMGL/RCTMGLBackgroundLayer.h +14 -0
  344. package/ios/RCTMGL/RCTMGLBackgroundLayer.m +27 -0
  345. package/ios/RCTMGL/RCTMGLBackgroundLayerManager.h +13 -0
  346. package/ios/RCTMGL/RCTMGLBackgroundLayerManager.m +35 -0
  347. package/ios/RCTMGL/RCTMGLCallout.h +15 -0
  348. package/ios/RCTMGL/RCTMGLCallout.m +74 -0
  349. package/ios/RCTMGL/RCTMGLCalloutManager.h +13 -0
  350. package/ios/RCTMGL/RCTMGLCalloutManager.m +21 -0
  351. package/ios/RCTMGL/RCTMGLCamera.h +39 -0
  352. package/ios/RCTMGL/RCTMGLCamera.m +258 -0
  353. package/ios/RCTMGL/RCTMGLCameraManager.h +13 -0
  354. package/ios/RCTMGL/RCTMGLCameraManager.m +52 -0
  355. package/ios/RCTMGL/RCTMGLCircleLayer.h +13 -0
  356. package/ios/RCTMGL/RCTMGLCircleLayer.m +34 -0
  357. package/ios/RCTMGL/RCTMGLCircleLayerManager.h +13 -0
  358. package/ios/RCTMGL/RCTMGLCircleLayerManager.m +39 -0
  359. package/ios/RCTMGL/RCTMGLEvent.h +21 -0
  360. package/ios/RCTMGL/RCTMGLEvent.m +47 -0
  361. package/ios/RCTMGL/RCTMGLEventProtocol.h +16 -0
  362. package/ios/RCTMGL/RCTMGLEventTypes.h +50 -0
  363. package/ios/RCTMGL/RCTMGLEventTypes.m +49 -0
  364. package/ios/RCTMGL/RCTMGLFillExtrusionLayer.h +14 -0
  365. package/ios/RCTMGL/RCTMGLFillExtrusionLayer.m +32 -0
  366. package/ios/RCTMGL/RCTMGLFillExtrusionLayerManager.h +13 -0
  367. package/ios/RCTMGL/RCTMGLFillExtrusionLayerManager.m +39 -0
  368. package/ios/RCTMGL/RCTMGLFillLayer.h +14 -0
  369. package/ios/RCTMGL/RCTMGLFillLayer.m +33 -0
  370. package/ios/RCTMGL/RCTMGLFillLayerManager.h +13 -0
  371. package/ios/RCTMGL/RCTMGLFillLayerManager.m +37 -0
  372. package/ios/RCTMGL/RCTMGLHeatmapLayer.h +12 -0
  373. package/ios/RCTMGL/RCTMGLHeatmapLayer.m +30 -0
  374. package/ios/RCTMGL/RCTMGLHeatmapLayerManager.h +12 -0
  375. package/ios/RCTMGL/RCTMGLHeatmapLayerManager.m +38 -0
  376. package/ios/RCTMGL/RCTMGLImageQueue.h +19 -0
  377. package/ios/RCTMGL/RCTMGLImageQueue.m +57 -0
  378. package/ios/RCTMGL/RCTMGLImageQueueOperation.h +17 -0
  379. package/ios/RCTMGL/RCTMGLImageQueueOperation.m +138 -0
  380. package/ios/RCTMGL/RCTMGLImageSource.h +16 -0
  381. package/ios/RCTMGL/RCTMGLImageSource.m +60 -0
  382. package/ios/RCTMGL/RCTMGLImageSourceManager.h +13 -0
  383. package/ios/RCTMGL/RCTMGLImageSourceManager.m +25 -0
  384. package/ios/RCTMGL/RCTMGLImages.h +25 -0
  385. package/ios/RCTMGL/RCTMGLImages.m +126 -0
  386. package/ios/RCTMGL/RCTMGLImagesManager.h +5 -0
  387. package/ios/RCTMGL/RCTMGLImagesManager.m +21 -0
  388. package/ios/RCTMGL/RCTMGLLayer.h +52 -0
  389. package/ios/RCTMGL/RCTMGLLayer.m +236 -0
  390. package/ios/RCTMGL/RCTMGLLight.h +17 -0
  391. package/ios/RCTMGL/RCTMGLLight.m +46 -0
  392. package/ios/RCTMGL/RCTMGLLightManager.h +13 -0
  393. package/ios/RCTMGL/RCTMGLLightManager.m +23 -0
  394. package/ios/RCTMGL/RCTMGLLineLayer.h +14 -0
  395. package/ios/RCTMGL/RCTMGLLineLayer.m +33 -0
  396. package/ios/RCTMGL/RCTMGLLineLayerManager.h +13 -0
  397. package/ios/RCTMGL/RCTMGLLineLayerManager.m +40 -0
  398. package/ios/RCTMGL/RCTMGLLocation.h +19 -0
  399. package/ios/RCTMGL/RCTMGLLocation.m +32 -0
  400. package/ios/RCTMGL/RCTMGLLocationManager.h +30 -0
  401. package/ios/RCTMGL/RCTMGLLocationManager.m +180 -0
  402. package/ios/RCTMGL/RCTMGLLocationManagerDelegate.h +20 -0
  403. package/ios/RCTMGL/RCTMGLLocationModule.h +15 -0
  404. package/ios/RCTMGL/RCTMGLLocationModule.m +99 -0
  405. package/ios/RCTMGL/RCTMGLLogging.h +18 -0
  406. package/ios/RCTMGL/RCTMGLLogging.m +132 -0
  407. package/ios/RCTMGL/RCTMGLMapTouchEvent.h +25 -0
  408. package/ios/RCTMGL/RCTMGLMapTouchEvent.m +77 -0
  409. package/ios/RCTMGL/RCTMGLMapView.h +91 -0
  410. package/ios/RCTMGL/RCTMGLMapView.m +536 -0
  411. package/ios/RCTMGL/RCTMGLMapViewManager.h +17 -0
  412. package/ios/RCTMGL/RCTMGLMapViewManager.m +625 -0
  413. package/ios/RCTMGL/RCTMGLNativeUserLocation.h +18 -0
  414. package/ios/RCTMGL/RCTMGLNativeUserLocation.m +49 -0
  415. package/ios/RCTMGL/RCTMGLNativeUserLocationManager.h +5 -0
  416. package/ios/RCTMGL/RCTMGLNativeUserLocationManager.m +25 -0
  417. package/ios/RCTMGL/RCTMGLPointAnnotation.h +41 -0
  418. package/ios/RCTMGL/RCTMGLPointAnnotation.m +251 -0
  419. package/ios/RCTMGL/RCTMGLPointAnnotationManager.h +13 -0
  420. package/ios/RCTMGL/RCTMGLPointAnnotationManager.m +36 -0
  421. package/ios/RCTMGL/RCTMGLRasterLayer.h +14 -0
  422. package/ios/RCTMGL/RCTMGLRasterLayer.m +30 -0
  423. package/ios/RCTMGL/RCTMGLRasterLayerManager.h +13 -0
  424. package/ios/RCTMGL/RCTMGLRasterLayerManager.m +35 -0
  425. package/ios/RCTMGL/RCTMGLRasterSource.h +16 -0
  426. package/ios/RCTMGL/RCTMGLRasterSource.m +35 -0
  427. package/ios/RCTMGL/RCTMGLRasterSourceManager.h +13 -0
  428. package/ios/RCTMGL/RCTMGLRasterSourceManager.m +32 -0
  429. package/ios/RCTMGL/RCTMGLShapeSource.h +53 -0
  430. package/ios/RCTMGL/RCTMGLShapeSource.m +194 -0
  431. package/ios/RCTMGL/RCTMGLShapeSourceManager.h +14 -0
  432. package/ios/RCTMGL/RCTMGLShapeSourceManager.m +206 -0
  433. package/ios/RCTMGL/RCTMGLSource.h +35 -0
  434. package/ios/RCTMGL/RCTMGLSource.m +143 -0
  435. package/ios/RCTMGL/RCTMGLStyle.h +222 -0
  436. package/ios/RCTMGL/RCTMGLStyle.m +1675 -0
  437. package/ios/RCTMGL/RCTMGLStyleValue.h +27 -0
  438. package/ios/RCTMGL/RCTMGLStyleValue.m +167 -0
  439. package/ios/RCTMGL/RCTMGLSymbolLayer.h +19 -0
  440. package/ios/RCTMGL/RCTMGLSymbolLayer.m +121 -0
  441. package/ios/RCTMGL/RCTMGLSymbolLayerManager.h +13 -0
  442. package/ios/RCTMGL/RCTMGLSymbolLayerManager.m +40 -0
  443. package/ios/RCTMGL/RCTMGLTileSource.h +22 -0
  444. package/ios/RCTMGL/RCTMGLTileSource.m +31 -0
  445. package/ios/RCTMGL/RCTMGLUserLocation.h +15 -0
  446. package/ios/RCTMGL/RCTMGLUserLocation.m +38 -0
  447. package/ios/RCTMGL/RCTMGLUtils.h +31 -0
  448. package/ios/RCTMGL/RCTMGLUtils.m +218 -0
  449. package/ios/RCTMGL/RCTMGLVectorLayer.h +15 -0
  450. package/ios/RCTMGL/RCTMGLVectorLayer.m +59 -0
  451. package/ios/RCTMGL/RCTMGLVectorSource.h +16 -0
  452. package/ios/RCTMGL/RCTMGLVectorSource.m +28 -0
  453. package/ios/RCTMGL/RCTMGLVectorSourceManager.h +14 -0
  454. package/ios/RCTMGL/RCTMGLVectorSourceManager.m +79 -0
  455. package/ios/RCTMGL/RNMBImageUtils.h +17 -0
  456. package/ios/RCTMGL/RNMBImageUtils.m +31 -0
  457. package/ios/RCTMGL/ViewManager.h +16 -0
  458. package/ios/RCTMGL/ViewManager.m +63 -0
  459. package/ios/RCTMGL-v10/Bridge/RCTMGL.h +7 -0
  460. package/ios/RCTMGL-v10/CommonLayerProperties.H +13 -0
  461. package/ios/RCTMGL-v10/Extensions/Array+asExpressions.swift +14 -0
  462. package/ios/RCTMGL-v10/Extensions/CLLocationCoordinate2D+toArray.swift +7 -0
  463. package/ios/RCTMGL-v10/Extensions/CLLocationCoordinate2D+validate.swift +29 -0
  464. package/ios/RCTMGL-v10/Extensions/CoordinateBounds+toArray.swift +10 -0
  465. package/ios/RCTMGL-v10/Extensions/DefaultStringInterpolation+optional.swift +5 -0
  466. package/ios/RCTMGL-v10/Extensions/Encodable+ToJSON.swift +13 -0
  467. package/ios/RCTMGL-v10/MGLModule.m +7 -0
  468. package/ios/RCTMGL-v10/MGLModule.swift +71 -0
  469. package/ios/RCTMGL-v10/MGLSnapshotModule.m +11 -0
  470. package/ios/RCTMGL-v10/MGLSnapshotModule.swift +106 -0
  471. package/ios/RCTMGL-v10/RCTLog.swift +19 -0
  472. package/ios/RCTMGL-v10/RCTMGLAtmosphere.swift +73 -0
  473. package/ios/RCTMGL-v10/RCTMGLAtmosphereManager.m +8 -0
  474. package/ios/RCTMGL-v10/RCTMGLAtmosphereManager.swift +13 -0
  475. package/ios/RCTMGL-v10/RCTMGLBackgroundLayer.swift +47 -0
  476. package/ios/RCTMGL-v10/RCTMGLBackgroundLayerManager.m +9 -0
  477. package/ios/RCTMGL-v10/RCTMGLBackgroundLayerManager.swift +13 -0
  478. package/ios/RCTMGL-v10/RCTMGLCallout.swift +3 -0
  479. package/ios/RCTMGL-v10/RCTMGLCalloutManager.m +8 -0
  480. package/ios/RCTMGL-v10/RCTMGLCalloutManager.swift +14 -0
  481. package/ios/RCTMGL-v10/RCTMGLCamera.swift +423 -0
  482. package/ios/RCTMGL-v10/RCTMGLCameraManager.m +20 -0
  483. package/ios/RCTMGL-v10/RCTMGLCameraManager.swift +14 -0
  484. package/ios/RCTMGL-v10/RCTMGLCircleLayer.swift +66 -0
  485. package/ios/RCTMGL-v10/RCTMGLCircleLayerManager.m +12 -0
  486. package/ios/RCTMGL-v10/RCTMGLCircleLayerManager.swift +13 -0
  487. package/ios/RCTMGL-v10/RCTMGLEvent.swift +47 -0
  488. package/ios/RCTMGL-v10/RCTMGLFeatureUtils.swift +79 -0
  489. package/ios/RCTMGL-v10/RCTMGLFillExtrusionLayerManager.m +12 -0
  490. package/ios/RCTMGL-v10/RCTMGLFillExtrusionLayerManager.swift +13 -0
  491. package/ios/RCTMGL-v10/RCTMGLFillExtrustionLayer.swift +46 -0
  492. package/ios/RCTMGL-v10/RCTMGLFillLayer.swift +50 -0
  493. package/ios/RCTMGL-v10/RCTMGLFillLayerManager.m +12 -0
  494. package/ios/RCTMGL-v10/RCTMGLFillLayerManager.swift +13 -0
  495. package/ios/RCTMGL-v10/RCTMGLHeatmapLayer.swift +50 -0
  496. package/ios/RCTMGL-v10/RCTMGLHeatmapLayerManager.m +12 -0
  497. package/ios/RCTMGL-v10/RCTMGLHeatmapLayetManager.swift +13 -0
  498. package/ios/RCTMGL-v10/RCTMGLImageQueue.swift +140 -0
  499. package/ios/RCTMGL-v10/RCTMGLImageSource.swift +61 -0
  500. package/ios/RCTMGL-v10/RCTMGLImageSourceManager.m +10 -0
  501. package/ios/RCTMGL-v10/RCTMGLImageSourceManager.swift +11 -0
  502. package/ios/RCTMGL-v10/RCTMGLImages.swift +197 -0
  503. package/ios/RCTMGL-v10/RCTMGLImagesManager.m +11 -0
  504. package/ios/RCTMGL-v10/RCTMGLImagesManager.swift +14 -0
  505. package/ios/RCTMGL-v10/RCTMGLInteractiveElement.swift +57 -0
  506. package/ios/RCTMGL-v10/RCTMGLLayer.swift +304 -0
  507. package/ios/RCTMGL-v10/RCTMGLLight.swift +56 -0
  508. package/ios/RCTMGL-v10/RCTMGLLightManager.m +9 -0
  509. package/ios/RCTMGL-v10/RCTMGLLightManager.swift +13 -0
  510. package/ios/RCTMGL-v10/RCTMGLLineLayer.swift +52 -0
  511. package/ios/RCTMGL-v10/RCTMGLLineLayerManager.m +12 -0
  512. package/ios/RCTMGL-v10/RCTMGLLineLayerManager.swift +13 -0
  513. package/ios/RCTMGL-v10/RCTMGLLocationModule.m +15 -0
  514. package/ios/RCTMGL-v10/RCTMGLLocationModule.swift +272 -0
  515. package/ios/RCTMGL-v10/RCTMGLLogging.m +8 -0
  516. package/ios/RCTMGL-v10/RCTMGLLogging.swift +133 -0
  517. package/ios/RCTMGL-v10/RCTMGLMapView.swift +914 -0
  518. package/ios/RCTMGL-v10/RCTMGLMapViewManager.m +88 -0
  519. package/ios/RCTMGL-v10/RCTMGLMapViewManager.swift +242 -0
  520. package/ios/RCTMGL-v10/RCTMGLMarkerView.swift +138 -0
  521. package/ios/RCTMGL-v10/RCTMGLMarkerViewManager.m +11 -0
  522. package/ios/RCTMGL-v10/RCTMGLMarkerViewManager.swift +14 -0
  523. package/ios/RCTMGL-v10/RCTMGLNativeUserLocation.swift +44 -0
  524. package/ios/RCTMGL-v10/RCTMGLNativeUserLocationManager.m +9 -0
  525. package/ios/RCTMGL-v10/RCTMGLNativeUserLocationManager.swift +11 -0
  526. package/ios/RCTMGL-v10/RCTMGLOfflineModule.m +32 -0
  527. package/ios/RCTMGL-v10/RCTMGLOfflineModule.swift +486 -0
  528. package/ios/RCTMGL-v10/RCTMGLPointAnnotation.swift +230 -0
  529. package/ios/RCTMGL-v10/RCTMGLPointAnnotationManager.m +22 -0
  530. package/ios/RCTMGL-v10/RCTMGLPointAnnotationManager.swift +34 -0
  531. package/ios/RCTMGL-v10/RCTMGLRasterDemSource.swift +57 -0
  532. package/ios/RCTMGL-v10/RCTMGLRasterDemSourceManager.m +20 -0
  533. package/ios/RCTMGL-v10/RCTMGLRasterDemSourceManager.swift +11 -0
  534. package/ios/RCTMGL-v10/RCTMGLRasterLayer.swift +48 -0
  535. package/ios/RCTMGL-v10/RCTMGLRasterLayerManager.m +12 -0
  536. package/ios/RCTMGL-v10/RCTMGLRasterLayerManager.swift +13 -0
  537. package/ios/RCTMGL-v10/RCTMGLRasterSource.swift +51 -0
  538. package/ios/RCTMGL-v10/RCTMGLRasterSourceManager.m +18 -0
  539. package/ios/RCTMGL-v10/RCTMGLRasterSourceManager.swift +14 -0
  540. package/ios/RCTMGL-v10/RCTMGLShapeSource.swift +277 -0
  541. package/ios/RCTMGL-v10/RCTMGLShapeSourceManager.m +44 -0
  542. package/ios/RCTMGL-v10/RCTMGLShapeSourceManager.swift +106 -0
  543. package/ios/RCTMGL-v10/RCTMGLSingletonLayer.swift +41 -0
  544. package/ios/RCTMGL-v10/RCTMGLSkyLayer.swift +52 -0
  545. package/ios/RCTMGL-v10/RCTMGLSkyLayerManager.m +9 -0
  546. package/ios/RCTMGL-v10/RCTMGLSkyLayerManager.swift +13 -0
  547. package/ios/RCTMGL-v10/RCTMGLSource.swift +65 -0
  548. package/ios/RCTMGL-v10/RCTMGLStyle.swift +2509 -0
  549. package/ios/RCTMGL-v10/RCTMGLStyleValue.swift +446 -0
  550. package/ios/RCTMGL-v10/RCTMGLSymbolLayer.swift +51 -0
  551. package/ios/RCTMGL-v10/RCTMGLSymbolLayerManager.m +12 -0
  552. package/ios/RCTMGL-v10/RCTMGLSymbolLayerManager.swift +13 -0
  553. package/ios/RCTMGL-v10/RCTMGLTerrain.swift +97 -0
  554. package/ios/RCTMGL-v10/RCTMGLTerrainManager.m +16 -0
  555. package/ios/RCTMGL-v10/RCTMGLTerrainManager.swift +13 -0
  556. package/ios/RCTMGL-v10/RCTMGLTileSource.swift +5 -0
  557. package/ios/RCTMGL-v10/RCTMGLUtils.swift +53 -0
  558. package/ios/RCTMGL-v10/RCTMGLVectorLayer.m +58 -0
  559. package/ios/RCTMGL-v10/RCTMGLVectorLayer.swift +49 -0
  560. package/ios/RCTMGL-v10/RCTMGLVectorSource.swift +57 -0
  561. package/ios/RCTMGL-v10/RCTMGLVectorSourceManager.m +21 -0
  562. package/ios/RCTMGL-v10/RCTMGLVectorSourceManager.swift +11 -0
  563. package/ios/RCTMGL-v10/RCTSwiftLog.h +11 -0
  564. package/ios/RCTMGL-v10/RCTSwiftLog.m +32 -0
  565. package/ios/RCTMGL-v10/README.md +1 -0
  566. package/ios/RCTMGL-v10/RNMBImageUtils.swift +20 -0
  567. package/ios/install.md +102 -0
  568. package/javascript/components/AbstractLayer.js +49 -0
  569. package/javascript/components/AbstractSource.js +15 -0
  570. package/javascript/components/Atmosphere.tsx +28 -0
  571. package/javascript/components/BackgroundLayer.js +97 -0
  572. package/javascript/components/Callout.js +139 -0
  573. package/javascript/components/Camera.tsx +526 -0
  574. package/javascript/components/CircleLayer.js +101 -0
  575. package/javascript/components/FillExtrusionLayer.js +98 -0
  576. package/javascript/components/FillLayer.js +94 -0
  577. package/javascript/components/HeadingIndicator.js +31 -0
  578. package/javascript/components/HeatmapLayer.js +99 -0
  579. package/javascript/components/ImageSource.js +82 -0
  580. package/javascript/components/Images.js +119 -0
  581. package/javascript/components/Light.js +47 -0
  582. package/javascript/components/LineLayer.js +94 -0
  583. package/javascript/components/MapView.js +883 -0
  584. package/javascript/components/MarkerView.js +91 -0
  585. package/javascript/components/NativeBridgeComponent.js +86 -0
  586. package/javascript/components/NativeUserLocation.js +41 -0
  587. package/javascript/components/PointAnnotation.js +217 -0
  588. package/javascript/components/RasterDemSource.js +106 -0
  589. package/javascript/components/RasterLayer.js +95 -0
  590. package/javascript/components/RasterSource.js +124 -0
  591. package/javascript/components/ShapeSource.js +373 -0
  592. package/javascript/components/SkyLayer.js +80 -0
  593. package/javascript/components/Style.js +265 -0
  594. package/javascript/components/SymbolLayer.js +120 -0
  595. package/javascript/components/Terrain.js +56 -0
  596. package/javascript/components/UserLocation.js +274 -0
  597. package/javascript/components/VectorSource.js +200 -0
  598. package/javascript/components/annotations/Annotation.js +123 -0
  599. package/javascript/index.js +139 -0
  600. package/javascript/modules/location/locationManager.js +101 -0
  601. package/javascript/modules/offline/OfflineCreatePackOptions.js +46 -0
  602. package/javascript/modules/offline/OfflinePack.js +40 -0
  603. package/javascript/modules/offline/offlineManager.js +391 -0
  604. package/javascript/modules/snapshot/SnapshotOptions.js +67 -0
  605. package/javascript/modules/snapshot/snapshotManager.js +62 -0
  606. package/javascript/requestAndroidLocationPermissions.ts +30 -0
  607. package/javascript/types/index.ts +23 -0
  608. package/javascript/utils/BridgeValue.js +81 -0
  609. package/javascript/utils/Logger.js +116 -0
  610. package/javascript/utils/MapboxStyles.ts +1484 -0
  611. package/javascript/utils/StyleValue.ts +44 -0
  612. package/javascript/utils/animated/Animated.js +39 -0
  613. package/javascript/utils/animated/AnimatedCoordinatesArray.js +191 -0
  614. package/javascript/utils/animated/AnimatedExtractCoordinateFromArray.js +43 -0
  615. package/javascript/utils/animated/AnimatedPoint.js +126 -0
  616. package/javascript/utils/animated/AnimatedRouteCoordinatesArray.js +143 -0
  617. package/javascript/utils/animated/AnimatedShape.js +72 -0
  618. package/javascript/utils/deprecation.js +25 -0
  619. package/javascript/utils/filterUtils.js +7 -0
  620. package/javascript/utils/geoUtils.js +73 -0
  621. package/javascript/utils/index.js +124 -0
  622. package/javascript/utils/resolveAssetSource.d.ts +5 -0
  623. package/javascript/utils/styleMap.js +2181 -0
  624. package/package.json +109 -0
  625. package/plugin/build/withMapbox.d.ts +17 -0
  626. package/plugin/build/withMapbox.js +286 -0
  627. package/plugin/install.md +53 -0
  628. package/react-native.config.js +12 -0
  629. package/rnmapbox-maps.podspec +264 -0
  630. package/scripts/.eslintrc.js +12 -0
  631. package/scripts/autogenHelpers/DocJSONBuilder.js +345 -0
  632. package/scripts/autogenHelpers/JSDocNodeTree.js +134 -0
  633. package/scripts/autogenHelpers/MarkdownBuilder.js +38 -0
  634. package/scripts/autogenHelpers/globals.js +507 -0
  635. package/scripts/autogenerate.js +530 -0
  636. package/scripts/download-style-spec.sh +15 -0
  637. package/scripts/templates/MapboxStyles.ts.ejs +92 -0
  638. package/scripts/templates/RCTMGLStyle.h.ejs +34 -0
  639. package/scripts/templates/RCTMGLStyle.m.ejs +106 -0
  640. package/scripts/templates/RCTMGLStyle.swift.ejs +116 -0
  641. package/scripts/templates/RCTMGLStyleFactory.java.ejs +108 -0
  642. package/scripts/templates/RCTMGLStyleFactoryv10.java.ejs +115 -0
  643. package/scripts/templates/component.md.ejs +122 -0
  644. package/scripts/templates/index.d.ts.ejs +56 -0
  645. package/scripts/templates/styleMap.js.ejs +115 -0
  646. package/setup-jest.js +125 -0
  647. package/style-spec/v8.json +6692 -0
  648. package/tsconfig.json +24 -0
@@ -0,0 +1,103 @@
1
+ package com.mapbox.rctmgl.components.styles.sources;
2
+
3
+ import android.content.Context;
4
+
5
+ import androidx.annotation.NonNull;
6
+ import androidx.annotation.Nullable;
7
+ import androidx.annotation.Size;
8
+
9
+ import com.facebook.react.bridge.WritableMap;
10
+ import com.facebook.react.bridge.WritableNativeMap;
11
+ import com.mapbox.bindgen.Expected;
12
+ import com.mapbox.geojson.Feature;
13
+ import com.mapbox.geojson.FeatureCollection;
14
+
15
+ import com.mapbox.maps.QueriedFeature;
16
+ import com.mapbox.maps.QueryFeaturesCallback;
17
+ import com.mapbox.maps.SourceQueryOptions;
18
+ import com.mapbox.maps.Style;
19
+ import com.mapbox.maps.StyleManagerInterface;
20
+ import com.mapbox.maps.StyleObjectInfo;
21
+ import com.mapbox.maps.extension.style.expressions.generated.Expression;
22
+ import com.mapbox.maps.extension.style.sources.Source;
23
+ import com.mapbox.maps.extension.style.sources.generated.VectorSource;
24
+ import com.mapbox.maps.extension.style.sources.SourceUtils;
25
+
26
+ import com.mapbox.maps.plugin.delegates.MapFeatureQueryDelegate;
27
+ import com.mapbox.rctmgl.events.AndroidCallbackEvent;
28
+ import com.mapbox.rctmgl.events.FeatureClickEvent;
29
+
30
+ import java.util.LinkedList;
31
+ import java.util.List;
32
+ import java.util.ListIterator;
33
+
34
+ public class RCTMGLVectorSource extends RCTMGLTileSource<VectorSource> {
35
+ private RCTMGLVectorSourceManager mManager;
36
+
37
+ public RCTMGLVectorSource(Context context, RCTMGLVectorSourceManager manager) {
38
+ super(context);
39
+ mManager = manager;
40
+ }
41
+
42
+ public void onPress(OnPressEvent event) {
43
+ mManager.handleEvent(FeatureClickEvent.makeVectorSourceEvent(this, event));
44
+ }
45
+
46
+ @Override
47
+ public VectorSource makeSource() {
48
+ if (isDefaultSource(getID())) {
49
+ return (VectorSource)SourceUtils.getSource(mMap.getStyle(), DEFAULT_ID);
50
+ }
51
+
52
+ String configurationUrl = getURL();
53
+ if (configurationUrl != null) {
54
+ return new VectorSource(
55
+ new VectorSource.Builder(getID())
56
+ .url(getURL())
57
+ );
58
+ }
59
+ return new VectorSource(
60
+ new VectorSource.Builder(getID())
61
+ .tileSet(buildTileset())
62
+ );
63
+ }
64
+
65
+ public void querySourceFeatures(String callbackID,
66
+ @Size(min = 1) List<String> layerIDs,
67
+ @Nullable Expression filter) {
68
+ if (mSource == null) {
69
+ WritableMap payload = new WritableNativeMap();
70
+ payload.putString("error", "source is not yet loaded");
71
+ AndroidCallbackEvent event = new AndroidCallbackEvent(this, callbackID, payload);
72
+ mManager.handleEvent(event);
73
+ return;
74
+ }
75
+
76
+
77
+ WritableMap payload = new WritableNativeMap();
78
+
79
+ mMap.querySourceFeatures(
80
+ getID(),
81
+ new SourceQueryOptions(layerIDs, filter),
82
+
83
+ new QueryFeaturesCallback() {
84
+ @Override
85
+ public void run(@NonNull Expected<String, List<QueriedFeature>> queriedFeatures) {
86
+ if (queriedFeatures.isError()) {
87
+ //V10todo
88
+ payload.putString("error", queriedFeatures.getError());
89
+ } else {
90
+ List<Feature> features = new LinkedList<>();
91
+ for (QueriedFeature feature: queriedFeatures.getValue()) {
92
+ features.add(feature.getFeature());
93
+ }
94
+ payload.putString("data", FeatureCollection.fromFeatures(features).toJson());
95
+ }
96
+ }
97
+ }
98
+ );
99
+
100
+ AndroidCallbackEvent event = new AndroidCallbackEvent(this, callbackID, payload);
101
+ mManager.handleEvent(event);
102
+ }
103
+ }
@@ -0,0 +1,80 @@
1
+ package com.mapbox.rctmgl.components.styles.sources;
2
+
3
+ import androidx.annotation.Nullable;
4
+
5
+ import com.facebook.react.bridge.ReactApplicationContext;
6
+ import com.facebook.react.bridge.ReadableArray;
7
+ import com.facebook.react.bridge.ReadableMap;
8
+ import com.facebook.react.common.MapBuilder;
9
+ import com.facebook.react.uimanager.ThemedReactContext;
10
+ import com.facebook.react.uimanager.annotations.ReactProp;
11
+ import com.mapbox.rctmgl.events.constants.EventKeys;
12
+ import com.mapbox.rctmgl.utils.ConvertUtils;
13
+ import com.mapbox.rctmgl.utils.ExpressionParser;
14
+
15
+ import javax.annotation.Nonnull;
16
+
17
+ import java.util.Map;
18
+
19
+ public class RCTMGLVectorSourceManager extends RCTMGLTileSourceManager<RCTMGLVectorSource> {
20
+ public static final String REACT_CLASS = "RCTMGLVectorSource";
21
+
22
+ public RCTMGLVectorSourceManager(ReactApplicationContext reactApplicationContext) {
23
+ super(reactApplicationContext);
24
+ }
25
+
26
+ @Nonnull
27
+ @Override
28
+ public String getName() {
29
+ return REACT_CLASS;
30
+ }
31
+
32
+ @Nonnull
33
+ @Override
34
+ protected RCTMGLVectorSource createViewInstance(@Nonnull ThemedReactContext reactContext) {
35
+ return new RCTMGLVectorSource(reactContext, this);
36
+ }
37
+
38
+ @ReactProp(name = "hasPressListener")
39
+ public void setHasPressListener(RCTMGLVectorSource source, boolean hasPressListener) {
40
+ source.setHasPressListener(hasPressListener);
41
+ }
42
+
43
+ @ReactProp(name="hitbox")
44
+ public void setHitbox(RCTMGLVectorSource source, ReadableMap map) {
45
+ source.setHitbox(map);
46
+ }
47
+
48
+ @Override
49
+ public Map<String, String> customEvents() {
50
+ return MapBuilder.<String, String>builder()
51
+ .put(EventKeys.VECTOR_SOURCE_LAYER_CLICK, "onMapboxVectorSourcePress")
52
+ .put(EventKeys.MAP_ANDROID_CALLBACK, "onAndroidCallback")
53
+ .build();
54
+ }
55
+
56
+ //region React Methods
57
+ public static final int METHOD_FEATURES = 102;
58
+
59
+ @Nullable
60
+ @Override
61
+ public Map<String, Integer> getCommandsMap() {
62
+ return MapBuilder.<String, Integer>builder()
63
+ .put("features", METHOD_FEATURES)
64
+ .build();
65
+ }
66
+
67
+ @Override
68
+ public void receiveCommand(RCTMGLVectorSource vectorSource, int commandID, @Nullable ReadableArray args) {
69
+
70
+ switch (commandID) {
71
+ case METHOD_FEATURES:
72
+ vectorSource.querySourceFeatures(
73
+ args.getString(0),
74
+ ConvertUtils.toStringList(args.getArray(1)),
75
+ ExpressionParser.from(args.getArray(2))
76
+ );
77
+ break;
78
+ }
79
+ }
80
+ }
@@ -0,0 +1,211 @@
1
+ package com.mapbox.rctmgl.components.styles.sources
2
+
3
+ import android.content.Context
4
+ import com.mapbox.maps.extension.style.sources.getSource
5
+ import com.mapbox.maps.extension.style.sources.addSource
6
+ import com.mapbox.rctmgl.components.AbstractMapFeature
7
+ import com.mapbox.rctmgl.components.mapview.RCTMGLMapView
8
+ import com.mapbox.maps.MapboxMap
9
+ import com.mapbox.rctmgl.components.styles.sources.AbstractSourceConsumer
10
+ import com.facebook.react.bridge.ReadableMap
11
+ import com.mapbox.rctmgl.components.styles.sources.RCTSource
12
+ import android.graphics.PointF
13
+ import android.view.View
14
+ import com.facebook.react.common.MapBuilder
15
+ import com.mapbox.geojson.Feature
16
+ import com.mapbox.maps.Style
17
+ import com.mapbox.maps.extension.style.StyleContract
18
+ import com.mapbox.maps.extension.style.sources.Source
19
+ import com.mapbox.rctmgl.components.styles.sources.RCTSource.OnPressEvent
20
+ import com.mapbox.rctmgl.utils.LatLng
21
+ import com.mapbox.rctmgl.utils.Logger
22
+ import java.lang.ClassCastException
23
+ import java.util.ArrayList
24
+ import java.util.HashMap
25
+
26
+ abstract class RCTSource<T : Source?>(context: Context?) : AbstractMapFeature(context) {
27
+ @JvmField
28
+ protected var mMapView: RCTMGLMapView? = null
29
+ @JvmField
30
+ protected var mMap: MapboxMap? = null
31
+ var iD: String? = null
32
+ @JvmField
33
+ protected var mSource: T? = null
34
+ protected var mHasPressListener = false
35
+ protected var mTouchHitbox: Map<String, Double>? = null
36
+ protected var mLayers: MutableList<AbstractSourceConsumer>
37
+ private var mQueuedLayers: MutableList<AbstractSourceConsumer>?
38
+ val layerIDs: List<String>
39
+ get() {
40
+ val layerIDs: MutableList<String> = ArrayList()
41
+ for (i in mLayers.indices) {
42
+ val layer = mLayers[i]
43
+ val id = layer.iD
44
+ if (id != null) {
45
+ layerIDs.add(id)
46
+ }
47
+ }
48
+ return layerIDs
49
+ }
50
+
51
+ private fun getSourceAs(style: Style, id: String?): T? {
52
+ val result = iD?.let { style.getSource(it) }
53
+ return try {
54
+ result as T?
55
+ } catch (exception: ClassCastException) {
56
+ null
57
+ }
58
+ }
59
+
60
+ protected fun addLayerToMap(layer: AbstractSourceConsumer?, childPosition: Int) {
61
+ if (mMapView == null || layer == null) {
62
+ return
63
+ }
64
+ layer.addToMap(mMapView)
65
+ if (!mLayers.contains(layer)) {
66
+ mLayers.add(childPosition, layer)
67
+ }
68
+ }
69
+
70
+ open fun hasPressListener(): Boolean {
71
+ return mHasPressListener
72
+ }
73
+
74
+ fun setHasPressListener(hasPressListener: Boolean) {
75
+ mHasPressListener = hasPressListener
76
+ }
77
+
78
+ fun setHitbox(map: ReadableMap) {
79
+ val hitbox: MutableMap<String, Double> = HashMap()
80
+ hitbox["width"] = map.getDouble("width")
81
+ hitbox["height"] = map.getDouble("height")
82
+ mTouchHitbox = hitbox
83
+ }
84
+
85
+ val touchHitbox: Map<String, Double>?
86
+ get() {
87
+ if (!hasPressListener()) {
88
+ return null
89
+ }
90
+ return if (mTouchHitbox == null) {
91
+ MapBuilder.builder<String, Double>()
92
+ .put("width", DEFAULT_HITBOX_WIDTH)
93
+ .put("height", DEFAULT_HITBOX_HEIGHT)
94
+ .build()
95
+ } else mTouchHitbox
96
+ }
97
+ val layerCount: Int
98
+ get() {
99
+ var totalCount = 0
100
+ if (mQueuedLayers != null) {
101
+ totalCount = mQueuedLayers!!.size
102
+ }
103
+ totalCount += mLayers.size
104
+ return totalCount
105
+ }
106
+
107
+ override fun addToMap(mapView: RCTMGLMapView) {
108
+ mMapView = mapView
109
+ mMap = mapView.getMapboxMap()
110
+ mMap?.getStyle(object : Style.OnStyleLoaded {
111
+ override fun onStyleLoaded(style: Style) {
112
+ val existingSource = getSourceAs(style, iD)
113
+ if (existingSource != null) {
114
+ mSource = existingSource
115
+ } else {
116
+ mSource = makeSource()
117
+ style.addSource(mSource as StyleContract.StyleSourceExtension)
118
+ }
119
+ if (mQueuedLayers != null && mQueuedLayers!!.size > 0) { // first load
120
+ for (i in mQueuedLayers!!.indices) {
121
+ addLayerToMap(mQueuedLayers!![i], i)
122
+ }
123
+ mQueuedLayers = null
124
+ } else if (mLayers.size > 0) { // handles the case of switching style url, but keeping layers on map
125
+ for (i in mLayers.indices) {
126
+ addLayerToMap(mLayers[i], i)
127
+ }
128
+ }
129
+ }
130
+ })
131
+ }
132
+
133
+ override fun removeFromMap(mapView: RCTMGLMapView) {
134
+ if (mLayers.size > 0) {
135
+ for (i in mLayers.indices) {
136
+ val layer = mLayers[i]
137
+ layer.removeFromMap(mMapView)
138
+ }
139
+ }
140
+ if (mQueuedLayers != null) {
141
+ mQueuedLayers!!.clear()
142
+ }
143
+ if (mMap != null && mSource != null && mMap!!.getStyle() != null) {
144
+ try {
145
+ iD?.let { mMap?.getStyle()?.removeStyleSource(it) }
146
+ } catch (ex: Throwable) {
147
+ Logger.w(LOG_TAG, String.format("RCTSource.removeFromMap: %s - %s", mSource, ex.message), ex)
148
+ }
149
+ }
150
+ }
151
+
152
+ fun addLayer(childView: View?, childPosition: Int) {
153
+ if (childView !is AbstractSourceConsumer) {
154
+ return
155
+ }
156
+ val layer = childView
157
+ if (mMap == null) {
158
+ mQueuedLayers?.add(childPosition, layer)
159
+ } else {
160
+ addLayerToMap(layer, childPosition)
161
+ }
162
+ }
163
+
164
+ fun removeLayer(childPosition: Int) {
165
+ val layer: AbstractSourceConsumer
166
+ layer = if (mQueuedLayers != null && mQueuedLayers!!.size > 0) {
167
+ mQueuedLayers!![childPosition]
168
+ } else {
169
+ mLayers[childPosition]
170
+ }
171
+ removeLayerFromMap(layer, childPosition)
172
+ }
173
+
174
+ fun getLayerAt(childPosition: Int): AbstractSourceConsumer {
175
+ return if (mQueuedLayers != null && mQueuedLayers!!.size > 0) {
176
+ mQueuedLayers!![childPosition]
177
+ } else mLayers[childPosition]
178
+ }
179
+
180
+ protected fun removeLayerFromMap(layer: AbstractSourceConsumer?, childPosition: Int) {
181
+ if (mMapView != null && layer != null) {
182
+ layer.removeFromMap(mMapView)
183
+ }
184
+ if (mQueuedLayers != null && mQueuedLayers!!.size > 0) {
185
+ mQueuedLayers?.removeAt(childPosition)
186
+ } else {
187
+ mLayers.removeAt(childPosition)
188
+ }
189
+ }
190
+
191
+ abstract fun makeSource(): T
192
+ class OnPressEvent(var features: List<Feature>, var latLng: LatLng, var screenPoint: PointF)
193
+
194
+ abstract fun onPress(event: OnPressEvent?)
195
+
196
+ companion object {
197
+ const val DEFAULT_ID = "composite"
198
+ const val LOG_TAG = "RCTSource"
199
+ const val DEFAULT_HITBOX_WIDTH = 44.0
200
+ const val DEFAULT_HITBOX_HEIGHT = 44.0
201
+ @JvmStatic
202
+ fun isDefaultSource(sourceID: String): Boolean {
203
+ return DEFAULT_ID == sourceID
204
+ }
205
+ }
206
+
207
+ init {
208
+ mLayers = ArrayList()
209
+ mQueuedLayers = ArrayList()
210
+ }
211
+ }
@@ -0,0 +1,58 @@
1
+ package com.mapbox.rctmgl.components.styles.terrain
2
+
3
+ import android.content.Context
4
+ import com.facebook.react.bridge.Dynamic
5
+ import com.mapbox.rctmgl.components.styles.sources.AbstractSourceConsumer
6
+ import com.mapbox.maps.extension.style.terrain.generated.Terrain
7
+ import com.mapbox.rctmgl.components.mapview.RCTMGLMapView
8
+ import com.facebook.react.bridge.ReadableType
9
+ import com.mapbox.rctmgl.utils.ExpressionParser
10
+ import com.mapbox.rctmgl.utils.Logger
11
+
12
+ class RCTMGLTerrain(context: Context?) : AbstractSourceConsumer(context) {
13
+ override var iD: String? = null
14
+ protected var mSourceID: String? = null
15
+ protected var mExaggeration: Dynamic? = null
16
+ protected var mTerrain: Terrain? = null
17
+
18
+ fun setSourceID(sourceID: String?) {
19
+ mSourceID = sourceID
20
+ }
21
+
22
+ override fun addToMap(mapView: RCTMGLMapView) {
23
+ val terrain = makeTerrain()
24
+ addStyles(terrain)
25
+ mTerrain = terrain
26
+ mapView.savedStyle?.let { mTerrain!!.bindTo(it) }
27
+ }
28
+
29
+ override fun removeFromMap(mapView: RCTMGLMapView) {
30
+ val emptyTerrain = Terrain("no-such-source-empty")
31
+ mapView.savedStyle?.let { emptyTerrain.bindTo(it) }
32
+ }
33
+
34
+ fun makeTerrain(): Terrain {
35
+ return Terrain(mSourceID!!)
36
+ }
37
+
38
+ fun setExaggeration(exaggeration: Dynamic?) {
39
+ mExaggeration = exaggeration
40
+ }
41
+
42
+ fun addStyles(terrain: Terrain) {
43
+ when (mExaggeration!!.type) {
44
+ ReadableType.Number -> terrain.exaggeration(mExaggeration!!.asDouble())
45
+ ReadableType.Array -> terrain.exaggeration(
46
+ ExpressionParser.from(mExaggeration!!.asArray())!!
47
+ )
48
+ else -> Logger.e(
49
+ "RCTMGLTerrain",
50
+ "Unexpected type passed to exaggeration:$mExaggeration"
51
+ )
52
+ }
53
+ }
54
+
55
+ fun setSourceLayerID(sourceLayerID: String?) {
56
+ Logger.e("RCTMGLSkyLayer", "Source layer should not be set for source layer id")
57
+ }
58
+ }
@@ -0,0 +1,41 @@
1
+ package com.mapbox.rctmgl.components.styles.terrain
2
+
3
+ import com.facebook.react.bridge.Dynamic
4
+ import com.mapbox.rctmgl.components.styles.sources.AbstractSourceConsumer
5
+ import com.mapbox.maps.extension.style.terrain.generated.Terrain
6
+ import com.mapbox.rctmgl.components.mapview.RCTMGLMapView
7
+ import com.facebook.react.bridge.ReadableType
8
+ import com.facebook.react.uimanager.ViewGroupManager
9
+ import com.mapbox.rctmgl.components.styles.terrain.RCTMGLTerrain
10
+ import com.mapbox.rctmgl.components.styles.terrain.RCTMGLTerrainManager
11
+ import com.facebook.react.uimanager.ThemedReactContext
12
+ import com.facebook.react.uimanager.annotations.ReactProp
13
+
14
+ class RCTMGLTerrainManager : ViewGroupManager<RCTMGLTerrain>() {
15
+ override fun getName(): String {
16
+ return REACT_CLASS
17
+ }
18
+
19
+ override fun createViewInstance(reactContext: ThemedReactContext): RCTMGLTerrain {
20
+ return RCTMGLTerrain(reactContext)
21
+ }
22
+
23
+ @ReactProp(name = "id")
24
+ fun setId(layer: RCTMGLTerrain, id: String?) {
25
+ layer.iD = id
26
+ }
27
+
28
+ @ReactProp(name = "sourceID")
29
+ fun setSourceID(layer: RCTMGLTerrain, sourceID: String?) {
30
+ layer.setSourceID(sourceID)
31
+ }
32
+
33
+ @ReactProp(name = "exaggeration")
34
+ fun setExaggeration(layer: RCTMGLTerrain, exaggeration: Dynamic?) {
35
+ layer.setExaggeration(exaggeration)
36
+ }
37
+
38
+ companion object {
39
+ const val REACT_CLASS = "RCTMGLTerrain"
40
+ }
41
+ }
@@ -0,0 +1,62 @@
1
+ package com.mapbox.rctmgl.events;
2
+
3
+ import android.view.View;
4
+
5
+ import com.facebook.react.bridge.Arguments;
6
+ import com.facebook.react.bridge.WritableMap;
7
+
8
+ abstract public class AbstractEvent implements IEvent {
9
+ private int mTagID;
10
+ private String mEventType;
11
+ private long mTimestamp;
12
+
13
+ public AbstractEvent(String eventType) {
14
+ this(null, eventType);
15
+ }
16
+
17
+ public AbstractEvent(View view, String eventType) {
18
+ mEventType = eventType;
19
+
20
+ if (view != null) {
21
+ mTagID = view.getId();
22
+ }
23
+
24
+ mTimestamp = System.currentTimeMillis();
25
+ }
26
+
27
+ public int getID() {
28
+ return mTagID;
29
+ }
30
+
31
+ public String getType() {
32
+ return mEventType;
33
+ }
34
+
35
+ public boolean equals(IEvent event) {
36
+ return getKey().equals(event.getKey()) && mEventType.equals(event.getType());
37
+ }
38
+
39
+ public WritableMap getPayload() {
40
+ return Arguments.createMap();
41
+ }
42
+
43
+ public long getTimestamp() {
44
+ return mTimestamp;
45
+ }
46
+
47
+ public WritableMap toJSON() {
48
+ WritableMap map = Arguments.createMap();
49
+ map.putString("type", getType());
50
+
51
+ WritableMap payloadClone = Arguments.createMap();
52
+ payloadClone.merge(getPayload());
53
+ map.putMap("payload", payloadClone);
54
+ return map;
55
+ }
56
+
57
+ @Override
58
+ public boolean canCoalesce() {
59
+ // default behavior of com.facebook.react.uimanager.events.Event
60
+ return true;
61
+ }
62
+ }
@@ -0,0 +1,34 @@
1
+ package com.mapbox.rctmgl.events;
2
+
3
+ import android.view.View;
4
+
5
+ import com.facebook.react.bridge.WritableArray;
6
+ import com.facebook.react.bridge.WritableMap;
7
+ import com.mapbox.rctmgl.events.constants.EventKeys;
8
+
9
+ public class AndroidCallbackEvent extends AbstractEvent {
10
+ private final WritableMap mPayload;
11
+
12
+ public AndroidCallbackEvent(View view, String callbackID, WritableMap payload) {
13
+ super(view, callbackID);
14
+ mPayload = payload;
15
+ }
16
+
17
+ @Override
18
+ public String getKey() {
19
+ return EventKeys.MAP_ANDROID_CALLBACK;
20
+ }
21
+
22
+ @Override
23
+ public WritableMap getPayload() {
24
+ return mPayload;
25
+ }
26
+
27
+ @Override
28
+ public boolean canCoalesce() {
29
+ // Make sure EventDispatcher never merges EventKeys.MAP_ANDROID_CALLBACK events.
30
+ // These events are couples to unique callbacks references (promises) on the JS side which
31
+ // each expect response with their corresponding callbackID
32
+ return false;
33
+ }
34
+ }
@@ -0,0 +1,45 @@
1
+ package com.mapbox.rctmgl.events;
2
+
3
+ import android.util.Log;
4
+
5
+ import com.facebook.react.ReactApplication;
6
+ import com.facebook.react.bridge.JavaScriptModule;
7
+ import com.facebook.react.bridge.ReactApplicationContext;
8
+ import com.facebook.react.bridge.ReactContext;
9
+ import com.facebook.react.modules.core.RCTNativeAppEventEmitter;
10
+ import com.facebook.react.uimanager.events.RCTEventEmitter;
11
+
12
+
13
+ public class EventEmitter {
14
+ public static final String LOG_TAG = "EventEmitter";
15
+
16
+
17
+ private static ReactContext getCurrentReactContext(ReactApplicationContext reactApplicationContext) {
18
+ if (reactApplicationContext.getApplicationContext() instanceof ReactApplication) {
19
+ ReactApplication reactApplication = ((ReactApplication) reactApplicationContext
20
+ .getApplicationContext());
21
+
22
+ return reactApplication
23
+ .getReactNativeHost()
24
+ .getReactInstanceManager()
25
+ .getCurrentReactContext();
26
+ } else {
27
+ Log.d(LOG_TAG, "getApplicationContext() application doesn't implement ReactApplication");
28
+ return reactApplicationContext;
29
+ }
30
+ }
31
+
32
+
33
+ public static RCTNativeAppEventEmitter getModuleEmitter(ReactApplicationContext reactApplicationContext) {
34
+ RCTNativeAppEventEmitter emitter = null;
35
+
36
+ try {
37
+ emitter = getCurrentReactContext(reactApplicationContext)
38
+ .getJSModule(RCTNativeAppEventEmitter.class);
39
+ } catch (NullPointerException e) {
40
+ Log.d(LOG_TAG, e.getLocalizedMessage());
41
+ }
42
+
43
+ return emitter;
44
+ }
45
+ }