@maplibre/maplibre-react-native 10.0.0-beta.8 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (548) hide show
  1. package/README.md +10 -54
  2. package/android/build.gradle +35 -12
  3. package/android/gradle.properties +14 -6
  4. package/android/src/main/java/org/maplibre/reactnative/components/camera/MLRNCamera.java +37 -48
  5. package/android/src/main/java/org/maplibre/reactnative/components/location/LocationComponentManager.java +16 -9
  6. package/android/src/main/java/org/maplibre/reactnative/components/mapview/MLRNMapView.java +11 -13
  7. package/android/src/main/java/org/maplibre/reactnative/components/mapview/MLRNMapViewManager.java +4 -11
  8. package/android/src/main/java/org/maplibre/reactnative/components/styles/MLRNStyle.java +1 -4
  9. package/android/src/main/java/org/maplibre/reactnative/components/styles/MLRNStyleFactory.java +10 -11
  10. package/android/src/main/java/org/maplibre/reactnative/location/LocationManager.java +7 -11
  11. package/android/src/main/java/org/maplibre/reactnative/location/engine/DefaultLocationEngineProvider.java +18 -0
  12. package/android/src/main/java/org/maplibre/reactnative/location/engine/LocationEngineProvidable.java +9 -0
  13. package/android/src/main/java/org/maplibre/reactnative/modules/MLRNModule.java +27 -148
  14. package/android/src/main/java/org/maplibre/reactnative/modules/MLRNOfflineModule.java +1 -3
  15. package/android/src/main/java/org/maplibre/reactnative/utils/GeoJSONUtils.java +123 -18
  16. package/android/src/main/location-engine-default/org/maplibre/reactnative/location/engine/LocationEngineProvider.java +12 -0
  17. package/android/src/main/location-engine-google/org/maplibre/reactnative/location/engine/GoogleLocationEngineImpl.java +151 -0
  18. package/android/src/main/location-engine-google/org/maplibre/reactnative/location/engine/GoogleLocationEngineProvider.java +24 -0
  19. package/android/src/main/location-engine-google/org/maplibre/reactnative/location/engine/LocationEngineProvider.java +12 -0
  20. package/app.plugin.js +1 -1
  21. package/ios/MLRN/MLRNCamera.m +6 -7
  22. package/ios/MLRN/MLRNMapView.h +1 -1
  23. package/ios/MLRN/MLRNMapView.m +7 -7
  24. package/ios/MLRN/MLRNMapViewManager.m +1 -1
  25. package/ios/MLRN/MLRNModule.m +8 -139
  26. package/ios/MLRN/MLRNStyle.m +0 -40
  27. package/lib/commonjs/MLRNModule.js +3 -5
  28. package/lib/commonjs/MLRNModule.js.map +1 -1
  29. package/lib/commonjs/MapLibreRN.js +77 -59
  30. package/lib/commonjs/MapLibreRN.js.map +1 -1
  31. package/lib/commonjs/components/Annotation.js +7 -9
  32. package/lib/commonjs/components/Annotation.js.map +1 -1
  33. package/lib/commonjs/components/BackgroundLayer.js +6 -8
  34. package/lib/commonjs/components/BackgroundLayer.js.map +1 -1
  35. package/lib/commonjs/components/Callout.js +2 -2
  36. package/lib/commonjs/components/Callout.js.map +1 -1
  37. package/lib/commonjs/components/Camera.js +111 -63
  38. package/lib/commonjs/components/Camera.js.map +1 -1
  39. package/lib/commonjs/components/CircleLayer.js +6 -8
  40. package/lib/commonjs/components/CircleLayer.js.map +1 -1
  41. package/lib/commonjs/components/FillExtrusionLayer.js +6 -8
  42. package/lib/commonjs/components/FillExtrusionLayer.js.map +1 -1
  43. package/lib/commonjs/components/FillLayer.js +6 -8
  44. package/lib/commonjs/components/FillLayer.js.map +1 -1
  45. package/lib/commonjs/components/HeadingIndicator.js +4 -4
  46. package/lib/commonjs/components/HeadingIndicator.js.map +1 -1
  47. package/lib/commonjs/components/HeatmapLayer.js +6 -8
  48. package/lib/commonjs/components/HeatmapLayer.js.map +1 -1
  49. package/lib/commonjs/components/ImageSource.js +4 -5
  50. package/lib/commonjs/components/ImageSource.js.map +1 -1
  51. package/lib/commonjs/components/Images.js +2 -2
  52. package/lib/commonjs/components/Images.js.map +1 -1
  53. package/lib/commonjs/components/Light.js +4 -6
  54. package/lib/commonjs/components/Light.js.map +1 -1
  55. package/lib/commonjs/components/LineLayer.js +6 -8
  56. package/lib/commonjs/components/LineLayer.js.map +1 -1
  57. package/lib/commonjs/components/MapView.js +69 -76
  58. package/lib/commonjs/components/MapView.js.map +1 -1
  59. package/lib/commonjs/components/MarkerView.js +4 -5
  60. package/lib/commonjs/components/MarkerView.js.map +1 -1
  61. package/lib/commonjs/components/NativeUserLocation.js +2 -2
  62. package/lib/commonjs/components/NativeUserLocation.js.map +1 -1
  63. package/lib/commonjs/components/PointAnnotation.js +7 -10
  64. package/lib/commonjs/components/PointAnnotation.js.map +1 -1
  65. package/lib/commonjs/components/RasterLayer.js +6 -8
  66. package/lib/commonjs/components/RasterLayer.js.map +1 -1
  67. package/lib/commonjs/components/RasterSource.js +8 -10
  68. package/lib/commonjs/components/RasterSource.js.map +1 -1
  69. package/lib/commonjs/components/ShapeSource.js +6 -8
  70. package/lib/commonjs/components/ShapeSource.js.map +1 -1
  71. package/lib/commonjs/components/SymbolLayer.js +6 -7
  72. package/lib/commonjs/components/SymbolLayer.js.map +1 -1
  73. package/lib/commonjs/components/UserLocation.js +21 -23
  74. package/lib/commonjs/components/UserLocation.js.map +1 -1
  75. package/lib/commonjs/components/VectorSource.js +8 -10
  76. package/lib/commonjs/components/VectorSource.js.map +1 -1
  77. package/lib/commonjs/hooks/useAbstractLayer.js +1 -1
  78. package/lib/commonjs/hooks/useAbstractLayer.js.map +1 -1
  79. package/lib/commonjs/hooks/useAbstractSource.js +1 -1
  80. package/lib/commonjs/hooks/useAbstractSource.js.map +1 -1
  81. package/lib/commonjs/hooks/useNativeBridge.js +2 -2
  82. package/lib/commonjs/hooks/useNativeBridge.js.map +1 -1
  83. package/lib/commonjs/hooks/useOnce.js +2 -2
  84. package/lib/commonjs/hooks/useOnce.js.map +1 -1
  85. package/lib/commonjs/index.js +3 -0
  86. package/lib/commonjs/index.js.map +1 -1
  87. package/lib/commonjs/modules/location/{locationManager.js → LocationManager.js} +10 -10
  88. package/lib/commonjs/modules/location/LocationManager.js.map +1 -0
  89. package/lib/commonjs/modules/offline/OfflineCreatePackOptions.js +2 -2
  90. package/lib/commonjs/modules/offline/OfflineCreatePackOptions.js.map +1 -1
  91. package/lib/commonjs/modules/offline/{offlineManager.js → OfflineManager.js} +34 -36
  92. package/lib/commonjs/modules/offline/OfflineManager.js.map +1 -0
  93. package/lib/commonjs/modules/offline/OfflinePack.js +2 -2
  94. package/lib/commonjs/modules/offline/OfflinePack.js.map +1 -1
  95. package/lib/commonjs/modules/snapshot/{snapshotManager.js → SnapshotManager.js} +12 -14
  96. package/lib/commonjs/modules/snapshot/SnapshotManager.js.map +1 -0
  97. package/lib/commonjs/modules/snapshot/SnapshotOptions.js +3 -4
  98. package/lib/commonjs/modules/snapshot/SnapshotOptions.js.map +1 -1
  99. package/lib/commonjs/plugin/MapLibrePluginProps.js +2 -0
  100. package/lib/commonjs/plugin/MapLibrePluginProps.js.map +1 -0
  101. package/lib/commonjs/plugin/android.js +41 -0
  102. package/lib/commonjs/plugin/android.js.map +1 -0
  103. package/lib/commonjs/plugin/ios.js +131 -0
  104. package/lib/commonjs/plugin/ios.js.map +1 -0
  105. package/lib/commonjs/plugin/withMapLibre.js +31 -0
  106. package/lib/commonjs/plugin/withMapLibre.js.map +1 -0
  107. package/lib/commonjs/types/MapLibreRNStyles.js +6 -0
  108. package/lib/commonjs/types/MapLibreRNStyles.js.map +1 -0
  109. package/lib/commonjs/utils/BridgeValue.js +2 -2
  110. package/lib/commonjs/utils/BridgeValue.js.map +1 -1
  111. package/lib/commonjs/utils/Logger.js +2 -2
  112. package/lib/commonjs/utils/Logger.js.map +1 -1
  113. package/lib/commonjs/utils/StyleValue.js +4 -5
  114. package/lib/commonjs/utils/StyleValue.js.map +1 -1
  115. package/lib/commonjs/utils/animated/AbstractAnimatedCoordinates.js +2 -2
  116. package/lib/commonjs/utils/animated/AbstractAnimatedCoordinates.js.map +1 -1
  117. package/lib/commonjs/utils/animated/Animated.js +29 -31
  118. package/lib/commonjs/utils/animated/Animated.js.map +1 -1
  119. package/lib/commonjs/utils/animated/AnimatedCoordinatesArray.js +4 -5
  120. package/lib/commonjs/utils/animated/AnimatedCoordinatesArray.js.map +1 -1
  121. package/lib/commonjs/utils/animated/AnimatedExtractCoordinateFromArray.js +2 -2
  122. package/lib/commonjs/utils/animated/AnimatedExtractCoordinateFromArray.js.map +1 -1
  123. package/lib/commonjs/utils/animated/AnimatedPoint.js +1 -2
  124. package/lib/commonjs/utils/animated/AnimatedPoint.js.map +1 -1
  125. package/lib/commonjs/utils/animated/AnimatedRouteCoordinatesArray.js +4 -4
  126. package/lib/commonjs/utils/animated/AnimatedRouteCoordinatesArray.js.map +1 -1
  127. package/lib/commonjs/utils/animated/AnimatedShape.js +2 -2
  128. package/lib/commonjs/utils/animated/AnimatedShape.js.map +1 -1
  129. package/lib/commonjs/utils/getStylePropertyType.js +252 -0
  130. package/lib/commonjs/utils/getStylePropertyType.js.map +1 -0
  131. package/lib/module/MLRNModule.js +1 -2
  132. package/lib/module/MLRNModule.js.map +1 -1
  133. package/lib/module/MapLibreRN.js +40 -28
  134. package/lib/module/MapLibreRN.js.map +1 -1
  135. package/lib/module/components/Annotation.js +5 -6
  136. package/lib/module/components/Annotation.js.map +1 -1
  137. package/lib/module/components/BackgroundLayer.js +4 -6
  138. package/lib/module/components/BackgroundLayer.js.map +1 -1
  139. package/lib/module/components/Callout.js +2 -3
  140. package/lib/module/components/Callout.js.map +1 -1
  141. package/lib/module/components/Camera.js +112 -64
  142. package/lib/module/components/Camera.js.map +1 -1
  143. package/lib/module/components/CircleLayer.js +4 -6
  144. package/lib/module/components/CircleLayer.js.map +1 -1
  145. package/lib/module/components/FillExtrusionLayer.js +4 -6
  146. package/lib/module/components/FillExtrusionLayer.js.map +1 -1
  147. package/lib/module/components/FillLayer.js +4 -6
  148. package/lib/module/components/FillLayer.js.map +1 -1
  149. package/lib/module/components/HeadingIndicator.js +2 -3
  150. package/lib/module/components/HeadingIndicator.js.map +1 -1
  151. package/lib/module/components/HeatmapLayer.js +4 -6
  152. package/lib/module/components/HeatmapLayer.js.map +1 -1
  153. package/lib/module/components/ImageSource.js +2 -3
  154. package/lib/module/components/ImageSource.js.map +1 -1
  155. package/lib/module/components/Images.js +2 -3
  156. package/lib/module/components/Images.js.map +1 -1
  157. package/lib/module/components/Light.js +2 -4
  158. package/lib/module/components/Light.js.map +1 -1
  159. package/lib/module/components/LineLayer.js +4 -6
  160. package/lib/module/components/LineLayer.js.map +1 -1
  161. package/lib/module/components/MapView.js +65 -72
  162. package/lib/module/components/MapView.js.map +1 -1
  163. package/lib/module/components/MarkerView.js +2 -3
  164. package/lib/module/components/MarkerView.js.map +1 -1
  165. package/lib/module/components/NativeUserLocation.js +1 -2
  166. package/lib/module/components/NativeUserLocation.js.map +1 -1
  167. package/lib/module/components/PointAnnotation.js +5 -7
  168. package/lib/module/components/PointAnnotation.js.map +1 -1
  169. package/lib/module/components/RasterLayer.js +4 -6
  170. package/lib/module/components/RasterLayer.js.map +1 -1
  171. package/lib/module/components/RasterSource.js +5 -7
  172. package/lib/module/components/RasterSource.js.map +1 -1
  173. package/lib/module/components/ShapeSource.js +4 -5
  174. package/lib/module/components/ShapeSource.js.map +1 -1
  175. package/lib/module/components/SymbolLayer.js +4 -5
  176. package/lib/module/components/SymbolLayer.js.map +1 -1
  177. package/lib/module/components/UserLocation.js +14 -15
  178. package/lib/module/components/UserLocation.js.map +1 -1
  179. package/lib/module/components/VectorSource.js +5 -6
  180. package/lib/module/components/VectorSource.js.map +1 -1
  181. package/lib/module/hooks/useAbstractLayer.js +1 -1
  182. package/lib/module/hooks/useAbstractLayer.js.map +1 -1
  183. package/lib/module/hooks/useAbstractSource.js +1 -1
  184. package/lib/module/hooks/useAbstractSource.js.map +1 -1
  185. package/lib/module/hooks/useNativeBridge.js +1 -2
  186. package/lib/module/hooks/useNativeBridge.js.map +1 -1
  187. package/lib/module/hooks/useNativeRef.js.map +1 -1
  188. package/lib/module/hooks/useOnce.js +1 -2
  189. package/lib/module/hooks/useOnce.js.map +1 -1
  190. package/lib/module/index.js +4 -0
  191. package/lib/module/index.js.map +1 -1
  192. package/lib/module/modules/location/{locationManager.js → LocationManager.js} +10 -9
  193. package/lib/module/modules/location/LocationManager.js.map +1 -0
  194. package/lib/module/modules/offline/OfflineCreatePackOptions.js +1 -2
  195. package/lib/module/modules/offline/OfflineCreatePackOptions.js.map +1 -1
  196. package/lib/module/modules/offline/{offlineManager.js → OfflineManager.js} +30 -30
  197. package/lib/module/modules/offline/OfflineManager.js.map +1 -0
  198. package/lib/module/modules/offline/OfflinePack.js +1 -2
  199. package/lib/module/modules/offline/OfflinePack.js.map +1 -1
  200. package/lib/module/modules/snapshot/{snapshotManager.js → SnapshotManager.js} +10 -10
  201. package/lib/module/modules/snapshot/{snapshotManager.js.map → SnapshotManager.js.map} +1 -1
  202. package/lib/module/modules/snapshot/SnapshotOptions.js +2 -3
  203. package/lib/module/modules/snapshot/SnapshotOptions.js.map +1 -1
  204. package/lib/module/plugin/MapLibrePluginProps.js +2 -0
  205. package/lib/module/plugin/MapLibrePluginProps.js.map +1 -0
  206. package/lib/module/plugin/android.js +34 -0
  207. package/lib/module/plugin/android.js.map +1 -0
  208. package/lib/module/plugin/ios.js +123 -0
  209. package/lib/module/plugin/ios.js.map +1 -0
  210. package/lib/module/plugin/withMapLibre.js +27 -0
  211. package/lib/module/plugin/withMapLibre.js.map +1 -0
  212. package/lib/module/types/MapLibreRNStyles.js +4 -0
  213. package/lib/module/types/MapLibreRNStyles.js.map +1 -0
  214. package/lib/module/utils/BridgeValue.js +1 -1
  215. package/lib/module/utils/BridgeValue.js.map +1 -1
  216. package/lib/module/utils/Logger.js +1 -2
  217. package/lib/module/utils/Logger.js.map +1 -1
  218. package/lib/module/utils/StyleValue.js +3 -3
  219. package/lib/module/utils/StyleValue.js.map +1 -1
  220. package/lib/module/utils/animated/AbstractAnimatedCoordinates.js +1 -2
  221. package/lib/module/utils/animated/AbstractAnimatedCoordinates.js.map +1 -1
  222. package/lib/module/utils/animated/Animated.js +14 -15
  223. package/lib/module/utils/animated/Animated.js.map +1 -1
  224. package/lib/module/utils/animated/AnimatedCoordinatesArray.js +2 -3
  225. package/lib/module/utils/animated/AnimatedCoordinatesArray.js.map +1 -1
  226. package/lib/module/utils/animated/AnimatedExtractCoordinateFromArray.js +1 -1
  227. package/lib/module/utils/animated/AnimatedExtractCoordinateFromArray.js.map +1 -1
  228. package/lib/module/utils/animated/AnimatedPoint.js +0 -1
  229. package/lib/module/utils/animated/AnimatedPoint.js.map +1 -1
  230. package/lib/module/utils/animated/AnimatedRouteCoordinatesArray.js +2 -2
  231. package/lib/module/utils/animated/AnimatedRouteCoordinatesArray.js.map +1 -1
  232. package/lib/module/utils/animated/AnimatedShape.js +1 -2
  233. package/lib/module/utils/animated/AnimatedShape.js.map +1 -1
  234. package/lib/module/utils/getStylePropertyType.js +248 -0
  235. package/lib/module/utils/getStylePropertyType.js.map +1 -0
  236. package/lib/typescript/commonjs/src/MLRNModule.d.ts +2 -6
  237. package/lib/typescript/commonjs/src/MLRNModule.d.ts.map +1 -1
  238. package/lib/typescript/commonjs/src/MapLibreRN.d.ts +43 -30
  239. package/lib/typescript/commonjs/src/MapLibreRN.d.ts.map +1 -1
  240. package/lib/typescript/commonjs/src/components/Annotation.d.ts +6 -6
  241. package/lib/typescript/commonjs/src/components/Annotation.d.ts.map +1 -1
  242. package/lib/typescript/commonjs/src/components/BackgroundLayer.d.ts +3 -5
  243. package/lib/typescript/commonjs/src/components/BackgroundLayer.d.ts.map +1 -1
  244. package/lib/typescript/commonjs/src/components/Callout.d.ts +3 -4
  245. package/lib/typescript/commonjs/src/components/Callout.d.ts.map +1 -1
  246. package/lib/typescript/commonjs/src/components/Camera.d.ts +4 -4
  247. package/lib/typescript/commonjs/src/components/Camera.d.ts.map +1 -1
  248. package/lib/typescript/commonjs/src/components/CircleLayer.d.ts +3 -5
  249. package/lib/typescript/commonjs/src/components/CircleLayer.d.ts.map +1 -1
  250. package/lib/typescript/commonjs/src/components/FillExtrusionLayer.d.ts +3 -5
  251. package/lib/typescript/commonjs/src/components/FillExtrusionLayer.d.ts.map +1 -1
  252. package/lib/typescript/commonjs/src/components/FillLayer.d.ts +3 -5
  253. package/lib/typescript/commonjs/src/components/FillLayer.d.ts.map +1 -1
  254. package/lib/typescript/commonjs/src/components/HeadingIndicator.d.ts +2 -3
  255. package/lib/typescript/commonjs/src/components/HeadingIndicator.d.ts.map +1 -1
  256. package/lib/typescript/commonjs/src/components/HeatmapLayer.d.ts +3 -5
  257. package/lib/typescript/commonjs/src/components/HeatmapLayer.d.ts.map +1 -1
  258. package/lib/typescript/commonjs/src/components/ImageSource.d.ts +3 -4
  259. package/lib/typescript/commonjs/src/components/ImageSource.d.ts.map +1 -1
  260. package/lib/typescript/commonjs/src/components/Images.d.ts +5 -5
  261. package/lib/typescript/commonjs/src/components/Images.d.ts.map +1 -1
  262. package/lib/typescript/commonjs/src/components/Light.d.ts +4 -5
  263. package/lib/typescript/commonjs/src/components/Light.d.ts.map +1 -1
  264. package/lib/typescript/commonjs/src/components/LineLayer.d.ts +3 -5
  265. package/lib/typescript/commonjs/src/components/LineLayer.d.ts.map +1 -1
  266. package/lib/typescript/commonjs/src/components/MapView.d.ts +12 -15
  267. package/lib/typescript/commonjs/src/components/MapView.d.ts.map +1 -1
  268. package/lib/typescript/commonjs/src/components/MarkerView.d.ts +3 -3
  269. package/lib/typescript/commonjs/src/components/MarkerView.d.ts.map +1 -1
  270. package/lib/typescript/commonjs/src/components/NativeUserLocation.d.ts +2 -3
  271. package/lib/typescript/commonjs/src/components/NativeUserLocation.d.ts.map +1 -1
  272. package/lib/typescript/commonjs/src/components/PointAnnotation.d.ts +7 -8
  273. package/lib/typescript/commonjs/src/components/PointAnnotation.d.ts.map +1 -1
  274. package/lib/typescript/commonjs/src/components/RasterLayer.d.ts +3 -5
  275. package/lib/typescript/commonjs/src/components/RasterLayer.d.ts.map +1 -1
  276. package/lib/typescript/commonjs/src/components/RasterSource.d.ts +4 -4
  277. package/lib/typescript/commonjs/src/components/RasterSource.d.ts.map +1 -1
  278. package/lib/typescript/commonjs/src/components/ShapeSource.d.ts +8 -15
  279. package/lib/typescript/commonjs/src/components/ShapeSource.d.ts.map +1 -1
  280. package/lib/typescript/commonjs/src/components/SymbolLayer.d.ts +3 -4
  281. package/lib/typescript/commonjs/src/components/SymbolLayer.d.ts.map +1 -1
  282. package/lib/typescript/commonjs/src/components/UserLocation.d.ts +6 -6
  283. package/lib/typescript/commonjs/src/components/UserLocation.d.ts.map +1 -1
  284. package/lib/typescript/commonjs/src/components/VectorSource.d.ts +4 -8
  285. package/lib/typescript/commonjs/src/components/VectorSource.d.ts.map +1 -1
  286. package/lib/typescript/commonjs/src/hooks/useAbstractLayer.d.ts +5 -4
  287. package/lib/typescript/commonjs/src/hooks/useAbstractLayer.d.ts.map +1 -1
  288. package/lib/typescript/commonjs/src/hooks/useAbstractSource.d.ts +4 -3
  289. package/lib/typescript/commonjs/src/hooks/useAbstractSource.d.ts.map +1 -1
  290. package/lib/typescript/commonjs/src/hooks/useNativeBridge.d.ts +5 -5
  291. package/lib/typescript/commonjs/src/hooks/useNativeBridge.d.ts.map +1 -1
  292. package/lib/typescript/commonjs/src/hooks/useNativeRef.d.ts +2 -2
  293. package/lib/typescript/commonjs/src/hooks/useNativeRef.d.ts.map +1 -1
  294. package/lib/typescript/commonjs/src/hooks/useOnce.d.ts +1 -2
  295. package/lib/typescript/commonjs/src/hooks/useOnce.d.ts.map +1 -1
  296. package/lib/typescript/commonjs/src/index.d.ts +3 -0
  297. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  298. package/lib/typescript/commonjs/src/modules/location/LocationManager.d.ts +33 -0
  299. package/lib/typescript/commonjs/src/modules/location/LocationManager.d.ts.map +1 -0
  300. package/lib/typescript/commonjs/src/modules/offline/OfflineCreatePackOptions.d.ts +1 -2
  301. package/lib/typescript/commonjs/src/modules/offline/OfflineCreatePackOptions.d.ts.map +1 -1
  302. package/lib/typescript/commonjs/src/modules/offline/{offlineManager.d.ts → OfflineManager.d.ts} +25 -25
  303. package/lib/typescript/commonjs/src/modules/offline/OfflineManager.d.ts.map +1 -0
  304. package/lib/typescript/commonjs/src/modules/offline/OfflinePack.d.ts +2 -3
  305. package/lib/typescript/commonjs/src/modules/offline/OfflinePack.d.ts.map +1 -1
  306. package/lib/typescript/{module/src/modules/snapshot/snapshotManager.d.ts → commonjs/src/modules/snapshot/SnapshotManager.d.ts} +9 -9
  307. package/lib/typescript/commonjs/src/modules/snapshot/SnapshotManager.d.ts.map +1 -0
  308. package/lib/typescript/commonjs/src/modules/snapshot/SnapshotOptions.d.ts +1 -1
  309. package/lib/typescript/commonjs/src/modules/snapshot/SnapshotOptions.d.ts.map +1 -1
  310. package/lib/typescript/commonjs/src/plugin/MapLibrePluginProps.d.ts +77 -0
  311. package/lib/typescript/commonjs/src/plugin/MapLibrePluginProps.d.ts.map +1 -0
  312. package/lib/typescript/commonjs/src/plugin/android.d.ts +16 -0
  313. package/lib/typescript/commonjs/src/plugin/android.d.ts.map +1 -0
  314. package/lib/typescript/commonjs/src/plugin/ios.d.ts +17 -0
  315. package/lib/typescript/commonjs/src/plugin/ios.d.ts.map +1 -0
  316. package/lib/typescript/commonjs/src/plugin/withMapLibre.d.ts +5 -0
  317. package/lib/typescript/commonjs/src/plugin/withMapLibre.d.ts.map +1 -0
  318. package/lib/typescript/commonjs/src/types/MapLibreRNStyles.d.ts +960 -0
  319. package/lib/typescript/commonjs/src/types/MapLibreRNStyles.d.ts.map +1 -0
  320. package/lib/typescript/commonjs/src/utils/BridgeValue.d.ts +1 -1
  321. package/lib/typescript/commonjs/src/utils/BridgeValue.d.ts.map +1 -1
  322. package/lib/typescript/commonjs/src/utils/Logger.d.ts +2 -2
  323. package/lib/typescript/commonjs/src/utils/Logger.d.ts.map +1 -1
  324. package/lib/typescript/commonjs/src/utils/StyleValue.d.ts +2 -2
  325. package/lib/typescript/commonjs/src/utils/StyleValue.d.ts.map +1 -1
  326. package/lib/typescript/commonjs/src/utils/animated/AbstractAnimatedCoordinates.d.ts +2 -2
  327. package/lib/typescript/commonjs/src/utils/animated/AbstractAnimatedCoordinates.d.ts.map +1 -1
  328. package/lib/typescript/commonjs/src/utils/animated/Animated.d.ts +19 -19
  329. package/lib/typescript/commonjs/src/utils/animated/Animated.d.ts.map +1 -1
  330. package/lib/typescript/commonjs/src/utils/animated/AnimatedCoordinatesArray.d.ts +3 -3
  331. package/lib/typescript/commonjs/src/utils/animated/AnimatedCoordinatesArray.d.ts.map +1 -1
  332. package/lib/typescript/commonjs/src/utils/animated/AnimatedExtractCoordinateFromArray.d.ts +1 -1
  333. package/lib/typescript/commonjs/src/utils/animated/AnimatedExtractCoordinateFromArray.d.ts.map +1 -1
  334. package/lib/typescript/commonjs/src/utils/animated/AnimatedPoint.d.ts +1 -1
  335. package/lib/typescript/commonjs/src/utils/animated/AnimatedPoint.d.ts.map +1 -1
  336. package/lib/typescript/commonjs/src/utils/animated/AnimatedRouteCoordinatesArray.d.ts +2 -2
  337. package/lib/typescript/commonjs/src/utils/animated/AnimatedRouteCoordinatesArray.d.ts.map +1 -1
  338. package/lib/typescript/commonjs/src/utils/animated/AnimatedShape.d.ts +5 -5
  339. package/lib/typescript/commonjs/src/utils/animated/AnimatedShape.d.ts.map +1 -1
  340. package/lib/typescript/commonjs/src/utils/filterUtils.d.ts +1 -1
  341. package/lib/typescript/commonjs/src/utils/filterUtils.d.ts.map +1 -1
  342. package/lib/typescript/commonjs/src/utils/getStylePropertyType.d.ts +35 -0
  343. package/lib/typescript/commonjs/src/utils/getStylePropertyType.d.ts.map +1 -0
  344. package/lib/typescript/module/src/MLRNModule.d.ts +2 -6
  345. package/lib/typescript/module/src/MLRNModule.d.ts.map +1 -1
  346. package/lib/typescript/module/src/MapLibreRN.d.ts +43 -30
  347. package/lib/typescript/module/src/MapLibreRN.d.ts.map +1 -1
  348. package/lib/typescript/module/src/components/Annotation.d.ts +6 -6
  349. package/lib/typescript/module/src/components/Annotation.d.ts.map +1 -1
  350. package/lib/typescript/module/src/components/BackgroundLayer.d.ts +3 -5
  351. package/lib/typescript/module/src/components/BackgroundLayer.d.ts.map +1 -1
  352. package/lib/typescript/module/src/components/Callout.d.ts +3 -4
  353. package/lib/typescript/module/src/components/Callout.d.ts.map +1 -1
  354. package/lib/typescript/module/src/components/Camera.d.ts +4 -4
  355. package/lib/typescript/module/src/components/Camera.d.ts.map +1 -1
  356. package/lib/typescript/module/src/components/CircleLayer.d.ts +3 -5
  357. package/lib/typescript/module/src/components/CircleLayer.d.ts.map +1 -1
  358. package/lib/typescript/module/src/components/FillExtrusionLayer.d.ts +3 -5
  359. package/lib/typescript/module/src/components/FillExtrusionLayer.d.ts.map +1 -1
  360. package/lib/typescript/module/src/components/FillLayer.d.ts +3 -5
  361. package/lib/typescript/module/src/components/FillLayer.d.ts.map +1 -1
  362. package/lib/typescript/module/src/components/HeadingIndicator.d.ts +2 -3
  363. package/lib/typescript/module/src/components/HeadingIndicator.d.ts.map +1 -1
  364. package/lib/typescript/module/src/components/HeatmapLayer.d.ts +3 -5
  365. package/lib/typescript/module/src/components/HeatmapLayer.d.ts.map +1 -1
  366. package/lib/typescript/module/src/components/ImageSource.d.ts +3 -4
  367. package/lib/typescript/module/src/components/ImageSource.d.ts.map +1 -1
  368. package/lib/typescript/module/src/components/Images.d.ts +5 -5
  369. package/lib/typescript/module/src/components/Images.d.ts.map +1 -1
  370. package/lib/typescript/module/src/components/Light.d.ts +4 -5
  371. package/lib/typescript/module/src/components/Light.d.ts.map +1 -1
  372. package/lib/typescript/module/src/components/LineLayer.d.ts +3 -5
  373. package/lib/typescript/module/src/components/LineLayer.d.ts.map +1 -1
  374. package/lib/typescript/module/src/components/MapView.d.ts +12 -15
  375. package/lib/typescript/module/src/components/MapView.d.ts.map +1 -1
  376. package/lib/typescript/module/src/components/MarkerView.d.ts +3 -3
  377. package/lib/typescript/module/src/components/MarkerView.d.ts.map +1 -1
  378. package/lib/typescript/module/src/components/NativeUserLocation.d.ts +2 -3
  379. package/lib/typescript/module/src/components/NativeUserLocation.d.ts.map +1 -1
  380. package/lib/typescript/module/src/components/PointAnnotation.d.ts +7 -8
  381. package/lib/typescript/module/src/components/PointAnnotation.d.ts.map +1 -1
  382. package/lib/typescript/module/src/components/RasterLayer.d.ts +3 -5
  383. package/lib/typescript/module/src/components/RasterLayer.d.ts.map +1 -1
  384. package/lib/typescript/module/src/components/RasterSource.d.ts +4 -4
  385. package/lib/typescript/module/src/components/RasterSource.d.ts.map +1 -1
  386. package/lib/typescript/module/src/components/ShapeSource.d.ts +8 -15
  387. package/lib/typescript/module/src/components/ShapeSource.d.ts.map +1 -1
  388. package/lib/typescript/module/src/components/SymbolLayer.d.ts +3 -4
  389. package/lib/typescript/module/src/components/SymbolLayer.d.ts.map +1 -1
  390. package/lib/typescript/module/src/components/UserLocation.d.ts +6 -6
  391. package/lib/typescript/module/src/components/UserLocation.d.ts.map +1 -1
  392. package/lib/typescript/module/src/components/VectorSource.d.ts +4 -8
  393. package/lib/typescript/module/src/components/VectorSource.d.ts.map +1 -1
  394. package/lib/typescript/module/src/hooks/useAbstractLayer.d.ts +5 -4
  395. package/lib/typescript/module/src/hooks/useAbstractLayer.d.ts.map +1 -1
  396. package/lib/typescript/module/src/hooks/useAbstractSource.d.ts +4 -3
  397. package/lib/typescript/module/src/hooks/useAbstractSource.d.ts.map +1 -1
  398. package/lib/typescript/module/src/hooks/useNativeBridge.d.ts +5 -5
  399. package/lib/typescript/module/src/hooks/useNativeBridge.d.ts.map +1 -1
  400. package/lib/typescript/module/src/hooks/useNativeRef.d.ts +2 -2
  401. package/lib/typescript/module/src/hooks/useNativeRef.d.ts.map +1 -1
  402. package/lib/typescript/module/src/hooks/useOnce.d.ts +1 -2
  403. package/lib/typescript/module/src/hooks/useOnce.d.ts.map +1 -1
  404. package/lib/typescript/module/src/index.d.ts +3 -0
  405. package/lib/typescript/module/src/index.d.ts.map +1 -1
  406. package/lib/typescript/module/src/modules/location/LocationManager.d.ts +33 -0
  407. package/lib/typescript/module/src/modules/location/LocationManager.d.ts.map +1 -0
  408. package/lib/typescript/module/src/modules/offline/OfflineCreatePackOptions.d.ts +1 -2
  409. package/lib/typescript/module/src/modules/offline/OfflineCreatePackOptions.d.ts.map +1 -1
  410. package/lib/typescript/module/src/modules/offline/{offlineManager.d.ts → OfflineManager.d.ts} +25 -25
  411. package/lib/typescript/module/src/modules/offline/OfflineManager.d.ts.map +1 -0
  412. package/lib/typescript/module/src/modules/offline/OfflinePack.d.ts +2 -3
  413. package/lib/typescript/module/src/modules/offline/OfflinePack.d.ts.map +1 -1
  414. package/lib/typescript/{commonjs/src/modules/snapshot/snapshotManager.d.ts → module/src/modules/snapshot/SnapshotManager.d.ts} +9 -9
  415. package/lib/typescript/module/src/modules/snapshot/SnapshotManager.d.ts.map +1 -0
  416. package/lib/typescript/module/src/modules/snapshot/SnapshotOptions.d.ts +1 -1
  417. package/lib/typescript/module/src/modules/snapshot/SnapshotOptions.d.ts.map +1 -1
  418. package/lib/typescript/module/src/plugin/MapLibrePluginProps.d.ts +77 -0
  419. package/lib/typescript/module/src/plugin/MapLibrePluginProps.d.ts.map +1 -0
  420. package/lib/typescript/module/src/plugin/android.d.ts +16 -0
  421. package/lib/typescript/module/src/plugin/android.d.ts.map +1 -0
  422. package/lib/typescript/module/src/plugin/ios.d.ts +17 -0
  423. package/lib/typescript/module/src/plugin/ios.d.ts.map +1 -0
  424. package/lib/typescript/module/src/plugin/withMapLibre.d.ts +5 -0
  425. package/lib/typescript/module/src/plugin/withMapLibre.d.ts.map +1 -0
  426. package/lib/typescript/module/src/types/MapLibreRNStyles.d.ts +960 -0
  427. package/lib/typescript/module/src/types/MapLibreRNStyles.d.ts.map +1 -0
  428. package/lib/typescript/module/src/utils/BridgeValue.d.ts +1 -1
  429. package/lib/typescript/module/src/utils/BridgeValue.d.ts.map +1 -1
  430. package/lib/typescript/module/src/utils/Logger.d.ts +2 -2
  431. package/lib/typescript/module/src/utils/Logger.d.ts.map +1 -1
  432. package/lib/typescript/module/src/utils/StyleValue.d.ts +2 -2
  433. package/lib/typescript/module/src/utils/StyleValue.d.ts.map +1 -1
  434. package/lib/typescript/module/src/utils/animated/AbstractAnimatedCoordinates.d.ts +2 -2
  435. package/lib/typescript/module/src/utils/animated/AbstractAnimatedCoordinates.d.ts.map +1 -1
  436. package/lib/typescript/module/src/utils/animated/Animated.d.ts +19 -19
  437. package/lib/typescript/module/src/utils/animated/Animated.d.ts.map +1 -1
  438. package/lib/typescript/module/src/utils/animated/AnimatedCoordinatesArray.d.ts +3 -3
  439. package/lib/typescript/module/src/utils/animated/AnimatedCoordinatesArray.d.ts.map +1 -1
  440. package/lib/typescript/module/src/utils/animated/AnimatedExtractCoordinateFromArray.d.ts +1 -1
  441. package/lib/typescript/module/src/utils/animated/AnimatedExtractCoordinateFromArray.d.ts.map +1 -1
  442. package/lib/typescript/module/src/utils/animated/AnimatedPoint.d.ts +1 -1
  443. package/lib/typescript/module/src/utils/animated/AnimatedPoint.d.ts.map +1 -1
  444. package/lib/typescript/module/src/utils/animated/AnimatedRouteCoordinatesArray.d.ts +2 -2
  445. package/lib/typescript/module/src/utils/animated/AnimatedRouteCoordinatesArray.d.ts.map +1 -1
  446. package/lib/typescript/module/src/utils/animated/AnimatedShape.d.ts +5 -5
  447. package/lib/typescript/module/src/utils/animated/AnimatedShape.d.ts.map +1 -1
  448. package/lib/typescript/module/src/utils/filterUtils.d.ts +1 -1
  449. package/lib/typescript/module/src/utils/filterUtils.d.ts.map +1 -1
  450. package/lib/typescript/module/src/utils/getStylePropertyType.d.ts +35 -0
  451. package/lib/typescript/module/src/utils/getStylePropertyType.d.ts.map +1 -0
  452. package/maplibre-react-native.podspec +15 -14
  453. package/package.json +17 -14
  454. package/src/MLRNModule.ts +15 -10
  455. package/src/MapLibreRN.ts +59 -41
  456. package/src/components/Annotation.tsx +12 -14
  457. package/src/components/BackgroundLayer.tsx +7 -9
  458. package/src/components/Callout.tsx +8 -10
  459. package/src/components/Camera.tsx +154 -78
  460. package/src/components/CircleLayer.tsx +7 -9
  461. package/src/components/FillExtrusionLayer.tsx +7 -9
  462. package/src/components/FillLayer.tsx +7 -9
  463. package/src/components/HeadingIndicator.tsx +2 -6
  464. package/src/components/HeatmapLayer.tsx +7 -9
  465. package/src/components/ImageSource.tsx +4 -6
  466. package/src/components/Images.tsx +7 -9
  467. package/src/components/Light.tsx +5 -7
  468. package/src/components/LineLayer.tsx +7 -9
  469. package/src/components/MapView.tsx +85 -94
  470. package/src/components/MarkerView.tsx +4 -6
  471. package/src/components/NativeUserLocation.tsx +1 -4
  472. package/src/components/PointAnnotation.tsx +10 -11
  473. package/src/components/RasterLayer.tsx +7 -9
  474. package/src/components/RasterSource.tsx +7 -9
  475. package/src/components/ShapeSource.tsx +17 -22
  476. package/src/components/SymbolLayer.tsx +7 -8
  477. package/src/components/UserLocation.tsx +21 -22
  478. package/src/components/VectorSource.tsx +8 -15
  479. package/src/hooks/useAbstractLayer.ts +8 -8
  480. package/src/hooks/useAbstractSource.ts +6 -6
  481. package/src/hooks/useNativeBridge.ts +9 -6
  482. package/src/hooks/useNativeRef.ts +2 -2
  483. package/src/hooks/useOnce.ts +3 -3
  484. package/src/index.ts +3 -0
  485. package/src/modules/location/{locationManager.ts → LocationManager.ts} +16 -15
  486. package/src/modules/offline/OfflineCreatePackOptions.ts +1 -3
  487. package/src/modules/offline/{offlineManager.ts → OfflineManager.ts} +30 -29
  488. package/src/modules/offline/OfflinePack.ts +2 -4
  489. package/src/modules/snapshot/{snapshotManager.ts → SnapshotManager.ts} +9 -9
  490. package/src/modules/snapshot/SnapshotOptions.ts +2 -4
  491. package/src/plugin/MapLibrePluginProps.ts +83 -0
  492. package/src/plugin/android.ts +64 -0
  493. package/src/plugin/ios.ts +166 -0
  494. package/src/plugin/withMapLibre.ts +30 -0
  495. package/src/{utils/MapLibreRNStyles.d.ts → types/MapLibreRNStyles.ts} +86 -406
  496. package/src/utils/BridgeValue.ts +1 -1
  497. package/src/utils/Logger.ts +1 -3
  498. package/src/utils/StyleValue.ts +6 -5
  499. package/src/utils/animated/AbstractAnimatedCoordinates.ts +3 -3
  500. package/src/utils/animated/Animated.ts +23 -21
  501. package/src/utils/animated/AnimatedCoordinatesArray.ts +3 -4
  502. package/src/utils/animated/AnimatedExtractCoordinateFromArray.ts +1 -1
  503. package/src/utils/animated/AnimatedPoint.ts +0 -2
  504. package/src/utils/animated/AnimatedRouteCoordinatesArray.ts +3 -2
  505. package/src/utils/animated/AnimatedShape.ts +4 -6
  506. package/src/utils/filterUtils.ts +1 -1
  507. package/src/utils/getStylePropertyType.ts +265 -0
  508. package/lib/commonjs/modules/location/locationManager.js.map +0 -1
  509. package/lib/commonjs/modules/offline/offlineManager.js.map +0 -1
  510. package/lib/commonjs/modules/snapshot/snapshotManager.js.map +0 -1
  511. package/lib/commonjs/types/StyleURL.js +0 -11
  512. package/lib/commonjs/types/StyleURL.js.map +0 -1
  513. package/lib/commonjs/utils/MapLibreRNStyles.d.js +0 -181
  514. package/lib/commonjs/utils/MapLibreRNStyles.d.js.map +0 -1
  515. package/lib/commonjs/utils/styleMap.js +0 -255
  516. package/lib/commonjs/utils/styleMap.js.map +0 -1
  517. package/lib/module/modules/location/locationManager.js.map +0 -1
  518. package/lib/module/modules/offline/offlineManager.js.map +0 -1
  519. package/lib/module/types/StyleURL.js +0 -7
  520. package/lib/module/types/StyleURL.js.map +0 -1
  521. package/lib/module/utils/MapLibreRNStyles.d.js +0 -180
  522. package/lib/module/utils/MapLibreRNStyles.d.js.map +0 -1
  523. package/lib/module/utils/styleMap.js +0 -249
  524. package/lib/module/utils/styleMap.js.map +0 -1
  525. package/lib/typescript/commonjs/jest.config.d.ts +0 -2
  526. package/lib/typescript/commonjs/jest.config.d.ts.map +0 -1
  527. package/lib/typescript/commonjs/src/modules/location/locationManager.d.ts +0 -64
  528. package/lib/typescript/commonjs/src/modules/location/locationManager.d.ts.map +0 -1
  529. package/lib/typescript/commonjs/src/modules/offline/offlineManager.d.ts.map +0 -1
  530. package/lib/typescript/commonjs/src/modules/snapshot/snapshotManager.d.ts.map +0 -1
  531. package/lib/typescript/commonjs/src/types/StyleURL.d.ts +0 -4
  532. package/lib/typescript/commonjs/src/types/StyleURL.d.ts.map +0 -1
  533. package/lib/typescript/commonjs/src/utils/styleMap.d.ts +0 -231
  534. package/lib/typescript/commonjs/src/utils/styleMap.d.ts.map +0 -1
  535. package/lib/typescript/module/jest.config.d.ts +0 -2
  536. package/lib/typescript/module/jest.config.d.ts.map +0 -1
  537. package/lib/typescript/module/src/modules/location/locationManager.d.ts +0 -64
  538. package/lib/typescript/module/src/modules/location/locationManager.d.ts.map +0 -1
  539. package/lib/typescript/module/src/modules/offline/offlineManager.d.ts.map +0 -1
  540. package/lib/typescript/module/src/modules/snapshot/snapshotManager.d.ts.map +0 -1
  541. package/lib/typescript/module/src/types/StyleURL.d.ts +0 -4
  542. package/lib/typescript/module/src/types/StyleURL.d.ts.map +0 -1
  543. package/lib/typescript/module/src/utils/styleMap.d.ts +0 -231
  544. package/lib/typescript/module/src/utils/styleMap.d.ts.map +0 -1
  545. package/plugin/build/withMapLibre.d.ts +0 -12
  546. package/plugin/build/withMapLibre.js +0 -148
  547. package/src/types/StyleURL.ts +0 -3
  548. package/src/utils/styleMap.ts +0 -265
@@ -7,21 +7,14 @@ import android.util.Log;
7
7
 
8
8
  import org.maplibre.android.location.engine.LocationEngine;
9
9
  import org.maplibre.android.location.engine.LocationEngineCallback;
10
-
11
- /*
12
- import com.mapbox.android.core.location.LocationEngineListener;
13
- import com.mapbox.android.core.location.LocationEnginePriority;
14
- */
15
-
16
- import org.maplibre.android.location.engine.LocationEngineDefault;
17
10
  import org.maplibre.android.location.engine.LocationEngineRequest;
18
11
  import org.maplibre.android.location.engine.LocationEngineResult;
19
12
  import org.maplibre.android.location.permissions.PermissionsManager;
13
+ import org.maplibre.reactnative.location.engine.LocationEngineProvider;
20
14
 
21
15
  import java.lang.ref.WeakReference;
22
16
  import java.util.ArrayList;
23
17
  import java.util.List;
24
- import java.util.Locale;
25
18
 
26
19
  @SuppressWarnings({"MissingPermission"})
27
20
  public class LocationManager implements LocationEngineCallback<LocationEngineResult> {
@@ -58,8 +51,10 @@ public class LocationManager implements LocationEngineCallback<LocationEngineRes
58
51
  this.buildEngineRequest();
59
52
 
60
53
  }
54
+
61
55
  private void buildEngineRequest() {
62
- locationEngine = LocationEngineDefault.INSTANCE.getDefaultLocationEngine(this.context.getApplicationContext());
56
+ locationEngine = new LocationEngineProvider().getLocationEngine(context);
57
+
63
58
  locationEngineRequest = new LocationEngineRequest.Builder(DEFAULT_INTERVAL_MILLIS)
64
59
  .setFastestInterval(DEFAULT_FASTEST_INTERVAL_MILLIS)
65
60
  .setPriority(LocationEngineRequest.PRIORITY_HIGH_ACCURACY)
@@ -78,9 +73,11 @@ public class LocationManager implements LocationEngineCallback<LocationEngineRes
78
73
  listeners.remove(listener);
79
74
  }
80
75
  }
76
+
81
77
  public void setMinDisplacement(float minDisplacement) {
82
78
  mMinDisplacement = minDisplacement;
83
79
  }
80
+
84
81
  public void enable() {
85
82
  if (!PermissionsManager.areLocationPermissionsGranted(context)) {
86
83
  return;
@@ -134,8 +131,7 @@ public class LocationManager implements LocationEngineCallback<LocationEngineRes
134
131
 
135
132
  try {
136
133
  locationEngine.getLastLocation(callback);
137
- }
138
- catch(Exception exception) {
134
+ } catch (Exception exception) {
139
135
  Log.w(LOG_TAG, exception);
140
136
  callback.onFailure(exception);
141
137
  }
@@ -0,0 +1,18 @@
1
+ package org.maplibre.reactnative.location.engine;
2
+
3
+ import android.content.Context;
4
+ import android.util.Log;
5
+
6
+ import org.maplibre.android.location.engine.LocationEngine;
7
+ import org.maplibre.android.location.engine.LocationEngineDefault;
8
+
9
+ public class DefaultLocationEngineProvider implements LocationEngineProvidable {
10
+ private static final String LOG_TAG = "DefaultLocationEngineProvider";
11
+
12
+ @Override
13
+ public LocationEngine getLocationEngine(Context context) {
14
+ LocationEngine locationEngine = LocationEngineDefault.INSTANCE.getDefaultLocationEngine(context.getApplicationContext());
15
+ Log.d(LOG_TAG, "DefaultLocationEngine will be used.");
16
+ return locationEngine;
17
+ }
18
+ }
@@ -0,0 +1,9 @@
1
+ package org.maplibre.reactnative.location.engine;
2
+
3
+ import android.content.Context;
4
+
5
+ import org.maplibre.android.location.engine.LocationEngine;
6
+
7
+ public interface LocationEngineProvidable {
8
+ LocationEngine getLocationEngine(Context context);
9
+ }
@@ -11,9 +11,7 @@ import com.facebook.react.common.MapBuilder;
11
11
  import com.facebook.react.module.annotations.ReactModule;
12
12
  import org.maplibre.android.MapLibre;
13
13
  import org.maplibre.android.WellKnownTileServer;
14
- import org.maplibre.android.style.layers.Property;
15
14
  import org.maplibre.reactnative.components.camera.constants.CameraMode;
16
- import org.maplibre.reactnative.components.styles.MLRNStyleValue;
17
15
  import org.maplibre.reactnative.components.styles.sources.MLRNSource;
18
16
  import org.maplibre.reactnative.events.constants.EventTypes;
19
17
  import org.maplibre.reactnative.http.CustomHeadersInterceptor;
@@ -34,6 +32,8 @@ import javax.annotation.Nullable;
34
32
  public class MLRNModule extends ReactContextBaseJavaModule {
35
33
  public static final String REACT_CLASS = "MLRNModule";
36
34
 
35
+ public static final String DEFAULT_STYLE_URL = "https://demotiles.maplibre.org/style.json";
36
+
37
37
  private static boolean customHeaderInterceptorAdded = false;
38
38
 
39
39
  private Handler mUiThreadHandler;
@@ -44,6 +44,11 @@ public class MLRNModule extends ReactContextBaseJavaModule {
44
44
  mReactContext = reactApplicationContext;
45
45
  }
46
46
 
47
+ @Override
48
+ public void initialize() {
49
+ initializeMapLibreInstance();
50
+ }
51
+
47
52
  @Override
48
53
  public String getName() {
49
54
  return REACT_CLASS;
@@ -54,7 +59,7 @@ public class MLRNModule extends ReactContextBaseJavaModule {
54
59
  public Map<String, Object> getConstants() {
55
60
  // map style urls
56
61
  Map<String, String> styleURLS = new HashMap<>();
57
- styleURLS.put("Default", "https://demotiles.maplibre.org/style.json");
62
+ styleURLS.put("Default", DEFAULT_STYLE_URL);
58
63
 
59
64
  // events
60
65
  Map<String, String> eventTypes = new HashMap<>();
@@ -99,127 +104,6 @@ public class MLRNModule extends ReactContextBaseJavaModule {
99
104
  Map<String, String> styleSourceConsts = new HashMap<>();
100
105
  styleSourceConsts.put("DefaultSourceID", MLRNSource.DEFAULT_ID);
101
106
 
102
- // interpolation modes
103
- Map<String, Integer> interpolationModes = new HashMap<>();
104
- interpolationModes.put("Exponential", MLRNStyleValue.InterpolationModeExponential);
105
- interpolationModes.put("Categorical", MLRNStyleValue.InterpolationModeCategorical);
106
- interpolationModes.put("Interval", MLRNStyleValue.InterpolationModeInterval);
107
- interpolationModes.put("Identity", MLRNStyleValue.InterpolationModeIdentity);
108
-
109
- // line layer constants
110
- Map<String, String> lineJoin = new HashMap<>();
111
- lineJoin.put("Bevel", Property.LINE_JOIN_BEVEL);
112
- lineJoin.put("Round", Property.LINE_JOIN_ROUND);
113
- lineJoin.put("Miter", Property.LINE_JOIN_MITER);
114
-
115
- Map<String, String> lineCap = new HashMap<>();
116
- lineCap.put("Butt", Property.LINE_CAP_BUTT);
117
- lineCap.put("Round", Property.LINE_CAP_ROUND);
118
- lineCap.put("Square", Property.LINE_CAP_SQUARE);
119
-
120
- Map<String, String> lineTranslateAnchor = new HashMap<>();
121
- lineTranslateAnchor.put("Map", Property.LINE_TRANSLATE_ANCHOR_MAP);
122
- lineTranslateAnchor.put("Viewport", Property.LINE_TRANSLATE_ANCHOR_VIEWPORT);
123
-
124
- // circle layer constants
125
- Map<String, String> circlePitchScale = new HashMap<>();
126
- circlePitchScale.put("Map", Property.CIRCLE_PITCH_SCALE_MAP);
127
- circlePitchScale.put("Viewport", Property.CIRCLE_PITCH_SCALE_VIEWPORT);
128
-
129
- Map<String, String> circleTranslateAnchor = new HashMap<>();
130
- circleTranslateAnchor.put("Map", Property.CIRCLE_TRANSLATE_ANCHOR_MAP);
131
- circleTranslateAnchor.put("Viewport", Property.CIRCLE_TRANSLATE_ANCHOR_VIEWPORT);
132
-
133
- Map<String, String> circlePitchAlignment = new HashMap<>();
134
- circlePitchAlignment.put("Map", Property.CIRCLE_PITCH_ALIGNMENT_MAP);
135
- circlePitchAlignment.put("Viewport", Property.CIRCLE_PITCH_ALIGNMENT_VIEWPORT);
136
-
137
- // fill extrusion layer constants
138
- Map<String, String> fillExtrusionTranslateAnchor = new HashMap<>();
139
- fillExtrusionTranslateAnchor.put("Map", Property.FILL_EXTRUSION_TRANSLATE_ANCHOR_MAP);
140
- fillExtrusionTranslateAnchor.put("Viewport", Property.FILL_EXTRUSION_TRANSLATE_ANCHOR_VIEWPORT);
141
-
142
- // fill layer constants
143
- Map<String, String> fillTranslateAnchor = new HashMap<>();
144
- fillTranslateAnchor.put("Map", Property.FILL_TRANSLATE_ANCHOR_MAP);
145
- fillTranslateAnchor.put("Viewport", Property.FILL_TRANSLATE_ANCHOR_VIEWPORT);
146
-
147
- // symbol layer constants
148
- Map<String, String> iconRotationAlignment = new HashMap<>();
149
- iconRotationAlignment.put("Auto", Property.ICON_ROTATION_ALIGNMENT_AUTO);
150
- iconRotationAlignment.put("Map", Property.ICON_ROTATION_ALIGNMENT_MAP);
151
- iconRotationAlignment.put("Viewport", Property.ICON_ROTATION_ALIGNMENT_VIEWPORT);
152
-
153
- Map<String, String> iconTextFit = new HashMap<>();
154
- iconTextFit.put("None", Property.ICON_TEXT_FIT_NONE);
155
- iconTextFit.put("Width", Property.ICON_TEXT_FIT_WIDTH);
156
- iconTextFit.put("Height", Property.ICON_TEXT_FIT_HEIGHT);
157
- iconTextFit.put("Both", Property.ICON_TEXT_FIT_BOTH);
158
-
159
- Map<String, String> iconAnchor = new HashMap<>();
160
- iconAnchor.put("Center", Property.ICON_ANCHOR_CENTER);
161
- iconAnchor.put("Left", Property.ICON_ANCHOR_LEFT);
162
- iconAnchor.put("Right", Property.ICON_ANCHOR_RIGHT);
163
- iconAnchor.put("Top", Property.ICON_ANCHOR_TOP);
164
- iconAnchor.put("Bottom", Property.ICON_ANCHOR_BOTTOM);
165
- iconAnchor.put("TopLeft", Property.ICON_ANCHOR_TOP_LEFT);
166
- iconAnchor.put("TopRight", Property.ICON_ANCHOR_TOP_RIGHT);
167
- iconAnchor.put("BottomLeft", Property.ICON_ANCHOR_BOTTOM_LEFT);
168
- iconAnchor.put("BottomRight", Property.ICON_ANCHOR_BOTTOM_RIGHT);
169
-
170
- Map<String, String> iconPitchAlignment = new HashMap<>();
171
- iconPitchAlignment.put("Auto", Property.ICON_PITCH_ALIGNMENT_AUTO);
172
- iconPitchAlignment.put("Map", Property.ICON_PITCH_ALIGNMENT_MAP);
173
- iconPitchAlignment.put("Viewport", Property.ICON_PITCH_ALIGNMENT_VIEWPORT);
174
-
175
- Map<String, String> iconTranslateAnchor = new HashMap<>();
176
- iconTranslateAnchor.put("Map", Property.ICON_TRANSLATE_ANCHOR_MAP);
177
- iconTranslateAnchor.put("Viewport", Property.ICON_TRANSLATE_ANCHOR_VIEWPORT);
178
-
179
- Map<String, String> symbolPlacement = new HashMap<>();
180
- symbolPlacement.put("Line", Property.SYMBOL_PLACEMENT_LINE);
181
- symbolPlacement.put("Point", Property.SYMBOL_PLACEMENT_POINT);
182
-
183
- Map<String, String> textAnchor = new HashMap<>();
184
- textAnchor.put("Center", Property.TEXT_ANCHOR_CENTER);
185
- textAnchor.put("Left", Property.TEXT_ANCHOR_LEFT);
186
- textAnchor.put("Right", Property.TEXT_ANCHOR_RIGHT);
187
- textAnchor.put("Top", Property.TEXT_ANCHOR_TOP);
188
- textAnchor.put("Bottom", Property.TEXT_ANCHOR_BOTTOM);
189
- textAnchor.put("TopLeft", Property.TEXT_ANCHOR_TOP_LEFT);
190
- textAnchor.put("TopRight", Property.TEXT_ANCHOR_TOP_RIGHT);
191
- textAnchor.put("BottomLeft", Property.TEXT_ANCHOR_BOTTOM_LEFT);
192
- textAnchor.put("BottomRight", Property.TEXT_ANCHOR_BOTTOM_RIGHT);
193
-
194
- Map<String, String> textJustify = new HashMap<>();
195
- textJustify.put("Center", Property.TEXT_JUSTIFY_CENTER);
196
- textJustify.put("Left", Property.TEXT_JUSTIFY_LEFT);
197
- textJustify.put("Right", Property.TEXT_JUSTIFY_RIGHT);
198
-
199
- Map<String, String> textPitchAlignment = new HashMap<>();
200
- textPitchAlignment.put("Auto", Property.TEXT_PITCH_ALIGNMENT_AUTO);
201
- textPitchAlignment.put("Map", Property.TEXT_PITCH_ALIGNMENT_MAP);
202
- textPitchAlignment.put("Viewport", Property.TEXT_PITCH_ALIGNMENT_VIEWPORT);
203
-
204
- Map<String, String> textRotationAlignment = new HashMap<>();
205
- textRotationAlignment.put("Auto", Property.TEXT_ROTATION_ALIGNMENT_AUTO);
206
- textRotationAlignment.put("Map", Property.TEXT_ROTATION_ALIGNMENT_MAP);
207
- textRotationAlignment.put("Viewport", Property.TEXT_ROTATION_ALIGNMENT_VIEWPORT);
208
-
209
- Map<String, String> textTransform = new HashMap<>();
210
- textTransform.put("None", Property.TEXT_TRANSFORM_NONE);
211
- textTransform.put("Lowercase", Property.TEXT_TRANSFORM_LOWERCASE);
212
- textTransform.put("Uppercase", Property.TEXT_TRANSFORM_UPPERCASE);
213
-
214
- Map<String, String> textTranslateAnchor = new HashMap<>();
215
- textTranslateAnchor.put("Map", Property.TEXT_TRANSLATE_ANCHOR_MAP);
216
- textTranslateAnchor.put("Viewport", Property.TEXT_TRANSLATE_ANCHOR_VIEWPORT);
217
-
218
- // light constants
219
- Map<String, String> lightAnchor = new HashMap<>();
220
- lightAnchor.put("Map", Property.ANCHOR_MAP);
221
- lightAnchor.put("Viewport", Property.ANCHOR_VIEWPORT);
222
-
223
107
  // offline region download states
224
108
  Map<String, Integer> offlinePackDownloadStates = new HashMap<>();
225
109
  offlinePackDownloadStates.put("Inactive", MLRNOfflineModule.INACTIVE_REGION_DOWNLOAD_STATE);
@@ -242,35 +126,17 @@ public class MLRNModule extends ReactContextBaseJavaModule {
242
126
  .put("UserLocationVerticalAlignment", userLocationVerticalAlignment)
243
127
  .put("CameraModes", cameraModes)
244
128
  .put("StyleSource", styleSourceConsts)
245
- .put("InterpolationMode", interpolationModes)
246
- .put("LineJoin", lineJoin)
247
- .put("LineCap", lineCap)
248
- .put("LineTranslateAnchor", lineTranslateAnchor)
249
- .put("CirclePitchScale", circlePitchScale)
250
- .put("CircleTranslateAnchor", circleTranslateAnchor)
251
- .put("CirclePitchAlignment", circlePitchAlignment)
252
- .put("FillExtrusionTranslateAnchor", fillExtrusionTranslateAnchor)
253
- .put("FillTranslateAnchor", fillTranslateAnchor)
254
- .put("IconRotationAlignment", iconRotationAlignment)
255
- .put("IconTextFit", iconTextFit)
256
- .put("IconTranslateAnchor", iconTranslateAnchor)
257
- .put("SymbolPlacement", symbolPlacement)
258
- .put("IconAnchor", iconAnchor)
259
- .put("TextAnchor", textAnchor)
260
- .put("TextJustify", textJustify)
261
- .put("IconPitchAlignment", iconPitchAlignment)
262
- .put("TextPitchAlignment", textPitchAlignment)
263
- .put("TextRotationAlignment", textRotationAlignment)
264
- .put("TextTransform", textTransform)
265
- .put("TextTranslateAnchor", textTranslateAnchor)
266
- .put("LightAnchor", lightAnchor)
267
129
  .put("OfflinePackDownloadState", offlinePackDownloadStates)
268
130
  .put("OfflineCallbackName", offlineModuleCallbackNames)
269
131
  .put("LocationCallbackName", locationModuleCallbackNames)
270
132
  .build();
271
133
  }
272
134
 
273
- // TODO: How to handle this? API has changed significantly
135
+ /**
136
+ * @deprecated This will be removed in the next major version.
137
+ * @see https://github.com/maplibre/maplibre-react-native/issues/25#issuecomment-1382382044
138
+ */
139
+ @Deprecated
274
140
  @ReactMethod
275
141
  public void setAccessToken(final String accessToken) {
276
142
  mReactContext.runOnUiQueueThread(new Runnable() {
@@ -313,7 +179,11 @@ public class MLRNModule extends ReactContextBaseJavaModule {
313
179
  });
314
180
  }
315
181
 
316
- // TODO: How to handle this? Underlying API has changed significantly on Android
182
+ /**
183
+ * @deprecated This will be removed in the next major version.
184
+ * @see https://github.com/maplibre/maplibre-react-native/issues/25#issuecomment-1382382044
185
+ */
186
+ @Deprecated
317
187
  @ReactMethod
318
188
  public void getAccessToken(Promise promise) {
319
189
  String token = MapLibre.getApiKey();
@@ -341,4 +211,13 @@ public class MLRNModule extends ReactContextBaseJavaModule {
341
211
  dispatcher.setMaxRequestsPerHost(20);
342
212
  return dispatcher;
343
213
  }
214
+
215
+ private void initializeMapLibreInstance() {
216
+ mReactContext.runOnUiQueueThread(new Runnable() {
217
+ @Override
218
+ public void run() {
219
+ MapLibre.getInstance(getReactApplicationContext());
220
+ }
221
+ });
222
+ }
344
223
  }
@@ -9,7 +9,6 @@ import com.facebook.react.bridge.*;
9
9
  import com.facebook.react.module.annotations.ReactModule;
10
10
  import com.facebook.react.modules.core.RCTNativeAppEventEmitter;
11
11
  import org.maplibre.geojson.FeatureCollection;
12
- // import org.maplibre.android.constants.Style;
13
12
  import org.maplibre.android.geometry.LatLngBounds;
14
13
  import org.maplibre.android.offline.OfflineManager;
15
14
  import org.maplibre.android.offline.OfflineRegion;
@@ -43,7 +42,6 @@ public class MLRNOfflineModule extends ReactContextBaseJavaModule {
43
42
  public static final String OFFLINE_ERROR = "MapboxOfflineRegionError";
44
43
  public static final String OFFLINE_PROGRESS = "MapboxOfflineRegionProgress";
45
44
 
46
- public static final String DEFAULT_STYLE_URL = "https://demotiles.maplibre.org/style.json";
47
45
  public static final Double DEFAULT_MIN_ZOOM_LEVEL = 10.0;
48
46
  public static final Double DEFAULT_MAX_ZOOM_LEVEL = 20.0;
49
47
 
@@ -426,7 +424,7 @@ public class MLRNOfflineModule extends ReactContextBaseJavaModule {
426
424
 
427
425
  private OfflineRegionDefinition makeDefinition(LatLngBounds latLngBounds, ReadableMap options) {
428
426
  return new OfflineTilePyramidRegionDefinition(
429
- ConvertUtils.getString("styleURL", options, DEFAULT_STYLE_URL),
427
+ ConvertUtils.getString("styleURL", options, MLRNModule.DEFAULT_STYLE_URL),
430
428
  latLngBounds,
431
429
  ConvertUtils.getDouble("minZoom", options, DEFAULT_MIN_ZOOM_LEVEL),
432
430
  ConvertUtils.getDouble("maxZoom", options, DEFAULT_MAX_ZOOM_LEVEL),
@@ -6,34 +6,49 @@ import com.facebook.react.bridge.WritableArray;
6
6
  import com.facebook.react.bridge.WritableMap;
7
7
  import com.facebook.react.bridge.WritableNativeArray;
8
8
  import com.facebook.react.bridge.WritableNativeMap;
9
+ import com.google.gson.JsonObject;
10
+
9
11
  import org.maplibre.geojson.Feature;
10
12
  import org.maplibre.geojson.FeatureCollection;
11
13
  import org.maplibre.geojson.Geometry;
12
14
  import org.maplibre.geojson.GeometryCollection;
15
+ import org.maplibre.geojson.MultiLineString;
13
16
  import org.maplibre.geojson.LineString;
14
17
  import org.maplibre.geojson.MultiPoint;
15
18
  import org.maplibre.geojson.Point;
19
+ import org.maplibre.geojson.MultiPolygon;
16
20
  import org.maplibre.geojson.Polygon;
17
21
  import org.maplibre.android.geometry.LatLng;
18
22
  import org.maplibre.android.geometry.LatLngBounds;
19
23
  import org.maplibre.android.geometry.LatLngQuad;
20
- import org.maplibre.android.style.light.Position;
24
+ import org.maplibre.android.log.Logger;
21
25
  import org.maplibre.turf.TurfMeasurement;
22
26
 
23
27
  import java.util.ArrayList;
24
28
  import java.util.List;
29
+ import java.util.stream.Collectors;
25
30
 
26
31
  public class GeoJSONUtils {
32
+ public static final String LOG_TAG = "GeoJSONUtils";
33
+
27
34
  public static WritableMap fromFeature(Feature feature) {
28
35
  WritableMap map = Arguments.createMap();
29
36
  map.putString("type", "Feature");
30
37
  map.putString("id", feature.id());
31
38
 
32
- WritableMap geometry = fromGeometry(feature.geometry());
33
- map.putMap("geometry", geometry);
39
+ Geometry geometry = feature.geometry();
40
+ if (geometry == null) {
41
+ map.putNull("geometry");
42
+ } else {
43
+ map.putMap("geometry", fromGeometry(geometry));
44
+ }
34
45
 
35
- WritableMap properties = ConvertUtils.toWritableMap(feature.properties());
36
- map.putMap("properties", properties);
46
+ JsonObject properties = feature.properties();
47
+ if(properties == null) {
48
+ map.putNull("properties");
49
+ } else {
50
+ map.putMap("properties", ConvertUtils.toWritableMap(properties));
51
+ }
37
52
 
38
53
  return map;
39
54
  }
@@ -41,16 +56,20 @@ public class GeoJSONUtils {
41
56
  public static WritableMap fromGeometry(Geometry geometry) {
42
57
  final String type = geometry.type();
43
58
 
44
- switch (type) {
45
- case "Point":
46
- return fromPoint((Point) geometry);
47
- case "LineString":
48
- return fromLineString((LineString) geometry);
49
- case "Polygon":
50
- return fromPolygon((Polygon) geometry);
51
- default:
52
- return null;
53
- }
59
+ return switch (type) {
60
+ case "Point" -> fromPoint((Point) geometry);
61
+ case "LineString" -> fromLineString((LineString) geometry);
62
+ case "Polygon" -> fromPolygon((Polygon) geometry);
63
+ case "MultiPoint" -> fromMultiPoint((MultiPoint) geometry);
64
+ case "MultiLineString" -> fromMultiLineString((MultiLineString) geometry);
65
+ case "MultiPolygon" -> fromMultiPolygon((MultiPolygon) geometry);
66
+ case "GeometryCollection" -> fromGeometryCollection((GeometryCollection) geometry);
67
+ default -> {
68
+ Logger.w(LOG_TAG, "GeoJSONUtils.fromGeometry unsupported type: \"" + type + "\"");
69
+
70
+ yield null;
71
+ }
72
+ };
54
73
  }
55
74
 
56
75
  public static WritableMap fromPoint(Point point) {
@@ -74,6 +93,44 @@ public class GeoJSONUtils {
74
93
  return map;
75
94
  }
76
95
 
96
+ public static WritableMap fromMultiPoint(MultiPoint multiPoint) {
97
+ WritableMap map = Arguments.createMap();
98
+ map.putString("type", "MultiPoint");
99
+ map.putArray("coordinates", getCoordinates(multiPoint));
100
+ return map;
101
+ }
102
+
103
+ public static WritableMap fromMultiLineString(MultiLineString multiLineString) {
104
+ WritableMap map = Arguments.createMap();
105
+ map.putString("type", "MultiLineString");
106
+ map.putArray("coordinates", getCoordinates(multiLineString));
107
+ return map;
108
+ }
109
+
110
+ public static WritableMap fromMultiPolygon(MultiPolygon multiPolygon) {
111
+ WritableMap map = Arguments.createMap();
112
+ map.putString("type", "MultiPolygon");
113
+ map.putArray("coordinates", getCoordinates(multiPolygon));
114
+ return map;
115
+ }
116
+
117
+ public static WritableMap fromGeometryCollection(GeometryCollection geometryCollection) {
118
+ WritableMap map = Arguments.createMap();
119
+ map.putString("type", "GeometryCollection");
120
+
121
+ map.putArray("geometries",
122
+ Arguments.fromList(
123
+ geometryCollection
124
+ .geometries()
125
+ .stream()
126
+ .map(GeoJSONUtils::fromGeometry)
127
+ .collect(Collectors.toList())
128
+ )
129
+ );
130
+
131
+ return map;
132
+ }
133
+
77
134
  public static WritableArray getCoordinates(Point point) {
78
135
  return Arguments.fromArray(pointToDoubleArray(point));
79
136
  }
@@ -93,9 +150,6 @@ public class GeoJSONUtils {
93
150
  WritableArray array = Arguments.createArray();
94
151
 
95
152
  List<List<Point>> points = polygon.coordinates();
96
- if (points == null) {
97
- return array;
98
- }
99
153
 
100
154
  for (List<Point> curPoint : points) {
101
155
  WritableArray innerArray = Arguments.createArray();
@@ -110,6 +164,57 @@ public class GeoJSONUtils {
110
164
  return array;
111
165
  }
112
166
 
167
+ public static WritableArray getCoordinates(MultiPoint multiPoint) {
168
+ WritableArray array = Arguments.createArray();
169
+
170
+ List<Point> points = multiPoint.coordinates();
171
+ for (Point point : points) {
172
+ array.pushArray(Arguments.fromArray(pointToDoubleArray(point)));
173
+ }
174
+
175
+ return array;
176
+ }
177
+
178
+ public static WritableArray getCoordinates(MultiLineString multiLineString) {
179
+ WritableArray array = Arguments.createArray();
180
+
181
+ List<List<Point>> lines = multiLineString.coordinates();
182
+ for (List<Point> line : lines) {
183
+ WritableArray lineArray = Arguments.createArray();
184
+
185
+ for (Point point : line) {
186
+ lineArray.pushArray(Arguments.fromArray(pointToDoubleArray(point)));
187
+ }
188
+
189
+ array.pushArray(lineArray);
190
+ }
191
+
192
+ return array;
193
+ }
194
+
195
+ public static WritableArray getCoordinates(MultiPolygon multiPolygon) {
196
+ WritableArray array = Arguments.createArray();
197
+
198
+ List<List<List<Point>>> polygons = multiPolygon.coordinates();
199
+ for (List<List<Point>> polygon : polygons) {
200
+ WritableArray polygonArray = Arguments.createArray();
201
+
202
+ for (List<Point> ring : polygon) {
203
+ WritableArray ringArray = Arguments.createArray();
204
+
205
+ for (Point point : ring) {
206
+ ringArray.pushArray(Arguments.fromArray(pointToDoubleArray(point)));
207
+ }
208
+
209
+ polygonArray.pushArray(ringArray);
210
+ }
211
+
212
+ array.pushArray(polygonArray);
213
+ }
214
+
215
+ return array;
216
+ }
217
+
113
218
  public static WritableMap toPointFeature(LatLng latLng, WritableMap properties) {
114
219
  WritableMap map = new WritableNativeMap();
115
220
  map.putString("type", "Feature");
@@ -0,0 +1,12 @@
1
+ package org.maplibre.reactnative.location.engine;
2
+
3
+ import android.content.Context;
4
+
5
+ import org.maplibre.android.location.engine.LocationEngine;
6
+
7
+ public class LocationEngineProvider implements LocationEngineProvidable {
8
+ @Override
9
+ public LocationEngine getLocationEngine(Context context) {
10
+ return new DefaultLocationEngineProvider().getLocationEngine(context);
11
+ }
12
+ }