@maplibre/maplibre-react-native 10.0.0-alpha.9 → 10.0.0-beta.10

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 (1169) hide show
  1. package/LICENSE.md +2 -2
  2. package/README.md +51 -54
  3. package/android/build.gradle +109 -27
  4. package/android/gradle.properties +7 -0
  5. package/android/src/main/AndroidManifest.xml +6 -0
  6. package/android/src/main/AndroidManifestNew.xml +5 -0
  7. package/android/src/main/java/org/maplibre/reactnative/MLRNPackage.java +90 -0
  8. package/android/src/main/java/org/maplibre/reactnative/components/AbstractEvent.java +35 -0
  9. package/android/src/main/java/org/maplibre/reactnative/components/AbstractEventEmitter.java +84 -0
  10. package/android/src/main/java/org/maplibre/reactnative/components/AbstractMapFeature.java +15 -0
  11. package/android/src/main/java/org/maplibre/reactnative/components/annotation/MLRNCallout.java +11 -0
  12. package/android/src/main/java/org/maplibre/reactnative/components/annotation/MLRNCalloutManager.java +18 -0
  13. package/android/src/main/java/org/maplibre/reactnative/components/annotation/MLRNMarkerView.java +112 -0
  14. package/android/src/main/java/org/maplibre/reactnative/components/annotation/MLRNMarkerViewManager.java +45 -0
  15. package/android/src/main/java/org/maplibre/reactnative/components/annotation/MLRNPointAnnotation.java +361 -0
  16. package/android/src/main/java/org/maplibre/reactnative/components/annotation/MLRNPointAnnotationManager.java +84 -0
  17. package/android/src/main/java/org/maplibre/reactnative/components/annotation/MarkerView.java +23 -0
  18. package/android/src/main/java/org/maplibre/reactnative/components/annotation/MarkerViewManager.java +69 -0
  19. package/android/src/main/java/org/maplibre/reactnative/components/camera/CameraStop.java +245 -0
  20. package/android/src/main/java/org/maplibre/reactnative/components/camera/CameraUpdateItem.java +121 -0
  21. package/android/src/main/java/org/maplibre/reactnative/components/camera/CameraUpdateQueue.java +68 -0
  22. package/android/src/main/java/org/maplibre/reactnative/components/camera/MLRNCamera.java +530 -0
  23. package/android/src/main/java/org/maplibre/reactnative/components/camera/MLRNCameraManager.java +101 -0
  24. package/android/src/main/java/org/maplibre/reactnative/components/camera/constants/CameraMode.java +18 -0
  25. package/android/src/main/java/org/maplibre/reactnative/components/images/MLRNImages.java +234 -0
  26. package/android/src/main/java/org/maplibre/reactnative/components/images/MLRNImagesManager.java +103 -0
  27. package/android/src/main/java/org/maplibre/reactnative/components/location/LocationComponentManager.java +158 -0
  28. package/android/src/main/java/org/maplibre/reactnative/components/location/MLRNNativeUserLocation.java +76 -0
  29. package/android/src/main/java/org/maplibre/reactnative/components/location/MLRNNativeUserLocationManager.java +40 -0
  30. package/android/src/main/java/org/maplibre/reactnative/components/mapview/LayerSourceInfo.java +59 -0
  31. package/android/src/main/java/org/maplibre/reactnative/components/mapview/MLRNAndroidTextureMapView.java +13 -0
  32. package/android/src/main/java/org/maplibre/reactnative/components/mapview/MLRNAndroidTextureMapViewManager.java +27 -0
  33. package/android/src/main/java/org/maplibre/reactnative/components/mapview/MLRNMapView.java +1523 -0
  34. package/android/src/main/java/org/maplibre/reactnative/components/mapview/MLRNMapViewManager.java +349 -0
  35. package/android/src/main/java/org/maplibre/reactnative/components/mapview/helpers/CameraChangeTracker.java +37 -0
  36. package/android/src/main/java/org/maplibre/reactnative/components/styles/MLRNStyle.java +76 -0
  37. package/android/src/main/java/org/maplibre/reactnative/components/styles/MLRNStyleFactory.java +2285 -0
  38. package/android/src/main/java/org/maplibre/reactnative/components/styles/MLRNStyleFunctionParser.java +103 -0
  39. package/android/src/main/java/org/maplibre/reactnative/components/styles/MLRNStyleValue.java +208 -0
  40. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNBackgroundLayer.java +23 -0
  41. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNBackgroundLayerManager.java +60 -0
  42. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNCircleLayer.java +51 -0
  43. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNCircleLayerManager.java +73 -0
  44. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNFillExtrusionLayer.java +51 -0
  45. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNFillExtrusionLayerManager.java +76 -0
  46. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNFillLayer.java +51 -0
  47. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNFillLayerManager.java +76 -0
  48. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNHeatmapLayer.java +51 -0
  49. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNHeatmapLayerManager.java +73 -0
  50. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNLayer.java +283 -0
  51. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNLineLayer.java +51 -0
  52. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNLineLayerManager.java +75 -0
  53. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNRasterLayer.java +23 -0
  54. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNRasterLayerManager.java +60 -0
  55. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNSymbolLayer.java +51 -0
  56. package/android/src/main/java/org/maplibre/reactnative/components/styles/layers/MLRNSymbolLayerManager.java +71 -0
  57. package/android/src/main/java/org/maplibre/reactnative/components/styles/light/MLRNLight.java +61 -0
  58. package/android/src/main/java/org/maplibre/reactnative/components/styles/light/MLRNLightManager.java +25 -0
  59. package/android/src/main/java/org/maplibre/reactnative/components/styles/sources/MLRNImageSource.java +77 -0
  60. package/android/src/main/java/org/maplibre/reactnative/components/styles/sources/MLRNImageSourceManager.java +68 -0
  61. package/android/src/main/java/org/maplibre/reactnative/components/styles/sources/MLRNRasterSource.java +41 -0
  62. package/android/src/main/java/org/maplibre/reactnative/components/styles/sources/MLRNRasterSourceManager.java +39 -0
  63. package/android/src/main/java/org/maplibre/reactnative/components/styles/sources/MLRNShapeSource.java +246 -0
  64. package/android/src/main/java/org/maplibre/reactnative/components/styles/sources/MLRNShapeSourceManager.java +221 -0
  65. package/android/src/main/java/org/maplibre/reactnative/components/styles/sources/MLRNSource.java +240 -0
  66. package/android/src/main/java/org/maplibre/reactnative/components/styles/sources/MLRNTileSource.java +97 -0
  67. package/android/src/main/java/org/maplibre/reactnative/components/styles/sources/MLRNTileSourceManager.java +80 -0
  68. package/android/src/main/java/org/maplibre/reactnative/components/styles/sources/MLRNVectorSource.java +60 -0
  69. package/android/src/main/java/org/maplibre/reactnative/components/styles/sources/MLRNVectorSourceManager.java +80 -0
  70. package/android/src/main/java/org/maplibre/reactnative/events/AbstractEvent.java +62 -0
  71. package/android/src/main/java/org/maplibre/reactnative/events/AndroidCallbackEvent.java +34 -0
  72. package/android/src/main/java/org/maplibre/reactnative/events/EventEmitter.java +45 -0
  73. package/android/src/main/java/org/maplibre/reactnative/events/FeatureClickEvent.java +75 -0
  74. package/android/src/main/java/org/maplibre/reactnative/events/IEvent.java +14 -0
  75. package/android/src/main/java/org/maplibre/reactnative/events/ImageMissingEvent.java +42 -0
  76. package/android/src/main/java/org/maplibre/reactnative/events/LocationEvent.java +100 -0
  77. package/android/src/main/java/org/maplibre/reactnative/events/MapChangeEvent.java +43 -0
  78. package/android/src/main/java/org/maplibre/reactnative/events/MapClickEvent.java +47 -0
  79. package/android/src/main/java/org/maplibre/reactnative/events/MapUserTrackingModeEvent.java +32 -0
  80. package/android/src/main/java/org/maplibre/reactnative/events/OfflineEvent.java +25 -0
  81. package/android/src/main/java/org/maplibre/reactnative/events/PointAnnotationClickEvent.java +42 -0
  82. package/android/src/main/java/org/maplibre/reactnative/events/PointAnnotationDragEvent.java +51 -0
  83. package/android/src/main/java/org/maplibre/reactnative/events/constants/EventKeys.java +35 -0
  84. package/android/src/main/java/org/maplibre/reactnative/events/constants/EventTypes.java +47 -0
  85. package/android/src/main/java/org/maplibre/reactnative/http/CustomHeadersInterceptor.java +38 -0
  86. package/android/src/main/java/org/maplibre/reactnative/location/LocationManager.java +164 -0
  87. package/android/src/main/java/org/maplibre/reactnative/location/UserLocation.java +59 -0
  88. package/android/src/main/java/org/maplibre/reactnative/location/UserLocationVerticalAlignment.java +7 -0
  89. package/android/src/main/java/org/maplibre/reactnative/location/UserTrackingMode.java +59 -0
  90. package/android/src/main/java/org/maplibre/reactnative/location/UserTrackingState.java +15 -0
  91. package/android/src/main/java/org/maplibre/reactnative/modules/MLRNLocationModule.java +158 -0
  92. package/android/src/main/java/org/maplibre/reactnative/modules/MLRNLogging.java +140 -0
  93. package/android/src/main/java/org/maplibre/reactnative/modules/MLRNModule.java +199 -0
  94. package/android/src/main/java/org/maplibre/reactnative/modules/MLRNOfflineModule.java +588 -0
  95. package/android/src/main/java/org/maplibre/reactnative/modules/MLRNSnapshotModule.java +135 -0
  96. package/android/src/main/java/org/maplibre/reactnative/utils/BitmapUtils.java +125 -0
  97. package/android/src/main/java/org/maplibre/reactnative/utils/ClusterPropertyEntry.java +13 -0
  98. package/android/src/main/java/org/maplibre/reactnative/utils/ConvertUtils.java +253 -0
  99. package/android/src/main/java/org/maplibre/reactnative/utils/DownloadMapImageTask.java +155 -0
  100. package/android/src/main/java/org/maplibre/reactnative/utils/ExpressionParser.java +74 -0
  101. package/android/src/main/java/org/maplibre/reactnative/utils/GeoJSONUtils.java +285 -0
  102. package/android/src/main/java/org/maplibre/reactnative/utils/GeoViewport.java +37 -0
  103. package/android/src/main/java/org/maplibre/reactnative/utils/ImageEntry.java +25 -0
  104. package/android/src/main/java/org/maplibre/reactnative/utils/ResourceUtils.java +26 -0
  105. package/android/src/main/java/org/maplibre/reactnative/utils/SimpleEventCallback.java +26 -0
  106. package/android/src/main/java/org/maplibre/reactnative/utils/SphericalMercator.java +68 -0
  107. package/app.plugin.js +1 -1
  108. package/ios/MLRN/CameraMode.h +10 -0
  109. package/ios/MLRN/CameraMode.m +10 -0
  110. package/ios/MLRN/CameraStop.h +18 -0
  111. package/ios/MLRN/CameraStop.m +75 -0
  112. package/ios/MLRN/CameraUpdateItem.h +10 -0
  113. package/ios/MLRN/CameraUpdateItem.m +169 -0
  114. package/ios/MLRN/CameraUpdateQueue.h +13 -0
  115. package/ios/MLRN/CameraUpdateQueue.m +66 -0
  116. package/ios/MLRN/FilterParser.h +7 -0
  117. package/ios/MLRN/FilterParser.m +14 -0
  118. package/ios/MLRN/MLRN.h +5 -0
  119. package/ios/MLRN/MLRN.m +5 -0
  120. package/ios/MLRN/MLRNBackgroundLayer.h +5 -0
  121. package/ios/MLRN/MLRNBackgroundLayer.m +19 -0
  122. package/ios/MLRN/MLRNBackgroundLayerManager.h +5 -0
  123. package/ios/MLRN/MLRNBackgroundLayerManager.m +27 -0
  124. package/ios/MLRN/MLRNCallout.h +7 -0
  125. package/ios/MLRN/MLRNCallout.m +66 -0
  126. package/ios/MLRN/MLRNCalloutManager.h +5 -0
  127. package/ios/MLRN/MLRNCalloutManager.m +13 -0
  128. package/ios/MLRN/MLRNCamera.h +29 -0
  129. package/ios/MLRN/MLRNCamera.m +250 -0
  130. package/ios/MLRN/MLRNCameraManager.h +5 -0
  131. package/ios/MLRN/MLRNCameraManager.m +41 -0
  132. package/ios/MLRN/MLRNCircleLayer.h +5 -0
  133. package/ios/MLRN/MLRNCircleLayer.m +26 -0
  134. package/ios/MLRN/MLRNCircleLayerManager.h +5 -0
  135. package/ios/MLRN/MLRNCircleLayerManager.m +31 -0
  136. package/ios/MLRN/MLRNCustomHeaders.h +20 -0
  137. package/ios/MLRN/MLRNCustomHeaders.m +98 -0
  138. package/ios/MLRN/MLRNEvent.h +13 -0
  139. package/ios/MLRN/MLRNEvent.m +39 -0
  140. package/ios/MLRN/MLRNEventProtocol.h +8 -0
  141. package/ios/MLRN/MLRNEventTypes.h +42 -0
  142. package/ios/MLRN/MLRNEventTypes.m +41 -0
  143. package/ios/MLRN/MLRNFillExtrusionLayer.h +5 -0
  144. package/ios/MLRN/MLRNFillExtrusionLayer.m +24 -0
  145. package/ios/MLRN/MLRNFillExtrusionLayerManager.h +5 -0
  146. package/ios/MLRN/MLRNFillExtrusionLayerManager.m +31 -0
  147. package/ios/MLRN/MLRNFillLayer.h +5 -0
  148. package/ios/MLRN/MLRNFillLayer.m +26 -0
  149. package/ios/MLRN/MLRNFillLayerManager.h +5 -0
  150. package/ios/MLRN/MLRNFillLayerManager.m +29 -0
  151. package/ios/MLRN/MLRNHeatmapLayer.h +5 -0
  152. package/ios/MLRN/MLRNHeatmapLayer.m +24 -0
  153. package/ios/MLRN/MLRNHeatmapLayerManager.h +5 -0
  154. package/ios/MLRN/MLRNHeatmapLayerManager.m +31 -0
  155. package/ios/MLRN/MLRNImageQueue.h +11 -0
  156. package/ios/MLRN/MLRNImageQueue.m +49 -0
  157. package/ios/MLRN/MLRNImageQueueOperation.h +10 -0
  158. package/ios/MLRN/MLRNImageQueueOperation.m +130 -0
  159. package/ios/MLRN/MLRNImageSource.h +8 -0
  160. package/ios/MLRN/MLRNImageSource.m +52 -0
  161. package/ios/MLRN/MLRNImageSourceManager.h +5 -0
  162. package/ios/MLRN/MLRNImageSourceManager.m +17 -0
  163. package/ios/MLRN/MLRNImageUtils.h +9 -0
  164. package/ios/MLRN/MLRNImageUtils.m +23 -0
  165. package/ios/MLRN/MLRNImages.h +25 -0
  166. package/ios/MLRN/MLRNImages.m +126 -0
  167. package/ios/MLRN/MLRNImagesManager.h +5 -0
  168. package/ios/MLRN/MLRNImagesManager.m +21 -0
  169. package/ios/MLRN/MLRNLayer.h +44 -0
  170. package/ios/MLRN/MLRNLayer.m +228 -0
  171. package/ios/MLRN/MLRNLight.h +9 -0
  172. package/ios/MLRN/MLRNLight.m +38 -0
  173. package/ios/MLRN/MLRNLightManager.h +5 -0
  174. package/ios/MLRN/MLRNLightManager.m +15 -0
  175. package/ios/MLRN/MLRNLineLayer.h +5 -0
  176. package/ios/MLRN/MLRNLineLayer.m +25 -0
  177. package/ios/MLRN/MLRNLineLayerManager.h +5 -0
  178. package/ios/MLRN/MLRNLineLayerManager.m +32 -0
  179. package/ios/MLRN/MLRNLocation.h +11 -0
  180. package/ios/MLRN/MLRNLocation.m +24 -0
  181. package/ios/MLRN/MLRNLocationManager.h +22 -0
  182. package/ios/MLRN/MLRNLocationManager.m +172 -0
  183. package/ios/MLRN/MLRNLocationManagerDelegate.h +12 -0
  184. package/ios/MLRN/MLRNLocationModule.h +7 -0
  185. package/ios/MLRN/MLRNLocationModule.m +91 -0
  186. package/ios/MLRN/MLRNLogging.h +18 -0
  187. package/ios/MLRN/MLRNLogging.m +132 -0
  188. package/ios/MLRN/MLRNMapTouchEvent.h +17 -0
  189. package/ios/MLRN/MLRNMapTouchEvent.m +69 -0
  190. package/ios/MLRN/MLRNMapView.h +83 -0
  191. package/ios/MLRN/MLRNMapView.m +528 -0
  192. package/ios/MLRN/MLRNMapViewManager.h +9 -0
  193. package/ios/MLRN/MLRNMapViewManager.m +617 -0
  194. package/ios/MLRN/MLRNModule.h +5 -0
  195. package/ios/MLRN/MLRNModule.m +126 -0
  196. package/ios/MLRN/MLRNNativeUserLocation.h +11 -0
  197. package/ios/MLRN/MLRNNativeUserLocation.m +41 -0
  198. package/ios/MLRN/MLRNNativeUserLocationManager.h +5 -0
  199. package/ios/MLRN/MLRNNativeUserLocationManager.m +25 -0
  200. package/ios/MLRN/MLRNOfflineModule.h +11 -0
  201. package/ios/MLRN/MLRNOfflineModule.m +529 -0
  202. package/ios/MLRN/MLRNPointAnnotation.h +33 -0
  203. package/ios/MLRN/MLRNPointAnnotation.m +243 -0
  204. package/ios/MLRN/MLRNPointAnnotationManager.h +5 -0
  205. package/ios/MLRN/MLRNPointAnnotationManager.m +28 -0
  206. package/ios/MLRN/MLRNRasterLayer.h +5 -0
  207. package/ios/MLRN/MLRNRasterLayer.m +22 -0
  208. package/ios/MLRN/MLRNRasterLayerManager.h +5 -0
  209. package/ios/MLRN/MLRNRasterLayerManager.m +27 -0
  210. package/ios/MLRN/MLRNRasterSource.h +8 -0
  211. package/ios/MLRN/MLRNRasterSource.m +27 -0
  212. package/ios/MLRN/MLRNRasterSourceManager.h +5 -0
  213. package/ios/MLRN/MLRNRasterSourceManager.m +24 -0
  214. package/ios/MLRN/MLRNShapeSource.h +34 -0
  215. package/ios/MLRN/MLRNShapeSource.m +148 -0
  216. package/ios/MLRN/MLRNShapeSourceManager.h +6 -0
  217. package/ios/MLRN/MLRNShapeSourceManager.m +131 -0
  218. package/ios/MLRN/MLRNSnapshotModule.h +5 -0
  219. package/ios/MLRN/MLRNSnapshotModule.m +72 -0
  220. package/ios/MLRN/MLRNSource.h +27 -0
  221. package/ios/MLRN/MLRNSource.m +135 -0
  222. package/ios/MLRN/MLRNStyle.h +223 -0
  223. package/ios/MLRN/MLRNStyle.m +1682 -0
  224. package/ios/MLRN/MLRNStyleValue.h +19 -0
  225. package/ios/MLRN/MLRNStyleValue.m +159 -0
  226. package/ios/MLRN/MLRNSymbolLayer.h +5 -0
  227. package/ios/MLRN/MLRNSymbolLayer.m +25 -0
  228. package/ios/MLRN/MLRNSymbolLayerManager.h +5 -0
  229. package/ios/MLRN/MLRNSymbolLayerManager.m +31 -0
  230. package/ios/MLRN/MLRNTileSource.h +22 -0
  231. package/ios/MLRN/MLRNTileSource.m +31 -0
  232. package/ios/MLRN/MLRNUserLocation.h +15 -0
  233. package/ios/MLRN/MLRNUserLocation.m +38 -0
  234. package/ios/MLRN/MLRNUtils.h +23 -0
  235. package/ios/MLRN/MLRNUtils.m +210 -0
  236. package/ios/MLRN/MLRNVectorLayer.h +7 -0
  237. package/ios/MLRN/MLRNVectorLayer.m +51 -0
  238. package/ios/MLRN/MLRNVectorSource.h +8 -0
  239. package/ios/MLRN/MLRNVectorSource.m +20 -0
  240. package/ios/MLRN/MLRNVectorSourceManager.h +6 -0
  241. package/ios/MLRN/MLRNVectorSourceManager.m +71 -0
  242. package/ios/MLRN/ViewManager.h +8 -0
  243. package/ios/MLRN/ViewManager.m +55 -0
  244. package/ios/MLRN.xcodeproj/project.pbxproj +1 -0
  245. package/lib/commonjs/MLRNModule.js +29 -0
  246. package/lib/commonjs/MLRNModule.js.map +1 -0
  247. package/lib/commonjs/MapLibreRN.js +269 -0
  248. package/lib/commonjs/MapLibreRN.js.map +1 -0
  249. package/lib/commonjs/assets/png.d.js +2 -0
  250. package/lib/commonjs/assets/png.d.js.map +1 -0
  251. package/lib/commonjs/components/Annotation.js +109 -0
  252. package/lib/commonjs/components/Annotation.js.map +1 -0
  253. package/lib/commonjs/components/BackgroundLayer.js +33 -0
  254. package/lib/commonjs/components/BackgroundLayer.js.map +1 -0
  255. package/lib/commonjs/components/Callout.js +101 -0
  256. package/lib/commonjs/components/Callout.js.map +1 -0
  257. package/lib/commonjs/components/Camera.js +285 -0
  258. package/lib/commonjs/components/Camera.js.map +1 -0
  259. package/lib/commonjs/components/CircleLayer.js +37 -0
  260. package/lib/commonjs/components/CircleLayer.js.map +1 -0
  261. package/lib/commonjs/components/FillExtrusionLayer.js +36 -0
  262. package/lib/commonjs/components/FillExtrusionLayer.js.map +1 -0
  263. package/lib/commonjs/components/FillLayer.js +36 -0
  264. package/lib/commonjs/components/FillLayer.js.map +1 -0
  265. package/lib/commonjs/components/HeadingIndicator.js +28 -0
  266. package/lib/commonjs/components/HeadingIndicator.js.map +1 -0
  267. package/lib/commonjs/components/HeatmapLayer.js +35 -0
  268. package/lib/commonjs/components/HeatmapLayer.js.map +1 -0
  269. package/lib/commonjs/components/ImageSource.js +42 -0
  270. package/lib/commonjs/components/ImageSource.js.map +1 -0
  271. package/lib/commonjs/components/Images.js +76 -0
  272. package/lib/commonjs/components/Images.js.map +1 -0
  273. package/lib/commonjs/components/Light.js +32 -0
  274. package/lib/commonjs/components/Light.js.map +1 -0
  275. package/lib/commonjs/components/LineLayer.js +36 -0
  276. package/lib/commonjs/components/LineLayer.js.map +1 -0
  277. package/lib/commonjs/components/MapView.js +456 -0
  278. package/lib/commonjs/components/MapView.js.map +1 -0
  279. package/lib/commonjs/components/MarkerView.js +61 -0
  280. package/lib/commonjs/components/MarkerView.js.map +1 -0
  281. package/lib/commonjs/components/NativeUserLocation.js +17 -0
  282. package/lib/commonjs/components/NativeUserLocation.js.map +1 -0
  283. package/lib/commonjs/components/PointAnnotation.js +121 -0
  284. package/lib/commonjs/components/PointAnnotation.js.map +1 -0
  285. package/lib/commonjs/components/RasterLayer.js +32 -0
  286. package/lib/commonjs/components/RasterLayer.js.map +1 -0
  287. package/lib/commonjs/components/RasterSource.js +67 -0
  288. package/lib/commonjs/components/RasterSource.js.map +1 -0
  289. package/lib/commonjs/components/ShapeSource.js +171 -0
  290. package/lib/commonjs/components/ShapeSource.js.map +1 -0
  291. package/lib/commonjs/components/SymbolLayer.js +38 -0
  292. package/lib/commonjs/components/SymbolLayer.js.map +1 -0
  293. package/lib/commonjs/components/UserLocation.js +188 -0
  294. package/lib/commonjs/components/UserLocation.js.map +1 -0
  295. package/lib/commonjs/components/VectorSource.js +119 -0
  296. package/lib/commonjs/components/VectorSource.js.map +1 -0
  297. package/lib/commonjs/hooks/useAbstractLayer.js +53 -0
  298. package/lib/commonjs/hooks/useAbstractLayer.js.map +1 -0
  299. package/lib/commonjs/hooks/useAbstractSource.js +24 -0
  300. package/lib/commonjs/hooks/useAbstractSource.js.map +1 -0
  301. package/lib/commonjs/hooks/useNativeBridge.js +84 -0
  302. package/lib/commonjs/hooks/useNativeBridge.js.map +1 -0
  303. package/lib/commonjs/hooks/useNativeRef.js +14 -0
  304. package/lib/commonjs/hooks/useNativeRef.js.map +1 -0
  305. package/lib/commonjs/hooks/useOnce.js +16 -0
  306. package/lib/commonjs/hooks/useOnce.js.map +1 -0
  307. package/lib/commonjs/index.js +23 -0
  308. package/lib/commonjs/index.js.map +1 -0
  309. package/lib/commonjs/modules/location/locationManager.js +91 -0
  310. package/lib/commonjs/modules/location/locationManager.js.map +1 -0
  311. package/lib/commonjs/modules/offline/OfflineCreatePackOptions.js +37 -0
  312. package/lib/commonjs/modules/offline/OfflineCreatePackOptions.js.map +1 -0
  313. package/lib/commonjs/modules/offline/OfflinePack.js +40 -0
  314. package/lib/commonjs/modules/offline/OfflinePack.js.map +1 -0
  315. package/lib/commonjs/modules/offline/offlineManager.js +346 -0
  316. package/lib/commonjs/modules/offline/offlineManager.js.map +1 -0
  317. package/lib/commonjs/modules/snapshot/SnapshotOptions.js +58 -0
  318. package/lib/commonjs/modules/snapshot/SnapshotOptions.js.map +1 -0
  319. package/lib/commonjs/modules/snapshot/snapshotManager.js +66 -0
  320. package/lib/commonjs/modules/snapshot/snapshotManager.js.map +1 -0
  321. package/lib/commonjs/requestAndroidLocationPermissions.js +25 -0
  322. package/lib/commonjs/requestAndroidLocationPermissions.js.map +1 -0
  323. package/lib/commonjs/types/BaseProps.js +2 -0
  324. package/lib/commonjs/types/BaseProps.js.map +1 -0
  325. package/lib/commonjs/types/CameraMode.js +14 -0
  326. package/lib/commonjs/types/CameraMode.js.map +1 -0
  327. package/lib/commonjs/types/MapLibreRNEvent.js +6 -0
  328. package/lib/commonjs/types/MapLibreRNEvent.js.map +1 -0
  329. package/lib/commonjs/types/MapLibreRNStyles.js +6 -0
  330. package/lib/commonjs/types/MapLibreRNStyles.js.map +1 -0
  331. package/lib/commonjs/types/OnPressEvent.js +2 -0
  332. package/lib/commonjs/types/OnPressEvent.js.map +1 -0
  333. package/lib/commonjs/types/StyleURL.js +11 -0
  334. package/lib/commonjs/types/StyleURL.js.map +1 -0
  335. package/lib/commonjs/utils/BridgeValue.js +59 -0
  336. package/lib/commonjs/utils/BridgeValue.js.map +1 -0
  337. package/lib/commonjs/utils/Logger.js +116 -0
  338. package/lib/commonjs/utils/Logger.js.map +1 -0
  339. package/lib/commonjs/utils/StyleValue.js +39 -0
  340. package/lib/commonjs/utils/StyleValue.js.map +1 -0
  341. package/lib/commonjs/utils/animated/AbstractAnimatedCoordinates.js +95 -0
  342. package/lib/commonjs/utils/animated/AbstractAnimatedCoordinates.js.map +1 -0
  343. package/lib/commonjs/utils/animated/Animated.js +47 -0
  344. package/lib/commonjs/utils/animated/Animated.js.map +1 -0
  345. package/lib/commonjs/utils/animated/AnimatedCoordinatesArray.js +92 -0
  346. package/lib/commonjs/utils/animated/AnimatedCoordinatesArray.js.map +1 -0
  347. package/lib/commonjs/utils/animated/AnimatedExtractCoordinateFromArray.js +40 -0
  348. package/lib/commonjs/utils/animated/AnimatedExtractCoordinateFromArray.js.map +1 -0
  349. package/lib/commonjs/utils/animated/AnimatedPoint.js +111 -0
  350. package/lib/commonjs/utils/animated/AnimatedPoint.js.map +1 -0
  351. package/lib/commonjs/utils/animated/AnimatedRouteCoordinatesArray.js +137 -0
  352. package/lib/commonjs/utils/animated/AnimatedRouteCoordinatesArray.js.map +1 -0
  353. package/lib/commonjs/utils/animated/AnimatedShape.js +75 -0
  354. package/lib/commonjs/utils/animated/AnimatedShape.js.map +1 -0
  355. package/lib/commonjs/utils/filterUtils.js +13 -0
  356. package/lib/commonjs/utils/filterUtils.js.map +1 -0
  357. package/lib/commonjs/utils/getStylePropertyType.js +252 -0
  358. package/lib/commonjs/utils/getStylePropertyType.js.map +1 -0
  359. package/lib/commonjs/utils/index.js +84 -0
  360. package/lib/commonjs/utils/index.js.map +1 -0
  361. package/lib/commonjs/utils/makeNativeBounds.js +11 -0
  362. package/lib/commonjs/utils/makeNativeBounds.js.map +1 -0
  363. package/lib/module/MLRNModule.js +16 -0
  364. package/lib/module/MLRNModule.js.map +1 -0
  365. package/lib/module/MapLibreRN.js +33 -0
  366. package/lib/module/MapLibreRN.js.map +1 -0
  367. package/lib/module/assets/heading.png +0 -0
  368. package/lib/module/assets/heading@2x.png +0 -0
  369. package/lib/module/assets/heading@3x.png +0 -0
  370. package/lib/module/assets/png.d.js +2 -0
  371. package/lib/module/assets/png.d.js.map +1 -0
  372. package/lib/module/components/Annotation.js +104 -0
  373. package/lib/module/components/Annotation.js.map +1 -0
  374. package/lib/module/components/BackgroundLayer.js +28 -0
  375. package/lib/module/components/BackgroundLayer.js.map +1 -0
  376. package/lib/module/components/Callout.js +97 -0
  377. package/lib/module/components/Callout.js.map +1 -0
  378. package/lib/module/components/Camera.js +280 -0
  379. package/lib/module/components/Camera.js.map +1 -0
  380. package/lib/module/components/CircleLayer.js +32 -0
  381. package/lib/module/components/CircleLayer.js.map +1 -0
  382. package/lib/module/components/FillExtrusionLayer.js +31 -0
  383. package/lib/module/components/FillExtrusionLayer.js.map +1 -0
  384. package/lib/module/components/FillLayer.js +31 -0
  385. package/lib/module/components/FillLayer.js.map +1 -0
  386. package/lib/module/components/HeadingIndicator.js +23 -0
  387. package/lib/module/components/HeadingIndicator.js.map +1 -0
  388. package/lib/module/components/HeatmapLayer.js +30 -0
  389. package/lib/module/components/HeatmapLayer.js.map +1 -0
  390. package/lib/module/components/ImageSource.js +37 -0
  391. package/lib/module/components/ImageSource.js.map +1 -0
  392. package/lib/module/components/Images.js +72 -0
  393. package/lib/module/components/Images.js.map +1 -0
  394. package/lib/module/components/Light.js +27 -0
  395. package/lib/module/components/Light.js.map +1 -0
  396. package/lib/module/components/LineLayer.js +31 -0
  397. package/lib/module/components/LineLayer.js.map +1 -0
  398. package/lib/module/components/MapView.js +451 -0
  399. package/lib/module/components/MapView.js.map +1 -0
  400. package/lib/module/components/MarkerView.js +56 -0
  401. package/lib/module/components/MarkerView.js.map +1 -0
  402. package/lib/module/components/NativeUserLocation.js +13 -0
  403. package/lib/module/components/NativeUserLocation.js.map +1 -0
  404. package/lib/module/components/PointAnnotation.js +116 -0
  405. package/lib/module/components/PointAnnotation.js.map +1 -0
  406. package/lib/module/components/RasterLayer.js +27 -0
  407. package/lib/module/components/RasterLayer.js.map +1 -0
  408. package/lib/module/components/RasterSource.js +62 -0
  409. package/lib/module/components/RasterSource.js.map +1 -0
  410. package/lib/module/components/ShapeSource.js +166 -0
  411. package/lib/module/components/ShapeSource.js.map +1 -0
  412. package/lib/module/components/SymbolLayer.js +33 -0
  413. package/lib/module/components/SymbolLayer.js.map +1 -0
  414. package/lib/module/components/UserLocation.js +182 -0
  415. package/lib/module/components/UserLocation.js.map +1 -0
  416. package/lib/module/components/VectorSource.js +114 -0
  417. package/lib/module/components/VectorSource.js.map +1 -0
  418. package/lib/module/hooks/useAbstractLayer.js +49 -0
  419. package/lib/module/hooks/useAbstractLayer.js.map +1 -0
  420. package/lib/module/hooks/useAbstractSource.js +20 -0
  421. package/lib/module/hooks/useAbstractSource.js.map +1 -0
  422. package/lib/module/hooks/useNativeBridge.js +80 -0
  423. package/lib/module/hooks/useNativeBridge.js.map +1 -0
  424. package/lib/module/hooks/useNativeRef.js +10 -0
  425. package/lib/module/hooks/useNativeRef.js.map +1 -0
  426. package/lib/module/hooks/useOnce.js +12 -0
  427. package/lib/module/hooks/useOnce.js.map +1 -0
  428. package/lib/module/index.js +6 -0
  429. package/lib/module/index.js.map +1 -0
  430. package/lib/module/modules/location/locationManager.js +87 -0
  431. package/lib/module/modules/location/locationManager.js.map +1 -0
  432. package/lib/module/modules/offline/OfflineCreatePackOptions.js +33 -0
  433. package/lib/module/modules/offline/OfflineCreatePackOptions.js.map +1 -0
  434. package/lib/module/modules/offline/OfflinePack.js +36 -0
  435. package/lib/module/modules/offline/OfflinePack.js.map +1 -0
  436. package/lib/module/modules/offline/offlineManager.js +341 -0
  437. package/lib/module/modules/offline/offlineManager.js.map +1 -0
  438. package/lib/module/modules/snapshot/SnapshotOptions.js +53 -0
  439. package/lib/module/modules/snapshot/SnapshotOptions.js.map +1 -0
  440. package/lib/module/modules/snapshot/snapshotManager.js +61 -0
  441. package/lib/module/modules/snapshot/snapshotManager.js.map +1 -0
  442. package/lib/module/requestAndroidLocationPermissions.js +21 -0
  443. package/lib/module/requestAndroidLocationPermissions.js.map +1 -0
  444. package/lib/module/types/BaseProps.js +2 -0
  445. package/lib/module/types/BaseProps.js.map +1 -0
  446. package/lib/module/types/CameraMode.js +10 -0
  447. package/lib/module/types/CameraMode.js.map +1 -0
  448. package/lib/module/types/MapLibreRNEvent.js +4 -0
  449. package/lib/module/types/MapLibreRNEvent.js.map +1 -0
  450. package/lib/module/types/MapLibreRNStyles.js +4 -0
  451. package/lib/module/types/MapLibreRNStyles.js.map +1 -0
  452. package/lib/module/types/OnPressEvent.js +2 -0
  453. package/lib/module/types/OnPressEvent.js.map +1 -0
  454. package/lib/module/types/StyleURL.js +7 -0
  455. package/lib/module/types/StyleURL.js.map +1 -0
  456. package/lib/module/utils/BridgeValue.js +54 -0
  457. package/lib/module/utils/BridgeValue.js.map +1 -0
  458. package/lib/module/utils/Logger.js +112 -0
  459. package/lib/module/utils/Logger.js.map +1 -0
  460. package/lib/module/utils/StyleValue.js +34 -0
  461. package/lib/module/utils/StyleValue.js.map +1 -0
  462. package/lib/module/utils/animated/AbstractAnimatedCoordinates.js +92 -0
  463. package/lib/module/utils/animated/AbstractAnimatedCoordinates.js.map +1 -0
  464. package/lib/module/utils/animated/Animated.js +42 -0
  465. package/lib/module/utils/animated/Animated.js.map +1 -0
  466. package/lib/module/utils/animated/AnimatedCoordinatesArray.js +87 -0
  467. package/lib/module/utils/animated/AnimatedCoordinatesArray.js.map +1 -0
  468. package/lib/module/utils/animated/AnimatedExtractCoordinateFromArray.js +36 -0
  469. package/lib/module/utils/animated/AnimatedExtractCoordinateFromArray.js.map +1 -0
  470. package/lib/module/utils/animated/AnimatedPoint.js +107 -0
  471. package/lib/module/utils/animated/AnimatedPoint.js.map +1 -0
  472. package/lib/module/utils/animated/AnimatedRouteCoordinatesArray.js +131 -0
  473. package/lib/module/utils/animated/AnimatedRouteCoordinatesArray.js.map +1 -0
  474. package/lib/module/utils/animated/AnimatedShape.js +71 -0
  475. package/lib/module/utils/animated/AnimatedShape.js.map +1 -0
  476. package/lib/module/utils/filterUtils.js +9 -0
  477. package/lib/module/utils/filterUtils.js.map +1 -0
  478. package/lib/module/utils/getStylePropertyType.js +248 -0
  479. package/lib/module/utils/getStylePropertyType.js.map +1 -0
  480. package/lib/module/utils/index.js +69 -0
  481. package/lib/module/utils/index.js.map +1 -0
  482. package/lib/module/utils/makeNativeBounds.js +7 -0
  483. package/lib/module/utils/makeNativeBounds.js.map +1 -0
  484. package/lib/typescript/commonjs/jest.config.d.ts +2 -0
  485. package/lib/typescript/commonjs/jest.config.d.ts.map +1 -0
  486. package/lib/typescript/commonjs/package.json +1 -0
  487. package/lib/typescript/commonjs/src/MLRNModule.d.ts +17 -0
  488. package/lib/typescript/commonjs/src/MLRNModule.d.ts.map +1 -0
  489. package/lib/typescript/commonjs/src/MapLibreRN.d.ts +39 -0
  490. package/lib/typescript/commonjs/src/MapLibreRN.d.ts.map +1 -0
  491. package/lib/typescript/commonjs/src/components/Annotation.d.ts +21 -0
  492. package/lib/typescript/commonjs/src/components/Annotation.d.ts.map +1 -0
  493. package/lib/typescript/commonjs/src/components/BackgroundLayer.d.ts +14 -0
  494. package/lib/typescript/commonjs/src/components/BackgroundLayer.d.ts.map +1 -0
  495. package/lib/typescript/commonjs/src/components/Callout.d.ts +35 -0
  496. package/lib/typescript/commonjs/src/components/Callout.d.ts.map +1 -0
  497. package/lib/typescript/commonjs/src/components/Camera.d.ts +134 -0
  498. package/lib/typescript/commonjs/src/components/Camera.d.ts.map +1 -0
  499. package/lib/typescript/commonjs/src/components/CircleLayer.d.ts +17 -0
  500. package/lib/typescript/commonjs/src/components/CircleLayer.d.ts.map +1 -0
  501. package/lib/typescript/commonjs/src/components/FillExtrusionLayer.d.ts +17 -0
  502. package/lib/typescript/commonjs/src/components/FillExtrusionLayer.d.ts.map +1 -0
  503. package/lib/typescript/commonjs/src/components/FillLayer.d.ts +17 -0
  504. package/lib/typescript/commonjs/src/components/FillLayer.d.ts.map +1 -0
  505. package/lib/typescript/commonjs/src/components/HeadingIndicator.d.ts +8 -0
  506. package/lib/typescript/commonjs/src/components/HeadingIndicator.d.ts.map +1 -0
  507. package/lib/typescript/commonjs/src/components/HeatmapLayer.d.ts +17 -0
  508. package/lib/typescript/commonjs/src/components/HeatmapLayer.d.ts.map +1 -0
  509. package/lib/typescript/commonjs/src/components/ImageSource.d.ts +31 -0
  510. package/lib/typescript/commonjs/src/components/ImageSource.d.ts.map +1 -0
  511. package/lib/typescript/commonjs/src/components/Images.d.ts +33 -0
  512. package/lib/typescript/commonjs/src/components/Images.d.ts.map +1 -0
  513. package/lib/typescript/commonjs/src/components/Light.d.ts +17 -0
  514. package/lib/typescript/commonjs/src/components/Light.d.ts.map +1 -0
  515. package/lib/typescript/commonjs/src/components/LineLayer.d.ts +17 -0
  516. package/lib/typescript/commonjs/src/components/LineLayer.d.ts.map +1 -0
  517. package/lib/typescript/commonjs/src/components/MapView.d.ts +234 -0
  518. package/lib/typescript/commonjs/src/components/MapView.d.ts.map +1 -0
  519. package/lib/typescript/commonjs/src/components/MarkerView.d.ts +44 -0
  520. package/lib/typescript/commonjs/src/components/MarkerView.d.ts.map +1 -0
  521. package/lib/typescript/commonjs/src/components/NativeUserLocation.d.ts +26 -0
  522. package/lib/typescript/commonjs/src/components/NativeUserLocation.d.ts.map +1 -0
  523. package/lib/typescript/commonjs/src/components/PointAnnotation.d.ts +91 -0
  524. package/lib/typescript/commonjs/src/components/PointAnnotation.d.ts.map +1 -0
  525. package/lib/typescript/commonjs/src/components/RasterLayer.d.ts +14 -0
  526. package/lib/typescript/commonjs/src/components/RasterLayer.d.ts.map +1 -0
  527. package/lib/typescript/commonjs/src/components/RasterSource.d.ts +53 -0
  528. package/lib/typescript/commonjs/src/components/RasterSource.d.ts.map +1 -0
  529. package/lib/typescript/commonjs/src/components/ShapeSource.d.ts +123 -0
  530. package/lib/typescript/commonjs/src/components/ShapeSource.d.ts.map +1 -0
  531. package/lib/typescript/commonjs/src/components/SymbolLayer.d.ts +16 -0
  532. package/lib/typescript/commonjs/src/components/SymbolLayer.d.ts.map +1 -0
  533. package/lib/typescript/commonjs/src/components/UserLocation.d.ts +70 -0
  534. package/lib/typescript/commonjs/src/components/UserLocation.d.ts.map +1 -0
  535. package/lib/typescript/commonjs/src/components/VectorSource.d.ts +70 -0
  536. package/lib/typescript/commonjs/src/components/VectorSource.d.ts.map +1 -0
  537. package/lib/typescript/commonjs/src/hooks/useAbstractLayer.d.ts +62 -0
  538. package/lib/typescript/commonjs/src/hooks/useAbstractLayer.d.ts.map +1 -0
  539. package/lib/typescript/commonjs/src/hooks/useAbstractSource.d.ts +7 -0
  540. package/lib/typescript/commonjs/src/hooks/useAbstractSource.d.ts.map +1 -0
  541. package/lib/typescript/commonjs/src/hooks/useNativeBridge.d.ts +21 -0
  542. package/lib/typescript/commonjs/src/hooks/useNativeBridge.d.ts.map +1 -0
  543. package/lib/typescript/commonjs/src/hooks/useNativeRef.d.ts +8 -0
  544. package/lib/typescript/commonjs/src/hooks/useNativeRef.d.ts.map +1 -0
  545. package/lib/typescript/commonjs/src/hooks/useOnce.d.ts +3 -0
  546. package/lib/typescript/commonjs/src/hooks/useOnce.d.ts.map +1 -0
  547. package/lib/typescript/commonjs/src/index.d.ts +4 -0
  548. package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
  549. package/lib/typescript/commonjs/src/modules/location/locationManager.d.ts +64 -0
  550. package/lib/typescript/commonjs/src/modules/location/locationManager.d.ts.map +1 -0
  551. package/lib/typescript/commonjs/src/modules/offline/OfflineCreatePackOptions.d.ts +21 -0
  552. package/lib/typescript/commonjs/src/modules/offline/OfflineCreatePackOptions.d.ts.map +1 -0
  553. package/lib/typescript/commonjs/src/modules/offline/OfflinePack.d.ts +24 -0
  554. package/lib/typescript/commonjs/src/modules/offline/OfflinePack.d.ts.map +1 -0
  555. package/lib/typescript/commonjs/src/modules/offline/offlineManager.d.ts +200 -0
  556. package/lib/typescript/commonjs/src/modules/offline/offlineManager.d.ts.map +1 -0
  557. package/lib/typescript/commonjs/src/modules/snapshot/SnapshotOptions.d.ts +42 -0
  558. package/lib/typescript/commonjs/src/modules/snapshot/SnapshotOptions.d.ts.map +1 -0
  559. package/lib/typescript/commonjs/src/modules/snapshot/snapshotManager.d.ts +52 -0
  560. package/lib/typescript/commonjs/src/modules/snapshot/snapshotManager.d.ts.map +1 -0
  561. package/lib/typescript/commonjs/src/requestAndroidLocationPermissions.d.ts +2 -0
  562. package/lib/typescript/commonjs/src/requestAndroidLocationPermissions.d.ts.map +1 -0
  563. package/lib/typescript/commonjs/src/types/BaseProps.d.ts +4 -0
  564. package/lib/typescript/commonjs/src/types/BaseProps.d.ts.map +1 -0
  565. package/lib/typescript/commonjs/src/types/CameraMode.d.ts +7 -0
  566. package/lib/typescript/commonjs/src/types/CameraMode.d.ts.map +1 -0
  567. package/lib/typescript/commonjs/src/types/MapLibreRNEvent.d.ts +6 -0
  568. package/lib/typescript/commonjs/src/types/MapLibreRNEvent.d.ts.map +1 -0
  569. package/lib/typescript/commonjs/src/types/MapLibreRNStyles.d.ts +960 -0
  570. package/lib/typescript/commonjs/src/types/MapLibreRNStyles.d.ts.map +1 -0
  571. package/lib/typescript/commonjs/src/types/OnPressEvent.d.ts +12 -0
  572. package/lib/typescript/commonjs/src/types/OnPressEvent.d.ts.map +1 -0
  573. package/lib/typescript/commonjs/src/types/StyleURL.d.ts +4 -0
  574. package/lib/typescript/commonjs/src/types/StyleURL.d.ts.map +1 -0
  575. package/lib/typescript/commonjs/src/utils/BridgeValue.d.ts +29 -0
  576. package/lib/typescript/commonjs/src/utils/BridgeValue.d.ts.map +1 -0
  577. package/lib/typescript/commonjs/src/utils/Logger.d.ts +52 -0
  578. package/lib/typescript/commonjs/src/utils/Logger.d.ts.map +1 -0
  579. package/lib/typescript/commonjs/src/utils/StyleValue.d.ts +10 -0
  580. package/lib/typescript/commonjs/src/utils/StyleValue.d.ts.map +1 -0
  581. package/lib/typescript/commonjs/src/utils/animated/AbstractAnimatedCoordinates.d.ts +37 -0
  582. package/lib/typescript/commonjs/src/utils/animated/AbstractAnimatedCoordinates.d.ts.map +1 -0
  583. package/lib/typescript/commonjs/src/utils/animated/Animated.d.ts +33 -0
  584. package/lib/typescript/commonjs/src/utils/animated/Animated.d.ts.map +1 -0
  585. package/lib/typescript/commonjs/src/utils/animated/AnimatedCoordinatesArray.d.ts +40 -0
  586. package/lib/typescript/commonjs/src/utils/animated/AnimatedCoordinatesArray.d.ts.map +1 -0
  587. package/lib/typescript/commonjs/src/utils/animated/AnimatedExtractCoordinateFromArray.d.ts +12 -0
  588. package/lib/typescript/commonjs/src/utils/animated/AnimatedExtractCoordinateFromArray.d.ts.map +1 -0
  589. package/lib/typescript/commonjs/src/utils/animated/AnimatedPoint.d.ts +32 -0
  590. package/lib/typescript/commonjs/src/utils/animated/AnimatedPoint.d.ts.map +1 -0
  591. package/lib/typescript/commonjs/src/utils/animated/AnimatedRouteCoordinatesArray.d.ts +54 -0
  592. package/lib/typescript/commonjs/src/utils/animated/AnimatedRouteCoordinatesArray.d.ts.map +1 -0
  593. package/lib/typescript/commonjs/src/utils/animated/AnimatedShape.d.ts +28 -0
  594. package/lib/typescript/commonjs/src/utils/animated/AnimatedShape.d.ts.map +1 -0
  595. package/lib/typescript/commonjs/src/utils/filterUtils.d.ts +3 -0
  596. package/lib/typescript/commonjs/src/utils/filterUtils.d.ts.map +1 -0
  597. package/lib/typescript/commonjs/src/utils/getStylePropertyType.d.ts +35 -0
  598. package/lib/typescript/commonjs/src/utils/getStylePropertyType.d.ts.map +1 -0
  599. package/lib/typescript/commonjs/src/utils/index.d.ts +20 -0
  600. package/lib/typescript/commonjs/src/utils/index.d.ts.map +1 -0
  601. package/lib/typescript/commonjs/src/utils/makeNativeBounds.d.ts +2 -0
  602. package/lib/typescript/commonjs/src/utils/makeNativeBounds.d.ts.map +1 -0
  603. package/lib/typescript/module/jest.config.d.ts +2 -0
  604. package/lib/typescript/module/jest.config.d.ts.map +1 -0
  605. package/lib/typescript/module/package.json +1 -0
  606. package/lib/typescript/module/src/MLRNModule.d.ts +17 -0
  607. package/lib/typescript/module/src/MLRNModule.d.ts.map +1 -0
  608. package/lib/typescript/module/src/MapLibreRN.d.ts +39 -0
  609. package/lib/typescript/module/src/MapLibreRN.d.ts.map +1 -0
  610. package/lib/typescript/module/src/components/Annotation.d.ts +21 -0
  611. package/lib/typescript/module/src/components/Annotation.d.ts.map +1 -0
  612. package/lib/typescript/module/src/components/BackgroundLayer.d.ts +14 -0
  613. package/lib/typescript/module/src/components/BackgroundLayer.d.ts.map +1 -0
  614. package/lib/typescript/module/src/components/Callout.d.ts +35 -0
  615. package/lib/typescript/module/src/components/Callout.d.ts.map +1 -0
  616. package/lib/typescript/module/src/components/Camera.d.ts +134 -0
  617. package/lib/typescript/module/src/components/Camera.d.ts.map +1 -0
  618. package/lib/typescript/module/src/components/CircleLayer.d.ts +17 -0
  619. package/lib/typescript/module/src/components/CircleLayer.d.ts.map +1 -0
  620. package/lib/typescript/module/src/components/FillExtrusionLayer.d.ts +17 -0
  621. package/lib/typescript/module/src/components/FillExtrusionLayer.d.ts.map +1 -0
  622. package/lib/typescript/module/src/components/FillLayer.d.ts +17 -0
  623. package/lib/typescript/module/src/components/FillLayer.d.ts.map +1 -0
  624. package/lib/typescript/module/src/components/HeadingIndicator.d.ts +8 -0
  625. package/lib/typescript/module/src/components/HeadingIndicator.d.ts.map +1 -0
  626. package/lib/typescript/module/src/components/HeatmapLayer.d.ts +17 -0
  627. package/lib/typescript/module/src/components/HeatmapLayer.d.ts.map +1 -0
  628. package/lib/typescript/module/src/components/ImageSource.d.ts +31 -0
  629. package/lib/typescript/module/src/components/ImageSource.d.ts.map +1 -0
  630. package/lib/typescript/module/src/components/Images.d.ts +33 -0
  631. package/lib/typescript/module/src/components/Images.d.ts.map +1 -0
  632. package/lib/typescript/module/src/components/Light.d.ts +17 -0
  633. package/lib/typescript/module/src/components/Light.d.ts.map +1 -0
  634. package/lib/typescript/module/src/components/LineLayer.d.ts +17 -0
  635. package/lib/typescript/module/src/components/LineLayer.d.ts.map +1 -0
  636. package/lib/typescript/module/src/components/MapView.d.ts +234 -0
  637. package/lib/typescript/module/src/components/MapView.d.ts.map +1 -0
  638. package/lib/typescript/module/src/components/MarkerView.d.ts +44 -0
  639. package/lib/typescript/module/src/components/MarkerView.d.ts.map +1 -0
  640. package/lib/typescript/module/src/components/NativeUserLocation.d.ts +26 -0
  641. package/lib/typescript/module/src/components/NativeUserLocation.d.ts.map +1 -0
  642. package/lib/typescript/module/src/components/PointAnnotation.d.ts +91 -0
  643. package/lib/typescript/module/src/components/PointAnnotation.d.ts.map +1 -0
  644. package/lib/typescript/module/src/components/RasterLayer.d.ts +14 -0
  645. package/lib/typescript/module/src/components/RasterLayer.d.ts.map +1 -0
  646. package/lib/typescript/module/src/components/RasterSource.d.ts +53 -0
  647. package/lib/typescript/module/src/components/RasterSource.d.ts.map +1 -0
  648. package/lib/typescript/module/src/components/ShapeSource.d.ts +123 -0
  649. package/lib/typescript/module/src/components/ShapeSource.d.ts.map +1 -0
  650. package/lib/typescript/module/src/components/SymbolLayer.d.ts +16 -0
  651. package/lib/typescript/module/src/components/SymbolLayer.d.ts.map +1 -0
  652. package/lib/typescript/module/src/components/UserLocation.d.ts +70 -0
  653. package/lib/typescript/module/src/components/UserLocation.d.ts.map +1 -0
  654. package/lib/typescript/module/src/components/VectorSource.d.ts +70 -0
  655. package/lib/typescript/module/src/components/VectorSource.d.ts.map +1 -0
  656. package/lib/typescript/module/src/hooks/useAbstractLayer.d.ts +62 -0
  657. package/lib/typescript/module/src/hooks/useAbstractLayer.d.ts.map +1 -0
  658. package/lib/typescript/module/src/hooks/useAbstractSource.d.ts +7 -0
  659. package/lib/typescript/module/src/hooks/useAbstractSource.d.ts.map +1 -0
  660. package/lib/typescript/module/src/hooks/useNativeBridge.d.ts +21 -0
  661. package/lib/typescript/module/src/hooks/useNativeBridge.d.ts.map +1 -0
  662. package/lib/typescript/module/src/hooks/useNativeRef.d.ts +8 -0
  663. package/lib/typescript/module/src/hooks/useNativeRef.d.ts.map +1 -0
  664. package/lib/typescript/module/src/hooks/useOnce.d.ts +3 -0
  665. package/lib/typescript/module/src/hooks/useOnce.d.ts.map +1 -0
  666. package/lib/typescript/module/src/index.d.ts +4 -0
  667. package/lib/typescript/module/src/index.d.ts.map +1 -0
  668. package/lib/typescript/module/src/modules/location/locationManager.d.ts +64 -0
  669. package/lib/typescript/module/src/modules/location/locationManager.d.ts.map +1 -0
  670. package/lib/typescript/module/src/modules/offline/OfflineCreatePackOptions.d.ts +21 -0
  671. package/lib/typescript/module/src/modules/offline/OfflineCreatePackOptions.d.ts.map +1 -0
  672. package/lib/typescript/module/src/modules/offline/OfflinePack.d.ts +24 -0
  673. package/lib/typescript/module/src/modules/offline/OfflinePack.d.ts.map +1 -0
  674. package/lib/typescript/module/src/modules/offline/offlineManager.d.ts +200 -0
  675. package/lib/typescript/module/src/modules/offline/offlineManager.d.ts.map +1 -0
  676. package/lib/typescript/module/src/modules/snapshot/SnapshotOptions.d.ts +42 -0
  677. package/lib/typescript/module/src/modules/snapshot/SnapshotOptions.d.ts.map +1 -0
  678. package/lib/typescript/module/src/modules/snapshot/snapshotManager.d.ts +52 -0
  679. package/lib/typescript/module/src/modules/snapshot/snapshotManager.d.ts.map +1 -0
  680. package/lib/typescript/module/src/requestAndroidLocationPermissions.d.ts +2 -0
  681. package/lib/typescript/module/src/requestAndroidLocationPermissions.d.ts.map +1 -0
  682. package/lib/typescript/module/src/types/BaseProps.d.ts +4 -0
  683. package/lib/typescript/module/src/types/BaseProps.d.ts.map +1 -0
  684. package/lib/typescript/module/src/types/CameraMode.d.ts +7 -0
  685. package/lib/typescript/module/src/types/CameraMode.d.ts.map +1 -0
  686. package/lib/typescript/module/src/types/MapLibreRNEvent.d.ts +6 -0
  687. package/lib/typescript/module/src/types/MapLibreRNEvent.d.ts.map +1 -0
  688. package/lib/typescript/module/src/types/MapLibreRNStyles.d.ts +960 -0
  689. package/lib/typescript/module/src/types/MapLibreRNStyles.d.ts.map +1 -0
  690. package/lib/typescript/module/src/types/OnPressEvent.d.ts +12 -0
  691. package/lib/typescript/module/src/types/OnPressEvent.d.ts.map +1 -0
  692. package/lib/typescript/module/src/types/StyleURL.d.ts +4 -0
  693. package/lib/typescript/module/src/types/StyleURL.d.ts.map +1 -0
  694. package/lib/typescript/module/src/utils/BridgeValue.d.ts +29 -0
  695. package/lib/typescript/module/src/utils/BridgeValue.d.ts.map +1 -0
  696. package/lib/typescript/module/src/utils/Logger.d.ts +52 -0
  697. package/lib/typescript/module/src/utils/Logger.d.ts.map +1 -0
  698. package/lib/typescript/module/src/utils/StyleValue.d.ts +10 -0
  699. package/lib/typescript/module/src/utils/StyleValue.d.ts.map +1 -0
  700. package/lib/typescript/module/src/utils/animated/AbstractAnimatedCoordinates.d.ts +37 -0
  701. package/lib/typescript/module/src/utils/animated/AbstractAnimatedCoordinates.d.ts.map +1 -0
  702. package/lib/typescript/module/src/utils/animated/Animated.d.ts +33 -0
  703. package/lib/typescript/module/src/utils/animated/Animated.d.ts.map +1 -0
  704. package/lib/typescript/module/src/utils/animated/AnimatedCoordinatesArray.d.ts +40 -0
  705. package/lib/typescript/module/src/utils/animated/AnimatedCoordinatesArray.d.ts.map +1 -0
  706. package/lib/typescript/module/src/utils/animated/AnimatedExtractCoordinateFromArray.d.ts +12 -0
  707. package/lib/typescript/module/src/utils/animated/AnimatedExtractCoordinateFromArray.d.ts.map +1 -0
  708. package/lib/typescript/module/src/utils/animated/AnimatedPoint.d.ts +32 -0
  709. package/lib/typescript/module/src/utils/animated/AnimatedPoint.d.ts.map +1 -0
  710. package/lib/typescript/module/src/utils/animated/AnimatedRouteCoordinatesArray.d.ts +54 -0
  711. package/lib/typescript/module/src/utils/animated/AnimatedRouteCoordinatesArray.d.ts.map +1 -0
  712. package/lib/typescript/module/src/utils/animated/AnimatedShape.d.ts +28 -0
  713. package/lib/typescript/module/src/utils/animated/AnimatedShape.d.ts.map +1 -0
  714. package/lib/typescript/module/src/utils/filterUtils.d.ts +3 -0
  715. package/lib/typescript/module/src/utils/filterUtils.d.ts.map +1 -0
  716. package/lib/typescript/module/src/utils/getStylePropertyType.d.ts +35 -0
  717. package/lib/typescript/module/src/utils/getStylePropertyType.d.ts.map +1 -0
  718. package/lib/typescript/module/src/utils/index.d.ts +20 -0
  719. package/lib/typescript/module/src/utils/index.d.ts.map +1 -0
  720. package/lib/typescript/module/src/utils/makeNativeBounds.d.ts +2 -0
  721. package/lib/typescript/module/src/utils/makeNativeBounds.d.ts.map +1 -0
  722. package/maplibre-react-native.podspec +14 -14
  723. package/package.json +141 -110
  724. package/plugin/build/withMapLibre.d.ts +1 -1
  725. package/plugin/build/withMapLibre.js +31 -17
  726. package/src/MLRNModule.ts +52 -0
  727. package/src/MapLibreRN.ts +69 -0
  728. package/src/assets/heading.png +0 -0
  729. package/src/assets/heading@2x.png +0 -0
  730. package/src/assets/heading@3x.png +0 -0
  731. package/src/components/Annotation.tsx +164 -0
  732. package/src/components/BackgroundLayer.tsx +50 -0
  733. package/src/components/Callout.tsx +141 -0
  734. package/src/components/Camera.tsx +492 -0
  735. package/src/components/CircleLayer.tsx +52 -0
  736. package/src/components/FillExtrusionLayer.tsx +47 -0
  737. package/src/components/FillLayer.tsx +44 -0
  738. package/src/components/HeadingIndicator.tsx +30 -0
  739. package/src/components/HeatmapLayer.tsx +46 -0
  740. package/src/components/ImageSource.tsx +70 -0
  741. package/src/components/Images.tsx +127 -0
  742. package/src/components/Light.tsx +40 -0
  743. package/src/components/LineLayer.tsx +45 -0
  744. package/src/components/MapView.tsx +868 -0
  745. package/src/components/MarkerView.tsx +88 -0
  746. package/src/components/NativeUserLocation.tsx +35 -0
  747. package/src/components/PointAnnotation.tsx +245 -0
  748. package/src/components/RasterLayer.tsx +43 -0
  749. package/src/components/RasterSource.tsx +114 -0
  750. package/src/components/ShapeSource.tsx +368 -0
  751. package/src/components/SymbolLayer.tsx +49 -0
  752. package/src/components/UserLocation.tsx +307 -0
  753. package/src/components/VectorSource.tsx +202 -0
  754. package/src/hooks/useAbstractLayer.ts +127 -0
  755. package/src/hooks/useAbstractSource.ts +34 -0
  756. package/src/hooks/useNativeBridge.ts +125 -0
  757. package/src/hooks/useNativeRef.ts +14 -0
  758. package/src/index.ts +4 -0
  759. package/src/modules/location/locationManager.ts +161 -0
  760. package/src/modules/offline/OfflineCreatePackOptions.ts +55 -0
  761. package/src/modules/offline/OfflinePack.ts +56 -0
  762. package/src/modules/offline/offlineManager.ts +424 -0
  763. package/src/modules/snapshot/SnapshotOptions.ts +103 -0
  764. package/src/modules/snapshot/snapshotManager.ts +62 -0
  765. package/src/requestAndroidLocationPermissions.ts +29 -0
  766. package/src/types/BaseProps.ts +3 -0
  767. package/src/types/CameraMode.ts +6 -0
  768. package/src/types/MapLibreRNEvent.ts +7 -0
  769. package/src/types/MapLibreRNStyles.ts +1174 -0
  770. package/src/types/OnPressEvent.ts +11 -0
  771. package/src/types/StyleURL.ts +3 -0
  772. package/src/utils/BridgeValue.ts +90 -0
  773. package/src/utils/Logger.ts +133 -0
  774. package/src/utils/StyleValue.ts +51 -0
  775. package/src/utils/animated/Animated.ts +61 -0
  776. package/src/utils/animated/AnimatedCoordinatesArray.ts +113 -0
  777. package/src/utils/animated/AnimatedPoint.ts +134 -0
  778. package/src/utils/animated/AnimatedRouteCoordinatesArray.ts +150 -0
  779. package/src/utils/filterUtils.ts +9 -0
  780. package/src/utils/getStylePropertyType.ts +265 -0
  781. package/src/utils/index.ts +118 -0
  782. package/src/utils/makeNativeBounds.ts +5 -0
  783. package/.gitattributes +0 -1
  784. package/.husky/pre-commit +0 -5
  785. package/.nvmrc +0 -1
  786. package/.sonarcloud.properties +0 -15
  787. package/CHANGELOG.md +0 -432
  788. package/CODE_OF_CONDUCT.md +0 -2
  789. package/CONTRIBUTING.md +0 -55
  790. package/RELEASE.md +0 -30
  791. package/android/install.md +0 -31
  792. package/android/rctmln/.settings/org.eclipse.buildship.core.prefs +0 -2
  793. package/android/rctmln/build.gradle +0 -59
  794. package/android/rctmln/proguard-rules.pro +0 -25
  795. package/android/rctmln/src/main/AndroidManifest.xml +0 -4
  796. package/android/rctmln/src/main/java/com/maplibre/rctmln/RCTMLNPackage.java +0 -99
  797. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/AbstractEvent.java +0 -35
  798. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/AbstractEventEmitter.java +0 -80
  799. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/AbstractMapFeature.java +0 -19
  800. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/MarkerView.java +0 -23
  801. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/MarkerViewManager.java +0 -69
  802. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNCallout.java +0 -15
  803. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNCalloutManager.java +0 -22
  804. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNMarkerView.java +0 -112
  805. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNMarkerViewManager.java +0 -45
  806. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNPointAnnotation.java +0 -361
  807. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNPointAnnotationManager.java +0 -88
  808. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/camera/CameraStop.java +0 -251
  809. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/camera/CameraUpdateItem.java +0 -125
  810. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/camera/CameraUpdateQueue.java +0 -73
  811. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/camera/RCTMLNCamera.java +0 -530
  812. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/camera/RCTMLNCameraManager.java +0 -101
  813. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/camera/constants/CameraMode.java +0 -22
  814. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/images/RCTMLNImages.java +0 -234
  815. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/images/RCTMLNImagesManager.java +0 -103
  816. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/location/LocationComponentManager.java +0 -149
  817. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/location/RCTMLNNativeUserLocation.java +0 -66
  818. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/location/RCTMLNNativeUserLocationManager.java +0 -35
  819. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/LayerSourceInfo.java +0 -59
  820. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/RCTMLNAndroidTextureMapView.java +0 -16
  821. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/RCTMLNAndroidTextureMapViewManager.java +0 -31
  822. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/RCTMLNMapView.java +0 -1527
  823. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/RCTMLNMapViewManager.java +0 -353
  824. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/helpers/CameraChangeTracker.java +0 -41
  825. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/RCTMLNStyle.java +0 -83
  826. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/RCTMLNStyleFactory.java +0 -2275
  827. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/RCTMLNStyleFunctionParser.java +0 -107
  828. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/RCTMLNStyleValue.java +0 -212
  829. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTLayer.java +0 -287
  830. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNBackgroundLayer.java +0 -27
  831. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNBackgroundLayerManager.java +0 -64
  832. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNCircleLayer.java +0 -55
  833. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNCircleLayerManager.java +0 -77
  834. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNFillExtrusionLayer.java +0 -55
  835. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNFillExtrusionLayerManager.java +0 -80
  836. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNFillLayer.java +0 -55
  837. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNFillLayerManager.java +0 -80
  838. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNHeatmapLayer.java +0 -55
  839. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNHeatmapLayerManager.java +0 -77
  840. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNLineLayer.java +0 -55
  841. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNLineLayerManager.java +0 -79
  842. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNRasterLayer.java +0 -27
  843. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNRasterLayerManager.java +0 -64
  844. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNSymbolLayer.java +0 -55
  845. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNSymbolLayerManager.java +0 -75
  846. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/light/RCTMLNLight.java +0 -65
  847. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/light/RCTMLNLightManager.java +0 -29
  848. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNImageSource.java +0 -81
  849. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNImageSourceManager.java +0 -72
  850. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNRasterSource.java +0 -45
  851. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNRasterSourceManager.java +0 -44
  852. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNShapeSource.java +0 -316
  853. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNShapeSourceManager.java +0 -253
  854. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNTileSource.java +0 -97
  855. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNTileSourceManager.java +0 -80
  856. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNVectorSource.java +0 -64
  857. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNVectorSourceManager.java +0 -84
  858. package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTSource.java +0 -244
  859. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/AbstractEvent.java +0 -66
  860. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/AndroidCallbackEvent.java +0 -38
  861. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/EventEmitter.java +0 -45
  862. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/FeatureClickEvent.java +0 -79
  863. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/IEvent.java +0 -18
  864. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/ImageMissingEvent.java +0 -42
  865. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/LocationEvent.java +0 -100
  866. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/MapChangeEvent.java +0 -47
  867. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/MapClickEvent.java +0 -51
  868. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/MapUserTrackingModeEvent.java +0 -36
  869. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/OfflineEvent.java +0 -29
  870. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/PointAnnotationClickEvent.java +0 -46
  871. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/PointAnnotationDragEvent.java +0 -51
  872. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/constants/EventKeys.java +0 -39
  873. package/android/rctmln/src/main/java/com/maplibre/rctmln/events/constants/EventTypes.java +0 -51
  874. package/android/rctmln/src/main/java/com/maplibre/rctmln/http/CustomHeadersInterceptor.java +0 -38
  875. package/android/rctmln/src/main/java/com/maplibre/rctmln/location/LocationManager.java +0 -168
  876. package/android/rctmln/src/main/java/com/maplibre/rctmln/location/UserLocation.java +0 -63
  877. package/android/rctmln/src/main/java/com/maplibre/rctmln/location/UserLocationVerticalAlignment.java +0 -11
  878. package/android/rctmln/src/main/java/com/maplibre/rctmln/location/UserTrackingMode.java +0 -63
  879. package/android/rctmln/src/main/java/com/maplibre/rctmln/location/UserTrackingState.java +0 -19
  880. package/android/rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNLocationModule.java +0 -158
  881. package/android/rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNLogging.java +0 -140
  882. package/android/rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNModule.java +0 -348
  883. package/android/rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNOfflineModule.java +0 -592
  884. package/android/rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNSnapshotModule.java +0 -139
  885. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/BitmapUtils.java +0 -129
  886. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/ClusterPropertyEntry.java +0 -13
  887. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/ConvertUtils.java +0 -257
  888. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/DownloadMapImageTask.java +0 -159
  889. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/ExpressionParser.java +0 -74
  890. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/GeoJSONUtils.java +0 -209
  891. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/GeoViewport.java +0 -38
  892. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/ImageEntry.java +0 -25
  893. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/ResourceUtils.java +0 -30
  894. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/SimpleEventCallback.java +0 -30
  895. package/android/rctmln/src/main/java/com/maplibre/rctmln/utils/SphericalMercator.java +0 -69
  896. package/android/rctmln/src/main/res/values/strings.xml +0 -3
  897. package/android/settings.gradle +0 -1
  898. package/assets/indoor_building_map_android.png +0 -0
  899. package/assets/indoor_building_map_ios.png +0 -0
  900. package/assets/mapbox_logo.png +0 -0
  901. package/babel.config.js +0 -9
  902. package/docs/Annotation.md +0 -38
  903. package/docs/Annotations.md +0 -12
  904. package/docs/BackgroundLayer.md +0 -158
  905. package/docs/Callout.md +0 -15
  906. package/docs/Camera.md +0 -133
  907. package/docs/CircleLayer.md +0 -462
  908. package/docs/CustomHttpHeaders.md +0 -87
  909. package/docs/FillExtrusionLayer.md +0 -319
  910. package/docs/FillLayer.md +0 -302
  911. package/docs/GettingStarted.md +0 -114
  912. package/docs/HeadingIndicator.md +0 -10
  913. package/docs/HeatmapLayer.md +0 -207
  914. package/docs/ImageSource.md +0 -13
  915. package/docs/Images.md +0 -14
  916. package/docs/Light.md +0 -159
  917. package/docs/LineLayer.md +0 -576
  918. package/docs/Logger.md +0 -23
  919. package/docs/MapLibreGL.md +0 -65
  920. package/docs/MapView.md +0 -203
  921. package/docs/MarkerView.md +0 -16
  922. package/docs/NativeUserLocation.md +0 -11
  923. package/docs/OfflineManager.md +0 -246
  924. package/docs/PointAnnotation.md +0 -31
  925. package/docs/RasterLayer.md +0 -349
  926. package/docs/RasterSource.md +0 -18
  927. package/docs/ShapeSource.md +0 -106
  928. package/docs/Style.md +0 -10
  929. package/docs/StyleSheet.md +0 -451
  930. package/docs/SymbolLayer.md +0 -1655
  931. package/docs/UserLocation.md +0 -45
  932. package/docs/VectorSource.md +0 -49
  933. package/docs/coordinates.md +0 -6
  934. package/docs/docs.json +0 -5396
  935. package/docs/location.md +0 -6
  936. package/docs/offlineManager.md +0 -246
  937. package/docs/snapshotManager.md +0 -53
  938. package/ios/RCTMLN/CameraMode.h +0 -18
  939. package/ios/RCTMLN/CameraMode.m +0 -18
  940. package/ios/RCTMLN/CameraStop.h +0 -26
  941. package/ios/RCTMLN/CameraStop.m +0 -83
  942. package/ios/RCTMLN/CameraUpdateItem.h +0 -18
  943. package/ios/RCTMLN/CameraUpdateItem.m +0 -178
  944. package/ios/RCTMLN/CameraUpdateQueue.h +0 -21
  945. package/ios/RCTMLN/CameraUpdateQueue.m +0 -74
  946. package/ios/RCTMLN/FilterParser.h +0 -14
  947. package/ios/RCTMLN/FilterParser.m +0 -22
  948. package/ios/RCTMLN/MLNCustomHeaders.h +0 -20
  949. package/ios/RCTMLN/MLNCustomHeaders.m +0 -98
  950. package/ios/RCTMLN/MLNFaux3DUserLocationAnnotationView.h +0 -23
  951. package/ios/RCTMLN/MLNFaux3DUserLocationAnnotationView.m +0 -474
  952. package/ios/RCTMLN/MLNModule.h +0 -13
  953. package/ios/RCTMLN/MLNModule.m +0 -269
  954. package/ios/RCTMLN/MLNOfflineModule.h +0 -19
  955. package/ios/RCTMLN/MLNOfflineModule.m +0 -516
  956. package/ios/RCTMLN/MLNSnapshotModule.h +0 -13
  957. package/ios/RCTMLN/MLNSnapshotModule.m +0 -80
  958. package/ios/RCTMLN/MLNUserLocationHeadingArrowLayer.h +0 -11
  959. package/ios/RCTMLN/MLNUserLocationHeadingArrowLayer.m +0 -57
  960. package/ios/RCTMLN/MLNUserLocationHeadingBeamLayer.h +0 -11
  961. package/ios/RCTMLN/MLNUserLocationHeadingBeamLayer.m +0 -102
  962. package/ios/RCTMLN/MLNUserLocationHeadingIndicator.h +0 -10
  963. package/ios/RCTMLN/RCTConvert+Mapbox.h +0 -16
  964. package/ios/RCTMLN/RCTConvert+Mapbox.m +0 -32
  965. package/ios/RCTMLN/RCTMLN.h +0 -13
  966. package/ios/RCTMLN/RCTMLN.m +0 -13
  967. package/ios/RCTMLN/RCTMLNBackgroundLayer.h +0 -14
  968. package/ios/RCTMLN/RCTMLNBackgroundLayer.m +0 -27
  969. package/ios/RCTMLN/RCTMLNBackgroundLayerManager.h +0 -13
  970. package/ios/RCTMLN/RCTMLNBackgroundLayerManager.m +0 -35
  971. package/ios/RCTMLN/RCTMLNCallout.h +0 -15
  972. package/ios/RCTMLN/RCTMLNCallout.m +0 -74
  973. package/ios/RCTMLN/RCTMLNCalloutManager.h +0 -13
  974. package/ios/RCTMLN/RCTMLNCalloutManager.m +0 -21
  975. package/ios/RCTMLN/RCTMLNCamera.h +0 -39
  976. package/ios/RCTMLN/RCTMLNCamera.m +0 -258
  977. package/ios/RCTMLN/RCTMLNCameraManager.h +0 -13
  978. package/ios/RCTMLN/RCTMLNCameraManager.m +0 -52
  979. package/ios/RCTMLN/RCTMLNCircleLayer.h +0 -13
  980. package/ios/RCTMLN/RCTMLNCircleLayer.m +0 -34
  981. package/ios/RCTMLN/RCTMLNCircleLayerManager.h +0 -13
  982. package/ios/RCTMLN/RCTMLNCircleLayerManager.m +0 -39
  983. package/ios/RCTMLN/RCTMLNEvent.h +0 -21
  984. package/ios/RCTMLN/RCTMLNEvent.m +0 -47
  985. package/ios/RCTMLN/RCTMLNEventProtocol.h +0 -16
  986. package/ios/RCTMLN/RCTMLNEventTypes.h +0 -50
  987. package/ios/RCTMLN/RCTMLNEventTypes.m +0 -49
  988. package/ios/RCTMLN/RCTMLNFillExtrusionLayer.h +0 -14
  989. package/ios/RCTMLN/RCTMLNFillExtrusionLayer.m +0 -32
  990. package/ios/RCTMLN/RCTMLNFillExtrusionLayerManager.h +0 -13
  991. package/ios/RCTMLN/RCTMLNFillExtrusionLayerManager.m +0 -39
  992. package/ios/RCTMLN/RCTMLNFillLayer.h +0 -14
  993. package/ios/RCTMLN/RCTMLNFillLayer.m +0 -33
  994. package/ios/RCTMLN/RCTMLNFillLayerManager.h +0 -13
  995. package/ios/RCTMLN/RCTMLNFillLayerManager.m +0 -37
  996. package/ios/RCTMLN/RCTMLNHeatmapLayer.h +0 -12
  997. package/ios/RCTMLN/RCTMLNHeatmapLayer.m +0 -30
  998. package/ios/RCTMLN/RCTMLNHeatmapLayerManager.h +0 -12
  999. package/ios/RCTMLN/RCTMLNHeatmapLayerManager.m +0 -38
  1000. package/ios/RCTMLN/RCTMLNImageQueue.h +0 -19
  1001. package/ios/RCTMLN/RCTMLNImageQueue.m +0 -57
  1002. package/ios/RCTMLN/RCTMLNImageQueueOperation.h +0 -17
  1003. package/ios/RCTMLN/RCTMLNImageQueueOperation.m +0 -138
  1004. package/ios/RCTMLN/RCTMLNImageSource.h +0 -16
  1005. package/ios/RCTMLN/RCTMLNImageSource.m +0 -60
  1006. package/ios/RCTMLN/RCTMLNImageSourceManager.h +0 -13
  1007. package/ios/RCTMLN/RCTMLNImageSourceManager.m +0 -25
  1008. package/ios/RCTMLN/RCTMLNImages.h +0 -25
  1009. package/ios/RCTMLN/RCTMLNImages.m +0 -126
  1010. package/ios/RCTMLN/RCTMLNImagesManager.h +0 -5
  1011. package/ios/RCTMLN/RCTMLNImagesManager.m +0 -21
  1012. package/ios/RCTMLN/RCTMLNLayer.h +0 -52
  1013. package/ios/RCTMLN/RCTMLNLayer.m +0 -236
  1014. package/ios/RCTMLN/RCTMLNLight.h +0 -17
  1015. package/ios/RCTMLN/RCTMLNLight.m +0 -46
  1016. package/ios/RCTMLN/RCTMLNLightManager.h +0 -13
  1017. package/ios/RCTMLN/RCTMLNLightManager.m +0 -23
  1018. package/ios/RCTMLN/RCTMLNLineLayer.h +0 -14
  1019. package/ios/RCTMLN/RCTMLNLineLayer.m +0 -33
  1020. package/ios/RCTMLN/RCTMLNLineLayerManager.h +0 -13
  1021. package/ios/RCTMLN/RCTMLNLineLayerManager.m +0 -40
  1022. package/ios/RCTMLN/RCTMLNLocation.h +0 -19
  1023. package/ios/RCTMLN/RCTMLNLocation.m +0 -32
  1024. package/ios/RCTMLN/RCTMLNLocationManager.h +0 -30
  1025. package/ios/RCTMLN/RCTMLNLocationManager.m +0 -180
  1026. package/ios/RCTMLN/RCTMLNLocationManagerDelegate.h +0 -20
  1027. package/ios/RCTMLN/RCTMLNLocationModule.h +0 -15
  1028. package/ios/RCTMLN/RCTMLNLocationModule.m +0 -99
  1029. package/ios/RCTMLN/RCTMLNLogging.h +0 -18
  1030. package/ios/RCTMLN/RCTMLNLogging.m +0 -132
  1031. package/ios/RCTMLN/RCTMLNMapTouchEvent.h +0 -25
  1032. package/ios/RCTMLN/RCTMLNMapTouchEvent.m +0 -77
  1033. package/ios/RCTMLN/RCTMLNMapView.h +0 -91
  1034. package/ios/RCTMLN/RCTMLNMapView.m +0 -536
  1035. package/ios/RCTMLN/RCTMLNMapViewManager.h +0 -17
  1036. package/ios/RCTMLN/RCTMLNMapViewManager.m +0 -625
  1037. package/ios/RCTMLN/RCTMLNNativeUserLocation.h +0 -18
  1038. package/ios/RCTMLN/RCTMLNNativeUserLocation.m +0 -49
  1039. package/ios/RCTMLN/RCTMLNNativeUserLocationManager.h +0 -5
  1040. package/ios/RCTMLN/RCTMLNNativeUserLocationManager.m +0 -25
  1041. package/ios/RCTMLN/RCTMLNPointAnnotation.h +0 -41
  1042. package/ios/RCTMLN/RCTMLNPointAnnotation.m +0 -251
  1043. package/ios/RCTMLN/RCTMLNPointAnnotationManager.h +0 -13
  1044. package/ios/RCTMLN/RCTMLNPointAnnotationManager.m +0 -36
  1045. package/ios/RCTMLN/RCTMLNRasterLayer.h +0 -14
  1046. package/ios/RCTMLN/RCTMLNRasterLayer.m +0 -30
  1047. package/ios/RCTMLN/RCTMLNRasterLayerManager.h +0 -13
  1048. package/ios/RCTMLN/RCTMLNRasterLayerManager.m +0 -35
  1049. package/ios/RCTMLN/RCTMLNRasterSource.h +0 -16
  1050. package/ios/RCTMLN/RCTMLNRasterSource.m +0 -35
  1051. package/ios/RCTMLN/RCTMLNRasterSourceManager.h +0 -13
  1052. package/ios/RCTMLN/RCTMLNRasterSourceManager.m +0 -32
  1053. package/ios/RCTMLN/RCTMLNShapeSource.h +0 -53
  1054. package/ios/RCTMLN/RCTMLNShapeSource.m +0 -194
  1055. package/ios/RCTMLN/RCTMLNShapeSourceManager.h +0 -14
  1056. package/ios/RCTMLN/RCTMLNShapeSourceManager.m +0 -206
  1057. package/ios/RCTMLN/RCTMLNSource.h +0 -35
  1058. package/ios/RCTMLN/RCTMLNSource.m +0 -143
  1059. package/ios/RCTMLN/RCTMLNStyle.h +0 -222
  1060. package/ios/RCTMLN/RCTMLNStyle.m +0 -1675
  1061. package/ios/RCTMLN/RCTMLNStyleValue.h +0 -27
  1062. package/ios/RCTMLN/RCTMLNStyleValue.m +0 -167
  1063. package/ios/RCTMLN/RCTMLNSymbolLayer.h +0 -19
  1064. package/ios/RCTMLN/RCTMLNSymbolLayer.m +0 -121
  1065. package/ios/RCTMLN/RCTMLNSymbolLayerManager.h +0 -13
  1066. package/ios/RCTMLN/RCTMLNSymbolLayerManager.m +0 -40
  1067. package/ios/RCTMLN/RCTMLNTileSource.h +0 -22
  1068. package/ios/RCTMLN/RCTMLNTileSource.m +0 -31
  1069. package/ios/RCTMLN/RCTMLNUserLocation.h +0 -15
  1070. package/ios/RCTMLN/RCTMLNUserLocation.m +0 -38
  1071. package/ios/RCTMLN/RCTMLNUtils.h +0 -31
  1072. package/ios/RCTMLN/RCTMLNUtils.m +0 -218
  1073. package/ios/RCTMLN/RCTMLNVectorLayer.h +0 -15
  1074. package/ios/RCTMLN/RCTMLNVectorLayer.m +0 -59
  1075. package/ios/RCTMLN/RCTMLNVectorSource.h +0 -16
  1076. package/ios/RCTMLN/RCTMLNVectorSource.m +0 -28
  1077. package/ios/RCTMLN/RCTMLNVectorSourceManager.h +0 -14
  1078. package/ios/RCTMLN/RCTMLNVectorSourceManager.m +0 -79
  1079. package/ios/RCTMLN/RNMBImageUtils.h +0 -17
  1080. package/ios/RCTMLN/RNMBImageUtils.m +0 -31
  1081. package/ios/RCTMLN/ViewManager.h +0 -16
  1082. package/ios/RCTMLN/ViewManager.m +0 -63
  1083. package/ios/RCTMLN/index.d.ts +0 -1183
  1084. package/ios/RCTMLN.xcodeproj/project.pbxproj +0 -775
  1085. package/ios/install.md +0 -49
  1086. package/javascript/MLNModule.ts +0 -37
  1087. package/javascript/Maplibre.ts +0 -64
  1088. package/javascript/components/BackgroundLayer.tsx +0 -50
  1089. package/javascript/components/Callout.tsx +0 -141
  1090. package/javascript/components/Camera.tsx +0 -623
  1091. package/javascript/components/CircleLayer.tsx +0 -53
  1092. package/javascript/components/FillExtrusionLayer.tsx +0 -47
  1093. package/javascript/components/FillLayer.tsx +0 -44
  1094. package/javascript/components/HeadingIndicator.tsx +0 -30
  1095. package/javascript/components/HeatmapLayer.tsx +0 -46
  1096. package/javascript/components/ImageSource.tsx +0 -71
  1097. package/javascript/components/Images.tsx +0 -134
  1098. package/javascript/components/Light.tsx +0 -40
  1099. package/javascript/components/LineLayer.tsx +0 -45
  1100. package/javascript/components/MapView.tsx +0 -880
  1101. package/javascript/components/MarkerView.tsx +0 -88
  1102. package/javascript/components/NativeUserLocation.tsx +0 -31
  1103. package/javascript/components/PointAnnotation.tsx +0 -245
  1104. package/javascript/components/RasterLayer.tsx +0 -44
  1105. package/javascript/components/RasterSource.tsx +0 -114
  1106. package/javascript/components/ShapeSource.tsx +0 -433
  1107. package/javascript/components/Style.tsx +0 -368
  1108. package/javascript/components/SymbolLayer.tsx +0 -78
  1109. package/javascript/components/UserLocation.tsx +0 -289
  1110. package/javascript/components/VectorSource.tsx +0 -218
  1111. package/javascript/components/annotations/Annotation.tsx +0 -161
  1112. package/javascript/hooks/useAbstractLayer.ts +0 -127
  1113. package/javascript/hooks/useAbstractSource.ts +0 -34
  1114. package/javascript/hooks/useNativeBridge.ts +0 -125
  1115. package/javascript/hooks/useNativeRef.ts +0 -13
  1116. package/javascript/index.ts +0 -4
  1117. package/javascript/modules/location/locationManager.ts +0 -162
  1118. package/javascript/modules/offline/OfflineCreatePackOptions.ts +0 -62
  1119. package/javascript/modules/offline/OfflinePack.ts +0 -56
  1120. package/javascript/modules/offline/offlineManager.ts +0 -434
  1121. package/javascript/modules/snapshot/SnapshotOptions.ts +0 -104
  1122. package/javascript/modules/snapshot/snapshotManager.ts +0 -62
  1123. package/javascript/requestAndroidLocationPermissions.ts +0 -29
  1124. package/javascript/types/BaseProps.ts +0 -5
  1125. package/javascript/types/OnPressEvent.ts +0 -13
  1126. package/javascript/types/index.ts +0 -11
  1127. package/javascript/utils/BridgeValue.ts +0 -90
  1128. package/javascript/utils/Logger.ts +0 -133
  1129. package/javascript/utils/MaplibreStyles.d.ts +0 -1486
  1130. package/javascript/utils/StyleValue.ts +0 -49
  1131. package/javascript/utils/animated/Animated.ts +0 -61
  1132. package/javascript/utils/animated/AnimatedCoordinatesArray.ts +0 -108
  1133. package/javascript/utils/animated/AnimatedPoint.ts +0 -134
  1134. package/javascript/utils/animated/AnimatedRouteCoordinatesArray.ts +0 -145
  1135. package/javascript/utils/deprecation.ts +0 -31
  1136. package/javascript/utils/filterUtils.ts +0 -9
  1137. package/javascript/utils/geoUtils.ts +0 -79
  1138. package/javascript/utils/index.ts +0 -133
  1139. package/javascript/utils/styleMap.ts +0 -264
  1140. package/plugin/install.md +0 -32
  1141. package/react-native.config.js +0 -10
  1142. package/scripts/autogenHelpers/DocJSONBuilder.js +0 -458
  1143. package/scripts/autogenHelpers/JSDocNodeTree.js +0 -131
  1144. package/scripts/autogenHelpers/MarkdownBuilder.js +0 -29
  1145. package/scripts/autogenHelpers/globals.js +0 -507
  1146. package/scripts/autogenerate.js +0 -382
  1147. package/scripts/download-style-spec.sh +0 -15
  1148. package/scripts/templates/MaplibreStyles.ts.ejs +0 -99
  1149. package/scripts/templates/RCTMLNStyle.h.ejs +0 -33
  1150. package/scripts/templates/RCTMLNStyle.m.ejs +0 -97
  1151. package/scripts/templates/RCTMLNStyleFactory.java.ejs +0 -107
  1152. package/scripts/templates/component.md.ejs +0 -122
  1153. package/scripts/templates/index.d.ts.ejs +0 -85
  1154. package/scripts/templates/styleMap.ts.ejs +0 -85
  1155. package/setup-jest.js +0 -108
  1156. package/style-spec/v8.json +0 -6021
  1157. package/tsconfig.json +0 -24
  1158. /package/android/{rctmln/src → src}/main/res/drawable/empty.xml +0 -0
  1159. /package/android/{rctmln/src → src}/main/res/drawable/empty_drawable.png +0 -0
  1160. /package/android/{rctmln/src → src}/main/res/drawable-xxhdpi/red_marker.png +0 -0
  1161. /package/android/{rctmln/src → src}/main/res/layout/annotation.xml +0 -0
  1162. /package/{assets → lib/commonjs/assets}/heading.png +0 -0
  1163. /package/{assets → lib/commonjs/assets}/heading@2x.png +0 -0
  1164. /package/{assets → lib/commonjs/assets}/heading@3x.png +0 -0
  1165. /package/{javascript/@types/assets.d.ts → src/assets/png.d.ts} +0 -0
  1166. /package/{javascript → src}/hooks/useOnce.ts +0 -0
  1167. /package/{javascript → src}/utils/animated/AbstractAnimatedCoordinates.ts +0 -0
  1168. /package/{javascript → src}/utils/animated/AnimatedExtractCoordinateFromArray.ts +0 -0
  1169. /package/{javascript → src}/utils/animated/AnimatedShape.ts +0 -0
@@ -0,0 +1,1523 @@
1
+ package org.maplibre.reactnative.components.mapview;
2
+
3
+ import android.content.Context;
4
+ import android.graphics.Bitmap;
5
+ import android.graphics.BitmapFactory;
6
+ import android.graphics.PointF;
7
+ import android.graphics.RectF;
8
+ import android.location.Location;
9
+ import android.os.Handler;
10
+ import androidx.annotation.NonNull;
11
+ import androidx.annotation.UiThread;
12
+
13
+ import android.util.DisplayMetrics;
14
+ import android.util.Pair;
15
+ import android.view.Gravity;
16
+ import android.view.MotionEvent;
17
+ import android.view.View;
18
+ import android.view.ViewGroup;
19
+ import android.widget.FrameLayout;
20
+ import org.maplibre.android.log.Logger;
21
+
22
+ import com.facebook.react.bridge.LifecycleEventListener;
23
+ import com.facebook.react.bridge.ReactContext;
24
+ import com.facebook.react.bridge.ReadableArray;
25
+ import com.facebook.react.bridge.ReadableMap;
26
+ import com.facebook.react.bridge.WritableArray;
27
+ import com.facebook.react.bridge.WritableMap;
28
+ import com.facebook.react.bridge.WritableNativeArray;
29
+ import com.facebook.react.bridge.WritableNativeMap;
30
+ import org.maplibre.android.gestures.MoveGestureDetector;
31
+ import org.maplibre.geojson.Feature;
32
+ import org.maplibre.geojson.FeatureCollection;
33
+ import org.maplibre.android.camera.CameraPosition;
34
+ import org.maplibre.android.camera.CameraUpdate;
35
+ import org.maplibre.android.geometry.LatLng;
36
+ import org.maplibre.android.geometry.VisibleRegion;
37
+ import org.maplibre.android.maps.AttributionDialogManager;
38
+ import org.maplibre.android.maps.MapView;
39
+ import org.maplibre.android.maps.MapLibreMap;
40
+ import org.maplibre.android.maps.MapLibreMapOptions;
41
+ import org.maplibre.android.maps.OnMapReadyCallback;
42
+ import org.maplibre.android.maps.Style;
43
+ import org.maplibre.android.maps.UiSettings;
44
+ import org.maplibre.android.plugins.localization.LocalizationPlugin;
45
+ import org.maplibre.android.plugins.annotation.OnSymbolClickListener;
46
+ import org.maplibre.android.plugins.annotation.OnSymbolDragListener;
47
+ import org.maplibre.android.plugins.annotation.Symbol;
48
+ import org.maplibre.android.plugins.annotation.SymbolManager;
49
+ import org.maplibre.android.style.expressions.Expression;
50
+ import org.maplibre.android.style.layers.Layer;
51
+ import org.maplibre.android.style.layers.Property;
52
+ import org.maplibre.reactnative.R;
53
+ import org.maplibre.reactnative.components.AbstractMapFeature;
54
+ import org.maplibre.reactnative.components.annotation.MLRNPointAnnotation;
55
+ import org.maplibre.reactnative.components.annotation.MLRNMarkerView;
56
+ import org.maplibre.reactnative.components.annotation.MarkerView;
57
+ import org.maplibre.reactnative.components.annotation.MarkerViewManager;
58
+ import org.maplibre.reactnative.components.camera.MLRNCamera;
59
+ import org.maplibre.reactnative.components.images.MLRNImages;
60
+ import org.maplibre.reactnative.components.location.LocationComponentManager;
61
+ import org.maplibre.reactnative.components.location.MLRNNativeUserLocation;
62
+ import org.maplibre.reactnative.components.mapview.helpers.CameraChangeTracker;
63
+ import org.maplibre.reactnative.components.styles.layers.MLRNLayer;
64
+ import org.maplibre.reactnative.components.styles.light.MLRNLight;
65
+ import org.maplibre.reactnative.components.styles.sources.MLRNShapeSource;
66
+ import org.maplibre.reactnative.components.styles.sources.MLRNSource;
67
+ import org.maplibre.reactnative.events.AndroidCallbackEvent;
68
+ import org.maplibre.reactnative.events.IEvent;
69
+ import org.maplibre.reactnative.events.MapChangeEvent;
70
+ import org.maplibre.reactnative.events.MapClickEvent;
71
+ import org.maplibre.reactnative.events.constants.EventTypes;
72
+ import org.maplibre.reactnative.utils.BitmapUtils;
73
+ import org.maplibre.reactnative.utils.GeoJSONUtils;
74
+ import org.maplibre.reactnative.utils.GeoViewport;
75
+
76
+ import java.util.ArrayList;
77
+ import java.util.Arrays;
78
+ import java.util.HashMap;
79
+ import java.util.HashSet;
80
+ import java.util.List;
81
+ import java.util.Map;
82
+ import java.util.Locale;
83
+ import org.json.*;
84
+
85
+ import javax.annotation.Nullable;
86
+
87
+ import static org.maplibre.android.style.layers.PropertyFactory.visibility;
88
+ import static org.maplibre.reactnative.modules.MLRNOfflineModule.DEFAULT_STYLE_URL;
89
+
90
+ @SuppressWarnings({ "MissingPermission" })
91
+ public class MLRNMapView extends MapView implements OnMapReadyCallback, MapLibreMap.OnMapClickListener,
92
+ MapLibreMap.OnMapLongClickListener, MapView.OnCameraIsChangingListener, MapView.OnCameraDidChangeListener,
93
+ MapView.OnDidFailLoadingMapListener, MapView.OnDidFinishLoadingMapListener,
94
+ MapView.OnWillStartRenderingFrameListener, MapView.OnWillStartRenderingMapListener,
95
+ MapView.OnDidFinishRenderingFrameListener, MapView.OnDidFinishRenderingMapListener,
96
+ MapView.OnDidFinishLoadingStyleListener, MapView.OnStyleImageMissingListener {
97
+ public static final String LOG_TAG = "MLRNMapView";
98
+
99
+ private MLRNMapViewManager mManager;
100
+ private Context mContext;
101
+ private Handler mHandler;
102
+ private LifecycleEventListener mLifeCycleListener;
103
+ private boolean mPaused;
104
+ private boolean mDestroyed;
105
+
106
+ private MLRNCamera mCamera;
107
+ private List<AbstractMapFeature> mFeatures;
108
+ private List<AbstractMapFeature> mQueuedFeatures;
109
+ private Map<String, MLRNPointAnnotation> mPointAnnotations;
110
+ private Map<String, MLRNSource> mSources;
111
+ private List<MLRNImages> mImages;
112
+
113
+ private CameraChangeTracker mCameraChangeTracker = new CameraChangeTracker();
114
+ private List<Pair<Integer, ReadableArray>> mPreRenderMethods = new ArrayList<>();
115
+
116
+ private MapLibreMap mMap;
117
+
118
+ private LocalizationPlugin mLocalizationPlugin;
119
+
120
+ private String mStyleURL;
121
+
122
+ private Integer mPreferredFramesPerSecond;
123
+ private boolean mLocalizeLabels;
124
+ private Boolean mScrollEnabled;
125
+ private Boolean mPitchEnabled;
126
+ private Boolean mRotateEnabled;
127
+ private Boolean mAttributionEnabled;
128
+ private Integer mAttributionGravity;
129
+ private int[] mAttributionMargin;
130
+ private Boolean mLogoEnabled;
131
+ private Integer mLogoGravity;
132
+ private int[] mLogoMargins;
133
+ private Boolean mCompassEnabled;
134
+ private ReadableMap mCompassViewMargins;
135
+ private int mCompassViewPosition = -1;
136
+ private Boolean mZoomEnabled;
137
+
138
+ private SymbolManager symbolManager;
139
+
140
+ private long mActiveMarkerID = -1;
141
+
142
+ private ReadableArray mInsets;
143
+
144
+ private HashSet<String> mHandledMapChangedEvents = null;
145
+
146
+ private MarkerViewManager markerViewManager = null;
147
+ private ViewGroup mOffscreenAnnotationViewContainer = null;
148
+
149
+ private boolean mAnnotationClicked = false;
150
+
151
+ private LocationComponentManager mLocationComponentManager = null;
152
+
153
+ private @Nullable Integer mTintColor = null;
154
+
155
+ public MLRNMapView(Context context, MLRNMapViewManager manager, MapLibreMapOptions options) {
156
+ super(context, options);
157
+
158
+ mContext = context;
159
+ onCreate(null);
160
+ onStart();
161
+ onResume();
162
+ getMapAsync(this);
163
+
164
+ mManager = manager;
165
+
166
+ mSources = new HashMap<>();
167
+ mImages = new ArrayList<>();
168
+ mPointAnnotations = new HashMap<>();
169
+ mQueuedFeatures = new ArrayList<>();
170
+ mFeatures = new ArrayList<>();
171
+
172
+ mHandler = new Handler();
173
+
174
+ mStyleURL = DEFAULT_STYLE_URL;
175
+
176
+ setLifecycleListeners();
177
+
178
+ addOnCameraIsChangingListener(this);
179
+ addOnCameraDidChangeListener(this);
180
+ addOnDidFailLoadingMapListener(this);
181
+ addOnDidFinishLoadingMapListener(this);
182
+ addOnStyleImageMissingListener(this);
183
+
184
+ addOnWillStartRenderingFrameListener(this);
185
+ addOnDidFinishRenderingFrameListener(this);
186
+ addOnWillStartRenderingMapListener(this);
187
+ addOnDidFinishRenderingMapListener(this);
188
+ addOnDidFinishLoadingStyleListener(this);
189
+ }
190
+
191
+ @Override
192
+ public void onResume() {
193
+ super.onResume();
194
+ mPaused = false;
195
+ }
196
+
197
+ @Override
198
+ public void onPause() {
199
+ super.onPause();
200
+ mPaused = true;
201
+ }
202
+
203
+ @Override
204
+ public void onDestroy() {
205
+ super.onDestroy();
206
+ mDestroyed = true;
207
+ }
208
+
209
+ public void enqueuePreRenderMapMethod(Integer methodID, @Nullable ReadableArray args) {
210
+ mPreRenderMethods.add(new Pair<>(methodID, args));
211
+ }
212
+
213
+ public void addFeature(View childView, int childPosition) {
214
+ AbstractMapFeature feature = null;
215
+
216
+ if (childView instanceof MLRNSource) {
217
+ MLRNSource source = (MLRNSource) childView;
218
+ mSources.put(source.getID(), source);
219
+ feature = (AbstractMapFeature) childView;
220
+ } else if (childView instanceof MLRNImages) {
221
+ MLRNImages images = (MLRNImages) childView;
222
+ mImages.add(images);
223
+ feature = (AbstractMapFeature) childView;
224
+ } else if (childView instanceof MLRNLight) {
225
+ feature = (AbstractMapFeature) childView;
226
+ } else if (childView instanceof MLRNNativeUserLocation) {
227
+ feature = (AbstractMapFeature) childView;
228
+ } else if (childView instanceof MLRNPointAnnotation) {
229
+ MLRNPointAnnotation annotation = (MLRNPointAnnotation) childView;
230
+ mPointAnnotations.put(annotation.getID(), annotation);
231
+ feature = (AbstractMapFeature) childView;
232
+ } else if (childView instanceof MLRNMarkerView) {
233
+ MLRNMarkerView marker = (MLRNMarkerView) childView;
234
+ feature = (AbstractMapFeature) childView;
235
+ } else if (childView instanceof MLRNCamera) {
236
+ mCamera = (MLRNCamera) childView;
237
+ feature = (AbstractMapFeature) childView;
238
+ } else if (childView instanceof MLRNLayer) {
239
+ feature = (MLRNLayer) childView;
240
+ } else if (childView instanceof ViewGroup) {
241
+ ViewGroup children = (ViewGroup) childView;
242
+
243
+ for (int i = 0; i < children.getChildCount(); i++) {
244
+ addFeature(children.getChildAt(i), childPosition);
245
+ }
246
+ }
247
+
248
+ if (feature != null) {
249
+ if (mQueuedFeatures == null) {
250
+ feature.addToMap(this);
251
+ mFeatures.add(childPosition, feature);
252
+ } else {
253
+ mQueuedFeatures.add(childPosition, feature);
254
+ }
255
+ }
256
+ }
257
+
258
+ public void removeFeature(int childPosition) {
259
+ AbstractMapFeature feature = features().get(childPosition);
260
+
261
+ if (feature == null) {
262
+ return;
263
+ }
264
+
265
+ if (feature instanceof MLRNSource) {
266
+ MLRNSource source = (MLRNSource) feature;
267
+ mSources.remove(source.getID());
268
+ } else if (feature instanceof MLRNPointAnnotation) {
269
+ MLRNPointAnnotation annotation = (MLRNPointAnnotation) feature;
270
+
271
+ if (annotation.getMapboxID() == mActiveMarkerID) {
272
+ mActiveMarkerID = -1;
273
+ }
274
+
275
+ mPointAnnotations.remove(annotation.getID());
276
+ } else if (feature instanceof MLRNImages) {
277
+ MLRNImages images = (MLRNImages) feature;
278
+ mImages.remove(images);
279
+ }
280
+
281
+ feature.removeFromMap(this);
282
+ features().remove(feature);
283
+ }
284
+
285
+ private List<AbstractMapFeature> features() {
286
+ if (mQueuedFeatures != null && mQueuedFeatures.size() > 0) {
287
+ return mQueuedFeatures;
288
+ } else {
289
+ return mFeatures;
290
+ }
291
+ }
292
+
293
+ public int getFeatureCount() {
294
+ return features().size();
295
+ }
296
+
297
+ public AbstractMapFeature getFeatureAt(int i) {
298
+ return features().get(i);
299
+ }
300
+
301
+ public synchronized void dispose() {
302
+ if (mDestroyed) {
303
+ return;
304
+ }
305
+
306
+ if (!layerWaiters.isEmpty()) {
307
+ layerWaiters.clear();
308
+ }
309
+
310
+ ReactContext reactContext = (ReactContext) mContext;
311
+ reactContext.removeLifecycleEventListener(mLifeCycleListener);
312
+
313
+ if (!mPaused) {
314
+ onPause();
315
+ }
316
+
317
+ onStop();
318
+ onDestroy();
319
+ }
320
+
321
+ public VisibleRegion getVisibleRegion(LatLng center, double zoomLevel) {
322
+ DisplayMetrics metrics = mContext.getResources().getDisplayMetrics();
323
+ int[] contentPadding = mMap.getPadding();
324
+
325
+ int mapWidth = (int) ((mMap.getWidth() * 0.75 - (contentPadding[0] + contentPadding[2]))
326
+ / metrics.scaledDensity);
327
+ int mapHeight = (int) ((mMap.getHeight() * 0.75 - (contentPadding[1] + contentPadding[3]))
328
+ / metrics.scaledDensity);
329
+ VisibleRegion region = GeoViewport.getRegion(center, (int) zoomLevel, mapWidth, mapHeight);
330
+ return region;
331
+ }
332
+
333
+ public CameraPosition getCameraPosition() {
334
+ return mMap.getCameraPosition();
335
+ }
336
+
337
+ public void animateCamera(CameraUpdate cameraUpdate, MapLibreMap.CancelableCallback callback) {
338
+ mMap.animateCamera(cameraUpdate, callback);
339
+ }
340
+
341
+ public void moveCamera(CameraUpdate cameraUpdate, MapLibreMap.CancelableCallback callback) {
342
+ mMap.moveCamera(cameraUpdate, callback);
343
+ }
344
+
345
+ public void moveCamera(CameraUpdate cameraUpdate) {
346
+ mMap.moveCamera(cameraUpdate);
347
+ }
348
+
349
+ public void easeCamera(CameraUpdate cameraUpdate, int duration, boolean easingInterpolator,
350
+ MapLibreMap.CancelableCallback callback) {
351
+ mMap.easeCamera(cameraUpdate, duration, easingInterpolator, callback);
352
+ }
353
+
354
+ public void easeCamera(CameraUpdate cameraUpdate) {
355
+ mMap.easeCamera(cameraUpdate);
356
+ }
357
+
358
+ public MLRNPointAnnotation getPointAnnotationByID(String annotationID) {
359
+ if (annotationID == null) {
360
+ return null;
361
+ }
362
+
363
+ for (String key : mPointAnnotations.keySet()) {
364
+ MLRNPointAnnotation annotation = mPointAnnotations.get(key);
365
+
366
+ if (annotation != null && annotationID.equals(annotation.getID())) {
367
+ return annotation;
368
+ }
369
+ }
370
+
371
+ return null;
372
+ }
373
+
374
+ public MLRNPointAnnotation getPointAnnotationByMarkerID(long markerID) {
375
+ for (String key : mPointAnnotations.keySet()) {
376
+ MLRNPointAnnotation annotation = mPointAnnotations.get(key);
377
+
378
+ if (annotation != null && markerID == annotation.getMapboxID()) {
379
+ return annotation;
380
+ }
381
+ }
382
+
383
+ return null;
384
+ }
385
+
386
+ public MapLibreMap getMapboxMap() {
387
+ return mMap;
388
+ }
389
+
390
+ public SymbolManager getSymbolManager() {
391
+ return symbolManager;
392
+ }
393
+
394
+ public interface FoundLayerCallback {
395
+ public void found(Layer layer);
396
+ }
397
+
398
+ private Map<String, List<FoundLayerCallback>> layerWaiters = new HashMap<String, List<FoundLayerCallback>>();
399
+
400
+ public void layerAdded(Layer layer) {
401
+ String layerId = layer.getId();
402
+
403
+ List<FoundLayerCallback> callbacks = layerWaiters.get(layerId);
404
+ if (callbacks != null) {
405
+ for (FoundLayerCallback callback : callbacks) {
406
+ callback.found(layer);
407
+ }
408
+ }
409
+ layerWaiters.remove(layerId);
410
+ }
411
+
412
+ public void waitForLayer(String layerID, FoundLayerCallback callback) {
413
+ Layer layer = mMap.getStyle().getLayer(layerID);
414
+ if (layer != null) {
415
+ callback.found(layer);
416
+ } else {
417
+ List<FoundLayerCallback> waiters = layerWaiters.get(layerID);
418
+ if (waiters == null) {
419
+ waiters = new ArrayList<FoundLayerCallback>();
420
+ layerWaiters.put(layerID, waiters);
421
+ }
422
+ waiters.add(callback);
423
+ }
424
+ }
425
+
426
+ public boolean isJSONValid(String test) {
427
+ try {
428
+ new JSONObject(test);
429
+ } catch (JSONException ex) {
430
+ return false;
431
+ }
432
+ return true;
433
+ }
434
+
435
+ @Override
436
+ public void onMapReady(final MapLibreMap mapboxMap) {
437
+ mMap = mapboxMap;
438
+
439
+ if (isJSONValid(mStyleURL)) {
440
+ mMap.setStyle(new Style.Builder().fromJson(mStyleURL));
441
+ } else {
442
+ mMap.setStyle(new Style.Builder().fromUri(mStyleURL));
443
+ }
444
+
445
+ reflow();
446
+
447
+ mMap.getStyle(new Style.OnStyleLoaded() {
448
+ @Override
449
+ public void onStyleLoaded(@NonNull Style style) {
450
+ createSymbolManager(style);
451
+ setUpImage(style);
452
+ addQueuedFeatures();
453
+ setupLocalization(style);
454
+ }
455
+ });
456
+
457
+ updatePreferredFramesPerSecond();
458
+ updateInsets();
459
+ updateUISettings();
460
+
461
+ mMap.addOnCameraIdleListener(new MapLibreMap.OnCameraIdleListener() {
462
+ @Override
463
+ public void onCameraIdle() {
464
+ sendRegionDidChangeEvent();
465
+ }
466
+ });
467
+
468
+ mMap.addOnCameraMoveStartedListener(new MapLibreMap.OnCameraMoveStartedListener() {
469
+ @Override
470
+ public void onCameraMoveStarted(int reason) {
471
+ mCameraChangeTracker.setReason(reason);
472
+ handleMapChangedEvent(EventTypes.REGION_WILL_CHANGE);
473
+ }
474
+ });
475
+
476
+ mMap.addOnCameraMoveListener(new MapLibreMap.OnCameraMoveListener() {
477
+ @Override
478
+ public void onCameraMove() {
479
+ if (markerViewManager != null) {
480
+ markerViewManager.updateMarkers();
481
+ }
482
+ }
483
+ });
484
+
485
+ mMap.addOnMoveListener(new MapLibreMap.OnMoveListener() {
486
+ @Override
487
+ public void onMoveBegin(MoveGestureDetector detector) {
488
+ mCameraChangeTracker.setReason(CameraChangeTracker.USER_GESTURE);
489
+ handleMapChangedEvent(EventTypes.REGION_WILL_CHANGE);
490
+ }
491
+
492
+ @Override
493
+ public void onMove(MoveGestureDetector detector) {
494
+ mCameraChangeTracker.setReason(CameraChangeTracker.USER_GESTURE);
495
+ handleMapChangedEvent(EventTypes.REGION_IS_CHANGING);
496
+ }
497
+
498
+ @Override
499
+ public void onMoveEnd(MoveGestureDetector detector) {
500
+ }
501
+ });
502
+ }
503
+
504
+ public void reflow() {
505
+ mHandler.post(new Runnable() {
506
+ @Override
507
+ public void run() {
508
+ measure(View.MeasureSpec.makeMeasureSpec(getMeasuredWidth(), View.MeasureSpec.EXACTLY),
509
+ View.MeasureSpec.makeMeasureSpec(getMeasuredHeight(), View.MeasureSpec.EXACTLY));
510
+ layout(getLeft(), getTop(), getRight(), getBottom());
511
+ }
512
+ });
513
+ }
514
+
515
+ public void createSymbolManager(Style style) {
516
+ symbolManager = new SymbolManager(this, mMap, style);
517
+ symbolManager.setIconAllowOverlap(true);
518
+ symbolManager.addClickListener(new OnSymbolClickListener() {
519
+ @Override
520
+ public boolean onAnnotationClick(Symbol symbol) {
521
+ onMarkerClick(symbol);
522
+ return true;
523
+ }
524
+ });
525
+ symbolManager.addDragListener(new OnSymbolDragListener() {
526
+ @Override
527
+ public void onAnnotationDragStarted(Symbol symbol) {
528
+ mAnnotationClicked = true;
529
+ final long selectedMarkerID = symbol.getId();
530
+ MLRNPointAnnotation annotation = getPointAnnotationByMarkerID(selectedMarkerID);
531
+ if (annotation != null) {
532
+ annotation.onDragStart();
533
+ }
534
+ }
535
+
536
+ @Override
537
+ public void onAnnotationDrag(Symbol symbol) {
538
+ final long selectedMarkerID = symbol.getId();
539
+ MLRNPointAnnotation annotation = getPointAnnotationByMarkerID(selectedMarkerID);
540
+ if (annotation != null) {
541
+ annotation.onDrag();
542
+ }
543
+ }
544
+
545
+ @Override
546
+ public void onAnnotationDragFinished(Symbol symbol) {
547
+ mAnnotationClicked = false;
548
+ final long selectedMarkerID = symbol.getId();
549
+ MLRNPointAnnotation annotation = getPointAnnotationByMarkerID(selectedMarkerID);
550
+ if (annotation != null) {
551
+ annotation.onDragEnd();
552
+ }
553
+ }
554
+ });
555
+ mMap.addOnMapClickListener(this);
556
+ mMap.addOnMapLongClickListener(this);
557
+ }
558
+
559
+ public void addQueuedFeatures() {
560
+ if (mQueuedFeatures != null && mQueuedFeatures.size() > 0) {
561
+ for (int i = 0; i < mQueuedFeatures.size(); i++) {
562
+ AbstractMapFeature feature = mQueuedFeatures.get(i);
563
+ feature.addToMap(this);
564
+ mFeatures.add(feature);
565
+ }
566
+ mQueuedFeatures = null;
567
+ }
568
+ }
569
+
570
+ private void setupLocalization(Style style) {
571
+ mLocalizationPlugin = new LocalizationPlugin(MLRNMapView.this, mMap, style);
572
+ if (mLocalizeLabels) {
573
+ try {
574
+ mLocalizationPlugin.matchMapLanguageWithDeviceDefault();
575
+ } catch (Exception e) {
576
+ final String localeString = Locale.getDefault().toString();
577
+ Logger.w(LOG_TAG, String.format("Could not find matching locale for %s", localeString));
578
+ }
579
+ }
580
+ }
581
+
582
+ @Override
583
+ public boolean onTouchEvent(MotionEvent ev) {
584
+ boolean result = super.onTouchEvent(ev);
585
+
586
+ if (result && mScrollEnabled) {
587
+ requestDisallowInterceptTouchEvent(true);
588
+ }
589
+
590
+ return result;
591
+ }
592
+
593
+ @Override
594
+ protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
595
+ if (!mPaused) {
596
+ if (markerViewManager != null) {
597
+ markerViewManager.removeViews();
598
+ }
599
+ super.onLayout(changed, left, top, right, bottom);
600
+ if (markerViewManager != null) {
601
+ markerViewManager.restoreViews();
602
+ }
603
+ }
604
+ }
605
+
606
+ @Override
607
+ public boolean onMapClick(@NonNull LatLng point) {
608
+ if (mAnnotationClicked) {
609
+ mAnnotationClicked = false;
610
+ return true;
611
+ }
612
+
613
+ PointF screenPoint = mMap.getProjection().toScreenLocation(point);
614
+ List<MLRNSource> touchableSources = getAllTouchableSources();
615
+
616
+ Map<String, List<Feature>> hits = new HashMap<>();
617
+ List<MLRNSource> hitTouchableSources = new ArrayList<>();
618
+ for (MLRNSource touchableSource : touchableSources) {
619
+ Map<String, Double> hitbox = touchableSource.getTouchHitbox();
620
+ if (hitbox == null) {
621
+ continue;
622
+ }
623
+
624
+ float halfWidth = hitbox.get("width").floatValue() / 2.0f;
625
+ float halfHeight = hitbox.get("height").floatValue() / 2.0f;
626
+
627
+ RectF hitboxF = new RectF();
628
+ hitboxF.set(screenPoint.x - halfWidth, screenPoint.y - halfHeight, screenPoint.x + halfWidth,
629
+ screenPoint.y + halfHeight);
630
+
631
+ List<Feature> features = mMap.queryRenderedFeatures(hitboxF, touchableSource.getLayerIDs());
632
+ if (features.size() > 0) {
633
+ hits.put(touchableSource.getID(), features);
634
+ hitTouchableSources.add(touchableSource);
635
+ }
636
+ }
637
+
638
+ if (hits.size() > 0) {
639
+ MLRNSource source = getTouchableSourceWithHighestZIndex(hitTouchableSources);
640
+ if (source != null && source.hasPressListener()) {
641
+ source.onPress(new MLRNSource.OnPressEvent(
642
+ hits.get(source.getID()),
643
+ point,
644
+ screenPoint));
645
+ return true;
646
+ }
647
+ }
648
+
649
+ MapClickEvent event = new MapClickEvent(this, point, screenPoint);
650
+ mManager.handleEvent(event);
651
+ return false;
652
+ }
653
+
654
+ @Override
655
+ public boolean onMapLongClick(@NonNull LatLng point) {
656
+ if (mAnnotationClicked) {
657
+ mAnnotationClicked = false;
658
+ return true;
659
+ }
660
+ PointF screenPoint = mMap.getProjection().toScreenLocation(point);
661
+ MapClickEvent event = new MapClickEvent(this, point, screenPoint, EventTypes.MAP_LONG_CLICK);
662
+ mManager.handleEvent(event);
663
+ return false;
664
+ }
665
+
666
+ public void onMarkerClick(@NonNull Symbol symbol) {
667
+ mAnnotationClicked = true;
668
+ final long selectedMarkerID = symbol.getId();
669
+
670
+ MLRNPointAnnotation activeAnnotation = null;
671
+ MLRNPointAnnotation nextActiveAnnotation = null;
672
+
673
+ for (String key : mPointAnnotations.keySet()) {
674
+ MLRNPointAnnotation annotation = mPointAnnotations.get(key);
675
+ final long curMarkerID = annotation.getMapboxID();
676
+ if (mActiveMarkerID == curMarkerID) {
677
+ activeAnnotation = annotation;
678
+ }
679
+ if (selectedMarkerID == curMarkerID && mActiveMarkerID != curMarkerID) {
680
+ nextActiveAnnotation = annotation;
681
+ }
682
+ }
683
+
684
+ if (activeAnnotation != null) {
685
+ deselectAnnotation(activeAnnotation);
686
+ }
687
+
688
+ if (nextActiveAnnotation != null) {
689
+ selectAnnotation(nextActiveAnnotation);
690
+ }
691
+
692
+ }
693
+
694
+ public void selectAnnotation(MLRNPointAnnotation annotation) {
695
+ mActiveMarkerID = annotation.getMapboxID();
696
+ annotation.onSelect(true);
697
+ }
698
+
699
+ public void deselectAnnotation(MLRNPointAnnotation annotation) {
700
+ mActiveMarkerID = -1;
701
+ annotation.onDeselect();
702
+ }
703
+
704
+ @Override
705
+ public void onCameraDidChange(boolean animated) {
706
+ mCameraChangeTracker.setIsAnimating(animated);
707
+ }
708
+
709
+ @Override
710
+ public void onCameraIsChanging() {
711
+ handleMapChangedEvent(EventTypes.REGION_IS_CHANGING);
712
+ }
713
+
714
+ @Override
715
+ public void onDidFailLoadingMap(String errorMessage) {
716
+ handleMapChangedEvent(EventTypes.DID_FAIL_LOADING_MAP);
717
+ }
718
+
719
+ @Override
720
+ public void onDidFinishLoadingMap() {
721
+ handleMapChangedEvent(EventTypes.DID_FINISH_LOADING_MAP);
722
+ }
723
+
724
+ @Override
725
+ public void onWillStartRenderingFrame() {
726
+ handleMapChangedEvent(EventTypes.WILL_START_RENDERING_FRAME);
727
+ }
728
+
729
+ @Override
730
+ public void onDidFinishRenderingFrame(boolean fully, double frameEncodingTime, double frameRenderingTime) {
731
+ if (fully) {
732
+ handleMapChangedEvent(EventTypes.DID_FINISH_RENDERING_FRAME_FULLY);
733
+ } else {
734
+ handleMapChangedEvent(EventTypes.DID_FINISH_RENDERING_FRAME);
735
+ }
736
+ }
737
+
738
+ @Override
739
+ public void onWillStartRenderingMap() {
740
+ handleMapChangedEvent(EventTypes.WILL_START_RENDERING_MAP);
741
+ }
742
+
743
+ @Override
744
+ public void onDidFinishRenderingMap(boolean fully) {
745
+ if (fully) {
746
+ for (Pair<Integer, ReadableArray> preRenderMethod : mPreRenderMethods) {
747
+ Integer methodID = preRenderMethod.first;
748
+ ReadableArray args = preRenderMethod.second;
749
+ mManager.receiveCommand(this, methodID, args);
750
+ }
751
+ mPreRenderMethods.clear();
752
+ handleMapChangedEvent(EventTypes.DID_FINISH_RENDERING_MAP_FULLY);
753
+ } else {
754
+ handleMapChangedEvent(EventTypes.DID_FINISH_RENDERING_MAP);
755
+ }
756
+ }
757
+
758
+ @Override
759
+ public void onDidFinishLoadingStyle() {
760
+ handleMapChangedEvent(EventTypes.DID_FINISH_LOADING_STYLE);
761
+ }
762
+
763
+ @Override
764
+ public void onStyleImageMissing(@NonNull String id) {
765
+ for (MLRNImages images : mImages) {
766
+ if (images.addMissingImageToStyle(id, mMap)) {
767
+ return;
768
+ }
769
+ }
770
+ for (MLRNImages images : mImages) {
771
+ images.sendImageMissingEvent(id, mMap);
772
+ }
773
+ }
774
+
775
+ private float getDisplayDensity() {
776
+ return mContext.getResources().getDisplayMetrics().density;
777
+ }
778
+
779
+ public void setReactStyleURL(String styleURL) {
780
+ mStyleURL = styleURL;
781
+
782
+ if (mMap != null) {
783
+ removeAllSourcesFromMap();
784
+
785
+ if (isJSONValid(mStyleURL)) {
786
+ mMap.setStyle(new Style.Builder().fromJson(mStyleURL), new Style.OnStyleLoaded() {
787
+ @Override
788
+ public void onStyleLoaded(@NonNull Style style) {
789
+ addAllSourcesToMap();
790
+ }
791
+ });
792
+ } else {
793
+ mMap.setStyle(styleURL, new Style.OnStyleLoaded() {
794
+ @Override
795
+ public void onStyleLoaded(@NonNull Style style) {
796
+ addAllSourcesToMap();
797
+ }
798
+ });
799
+ }
800
+ }
801
+ }
802
+
803
+ public void setReactPreferredFramesPerSecond(Integer preferredFramesPerSecond) {
804
+ mPreferredFramesPerSecond = preferredFramesPerSecond;
805
+ updatePreferredFramesPerSecond();
806
+ }
807
+
808
+ public void setReactContentInset(ReadableArray array) {
809
+ mInsets = array;
810
+ updateInsets();
811
+ }
812
+
813
+ public void setLocalizeLabels(boolean localizeLabels) {
814
+ mLocalizeLabels = localizeLabels;
815
+ }
816
+
817
+ public void setReactZoomEnabled(boolean zoomEnabled) {
818
+ mZoomEnabled = zoomEnabled;
819
+ updateUISettings();
820
+ }
821
+
822
+ public void setReactScrollEnabled(boolean scrollEnabled) {
823
+ mScrollEnabled = scrollEnabled;
824
+ updateUISettings();
825
+ }
826
+
827
+ public void setReactPitchEnabled(boolean pitchEnabled) {
828
+ mPitchEnabled = pitchEnabled;
829
+ updateUISettings();
830
+ }
831
+
832
+ public void setReactRotateEnabled(boolean rotateEnabled) {
833
+ mRotateEnabled = rotateEnabled;
834
+ updateUISettings();
835
+ }
836
+
837
+ public void setReactLogoEnabled(boolean logoEnabled) {
838
+ mLogoEnabled = logoEnabled;
839
+ updateUISettings();
840
+ }
841
+
842
+ public void setReactLogoPosition(ReadableMap position) {
843
+ if (position == null) {
844
+ // reset from explicit to default
845
+ if (mLogoGravity != null) {
846
+ MapLibreMapOptions defaultOptions = MapLibreMapOptions.createFromAttributes(mContext);
847
+ mLogoGravity = defaultOptions.getLogoGravity();
848
+ mLogoMargins = Arrays.copyOf(defaultOptions.getLogoMargins(), 4);
849
+ updateUISettings();
850
+ }
851
+ return;
852
+ }
853
+
854
+ mLogoGravity = Gravity.NO_GRAVITY;
855
+ if (position.hasKey("left")) {
856
+ mLogoGravity |= Gravity.START;
857
+ }
858
+ if (position.hasKey("right")) {
859
+ mLogoGravity |= Gravity.END;
860
+ }
861
+ if (position.hasKey("top")) {
862
+ mLogoGravity |= Gravity.TOP;
863
+ }
864
+ if (position.hasKey("bottom")) {
865
+ mLogoGravity |= Gravity.BOTTOM;
866
+ }
867
+ float density = getDisplayDensity();
868
+ mLogoMargins = new int[] {
869
+ position.hasKey("left") ? (int) density * position.getInt("left") : 0,
870
+ position.hasKey("top") ? (int) density * position.getInt("top") : 0,
871
+ position.hasKey("right") ? (int) density * position.getInt("right") : 0,
872
+ position.hasKey("bottom") ? (int) density * position.getInt("bottom") : 0
873
+ };
874
+ updateUISettings();
875
+ }
876
+
877
+ public void setReactCompassEnabled(boolean compassEnabled) {
878
+ mCompassEnabled = compassEnabled;
879
+ updateUISettings();
880
+ }
881
+
882
+ public void setReactCompassViewMargins(ReadableMap compassViewMargins) {
883
+ mCompassViewMargins = compassViewMargins;
884
+ updateUISettings();
885
+ }
886
+
887
+ public void setReactCompassViewPosition(int compassViewPosition) {
888
+ mCompassViewPosition = compassViewPosition;
889
+ updateUISettings();
890
+ }
891
+
892
+ public void setReactAttributionEnabled(boolean attributionEnabled) {
893
+ mAttributionEnabled = attributionEnabled;
894
+ updateUISettings();
895
+ }
896
+
897
+ public void setReactAttributionPosition(ReadableMap position) {
898
+ if (position == null) {
899
+ // reset from explicit to default
900
+ if (mAttributionGravity != null) {
901
+ MapLibreMapOptions defaultOptions = MapLibreMapOptions.createFromAttributes(mContext);
902
+ mAttributionGravity = defaultOptions.getAttributionGravity();
903
+ mAttributionMargin = Arrays.copyOf(defaultOptions.getAttributionMargins(), 4);
904
+ updateUISettings();
905
+ }
906
+ return;
907
+ }
908
+ mAttributionGravity = Gravity.NO_GRAVITY;
909
+ if (position.hasKey("left")) {
910
+ mAttributionGravity |= Gravity.START;
911
+ }
912
+ if (position.hasKey("right")) {
913
+ mAttributionGravity |= Gravity.END;
914
+ }
915
+ if (position.hasKey("top")) {
916
+ mAttributionGravity |= Gravity.TOP;
917
+ }
918
+ if (position.hasKey("bottom")) {
919
+ mAttributionGravity |= Gravity.BOTTOM;
920
+ }
921
+ float density = getDisplayDensity();
922
+ mAttributionMargin = new int[] {
923
+ position.hasKey("left") ? Math.round(density * position.getInt("left")) : 0,
924
+ position.hasKey("top") ? Math.round(density * position.getInt("top")) : 0,
925
+ position.hasKey("right") ? Math.round(density * position.getInt("right")) : 0,
926
+ position.hasKey("bottom") ? Math.round(density * position.getInt("bottom")) : 0
927
+ };
928
+ updateUISettings();
929
+ }
930
+
931
+ public void queryRenderedFeaturesAtPoint(String callbackID, PointF point, Expression filter,
932
+ List<String> layerIDs) {
933
+ List<Feature> features = mMap.queryRenderedFeatures(point, filter,
934
+ layerIDs.toArray(new String[layerIDs.size()]));
935
+
936
+ WritableMap payload = new WritableNativeMap();
937
+ payload.putString("data", FeatureCollection.fromFeatures(features).toJson());
938
+
939
+ AndroidCallbackEvent event = new AndroidCallbackEvent(this, callbackID, payload);
940
+ mManager.handleEvent(event);
941
+ }
942
+
943
+ public void getZoom(String callbackID) {
944
+ CameraPosition position = mMap.getCameraPosition();
945
+
946
+ WritableMap payload = new WritableNativeMap();
947
+ payload.putDouble("zoom", position.zoom);
948
+
949
+ AndroidCallbackEvent event = new AndroidCallbackEvent(this, callbackID, payload);
950
+ mManager.handleEvent(event);
951
+ }
952
+
953
+ public void queryRenderedFeaturesInRect(String callbackID, RectF rect, Expression filter, List<String> layerIDs) {
954
+ List<Feature> features = mMap.queryRenderedFeatures(rect, filter,
955
+ layerIDs.toArray(new String[layerIDs.size()]));
956
+
957
+ WritableMap payload = new WritableNativeMap();
958
+ payload.putString("data", FeatureCollection.fromFeatures(features).toJson());
959
+
960
+ AndroidCallbackEvent event = new AndroidCallbackEvent(this, callbackID, payload);
961
+ mManager.handleEvent(event);
962
+ }
963
+
964
+ public void getVisibleBounds(String callbackID) {
965
+ VisibleRegion region = mMap.getProjection().getVisibleRegion();
966
+
967
+ WritableMap payload = new WritableNativeMap();
968
+ payload.putArray("visibleBounds", GeoJSONUtils.fromLatLngBounds(region.latLngBounds));
969
+
970
+ AndroidCallbackEvent event = new AndroidCallbackEvent(this, callbackID, payload);
971
+ mManager.handleEvent(event);
972
+ }
973
+
974
+ public void getPointInView(String callbackID, LatLng mapCoordinate) {
975
+
976
+ PointF pointInView = mMap.getProjection().toScreenLocation(mapCoordinate);
977
+ float density = getDisplayDensity();
978
+ pointInView.x /= density;
979
+ pointInView.y /= density;
980
+ WritableMap payload = new WritableNativeMap();
981
+
982
+ WritableArray array = new WritableNativeArray();
983
+ array.pushDouble(pointInView.x);
984
+ array.pushDouble(pointInView.y);
985
+ payload.putArray("pointInView", array);
986
+
987
+ AndroidCallbackEvent event = new AndroidCallbackEvent(this, callbackID, payload);
988
+ mManager.handleEvent(event);
989
+ }
990
+
991
+ public void getCoordinateFromView(String callbackID, PointF pointInView) {
992
+ float density = getDisplayDensity();
993
+ pointInView.x *= density;
994
+ pointInView.y *= density;
995
+
996
+ LatLng mapCoordinate = mMap.getProjection().fromScreenLocation(pointInView);
997
+ WritableMap payload = new WritableNativeMap();
998
+
999
+ WritableArray array = new WritableNativeArray();
1000
+ array.pushDouble(mapCoordinate.getLongitude());
1001
+ array.pushDouble(mapCoordinate.getLatitude());
1002
+ payload.putArray("coordinateFromView", array);
1003
+
1004
+ AndroidCallbackEvent event = new AndroidCallbackEvent(this, callbackID, payload);
1005
+ mManager.handleEvent(event);
1006
+ }
1007
+
1008
+ public void takeSnap(final String callbackID, final boolean writeToDisk) {
1009
+
1010
+ if (mMap == null) {
1011
+ throw new Error("takeSnap should only be called after the map has rendered");
1012
+ }
1013
+
1014
+ mMap.snapshot(new MapLibreMap.SnapshotReadyCallback() {
1015
+ @Override
1016
+ public void onSnapshotReady(Bitmap snapshot) {
1017
+ WritableMap payload = new WritableNativeMap();
1018
+ String uri = writeToDisk ? BitmapUtils.createTempFile(mContext, snapshot)
1019
+ : BitmapUtils.createBase64(snapshot);
1020
+ payload.putString("uri", uri);
1021
+
1022
+ AndroidCallbackEvent event = new AndroidCallbackEvent(MLRNMapView.this, callbackID, payload);
1023
+ mManager.handleEvent(event);
1024
+ }
1025
+ });
1026
+ }
1027
+
1028
+ public void getCenter(String callbackID) {
1029
+ LatLng center = mMap.getCameraPosition().target;
1030
+
1031
+ WritableArray array = new WritableNativeArray();
1032
+ array.pushDouble(center.getLongitude());
1033
+ array.pushDouble(center.getLatitude());
1034
+ WritableMap payload = new WritableNativeMap();
1035
+ payload.putArray("center", array);
1036
+
1037
+ AndroidCallbackEvent event = new AndroidCallbackEvent(this, callbackID, payload);
1038
+ mManager.handleEvent(event);
1039
+ }
1040
+
1041
+ public void showAttribution() {
1042
+ AttributionDialogManager manager = new AttributionDialogManager(mContext, mMap);
1043
+ manager.onClick(this);
1044
+ }
1045
+
1046
+ public void setSourceVisibility(final boolean visible, @NonNull final String sourceId,
1047
+ @Nullable final String sourceLayerId) {
1048
+ if (mMap == null) {
1049
+ return;
1050
+ }
1051
+ mMap.getStyle(new Style.OnStyleLoaded() {
1052
+ @Override
1053
+ public void onStyleLoaded(@NonNull Style style) {
1054
+ List<Layer> layers = style.getLayers();
1055
+ for (Layer layer : layers) {
1056
+ LayerSourceInfo layerSourceInfo = new LayerSourceInfo(layer);
1057
+ if (layerSourceInfo.sourceId.equals(sourceId) && (sourceLayerId == null
1058
+ || sourceLayerId.equals(layerSourceInfo.sourceLayerId))) {
1059
+ layer.setProperties(visibility(visible ? Property.VISIBLE : Property.NONE));
1060
+ }
1061
+ }
1062
+ }
1063
+ });
1064
+ }
1065
+
1066
+ public void init() {
1067
+ // Required for rendering properly in Android Oreo
1068
+ getViewTreeObserver().dispatchOnGlobalLayout();
1069
+ }
1070
+
1071
+ public boolean isDestroyed() {
1072
+ return mDestroyed;
1073
+ }
1074
+
1075
+ public void getStyle(Style.OnStyleLoaded onStyleLoaded) {
1076
+ if (mMap == null) {
1077
+ return;
1078
+ }
1079
+
1080
+ mMap.getStyle(onStyleLoaded);
1081
+ }
1082
+
1083
+ private void updateUISettings() {
1084
+ if (mMap == null) {
1085
+ return;
1086
+ }
1087
+
1088
+ UiSettings uiSettings = mMap.getUiSettings();
1089
+
1090
+ if (mScrollEnabled != null && uiSettings.isScrollGesturesEnabled() != mScrollEnabled) {
1091
+ uiSettings.setScrollGesturesEnabled(mScrollEnabled);
1092
+ if (!mScrollEnabled) {
1093
+ mMap.getGesturesManager().getMoveGestureDetector().interrupt();
1094
+ }
1095
+ }
1096
+
1097
+ if (mPitchEnabled != null && uiSettings.isTiltGesturesEnabled() != mPitchEnabled) {
1098
+ uiSettings.setTiltGesturesEnabled(mPitchEnabled);
1099
+ }
1100
+
1101
+ if (mRotateEnabled != null && uiSettings.isRotateGesturesEnabled() != mRotateEnabled) {
1102
+ uiSettings.setRotateGesturesEnabled(mRotateEnabled);
1103
+ if (!mRotateEnabled) {
1104
+ mMap.getGesturesManager().getRotateGestureDetector().interrupt();
1105
+ }
1106
+ }
1107
+
1108
+ if (mAttributionEnabled != null && uiSettings.isAttributionEnabled() != mAttributionEnabled) {
1109
+ uiSettings.setAttributionEnabled(mAttributionEnabled);
1110
+ }
1111
+
1112
+ if (mAttributionGravity != null && uiSettings.getAttributionGravity() != mAttributionGravity) {
1113
+ uiSettings.setAttributionGravity(mAttributionGravity);
1114
+ }
1115
+
1116
+ if (mAttributionMargin != null &&
1117
+ (uiSettings.getAttributionMarginLeft() != mAttributionMargin[0] ||
1118
+ uiSettings.getAttributionMarginTop() != mAttributionMargin[1] ||
1119
+ uiSettings.getAttributionMarginRight() != mAttributionMargin[2] ||
1120
+ uiSettings.getAttributionMarginBottom() != mAttributionMargin[3])) {
1121
+ uiSettings.setAttributionMargins(
1122
+ mAttributionMargin[0],
1123
+ mAttributionMargin[1],
1124
+ mAttributionMargin[2],
1125
+ mAttributionMargin[3]);
1126
+ }
1127
+
1128
+ if (mTintColor != null) {
1129
+ uiSettings.setAttributionTintColor(mTintColor);
1130
+ }
1131
+
1132
+ if (mLogoEnabled != null && uiSettings.isLogoEnabled() != mLogoEnabled) {
1133
+ uiSettings.setLogoEnabled(mLogoEnabled);
1134
+ }
1135
+
1136
+ if (mLogoGravity != null && uiSettings.getLogoGravity() != mLogoGravity) {
1137
+ uiSettings.setLogoGravity(mLogoGravity);
1138
+ }
1139
+
1140
+ if (mLogoMargins != null &&
1141
+ (uiSettings.getLogoMarginLeft() != mLogoMargins[0] ||
1142
+ uiSettings.getLogoMarginTop() != mLogoMargins[1] ||
1143
+ uiSettings.getLogoMarginRight() != mLogoMargins[2] ||
1144
+ uiSettings.getLogoMarginBottom() != mLogoMargins[3])) {
1145
+ uiSettings.setLogoMargins(
1146
+ mLogoMargins[0],
1147
+ mLogoMargins[1],
1148
+ mLogoMargins[2],
1149
+ mLogoMargins[3]);
1150
+ }
1151
+
1152
+ if (mCompassEnabled != null && uiSettings.isCompassEnabled() != mCompassEnabled) {
1153
+ uiSettings.setCompassEnabled(mCompassEnabled);
1154
+ }
1155
+
1156
+ if (mCompassViewPosition != -1 && uiSettings.isCompassEnabled()) {
1157
+ switch (mCompassViewPosition) {
1158
+ case 0:
1159
+ uiSettings.setCompassGravity(Gravity.TOP | Gravity.START);
1160
+ break;
1161
+ case 1:
1162
+ uiSettings.setCompassGravity(Gravity.TOP | Gravity.END);
1163
+ break;
1164
+ case 2:
1165
+ uiSettings.setCompassGravity(Gravity.BOTTOM | Gravity.START);
1166
+ break;
1167
+ case 3:
1168
+ uiSettings.setCompassGravity(Gravity.BOTTOM | Gravity.END);
1169
+ break;
1170
+ }
1171
+ }
1172
+
1173
+ if (mCompassViewMargins != null && uiSettings.isCompassEnabled()) {
1174
+ float pixelDensity = getResources().getDisplayMetrics().density;
1175
+
1176
+ int x = Math.round(mCompassViewMargins.getInt("x") * pixelDensity);
1177
+ int y = Math.round(mCompassViewMargins.getInt("y") * pixelDensity);
1178
+
1179
+ switch (uiSettings.getCompassGravity()) {
1180
+ case Gravity.TOP | Gravity.START:
1181
+ uiSettings.setCompassMargins(x, y, 0, 0);
1182
+ break;
1183
+ default:
1184
+ case Gravity.TOP | Gravity.END:
1185
+ uiSettings.setCompassMargins(0, y, x, 0);
1186
+ break;
1187
+ case Gravity.BOTTOM | Gravity.START:
1188
+ uiSettings.setCompassMargins(x, 0, 0, y);
1189
+ break;
1190
+ case Gravity.BOTTOM | Gravity.END:
1191
+ uiSettings.setCompassMargins(0, 0, x, y);
1192
+ break;
1193
+ }
1194
+ }
1195
+
1196
+ if (mZoomEnabled != null && uiSettings.isZoomGesturesEnabled() != mZoomEnabled) {
1197
+ uiSettings.setZoomGesturesEnabled(mZoomEnabled);
1198
+ if (!mZoomEnabled) {
1199
+ mMap.getGesturesManager().getStandardScaleGestureDetector().interrupt();
1200
+ }
1201
+ }
1202
+ }
1203
+
1204
+ private void updatePreferredFramesPerSecond() {
1205
+ if (mPreferredFramesPerSecond == null) {
1206
+ return;
1207
+ }
1208
+ setMaximumFps(mPreferredFramesPerSecond);
1209
+ }
1210
+
1211
+ public double[] getContentInset() {
1212
+ if (mInsets == null) {
1213
+ double[] result = { 0, 0, 0, 0 };
1214
+
1215
+ return result;
1216
+ }
1217
+ double top = 0, right = 0, bottom = 0, left = 0;
1218
+
1219
+ if (mInsets.size() == 4) {
1220
+ top = mInsets.getInt(0);
1221
+ right = mInsets.getInt(1);
1222
+ bottom = mInsets.getInt(2);
1223
+ left = mInsets.getInt(3);
1224
+ } else if (mInsets.size() == 2) {
1225
+ top = mInsets.getInt(0);
1226
+ right = mInsets.getInt(1);
1227
+ bottom = top;
1228
+ left = right;
1229
+ } else if (mInsets.size() == 1) {
1230
+ top = mInsets.getInt(0);
1231
+ right = top;
1232
+ bottom = top;
1233
+ left = top;
1234
+ }
1235
+
1236
+ final DisplayMetrics metrics = mContext.getResources().getDisplayMetrics();
1237
+
1238
+ double[] result = { left * metrics.scaledDensity, top * metrics.scaledDensity, right * metrics.scaledDensity,
1239
+ bottom * metrics.scaledDensity };
1240
+ return result;
1241
+ }
1242
+
1243
+ private void updateInsets() {
1244
+ if (mMap == null || mInsets == null) {
1245
+ return;
1246
+ }
1247
+
1248
+ double padding[] = getContentInset();
1249
+ double top = padding[1], right = padding[2], bottom = padding[3], left = padding[0];
1250
+
1251
+ mMap.setPadding(Double.valueOf(left).intValue(),
1252
+ Double.valueOf(top).intValue(),
1253
+ Double.valueOf(right).intValue(),
1254
+ Double.valueOf(bottom).intValue());
1255
+ }
1256
+
1257
+ private void setLifecycleListeners() {
1258
+ final ReactContext reactContext = (ReactContext) mContext;
1259
+
1260
+ mLifeCycleListener = new LifecycleEventListener() {
1261
+ @Override
1262
+ public void onHostResume() {
1263
+ onResume();
1264
+ }
1265
+
1266
+ @Override
1267
+ public void onHostPause() {
1268
+ onPause();
1269
+ }
1270
+
1271
+ @Override
1272
+ public void onHostDestroy() {
1273
+ dispose();
1274
+ }
1275
+ };
1276
+
1277
+ reactContext.addLifecycleEventListener(mLifeCycleListener);
1278
+ }
1279
+
1280
+ private WritableMap makeRegionPayload(Boolean isAnimated) {
1281
+ CameraPosition position = mMap.getCameraPosition();
1282
+ if (position == null || position.target == null) {
1283
+ return new WritableNativeMap();
1284
+ }
1285
+ LatLng latLng = new LatLng(position.target.getLatitude(), position.target.getLongitude());
1286
+
1287
+ WritableMap properties = new WritableNativeMap();
1288
+
1289
+ properties.putDouble("zoomLevel", position.zoom);
1290
+ properties.putDouble("heading", position.bearing);
1291
+ properties.putDouble("pitch", position.tilt);
1292
+ properties.putBoolean("animated",
1293
+ (null == isAnimated) ? mCameraChangeTracker.isAnimated() : isAnimated.booleanValue());
1294
+ properties.putBoolean("isUserInteraction", mCameraChangeTracker.isUserInteraction());
1295
+
1296
+ try {
1297
+ VisibleRegion visibleRegion = mMap.getProjection().getVisibleRegion();
1298
+ properties.putArray("visibleBounds", GeoJSONUtils.fromLatLngBounds(visibleRegion.latLngBounds));
1299
+ } catch (Exception ex) {
1300
+ Logger.e(LOG_TAG,
1301
+ String.format("An error occurred while attempting to make the region: %s", ex.getMessage()));
1302
+ }
1303
+
1304
+ return GeoJSONUtils.toPointFeature(latLng, properties);
1305
+ }
1306
+
1307
+ public void sendRegionChangeEvent(boolean isAnimated) {
1308
+ IEvent event = new MapChangeEvent(this, EventTypes.REGION_DID_CHANGE,
1309
+ makeRegionPayload(new Boolean(isAnimated)));
1310
+
1311
+ mManager.handleEvent(event);
1312
+ mCameraChangeTracker.setReason(CameraChangeTracker.EMPTY);
1313
+ }
1314
+
1315
+ private void removeAllSourcesFromMap() {
1316
+ if (mSources.size() == 0) {
1317
+ return;
1318
+ }
1319
+ for (String key : mSources.keySet()) {
1320
+ MLRNSource source = mSources.get(key);
1321
+ source.removeFromMap(this);
1322
+ }
1323
+ }
1324
+
1325
+ private void addAllSourcesToMap() {
1326
+ if (mSources.size() == 0) {
1327
+ return;
1328
+ }
1329
+ for (String key : mSources.keySet()) {
1330
+ MLRNSource source = mSources.get(key);
1331
+ source.addToMap(this);
1332
+ }
1333
+ }
1334
+
1335
+ private List<MLRNSource> getAllTouchableSources() {
1336
+ List<MLRNSource> sources = new ArrayList<>();
1337
+
1338
+ for (String key : mSources.keySet()) {
1339
+ MLRNSource source = mSources.get(key);
1340
+ if (source != null && source.hasPressListener()) {
1341
+ sources.add(source);
1342
+ }
1343
+ }
1344
+
1345
+ return sources;
1346
+ }
1347
+
1348
+ private List<MLRNShapeSource> getAllShapeSources() {
1349
+ List<MLRNShapeSource> shapeSources = new ArrayList<>();
1350
+
1351
+ for (String key : mSources.keySet()) {
1352
+ MLRNSource source = mSources.get(key);
1353
+
1354
+ if (source instanceof MLRNShapeSource) {
1355
+ shapeSources.add((MLRNShapeSource) source);
1356
+ }
1357
+ }
1358
+
1359
+ return shapeSources;
1360
+ }
1361
+
1362
+ private MLRNSource getTouchableSourceWithHighestZIndex(List<MLRNSource> sources) {
1363
+ if (sources == null || sources.size() == 0) {
1364
+ return null;
1365
+ }
1366
+
1367
+ if (sources.size() == 1) {
1368
+ return sources.get(0);
1369
+ }
1370
+
1371
+ Map<String, MLRNSource> layerToSourceMap = new HashMap<>();
1372
+ for (MLRNSource source : sources) {
1373
+ String[] layerIDs = source.getLayerIDs();
1374
+
1375
+ for (String layerID : layerIDs) {
1376
+ layerToSourceMap.put(layerID, source);
1377
+ }
1378
+ }
1379
+
1380
+ List<Layer> mapboxLayers = mMap.getStyle().getLayers();
1381
+ for (int i = mapboxLayers.size() - 1; i >= 0; i--) {
1382
+ Layer mapboxLayer = mapboxLayers.get(i);
1383
+
1384
+ String layerID = mapboxLayer.getId();
1385
+ if (layerToSourceMap.containsKey(layerID)) {
1386
+ return layerToSourceMap.get(layerID);
1387
+ }
1388
+ }
1389
+
1390
+ return null;
1391
+ }
1392
+
1393
+ private boolean hasSetCenterCoordinate() {
1394
+ CameraPosition cameraPosition = mMap.getCameraPosition();
1395
+ LatLng center = cameraPosition.target;
1396
+ return center.getLatitude() != 0.0 && center.getLongitude() != 0.0;
1397
+ }
1398
+
1399
+ private double getMapRotation() {
1400
+ CameraPosition cameraPosition = mMap.getCameraPosition();
1401
+ return cameraPosition.bearing;
1402
+ }
1403
+
1404
+ public void sendRegionDidChangeEvent() {
1405
+
1406
+ handleMapChangedEvent(EventTypes.REGION_DID_CHANGE);
1407
+ mCameraChangeTracker.setReason(mCameraChangeTracker.EMPTY);
1408
+ }
1409
+
1410
+ private void handleMapChangedEvent(String eventType) {
1411
+ if (!canHandleEvent(eventType))
1412
+ return;
1413
+
1414
+ IEvent event;
1415
+
1416
+ switch (eventType) {
1417
+ case EventTypes.REGION_WILL_CHANGE:
1418
+ case EventTypes.REGION_DID_CHANGE:
1419
+ case EventTypes.REGION_IS_CHANGING:
1420
+ event = new MapChangeEvent(this, eventType, makeRegionPayload(null));
1421
+ break;
1422
+ default:
1423
+ event = new MapChangeEvent(this, eventType);
1424
+ }
1425
+
1426
+ mManager.handleEvent(event);
1427
+ }
1428
+
1429
+ private boolean canHandleEvent(String event) {
1430
+ return mHandledMapChangedEvents == null || mHandledMapChangedEvents.contains(event);
1431
+ }
1432
+
1433
+ public void setHandledMapChangedEvents(ArrayList<String> eventsWhiteList) {
1434
+ this.mHandledMapChangedEvents = new HashSet<>(eventsWhiteList);
1435
+ }
1436
+
1437
+ private void sendUserLocationUpdateEvent(Location location) {
1438
+ if (location == null) {
1439
+ return;
1440
+ }
1441
+ IEvent event = new MapChangeEvent(this, EventTypes.USER_LOCATION_UPDATED, makeLocationChangePayload(location));
1442
+ mManager.handleEvent(event);
1443
+ }
1444
+
1445
+ private WritableMap makeLocationChangePayload(Location location) {
1446
+
1447
+ WritableMap positionProperties = new WritableNativeMap();
1448
+ WritableMap coords = new WritableNativeMap();
1449
+
1450
+ coords.putDouble("longitude", location.getLongitude());
1451
+ coords.putDouble("latitude", location.getLatitude());
1452
+ coords.putDouble("altitude", location.getAltitude());
1453
+ coords.putDouble("accuracy", location.getAccuracy());
1454
+ // A better solution will be to pull the heading from the compass engine,
1455
+ // unfortunately the api is not publicly available in the mapbox sdk
1456
+ coords.putDouble("heading", location.getBearing());
1457
+ coords.putDouble("course", location.getBearing());
1458
+ coords.putDouble("speed", location.getSpeed());
1459
+
1460
+ positionProperties.putMap("coords", coords);
1461
+ positionProperties.putDouble("timestamp", location.getTime());
1462
+ return positionProperties;
1463
+ }
1464
+
1465
+ /**
1466
+ * Adds the marker image to the map for use as a SymbolLayer icon
1467
+ */
1468
+ private void setUpImage(@NonNull Style loadedStyle) {
1469
+ loadedStyle.addImage("MARKER_IMAGE_ID", BitmapFactory.decodeResource(
1470
+ this.getResources(), R.drawable.red_marker));
1471
+ }
1472
+
1473
+ /**
1474
+ * PointAnnotations are rendered to a canvas, but react native Image component
1475
+ * is
1476
+ * implemented on top of Fresco, and fresco will not load images when their view
1477
+ * is
1478
+ * not attached to the window. So we'll have an offscreen view where we add
1479
+ * those views
1480
+ * so they can rendered full to canvas.
1481
+ */
1482
+ public ViewGroup offscreenAnnotationViewContainer() {
1483
+ if (mOffscreenAnnotationViewContainer == null) {
1484
+ mOffscreenAnnotationViewContainer = new FrameLayout(getContext());
1485
+ FrameLayout.LayoutParams flParams = new FrameLayout.LayoutParams(0, 0);
1486
+ flParams.setMargins(-10000, -10000, -10000, -10000);
1487
+ mOffscreenAnnotationViewContainer.setLayoutParams(flParams);
1488
+ addView(mOffscreenAnnotationViewContainer);
1489
+ }
1490
+ return mOffscreenAnnotationViewContainer;
1491
+ }
1492
+
1493
+ public MarkerViewManager getMarkerViewManager(MapLibreMap map) {
1494
+ if (markerViewManager == null) {
1495
+ if (map == null) {
1496
+ throw new Error("makerViewManager should be called one the map has loaded");
1497
+ }
1498
+ markerViewManager = new MarkerViewManager(this, map);
1499
+ }
1500
+ return markerViewManager;
1501
+ }
1502
+
1503
+ public LocationComponentManager getLocationComponentManager() {
1504
+ if (mLocationComponentManager == null) {
1505
+ mLocationComponentManager = new LocationComponentManager(this, mContext);
1506
+ }
1507
+ return mLocationComponentManager;
1508
+ }
1509
+
1510
+ public @Nullable Integer getTintColor() {
1511
+ return mTintColor;
1512
+ }
1513
+
1514
+ public void setTintColor(@Nullable Integer tintColor) {
1515
+ if (mTintColor == tintColor)
1516
+ return;
1517
+ mTintColor = tintColor;
1518
+ updateUISettings();
1519
+ if (mLocationComponentManager == null)
1520
+ return;
1521
+ mLocationComponentManager.update(getMapboxMap().getStyle());
1522
+ }
1523
+ }